/*------------------------------------------------------------------
All Sessions
------------------------------------------------------------------*/

#content .left-side-sessions {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;

    float: left;
    margin: 0 0 5% 0;
    padding: 40px 60px 0 60px;
    position: relative;
}

.left-side-sessions {
    width: 75%;
}

.inner-content.all-sessions {
    overflow: hidden;
}

#content .right-side-sessions {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;

    float: left;
    height: 100%;
    padding: 40px 60px 0 60px;
    position: relative;
}

.kids .right-side-sessions,
.jr .right-side-sessions {
    width: 25%;
}

/*.session-line {
    width: 100%;
    margin: 30px 0 0 0;
    overflow: hidden;
}

.session-line:first-child {
    margin-top: 0;
}*/

 .box-session {
    background: url(../images/box-session-top-bg2.jpg) top;
    float: left;
    margin: 0 3% 30px 0;
    position: relative;
    width: 30%;
}

.add-mat,
.add-mat label:hover {
    cursor: pointer;
}

.add-mat.full-filename {
    display: block;
}

.add-mat.truncated-filename {
    display: none;
}

/*.session-line .box-session:last-child {
    margin: 0;
}*/

.sessions-scroll-wrapper {
    position: absolute;
    overflow: hidden;
    top: 120px;
    bottom: 0;
}

 .box-session h5 {
    color: #fff;
    font-family: 'avenirmedium';
    font-size: 19px;
    margin: 0;
    padding:16px 16px 8px 16px;
}

 .box-session a.launch {
    -webkit-transition: all 200ms 0s ease-in-out;
    -moz-transition: all 200ms 0s ease-in-out;
    transition: all 200ms 0s ease-in-out;

    background: #ffc116;
    border-radius: 2px;
    color: #fff;
    display: block;
    float: left;
    font-family: 'avenirblack';
    font-size: 19px;
    line-height:30px;
    margin: 0 0 9px 16px;
    padding: 5px 16px 0 16px;
    text-decoration: none;
    text-transform: uppercase;
}

 .box-session a.launch:hover {
    background: #fff;
    color: #ffc116;
}

 .box-session .box-checkbox {
    cursor: pointer;
}

 .box-session .check {
    position: absolute;
    top:27px;
    right: 10px;
}

 .box-session .check,
 .box-session.locked .check.locked-box,
 .box-session.checked .check.check-box,
 .box-session.expanded .box-session-white .less-more.less,
 .box-session .box-session-white .less-more.more {
    display: block;
}

 .box-session .check.check-box,
 .box-session .check.locked-box,
 .box-session .check.check-box,
 .box-session.checked .check,
 .box-session.checked .check,
 .box-session.checked .locked-box,
 .box-session.locked .check,
 .box-session .box-session-white .less-more.less,
 .box-session.expanded .box-session-white .less-more.more {
    display: none;
}

 .box-session.locked .check.locked-box {
    cursor: default;
}

 .box-session.expanded .box-session-white .bottom-list-session {
    max-height: 160px;
}

 .box-session.expanded .box-session-white .bottom-list-session .jspContainer {
    height: 250px !important;
}

 .box-session .check.check-box {
    right: 9px;
}

  .box-session .box-session-white {
    background: #fff;
    overflow: hidden;
    clear: both;
    margin: 0 4px 4px 4px;
    padding: 20px 10px 15px 10px;
}

 .box-session .box-session-white .top-list-session {
    background: url(../images/all-session-underline.png) repeat-x left bottom;
    list-style: none;
    margin: 0 0 16px 0;
    min-height: 49px;
    padding: 0 0 21px 0;
    overflow: hidden;
    width: 100%;
}

 .box-session .box-session-white .top-list-session li {
    float: left;
    width: 12.5%;
    margin: 0 2% 0 0;
}

 .box-session .box-session-white .top-list-session li a {
    cursor: default;
}

 .box-session .box-session-white .top-list-session li img {
    -webkit-transition: all 300ms 0s ease-in-out;
    -moz-transition: all 300ms 0s ease-in-out;
    -ms-transition: all 300ms 0s ease-in-out;
    transition: all 300ms 0s ease-in-out;

    width: 100%;
}

 .box-session .box-session-white .top-list-session li img:hover {
    /*-webkit-transform: rotate(-15deg);
    -moz-transform: rotate(-15deg);
    -ms-transform: rotate(-15deg);
    transform: rotate(-15deg);*/
}

 .box-session .box-session-white .top-list-session li:last-child {
    margin: 0;
}

 .box-session .box-session-white .bottom-list-session {
    /*-webkit-transition: all 300ms 0s ease-in-out;
    -moz-transition: all 300ms 0s ease-in-out;
    transition: all 300ms 0s ease-in-out;*/

    list-style: none;
    margin: 0 0 16px 0;
    padding: 0;
    overflow: hidden;
    outline: none;
    width: 100% !important;
    max-height: 70px;
    /*overflow-y: scroll;*/
}

 .box-session.expanded .box-session-white .bottom-list-session {
    overflow-y: scroll;
}

 .box-session .box-session-white .bottom-list-session li {
    float: left;
    width: 22%;
    margin: 0 4% 10px 0;
    min-height: 90px;
    overflow: hidden;
}

 .box-session .box-session-white .bottom-list-session li:nth-child(4n+4) {
    margin: 0;
}

 .box-session .box-session-white .bottom-list-session li img {
    display: block;
    margin: 0 auto 12px auto;
    width: 68%;
}

 .box-session .box-session-white .bottom-list-session li a {
    color: #862226;
    font-family: 'tradegothic-20';
    font-size: 13px;
    display: block;
    margin: 0;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;

}

 .box-session .box-session-white .less-more {
    background:url(../images/more-arrow.png) no-repeat right center;
    color: #862226;
    display: block;
    font-size: 14px;
    font-family: 'avenirmedium';
    float: right;
    margin: 0 15px 0 0;
    padding: 0 16px 0 0;
    text-decoration: none;
}

 .box-session .box-session-white .less-more.less {
    display: none;
    background:url(../images/less-arrow.png) no-repeat right center;
}

.box-session.expanded {
    z-index: 999999;
}

.box-session.expanded .jspContainer {
    -webkit-transition: all 300ms 0s ease-in-out;
    -moz-transition: all 300ms 0s ease-in-out;
    transition: all 300ms 0s ease-in-out;

    overflow: hidden;
    position: relative;
    width: 100% !important;
}

.box-session.expanded .scroll-pane {
    width: 100%;
    /*max-height: 330px;*/
    overflow: auto;
}

.box-session.expanded .jspPane {
    position: absolute;
    padding:  0 ;
    width: 95% !important;
}

.box-session.expanded .jspVerticalBar {
    position: absolute;
    top: 0;
    right: 0;
    width: 7px;
    height: 100%;
    border-radius: 10px;
}

.box-session.expanded .jspCap {
    display: none;
}

.box-session.expanded .jspTrack {
    background: rgba(0,0,0,0.3);
    position: relative;
    border-radius: 10px;
}

.box-session.expanded .jspDrag {
    background: rgba(134,34,38,1);
    position: relative;
    top: 0;
    left: 0;
    cursor: pointer;
    border-radius: 10px;
}

.session-arrow-up {
    position: absolute;
    right: 7px;
    top: 120px;
    z-index: 99999999;
}

.session-arrow-down {
    position: absolute;
    right: 7px;
    bottom: 0;
    z-index: 99999999;
}

.right-side-sessions .log-out {
    font-family: 'tradegothic-18';
    font-size: 20px;
    color: #862226;
    display: block;
    margin: 0 0 5px 0;
    text-align: right;
    clear: both;
}

.right-side-sessions .uncheck-all-sessions {
    font-family: 'tradegothic-20';
    font-size: 18px;
    color: #862226;
    display: block;
    text-align: right;
    clear: both;
}

.right-side-sessions .yellow-sidebar {
    background:url(../images/yellow-bg.jpg) center top;
    bottom: 0;
    margin: 20px 0 0 0;
    padding: 20px 15px 40px 15px;
    position: absolute;
    right: 0;
    top: 100px;
    width: 60%;
}

.right-side-sessions .yellow-sidebar h2 {
    font-family: 'avenirblack';
    font-size: 25px;
    color: #862226;
    text-align: center;
    margin: 0 0 17px 0;
}

.right-side-sessions .yellow-sidebar ul.yellow-sidebar-list {
    margin: 0 auto;
    list-style: none;
    width: 70%;
}

.right-side-sessions .yellow-sidebar ul.yellow-sidebar-list li {
    background: url(../images/pride-journal/pride-journal-item-underline.png) repeat-x center top;
    margin: 0;
    padding: 35px;
}

.right-side-sessions .yellow-sidebar ul.yellow-sidebar-list li img {
    display: block;
    margin: 0 auto 5% auto;
    min-width: 10px;
    max-width: 70px;
    width: 37%;
}

.right-side-sessions .yellow-sidebar ul.yellow-sidebar-list li a {
    color: #862226;
    display: block;
    font-family: 'avenirblack';
    font-size:14px;
    display: block;
    text-align: center;
    text-decoration: none;
}

.left-side-sessions .generate-certificate-btn {
    -webkit-transition: all 300ms 0ms ease-in-out;
    -moz-transition: all 300ms 0ms ease-in-out;
    -ms-transition: all 300ms 0ms ease-in-out;
    transition: all 300ms 0ms ease-in-out;

    background: url('../images/generate-certificate-btn.png') no-repeat transparent;
    /*bottom: -70px;*/
    color: #530e07;
    cursor: pointer;
    display: block;
    font-family: 'tradegothic-20';
    font-size: 24px;
    height: 53px;
    left: 50%;
    line-height: 52px;
    margin: 0 auto;
    /*margin-left: -124px;*/
    opacity: 1;
    pointer-events: all;
    /*position: absolute;*/
    text-align: center;
    text-decoration: none;
    width: 248px;
}

.congratulations-popup .popup-body {
    background: url('../images/congratulations-popup.png') no-repeat transparent;
    background-size: cover;
    height: 485px;
    width: 444px;
    text-align: center;
}

.congratulations-popup .popup-header {
    color: #fff;
    font-family: 'avenirblack';
    font-size: 32px;
    margin: 60px 0 0 0;
    padding: 0 0 10px 0;
}

.congratulations-popup .completed {
    background: url('../images/white-underline-dots.png') no-repeat transparent;
    background-position: center bottom;
    color: #fff;
    font-family: 'avenirmedium';
    font-size: 19px;
    margin: 0;
    padding: 0 0 15px 0;
    text-align: center;
}

.congratulations-popup .congratulations-form {
    margin: 35px auto 30px auto;
    overflow: hidden;
    text-align: left;
    width: 370px;
}

.congratulations-popup .congratulations-form .congratulations-form-label {
    color: #fff;
    font-family: 'avenirmedium';
    font-size: 14px;
    float: left;
    text-align: left;
    width: 100%;
}

.congratulations-popup .congratulations-form input {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;

    border: none;
    color: #3b0303;
    font-family: 'avenirmedium';
    font-size: 18px;
    height: 28px;
    margin: 8px 0 14px 0;
    padding: 0 5px;
    outline: none;
    width: 100%;
}

.congratulations-popup .congratulations-form .year-input {
    width: 50%;
}

.congratulations-popup .congratulations-form .generate-your-certificate-btn {
    background: url('../images/generate-your-certificate-btn.png') no-repeat transparent;
    color: #530e07;
    cursor: pointer;
    display: block;
    font-family: 'tradegothic-20';
    font-size: 24px;
    float: none;
    height: 53px;
    line-height: 54px;
    margin: 20px auto;
    text-align: center;
    text-decoration: none;
    width: 333px;
}

.cycle-carousel-wrap {
    width: 100%;
}

.header-overlay,
.footer-overlay,
.box-session-overlay {
    background: rgba(0, 0, 0, .8);
    display: none;
    left: 0;
    position: fixed;
    right: 0;
    width: 100%;
    z-index: 1;
}

.header-overlay,
.box-session-overlay {
    top: 0;
}

.header-overlay {
    height: 67px;
}

.footer-overlay {
    bottom: 0;
    height: 108px;
}

.box-session-overlay {
    -webkit-transition: all 300ms 0ms ease-in-out;
    -moz-transition: all 300ms 0ms ease-in-out;
    transition: all 300ms 0ms ease-in-out;

    bottom: 0;
    height: 100%;
    z-index: 99999;
}

.left-side-overlay {
    background: rgba(0, 0, 0, .8);
    left: 0;
    position: fixed;
    right: 0;
    top: -20px;
    width: 100%;
    height: 100%;
    z-index: 99999;
    display: none;
}

.body-overlay {
    background: rgba(0, 0, 0, .8);
    display: none;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
}

.box-session-expanded .box-session-overlay,
body.box-session-expanded .header-overlay,
body.box-session-expanded .footer-overlay,
body.box-session-expanded .left-side-overlay,
body.box-session-expanded .body-overlay {
    display: block;
}

/*------------------------------------------------------------------
Box session item states
------------------------------------------------------------------*/

 .box-session.no-additional-materials .less-more {
    visibility: hidden;
}
