:root {
    --main-color: #BE0F34;
}
/* button colours */
div.product-details-order-button-container input.orderbutton.formbutton, .orderbutton, .formbutton, .student_login .login-button, .manager_login .login-button, input.cm-cart-remove-button-ajax.cm-cart-remove-button-style,
input.button.cm_button_recalculate, input.button.cm_button_checkout, input.button.cm_button_continue_shopping, a.cm-product-list-add-to-waiting-list, a.login-link, .cm_button_create_account, .cm_button_cancel, .cm_button_proceed,
.order-student-add input.button-enrolstudents, .cm-manage-licenses input.button-add-roster, div.my-account-login-blocks a, div.student_login a, div.manager_login a, table.largetable input[type="submit"].button,
input.cm-button.order-details-print-button, table.table-products-list tbody tr.table-products-list-row td.product-list-cell-add-to-cart form.cm-product-list-add-to-cart-form input.orderbutton {
    border-radius: 0;
    background: var(--main-color);
    background-color: var(--main-color);
    border: none;
    padding: 10px 20px;
    color: #fff;
    text-decoration: none;
}
div.product-details-order-button-container input.orderbutton.formbutton:hover, .orderbutton:hover, .formbutton:hover, .student_login .login-button:hover, .manager_login .login-button:hover, input.cm-cart-remove-button-ajax.cm-cart-remove-button-style:hover,
input.button.cm_button_recalculate:hover, input.button.cm_button_checkout:hover, input.button.cm_button_continue_shopping:hover, a.cm-product-list-add-to-waiting-list:hover, a.login-link:hover, .cm_button_create_account:hover, .cm_button_cancel:hover,
.cm_button_proceed:hover, .order-student-add input.button-enrolstudents:hover, input.button-add-roster:hover, div.my-account-login-blocks a:hover div.student_login a:hover, div.manager_login a:hover, table.largetable input[type="submit"].button:hover,
input.cm-button.order-details-print-button:hover, table.table-products-list tbody tr.table-products-list-row td.product-list-cell-add-to-cart form.cm-product-list-add-to-cart-form input.orderbutton:hover {
    border-radius: 0;
    background: var(--main-color);
    background-color: var(--main-color);
    border: none;
    padding: 10px 20px;
    text-decoration: none;
}
a.login-link:focus, div.my-account-login-blocks:focus, div.student_login a:focus, div.manager_login a:focus {
    outline: none;
}
input.cm-cart-remove-button-ajax.cm-cart-remove-button-style, input.cm-cart-remove-button-ajax.cm-cart-remove-button-style:hover {
    padding: 5px 10px;
}
div.banner__logo:before {
    content: none;
}
/* Main nav menu */
div.headernav ul#navtabs {
    list-style-type: none;
}
div.headernav ul#navtabs li {
    display: inline-block;
    padding: 0 10px;
    text-decoration: none;
}
div.headernav ul#navtabs li a {
    text-decoration: none;
    font-family: 'myriad-pro', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
}
div.headernav ul#navtabs li a:focus {
    outline: none;
}
div.headernav ul#navtabs li.menucurrent a{
    text-decoration: underline;
    text-decoration-color: var(--main-color);
    text-decoration-thickness: 2px;
    text-underline-offset: 0.25rem;
}
div.headernav ul#navtabs li a:hover {
    text-decoration: underline;
    text-decoration-color: var(--main-color);
    text-decoration-thickness: 2.5px;
    text-underline-offset: 0.25rem;
}
div.headernav + div.navbar.clearfix {
    margin-left: .6em;
}
div.course-card-tabs__items {
    flex-direction: column;
}
button.banner__menu-toggle {
    display: none;
    margin-left: 1em;
}
@media screen and (max-width: 1200px) {
    button.banner__menu-toggle {
        display: block;
    }
}
div.cm-cart-widget-small {
    margin-left: 1em;
}
div.cm-cart-widget-small i.fa-cart-shopping {
    font-size: 25px;
}
span.items-in-cart-num {
    background: var(--main-color);
    color: #fff;
    border-radius: 30px;
    width: fit-content;
    display: block;
    position: absolute;
    text-align: center;
    font-size: 10px;
    padding: 0 5px;
    top: 57px;
    right: 165px;
}
/* Side menu nav */
div.side-menu-nav ul {
    list-style-type: none;
}
div.side-menu-nav li {
    padding-top: 10px;
}
div.side-menu-nav ul li a {
    color: #fff;
    font-size: 70px;
    font-family: 'din-condensed', sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 110%;
    letter-spacing: -.02em;
    text-decoration: none;
    border-bottom: 1px solid;
}
div.side-menu-nav:hover ul li a {
    opacity: .75;
}
div.side-menu-nav ul li a:hover {
    opacity: 1;
    transition: .1s;
}
/* Search bar */
input#search_box_keyword {
    width: 100%;
    color: #fff;
    background: #000;
    border: none;
    font-size: 35px;
}
input#search_box_keyword:focus-visible {
    outline: none;
}
/* product blocks */
div.site-section div.product-block a:focus {
    outline: none;
}
div.site-section {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}
div.site-section div.product-block {
    display: inline-block;
    width: 49%;
}
div.site-section div.product-block div.product-tile {
    display: flex;
    border-bottom: 1px solid #ccc;
    margin-bottom: 3em;
}
div.site-section div.product-block .product-image img{
    width: 100%;
    max-width: 170px;
    aspect-ratio: 1;
    border-bottom-right-radius: 30%;
    height: auto;
}
div.site-section div.product-block div.product-description-block.col-md-9 {
    min-height: 14em;
    padding: 0 15px;
}
div.site-section div.product-block div.product-description-block a.product-title-link {
    text-decoration: none;
}
div.site-section div.product-block div.product-description-block a.product-title-link:hover {
    text-decoration: underline;
}
div.site-section div.product-block div.product-description-block div.text-link p {
    overflow-wrap: break-word;
}
div.site-section div.product-block div.product-description-block div.product-text {
    max-height: 125px;
    min-height: 125px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    white-space: pre-wrap;
}
div.site-section div.product-block div.product-description-block div.view-courses {
    display: block;
}
div.site-section div.product-block div.product-description-block div.view-courses a {
    text-decoration: none;
    font-weight: 700;
    font-size: 16px;
}
/*div.site-section div.product-block div.product-description-block div.view-courses p > a {
    border-left: 1px solid #ccc;
    padding-left: 10px;
    margin-left: 10px;
}*/
div.site-section div.product-block div.product-description-block div.view-courses span.category-name-string {
    margin-right: 1em;
    padding-right: 1em;
    border-right: 1px solid #ccc;
    display: inline-block;
}
div.site-section div.product-block div.product-description-block div.view-courses span.view-product-description-link {
    white-space: nowrap;
    display: inline-block;
}
div.site-section div.product-block div.product-description-block div.view-courses > p {
    font-weight: 700;
}
div.site-section div.product-block div.product-description-block div.view-courses a:hover {
    text-decoration: underline;
    text-decoration-thickness: 2px;
}
div.site-section div.product-block div.product-description-block div.view-courses i {
    color: var(--main-color);
}
/* Category blocks */
div.cat-site-section {
    margin-bottom: 1em;
    border-bottom: 1px solid #ccc;
    padding-bottom: 2em;
    display: flex;
    justify-content: space-between;
}
div.cat-site-section div.cat-block {
    width: 33%;
    border: 1px solid #ccc;
    transition: .3s;
    display: inline-block;
}
div.cat-site-section div.cat-block div.cat-block-title {
    text-align: center;
}
div.cat-site-section div.cat-block div.cat-block-title h3.cat-title {
    margin: 10px 0px;
    padding: 10px 0px;
    text-decoration: underline;
    text-decoration-color: var(--main-color);
    text-underline-offset: 3px;
}
div.cat-block:hover {
    border-bottom-right-radius: 30px;
    transition-duration: .3s;
    background: var(--main-color);
}
div.cat-tile {
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center;
}
div.cat-tile a {
    text-decoration: none;
}
div.cat-site-section div.cat-block:hover div.cat-block-title h3.cat-title {
    color: #fff;
    text-decoration: underline;
    text-decoration-color: #fff;
    text-underline-offset: 3px;
}
/* Product details page */
.course-card-tabs__header .display-3 {
    font-size: 5rem;
}
div.navbar.clearfix div.breadcrumb ul li {
    font-size: 16px;
}
div.navbar.clearfix div.breadcrumb ul li a {
    color: var(--main-color);
}
div.navbar.clearfix div.breadcrumb ul li a:hover {
    text-decoration: underline;
    text-decoration-thickness: 2px;
}
div.navbar.clearfix div.breadcrumb ul li a:focus {
    outline: none;
}
div.page-product-details div.product-container img.largeimage1 {
    width: 420px;
    float: left;
    margin: 0 1em 0 0;
}
img.largeimage1 + br {
    display: none;
}
.page-product-details .accent {
    color: #000;
}
div.backend-products table.table-products-list tr.table-products-list-row {
    border-top: 1px solid #ccc;
}
/* Cart page */
form.cm-cart-form.cm-cart-has-products table.cartcontent th.cm-align-right{
    text-align: right;
}
form.cm-cart-form.cm-cart-has-products table.cartcontent th.cm-align-center {
    text-align: center;
}
form.cm-cart-form.cm-cart-has-products table.cart-summary-table {
    width: 89%;
}
form.cm-cart-form.cm-cart-has-products table.cart-summary-table td.cm-cart-table-cell-totals-label {
    width: 85%;
}
div.backend-products {
    width: 100%;
    display: inline-block;
}
div.backend-products div.cm-related-products {
    width: 60%;
}
div.backend-products div.page-products-list table.table-products-list {
    border: 1px solid #ccc;
}
div.backend-products div.page-products-list table.table-products-list tr:first-of-type {
    background: var(--main-color);
    color: #fff;
    font-weight: 700;
}
div.backend-products div.page-products-list table.table-products-list td.product-list-cell-date {
    padding: 10px;
    width: 40%;
}
div.backend-products div.page-products-list table.table-products-list td.product-list-cell-price {
    padding: 10px;
    width: 30%;
}
div.backend-products div.page-products-list table.table-products-list td.product-list-cell-add-to-cart {
    text-align: right;
}
/* Create account/Login page */
div.student_login, div.manager_login {
    min-height:255px;
}
div.login-create-account-blocks {
    display: inline-block;
}
div.login-create-account-blocks .col-sm-12.col-md-12.col-lg-6 {
    float: left;
}
/* Create account page actual */
form.create-account-form {
    display: block;
}
form.create-account-form .account_info, form.create-account-form .contact_info {
    display: inline-block;
    width: 49%;
    min-height: 935px;
}
form.create-account-form .account_info h2, form.create-account-form .contact_info h2 {
    margin-left: 1rem;
}
form.create-account-form input, form.create-account-form select {
    width: 50%;
}
form.create-account-form input#createaccount {
    width: 40%;
}
/* Checkout page */
.cart-container .cartcontent thead th.cm-align-right {
    text-align: right;
}
.cart-container .cartcontent thead th.cm-align-center {
    text-align: center;
}
.cart-summary-table {
    width: 97%;
}
.cm-cart-table-cell-totals-label {
    width: 83%;
}
/* confirmation page */
div.order-items-container table.cartcontent th.cm-align-right {
    text-align: right;
}
div.order-items-container table.cartcontent th.cm-align-center {
    text-align: center;
}
/* Manage licenses */
table.cm-manage-table a {
    color: var(--main-color);
}
/* My account page */
div.my-account-login-blocks {
    display: inline-flex;
}
table.largetable.my-account-order-list-table a {
    color: var(--main-color);
}
table.largetable.my-account-order-list-table a:focus {
    outline: none;
}
/* the media queries begineth */
@media (min-width: 1919px) {
    .course-card-tabs__header .display-3 {
	font-size: 5rem;
    }
}
@media (max-width: 1465px) {
    form.create-account-form .account_info, form.create-account-form .contact_info {
	width: 48%;
    }
}
@media (max-width: 1440px) and (min-width: 768px) {
    div.row.course-card-tabs__header {
        margin-top: 1rem;
    }
}
@media (max-width: 1125px) {
    div.backend-products {
        width: 85%;
    }
}
@media (max-width: 1100px) {
    div.site-section div.product-block {
        width: 100%;
    }
}
@media (min-width: 991px) and (max-width: 1056px) {
    div.student_login, div.manager_login {
        min-height: 275px;
    }
}
@media (max-width: 991.98px) {
    .banner--split .banner__menu-toggle svg, .banner--split .banner__search-toggle svg {
        fill: #000!important;
    }
}
@media (max-width: 991px) {
    form.create-account-form .account_info, form.create-account-form .contact_info {
	width: 100%;
    }
}
@media (max-width: 900px) {
    div.cat-site-section div.cat-block {
        width: 100%;
        margin-bottom: 1em;
    }
    div.cat-site-section {
        flex-direction: column;
    }
}
@media (max-width: 800px) {
    div.backend-products div.page-products-list table.table-products-list td.product-list-cell-price {
        width: 20%;
    }
}
@media (max-width: 767px) {
    div.site-section div.product-block div.product-tile {
        flex-direction:column;
    }
    div.row.course-card-tabs__header {
        margin-top: 2em;
    }
}
@media (max-width: 550px) {
    td.product-list-heading-cell-date {
        display: none;
    }
}
@media print {
    header {
      display: none;
    }
    div#print-order input, div#print-order + p {
      display: none;
    }
    footer {
      display: none;
    }
    table {
      width: 100%;
    }
    .block-image_link {
      display: none;
    }
    body {
      padding-bottom: 0;
    }
    div.course-card-tabs__items {
        display: none;
    }
    @page {
        margin-top: 0;
        margin-bottom: 0;
    }
  }
