@import 'https://fonts.googleapis.com/css?family=Montserrat:400,700|Karla:400,700';

* { margin:0; padding:0; list-style:none; outline:none; border:none; text-decoration:none; }
html, body { width:100%; height:100%; }
body { background:#22292D top center no-repeat; background-size:100% auto; }
img { display:block; }

@media only screen and (max-width:768px) {
body { background-size:200% auto; }
}



/* General */

h1, .h1 { margin-bottom:30px; font:400 20px/40px 'Montserrat'; color:#C9AC7F; letter-spacing:2px; text-transform:uppercase; }
@media screen and (-webkit-min-device-pixel-ratio:0) and (min-resolution:.001dpcm) { /* Chrome only gradient */ h1, .h1, h2, .h2, h3, .h3 { background:url(images/button-back.jpg); background-size:100%; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }}
h2, .h2 { margin-bottom:30px; font:700 14px/28px 'Montserrat'; color:#C9AC7F; letter-spacing:1.5px; text-transform:uppercase; }
h3, .h3 { font:700 14px/28px 'Montserrat'; color:#C9AC7F; letter-spacing:1.5px; text-transform:uppercase; }
p { margin-bottom:30px; font:400 15px/30px 'Karla'; letter-spacing:.7px; color:#BDBFC0; }
p a { color:#C9AC7F; }
.section { margin-bottom:100px; }
.center { max-width:1300px; margin:auto; padding:0 50px; box-sizing:border-box; position:relative; }
.button { margin:0 auto 110px; border:1px solid #C9AD7F; }
.button a, .button button, .item-button { padding:0 20px; font:400 12px/40px 'Montserrat'; text-align:center; color:#C9AD7F; text-transform:uppercase; letter-spacing:1.5px; display:inline-block; box-sizing:border-box; position:relative; background:none; cursor:pointer; }
.item-button { margin:0 auto 22px; padding: 0; border:1px solid #C9AD7F; font:400 9px/30px 'Montserrat'; position:relative; display:table; }
.item-button span, .item-button a { color:#C9AD7F; position:relative; z-index:1; display: block; }
.item-button a { padding:0 15px; }
.button:before, .item-button:before, .rate-list .toggle a:before { content:""; width:100%; height:100%; padding:1px; background:url(images/button-back.jpg) top center; background-size:110%; opacity:0; position:absolute; top:-1px; left:-1px; }
.hover .button a:hover, .hover .button button:hover, .hover .item:hover .item-button span, .hover .item-button:hover a { color:#22292D; }
.hover .button:hover:before, .hover .item:hover .item-button:before, .hover .item-button:hover:before { opacity:1; }
.property h1 span { font-size:14px; letter-spacing:1.5px; display:block; margin-top:-7px; }

@media only screen and (max-width:1024px) {
.section:not(.stats):not(.services) div[class^='col'], footer div[class^='col'] { width:100% !important; }
}

@media only screen and (max-width:640px) {
.center { padding:0 30px; }
}
@media only screen and (max-width:480px) {
.button { margin:0 auto 90px; }
}
@media only screen and (max-width:400px) {
h1, .h1 { font:400 18px/36px 'Montserrat'; }
}



/* Header */

header { width:100%; height:50px; padding:50px 0 10px; position:absolute; top:0; left:0; z-index:999; }
header .logo { position:absolute; top:12px; left:50px; }
header .logo img { width:160px; height:auto; }
header .button { position:absolute; top:4px; right:50px; }
nav { width:100%; }
nav ul { margin:auto; display:table; }
nav li { float:left; }
nav li a { padding:0 12px; font:400 12px/50px 'Montserrat'; color:#FFF; letter-spacing:1.5px; text-transform:uppercase; display:block; }
#mobile { width:50px; color:#C9AD7F; line-height:40px; font-size:19px; text-align:center; display:none; cursor:pointer; position:absolute; top:4px; right:50px; border:1px solid #C9AD7F; }
body.scroll header { padding-top:10px; background:#181D1F; position:fixed; }

.hover nav li a:hover { color:#C9AD7F; }

@media only screen and (max-width:1024px) {
nav ul { width:100%; display:none; position:absolute; top:60px; left:0; }
nav li { width:100%; text-align:center; float:none; background:#181D1F; border-top:1px solid #22292D; }
nav li a { margin-left:0 !important; line-height:50px; }
header .button { right:101px; }
#mobile { display:block; }
}
@media only screen and (max-width:640px) {
header .logo { left:30px; }
header .button { right:81px; }
header .button span { display:none; }
#mobile { right:30px; }
}
@media only screen and (max-width:400px) {
header .logo { top:14px; }
header .logo img { width:130px; }
header .button { right:75px; }
header .button a { padding:0 15px; }
#mobile { width:44px; }
}
@media only screen and (max-width:340px) {
header .logo { top:15px; }
header .logo img { width:120px; }
header .button { right:71px; }
header .button a { padding:0 12px; }
#mobile { width:40px; }
}



/* Main */

main { font:400 15px/30px 'Karla'; color:#BDBFC0; overflow:hidden; }
main ul { margin:0 0 30px 20px; }
main li { list-style:disc; }
main .button { display:table; position:relative; }
main .button a:before, main .button a:after, main .button button:before, main .button button:after { content:""; width:84px; height:55px; position:absolute; top:5px; }
main .button a:before, main .button button:before { left:-84px; background:url(images/button-left.jpg) left no-repeat; }
main .button a:after, main .button button:after { right:-85px; background:url(images/button-right.jpg) right no-repeat; }
.video { margin-bottom:60px; }
.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }



/* Hero */

.hero { max-width:900px; margin:auto; padding:210px 50px 120px; text-align:center; box-sizing:border-box }
.hero img { width:100%; max-width:500px; height:auto; margin:0 auto 20px; }
.hero h1, .hero p { margin:0; }
.home .hero { max-width:none; margin-bottom:40px; }
.home .hero img { max-width:500px; margin:auto; }
.hero.copy { margin-top:-65px; padding:0 50px; text-align:left; }
.hero.copy h1 { margin-bottom:25px; text-align:center; }
.hero.copy p { margin-bottom:30px; }
.hero.copy:after { content:""; clear:both; display:block; }
.hero.copy .button { clear:both; }
.facilities { margin:42px 0 52px; padding:40px 40px 10px; font-size:12px; line-height:26px; letter-spacing:.8px; color:#FFF; background:rgba(255,255,255,.05); }
.facilities:after { content:""; clear:both; display:block; }
.facilities .left { width:50%; padding-right:30px; float:left; box-sizing:border-box; }
.facilities .right { width:50%; float:left; }
.facilities h2 { margin:0; }
.facilities ul { margin-left:15px; }
.facilities li { list-style:none; position:relative; }
.facilities li:before { content:"•"; color:#C9AD7F; position:absolute; left:-13px; }

@media only screen and (max-width:1400px) {
.hero { padding:190px 50px 100px; }
}
@media only screen and (max-width:640px) {
.hero { padding:190px 30px 100px; }
.home .hero { padding:170px 30px 50px; }
.hero.copy { padding:0 30px; }
.facilities { margin-top:0; padding:0; background:none; }
.facilities .left, .facilities .right { width:100%; padding:0; float:none; }
}



/* Content */

.section .content { -webkit-columns:2 200px; -moz-columns:2 200px; columns:2 200px; -webkit-column-gap:50px; -moz-column-gap:50px; column-gap:50px; }
.section .content p:last-child { margin:0; }
.section .title { width:33.33%; padding-right:50px; float:left; box-sizing:border-box; color:#666; }
.property .copy br { display: none !important; }

@media only screen and (max-width:1024px) {
.section .title { width:100%; padding:0 100px; text-align:center; float:none; }
}
@media only screen and (max-width:768px) {
.section .title { padding:0; }
}



/* Rates */

.rate-list { max-width:900px; margin-left:auto; margin-right:auto; padding:0 50px; text-align:center; }
.rate-list .toggle { width:100%; max-width:300px; margin:0 auto 100px; border:1px solid #C9AD7F; }
.rate-list .toggle:after { content:""; clear:both; display:block; }
.rate-list .toggle a { width:50%; font:400 12px/42px 'Montserrat'; color:#C9AD7F; letter-spacing:1.5px; text-transform:uppercase; display:block; float:left; cursor:pointer; box-sizing:border-box; position:relative; }
.rate-list .toggle a span { position:relative; }
.rate-list .toggle a.active { color:#22292D; }
.rate-list .toggle a.active:before { opacity:1; }
.rate-list .toggle i { margin-right:5px; font-size:30px; line-height:20px; position:relative; top:6px; }
.rate-list .heading { width:100%; }
.rate-list .heading p { max-width:550px; margin-left:auto; margin-right:auto; }
.rate-list .heading span { margin:0 5px; color:rgba(255,255,255,.2); }
.rate-list h2 { margin:0; }
.rate-list .grid { background:rgba(255,255,255,.02); white-space:nowrap; }
.rate-list .row { width:100%; display:table; }
.rate-list .row:nth-child(odd) { background:rgba(255,255,255,.03); }
.rate-list .cell { width:20%; padding:8px 0; display:table-cell; box-sizing:border-box; vertical-align:middle; }
.rate-list .cell.name { padding-left:30px; color:#FFF; font:10px/20px 'Montserrat'; letter-spacing:1.5px; text-transform:uppercase; text-align:left; }
.rate-list .cell.price { letter-spacing:.7px; }
.rate-list .cell.view { padding-right:30px; text-align:right; }
.rate-list .row-heading { background:#181D1F !important; }
.rate-list .row-heading * { font:10px/35px 'Montserrat'; color:#FFF; letter-spacing:1.5px !important; text-transform:uppercase; }
.rate-list .item-button { margin:0 0 2px; display:inline-block; }
.rates-box { margin-bottom:90px; }
.rates-box:last-child { margin:0; }
.rates-container.summer { display:none; }

@media only screen and (max-width:750px) {
.rate-list { padding:0 30px; }
.rate-list .cell { width:calc(100% / 3); display:block; float:left; }
.rate-list .cell.name { width:100%; padding:10px; font:400 14px/28px 'Montserrat'; text-align:center; }
.rate-list .cell.view { display:none; }
.rate-list .cell.price { border-left:1px solid rgba(255,255,255,.07); border-top:1px solid rgba(255,255,255,.07); }
.rate-list .cell:nth-child(2) { border-left:none; }
.rate-list .row-heading .cell.price { border:none; }
.rate-list .row-heading .cell.name { display:none; }
}
@media only screen and (max-width:480px) {
.rates-box { margin-bottom:70px; }
.rate-list .row-heading .cell.price span { display:none; }
}



/* Slideshow */

.slideshow { width:100%; position:relative; }
.property .slideshow { margin-top:150px; }
.slideshow.slide .caroufredsel_wrapper { height: 415px !important; overflow:visible !important; }
.slideshow .item { margin:0 15px; display:block; float:left; }
.slideshow .item img { width:650px; height:auto; }
.slideshow .item .caption { font:400 12px/50px 'Montserrat'; color:#FFF; text-align:center; text-transform:uppercase; letter-spacing:1.5px; background:rgba(0,0,0,.3); overflow:hidden; }
.slideshow .item .caption > span { margin-left:10px; color:#C9AD7F; }
body:not(.home) .slideshow .item .caption { padding-top: 14px; line-height: 22px; }
body:not(.home) .slideshow .item .caption > span { margin-left:0; color:#C9AD7F; display: block; }
body:not(.home) .slideshow .item .item-button { margin-top: 13px; padding: 0 15px; }
.slideshow.gallery .item { margin:0; }
.slideshow.gallery .item img { width:100%; }
.pagination { margin:45px 0; text-align:center; }
.pagination a { background:rgba(255,255,255,.05); border-radius:100%; display:inline-block; width:10px; height:10px; margin:0 3px; }
.pagination a span { display:none; }
.pagination a.selected { background:rgba(255,255,255,.3); }
.slideshow .nav { width: 50px; height: 50px; display: block; cursor: pointer; background: rgba(0,0,0,.5); position: absolute; top: 50%; margin-top: -65px; font-family: 'ionicons'; font-size: 20px; color: #FFF; text-align:center; line-height: 50px; z-index: 10; }
.slideshow .nav.prev { left: 0; }
.slideshow .nav.next { right: 0; }
.slideshow .nav.prev:after { content: '\f3d2'; }
.slideshow .nav.next:after { content: '\f3d3'; }
.home .slideshow .item .item-button { display: none; }

.slideshow.full { margin:-15px 0 85px; box-sizing:border-box; }
.slideshow.full .center { padding:0 35px; }
.slideshow.full:after { content:""; clear:both; display:block; }
.slideshow.full .item { width:calc(100% / 3); margin:0; padding:15px; display:block; float:left; box-sizing:border-box; }
.slideshow.full .item img { width:100%; }

.hover .chalets .slideshow .item:hover { transform:scale(1.02); }

@media only screen and (min-width:1600px) {
.property .slideshow.slide .item img { width:1200px; }
.property .slideshow.slide .caroufredsel_wrapper { height: 600px !important; }
.location .slideshow.slide .caroufredsel_wrapper { height: 325px !important; }
}
@media only screen and (min-width:1024px) and (max-width:1600px) {
.property .slideshow.slide .item img { width:800px; }
.property .slideshow.slide .caroufredsel_wrapper { height: 400px !important; }
	.location .slideshow.slide .caroufredsel_wrapper { height: 250px !important; }
}
@media only screen and (max-width:1400px) {
.slideshow .item img { width:500px; }
.slideshow.slide .caroufredsel_wrapper { height: 338px !important; }
}
@media only screen and (max-width:1024px) {
.slideshow.full .item { width:50%; }
.property .slideshow.slide .caroufredsel_wrapper, .location .slideshow.slide .caroufredsel_wrapper { height: 250px !important; }
}
@media only screen and (max-width:768px) {
.slideshow .item img { width:400px; }
.slideshow.slide .caroufredsel_wrapper { height: 275px !important; }
.property .slideshow.slide .caroufredsel_wrapper, .location .slideshow.slide .caroufredsel_wrapper { height: 200px !important; }
.slideshow .item .caption { padding-top: 14px; line-height: 22px; }
.home .slideshow .item .caption > span { margin-left:0; padding-bottom: 13px; color:#C9AD7F; display: block; }
}
@media only screen and (max-width:640px) {
.slideshow.full .center { padding:0 15px; }
}
@media only screen and (max-width:480px) {
.slideshow .item img { width:250px; }
.slideshow.slide .caroufredsel_wrapper { height: 190px !important; }
.property .slideshow.slide .caroufredsel_wrapper, .location .slideshow.slide .caroufredsel_wrapper { height: 125px !important; }
.slideshow.full .item { width:100%; }
.slideshow .nav { display: none; }
}



/* Subscribe */

.subscribe { text-align:center; }
.subscribe img { width:100%; max-width:310px; height:auto; margin:0 auto 25px; display:inline; }
.subscribe input { width:200px; margin:0 1px; font:400 15px/40px 'Karla'; letter-spacing:.7px; color:#BDBFC0; text-align:center; background:#2D3438; border:none; }
.subscribe .button { margin-top:50px; }
.home .subscribe { margin-top:-20px; }

@media only screen and (max-width:480px) {
.subscribe input { width:70%; margin:0 0 2px; }
}



/* Form */

.col-2 { width:50%; padding:0 25px; float:left; box-sizing:border-box; }
.form .center { padding:0 25px; }
.form h1, .form h2, .form h3, .form h4 { color:#FFF; }
.form h5, .form p { max-width:500px; margin-left:auto; margin-right:auto; color:#AAA; }
.form .field { width:100%; max-width:600px; margin:0 auto 12px; background:#2D3438; position:relative; }
.form .field input, .form .field select, .form .field textarea { width:100%; padding:17px 15px;font:400 15px 'Karla'; letter-spacing:.7px; color:#BDBFC0; box-sizing:border-box; border:none; display:block; background:none; position:relative; z-index:2; -webkit-appearance:none; }
.form .field select, .form .field option { color:#BDBFC0 !important; background:#2D3438 !important; }
.form .field textarea { height:116px; }
.form .field.calendar, .form .field.calendar input { cursor:pointer; }
.form .field.calendar input { padding-left:43px; font-weight:500; color:#FFF; }
.form .field .tag { padding:0 15px; position:absolute; top:0; left:14px; }
.form .field .tag i { font-size:17px; top:12px; color:#C9AD7F !important; }
.form .field select { -moz-appearance:window; -webkit-appearance:none; }
.form .field select option { color:#555; }
.form .field i { font-size:22px; color:rgba(255,255,255,.2); position:absolute; top:12px; right:15px; z-index:1; transition:.2s ease; }
.form .button { margin-top:40px; z-index: 10; position: relative; }
.form .honeypot { display:none; }
.alert { margin: 0 auto 50px; padding:12px 20px; color: #C9AD7F; line-height:20px; box-sizing: border-box; border:1px solid #C9AD7F; display: table; }
.alert i { font-size:20px; float:left; margin:1px 15px 0 0; }
.alert.success { border-color: #9DCD7A; color: #9DCD7A; }

.hover .form .field.calendar:hover i { color:#C9AD7F; }
.hover .form .field:hover .tag { opacity:1; }

@media only screen and (max-width:1024px) {
.col-2 { width: 100%; }
}

@media only screen and (max-width:768px) {
p.alert i { float:none; display:block; margin-bottom:7px; }
}

@media only screen and (max-width:480px) {
.form div[class^='col'] { padding:0 !important; }
.form .center { padding:0 30px; }
}



/* Datepicker */

.ui-datepicker { background:#F5F5F5; font:14px/20px 'Karla', sans-serif; float:left; display:none; z-index:999999 !important; transition:transform 1s ease; }
.ui-datepicker * { position:relative; z-index:2; }
.ui-datepicker-group { width:50%; float:left; }
.ui-datepicker-header { position:relative; }
.ui-datepicker-title { font:700 14px/80px 'Montserrat' !important; color:#FFF; letter-spacing:1.5px; text-transform:uppercase; background:#2D3438; }
.ui-datepicker-title .ui-datepicker-year { font-weight:400; letter-spacing:.5px; }
.ui-datepicker-group-first .ui-datepicker-header { border-right:1px solid #3C4246; }
.ui-datepicker .ui-datepicker-title { font-size:16px; font-weight:bold; line-height:28px; text-align:center; }
.ui-datepicker table { width:100%; margin:0; padding:25px 38px 38px; }
.ui-datepicker-group-first table { border-right:1px solid #E5E5E5; }
.ui-datepicker th { width:25px; padding:5px 5px 30px; font-weight:400; font-size:12px; letter-spacing:1px; text-transform:uppercase; color:#888; }
.ui-datepicker td span, .ui-datepicker td a { display:block; padding:19px 0; text-decoration:none; }
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { font-weight:400; font-size:16px; background:#FFF; color:#444; letter-spacing:.5px; text-align:center; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus, .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { background:#C9AD7F; color:#FFF; font-weight:400; }
.ui-widget-header .ui-state-hover { opacity:0.25; cursor:pointer; }
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity:0.25; cursor:default; }
.ui-icon { text-indent:-9999px; display:block; }
.ui-datepicker .ui-datepicker-prev .ui-icon:before { content:"\f3d2"; width:100%; height:100%; padding:20px; font-size:25px; font-weight:normal; color:#999; text-indent:0; font-family:ionicons; position:absolute; top:-20px; left:-40px; }
.ui-datepicker .ui-datepicker-next .ui-icon:before { content:"\f3d3"; width:100%; height:100%; padding:20px; font-size:25px; font-weight:normal; color:#999; text-indent:0; font-family:ionicons; position:absolute; top:-20px; left:0; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top:30px !important; }
.ui-datepicker .ui-datepicker-prev { left:40px; z-index:3; }
.ui-datepicker .ui-datepicker-next { right:48px; z-index:3; }

@media only screen and (min-width:1024px) {
.ui-datepicker { width:1000px !important; margin-top:-252px !important; margin-left:-500px !important; box-shadow:0 0 0 700px rgba(24,29,32,.8); position:fixed !important; top:50% !important; left:50% !important; }
}

@media only screen and (max-width:1024px) {
.ui-datepicker { width:100% !important; margin-left:0 !important; left:0 !important; }
}

@media only screen and (max-width:800px) {

.ui-datepicker { width:calc(100% - 100px) !important; margin-left:50px !important; left:0 !important; }
}

@media only screen and (max-width:480px) {
.ui-datepicker { width:100% !important; margin-left:0 !important; margin-right:0 !important; }
}

@media only screen and (max-width:400px) {
.ui-datepicker table { padding:20px 25px 30px; }
.ui-datepicker td span, .ui-datepicker td a { padding:10px 0; }
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { font-size:15px; }
}



/* Footer */

footer { padding:40px 0; text-align:center; font:400 10px/20px 'Montserrat'; color:#FFF; letter-spacing:1.2px; text-transform:uppercase; background:rgba(0,0,0,.3); }
footer a { padding-left:25px; color:#FFF; }

.hover footer a:hover { color:#C9AD7F; }

@media only screen and (max-width:480px) {
footer a { margin:10px 0 0; padding:0; display:block; }
}



/* Transitions */

a, button, .button:before, .slideshow .item, .item-button:before, .rate-list .toggle a:before { transition:.2s ease; }
header { transition:.2s ease background; }