.apipage h2 { font-size: 1.5em!important; }
.apipage { padding: 20px 5px!important; }
.apipage .button { display: inline-block; max-width: none; margin: 10px auto; }
a.overall-anchor {position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: transparent; z-index: 2; }
.thanks {
    text-align: center;
    padding: 40px;
    font-size: 120%;
    color: green;
    font-style: italic;
    background: #F0FFF0;
    border: 1px solid green;
    border-radius: 10px;
}
:focus {
    outline: 0;
}
.gform_body { max-width: 100%; }

div.rttooltip {
    width: 100%;
    height: auto;
    border: 1px solid #808080;
    margin: 10px auto;
    padding: 5px;
    color: #008D9B;
    text-align: center;
    font-size: 13px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -khtml-border-radius: 10px;
    border-radius:10px;
}
.ui-tooltip-content {
    font-size: 10pt;
    line-height: 12pt;
}

#loadingMask {
    display: none;
    position: absolute;
    z-index: 1;
    background-color: white;
    opacity: 0.66;
}
.ajax-loading {  background: url("../rts/images/loading.gif") no-repeat scroll center 50px transparent; background-color: rgba(255, 255, 255, .6); }
.loading-div {
    background: url('../rts/images/loading.gif');
    width: 32px;
    height: 32px;
    margin: 50px auto;
}

.legend-booked, .legend-selected
{
    display: inline-block;
    width: 49%;
    margin: 10px auto;
    text-align: center;
}

.legend-booked span,.legend-selected span
{
    display: inline-block;
    margin-left: 1px;
}

.legend-booked span i,.legend-selected span i
{
    display: inline-block;
    width: 23px;
    height: 17px;
    padding-right: 5px;
}

.legend-booked .legend-checkin i:after
{
    content: '';
    position: absolute;
    border-left: 11px solid transparent;
    border-right: 11px solid #ccc;
    border-bottom: 8px solid #ccc;
    border-top: 8px solid transparent;
}

.legend-booked .legend-middle i:after
{
    content: '';
    position: absolute;
    border-left: 11px solid #ccc;
    border-right: 11px solid #ccc;
    border-bottom: 8px solid #ccc;
    border-top: 8px solid #ccc;

}

.legend-booked .legend-checkout i:after {
    content: '';
    position: absolute;
    border-left: 11px solid #ccc;
    border-right: 11px solid transparent;
    border-bottom: 8px solid transparent;
    border-top: 8px solid #ccc;
}

.legend-selected .legend-checkin i:after
{
    content: '';
    position: absolute;
    border-left: 11px solid transparent;
    border-right: 11px solid #B3C7E7;
    border-bottom: 8px solid #B3C7E7;
    border-top: 8px solid transparent;
}

.legend-selected .legend-available i:after
{
    content: '';
    position: absolute;
    border-left: 11px solid #B3C7E7;
    border-right: 11px solid #B3C7E7;
    border-bottom: 8px solid #B3C7E7;
    border-top: 8px solid #B3C7E7;
}

.legend-selected .legend-checkout i:after {
    content: '';
    position: absolute;
    border-left: 11px solid #B3C7E7;
    border-right: 11px solid transparent;
    border-bottom: 8px solid transparent;
    border-top: 8px solid #B3C7E7;
}


.rtbreadcrumbs { font-size: 1em; border-top: 1px dashed #DDD; border-bottom: 1px dashed #DDD; padding: 10px 0; }
.no-results { padding: 40px 0; text-align: center; }
.cyatext { clear:both; margin: 10px auto 5px; font-size: .8em; border-top: 1px dashed #CCC; padding: 10px; text-align: left; }
.results {
    text-align: center;
    padding-top: 5px;
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
    grid-gap: 8px;
    justify-content: center;
}
.gm-style-iw {
    overflow-y: hidden !important;
    overflow-x: hidden !important;
}

.info-window { overflow: hidden !important; height: auto !important; z-index: 2; position: relative; }
/*style the box*/

.info-window .property {
    margin-right: 0!important;
    display: flex !important;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    min-width: 150px;
}
.info-window .property .thumbnail-wrap {
    flex: 1 1;
    flex-basis: 100px;
}
.info-window .property .thumbnail-wrap .boxprice {
    margin: auto;
}
.info-window .property .details {
    padding: 5px;
    flex: 1 1;
    flex-basis: 200px;
}
#mapCanvas img { max-width: 300px; }
#mapCanvas { margin: 0 auto; }
.results .property, .info-window .property {  border: 1px solid #ddd; height: auto; margin: 4px; display: inline-block; text-align: left; padding:0; background: #fff; }
.results .property {
    position: relative;
    padding: 3px;
    box-shadow: none;
    transition: box-shadow 0.2s linear;
    -o-transition: box-shadow 0.2s linear;
    -moz-transition: box-shadow 0.2s linear;
    -webkit-transition: box-shadow 0.2s linear;}
.results .property:hover {
    box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.32);
}
.showhidefilters, .clearcriteria {
    padding: 10px 15px;
    background: #EEE;
    border-bottom: 1px solid #DDD;
    border-left: 1px solid #DDD;
    border-right: 1px solid #DDD;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    font-size: .9em;
}
.clearcriteria a { text-decoration: none; color: #000; }
.mainform { border: 1px solid #EEE; }
.showhidefilters:hover, .clearcriteria:hover { cursor:pointer; }
.results .property .more, .info-window .property .more { text-align: right; font-size: .8em; margin-bottom: 10px; }
.property .title { color: #333; font-size: 1.15rem; line-height: 1.15rem; text-align: center; padding: 5px 0; border-bottom: solid 1px #fff; transition: color 0.2s linear;  -o-transition: color 0.2s linear;  -moz-transition: color 0.2s linear;  -webkit-transition: color 0.2s linear; font-weight: bold;}
.results .property:hover .title {color: #38bfff;}
.property .photo { border: none; padding: 0; margin:0; width: 100%; display: block; }
.resultsrow { background: #eee; border-radius: 4px; clear: both; padding: 5px; line-height: 30px; margin: 0 5px; }
.resultsrow h1 { margin-top: 0; margin-bottom:0; }
.clear-rentals { display:inline-block; width: auto; font-size: .6em;
    cursor: pointer; }
.resultsrow .dates { display: block; font-size: 14px; color: #000; }
.results-buttons, .results-sorting {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
}
.filters-clear {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: flex-end;
}
.results-sorting {
    align-items: flex-end;
    margin: 10px auto 0;
}
.results-buttons .map-results.whitebut {
    flex: 0 1;
    flex-basis: 150px;
    display: inline-block;
    margin: 2px 4px;
    text-align: center;
}

.search-results-link {
    text-align: center;
    cursor: pointer;
    font-size: 1.05em;
    margin: 8px 0 0;
}
.search-results-link .rt-icon {
    margin: 0 7px 0 0;
}

.property .caption {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    text-align: left;
    background: rgba(0, 0, 0, .4);
    color: #FFF;
    line-height: initial;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 2;
    padding: 0.325em 0.625em;
    min-height: 30px;
}
.property .thumbnail-wrap {
    position: relative;
}
.property .caption a { color: #FFF; cursor: pointer; }
.property .caption a:hover { color: red; }
.icon-heart { color: red; }

.boxprice {
    flex: 0 0;
    flex-basis: auto;
    margin-right: auto;
}
.boxpaw, .add-rental, .caption .del-rental { width: 25px; text-align: center; }
.actions .add-rental1, .actions .del-rental1 { display: none; width: auto; float: none; }
.actions .add-rental1.visible-toggle, .actions .del-rental1.visible-toggle {
    display: inline-block;
}
.whitebut {
    background: #FFF;
    padding: 5px 10px;
    font-size: 14px;
    font-weight: bold;
    cursor:pointer;
    border: 1px solid #ddd;
}
.whitebut:hover { text-decoration: none; background: #bbb; }
.sorting { margin: 0 auto; }
.sorting select { border: none; border-radius: 4px; }
.cwrview a { white-space: nowrap; }

.property .details { margin: 10px 0; color: #333; font-size: .9375em; text-align: center; }
.results .property .details span, .info-window .property .details span {  }
.rtbreadcrumbs a { cursor: pointer; white-space: nowrap; }
.detailsec { text-align: center; padding: 1em; margin-bottom: 5px; background: #F4F4F4; }
.pdreviews { background: #FFF; padding: 10px; text-align: left; }
.star-ratings-pd { color: #FFD700; text-shadow: 0px 1px 0 #a2a2a2; font-size: 20px; }
.star-ratings-pd .icon-star:before { margin-left: 0; margin-right: 0; }
#amenities { text-align: left; }
.entry .detailsec { padding: 0; background: #FFF; }
.detailsec h2 { text-align: left; margin-top: 1px; }
div.button-groups ul{list-style-type: none; min-height: 35px; padding-left: 0; display: flex; width: 100%; flex-wrap: wrap;}
div.button-groups ul li{
    flex-grow: 1;
    padding: 0;
    background-color: #f4f4f4;
    border: 1px solid #dddddd;
    text-align: center;
}
div.button-groups ul li a{ color: black; display: block; padding: 0; line-height: 32px; }
div.button-groups.scroll ul {
    z-index: 2;
    margin-top: 0;
    left: 0;
}
.datepick-footer input[type=submit] { width: 100%; }
h2.lined-title { padding: 10px 0; }
.calsec, .pdwrap, #locationbox #mapCanvas, .detailform { text-align: center; display: inline-block; vertical-align: top; }
.calsec { flex: 1 1; flex-basis: 300px; }
#availability { display: flex; flex-wrap: wrap; flex-direction: row; }
.pdwrap { position: relative; z-index:1; flex: 2 1; flex-basis: 600px; }
.detailform label { font-size: 0.8em; }
.calsec h2 { text-align: center; }
.calendar { background: #FFF; padding: 5px; border-radius: 8px; margin: 5px auto 10px; }
.amencat { font-weight: bold; }
.amendesc { border-bottom: 1px dashed #DDD; padding: 10px; margin-bottom: 10px; }
.minidesc { font-size: .7em; font-weight: normal; padding-left: 10px; }
.overview { text-align: left; }
.detailtitle #toptitles { margin-bottom: 1px; color: #055037; font-weight: normal; }
.ratechart { margin: 0 auto; line-height: 1.6em; text-align: center; border: 1px solid #DDD; box-shadow: 0 1px 4px rgba(0,0,0,.2); }
.stripe { background: #EEE; }
.priceshead { font-weight: bold; text-align: center; padding: 0 10px; background: #EEE; }
.ratechart td { padding: 0 10px; }
.theright { text-align: right; padding-right: 20px; }
.note { font-size: .975em; margin-bottom: 10px; }
img.ui-datepicker-trigger { margin-left: -28px; vertical-align: middle; }
.amenities .amenity { display: inline-block; padding: 10px; }
.amenities { margin-top: 30px; text-align: center; }
.property-name { text-align: center; padding: 10px 0; }
#propertyName { display: block; margin: 5px auto 10px; }
.submit-form { text-align: center; margin: 20px auto; }
#mapCanvas { height: 460px; }
.emailrentals { text-align: center; margin: 30px auto; }
.emailrentals input[type=text], .emailrentals textarea { text-align: left; width: 90%; margin: 1px auto 15px; max-width: 440px; padding: 5px; }
.emailrentals label { display: block; font-size: .9em; }

.checkoutimg {
    max-width: 100%;
    padding: 1px;
    border: 1px solid #CDE7EE;
    width: 100%;
}
.guestform, .billingform, .checkprop { background: #F4F4F4; padding: 10px; }
.guestform div.halv, .billingform div.halv {
    display: inline-block;
    margin: 0 5px 10px 0;
}
.guestform div.ful, .billingform div.ful {
    display: block;
    width: 98%;
    margin: 0 0 10px 0;
    text-align: center;
}
div.ful input, div.ful select, div.ful textarea { vertical-align: top; }
.billingform {
    margin-top: 20px;
}
.printicon {
    margin-top: 20px;
}
.printicon strong {
    color: #000;
    font-size: 1.1em;
}
.printicon div {
    float: right;
    text-align: right;
    cursor: pointer;
}
.printicon img {
    vertical-align: middle;
}
.checkterms {
    width: 98%;
    height: 400px;
    overflow: auto;
    border: 1px solid #000;
    padding: 10px;
    margin: 0 auto 20px;
    background: #FFF;
}
.checksubmit .link-button { padding: 15px 50px!important; }
.checksubmit { text-align: center; }
.link-button:hover { cursor: pointer; }
.options { border-top: 1px solid #f0f0f3; padding: 5px 0; }
.options .link-button {
    display: inline-block;
    width: auto;
    margin-left: 4px;
}
#depWrap input { margin-right: 5px; }
#price-chart { font-size: .975em; line-height: 1.2em; padding: 10px 0; }
.pricenote { font-size: .9em; font-style: italic; padding: 5px; font-weight: normal; }
.bold { font-weight: bold; }
.error { color: red; font-weight: bold; }
.guestform .halv label, .billingform .halv label {
    width: 40%;
}
.checkoutform label {
    font-weight: bold;
    text-align: right;
    padding: 0 4px;
    display: inline-block;
}
.checkoutform select { padding: 2px 0; }
div.halv select, div.halv input[type=text], div.halv textarea {
    width: 60%;
        vertical-align: top;
}

#CCCVCode {
    width: 50px;
    margin-right: 5px;
}
select#ExpMonth, select#ExpYear {

}

.theforms h2 { margin-top:0; padding-top:0; }
select#optin { display: inline-block; }
.options input[type=text] { max-width: 100px; display: inline-block; }
#successwrapper { background: #FFF; padding:1px; }
.reserve-error { font-weight: bold; text-align: center; padding-bottom: 20px; border:1px solid #FF0000; padding: 10px; background:#EEE; margin: 20px; }
.reserve-error span { color: #FF0000; }
.receipt, .receipt:before, .receipt:after, .rcolumn, .rcolumn:before, .rcolumn:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.receipt { width: 90%; margin: 20px auto; border: 1px solid #CCC; padding: 10px; }
.rcolumn { display: block; margin: 10px 0;  vertical-align: top; border-bottom: 1px solid #EEE; }
.r2cols { display: inline-block; width: 49.5%; padding:20px 0; font-weight: bold; vertical-align: top; }
.rnotes { font-size: .9em; padding: 10px 5px; }
.rtitle { padding: 10px; font-weight: bold; }
.rcolumn div { padding-left: 10px; display: inline-block; width: 40%; }
.rtotals { width: 15em; margin: 10px 0; text-align: right; }
.rtotals span { font-weight: bold; float:left; display: inline-block; }
.rtotals div { border-top: 1px solid #008D9B; padding: 10px 0; }
.rline { height: 2px; background: #000; }

.availopt { text-align: center; }
.availopt label { padding-right: 10px; white-space: nowrap; margin: 10px auto; display: inline-block;  }
.availopt label:last-child { padding-right: 0; }
#propTableWrap { overflow: auto; margin: 10px auto; }
.property-availability-holder table {
    font-weight: bold;
    width: 100%;
    border-collapse: collapse;
    white-space: nowrap;
}

.property-availability-holder table .weekend
{
    font-weight: bold;
}

.property-availability-holder table td {
    padding: 2px;
    color: #555;
    text-align: center;
}

.property-availability-holder table td.date-day {
    color: #555555;
    text-align: center;
    border-left: 1px solid #cccccc;
    font-size: 14px;
    font-weight: normal;
}

.property-availability-holder table td.property-name {
    padding-left: 12px;
    padding-right: 12px;
    text-align: left;
    font-size: 14px;
    font-weight: normal;
}

.property-availability-holder table td.bedrooms
{
    padding: 5px 15px;
    font-size: 14px;
    font-weight: bold;
    text-align: left;
}

.property-availability-holder table tr:nth-child(even) {
    background-color: #EEE;
}

.property-availability-holder table tr:nth-child(odd) {
    background-color: #FFF;
}

.property-availability-holder table tr.first-row {
    background-color: #fff;
}
.popup-icon { cursor: pointer; }
.icon-pop-view a { display: block; margin: 0 auto; text-align: center; padding: 10px 20px; border: 1px solid #DDD; background: #EEE; }
.vb_key { list-style: none; margin: 0; padding-left:0; }
.vb_key li { display: inline-block; padding-right: 3px; min-width: 20px; }
ul.vb_key li span {
    border: 1px solid #CCC;
    display: inline-block;
    height: 10px;
    margin: 2px;
    vertical-align: middle;
    width: 10px;
}
ul.vb_key li.booked span, .date-day.booked { background: #BBB; }
.date-day.booked.firstday {
    background: url("../rts/images/checkin.png") no-repeat scroll center center rgba(0, 0, 0, 0);
    background-size: 100% 100%;
}
.date-day.booked.lastday {
    background: url("../rts/images/checkout.png") no-repeat scroll center center rgba(0, 0, 0, 0);
    background-size: 100% 100%;
}
.date-day.booked.firstday.bothdays { background: url(../rts/images/bothdays.png) no-repeat; background-size: cover; }
.inpast { background: #BBB !important; color: #AAA !important; }
.back1mo, .adv1mo { color: #1a6fb7 !important; }
.back1mo:hover, .adv1mo:hover { cursor: pointer; color: #000; }
.icon-pop-view a {
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: 10px 20px;
    border: 1px solid #DDD;
    background: #EEE;
}
.rsitemap { text-align: center; margin: 0 auto 10px; }
.rsitemap div { display: inline-block; padding: 10px; }
.bluebox {
    padding: 10px;
    background: #F4F4F4;
}
.bluebox .gform_wrapper .gform_footer { margin: 0 auto; padding: 10px 0; text-align: center; }
.curdis { font-size: .9em; font-style: italic; text-align: center; padding: 5px 0; }
/* new search results page */
#asform .mainform, #asform .srchrow2 { text-align: center; }
.mainform div, .srchrow2 div { /*display: inline-block; vertical-align: top; width: 170px; margin:10px 25px;*/  }
.mainform input, .srchrow2 input, .srchrow2 select, .srchrow2 option { /*margin: 0 auto; width: 100%; padding:10px;*/ }

.prop_container { overflow: auto; margin: 20px auto; }
.prop_container .property { display: inline-block; vertical-align: top; border-top: 1px solid #EEE; border-left: 1px solid #EEE; border-bottom: 1px solid #EEE; padding:2px; }
.prop_container .property:last-child { border-right: 1px solid #EEE; }
.prop_container .line { padding: 3px 0; border-bottom: 1px dashed #EEE; }
.pcheader { font-weight: bold; text-align: center; white-space: nowrap; overflow: hidden; padding-bottom: 10px; line-height: 1.8em; border-bottom: 1px solid #EEE; }
.pcheader .image-captions { font-weight: normal; }

/* under ipad size 1024px */
@media (max-width: 63.9375em) {
    .resultsrow .right, .resultsrow .numprops, .resultsrow .left { display: block; width: 95%; margin: 0 auto; text-align: center; }
    .breadcrumb-text, .my-rentals { display: block; width: 100%; text-align: center; }
    .rtbreadcrumbs { text-align: center; }
    .actions { display: block; padding: 10px; line-height: 2em; }
    .actions a { white-space: nowrap; padding: 10px; }
    .contained, #contentfull { padding: 0 5px; }
    .amenity { width: 49%; }
    .checkprop {
        display: block;
        width: 80%;
        margin: 5px auto;
        max-width: 360px;
    }
    .theforms {
        max-width: 100%;
        margin: 5px auto;
        width: 580px;
        display: block;
    }
    .guestform div.halv, .billingform div.halv {
        display: block;
        width: 98%;
        margin: 0 5px 10px 0;
    }
    #locationbox #mapCanvas { width: 100%; display: block; }
    #selectmonth-holder, .right-side { width: auto; display: block; margin:10px auto; text-align: center; }
    .rsitemap div { width: 49%; }
    .cwrview, .cwrsorting { text-align: center; float: none; margin: 5px auto; }
    .mapwrap { max-width: 90%; }
    .button-groups { display:none; }

}

/* ipad 1024px and up*/
@media (min-width: 64em) {
    .rv { margin: auto 10px; }
    .resultsrow .right, .resultsrow .numprops, .resultsrow .left { display: inline-block; width: 32%; }
    .resultsrow .right { text-align: right; }
    .resultsrow .numprops { text-align: center; }
    .breadcrumb-text, span.my-rentals { display: inline-block; width: 49%; }
    .my-rentals { text-align: right; }
    .pdwrap { width: 66%; }
    .calsec, .detailform { width: 29%; min-width: 328px; }
    .amen-wrap { display: inline-block; width: 49%; }
    .minidesc { display: inline-block; width: auto; }
    .actions { float: right; margin-right: 10px; }
    .preferences div { display: inline-block; padding-right: 20px; text-align: left; }

    .checkprop {
        display: inline-block;
        width: 30%;
        vertical-align: top;
    }

    .theforms {
        max-width: 100%;
        margin-left: 1%;
        width: 68%;
        display: inline-block;
    }
    .guestform div.halv, .billingform div.halv {
        width: 48%;
    }
    #selectmonth-holder { width: 45%; display: inline-block; vertical-align: top; margin: 5px auto; }
    .right-side { width: 45%; display: inline-block; vertical-align: top; }
    .vb_key { float: right; }
    .rsitemap div { width: 24.5%; }
    .submit-form { margin-top: 20px; }
    .cwrview { float: left; width: 40%; }
    .cwrsorting { float: right; width: 40%; text-align: right; }
    .mapwrap { max-width: 96%; }
    div.button-groups.scroll ul {
        position: fixed;
        top: 61px;
    }

}

/* cell phones (480px) */
@media only screen and (max-width: 30em) {

    .amenity { width: 99%; }
    .r2cols { display: block; width: 99%; text-align: center!important; margin: 0 auto; padding: 10px 0; }
    .halv label { width: 90%!important; text-align:center; }
    .halv input, .halv select { display: block; margin: 0 auto; width: 90%!important; }
    .rsitemap div { display: block; width: 100%; }
    .post > .detailsec{
        padding: 0;
    }
    .post > .detailsec h2{
        padding: 9px;
        border: 1px solid #ddd;
        margin: 0;
        cursor: pointer;
        margin-top: 10px;
        background-color: #f4f4f4;
    }
    .post > .detailsec.detailsec-open h2 {
        background-color: #fff;
    }
    .detailsec h2 span {
        display: inline-block;
        font-size: .6em;
        float: right;
        padding: 6px 10px;
    }
    .post > .detailsec .detailsec-content {
        padding: 10px;
        display: none;
    }

}

@media only screen and (min-width: 481px) {
    .post > .detailsec .detailsec-content{
        display: block !important;
    }
    .detailsec h2 span {
        display: none;
    }

}