@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500&family=Roboto:wght@300;400;700&family=Old+Standard+TT:wght@700&display=swap');
/*********************************************************************************/
/* Reset                                                                         */
/*********************************************************************************/
* { margin:0; padding:0; /*-webkit-overflow-scrolling: touch; disabled as obscured header on ios pull down*/ }
html { margin: 0; height: 100%; }
html, body { width: 100%; overflow-x: hidden; /* Fix wider background */ }
body { font-family: 'Roboto', sans-serif; background: #fff; font-weight: normal; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
img { display:block; }
h1, h2, h3, h4 { font-family: 'Old Standard TT', serif; font-weight: 700; font-size: 1rem; }
p, li { font-weight: 300; }
a { text-decoration: none;	 }
strong { font-weight: 700; }
/*********************************************************************************/
/* Wrappers                                                                      */
/*********************************************************************************/
.pagewrapper { float: left; width: 100%; background: #fff; }
.wrapper { max-width: 1500px; margin: 0 auto;	 }
.overflow { overflow: hidden; }
.contentwrapper { float: left; width: 90%; margin: 2rem 5% 1rem 5%; }
.contentwrapper.fullwidth { float: left; width: 100%; margin: 2rem 0 1rem 0; }
.topgap { margin-top: 150px; }
.sectionblock { margin: 0; }
.largemargin { margin-top: 4em; }
.highlight { margin: 2em 0; }
.highlightcentre { text-align: center; }
/*********************************************************************************/
/* Common                                                                        */
/*********************************************************************************/
.button { background: #ececec; color: #666; cursor: pointer; text-align: center; text-decoration: none; padding: 0 10px; margin: 0 5px; line-height: 35px; min-width: 50px; -moz-border-radius: 2px; -webkit-border-radius: 2px; border-radius: 2px; display: inline-block; -moz-transition: background-color ease-out .5s; -o-transition: background-color ease-out .5s; -webkit-transition: background-color ease-out .5s; transition: background-color ease-out .5s; font-size: 110%; }
.button:hover { background: #f2f2f2; }
.promote { background: #62b5e5; text-transform: uppercase; color: #fff; }
.promote:hover { background: #2498db; }
/*********************************************************************************/
/* Header                                                                        */
/*********************************************************************************/
#header { overflow: hidden; background-color: rgba(255,255,255,1); border-bottom: solid 1px #eee; position: fixed; top: 0; width: 100%; height: 100px; z-index: 99; transition: all 0.4s ease-in-out; -webkit-transition: all 0.4s ease-in-out; -moz-transition: all 0.4s ease-in-out; }
#header #logo { width: 300px; height: 100px; float: left; margin: 5px 0; background: url(_gfxlib/logo600.png) no-repeat center; background-size: 100%; transition: all 0.4s ease-in-out; -webkit-transition: all 0.4s ease-in-out; -moz-transition: all 0.4s ease-in-out; }
#header #logo a { display: block; width: 100%; height: 100%; }
#header #topauth, #header #topcontact { float: right; margin-top: 10px; }
#header #topcontact { position: relative; width: 100%; max-width: 750px; margin-top: 20px; font-size: .875rem; text-transform: uppercase; font-weight: 300; color: #a4bf41; text-align: right; transition: all 0.4s ease-in-out; -webkit-transition: all 0.4s ease-in-out; -moz-transition: all 0.4s ease-in-out; z-index: 999; }
#header #topcontact a { color: #000; z-index: 999; }
#header #topcontact i { color: #a4bf41; margin-right: 10px; }
/*********************************************************************************/
/* Menu                                                                          */
/*********************************************************************************/
#menuwrapper { float: right; width: 100%; max-width: 750px; }
#menu { float: right; margin: 10px 0 0 2%; /*margin-top: 5.5em;*/ transition: all 0.4s ease-in-out; -webkit-transition: all 0.4s ease-in-out; -moz-transition: all 0.4s ease-in-out; }
#menu ul { text-align: right; padding:0; z-index: 999; }
#menu ul li { display: inline-block; list-style:none; font-size: .875rem; font-weight: 700;  }
#menu ul li a { text-decoration: none; color: #333; display: block; padding: .5rem 0 .25rem 0; margin: 0 .75rem; -moz-transition: color ease-out .5s; -o-transition: color ease-out .5s; -webkit-transition: color ease-out .5s; transition: color ease-out .5s; }
#menu ul li a:hover, #menu ul li a.selected { border-bottom: 3px solid #a4bf41; }
#menu ul li a.selected { font-weight: 700; }
.slicknav_menu { display:none; }
#menu .resmenu { display: none; }
/*********************************************************************************/
/* Smaller header with animation                                                 */
/*********************************************************************************/
#header.smaller { height: 80px; transition: all 0.4s ease-in-out; -webkit-transition: all 0.4s ease-in-out; -moz-transition: all 0.4s ease-in-out; background-color: rgba(255,255,255,1); }
#header.smaller #logo { width: 240px; height: 80px; background: url(_gfxlib/logo480.png) no-repeat center; background-size: 100%; margin: 5px 0 10px 0; }
#header.smaller  #topcontact { margin-top: 10px; }
#header.smaller #menu { margin: 10px 0 0 2%; transition: all 0.4s ease-in-out; -webkit-transition: all 0.4s ease-in-out; -moz-transition: all 0.4s ease-in-out; }
/*********************************************************************************/
/* Main Banner                                                                   */
/*********************************************************************************/
#mainbanner { float: left; width: 100%; margin-top: 100px; max-height: 600px; position: relative; background: #000; background: #fff; display: inline-block; overflow: hidden; /*padding-bottom: 2em;*/ }
#mainbanner.contentbanner { max-height: 300px; max-height: 600px; }
#mainbanner .mainimage { position: relative; }
#mainbanner .mainimage img { filter: brightness(70%); }
#mainbanner .mainimage .caption { position: absolute; width: 90%; max-width: 1000px; margin: auto; top: 250px; left: 100px; margin-left: -50px; right: 0; bottom: 0; color: #fff; }
#mainbanner .wrapper .caption h1, .mainimage .caption h1, #mainbanner .wrapper .caption h2, .mainimage .caption h2 { color: #fff; font-size: 4rem; line-height: 150%; text-align: left; }
#mainbanner .wrapper .caption h2, .mainimage .caption h2 { font-size: 3rem; }
.toppad { float: left; width: 100%; margin-top: 150px; }
/*********************************************************************************/
/* Main Image and Slider                                                         */
/*********************************************************************************/
.mainimage { float: left; background: #fff; width: 100%; position: relative; display: inline-block; overflow: hidden; }
.mainimage img { width: 100%; }
#mainbanner.contentbanner.transparency .mainimage img { opacity: 0.6; }
/*********************************************************************************/
/* Section                                                                       */
/*********************************************************************************/
.sectionrow { position: relative; width: 100%; margin: 0 auto; }
.sectionrow section { padding: 4rem 0; text-align: center; }
.sectionrow section .narrow { width: 50%; margin: 0 auto; }
.sectionrow section h2 { font-size: 2rem; line-height: 150%; margin-bottom: 1rem; }
.sectionrow section p { line-height: 2.0; margin-bottom: .5rem; text-align: left; }
.sectionrow section .textcentre p { text-align: center; }
.sectionrow a.sectionbutton { display: block; position: relative; width: 300px; margin: 50px auto 10px auto; background: #a4bf41; color: #fff; height: 53px; padding: 0; -moz-transition: background-color ease-out .5s; -o-transition: background-color ease-out .5s; -webkit-transition: background-color ease-out .5s; transition: background-color ease-out .5s; -webkit-appearance: none; border-radius: 50px; -webkit-border-radius: 50px; -moz-border-radius: 50px; }
.sectionrow a.sectionbutton:hover { background: #93ac39; }
.sectionrow a.sectionbutton .text { display: inline-block; vertical-align: middle; line-height: normal; padding: 17px 7px; max-width: 98%; }
.sectionrow .profileimage, .sectionrow .contentimage { float: left; width: 45%; margin: 1rem 5% 1rem 0; }
.sectionrow .profileimage.profileright, .sectionrow .contentimage.conetentimageright { float: right; margin: 1rem 0 1rem 5%; }
.sectionrow .profileimage img { border-radius: 50%; width: 100%; height: auto; }
.sectionrow .contentimage img { width: 100%; height: auto; }
.sectionrow.shade1 { background: #cdd9a3; }
.sectionrow.shade2 { background: #f5f1ea; }
.sectionflex { display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%; margin: 2rem 0; }
.sectionflex70 { width: 70%; margin: 0 15%; }
.sectionflex .flexitem { width: 20%; margin: 4rem; }
.sectionflex .flexitem.flexborder { border: solid 10px #8ea343; }
.sectionflex .flexitem img { width: 100%; height: auto; }
.sectionflex .flexpromo { width: 40%; margin: 2rem 5%; }
.sectionflex .flexpromo .image { float: left; width: 40%; height: 200px; background-image: url("_static/_flex/dandelion-shape.png"); background-position: left center; background-size: contain; background-repeat: no-repeat; }
.sectionflex .flexpromo .text { float: left; width: 55%; margin-left: 5%; }
.sectionflex .flexpromo h2 { text-align: left; font-family: 'Roboto', sans-serif; font-size: 1.125rem; margin: 2rem 0 0 0; }
.sectionflex .flexpromo p { font-size: .875rem; font-weight: 400; line-height: 150%; }
.sectionflex .flex25 { width: 25%; }
.sectionflex .flex30 { width: 30%; }
.sectionflex .flex40 { width: 40%; }
.sectionflex .flex50 { width: 50%; }
.sectionflex .flex60 { width: 60%; }
.sectionflex .flex70 { width: 70%; }
/*********************************************************************************/
/* Content                                                                       */
/*********************************************************************************/
.contentwrapper { padding: 1em 0; }
.contentwrapper hr {  border: 0;   height: 0;   border-top: 1px solid rgba(0, 0, 0, 0.1);   border-bottom: 1px solid rgba(255, 255, 255, 0.3);  margin: 3rem 0;  width: 100%;  float: left; }
.contentwrapper h2 { color: #a4bf41; text-align: left; font-weight: 700; font-size: 1.5rem; margin-bottom: 1rem; }
.contentwrapper h2.maintitle { margin-bottom: 2rem; }
.contentwrapper h3 { color: #2498db; font-size: 1.25rem; margin-bottom: 1rem; }
.contentwrapper h4 { color: #2498db; font-size: 1.125rem; margin-bottom: 1rem; }
.contentwrapper h2 a, .contentwrapper h3 a, .contentwrapper h4 a { color: #a4bf41; }
.contentlist { width: 90%; margin: 0 5% 2rem 5%; text-indent: -1.5em; padding-left: 1.5em; }
.contentwrapper p, .contentwrapper .contentlist li { color: #666; font-size: 1.125rem; line-height: 150%; margin-bottom: 1rem; font-weight: 400; }
.contentwrapper .contentlist li { list-style-type: none; }
.contentwrapper .contentlist li:before { content: "\25A0  "; font-family:"Arial Black"; color: #9C9380; padding-right: .5em; }
.contentwrapper .centre { text-align: center; }
.contentwrapper p .small { font-size: 90%; }
.contentwrapper p a, .contentwrapper .contentlist li a { color: #a4bf41; }
.contentwrapper h3 a:hover, .contentwrapper p a:hover, .contentwrapper .contentlist li a:hover { text-decoration: underline; }
.contentwrapper p a.contentbold, .contentwrapper h3 a.contentbold { color: #a4bf41; font-weight: 500; }
.contentwrapper .profile { float: left; width: 25%; margin: 0 5% 1rem 0; }
.contentwrapper .profile.profileright { float: right; margin: 0 0 1rem 5%; }
.contentwrapper .profile img { border-radius: 50%; width: 100%; height: auto; }
.contentwrapper .contentimage { float: left; width: 90%; height: auto; margin: 1.5rem 5%; }
.contentwrapper .contentimage50 { float: left; width: 70%; height: auto; margin: 1em 15%; }
.contentwrapper .contentimage70 { float: left; width: 50%; height: auto; margin: 1em 25%; }
.contentwrapper .contentimageborder { border: solid 10px #9C9380; }
.contentwrapper .image50 { float: left; width: 100%; margin: 2rem 0; }
.contentwrapper .image50 img { float: left; width: 48%; margin: 0 1%; }
.contentwrapper .preview { float: left; width: 100%; margin: 2rem 0; }
.contentwrapper .preview .imgright { float: right; width: 40%; height: auto; margin: 0 0 1em 2%; border: solid 1px #ececec; }
.contentwrapper .checklist { float: left; margin: 2rem 10%; width: 80%; list-style-type: none; }
.contentwrapper .checklist li { font-size: 1.125rem; margin: 0 0 1rem 0; }
.contentwrapper .checklist li:before { content: "■"; font-size: 1.25rem; color: #2498db; padding-right: .625em; }
.contentwrapper .checklist li ul { margin: 1rem 5% 0 5%; list-style-type: none; }
.contentwrapper .blogpromo { float: left; margin: 2rem 0; width: 90%; min-height: 100px; padding: 1rem 5%; background-color: rgb(156,147,128); background-color: rgba(156,147,128,0.1); }
.contentwrapper .blogpromo h2 a { color: #a4bf41; }
.contentwrapper .testimonial { float: left; margin: 2rem 0; width: 90%; min-height: 100px; padding: 1rem 5%; background-color: rgb(156,147,128); background-color: rgba(156,147,128,0.1); background-image: url('_gfxlib/quotex100.png'); background-repeat: no-repeat; background-position:  left center; }
.contentwrapper .testimonial p { color: #a4bf41; font-size: 2rem; margin-left: 100px; }
.contentwrapper .testimonialimage { float: left; display: flex; flex-wrap: nowrap; align-items: center; padding: 0; margin: 1rem 5% 2rem 5%; width: 90%; background: rgb(156,147,128); background: rgba(156,147,128,0.1); }
.contentwrapper .testimonialimage .image { float: left; width: 50%; }
.contentwrapper .testimonialimage .image img { float: left; width: 100%; height: auto; overflow: hidden; }
.contentwrapper .testimonialimage .text { float: left; width: 40%; padding: 1rem 5%; }
.contentwrapper .testimonial p, .contentwrapper .testimonialimage p { color: #a4bf41; font-size: 2rem; }
.contentwrapper .testimonial p.source, .contentwrapper .testimonialimage p.source { font-size: .875rem; }
.wrapper .strap { float: left; width: 100%; margin: 2rem 0 0 0; text-align: center; }
.wrapper .testimonialstrap { margin: 2rem 0 0 0; border-top: solid 3px #a4bf41; padding: 1rem 0 0 0; }
.wrapper .strap p { font-size: 2rem; font-weight: 700; color: #a4bf41; }
.wrapper .strap h2 { font-size: 1.5rem; font-weight: 700; color: #a4bf41; margin: .5rem 0; }
.wrapper .strap .quote { background: #f5f1ea; padding: 1rem 1%; width: 98%; }
.wrapper .strap .quote p { margin: 0 0 1rem 0; }
.wrapper .strap .quote p.author { font-size: .875rem; color: #000; }
/*********************************************************************************/
/* Flex boxes                                                                    */
/*********************************************************************************/
.homeflexwrapper { display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%; margin: 5rem 0 2rem 0; float: left; }
.homeflexwrapper.notop { margin: 1rem 0; }
.homeflexwrapper .highlightbox, .homeflexwrapper .contentbox { width: 45%; }
.homeflexwrapper .highlightbox, .homeflexwrapper .contentbox { display: flex; flex-direction: column; } /* Equal height shading in .contentwrap */
.homeflexwrapper .highlightbox .title { float: left; width: 96%; padding: .75rem 2%; }
.homeflexwrapper .highlightbox .title h2 { font-size: 1.5rem; font-weight: 700; color: #a4bf41; }
.homeflexwrapper .highlightbox .title h2 a { color: #333; }
.homeflexwrapper .highlightbox .image { float: left; width: 100%; position: relative; }
.homeflexwrapper .highlightbox .image img { width: 100%; height: auto; }
.homeflexwrapper .highlightbox .image .caption { position: absolute; width: 98%; bottom: 0; margin: 0 auto; padding: .5rem 1%; background: rgba(0,0,0,0.4); }
.homeflexwrapper .highlightbox .image .caption p { font-size: 1rem; color: #fff; font-weight: 500; text-align: right; }
.homeflexwrapper .highlightbox .contentwrap { width: 94%; padding: 1.5rem 3% 1rem 3%; /* Next three for equal height in .content */ display: flex; flex-direction: column; flex: 1; }
.homeflexwrapper .highlightbox .contentwrap .content { width: 100%; float: left; /* Next for equal height in .content */ margin-bottom: auto; }
.homeflexwrapper .highlightbox .contentwrap .content h2, .homeflexwrapper .highlightbox .contentwrap .content h3 { font-size: 1.5rem; font-weight: 700; margin-bottom: 1rem; line-height: 135%; color: #a4bf41; }
.homeflexwrapper .highlightbox .contentwrap .content h3 { font-size: 1.125rem; }
.homeflexwrapper .highlightbox .contentwrap .content h2 a { color: #a4bf41; }
.homeflexwrapper .highlightbox .contentwrap .content ul { width: 90%; margin: 0 5%; }
.homeflexwrapper .highlightbox .contentwrap .content p, .homeflexwrapper .highlightbox .contentwrap .content li { font-size: 1rem; margin-bottom: 1rem; line-height: 135%; color: #000; text-align: left; list-style-position: outside; }
.homeflexwrapper .highlightbox .contentwrap .content p a { font-weight: 700; color: #a4bf41; }
.homeflexwrapper .highlightbox .contentwrap .readmore p { font-size: 1rem; margin-bottom: 1rem; line-height: 135%; color: #a4bf41; }
.homeflexwrapper .highlightbox .contentwrap .readmore p a { color: #a4bf41; font-weight: 700; }
.homeflexwrapper .highlightbox .contentwrap .readmore p a:hover { text-decoration: underline; }
.homeflexwrapper .highlightbox .contentwrap.testimonials .readmore p { font-style: italic; }
.homeflexwrapper .highlightbox.shade01 .title h2 a { color: #a4bf41; }
.homeflexwrapper .highlightbox.shade02 .title h2 a { color: #a4bf41; }
.homeflexwrapper .highlightbox.shade03 .title h2 a { color: #6CAC9A; }
.homeflexwrapper .highlightbox.shade04 .title h2 a { color: #6B4D12; }
.homeflexwrapper .highlightbox.shade01 .contentwrap, .homeflexwrapper .highlightbox.shade01 .image { background-color: #fff; background-color: rgba(245,241,234,1); }
.homeflexwrapper .highlightbox.shade02 .contentwrap, .homeflexwrapper .highlightbox.shade02 .image { background: #fff; }
.homeflexwrapper .highlightbox.shade03 .contentwrap, .homeflexwrapper .highlightbox.shade03 .image { background: #662338; }
.homeflexwrapper .highlightbox.shade04 .contentwrap, .homeflexwrapper .highlightbox.shade04 .image { background: #6B4D12; }
.homeflexwrapper .highlightboxwide { width: 100%; margin: 4rem 0 0 0; background: rgba(245,241,234,1); flex-direction: row; flex-wrap: nowrap; }
.homeflexwrapper .highlightboxwide .image { width: 40%; }
.homeflexwrapper .highlightboxwide .title { width: 56%; }
.homeflexwrapper .highlightboxwide .contentwrap { width: 54%; }
.pseudobuttonwrapper { width: 100%; float: left; text-align: center; }
.pseudobutton a, .pseudobuttonsml a { display: inline-block; background: #62b5e5; text-decoration: none; color: #fff;	 padding: 1em; margin: 1em 0; }
.pseudobutton a { font-size: 110%; }
.pseudobuttonsml a { font-size: 90%; }
/*********************************************************************************/
/* Content Table                                                                 */
/*********************************************************************************/
.contenttable { display: inline-block; width: 100%; margin-bottom: 2rem; }
.contenttable th, .contenttable td { font-size: 110%; padding: .5em; }
.contenttable th { text-align: center; background: #3C483C; color: #fff; }
.contenttable td { text-align: left; background: #F3F1F2;; color: #333; }
.contenttable .white { background: #fff; }
.contenttable .shaded { background: #ececec; color: #999; }
.contenttable .link, .contenttable .link a { background: #2498db; color: #fff; }
/*********************************************************************************/
/* Plain Content                                                                 */
/*********************************************************************************/
.plaincontent { display: inline-block; width: 90%; margin: 0 5%; }
.plaincontent p { margin-bottom: 1em; }
/*********************************************************************************/
/* Enquiry Form                                                                  */
/*********************************************************************************/
#enquiryform { float: left; width: 100%; padding: 2rem 0 2rem 0; background: #f5f1ea; }
.bookformwrap { float: left; width: 100%; padding: 1rem 0; margin: 2rem 0; }
/*********************************************************************************/
/* Content Form                                                                  */
/*********************************************************************************/
#contactlink { display: block; position: relative; top: -100px; visibility: hidden; }
.fullwidthpromo { width: 100%; display: flex; align-items: center; }
.formblock { width: 60%; padding: 1rem 5%; margin: 0 15%; background: #fff; }
.formblockwide { width: 60%; padding: 1rem 5%; margin: 0 15%; background: #fff;  }
#ajaxform { float: left; width: 100%; margin: 1rem 0; }
.contentform h3 { font-size: 1.25rem; color: #000; margin: 0 0 1rem 0; text-align: left; text-transform: none; }
.contentform p { font-size: 1rem; color: #666; margin: 0 0 1rem 0; }
.contentform p i { margin-right: .5rem; }
.contentform p .darkstrong { font-weight: 600; color: #8ea343; }
.contentform p .midstrong, .contentform p .midstrong a { font-weight: 600; color: #8ea343; text-decoration: none; }
.contentform p .midstrong a:hover { text-decoration: underline; }
.contentform .smallprint { float: left; width: 100%; }
.contentform .smallprint p { font-size: .875rem; }
.contentform .formlayout { float: left; width: 100%; padding: 0; }
.contentform .formlayout li { width: 98%; margin: .75rem 1%; list-style-type: none; color: #666; float: left; display: inline-block; }
.contentform .formlayout li.halfwidth { width: 48%; }
.contentform .formlayout label { float: left; font-size: .875rem; text-align: left; color: #000; margin-bottom: 5px; }
.contentform .formobject, .contentform .formfileobject, .contentform textarea { width: 96%; color: #000; border: 0; font-size: 1rem; padding: 10px 2%; background: #f5f1ea; font-family: 'Roboto', sans-serif; }
.contentform .formobject::placeholder, .contentform textarea::placeholder { color: #999; opacity: 1; } /* Chrome, Firefox, Opera, Safari 10.1+ */
.contentform .formobject:-ms-input-placeholder, .contentform textarea:-ms-input-placeholder { color: #999; } /* Internet Explorer 10-11 */ 
.contentform .formobject::-ms-input-placeholder, .contentform textarea::-ms-input-placeholder { color: #999; } /* Microsoft Edge */ 
.contentform .formautowidth { width: auto; }
.contentform .formobject.formobjectautowidth { width: auto; float: left; }
.contentform .formfileobject { color: #999; border: 0; }
.contentform .formlayout li.liselect { width: 100%; border: 1px solid #999; margin: .75rem 0; background: #fff url("../img/assets/formarrow.png") no-repeat 95% 50%; }
.contentform .formlayout li.halfwidth.liselect { width: 50%; }
.contentform .formlayout li.liselect select { padding: .5rem 1%; width: 98%; border: none; box-shadow: none; background: transparent; background-image: none; -webkit-appearance: none; font-size: 1.125rem; color: #999; }
.contentform .formbutton { display: inline-block; background: #a4bf41; text-decoration: none; color: #fff; padding: .75em 2rem; margin: 1em 0; border: 0; font-size: 1rem; -moz-transition: background-color ease-out .5s; -o-transition: background-color ease-out .5s; -webkit-transition: background-color ease-out .5s; transition: background-color ease-out .5s; -webkit-appearance: none; border-radius: 50px; -webkit-border-radius: 50px; -moz-border-radius: 50px; }
.contentform .formbutton:hover { background: #93ac39; }
.contentform .successmsg p { color: #666; font-weight: bold; }
.colourform .contentform .errormsg { background: #3E9FA8; background: #68C7F8; padding: 1rem 0; float: left; width: 100%; }
.contentform .errormsg p { color: #cc0000; }
.colourform { background: #4CC3CE; }
.colourform h2, .colourform p, .colourform .contentform .errormsg p, .colourform .contentform .successmsg p { color: #fff; text-transform: none; font-weight: 700; }
.colourform .contentform .formobject, .colourform .contentform .formfileobject, .colourform .contentform textarea { background: #fff; }
.colourform h2 { font-size: 1.5rem; }
.colourform .contentform .formbutton { background: #35878F; text-transform: none; }
.colourform .contentform .formbutton:hover { background: #3A939C; }
.formblock .textwrapper { float: left; margin-bottom: 2rem; }
.formblock .imagewrap { float: left; width: 25%; }
.formblock .imagewrap.right { float: right; width: 25%; }
.formblock .imagewrap img { width: 100%; height: auto; border-radius: 50%; }
.formblock .textwrap { width: 70%; margin: 3rem 0 0 5%; float: left; }
/*********************************************************************************/
/* Sign In Form                                                                  */
/*********************************************************************************/
#signinform { width: 50%; margin: 1em auto; }
#signinform h1 { font-size: 150%; color: #2498db; }
#signinform p { color: #2498db; }
#signinform .formlayout { float: left; width: 100%; }
#signinform .formlayout li { width: 95%; margin: .5em 2.5%; list-style-type: none; }
#signinform li .forgotten { color: #2498db; font-size: .875em; float: right; margin-top: .75em; font-weight: 400; }
#signinform .formlayout li p { color: #333; font-size: .875em; }
#signinform .formlayout li .forgotten a, #signinform .formlayout li p a { color: #2498db; }
#signinform .formlayout li p a { font-weight: 700; }
#signinform label { font-size: .75em; font-weight: 400; color: #333; }
#signinform .formobject { width: 96%; border: 1px solid #ccc; font-size: 1em; padding: 5px 1%; }
#signinform .formbutton { display: inline-block; text-decoration: none; color: #fff;	 margin: .5em 0; border: 0; font-size: 1em; }
#signinform .errormsg { text-align: center; font-weight: 400; font-size: 1em; }
#signinform #signedin { float: left; width: 100%; margin: 2em 0; }
#signinform #signedin p { color: #333; font-size: 1em; font-weight: 400; margin-bottom: 1em; }
#signinform #signedin a { color: #333; }
#signinform .formlayout li .signinerror { color: #cc0; font-size: 1em; font-weight: 400; }
/*********************************************************************************/
/* Google Map                                                                    */
/*********************************************************************************/
.fullwidthpromo .mapblock { display: inline-block; width: 56%; margin: 0 2%; background: #000; }
.fullwidthpromo .map-responsive { overflow:hidden; padding-bottom:70%; position:relative; height:0; -webkit-filter: grayscale(100%); }
.fullwidthpromo .map-responsive { filter: grayscale(100%); } /* Safari 6.0 - 9.0 */
.fullwidthpromo .map-responsive iframe { left:0; top:0; height:100%; width:100%; position:absolute; border: 0; }
#googleMap { margin: 0; float: left; width: 100%; height: 75%;	 min-height: 700px; border: 0; background: #fff; }
/*********************************************************************************/
/* Right Wrapper                                                                 */
/*********************************************************************************/
#rightwrapper { float: left; width: 100%; background: rgba(156,147,128,0.1); margin-bottom: 2rem; }
#rightwrapper .contentblock { float: left; width: 100%; padding: 0; margin: 2rem 0; }
#rightwrapper .contentblock .title, #rightwrapper .contentblock .text { float: left; width: 100%; margin: .5rem 0 }
#rightwrapper .contentblock .title h2 { font-size: 1.375rem; font-weight: 400; line-height: 135%; text-align: center; }
#rightwrapper .contentblock .text p { font-size: 1rem; margin-bottom: .75rem; font-weight: 400; line-height: 135%; }
#rightwrapper .contentblock .title h2, #rightwrapper .contentblock .text h3, #rightwrapper .contentblock .text p, #rightwrapper .contentblock .text h2 a, #rightwrapper .contentblock .text p a { color: #fff; }
#rightwrapper .contentblock .text h3 a:hover, #rightwrapper .contentblock .text p a:hover { text-decoration: underline; }
#rightwrapper .contentblock .text p.small { font-size: .75em; }
#rightwrapper .contentblock p .more { float: left; width: 100%; margin: .5em 0; font-size: 1em; color: #6A5833; }
#rightwrapper .contentblock .text p .more a { color: #8C7B58; }
#rightwrapper .contentblock .text p .more a:hover { text-decoration: underline; }
#rightwrapper .promoblock { float: left; width: 100%; margin-bottom: 1em; }
#rightwrapper .promoblock h2, #rightwrapper .promoblock p { width: 96%; margin: .75rem 2%; }
#rightwrapper .promoblock h2, #rightwrapper .promoblock p, #rightwrapper .promoblock a { color: #fff; }
#rightwrapper .promoblock h2 { font-weight: 700; }
#rightwrapper .promoblock p { font-size: .875rem; line-height: 135%; margin-bottom: .875rem; }
#rightwrapper .promoblock img { width: 100%; height: auto; }
#rightwrapper .promoblock.shadegold { background: #FF9900; }
#rightwrapper .promoblock.shadepink { background: #FF7479; }
#rightwrapper .promoblock.shademidblue { background: #008BB2; }
#rightwrapper .promoblock.shadepurple { background: #a64dff; }
#rightwrapper .promoblock.shadedarkpink { background: #bf134a; }
#rightwrapper .promoblock.shadedarkblue { background: #0A5165; }
/*********************************************************************************/
/* Footer                                                                        */
/*********************************************************************************/
.brandwrap { display: block; width: 100%; margin: 2rem 0 0 0; text-align: center; }
.brandwrap img { max-width: 300px; height: auto; margin: 0 auto; }
#footer { float: left; width: 98%; margin: 0 1% 1rem 1%; }
#footermenu { float: left; margin: 0 0 2em 0; width: 100%; }
#footermenu ul { text-align: center; padding:0; z-index: 999; }
#footermenu ul li { display: inline-block; list-style:none; font-size: .75em; }
#footermenu ul li a { text-decoration: none; color: #ccc; display: block; padding: .5em 2em; font-weight: 400; }
#footermenu ul li a:hover { color: #fff; }
#footer #address, #footer #social { float: left; width: 50%; font-size: .65em; color: #ccc; }
#footer #social img { margin: .5em; float: right; }
#footer #social, #footer #logos { float: left; text-align: left; width: auto; margin: .5rem 0 0 0; }
#footer #logos img { margin: .5rem; width: auto; height: 100%; display: inline-block; }
#footer #social i, #footer #logos i { margin: .5rem; font-size: 2.5rem; color: #8ea343; display: inline-block; }
#footer #creditswrapper #copyright, #footer #creditswrapper a { color: #333; }
#footer #creditswrapper { float: left; width: 100%; margin: 1px 0px; }
#footer #creditswrapper #copyright, #footer #creditswrapper #webcredit { font-size: .7rem; float: left;	 }
#footer #creditswrapper #copyright { width: 65%; }
#footer #creditswrapper #webcredit { width: 35%; text-align: right; }
#footer #creditswrapper #copyright a:hover { color: #2498db; }
#footer #creditswrapper #webcredit #beachshore:hover { color: #409fbb; }
#footer #creditswrapper #webcredit #beachshore #beachshorebold { font-weight: 700; }
#footer #terms { margin: 0 2rem; }