.rs-group:after { content: "."; display: block;  height: 0; clear: both; visibility: hidden; }
.js .hide-if-js { display: none; } .rs-program, .rs-teacher { margin-bottom: 25px;}
.rs-teacher-container {
backface-visibility: hidden;
box-shadow: none;
pointer-events: none;
}
.rs-teachers-container div.teacher { position: static !important;}
.rs-program-list-intro { margin-bottom: 20px; }
.rs-program-label { font-size: 85%; text-transform: uppercase; font-weight: bold; } .rs-program.minor, .rs-programs-widget.minor { display: none; }
.rs-program-thumbnail, .rs-teacher-thumbnail { width: 32%; margin-right: 2%; clear: left; margin-bottom: 5px; display: inline-block; }
.rs-program-content-wrap, .rs-teacher-content-wrap { width: 64%; display: inline-block; float: right; }
.rs-program-title, .rs-program-teacher, .rs-teacher-title, .rs-program-with-teachers { line-height: 1.2; clear: none; }
h2.rs-program-title { margin:0!important; }
.rs-program-photo { margin-bottom: 20px; width:100%;}
.single-program .rs-program-photo img { width: 100%; }
.rs-teacher-photo { float: left; margin-right: 20px; margin-bottom: 5px; }
.rs-teacher-bio { clear: left; }
.rs-program-with-teachers { margin:0 !important; padding:0 !important; }
.single-program {
position: relative;
}
.single-program .entry-content {
float:left; width:100%;
}
.single-program .rs-program-meta {
width: 40%;
float: right;
box-sizing: border-box;
border-radius: 5px;
border: 1px solid #e5e5e5;
margin: 0 0 0 20px;
}
.rs-program-meta li { list-style: none; } .rs-meta-content-container { margin:20px 20px; }
.rs-program-early-bird-discount {
font-weight: bold;
}
.single-program .rs-program-early-bird-discount {
border-width: 1px;
border-style: solid;; background-color: #fff;
padding: 1.5rem;
margin-top: 1rem;
margin-bottom: 1rem;
} .rs-regsitration-wrap { margin: 0 0 20px; }
.rs-register-link a, #submit-registration, .rs-button { font-weight: bold;
padding: 12px 18px 10px; font-size: 14px;
line-height: 100%;
text-decoration: none;
text-transform: uppercase;
cursor: pointer;
border-radius: 5px; border: 1px solid #e5e5e5;;
}
.rs-register-link a:hover, #submit-registration:hover, .rs-big-button:hover, .rs-meta-content-container a.rs-button:hover {
border-color: #333;
}
.rs-meta-content-container a.rs-button, .rs-meta-content-container .rs-register-link a {
width: 100%;
float: left;
margin:10px 0;
text-align: center;
box-sizing: border-box;
}
.rs-program-categories { clear: both; } #rs-registration-form { margin-bottom: 2em; }
#rs-registration-form h2, .rs-form h2 { border-bottom: 1px dotted #CCC; padding: 0 0 5px 0; margin: 15px 0 5px; }
#rs-registration-form .rs-error { color: #790000; font-weight: bold; font-size: 1.1em; padding: 15px; margin: 10px 0; }
.wprs-registration-table, .rs-form { border-collapse: separate; border-spacing: 0 10px; border-width: 0; width: 100%; margin: 0; }
.wprs-registration-table th, .rs-form th { color: #000; font-size: 1em; font-weight: normal; width: 40%; vertical-align: top; text-align: right; padding-right: 20px; }
.wprs-registration-table td, .rs-form td { border-top-width: 0; }
.wprs-registration-table td small, .rs-form td small { display: block; } #rs-registration-form .rs-custom-field-required { color: #790000; font-size: 1.2em; }
#rs-registration-form .rs-custom-field-errors { color: #790000; font-size: 0.9em; font-weight: bold; margin: 5px 0; line-height: 1.3em; list-style-type: none; }
#rs-registration-form .wprs-registration-error { background-color: #ffffdd; border: 1px dotted #790000; }
#rs-registration-form .wprs-registration-error input, #content .wprs-registration-error select { border-color: #790000; }
#rs-registration-form .wprs-registration-error label { color: #790000; }
#rs-registration-form tr.wprs-registration-error th { border-width: 1px 0px 1px 1px; border-style: dotted; }
#rs-registration-form tr.wprs-registration-error td { border-width: 1px 1px 1px 0px; border-style: dotted; }
#rs-registration-form tr.wprs-registration-error td { border-top: 1px dotted #790000; }
#rs-registration-form .rs-payment-error { color: #790000; background-color: #ffdfdf; border: 1px dotted #790000; padding: 10px; font-style: italic; font-weight: bold;}
#rs-registration-form .rs-price { padding: 9px 0 0 30px; }
#rs-registration-form .rs-price th { width: auto; }
#rs-registration-form .rs-form-help, #rs-registration-form small, .rs-form small { font-size: 80%; color: #777; line-height: 1.4; } .rs-extra-nights, .rs-extra-nights a { float: right; }
.rs-extra-nights div { float: right; clear: right; } .rs-total-calculated { font-size: 120%; } .rs-container .edit-link { float: right; font-size: 70%; text-transform: uppercase; }  .rs-programs-widget h4, .rs-programs-widget p { clear: none; line-height: 1.0; margin-bottom: 0px; }
.rs-programs-widget ul { margin-left: 0 !important; }
.rs-programs-widget ul li { clear: both; }
.rs-custom-field-table th { width: 140px; } .alert { margin-bottom: 18px; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); background-color: #fcf8e3; border: 1px solid #fbeed5; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; padding: 8px 35px 8px 14px; }
.alert-success { background-color: #dff0d8; border-color: #d6e9c6; }
.alert-danger, .alert-error { background-color: #f2dede; border-color: #eed3d7; }
.alert-info { background-color: #d9edf7; border-color: #bce8f1; }
.alert-block { padding-top: 14px; padding-bottom: 14px; }
.alert-block > p, .alert-block > ul { margin-bottom: 0; }
.alert-block p + p { margin-top: 5px; } .rs-stay-datepicker label { font-weight: bold; line-height: 40px;  }
.rs-stay-datepicker input {  width: 100px; margin-left: 5px; }
div.hasDatepicker { float: left; margin-right: 20px; }
.ui-datepicker { width: 15em; } #content .ui-datepicker-calendar { margin: 0 0 0.4em; }
#content .ui-datepicker tr td { padding: 0; }
#content .ui-datepicker tr th { padding: 0; }
.rs-program-additional-info { clear: left; }
.rs-program-detail header h1 { font-size:200%; }
.shortcode .rs-program-title { margin-bottom:2px; }
.rs-register-link a { display: inline-block; }
.shortcode .status div { display:inline; }
.shortcode .status { width:150px;  }
.rs-program.shortcode.table td, .rs-program.shortcode.table th { padding:5px; border-bottom: 1px solid #eaeaea; }
.rs-program.shortcode.table tr:nth-child(even) {background: #f9f9f9 !important;}
.rs-program.shortcode.table .rs-availability { text-align:center; }
.rs-program.shortcode.table .rs-show-more-link { text-align:center; }
.rs-program.shortcode.table .rs-show-register-link { text-align:center; }
.rs-program.shortcode.table .rs-price ul { margin: 0; } @media (max-width:35em) {
.rs-program.table, .rs-program thead, .rs-program tbody, .rs-program tfoot, .rs-program th, .rs-program td, .rs-program tr { display:block; }
.rs-program.shortcode.table tr { margin-top:2em; margin-bottom: 2em; border-bottom: 1px solid #eaeaea; border-top: 1px solid #eaeaea; }
.rs-program.shortcode.table td, .rs-program.shortcode.table th { border-bottom: none; border-top: none; padding: 2px; text-align: center; }
}
@media only screen and (max-width: 768px)
{
.rs-program-content-wrap, .rs-teacher-content-wrap, .rs-program-thumbnail, .rs-teacher-thumbnail {
display: block;
float: none;
width: 100%;
}
}
@media only screen and (max-width: 520px)
{
.single-program .rs-program-meta { width:100% !important; }
.rs-program-title { padding:20px 0 0; }
.rs-program-thumbnail, .rs-teacher-thumbnail {
display: block;
float: none;
width: 100%;
}
} @media only screen and (min-width: 375px) and (max-width: 575px) {
.rs-teacher-content img {
width: 100%;
}
.rs-teacher-custom-wrap {
clear: both;
}
}
body.rs-programs-single h1.entry-title,
body.rs-teachers-single h1.entry-title { display:none; }