@-webkit-viewport {
    width: device-width;
    zoom: 1.0;
}
@-moz-viewport {
    width: device-width;
    zoom: 1.0;
}
@-ms-viewport {
    width: device-width;
    zoom: 1.0;
}
@-o-viewport {
    width: device-width;
    zoom: 1.0;
}
@viewport {
    width: device-width;
    zoom: 1.0;
}


/* ------------------------------------------------------
Variables for easy find and replace


$link:                  #51C2B8;
$link-hover:            #1DBD5D;

$second-bg-color: #F6F6F6;
$second-font-color: #707070;
$table-border-color: #D6D6D6;


    font-family: 'Avenir Next W01', sans-serif;

    font-weight: 500;
    font-weight: 800;

    font-family: 'Lato', sans-serif;

    font-weight: 300;

    font-family: 'Permanent Marker', cursive;
    font-weight: 400;


Table of Contents for search based navigation


**** Box Model Reset

**** Typography
---- Headings
---- Lists
---- Breadcrumbs
---- Blockquotes
---- HR
---- Text level elements
---- Links


**** Design Patterns
---- Buttons
---- Star rating
---- Expando
---- Highlight
---- Site Messages
---- Block list


**** Images


**** Forms

---- Submit Bar
---- Search Form
---- Search pagination
---- Captcha
---- reCAPTCHA


**** Tables
---- Content tables
---- Responsive table
---- No Styles Table


**** Helper classes
---- Clearfix
---- Hiding classes
---- Pseudo elements
---- Floats and positioning


**** Template Layout
---- Container
---- Simple content alignment classes
---- Sections
---- Content Box
---- Header
---- Hero Search
---- Hero Search Banner
---- Search Results search bar
---- Feature Grid
---- Specials Slider
---- Search Grid
---- Search grid map
---- Search grid form
---- Book box sidebar
---- Section bar tabs
---- Features Icon list
---- Accommodation map
---- Reviews
---- Footer
---- Text Card (Specials slider Boxes)
---- Square Card (Promo Boxes)
---- Tall Card (Category Boxes)
---- Detailed Card (Product Boxes)
---- Magnific Popup


**** Widgets
---- Catch all
---- Related Links

---- Map Directions


**** Print styles

------------------------------------------------------ */

/* ------------------------------------------------------
**** Box Model Reset
------------------------------------------------------ */

html {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
*, *:before, *:after {
    -webkit-box-sizing: inherit;
            box-sizing: inherit;
}

/* ------------------------------------------------------
**** Breakpoints
------------------------------------------------------ */

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */

}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */

}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */

}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */

}

/* BP xlarge */
@media only screen and (min-width: 87.5em) {/* 1400px */

}


/* ------------------------------------------------------
**** Typography
------------------------------------------------------ */

html {
    font-size: 62.5%;
}

body {
    line-height: 1.4;
    font-size: 1.6em;
    color: #313C4A;
    font-family: 'Avenir Next W01', Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding-top: 42px;
}

.mobile-search body {
    padding-top: 93px;
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    body,
    .mobile-search body {
        padding-top: 0;
    }
}


/* ---- Headings ---- */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
    margin: 0 0 1.7rem 0;
    font-family: 'Avenir Next W01', Helvetica, Arial, sans-serif;
    font-weight: bold;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
    font-weight: normal;
    line-height: 1;
    color: #8a7b7b;
}

p + h1,
p + h2,
p + h3,
p + h4,
p + h5,
p + h6 {
    margin-top: 3rem;
}

.tight-margin {
    margin-bottom: 0.7rem;
}

.no-margin {
    margin-bottom: 0;
}


h1, .h1 {
    font-size: 2.8rem;
    color: #51c2b8;
    padding-bottom: 15px;
    border-bottom: 2px solid #bec1c6;
}

h2, .h2 {
    font-size: 2.6rem;
    color: #51c2b8;
}

h3, .h3 {
    font-size: 2.2rem;
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    color: #313C4A;
}

h4, .h4 {
    color: #51c2b8;
    font-size: 1.8rem;
    color: #313C4A;
}

h5, .h5 {
    font-size: 1.4rem;
    text-transform: uppercase;
    font-weight: 300;
    color: #313C4A;
}

h6, .h6 {
    font-size: 1.6rem;
    color: #313C4A;
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */

    h1, .h1 {
        font-size: 3.2rem;
    }

    h2, .h2 {
        font-size: 2.8rem;
    }

    h3, .h3 {
        font-size: 2.4rem;
    }

    h4, .h4 {
        font-size: 2rem;
    }

    h5, .h5 {
        font-size: 1.5rem;
    }
}

/* BP medium */
@media screen and (min-width: 48em) { /* 768px */

    h1, .h1 {
        font-size: 4.6rem;
        line-height: 1.3;
    }

    h2, .h2 {
        font-size: 3.4rem;
    }

    h3, .h3 {
        font-size: 2.8rem;
    }

    h4, .h4 {
        font-size: 2.4rem;
    }

    h5, .h5 {
        font-size: 1.6rem;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */

    h1, .h1 {
        font-size: 7.2rem;
        line-height: 1.2;
    }

    h2, .h2 {
        font-size: 4rem;
        line-height: 1.3;
    }

    h3, .h3 {
        font-size: 3.4rem;
    }

    h4, .h4 {
        font-size: 2.8rem;
    }
}


.heading-inline {
    display: inline;
    float: left;
    padding: 0;
}

.heading-deco-wrapper {
    overflow: hidden;
}
.heading-deco {
    display: inline-block;
    position: relative;
    padding-right: 10px;
}

.heading-deco:after {
    content: '\00a0';
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 100%;
    width: 100vw;
    background: url('data:image/svg+xml;charset=utf-8,%3Csvg%20preserveAspectRatio%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%224px%22%20height%3D%222px%22%20viewBox%3D%220%200%204%202%22%3E%3Cpath%20fill%3D%22%23E5E5E5%22%20d%3D%22M4%200L0%200%200%202%204%202%22%2F%3E%3C%2Fsvg%3E') no-repeat center center;
    background-size: 100% 2px;
}

.heading-deco--center {
    padding-left: 15px;
    text-align: center;
}

.heading-deco--center .heading-deco {
    padding-left: 10px;
}

.heading-deco--center .heading-deco:before {
    content: '\00a0';
    position: absolute;
    top: 0px;
    bottom: 0px;
    right: 100%;
    width: 100vw;
    background: url('data:image/svg+xml;charset=utf-8,%3Csvg%20preserveAspectRatio%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%224px%22%20height%3D%222px%22%20viewBox%3D%220%200%204%202%22%3E%3Cpath%20fill%3D%22%23E5E5E5%22%20d%3D%22M4%200L0%200%200%202%204%202%22%2F%3E%3C%2Fsvg%3E') no-repeat center center;
    background-size: 100% 2px;
}

@media screen and (min-width: 62em) {/* 992px */

    .heading-deco {
        padding-right: 15px;
    }

    .heading-deco--center .heading-deco {
        padding-left: 15px;
    }
}

.feature-heading {
    text-align: center;
    font-size: 2.6rem;
    color: #313C4A;
    font-family: 'Permanent Marker', cursive;
    margin-bottom: 30px;
}

.feature-heading:after, .feature-heading:before {
    content: '\00a0';
    display: inline-block;
    width: 50px;
    background: url(../images/deco_heading_navyblue.svg) no-repeat center 58%;
    background-size: auto auto;
    background-size: 35px 8px;
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    .feature-heading {
        font-size: 3rem;
    }
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .feature-heading {
        font-size: 4rem;
    }
    .feature-heading:after, .feature-heading:before {
        width: 65px;
        background-size: 50px 8px;
    }
}

@media screen and (min-width: 62em) {/* 992px */
    .feature-heading {
        font-size: 5rem;
    }
    .feature-heading:after, .feature-heading:before {
        width: 90px;
        background-size: 70px 10px;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .feature-heading {
        font-size: 6.4rem;
    }
    .feature-heading:after, .feature-heading:before {
        width: 120px;
        background-size: 100px 12px;
    }
}


p,
ol,
ul,
dl,
address {
    margin: 0 0 1.5rem;
}

small {
    font-size: 1.28rem;
}

.back-to-top {
    float: right;
}

/* ---- Lists ---- */
ul,
ol {
    padding: 0 0 0 2rem;
}

li ul,
li ol {
    margin: 1rem 0;
}

ul.inline,
ol.inline {
    list-style-type: none;
    padding-left: 0;
}
ul.inline > li,
ol.inline > li {
    display: inline-block;
    padding-left: 12px;
    padding-right: 12px;
}

ul.inline > li:first-child,
ol.inline > li:first-child {
    padding-left: 0px;
}


ul.inline > li:last-child,
ol.inline > li:last-child {
    padding-right: 0px;
}

.simple-list {
    list-style: none;
    padding: 0;
}

.simple-list li {
    margin: 0 0 1.5rem;
}


.arrow-link-list {
    list-style: none;
    padding: 0;
}

.arrow-link-list li {
    position: relative;
    padding-left: 1.25em;
    margin-bottom: 1.6rem;
}

    .arrow-link-list li.no-feature {
        color: #898888;
        text-decoration-line: line-through;
    }

.arrow-link-list li:before {
    content: '\003e';
    position: absolute;
    left: 0;
}


.check-tick-list {
    list-style: none;
    padding: 0;
}

.check-tick-list li {
    position: relative;
    padding-left: 1.25em;
    margin-bottom: 1.6rem;
}

.check-tick-list li:before {
    content: '\2713';
    position: absolute;
    left: 0;
}


.simple-tabs {
    list-style: none;
    padding: 0;
}

.simple-tabs li {
    display: inline-block;
    padding: 5px 15px;
    border-left: 2px solid #E5E5E5;
}

.simple-tabs li:first-child {
    padding-left: 0;
    border-left: 0px solid #E5E5E5;
}

.simple-tabs a {
    text-decoration: none;
    color: #9DA2A9;
    font-weight: bold;
}


.simple-tabs a.simple-tabs__on-tab,
.simple-tabs a:hover,
.simple-tabs a:focus,
.simple-tabs a:active {
    color: #313C4A;
    text-decoration: none;
}




/* Flexgrid row reset on list items*/
ol.row,
ul.row {
    list-style-type: none;
    padding-left: 0;
    padding-right: 0;
}


/* ---- Breadcrumbs ---- */
.breadcrumb {
    list-style: none;
    margin: 1.5rem 0;
    padding: 0;
    font-size: 1.4rem;
    color: #848484;
}
.breadcrumb > li {
    display: inline;
}
.breadcrumb > li:before {
    content: "\00a0/\00a0";
}
.breadcrumb > li:first-child:before {
    content: none;
}


/* ---- Blockquotes ---- */
blockquote {
    margin: 1.5rem 0;
    padding: 5px 20px 15px;
    background: #f6f6f6;
    font-style: italic;
    position: relative;
    clear: both;
}

blockquote *:last-child {
    margin-bottom: 0;
}

blockquote:before,
blockquote:after {
    position: absolute;
    font-size: 13rem;
    display: block;
    height: 25px;
    width: 50px;
    color: #c7cfdb;
    font-style: italic;
    line-height: 10px;
    font-family: "Big Caslon","Book Antiqua","Palatino Linotype",Georgia,serif;
}

blockquote:before {
    content: '\201C';
    top: 38px;
    left: -8px;
}

blockquote:after {
    content: '\201D';
    bottom: -36px;
    right: 18px;
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .blockquote--left {
        float: left;
        width: 45%;
        margin-left: 0px;
        margin-right: 20px;
        clear: right;
    }

    .blockquote--right {
        float: right;
        width: 45%;
        margin-left: 20px;
        margin-right: 0px;
        clear: left;
    }
}


/* ---- HR ---- */
hr {
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 2em 0;
    padding: 0;
}


/* ---- Text level elements ---- */
abbr[title] {
    border-bottom: 1px dotted #c6bfbf;
    cursor: help;
}

b, strong {
    font-weight: bold;
}

dfn {
    font-style: italic;
}

ins {
    background-color: #f6f6f6;
    color: #473f3f;
    text-decoration: none;
}

mark {
    background-color: #f6f6f6;
    color: #473f3f;
    font-style: italic;
    font-weight: bold;
}

pre,
code,
kbd,
samp {
    font-family: 'Monaco', 'Courier New', monospace;
    color: #484040;
    background: #efefef;
    padding: 0 2px;
    margin: 0 -2px;
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -.5em;
}

sub {
    bottom: -.25em;
}


/* ---- Links ---- */
a {
    color: #51C2B8;
    word-break: break-word;
    transition: all 200ms ease-in-out;
}

a:hover,
a:active,
a:focus {
    color: #1DBD5D;
}

/* Address `outline` inconsistency between Chrome and other browsers. */
a:focus {
    outline: thin dotted;
}

/* Improve readability when focused and also mouse hovered in all browsers. */
a:active,
a:hover {
    outline: 0;
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    a[href^="tel"] {
        text-decoration: none;
        color: inherit;
        cursor: default;
    }
}



/* Include file type and size in document links */
a.document::after {
    content: " (" attr(data-ext) " " attr(data-size) ")";
}


/* ------------------------------------------------------
**** Design Patterns
------------------------------------------------------ */

/* ---- Background colours ---- */

/* White */
.bg-white {
    background-color: #fff;
    color: #222;
}

/* Light grey */
.bg-lightgrey {
    background-color: #f0f0f3;
}

/* Navy blue */
.bg-navyblue {
    background-color: #313C4A;
    color: #fff;
}

.bg-navyblue .h6 {
    color: #fff;
}

.border-box {
    border: 2px solid #e5e5e5;
}

.bg-grey-border-box {
    background: #f7f7f7;
    border: 2px solid #e5e5e5;
}


/* Teal */
.bg-teal {
    background-color: #51c2b8;
    color: #fff;
}

.subtle-white-links a {
    color: #fff;
    text-decoration: none;
    border-bottom: 1px solid rgba(255,255,255,0);
}
.subtle-white-links a:hover,
.subtle-white-links a:focus,
.subtle-white-links a:active {
    border-bottom: 1px solid rgba(255,255,255,.8);
}

.bg-tan-texture {
    background: #efeeed url(../images/bg_tan-texture_sm.png) no-repeat center center;
    background-size: cover;
}

.bg-multiply {
    mix-blend-mode: multiply;
}


/* BP small */
@media screen and (min-width: 48em) { /* 768px */

    .bg-tan-texture {
        background-image: url(../images/bg_tan-texture.png);
    }
}


/* ---- Text Color ---- */

.text-reverse {
    color: rgba(255,255,255,.75);
}

.text-reverse a {
    color: inherit;
}

.text-reverse a:hover,
.text-reverse a:focus,
.text-reverse a:active {
    color: rgba(255,255,255,1);
}


.text-navyblue {
    color: #474F59;
}

.text-navyblue h3 {
    color: inherit;
}

.text-light-grey {
    color: #9DA2A9;
}

.text-green {
    color: #1DBD5D;
}

.text-orange {
    color: #F77450;
}

.text-red {
    color: #DC5959;
}

.text-white {
    color: #FFFFFF;
}

.text-bold, .field-element--text-bold {
    font-weight: 600;
}

.text-not-bold {
    font-weight: 200;
}


/* ---- Buttons ---- */
.button {
    display: inline-block;
    margin-bottom: 0;
    white-space: nowrap;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    color: #fff;
    background-color: #35ab75;
    text-decoration: none;
    border-radius: 300px;
    border: none;
    text-transform: lowercase;
    outline: none;
    opacity: 1;
    position: relative;
    font-weight: normal;
    font-family: 'Avenir Next W01', Helvetica, Arial, sans-serif;
    line-height: 1.2;
}

/* Small */
.button,
.button.button--small {
    font-size: 1.4rem;
    padding: 9px 23px 9px;
}


/* Max BP extra small */
@media only screen and (max-width: 37.438em) { /* 599px */
    .button-fixed-wrapper {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 999;
        margin: 0;
        background-color: #FFF;
        padding: 12px 6% 45px;
        border-top: 1px solid #d8dce2;
    }
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    /* Regular */
    .button {
        padding: 14px 18px;
        font-size: 1.5rem;
    }


}

/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    /* Large */
    .button.button--large {
        font-size: 1.9rem;
        padding: 21px 26px;
    }
}


/* teal (default) */
.button,
.button.button--teal {
    background-color: #51c2b8;
    color: #fff;
}
.button.icon-before:before,
.button.icon-after:after,
.button.button--teal.icon-before:before,
.button.button--teal.icon-after:after {
    color: rgba(0,0,0,.25);
}
.button:hover,
.button.button--teal:hover,
.button:focus,
.button.button--teal:focus {
    background-color: #199384;
    color: #fff;
}


/* Green (default) */

.button.button--green {
    background-color: #1dbd5d;
    color: #fff;
}
.button.button--green.icon-before:before,
.button.button--green.icon-after:after {
    fill: #0d7344;
}
.button.button--green:hover,
.button.button--green:focus {
    background-color: #038c21;
    color: #fff;
}

/* Orange */
.button.button--orange {
    background-color: #F77450;
    color: #fff;
}
.button.button--orange.icon-before:before,
.button.button--orange.icon-after:after {
    fill: #CC4925;
}
.button.button--orange:hover,
.button.button--orange:focus {
    background-color: #E45E3A;
    color: #fff;
}

/* Red */
.button.button--red {
    background-color: #DC5959;
    color: #fff;
}
.button.button--red.icon-before:before,
.button.button--red.icon-after:after {
    fill: #A22B2B;
}
.button.button--red:hover,
.button.button--red:focus {
    background-color: #CC4C4C;
    color: #fff;
}

/* Grey */
.button.button--grey {
    background-color: #D0D3DA;
    color: #24292f;
}
.button.button--grey.icon-before:before,
.button.button--grey.icon-after:after {
    fill: #81848A;
}
.button.button--grey:hover,
.button.button--grey:focus {
    background-color: #BCBFC5;
    color: #24292f;
}
/* Light Grey */
.button.button--lightgrey {
    background-color: #efefef;
    color: #24292f;
    font-weight: normal;
}
.button.button--lightgrey.icon-before:before,
.button.button--lightgrey.icon-after:after {
    fill: #81848A;
}
.button.button--lightgrey:hover,
.button.button--lightgrey:focus {
    background-color: #9da2a9;
    color: #fff;
}

/* Blue */
.button.button--blue {
    background-color: #596474;
    color: #fff;
}
.button.button--blue.icon-before:before,
.button.button--blue.icon-after:after {
    color: #2A333E;
}
.button.button--blue:hover,
.button.button--blue:focus {
    background-color: #4D5765;
    color: #fff;
}

/* Block */
.button--block {
    display: block;
    width: 100%;
}

/* Disabled/unavailable button style */
.button[disabled],
.button--disabled,
.button--disabled:hover,
.button--disabled:focus,
.button--disabled:active {
    border: none;
    opacity: 0.4;
    cursor: default;
    -webkit-box-shadow: none;
            box-shadow: none;
}

.button--square {
    border-radius: 0 !important;
}

/* FB special button */
.button--fb-continue {
    background: #455791 url('../images/facebook-logo-png-white_40px.png') bottom left no-repeat;
    padding: 10px 10px 10px 50px;
    color: white !important;
    text-decoration: none;
    font-family: Tahoma, Verdana, Segoe, sans-serif;
    text-align: center;
}
.button--fb-continue:active,
.button--fb-continue:focus,
.button--fb-continue:hover {
    background-color: #3E4E82;
}

/* Google special button */
.button--gg-continue {
    background: #4285F4 url('../images/google-logo_80px.png') 4px center no-repeat;
    background-size: auto 85%;
    padding: 10px 10px 10px 50px;
    color: white !important;
    text-decoration: none;
    font-family: Tahoma, Verdana, Segoe, sans-serif;
    text-align: center;
}
.button--gg-continue:active,
.button--gg-continue:focus,
.button--gg-continue:hover {
    background-color: #3E78D7;
}

/* MySelect special button */
.button--sc-continue {
    background: #313C4A url('../images/favicon-32x32.png') 4px center no-repeat;
    padding: 10px 10px 10px 50px;
    color: white !important;
    text-decoration: none;
    font-family: Tahoma, Verdana, Segoe, sans-serif;
    text-align: center;
}
.button--sc-continue:active,
.button--sc-continue:focus,
.button--sc-continue:hover {
    background-color: #1B2A3E;
}

/* Firefox: Get rid of the inner focus border */
.button::-moz-focus-inner {
    padding: 0;
    border: 0;
}

/* - Inline buttons - */
.inline-buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: -13px;
    margin-right: -13px;
}
.inline-buttons .button {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-left: 13px;
    margin-right: 13px;
}


/* Right */
.inline-buttons.inline-buttons--right {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
}

.btn-add-to-favourites {
    background-color: transparent;
    border: 0;
    outline: 0;
    width: 18px;
    height: 33px;
    padding: 0;
    cursor: pointer;
}

.btn-add-to-favourites svg {
    width: 18px;
    height: 33px;
}

.btn-add-to-favourites svg path {
    fill: #9DA2A9;
    transition: fill 250ms ease-in-out;
}

.btn-add-to-favourites svg .star-fill {
    fill: #ffffff !important;
}

.btn-add-to-favourites--unfavourited svg path {
    fill: #9DA2A9!important;
}

.btn-add-to-favourites--favourited svg path,
.btn-add-to-favourites:hover svg path {
    fill: #1dbd5d;
}




/* ---- Circle Icon ---- */

.circle-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 10px;
    border-radius: 100%;
    border: 2px solid #E5E5E5;
    padding: 6px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.circle-icon > svg,
.circle-icon > img {
    margin: 3px auto;
    height: 16px;
    width: 16px;
}

.circle-icon svg path {
    fill: #313c4a;
}

.circle-icon-split__split {
    font-weight: bold;
    padding-top: 2px;
    display: block;
    width: 100%;
    text-align: center;
    border-top: 2px solid #E5E5E5;
    font-size: 1.2rem;
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */

}

/* Max BP small */
@media screen and (max-width: 47.938em) { /* 767px */
    .circle-icon .star-rating__star svg {
        width: 7px;
    }
    .circle-icon .star-rating__star {
       width: 7px;
    }
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .circle-icon {
        width: 97px;
        height: 97px;
        padding: 12px;
    }
    .circle-icon > svg {
        margin: 3px auto 5px;
        height: 25px;
        width: 25px;
    }
    .circle-icon-split__split {
        padding-top: 5px;
        font-size: 1.6rem;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */

}

/* ---- Pagination ---- */

.pagination {
    list-style: none;
    padding: 0;
    text-align: center;
    display: inline-block;
}

.pagination li {
    float: left;
    border-left: 1px solid #9DA2A9;
    padding: 10px;

    height: 65px;
    display: inline-flex;
    align-content: center;
}

.pagination li:nth-child(2),
.pagination li:first-child,
.pagination li:last-child {
    border-left: 0px;
}
.pagination li:first-child,
.pagination li:last-child {
    padding-top: 0px;
    padding-bottom: 0px;
}

.pagination a, .pagination span {
    color: #9DA2A9;
    text-decoration: none;
    padding: 8px 12px;

    display: flex;
    align-items: center;
}

.pagination span {
background: #F0F0F3;
}

.pagination a:hover,
.pagination a:focus,
.pagination a:active {
    color: #fff;
    background: #9DA2A9;

}

.pagination a.disabled:hover,
.pagination a.disabled:focus,
.pagination a.disabled:active {
    color: #fff;
    background: #F0F0F3;

}

.pagination__nextprev {
    border: 1px solid #9DA2A9;
    border-radius: 500px;
    width: 65px;
    height: 65px;
    display: block;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
            align-items: center;

}

.pagination__nextprev:hover,
.pagination__nextprev:focus,
.pagination__nextprev:active {
    background: #9DA2A9;
}

.pagination__nextprev svg path,
.pagination__nextprev svg path,
.pagination__nextprev svg path {
    fill: #9DA2A9;
    transition: fill 200ms ease;
}

.pagination__nextprev:hover svg path,
.pagination__nextprev:focus svg path,
.pagination__nextprev:active svg path {
    fill: #fff;
}





/* ---- Star rating ---- */
.star-rating {
    display: inline-flex;
    margin-left: -1px;
    margin-right: -1px;
}
.star-rating__star {
    width: 12px;
    overflow: hidden;
    flex: 0 0 auto;
    margin-left: 1px;
    margin-right: 1px;
    padding-top: 3px;
}
.star-rating__star svg {
    display: block;
}
.star-rating__total-ratings {
    width: auto;
    margin-left: 3px;
    display: inline-block;
}


.star-rating__unrated, .star-rating__total-ratings {
    font-size: 0.8em;
    font-weight: 200;
}

.star-rating.star-rating--0-stars .star-rating__star--1 svg path,
.star-rating.star-rating--0-stars .star-rating__star--2 svg path,
.star-rating.star-rating--0-stars .star-rating__star--3 svg path,
.star-rating.star-rating--0-stars .star-rating__star--4 svg path,
.star-rating.star-rating--0-stars .star-rating__star--5 svg path {
    fill: #9da2a9;
}

.star-rating.star-rating--1-stars .star-rating__star--2 svg path,
.star-rating.star-rating--1-stars .star-rating__star--3 svg path,
.star-rating.star-rating--1-stars .star-rating__star--4 svg path,
.star-rating.star-rating--1-stars .star-rating__star--5 svg path {
    fill: #9da2a9;
}

.star-rating.star-rating--2-stars .star-rating__star--3 svg path,
.star-rating.star-rating--2-stars .star-rating__star--4 svg path,
.star-rating.star-rating--2-stars .star-rating__star--5 svg path {
    fill: #9da2a9;
}

.star-rating.star-rating--3-stars .star-rating__star--4 svg path,
.star-rating.star-rating--3-stars .star-rating__star--5 svg path {
    fill: #9da2a9;
}

.star-rating.star-rating--4-stars .star-rating__star--5 svg path {
    fill: #9da2a9;
}

.star-rating.star-rating--0-stars .star-rating__unrated,
.star-rating.star-rating--1-stars .star-rating__unrated,
.star-rating.star-rating--2-stars .star-rating__unrated,
.star-rating.star-rating--3-stars .star-rating__unrated,
.star-rating.star-rating--4-stars .star-rating__unrated,
.star-rating.star-rating--5-stars .star-rating__unrated {
    display: none;
}
.star-rating.star-rating--unrated-stars .star-rating__unrated {
    display: inline-block!important;
}
.star-rating.star-rating--unrated-stars .star-rating__star,
.star-rating.star-rating--unrated-stars .star-rating__total-ratings {
    display: none;
}

/* ---- Expando ---- */
.expando-opener-para,
.expando-opener-heading {
    color: #51C2B8;
    position: relative;
    margin-left: 1em; /* aligns the arrows with the edge of the paragraph */
}

.expando-opener-heading:hover {
    color: #1DBD5D;
}

a.expando-opener-link:before,
.expando-opener-heading:before {
    content:"\003e ";
    display: inline-block;
    -webkit-transition: all 150ms ease;
    -o-transition: all 150ms ease;
    transition: all 150ms ease;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    /* Keeps the text from wrapping under arrows */
    position: absolute;
    right: 100%;
    width: 1em;
}

.expando-opener-heading.expanded:before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: 30% 56%;
    -ms-transform-origin: 30% 56%;
    transform-origin: 30% 56%;
}

.expando {
    margin-left: 2.2em;  /* aligns close link with header paragraph */
}


/* ---- Highlight ---- */

.highlight,
.highlight--right,
.highlight--left {
    margin: 0 0 1.5rem;
    padding: 30px;
    background: #f6f6f6;
    clear: both;
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .highlight--left {
        float: left;
        width: 45%;
        margin-right: 20px;
        clear: right;
    }

    .highlight--right {
        float: right;
        width: 45%;
        margin-left: 20px;
        clear: left;
    }
}

.highlight *:last-child,
.highlight--right *:last-child,
.highlight--left *:last-child {
    margin-bottom: 0;
}


/* ---- Site Messages ---- */

ul.messages {
    list-style: none;
    margin: 16px 0 25px;
    padding: 0;
    border: none;
    background-color: #FFFFFF;
}

ul.messages li {
    margin: 0 0 15px;
    padding: 10px 20px;
    vertical-align: bottom;
    text-align: left;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.2em;
}

ul.messages .error {
    background: #DC5959!important;
    border-left: 4px solid #B72323!important;
    color: #FFF !important;
}

ul.messages .confirm {
    color: #FFF !important;
    background: #1dbd5d!important;
    border-left: 4px solid #439230;
}

ul.messages a {
    color: #FFF;
}


/* ---- Block list ---- */

.block-list {
    list-style: none;
    padding: 0;
    margin: 0 0 20px;
}

.block-list li {
    border-top: 1px solid rgba(0,0,0,0.2);
}

.block-list a {
    display: block;
    text-decoration: none;
    padding: 7px 0;
}


/* ------------------------------------------------------
**** Images
------------------------------------------------------ */

img {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
}


/* ------------------------------------------------------
**** Forms
------------------------------------------------------ */

/* ---- Base styles ---- */
.field-element {
    margin-bottom: 13px;
    position: relative;
}
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element {
        margin-bottom: 21px;
    }
}

.field-element:before,
.field-element:after {
    content: " ";
    display: table;
}

.field-element:after {
    clear: both;
}

.field-input .textbox,
.field-input .dropdown,
.form-section .textbox,
.form-section select {
    display: block;
    width: 100%;
    outline: none;
    line-height: normal;
    padding: 9px 20px 8px;
    -webkit-appearance: none;
    line-height: 1.7;
    border: none;
    border-radius: 6px;
    background-color: #efefea;
    color: #404041;
    font-family: 'brandon-grotesque', Helvetica, Arial, sans-serif;
    border: 2px solid #dcd9d1;
    white-space: nowrap;
}

.bg-orange .field-input .textbox,
.bg-orange .field-input .dropdown,
.bg-orange .form-section .textbox,
.bg-orange .form-section select {
    border-color: #efefea;
}
.bg-orange .field-element.field-element--white .field-input .textbox,
.bg-orange .field-element.field-element--white .field-input .dropdown,
.bg-orange .field-element.field-element--white .form-section .textbox,
.bg-orange .field-element.field-element--white .form-section select {
    border-color: #fff;
}

select option,
select optgroup {
    font-family: 'brandon-grotesque', Helvetica, Arial, sans-serif !important;
}

.field-input textarea.textbox {
    white-space: pre-wrap;
}

/* Make card numbers really readable, although slightly less pretty */
.field-element .field-input .textbox.cc-form-number {
    font-family: monospace;
    font-weight: normal;
    font-style: normal;
    letter-spacing: 0.1em;
}
.field-element .field-input .textbox.cc-form-number,
.field-element.field-element--small .field-input .textbox.cc-form-number {
    font-size: 1.95rem;
}

/* Always displayed uppercase, so enter them uppercase too */
.field-element--promocode input {
    text-transform: uppercase;
}


/* ---- Inline ---- */

.field-element--inline-text {
    text-transform: uppercase;
    color: #908b7e;
    font-weight: 500;
    font-size: 1.3rem;
    text-align: center;
}

.field-elements-inline--mobile {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: -5px;
    margin-right: -5px;
}
.field-elements-inline--mobile .field-element {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    padding: 0 5px;
}
.field-elements-inline--mobile .field-element.field-element--button {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
}
.field-elements-inline--mobile .field-element--inline-text {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    padding: 6px 11px 0;
}
.field-elements-inline--mobile .field-element.field-element--hidden-label,
.field-elements-inline--mobile .field-element.field-element--button,
.field-elements-inline--mobile .field-element.field-element--inline-text {
    margin-top: 26px;
}

/* BP Extra small */
@media only screen and (min-width: 37.5em) { /* 600px */
    .field-elements-inline {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-left: -5px;
        margin-right: -5px;
    }
    .field-elements-inline .field-element {
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 auto;
            -ms-flex: 1 0 auto;
                flex: 1 0 auto;
        padding: 0 5px;
    }
    .field-elements-inline .field-element.field-element--button {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
            -ms-flex: 0 0 auto;
                flex: 0 0 auto;
    }
    .field-elements-inline .field-element--inline-text {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
            -ms-flex: 0 0 auto;
                flex: 0 0 auto;
        padding: 6px 11px 0;
    }
    .field-elements-inline .field-element.field-element--hidden-label,
    .field-elements-inline .field-element.field-element--button,
    .field-elements-inline .field-element.field-element--inline-text {
        margin-top: 26px;
    }
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .field-element--inline-text {
        font-size: 1.5rem;
    }
}


/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    .field-elements-inline .field-element.field-element--hidden-label,
    .field-elements-inline .field-element.field-element--button,
    .field-elements-inline .field-element.field-element--inline-text {
        margin-top: 31px;
    }
    .field-elements-inline .field-element--inline-text {
        padding: 13px 16px 0;
    }
    .field-element--inline-text {
        font-size: 1.6rem;
    }
}

/* BP Extra large */
@media only screen and (min-width: 87.5em) { /* 1400px */

}

/* ---- Minimal ---- */


.field-element.field-element--minimal .field-input .textbox,
.field-element.field-element--minimal .field-input .dropdown,
.field-element--minimal.field-element--fileselector .fs-preview-wrapper {
    background-color: transparent;
    border-width: 1px;
    min-height: 30px;
}
.field-element.field-element--minimal.field-element--minimal--selected .field-input .textbox,
.field-element.field-element--minimal.field-element--minimal--selected .field-input .dropdown,
.field-element--minimal.field-element--fileselector.field-element--minimal--selected .fs-preview-wrapper,
.button-minimal.button-minimal--selected {
    background-color: #51c2b8;
    border-color: #51c2b8;
    color: #FFF;
}
.field-element.field-element--minimal .field-input .textbox,
.field-element.field-element--minimal .field-input .dropdown,
.field-element.field-element--minimal.field-element--daterangepicker .field-input .textbox,
.field-element.field-element--minimal.field-element--datepicker .field-input .textbox,
.field-element.field-element--minimal.field-element--datetimerangepicker .field-input .textbox,
.field-element.field-element--minimal.field-element--totalselector.field-element--totalselector--guests .field-input .textbox {
    padding-left: 10px;
    padding-right: 10px;
    background-image: none;
    padding-top: 0;
}


/* Mimic button style */
.button-minimal {
    -webkit-appearance: none;
    border: 1px solid #dcd9d2;
    border-radius: 5px;
    color: #8c887e;
    padding: 1px 10px 0;
    min-height: 30px;
    outline: none;
    cursor: pointer;
    font-size: 1.6rem;
}
.show-favourites .button-minimal {
    background-color: #51c2b8;
    border-color: #51c2b8;
    color: #FFF;
    width: 100%;
}

/* ---- Light ---- */
.field-element.field-element--light .field-input .textbox,
.field-element.field-element--light .field-input .dropdown,
.field-element--light.field-element--fileselector .fs-preview-wrapper {
    background-color: transparent;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #FFF;
    color: #FFF;
}

/* Focus */
.field-element.field-element--light .field-input .textbox:focus,
.field-element.field-element--light .field-input .dropdown:focus,
.field-element.field-element--light.field-element--daterangepicker--arrive-depart.field-element--daterangepicker--arrive-depart--active .field-input .textbox.js--display-value {
    border-color: #51c2b8;
}

/* ---- Hero ---- */
.field-element.field-element--hero .field-input .textbox,
.field-element.field-element--hero .field-input .dropdown,
.field-element--hero.field-element--fileselector .fs-preview-wrapper {
    background-color: #FFF;
    border-color: #FFF;
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .field-element.field-element--hero {
        margin: 0;
        border-left: 1px solid #ececec;
    }
    .field-element.field-element--hero:first-child {
        border-left: none;
    }
    .field-element.field-element--hero .field-input .textbox,
    .field-element.field-element--hero .field-input .dropdown,
    .field-element--hero.field-element--fileselector .fs-preview-wrapper {
        border-radius: 0;
    }
    .hero-search .field-element--hero .field-input select,
    .hero-search .field-element--hero .field-input input,
    .hero-search .field-element--hero .field-input .textbox {
        min-height: 35px!important;
        border: 0px!important;
    }
    .hero-search .field-element--hero .field-input select {
        padding: 6px 10px 0!important;
    }
    .hero-search .field-element--hero .field-input .textbox {
        padding: 4px 25px 3px 34px !important;
    }
}

/* BP Medium */
    @media only screen and (min-width: 62em) { /* 992px */
    .hero-search .field-element--hero .field-input select,
    .hero-search .field-element--hero .field-input input,
    .hero-search .field-element--hero .field-input .textbox {
        min-height: 46px!important;
    }
    .hero-search .field-element--hero .field-input select {
        padding: 10px 10px 0!important;
    }
    .hero-search .field-element--hero .field-input .textbox {
        padding: 8px 25px 6px 43px !important;
    }
}

/* BP Large */
    @media only screen and (min-width: 80em) { /* 992px */
    .hero-search .field-element--hero .field-input select,
    .hero-search .field-element--hero .field-input input,
    .hero-search .field-element--hero .field-input .textbox,
    .hero-search .field-element--hero button.hero-search__submit {
        min-height: 65px!important;
    }
    .hero-search .field-element--hero .field-input select {
        padding: 17px 25px!important;
    }
    .hero-search .field-element--hero .field-input .textbox {
        padding: 17px 25px 17px 43px!important;
    }
}

/* ---- White ---- */
.field-element.field-element--white .field-input .textbox,
.field-element.field-element--white .field-input .dropdown,
.field-element--white.field-element--fileselector .fs-preview-wrapper {
    background-color: #fff;
    border-color: #dcd9d1;
}

/* ---- Focus ---- */
.field-element .field-input .textbox:focus,
.field-element .field-input .dropdown:focus,
.form-section .textbox:focus,
.form-section select:focus,
.field-element.field-element--daterangepicker--arrive-depart.field-element--daterangepicker--arrive-depart--active .field-input .textbox.js--display-value {
    border-color: #908b7e;
}

#header__quick-search .form-section .textbox:focus,
#header__quick-search .field-element .field-input .textbox:focus {
    border-color: #ffffff;
}


/* ---- Sizes ---- */

/* Small */
.field-element .field-input .textbox,
.field-element .field-input .dropdown,
.field-element--fileselector .fs-preview-wrapper,
.field-element.field-element--small .field-input .textbox,
.field-element.field-element--small .field-input .dropdown,
.field-element.field-element--small.field-element--fileselector .fs-preview-wrapper,
.form-section .textbox,
.form-section select {
    font-size: 1.6rem;
    padding: 2px 10px 0;
    min-height: 33px;
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    /* Regular */
    .field-element .field-input .textbox,
    .field-element .field-input .dropdown,
    .field-element.field-element--fileselector .fs-preview-wrapper,
    .form-section .textbox,
    .form-section select {
        padding: 6px 15px 4px;
        font-size: 1.9rem;
        line-height: 1.6;
        min-height: 46px;
    }
    .field-element .field-input .textbox.cc-form-number {
        font-size: 2.5rem;
    }
}

/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    /* Large */
    .field-element.field-element--large .field-input .textbox,
    .field-element.field-element--large .field-input .dropdown,
    .field-element.field-element--large.field-element--fileselector .fs-preview-wrapper {
        padding: 15px 25px;
    }
}

/* ---- Disabled ---- */
.field-element.field-element--disabled {
    opacity: 0.6;
    cursor: not-allowed;
}
.field-element.field-element--disabled .textbox[disabled],
.field-element.field-element--disabled select[disabled],
.field-element.field-element--disabled button[disabled],
.field-element.field-element--disabled input[type="checkbox"] + label,
.field-element.field-element--disabled input[type="radio"] + label {
    cursor: not-allowed;
}

/* ---- Caps ---- */
.field-element--caps .textbox,
.field-element--caps select {
    text-transform: uppercase;
}


/* ---- Placeholders ---- */
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    color: #8c887e;
    text-transform: none;
}
::-moz-placeholder { /* Firefox 19+ */
    color: #8c887e;
    text-transform: none;
}
:-ms-input-placeholder { /* IE 10+ */
    color: #8c887e !important;
    text-transform: none;
}
::placeholder { /* CSS working draft */
    color: #8c887e;
    text-transform: none;
}
.field-element--dropdown--placeholder .field-input .dropdown {
    color: #8c887e;
}
.field-element--select--multiple .ms-choice > span.placeholder {
    color: #8c887e;
}



/* ---- Fieldset ---- */
.field-element fieldset,
.form-section fieldset {
    border: none;
    padding: 0;
    margin: 0;
}


/* ---- Labels and legends ---- */
.field-label,
.fieldset__legend,
.form-section > tbody > tr > th {
    font-size: 1.6rem;
    margin-bottom: 7px;
    line-height: 1.2;
    font-weight: normal;
}

/* White */
.field-element--white .field-label,
.field-element--white.fieldset__legend {
    color: #404041;
}

/* Instead of h3s */
.label.heading {
    margin: 30px 0px 20px;
    padding: 8px 8px 8px 0px;
    border-bottom: 1px solid #E2E2E2;
}

/* Hidden labels */
.field-element--hidden-label .field-label,
.field-element--hidden-label .fieldset__legend {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-label,
    .fieldset__legend,
    .form-section > tbody > tr > th {
        font-size: 1.8rem;
        margin-bottom: 10px;
    }
}


/* ---- Required ---- */
.field-label__required {
    text-indent: -9999px;
    line-height: 0;
    display: inline-block;
}

.field-label__required:after {
    content: "*";
    text-indent: 0;
    display: block;
    line-height: inherit;
}


/* ---- Field helpers ---- */
.field-helper {
    font-weight: 400;
    font-size: 1.4rem;
    font-style: italic;
    margin-bottom: 1em;
}

.field-label .field-helper {
    margin-top: 0.3em;
    margin-bottom: 0;
}
.field-label .tooltip {
    margin-left: 4px;
    vertical-align: bottom;
    display: inline-block;
}


/* ---- Attach wrapper ---- */
.field-element-attach-wrapper {
    position: relative;
}
.field-element-attach-wrapper__button {
    position: absolute;
    top: 1px;
    right: 1px;
    bottom: 1px;
    border-radius: 0 5px 5px 0;
    background: #d7dce0;
    border: none;
    outline: none;
    padding: 0 7px;
    z-index: 1;
    cursor: pointer;
}
.field-element-attach-wrapper__button .icon {
    color: #58595b;
}
.field-element-attach-wrapper__button:hover,
.field-element-attach-wrapper__button:active,
.field-element-attach-wrapper__button:focus {
    background-color: #c8cdd2;
}
.field-element-attach-wrapper .field-element .field-input .textbox,
.field-element-attach-wrapper .field-element .field-input .dropdown {
    padding-right: 40px;
}

.field-element-attach-wrapper--small .field-element-attach-wrapper__button .icon,
.field-element-attach-wrapper__button .icon {
    font-size: 2.7rem;
    margin-top: 2px;
}


/* Responsive */
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element-attach-wrapper__button .icon {
        font-size: 3.1rem;
        margin-top: 3px;
    }
}

/* BP large */
@media only screen and (min-width: 80em) { /* 1280px */
    .field-element-attach-wrapper--large .field-element-attach-wrapper__button .icon {
        font-size: 3.4rem;
        margin-top: 4px;
    }
}


/* ---- Field errors ---- */
.field-element.field-element--error  .field-input .textbox,
.field-element.field-element--error  .field-input .dropdown {
    background-color: #f7eaec;
    border-color: #e04d4d;
}
.field-error__list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.field-error__list__item {
    color: #fff;
    background: #E04D4D;
    padding: 5px 10px;
    margin: 14px 0 9px;
    position: relative;
    text-align: center;
}
.field-error__list__item:before {
    content: " ";
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 11px 12px 11px;
    border-color: transparent transparent #E04D4D transparent;
}

/* ---- Form section datepicker ---- */
.form-section .fb-widget-datepicker input {
    display: inline-block;
}

/* ---- Text area ---- */
textarea {
    resize: vertical;
}

/* ---- Range ---- */
.field-element.field-element--range .field-input .textbox {
    -webkit-appearance: slider-horizontal;
    background: none;
    padding: 0;
    border-radius: 0;
    border: none;
    background: none !important;
}
input[type=range]::-moz-focus-outer {
    border: 0;
}


/* ---- Selects ---- */
.field-element .field-input .dropdown,
.form-section select {
    -moz-appearance: none;
    background-image: url(../images/form-icons.svg);
    background-repeat: no-repeat;
}
.field-element .field-input .dropdown[multiple] {
    background-image: none;
    padding-right: 20px;
}

.field-element .dropdown::-ms-expand,
.daterangepicker select.monthselect::-ms-expand,
.daterangepicker select.yearselect::-ms-expand,
.form-section select::-ms-expand {
    display: none;
}

/* Multiple selects */
.field-element.field-element--select.field-element--select--multiple select {
    padding: 8px 8px;
    background-image: none;
}

.field-element.field-element--select.field-element--select--multiple option {
    padding: 6px 10px;
}

/* Small */
.field-element .field-input .dropdown,
.field-element.field-element--small .field-input .dropdown,
.form-section select {
    background-position: top -259px right -13px;
    padding-right: 22px;
}


/* Responsive */
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element .field-input .dropdown,
    .form-section select {
        background-position: top -252px right -9px;
        padding-right: 30px;
    }
}

/* BP large */
@media only screen and (min-width: 80em) { /* 1280px */
    /* Large */
    .field-element.field-element--large .field-input .dropdown {
        background-position: top -242px right -9px;
        padding-right: 35px;
    }
}

/* ---- Multiple select plugin ---- */
.field-element--select--multiple .ms-parent.dropdown {
    width: 200px !important;
}

.field-element--select--multiple .ms-drop {
    position: absolute;
    background: #fff;
    left: 0;
    padding: 15px 20px;
    margin-top: 2px;
    border-radius: 4px;
    z-index: 800;
    border: 1px solid #d1cfc9;
    display: none;
    white-space: nowrap;
    color: #404041;
}
.field-element--select--multiple .ms-drop:before {
    position: absolute;
    top: -7px;
    left: 14px;
    display: inline-block;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #d1cfc9;
    border-left: 7px solid transparent;
    border-bottom-color: rgba(0, 0, 0, 0.2);
    content: '';
}
.field-element--select--multiple .ms-drop:after {
    position: absolute;
    top: -6px;
    left: 15px;
    display: inline-block;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    border-left: 6px solid transparent;
    content: '';
}

.field-element--select--multiple .ms-choice.disabled {
    background-color: #f4f4f4;
    background-image: none;
    border: 1px solid #ddd;
    cursor: default;
}

.field-element--select--multiple .ms-choice > span {
    white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    display: block;
}
.field-element--select--multiple .ms-choice {
    text-align: left;
}



.field-element--select--multiple .field-element--select--multiple .ms-choice > div {
    position: absolute;
    top: 0;
    right: 0;
    width: 20px;
    height: 25px;
}

.field-element--select--multiple .ms-drop.bottom {
    top: 100%;
}

.field-element--select--multiple .ms-drop.top {
    bottom: 100%;
}

.field-element--select--multiple .ms-search {
    display: inline-block;
    margin: 0;
    min-height: 26px;
    padding: 4px;
    position: relative;
    white-space: nowrap;
    width: 100%;
    z-index: 10000;
}

.field-element--select--multiple .ms-search input {
    width: 100%;
    height: auto !important;
    min-height: 24px;
    padding: 0 20px 0 5px;
    margin: 0;
    outline: 0;
    font-family: sans-serif;
    font-size: 1em;
    border: 1px solid #aaa;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: #fff;
}

.field-element--select--multiple .ms-drop ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.field-element--select--multiple .ms-drop ul > li {
    display: list-item;
    background-image: none;
    position: static;
}

.field-element--select--multiple .ms-drop ul > li .disabled {
    opacity: .35;
}

.field-element--select--multiple .ms-drop ul > li.multiple {
    display: block;
    float: left;
}

.field-element--select--multiple .ms-drop ul > li.group {
    clear: both;
}

.field-element--select--multiple .ms-drop ul > li.multiple label {
    width: 100%;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
}

.field-element--select--multiple .ms-drop ul > li label {
    font-weight: normal;
    display: block;
    white-space: nowrap;
}

.field-element--select--multiple .ms-drop ul > li label.optgroup {
    font-weight: bold;
}

.field-element--select--multiple .ms-drop input[type="checkbox"] {
    vertical-align: middle;
}

.field-element--select--multiple .ms-drop .ms-no-results {
    display: none;
}


/* Autocomplete results list */
.field-element__ac-results ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.field-element__ac-results {
    background: #fff;
    padding: 10px 15px;
    margin-top: 2px;
    border-radius: 4px;
    border: 1px solid #d1cfc9;
    z-index: 800;
    overflow: visible !important;
    font-family: inherit;
    min-width: 100%;
}

.field-element__ac-results:before {
    position: absolute;
    top: -7px;
    left: 14px;
    display: inline-block;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #d1cfc9;
    border-left: 7px solid transparent;
    border-bottom-color: rgba(0, 0, 0, 0.2);
    content: '';
}
.field-element__ac-results:after {
    position: absolute;
    top: -6px;
    left: 15px;
    display: inline-block;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    border-left: 6px solid transparent;
    content: '';
    background: none;
    height: auto;
    text-align: left;
    padding: 0;
}
.field-element__ac-results li {
    font-size: 1.5rem;
    padding: 6px 6px 6px 30px;
    line-height: 1.3;
    color: #908c83;
    border-top: 1px solid #e6e6e6;
    cursor: pointer;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
}
.field-element__ac-results li:first-child {
    border-top: none;
}
.field-element__ac-results li:hover {
    background-color: #efefea;
}
.field-element__ac-results li b {
    font-size: 1.7rem;
    color: #404041;
}
.field-element__ac-results span:before {
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    position: absolute;
    top: 4px;
    left: 1px;
    font-size: 2.6rem;
    color: #6faadc;
    width: 26px;
    height: 26px;
}
.field-element__ac-results span.town:before {
    content: "\e914";
    font-family: 'icomoon' !important;
}
.field-element__ac-results span.area:before {
    content: "\e90c";
    font-family: 'icomoon' !important;
}


/* ---- Checkboxes and radio buttons ---- */
.field-element.field-element--checkbox,
.field-element.field-element--radio,
.checkbox-list label,
.radio-list label {
    font-size: 1.6rem;
}

.field-element input[type="checkbox"],
.field-element input[type="radio"],
.checkbox-list input[type="checkbox"],
.radio-list input[type="radio"] {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.field-element input[type="checkbox"] + label,
.field-element input[type="radio"] + label,
.field-element.field-element--small input[type="checkbox"] + label,
.field-element.field-element--select--multiple input[type="checkbox"] + label,
.field-element.field-element--small input[type="radio"] + label,
.checkbox-list label,
.radio-list label {
    padding-left: 34px;
    position: relative;
    cursor: pointer;
    display: inline-block;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.field-element input[type="checkbox"] + label:before,
.field-element input[type="radio"] + label:before,
.field-element.field-element--small input[type="checkbox"] + label:before,
.field-element.field-element--small input[type="radio"] + label:before,
.field-element.field-element--select--multiple input[type="checkbox"] + label:before,
.checkbox-list label:before,
.radio-list label:before {
    content: " ";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 13px;
    position: relative;
    top: 3px;
    background-color: #efefea;
    border: 2px solid #dcd9d1;
    margin-left: -34px;
}

/* Check and dot */
.field-element input[type="checkbox"]:checked + label:after,
.field-element input[type="radio"]:checked + label:after,
.checkbox-list input[type="checkbox"]:checked + label:after,
.radio-list input[type="radio"]:checked + label:after {
    content: " ";
    position: absolute;
    left: 1px;
    top: 9px;
}


/* Without labels */
.field-element.field-element--checkbox--no-label input[type="checkbox"] + label,
.field-element.field-element--radio--no-label input[type="radio"] + label {
    padding-left: 0;
}

.field-element.field-element--checkbox--no-label input[type="checkbox"] + label:before,
.field-element.field-element--radio--no-label input[type="radio"] + label:before {
    margin-left: 0;
    margin-right: 0;
}

.field-element.field-element--checkbox--no-label input[type="checkbox"]:checked + label:after,
.field-element.field-element--radio--no-label input[type="radio"]:checked + label:after {
    left: 1px;
}

.field-element.field-element.field-element--radio--no-label input[type="radio"]:checked + label:after {
    margin-left: 4px;
}


/* -- Checkboxes -- */

/* Box */
.field-element input[type="checkbox"] + label:before,
.checkbox-list input[type="checkbox"] + label:before {
    border-radius: 4px;
}

/* Check (pseudo element) */
.field-element input[type="checkbox"]:checked + label:after,
.field-element.field-element--small input[type="checkbox"]:checked + label:after,
.field-element.field-element--select--multiple input[type="checkbox"]:checked + label:after,
.checkbox-list input[type="checkbox"]:checked + label:after {
    content: " ";
    background-image: url(../images/form-icons.svg);
    background-repeat: no-repeat;
    background-position: top -703px left 1px;
    width: 17px;
    height: 17px;
    margin: -3px 0 0 0px;
}

.field-element.field-element--checkboxlist--columns .field-element__input-set {
    -webkit-columns: 3;
    -moz-columns: 3;
    columns: 3;
}

/* -- Radio Buttons -- */

/* Radio button (pseudo element) */
.field-element input[type="radio"] + label:before,
.radio-list input[type="radio"] + label:before {
    border-radius: 50%;
}

/* Radio dot (pseudo element) */
.field-element input[type="radio"]:checked + label:after,
.field-element.field-element--small input[type="radio"]:checked + label:after,
.radio-list input[type="radio"]:checked + label:after {
    left: 7px;
    top: 10px;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    background: #707479;
}

/* White */
.field-element.field-element--white input[type="checkbox"] + label:before,
.field-element.field-element--white input[type="radio"] + label:before {
    background-color: #FFF;
}


/* Responsive */
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element input[type="checkbox"] + label:before,
    .field-element input[type="radio"] + label:before,
    .checkbox-list input[type="checkbox"] + label:before,
    .radio-list input[type="radio"] + label:before {
        width: 28px;
        height: 28px;
        margin-right: 13px;
        top: 7px;
        margin-left: -43px;
    }

    .field-element input[type="checkbox"] + label,
    .field-element input[type="radio"] + label,
    .checkbox-list label,
    .radio-list label {
        padding-left: 43px;
    }

    .field-element input[type="checkbox"]:checked + label:after,
    .checkbox-list input[type="checkbox"]:checked + label:after {
        background-position: top -729px left 2px;
        width: 24px;
        height: 24px;
        margin: 0;
    }

    /* Radio dot (pseudo element) */
    .field-element input[type="radio"]:checked + label:after,
    .radio-list input[type="radio"]:checked + label:after {
        left: 9px;
        top: 16px;
        width: 10px;
        height: 10px;
        border-radius: 5px;
    }
}


/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    /* Large */
    .field-element.field-element--large input[type="checkbox"] + label:before,
    .field-element.field-element--large input[type="radio"] + label:before {
        width: 34px;
        height: 34px;
        margin-right: 16px;
        top: 9px;
    }

    .field-element.field-element--large input[type="checkbox"]:checked + label:after {
        background-position: top -758px left 1px;
        width: 29px;
        height: 29px;
        margin: 2px 0 0 1px;
    }

    /* Radio outer */
    .field-element.field-element--large input[type="radio"]:checked + label:after {
        left: 11px;
        top: 20px;
        width: 12px;
        height: 12px;
        border-radius: 6px;
    }
}

/* ---- Color picker ---- */

/* Small */
.field-element.field-element--colorpicker .textbox.colorpicker,
.field-element.field-element--colorpicker.field-element--small .textbox.colorpicker {
    padding: 2px 7px;
    height: 32px;
    width: 38px;
}

/* Responsive */
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element.field-element--colorpicker .textbox.colorpicker {
        padding: 3px 8px;
        height: 42px;
        width: 49px;
    }
}

/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    .field-element.field-element--colorpicker.field-element--large .textbox.colorpicker {
        padding: 4px 10px;
        height: 50px;
        width: 60px;
    }
}

/* ---- Money ---- */
/*
.field-element.field-element--money .field-input .textbox {
    background-image: url(../images/form-icons.svg);
    background-repeat: no-repeat;
    background-position: top -447px left 0;
} */

.field-element.field-element--money .field-input {
    position: relative;
}
.field-element.field-element--money .field-input .money-symbol:before {
    content: "\00a4";       /* Generic currency sign */
    position: absolute;
    display: block;
    left: 2px;
    color: #908b7e;
    font-weight: bold;
    text-align: center;
}
.field-element.field-element--money .field-input .money-symbol--dollar:before {
    content: "$";    /* Dollars */
}
.field-element.field-element--money .field-input .money-symbol--pound:before {
    content: "\00a3";    /* Pounds */
}
.field-element.field-element--money .field-input .money-symbol--yen:before {
    content: "\00a5";    /* Yen */
}
.field-element.field-element--money .field-input .money-symbol--indian_rupee:before {
    content: "\20B9";   /* Indian rupee */
}


/* Small */
.field-element.field-element--money .field-input .textbox,
.field-element.field-element--money.field-element--small .field-input .textbox {
    padding-left: 30px;
}
.field-element.field-element--money .field-input .money-symbol:before,
.field-element.field-element--money.field-element--small .field-input .money-symbol:before {
    top: 4px;
    font-size: 18px;
    width: 30px;
}


/* Responsive */
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element.field-element--money .field-input .textbox {
        padding-left: 40px;
    }
    .field-element.field-element--money .field-input .money-symbol:before {
        top: 10px;
        font-size: 21px;
        width: 41px;
    }
}

/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    .field-element.field-element--money.field-element--large .field-input .money-symbol:before {
        top: 17px;
    }
    .field-element.field-element--money.field-element--large .field-input .textbox {
        padding-left: 53px;
    }
}


/* ---- Time pickers ---- */

.field-element.field-element--timepicker .field-input .textbox {
    background-image: url(../images/form-icons.svg);
    background-repeat: no-repeat;
    background-position: top -170px left 12px;
}

/* Timepicker modal */
.ui-timepicker {
    display: block;
    position: absolute;
    height: 200px;
    overflow: auto;
    z-index: 9999 !important;
}

.ui-timepicker-standard {
    background-color: #FFF;
    border: 1px solid #CED2DC;
    display: block;
    margin: 3px 0 0;
    padding: 5px;
    list-style: none outside none;
    border-radius: 4px;
}

.ui-timepicker-standard a {
    color: #24292f;
}

.ui-timepicker-standard .ui-state-hover {
    background-color: #EAECF1;
}

.ui-timepicker-standard .ui-menu-item {
    clear: left;
    float: left;
    margin: 0;
    padding: 0;
    width: 100%;
}

.ui-timepicker-standard .ui-menu-item a {
    display: block;
    padding: 5px 10px;
    line-height: 1.5;
    text-decoration: none;
    border-radius: 3px;
    transition: none;
}

.ui-timepicker-hidden {
    display: none;
}


/* Small */
.field-element.field-element--timepicker .field-input .textbox,
.field-element.field-element--timepicker.field-element--small .field-input .textbox {
    background-position: top -175px left 6px;
    padding-left: 30px;
}


/* Responsive */
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element.field-element--timepicker .field-input .textbox {
        background-position: top -169px left 14px;
        padding-left: 40px;
    }
}


/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    /* Large */
    .field-element.field-element--timepicker.field-element--large .field-input .textbox {
        background-position: top -159px left 14px;
    }
}



/* ---- Date pickers ---- */

/* - Date picker and Date-range picker - */
.field-element.field-element--datepicker .field-input .textbox,
.field-element.field-element--daterangepicker .field-input .textbox {
    background-image: url(../images/form-icons.svg);
    background-repeat: no-repeat;
    cursor: pointer;
}

/* Small */
.field-element.field-element--datepicker .field-input .textbox,
.field-element.field-element--datepicker.field-element--small .field-input .textbox,
.field-element.field-element--daterangepicker .field-input .textbox,
.field-element.field-element--daterangepicker.field-element--small .field-input .textbox {
    background-position: top 5px left 7px;
    padding-left: 30px;
}


/* Responsive */
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element.field-element--datepicker .field-input .textbox,
    .field-element.field-element--daterangepicker .field-input .textbox {
        background-position: top 12px left 14px;
        padding-left: 40px;
    }
}


/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    /* Large */
    .field-element.field-element--datepicker.field-element--large .field-input .textbox,
    .field-element.field-element--daterangepicker.field-element--large .field-input .textbox {
        background-position: top 22px left 14px;
    }
}


/* - Date/time picker - */
.field-element.field-element--datetimepicker .field-input .textbox,
.field-element.field-element--datetimerangepicker .field-input .textbox {
    background-image: url(../images/form-icons.svg);
    background-repeat: no-repeat;
}

/* Small */
.field-element.field-element--datetimepicker .field-input .textbox,
.field-element.field-element--datetimepicker.field-element--small .field-input .textbox,
.field-element.field-element--datetimerangepicker .field-input .textbox,
.field-element.field-element--datetimerangepicker.field-element--small .field-input .textbox {
    background-position: top -65px left 6px;
    padding-left: 30px;
}


/* Responsive */
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element.field-element--datetimepicker .field-input .textbox,
    .field-element.field-element--datetimerangepicker .field-input .textbox {
        background-position: top -57px left 14px;
        padding-left: 40px;
    }
}


/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    /* Large */
    .field-element.field-element--datetimepicker.field-element--large .field-input .textbox,
    .field-element.field-element--datetimerangepicker.field-element--large .field-input .textbox {
        background-position: top -48px left 14px;
    }
}

/* Arrive/depart */
.field-element.field-element--daterangepicker--arrive-depart .textbox.textbox--arrive-depart-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 100%;
    min-height: 0;
}
.field-element.field-element--daterangepicker--arrive-depart .field-input .textbox.js--display-value {
    cursor: pointer;
}
.field-element.field-element--daterangepicker--arrive-depart .date {
    display: inline-block;
}
.field-element.field-element--daterangepicker--arrive-depart .date--fake {
    padding: 0;
}
.field-element.field-element--daterangepicker--arrive-depart .date--active {
    padding: 0;
    position: relative;
}
.field-element.field-element--daterangepicker--arrive-depart .date--active:after {
    content: " ";
    height: 2px;
    background-color: #f5b140;
    position: absolute;
    bottom: 1px;
    left: 0;
    right: 0;
}
.field-element.field-element--daterangepicker--arrive-depart .sep {
    display: inline-block;
}


/* Container Appearance */
.daterangepicker {
    position: absolute;
    background: #fff;
    top: 100px;
    left: 20px;
    padding: 15px;
    margin-top: 2px;
    border-radius: 4px;
    width: 88%;
}

.daterangepicker.opensleft:before {
    position: absolute;
    top: -7px;
    right: 9px;
    display: inline-block;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #ccc;
    border-left: 7px solid transparent;
    border-bottom-color: rgba(0, 0, 0, 0.2);
    content: '';
}

.daterangepicker.opensleft:after {
    position: absolute;
    top: -6px;
    right: 10px;
    display: inline-block;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    border-left: 6px solid transparent;
    content: '';
}

.daterangepicker.openscenter:before {
    position: absolute;
    top: -7px;
    left: 0;
    right: 0;
    width: 0;
    margin-left: auto;
    margin-right: auto;
    display: inline-block;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #ccc;
    border-left: 7px solid transparent;
    border-bottom-color: rgba(0, 0, 0, 0.2);
    content: '';
}

.daterangepicker.openscenter:after {
    position: absolute;
    top: -6px;
    left: 0;
    right: 0;
    width: 0;
    margin-left: auto;
    margin-right: auto;
    display: inline-block;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    border-left: 6px solid transparent;
    content: '';
}

.daterangepicker.opensright:before {
    position: absolute;
    top: -7px;
    left: 14px;
    display: inline-block;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #d1cfc9;
    border-left: 7px solid transparent;
    border-bottom-color: rgba(0, 0, 0, 0.2);
    content: '';
}

.daterangepicker.opensright:after {
    position: absolute;
    top: -6px;
    left: 15px;
    display: inline-block;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    border-left: 6px solid transparent;
    content: '';
}

.daterangepicker.dropup{
    margin-top: -5px;
}

.daterangepicker.dropup:before{
    top: initial;
    bottom:-7px;
    border-bottom: initial;
    border-top: 7px solid #CED2DC;
}

.daterangepicker.dropup:after{
    top: initial;
    bottom:-6px;
    border-bottom: initial;
    border-top: 6px solid #fff;
}

.daterangepicker.dropdown-menu {
    max-width: none;
    z-index: 500;
    display: none;
    border: 1px solid #d1cfc9;
}

.daterangepicker.single .ranges, .daterangepicker.single .calendar {
    float: none;
}

.daterangepicker .calendar {
    display: none;
    max-width: 300px;
    margin: 0 auto;
}

.daterangepicker.show-calendar .calendar {
    display: block;
}

/* Calendars */
.daterangepicker .calendar th,
.daterangepicker .calendar td {
    white-space: nowrap;
    text-align: center;
    position: relative;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
}
.daterangepicker .calendar th {
    padding: 17px 0 8px;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.2;
    text-transform: uppercase;
}
.daterangepicker .calendar td {
    border: none;
    padding: 5px 8px;
    font-size: 1.2rem;
}

.daterangepicker table {
    width: 100%;
    margin: 0;
    border: none;
    font-family: Helvetica, Arial, sans-serif;
    border-collapse: collapse;
}
.daterangepicker td,
.daterangepicker th.available {
    cursor: pointer;
}
.daterangepicker td.off{
    color: #d4d4d4;
    background: #fff;
}
.daterangepicker td.off.in-range,
.daterangepicker td.off.start-date,
.daterangepicker td.off.end-date {
    background: #DCF7F4;
}

.daterangepicker td.disabled,
.daterangepicker option.disabled {
    background-color: #efefea;
    color: #d8d8d4;
}
.daterangepicker td.disabled:not(.start-half-disabled),
.daterangepicker option.disabled {
    cursor: not-allowed !important;
}

.daterangepicker td.available:hover {
    background-color: #199384;
    color: #ffffff;
}


.daterangepicker td.in-range {
    background: #d5efec;
}

.daterangepicker td.active,
.daterangepicker td.active:hover {
    background-color: #50c2b8;
    color: #ffffff;
}

/* Half dates */
.daterangepicker td.start-half-disabled {
    background: rgb(252,252,252); /* Old browsers */ /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg, rgba(252,252,252,1) 50%,rgba(239,239,234,1) 51%); /* Chrome10-25,Safari5.1-6 */
    background: -webkit-linear-gradient(315deg, rgba(252,252,252,1) 50%,rgba(239,239,234,1) 51%);
    background: -o-linear-gradient(315deg, rgba(252,252,252,1) 50%,rgba(239,239,234,1) 51%);
    background: linear-gradient(135deg, rgba(252,252,252,1) 50%,rgba(239,239,234,1) 51%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.daterangepicker td.start-half-disabled.in-range {
    background: rgb(253,191,87); /* Old browsers */ /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg, rgba(213,239,236,1) 50%,rgba(241,252,251,1) 51%); /* Chrome10-25,Safari5.1-6 */
    background: -webkit-linear-gradient(315deg, rgba(213,239,236,1) 50%,rgba(241,252,251,1) 51%);
    background: -o-linear-gradient(315deg, rgba(213,239,236,1) 50%,rgba(241,252,251,1) 51%);
    background: linear-gradient(135deg, rgba(213,239,236,1) 50%,rgba(241,252,251,1) 51%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
/* Half date disabled - hover and active */
.daterangepicker td.start-half-disabled:hover,
.daterangepicker td.start-half-disabled.active,
.daterangepicker td.start-half-disabled.start-date.in-range,
.daterangepicker td.start-half-disabled.end-date.in-range {
    background: rgb(253,191,87); /* Old browsers */ /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg, rgba(80,194,184,1) 50%,rgba(239,239,234,1) 51%); /* Chrome10-25,Safari5.1-6 */
    background: -webkit-linear-gradient(315deg, rgba(80,194,184,1) 50%,rgba(239,239,234,1) 51%);
    background: -o-linear-gradient(315deg, #50c2b8 50%,rgba(239,239,234,1) 51%);
    background: linear-gradient(135deg, rgba(80,194,184,1) 50%,rgba(239,239,234,1) 51%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

/* Change over days */
.daterangepicker td.change-over {
    color: #313C4A;
    background: rgba(239,239,234);
    background: -moz-linear-gradient(135deg, rgba(239,239,234,1) 0%, rgba(239,239,234,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(255,255,255,1) 52%);
    background: -webkit-linear-gradient(135deg, rgba(239,239,234,1) 0%, rgba(239,239,234,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(255,255,255,1) 52%);
    background: linear-gradient(135deg, rgba(239,239,234,1) 0%, rgba(239,239,234,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(255,255,255,1) 52%);
}
.daterangepicker td.change-over.available {
    background: rgb(255,255,255);
    background: -moz-linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(255,255,255,1) 52%);
    background: -webkit-linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(255,255,255,1) 52%);
    background: linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(255,255,255,1) 52%);
}
.daterangepicker td.change-over.in-range {
    background: rgb(213,239,236);
    background: -moz-linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
    background: -webkit-linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
    background: linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
}
/* Change over days - hover and active */
.daterangepicker td.change-over:hover,
.daterangepicker td.change-over.active {
    background: rgb(213,239,236);
    background: -moz-linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
    background: -webkit-linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
    background: linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
}
.daterangepicker td.change-over.start-date,
.daterangepicker td.change-over.start-date.active,
.daterangepicker td.change-over.start-date.in-range {
    background: rgba(255,255,255);
    background: -moz-linear-gradient(135deg, rgba(239,239,234,1) 0%, rgba(239,239,234,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
    background: -webkit-linear-gradient(135deg, rgba(239,239,234,1) 0%, rgba(239,239,234,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
    background: linear-gradient(135deg, rgba(239,239,234,1) 0%, rgba(239,239,234,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
}
.daterangepicker td.change-over.start-date.available,
.daterangepicker td.change-over.start-date.available.active,
.daterangepicker td.change-over.start-date.available.in-range {
    background: rgba(255,255,255);
    background: -moz-linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
    background: -webkit-linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
    background: linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(213,239,236,1) 52%);
}
.daterangepicker td.change-over.end-date,
.daterangepicker td.change-over.end-date.in-range {
    background: rgb(213,239,236);
    background: -moz-linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(239,239,234,1) 52%);
    background: -webkit-linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(239,239,234,1) 52%);
    background: linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(239,239,234,1) 52%);
}
.daterangepicker td.change-over.end-date.available,
.daterangepicker td.change-over.end-date.available.in-range {
    background: rgb(213,239,236);
    background: -moz-linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(255,255,255,1) 52%);
    background: -webkit-linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(255,255,255,1) 52%);
    background: linear-gradient(135deg, rgba(213,239,236,1) 0%, rgba(213,239,236,1) 48%, rgba(80,194,184,1) 49%, rgba(80,194,184,1) 51%, rgba(255,255,255,1) 52%);
}


/* Disabled active */
.daterangepicker td.active.disabled,
.daterangepicker td.active.disabled:hover {
    opacity: 0.4;
}

/* Disabled in range */
.daterangepicker td.in-range.disabled,
.daterangepicker td.in-range.disabled:hover {
    opacity: 0.4;
}

.daterangepicker td.week, .daterangepicker th.week {
    font-size: 80%;
    color: #d4d4d4;
}

.daterangepicker td.available.off:hover,
.daterangepicker th.available.off:hover {
    background-color: #f5b140;
    color: #404041;
}

.daterangepicker select.monthselect, .daterangepicker select.yearselect {
    font-size: 12px;
    padding: 1px;
    height: auto;
    margin: 0;
    cursor: default;
}

.daterangepicker select.yearselect,
.daterangepicker select.monthselect,
.daterangepicker select.hourselect,
.daterangepicker select.minuteselect,
.daterangepicker select.secondselect,
.daterangepicker select.ampmselect {
    margin-bottom: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 62px;
    background-color: #FFF;
    outline: none;
    border-radius: 5px;
    font-size: 1.4rem;
    line-height: 1.2;
    padding: 5px 23px 5px 8px;
    border: 2px solid #e0ded8;
    background-image: url(../images/form-icons.svg);
    background-repeat: no-repeat;
    background-position: top -261px right -15px;
}

.daterangepicker select.monthselect {
    margin-right: 2%;
    width: 40%;
}

.daterangepicker select.yearselect {
    width: 44%;
}

.daterangepicker th.month {
    font-size: 1.6rem;
    text-transform: none;
    font-family: 'brandon-grotesque', Helvetica, Arial, sans-serif;
    font-weight: 500;
}

/* Previous/Next buttons */
.daterangepicker th.prev .daterangepicker-prev-icon,
.daterangepicker th.next .daterangepicker-next-icon {
    height: 32px;
    width: 32px;
    display: block;
    margin: 0 auto;
    border: 2px solid #51C2B8;
    border-radius: 50%;
    font-size: 1.4rem;
    padding-top: 6px;
    background-image: url(../images/form-icons.svg);
    background-repeat: no-repeat;
    background-position: top -1618px left 1px;
}
.daterangepicker th.prev .daterangepicker-prev-icon{
    background-position: top -830px left 9px;
}
.daterangepicker th.next .daterangepicker-next-icon {
    background-position: top -867px left 11px;
}

.daterangepicker th.prev:hover .daterangepicker-prev-icon,
.daterangepicker th.next:hover .daterangepicker-next-icon {
    background-color: #51C2B8;
}
.daterangepicker th.prev:hover .daterangepicker-prev-icon {
    background-position: top -905px left 9px;
}
.daterangepicker th.next:hover .daterangepicker-next-icon {
    background-position: top -942px left 11px;
}

.daterangepicker th.prev,
.daterangepicker th.next,
.daterangepicker th.month,
.daterangepicker .calendar-table thead tr:first-child th {
    padding: 0;
}


/* Text Input Above Each Calendar */
.daterangepicker .input-mini {
    border: 2px solid #f0f0eb;
    border-radius: 4px;
    color: #555;
    display: block;
    height: 30px;
    vertical-align: middle;
    margin: 0 0 5px 0;
    padding: 5px 15px;
    width: 100%;
    font-size: 1.4rem;
}

.daterangepicker .input-mini.active {
    border-color: #d1cfc9;
    background-color: rgb(255, 255, 238);
}

.daterangepicker .daterangepicker_input i {
    position: absolute;
    left: 8px;
    top: 7px;
    color: #596474;
}

.daterangepicker .daterangepicker_input {
    position: relative;
}

/* Time Picker */
.daterangepicker .calendar-time {
    text-align: center;
    margin: 0 auto 15px;
    line-height: 30px;
    position: relative;
}

.daterangepicker .calendar-time select.disabled {
    color: #ccc;
    cursor: not-allowed;
}

/* Predefined Ranges */
.daterangepicker .ranges:empty {
    display: none;
}
.daterangepicker .ranges {
    font-size: 11px;
    float: none;
    margin: 4px;
    text-align: center;
}
.daterangepicker .range_inputs {
    display: flex;
    justify-content: space-between;
    clear: both;
    padding-top: 8px;
}

.daterangepicker .daterangerpicker-button {
    -webkit-appearance: none;
    border: none;
    border-radius: 0;
    background: none;
    font-weight: 600;
    font-family: 'Lato', sans-serif;
    font-size: 1.7rem;
    cursor: pointer;
    outline: none;
}
.daterangepicker .applyBtn {
    color: #51c2b8;
}
.daterangepicker .applyBtn:hover,
.daterangepicker .applyBtn:focus {
    color: #199384;
}

.daterangepicker .cancelBtn {
    color: #9DA2A9;
}
.daterangepicker .cancelBtn:hover,
.daterangepicker .cancelBtn:focus {
    color: #686f77;
}

.daterangepicker .clearBtn {
    background: #d5efec;
    width: 100%;
    font-size: 12px;
    padding: 4px;
    margin: 15px 0 0 0;
    color: #2B4744;
    border: 1px #AAC7C4 solid;
    cursor: pointer;
}
.daterangepicker .clearBtn:hover,
.daterangepicker .clearBtn:focus {
    background: #B4D5D1;
    border-color: #94A6A4;
    color: #2B4744;
}

.daterangepicker .ranges ul {
    list-style: none;
    margin: 0 auto 12px;
    padding: 0;
    width: 100%;
}

.daterangepicker .ranges li {
    font-size: 1.3rem;
    background: #d0d3da;
    padding: 6px 12px;
    margin-bottom: 7px;
    border-radius: 5px;
    cursor: pointer;
    line-height: 1.2;
}

.daterangepicker .ranges li.active, .daterangepicker .ranges li:hover {
    background: #51c2b8;
    color: #fff;
}

/* Static daterangepicker */
.daterangepicker.daterangepicker--static td,
.daterangepicker.daterangepicker--static th.available {
    cursor: default;
}

/* Hide text inputs */
.daterangepicker .daterangepicker_input .input-mini {
    display: none;
}

.daterangepicker .calendar.left,
.daterangepicker .calendar.right {
    float: none;
}
.daterangepicker .calendar.right .next {
    display: none;
}

/* Hacks for fancy overlay */
.datepicker-overlay {
    margin-right: 6px;
}
.dummy-date-active {
    border-bottom: 1px solid #51c2b8;
}
.fb-daterangepicker.dummied {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    max-height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    bottom: 0px;
    width: 100%;
    min-height: 0;
}
.datepicker-overlay-wrap {
    text-align: left;
}


/* BP Extra small */
@media only screen and (min-width: 37.5em) { /* 600px */
    .daterangepicker{
        width: auto;
    }

    .daterangepicker .next--mobile {
        display: none;
    }
    .daterangepicker .calendar.right .next {
        display: block;
    }

    .daterangepicker .ranges ul {
        width: 160px;
    }

    .daterangepicker.single .ranges ul {
        width: 100%;
    }


    .daterangepicker .calendar.left {
        margin: 0;
    }

    .daterangepicker .calendar.left,
    .daterangepicker .calendar.right {
        float: left;
    }

    .daterangepicker.single .ranges,
    .daterangepicker.single .calendar{
        float:left;
    }

    .daterangepicker .calendar.right {
        margin: 0;
    }

    .daterangepicker .calendar {
        float: left;
    }

    .daterangepicker .calendar.left .calendar-table {
        padding-right: 8px;
        border-right: 2px solid #f0f0eb;
    }
    .daterangepicker.single .calendar.left .calendar-table {
        border-right: none;
        padding-right: 0;
    }
    .daterangepicker .calendar.right .calendar-table {
        padding-left: 8px;
    }
    .daterangepicker .ranges {
        text-align: left;
    }

}

/* BP small */
@media screen and (min-width: 48.063em) { /* 769px */
    .daterangepicker .ranges {
        width: auto;
        float: left;
        margin-left: 20px;
    }
    .daterangepicker .ranges:first-child {
        margin-left: 4px;
    }
    .daterangepicker .ranges:first-child + .calendar.left {
        margin-left: 20px;
    }
    .daterangepicker .calendar.left {
        margin: 0;
    }
}


/* BP Medium */
@media only screen and (min-width: 62em) { /* 992px */
    .daterangepicker .calendar td {
        padding: 7px 11px;
    }
}


/* ---- Total selector ---- */
.field-element.field-element--totalselector {
    position: relative;
}
.field-element--totalselector .field-input .total-selector__output {
    cursor: pointer;
    background-image: url(../images/form-icons.svg);
    background-repeat: no-repeat;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
}
.field-element--totalselector .total-selector__output--mobile {
    border: 0px;
    background: white;
    text-align: center;
}


/* Small */
.field-element.field-element--totalselector .field-input .total-selector__output,
.field-element.field-element--totalselector.field-element--small .field-input .total-selector__output {
    background-position: top -259px right -13px;
    padding-right: 22px;
}

/* Guests */
.field-element.field-element--totalselector.field-element--totalselector--guests .field-input .total-selector__output {
    background-image: url(../images/form-icons.svg), url(../images/form-icons.svg);
    background-repeat: no-repeat, no-repeat;
}
.field-element.field-element--totalselector.field-element--totalselector--guests .field-input .total-selector__output,
.field-element.field-element--totalselector.field-element--totalselector--guests.field-element--small .field-input .total-selector__output {
    padding-left: 30px;
    background-position: top -259px right -13px, top -452px left 6px;
}

/* Responsive */
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element.field-element--totalselector .field-input .total-selector__output {
        background-position: top -252px right -9px;
        padding-right: 30px;
    }

    /* Guests */
    .field-element.field-element--totalselector.field-element--totalselector--guests .field-input .total-selector__output {
        padding-left: 40px;
        background-position: top -252px right -9px, top -445px left 13px;
    }
}


/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    /* Large */
    .field-element.field-element--totalselector.field-element--large .field-input .total-selector__output {
        background-position: top -242px right -9px;
    }
    /* Guests */
    .field-element.field-element--totalselector.field-element--totalselector--guests.field-element--large .field-input .total-selector__output {
        background-position: top -242px right -9px, top -437px left 13px;
    }
}



.field-element--totalselector__dropdown {
    position: absolute;
    background: #fff;
    top: 100%;
    left: 0;
    right: 0;
    padding: 20px 25px;
    z-index: 800;
    border: 1px solid #d1cfc9;
    display: none;
    white-space: nowrap;
}
.field-element--totalselector.field-element--totalselector--active .field-element--totalselector__dropdown {
    display: block;
}

.total-selector__dropdown__field {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 0 11px;
}
.total-selector__dropdown__field:last-child {
    margin-bottom: 0;
}
.total-selector__dropdown__field__labels {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
}
.total-selector__dropdown__field__buttons {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
}
.total-selector__dropdown__field__button {
    -webkit-appearance: none;
    border: 2px solid #51C2B8;
    border-radius: 50%;
    outline: none;
    background: none;
    padding: 0;
    height: 32px;
    width: 32px;
    color: #908b7e;
    cursor: pointer;
    font-size: 1.4rem;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    background-image: url(../images/form-icons.svg);
    background-repeat: no-repeat;
    background-position: top -1618px left 1px;
}
.total-selector__dropdown__field__button.total-selector__dropdown__field__button--decrease {
    background-position: top -1559px left 9px;
}
.total-selector__dropdown__field__button.total-selector__dropdown__field__button--increase {
    background-position: top -1533px left 9px;
}

.total-selector__dropdown__field__button:focus {
    color: #a29e94;
}
.total-selector__dropdown__field__button:hover {
    background-color: #51C2B8;
}
.total-selector__dropdown__field__button.total-selector__dropdown__field__button--decrease:hover {
    background-position: top -1609px left 9px;
}
.total-selector__dropdown__field__button.total-selector__dropdown__field__button--increase:hover {
    background-position: top -1583px left 9px;
}

/* Min / max */
.total-selector__dropdown__field__button.total-selector__dropdown__field__button--min,
.total-selector__dropdown__field__button.total-selector__dropdown__field__button--max {
    opacity: 0.5;
    pointer-events: none;
    color: #908b7e;
}

.total-selector__dropdown__field__total {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    padding: 3px 5px;
    width: 50px;
    text-align: center;
    font-size: 1.8rem;
}
.total-selector__dropdown__field__labels p {
    display: block;
    margin-right: 28px;
}
.total-selector__dropdown__field__labels__title {
    font-weight: 500;
    margin: 0;
    font-size: 1.6rem;
    text-align: left;
}
.total-selector__dropdown__field__labels__helper {
    margin: 0;
    font-size: 1.4rem;
}
.field-element--totalselector__fields {
    display: none;
}

/* Done button */
.total-selector__dropdown__close__button-wrap {
    text-align: right;
    padding-top: 10px;
}

@media screen and (max-width: 47.9375em) { /*  767px */

    .field-element--totalselector__dropdown:before {
        content: attr(data-plural);
        border: none;
        text-transform: capitalize;
        border-bottom: 1px solid #e5e5e5;
        padding: 10px 25px;
        text-align: center;
        top: 0;
        height: 43px;
        left: 0;
        right: 0;
        display: block;
        position: absolute;
    }
    .field-element--totalselector__dropdown {
        position: fixed;
        top: 42px;
        left: 0;
        right: 0;
        bottom: 0;
        margin: 0;
        border: none;
        padding-top: 63px;
        transform: translateY(100%);
        transition: transform 300ms ease;
        display: block;
    }

    .total-selector__dropdown__close__button-wrap {
        padding-top: 10px;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        padding: 12px 25px;
        border-top: 1px solid #D8DCE2;
        background-color: #FFF;
    }
    .total-selector__dropdown__close__button {
        width: 100%;
        display: block;
    }

    /* Open */
    .field-element--totalselector.field-element--totalselector--active .field-element--totalselector__dropdown {
        transform: none;
    }

}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .field-element--totalselector__dropdown {
        right: auto;
        margin-top: 2px;
        border-radius: 4px;
    }


    .field-element--totalselector__dropdown:before {
        position: absolute;
        top: -7px;
        left: 14px;
        display: inline-block;
        border-right: 7px solid transparent;
        border-bottom: 7px solid #d1cfc9;
        border-left: 7px solid transparent;
        border-bottom-color: rgba(0, 0, 0, 0.2);
        content: '';
    }
    .field-element--totalselector__dropdown:after {
        position: absolute;
        top: -6px;
        left: 15px;
        display: inline-block;
        border-right: 6px solid transparent;
        border-bottom: 6px solid #fff;
        border-left: 6px solid transparent;
        content: '';
    }

    .total-selector__dropdown__field__labels__title {
        font-size: 1.8rem;
    }
    .total-selector__dropdown__field__labels__helper {
        font-size: 1.5rem;
    }
    .total-selector__dropdown__field {
        margin: 0 0 23px;
    }
}

/* BP Small */
@media only screen and (min-width: 48.063em) { /* 769px */
    /* Don't really need this close button above tablet */
    .total-selector__dropdown__close__button-wrap {
        display: none;
    }
}

/* ---- Loading area ----- */
.loader-wrapper {
    min-height: 200px;
}

/* ---- Location + distance field ---- */
.field-element.field-element--location-distance .location-distance__fields {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
.field-element.field-element--location-distance .location-distance__location {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
}
.field-element.field-element--location-distance .location-distance__location .textbox {
    border-radius: 4px 0 0 4px;
}
.field-element.field-element--location-distance .location-distance__distance {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 110px;
        -ms-flex: 0 0 110px;
            flex: 0 0 110px;
}
.field-element.field-element--location-distance .location-distance__distance .dropdown {
    border-radius: 0 4px 4px 0;
}
.field-element.field-element--location-distance .location-distance__fields:before {
    content: " ";
    width: 1px;
    position: absolute;
    top: 7px;
    bottom: 7px;
    right: 110px;
    background: #908b7e;
    display: block;
}

/* BP Medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element.field-element--location-distance .location-distance__fields:before {
        top: 12px;
        bottom: 12px;
        right: 150px;
    }
    .field-element.field-element--location-distance .location-distance__distance {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 150px;
            -ms-flex: 0 0 150px;
                flex: 0 0 150px;
    }
}


/* ---- Autocomplete ---- */
.ui-autocomplete {
    list-style: none;
    background: #FFFFFF;
    max-height: 400px;
    overflow-y: auto;
    border: 1px solid #CED2DC;
    border-radius: 4px;
    padding: 3px 0;
    margin: 0;
}
.ui-autocomplete .ui-menu-item {
    padding: 5px 11px;
    cursor: pointer;
}
.ui-autocomplete .ui-menu-item.ui-state-focus {
    padding: 5px 11px;
    background: #358AAB;
    color: #FFF;
}

/* ---- Google Address autocomplete ---- */
.pac-container {
    background: #fff;
    padding: 10px 15px;
    margin-top: 2px;
    border-radius: 4px;
    border: 1px solid #d1cfc9;
    z-index: 800;
    overflow: visible !important;
    font-family: inherit;
}
.pac-container:before {
    position: absolute;
    top: -7px;
    left: 14px;
    display: inline-block;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #d1cfc9;
    border-left: 7px solid transparent;
    border-bottom-color: rgba(0, 0, 0, 0.2);
    content: '';
}
.pac-item:first-child:before {
    position: absolute;
    top: -6px;
    left: 15px;
    display: inline-block;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    border-left: 6px solid transparent;
    content: '';
    background: none;
    height: auto;
    text-align: left;
    padding: 0;
}
.pac-container:after {
    content: "";
    padding: 1px 1px 1px 0;
    height: 16px;
    text-align: right;
    display: block;
    background-image: url(https://maps.gstatic.com/mapfiles/api-3/images/powered-by-google-on-white3.png);
    background-position: right;
    background-repeat: no-repeat;
    background-size: 120px 14px;
}
.pac-item {
    font-size: 1.5rem;
    padding: 6px;
    line-height: 1.3;
    color: #908c83;
    border-top: 1px solid #e6e6e6;
    cursor: pointer;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.pac-item:first-child {
    border-top: none;
}
.pac-item:hover {
    background-color: #efefea;
}
.pac-item-query {
    font-size: 1.7rem;
    padding-right: 6px;
    color: #404041;
}
.pac-icon {
    background: none !important;
    font-size: 2.6rem;
    color: #6faadc;
    width: 17px;
    height: 21px;
    margin: 0 9px 0 0;
    position: relative;
}
.pac-icon:before {
    content: "\e914";
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    position: absolute;
    top: -2px;
    left: -5px;
}
.pac-matched {
    font-weight: bold;
}

/* ---- Lightweight elements ---- */
.field-element--lightweight {
    margin: 0;
}


/* ---- TinyMCE tweaks ---- */
.mce-panel {
    border-color: #CED2DC !important;
}
.mce-toolbar-grp,
.mce-flow-layout {
    background-color: #EAECF1 !important;
}
.mce-tinymce{
    border-radius: 5px !important;
    overflow: hidden !important;
}
.mce-btn {
    border: 1px solid #EAECF1 !important;
    background-color: #EAECF1 !important;
}
.mce-btn:hover,
.mce-btn:focus{
    color: #333;
    background-color: #DDE0E6 !important;
    border-color: #C6CAD2 !important;
}
.mce-btn.mce-active,
.mce-btn.mce-active:hover{
    background-color: #CED2DC !important;
    border-color: #B5B8C1 !important;
}
.mce-btn:active{
    background-color:#e0e0e0 !important;
    border-color: #ccc !important;
}
.mce-menu-item:hover, .mce-menu-item.mce-selected, .mce-menu-item:focus {
    background-color: #358AAB !important;
    color: #FFF !important;
}


/* ---- Submit Bar ---- */
.submit-bar {
    text-align: right;
    margin: 15px 0;
}

.sidebar .submit-bar {
    padding: 10px 0;
}

.submit-bar a,
.submit-bar .button {
    margin-right: 20px;
    margin-bottom: 12px;
    display: inline-block;
}
.submit-bar a:last-child,
.submit-bar .button:last-child {
    margin-right: 0;
}

/* ---- Search Form ---- */
.site-search-form {
    margin: 0 0 40px;
}
.search-result {
    border-top: 1px solid #ced2dc;
    margin: 20px 0;
    padding: 20px 0;
}
.search-result p:last-child {
    margin-bottom: 0;
}

/* ---- Search form for Favourites ---- */
.show-search, .field-element--show-search,
.field-element--show-search .field-input, .field-element--show-search .field-label {
    display: flex;
}
.field-element--show-search .field-input, .field-element--show-search .field-label {
    border-left: 1px solid #ececec;
}
.show-favourites {
    display: none!important;
}
body.favourites-search .show-search .field-input, body.favourites-search .field-element--show-search  {
    border: none;
}
body.favourites-search .show-search,
body.favourites-search .show-search .field-input, body.favourites-search .field-element--show-search .field-input,
body.favourites-search .show-search .field-label, body.favourites-search .field-element--show-search .field-label  {
    display: none;
}
body.favourites-search .show-favourites {
    display: flex!important;
}
body.favourites-search .mobile-search__item.show-favourites {
    width: 100%;
}

body.favourites-search .mobile-header__input.show-favourites h3 {
    margin: auto;
}

/* ---- Search pagination ---- */
.search-paginate {
    padding: 10px 0;
    text-align: center;
}
.search-paginate .page-prev {
    margin: 0 8px 0 0;
}
.search-paginate .page {
    padding: 2px 9px;
    margin: 0 3px;
    background: #eee;
    border: 1px #e85505 solid;
    text-decoration: none;
}
.search-paginate .page.on {
    color: #000;
    border-color: #000;
}
.search-paginate .page-next {
    margin: 0 0 0 8px;
}


/* ---- Captcha ---- */
.captcha {
    background-color: #f6f6f6;
    padding: 10px;
    width: 100%;
    border: 1px solid #D7D7D7;
}

.captcha .captcha-info, .captcha .info {
    float: right;
    padding-bottom: 8px;
}
.captcha .captcha-info, .captcha .info a {
    text-decoration: none;
}
.captcha .captcha-info .captcha-icon {
    width: 16px;
    height: 16px;
    margin-bottom: 16px;
}

.captcha .captcha-img {
    width: 200px;
    margin-bottom: 10px;
}

.captcha .captcha-input {
    width: 200px;
}

/* ------------------------------------------------------
**** Tables
------------------------------------------------------ */

/* ---- Content tables & Form section tables & Checkbox list tables (shared styles) ---- */
.table--content-standard {
    width: 100%;
    margin: 2rem 0 3rem;
    border-collapse: collapse;
    color: #404041;
}
.table--content-standard caption {
    text-align: left;
    padding-bottom: 13px;
}
.table--content-standard th {
    font-weight: bold;
    background-color: #efefea;
    font-size: 1.7rem;
}
.table--content-standard td {
    background-color: #FFF;
}
.table--content-standard th,
.table--content-standard td {
    border: 1px solid #D7D7D7;
    padding: 12px 15px;
    text-align: left;
}


.bg-grey .table--content-standard th {
    background-color: #FFF;
}
.bg-grey .table--content-standard td {
    background-color: #efefea;
}


/* ---- Content tables ---- */

/* Small */
.table--content-standard.table--content-small {
    font-size: 1.3rem;
}
.table--content-standard.table--content-small th,
.table--content-standard.table--content-small td {
    padding: 5px 10px;
}
.table--content-standard.table--content-small th {
    font-size: 1.4rem;
}

/* ---- Total table ---- */
.total-table {
    width: 100%;
    border-collapse: collapse;
    margin: 8px 0 14px;
    font-size: 1.5rem;
}
.total-table tr {
    border-bottom: 1px solid #dcd9d1;
}
.total-table tr:last-child {
    border-bottom: none;
}
.total-table__membership-discount {
    color: #439230;
}
.total-table--border-top tr {
    border-top: 1px solid #dcd9d1;
    border-bottom: 1px solid #dcd9d1;
}
.total-table th,
.total-table td {
    padding: 6px 0;
    vertical-align: top;
}
.total-table th {
    text-align: left;
    font-weight: normal;
}
.total-table td {
    text-align: right;
}
.total-table__total-row th,
.total-table__total-row td {
    font-weight: bold;
}
.total-table__total-row__sub-text {
    font-weight: normal;
    color: #666;
    font-size: smaller;
    white-space: nowrap;
}

/* BP Extra small */
@media only screen and (min-width: 37.5em) { /* 600px */
    .total-table {
        margin: 8px 0 20px;
    }
    .total-table tr:last-child {
        border-bottom: 1px solid #dcd9d1;
    }
    .total-table th,
    .total-table td {
        padding: 8px 0;
    }
}

/* BP Medium */
@media only screen and (min-width: 62em) { /* 992px */
    .total-table {
        font-size: 1.6rem;
        margin-top: 11px;
        margin-bottom: 30px;
    }
}

/* BP Large */
@media only screen and (min-width: 80em) { /* 1280px */
    .total-table {
        font-size: 1.8rem;
        margin-bottom: 40px;
    }
}

/* ---- Form section tables ---- */
.form-section {
    text-align: left;
    margin: 20px 0 30px;
}
.form-section .s {
    font-weight: normal;
    font-size: 1.3rem;
}

.form-section .textbox,
.form-section select {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 24px;
}

.form-section,
.form-section > tbody,
.form-section > tbody > tr,
.form-section > tbody > tr > th,
.form-section > tbody > tr > td {
    display: block;
    width: 100%;
}
.form-section > tbody > tr > td,
.form-section > tbody > tr > th {
    padding: 0;
}
.form-section > tbody > tr {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
}
.form-section > tbody > tr > th:first-child {
    -webkit-box-ordinal-group: 1;
    -webkit-order: 0;
        -ms-flex-order: 0;
            order: 0;
    text-align: left;
}
.form-section label {
    display: block;
}
.form-section > tbody > tr > th {
    margin-bottom: 0;
}
.form-section > tbody > tr > td {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
}
.form-section > tbody > tr > td.field-info {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    text-transform: uppercase;
    font-size: 1.4rem;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
}
.form-section > tbody > tr > td.field-info .field-error {
    margin-top: 5px;
    margin-bottom: 5px;
}

/* Checkbox/radio list */
.checkbox-list,
.radio-list {
    width: 100%;
    margin: 20px 0;
}
.checkbox-list td.check,
.radio-list td.check {
    padding: 0;
}

/* Field errors */
.field-error {
    display: block;
    margin: 0 0 25px;
    background: #E04D4D;
    color: #FFF;
    border-left: 4px solid #B72323;
    padding: 10px 20px;
}


/* ------------------------------------------------------
**** Tables
------------------------------------------------------ */

table {
}

th,
td {
}

th,
thead td {
}

/* ---- Content tables ---- */

.table--content-standard {
    border-collapse: collapse;
    border-spacing: 0px;
    border: 1px solid #d7d7d7;
    width: 100%;
    margin: 2rem 0;
}

.table--content-standard caption {
    text-align: left;
    padding-bottom: 13px;
}

.table--content-standard th,
.table--content-standard thead td {
    padding: 4px 10px;
    border: 1px solid #d7d7d7;
    font-weight: bold;
    background-color: #F0F0F0;
    font-size: 1.4rem;
}

.table--content-standard th,
.table--content-standard td {
    border: 1px solid #d7d7d7;
    padding: 4px 10px;
    text-align: left;
}

.table--content-standard td {
    background-color: #ffffff;
}


@media screen and (min-width: 23.75em) {/*  380px */

    .table--content-standard th,
    .table--content-standard thead td {
        padding: 4px 10px;
        font-size: 1.7rem;
    }

    .table--content-standard th,
    .table--content-standard td {
        padding: 12px 15px;
    }
}

/* Small */
.table--content-standard-small {
    font-size: 1.3rem;
}

.table--content-standard-small th,
.table--content-standard-small td {
    padding: 4px 10px;
}

.table--content-standard-small th,
.table--content-standard-small thead td {
    font-size: 1.4rem;
}

/* ---- Responsive table ---- */
table.responsive {
    overflow: auto;
    overflow-y: hidden;
    overflow-x: auto;
    display: block;
}

/* ---- No Styles Table ---- */
.table__no-styles {
    border-collapse: separate !important;
    border: none !important;
    background: none !important;
    min-width: 0 !important;
}

.table__no-styles th,
.table__no-styles thead td,
.table__no-styles td {
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
}



/* ---- Form section tables ---- */
.form-section {
    text-align: left;
    margin: 20px 0 30px;
}
.form-section .s {
    font-weight: normal;
    font-size: 1.3rem;
}

.form-section .textbox,
.form-section select {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 24px;
}

.form-section,
.form-section > tbody,
.form-section > tbody > tr,
.form-section > tbody > tr > th,
.form-section > tbody > tr > td {
    display: block;
    width: 100%;
}
.form-section > tbody > tr > td,
.form-section > tbody > tr > th {
    padding: 0;
}
.form-section > tbody > tr {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
}
.form-section > tbody > tr > th:first-child {
    -webkit-box-ordinal-group: 1;
    -webkit-order: 0;
        -ms-flex-order: 0;
            order: 0;
    text-align: left;
}
.form-section label {
    display: block;
}
.form-section > tbody > tr > th {
    margin-bottom: 0;
}
.form-section > tbody > tr > td {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
}
.form-section > tbody > tr > td.field-info {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    text-transform: uppercase;
    font-size: 1.4rem;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
}
.form-section > tbody > tr > td.field-info .field-error {
    margin-top: 5px;
    margin-bottom: 5px;
}

/* Checkbox/radio list */
.checkbox-list,
.radio-list {
    width: 100%;
    margin: 20px 0;
}
.checkbox-list td.check,
.radio-list td.check {
    padding: 0;
}

/* Field errors */
.field-error {
    display: block;
    margin: 0 0 25px;
    background: #E04D4D;
    color: #FFF;
    border-left: 4px solid #B72323;
    padding: 10px 20px;
}



/* ------------------------------------------------------
**** Helper classes
------------------------------------------------------ */

/* ---- Clearfix ---- */
.clear {
    height: 0;
    clear: both;
    display: block;
}

.-clearfix:before,
.-clearfix:after {
    content: " ";
    display: table;
}

/* Stop cleafix interfering with flexbox */
.flexbox .-clearfix:before,
.flexbox .-clearfix:after {
    width: 0;
}

.-clearfix:after {
    clear: both;
}


/* ---- Hiding classes ---- */
.-ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
}

.-ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.-hidden {
    display: none !important;
    visibility: hidden;
}

.-vis-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.-vis-hidden.focusable:active,
.-vis-hidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.-invisible {
    visibility: hidden;
}

/* ---- Pseudo elements ---- */

/* Angle Brackets */
.-r-arrow-after:after {
    content: "\00a0\003e";
}
.-r-arrow-before:before {
    content: "\003e\00a0";
}
.-l-arrow-after:after {
    content: "\00a0\003c";
}
.-l-arrow-before:before {
    content: "\003c\00a0";
}

.-d-arrow-after-white:after,
.-d-arrow-after-grey:after {
    content: "\00a0\00a0\00a0";
    background: url(../images/icon_select-arrow-down.svg) no-repeat center right;
    background-size: 100% auto;
    margin-left: 6px;
    transition: transform 200ms ease-in-out;
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    display: inline-block;
}
.-d-arrow-after-grey:after {
    opacity: .5;
}


a.-d-arrow-after-white:hover:after,
a.-d-arrow-after-grey:hover:after {
    -moz-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
}



/* Ellipsis */
.ellipsis-2:after {
    content: "..";
}
.ellipsis-3:after {
    content: "...";
}

/* ---- Floats and positioning ---- */

.left,
.center,
.right {
    margin: 30px auto;
    display: block;
}


/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    .left {
        margin: 0 30px 30px 0;
        float: left;
    }

    .right {
        margin: 0 0 30px 30px;
        float: right;
    }
}

/* ------------------------------------------------------
**** Template Layout
------------------------------------------------------ */

* {
    margin: 0;
}

html,
body {
    background: #FFF;
    height: 100%;
}

#wrap {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    min-height: 100%;
}


/* ---- Container ---- */
.container {
    width: 88%;
    max-width: 1140px;
    margin: 0 auto;
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .container {
        width: 92%;
    }
}

.container--padded {

}

/* ---- Simple content alignment classes ---- */

/*

For use with flexgrid or when you don't need anything else
The breakpoints align with flexgrid breakpoints

*/


.col--right-align {
    text-align: right;
}

.col--left-align {
    text-align: left;
}

.col--center-align {
    text-align: center;
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    .col-smr--right-align {
        text-align: right;
    }
    .col-smr--left-align {
        text-align: left;
    }
    .col-smr--center-align {
        text-align: center;
    }
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .col-sm--right-align {
        text-align: right;
    }
    .col-sm--left-align {
        text-align: left;
    }
    .col-sm--center-align {
        text-align: center;
    }
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .col-md--right-align {
        text-align: right;
    }
    .col-md--left-align {
        text-align: left;
    }
    .col-md--center-align {
        text-align: center;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .col-lg--right-align {
        text-align: right;
    }
    .col-lg--left-align {
        text-align: left;
    }
    .col-lg--center-align {
        text-align: center;
    }
}




/* Kinda hacky resonsive trick so that every breakpoint had the right number of items */

@media screen and (max-width: 47.9375em) {/*  767px */
    .row--respond-oneSm-fourSmr-threeMd > div:nth-child(3),
    .row--respond-oneSm-fourSmr-threeMd > div:nth-child(4) {
        display: none;
    }
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .row--respond-oneSm-fourSmr-threeMd > div:nth-child(4) {
        display: none;
    }
}



/* ---- Sections ---- */
.section {
    padding-top: 20px;
    padding-bottom: 20px;
}

/* Small */
.section-small {
    padding-top: 15px;
    padding-bottom: 15px;
}

/* Large */
.section-large {
    padding-top: 40px;
    padding-bottom: 40px;
}

.section-padded-full-width {
    padding-left: 20px;
    padding-right: 20px;
}

.section-bar {
    border-top: 2px solid #bec1c6;
    border-bottom: 2px solid #bec1c6;
}

@media screen and (min-width: 23.75em) { /* 380px */
    .section {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .section-small {
        padding-top: 25px;
        padding-bottom: 25px;
    }
    .js--alt-date-wrap.section-small {
        padding-top: 25px;
        padding-bottom: 15px;
    }
    .section-large {
        padding-top: 45px;
        padding-bottom: 45px;
    }
    .section-padded-full-width {
        padding-left: 25px;
        padding-right: 25px;
    }
}
/* Max BP small */
@media screen and (max-width: 47.938em) { /* 767px */
    .section-bar .container {
        width: auto;
    }
}
/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .section {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .section-small {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .js--alt-date-wrap.section-small {
        padding-top: 25px;
        padding-bottom: 15px;
    }
    .section-large {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .section-padded-full-width {
        padding-left: 35px;
        padding-right: 35px;
    }
}
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .section-padded-full-width {
        padding-left: 50px;
        padding-right: 50px;
    }
}

.section-seperator {
    border-bottom: 1px solid #adb1b7;
}
    .search-refine .section-seperator {
        padding-bottom: 15px;
    }
    .search-refine .section-padded-full-width.section-seperator {
        padding-bottom: 30px;
    }

/* ---- Blocks ---- */

/* like sections, but using margin instead of padding */

.block {
    margin-top: 20px;
    margin-bottom: 20px;
}

.block-mb {
    margin-bottom: 20px;
}

/* Small */
.block-small {
    margin-top: 15px;
    margin-bottom: 15px;
}

.block-mb-small {
    margin-bottom: 15px;
}

/* Large */
.block-large {
    margin-top: 40px;
    margin-bottom: 40px;
}

.block-mb-large {
    margin-bottom: 40px;
}

@media screen and (min-width: 23.75em) { /* 380px */

    .block {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .block-mb {
        margin-bottom: 30px;
    }

    .block-small {
        margin-top: 25px;
        margin-bottom: 25px;
    }

    .block-mb-small {
        margin-bottom: 25px;
    }

    .block-large {
        margin-top: 45px;
        margin-bottom: 45px;
    }

    .block-mb-large {
        margin-bottom: 45px;
    }
}
/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .block {
        margin-top: 60px;
        margin-bottom: 60px;
    }

    .block-mb {
        margin-bottom: 60px;
    }

    .block-small {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .block-mb-small {
        margin-bottom: 30px;
    }

    .block-large {
        margin-top: 80px;
        margin-bottom: 80px;
    }

    .block-mb-large {
        margin-bottom: 80px;
    }
}


/* ---- Content Box ---- */

.box {
    padding: 20px 15px;
}

@media screen and (min-width: 23.75em) { /* 380px */
    .box {
        padding: 20px;
    }
}
/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .box {
        padding: 30px;
    }
}

.box > *:last-child {
    margin-bottom: 0;
}



/* ---- Mobile Header ---- */
.section-mobile-header {
    padding-top: 4px;
    padding-bottom: 4px;
    border-bottom: 1px solid #D8DCE2;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 251;
    height: 42px;
}
.mobile-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}


/* Logo */
.mobile-header__logo {
    margin-right: 15px;
}
.mobile-header__logo a {
    display: block;
}
.mobile-header__logo a {
    max-width: 141px;
    max-height: 34px;
}
.section-mobile-header--search .mobile-header__logo a {
    max-width: 27px;
    max-height: 32px;
}


/* Field element */
.mobile-header__input {
    flex: 1 1 auto;
}
.mobile-header__input .field-element {
    margin: 0;
}
.mobile-header__input .field-element .field-input .dropdown {
    padding-left: 10px;
    border-width: 1px;
}


/* Buttons */
.mobile-header__icons {
    display: flex;
    margin-left: 3px;
}
.mobile-header__icon {
    margin-left: 8px;
}
.mobile-header__icon a.mobile-header__icon-icon {
    display: block;
    background-repeat: no-repeat;
    background-position: center center;
    width: 28px;
    height: 28px;
    position: relative;
    cursor: pointer;
}
.mobile-header__icon.mobile-header__icon--phone a {
    background-image: url(../images/icon_phone-grey.svg);
}
.mobile-header__icon.mobile-header__icon--login > a {
    background-image: url(../images/icon_login_mobile.png);
    background-repeat: no-repeat;
    background-position: center center;
    border: none;
}
.mobile-header__icon.mobile-header__icon--favourites a {
    background-image: url(../images/icon_my-favourites-grey.svg);
}
.mobile-header__icon--favourites__count {
    position: absolute;
    top: 2px;
    left: -5px;
    width: 15px;
    height: 15px;
    overflow: hidden;
    text-align: center;
    color: #ffffff;
    display: block;
    font-weight: bold;
    background: #1DBD5D;
    font-size: 1rem;
    line-height: 1.375;
    padding: 1px 2px 0;
    border-radius: 300px;
    transition: all 220ms ease-in-out;
}
.mobile-header__icons .login-options__list {
    z-index: 999;
    position: fixed;
    top: 42px;
}
.mobile-header__icon a:hover .mobile-header__icon--favourites__count {
    background: #15ab51;
}


/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .section-mobile-header {
        display: none;
    }
}

/* ---- Mobile search ---- */
.section-mobile-search {
    position: fixed;
    top: 42px;
    left: 0;
    right: 0;
    z-index: 250;
    padding-top: 8px;
    padding-bottom: 8px;
    height: 46px;
}
.mobile-search__inner {
    display: flex;
    margin-left: -4px;
    margin-right: -4px;
}
.mobile-search__item > .field-element {
    margin: 0;
}
.mobile-search__item {
    flex: 0 1 auto;
    padding-left: 4px;
    padding-right: 4px;
}



/* Overlay */
.mobile-search-overlay {
    position: fixed;
    top: 42px;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translateY(100%);
    transition: transform 300ms ease;
    z-index: 1;
}

/* Open */
.mobile-search-filters .mobile-search-overlay {
    transform: none;
}

.mobile-search-filters,
.mobile-search-filters body {
    overflow: hidden;
}

.mobile-search-overlay__header,
.mobile-search-overlay__update {
    position: absolute;
    left: 0;
    right: 0;
    background: #FFF;
    z-index: 300;
}
     #prop-search-refine-form .mobile-search-overlay__header {
         display: none;
     }
.mobile-search-overlay__header {
    border-bottom: 1px solid #e5e5e5;
    padding: 10px 93px;
    text-align: center;
    top: 0;
    height: 43px;
}
.mobile-search-overlay__header__title {
    font-size: 1.6rem;
    margin: 0;
}
.mobile-search-overlay__close {
    -webkit-appearance: none;
    border: none;
    background: #FFF url(../images/icon_close.svg) no-repeat center center;
    outline: none;
    border-radius: 50%;
    width: 34px;
    height: 34px;
    z-index: 102;
    cursor: pointer;
    position: absolute;
    top: 4px;
    left: 17px;
}
.mobile-search-overlay__close:hover {
    background-color: #f0f0f3;
}
.mobile-search-overlay__reset-button {
    -webkit-appearance: none;
    border: none;
    background: transparent;
    outline: none;
    z-index: 102;
    cursor: pointer;
    position: absolute;
    top: 12px;
    right: 25px;
    font-size: 1.5rem;
    padding: 0;
    color: #51c2b8;
}
.mobile-search-overlay__reset-button:hover {
    color: #199384;
}
.mobile-search-overlay__content {
    padding: 63px 25px 70px;
    overflow-y: scroll;
    height: 100%;
    -webkit-overflow-scrolling: touch;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #FFF;
}
     .mobile-search-overlay__content.mobile-search-overlay__content__map {
         padding: 43px 0px 58px;
     }
.mobile-search-overlay__content__section {
    border-bottom: 1px solid #e5e5e5;
    margin-bottom: 16px;
    padding-bottom: 16px;
}
.mobile-search-overlay__content__section:last-child {
    border-bottom: none;
    margin-bottom: 100px;
    padding-bottom: 0;
}
.mobile-search-overlay__content__section > :last-child {
    margin-bottom: 0;
}
.mobile-search-overlay__content h2 {
    color: inherit;
    font-size: 1.6rem;
    margin: 0 0 8px;
}
.mobile-search-overlay__update {
    bottom: 0;
    padding: 12px 25px;
    border-top: 1px solid #D8DCE2;
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .section-mobile-search,
    .mobile-search-form {
        display: none;
    }
    .mobile-search-overlay,
    .mobile-search-filters .mobile-search-overlay {
        display: none;
    }
}

/* ---- Header ---- */

.section-top-header {
    position: relative;
    display: none;
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .section-top-header {
        display: block;
    }
}

.button-bar {
    list-style: none;
    margin: 0;
    padding: 0;
    height: 45px;
    overflow: hidden;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
            justify-content: flex-end;
    -ms-flex-line-pack: end;
        align-content: flex-end;
}

.button-bar--right {

}

.button-bar__item {
    display: block;
    float: left;
    height: 45px;
}

.button-bar__btn {
    display: inline-block;
    height: 45px;
    overflow: hidden;
    padding: 5px 20px;
    border-right: 1px solid #474F59;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
            align-items: center;

    color: rgba(255,255,255,.5);
    text-decoration: none;
}

.button-bar__btn:hover,
.button-bar__btn:focus,
.button-bar__btn:active {
    color: rgba(255,255,255,1);
    text-decoration: none;
}


.icon-social {
    width: 45px;
    height: 45px;
    margin: 0 4px;
    text-align: center;
    display: block;
    overflow: hidden;
    text-decoration: none !important;
    background: no-repeat center center;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

.icon-social svg path {
    fill: rgba(255,255,255,.5);
    transition: fill 220ms ease-in-out;
}

.icon-social:hover svg path,
.icon-social:focus svg path,
.icon-social:active svg path {
    fill: rgba(255,255,255,1);
}


.icon-favourites {
    background: url(../images/icon_my-favourites.svg) no-repeat left center;
    padding-left: 30px;
    position: relative;
    overflow: visible;
}

.icon_favourites__count {
    position: absolute;
    top: 5px;
    left: -10px;
    width: 15px;
    height: 15px;
    overflow: hidden;
    text-align: center;
    color: #ffffff;
    display: block;
    font-weight: bold;
    background: #1DBD5D;
    font-size: 1rem;
    line-height: 1.375;
    padding: 1px 2px 0;
    border-radius: 300px;
    transition: all 220ms ease-in-out;
}

.icon-favourites:hover .icon_favourites__count {
    background: #fff;
    color: #1DBD5D;
}

@media screen and (max-width: 47.9375em) {/*  768px */
    .button-bar__item--social {
        display: none;
    }
}

/* subnav items */



.button-bar__item:hover a.-d-arrow-after-grey::after {
    -moz-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

.button-bar__item__child-list {
    display: none;
    position: absolute;
    z-index: 100;
    left: 0;
    right: 0;
    background: #989ea5;
    margin: 0;
    list-style: none;
    padding: 8px 0 10px;
    -webkit-box-shadow: 0 10px 10px -4px rgba(0,0,0,.10);
    box-shadow: 0 10px 10px -4px rgba(0,0,0,.10);
}

.button-bar__item__child-list__link {
    display: block;
    padding: 10px 20px;
    color: #313c4a;
    text-decoration: none;
}

.button-bar__item__child-list__link:hover,
.button-bar__item__child-list__link:focus,
.button-bar__item__child-list__link:active {
    color: #ffffff;
    background: #878e96;
}

/* BP Small */
@media screen and (min-width: 48em) { /* 768px */
    .button-bar__item__child-list {
        width: 200px;
        padding-top: 0;
        padding-bottom: 0;
        left: auto;
        right: auto;
        text-align: left;
        -webkit-box-shadow: 0 15px 25px -10px rgba(0,0,0,.35);
        box-shadow: 0 15px 25px -10px rgba(0,0,0,.35);
    }
}


/* ---- Nav ---- */
/* Some elements are reusable eg header and footer navs */

.phone-cta {
    font-weight: 300;
    font-family: 'Lato', sans-serif;
    text-decoration: none;
    font-size: 2rem;
    line-height: 1.1;
    padding-left: 32px;
    color: inherit !important;
    /* icon_phone.svg */
    background: url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224px%22%20height%3D%2224px%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23313C4A%22%20fill-rule%3D%22evenodd%22%20d%3D%22M523.333333%2C9%20C522.596%2C9%20522%2C9.596%20522%2C10.3333333%20C522%2C22.8506667%20532.149333%2C33%20544.666667%2C33%20C545.404%2C33%20546%2C32.404%20546%2C31.6666667%20L546%2C27%20C546%2C26.264%20545.404%2C25.668%20544.666667%2C25.668%20C543.002667%2C25.668%20541.402667%2C25.4%20539.904%2C24.9093333%20C539.770667%2C24.8666667%20539.630667%2C24.8453333%20539.492%2C24.8453333%20C539.152%2C24.8453333%20538.810667%2C24.976%20538.550667%2C25.236%20L535.616%2C28.1733333%20C531.84%2C26.2533333%20528.753333%2C23.1666667%20526.830667%2C19.392%20L529.764%2C16.4493333%20C530.130667%2C16.084%20530.238667%2C15.5573333%20530.090667%2C15.096%20C529.6%2C13.596%20529.332%2C11.996%20529.332%2C10.3333333%20C529.332%2C9.596%20528.736%2C9%20528%2C9%20L523.333333%2C9%20Z%22%20transform%3D%22translate%28-522%20-9%29%22%2F%3E%3C%2Fsvg%3E) no-repeat left 61%;

    margin-bottom: 12px;
    display: inline-block;
    background-size: 18px auto;
}

.phone-cta--reverse {
    color: #fff !important;
    border: 0px !important;
    opacity: 1 !important;
    /* icon_phone.svg with white fill */
    background-image: url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224px%22%20height%3D%2224px%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23FFFFFF%22%20fill-rule%3D%22evenodd%22%20d%3D%22M523.333333%2C9%20C522.596%2C9%20522%2C9.596%20522%2C10.3333333%20C522%2C22.8506667%20532.149333%2C33%20544.666667%2C33%20C545.404%2C33%20546%2C32.404%20546%2C31.6666667%20L546%2C27%20C546%2C26.264%20545.404%2C25.668%20544.666667%2C25.668%20C543.002667%2C25.668%20541.402667%2C25.4%20539.904%2C24.9093333%20C539.770667%2C24.8666667%20539.630667%2C24.8453333%20539.492%2C24.8453333%20C539.152%2C24.8453333%20538.810667%2C24.976%20538.550667%2C25.236%20L535.616%2C28.1733333%20C531.84%2C26.2533333%20528.753333%2C23.1666667%20526.830667%2C19.392%20L529.764%2C16.4493333%20C530.130667%2C16.084%20530.238667%2C15.5573333%20530.090667%2C15.096%20C529.6%2C13.596%20529.332%2C11.996%20529.332%2C10.3333333%20C529.332%2C9.596%20528.736%2C9%20528%2C9%20L523.333333%2C9%20Z%22%20transform%3D%22translate%28-522%20-9%29%22%2F%3E%3C%2Fsvg%3E);
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .phone-cta {
        font-size: 3.6rem;
        background-size: auto auto;
    }
}


.section-main-header {
    padding-top: 20px;
    padding-bottom: 15px;
    display: none;
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .section-main-header {
        display: block;
    }
}

.site-logo {
    margin-top: 5px;
}

.site-nav {
    margin-bottom: 10px;
}

.site-nav__item {
    border-left: 1px solid rgba(49,60,74,1);
    margin-right: -3px;
}

.site-nav__item:first-child {
    border-left: 0px;
}

.site-nav__item__link {
    color: #313c4a;
    text-decoration: none;
    border-bottom: 1px solid rgba(49,60,74,0);
}


.site-nav__item__link:hover,
.site-nav__item__link:focus,
.site-nav__item__link:active {
    color: #313c4a;
    border-bottom: 1px solid rgba(49,60,74,1);
}
.header__site-nav {
    position: relative;
}
#header__quick-search {
    position:absolute;
    top:84px;
    right:0;
    border:1px solid #313C4A;
    padding-right:70px;
    display:none;
    z-index: 99;
}
#header__quick-search .field-element--query-str input {
    width: 400px;
}
#header__quick-search button {
    position:absolute;
    top:0px;
    right:0px;
    border-radius:0px;
}

/* Max widths */

@media screen and (max-width: 47.9375em) { /* 767px */
    .site-nav {
        display: none;
    }

    .phone-cta--header {
        display: inline-block;
        padding: 9px 20px 9px 45px;
        background-color: #eeeeee;
        background-position: 15px 52%;
        margin-bottom: 0px;
        font-size: 2.2rem;
        margin-left: 10px;
        margin-right: 10px;
        border-radius: 4px;
    }
}

@media screen and (max-width: 34.3125em) {/*  549px */
    .site-logo {
        max-width: 65vw;
    }
    .phone-cta--header {
        position: relative;
        top: 15px;
        border-radius: 4px 4px 0 0;
    }
}


/* min widths */

@media screen and (min-width: 48em) {/*  768px */
    .site-logo {
        margin-top: 5px;
        margin-bottom: 1px;
    }
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .site-logo {
        margin-top: 15px;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .site-logo {
        margin-top: 5px;
    }
}

/* ---- Hero Search ---- */

/* reuseable styles */

span.search-refine-count {
    color: #51C2B8;
}

.field-element--hero.field-element--button {
    text-align: right;
}


.hero-search .select2-container--default.select2-container--focus .select2-selection--multiple {
    border: none!important;
    border-radius: 0;
    height: 64px;
    overflow-y: auto;
}
    .hero-search .select2-container--default .select2-selection--multiple {
        border: none!important;
        max-height: 64px;
    }
    .hero-search .select2-container {
        max-width: 500px;
    }

@media screen and (min-width: 48em) { /*  768px */
    .field-element--hero.field-element--button .button {
        display: block;
        padding-left: 25px;
        padding-right: 25px;
        width: 100%;
    }
    .hero-search {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
                flex-flow: row nowrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: stretch;
    }

    .field-element--hero.field-element--button .button {
        border-radius: 0 50px 50px 0;
    }

    /* flex fallback */
    .hero-search .field-element--hero {
        float: left;
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }
    .hero-search .field-element.field-element--results-search--promo,
    .hero-search .field-element.field-element--results-search--guests,
    .hero-search .field-element.field-element--results-search--button {
        flex-grow: 0;
    }
    .hero-search .field-element.field-element--results-search--guests {
        flex-basis: 135px;
    }
    .hero-search .field-element.field-element--results-search--promo {
        flex-basis: 140px;
    }
    .hero-search .field-element--button .button {
        border-radius: 0;
    }
    .field-element--results-search--town .field-input {
        width: 100%;
    }
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .field-element--hero.field-element--button .button {
        padding-left: 45px;
        padding-right: 45px;
    }
    .hero-search .field-element.field-element--results-search--guests {
        flex-basis: 170px;
    }
    .hero-search .field-element.field-element--results-search--promo {
        flex-basis: 160px;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .hero-search .field-element.field-element--results-search--guests {
        flex-basis: 200px;
    }
    .hero-search .field-element.field-element--results-search--promo {
        flex-basis: 230px;
    }
}

/* BP xlarge */
@media only screen and (min-width: 87.5em) {/* 1400px */

}



/* ---- Hero Search Banner ---- */

.hero-search-banner {
    text-align: center;
    padding: 30px 0 30px;
    min-height: 80vh;
    position: relative;
    margin-bottom: 16px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
}

@media screen and (min-height: 37.5em) and (max-width: 79.9375em) {/*  768px   1279px */
    .hero-search-banner {
        min-height: 50vh;
    }
}

.hero-slider__images:before {
    content: '\00a0';
    background: rgba(0,0,0,.2);
}

/* Trying to save bandwidth for mobile which slick doesn't load */
.hero-slider:not(.slick-slider) .hero-slider__images:nth-child(2),
.hero-slider:not(.slick-slider) .hero-slider__images:nth-child(3) {
    display: none;
}
.hero-slider,
.hero-slider.slick-slider,
.hero-slider .slick-track,
.hero-slider .slick-list,
.hero-slider__images,
.hero-slider__images:before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

.hero-slider__images {
    background: no-repeat center center;
    background-size: cover;
    z-index: 1;
}

.hero-search-banner__search {
    position: relative;
    z-index: 4;
}

.hero-search-banner__search__heading {
    font-weight: bold;
    font-family: 'Avenir Next W01', Helvetica, Arial, sans-serif;
    color: #fff;
    font-size: 3.4rem;
    padding-bottom: 0;
    border: none;
}

.hero-search-banner__search__heading span {
    display: block;
    font-size: 2.2rem;
    font-family: 'Permanent Marker', cursive;
}

.hero-search-banner__search__heading span:after,
.hero-search-banner__search__heading span:before {
    content: '\00a0';
    display: inline-block;
    width: 35px;
    background: url(../images/deco_heading.svg) no-repeat center center;
    background-size: 25px 6px;
}


/* BP Smaller */
@media screen and (min-width: 30em) { /* 480px */

    .hero-search-banner {
        padding-top: 30px;
        padding-bottom: 150px;
    }
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */

    .hero-search-banner__search__heading {
        font-size: 6rem;
    }
}

@media screen and (min-width: 48em) {/*  768px */

    .hero-search-banner__search__heading span {
        font-size: 3.2rem;
    }

    .hero-search-banner__search__heading span:after,
    .hero-search-banner__search__heading span:before {
        width: 50px;
        background-size: 35px 8px;
    }

    .hero-search-banner__search__heading {
        font-size: 7.5rem;
    }


    .hero-search-banner .hero-search .field-element:first-child .field-input .textbox,
    .hero-search-banner .hero-search .field-element:first-child .field-input .dropdown,
    .hero-search-banner .hero-search .field-element.field-element--button:first-child .button {
        border-radius: 50px 0 0 50px;
        overflow: hidden;
    }
    .hero-search-banner .hero-search .field-element:last-child .field-input .textbox,
    .hero-search-banner .hero-search .field-element:last-child .field-input .dropdown,
    .hero-search-banner .hero-search .field-element.field-element--button:last-child .button {
        border-radius: 0 50px 50px 0;
        overflow: hidden;
        min-height: 35px;
    }

}

@media screen and (min-width: 62em) { /* 992px */

    .hero-search-banner__search__heading {
        font-size: 10rem;
    }
}


/* - banner nav - */

.hero-search-banner__nav {
    position: absolute;
    z-index: 4;
    right: 0;
    bottom: 35px;
    border: 1px solid #fff;
    min-height: 85px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
}

.hero-search-banner__nav__arrow {
    width: 65px;
    display: block;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

.hero-search-banner__nav__arrow:hover,
.hero-search-banner__nav__arrow:focus,
.hero-search-banner__nav__arrow:active {
    background: rgba(0,0,0,.5);
}

.hero-search-banner__nav__arrow--prev svg path,
.hero-search-banner__nav__arrow--next svg path {
    fill: #fff;
}

.hero-search-banner__nav__bnr-caption {
    min-width: 255px;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    text-align: right;
    padding: 15px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: right;
    -ms-flex-align: right;
            align-items: right;

}

@media screen and (max-width: 30.0625em) {/*  481px */
    .hero-search-banner__nav {
        display: none;
    }
}


/* ---- Search Results search bar ---- */

.results-search-bar {
    display: none;
}


/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
}
/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .results-search-bar {
        border-top: 1px solid #adb1b7;
        border-bottom: 1px solid #adb1b7;
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        background-color: #FFF;
    }

    .results-search-bar__heading,
    .results-search-bar .hero-search {
       float: left;

       -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }

    .results-search-bar__heading {
        display: none;
    }
    /* Sticky */
    .search-bar-sticky .results-search-bar.results-search-bar--sticky {
        position: fixed;
        top: -2px;
        left: 0;
        right: 0;
        z-index: 100;
    }
}
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */



}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .results-search-bar {
        border-top-width: 2px;
        border-bottom-width: 2px;
    }
}

/* BP xlarge */
@media only screen and (min-width: 87.5em) {/* 1400px */
    .results-search-bar__heading {
        display: inline-block;
        flex: 1 1 auto;
        min-width: 280px;
        max-width: 310px;
        border-right: 1px solid #ededed;
        color: #313C4A;
        font-weight: 300;
        font-family: 'Lato', sans-serif;
        font-size: 2.4rem;
        margin-bottom: 0;
        padding: 0 15px 0 50px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}


/* ---- Feature Grid ---- */

.feature-grid {
    padding: 8px;
    list-style: none;
    margin: 0;
}


.feature-grid__item {
    padding: 0 8px 16px;
}

.feature-grid__column .box,
.feature-grid__item .box {
    padding-top:100%;
}

.feature-grid__column:nth-child(3) {
    clear: left;
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    .feature-grid__item {
        float: left;
        width: 50%;
    }
    .feature-grid__column {
        display: inline;
    }
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .feature-grid__item {
        float: none;
        padding-left: 0;
        padding-right: 0;
        width: 100%;
    }
    .feature-grid__column {
        display: block;
        float: left;
        padding: 0px 8px 16px;
        width: calc(66.666666668% + 2px);
    }

    .feature-grid__column:nth-child(2n+1) {
        width: calc(33.333333334% - 2px);
        padding-bottom: 0px;
    }
    .feature-grid__column:nth-child(3),
    .feature-grid__column:nth-child(4) {
        float: right;
    }
}

/* BP medium */
@media only screen and (min-width: 87.5em) {/* 1400px */
    .feature-grid__column {
        width: calc(33.5% - 1px);
    }

    .feature-grid__column:nth-child(2n+1) {
        width: calc(16.5% + 1px);
        margin-bottom: -1px;
    }

    .feature-grid__column:nth-child(3) {
        clear: none;
    }

    .feature-grid__item {
        padding-bottom: 15px;
    }
    .feature-grid__column:nth-child(3),
    .feature-grid__column:nth-child(4) {
        float: left;
    }
}




/* ---- Specials slider ---- */

.specials-slider {
    list-style: none;
    margin: 0;
    padding: 0;
}

.specials-slider .slick-track {
    display: flex !important;
}

.specials-slider__item {
    padding: 0 15px 0;

    display: flex !important;
    flex-flow: column nowrap;
    height: auto !important;
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    .specials-slider .slick-next {
        right: -35px;
    }

    .specials-slider .slick-prev {
        left: -35px;
    }

}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .specials-slider .slick-next {
        right: -45px;
    }

    .specials-slider .slick-prev {
        left: -45px;
    }

}


/* ---- Search Grid ---- */

.search-grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
}

.search-grid__map-col {
    display: none;
}

.search-grid__results-col__results {
    padding: 8px 20px 0;
}

.search-map-button {
    -webkit-appearance: none;
    border: 2px solid #e5e5e5;
    background: #FFF url(../images/icon_map.svg) no-repeat center center;
    outline: none;
    position: fixed;
    bottom: 20px;
    right: 20px;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    z-index: 102;
    cursor: pointer;
}
.search-map-button:hover {
    background-color: #f0f0f3;
}


@media screen and (min-width: 23.75em) { /* 380px */
    .search-grid__results-col__results {
        padding-left: 25px;
        padding-right: 25px;
    }
}


/* BP Smaller */
@media screen and (max-width: 34.9375em) {/*  559px */
        .search-grid__map-col {
            float: left;
            width: 100%;
            height: 100vh;
            display: none;
        }

        .search-grid__results-col {
            float: right;
            width: 100%;
        }
}


/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .search-grid__results-col__results {
        padding-left: 30px;
        padding-right: 30px;
    }
    .search-grid__results-col {
        padding-top: 50px;
    }
    .search-grid__results-col__results {
        padding: 15px 25px 0;
    }
}


/* Max BP extra small */
@media only screen and (max-width: 37.438em) { /* 599px */
    .button-fixed-wrapper {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 999;
        margin: 0;
        background-color: #FFF;
        padding: 8px 6% 18px;
        border-top: 1px solid #d8dce2;
    }
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .search-grid__map-col {
        float: left;
        width: 50%;
        height: 100vh;
        position: relative;
        display: block;
    }

    .search-grid__results-col {
        padding-top: 55px;
        float: right;
        width: 50%;
    }

    .search-map-button {
        display: none;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .search-grid__map-col {
        width: 33%;
    }

    .search-grid__results-col {
        width: 67%;
    }
}

/* BP xlarge */
@media only screen and (min-width: 87.5em) {/* 1400px */
    .search-grid__results-col {
        padding-top: 62px;
    }
}


/* ---- Search overlay divs ---- */

.search-grid__map-col .search-overlay,
.search-grid__results-col .search-overlay {
    display: none;
    position: absolute;
    top: 0px;
    left: 0px;
    background-color: rgb(255,255,255,0.5);
    width: 100%;
    height: 100%;
    z-index: 1;
}

    .search-grid__results-col .search-overlay {
        /* top: 80px; */
    }
    .search-grid.refine-open .search-grid__map-col .search-overlay,
    .search-grid.refine-open .search-grid__results-col .search-overlay {
        display: block;
    }


/* ---- Search grid map ---- */

.search-grid-map {
    height: 100%;
    position: relative;
}

.search-grid-map > div {
    height: 100%;
    width: 100%;
}

    .search-grid-map.map-fixed {
        position: absolute;
    }
    .search-grid-map.map-fixed > div,
    .search-grid-map.map-fixed > .search-overlay {
        position: fixed!important;
        top: 0px;
        left: 0px;
    }
        .search-grid-map #search-map-trigger,
        .search-grid-map.map-fixed > #search-map-trigger {
            position: absolute;
            top:5px;
            left: 5px!important;
            display: none;
            margin-top: 10px;
            z-index: 2;
        }

.searchmap-label,
.map-marker-label {
    position: relative;
    color: rgba(49, 60, 74, 1);
    background-color: rgba(255, 255, 255, 1);
    padding: 6px 8px;
    font-weight: 400;
    border: 1px solid #adb1b7;
    border-bottom: none;
   -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;
    position: absolute;
    -webkit-box-shadow: 1px 1px 5px 0px rgba(204,204,204,1);
    -moz-box-shadow: 1px 1px 5px 0px rgba(204,204,204,1);
    box-shadow: 1px 1px 5px 0px rgba(204,204,204,1);
    cursor: pointer;
    -webkit-transition: margin .5s;
    -moz-transition: margin .5s;
    -o-transition: margin .5s;
    transition: margin .5s;
}

    .searchmap-label:before,
    .map-marker-label:before {
        content: "";
        position: absolute;
        height: 10px;
        width: 10px;
        transform-origin: 0% 0%;
        transform: rotate(45deg);
        right: 48%;
        bottom: -3px;
        background: rgba(255, 255, 255, 1);
    }

.map-marker-label.active-label {
    color: rgba(255, 255, 255, 1);
    border-color: #313C4A;
    background-color: rgba(29, 189, 93, 1);
}

    .map-marker-label.active-label:before {
        content: "";
        position: absolute;
        height: 10px;
        width: 10px;
        transform-origin: 0% 0%;
        transform: rotate(45deg);
        right: 48%;
        bottom: -3px;
        background: rgba(29, 189, 93, 1);
    }



/* ---- Search grid form ---- */

.search-grid-filter {
    padding-top: 0;
    padding-bottom: 0;
    position: absolute;
    top: 100%;
    top: calc(100% + 1px);
    left: 0;
    right: 0;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
}

.search-grid-filter__form__inner {
    display: flex;
    align-items: center;
}
.search-grid-filter__legend {
    flex: 1 1 auto;
}

.search-grid-filter__filters {
    padding: 10px 0;
    border: 0;
    margin: 0;
}

.search-grid-filter__filters__filter-wrap {
    float: left;
    position: relative;
    margin-left: 15px;
}

.search-grid-filter__filter__form__fieldset {
    display: none;
    position: absolute;
    top: 58px;
    background-color: #ffffff;
    margin: 0;
    width: 95%;
    z-index: 200;
    padding: 10px 20px 20px;
    border: 2px solid #adb1b7;
}
.search-grid-filter__filter__form__fieldset__buttons {
    padding: 10px 0;
    text-align: right;
}
.search-grid-filter__filters .button {
    padding: 7px 9px;
    font-size: 1.4rem;
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */

}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */

}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .search-grid-filter {
        left: 50%;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .search-grid-filter {
        left: 33%;
        top: calc(100% + 2px);
    }
}

/* BP xlarge */
@media only screen and (min-width: 87.5em) {/* 1400px */
    .search-grid-filter__filters .button {
        padding: 10px 15px;
        font-size: 1.5rem;
    }
    .search-grid-filter__filters__filter-wrap {
        margin-left: 20px;
    }
}



/* ---- Hero Slider ---- */

.banner-slider {
    background: no-repeat;
    background-size: cover;
    padding-top: 33%;
    display: none;
}

.banner-slider-thumbs {
    padding: 0;
    margin-top: 30px;
    margin-bottom: 22px;
}


.banner-slider-thumbs__thumb {
    display: block;
    margin: auto;
    border: 1px solid #fff;
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .banner-slider-thumbs__item {
        padding: 0 9px;
    }
}

/* Max BP medium */
@media only screen and (max-width: 61.938em) { /* 991px */
    .banner-slider-thumbs .slick-prev,
    .banner-slider-thumbs .slick-next
    {
        width: 35px;
        height: 35px;
    }
    .banner-slider-thumbs .slick-prev {
        left: -35px;
    }
    .banner-slider-thumbs .slick-next {
        right: -35px;
    }
    .banner-slider-thumbs .slick-prev:before,
    .banner-slider-thumbs .slick-next:before {
        background-size: 13px;
    }
}
/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .banner-slider {
        display: block;
    }
    .banner-slider-thumbs {
        margin-top: -100px;
        padding: 0 10px;
    }
}


/* ---- Property details bits ---- */
.js--features__hide {
    position: relative;
    overflow: hidden;
    padding-bottom: 2em;
}
    .js--features__hide.features__collapsed {
        max-height: 300px;
    }

    .js--features__hide:after {
        content  : "";
        position : absolute;
        z-index  : 1;
        bottom   : 0;
        left     : 0;
        pointer-events   : none;
        background-image : linear-gradient(to bottom,
            rgba(255,255,255, 0),
            rgba(255,255,255, 1) 90%);
        width    : 100%;
        height   : 3em;
    }
.property-breadcrumbs a {
    /* text-decoration: none; */
    color: #596474;
}
    .property-breadcrumbs a:hover {
        text-decoration: underline;
        color: #1DBD5D;
    }

/* ---- Book box sidebar ---- */

.book-box {
    margin-top: -100px;
}

.book-box__price-box__price {
    background: #fff;
    padding: 15px;
    font-size: 3.2rem;
    font-weight: bold;
    color: #1dbd5d;

    display: flex;
    justify-content: center;
    align-items: center;
}

.book-box__price-box__save-cta {
    background: #1dbd5d;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 1.4rem;
    padding: 5px 15px;
    min-height: 40px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

    .js--booking-prices .book-unavailable {
        background: #F77450;
    }

.book-box__price-box__save-cta a {
    color: #ffffff;
    text-transform: lowercase;
}

.book-box__price-box__save-cta a:hover,
.book-box__price-box__save-cta a:focus,
.book-box__price-box__save-cta a:active {
    opacity: .7;
}

.book-box-form {
    background: #f7f7f7;
    border: 2px solid #e5e5e5;
    border-top: 0px;
}

.book-box-table {
    width: 100%;
    margin-bottom: 15px;
    border: 0;
    /* border-bottom: 1px solid #E5E5E5; */
}

.book-box-table td {
    border: 0;
    padding-left: 0;
    padding-right: 0;
    padding: 5px 0 10px 0;
    border-bottom: 1px solid #E5E5E5;
}

.book-box-table td:last-child {
    text-align: right;
}

.total-td td{
    font-weight: bold;
}

.book-box-deposit {
    text-align: center;
}

.book-box-extend {
    margin-bottom: 25px;
}

@media screen and (min-width: 23.75em) { /* 380px */
    .book-box__price-box__save-cta {
        padding-left: 20px;
        padding-right: 20px;
    }
}


/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .book-box__price-box__save-cta {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media screen and (max-width: 75em) { /* 1200px */
    .book-box{
        margin-top: 0;
    }
}


@media screen and (min-width: 75em) { /* 1200px */
    .book-box__price-box__price {
        height: 100px;
    }
}

.js--price-loading {
    display: none;
}

/* ---- Section bar tabs ---- */

.section-bar-tabs {
    list-style: none;
    margin: 0;
    padding: 0;
}

.section-bar-tabs__item {
    padding: 0;
    border-bottom: 1px solid #E5E5E5;
}


.section-bar-tabs__item__tab {
    display: block;
    text-decoration: none;
    color: #313C4A;
    font-weight: 300;
    font-size: 1.4rem;
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 7px 7px;
}

.section-bar-tabs__item .star-rating {
    display: none;
}

.section-bar-tabs__item--on .section-bar-tabs__item__tab,
.section-bar-tabs__item__tab:hover,
.section-bar-tabs__item__tab:focus,
.section-bar-tabs__item__tab:active {
    background: #51c2b8;
    color: #ffffff;
}

.section-bar-tabs__item__tab__icon path {
    fill: #9DA2A9;
    transition: fill 200ms ease-in-out;
}


.section-bar-tabs__item__tab__icon .star-fill,
.section-bar-tabs__item--on .section-bar-tabs__item__tab__icon path,
.section-bar-tabs__item--on .section-bar-tabs__item__tab__icon rect[fill='#9DA2A9'],
.section-bar-tabs__item--on .section-bar-tabs__item__tab__icon text[fill='#9DA2A9'],
.section-bar-tabs__item__tab:hover .section-bar-tabs__item__tab__icon path,
.section-bar-tabs__item__tab:hover .section-bar-tabs__item__tab__icon rect[fill='#9DA2A9'],
.section-bar-tabs__item__tab:hover .section-bar-tabs__item__tab__icon text[fill='#9DA2A9'] {
    fill: #ffffff;
}
.section-bar-tabs__item--on .section-bar-tabs__item__tab__icon rect[stroke='#9DA2A9'],
.section-bar-tabs__item__tab:hover .section-bar-tabs__item__tab__icon rect[stroke='#9DA2A9'] {
    stroke: #ffffff;
}

.section-bar-tabs__item__tab__icon {
    margin-right: 10px;
}
.section-bar-tabs__item__tab__icon svg {
    display: block;
    width: 19px;
    height: 18px;
    max-width: 100%;
}

.section-bar-tabs__item--favourite.section-bar-tabs__item--on .section-bar-tabs__item__tab__icon .star-fill,
.section-bar-tabs__item--favourite:hover .section-bar-tabs__item__tab__icon .star-fill {
    fill: #51c2b8;
}

.section-bar-tabs__item--favourite .section-bar-tabs__item__tab__icon #star-fill {
    fill: rgba(255,255,255,0);
}


/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    .section-bar-tabs {
        list-style: none;
        margin: 0;
        padding: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: stretch;
        -ms-flex-pack: stretch;
                justify-content: stretch;
    }

    .section-bar-tabs__item {
        float: left;
        padding: 0;
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        border-bottom: none;
        border-right: 1px solid #E5E5E5;
    }

    .section-bar-tabs__item:first-child {
        border-left: 1px solid #E5E5E5;
    }
    .section-bar-tabs__item__tab {

        font-size: 1.2rem;
    }
    .section-bar-tabs__item__tab__icon {
        margin-right: 4px;
    }
    .section-bar-tabs__item__tab__icon svg {
        width: 14px;
        height: 14px;
    }

}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */

    .section-bar-tabs__item .star-rating {
        display: inline-flex;
    }
    .section-bar-tabs__item__tab {
        font-size: 1.6rem;
        padding: 8px 10px;
    }
    .section-bar-tabs__item__tab__icon {
        margin-right: 10px;
    }


}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .section-bar-tabs__item__tab {
        font-size: 1.9rem;
    }
    .section-bar-tabs__item__tab {
        padding: 8px 16px;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .section-bar-tabs__item__tab {
        font-size: 2.4rem;
        padding: 15px 20px;
    }
    .section-bar-tabs__item__tab__icon {
        width: auto;
    }
}

/* BP xlarge */
@media only screen and (min-width: 87.5em) {/* 1400px */

}



/* ---- Features Icon list ---- */

.feat-icons-list {
    padding-top: 15px;
    padding-bottom: 10px;
    list-style: none;
    padding-left: 0;
    padding-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: left;
    -ms-flex-align: left;
    align-items: left;
    margin: 0;
}

.feat-icons-list__item {
    text-align: center;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.3333333%;
            flex: 0 0 33.3333333%;
    padding-top: 15px;
    padding-bottom: 15px;
    text-transform: uppercase;
    font-size: 1.2rem;
    overflow: hidden;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    .feat-icons-list {
        padding-top: 25px;
        padding-bottom: 10px;
        margin-left: 5px;
        margin-right: 5px;
    }
    .feat-icons-list__item {
        -ms-flex-preferred-size: 16.666666%;
            flex-basis: 16.666666%;
    }
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .feat-icons-list__item {
        font-size: 1.4rem;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .feat-icons-list__item {
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
        font-size: 1.6rem;
    }
}



/* ---- Accommodation map ---- */

.accomm-location-map {
    position: relative;
    padding-top: 40%;
}

.accomm-location-map:before {
    content: '\00a0';
}

.accomm-location-map > div {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
}



/* ---- Reviews ---- */

.reviews__more {
    display: none;
}

.review-rating-heading {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    font-size: 2.4rem;
    color: #313c4a;
}

.review-rating-star-header {
    text-transform: uppercase;
    font-size: 1.4rem;
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    .review-rating-star-header {
        padding-top: 10px;
    }

    .review-rating-star-header p {
        display: inline-flex;
        vertical-align: middle;
        line-height: 25px;
        margin-top: -5px;
    }

    .review-rating-star-header .star-rating {
        margin-left: 5px;
    }

    .review-rating-star-header .star-rating__star {
        margin: 0;
        width: 18px;
    }

    .review-rating-star-header .star-rating__star svg {
        width: 18px;
        height: 17px;
    }
}


.review {
    margin-bottom: 20px;
}
.review {
    margin-bottom: 20px;
}

.review__text {
    width: 100%;
    color: #9DA2A9;
}

.review__text__scores {
    list-style: none;
    padding: 0 0 0 1rem;
}
    .review__text__scores .right {
        margin-bottom: 4px;
    }

@media screen and (min-width: 30em) { /* 480px */
    .review {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
                flex-flow: row nowrap;
    }

    .review__rating {
        float: left;
        padding-right: 20px;
    }
}






/* ---- Inner template ---- */

.banner-inner {
    background-image: url(../images/bnr_inner_fallback_small.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    padding-top: 22.5%;
}

@media screen and (min-width: 37.5em) {/*  600px */
    .banner-inner {
        background-image: url(../images/bnr_inner_fallback.jpg);
    }
}


/* ---- Footer ---- */

.footer-deco-icon {
    background: #51C2B8;
    width: 100px;
    height: 100px;
    padding: 25px;
    margin: auto auto 20px;
    border-radius: 500px;
    display: block;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

.footer-deco-icon-header {
    line-height: 1.1;
}

.footer-header {
    font-family: 'Permanent Marker', cursive;
    color: #fff;
    font-size: 2.4rem;
}

.footer-deco-icon-text {
    max-width: 290px;
    padding-left: 5px;
    padding-right: 5px;
    margin: auto;
    padding-bottom: 15px;
}

.footer-nav  {
    list-style-type: none;
    margin: 0;
    padding: 0;
    text-align: left;
}

.js-footer-login-nav__btn {
    background: transparent;
    border: 0;
    color: #fff;
    padding: 0;
    cursor: pointer;
}

.footer-nav__li__childlist,
.button-bar__item__child-list-mobile {
    margin: 0;
    padding: 0;
    list-style-type: none;
    background: #252d38;
    display: none;
}

a.footer-nav__li__childlist__link,
a.button-bar__item__child-list__link {
    padding: 10px;
    display: block;
    border-bottom: 1px solid rgba(255,255,255,.25);
}

@media screen and (max-width: 61.9375em) { /* 991px */
    .footer-links {
        left: -10px;
    }
    .footer-links > .row {
        position: relative;
        left: 10px;
    }
}

@media screen and (max-width: 34.9375em) {/*  559px */
    .footer-nav .footer-nav__link,
    .js-footer-login-nav__btn {
        display: block;
        padding: 10px 0px;
        border-bottom: 1px solid rgba(255,255,255,.25);
        width: 100%;
        text-align: left;
    }

    .footer-nav__li:first-child a:after  {
        content: attr(title);
        margin-left: 10px;
    }
}


@media screen and (min-width: 23.75em) { /* 380px */

    .footer-header {
        font-size: 3.2rem;
    }
}

/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    .footer-nav  {
        text-align: center;
    }
    .footer-nav__li  {
        border: 0px;
        display: inline-block;
        padding-left: 12px;
        padding-right: 12px;
    }

    .footer-nav__li--login {
        position: relative;
    }

    .js-footer-login-nav__btn {
        padding-bottom: 2px;
        display: inline-block;
    }

    .js-footer-login-nav__btn:hover,
    .js-footer-login-nav__btn:focus,
    .js-footer-login-nav__btn:active {
        border-bottom-color: rgba(255,255,255,0) !important;
    }

    .footer-nav__li:first-child {
        padding-left: 0px;
    }

    .footer-nav__li:last-child {
        padding-right: 0px;
    }


    .footer-nav__li__childlist {
        position: absolute;
        right: 0px;
        width: 200px;
        text-align: left;
        z-index: 100;
        -webkit-box-shadow: 0 10px 10px -4px rgba(0,0,0,.10);
        box-shadow: 0 10px 10px -4px rgba(0,0,0,.10);
    }

    .footer-nav__li__childlist__link:hover,
    .footer-nav__li__childlist__link:focus,
    .footer-nav__li__childlist__link:active {
        background: rgba(255,255,255,.05);
    }

}

@media screen and (min-width: 62em) { /* 992px */
    .footer-nav  {
        text-align: right;
    }
}

@media screen and (min-width: 75em) { /* 1200px */

    .footer-header {
        font-size: 5.4rem;
    }
}

/* BP Smaller */
@media screen and (min-width: 48em) and (max-width: 61.9375em), screen and (min-width: 87.5em) { /* 768px, 991px, 1400px */
    .footer-deco-icon {
        width: 140px;
        height: 140px;
    }

    .footer-header {
        font-size: 6.4rem;
    }

    .footer-nav {
        margin: 30px 0 10px;
    }
}


/* footer links */

.footer-links-header {
    padding: 0 0 20px 0;
}

.footer-header:after,
.footer-header:before {
    content: '\00a0';
    display: inline-block;
    width: 50px;
    background: url(../images/deco_heading.svg) no-repeat center center;
    background-size: 35px 8px;
}

.footer-links {
    border: 1px solid #fff;
    margin-right: -20px;
    border-left: 0px;
    padding-top: 20px;
    padding-bottom: 20px;
    position: relative;
}

.footer-links:before {
    content: '\00a0';
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    position: absolute;
    top: -1px;
    bottom: -1px;
    right: 100%;
    width: 9999px;
}
@media screen and (max-width: 37.5em) {/*  600px */
    .footer-links__heading {
        margin: 15px 0 0;
    }
    .footer-links__heading:after {
        content: "\00a0\00a0\00a0";
        background: url(../images/icon_select-arrow-down.svg) no-repeat center right;
        background-size: 100% auto;
        -moz-transform: rotate(-90deg);
        -webkit-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        margin-left: 6px;
        display: inline-block;
    }

    .footer-links__list {
        height: 0;
        overflow: hidden;
    }

    .phone-cta--footer {
        border: 2px solid #e9e9e9 !important;
        border-radius: 4px;
        padding: 8px 20px 9px 45px;
        display: inline-block;
        margin: 10px auto 15px;
        background-position: 15px 51%;
    }
}





.footer-enews-signup {
    padding-top: 30px;
    padding-bottom: 30px;
}

.footer-enews-signup__heading {
    color: #fff;
    font-weight: bold;
    font-family: 'Avenir Next W01', sans-serif;
}

.footer-enews-signup .button {
    margin-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
}


/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .footer-links-header {
        padding-bottom: 35px;
    }

    .footer-links {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .footer-enews-signup {
        padding-left: 30px;
        padding-top: 0px;
        padding-bottom: 0px;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column nowrap;
                flex-flow: column nowrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
                justify-content: space-between;
    }

    .footer-enews-signup__heading {
        font-size: 4.2rem;
    }
}

/* BP medium */
@media only screen and (min-width: 75em) { /* 1200px */
    .footer-links {
        padding-top: 45px;
        padding-bottom: 45px;
    }
    .footer-enews-signup {
        padding-left: 45px;
    }
}


.big-social-btns {
    text-align: center;
}

.big-social-btns__list {
    list-style: none;
    margin: auto;
    padding: 0;
}

.big-social-btns__list__item {
    display: inline-block;
    margin: -37px 5px 50px;
    height: 75px;
    width: 75px;
    text-align: center;
    overflow: hidden;
    padding: 5px;
}

.big-social-btns__button {
    border: 5px solid rgba(81,194,184,0);
    display: block;
    border-radius: 500px;
    width: 60px;
    height: 60px;
    overflow: hidden;
    text-indent: -999em;
    transition: all 200ms ease-in-out;
    background: #51c2b8 no-repeat center center;
}

.big-social-btns__button:hover {
    background-color: #1DBD5D;
    border: 0;
}

.big-social-btns__button--fb {
    background-image: url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229px%22%20height%3D%2219px%22%20viewBox%3D%220%200%209%2019%22%3E%3Cpath%20fill%3D%22%23FFF%22%20fill-rule%3D%22evenodd%22%20d%3D%22M1487.29744%2C32.5172569%20L1487.29744%2C23.8283876%20L1485%2C23.8283876%20L1485%2C20.70003%20L1487.29744%2C20.70003%20L1487.29744%2C18.0279862%20C1487.29744%2C15.9282338%201488.65456%2C14%201491.78157%2C14%20C1493.0477%2C14%201493.98413%2C14.1213798%201493.98413%2C14.1213798%20L1493.91036%2C17.0427671%20C1493.91036%2C17.0427671%201492.95553%2C17.0334821%201491.91358%2C17.0334821%20C1490.78588%2C17.0334821%201490.60525%2C17.5531025%201490.60525%2C18.4157601%20L1490.60525%2C20.70003%20L1494%2C20.70003%20L1493.85228%2C23.8283876%20L1490.60525%2C23.8283876%20L1490.60525%2C32.5172569%20L1487.29744%2C32.5172569%20Z%22%20transform%3D%22translate%28-1485%20-14%29%22%2F%3E%3C%2Fsvg%3E);
}

.big-social-btns__button--tw {
    background-image: url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2226px%22%20height%3D%2218px%22%20viewBox%3D%220%200%2026%2018%22%3E%3Cpath%20fill%3D%22%23FFF%22%20fill-rule%3D%22evenodd%22%20d%3D%22M1461.89771%2C23.4794773%20C1459.77791%2C32.1143446%201445.54627%2C35.7781544%201439%2C26.8130661%20C1441.50763%2C29.2164504%201445.87453%2C29.4296975%201448.64349%2C26.5539823%20C1447.01936%2C26.7930228%201445.83739%2C25.1921905%201447.83298%2C24.3272087%20C1446.03997%2C24.5243555%201445.04128%2C23.5660576%201444.63267%2C22.7513483%20C1445.05257%2C22.3102322%201445.51698%2C22.1037209%201446.41455%2C22.0444126%20C1444.45021%2C21.5784889%201443.72512%2C20.6136194%201443.50355%2C19.4415814%20C1444.04765%2C19.3116288%201444.72905%2C19.1982693%201445.10149%2C19.2488704%20C1443.38163%2C18.3459378%201442.78435%2C16.9859532%201442.87877%2C15.9637468%20C1445.95259%2C17.1111414%201447.91153%2C18.0321458%201449.54908%2C18.9135564%20C1450.13229%2C19.2275128%201450.78472%2C19.7905313%201451.51898%2C20.5065029%20C1452.45353%2C18.0216313%201453.60948%2C15.4621724%201455.58806%2C14.191561%20C1455.5555%2C14.4800526%201455.40167%2C14.7475151%201455.19811%2C14.9670053%20C1455.76054%2C14.4545878%201456.48841%2C14.1020235%201457.23003%2C14%20C1457.14461%2C14.5595685%201456.34408%2C14.8738534%201455.85987%2C15.0560499%20C1456.22659%2C14.9413762%201458.17423%2C14.0691657%201458.3868%2C14.5669615%20C1458.63734%2C15.1314586%201457.04282%2C15.3925139%201456.77265%2C15.4902658%20C1456.56876%2C15.5589386%201456.36699%2C15.634183%201456.168%2C15.7153418%20C1458.63521%2C15.4679225%201460.99147%2C17.5136496%201461.67859%2C20.0520794%20C1461.72817%2C20.2355903%201461.7771%2C20.4381587%201461.82194%2C20.6512416%20C1462.72393%2C20.9888555%201464.35968%2C20.6346484%201464.88627%2C20.3090275%20C1464.50548%2C21.2140958%201463.51611%2C21.880945%201462.05464%2C22.0023546%20C1462.7578%2C22.2961034%201464.08492%2C22.4590781%201465%2C22.3023463%20C1464.42088%2C22.926809%201463.48796%2C23.4924561%201461.89771%2C23.4794773%22%20transform%3D%22translate%28-1439%20-14%29%22%2F%3E%3C%2Fsvg%3E);
}

.big-social-btns__button--gp {
    background-image: url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2230px%22%20height%3D%2219px%22%20viewBox%3D%220%200%2030%2019%22%3E%3Cpath%20fill%3D%22%23FFF%22%20fill-rule%3D%22evenodd%22%20d%3D%22M1543.14268%2C22.142887%20L1543.14268%2C19.4286611%20L1540.42824%2C19.4286611%20L1540.42824%2C22.142887%20L1537.71423%2C22.142887%20L1537.71423%2C24.857113%20L1540.42824%2C24.857113%20L1540.42824%2C27.5713389%20L1543.14268%2C27.5713389%20L1543.14268%2C24.857113%20L1545.8569%2C24.857113%20L1545.8569%2C22.142887%20L1543.14268%2C22.142887%20Z%20M1525.4999%2C22.142887%20L1525.4999%2C25.4%20L1530.88778%2C25.4%20C1530.67071%2C26.7977877%201529.25912%2C29.4984206%201525.4999%2C29.4984206%20C1522.25638%2C29.4984206%201519.60991%2C26.8113808%201519.60991%2C23.4998954%20C1519.60991%2C20.1886192%201522.25638%2C17.5013703%201525.4999%2C17.5013703%20C1527.34563%2C17.5013703%201528.58072%2C18.2885147%201529.2863%2C18.9671234%20L1531.86502%2C16.4835617%20C1530.20917%2C14.9364592%201528.06481%2C14%201525.4999%2C14%20C1520.24774%2C14%201516%2C18.2479445%201516%2C23.4998954%20C1516%2C28.7520555%201520.24774%2C33%201525.4999%2C33%20C1530.98272%2C33%201534.61981%2C29.1456276%201534.61981%2C23.7171757%20C1534.61981%2C23.0929393%201534.55206%2C22.6178086%201534.4705%2C22.142887%20L1525.4999%2C22.142887%20Z%22%20transform%3D%22translate%28-1516%20-14%29%22%2F%3E%3C%2Fsvg%3E);
}


/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */

    .big-social-btns__list__item {
        margin: -50px 15px 50px;
        height: 110px;
        width: 110px;
    }

    .big-social-btns__button {
        width: 100px;
        height: 100px;
    }

    .big-social-btns__button--fb {
        background-size: 16.53px 34px;
    }

    .big-social-btns__button--tw {
        background-size: 43px 30px;
    }

    .big-social-btns__button--gp {
        background-size: 51px 32.45px;
    }

}


/* BP small */
@media screen and (min-width: 48em) { /* 768px */

    .big-social-btns__list__item {
        margin: -50px 45px 50px;
        height: 110px;
        width: 110px;
        transition: all 200ms ease-in-out;
    }
    .big-social-btns__list__item:hover {
        padding: 0;
    }

    .big-social-btns__button {
        width: 100px;
        height: 100px;
    }

    .big-social-btns__list__item:hover .big-social-btns__button {
        width: 110px;
        height: 110px;
    }


}


/* ---- Text Card (Specials slider Boxes) ---- */


.text-card {
    flex: 1 1 auto;
    display: flex;
    flex-flow: column nowrap;
}

.text-card__content {
    position: relative;
    border: 2px solid #e7e7e7;
    padding: 25px;
    margin-bottom: 45px;
    padding-top: 100px;

    flex: 1 1 auto;
}

.text-card__img-wrap {
    overflow: hidden;
    max-width: 250px;
    padding: 0 25px;
    margin-bottom: -90px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 2;
}

.text-card__img-wrap__img {
    border-radius: 100%;
    width: calc(100% - 10px);
    margin: 5px auto;
}

.text-card__content__btn-add-to-favourites {
    position: absolute;
    top: -5px;
    right: 6px;
    z-index: 5;
}

.text-card__header {
    font-weight: bold;
}

.text-card__header__first-line {
    font-weight: normal;
    font-size: 1.4rem;
}

.text-card__main-text {
    font-weight: 300;
    font-family: 'Lato', sans-serif;
    font-size: 2.4rem;
}

.text-card__sm-text {
    color: #9DA2A9;
    font-size: 1.4rem;
}

.text-card__button {
    position: absolute;
    right: 30px;
    left: 30px;
    bottom: -35px;

}


/* ---- Square Card (Promo Boxes) ---- */

.square-card {
    position: relative;
    display: block;
    background: rgba(49,60,74,1);
    text-decoration: none;
    color: #fff !important;
}

.square-card:before {
    content: '\00a0';
    display: block;
    padding-top: calc(100% - 16px);
}

.square-card__img {
    background: no-repeat center center;
    background-size: cover;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: .75;
    transition: all 600ms ease;
}

.square-card:hover .square-card__img {
    opacity: .50;
}

.square-card__content {
    position: absolute;
    top: 7%;
    right: 7%;
    bottom: 7%;
    left: 7%;
    border: 1px solid rgba(255,255,255,0);
    transition: all 600ms ease;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
            align-items: center;
    text-align: center;
}

.square-card:hover .square-card__content {
    border: 1px solid rgba(255,255,255,.5);
}

.square-card__content__title {
    font-family: 'Permanent Marker', cursive;
    line-height: 1.1;
    font-size: 3.6rem;
    padding-top: 35px;
    padding-bottom: 18px;
    background: url(../images/deco_heading.svg) no-repeat center bottom;
    margin-bottom: 20px;
    background-size: 110px 8px;
}

.square-card__content__sub-title {
    margin-bottom: 20px;
}

.square-card__content__button-wrap {
    opacity: 0;
    transition: all 600ms ease;
}

.square-card:hover .square-card__content__button-wrap {
    opacity: 1;
    transition: all 600ms ease;
}


/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .square-card__content__title {
        line-height: 1;
        font-size: 4.8rem;
    }
    .feature-grid__column:nth-child(2n+1) .square-card__content__title {
        line-height: .8;
        font-size: 2.5rem;
        margin-bottom: 8px;
    }
    .feature-grid__column:nth-child(2n+1) .square-card__content__sub-title {
        margin-bottom: 8px;
    }
}

/* BP medium */
@media only screen and (min-width: 62em) { /* 992px */
    .square-card__content__title {
        line-height: 1;
        font-size: 4.4rem;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .square-card__content__title {
        line-height: .9;
        font-size: 5.4rem;
    }
}




/* ---- Tall Card (Category Boxes) ---- */


.tall-card {
    position: relative;
    display: block;
    text-decoration: none;
    overflow: hidden;
    background: #51c2b8;
    color: #fff !important;
}

.tall-card:before {
    content: '\00a0';
    display: block;
    padding-top: 100%;
}

.tall-card__content-wrap {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0; /* fix mobile overlay */
    display: flex;
    flex-flow: column nowrap;
}

.tall-card__content-wrap:before {
    content: '\00a0';
    display: block;
    position: absolute;
    top: 60%;
    right: 7%;
    bottom: 7%;
    left: 7%;
    border: 1px solid rgba(255,255,255,.5);
    transition: all 600ms ease;
    z-index: 50;
}

.tall-card:hover .tall-card__content-wrap:before {
    top: 7%;
}

.tall-card__img-wrap {
    background: rgba(49,60,74,1);

    padding: 7%;
    flex: 4 1 auto;

    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    text-align: center;
    position: relative;
}

.tall-card__img-wrap__img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
    background: no-repeat center center;
    background-size: cover;
    transition: all 600ms ease;
}

.tall-card__title-wrap {
    flex: 1 1 auto;

    display: flex;
    flex-flow: column nowrap;
    padding: 15px 9% 7%;
}

.tall-card:hover .tall-card__img-wrap__img {
    opacity: .20;
}

.tall-card__content__hover {
    position: relative;
    opacity: 0;
    transition: all 600ms ease;
}

.tall-card:hover .tall-card__content__hover {
    opacity: 1;
}


.tall-card__content {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: all 600ms ease;
    overflow: hidden;

    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    text-align: center;
}


.tall-card__title-wrap {
    align-items: center;
    justify-content: center;
    text-align: center;
}

.tall-card__title-wrap__text {

    font-family: 'Permanent Marker', cursive;
    line-height: .9;
    font-size: 2.4rem;
    padding-bottom: 16px;
    background:  url(../images/deco_heading.svg) no-repeat 40% bottom;
    background-size: 45% 8px;
    margin-bottom: 4px;
}

.tall-card__content__sub-title {
    color: #51c2b8;
    font-family: 'Permanent Marker', cursive;
    font-size: 3.2rem;
    line-height: 1.1;
    margin-bottom: 20px;
}


/* BP Smaller */
@media screen and (min-width: 35em) { /* 560px */
    .tall-card__content__sub-title,
    .tall-card__title-wrap__text {
        line-height: 1;
        font-size: 2.6rem;
    }
}

/* BP large */
@media only screen and (min-width: 75em) { /* 1200px */
    .tall-card__content__sub-title,
    .tall-card__title-wrap__text {
        line-height: 1.1;
        font-size: 3.2rem;
    }
}





/* ---- Detailed Card (Product Boxes) ---- */


.detailed-card {
    position: relative;
    display: block;
    text-decoration: none;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
}

.detailed-card__img-wrap {
    position: relative;
    cursor: pointer;
    background-size: cover;
}

.detailed-card__img-wrap:before {
    content: '\00a0';
    padding-top: 64.693446089%;
    display: block;
}

.detailed-card__img-wrap__header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: 42px;
    background: rgba(49,60,74,.7);
    color: #ffffff;
    padding: 10px 15px 0;
    text-transform: uppercase;
    font-size: 1.4rem;
}

.detailed-card__img-wrap__header span {
    padding: 0 4px;
}

.detailed-card__img-wrap__header div {
    padding: 0 40px 0 0;
}

.detailed-card__btn-add-to-favourites {
    position: absolute;
    right: 25px;
    top: -5px;
    margin: 0 0 0 20px;
}

.detailed-card__details {
    border: 2px solid #e5e5e5;
    border-top: 0px;
    padding: 12px 15px;
    color: #9DA2A9;
    font-size: 1.4rem;
}

.detailed-card__details strong {
    color: #1DBD5D;
    font-weight: normal;
}

    .detailed-card__details strong span.oldprice {
        color: #F77450;
        text-decoration: line-through;
    }

.detailed-card__details__title,
.detailed-card__details__title a {
    font-size: 1.6rem;
    font-weight: bold;
    font-family: 'Avenir Next W01', Helvetica, Arial, sans-serif;
    color: #313C4A;
    min-height: 45px;
    text-decoration: none;
}
.detailed-card__details__title a:hover {
    color: #51C2B8;
}


.detailed-card__details__title .star-rating {
    float: right;
    margin-left: 15px;
}

.detailed-card__details__info {
    clear: both;
}

.detailed-card__img-wrap .flexi-date-overlay {
    background: rgba(29, 189, 93, 0.8);
    color: white;
    text-transform: lowercase;
    position: absolute;
    padding: 5px 10px;
    right: 0px;
    bottom: 0px;
}
.detailed-card__img-wrap .flexi-date-overlay span {
    text-transform: none;
    font-weight: 600;
    font-size: 0.9em
}
.alt-opts-overlay {
    width:100%;
    height:100%;
    background:white;
    position:absolute;
    top:0px;
    left:0px;
    border-top: 1px solid #69717B;
    display: none;
}
.alt-opts-overlay .overlay-close-btn {
    float:right;
    margin: 0 0 0 5px;
}
.alt-opts-overlay .overlay-close-btn:hover {
    border-color: #69717B;
    cursor: pointer;
}
.alt-opts-overlay h3.detailed-card__details__title {
    margin: 0px;
}
.alt-opts-overlay h3 a {
    font-weight:normal;
    color: #1DBD5D;
    font-size: 0.9em;
}
.alt-opts-overlay a:hover {
    color: #51c2b8;
    text-decoration: underline;
}

/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .detailed-card__img-wrap__header {
        padding-right: 25px;
        padding-left: 25px;
    }
    .detailed-card__details {
        padding: 20px 25px;
    }
}



/* BP small */
@media screen and (max-width: 48em) { /* 768px */
    .hidden-sm {
        display: none;
    }
}
/* BP V small */
@media screen and (max-width: 36em) { /* 576px */
    .mobile-search-form .datepicker-overlay,
    .mobile-search-form button,
    .mobile-search-form input,
    .mobile-search-form select {
        font-size: 0.9em
    }
    .mobile-search-form input {
        min-width: 30px;
    }
}
@media screen and (max-width: 26em) { /* 416px */
    .detailed-card__img-wrap__header {
        max-height: 50px;
        padding: 6px 8px;
    }
}
/* BP X small */
@media screen and (max-width: 24em) { /* 384px */
    .hidden-xs {
        display: none;
    }
    .visible-xs {
        display: block;
    }
}
/* BP X small */
@media screen and (min-width: 24em) { /* 384px */
    .visible-sm {
        display: block;
    }
}

@media screen and (min-width: 74.1em) { /*  1185px */
    .hidden-lg {
        display: none;
    }
}



/* ---- Magnific Popup ---- */
.mfp-image-holder .mfp-content {
    max-width: 1000px;
}

.mfp-ajax-holder .mfp-content {
    background-color: #fff;
    margin: 0 auto;
    padding: 50px;
    max-width: 700px;
}

/* BP small */
@media screen and (max-width: 48em) { /* 768px */
    .mfp-ajax-holder .mfp-content {
        padding: 20px;
    }
}



/* Generic style for all widgets */

.widget h3.widget-title {

}


/* ------------------------------------------------------
**** Widgets

Widgets & Modules that ship with sprout.
If they don't they belong in separate partial file

------------------------------------------------------ */

/* ---- Catch all ---- */
.sidebar .widget {
    margin-bottom: 25px;
    background: #f7f7f7;
    border: 2px solid #e5e5e5;
    padding: 20px 15px;
}

.sidebar .widget > *:last-child {
    margin-bottom: 0;
}

@media screen and (min-width: 23.75em) { /* 380px */
    .sidebar .widget {
        padding: 20px;
    }
}
/* BP small */
@media screen and (min-width: 48em) { /* 768px */
    .sidebar .widget {
        padding: 30px;
    }
}


/* ---- Related Links ---- */
.widget-RelatedLinks {
    margin-bottom: 25px;
}

.widget-RelatedLinks ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.widget-RelatedLinks a {
    text-decoration: none;
    color: #2a333e;
    display: block;
    padding: 9px 0;
}


/* - Depth 1 - */
.widget-RelatedLinks li.depth1 {
    border-bottom: 1px solid #e6e1e1;
    position: relative;
}
.widget-RelatedLinks li.depth1:last-child {
    border-bottom: none;
}
.widget-RelatedLinks li.depth1 > a {
    padding: 9px 0;
}

/* On */
.widget-RelatedLinks li.depth1.on > a {
    border-left: 3px solid #1dbd5d;
    padding-left: 20px;
}


/* - Depth 2 - */
.widget-RelatedLinks li.depth2 {
    font-size: 1.4rem;
}
.widget-RelatedLinks li.depth2 a:before {
    content: "- ";
}
.widget-RelatedLinks li.depth2 a {
    padding: 3px 0 3px 24px;
}

/* Hover */
.widget-RelatedLinks li > a:hover {
    color: #000;
}

/* On */
.widget-RelatedLinks li.depth2.on > a {
    color: #35ab75;
    font-weight: bold;
}


/* ---- Map Directions ---- */
.widget-MapDirections .directions-form {
    padding: 20px 25px;
    background: #f0f0f3;
    margin: 25px 0;
}
.widget-MapDirections .directions-list {
    padding: 20px 25px;
    background: #f0f0f3;
    margin: 25px 0;
}
.widget-ArticlesList.orientation-tall .sidebar-article:first-child {
    border-top: 0px;
}

.widget-ArticlesList.orientation-tall .sidebar-article {
    border-bottom: 1px #e5e5e5 solid;
}

.sidebar .widget-ArticlesList h4 {
    margin: 0 0 10px;
    font-size: 1.8rem;
    line-height: 1.3;
}

.sidebar .widget-ArticlesList h4 a {
    text-decoration: none;
    border-bottom: 1px solid rgba(29,189,93,0);
}

.sidebar .widget-ArticlesList h4 a:hover,
.sidebar .widget-ArticlesList h4 a:focus,
.sidebar .widget-ArticlesList h4 a:active {
    border-bottom: 1px solid rgba(29,189,93,1);
}

.sidebar .widget-ArticlesList.orientation-tall .sidebar-article .date {
    margin: 0;
}


/* ------------------------------------------------------
**** Print styles
------------------------------------------------------ */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        -webkit-box-shadow: none !important;
                box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /* Don't show links for images, or javascript/internal links */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
