/* rgba(125,169,215,1)  */
.campinfo { padding-bottom: 40px; background: transparent; }
.campinfocontainer { text-align: justify; font-size: .1px; position: relative; }
.campinfocontainer:after { content: ''; width: 100%; display: inline-block; }
.campinfo-left { color: #151924; font: 400 16px lato; width: 60%; display: inline-block; vertical-align: top; margin-top: 25px; text-align: left; }
.campinfo-right { width: 35%; display: inline-block; vertical-align: top; margin-top: 25px; text-align: center; }
.campinfoheader { font: 400 34px oswald; padding-bottom: 15px; vertical-align: top; margin: 0px; }
.campinfosubheader { font: 400 24px oswald; color: DimGray; text-align: center; margin-top: 10px; margin-bottom: 35px; }
.campinfoline { margin-top: 10px; }
.campinfolabel { display: inline-block; font: 700 14px oswald; color: #656a78; margin-right: 7px; vertical-align: top; line-height: 20px; }
.campinfolinetext { display: inline; vertical-align: top; line-height: 20px; }
/*.campinfotext { margin-top: 10px; margin-bottom: 20px; }*/
.campinfotext { margin-top: 25px; } /* 01/21/2020 reverted */
.campinfoearlybirdmessage { font-weight: 700; }
.campheaderimage { display: block; width: 100%; margin-top: 13px; }
.campinforeservespotbutton, .campinfonotifybutton { display: block; width: 410px; max-width: 100%; margin-top: 20px; }
.campinfocta { font: 400 14px lato; color: #ed6505; }
.campinfocta div { margin-top: 10px; }
.campinfowarning { display: block; padding-left: 25px; margin-top: 10px; margin-bottom: 10px; font: 400 16px oswald; color: #656a78; background: url('/2018wf/overall/warningicon.webp') no-repeat left center; background-size: 16px 16px; }

@media only screen and (max-width: 891px){
	.campinfo { padding-bottom: 20px; }
	.campinfo-left { width: 100%; margin-top: 25px; }
	.campinfo-right { width: 100%; margin-top: 20px; }
	.campinfoheader { font-size: 24px; }
	.campinfosubheader { font-size: 18px; }
}


.detaillinks { background: #2172be; }
.detaillinkscontainer { text-align: justify; font-size: .1px; position: relative; }
.detaillinkscontainer:after { content: ''; width: 100%; display: inline-block; }
.detaillink, .detaillink:visited { font: 400 18px lato; color: #ffffff; display: inline-block; padding: 19px 0px 19px 30px; background: url('/2018wf/camps/details/detaillink_learn.webp') no-repeat left center; }
.detaillink_coach { background: url('/2018wf/camps/details/detaillink_coach.webp') no-repeat left center; }
.detaillink_details { background: url('/2018wf/camps/details/detaillink_details.webp') no-repeat left center; }
.detaillink_register { background: url('/2018wf/camps/details/detaillink_register.webp') no-repeat left center; }
.detaillink_observing { background: url('/2018wf/camps/details/detaillink_observing.webp') no-repeat left center; }


.detaillearn { background: #f6f5f3; padding-top: 20px; padding-bottom: 40px; }
.detaillearncontainer { font: 400 16px lato; color: #151924; }
.detaillearnheader { font: 400 38px oswald; color: #2172be; margin-bottom: 20px; margin-top: 0px; }
/*.detaillearncheckmark { font: 700 18px lato; color: #232a3b; margin-bottom: 7px; padding-left: 40px; background: url('/2018wf/camps/details/check.webp') no-repeat left center; }
.detaillearntext { font: 400 16px lato; color: #151924; padding-left: 40px; margin-bottom: 20px; }*/
.detaillearntext { font: 400 16px lato; margin-bottom: 20px; }
/*.detaillearnunique { margin-top: 40px; max-width: 1000px; } */
.detaillearncontainer > *:not(.camptag_columns) { max-width: 1000px; box-sizing: border-box;  } /*makes the camp unique section and others like it (not in columns) a little narrower, not full width; */

/*todo: finish generalizing this parser and add to more areas of the site? */
/*.detaillearninlinetext,*/ .bbit { display: block; min-width: 1px; /* spans with just <br> got hidden on chrome because width would be 0 */} /*wraps any freeform text not in one of the camptags*/
.bbbr { height: 8px; line-height: 8px; width: 100%; box-sizing: border-box; display: block; } /* line breaks, replace the linefeeds from editor */
.camptag_columns > .bbbr, .camptag_columns > .bbit { display: none; } /* ignore line breaks and text/whitespcae in between columns */
.campbreadcrumbs { margin-bottom: 15px; }
.campinfoheader .bbbr, .detailcoachitem .bbbr { height: 0px; } /* no extra space on line breaks in header, same for coach 'checkmark' descriptions. */
.campinfoheader .bbbr + .bbbr, .detailcoachitem .bbbr + .bbbr { height: 8px; } /* unless they do more than one */
@media only screen and (max-width: 891px){
	.detaillearn { padding-bottom: 10px; padding-top: 20px; }
	.detaillearnheader { font-size: 30px; }
	.campinfoheader .bbit { display: inline; }
	.campinfoheader .bbbr { display: inline; }
	.campinfoheader .bbbr + .bbbr { display: block; }
}

/* html camptags, todo: remove duplicate/redundant with detaillearn stuff */
.detaillearncontainer h2 { font: 400 38px oswald; color: #2172be; margin-bottom: 7px; margin-top: 15px; }
.detaillearncontainer h3 { font: 700 18px lato; color: #232a3b; margin-bottom: 7px; }
.camptag_checkmark { display: inline-block; padding-left: 40px; margin-bottom: 5px; }
.camptag_checkmark h3 { display: inline-block; color: #232a3b; margin-bottom: 7px; padding-left: 40px; margin-left: -40px; background: url('/2018wf/camps/details/check.webp') no-repeat left center; }
.camptag_columns { text-align: justify; font-size: .1px; position: relative; }
.camptag_columns:after { content: ''; width: 100%; display: inline-block; }
.camptag_column { font: 400 16px lato; width: 46%; display: inline-block; vertical-align: top; text-align: left; }

@media only screen and (max-width: 891px){
	.detaillearncontainer h2 { font-size: 30px; }
	.camptag_column { width: 100%; }
	.camptag_checkmark { margin-bottom: 0; padding-left: 32px; }
	.camptag_checkmark h3 { padding-left: 32px; margin-left: -32px; }
}


@media only screen and (max-width: 891px){	
	/* mobilecollapse classes defined in style.css now, with only camp-specific parts here */
	.campmobilecontainer { background: #ffffff; padding: 15px; border: 2px solid #ffffff; }
	.mobilecollapseheaderinner { padding-left: 35px; background-size: 22px auto; background: url('/2018wf/camps/details/mobilecollapse_learn.webp') no-repeat left center; }
	.detailcoach .mobilecollapseheaderinner { background-image: url('/2018wf/camps/details/mobilecollapse_coach.webp'); }
	.details .mobilecollapseheaderinner { background-image: url('/2018wf/camps/details/mobilecollapse_details.webp'); }
	.detailobserving .mobilecollapseheaderinner { background-image: url('/2018wf/camps/details/mobilecollapse_observing.webp'); }
	
}
@media only screen and (max-width: 891px){	
	.multicamp .coachesprofile .campmobilecontainer { background: #ffffff; padding: 15px; border: 2px solid #ffffff; }

	.multicamp .coachesprofile .campmobilecontainer { background: #ffffff; padding: 15px; border: 2px solid #ffffff; }
	.multicamp .coachesprofile .mobilecollapseheaderinner { padding-left: 35px; background-size: 22px auto; background: url('/2018wf/camps/details/mobilecollapse_learn.webp') no-repeat left center; }
	.multicamp .coachesprofile .detailcoach .mobilecollapseheaderinner { background-image: url('/2018wf/camps/details/mobilecollapse_coach.webp'); }
}
@media only screen and (min-width: 891px){
	.multicamp .coachesprofile .campmobilecontainer { background: #ffffff; padding: 15px; border: 2px solid #ffffff; }

	.multicamp .coachesprofile .campmobilecontainer { background: #ffffff; padding: 15px; border: 2px solid #ffffff; }
	.multicamp .coachesprofile .mobilecollapseheaderinner { padding-left: 35px; background-size: 22px auto; }
	.multicamp .coachesprofile .detailcoach .mobilecollapseheaderinner { background-image: url('/2018wf/camps/details/mobilecollapse_coach.webp'); }
}
	
.detailcoachmulticamp { 
    padding-top: 10px; 
    padding-bottom: 10px; 
    background: transparent; 
}

.first-detailcoachmulticamp { 
   
    padding-bottom: 10px; 
    background: transparent; 
}
.last-detailcoachmulticamp {
 
	padding-top: 10px; 
	background: transparent; 
}
.detailcoach { padding-top: 40px; padding-bottom: 40px; background: transparent; }
.detailcoachcontainer { }
.detailcoachheader { font: 400 38px oswald; color: #2172be; margin-bottom: 30px; margin-top: 0px; }
.detailcoachcolumns { text-align: justify; font-size: .1px; position: relative; }
.detailcoachcolumns:after { content: ''; width: 100%; display: inline-block; }
.detailcoach-left { width: 25%; display: inline-block; vertical-align: top; }
.detailcoach-right { width: 70%; display: inline-block; vertical-align: top; text-align: left; margin-top: -20px; margin-bottom: -20px; }
.detailcoach_training { background: url('/2018wf/camps/details/coachicon_training.webp') no-repeat left center; }
.detailcoach_education { background: url('/2018wf/camps/details/coachicon_education.webp') no-repeat left center; }
.detailcoach_playing { background: url('/2018wf/camps/details/coachicon_playing.webp') no-repeat left center; }
.detailcoach_academy { background: url('/2018wf/camps/details/coachicon_academy.webp') no-repeat left center; }
.detailcoachitem { padding: 20px 0 20px 50px; font: 400 16px lato; color: #151924; background-size: 32px auto; }
.detailcoachseparator { margin-left: 50px; border-bottom: 1px solid #f6f5f3; }

.details { background: #f6f5f3; padding-top: 40px; padding-bottom: 50px; }
.detailscontainer { }
.detailsheader { font: 400 38px oswald; color: #2172be; margin-bottom: 30px; margin-top: 0px; }
.detailscolumns { text-align: justify; font-size: .1px; position: relative; }
.detailscolumns:after { content: ''; width: 100%; display: inline-block; }
.detailscolumn { width: 46%; display: inline-block; vertical-align: top; text-align: left; }
.detailssubheader { font: 400 22px oswald; color: #2172be; margin-bottom: 7px; margin-top: 0px; }
.detailstext { font: 400 16px lato; color: #151924; margin-bottom: 20px; }
.detailstext div { margin-top: 5px; }
.detailsmap { height: 200px; display: block; margin-top: 10px; box-sizing: border-box; }
.detailsmap:hover { border: 1px dashed #2172be; }
.coachessheader { font: 400 38px oswald; color: #2172be; margin-bottom: 10px; margin-top: 0px; }
@media only screen and (max-width: 891px){
	.detailcoach { background: #f6f5f3; padding: 10px 0; }
	.detailcoachheader { font-size: 30px; }
	.detailcoach-right { width: 100%; }
	.detailcoach-bottom { width: 100%; display: block; margin-top: 25px; }
	.detailcoachitem { padding: 10px 0 10px 25px;  background-size: 16px auto; background-position: left top 15px; }
	.details { padding: 10px 0; }
	.detailscolumn { width: 100%; }
	.detailsheader { font-size: 30px; }
	.detailsmap { width: 100%; height: auto; }
}


/* todo: better way to do these columns? especially for mobile*/
.campregister { background: #2172be; padding-top: 40px; padding-bottom: 40px; }
.campregistercontainer { }
.campregistercta { font: 700 16px lato; color: #f3871b ; }
.campregistercta div { margin-bottom: 5px; }
.campregisterheader { font: 400 38px oswald; color: #ffffff; margin-bottom: 20px; margin-top: 0px; }
.campregistercolumns { margin-top: 15px; }
.campregisteraddcampcolumn { margin-left: 0 !important; margin-top: 15px !important;  }
.campregistercolumn { display: inline-block; width: 15%; margin: 0; padding: 0; vertical-align: top; }
.campregistercolumnx2 { width: 32%; }
.campregistercolumnx3 { width: 49%; }
.campregistercolumn + .campregistercolumn { margin-left: 2%; }
.campregisterlabel, .campregisterlabel a { font: 400 14px oswald; color: #ffffff; margin-bottom: 2px; }
.campregistercolumn .bbtext { }
.campregisterhidden { display: none; }
.campnotifycolumn { display: inline-block; width: 23%; margin: 0; padding: 0; vertical-align: top; }
.campnotifycolumn + .campnotifycolumn { margin-left: 2.66%; }
.campnotifycolumn .btnsubmit { width: 100%; background-position: center right 32%; }
.campregisteraddplayer,.campregisteraddcamp { display: inline-block; font: 300 16px lato; color: #ffffff; cursor: pointer; margin-top: 5px; padding: 5px 27px 5px 0; background: url('/2018wf/camps/details/addplayericon.webp') no-repeat right center; }
.campregisterseparator { border-bottom: 1px solid #ffffff; margin: 40px 0; }
.campregisterbutton { margin-top: 35px; width: 300px; background-position: center right 38%; height: 48px; /*33% thicker than normal */ font-size: 18px; }
.campregisterupnext { font: 300 14px lato; color: #ffffff; text-align: center; width: 300px; margin-top: 5px; margin-bottom: 15px; }
.campregisteragreement, .campregisteragreement a { font: 400 12px lato; color: #ffffff; }
.campregisteragreement+.campregisteragreement { margin-top: 10px; }

.campregisterselectfirstcamp { max-width: 650px; }
.campregisterselectfirstcamp .bbsel_header { font-size: 18px; }
.campregisterselectfirstcamp .bbsel_option { font-size: 18px; }
.multicamp .campregisterplayer + .campregisterplayer { margin-top: 35px; }
.campregisterselectedcamps { font: 400 16px lato; color: #ffffff; }
.campregisterselectedcamp { margin-bottom: 10px; }
.campregisterselectedcamptext { vertical-align: middle; }
.campregisterremovecampicon { display: inline-block; vertical-align: middle; width: 16px; height: 16px; filter: brightness(1.3); background-size: 100% 100%; resize: both; margin-left: 15px; background: url('/2018wf/overall/delete_icon.webp') no-repeat center center; cursor: pointer; }
.campregisterremovecampicon:hover { filter: brightness(2); }
.nocampselected { margin-bottom: 10px; }

.campregistercampconflict { position: relative; margin: 18px 0 0 0; padding: 16px 40px 16px 18px; background: #ffffff; border-left: 5px solid #d32f2f; border-radius: 4px; color: #1a1a1a; font: 400 15px lato; box-shadow: 0 2px 6px rgba(0,0,0,0.18); }
.campregistercampconflict_title { font: 700 17px lato; color: #b71c1c; margin-bottom: 6px; }
.campregistercampconflict_body { line-height: 1.45; }
.campregistercampconflict_body strong { color: #1a1a1a; }
.campregistercampconflict_actions { margin-top: 12px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.campregistercampconflict_addplayer { display: inline-block; font: 700 15px lato; color: #ffffff; background: #f3871b; border: 0; border-radius: 3px; padding: 9px 16px; cursor: pointer; line-height: 1.2; }
.campregistercampconflict_addplayer:hover { background: #d97411; }
.campregistercampconflict_addplayer:focus { outline: 2px solid #2172be; outline-offset: 2px; }
.campregistercampconflict_or { font: 400 14px lato; color: #555555; }
.campregistercampconflict_close { position: absolute; top: 6px; right: 10px; font: 700 22px/1 lato; color: #888888; cursor: pointer; padding: 4px 8px; }
.campregistercampconflict_close:hover { color: #222222; }

@media only screen and (max-width: 891px){
	.campregistercampconflict { padding: 14px 36px 14px 14px; }
	.campregistercampconflict_actions { gap: 8px; }
	.campregistercampconflict_addplayer { width: 100%; text-align: center; padding: 11px 16px; }
	.campregistercampconflict_or { width: 100%; text-align: center; }
}

@media only screen and (max-width: 891px){
	.campregisterheader { font-size: 30px; }
	.campregistercolumn { display: inline-block; width: 47%; margin: 14px 0 0 0; padding: 0; vertical-align: top; }
	.campregistercolumnx2 { width: 100%; margin-left: 0px !important; }
	.campregistercolumnx3 { width: 100%; margin-left: 0px !important; }
	.campregistercolumn + .campregistercolumn { margin-left: 6%; }
	.campregistergendercolumn, .campregisterskilllevelcolumn, .campregisterstatecolumn, .campregisteraddcampcolumn { margin-left: 0 !important; }
	.campnotifycolumn { width: 100%; }
	.campnotifycolumn + .campnotifycolumn { margin-left: 0px; margin-top: 10px; }
	.campnotifycolumn:last-of-type { margin-top: 20px; }
	.campregisterseparator { margin: 35px 0 20px 0; }
	/*.campregisterselectfirstcamp .bbsel_header { height: 66px; font-size: 18px; }*/
}

.detailobserving { padding-bottom: 40px; padding-top: 40px; box-sizing: border-box; height: 320px; background: white url('/2018wf/overall/layupbgwhite.webp') no-repeat top right;  }
.detailobservingcontainer { }
.detailobserving-left { color: #151924; font: 400 16px lato; width: 65%; display: inline-block; vertical-align: top; }
.detailobservingheader { font: 400 38px oswald; color: #2172be; margin: 0px; }
.detailobservingtext { margin-top: 25px; }
.detailobservingimage { display: block; width: 100%; margin-top: 15px; margin-bottom: 20px; }
.detailobservingreservespotbutton { display: block; width: 100%; }
.detailobservingspotsremaining { font: 400 14px lato; color: #ed6505; margin-top: 10px; }


@media only screen and (max-width: 891px){
	.detailobserving {  /*background-position: right 60% top 45%;*/ background: #f6f5f3; height: auto; padding-top: 10px; padding-bottom: 40px; }
	.detailobserving-left { width: 100%; }
	.detailobservingheader { font-size: 30px; }
}

.discount{ padding-bottom: 40px; padding-top: 40px; box-sizing: border-box; height: auto; background: white;  }
.discountcontainer { }
.discount-left { color: #151924; font: 400 16px lato; width: 65%; display: inline-block; vertical-align: top; }
.discountheader { font: 400 38px oswald; color: #2172be; margin: 0px; }
.discounttext { margin-top: 25px; }
.discountimage { display: block; width: 100%; margin-top: 15px; margin-bottom: 20px; }
.discount-left .discounttext ul li {
  margin-bottom: 10px; /* Adjust the value based on your desired spacing */
}
@media only screen and (max-width: 891px){
	.discountheader {
		font-size: 25px;
	}
}

.generalcollapseheader {
	display: block;
	padding: 10px 0;
}

.generalcollapsecontainer {
	padding-top: 20px;
	padding-bottom: 15px;
	border-top: 1px solid #f6f5f3;
}

.generalcollapseheader:not(.opened) + .generalcollapsecontainer {
	display: none;
}

#seeMoreButton {
	/* Center the button */
	display: block;
	margin: 0 auto;
	margin-bottom: 20px; /* Add space at the bottom */
}

@media only screen and (max-width: 891px){
	.discount {  /*background-position: right 60% top 45%;*/ background: #f6f5f3; height: auto; padding-top: 10px; padding-bottom: 40px; }
	.discount-left { width: 100%; }
	.discount { font-size: 30px; }
}