﻿/***Select Booking Times***/
.bookingTimeSlotMasterContainer {
	overflow: hidden;
	width:100%;
	height:100%;
    font-family: 'Open Sans', Arial, sans-serif;
}

.bookingTimeSlotBorderContainer,
.bookingResourceListWrapper {
	overflow: hidden;
	height:100%;
}


.bookingTimeSlotContainer {
	width:100%;
	float:left;
	height: 100%;
}

.bookingTimeSlotContainer .timeSlotNavRight {
	margin-top: 5px;
}

.bookingTimeSlotContainer .timeSlotNavMiddle {
	height: 36px;
	line-height: 36px;
	margin-top: 0;
	vertical-align: middle;
	float:right;
	width: 100px; 
    margin-right: 10px;
}

.bookingTimeSlotContainer .timeSlotNavMiddle .date-picker {
	display: inline-block;
	position: absolute;
	top: 3px;
	right: 5px;
    cursor: pointer;
}

.bookingTimeSlotContainer .timeSlotNavMiddle .date-picker:hover {
    opacity: 0.7;
    transition: 0.2s;
}

.bookingTimeSlotContainer .timeSlotNavMiddle .content-left {
	position: relative;
}

.bookingTimeSlotContainer .buttonRightArrow {
	background: url("images/icon_right_arrow.png") no-repeat scroll 0 0 transparent;
	float: right;
	height: 26px;
	width: 28px;
    background-size: 10px 16px;
    background-position: 0px 6px;
}

.bookingTimeSlotContainer .buttonLeftArrow {
	background: url("images/icon_left_arrow.png") no-repeat scroll 0 0 transparent;	
	float: left;
	height: 26px;
	width: 28px;
    background-size: 10px 16px;
    background-position: 0px 6px;
}

.bookingTimeSlotContainer .buttonRightArrow:hover {
    transition: 0.2s;
    opacity: 0.7;
}

.bookingTimeSlotContainer .buttonLeftArrow:hover {
    transition: 0.2s;
    opacity: 0.7;
}

.bookingTimeSlotContainer .timeSlotNavigationContainer {
	width:100%;
	float:left;
}

.ui-datepicker .ui-datepicker-title select,
.bookingResourceListWrapper select {
	padding: 0px;
}

#advancedFacilitySearch .ui-datepicker-trigger {
    margin-left: 5px;
    margin-top: 0;
}

.bookingTimeSlotContainer .timeSlotNavigationBorderContainer,
.bookingResourceListHeader {
	height: 36px;
    font-weight: 300;
}

.bookingTimeSlotContainer .timeSlotNavigationContainer {
	width:100%;
	float:left;
    box-sizing: border-box;
}

.bookingTimeSlotContainer .timeSlotNavigation {
	width:100%;
	float:left;
}

.bookingTimeSlotContainer .timeSlotNavRight {
	float:right;
	width: 65px;
}

#tableColumns {
	width: 100%;
	height: 100%;
	float: left;
}

#tableColumns.Staff {
   height: 100% !important;
}

/* 
 * To prevent a case where rows and the row headings are misaligned (which becomes more prominent over multiple timeslots).
 *
 * The reason for this, is the inconsistent use of borders & padding included in the JS calculations which have to worry about taking borders and padding into account
 * The border-box sizing will allow us to use borders and padding without having to worry about the size of divs changing due to these borders, thus simplifying JS height calculations.
 * Ideally we should echo border-box sizing throughout the root of our project, despite the performance hit.
 * See http://www.paulirish.com/2012/box-sizing-border-box-ftw/
 */
#calendarRegion *{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

#calendarRegion .timeColumn {
	width: 12.5%;
	float: left;
}

#calendarRegion .dateColumn {
	width: 87.5%;
	float: left;
}
#calendarRegion .dayTimeColumn {
	width: 100%;
	float: left;
}

#calendarRegion .timeSlotColumn {
	width:12.999999%;
	float:left;
	border-right: 1px solid #C0C0C0;
}

#calendarRegion #tableHeader .timeSlotColumn {
	border-color: #2EA6E3;
}

#calendarRegion #tableHeader .timeSlotColumn:last-child,
#calendarRegion .timeSlotColumn .selectorColumnHeader:last-child,
#calendarRegion .timeSlotColumn:last-child {
	float: none;
    overflow-x: hidden;
    width: auto;
}


#calendarRegion #tableHeader .timeSlotColumn.selectorColumnHeader:hover{
    background: #FFF;
}

#calendarRegion #tableHeader .timeSlotColumn.selectorColumnHeader .cellHeader{
    transition: 0.2s background;
}

#calendarRegion:not(.readOnly) #tableHeader .timeSlotColumn.selectorColumnHeader:hover .cellHeader,
#calendarRegion:not(.readOnly) #tableHeader .timeSlotColumn.selectorColumnHeader.activeColumn .cellHeader{
    background: #65BDEA !important;
    transition: 0.2s background;
    cursor: pointer;
}

#calendarRegion .cellHeader {	
	overflow:hidden;
	padding: 5px 0px;
	
	background: #3776B2; /* for non-css3 browsers */

	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#3776B2', endColorstr='#5794DD'); /* for IE */
	background: -webkit-gradient(linear, center top, center bottom, from(#3776B2), to(#5794DD)); /* for webkit browsers */
	background: -moz-linear-gradient(center bottom , #3776B2, #5794DD) repeat scroll 0 0 transparent;     /* for firefox 3.6+ */ 	
	
	color: white;
	background: #65BDEA;
	border-bottom: 3px solid #2EA6E3;
    text-align: center;
}

#calendarRegion .timeSlotCellDay {
	display: inline-block;
	font-weight: 500;
	text-align: center;
}

#calendarRegion .timeSlotCellDayName {
	float:left;
	margin-left: 4px;
}

#calendarRegion .timeSlotCellDate {
	float: left;
	font-size: 0.8em;
	margin-left: 6px;
	margin-top: 2px;
	text-align: center;
}

#calendarRegion div.timeSlotCell, 
#calendarRegion div.timeSlotCellAvailable, 
#calendarRegion div.timeSlotCellUnavailable, 
#calendarRegion div.timeSlotCellBooked,
#calendarRegion div.timeSlotCellBase  {
	font-size: 0.85em;
	height: 40px;
    line-height: 1;
	padding: 3px 0;
	position: relative;
}



#calendarRegion div.timeSlotCellAvailable.activeColumn,
#calendarRegion .Public div.timeSlotCellAvailable.partial.activeColumn{
    background: #EEE;
    transition: 0.2s;
}

/*
#calendarRegion div.timeSlotCell, 
#calendarRegion div.timeSlotCellAvailable, 
#calendarRegion div.timeSlotCellUnavailable, 
#calendarRegion div.timeSlotCellBase  {
	overflow: hidden;
}*/

#calendarRegion div.timeSlotCellBooked
{
	overflow: visible;
}

#calendarRegion div.timeSlotCellBase {
	padding: 0px;
	height: 46px;
}

#calendarRegion div.timeSlotCellBase  {
	border-bottom: 1px solid #C0C0C0;
	border-top: 1px dotted transparent;
}

#calendarRegion div.timeSlotCell, 
#calendarRegion div.timeSlotCellUnavailable, 
#calendarRegion div.timeSlotCellBooked
{
	border: 0;
    background-color: #DDD;
}

#calendarRegion div.timeSlotCellAvailable {
	
	border-bottom: 1px dashed #e1e1e1;
	border-top: 1px solid transparent;
	border-left: 0;
	border-right: 0; 
	overflow: visible;
    padding: 0;
	background: #ffffff;
	
	/*making text unselectable, mainly for chrome*/
	-moz-user-select: none; 
	-khtml-user-select: none; 
	-webkit-user-select: none; 
	-o-user-select: none; 
    cursor: pointer;

}

#calendarRegion div.timeSlotCellAvailable:last-child {
    border-bottom: 1px solid #C0C0C0;
}

/*As we do not show partially booked in public calendar use .staff prefix*/
#calendarRegion div.timeSlotCellAvailable.partial {
    background: #FFF899;
    border-bottom: 1px solid #FFF899;
}

#calendarRegion div.timeSlotCellAvailable.partial.mouseOver {
	background: none repeat scroll 0 0 #50D07F;
    border: 1px solid #50D07F;
    cursor: pointer;
}


#calendarRegion .Public div.timeSlotCellAvailable.partial {
	background: #ffffff;
	border-bottom: 1px dashed #e1e1e1;
}

.timeSlotCellTimeSpan {
	display: none;
	float: left;
}

#calendarRegion div.timeSlotCellBooked {
	background: rgba(255,0,0,0.4);
}

#usergrid tr input{
    transform: scale(1.2);
}

#usergrid tr:hover{
    cursor: pointer;
}

.Public #tableBodySlots div.timeSlotCellBooked {    
	background: #CCCCCC;
}

#tableBodySlots div.timeSlotColumn > div .timeSlotCellTimeSpan{
    display: none;
}

#tableBodySlots div.timeSlotColumn > div:hover .timeSlotCellTimeSpan{
    display: block !important;
}

#tableBodySlots div.timeSlotColumn > div.mouseOver .timeSlotCellTimeSpan{
    display: none !important;
}

#calendarRegion div.timeSlotGroupSelected {
    background-color: #99CCCC;
    border-color: #24D19D;
}


#calendarRegion div.timeSlotGroupSelected:hover
{
	background-color: #3399CC;
	border-color: #3399CC;
}

#calendarRegion div.timeSlotCellAvailable.mouseOver,
#calendarRegion div.mouseOver.activeColumn,
#calendarRegion .Public div.timeSlotCellAvailable.partial.mouseOver {
	background: rgb(153, 255, 153);	
    border-color: rgb(153, 255, 153);
    cursor: pointer;
    padding: 0;
    transition: 0.2s;
}

    #calendarRegion div.mouseOver.dragging,
    #calendarRegion div.mouseOver.dragging.activeColumn,
    #calendarRegion .Public div.timeSlotCellAvailable.partial.mouseOver.dragging {
        z-index: 1;
        transform: scale(1.02);
        box-shadow: 0px 2px 6px -1px #666;
        transition: 0.2s;
    }

    #calendarRegion div.timeSlotCellUnavailable.mouseOver.dragging {
        background-color: #DDD;
    }

#calendarRegion .timeSlotCellTimeViewer{
    position: absolute;
    color: #FFF;
    background: rgba(0,0,0,0.6);
    z-index: 2;
    padding: 2px 6px 2px 6px;
    text-align: center;
    left: -10000px;
    pointer-events: none;
}


#calendarRegion .timeSlotCellDragArrowIndicator{
    position: absolute;
    width: 60px;
    z-index: 2;
    display: none;
}

#calendarRegion .timeSlotCellTimeSpan {
	line-height: 1;
	position: relative;
	left: 0;
	top: 0;
	overflow: hidden;
	z-index: 3;
	white-space: nowrap;
}

#calendarRegion div.mouseOver.single .timeSlotCellTimeSpan {
	display: inline;
    cursor: pointer;
}

#calendarRegion div.timeCell  {
	border: 1px solid #C0C0C0;
	border-top: none;
	font-size: 0.85em;
	height: 40px;
	overflow: hidden;
	padding: 3px 0 3px 0;
	text-align: center;
    line-height: 1;
}

#calendarRegion div.timeCell > span{
    display: block;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

#calendarRegion div.resourceCell  {
	border : 1px solid #e1e1e1;
	border-top: none;
	border-right: none;
	font-weight: bold;
	font-size: 1.00em;
	min-height: 55px;
	overflow: hidden;
	padding: 3px;
	text-align: left;
}

#calendarRegion .Public div.timeSlotCellAvailable > div.slotTime > div  {
	display: none;
}

#calendarRegion div.timeSlotCellAvailable > div.slotTime > div.availability,
#calendarRegion div.timeSlotCellUnavailable > div.slotTime > div.availability {
	display: none;       
}

#calendarRegion div.timeSlotCellAvailable.partial > div.slotTime > div.availability,
#calendarRegion div.mouseOver > div.slotTime > div.availability {
	display: block;
	cursor: pointer;
	line-height: 1;
	float: left;
	width: 100%;
}

#calendarRegion div.mouseOver div.slotTime {
	font-weight: bold;
	cursor: pointer;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

#calendarRegion.Staff div.timeSlotCell.Available.Partial {
    background: #FFF899;
}
#calendarRegion.Staff div.timeSlotCell.Available.Partial.current-date {
    background: #50D07F;
}
#calendarRegion.Staff div.timeSlotCell.Unavailable {
    background: #DDD !important;
}

#calendarRegion.Staff div.timeSlotCell.Booked {
    background: rgba(255,0,0,0.4) !important;
}

.ui-dialog-content .select {
	padding: 0px;
}

/*Bookable Item Selection*/
.dialogue-selection.bookings .filters > span 
{
	display: inline-block;
	float: left;
   
}
.dialogue-selection.bookings .filters > div 
{
	  display: inline-block;
	margin-left: 20px;
   
}
.dialogue-selection.bookings select {
	height: auto;
	margin-bottom: 10px;
	width: 420px;
}


/*Admin bookings - start*/
.bookingResourceListWrapper
{
	float: left;
	margin-right: 10px;
	height: 520px;
}
#bookingResourceList
{
	margin-left: 6px;
	float: left;
	width: 100%;
	height: 390px; 
	overflow-y: scroll;
	overflow-x: hidden;
}


.bookingResourceListHeader
{
	height: 36px;
	line-height: 36px;
	padding-left: 10px;
	vertical-align: middle;
	font-weight: bold;
	font-size: 14px;
}
	
.bookingResourceListWrapper .selected {
	background-color: #99CCCC;
}
	
   
.bookingResourceListWrapper ul li {
	float: left;
	width: 100%;
}
		   
.bookingResourceListWrapper .inputWrapper {
	display:inline-block; 
	*display: inline;
	zoom: 1;
	width: 13%; 
	vertical-align: middle;
}

.bookingResourceListWrapper .labelWrapper {
	display:inline-block; 
	*display: inline;
	zoom: 1;
	width: 85%; 
	vertical-align: middle;
	padding: 5px;
	border: 1px solid black;
	border-top: 0;
} 

#bookingResourceList ul li:first-child .labelWrapper {
	border-top: 1px solid black;
}       
	
   
.bookingResourceListWrapper label
{
	width:100%;
}

.bookingResourceListHeaderWrapper .manage-facility-link {
	padding: 5px 5px 0;
}

/*Admin bookings - finish*/

/** Admin booking **/

#bookingRuleRegionWrapper
{
	float:left; 
	border: 1px solid black; 
	width:100%; 
	margin-top: 20px;
}
	
#bookingRuleRegion
{
	margin:10px;    	
}
	
#bookingRuleRegion .inputRegion 
{
	width:100%; 
	float:left;
	padding: 10px 0px;
}
	
#bookingRuleRegion .inputRegion .label
{
	float:left; 
	width:100px;
} 
	
.bookingFormSectionWrapper
{
	float:left; 
	border-bottom: 1px solid black; 
	width:100%
}
	
.bookingFormSection
{
	float:left;
	padding:10px;    	
} 

#bookingSlide #bookingRuleRegion{
	margin: 0;
}

#bookingSlide .bookingFormSection{
	padding: 0;
}

#bookingSlide h2{
	margin: 0;
}

#bookingSlide input.timespan{
width: 80px;
}

#bookingSlide input.datetime{
	width: 100px;
}

#bookingSlide .inputRegion{
	padding: 7px 0;
}

#bookingSlide .inputRegion .label{
	width: 200px;
}

#bookingSlide .inputRegion label {
    margin-right: 10px;
}

.timeSlotCellAvailable .new-booking, 
.timeSlotCellBooked .new-booking
{
	height: 13px;
	width: 13px;
	cursor: pointer;
}

.timeSlotCellAvailable .new-booking, 
.timeSlotCellBooked .new-booking 
{  
	background: url("images/admin-add-button.png") no-repeat scroll 0 0 transparent;  
	float: left;
}


div.staff .more-info .booking-link:hover {
    color: #65BDEA;
    text-decoration: underline;
    cursor: pointer;
}


div.staff .more-info-click-wrapper {
	min-width: 280px;
}

div.staff .more-info-click-wrapper .contextual-add-booking-link.add-icon {
	background: url("images/add-icon.png") no-repeat scroll 0 0 transparent;
	width: 13px; 
	height: 13px;
	text-decoration: none;    
	margin-top: 5px;
	display: inline-block;
    margin-right: 5px;
    background-size: 13px 13px;
    float: left;
}

div.staff #more-info-popup .more-info{
	padding: 10px;
	background: #d9d9d9;
	position: relative;
	z-index: 1000;
	min-width: 140px;
	font-size: 13px;
	border-radius: 4px;
    background: rgb(72, 72, 72);
    background: rgba(0,0,0,0.7);
    color: #FFF !important;
    box-shadow: 0 25px 55px rgba(0, 0, 0, 0.31), 0 16px 28px rgba(0, 0, 0, 0.32);
}

div.staff .more-info a {
	color: #48DDFF;
}


div.staff .more-info .slot-information {
	margin-bottom: 5px;
}

div.staff .more-info .slot-information:first-child + .slot-information {
	border-bottom: 1px solid #C0C0C0;
	padding-bottom: 5px;
}

div.staff .more-info a.close {
	float: right;
	color: #FFF !important;
	margin-top: -10px;
	margin-right: -4px;
	cursor: pointer;
	text-shadow: 0 1px white;
}


div.staff .more-info a.close:hover {
        color: #48DDFF !important;
        transition: 0.2s;
    }


div.staff  .more-info a.close:hover {
	text-decoration: none;
}

div.staff .more-info-new {
	background-color:#F0F0F0;   
	border-bottom:1px solid #3776B2;
}
div.staff .more-info ul li {
	cursor: pointer;
}

/*FacilityMoreInfoDialog*/
#FacilityMoreInfoDialog h2 {
	width: 100%;
    color: black;
}
#FacilityMoreInfoDialog .dialog-header {
	margin-top: 5px;
	font-style: italic;
}
#FacilityMoreInfoDialog .dialog-left {
	float: left;   
	max-width: 350px;
}
#FacilityMoreInfoDialog .dialog-left .left-span {
	min-width: 100px;
    margin-right: 10px;
	display: inline-block;
	font-weight:bold;
}
#FacilityMoreInfoDialog .dialog-right {
	float: right;
	max-width: 350px;
	padding-top: 10px;
}
#FacilityMoreInfoDialog .dialog-left .dialog-additionaltext {
	margin-top: 15px;
}

#FacilityMoreInfoDialog .dialog-left div {
	padding-top: 5px;
    padding-bottom: 5px;
    border-bottom: 1px solid #CECECE;
}
#FacilityMoreInfoDialog #GISLocation,
#FacilityMoreInfoDialog .photo-placeholder
 {
	max-width: 350px;
	max-height: 304px;
	margin-bottom: 10px;
	overflow: hidden;
}

#FacilityMoreInfoDialog .dialog-left > div:last-child {
	padding-top: 5px;
}


/*Day View Calendar************************************************/
#calendarRegion.day-view div.timeSlotColumn {
    width: 9%;
}

/*Month View Calendar************************************************/
.month-view #table-body {
	width: 100%;
	position: relative;
}

.month-view #tableColumns {
	width: 100%;
}

.month-view #tableBodySlots {
	top: 0;
	overflow: hidden;
	width: 100%;
}

#month-nav .timeSlotNavigationBorderContainer {
	border: none;
	padding: 4px;
}

#month-nav .timeSlotNavigation h1 {
	float: left;
    margin-top: 5px;
    margin-left: 10px;
    font-weight: inherit;
    margin-bottom: 0;
}

#month-nav .bookingTimeSlotContainer .timeSlotNavRight {
	margin-top: 0;
}

.month-view #tableHeader .timeSlotColumn,
.month-view #tableBody .timeSlotColumn {
	width: 14.2%;
	box-sizing: border-box;
}

.month-view #tableHeader .timeSlotColumn:last-child,
.month-view #tableBody .timeSlotColumn:last-child {
	width: auto;
}

.month-view #tableBodySlots .timeSlotColumn {
	border: none;
}

.month-view #tableBodySlots .timeSlotColumn:last-child {
	border-right: 1px solid #e1e1e1;
}

.month-view #tableBody .timeSlotCell {
	background: #ffffff;
	height: 120px;
	border-bottom: 1px solid #e1e1e1;
	border-left: 1px solid #e1e1e1;
    border-top: 1px solid #FFF;
    border-right: 1px solid #FFF;
	font-size: 0.923em;
    padding: 4px;
}

#resourceDetails .month-view #tableBody .timeSlotCell{
    height: 100px;
}

#resourceDetails .month-view #tableBody .timeSlotCell.Unavailable,
#resourceDetails .month-view #tableBody .timeSlotCell.Booked,
#resourceDetails .month-view #tableBody .timeSlotCell.passed
{
    background-color: #DDD;
}

.month-view:not(.Public) #tableBody .timeSlotCell.today
{
    background: rgb(227, 243, 251);
    border: 1px solid rgb(46, 166, 227);
}

.month-view:not(.Public)  #tableBody .timeSlotCell.current-date
{
    background: rgb(214, 255, 214);
    border: 1px solid rgb(118,255,118);
}

.month-view #tableBody .timeSlotCell h5 {
    text-align: right;
    float: right;
}

.month-view #tableBody .timeSlotCell.passed h5 {
	color: #858585;
}

.month-view #tableBody .timeSlotCell.not-current-month {
	background: #fbfbfb;
}

.month-view #tableBody .timeSlotCell.not-current-month  h5 {
	color: #aaaaaa;
}
    .month-view #tableBody .timeSlotCell > div {
        margin: 15px 2px 0 2px;
    }

.month-view #tableBody .timeSlotCell > div.bookingSummary,
.month-view #tableBody .timeSlotCell > div.show-more {
	margin: 0 2px 0 2px;
}

    .month-view #tableBody .timeSlotCell div.bookingSummary .clamp-1,
    .month-view #tableBody .timeSlotCell div.bookingSummary .clamp-2,
    .month-view #tableBody .timeSlotCell div.bookingSummary .clamp-3,
    .month-view #tableBody .timeSlotCell div.bookingSummary .clamp-4
    {
        overflow: hidden;
        -ms-text-overflow: ellipsis;
        -o-text-overflow: ellipsis;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        line-height: 14px;
        font-size: 12px;
    }

    .month-view #tableBody .timeSlotCell div.bookingSummary .clamp-1{
        -webkit-line-clamp: 1;
        max-height: 14px;
    }
    
    .month-view #tableBody .timeSlotCell div.bookingSummary .clamp-2{
        -webkit-line-clamp: 2;
        max-height: 28px;
    }

    .month-view #tableBody .timeSlotCell div.bookingSummary .clamp-3{
        -webkit-line-clamp: 3;
        max-height: 42px;
        margin-bottom: 7px;
    }

    .month-view #tableBody .timeSlotCell div.bookingSummary .clamp-4{
        -webkit-line-clamp: 4;
        max-height: 56px;
        margin-bottom: 7px;
    }

#tableBody .timeSlotCell div.Tentative .bookingResourceFacility,
#tableBody .timeSlotCell div.Tentative .bookingTime,
#tableBody .timeSlotCell div.Tentative .bookingStatus
{
    color: #AAAAAA;
}

.month-view #tableBody .timeSlotCell div.bookingSummary .bookingStatus
{
    display: none;
}

.month-view #tableBody .timeSlotCell a {
	font-weight: bold;
}

.month-view #tableBody .timeSlotCell > div.show-more {
	color: #5894DE;
	cursor: pointer;
	margin-top: 7px;
	background: none;
    font-size: 12px;
}

.month-view .timeSlotCell .more-info-click-wrapper {
	margin: -125px 0 0 -2px !important;
}

.month-view .timeSlotCell .more-info-click-wrapper a {
	font-weight: normal;
}

.month-view .timeSlotCell .more-info-click-wrapper li {
	margin-bottom: 5px;
}

.month-view .timeSlotCell.passed .more-info-click-wrapper h5 {
	color: #DDD !important;
    text-align: left !important;
}

input.datetime {
	width: 80px;
	padding-left: 6px;
	padding-right: 6px;
}
input.timespan {
	width: 64px;
	padding-left: 6px;
	padding-right: 6px;
}

div.booking-occurrences-table {
	margin: 20px 0px 10px 0px;
}

div.booking-occurrences-table table {
	width: 100%;
	border-collapse: collapse;
	background: #FFFFFF;
	box-shadow: 0 1px 1px -1px black;    
}

div.booking-occurrences-table tr {
	border-bottom: 1px solid #EBEBEB;
}

div.booking-occurrences-table tr.rescheduled
{
	background: #DEF0FE;
}
div.booking-occurrences-table tr.modified
{
	background: #D8EDFE;
}
div.booking-occurrences-table tr.modified-rescheduled
{
	background: #CDE8FE;
}
div.booking-occurrences-table tr.deleted
{
	background: #F0F0F0;
}
div.booking-occurrences-table tr.conflicted
{
	background: #FAE3E2;
}

div.booking-occurrences-table table th {
	font-weight: bold;
}
div.booking-occurrences-table table th,
div.booking-occurrences-table td {
	padding: 7px 0 7px 15px;
}

/* for printing */
.printView div
{
    overflow:visible !important;
    float: none !important;
}

.printView #calendarRegion td.timeSlotCell
{
    vertical-align:top; 
    min-height:60px;
}

.printView #calendarRegion th
{   
    overflow: visible;
    border: 1px solid #e1e1e1;    
}
.printView #calendarRegion th.weekday
{   
    width: 14%
}

.printView #calendarRegion th.timeslot
{   
    width: 9%
}

.printView #calendarRegion .printCellHeader 
{	
	padding: 5px 0px;	
	font-weight: bold;
}

@media print
{
    body 
    { 
        overflow: visible !important;
    }
  
}  

/* Facility Index */
.facilitiesIndex .alphabets
{
    margin: 15px 0;

} 
.facilitiesIndex .alphabet
{
    margin: 10px 10px 10px 0;
    display: inline-table;
    width: 265px;
}
.facilitiesIndex  .facility
{
    margin: 3px 0;
}

/* Facility Details */
.weekSchedule
{
    width:100%;
    /*min-width: 560px;*/
    float:right;
    font-family: 'Open Sans', Arial, sans-serif;
}
.monthSchedule
{
    width: 30%;
    margin: 10px;
    margin-left: 0px;
    float:left;
    font-family: 'Open Sans', Arial, sans-serif;
    font-weight: 700;
}
.arrow
{
    float: left;
    height: 26px;
    width: 12px;  
    cursor: pointer;  
}
.arrow.left
{
    margin-right:10px;
    background: url("images/arrow-left-dark.png") no-repeat scroll 0 0 transparent;
}
.arrow.right
{
    margin-left: 10px;
    background: url("images/arrow-right-dark.png") no-repeat scroll 0 0 transparent;
}
.arrow.hidden
{
    visibility: hidden;
}

.createbooking{
    float: right;
    margin-top: 10px;
}

.createbooking .startBooking{
    margin-right: 0;
}

.startBooking{
    cursor: pointer;
}

.monthCalendarDisplay .cellDayOfWeek,
.weekCalendarDisplay .timeSlotCellDay {
    display: inline-block;
}
.monthCalendarDisplay .cellHeader,
.weekCalendarDisplay .cellHeader {
    overflow:hidden;
	padding: 5px;
	color: white;    
    font-weight: bold;
	background-color: #65BDEA;   
	border-bottom: 3px solid #2EA6E3;
    text-align: center;
}

.weekCalendarDisplay .cellHeader span.post, .weekCalendarDisplay .cellHeader .upper .short{
    display: none;
}

.weekCalendarDisplay #tableBody .timeSlotColumn .timeSlotCell {
    width: 100%;
}

.monthCalendarDisplay .weekCountColumn{
    width: 9%;
    float: left;
}
.weekCalendarDisplay .timeColumn {
    float: left;
    width: 35px;
}
.monthCalendarDisplay .daysColumn{
    width: 91%;
    float: left;
}
.monthCalendarDisplay .dayColumn,
.weekCalendarDisplay .timeSlotColumn
{
    box-sizing: border-box;
    float:left;
    overflow: visible;
}
.weekCalendarDisplay .timeSlotCellTimeSpan .post{
    display: none;
}
.monthCalendarDisplay .dayColumn{
        width: 14.285%;
}

.weekCalendarDisplay div.timeCell  {
    border-top: none;
    font-size: 0.85em;
    overflow: hidden;
    box-sizing: border-box;
    font-weight: 500;
    cursor: pointer;
}

.weekCalendarDisplay div.timeCell > span{
	position:relative;
	left: 0;
	right: 0;
	height: 100%;
	width: 100%;
	display: block;
	background: #FFF;
}

.weekCalendarDisplay .dateColumn {
    float: left;
}

.weekCalendarDisplay #tableheadercontainer {
    float: left;
}

.monthCalendarDisplay div.dayCell
{
	border-top: none;
	font-size: 0.85em;
	overflow: hidden;
	padding: 3px;
	text-align: center;
	box-sizing: border-box;
	padding-top: 11px;
    font-weight: 700;
    cursor: pointer;
}

.monthCalendarDisplay div.dayCell.selected
{
    border-top: 2px solid;
    border-bottom: 2px solid;
    border-top-color: red;
    border-bottom-color: red;
}
.monthCalendarDisplay div.weekCountColumn div.dayCell.selected
{
    border-left:2px solid red;
}
.monthCalendarDisplay div.dayColumn:last-child div.dayCell.selected
{
    border-right: 2px solid red;
}
.weekCalendarDisplay div.timeCell
{
    height: 30px;
    border-bottom: 1px solid #F9F9F9;
    /*width: 270px;*/
    position: relative;
    z-index: 1;
    border-top: 1px solid #F9F9F9;
}

.weekCalendarDisplay #scrollable
{
    display: block;
    width: 100%;
    position: relative;
    box-sizing: border-box;
}

.weekCalendarDisplay .scrolling 
{
    box-sizing: border-box;
}
.weekCalendarDisplay #tableColumns 
{
	height: auto;
	overflow-y: hidden;    
}

.monthCalendarDisplay div.dayCell 
{
    height: 40px;
}

.weekCalendarDisplay div.timeSlotCell{
	font-size: 0.85em;
	padding: 3px;
	position: relative;
    border: 1px solid #FFF;
    cursor: default;
    text-align: left;
    float: left;
}

.weekCalendarDisplay div.timeSlotCell.FullyBooked
{
    border: 0;
    background-color: rgba(255,0,0,0.4);
}
#facilityList div.timeSlot.FullyBooked,
#facilityList div.daySlot.FullyBooked,
.monthCalendarDisplay div.dayCell.FullyBooked,
.legendColor.FullyBooked
{
    background-color: rgba(255,0,0,0.4);
}

.weekCalendarDisplay div.timeSlotCell.Unavailable
{
    background-color: #DDD;
}
#facilityList div.timeSlot.Unavailable,
#facilityList div.daySlot.Unavailable,
.monthCalendarDisplay div.dayCell.NotApplicable,
.monthCalendarDisplay div.dayCell.Unavailable,
.legendColor.Unavailable
{
    background-color: #DDD;
}
#facilityList div.timeSlot.Free,
#facilityList div.daySlot.Free,
.monthCalendarDisplay div.dayCell.Free,
.weekCalendarDisplay div.timeSlotCell.Free,
.legendColor.Free
{
    background-color: rgb(153, 255, 153);
}
#facilityList div.timeSlot.PartiallyUnavailable,
#facilityList div.timeSlot.PartiallyBooked,
#facilityList div.daySlot.PartiallyUnavailable,
#facilityList div.daySlot.PartiallyBooked,
.monthCalendarDisplay div.dayCell.PartiallyBooked,
.weekCalendarDisplay div.timeSlotCell.PartiallyBooked,
.legendColor.PartiallyBooked
{
    background-color: #FFF899;
}

#facilityList.availability div.daySlot span.availabilityShort
{
    display:none;
}
.legends
{
    margin: 20px 0;
    border: 1px solid #C0C0C0;
    font-weight: 500;
}
.legend
{
    padding: 3px;
    margin: 5px;
    display: inline-block;
}
.legendColor
{   
    width:25px;
    height:25px;    
    border: 1px solid #FFF;
    float: left;
    display: block;
}

.legendDesc
{   
    font-size: 0.95em;
    float: left;
    display: block;
    padding: 7px 2px;
    padding-left: 5px;
    
}



/*.timeSlotCell .timeDesc {
	display: none;
	float: left;
}*/


.monthCalendarNav
{
    width:100%;
    height: 30px;
}

.weekCalendarNav 
{
    height: 30px;
    line-height:30px;
    font-size:1.2em;
    font-weight: bold;
}

.weekCalendarNav #previousWeek, .weekCalendarNav #nextWeek
{
    margin-top: 4px;
}

.weekCalendarNav #dateSelected
{
    float: left;
    margin-right: 20px;
    font-weight: normal;
}

#facilityDetails *, 
#resourceDetails *, 
#facilityList * {
    box-sizing: border-box;
}

#facilityDetails h2,
#facilityDetails body,
#facilityDetails .resources
{
    margin-top: 15px;
}
#facilityDetails hr,
#resourceDetails hr
{
    margin: 5px 0;
}
#facilityDetails p,
#resourceDetails p,
#facilityDetails .contactInfo
{
    margin-top: 10px;
    margin-bottom: 10px;
}

#resourceDetails .legends{
    margin-top: 10px;
    margin-bottom: 10px;
}

/*Booking calendar CSS override*/
#resourceDetails .weekCalendarDisplay input#chosenDate {
    display: none;
}

#resourceDetails .weekCalendarDisplay #calendarRegion .cellHeader{
    color: #333333;
    background: none;
    filter: none;
    border: none;
    text-align: left;
}



#resourceDetails .weekCalendarDisplay #calendarRegion #tableHeader .timeSlotColumn {
    border: none;
}

#resourceDetails .weekCalendarDisplay .dateColumn{
    width: auto;
    border-bottom: 1px solid #C0C0C0;
}
#resourceDetails .weekCalendarDisplay .dateColumn {
	
}

#resourceDetails .weekCalendarDisplay .timeColumn{
    width: 45px;
}

#resourceDetails .weekCalendarDisplay #tableColumns .timeColumn{
    border-right: 1px solid #C0C0C0;
}

#resourceDetails .weekCalendarDisplay .timeSlotColumn:last-child, 
#resourceDetails .weekCalendarDisplay .timeSlotColumn .selectorColumnHeader:last-child, 
#resourceDetails .weekCalendarDisplay .timeSlotColumn:last-child{
    width: auto;
}

#resourceDetails .weekCalendarDisplay div.timeCell{
    border: none;
    padding: 0;
    padding-right: 5px;
    text-align: right;
}

#resourceDetails .weekCalendarDisplay div.timeCell span.post{
    display: none;
}

#resourceDetails #tableheadercontainer {
    float: left;
}

#resourceDetails .weekCalendarDisplay #calendarRegion:not(.month-view) div.timeSlotCell {
    border-right: 1px solid #C0C0C0;
}

#resourceDetails .weekCalendarDisplay #calendarRegion .timeSlotCellDay {
    text-align: left;
}

#resourceDetails .weekCalendarDisplay div.timeSlotCellAvailable {
    padding: 0;
    position: relative;
    overflow: visible;
    left: 0;
    top: 0;    
    cursor: default;
}

#resourceDetails .weekCalendarDisplay .legendDesc {
    padding-right: 15px;
    padding-top: 0;
}

#resourceDetails .weekCalendarDisplay .legends
{
    width: auto;
    margin: 0;
    border: none;

}
#resourceDetails .weekCalendarDisplay .legend {
    display: inline;
}

#resourceDetails .weekCalendarDisplay .legendColor {
    border-radius: 50%;
    border: 1px solid #C0C0C0;
}

#resourceDetails .weekCalendarDisplay .legendColor.Free {
    background-color: #FFFFFF;
}

#resourceDetails .weekCalendarDisplay div.timeSlotCellBooked, #resourceDetails .weekCalendarDisplay .legendColor.Unavailable{
    background: #DDD;
}

#resourceDetails .weekCalendarDisplay .timeSlotCell.hourMarker{
    border-bottom: 1px solid #C0C0C0 !important;
}

#facilityDetails dl{
    display: table-cell;
}

#facilityDetails dl dd
{
     font-weight: bold;
     display: inline;
}
#facilityDetails dl dt
{
    float: left;
    width: 160px;
}

#facilityContent{
    height: 100%;
    width: 100%;
    position: relative;
}

.facilityAttributes {
    margin: 20px 0;
}

.facilityAttributes .attributeRow{
    display: block;
    float: left;
    width: 100%;
}

.facilityAttributes .attributeRow .attribute{
    margin-bottom: 10px;
    float: left;
    width: 50%;
}

.facilityAttributes .attributeRow .attribute a.button{
    margin-right: 0;
}

.facilityAttributes .attributeRow .attribute .icon{
    float: left;
}

.facilityAttributes .attributeRow .attribute .icon img{
    width: 20px;
    margin-right: 10px;
}

.facilityAttributes .attributeRow .attribute .description.address {
    white-space:pre-wrap
}

.facilityAttributes .attributeRow .attribute .actions-right{
    float: right;
}

.verticalAttributes .facilityAttributes .attributeRow .attribute {
    width: 100%;
}

#facilityContent .sliderContainer{
    margin-bottom: 20px;
    display: block;
    position: relative;
    background: #000;
}

#facilityContent .sliderContainer .slide-main-image{
    width: auto;
    height: 450px;
    margin: 0 auto;
}
#facilityContent .sliderContainer.full-width img{
    width: 100%;
    float: left;
    height: auto;
}

#facilityContent .panoContainer{
    margin-bottom: 20px;
    width: 100%;
    height: 717px;
}

#facilityContent .facilityPhotoLocation .resourceSliderContainer,
#facilityContent .facilityPhotoLocation iframe
{
    height: auto;
    float: right;
    min-width: 300px;
    width: 33%;
    transition: 0.2s;
    margin-left: 20px;
    clear:both;
}

#facilityContent .facilityPhotoLocation img{
    width: 100%;
}

#facilityContent .facilityPhotoLocation iframe{
    margin-top: 3px;
}

#facilityDetails .containerPanel,
#resourceDetails .containerPanel
{
    float: left;
    width: 100%;
}

#facilityDetails .leftPanel,
#resourceDetails .leftPanel
{
    float: left;
    width: 70%;
}
#facilityDetails .rightPanel,
#resourceDetails .rightPanel
{
    float: right;
    width: 30%;
    margin-left: 20px;
}
#facilityDetails,
#resourceDetails
{
    margin-bottom: 15px;
}

#facilityDetails .resources li
{
    width: 100%;
    margin-bottom:20px;
    background-color: #FFF;
    float: left;
    margin-right:1.33%;
    transition: 0.2s;
}

#facilityDetails .resources li.resourceDetails{
    border-bottom: 1px solid #DDD;
    padding: 0 0 20px 0;
    margin: 0;
    margin-bottom: 15px;
}

#facilityDetails .resources li .resourceName{
    margin: 0 0 10px 0;
    position: relative;
}

#facilityDetails .resources li .photosContainer {
    padding: 10px;
}

#facilityDetails .resources li .photo
{
    height: auto;
    float: left;
}

#facilityDetails .placeholder,
#facilityList .placeholder{
    width: 100%;
    height: 100%;
    padding-bottom: 75%;
    background-image: url("/content/images/image-placeholder.png");
    background-size: 100%;
    background-repeat: no-repeat;
    position: relative;
    z-index: 1;
    background-position: center center;
}

    #facilityDetails .slide-main .placeholder {
        padding-bottom: 0;
        background-size: auto 100%;
    }

#facilityDetails .resources li.resourceDetails .resourceAttributes{
    overflow:  hidden;
}


#facilityDetails .resources li:nth-child(4n){
	margin-right: 0
}

#facilityDetails .photosContainer
{  
    width: 300px;
    height: 200px;
    float: left;
}
#facilityDetails .photo
{
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
#facilityDetails .resourceInfo
{
    height: 100%;
    margin-bottom: 5px;
}
#facilityDetails .details
{
    padding: 0 20px;
    height: 100%;
    position: relative;
}

#facilityDetails .resourceName
{
    font-weight: bold;
    font-size: 1.2em;
    margin: 0 5px;
}
#facilityDetails .link
{
   bottom: 15px;
   float: right;
}


#facilityDetails .mapWrapper{
    width: 100%;
}

#facilityDetails .map
{
    border:0;
    width:100%;
    height:500px;
    margin-bottom: 20px;
}

#facilityDetails .resourceDetails .amenity .amenity-heading{
    margin-bottom: 1em;
}

/*end of Facility Details*/

/* Facility Search */
#facilitySearch #search, #advancedFacilitySearch #searchAdvanced {
    width: 140px;
    margin: 0;
}

#facilitySearch .ui-datepicker-trigger {
    margin-left: 5px;
    position: absolute;
    margin-top: 7px;
}

#advancedFacilitySearch
{
    position: fixed;
    right: 0;
    width: 520px;
    top: 0;
    height: 100%;
    border: none;
    border-radius: 0;
    z-index: 110;
    margin: 0;
    margin-bottom: 0;
    min-width: 190px;
    padding: 0;
    background: rgba(0,0,0,.9);
    color: white;
    display: none;
    overflow: hidden;
    -webkit-transform: translate3d(0,0,0);
}
#advancedFacilitySearchInner
{
    overflow-y: auto;
    max-height: 100%;
    z-index: auto;
}
 #advancedFacilitySearchOverlay{
    position: fixed;
    height: 100%;
    width: 100%;
    background-color: rgba(0,0,0,0.2);
    top: 0;
    left: 0;
    z-index: 100;
    display: none;
}
#advancedFacilitySearch::-webkit-scrollbar
{
    display: none;
}
/*Advance search sidebar scrollbar*/

#advancedFacilitySearchInner::-webkit-scrollbar-track
{
    opacity: 0;

}

#advancedFacilitySearchInner::-webkit-scrollbar
{
    opacity: 0;
    width: 10px;
}

#advancedFacilitySearchInner::-webkit-scrollbar-track:hover
{
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    border-radius: 10px;
    cursor: pointer;
    z-index:1000;
}

#advancedFacilitySearchInner::-webkit-scrollbar-thumb
{

}

#advancedFacilitySearchInner::-webkit-scrollbar-thumb:hover
{
	border: 2px solid #333;
    border-radius: 10px;
	background-color: rgba(130,130,130,0.8);
}

#facilitySearch 
{
    background: rgba(0,0,0,.9);
    color: white;
    width: 500px;
    top: 25%;
    margin-left: auto;
    margin-right: auto;
    border-radius: 4px;
    padding: 10px;
    overflow: hidden;
    box-sizing: border-box;
}
#advancedFacilitySearch h2
{
    margin: 20px;
    margin-top: 40px;
    font-weight: normal;
    font-size: 24px;
}

#facilitySearch .showFilter,
#facilitySearch .facilityIndex,
#advancedFacilitySearch .hideFilter 
{
    float: right;
    margin: 12px;
}
#advancedFacilitySearch .hideFilter 
{
    margin-right: 20px;
    padding-right: 20px;
    background-image: url(../content/images/facility-arrow-left.png);
    background-position: right center;
    background-repeat: no-repeat;
}

#facilitySearch a,
#advancedFacilitySearch a
{
    text-decoration: none;
    color: white;
    cursor: pointer;
}
  
#facilitySearch .body,
#advancedFacilitySearch .body
{
    margin: 10px 20px 20px 20px;
    padding-bottom: 20px;
}  
#facilitySearch .row,
#advancedFacilitySearch .row
{
    padding-top: 20px;
    width: 100%
}

#facilitySearch .row{
    overflow: hidden;
}

#facilitySearch input, #advancedFacilitySearch input {
    height: 40px;
    border-radius: 2px;
}

#facilitySearch input.fullwidth,
#advancedFacilitySearch input.fullwidth
{
    width: 100%;
    box-sizing: border-box;
}

#facilitySearch .halfwidth,
#advancedFacilitySearch .halfwidth
{
    width: 50%;
    float: left;
    padding-right: 20px;
    box-sizing: border-box;
}

#facilitySearch .quarterwidth,
#advancedFacilitySearch .quarterwidth
{
    width: 25%;
    float: left;
}

#facilitySearch .halfwidth,
#facilitySearch .quarterwidth{
    margin-bottom: 10px;
}

#facilitySearch .when .answer .date{
    margin-right: 37px;
}

#facilitySearch .when .answer .date .hasDatepicker{
    width: 100%;
}


#facilitySearch .quarterwidth .answer {
    margin-right: 20px;
}


#facilitySearch .extras {
    width: 100%;
    border-collapse: collapse;

}

#facilitySearch .extras .halfwidth,
#facilitySearch .extras .quarterwidth{
    display: table-cell;
    vertical-align: bottom;
}

    #facilitySearch .extras .question {
        display: block;
        display: -webkit-box;
        margin: 0 auto;
        height: 34px;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        -ms-text-overflow: ellipsis;
        -o-text-overflow: ellipsis;
        text-overflow: ellipsis;
        font-size: 14px;
        position: relative;
    }

#facilitySearch .extras .question span{
    vertical-align: bottom;
    display: table-cell;
}


#facilitySearch .extras .question span.bottom{
    vertical-align: bottom;
    display: table-cell;
    position: absolute;
    bottom: 0;
    max-height: 34px;
}

#facilitySearch .extras .time .question{
    position: relative;
    top: 14px;
}

#facilitySearch .timeDisplay{
    position:relative;
    top: -22px;
}

#facilitySearch input{
    width: 100%;
    box-sizing: border-box;
}

#facilitySearch .question
{
    margin: 5px 0;
    font-size: 20px;
}

#advancedFacilitySearch .question
{
    margin: 5px 0;
    font-size: 16px;
}

#advancedFacilitySearch .answer
{
    margin: 5px 0;
}
#advancedFacilitySearch .sliderMarker, #facilitySearch .sliderMarker
{
    font-weight: normal;
    font-size: 1em;
    margin-bottom: 25px;
}
#advancedFacilitySearch .singleSlider .ui-widget-content, #facilitySearch .singleSlider .ui-widget-content
{
    background: #0C8FC8;
}
#advancedFacilitySearch .rangeSlider .ui-widget-header, #facilitySearch .rangeSlider .ui-widget-header
{
    background: #0C8FC8;
}
#advancedFacilitySearch .ui-slider-horizontal, #facilitySearch .ui-slider-horizontal
{
    height: .4em
}
#advancedFacilitySearch .ui-slider .ui-slider-handle, #facilitySearch .ui-slider .ui-slider-handle {
    border-radius: 100%;
    height: 50px;
    width: 50px;
    transition: none;
    box-sizing: border-box;
    top: -22px;
    padding: 16px;
    background-size: 10px 10px;
    background-repeat: no-repeat;
    background: none;
    border: none;
    background-color: #DDD;
    background-clip: content-box;
    margin-left: -25px;
}
#advancedFacilitySearch .ui-slider .ui-slider-handle.no-padding, #facilitySearch .ui-slider .ui-slider-handle.no-padding{
    height: 16px;
    width: 16px;
    margin-left: -.6em;
    background-clip: unset;
    padding: 0;
    top: 0;
}
#advancedFacilitySearch .ui-slider .ui-slider-handle, #facilitySearch .ui-slider .ui-slider-handle:focus{
    outline: none;
}


#advancedFacilitySearch .slider, #facilitySearch .slider, #advancedFacilitySearch .singleSlider, #advancedFacilitySearch .sliderMarker
{
    width: 100%;
    box-sizing: border-box;
    padding-left: 7px;
    padding-right: 7px;
}
#advancedFacilitySearch .timeDuration input
{
    width: 30%;
}

#advancedFacilitySearch .filterLeftArrow  {
    height: 9px;
    padding-left: 5px;
}

.searchResultBanner {
    width: 100%;
    margin: 20px auto 25px auto;
    padding: 0 10px 0 10px; 
    height: 50px;
    color: white;
    box-sizing: border-box;
    background-color: rgba(0,0,0,.9);
    border-radius: 4px;
}
.searchResultBanner a
{
    text-decoration: none;
    color: white;
    cursor: pointer;
    display: inline-block;
    padding: 18px 18px 18px 0;
}
.searchResultBanner .changeView
{
    float: left;
    height: 24px;
    width: 28px;
    cursor: pointer;
}
.searchResultBanner .searchResultIcon{
	display:block;
	float: left;
	padding: 18px 10px 8px 10px;
}
.searchResultBanner .searchResultIcon > span{
	display: block;
	float: left;
	color: #FFF;
	opacity: 0.7;
}
.searchResultBanner .changeView{
    background-position: center; 
    opacity: 0.7;
}
.searchResultBanner .changeView.gallery
{
    background: url("images/gallery-view-icon-selected.png") no-repeat scroll 0 0 transparent;
}
.searchResultBanner .changeView.list
{
    background: url("images/list-view-icon-selected.png") no-repeat scroll 0 0 transparent;
}
.searchResultBanner .changeView.map
{
    background: url("images/map-view-icon-selected.png") no-repeat scroll 0 0 transparent;
}
.searchResultBanner .changeView.availability
{
    background: url("images/availability-view-icon-selected.png") no-repeat scroll 0 0 transparent;
    background-position: 0 -1px;
    background-size: 22px 20px;
    width: 23px;
}
.searchResultBanner .changeView.selected,
.searchResultBanner .changeView.selected + span,
.searchResultBanner .searchResultIcon:hover .changeView,
.searchResultBanner .searchResultIcon:hover > span
{
	opacity: 1.0;
	cursor: pointer;
}

#facilityList {
    height: 100%;
    width: 100%;
    display: block;
    position: relative;
}

#facilityList .resultsSortBy
{
    float: right;
    margin-bottom: 5px;
}

#facilityList.list .facilityDetails
{
    width: 100%;
    margin-bottom:20px;
    background-color: whitesmoke;
    border-radius: 4px;
    float: left;
}
#facilityList.list .photosContainer
{  
    width: 420px;
    height: 275px;
    float: left;
}
#facilityList.list .photo
{
    width: 100%;
    height: 100%;
}
#facilityList.list .info
{
    width: 67%;
    float: left;
}
#facilityList.list .details
{
    padding: 0 20px;
    position: relative;
}

#facilityList.list .resources .details{
    padding: 0;
}

#facilityList.list .facility-attributes .facility-attribute {
    width: 50%;
    padding-right: 15px;
    margin-bottom: 15px;
    height: 24px;
}

#facilityList.list .facility-attributes .attribute-data {
    min-height: 24px;
    color: #404040;
    font-size: 14px;
}

#facilityList.list .facility-attributes .attribute-icon {
    height: 24px;
    width: 24px;
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: center, top;
    background-color: rgba(0,0,0,.9);
    float:left;
    margin-right: 5px;
}

#facilityList.list .facility-attributes .attribute-icon.address {
    background-image: url(images/facility-location-white.png);
}

#facilityList.list .facility-attributes .attribute-icon.phone {
    background-image: url(images/facility-contact-white.png);
}

#facilityList.list .facility-attributes .attribute-icon.email {
    background-image: url(images/facility-email-white.png);
}

#facilityList.list .facility-attributes .attribute-icon.fee {
    background-image: url(images/facility-dollar-white.png);
}

#facilityList.list .facility-attributes .attribute-icon.capacity {
    background-image: url(images/facility-capacity-white.png);
}

/*Multi line text overflow with ellipses. (height = font-size * line-height * lines-to-show) */
#facilityList.list .details .desc p{
    display: block;
    display: -webkit-box;
    margin: 0 auto;
    line-height: 1.4;
    height: 98px;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 14px;
}

#facilityList.list .facilityName
{
    font-weight: bold;
    font-size: 1.6em;
    margin: 20px 0;
}

#facilityList.list .link
{
   bottom: 40px;
}

#facilityList.map .mapResults
{
    max-width: 100%;
    min-width: 400px;
    height: 100%;
}

#facilityList.map .mapContainer
{
    height: 600px;
}

#facilityList.map .mapData
{
    display: none;
}

#facilityList.map .popupInfo
{
    width: 250px;
    height: auto;
}
#facilityList.map .popupInfo .details
{   
   display: table;
}
#facilityList.map .popupInfo .image
{   
    width: 30%;
    height: auto;
    float: left;
    margin-right: 5px;
}
#facilityList.map .popupInfo img
{
    width: 100%;
    height: 100%;
}
#facilityList.gallery .galleryResults
{
    width: 100%;
}
#facilityList.gallery .facilityDetails
{
    display: inline-table;
    float: left;
    width: 25%;
    transition: 0.2s;
    float: left;
    position: relative;
    width: 25%;
    padding-bottom: 22%;
}
.photosContainer
{
    padding:5px;
    top: 10px;
    overflow: hidden;
}

#facilityList.noResults .noResultsContainer {
    margin: 0 10px 0 10px;
}

#facilityList.gallery .photo
{
    width: 100%;
}

#facilityList.gallery .photosContainer
{
    position: absolute;
    padding: 0 5px 5px 5px;
    top: 0;
    width: 100%;
}

#facilityList.list .photosContainer {
    max-width: 420px;
    max-height: 275px;
    height: 100%;
    width: 33%;
}

#facilityList.list .photosContainer.vertical{
    height: 100%;
    width: 25%;
    padding: 0;
    padding-right: 10px;
}

#facilityDetails h1,
#resourceDetails h1 {
    margin: 0.67em 0;
}

#facilityDetails .resources .slick-slider{
    margin-bottom: 0 !important;
}

#facilityDetails .resources .amenities li {
    transition: 0.2s;
    width: auto;
    margin-bottom: 0;
    background-color: inherit;
    border-radius: 0;
    float: none;
    margin-right: 0;
}

#facilityDetails .resources li .amenities-wrapper{
    display: table;
    table-layout: fixed;
    width: 75%;
}

#facilityDetails .resources li .amenity {
    overflow: hidden;
    padding: 0;
    display: table-cell;
    width: auto;
    border-right: 1px dashed #EEE;
    padding: 0 10px;
}

#facilityDetails .resources li .amenities-wrapper .amenity:first-child {
    padding-left: 0;
}

#facilityDetails .resources li .resourceAttributes > .resourceInfo .desc{
    margin-bottom: 1em;
}

#facilityDetails .resources li .amenity:first-child{
    border-top: 0;
}

#facilityDetails .resources li .resourceName,
#facilityDetails .resources li h3
{
    margin: 0;
}

#facilityDetails .resources li .amenity:last-child{
    border-right: 0;
}

#facilityDetails .resources li .amenity li{
    margin: 0;
}


#facilityContent .amenities-wrapper{
    width: 100%;
    display: table;
    table-layout: fixed;
    margin-bottom: 20px;
}

#facilityContent .amenities-wrapper .amenity{
    vertical-align: top;
    padding: 5px 10px 25px 10px;
    display: table-cell;
}

#facilityContent .amenities-wrapper .amenity:nth-child(odd){
    vertical-align: top;
    background: #F9F9F9;
    border-left: 2px solid #EEE;
    border-right: 2px solid #EEE;
}

#facilityContent .amenities-wrapper .amenity:nth-child(even){
    vertical-align: top;
    background: #FFF;
}

#facilityContent .amenities-wrapper .amenity:first-child{
    border-left: none;
}

#facilityContent .amenities-wrapper .amenity:last-child{
    border-right: none;
}

#facilityList.availability
{
    padding-bottom: 20px;
}
#facilityList.availability div.cellHeader
{
    text-align: center;
    font-weight: bold;
    height: 14px;
    font-family: 'Open Sans', Arial, sans-serif;
    overflow: hidden;
}
#facilityList.availability div.cellHeader.day
{
    height: 28px;
}
#facilityList.availability div.bookableColumn > div
{
    border-right: none!important;
    padding-left: 0;
    width: 100%;
    overflow: hidden;
}

#facilityList.availability div.timeSlotBodyContainer
{
    padding: 10px 0 0 0;
    min-width: 765px;
}

#facilityList.availability div.fixedTimeSlot,  facilityList.availability div.timeSlot
{
    border-left: 1px solid #C0C0C0;
}

#facilityList.availability div.bookableColumn 
{
    float:left;
    width: 100%;
}

#facilityList.availability div.timeSlotContainer
{
    float: right;
    position: relative;
}
#facilityList.availability div.facilityContent{/* not needed, just for clarification *//* the next props are meant to keep this block independent from the other floated one *//* 20px added for center margin */
    margin-right: -540px;
    float: left;
    width: 100%;
}
#facilityList.availability div.bookable
{
    padding-top: 0;
    padding-bottom: 0;
    height: 90px;
    overflow: hidden;
}
#facilityList.availability div.bookable.resource
{
    padding-left: 0;
    height: 80px;
    background-color: #F4F4F7;
    padding: 10px 10px 10px 10px;
    solid #CCC;
    border-top: 1px solid  #ddd;
    float: left;
    width: 100%;
    margin-right: -540px;
}
#facilityList.availability div.bookable.resource .details {
    padding: 2px 10px;
}
#facilityList.availability div.bookable.resource .photosContainer {
    width: 90px;
    height: 60px;
}
#facilityList.availability .facilityWrapper {
    margin-bottom: 10px;
}
#facilityList.availability .facilityWrapper{
    margin-bottom: 20px;
    border: 1px solid #CCC;
    margin-top: 6px;
}
#facilityList div.resource
{
    display: none;
}

#facilityList.availability .photosContainer {
    width: 135px;
    height: 90px;
    float: left;
    padding: 0;
}

#facilityList.availability .photo {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
#facilityList.availability .info
{
    height: 100%;
    overflow-x: auto;
    overflow-y: hidden;
}
#facilityList.availability .details
{
    padding: 5px 20px;
    height: 100%;
    position: relative;
}

#facilityList.availability .details .link .button
{
    margin-top: 3px;
}

#facilityList.availability .showResources
{
    display: inline-block;
    width:30px;
    height: 30px;
    vertical-align: middle;
}
#facilityList.availability .expand
{
    background: url(images/expand.png) no-repeat center center;    
}

#facilityList.availability .collapse
{
    background: url(images/collapse.png) no-repeat center center;
}
#facilityList.availability .facilityName {
    color: #203D59;
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 600;
    font-size: 1em;
    max-width: 260px;
    overflow: visible;
    text-overflow: ellipsis;
    word-wrap: break-word;
    overflow: hidden;
    max-height: 2.2em;
    line-height: 1.1em;

}
#facilityList.availability .header
{
    padding: 20px;   
}

#facilityList.availability .date-picker
{
    padding-right: 10px;   
}

#facilityList.availability .date
{
    float: left;
    font-weight: 600;
    font-size: 1.5em;
}
#facilityList.availability .nav
{
    float: right;
}

#facilityList.availability div.timeSlotRow
{
   white-space: nowrap;
   font-size: 0;
   border-right:  1px solid #CCC;
}
#facilityList.availability .timeSlotContainer > div.timeSlotRow{
	/* margin-top: 20px; */
	border-right: 1px solid #CCC;
}

#facilityList.availability div.timeSlot,
#facilityList.availability div.daySlot
{
    font-size: 10px;
    display: inline-block;
    padding-top: 5px;
    padding-bottom:5px;
    height: 60px;
    padding-top: 0;
    padding-bottom: 0;
    min-height: 76px;
    border-left: 1px solid #C0C0C0;
    border-top: 1px solid #C0C0C0;
    text-align: center;
}
#facilityList.availability div.daySlot
{
    min-height: 62px;
    font-family: 'Open Sans', Arial, sans-serif;

}

#facilityList.availability div.resource div.timeSlot, 
#facilityList.availability div.resource div.daySlot {
    min-height: 60px;
    height: 80px;
}

#facilityList.availability div.fixedTimeSlot
{
    width: 44px;
    font-size: 10px;
    display: inline-block;
    white-space: pre-wrap
}
#facilityList.availability div.fixedTimeSlot.day,
#facilityList.availability div.daySlot
{
    width: 76px;
}

#facilityList.availability .legends
{
    width: 100%;
}


#facilityList .filterRightArrow {
    height: 17px;
    width: 11px;
}
#facilityList .filterArrowContainer {
    float: right;
    padding-top: 17px;
    padding-right: 15px;
}

.searchResultBanner #advancedSearch {
    background-image: url(../content/images/facility-arrow-right.png);
    background-position: right center;
    background-repeat: no-repeat;
}

#advancedFacilitySearch .hideFilter

.searchResultBanner a
{    
    font-size: 1.1em;
}

/* end of Facility Search */
#bookings-sidebar {
    top: 0;
    right: 0;
    width: 250px;
    height: 100%;
    color: #FFF;
    display: none;
    z-index: 1;
    position: fixed;
    padding: 7px 20px !important; 
    padding-bottom: 0 !important;
    overflow-y: scroll;
    font-family: 'Open Sans', Arial, sans-serif;
    background: rgb(76, 76, 76);
    scrollbar-face-color: #888;
    scrollbar-track-color: #555;
    scrollbar-arrow-color: #999;
    scrollbar-shadow-color: #888;
}

#bookings-sidebar a{
    color:#48DDFF 
}

#bookings-sidebar h5{
    font-size: 28px;
    font-weight: 300;
}

#bookings-sidebar .more-info > div{
    margin-bottom: 10px;
}

#bookings-sidebar .more-info a.close{
    display: inline;
    font-size: 26px;
    font-weight: 300;
    margin-top: -14px;
    margin-right: 0;
}

#bookings-sidebar .more-info-click-wrapper{
    margin-bottom: 50px;
    min-width: 260px;
}

#bookings-sidebar .bookings-sidebar-section{
    margin-bottom: 20px;
}

#bookings-sidebar #bookings-sidebar-list .booking-list-item,
#bookings-sidebar #bookings-sidebar-unavailability-list .unavailability-list-item{
    margin-top: 8px;
    margin-bottom: 5px;
}

#bookings-sidebar #bookings-sidebar-unavailability-list .unavailability-list-item .icon.delete{
    background-image: url('/content/images/delete-icon.png');
    background-repeat: no-repeat;
    background-size: 16px 16px;
    background-position: 3px 3px;
    width: 22px;
    height: 22px;
    float: right;
}

#bookings-sidebar::-webkit-scrollbar-track
{
    opacity: 0;
}

#bookings-sidebar::-webkit-scrollbar
{
    width: 10px;
    opacity: 0;
}

#bookings-sidebar::-webkit-scrollbar-track:hover
{
    z-index:1000;
    cursor: pointer;
    border-radius: 10px;
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
}

#bookings-sidebar::-webkit-scrollbar-thumb:hover
{
    border-radius: 10px;
	border: 2px solid #333;
	background-color: rgba(130,130,130,0.8);
}


/*Bookings sidebar - unavailability*/
#bookings-sidebar #body-container{
    width: 100%;
    min-width: 0;
    color: #FFF;
}
#bookings-sidebar #body-container *{
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

#bookings-sidebar #body-container h2{
    color: #FFF;
    margin: 0;
}
#bookings-sidebar #unavailability-table{
    background: none;
    display: block;
    min-width: 0;
    color: #FFF;
    width: 100%;
}
#bookings-sidebar #unavailability-table tbody{
    width: 100%;
    min-width: 0;
    display: block;
}
#bookings-sidebar #unavailability-table tbody tr{
    width: 100%;
    min-width: 0;
    display: block;
    border-bottom: none;
}
#bookings-sidebar #unavailability-table tbody tr td{
    width: 100% !important;
    display: none;
    padding: 0;
    margin: 5px 0;
}
#bookings-sidebar #unavailability-table tbody tr td.simple {
    display: block;
}
#bookings-sidebar #unavailability-table tbody tr td input[type=text]{
    width: 100%;
}
#bookings-sidebar #unavailability-table tbody tr td input[type=number]{
    width: 20%;
}
#bookings-sidebar #unavailability-table tbody tr td input[type=text].datetime,
#bookings-sidebar #unavailability-table tbody tr td input[type=text].timespan{
    width: 70px;
}

#arrow {
    width: 10px;
    background: #FFFFFF;
    position: relative;
    top: -16px;
    left: 125px;
    transition: 1s;
}

#arrow:after {
    content: '';
    display: block;
    width: 10px;
    height: 10px; 
    background: #FFFFFF;
    border-right: 1px solid #C0C0C0;
    border-top: 1px solid #C0C0C0;
    -webkit-transform:rotate(-45deg);
    -moz-transform:rotate(-45deg);
    -ms-transform:rotate(-45deg);
    transform: rotate(-45deg);
}

/*Slick carousel plugin*/

.slick-prev, .slick-next{
    width: 42px !important;
    height: 42px !important;
}

.slick-next{
    right: 10px !important;
    z-index: 1;
}

.slick-prev{
    left: 10px !important;
    z-index: 1;
}

.slick-prev:before, .slick-next:before { 
    color:#FFF !important;
    font-size: 40px !important;
}

.slick-dots{
    bottom: -20px !important;
}

.sliderContainer.full-width .slick-dots{
    bottom: -20px !important;
}

.sliderContainer .slick-dots{
    bottom: 54px !important;
}

.slick-dots li {
    background-color: transparent !important;
    width: 20px !important;
    float: none !important;
}

.slick-dots li.slick-active button:before{
    font-size: 11px !important;
    color: #65BDEA !important;
    opacity: 1 !important;
}

.slick-dots li button::before {
    font-size: 11px !important;
    color: #CCC !important;
    opacity: 1 !important;
}

.slide {
  position: relative;
}

.slide__caption {
  bottom: 0;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 2;
  color: #FFF;
  background: rgba(0,0,0,0.6);
  bottom: 0px;
  font-size: 16px;
  z-index: 8;
  padding: 15px 0;
}

.sliderContainer.full-width .slide__caption{
      padding: 15px;
}

.sliderContainer.full-width .slide__caption .slide-caption-text{
    width: auto;
    padding: 0;
}

.slide__caption .slide-caption-text{
  width: 600px;
  margin: 0 auto;
  padding: 0 15px;
}

.slide-background .slide-overlay{
    background: rgba(0,0,0,0.5);
    position: absolute;
    lefT: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.slide-background .slide-background-image{
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    z-index: -1; 
    transform: translateY(-50%);
	-webkit-filter: blur(10px);
	filter: blur(10px);
}

.slide-main-image{
    z-index:8; 
    position: relative;
}

.no-images .slide-background .slide-overlay {
    background: #ACACAC;
}

.no-images .slide__caption .slide-caption-text {
    margin: 0;
}

.scrolloff {
    pointer-events: none;
}

/*Responsive Bookings*/
@media all and (max-width: 1200px) {
    #tableColumns .timeCell .post, 
    #tableColumns .timeSlotCell .post,
    .timeSlotCellDay .post{
        display: none;
    }

    #facilityList.availability .facilityName{
        max-width: 250px;
        font-size: 1em;
    }
}

@media all and (max-width: 1080px) {
    #facilityList.list .details .desc p {
        height: 79px;
        -webkit-line-clamp: 4;
    }

    #facilityList.gallery .facilityDetails{
        width: 33%;
        padding-bottom: 28%;
    }

    /*#facilityDetails .resources li
    {
        width: 32%;
        margin-right:2.0%
    }*/

    #facilityDetails .resources li:nth-child(4n){
        margin-right: 2%;
    }

    #facilityDetails .resources li:nth-child(3n){
        margin-right: 0;
    }

    #resourceDetails .weekCalendarDisplay .legend
    {
        float: none;
    }

    .legends{
        width: 100%;
        float: left;
    }

    .legend{
        float: left;
    }

    .monthSchedule{
        width: 100%;
    }

    .weekSchedule{
        clear: left;
        float: left;
        width: 100%;
    }
}

@media all and (max-width: 1023px){
    #facilityList.availability div.facilityContent {
        margin-right: 0;
    }
    #facilityList.availability div.timeSlotContainer{
        float: none; 
        width: 100%;
        overflow: hidden;
    }

    #facilityList.availability div.timeSlotBodyContainer{
        min-width: 0;
    }

    #facilityList.availability div.fixedTimeSlot,  
    #facilityList.availability div.timeSlot,
    #facilityList.availability div.daySlot {
        border-top: 1px solid #C0C0C0;
    }

    #facilityList.availability .facility .details,
    #facilityList.availability .resource{
        border-right: 1px solid #C0C0C0;
    }

    #facilityList.availability div.timeSlot,
    #facilityList.availability div.daySlot
    {
        height: 42px;
        min-height: 42px;
    }
    
    #facilityList.availability div.fixedTimeSlot{
        width: 8.33%;
    }

    #facilityList.availability div.fixedTimeSlot.day,
    #facilityList.availability div.daySlot
    {
        width: 14.29%;
    }

    #facilityList.availability div.daySlot span.availabilityLong
    {
        display:none;
    }
    #facilityList.availability div.daySlot span.availabilityShort
    {
        display:inline;
    }

    #facilityList.availability div.bookable.resource{
        float: none;
        border-bottom: none;
        padding: 5px;
        height: 70px;
    }

    #facilityList.availability div.resource div.timeSlot,
    #facilityList.availability div.resource div.daySlot {
        height: 30px;
        min-height: 30px;
    }

        #facilityList.availability div.timeSlotContainer .tooltip-arrow{
        position: absolute;
        display: block;
        left: 50%;
        height: 10px;
        width: 10px;
        background: #F4F4F7;
        top: -5px;
        border: 1px solid #C0C0C0;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    #calendarRegion .timeSlotCellTimeSpan .post{
        display: none;
    }
}

@media all and (max-width: 940px) {
    #facilityList.list .details .desc p {
        height: 59px;
        -webkit-line-clamp: 3;
    }
}


@media all and (max-width: 800px) {
    #facilityList.list .facilityName{
        margin: 10px 0;
    }

    #facilityList.list .details .desc p {
        height: 40px;
        -webkit-line-clamp: 2;
    }

    #facilityList.gallery .facilityDetails{
        width: 50%;
        padding-bottom: 44%;
    }

    #facilityList.gallery .facilityDetails .photosContainer img{
       max-width: 320px;
       max-height: 240px;
    }
      
    #facilityDetails .resources li .photosContainer.vertical{
        width: 50%;
    }

    #facilityDetails .resources li .amenities-wrapper {
        width: 100%;
        display: block;
    }

    #facilityDetails .resources li .amenity {
        display: block;
        border-right: none;
        border-top: 1px dashed #DDD;
        padding: 0px 10px 10px 10px;
    }

    #facilityDetails .resources li .amenities-wrapper .amenity {
        padding-left: 0;
    }

    #facilityDetails .resources li:nth-child(2n - 1)
    {
        margin-right:2%
    }


    #facilityDetails .resources li:nth-child(2n){
        margin-right: 0;
    }

    div#facilitySearch .extras{
        display: block;
    }

    div#facilitySearch .extras .halfwidth,
    div#facilitySearch .extras .quarterwidth{
        display: block;
    }

    div#facilitySearch .halfwidth, #advancedFacilitySearch .halfwidth {
        width: 100%;
        padding-bottom: 10px;
        padding-right: 0;
    }

    div#facilitySearch .quarterwidth, #advancedFacilitySearch .quarterwidth {
        width: 50%;
        padding-bottom: 20px;
    }
    
    div#facilitySearch .quarterwidth .answer .date{
        margin-right: 17px;
    }

    #facilityDetails .resources li .amenity:first-child .amenity-heading{
        margin-top: 0;
    }

    #facilityDetails .resources li .amenity .amenity-heading{
        margin-top: 1em;
    }
}

@media all and (max-width: 680px) {

    #facilityContent .sliderContainer .slide-main-image {
        width: 100%;
        height: auto;
    }

    #facilityContent .sliderContainer .slide-main-image .placeholder {
        padding-bottom: 75%;
    }

    #facilityContent .sliderContainer img.slide-background{
            display: none;
    }

    #facilityList.list .facility-attributes .facility-attribute {
        width: 100%;
        margin-bottom: 5px;
    }

    .weekCalendarDisplay .cellHeader .upper .short{
        display: inline;
    }

    .weekCalendarDisplay .cellHeader .upper .full{
        display: none;
    }
}

@media all and (max-width: 580px) {
    #facilityList.list .facilityName{
        margin: 6px 0;
    }

    #facilityList.list .details .link a.button {
        margin-top: 3px;
    }

    #advancedFacilitySearch {
        width: 100%;
    }


    #facilityContent .amenities-wrapper{
        width: 100%;
    }

    #facilityContent .amenities-wrapper .amenity{
        display: block;
        border: none !important;
        display: block;
        border-bottom: 1px dashed #CCC;
        padding: 5px 5px 10px 0;
    }

    #facilityContent .amenities-wrapper .amenity:nth-child(odd){
        border-left: none;
        border-right: none;
    }

    #advancedFacilitySearch .answer.slider, #facilitySearch .answer.slider, #advancedFacilitySearch .singleSlider
    {
        padding-left: 22px;
        padding-right: 22px;
    }
}

@media all and (max-width: 540px) {
    #facilityList.list .facilityName{
        margin: 3px 0;
    }

    #facilityList.list .photosContainer{
        transition: 0.2s;
    }

    #facilityList.list .details .desc p {
        height: 20px;
        -webkit-line-clamp: 1;
    }

    #facilityContent .facilityPhotoLocation {
        width: 100%;
    } 


    #facilityContent .facilityPhotoLocation img, 
    #facilityContent .facilityPhotoLocation iframe{
        width: 100%;
        margin-bottom: 15px;
    }

    #facilityContent .facilityPhotoLocation .resourceSliderContainer{
        width: 100%;
        margin: 0;
        min-width: 0;
    }


    #facilityContent .facilityPhotoLocation.mapWrapper,
    #facilityContent .facilityPhotoLocation.mapWrapper{
        order: 2;
    }

    div#facilitySearch {
        width: 100%;
        padding: 0;
    }

    div#facilitySearch .quarterwidth, #advancedFacilitySearch .quarterwidth {
        width: 100%;
        padding-bottom: 20px;
    }

    div#facilitySearch .quarterwidth .answer, #advancedFacilitySearch .quarterwidth .answer{
        margin-right: 0;
    }

    div#facilitySearch .quarterwidth .answer .date{
        margin-right: 37px;
    }

    #facilityList.map{
        padding: 0;
        transition: 0.2s;
    }

    #facilityList.map .mapResults
    {
        height: 550px;
    }

    #tableColumns .timeColumn .timeCell{
        padding: 0;
    }
    
    .searchResultBanner .searchResultIcon{
        padding: 18px 3px 8px 3px
    }
    .searchResultBanner .searchResultIcon > span{
        display: none;
    }

    .searchResultBanner .searchResultIcon .changeView.selected + span{
        display: block;
    }
}



@media all and (max-width: 460px) {

    #facilityList.list .facilityName{
        margin: 12px 0;
    }

    #facilityList.list .photosContainer{
        width: 100%;
        float: initial;
    }

    #facilityList.list .info{
        width: 100%;
    }

    #facilityList.list .details .desc p {
        height: 40px;
        -webkit-line-clamp: 2;
    }

     #facilityList.list .details .link a.button {
        margin-bottom: 10px;
    }

     
    #facilityList.gallery .facilityDetails{
        width: 100%;
        padding-bottom: 83%;
    }

    #facilityDetails .resources li
    {
        width: 100%;
        margin-right:0;
    }

    #facilityDetails .resources li .photosContainer.vertical{
        width: 100%;
        margin-bottom: 1em;
    }
}


@-moz-keyframes bounceDown {
  0% {
    -moz-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(20px);
    transform: translateY(20px);
  }
}
@-webkit-keyframes bounceDown {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }
}
@keyframes bounceDown {
  0% {
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(20px);
    -ms-transform: translateY(20px);
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }
}

.bounceDown {
  -moz-animation: bounceDown 2s infinite;
  -webkit-animation: bounceDown 2s infinite;
  animation: bounceDown 2s infinite;
}


@-moz-keyframes bounceUp {
  0% {
    -moz-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}
@-webkit-keyframes bounceUp {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}
@keyframes bounceUp {
  0% {
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}

.bounceUp {
  -moz-animation: bounceUp 2s infinite;
  -webkit-animation: bounceUp 2s infinite;
  animation: bounceUp 2s infinite;
}