/*
colors:
    #685C3C     PU Brown
    #655A39     PU Light Brown
    #39B54A     PU Green
    #2b8938     PU Drk Green
    #4f849d     PU Blue

    #e4f0f5     light blue
    #b4e6fc     v light blue
    #d9e9f1     mid blue
    #fcf8e3     light yellow
*/

/* the start of a separate css file for search */
@import url("../../css/search.css");
/* review ratings bubbles */
@import url("../../css/pitchup-rating.css");
@import url("../../css/pitchup-review-vote.css");
@import url("../../css/pitchup-select-menu.css");
@import url("../../css/user-messages.css");
@import url("../../css/review-rating-breakdown.css");
@import url("../../css/pitchup-primary-nav.css");


/* !Global Settings ///////////////////////// */
.pu-html {
    min-width: 1014px; /* 994+10px left/right */
}

body {
    font-family: tahoma, helvetica, sans-serif;
    font-size: 0.8em;
    line-height: 1.4;
    background: white;
}

html, button, input, select, textarea {
    color: #2b2b2b;
}

li {
    line-height: 1.3;
}

img {
    vertical-align: top;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

/* loading cursor */
body.loading, body.loading input, body.loading a {
    cursor: wait !important;
}

#content {
    clear: both;
    position: relative;
    background: white;
    min-height: 400px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    padding: 15px 20px;
}

#main {
    min-height: 1000px;
    position: relative
}

a {
    color: #39A54A;
    text-decoration: none;
}

.no-touch a:focus,
.no-touch a:hover {
    color: #000;
    text-decoration: underline;
}

p {
    margin-bottom: 10px;
    line-height: 1.4;
}

/* h1 { color:#655A39; } */
h2, h3 {
    color: #4f849d;
}

h2 span {
    color: #39B54A;
}

em {
    font-style: italic;
}

.datestamp {
    color: #888;
    font-size: smaller;
}

.agestamp, .meta {
    color: #999;
    font-size: smaller;
    font-weight: normal;
}

th {
    font-weight: bold;
    text-align: left;
}

.brown {
    color: #685C3C;
}

.campsite-blue {
    color: #4d8499;
}

.touch div.datepicker tbody.datepickerDays td:hover {
    background-color: #07C
}

/********************************************************
 * Utilities
 ********************************************************/
.strong {
    font-weight: bold;
}

.normal {
    font-weight: normal;
}

.right {
    text-align: right;
}

.center {
    text-align: center;
}

.nowrap {
    white-space: nowrap;
}

.break-word {
    word-wrap: break-word;
    word-break: break-all;
}

.padtop {
    padding-top: 1em;
}

.padtop2 {
    padding-top: 2em;
}

.padbottom {
    padding-bottom: 1em;
}

.padleft {
    padding-left: 2em;
}

.margintop {
    margin-top: 1em
}

.smaller {
    font-size: smaller;
}

.lineh1 {
    line-height: 1
}

.rounded {
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
}

.lhs {
    float: left;
}

.rhs {
    float: right;
}

.image-link {
    display: inline-block;
}

.image-link:focus,
.image-link:active {
    outline: none;
}

.no-text-link {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.stretchy-img {
    width: 100%;
    height: auto;
}

.rightAlign {
    display: block;
    text-align: right;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 0.8em 0;
    padding: 0;
}

.clearfix:after,
.container:after {
    content: "\0020";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
    overflow: hidden;
}

.clearfix,
.container {
    display: block;
}

.clear {
    clear: both;
}

.clearFloats, .clear {
    clear: both;
    display: block;
}

.delete_icon {
    background-image: url('../images2/sprites-general.png');
    background-position: -257px top;
    background-repeat: no-repeat;
    cursor: pointer;
    width: 16px;
    height: 16px;
    margin: 3px 0px 0 0;
    text-indent: -999em;
    display: block;
    float: right;
}

.delete_icon:hover {
    background-position: -238px top;
}

.moreLink {
    display: inline-block;
    text-decoration: underline;
    background-image: url('../images2/sprites-general.png');
    background-position: left -439px;
    background-repeat: no-repeat;
    padding-left: 18px;
    line-height: 1.2;
    min-height: 17px;
}

/* .tooltipster-icon.hide {display:none !important} */

/* !Form fields /////////////////////// */
form .label {
    margin-bottom: 2px;
}

form .chkLabel {
    float: left;
    margin-left: 4px;
}

input, textarea {
    margin-bottom: 5px;
}

/* jquery autocomplete */
.ac_input {
    font-size: 1.2em;
}

.placeholder {
    color: #c6c6c6;
}

.no-touch select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
    padding: 3px 5px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    background-color: #ffffff;
    border: 1px solid #cccccc;
}

input[type=checkbox] {
    border: 0px;
}

/* input[type="date"] { width:100px; } */
input[type='number'] {
    -moz-appearance: textfield;
}

input[type=number].nospin::-webkit-inner-spin-button,
input[type=number].nospin::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input.newsletter-form,
input#id_q,
input.typeahead,
input.tt-query,
input.tt-hint {
    font-size: 1.2em;
    width: 100%;
    padding: 6px 22px 6px 6px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    opacity: 1; /* override user agent stylesheet for ipad */
}

/* remove IE input clear button */
#id_q::-ms-clear {
    display: none;
}

/* twitter typeahead */
.twitter-typeahead {
    width: 100%;
}

.typeahead,
.tt-query,
.tt-hint {
    border: 2px solid #ccc;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    outline: none;
}

.typeahead {
    background-color: #fff;
}

.typeahead:focus {
    border: 2px solid #0097cf;
}

.tt-query {
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

.tt-hint {
    color: #999
}

.tt-dropdown-menu {
    width: 422px;
    margin-top: -6px;
    z-index: 99999 !important;
    padding: 0;
    background-color: #fff;
    border: 1px solid #ccc;
    overflow: hidden;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .7);
    -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, .7);
    box-shadow: 0 5px 10px rgba(0, 0, 0, .7);
}

.tt-suggestion {
    padding: 0.5% 2%;
    float: left;
    clear: both;
    width: 96%;
    position: relative;
    cursor: pointer;
}

.tt-suggestion.tt-cursor {
    color: #fff;
    background-color: #4f849d;
}

/* separated out for IE */
.tt-suggestion.tt-cursor:nth-child(odd) {
    color: #fff;
    background-color: #4f849d;
}

.tt-suggestion:nth-child(odd) {
    background-color: #f5f5f5;
}

.tt-suggestion-sub {
    float: right;
}

.tt-suggestion-sub em {
    font-weight: bold;
    font-style: normal;
    color: #ccc;
}

.tt-suggestion p {
    margin: 0;
    line-height: 1.4;
}

.tt-sites {
    height: auto;
    vertical-align: middle;
    display: table-cell;
    padding-right: 12em;
    font-weight: bold;
    line-height: 1.3 !important;
}

.tt-sites .tt-suggestion-sub {
    position: absolute;
    right: 0.6em;
    top: 0;
}

.tt-suggestion-sub .categoryIcon {
    float: right;
    margin: 2px;
}

.tt-thumb {
    float: left;
    padding-right: 0.4em
}

.tt-sites.has-image {
    height: 45px;
}

.tt-sites.has-image .tt-suggestion-sub {
    top: 15px;
}

.tt-suggestion .subicon {
    background-image: url('../images2/sprites-general.png');
    background-repeat: no-repeat;
    width: 21px;
    height: 21px;
    display: inline-block;
    float: right;
    margin: 0 0 0 .6em;
}

.tt-dataset-campsite .tt-suggestion {
    padding: 1% 2%
}

.tt-dataset-hierarchy .subicon {
    background-position: -88px -187px;
    margin-left: .4em;
}

.tt-dataset-festival .subicon {
    background-position: -88px -158px
}

.tt-autocomplete-wrapper {
    position: relative
}

.touch .tt-suggestion,
.touch .tt-dataset-festival .tt-suggestion {
    padding: 3% 2%;
}

.touch .tt-dataset-campsite .tt-suggestion {
    padding: 2% 2%
}

.tt-clear-search {
    position: absolute;
    z-index: 2;
    cursor: pointer;
    top: 5px;
    right: 3px;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    background: white;
    display: table;
    color: white;
    font-weight: bold;
    text-align: center;
    width: 20px;
    height: 20px;
    overflow: hidden;
    vertical-align: middle;
    line-height: 20px;
    font-size: 18px;
}

.tt-clear-search i {
    font-style: normal;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    color: #ccc;
    width: 20px;
    height: 20px;
}

/* move cancel button for iOS/touch as it interferes with cut/copy/paste  */
.touch .sidebar-column .twitter-typeahead {
    width: 92%
}

.touch .home .twitter-typeahead {
    width: 95%
}

.touch .sidebar-column input#id_q,
.touch .sidebar-column input.typeahead,
.touch .sidebar-column input.tt-query,
.touch .sidebar-column input.tt-hint {
    padding: 6px
}

.touch .sidebar-column .tt-clear-search {
    right: -7px;
    background: transparent
}

.sectiondivider {
    border-bottom: 2px solid #2b8938;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 1px !important;
    color: transparent;
}

form .tiny {
    width: 15px;
    /* border: 1px solid #b8ae99; */
}

form .short {
    width: 60px;
    /* border: 1px solid #b8ae99; */
}

form .medium {
    width: 120px;
    /* border: 1px solid #b8ae99; */
}

form .long {
    width: 150px;
    /* border: 1px solid #b8ae99; */
}

.checkBox, .radio {
    margin-right: 3px;
    width: 13px;
    height: 13px;
    overflow: hidden;
    vertical-align: top;
    position: relative;
    top: 0;
    border: 0px;
}

/* favourites menu */
.menu-favourites {
    position: absolute !important;
    right: 0;
    top: 32px;
}

.icon.favourite-menu-icon {
    background-position: -232px -18px;
    height: 11px;
    width: 12px;
    margin: 0px 4px 0 2px;
    float: none;
    display: inline-block;
}

.menu-list-options.favourites {
    top: 56px;
}

.menu-list-options.favourites li:hover,
.menu-list-options.favourites li:hover a {
    background: #dedede;
    color: inherit;
}

.sub-menu-scroll {
    max-height: 454px;
    overflow-y: auto;
}

.favourite-count {
    font-weight: normal;
}

.menu-list-options .favourite-campsite {
    width: 100%;
    height: auto;
    border-right: none !important;
    white-space: normal;
}

.cs-image-thumb {
    float: left;
    margin-right: 1em;
}

.favourite-campsite {
    position: relative;
}

.favourite-campsite .pu_rating {
    position: absolute;
    top: 11px;
    right: 10px;
}

.favourite-campsite .pu_rating.sml:after {
    background: white;
}

.menu-list-options.favourites .favourite-campsite:hover .pu_rating.sml:after {
    background: #dedede;
}

.favourite-campsite .csname {
    margin-right: 48px;
}

.favourites-menu-container {
    position: relative;
    overflow: hidden;
    min-height: 117px;
    padding-bottom: 37px;
}

.favourites-menu-container .manage-favourites-message {
    display: none;
}

.favourites-menu-info-panel {
    position: absolute;
    bottom: 0;
    width: 100%;
    top: auto;
    background-color: white;
    padding: 10px;
    box-sizing: border-box;
    -moz-box-shadow: 0 -1px 5px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0 -1px 5px rgba(0, 0, 0, 0.3);
    box-shadow: 0 -1px 5px rgba(0, 0, 0, 0.3);
    z-index: 1;
    -moz-border-radius: 0 0 5px 5px;
    -webkit-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
    min-height: 37px;
}

.favourites-menu-container .no-favourites-message {
    width: 100%;
    height: 100%;
    border: none !important;
    white-space: normal;
    float: none;
}

.favourites-menu-container .no-favourites-message:hover {
    background-color: white !important;
    pointer-events: none;
    cursor: default;
}

li.favourites-login-message {
    display: none;
}


/* !SEARCH BOX ////////////////////// */
#formFilter label,
#search_form label {
    display: block;
    padding: 0 0 3px 0;
    cursor: pointer;
    position: relative;
}

.searchbox {
    background-color: #d9ecf5;
    padding: 0 1em 1em;
    border-radius: 0 0 5px 5px;
    -webkit-border-radius: 0 0 5px 5px;
    -moz-border-radius: 0 0 5px 5px;
    min-height:635px;
}

.sidebar-column .datepickerDays a {
    width: 27px;
}

.touch .search-form .searchtypes label {
    border-radius: 6px;
    background-color: white;
    padding: 6px !important;
    margin: 7px 0;
}

.touch .search-form .searchtypes span.label {
    max-width: 160px;
}

.touch .searchtypes .count {
    top: 10px;
    right: 3px;
}

.searchtypes {
    margin: 10px 0;
}

.searchtypes input {
    float: left;
    margin: 2px 0 0;
}

.searchtypes #id_type div {
    min-height: 24px;
    line-height: 1;
    vertical-align: middle;
    position: relative;
}

.searchtypes #id_type div:nth-child(4) {
    margin-top: 9px;
}

.searchtypes span.img {
    float: left;
    width: 37px;
}

.searchtypes #id_type div label {
    cursor: pointer;
    position: relative;
}

.searchtypes .count {
    position: absolute;
    top: 0;
    right: 0;
}

.searchtypes .count:after {
    content: ")"
}

.searchtypes .count:before {
    content: "("
}

.search-types span.label {
    max-width: 165px;
    display: inline-block;
}

#date-range {
    margin: 0 0 10px;
}

.datepicker-results {
    margin-top: 3px;
    font-weight: bold;
}

.date-leader {
    font-weight: normal;
    min-width: 44px;
    display: inline-block;
}

.nights_count {
    font-weight: normal;
    margin-left: 5px;
}

.datepicker-instructions {
    color: #999;
    font-size: smaller;
    font-weight: normal;
    line-height: 1.2;
    margin-bottom: 4px;
}

.remove-dates {
    margin: 0;
    font-weight: normal;
    text-decoration: underline;
    display: inline-block;
}

.party_details {
    position: relative;
    display: inline-block
}

.party_details.disabled {
    opacity: .3;
}

.party_details.disabled input,
.party_details.disabled select {
    pointer-events: none;
}


#availability_box {
    position: relative;
    padding-bottom: 7px;
}

#availability_box .check_availability {
    border-top: 1px solid #bbbbbb;
    border-bottom: 1px solid #bbbbbb;
    margin: 2px 0 10px 0;
    padding: 2px 0;
}

.button.start-again {
    padding: 4px 6px;
}

.search_dates {
    padding-bottom: 3px;
    margin-bottom: 2px;
}

.select_children, .select_adults {
    float: left;
    margin: 0 15px .8em 0;
}

.children-selector-ages {
    float: left;
}

.child-ages {
    float: left;
    width: 17px;
    margin: 0 3px 3px 0;
    padding: 2px;
    text-align: center;
}

input[type="number"].child-ages {
    padding: 2px;
}

#id_nights {
    border: 0px none;
    width: 20px;
    background: transparent;
    text-align: right;
    margin: 0;
    padding: 0;
    font-weight: bold;
    font-size: inherit !important; /* @todo override the inline style coming from form, can this be removed? */
}

.categoryicons {
    padding-top: 0.5em;
}

/* selected filters search */
#id_within {
    margin-bottom: 5px;
}

.search_form_section {
    border-top: 1px solid #bbbbbb;
    padding-top: 3px;
}

a.location label {
    color: #2b2b2b;
}

.selected_facet {
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    background-color: #FAF3CE;
    border: 1px solid #CCCCCC;
    color: #555;
    cursor: default;
    display: inline-block;
    float: left;
    height: 12px;
    margin: .2em .5em .2em 0;
    padding: 0 7px 7px 3px;
    vertical-align: baseline;
}

.selected_facet:hover {
    -webkit-box-shadow: 1px 1px 2px #DDDDDD;
    -moz-box-shadow: 1px 1px 2px #DDDDDD;
    box-shadow: 1px 1px 2px #DDDDDD;
}

.selected_facet_remove {
    background-image: url('../images2/sprites-general.png');
    background-position: -257px top;
    background-repeat: no-repeat;
    cursor: pointer;
    width: 16px;
    height: 16px;
    margin: 2px 4px 0 0;
    text-indent: -999em;
    display: inline-block;
    float: left;
}

.selected_facet:hover .selected_facet_remove,
.selected_facet_remove:hover {
    background-position: -238px top;
}


.expander {
    display: inline-block;
    float: left;
    width: 16px;
    height: 16px;
    margin: 1px 3px 0px 0;
    background-image: url('../images2/sprites-general.png');
    background-position: -409px -21px;
    background-repeat: no-repeat;
}


/* !filter tabs //////////////////////////// */
ul.tabs_nav {
    float: left;
}

ul.tabs_nav li {
    margin-right: 4px;
    list-style: none;
}

ul.tabs_nav li, ul.tabs_nav li a {
    float: left;
}

ul.tabs_nav li.active a {
    color: #555;
    background: #fff;
    border-color: #777;
    border-bottom: 2px solid transparent;
    text-decoration: none;
}

ul.tabs_nav li a {
    text-decoration: none;
    padding: 4px 8px;
    border: 2px solid transparent;
    border-bottom: 2px solid #777;
    background-color: #777;
    border-radius: 5px 5px 0 0;
    -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
    margin-bottom: -2px;
}

ul.tabs_nav li a h3 {
    color: #fff;
}

ul.tabs_nav li.active a h3 {
    color: #555;
}

ul.tabs_nav li a:hover {
    background-color: #777;
    text-decoration: none;
}

ul.tabs_nav li a:hover,
ul.tabs_nav li a:focus {
    outline: none;
}

ul.tabs_nav li.active a:hover {
    background-color: #fff;
}

ul.tabs_nav h3 {
    padding: 0;
    margin: 0;
}

.filtertabs_content {
    clear: both;
    padding: 1em 0;
}

.tabs_wrapper {
    border-bottom: 2px solid #777;
}

ul.location ul {
    margin-left: 0.7em;
}

ul.location li {
    line-height: 1;
}

ul.location li a {
    display: block;
    padding: 4px;
}

ul.location li a.nolink {
    color: #555;
    text-decoration: none;
    pointer-events: none;
}

ul.location li a:hover {
    background-color: #d8f1fd;
}

span.count {
    float: right;
    font-size: smaller;
    font-weight: normal;
    color: #bbb;
    display: none;
}

span.count.visible {
    display: inline-block;
}

span.count:after {
    content: ")";
}

span.count:before {
    content: "(";
}

ul.location li a.hierarchy-type3 span.count.visible {
    display: none !important;
}

#price_slider {
    margin: 0 1em 1em 1em;
    padding-top: 3em;
}

#amount {
    padding: 0;
    border: 0;
    background-color: transparent;
    font-weight: bold;
}

.ui-rangeSlider-bar {
    background: #4f849d !important;
}

.ui-rangeSlider-handle {
    background: #aaa !important;
}

.touch .ui-rangeSlider-label {
    padding: 7px 11px 12px;
}


/* filter tabs long strings / translations - enable tabs to wrap text */
ul.tabs_nav li {
    margin-right: 0;
    max-width: 30%;
}

ul.tabs_nav li,
ul.tabs_nav li a {
    display: table-cell;
    height: 100%;
    float: none;
    vertical-align: bottom;
    text-align: center;
}

ul.tabs_nav li a {
    display: inline-block;
    margin-right: 4px;
}

.es ul.tabs_nav h3,
.fr ul.tabs_nav h3 {
    font-size: 1em;
}


.btn {
    display: inline-block;
    padding: 1px 9px;
    margin-bottom: 0;
    line-height: 20px;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    color: #333333;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
    background-color: #f5f5f5;
    background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
    background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
    background-repeat: repeat-x;
    border-color: #e6e6e6 #e6e6e6 #bfbfbf;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    border: 1px solid #bbbbbb;
    border-bottom-color: #a2a2a2;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
}

.no-touch .btn:hover,
.btn:active,
.btn.active,
.btn.disabled,
.btn[disabled] {
    color: #333333;
    background-color: #e6e6e6;
}

.no-touch .btn:hover {
    color: #333333;
    text-decoration: none;
    background-position: 0 -15px;
}

.btn.active,
.btn:active {
    background-image: none;
    outline: 0;
    -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
    -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
}

.btn-group {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    white-space: nowrap;
}

.btn-toolbar > .btn + .btn,
.btn-toolbar > .btn-group + .btn,
.btn-toolbar > .btn + .btn-group {
    margin-left: 5px;
}

.btn-group > .btn {
    position: relative;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}

.btn-group > .btn + .btn {
    margin-left: -1px;
}

.btn-group > .btn:first-child {
    margin-left: 0;
    -webkit-border-top-left-radius: 4px;
    -moz-border-radius-topleft: 4px;
    border-top-left-radius: 4px;
    -webkit-border-bottom-left-radius: 4px;
    -moz-border-radius-bottomleft: 4px;
    border-bottom-left-radius: 4px;
}

.btn-group > .btn:last-child {
    -webkit-border-top-right-radius: 4px;
    -moz-border-radius-topright: 4px;
    border-top-right-radius: 4px;
    -webkit-border-bottom-right-radius: 4px;
    -moz-border-radius-bottomright: 4px;
    border-bottom-right-radius: 4px;
}

.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active {
    z-index: 2;
}

.btn.active {
    pointer-events: none;
    cursor: default;
}


/* !HEADER ////////////////////////// */
#logo {
    position: absolute;
    width: 110px;
    height: 99px;
    z-index: 1;
    left: 1.9em;
    top: 9px;
}

.site_tagline {
    color: #685C3C;
    margin: 11px 0 0 0;
    font-size: 1.2em;
    line-height: 1.15em;
}

.en-gb .site_tagline, .en-us .site_tagline {
    font-size: 1.3em;
}

#top_header {
    position: relative;
    max-width: 994px;
    overflow: hidden;
    height: 68px;
}

#feefo-header-badge {
    margin: 8px 0 0 0px;
    height: auto;
}

/* Copyright */
.copyright {
    text-align: right;
    color: #a5a5a5;
    padding: 10px 0;
}

/* !Footer ////////////////////// */
#footer {
    clear: both;
    background: white;
    color: #333;
    padding: 20px 0 44px;
    margin: 0;
    min-width: 1030px;
}

.touch #footer {
    min-width: 100%;
}

#footer li {
    padding: 0.25em 0;
}

#footer a {
    color: #555;
}

#footer a:hover {
    text-decoration: underline
}

.gplus_icon {
    text-decoration: none;
    float: left;
    margin-right: 1em
}

.gplus_icon img {
    border: 0;
    width: 32px;
    height: 32px
}

/* !LOGIN FORM  ////////////////////////////*/
#login-form {
    float: left;
    padding: 0;
    width: 450px;
}

.centeredBox #login-form {
    width: 100%;
    float: none;
}

.centeredBox .login-wrapper {
    width: 90%;
}

#loginPopup #login-form {
    width: auto;
}

#loginPopup {
    width: 232px
}

#login-form .errorlist {
    font-weight: normal;
    margin: 0 0 20px;
}

#login-form .social-logins {
    margin: 1em 0;
}

#login-form .button {
    margin: 5px 0 0;
}

.newAccount {
    padding-top: 1em;
}

.account-benefits {
    list-style: disc inside;
}

.account-benefits li {
    list-style: inherit;
}


/* !Buttons ////////////////////////// */
button, .button {
    display: inline-block;
    padding: 4px 12px;
    margin-bottom: 0;
    font-size: 14px;
    line-height: 15px;
    text-align: center;
    text-decoration: none !important;
    vertical-align: middle;
    cursor: pointer;
    border: 1px solid #cccccc;
    border-bottom-color: #b3b3b3;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
    color: #ffffff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    background-color: #39b54a;
    background-image: -moz-linear-gradient(top, #39b54a, #2b8938);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#39b54a), to(#2b8938));
    background-image: -webkit-linear-gradient(top, #39b54a, #2b8938);
    background-image: -o-linear-gradient(top, #39b54a, #2b8938);
    background-image: linear-gradient(to bottom, #39b54a, #2b8938);
    background-repeat: repeat-x;
    border-color: #51a351 #51a351 #387038;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.no-touch .button:hover,
.no-touch .button:focus,
.button:active,
.button.disabled,
.button[disabled] {
    background-color: #2b8938;
    outline: none;
}

.no-touch .button:hover,
.no-touch .button:focus {
    color: #dedede;
    text-decoration: none;
    background-position: 0 -15px;
    -webkit-transition: background-position 0.1s linear;
    -moz-transition: background-position 0.1s linear;
    -o-transition: background-position 0.1s linear;
    transition: background-position 0.1s linear;
}

.button:active {
    color: #333333;
    background-image: none;
    outline: 0;
    text-decoration: none;
    -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
    -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
}

.button.disabled,
.button[disabled],
button.disabled,
button[disabled] {
    cursor: not-allowed;
    pointer-events: none;
    background-image: none;
    opacity: 0.65;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.button.alt {
    color: #333333;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
    background-color: #f5f5f5;
    background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
    background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
    background-repeat: repeat-x;
    border-color: #e6e6e6 #e6e6e6 #bfbfbf;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    border: 1px solid #cccccc;
}

.no-touch .button.alt:hover,
.no-touch .button.alt:focus,
.button.alt:active,
.button.alt.disabled,
.button.alt[disabled] {
    color: #999999;
    background-color: #e6e6e6;
}

.button.alt.disabled,
.no-touch .button.alt.disabled:hover,
.button.alt.disabled:active,
.no-touch .button.alt.disabled:focus {
    background-image: none;
}

.button.info {
    color: #ffffff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    background-color: #49afcd;
    background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));
    background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
    background-image: -o-linear-gradient(top, #5bc0de, #2f96b4);
    background-image: linear-gradient(to bottom, #5bc0de, #2f96b4);
    background-repeat: repeat-x;
    border-color: #2f96b4 #2f96b4 #1f6377;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.no-touch .button.info:hover,
.no-touch .button.info:focus,
.button.info:active,
.button.info.active,
.button.info.disabled,
.button.info[disabled] {
    color: #ffffff;
    background-color: #2f96b4;
}

.button.mini {
    padding: 0 6px;
    font-size: 10.5px;
    text-decoration: none;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.button.large {
    padding: 11px 19px;
    font-size: 17.5px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
}

.button.multiline {
    line-height: 1.2
}

.button.asblock {
    display: block;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* !content boxes ///////////////////// */
.cb {
    display: block;
    border-top: 3px solid #39B54A;
    margin: 0 2em 2em 0;
}

.cb_content {
    padding: 0.5em 0 0 0
}

.cb_content h2 {
    margin-bottom: 0.4em;
    text-transform: uppercase;
    font-size: 1.4em;
}

.cb_content:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.cb.no-border {
    border: none;
}

.cb.no-border .cb_content {
    padding: 0
}

.pressroom-rhs .cb {
    margin-right: 0;
}


/*************************
 * Search area
 *************************/
.searchArea {
    float: left;
    position: relative;
    width: 232px;
    overflow: hidden;
}

.searchArea .frame {
    position: relative;
    width: 232px;
    margin-bottom: 10px;
}

/* !breadcrumbs ///////////////////////////////////////////// */
.breadcrumb {
    list-style: none;
    margin-bottom: 1em;
    display: block;
    clear: both;
    min-height: 27px;
}

.breadcrumb li {
    float: left;
    margin-bottom: 1px;
}

.breadcrumb li a {
    color: #555;
    text-decoration: none;
    padding: 5px 3px 6px 17px;
    background: #b9e5fb;
    position: relative;
    display: block;
    float: left;
}

.breadcrumb li a.nolink {
    cursor: default;
    pointer-events: none;
}

.breadcrumb li a:after {
    content: " ";
    display: block;
    width: 0;
    height: 0;
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-left: 10px solid #b9e5fb;
    position: absolute;
    top: 0;
    left: 100%;
    z-index: 2;
}

.breadcrumb li a:before {
    content: " ";
    display: block;
    width: 0;
    height: 0;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 11px solid white;
    position: absolute;
    top: -1px;
    margin-top: 0px;
    margin-left: 1px;
    left: 100%;
    z-index: 1;
}

.breadcrumb li:first-child a {
    padding-left: 10px;
}

.breadcrumb li:nth-child(1) a {
    background: #65C6F6;
}

.breadcrumb li:nth-child(1) a:after {
    border-left-color: #65C6F6;
}

.breadcrumb li:nth-child(2) a {
    background: #82D0F8;
}

.breadcrumb li:nth-child(2) a:after {
    border-left-color: #82D0F8;
}

.breadcrumb li:nth-child(3) a {
    background: #9FDBF9;
}

.breadcrumb li:nth-child(3) a:after {
    border-left-color: #9FDBF9;
}

.breadcrumb li:nth-child(4) a {
    background: #B2E2FB;
}

.breadcrumb li:nth-child(4) a:after {
    border-left-color: #B2E2FB;
}

.breadcrumb li:nth-child(5) a {
    background: #C5E9FC;
}

.breadcrumb li:nth-child(5) a:after {
    border-left-color: #C5E9FC;
}

.breadcrumb li:nth-child(6) a {
    background: #D8F1FD;
}

.breadcrumb li:nth-child(6) a:after {
    border-left-color: #D8F1FD;
}

.breadcrumb li:last-child a:after {
    border-left-color: #D8F1FD;
}

.breadcrumb li:last-child a {
    pointer-events: none;
    cursor: default;
    background: #D8F1FD;
}

.campsitePageBreadcrumbs li:last-child a {
    pointer-events: all;
    cursor: pointer;
}

.breadcrumb li a:hover {
    background: #65AACD;
    color: white;
}

.breadcrumb li a:hover:after {
    border-left-color: #65AACD !important;
}

.breadcrumb .facet-count {
    margin: 0 0 0 3px;
}

/* !Search results ///////////////////////////////////// */
.searchResultsHeading {
    margin: 0 0 .5em;
}

.searchResultsHeading .search-term {
    display: block;
    color: #4f849d;
}

/* festivals summary */
.festival-name {
    margin: 0 0 .3em 0;
}

.festival-link {
    float: right;
    margin-bottom: 2em;
}

.showhidemap {
    position: relative;
    padding-left: 21px;
    margin-left: 1.2em;
}

.showhidemap:hover, .showhidemap:active {
    color: #333 !important;
}

.showhidemap span {
    display: block;
    width: 34px;
    height: 34px;
    position: absolute;
    left: -4px;
    top: -4px;
    background: url('../images2/sprites-general.png') no-repeat -354px -19px;
}

#map {
    position: relative;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.searchResults .btn-group {
    float: right;
}

.results_options {
    border-top: 1px solid #ccc;
    padding-top: 10px;
    padding-bottom: 10px;
    min-height: 29px;
}

.results_options .datestamp {
    margin: 0.5em 0 0 0;
}

.hierarchy-children {
    margin: 0 0 5px 0;
    line-height: 1.5;
}

.hierarchy-children li {
    list-style: none;
    display: inline-block;
    line-height: 1.5;
}

.hierarchy-children li a:hover {
    text-decoration: none;
}

.hierarchy-children .count {
    margin: 0 7px 0 2px;
    float: none;
}

/* search results expand */
.expand_results {
    margin: 2em 0;
    padding: 1em 1.5em 1em;
    background-color: #fcf6dd;
    border-top: 3px solid #39B54A;
}

.expand_results_options {
    font-size: 1.2em;
    margin-top: 1em;
    line-height: 1;
}

.expand_results_options a {
    font-weight: bold;
    white-space: nowrap;
}

.expand_results_options p {
    margin-bottom: 1em;
}

.expand_results_options .countries {
    line-height: 1.7;
}

.expand_results_options .count {
    margin: 0 0 0 4px;
    float: none;
}

.expand_results_options .group-booking {
    margin: 0 0 1em 0;
}

/* search result cards */
.searchResult {
    padding: 20px 0 0;
    margin-bottom: 20px;
    border-top: 3px solid #b5b5b5;
    position: relative;
}

.no-touch .searchResult.bookable:hover {
    background: #EFF8FF;
    border-top: 3px solid #777;
}

.no-touch .searchResult.bookable:hover .pu_rating:after {
    background: #EFF8FF;
}

.searchResult table {
    width: 100%;
}

.searchResult-options .pu_rating {
    margin: 0 0 10px 0.75em;
    float: none;
}

.new-badge {
    background: #C70000;
    font-weight: bold;
    padding: 2px 4px;
    border-radius: 4px;
    color: white;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: normal;
    margin: 0 0.75em 0 0;
}

.card-meta {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.searchResult-options .new-badge {
    margin: 0;
}

.pu_rating_count {
    display: block;
    margin-top: -5px
}

.campsite-image-cell {
    width: 216px;
}

.campsite-image-cell img {
    margin-right: 14px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    width: 200px;
    height: 150px;
}

.campsite-image-cell a, .campsite-image-cell a:active, .campsite-image-cell a:hover {
    outline: none;
}

.ribbon-wrapper {
    display: block;
    width: 100%;
    height: 150px;
    position: relative;
}

.ribbon-wrapper a.helptip {
    z-index: 3;
    position: absolute;
    left: 35px;
    top: 0;
    display: inline-block;
    width: 16px;
    height: 16px;
    cursor: help;
}

.touch .ribbon-wrapper a.helptip {
    left: 30px;
    top: -5px;
    width: 26px;
    height: 26px;
}

.payment_flash {
    display: inline-block;
    position: absolute;
    z-index: 2;
    width: 66px;
    height: 66px;
    left: 0;
    top: 0;
    background-repeat: no-repeat;
    background-position: left top;
}

.payment_flash.hosted_full_payment {
    background-image: url('../images2/payup_flash.png');
}

.payment_flash.balance_on_arrival {
    background-image: url('../images2/boa_flash.png');
}

.campsite-name-block {
    position: relative;
    margin-bottom: 0;
}

.campsite-name-title {
    display: inline;
    font-size: 1em;
}

.campsite-name {
    font-weight: bold;
    font-size: 1.85em;
    line-height: 1.15em;
    color: #2b2b2b;
    padding-right: 6px;
}

.searchResult-options {
    float: right;
    text-align: right;
    margin-left: 2em;
    position: relative;
    z-index: 1;
}

.searchResult .next-open-date {
    display: block;
    color: #f28f0d;
    font-style: italic;
    font-size: .9em;
    margin: -0.5em 0 0.25em 0;
}

.searchResult-options .distance {
    margin-bottom: .2em;
}

.searchResult-options .button {
    margin-top: 1em
}

.campsite-details-cell .category-icons {
    margin: 0 1em 5px 0;
    display: inline-block;
}

.campsite-details-cell .last_booked_string {
    display: inline-block;
    vertical-align: top;
}

.description-snippet {
    margin: 15px 0 0 0;
}

.campsite-uniques {
    display: block;
    margin: 3px 0 0 16px;
    min-height: 70px;
}

.campsite-uniques li {
    list-style: circle outside;
    line-height: 1.4;
}

.distance {
    font-weight: bold;
    font-size: 1.5em;
}

.booktable {
    margin-top: 8px;
    margin-bottom: 0;
    border-bottom: 1px solid #dedede;
}

.booktable th {
    background-color: #dedede;
    color: #555;
    font-weight: normal;
    padding: 2px;
}

.booktable td {
    padding: 2px;
    border-top: 1px solid #dedede;
}

.booktable td.categories {
    width: 110px;
}

.booktable td.availability {
    min-width: 90px;
    text-align: center;
}

.booktable td.price {
    min-width: 120px;
    text-align: right;
}

.booktable td.pitchtype_name {
    width: 42%;
}

.booktable td.from_price {
    width: 170px;
    text-align: right;
}

.booktable tr.pt-no-availability {
    background-color: #f5f5f5;
    color: #bbbbbb;
}

.pt-table,
.pt-table:hover {
    color: #2b2b2b;
    text-decoration: none !important;
}

.site_location {
    margin: 3px 0 7px;
    font-weight: normal;
    display: block;
    min-height: 16px;
}

/* 'Want to see more?' losenge */
.showingBookableOnly {
    border: 1px solid #665a39;
    background-color: #dcefc2;
    margin: 0 0 10px;
    padding: 1em 1em 0.5em;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

.zero-availability {
  margin: 7px 0 0 0;
  font-weight: bold;
}

.hidden {
    display: none;
}

ul.menu {
    margin: 3px 0;
}

.more {
    display: none;
}

.error input,
input.error {
    border: solid red 1px;
}

.errors, .errorlist {
    color: red;
    font-weight: bold;
}

.hint, .blur {
    color: #ccc;
    font-style: italic;
}

.signature {
    font-style: italic;
}

#socialButtonsDiv {
    float: right;
    margin-left: 1em;
}

.room-imgs {
    float: left;
}

.roomtype-img {
    margin-top: 5px;
    margin-right: 10px;
    float: left;
}


/* paging */
.paging a {
    margin: 3px;
    font-weight: bold;
}

.menu li > a {
    display: block;
    padding: 2px 12px 2px 24px;
    margin: 0 -12px;
}

.menu li > a:hover {
    background-color: #fff;
}

.menu > li {
    clear: both;
}

.other-accommodation.menu li > a {
    height: 1em;
    padding-left: 12px;
}

ul.menu.editable li h4 {
    color: #655a39;
}

.menu.editable li > a {
    margin-bottom: 2px;
}

.menu.editable li > a {
    padding-right: 10px;
    padding-left: 12px;
}

.menu.editable .accomTypesList {
    list-style-type: none;
}

.menu.editable .accomTypesList img {
    margin-right: 0.5em;
    vertical-align: middle;
}

.menu.selected-filters.editable li > a:hover {
    background-image: none;
}

.selected-filters > li {
    clear: both;
}

.selected-filters .type li {
    float: left;
    margin-right: 5px;
}

.number input {
    width: 30px;
}

.input100 input {
    width: 100%;
}

.short input {
    width: 70px;
}

table .smaller a {
    font-size: 10px;
}

table.spacetable {
    width: 100%;
}

.spacetable td {
    padding: 5px 10px 5px 0;
    vertical-align: top;
}

.spacetable th {
    font-weight: bold;
    font-size: 1.1em;
    padding: 10px 10px 10px 0;
    white-space: nowrap;
}

.spacetable h1 {
    padding: 0;
    margin: 0;
}

ul.errorlist {
    margin: 5px 0;
    padding-left: 0 !important;
}

ul.errorlist li {
    list-style: none
}

#booking_form ul.errorlist {
    height: 1.5em;
    position: relative;
}

#booking_form ul.errorlist li {
    position: absolute;
}

#awards-search {
    margin-right: 0 !important;
}

a.selected {
    color: #555555 !important;
}

td {
    vertical-align: top;
}

/* about pages - sidebar menu */
.about-menu ul {
    padding-left: 10px;
    padding-bottom: 10px;
}

.about-menu ul li {
    line-height: 1.6;
    font-size: 1.17em
}

.about-menu h2 {
    margin: 5px 0 5px;
    border-top: 3px solid #39B54A;
    padding: .3em 0 0 0;
}

.main-column .pw-reset-email {
    width: 280px;
    display: block;
}


/* !Avatars ================================================== */
.avatar {
    float: left;
    position: relative;
    width: 42px;
    height: 42px;
    border: 3px solid white;
    background-color: white;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

.avatar a {
    display: inline-block;
}

.avatar img {
    width: 42px;
    height: 42px;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}


/* Rules for Bing Maps */
/*
    .VE_Pushpin_Popup_Title h2 {
      font-size: 12px;
    }
    .VE_Pushpin_Popup_Body {
      font: 12px tahoma, helvetica, sans-serif;
    }

    .InfoBox > .content > .description {
        font: 12px tahoma, helvetica, sans-serif;
    }
*/

.NavBar_menuitem > .NavBar_itemContainer_cb {
    visibility: hidden;
    display: none;
}

.LogoContainerSearch, .LogoContainer.Active, .LogoSearchGroup, .LogoSearchContainer {
    visibility: hidden !important;
    display: none !important;
    height: 0px;
    width: 0px;
    opacity: 0;
}

.NavBar_typeTitle {
    font-size: 1.1em !important;
}

.NavBar_typePreview {
    width: 25px !important;
    height: 25px !important;
}

/* end of rules for bing maps */

div.search-types img {
    margin-left: 2px;
    margin-right: 2px;
}

div.search-types li:last-child img {
    margin-right: 0;
}

div.thumbNails ul li {
}

div.thumbNails ul li img {
    margin-bottom: 5px;
}

div.thumbNails a {
    margin-right: 2px;
}

div.thumbNails a img {
    margin-bottom: 5px;
}

a.blowup {
    display: block;
}

/* !Booking ///////////////////////// */
form#booking_settings_form table td {
    padding-bottom: 5px;
}

table.table-manager td {
    padding: 3px 5px;
    border: 1px solid #655a39;
    border-collapse: collapse;
}

table.table-manager th {
    padding-bottom: 5px;
    border: 1px solid #6e582e;
    padding-left: 5px;
}

form.contact-form td {
    padding: 10px 20px 0 0;
}

form.contact-form label {
    display: block;
    font-weight: bold;
}

form.contact-form input, form.contact-form select, form.contact-form textarea {
    width: 100%;
}

form.resend-confirmation input[type=email] {
    width: 40%;
}

form.contact-form input.checkbox {
    width: auto;
}

#booking-loading {
    text-align: center;
}

.blocklabels label {
    display: block;
}

.booking-info {
    width: 80%;
}

.booking-info tr {
    border-top: 1px solid #dedede;
}

.booking-info td {
    text-align: right;
}

.booking-info td, table.booking-info th {
    padding: 4px 10px;
}

.booking-info select {
    width: 150px;
}

.booking-info .important_info {
    background-color: #dcf1ff;
    border-top-color: white;
}

#booking_prompt {
    margin: 0;
    line-height: 1.1
}

.important_info td {
    font-weight: bold;
    font-size: 1.1em;
    text-align: left;
    width: 90%;
    white-space: nowrap;
}

.important_info th {
    font-weight: normal;
    text-align: left;
    width: 10%;
    white-space: nowrap;
}

.important_info .pt-categories {
    float: left;
    margin-top: 2px;
}

.important_info .pt-categories .categoryIcon {
    margin-right: 4px !important;
}

.booking-info .booking-dimensions {
    font-weight: normal;
    background-color: #FFFF00;
}

.paymentbadges {
    display: inline-block;
    float: left;
    cursor: pointer;
}

.creditcards {
    width: 128px;
    height: 37px;
    background: url('../images2/sprites-general.png') no-repeat -165px -62px;
}

.paypalbadge {
    width: 115px;
    height: 36px;
    background: url('../images2/sprites-general.png') no-repeat -157px -298px;
}

#user_messages, .formErrorBox {
    border: solid 1px #b8ae99;
    padding: 1em 2em;
    text-align: center;
    background-color: #ffffbb;
    font-size: 14px;
    margin-bottom: 10px;
}

table.transactions th {
    font-weight: bold;
}

table.transactions th, table.transactions td {
    padding: 3px;
}

#loading {
    padding-top: 20px;
    font-style: italic;
    font-weight: bold;
}

.flatpage ul {
    padding-left: 20px;
    margin-bottom: 10px;
}

.flatpage li {
    list-style-type: disc;
    line-height: 17px;
}

.flatpage h2 {
    margin: 0.9em 0;
}

.flatpage h3, .flatpage h4 {
    margin: 0.7em 0;
}

.flatpage h2 span {
    color: #4f849d;
}

.smallcount {
    font-size: 0.9em;
}

#paypal-form input {
    border: 0;
    float: right;
    margin-bottom: 10px;
}

#paypal-form a {
    margin-right: 5px;
    float: right;
}

.lmdate {
    font-size: 0.8em;
}

.comment-form label {
    width: 100px;
    float: left;
    display: block;
}

div.author {
    font-style: italic;
    border-top: dashed #ccc 1px;
    font-size: 14px;
    padding: 5px;
}

img.gravatar {
    float: right;
    margin-bottom: 10px;
}

p.comment {
    margin: 5px 0;
    padding: 5px;
    line-height: 130%;
}

ol.numbers li {
    list-style: inherit;
}

ol.numbers {
    padding-left: 30px;
    margin: 10px 0;
}


/* blog */
li.entry-in-entry-list {
    border-top: 1px solid #ccc;
    margin-top: 1em;
    padding-top: .5em;
}

.blog .main-column p,
.main-column .blog p,
.main-column .blog li,
li.entry-in-entry-list p {
    font-size: 14px;
    line-height: 21px;
}

li.entry-in-entry-list h1 {
    padding-bottom: .1em
}

li.entry-in-entry-list .timestamp {
    font-style: italic;
}

.blog h2 {
    margin-bottom: .2em
}

div.caption p {
    text-align: center;
    font-style: italic;
    font-weight: normal;
    font-size: smaller;
}

#hierarchyCascade select {
    display: block;
}

.show-on-map {
    font-style: italic;
}

.letter {
    color: #EF4446;
    font-weight: bold;
}

td.rate {
    font-size: 1.2em;
    font-weight: bold;
}

table.thintable, table.thintable td {
    border: none !important;
    padding: 0 !important;
}

span.edit-hint {
    float: right !important;
    font-style: italic;
    font-size: .9em;
}


.booking-desc {
    max-width: 250px;
    overflow-x: auto;
}

.fb_iframe_widget {
    vertical-align: middle;
}

.blog_list li {
    line-height: 1.5;
    font-size: 1.2em;
}

/* tags */
.tag a {
    color: #555;
}

#loader {
    width: 100%;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    background: transparent url('../images/loading_32.gif') no-repeat center center;
}

/* !icons //////////////////////////////////////  */
.grade {
    background-image: url('../images2/sprites-general.png');
    display: block;
    height: 16px;
    overflow: hidden;
    text-indent: -999em;
    width: 72px;
}

.stars0 {
    background-position: -70px -139px
}

.stars1 {
    background-position: -56px -139px
}

.stars2 {
    background-position: -42px -139px
}

.stars3 {
    background-position: -28px -139px
}

.stars4 {
    background-position: -14px -139px
}

.stars5 {
    background-position: 0 -139px
}

.icon {
    background-image: url('../images2/sprites-general.png');
    background-position: -600px -600px;
    background-repeat: no-repeat;
    display: block;
    float: left;
    height: 20px;
    margin-right: 4px;
    vertical-align: middle;
    width: 22px;
    outline: none;
}

.vote_count {
    font-weight: normal;
}

.vote_buttons {
    margin-top: .5em
}

.campsite-header {
    position: relative
}

.inline-sprite.lazy-bg-loaded {
    display: inline-block;
    background: transparent url('../images2/sprites-general.png') no-repeat -600px -600px;
}

.personsIcon.lazy-bg-loaded {
    width: 11px;
    height: 13px;
    background-position: -218px -17px;
}

.availability .personsIcon {
    margin-top: 2px;
}

.facilities_sectioned a.tooltip {
    display: inline-block;
    vertical-align: middle;
    margin-left: 2px;
}

.paymentIcons.lazy-bg-loaded {
    width: 227px;
    height: 42px;
    display: inline-block;
    background: transparent url('../images2/sprites-general.png') no-repeat -165px -62px;
}

.payment-icons-row {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    margin: 1em 0 0 0;
}

.payment-icons-row img {
    height: 33px;
    width: 52px;
    margin: 0 0.5em 0.5em 0;
}

.tomtomIcon {
    width: 93px;
    height: 19px;
    background-image: url('../images2/sprites-general.png');
    background-position: -450px top;
}

.tomtomIcon:hover {
    background-position: -450px -21px;
}

.social-share-icon.lazy-bg-loaded {
    width: 45px;
    height: 45px;
    display: inline-block;
    background: transparent url('../images2/sprites-general.png') no-repeat -373px -126px;
    margin: .3em .7em .4em 0;
    text-indent: -999em;
}

.social-share-icon.tw {
    background-position: -430px -126px
}

.social-share-icon.gp {
    background-position: -486px -126px
}

.social-share-icon.pi {
    background-position: -543px -126px
}

.social-share-icon.ig {
    background-position: -316px -126px
}

.social-share-icon.in {
    background-position: -486px -238px
}

.social-share-icon:hover, .social-share-icon:active {
    background-position-y: -182px;
    outline: 0;
}

.social-share-icon.in:hover, .social-share-icon.in:active {
    background-position: -543px -238px;
}

.social-share-icon:focus {
    outline: 0;
}


/* search again / go back box */
.search-again {
    border-bottom: 1px solid #dedede;
    padding-bottom: 0.6em;
}

.search-again h2 {
    padding-left: 25px;
    margin: -8px 0 0;
}

.search-again h2 a:hover, .search-again h2 a:hover span {
    text-decoration: underline;
    color: #000;
}

.search-again option {
    padding-right: 10px;
}

.favourite {
    visibility: hidden;
}

.show-favourites .favourite {
    visibility: visible;
}

.favourite.button {
    color: #888;
    height: 16px;
    padding: 2px;
    border-radius: 12px;
    width: 17px;
    display: inline-block;
    position: absolute;
    bottom: 2px;
    outline: none;
}

.favourite span {
    height: 11px;
    width: 12px;
    margin: 3px 0px 0 2px;
}

.favouriteIcon {
    background-position: -259px -18px;
}

.isFavourite .favouriteIcon {
    background-position: -232px -18px;
}

.no-touch .favourite:hover .favouriteIcon {
    background-position: -246px -18px;
}

.favourite.isFavourite:hover .favouriteIcon {
    background-position: -232px -18px !important;
}

/* lrg favourite on SR and CS */
.large-favourite .favourite {
    background-image: url('../images2/favourites/favourite-outline.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100%;
    width: 26px;
    height: 26px;
    border-radius: 0;
    border: none;
    bottom: auto;
    padding: 0;
    margin: 3px 0 0 0;
    text-shadow: none;
    box-shadow: none;
    background-color: transparent;
}

.large-favourite .favourite.isFavourite {
    background-image: url('../images2/favourites/favourite-filled.svg');
}

.large-favourite .isFavourite .favouriteIcon,
.large-favourite .favourite .icon {
    display: none;
    background: none;
}

.large-favourite .favourite:hover,
.large-favourite .favourite:focus,
.large-favourite .favourite:active {
    background-position: 0;
    background-color: transparent !important;
    outline: none;
    -webkit-tap-highlight-color: transparent;
}

.large-favourite .favourite:hover {
    background-image: url('../images2/favourites/favourite-filled.svg');
}

.large-favourite .favourite.isFavourite:hover {
    -webkit-filter: saturate(0.7);
    filter: saturate(0.7);
}

.campsite-name-block .campsite-name {
    padding-right: 0;
    margin-right: 11px;
}

.large-favourite.campsite-header .favourite {
    float: right;
    margin: 0;
}

.campsite-header .card-meta {
    min-height: 29px;
}

/* category icons */
.categoryIcon {
    background: url('../images2/sprites-general.png') no-repeat left top;
    display: block;
    float: left;
    height: 19px;
    margin: 0 2px;
    vertical-align: middle;
}

.categoryIcon.tents {
    background-position: left top;
    width: 19px;
}

.categoryIcon.yurts {
    background-position: -21px -1px;
    width: 24px;
}

.categoryIcon.lodges {
    background-position: -47px top;
    width: 17px;
}

.categoryIcon.tourers {
    background-position: -67px -1px;
    width: 26px;
}

.categoryIcon.motorhomes {
    background-position: -97px -1px;
    width: 25px;
}

.categoryIcon.caravans {
    background-position: -126px -1px;
    width: 32px;
}

.categoryIcon.disabled.tents {
    background-position: left -43px;
}

.categoryIcon.disabled.yurts {
    background-position: -21px -44px;
}

.categoryIcon.disabled.lodges {
    background-position: -47px -43px;
}

.categoryIcon.disabled.tourers {
    background-position: -67px -44px;
}

.categoryIcon.disabled.motorhomes {
    background-position: -97px -44px;
}

.categoryIcon.disabled.caravans {
    background-position: -126px -44px;
}

.booktable tr.pt-no-availability .categoryIcon.tents {
    background-position: left -21px;
}

.booktable tr.pt-no-availability .categoryIcon.yurts {
    background-position: -21px -22px;
}

.booktable tr.pt-no-availability .categoryIcon.lodges {
    background-position: -47px -21px;
}

.booktable tr.pt-no-availability .categoryIcon.tourers {
    background-position: -67px -22px;
}

.booktable tr.pt-no-availability .categoryIcon.motorhomes {
    background-position: -97px -22px;
}

.booktable tr.pt-no-availability .categoryIcon.caravans {
    background-position: -126px -22px;
}

.searchtypes .categoryIcon.tents {
    margin-left: 10px;
    margin-top: -3px;
}

.searchtypes .categoryIcon.yurts {
    margin-left: 7px;
    margin-top: -2px;
}

.searchtypes .categoryIcon.lodges {
    margin-left: 10px;
    margin-top: -3px;
}

.searchtypes .categoryIcon.tourers {
    margin-left: 6px;
    margin-top: -1px;
}

.searchtypes .categoryIcon.motorhomes {
    margin-left: 7px;
}

.searchtypes .categoryIcon.caravans {
    margin-left: 3px;
    margin-top: -2px;
}

.page_rss a {
    background: url('../images2/sprites-general.png') -1px -301px no-repeat;
    padding-left: 22px;
    height: 20px;
    line-height: 20px;
    display: inline-block;
}


/* user badges */
.badge {
    background: transparent url('../images2/sprites-general.png') no-repeat -600px -600px;
    display: inline-block;
    float: none;
    height: 19px;
    margin-right: 2px;
    vertical-align: middle;
    width: 19px;
}

.badge.gold {
    background-position: -230px -34px;
}

.badge.silver {
    background-position: -209px -34px;
}

.badge.bronze {
    background-position: -251px -34px;
}

.priceOffer {
    color: #c00;
}

.priceSuperseded {
    color: #ccc;
    text-decoration: line-through !important;
}


/* Tipsy typographic fixes: */
body .tipsy {
    font-size: 12px;
}

.touch body .tipsy {
    font-size: 15px;
}

body .tipsy-inner {
    text-align: left;
}

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

.primary_photo {
    border: 3px solid #3AB54B;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 0 4px 4px #f6f6f6;
    -moz-box-shadow: inset 0 0 4px 4px #f6f6f6;
    box-shadow: inset 0 0 4px 4px #f6f6f6;
}

.low_availability {
    background-color: #FAF3CE;
}

/* !Reviews | homepage + cat landing pages */
.reviews {
    position: relative
}

.review_wrapper {
    padding: 0.4em 0.6em;
    margin: 0;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    border-radius: 6px;
    background-color: #e7e7e7;
    position: relative;
}

.review_wrapper .pu_rating:after {
    background-color: #e7e7e7;
}

.review_footer {
    margin-bottom: 1.6em;
    padding-left: 0.2em;
    line-height: 1;
}

.review_wrapper p {
    margin-bottom: 0;
    line-height: 1.2;
    word-break: break-word;
    word-wrap: break-word;
}

.homepage .review_wrapper h3 {
    margin-bottom: 4px;
    line-height: 1.2;
    min-height: 31px;
    font-size: 1em;
}

.review_wrapper h3 a {
    color: #2b2b2b;
}

.review_wrapper h3 a:hover {
    color: #39A54A;
}

.reviews .pu_rating {
    float: right;
    margin: 0 0 0 1em;
}

.review_wrapper.tail:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -13px;
    width: 0;
    border-width: 15px 15px 0 0;
    right: 14px;
    border-style: solid;
    border-color: #e7e7e7 transparent;
}


/* Hi-res/retina display CSS sprites */
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {

    .xsprite,
    .inline-sprite.lazy-bg-loaded,
    .categoryIcon,
    .grade,
    .delete_icon,
    .expander,
    .selected_facet_remove,
    .badge,
    ul.manager-actions li a:before,
    .icon, .amenityIcon,
    .moreLink,
    .page_rss a,
    .creditcards,
    .paypalbadge,
    .showhidemap span,
    .tt-suggestion .subicon {
        background-image: url('../images2/sprites-general.x2.png');
        -moz-background-size: 600px 600px;
        -ie-background-size: 600px 600px;
        -o-background-size: 600px 600px;
        -webkit-background-size: 600px 600px;
        background-size: 600px 600px;
    }

    .payment_flash {
        -moz-background-size: 66px 66px;
        -ie-background-size: 66px 66px;
        -o-background-size: 66px 66px;
        -webkit-background-size: 66px 66px;
        background-size: 66px 66px;
    }

    .payment_flash.hosted_full_payment {
        background-image: url('../images2/payup_flash.x2.png');
    }

    .payment_flash.balance_on_arrival {
        background-image: url('../images2/boa_flash.x2.png');
    }
}



