@import url("https://use.typekit.net/jtn2gae.css");
@font-face {
	font-family: "TrashHand"; 
	src: url('TrashHand.otf') format('opentype');
}
div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; -webkit-font-smoothing: antialiased; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
html, body { background-color: #FFECD8; width: 100%; height: 100%; padding: 0; margin: 0; font-size: 16px; -webkit-font-smoothing: antialiased; }
div#wrapper { width: 100%; max-width: 1200px; min-width: 550px; margin: 0 auto; font-family: open-sans, sans-serif; /* background-color: #FFF; */ background-image: linear-gradient(0deg, transparent, #FFF 50%); background-size: 100%; background-attachment: fixed; color: #000; font-size: 1.125rem; }
b, strong { font-weight: 600 !important; }
i, em { font-style: italic !important; }
sup { vertical-align: top; font-size: 0.6em; }
header { width: 100%; height: 435px; background-image: url(images/header-toscane-24.png); background-position: top center; background-repeat: no-repeat; background-size: 100% auto; }
header.umbrie { background-image: url(images/header-umbrie-24.png); }
header form, div#search_box, a#search_button { display: block; width: 230px; height: 49px; padding: 0; background-image: url(images/search_field.svg); background-position: top left; background-repeat: no-repeat; background-size: 231px 49px; text-decoration: none; }
header form, a#search_button {position: relative; top: 20px; left: 20px; }
a#search_button span { display: block; width: 150px; height: 49px; line-height: 49px; padding: 0 10px 0 70px; font-family: TrashHand, sans-serif; font-size: 20px; color: #FFF; background-color: transparent; background-image: url(images/search_button.svg); background-position: top left; background-repeat: no-repeat; background-size: 61px 49px; }
div#search_box { position: absolute; top: 95px; margin-left: 20px; width: 393px; }
header form input, div#search_box input { -webkit-appearance: none; box-sizing: content-box; display: inline-block; vertical-align: top; width: 61px; height: 49px; line-height: 49px; margin: 0; padding: 0; border: 0; background-color: transparent; background-image: url(images/search_button.svg); background-position: top left; background-repeat: no-repeat; background-size: 61px 49px; -moz-text-size-adjust: none; }
::placeholder { color: #FFF; opacity: 1; }
:-ms-input-placeholder { color: #FFF; }
::-ms-input-placeholder { color: #FFF; }
header form input[type="text"], div#search_box input[type="text"] { width: 150px; margin: 0 5px 0 8px; font-family: TrashHand, sans-serif; font-size: 20px; color: #FFF !important; background-image: none; }
div#search_box input[type="text"] { width: 140px; }
div#search_box input.filled { line-height: 35px; height: 35px; padding: 0 0 14px 0; }
div#search_box span#result { position: relative; top: -22px; left: 69px; display: block; width: 150px; color: #FFF; font-size: 16px; font-family: TrashHand, sans-serif; }
span#page_search_nav { display: block; float: right; width: 163px; height: 49px; margin: 0; }
#prv_btn, #nxt_btn { float: left; appearance: none; width: 75px; height: 44px; line-height: 44px; margin: 0 0 0 1px; padding: 0; border: 2px solid #000; cursor: pointer; background-color: #398690; color: #FFF; font-size: 18px; font-weight: normal; font-family: TrashHand, sans-serif; box-sizing: content-box; }
.highlighted { background-color: #d28736; color: #FFF; padding: 0 2px; margin: 0 -2px; }
.current { color: #FFF; background-color: #258690; }
nav { display: block; width: 75%; height: 72px; line-height: 72px; padding: 0 20px; background-image: url(images/menubar.svg); background-position: top center; background-repeat: no-repeat; background-size: 100% 100%; margin: 257px auto 0 60px; font-family: TrashHand, sans-serif; font-size: 1.25em; text-align: center; z-index: 11; }
nav a { vertical-align: top; margin: 0 6px 0 0; color: #FFF; text-decoration: none; }
nav span { display: inline-block; vertical-align: middle; margin: 0; width: 12px; height: 42px; background-image: url(images/divider_1.svg); background-position: top center; background-repeat: no-repeat; background-size: cover; }
nav span:nth-of-type(2) { background-image: url(images/divider_2.svg); }
span#speech_bubble { float: right; width: 153px; height: 80px; padding: 20px 90px 208px 49px; margin: 0 0 -308px 0; background-image: url(images/speech_bubble.png); background-position: top center; background-repeat: no-repeat; background-size: cover; position: relative; top: 136px; font-family: TrashHand, sans-serif; font-size: 20px; text-align: center; color: #FFF; z-index: 10; }
span#speech_bubble a { color: #FFF; text-decoration: none; }
main, section { width: 100%; clear: both; }
section.home aside.left { float: left; vertical-align: top; width: 236px; height: 39.25rem; background-color: #FFF; border: 1px solid #B9D4D7; margin: 0 10px; }
section.home aside.left > p { height: 6.25rem; margin: 0; padding: 0.625rem 1.25rem; color: #000; font-size: 14px; font-weight: bold; }
section.home aside.left li { margin: 0; padding: 10px; color: #258690; font-size: 14px; }
section.home aside.left li img { margin: 4px 4px 0 0; }
div#home_scroll { height: 31.75rem; overflow-x: hidden; scrollbar-color: #258690 transparent; scrollbar-width: thin; }
div#home_scroll::-webkit-scrollbar, div#home_scroll ::-webkit-scrollbar { width: 6px; }
div#home_scroll::-webkit-scrollbar-thumb, div#home_scroll ::-webkit-scrollbar-thumb { min-height: 40px; background-color: #258690; border-radius: 5px; }
div#home_scroll ul { padding: 0; margin: 0; height: auto; list-style: none; overflow: hidden; }
div#home_scroll img { width: 20px; height: 20px; margin: 0 5px 0 0;}
section.home h2 a { color: inherit; }
section.text, section.planner, section.tour_acco, section.acco, section.tours_top, section.tours_results { width: 90%; margin: 0 auto; }
section.home { width: 95%; }
section.home > div { float: right; width: calc(100% - 280px); padding: 0 10px; }
section.text h1, section.text h2, section.text h3 { font-family: TrashHand, sans-serif; font-size: 2rem; color: #258690; padding: 0.5em 0 0 10px; }
section.text h2 { font-size: 1.6rem; color: #D28736; padding: 0 0 0.5em 10px; }
section.text h3 { font-size: 1.2rem; color: #000; padding: 0 0 0.5em 10px; }
h3 a { font-family: open-sans, sans-serif; }
.app_title:before { content: ''; display: inline-block; width: 100%; height: 0px; margin: 6px auto; padding: 0px 0 2% 0; background-image: url('images/line.svg'); background-position: top center; background-repeat: no-repeat; background-size: cover; }
.app_title { width: fit-content; }
section.text p, section.text blockquote, div.acco_photos { padding: 0 10px 1em 10px; }
section.text cite { display: block; padding: 0.25em 0 0 0; font-size: 0.9em; font-weight: bold; }
section.footer_bar { width: 98%; height: auto; margin: 50px auto 10px auto; padding: 0; }
div.line { width: 100%; height: 0; margin: 0 auto; padding: 0 0 1% 0; background-image: url(images/line.svg); background-position: top center; background-repeat: no-repeat; background-size: cover; }
div#image_scroll { width: 100%; height: 176px; overflow: hidden; }
div#image_scroll ul { padding: 0; margin: 0; width: 2000px; height: 176px; list-style: none; overflow: hidden; }
div#image_scroll ul li { display: inline-block; width: 156px; height: 156px; margin: 10px 5px; padding: 0; border: 0; }
div#image_scroll ul li img { width: 156px; height: 156px; margin: 0; padding: 0; border: 0; }
footer { clear: both; width: 100%; margin: 0 auto; padding: 50px 0 0 0; }
footer > span { display: inline-block; vertical-align: top; width: 310px; padding: 0 0 50px 50px; }
footer > span h2 { font-family: TrashHand, sans-serif; font-size: 1.6em; margin: 0; padding: 0 0 0.8em 0; }
footer > span p { margin: 0; padding: 0 0 1em 0; font-size: 0.9em; line-height: 1.6em; }
footer > span a { color: #000; text-decoration: none; }
footer > span img { max-width: 100%; border: 0; }
a img { border: 0; }
a { color: inherit;	}
p i, p font, p span { font-family: inherit !important; font-size: inherit !important; }
p > img { vertical-align: middle; }
p a { color: inherit; text-decoration: none; }
label a { color: inherit; text-decoration: underline; }
p a:hover, footer a:hover, label a:hover { color: #258690; }
div.big_buttons { width: 100%; text-align: center; padding: 0 0 20px 0; margin: 0; display: flex; justify-content: center; align-items: center; }
.home div.big_buttons { justify-content: flex-start; }
div.big_buttons a { display: flex; justify-content: center; align-items: center; width: 5.625rem; height: 5.625rem; line-height: 5.625rem; margin: 0 20px; padding: 1.25rem; background-image: url(images/button_yellow.svg); background-position: top center; background-repeat: no-repeat; background-size: cover; font-family: TrashHand, sans-serif; font-size: 1.1em; text-align: center; color: #FFF; text-decoration: none; }
div.big_buttons a:HOVER { background-image: url(images/button_blue.svg); color: #FFF; }
div.big_buttons a > span { vertical-align: middle;  line-height: 1.875rem; color: inherit; }
a.image_frame, span.image_frame { display: inline-block; text-align: center; overflow: hidden; padding: 0; }
a.image_frame span, span.image_frame span { display: inline-block; vertical-align: top; margin: 1% !important; padding: 0 !important; width: 98%; height: 98%; overflow: hidden; background-position: center; background-size: cover; }
a.image_frame span.frame, span.image_frame span.frame { display: inline-block; vertical-align: top; margin: 0 !important; padding: 0 !important; width: 100%; height: 100%; position: relative; top: -100%; background-image: url(images/frame.svg); background-size: 100% 100%; }
section form { padding: 0 10px 1em 10px; max-width: 600px; margin: 0; }
section form label { display: inline-block; vertical-align: top; width: 220px; font-family: open-sans, sans-serif; font-size: 0.8em; margin: 10px 0; padding: 2px 0; }
section form label.check { width: 100%; margin: 10px 0 20px 0; }
section form input[type=text], section form textarea { display: inline-block; width: 300px; height: 15px; -webkit-appearance: none; -moz-appearance: none; -ms-box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box; font-family: open-sans, sans-serif; font-size: 0.8em; border: 2px solid #000; border-radius: 8px; padding: 5px 4px; margin: 10px 0; }
section form select { width: 312px; font-family: open-sans, sans-serif; font-size: 0.8em; border: 2px solid #000; border-radius: 8px; padding: 2px 4px; margin: 10px 0 10px 5px; }
section form textarea { height: 60px; }
section form input[type=submit], a.button { -webkit-appearance: none; -moz-appearance: none; -ms-box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box; display: inline-block; border: 0; padding: 0; margin: 0 10px 1rem 0; cursor: pointer; text-decoration: none; width: 170px; height: 44px; line-height: 44px; background-image: url(images/button.svg); font-family: TrashHand, sans-serif; font-size: 1.6em; background-position: top center; background-repeat: no-repeat; background-size: 100% 100%; text-align: center; color: #FFF; }
a.button { width: auto; font-size: 1em; padding: 0 1em; height: auto; line-height: 1.8em; margin: 1rem 0; }
a.button:not(:first-child) { margin-left: 1em; }
a.button:hover { color: #fff; }
a.back { font-size: 0.8em !important; }
a.back:before { content: '← '; }
span.reset { display: inline-block; margin-left: 10px; }
section form small { display: inline-block; vertical-align: top; width: 220px; font-family: open-sans, sans-serif; font-size: 0.8em; margin: 10px 0; padding: 2px 0; }
section form div.g-recaptcha { display: inline-block; }
form p { font-size: 0.8em; margin: 10px 0; padding: 0 !important; }
a.num { display: inline-block; font-family: TrashHand, sans-serif !important; font-size: 1em; color: #D28736; text-decoration: none; margin: 0 10px; }
a.active { font-weight: bold; }
summary { padding: 0 10px 1em 10px !important; color: #000; font-family: TrashHand, sans-serif; font-size: 1.4rem; cursor: pointer; }
summary h2 { display: inline; }
summary:hover { color: #258690; }
.search_result { clear: both; margin-bottom: 2rem; }
.search_image { float: left; margin: 0 1rem 1rem 0; }
section.double { width: 100%; }
div#map { display: inline-block; vertical-align: top; width: 65%; max-width: 689px; margin: 0 0 2rem 0; }
div#list, div#list2 { display: inline-block; vertical-align: top; width: 34%; margin: 0 0 2rem 0; }
.double div#map { width: 50%; }
.double div#list, .double div#list2 { width: 24%; }
.map_ratio { position: relative; width: 100%; height: 0; margin: 0; padding: 0 0 83.16% 0; overflow: hidden; }
.list_ratio { position: relative; width: 100%; height: 0; margin: 0; padding: 0 0 156% 0; overflow: hidden; }
.double .list_ratio { height: auto; padding: 0; overflow: unset; }
div#map_toscane, div#map_umbrie { position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; padding: 0; border: 0; background-color: #FFF; background-image: url(images/map_toscane.jpg); background-repeat: no-repeat; background-position: top left; background-size: cover; color: #757470; font-family: Tahoma, Arial, sans-serif; font-size: 13px; }
div#map_umbrie { background-image: url(images/map_umbrie.jpg); }
span.infowindow { float: left; display: none; position: relative; left: 215px; width: 240px; height: 80px; padding: 0 10px 6px 10px; margin: 0 -252px -87px 0; border: 1px solid #E3DECF; border-width: 0 1px 1px 1px; font-family: Tahoma, Arial, sans-serif; font-size: 12px; color: #656565; line-height: 16px; text-align: left; background-color: #FFF; }
a.marker { float: left; position: relative; width: 12px; height: 12px; background-color: transparent; background-image: url(images/marker.gif); background-position: top left; background-repeat: no-repeat; margin: -6px; padding: 0; }
#map_umbrie a.marker { background-image: url(images/marker2.gif); }
a.marker:HOVER, #map_toscane a.hover, #map_umbrie a.hover { background-image: url(images/map_arrow.gif); width: 34px; height: 34px; margin: -28px -6px -6px -28px; }
#map_umbrie a.marker:HOVER, #map_umbrie a.hover { background-image: url(images/map_arrow2.gif); }
a.marker span.img { float: left; display: none; position: relative; top: 80px; left: 80px; width: 98px; height: 98px; background-color: #FFF; border: 1px solid #000; padding: 2px; margin: -53px; z-index: 5000; }
a.marker span.left { top: 80px; left: -160px; width: 322px; height: 98px; margin: -53px; }
a.marker span.right { top: 80px; left: 80px; width: 322px; height: 98px; margin: -53px; }
a.marker span.img span { display: inline-block; width: 98px; height: 98px; text-align: center; line-height: 98px; overflow: hidden; margin: 0; padding: 0; }
a.marker span.img span.text { width: 240px; font-family: Tahoma, Arial, sans-serif; font-size: 12px; color: #656565; line-height: 16px; text-align: left; background-color: transparent; background-image: url(images/marker_info.png); background-position: top left; background-repeat: no-repeat; }
a.marker span.img span.text span.link { display: inline !important; width: auto !important;	height: auto !important; line-height: 16px; color: #000; text-decoration: underline; }
a.marker span.img span img { vertical-align: middle; width: auto; height: 98px; border: 0; }
ul.maplist { position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; padding: 0; overflow: auto; list-style: none; }
.double ul.maplist { position: relative; height: auto; overflow: unset; }
ul.maplist li {	margin: 0; }
ul.maplist li h3 { padding-bottom: 0; color: #d28736; font-size: 0.9rem; }
ul.maplist li h3 a { text-decoration: none; }
ul.maplist li h3 a.hover, ul.maplist li h3 a:hover { color: #258690; font-weight: bold; }
ul.maplist li a.search_image, ul.maplist li p { display: none; }
section.acco_container { display: flex; align-items: flex-start; gap: 1rem; align-content: space-between; flex-wrap: wrap; width: 90%; margin: 0 auto; }
section.acco, aside.appartements { flex: 1 1 auto; max-width: calc(100% - 310px - 1rem); }
aside.appartements { max-width: 310px; }
section.acco img.feature { float: right; margin: 0 1rem 1rem 0; }
section.acco p + details { position: relative; top: -0.5em; }
a.acco_photos { width: 140px; height: 140px; margin: 0 20px 20px 0; }
span.app_photo { float: left; width: 120px; height: 120px; margin: 0 20px 0 0; }
div.top_photos a.acco_photos { width: 200px; height: 200px; float: right; margin: 0 0 20px 20px; }
/*div.top_photos a.acco_photos:first-child { float: left; margin: 0 20px 20px 0; }
div.top_photos a.acco_photos:last-child { float: right; margin: 0 0 20px 20px; }*/
aside.appartements h2 { font-family: TrashHand, sans-serif; font-size: 1.4em; color: #D28736; margin: 0; padding: 0.5em 0 0.8em 0; }
aside.appartements a.appartement { display: inline-block; width: 350px; height: 120px; padding: 0px; font-size: 0.9rem; margin: 0 0 1rem 0; text-decoration: none; }
aside.appartements a.appartement:hover { color: #258690; }
aside.appartements a.appartement h3 { font-size: 1.4em; font-family: TrashHand, sans-serif; font-weight: 600; color:#258690; }
aside.appartements div.line { margin: 1rem 0; }
table.pricing { width: 90%; max-width: 500px; font-size: 0.9rem; margin: 0 10px 3rem 10px; border-collapse: collapse; table-layout: fixed; border: 1px solid #B0B0B0; }
table.pricing th { font-weight: bold; text-align: left; }
table.pricing .right { text-align: right; }
table.pricing th.right { width: 105px; }
table.pricing th:nth-child(2), table.pricing td:nth-child(2) { border: 1px solid #B0B0B0; border-width: 0 1px; }
table.pricing tr:nth-child(even) { background-color: #FFECD8; }
table.pricing th, table.pricing td { padding: 0.5rem; }
table.pricing .bottom { text-align: center; border: 1px solid #B0B0B0; border-width: 1px 0 0 0; padding: 0; }
ul.sub { margin: 1rem 0 0 0; list-style: none; font-size: 1.2rem; }
ul.sub li { padding: 0.25rem 0; }
ul.sub li a { font-family: TrashHand, sans-serif; text-decoration: none; margin-left: 10px; }
/*ul.sub_nav { margin: 0 0 2rem 0; list-style: none; display: block; width: calc(100% - 40px); height: 72px; line-height: 72px; padding: 0 20px; background-image: url(images/menubar.svg); background-position: top center; background-repeat: no-repeat; background-size: 100%; font-family: TrashHand, sans-serif; font-size: 1.1em; color: #FFF; text-align: center; }*/
ul.sub_nav { margin: 1rem 0 0 0; list-style: none; display: inline-block; height: 55px; line-height: 55px; padding: 0 30px; background-image: url(images/menubar.svg); background-position: top center; background-repeat: no-repeat; background-size: 100% 100%; font-family: TrashHand, sans-serif; font-size: 1.1em; color: #FFF; }
ul.sub_nav li { display: inline; }
ul.sub_nav li a { text-decoration: none; }
ul.sub_nav li:before { content: ''; display: inline-block; vertical-align: middle; margin: 0 0 0 15px; width: 18px; height: 32px; background-image: url(images/divider_2.svg); background-position: top center; background-repeat: no-repeat; background-size: cover; }
ul.sub_nav li:nth-of-type(even):before { background-image: url(images/divider_1.svg); }
ul.sub_nav li:first-of-type:before { content: none; }
/* Start old */
a.acco_twitter_btn, a.acco_facebook_btn, a.app_twitter_btn, a.app_facebook_btn { display: inline-block; vertical-align: top; width: 235px; height: 23px; background-image: url(images/acco_twitter_btn.jpg); background-position: 0 0; background-repeat: no-repeat; padding: 0; margin: 10px 10px 0 0; cursor: pointer; }
a.acco_facebook_btn { background-image: url(images/acco_facebook_btn.jpg); }
a.app_twitter_btn {	background-image: url(images/app_twitter_btn.jpg); }
a.app_facebook_btn { background-image: url(images/app_facebook_btn.jpg); }
/* End old */
span.whatsapp { display: inline-block; vertical-align: bottom; width: 24px; height: 24px; padding: 0; margin: 4px 4px -4px 6px; background-image: url(images/whatsapp.png); background-repeat: no-repeat; background-size: cover; background-position: top left; }
.popup ui-dialog { margin: 0; padding: 0; }
nav#mobile, span#mobile_toggle { display: none; }
* font { font-family: open-sans, sans-serif !important; }
.invalid { color: #F23706; }
footer a[href^="mailto:"], footer a[href^="tel:"], footer a[href*="facebook.com"], footer a[href*="instagram.com"], footer a[href*="twitter.com"] { padding-left: 1.5em; background-image: url('images/mail.svg'); background-position: center left; background-repeat: no-repeat; background-size: 1em; }
footer a[href^="tel:"] { background-image: url('images/phone.svg'); }
footer a[href*="facebook.com"] { background-image: url('images/facebook.svg'); }
footer a[href*="instagram.com"] { background-image: url('images/instagram.svg'); }
footer a[href*="twitter.com"] { background-image: url('images/twitter.svg'); }
@media screen and (min-width: 820px) {
	ul.sub_nav li.mobile { display: none; }
}
@media screen and (max-width: 1040px) {
	nav { width: 90%; padding: 0 20px; text-align: center; background-size: contain; font-size: 2.5vw; margin: 257px auto 0 auto; }
	nav span { height: 4vh; }
	header { background-size: auto 75%; }
	span#speech_bubble { padding: 20px 20px 50px 49px; background-position: top right -70px; background-size: 308px auto; }
	div.photocolumn span { width: 48%; margin: 20px 1%; }
	div.top_photos { float: right; width: 220px; }
}
@media screen and (max-width: 910px) {
	section.home aside.left { display:none; }
	section.home > div { width: 100%; }
	p.aqua { margin: 0 20px 5px 20px !important; }
	section.home span.right div.big_buttons a { left: 0px; }
}
@media screen and (max-width: 880px) {
	div.photocolumn span { float: none !important; width: 100%; text-align: left !important; margin: 20px auto; }
}
@media screen and (max-width: 820px) {
	header > form, header > nav { display: none !important; }
	header { height: 220px; background-size: cover; }
	span#speech_bubble { top: 60px; background-size: 295px auto; }
	nav#mobile { top: -15px; left: 0px; width: 100%; height: auto; background: #258690; padding: 10px 0 0 0; margin: 0; font-size: 1.5em; border: 0 solid #000; border-width: 2px 0; z-index: 5; }
	nav#mobile a { display: inline-block; }
	span#mobile_toggle { display: block !important; width: 202px; height: 51px; line-height: 51px; padding: 2px 0 3px 0; margin: -56px auto 0 auto; text-align: center; background-image: url(images/menubar.svg); background-size: 100% 100%; font-family: TrashHand, sans-serif; font-size: 1.5em; color: #FFF !important; cursor: pointer; z-index: 10; }
	div.big_buttons { margin-top: 40px; }
	section.acco, aside.appartements { max-width: 100%; }
	section.double { width: 90%; }
	section.map_section { display: grid; }
	section.map_section h2 { order: -1; }
	div#map, .double div#map { width: 100%; order: -1; }
	.double div#list { margin-bottom: 0; }
	p.map_notice { display: none; }
	div#list, .double div#list, .double div#list2 { width: 100%; }
	div.list_ratio { height: auto; padding: 0; }
	ul.maplist { height: auto; position: relative; }
	ul.maplist li h3 { font-size: 1.2rem; }
	ul.maplist li a.search_image, ul.maplist li p { display: block; }
}