:root {
    --button-background-colour: #0175c8;
    --button-font-size: 15px;
    --button-font-colour: #fff;
    --button-border: 2px solid #0175c8;
    --button-border-radius: 100px;
    --button-hover-background: #93ca82;
    --button-hover-border: 2px solid #93ca82;
}
.accent {
    color: #005D84;
}
div#header_1 {
    border-top: 4px solid #005e85;
}
div.product-display-section-header {
    margin: 1em;
}
.product-block {
	display: inline-block;
	box-shadow: 0 2px 10px -4px rgb(0 0 0);
	margin: 5px;
	vertical-align: top;
}
.product-image {
    min-height: 250px;
    background: #005e85;
}
.product-image img {
	width: 100%;
	object-fit: cover;
	height: 250px;
}
.text-link {
	padding: 10px;
}
.text-link .product-title {
	line-height: 2.8rem;
	max-height: 90px;
	min-height: 90px;
	overflow: hidden;
	padding: 0 10px;
	font-size:25px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.text-link .product-text {
	max-height: 308px;
	min-height: 308px;
	overflow: hidden;
}
.view-courses {
	text-align: center;
}
.view-courses a p {
	background: var(--button-background-colour);
	padding: 15px;
	margin-bottom: 0;
	color: #fff;
}
.view-courses a p:hover {
	background: var(--button-hover-background);
	color: #fff;
    transition: .2s;
}
.view-courses a:hover {
	text-decoration: none;
}
.cat-site-section {
	margin-bottom: 2em;
}
.cat-block .cat-image img {
	width: 100%;
	max-height:180px;
	object-fit: cover;
}
.cat-title {
	line-height: 3rem;
	min-height: 90px;
	max-height: 90px;
	overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.cat-text {
	min-height: 140px;
	max-height: 140px;
	overflow: hidden;
}
.cat-block {
	display: inline-block;
	margin: 5px;
	vertical-align: top;
	box-shadow: 0 2px 10px -4px rgb(0 0 0);
}
div.product-container table.table-product-with-images td.image-cell {
    width: 100%;
}
div.product-container > table.table-product-with-images > tbody > tr {
    display: flex;
    flex-direction: column;
}
.largeimage1 {
	width: 100%;
	margin-bottom: 4rem;
	box-shadow: 2px 2px 10px #aaa;
	max-height:350px;
	object-fit:cover;
}
table.product-store-managed > tbody {
    float:right;
}
.formbutton, .cm_button_recalculate, .cm_button_checkout, .cm_button_continue_shopping,
.student_login .login-button, .manager_login .login-button, .form-line input#createaccount,
form.checkout-form input[type="submit"], input.cm-cart-remove-button-style,
a.my-account-action-button, .cm-button.order-details-print-button,
table.largetable input.button, .cm-product-list-add-to-waiting-list,
input#joinwaitinglist, a.login-link, input#enrolstudents {
    background-color: var(--button-background-colour);
    border: var(--button-border);
    border-radius: var(--button-border-radius);
    text-transform: uppercase;
    color: var(--button-font-colour);
    font-size: var(--button-font-size);
}
.formbutton:hover, .cm_button_recalculate:hover, .cm_button_checkout:hover, .cm_button_continue_shopping:hover,
.student_login .login-button:hover, .manager_login .login-button:hover, .form-line input#createaccount:hover,
form.checkout-form input[type="submit"]:hover, input.cm-cart-remove-button-style:hover,
a.my-account-action-button:hover, .cm-button.order-details-print-button:hover,
table.largetable input.button:hover, .cm-product-list-add-to-waiting-list:hover,
input#joinwaitinglist:hover, a.login-link:hover, input#enrolstudents:hover {
    background-color: var(--button-hover-background);
    border: var(--button-hover-border);
    transition: .2s;
}
fieldset.account_info, fieldset.contact_info {
    width: 48%;
    display: inline-block;
    border: none;
    box-shadow: none;
}
fieldset.account_info input, fieldset.contact_info input, fieldset.contact_info select {
    width: 100%;
}
form.cm-cart-has-products .cart-container .cart-summary-table {
    width: 90%;
}
form.cm-cart-has-products .cart-container table.cart-summary-table .cm-cart-table-cell-totals-value {
    width: 15%;
}
.cm-cart-table-row-head .cm-cart-remove-column {
    border-right: 1px solid #e6eaf0;
}
.cm-cart-table-row-head .cm-cart-amount-column {
    border-right: none;
    border-radius: 0px;
}
.cart-container .cart-summary-table {
    width: 98%;
}
.cart-container .cart-summary-table .cm-cart-table-cell-totals-value {
    width: 17%;
}
.checkout-section-container .invoice_details {
    box-shadow: none;
}
.checkout-section-container .invoice_details input, .checkout-section-container .invoice_details select {
    width: 500px;
}
a.my-account-action-button, .cm-button.order-details-print-button {
    padding: 1rem;
}
.my-account-action-block {
    height: 210px;
}
.account-manage-license-block p {
    margin-bottom: 10px;
}
.my-account-order-list-table a {
    color: #005e85;
}
.my-account-order-list-table a:hover {
    color: #758592;
}
a, .cm-top a {
    color: #005e85;
}
a:hover, .cm-top a:hover {
    color: #758592;
}
a:focus, .cm-top a:focus {
    color: #758592;
}
.page-block.cm-manage-licenses {
    margin-top: 3em;
}
.page-block.cm-manage-licenses.cm-manage-licenses-order-add-student {
    margin-top: 0;
}
div.cm-manage-order-license-line > form#order-list-form {
    border-top: 2px solid #696969;
    margin-top: 1em;
}
@media (min-width: 1201px) {
	.product-block, .cat-block {
		width: 32%;
	}
}
@media (max-width: 1199px) {
	.product-block, .cat-block {
		width: 48%;
	}
}
@media (min-width: 992px) and (max-width: 1200px) {
    .my-account-action-block > p {
        margin-bottom: 10px;
    }
}
@media (max-width: 991px) {
    h2 {
        line-height: 2.8rem!important;
    }
    .account-manage-license-block p {
        margin-bottom: 20px;
    }
}
@media (max-width: 750px) {
	.product-block, .cat-block {
		width: 100%;
	}
}
@media print {
    header, footer {
      display: none;
    }
    div#print-order, div.col-md-12 > p, div#toTop:before {
        display: none;
    }
    @page {
        margin-top: 0;
        margin-bottom: 0;
    }
}