/*
Theme Name: Fenham Farm
Author: Alan McDonald
Author URI: http://madebyplumbers.co.uk
*/

@import url(css/magnific-popup.css);


/* Reset
-------------------------------------------------------------- */
a,abbr,acronym,address,applet,big,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,font,form,h1,h2,h3,h4,h5,h6,html,iframe,img,ins,kbd,label,legend,li,object,ol,p,pre,q,s,samp,small,span,strike,strong,table,tbody,td,tfoot,th,thead,tr,tt,ul,var{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline}h1,h2,h3,h4,h5{font-weight:400}article,aside,footer,header,hgroup,nav,section{display:block}:focus{outline:0}body{line-height:1;color:#000;background:#fff;height:100%}ol,ul{list-style:none}table{border-collapse:separate;border-spacing:0}caption,td,th{text-align:left;font-weight:400}blockquote:after,blockquote:before,q:after,q:before{content:""}blockquote,q{quotes:"" ""}html{height:100%;padding-bottom:1px}a{text-decoration:none}.hidden{display:none}.clear{clear:both}img{-ms-interpolation-mode:bicubic;width:100%;height:auto;display:block}.left{float:left}.right{float:right}b{font-weight:400}i{font-style:normal}
a:active { background-color: transparent;} /*remove the active colour from ie10+*/
/*Custom reset ------------------------------------------------*/
body{ -webkit-text-size-adjust:none; font-weight:normal;}
input[type="submit"], select, input[type="text"],input[type="password"], textarea{ -webkit-appearance:none; border-radius:0; font-size:inherit; }
a {  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } 
div,article,section,header,footer,nav,li{ position:relative;}
input,select,button, textarea{ font-family:inherit;	}
em{ font-style:normal;	}
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;  }
.left { float:left; } .right { float:right; }
.mobile-only,
.close-expand,
.mobile-feature-image,
.top-bar,
.mobile-menu-extra  { display:none; }




/* Global
--------------------------------------------------------------------*/
html { height: 100%; }
body { font-size: 62.5%; font-family:'Myriad W01 Lt'; font-weight:normal; font-style: normal;font-stretch: normal; -webkit-text-size-adjust:none; color:#6c6a5e;background:#c1b5a4 }
a { color:#6c6a5e; text-decoration: none; }
.row { width:100%; }
.inner { width:100%; }
.inner:before, .inner:after, .fr-inner:before, .fr-inner:after { content: ""; display: table; }
.inner:after, .fr-inner:after { clear: both; }
.column { float:left; }

.page { background:#f5f3e7; margin:0 auto; max-width:1280px;  }

.skip-to-content { z-index:99;top:-45px; left:0; padding:0 15px; background:#000; color:#fff; font-size:1.5em; height:45px; line-height:45px; position:absolute; display:block; transition:top 300ms ease-in-out; }
.skip-to-content:focus { top:0; }


/* Typography
--------------------------------------------------------------------*/
/*
font-family:'Myriad W01 SmBd';
font-family:'Myriad W01 Regular';
font-family:'Minion W08 Semibold';
*/

.hero-text h1,
.image-banner h2,
.image-banner h4,
.image-banner p.banner-quote,
.image-banner p.banner-quote-source,
.message-block p.banner-quote,
.message-block p.banner-quote-source,
.title-bar .title,
.contact-form h3,
.content-tabs > h2,
.solid-banners .banner h3,
.text-content h2,
.text-content h3,
.text-content h4,
.listing-blocks .block h3,
.articles .listing-item h2,
.instagram .title h2,
h3.hiddentitle,
.mlistformcontent h2 { font-family:'Malabar LT W01 Regular'; font-weight:normal; }

/*nav.menu { font-family:'Myriad W01 SmBd'; font-weight:normal; }*/

p,
.text-content ul,
.text-content li,
.text-content h2,
.text-content h3,
.text-content h4,
.pagefooter ul,
.hero-text h1 { }

.text-content strong,
.bookingmodalcontent .button { font-family:'Myriad W01 SmBd'; font-weight:normal; }

a { transition:color 200ms ease-in-out, opacity 200ms ease-in-out;  }
p { line-height:135%; }


/* Colours
--------------------------------------------------------------------*/
nav.menu a:hover,
nav.menu .current_page_item a,
nav.menu .current_menu_item a,
nav.menu .current-menu-item a,
nav.menu .current-page-ancestor a,
.pagefooter a:hover,
.icon-links .fa { color:#d64600; }

.bg-olive { background:rgb(183,182,164); }
.bg-sand { background:rgb(225,221,209); }
.bg-wood { background:rgb(130,127,117); }
.bg-blue { background:rgb(156,190,197); }
.bg-gold { background:rgb(209,193,123); }
.bg-brown { background:rgb(81,78,70); }
.bg-cream { background:rgb(245,243,231); }

.hero-text-inner.bg-olive { background:rgba(183,182,164,0.97); }
.hero-text-inner.bg-sand { background:rgba(225,221,209,0.97); }
.hero-text-inner.bg-wood { background:rgba(130,127,117,0.97); }
.hero-text-inner.bg-blue { background:rgba(156,190,197,0.97); }
.hero-text-inner.bg-gold { background:rgba(209,193,123,0.97); }
.hero-text-inner.bg-brown { background:rgba(81,78,70,0.97); }
.hero-text-inner.bg-cream { background:rgba(245,243,231,0.97); }


/* Modal overlays
--------------------------------------------------------------------*/
body.mlistopen,
body.bookingmodal { height:100%; overflow:hidden; }
.ffmodal { background:rgba(143,136,106,0.95); width:100%; position:fixed; left:0; top:0; height:100%; visibility:hidden; opacity:0; transition:all 300ms ease-in-out; z-index:99999; color:#fff; }
.mlistopen .mlistform,
.bookingmodalopen .bookingmodal { visibility:visible; opacity:1;}

.close-modal { width:40px; height:40px; border-radius:40px; font-size:20px; line-height:40px; text-align:center; background:#D64600; color:#fff; position:absolute; right:30px; top:30px; display:block; z-index:10;}

.mlistformcontent,
.bookingmodalcontent { width:96%; max-width:580px; padding:40px; border:1px solid rgba(255,255,255,0.5); margin:0 auto;}
.mlistformcontent h2 { font-size:2.3em; padding-bottom:10px; border-bottom:1px solid rgba(255,255,255,0.5); margin-bottom:34px;}
.mlistformcontent .mc4wp-form label { font-size:2em; display:block; padding-bottom:10px; font-weight:normal;}
.mlistformcontent input[type="text"],
.mlistformcontent input[type="email"] { width:100%; background:#fff; border:none; border-radius:0; padding:20px 10px; font-size:1.6em; color:#000; margin-bottom:15px; }
.mlistformcontent input[type="submit"] { color:#fff; width:100%; font-size:1.6em;border:none; background:#D64600; height:60px; cursor:pointer; }
.mlistformcontent .mc4wp-notice,
.mlistformcontent .mc4wp-success { font-size:2em; padding:15px 0; }

.bookingmodalcontent .text-content { font-size:1.15em; }
.bookingmodalcontent .text-content,
.bookingmodalcontent .text-content h2,
.bookingmodalcontent .text-content h3,
.bookingmodalcontent .text-content p,
.bookingmodalcontent .text-content ul,
.bookingmodalcontent .text-content a { color:#fff; }

.bookingmodalcontent .button { display:block; height:50px; line-height:50px; font-size:1.8em; text-align:center;color:#fff; width:100%; border:none; background:#D64600; cursor:pointer; }


/* Layout
--------------------------------------------------------------------*/
.masthead .inner,
.pagefooter .inner { padding:0 45px; }
.tbl { display:table; width:100%; height:100%; }
.tbl-cell-v { display:table-cell; vertical-align:middle; }
.border-left { border-left:10px solid #F5F3E7; }
.border-right { border-right:10px solid #F5F3E7; }
.border-bottom { border-bottom:10px solid #F5F3E7; }
.border-top { border-top:10px solid #F5F3E7; }
.content { padding:0 10px 10px 10px; overflow:hidden;  }
.col-three-quarter { width:75%; }
.col-one-quarter { width:25%; }
.col-half { width:50%; }
.set-height-440 { height:440px; }

/* Header
--------------------------------------------------------------------*/
.masthead { height:136px; }
.logo { width:199px; height:96px; display:block; background:url('images/custom/logo-new-v2.png') no-repeat; margin:20px 0 0 0; text-indent:-999em; background-size: contain; }
.award-graphic { width:51px; height:103px; position:absolute; right:45px;top:0;}

/* Menu
--------------------------------------------------------------------*/
nav.menu { position:absolute; bottom:22px; /*right:150px; */right:10px; }
ul.menu-links { font-size:1.9em;  }
ul.menu-links > li{ display:inline-block; padding-left:33px; }
ul.menu-links > li:first-child { padding-left:0;}
ul.menu-links > li a{ height:28px; line-height:28px; display:block;}
ul.menu-links > li.book-link a { color:#f5f3e7; background:#d64600; padding:0 8px; }

.mobile-nav-toggle { display:none; }

.sub-bar { height:44px; background:rgba(56,47,41,0.8); font-size:1.7em; text-align:center; position:absolute; left:0; top:0; width:100%; z-index:100; }
.sub-bar li { display:inline-block; padding:0 15px;}
.sub-bar li a { height:44px; line-height:44px; display:block; opacity:0.3;color:#fff; }
.sub-bar li a:hover { opacity:0.6; }
.sub-bar li a.active { opacity:1; }
.sub-menu {  background:#8f886a;  margin-top:10px; font-size:0.9em; display:none; }
.sub-menu-wrap .sub-menu { display:block; }
.sub-menu:before{ border-bottom: solid 10px #8f886a; border-left: solid 10px transparent;border-right: solid 10px transparent;content: "";height: 0;left:10px;position: absolute;top:0;width: 0;	}
.sub-menu li { border-top:1px solid rgba(255,255,255,0.1); height:auto; }
.sub-menu li:first-child { border-top:0; }
nav.menu .sub-menu a { color:#fff; transition:color 200ms ease-in-out; display:block; height:auto;line-height:normal; padding:12px 14px;  }
nav.menu .sub-menu a:hover { background:#7f7650 }
nav.menu li .sub-menu-wrap { z-index:1001; position:absolute; display: block; width:240px;top:30px; opacity: 0;visibility: hidden;overflow: hidden; color:#fff;transition: all .3s ease .15s; }
nav.menu li.has-sub:hover .sub-menu-wrap {  opacity: 1; visibility: visible;overflow: visible; }
nav.menu li .sub-menu a { color:#fff;  }

.masthead .icon-links { font-size:1.5em; width:100%; text-align:left; margin-bottom:12px; }
.masthead .icon-links li { display:inline-block; padding-right:25px; }

/* fixed header */
body.fixedheader { padding-top:122px; }
.fixedheader .award-graphic { display:none; }

.fixedheader .masthead { position:fixed; background:#F5F3E7; width:100%; z-index:1001; top:0; left:0;margin:0; height:65px;  animation-name:navin; animation-duration:0.5s;}
.fixedheader .masthead .inner { max-width:1280px; margin:0 auto; width:100%; padding:0;}
.fixedheader nav.menu { margin:0; right:0; top:18px; bottom:auto;}
.fixedheader nav.menu li { line-height:65px; } 
.fixedheader .logo { width:48px; height:46px; background:url('images/custom/fixed-header-logo.png') no-repeat; margin:10px 0 0 0; }

.fixedheader .masthead .icon-links { display:none; }

@keyframes navin {
    from {top:-65px;}
    to {top:0px;}
}


/* Title bar
--------------------------------------------------------------------*/
.title-bar-wrap { padding:0 10px 10px 10px; }
.title-bar { min-height:112px; padding:40px 20px; background:url('images/custom/texture-brown.jpg'); width:100%; color:#fff; text-align:center;}
.title-bar .title { font-size:3em; }
.title-bar span.date { display:block; padding-top:10px; font-size:1.6em; }

/* Hero
--------------------------------------------------------------------*/
.hero { padding:0 10px; margin-bottom:10px;  }
.hero .full { height:100%; }
.hero-tall,
.hero-tall .image-slides .slide { height:560px; }
.hero-reg,
.hero-reg .image-slides .slide { height:420px; }
.image-slides { height:100%; background:#CCC;overflow:hidden;width:100%; }
.image-slides .slide { height:100%; width:100%; background-size:cover; background-position:50% 50%;}
.hero-text { position:absolute; bottom:70px;  width:100%; z-index:1000; }
.hero-text { bottom:40px; }
.hero-text-inner { width:95%; max-width:800px;padding:25px 0 30px 0; margin:0 auto;display:table; text-align:center; }
.hero-text-inner > div { width:100%; height:100%; vertical-align:middle; }
.hero-text h1,
.hero-text h2,
.hero-text p { padding-left:80px; padding-right:80px; }
.hero-text h1,
.hero-text h2 { font-size:2.8em; padding-bottom:15px; }
.hero-text p { font-size:1.9em; }

.border-title h1,
.border-title h2 { margin-bottom:20px; }

.hero-text-inner.light-text h1,
.hero-text-inner.light-text h2 {color:#fff; }
.hero-text-inner.light-text p { color:rgba(255,255,255,0.5); color:#fff; }
.hero-text-inner.light-text.border-title h1,
.hero-text-inner.light-text.border-title h2 { border-bottom:1px solid rgba(255,255,255,0.2);  }

.hero-text-inner.dark-text h1,
.hero-text-inner.dark-text h2 {color:rgb(44,61,64);   }
.hero-text-inner.dark-text p { color:rgba(44,61,64,0.9); }
.hero-text-inner.dark-text.border-title h1,
.hero-text-inner.dark-text.border-title h2 { border-bottom:1px solid rgba(44,61,64,0.2);  }

.hero-text .icon {width:90px; display:block; margin:18px auto 0 auto; }
/*.hero-text-inner.has-room-icon { padding-bottom:108px; }*/

.hero-text .action { width:180px;  position:absolute; right:17px; }
.hero-text .action.top { top:23px; }

.has-action-top h1,
.has-action-top h2 { padding-left:230px; padding-right:230px;}

.hero-text .button-orange { height:34px;padding:8px 13px; width:auto; display:inline-block; color:#fff; text-align:center; line-height:34px; background:#D64600;font-size:1.3em;  text-transform:uppercase; }
.hero-text .action .button-orange { width:180px; padding:0; }
.hero-text .button-white { display:inline-block; width:auto; padding:8px 13px; background:#fff; margin-top:20px; font-size:1.3em; text-transform:uppercase;}

/* Banner row / Listing
--------------------------------------------------------------------*/
.banner-row { padding:0 10px 10px 10px; overflow:hidden; }
.photo-banners > div { height:340px; }
.image-banner { height:100%; background-size:cover; background-position:50% 50%; float:left;}
.image-banner > a { display:block; height:100%; }
.image-banner .text { height:100%; text-align:center; display:table; width:100%; background:rgba(255,255,255,0.5); transition:background 300ms ease; }
.image-banner .text:hover { background:rgba(255,255,255,0.8); }
.image-banner .text .tbl-cell-v { padding:0 20px; }
.image-banner.half { width:50%; }
.image-banner.third { width:33.3333333333%; }
.image-banner.two-thirds { width:66.66666666%; }
.image-banner.right { border:none; float:right; }
.image-banner.incidentals { width:16.6666666666666%; }

.image-banner .in-image { height:170px; }
.image-banner .in-image.top { border-bottom:5px solid #F5F3E7; }
.image-banner .in-image.bottom { border-top:5px solid #F5F3E7; }

.image-banner h2 { font-size:3.5em;color:#2b3d40; padding-bottom:0.3em;  }
.image-banner p { font-size:2em; color:#1d1d1b;   padding-bottom:0.6em; }
.image-banner h4 { font-size:1.2em; text-transform:uppercase; color:#484039; }
.image-banner .fk-button { background:#2c3d40; color:#fff; position:absolute; bottom:23px; width:180px; left:50%; margin-left:-90px; display:block;  padding:8px 0; text-transform:uppercase; font-size:1.3em;  letter-spacing:0.05em;}
.image-banner.two-thirds .fk-button { width:240px; margin-left:-120px;}

.image-banner p.banner-quote { font-size:2.5em; }
.image-banner p.banner-quote-source { font-size:1.2em; text-transform:uppercase; position:absolute; bottom:23px; text-align:center; width:100%; left:0; }
.image-banner p.white { color:#fff; }

.room-list { padding-right:0;}
.room-list .title { height:56px;background:rgba(161,158,153,0.8); bottom:0; position:absolute; width:100%; }
.room-list .semi { width:83px; height:39px; display:block; position:absolute; top:-39px; left:50%; margin-left:-41px;background:url('images/custom/listing-semi-circle.png'); } 
.room-list .icon { width:52px; height:39px; display:block; position:absolute; left:50%; margin-left:-26px; overflow:hidden; margin-top:-30px;}
.image-banner .title h2 { font-size:2.6em; padding-top:14px; text-align:center; color:#fff; }

/* Article list 
--------------------------------------------------------------------*/
.articles { overflow:hidden; }
.articles .listing-item { width:50%; float:left; border-right:5px solid #F5F3E7; height:350px; margin-bottom:10px;}
.articles .listing-item.right { border-left:5px solid #F5F3E7; border-right:none; }
.articles .listing-item a { height:100%; display:block; background:#b7b6a4; background-size:cover; background-position:50% 50%; }

.articles .listing-item .details { height:125px; padding:25px 20px 0 20px; position:absolute; bottom:0; width:100%; text-align:center; background:rgba(56,47,41,0.8); color:#fff;}
.articles .listing-item .suptitle { display:block; font-size:1.3em; padding-bottom:10px;}
.articles .listing-item h2 { font-size:2.3em; }

.instagram .title { padding:0 10px 10px 10px;}
.instagram .title h2 { font-size:2.6em; background:#cfdbb7; text-align:center; padding:30px 0; color:#4e4943; }
.instagram .title h2 .fa { margin-right:16px; }
.instagram .si_feed { padding:0 10px 0 0; }
.instagram .si_item { width:25%; float:left; padding:0 0 10px 10px; }


/* Row: Message block (full width)
--------------------------------------------------------------------*/
.message-block { padding:0 10px 10px 10px; overflow:hidden; }
.message-block > div { width:100%; display:table; background-size:cover; background-position:50% 50%;  }
.message-block.reg > div {height:190px; }
.message-block.large > div { height:350px; }
.message-block.x-large > div { height:450px; }
.message-block > div > div { height:100%; width:100%; display:table-cell; vertical-align:middle; text-align:center; }
.message-block p.banner-quote { font-size:3.2em; width:80%; margin:0 auto; color:#343435;  }
.message-block p.banner-quote-source { font-size:2em; text-transform:uppercase; padding-top:30px;  color:#343435; }
.message-block p.white,
.message-block p.white a { color:#fff; }


/* Row: main-text-column-block
--------------------------------------------------------------------*/
.main-text-column-block .text-content { padding:50px 40px; }
.image-aside img:first-child { border-top:none; }


/* Row Fragment: Tabs + single text panel
--------------------------------------------------------------------*/
.tab-content { display:none; padding:35px 14px; }
.tab-content.active { display:block; }
.hiddentitle { display:none; }

.content-tabs { padding:30px; height:100%;}
.content-tabs > h2 { font-size:2.5em; text-align:center; padding:20px 0 28px 0; }
.tabs-nav { border-bottom:1px solid rgba(255,255,255,0.3); text-align:center; font-size:1.6em; text-transform:uppercase; }
.tabs-nav li { padding:10px 20px 25px 20px; display:inline-block; }
.tabs-nav a { opacity:0.5; }
.tabs-nav a.active { opacity:1; }

.single-text-panel { padding:30px; height:100%; }


/* Row: Solid banners
--------------------------------------------------------------------*/
.solid-banners > div { padding:0 10px 0 0; margin-bottom:10px; overflow:hidden;}
.solid-banners .banner { min-height:340px; float:left; text-align:center; }
.solid-banners .banner a { height:100%; display:block; }
.solid-banners .banner h3 { font-size:3.6em; padding:0 14px 30px 14px; }
.solid-banners .banner p { font-size:1.6em; padding:0 15%; }
.solid-banners.banners-4 .banner { width:25%; }
.solid-banners.banners-3 .banner { width:33.3333333333%; }
.solid-banners.banners-2 .banner { width:25%; }
.solid-banners.banners-1 .banner { width:100%; float:none;}

.solid-banners .banner.dark-text a,
.solid-banners .banner.dark-text { color:#2c3d40; }

.solid-banners .banner.light-text a,
.solid-banners .banner.light-text { color:#fff; }

/* Row: Listing blocks
--------------------------------------------------------------------*/
.listing-blocks > div { padding:0 10px 0 0; margin-bottom:10px; overflow:hidden;}
.listing-blocks .block { float:left; text-align:center; }
.listing-blocks .block h3 { font-size:2.6em; padding:36px 14px; }
.listing-blocks .block p { font-size:1.6em; padding:0 14px; }
.listing-blocks.blocks-2 .block p { padding:0 30px; }
.listing-blocks.blocks-3 .block { width:33.3333333333%; }
.listing-blocks.blocks-2 .block { width:50%; }
.listing-blocks .text { min-height:270px; }
.listing-blocks .text.has-button { padding-bottom:60px; }
.button-text { display:block; height:35px; bottom:25px; text-align:center; position:absolute; width:100%; } 
.button-text > span { display:inline-block; height:35px; bottom:20px; min-width:140px; border:1px solid #fff; text-transform:uppercase; padding:0 10px; line-height:35px; color:#fff; font-size:1.2em; }

.listing-blocks .text { margin-bottom:15px; }

.dark-text  .button-text > span { color:#2c3d40; border-color:#2c3d40;}

.listing-blocks .block.dark-text a,
.listing-blocks .block.dark-text { color:#2c3d40; }

.listing-blocks .block.light-text a,
.listing-blocks .block.light-text { color:#fff; }

.lb-img { height:280px; background-size:cover; background-position:50% 50%; }
.listing-blocks.blocks-3 .lb-img { height:200px; }


/* Row Fragment: Gallery
--------------------------------------------------------------------*/
.gallery-slides { height:100%; overflow:hidden;}
.gallery-slides .slide { height:100%; }
.gallery-slides .slide-image { height:390px;background-size:cover; background-position:50% 50%;}
.gallery-slides .slide-caption { height:50px; padding-right:40px; padding-left:15px; }
.gallery-slides .slide-caption p { padding-top:17px; font-size:1.4em; }
.gallery-slides .fa { position:absolute; bottom:15px; right:15px; font-size:25px; z-index:999;  }
.mfp-bottom-bar { font-size:1.7em; }
.mfp-title,
.mfp-counter { padding-top:15px; }


/* Pagination
--------------------------------------------------------------------*/
.pagination { font-size:1.6em; padding:0 20px; height:50px; background:#827E73; }
.pagination .page-numbers { display:none; }
.pagination a.next, .pagination a.prev {  display:block; color:#fff; line-height:50px; height:50px;width:auto;  float:left; }
.pagination a.next {float:right; }


/* Contact Page 
--------------------------------------------------------------------*/
.google-map-wrap { background:#312F32; }
.map-element-wrap { height:400px; background:#312F32; }

.gm-style-iw h2 { font-size:1.4em; padding-bottom:10px; padding-top:10px; }
.gm-style-iw p { font-size:1em; }

.contact-address { padding-left:50px; padding-bottom:30px; }
.contact-address img.flag { position:absolute; left:0; top:0; width:35px; }
.sidebar .contact-address h4 { font-size:1.6em; padding-bottom:10px; }

.contact-form { padding:44px 35px; margin-top:10px;color:#2c3d40; }
.contact-form h3 { text-align:center; font-size:2.5em; padding-bottom:40px; }

.contact-form input[type="text"] { border:1px solid #dbdbd2; background:#dbdbd2; height:48px; font-size:1.6em; padding:0 10px; color:#2c3d40; }
.contact-form .field-wrap { margin-bottom:0; margin-top:10px; }
.contact-form .field-wrap.first-input-wrap { margin-top:0; }
.contact-form .field-wrap.one-third-input-wrap { width:33.333333333%; padding-right:10px; padding-bottom:10px; float:left; }
.contact-form .textarea-wrap { clear:both; padding-right:10px; padding-bottom:10px; color:#2c3d40; }
.contact-form .textarea-wrap textarea { border:1px solid #dbdbd2; background:#dbdbd2;font-size:1.6em;padding:10px; height:150px; margin:0; resize:none; }
.contact-form input[type="submit"] { text-transform:uppercase; margin-right:10px; cursor:pointer; display:block; color:#fff; text-align:center; float:right; padding:13px 0; border:none; font-size:1.6em; width:250px; resize:none;  background:#d64600; }
.contact-form input[type="submit"]:hover { background-color:#000; }
.contact-form .submit-wrap { position:absolute; right:0; bottom:0px; z-index:999;  }
.contact-form input[type="text"]:focus,
.contact-form .textarea-wrap textarea:focus { border-color:#fff; background:#fff; }
.contact-form .ninja-forms-error input[type="text"] { border-color:rgba(0,0,0,0.4); }
.contact-form .field-wrap.label-left label,
.contact-form .field-wrap.label-above label, 
.contact-form .ninja-forms-required-items { display:none; }
.contact-form .ninja-forms-field-error { display:none!important; }
.contact-form .field-wrap.label-left .ninja-forms-field { margin:0; width:100%; }
.contact-form .ninja-forms-response-msg.ninja-forms-error-msg { padding:10px; font-size:1.7em; background:rgba(0,0,0,0.1); text-align:center; margin-bottom:10px; }
.contact-form .ninja-forms-success-msg { font-size:2em; padding:20px; border:1px solid rgba(0,0,0,0.2); text-align:center; }

.contact-form .checkbox-wrap { padding-right:280px; padding-top:15px; padding-bottom:15px; margin:0; }
.contact-form .checkbox-wrap label { font-size:1.7em; font-weight:normal; padding-bottom:3px; }


.page404 { padding:80px 45px; }
.page404 h1 { font-size:3em; padding-bottom:0.3em; }
.page404 p { font-size:1.8em; }

/* Footer
--------------------------------------------------------------------*/
.pagefooter .inner { padding-top:40px; padding-bottom:90px; }
.pagefooter p,
.pagefooter ul { font-size:1.5em; padding-bottom:1em; line-height:135%; }

.pagefooter li { display:inline-block; padding-left:25px; }
.pagefooter li:first-child { padding-left:0; }

.footer-col { width:50%;}

ul.social { float:right; vertical-align:top; }
ul.social li { display:inline-block; padding:0 0 0 8px; height:29px; }
.social .fa { font-size:1.8em; }
.social span { display:none; }
.social span.vis { display:inline-block; vertical-align:top; padding-top:3px;}
.pagefooter .social a { color:#2b3d40; }
li.tripadvisor .fa { margin-right:8px; }

.icon-links { width:auto; text-align:right; }
.icon-links .fa { margin-right:8px; }

.tab-content .icon-links { text-align:left; font-size:1.5em; }
.tab-content .icon-links li { display:block; padding-bottom:6px; }
.tab-content .icon-links .fa { width:28px; margin-right:0; }


.footer-logos { clear:both; width:auto; max-width:100%; }


/* Text content
--------------------------------------------------------------------*/

.text-content p,
.text-content ul,
.text-content ol,
.text-content table { font-size:1.5em; padding-bottom: 1.9em; line-height:140%; color:#2c2b26; }

.single-text-panel .text-content p,
.single-text-panel .text-content ul,
.single-text-panel .text-content ol,
.single-text-panel  .text-content table { padding-bottom: 1.3em; }


.text-content p a,
.text-content ul a,
.text-content ol a,
.text-content table a {  text-decoration:underline; transition:color 200ms ease-in-out; }
.text-content table td { vertical-align: top }
.text-content ul { list-style-type:disc; padding-left: 1em; }
.text-content ol { list-style-type: decimal; padding-left: 1em; }
.text-content ul li,
.text-content ol li { padding-bottom: 0.4em }
.text-content h2 {  font-size:2em; padding-bottom:1.2em;color:#2c2b26; }
.text-content h3 {  font-size:1.8em; padding-bottom:1.2em; color:#2c2b26;}
.text-content h4 {  font-size:1.5em; padding-bottom:0.3em; color:#2c2b26;}
.text-content a:hover { color:#000;}
.text-content ul ul { font-size:inherit; padding-top:0.8em; padding-bottom:0.3em;  }

.text-content .intro-para,
.intro-para { font-size:2.1em; padding-bottom:1em; line-height:115%; width:90%; }

.indent { padding-left:20px; padding-right:20px; }

.text-content .mejs-container { margin-top:30px; display:block; }



/* Media Queries
--------------------------------------------------------------------*/

@media (max-width:1280px)
{
	.fixedheader nav.menu { right:10px; }	
	.fixedheader .logo { margin-left:10px; }
}

@media (max-width:1200px)
{
	.solid-banners .banner h3,
	.listing-blocks .block h3 { font-size:3.1em; }
}

@media (max-width:1170px)
{
	.single-text-panel .text-content { font-size:95%; }	
}

@media (max-width:1100px)
{
	.masthead .inner, 
	.pagefooter .inner { padding-left:20px; padding-right:20px; }
	.award-graphic { right:20px; }
	nav.menu { /*right:115px;*/ }
	.photo-banners > div { height:300px; }
	.image-banner.third p br { display:none; }
	
	.image-banner .in-image { height:150px; }

}


@media (max-width:1050px)
{
	
	.hero-text-inner { max-width:700px; }
	
	.hero-tall, .hero-tall .image-slides .slide { height:420px; }
	.hero-text { bottom:20px; }
	.hero-text h1, .hero-text h2, .hero-text p { padding-left:30px; padding-right:30px; }
	
	.hero-text h1, .hero-text h2 { font-size:2.6em; }
	.hero-text p { font-size:1.7em; }
	
	.hero-text .action { width:160px; }
	.hero-text .action.top { top:20px; }
	
	.has-action-top h1,
	.has-action-top h2 { padding-left:190px; padding-right:190px;}
	
	.hero-text .action .button-orange { width:160px;  }
	.solid-banners .banner h3,
	.listing-blocks .block h3 { font-size:2.5em; }
	.solid-banners .banner p,
	.listing-blocks .block p { font-size:1.5em; }
	.solid-banners .banner { height:300px; }
	
	.listing-blocks.blocks-3 .lb-img { height:180px; }

	.content-tabs,
	.single-text-panel { padding:30px 18px; }
	
	.tab-content { padding:35px 0; }
	.tabs-nav { font-size:1.5em; }
	.tabs-nav li { padding-left:15px; padding-right:15px; }
}

@media (max-width:980px)
{
	
	.hero-text h1, .hero-text h2 { font-size:2.5em; }
	
	/* image banners - adjust and remove incidentals */
	.image-banner.incidentals { display:none; }
	.respond-2third-1third .image-banner.half { width:66.6666666%; }
	
	.respond-2halves .image-banner.half,
	.respond-2halves .image-banner.third  { width:50%; }
	.respond-2halves .image-banner.third.border-right { border:none; }
	
	.image-banner p { font-size:1.8em; }
	
	.single-text-panel .text-content { font-size:90%; }	
	
}

@media (max-width:930px)
{
	.logo { width:160px; height:77px; background-size:cover; }
	nav.menu { /*right:105px;*/ bottom:14px; }
	ul.menu-links { font-size:1.7em; }
	.masthead { height:116px; }
	ul.menu-links > li { padding-left:24px; }
	
	.masthead .icon-links { font-size:1.3em; }
	
	.pagefooter .inner { padding:30px 20px 50px 20px; }
	.footer-col.left,
	.footer-col.right { float:none; width:100%; padding-bottom:25px; text-align:center;}
	.pagefooter .icon-links { padding-right:0; text-align:center;}
	ul.social { position:relative; width:100%; top:auto; right:auto; margin:0 auto; float:none;text-align:center; }
	.footer-logos { margin:-18px auto 0 auto; }
	
	.articles .listing-item { height:300px; }
	.articles .listing-item h2 { font-size:1.9em; }
	
	.photo-banners > div { height:250px; }
	.image-banner .title h2 { font-size:2em; padding-top:19px; }
	
	.image-banner p.banner-quote { font-size:2em; }
	
	.hero-text p { margin-bottom:0; }
	.hero-text-inner { padding-top:0; }
	.hero-text h1, 
	.hero-text h2 { padding-top:20px; }
	
	.listing-blocks .block h3 { padding:20px 10px; }
	
	.tabs-nav { font-size:1.4em; }
	
	.text-content p, 
	.text-content ul, 
	.text-content ol, 
	.text-content table { padding-bottom:1.6em; }
	
}

@media (max-width:850px)
{
	.hero-text h1, 
	.hero-text h2,
	.solid-banners .banner h3,
	.listing-blocks .block h3 { font-size:2.1em; } 
	
	.hero-text p { font-size:1.6em; }
	.hero-text .action,
	.hero-text .action.top { position:relative; top:auto; right:auto; width:100%; padding:20px 10px 0 10px; }
	.solid-banners.banners-4 .banner { width:50%; }
	.solid-banners.banners-4 .banner:nth-child(1),
	.solid-banners.banners-4 .banner:nth-child(2) { margin-bottom:10px; }
	
	.lb-img { height:250px; }
	.tab-content { padding:30px 0; }
	.image-banner br { display:none; }
	
	.tabs-nav { font-size:1.3em; }
	.tabs-nav li { padding-left:10px; padding-right:10px; }
	
	.single-text-panel .text-content { font-size:86%; }	
}


@media (max-width:800px)
{
	.col-three-quarter { height:auto!important; width:100%; float:none;}
	.col-three-quarter.border-right { border-right:none; }
	.image-aside { display:none; }
}

@media (max-width:780px)
{
	
	.masthead .award-graphic,
	.sub-bar,
	.masthead .icon-links { display:none; }
	
	.pageheader { overflow:visible; }
	.mobile-nav-toggle{ width:40px; height:40px; text-indent:-999em; display:block; position:absolute; background:url('images/global/mobile-menu-button.svg') no-repeat #ebe8da 4px 5px; right:9px; top:44px; z-index:999; }
	body.expanded .mobile-nav-toggle {opacity:0.5; background:url('images/global/mobile-menu-close.svg') no-repeat; background-size:cover; top:10px; position:fixed; right:9px; }
	
	body { transition:margin-left 0.3s ease 0s; width:100%; height:100%;}
	body.expanded { margin-left:-400px; overflow:hidden; }
	nav.menu { letter-spacing:0.05em; z-index:99;padding:60px 0; background:#8f886a; color:#fff;height:100%; overflow-y:scroll; position:fixed; right:-400px; width:400px; top:0; transition:right 0.3s ease 0s; left:auto; }
	ul.menu-links { font-size:2em; } 
	body.expanded nav.menu { right:0; }
	
	nav.menu a { padding:0; height:45px; line-height:45px; color:#fff; display:block; }
	ul.menu-links { text-align:left;  }
	ul.menu-links > li,
	ul.menu-links > li:first-child { text-transform:uppercase;display:block; float:none; width:100%; padding:12px 20px; border-top:1px solid rgba(255,255,255,0.1); }
	ul.menu-links > li.has-sub span { position:absolute; width:45px; height:45px; right:0px; top:3px; display:block; background:url('images/global/sub-nav-down.svg') no-repeat 50% 50%;cursor:pointer; }
	ul.menu-links > li.has-sub.subopen span { background:url('images/global/sub-nav-up.svg') 50% 50% no-repeat; }
	

	nav.menu a:hover, nav.menu .current_page_item a, nav.menu .current_menu_item a, nav.menu .current-menu-item a, nav.menu .current-page-ancestor a { color:#fff; }
	
	/* sub */
	ul.menu-links > li.has-sub span { position:absolute; width:45px; height:45px; right:0px; top:3px; display:block; background:url('images/global/sub-nav-down.svg') no-repeat 50% 50%; cursor:pointer; }
	ul.menu-links > li.has-sub.subopen span { background:url('images/global/sub-nav-up.svg') no-repeat 50% 50%; }
	nav.menu li.has-sub .sub-menu-wrap {  opacity:1; position:relative; top:auto; left:auto; width:100%; visibility:visible; display:none; }
	nav.menu li.has-sub:hover .sub-menu-wrap {  display:none; }
	nav.menu li.has-sub.subopen .sub-menu-wrap,
	nav.menu li.has-sub.subopen:hover .sub-menu-wrap {  display:block!important;  opacity:1;  }
	.sub-menu { height:auto; }
	.sub-menu::before { display:none;}
	.sub-menu li { border:none }
	.search-toggle { bottom:auto; right:58px; top:29px; }
	/* end sub nav */
	
	.mobile-menu-extra { display:block; padding-top:10px; }
	.mobile-menu-extra .social { width:auto; margin:0 0 0 12px; position:relative; right:auto; top:auto; float:none; font-size:1.6em;text-align:left;}
	
	.masthead { height:auto; }
	.logo { width:190px; height:91px; margin:20px  auto; }
	
	.top-bar { display:block; height:35px; background:#1d1d1b; padding-left:10px;}
	.top-bar a { color:#f5f3e7; text-transform:uppercase; height:35px; line-height:35px; float:left; padding-right:20px; font-size:1.2em; }
	.top-bar a i { color:#d64600;padding-right:8px; }
	.top-bar a.book-link { padding:0; width:140px; position:absolute; right:0; text-align:center; background:#d64600; }
	
	.image-banner p { font-size:1.7em; }
}
	


@media (max-width:750px)
{
	.solid-banners.banners-1 .banner,
	.solid-banners.banners-2 .banner,
	.solid-banners.banners-3 .banner,
	.solid-banners.banners-4 .banner { width:100%; float:none; margin-bottom:10px; height:auto; min-height:0; padding:45px 0;  }
	.banner.border-left { border-left:none; }
	.solid-banners > div { padding: 0 10px; margin-bottom:0; }
	
	.listing-blocks .block p,
	.listing-blocks.blocks-2 .block p  { padding-left:20px; padding-right:20px; }
	
	.listing-blocks > div { padding: 0 10px; margin-bottom:0; }
	.listing-blocks.blocks-2 .block,
	.listing-blocks.blocks-3 .block{ width:100%; float:none; margin-bottom:10px; height:auto; padding:0 0 30px 0;  }
	
	.listing-blocks.blocks-2 .lb-img,
	.listing-blocks.blocks-3 .lb-img { height:250px; }
	
	.block.border-left { border-left:none; }
	
	.listing-blocks .text { height:auto; min-height:0; }
	
	.listing-blocks .text.has-button { padding-bottom:0; }
	.button-text { position:relative; bottom:auto; margin-top:20px; }
	
	.image-banner.half,
	.image-banner.third,
	.image-banner.two-thirds,
	.respond-2halves .image-banner.half,
	.respond-2halves .image-banner.third,
	.respond-2halves .image-banner.third.border-right,
	.respond-2third-1third .image-banner.half  { width:100%; float:none; height:280px; border-right:none; margin-bottom:10px; }
	
	.banner-row  { padding-bottom:0; }
	.room-list { padding-right:10px; }
	.room-list .border-bottom { border-bottom:none; }
	
	.col-half { width:100%; float:none; margin-bottom:10px; }
	.set-height-440 { height:auto; }
	
	.col-half.border-right { border-right:none; }
	.col-half.border-left { border-left:none; }
	
	.photo-banners > div { height:auto; }
	
	.content-tabs { padding:30px 18px 0 18px; }
	.tabs-nav { display:none; }
	.tab-content { display:block; padding:0 0 20px 0; }
	.hiddentitle { display:block; font-size:2em; padding-bottom:1em;  }
	
	.message-block.x-large > div { height:400px; }
	
	.single-text-panel .text-content { font-size:100%; }	
}




@media (max-width:700px)
{
	
	/* hero */
	.hero-tall,
	.hero-reg { height:auto; }
	.hero-text,
	.hero-reg .hero-text, 
	.hero-text.bottom-40 { position:relative; bottom:auto; }
	.hero-text-inner { width:100%; }
	
	.hero-tall .image-slides .slide,
	.hero-reg .image-slides .slide { height:300px; }
	
	/* flex content rows */
	.main-text-column-block .text-content { padding:40px 25px; }
	
	.lb-img { height:220px; }
	.articles .listing-item h2 { font-size:1.6em; } 
	.message-block p.banner-quote { font-size:2.3em; }
	
}


@media (max-width:650px)
{
	
	.masthead .inner { padding:0 10px; }
	
	.text-content p,
	.text-content ul,
	.text-content ol,
	.text-content table { font-size:1.4em; }
	.text-content h2 {  font-size:1.8em; }
	.text-content h3 {  font-size:1.6em; }
	.text-content h4 {  font-size:1.4em; }
	
	.listing-blocks.blocks-2 .lb-img,
	.listing-blocks.blocks-3 .lb-img { height:200px; }
	
	.image-banner.half,
	.image-banner.third,
	.image-banner.two-thirds,
	.respond-2halves .image-banner.half,
	.respond-2halves .image-banner.third,
	.respond-2halves .image-banner.third.border-right,
	.respond-2third-1third .image-banner.half { height:220px; }
	
	.image-banner .text .tbl-cell-v { padding:0 10px; }
	
	.message-block.x-large > div { height:350px; }
	.message-block p.banner-quote-source { font-size:1.5em; }
	
	.image-banner p br { display:none; }
	
	.map-element-wrap { height:280px; }
	.title-bar { padding:28px 18px; }
	
	.contact-form h3,
	.title-bar .title { font-size:2.3em; }
	
	/* form */
	.contact-form .field-wrap.one-third-input-wrap,
	.contact-form .textarea-wrap { width:100%; float:none; padding:0 0 10px 0; }
	.contact-form .submit-wrap { position:relative; width:100%; bottom:auto;}
	.contact-form input[type="submit"] { margin-top:none; width:100%; float:none; }
	.contact-form .checkbox-wrap { padding-right:0; }
	
	.instagram .title h2 { font-size:1.9em; }
	.instagram .si_item { width:50%; }
	
}

@media (max-width:600px)
{
	.articles .listing-item,
	.articles .listing-item.right { border:none; width:100%; float:none; margin-bottom:10px; }
	.articles .listing-item h2 { font-size:1.8em; } 
	
	.hero-tall .image-slides .slide,
	.hero-reg .image-slides .slide { height:260px; }
	
	.contact-form { padding:30px 14px; }
	.contact-form h3 { padding-bottom:30px; }
	
	.close-modal { top:10px; right:10px; }
	
	ul.social li.tripadvisor { display:block; width:auto; margin:0 auto 5px 0; }
}


@media (max-width:510px)
{
	
	body.expanded { margin-left:-100%;}
	nav.menu { right:-100%; width:100%; }
	
	.pagefooter .icon-links li,
	.footer-col.left li  { width:100%; display:block; padding:5px 0; }	
	
	.mlistformcontent,
	.bookingmodalcontent { padding:30px 23px; }
	.mlistformcontent,
	.bookingmodalcontent h2 { font-size:1.8em; }
	
	.hero-text .icon { margin-bottom:15px; }

}


@media (max-width:450px)
{
	.main-text-column-block .text-content { padding:35px 18px; }
	.text-content p,
	.text-content ul,
	.text-content ol,
	.text-content table { font-size:1.3em; }
	.text-content h2 {  font-size:1.7em; }
	.text-content h3 {  font-size:1.5em; }
	.text-content h4 {  font-size:1.3em; }
	
	.solid-banners .banner p,
	.listing-blocks .block p { font-size:1.4em; }
	
	.image-banner h2 { font-size:2.5em; }
	.image-banner p { font-size:1.5em; }
	
	.image-banner p.banner-quote { font-size:1.6em; }
	
	.listing-blocks.blocks-2 .lb-img,
	.listing-blocks.blocks-3 .lb-img { height:150px; }
	
	.articles .listing-item { height:250px; }
	.articles .listing-item .details { height:90px; padding-top:13px; }
	.articles .listing-item h2 { font-size:1.6em; } 
	.articles .listing-item .suptitle { font-size:1em; }
	
	.hero-tall .image-slides .slide,
	.hero-reg .image-slides .slide { height:220px; }
	
	.hero-text .button-white { margin-top:5px; }
	.hero-text p { font-size:1.5em; margin-bottom:0.9em; }
	.hero-text h1, .hero-text h2, .hero-text p { padding-left:14px; padding-right:14px; }
	
	.gallery-slides .slide-image { height:300px;}
	
	.message-block.reg > div { height:150px; }
	.message-block.x-large > div { height:250px; }
	.message-block p.banner-quote-source { font-size:1.3em; }
	.message-block p.banner-quote { font-size:1.9em; }
	
	.hiddentitle { font-size:1.7em;  }
	
	.contact-form h3,
	.title-bar .title { font-size:1.9em; }
	
	.hero-text .action,
	.hero-text .action.top { padding-top:10px; }
	
	.hero-text .action .button-orange { width:100%; }
	
	.top-bar a.book-link { width:80px; }
	
	.pagefooter p br { display:none; }
	
	
}

@media (max-width:380px)
{
	
	.logo { width:130px; height:62px; background-size:cover; }
	.mobile-nav-toggle { top:33px; }
	
	.hero-tall .image-slides .slide,
	.hero-reg .image-slides .slide { height:170px; }
	
	.hero-text-inner { padding-bottom:14px; }
	
	.hero-text p,
	.solid-banners .banner p, 
	.listing-blocks .block p { font-size:1.3em; }
	
	.hero-text .button-white { font-size:1.1em; }
	
	.hero-text .action,
	.hero-text .action.top { padding-top:0px; }
	
	.articles .listing-item h2 { font-size:1.6em; } 
	.articles .listing-item { height:230px; }
	
	.gallery-slides .slide-image { height:260px;}
	
	ul.social li.tripadvisor { font-size:0.85em; }
}





