/* FUNCTIONAL CSS (REQUIRED)*/

/* STYLISTIC CSS (OPTIONAL) */
.ccm-camps{width:800px}
.ccm-camps .ip-htmltable.camps-list .ip-htmltablerow.camp-row{border-bottom:solid 1px #bbb;padding:20px 0}
.ccm-camps .ip-htmltablecell.camp-col.general{display:inline-block;width:30%}
.ccm-camps .ip-htmltablecell.camp-col.other{display:inline-block;width:40%}
.ccm-camps .ip-htmltablecell.camp-col.register{display:inline-block;width:30%;text-align:right}
.ccm-camps .ip-htmltablecell.camp-col.other div{display:inline-block}

.sold-out::before {
content: "Sold Out";
position: absolute;
right: 0;
bottom: calc(100% + 5px);
color: #e51937;
font-size: 0.9em;
}
.limited::before {
content: "Limited Spots Remaining";
font-size: 0.9rem;
position: absolute;
right: 0;
bottom: calc(100% + 5px);
color: #e51937;
font-size: 0.9em;
}
.camp-col.register {
position: relative;
}
  
/*search page style*/
.ccm-camps {
	width: 100% !important;
}
.ccm-camps * {
	box-sizing: border-box;
}
.ccm-camps .camps-search {
	text-align: right;
}
.ccm-camps .camps-search #txtSearch {
	width: 48%;
	border-radius: 3px;
	border: 1px solid #ccc;
	padding: 3px;
}
.ccm-camps .camps-subfilters {
	margin: 10px 0;
	overflow: hidden;
	text-align: right;
}
.camps-subfilters .filter-age, .camps-subfilters .filter-type, .camps-subfilters .filter-month, .camps-subfilters .filter-location {
	width: 20%;
	display: inline-block;
	float: none;
	margin-left: 1%;
}
.ccm-camps .camps-subfilters select {
	width: 100%;
	border-radius: 3px;
	border: 1px solid #ccc;
	padding: 3px;
	outline: none;
	color: #666;
	background-color: #fff;
	height: 23px;
}
.ccm-camps .ip-htmltablerecordcount {
	height: auto;
	overflow: hidden;
	border-bottom: 1px dotted #ccc;
	padding: 5px 0;
	font-size: smaller;
}
.ccm-camps .ip-htmltablecell.camp-col {
	vertical-align: middle;
}
.ccm-camps .ip-htmltablecell.camp-col * {
	word-wrap: break-word;
}
.ccm-camps .ip-htmltablerow.camp-row .ip-htmltablecell.camp-col.general {
	width: 35%;
}
.ccm-camps .ip-htmltablerow.camp-row .ip-htmltablecell.camp-col.other {
	width: 45%;
	padding: 0;
}
.ccm-camps .ip-htmltablerow.camp-row .ip-htmltablecell.camp-col.other div {
	margin: 5px 5%;
	vertical-align: middle;
	height: auto;
	line-height: 16px;
	padding-left: 18px;
}
.ccm-camps .ip-htmltablerow.camp-row .ip-htmltablecell.camp-col.other div.age {
	width: 25%;
	background: url(../images/user-icon.png) no-repeat left center;
}
.ccm-camps .ip-htmltablerow.camp-row .ip-htmltablecell.camp-col.other div.location {
	width: 55%;
	background: url(../images/location-icon.png) no-repeat left center;
}
.ccm-camps .ip-htmltablerow.camp-row .ip-htmltablecell.camp-col.register {
	width: 20%;
}
.ccm-camps .ip-htmltablecell.camp-col.general .name {
	font-weight: bold;
	color: #444;
	font-size: larger;
}
.ccm-camps .ip-htmltablecell.camp-col.general .type {
	margin: 5px 0;
	color: #999;
}
.ccm-camps .ip-htmltablecell.camp-col.general .dates {
	font-weight: 300;
}
.ccm-camps .ip-htmltablecell.camp-col.register a {
	background-color: #7AA54B;
	border-radius: 2px;
	padding: 5px 10px;
	color: #fff;
	font-size: 14px;
	transition: background-color .2s ease-in;
	text-decoration: none;
	display: inline-block;
	text-align: center;
	max-width: 80px;
	width: 100%;
}
.ccm-camps .ip-htmltablecell.camp-col.register a.closed, .ccm-camps .ip-htmltablecell.camp-col.register a.sold-out {
	background-color: #999;
}
.ccm-camps .ip-htmltablecell.camp-col.register a:hover {
	background-color: #AB0505;
}
.ccm-camps .ip-htmltablepager {
	height: auto;
	margin: 10px 0 0;
}
.ccm-camps .ip-htmltablepager button {
	display: inline-block;
	border: 1px solid #ccc;
	background: #fff;
	color: #999;
	margin: 5px;
	width: auto;
	height: 24px;
	min-width: 24px;
	cursor: pointer;
}
.ccm-camps .ip-htmltablepager button:hover {
	color: #AB0505;
	border-color: #AB0505;
}
.ccm-camps .ip-htmltablepager .pager-pages button {
	border: none;
}
.ccm-camps .ip-htmltablepager .pager-pages button.current {
	background: #7AA54B;
	color: #fff;
	border-radius: 2px;
}
@media only screen and (max-width:812px) {
#dropshadow-top, #dropshadow-bottom {
	display: none;
}
#dropshadow {
	width: 100%;
	padding: 0;
	background: none;
}
#contentarea {
	background: none;
}
h1#pagetitle {
	clear: both;
	overflow: hidden;
	height: auto;
}
#column-left {
	background: #ccc;
	width: 100%;
	padding: 0;
	height: auto;
	float: none;
	overflow: hidden;
	box-sizing: border-box;
}
footer {
	text-align: center;
}
#content {
	padding: 20px;
	box-sizing: border-box;
	float: none;
	width: 100%;
}
.ipf-sectionmenu li a {
	width: auto;
	padding: 20px 10px;
	border: none;
	border-right: 1px solid #fff;
}
.ccm-camps .camps-filters .camps-search #txtSearch {
	width: 100%;
}
.camps-subfilters .filter-location {
	padding: 0;
}
.ccm-camps .ip-htmltablecell.camp-col {
	display: block!important;
	padding: 0 !important;
	width: 100%!important;
	text-align: left !important;
}
.ccm-camps .ip-htmltablerow.camp-row .ip-htmltablecell.camp-col.other {
	margin: 10px 0;
}
.ccm-camps .ip-htmltablecell.camp-col.register a {
	max-width: none;
}
.ccm-camps .ip-htmltablerow.camp-row .ip-htmltablecell.camp-col.other div {
	margin: 5px 0;
	width: 100% !important;
	display: block;
}
.camps-subfilters .filter-age, .camps-subfilters .filter-type, .camps-subfilters .filter-month, .camps-subfilters .filter-location {
	width: 100% !important;
	float: none;
	margin: 5px 0;
	padding: 0;
}
}
