#content {
    font-size: 0.9em;
}

#content h1 {
    font-size: 1.1em;
}

.wideContent #content h1 {
    border: 0;
    font-size: 26px;
    text-align: center;
    margin: 5px 0 15px 0;
    padding: 0;
    color: #444;
    line-height: 1em;
}

#content h2.sectionHdr,
h3.sectionHdr {
    font-family: 'Open Sans';
    font-weight: 300;
    font-size: 1.5em;
    color: #36f;
    line-height: 1.3em;
    clear: both;
}

#content h3 {
    margin-left: 5px;
    margin-top: 5px;
}

#content .printablesHdr,
#content .printablesHdr a,
#content .printablesHdr a:hover {
    font-family: 'Open Sans';
    font-weight: 400;
    font-size: 18px;
    color: rgb(1, 99, 8);
}

.subject_list {
    margin-left: 5px;
}

.subject_list:first-child {
    margin-top: 10px;
}

.subject_list h4 {
    margin-top: 10px;
}

.subject_list ul {
    padding-right: 5px;
}

.subject_list ul li {
    margin-left: -40px;
    list-style: none;
    line-height: 1.6em;
    margin-bottom: 10px;
}

.subject_list ul li a:before,
.subject_cell a.test:before,
.readingTable a:before,
.fa-lock,
.fa-unlock {
    color: #fd8800;
}

.subject_list a:before,
.subject_cell a.test:before,
.readingTable a:before {
    /* mix of .fa, .fa-lg, and .fa-lock */
    display: inline-block;
    width: 18px;
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.33333333em;
    line-height: 0.75em;
    vertical-align: -15%;
    text-align: center;
    content: '';
    text-decoration: none;
}

a.premium:before,
a.premium.test:before {
    content: '\f023';
}
.premiumAccess a.premium:before,
.premiumAccess a.premium.test:before {
    content: '\f09c';
}

.subject_list p em a {
    color: #4e9df4;
}

.subject_table {
    display: table;
    width: 100%;
    margin: 5px 0;
}
.subject_row {
    display: table-row;
}
.subject_cell {
    display: table-cell;
    width: 50%;
    padding: 0 6px 2px 6px;
}
.standards_toggle:before {
    content: 'CC';
}
.standards_toggle,
.standards_toggle:link,
.standards_toggle:hover {
    padding: 1px 2px;
    text-decoration: none;
    border-radius: 3px;
    font-size: 10px;
    background: #eee;
    background: rgb(177, 36, 41);
    color: #fff;
}

.row {
    clear: both;
    margin-bottom: 20px;
    display: table-row;
}

.productImage {
    float: left;
    margin: -15px 30px -10px 0;
    height: 200px;
}

.smallProductImage {
    float: left;
    margin: -15px 10px -10px 25px;
    height: 125px;
}

.column-2 {
    width: 49%;
    float: left;
    display: table-column;
}

.gradeGroup {
    clear: both;
}
.gradeGroup h2 {
    padding-top: 0;
    margin-top: 30px;
}
.gradeGroup h2 + .columns {
    margin-top: 5px;
}
#content .gradeGroup h3 {
    margin: 5px 0 5px 10px;
}
.gradeGroup .subject_list:first-child {
    margin-top: 0;
}
.gradeGroup ul {
    padding-top: 0;
    padding-bottom: 0;
}

.lessonStats {
    margin: 10px 10px 0 0;
    float: right;
}
.stat:first-child {
    margin-left: 0;
}
.stat {
    margin-left: 10px;
    font-size: 13px;
}
.stat .odometer {
    padding: 0 5px;
    margin-left: 2px;
}

.videoSourceLegend {
    clear: both;
    margin: 10px 0;
    padding: 5px 0;
    border: 1px solid #ccc;
    background: #eee;
    font-size: 11px;
}
.videoSourceLegend > * {
    vertical-align: middle;
}
.videoSourceLegend > span {
    margin-right: 10px;
}
.videoSourceLegend > span:first-child {
    margin: 0 10px;
    font-weight: bold;
}

.lessonTable {
    border-collapse: collapse;
    width: 100%;
    margin: 0;
}

.lessonTable:first-child {
    margin-top: 10px;
}

.lessonTable th {
    font-size: 13px;
}

.lessonTable td,
.lessonTable th {
    width: 12%;
    padding: 3px 10px 3px 0;
    vertical-align: middle;
    text-align: right;
}

.lessonTable td.lock,
.lessonTable th.lock {
    width: 18px;
    text-align: center;
    padding: 0 3px 0 5px;
    font-size: 18px;
}

.lessonTable td.videoSource,
.lessonTable th.videoSource {
    width: 16px;
    text-align: center;
    padding: 0 6px 0 0;
}

.lessonTable td.name,
.lessonTable th.name {
    width: auto;
    text-align: left;
}

.lessonTable td.actions {
    width: 60px;
    text-align: right;
}

.lessonTable td {
    font-size: 12px;
}

.lessonTable .even td {
    background: #eee;
}

.lessonGroup h2 {
    margin: 10px 0 5px 0;
    font-family: 'Open Sans';
    font-weight: 300;
    font-size: 17px;
    color: #36f;
}
.featuredLessonGroup.lessonGroup h2 {
    font-weight: 400;
}
.lessonGroup .headerGroup {
    clear: both;
    margin: 10px 0 5px 0;
}
.lessonGroup .headerGroup h2 {
    margin: 0;
    float: left;
}
.lessonGroup .headerGroup a,
.lessonGroup .headerGroup a:visited {
    float: left;
    margin-left: 15px;
    font-size: 12px;
    text-decoration: none;
}

.lessonGroup .headerGroup a:hover {
    text-decoration: underline;
}

.featuredLessons {
    display: block;
    margin: 15px 0 30px 0;
    padding: 0;
    list-style-type: none;
}

.featuredLessons li {
    float: left;
    width: 237px;
    margin: 0;
    padding: 0;
    line-height: 1.5em;
}

.featuredLessons .lessonName {
    display: inline-block;
    max-width: 210px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: rgb(1, 99, 8);
}

.featuredLessons .lessonContentArea,
.featuredLessons .lessonContentArea:visited {
    font-size: x-small;
    color: #016308;
    text-decoration: none;
}

.featuredLessons .lessonContentArea:hover {
    text-decoration: underline;
}

.featuredLessons img {
    border: 1px solid #eee;
}

/* */
.readingTable {
    border-collapse: collapse;
    width: 100%;
    margin: 0;
}

.readingTable th {
    font-size: 12px;
}

.readingTable td,
.readingTable th {
    padding: 3px 0;
    vertical-align: middle;
    text-align: left;
    font-size: 10px;
}

.readingTable td:first-child,
.readingTable th:first-child {
    padding-left: 5px;
    font-size: 11px;
}

.readingTable .even td {
    background: #eee;
}

.readingTable .number {
    text-align: center;
}

.readingTable .label {
    text-align: left;
    font-size: 12px;
}

.filters {
    margin: 10px 0;
    background: #eee;
    border: 1px solid #ccc;
}

.filters > div {
    display: inline-block;
    padding: 0 5px 5px 5px;
    vertical-align: bottom;
}

.filters label {
    display: block;
    margin-left: 4px;
}

.filters select {
    margin-bottom: 2px;
}

.filters input[type='button'] {
    margin: 0;
}

@media only screen and (max-width: 600px) {
    .responsive .productImage {
        height: 150px;
    }
    .responsive .smallProductImage {
        height: 100px;
    }
    .responsive #content .printablesHdr {
        margin-top: 20px;
    }
    .responsive .column-2 {
        width: auto;
        float: none;
        display: block;
    }
    .responsive .subject_table,
    .responsive .subject_row,
    .responsive .subject_cell {
        display: block;
        width: auto;
    }
}
@media only screen and (max-width: 400px) {
    .responsive .productImage,
    .responsive .smallProductImage {
        display: none;
    }
}
