*:focus, *:active, *:hover, a:focus, a:active, a:hover
{
    outline: none !important;
}

html,
body
{
    overflow-x: hidden;
}

body
{
    font-family: 'freeserif', serif;
    color: #063e71;
    background-color: #fff;
    font-size: 16px;
}

h1,
h2
{
    font-size: 24px;
}

a,
a:hover
{
    text-decoration: none;
}

.sidebar
{
    background-color: #063e71;
}

.sidebar,
.sidebar a,
.sidebar a:link,
.sidebar a:hover,
.sidebar a:focus,
.sidebar a:visited,
.navbar-default .navbar-nav > li > a,
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus,
#header-basket .view-basket,
#header-basket .view-basket:hover,
#header-basket .view-basket:focus,
#header-basket .view-basket:active
{
    color: #fff;
}

.site-name
{
    display: block;
    margin-top: 10px;
    padding: 7px 0;
    font-size: 36px;
    line-height: 36px;
    border-top: solid 1px #fff;
    border-bottom: solid 1px #fff;
}

.est
{
    display: block;
    margin-bottom: 10px;
    font-size: 22px;
    border-bottom: solid 1px #fff;
}

.navbar-nav,
.navbar-nav > li
{
    float: none;
}

.navbar-default
{
    background-color: transparent;
    border: none;
}

.navbar-nav li
{
    font-size: 22px;
    border-bottom: solid 1px #fff;
    margin-bottom: 20px;
}

.affiliates
{
    display: block;
    margin-top: 15px;
    padding: 15px 0;
    border-top: solid 1px #fff;
}

.rdit
{
    display: block;
    margin-bottom: 15px;
    font-family: sans-serif;
    font-size: 11px;
}

.social a
{
    display: inline-block;
    width: 40px;
    height: 26px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background: url('/assets/images/social-sprite.png') no-repeat;
}

.social .facebook        { background-position: 0 0; }
.social .facebook:hover  { background-position: 0 -26px; }
.social .twitter         { background-position: -40px 0; }
.social .twitter:hover   { background-position: -40px -26px; }
.social .email           { background-position: -80px 0; }
.social .email:hover     { background-position: -80px -26px; }
.social .telephone       { background-position: -120px 0; }
.social .telephone:hover { background-position: -120px -26px; }

.shelves
{
    width: 4000px;
    height: 194px;
    margin-left: -15px;
    margin-bottom: 30px;
    background: url('/assets/images/site/shelves.jpg') repeat-x;
}

.book .title
{
    font-size: 20px;
}

.book .title small
{
    display: block;
}

.book .published
{
    font-size: 20px;
}

.book .h2.price
{
    margin-top: 0;
}

.add-to-basket-form .price
{
    font-size: 20px;
    margin-top: 25px;
}

.product-photos
{
    margin-top: 15px;
    padding-top: 20px;
    border-top: solid 1px #063e71;
}

.quick-search
{
    margin: 15px 0 20px;
    padding-top: 15px;
    border-top: solid 1px #fff;
}

.mini-account
{   
    display: block;
    float: right;
    margin-top: 20px;
    padding: 20px;
    background-color: rgba(6, 62, 113, 0.9);
    border-radius: 8px;
    box-shadow: 1px 1px 4px 3px rgba(255,255,255,0.6);
}

.mini-account a,
.mini-account a:hover,
.mini-account a:focus,
.mini-account a:visited
{
    color: #fff;
    text-decoration: none;
}

.mini-account a:hover
{
    color: #bbdfff;
}

.mini-account .personal
{
    text-align: center;
    border-top: solid 1px #fff;
    margin-top: 3px;
}
    
#header-basket .view-basket
{
    cursor: pointer;
}

#header-basket .view-basket:hover
{   
    /*-webkit-box-shadow: 1px 1px 4px 3px rgba(255,255,255,0.6);
    -webkit-transition: box-shadow 200ms cubic-bezier(0.42, 0, 0.58, 1) 5ms;
    -moz-transition: box-shadow 200ms cubic-bezier(0.42, 0, 0.58, 1) 5ms;
    -o-transition: box-shadow 200ms cubic-bezier(0.42, 0, 0.58, 1) 5ms;
    transition: box-shadow 200ms cubic-bezier(0.42, 0, 0.58, 1) 5ms;*/
}

/* BASKET MODAL */
#basket-table td {
    padding: 14px 7px;
}

#basket-table tr:first-child td {
    padding-top: 0;
}

#basket-table tr:last-child td {
    padding-bottom: 0;
}

#basket-table tr + tr td {
    border-top: 1px #EEE solid;
}

#basket-table .image-cell {
    text-align: center;
    padding-left: 0;
}

#basket-table .image-cell img {
    max-width: 70px;
    max-height: 70px;
}

#basket-table .product-cell {
    color: #063e71;
    font-weight: 600;
    padding: 0;
}

#basket-table .cost-cell {
    padding: 0;
    font-size: 18px;
    font-weight: 300;
}

#basket-table .qty-cell {
    width: 100px;
    padding-left: 10px;
}

#basket-table .delete-cell {
    width: 20px;
    text-align: center;
}

#basket-table .total-cell {
    text-align: center;
    font-size: 24px;
    font-weight: 300;
}

#basket-table .total-cell small {
    font-size: 14px;
}

#basket-table tr td.empty-basket {
    text-align: center;
    padding: 40px 0;
}

#basket-table h2, #basket-table h5 {
    margin: 0;
}

#basket-table h5 {
    margin-top: 10px;
    line-height: 150%;
}

#basket-modal .items-qualify-row, #basket-modal .go-checkout-row {
    display: none;
    padding-top: 15px;
}

#basket-modal .items-qualify-row .alert {
    margin: 0;
}


/* CHECKOUT */

#content .checkout-inner {
    background: #FFF;
    background: rgba(255, 255, 255, 0.55);
    padding: 25px;
    border-bottom: 2px #C5C5C5 solid;
}

#order-items-table .image-cell img {
    max-width: 70px;
    max-height: 70px;
}

#checkout-steps, #checkout-steps li {
    height: 10px;
}

#checkout-steps {
    list-style: none;
    margin: 70px 0 80px;
    padding: 0;
    background: #C6C6C6;
}

#checkout-steps li {
    text-align: center;
}

#checkout-steps, #checkout-steps li .step {
    -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.16);
    -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.16);
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.16);
}

#checkout-steps li .step {
    position: relative;
    display: inline-block;
    background: #C6C6C6;
    height: 40px;
    width: 40px;
    font-size: 20px;
    font-weight: 400;
    line-height: 37px;
    top: -15px;
    
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

#checkout-steps li .step-label {
    display: block;
    margin: -5px 0 20px;
}

#checkout-steps li.highlighted-step, #checkout-steps li.highlighted-step .step {
    background: #063e71;
    color: #FFF;
}

#checkout-steps li.highlighted-step .step-label {
    color: #063e71;
    font-weight: 600;
}

#checkout-steps li:first-child {
    -moz-border-radius: 2px 0 0 2px;
    -webkit-border-radius: 2px 0 0 2px;
    border-radius: 2px 0 0 2px;
}

#checkout-steps li:last-child {
    -moz-border-radius: 0 2px 2px 0;
    -webkit-border-radius: 0 2px 2px 0;
    border-radius: 0 2px 2px 0;
}

#content .voucher-error {
    margin: 20px 0 0;
}

#content .proceed-step {
    border-top: 1px #DCDCDC solid;
    padding-top: 20px;
    margin-top: 40px;
}

#content .hidden-invoice {
    display: none;
    padding-top: 30px;
}

#order-addresses .address-block, #delivery-info .auto-address, #invoice-info .auto-address {
    background: #FFF;
    background: rgba(255, 255, 255, 0.5);
    border: 1px #D5D5D5 solid;
    border-bottom-width: 2px;
    padding: 15px 20px;
    
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
}

#delivery-info .auto-address, #invoice-info .auto-address {
    margin-bottom: 25px;
}

#order-charges {
    border-top: 1px #DDD solid;
    border-bottom: 1px #DDD solid;
    padding: 30px 0;
    margin: 45px 0;
    text-align: center;
}

#order-charges .block-title {
    font-size: 26px;
    font-weight: 300;
    margin: 0;
}

#order-charges .block-label {
    color: #063e71;
    font-size: 22px;
    font-weight: 600;
    margin: 0;
}

#pay-button {
    text-align: center;
    padding-top: 40px;
}

.btn.btn-paypal {
    position: relative;
    background: #FFF url(/assets/images/site/btn-white-gradient.png) top repeat-x;
    background-size: auto 100%;
    border: 1px #CCC solid;
    border-bottom-width: 2px;
    font-size: 24px;
    font-weight: 300;
    text-shadow: 0 1px #FFF;
    padding-left: 25px;
    padding-right: 25px;
    
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    
    -moz-box-shadow: inset 0 2px #FFF;
    -webkit-box-shadow: inset 0 2px #FFF;
    box-shadow: inset 0 2px #FFF;
}

.btn.btn-paypal:active {
    background-position: center 6px;
    top: 1px;
    border-bottom-width: 1px;
    margin-bottom: 1px;
    text-shadow: 0 -1px #FFF;
    
    -moz-box-shadow: inset 0 1px rgba(0, 0, 0, 0.1), 0 1px #FFF;
    -webkit-box-shadow: inset 0 1px rgba(0, 0, 0, 0.1), 0 1px #FFF;
    box-shadow: inset 0 1px rgba(0, 0, 0, 0.1), 0 1px #FFF;
}

.btn.btn-paypal .btn-inner {
    display: block;
    padding-right: 113px;
    background: url(/assets/images/site/paypal-logo.png) right center no-repeat;
}

.btn.btn-paypal:disabled, .btn.btn-paypal[disabled] {    
    background: #FFF url(/assets/images/site/btn-loader.gif) center center no-repeat;
}

.btn.btn-paypal:disabled .btn-inner, .btn.btn-paypal[disabled] .btn-inner {
    visibility: hidden;
}

#delivery-workout {
    text-align: center;
    padding-bottom: 20px;
}

#content .checkout-page .paypal-help {
    margin: 12px 0 0;
    text-align: center;
}

.help-block.hidden-help {
    display: none;
}

.payment-page {
    text-align: center;
    padding: 60px 0;
}

.payment-page h2 {
    margin-top: 20px;
}

#payment-success .step-blocks {
    padding: 25px 0 0;
}

#payment-success .step-blocks .step-inner {
    position: relative;
    border: 2px #DDD solid;
    
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
}

#payment-success .step-blocks .step-number {
    position: absolute;
    display: block;
    background: #063e71;
    color: #FFF;
    padding: 10px 13px;
    line-height: 1;
    top: -17px;
    left: 50%;
    margin-left: -13px;
    z-index: 2;
    
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

#payment-success .step-blocks .description {
    display: block;
    padding: 28px 15px 18px;
}

#payment-success .estimated-delivery {
    padding: 20px 0 0;
}

#payment-success .estimated-delivery p {
    font-size: 18px;
    font-weight: 300;
    margin: 0;
}

.payment-page p:last-child {
    margin-bottom: 0;
}

/* BOOTSTRAP FIXES */
.modal-header {    
    background-color: #063e71;
    -moz-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.31);
    -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.31);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.31);
}

.modal-header, .modal-title, .close, .modal-header .close:hover {
    color: #FFF;
    text-shadow: 0 -1px #474646;
}

.modal-header .close, .modal-header .close:hover, .modal-header .close:focus {
    opacity: 0.7;
    font-size: 42px;
    font-weight: 400;
    margin-top: -10px;
}

.modal-header .close:hover {
    opacity: 1;
}

.modal-content {
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    
    -moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

.modal-body {
    padding: 15px;
}

.tooltip-inner {
    background: #000;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    padding: 6px 8px;
    font-size: 12px;
    line-height: 16px;
    font-family: Helvetica, Arial, "lucida grande", tahoma, verdana, arial, sans-serif;
}

.tooltip, .tooltip.in {
    opacity: 1;
}

.table > tbody > tr > td[valign="middle"] {
    vertical-align: middle;
}

.alert-icon {
    position: relative;
    padding-left: 46px;
}

.alert-icon .icon {
    position: absolute;
    height: 100%;
    width: 16px;
    left: 15px;
    top: 0;
}

.alert-icon .icon-helper {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    position: relative;
}

.alert-icon .icon-helper img {
    position: absolute;
    top: 50%;
    margin-top: -8px;
}


.btn.btn-paypal {
    position: relative;
    background: #FFF url(/assets/images/site/btn-white-gradient.png) top repeat-x;
    background-size: auto 100%;
    border: 1px #CCC solid;
    border-bottom-width: 2px;
    font-size: 24px;
    font-weight: 300;
    text-shadow: 0 1px #FFF;
    padding-left: 25px;
    padding-right: 25px;
    
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    
    -moz-box-shadow: inset 0 2px #FFF;
    -webkit-box-shadow: inset 0 2px #FFF;
    box-shadow: inset 0 2px #FFF;
}

.btn.btn-paypal:active {
    background-position: center 6px;
    top: 1px;
    border-bottom-width: 1px;
    margin-bottom: 1px;
    text-shadow: 0 -1px #FFF;
    
    -moz-box-shadow: inset 0 1px rgba(0, 0, 0, 0.1), 0 1px #FFF;
    -webkit-box-shadow: inset 0 1px rgba(0, 0, 0, 0.1), 0 1px #FFF;
    box-shadow: inset 0 1px rgba(0, 0, 0, 0.1), 0 1px #FFF;
}

.btn.btn-paypal .btn-inner {
    display: block;
    padding-right: 113px;
    background: url(/assets/images/site/paypal-logo.png) right center no-repeat;
}

.btn.btn-paypal:disabled, .btn.btn-paypal[disabled] {    
    background: #FFF url(/assets/images/site/btn-loader.gif) center center no-repeat;
}

.btn.btn-paypal:disabled .btn-inner, .btn.btn-paypal[disabled] .btn-inner {
    visibility: hidden;
}

.catalogue
{
    border-top: solid 1px #063e71;
}

.catalogue .row
{
    margin-top: 15px;
}

.catalogue-grid .product-image
{
    display: block;
    position: relative;
}

.catalogue-grid img
{
    /*position: absolute;
    width: 100%;
	max-height: 100%;
    top: 0;*/
    margin: 0 auto;
    /*max-height: 189px;*/
}

/* ACCOUNT PAGE */
#account-body .account-sidebar {
    padding-top: 50px;
    padding-bottom: 50px;
    padding-right: 0;
}

#account-body .account-sidebar ul {
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: right;
}

#account-body .account-sidebar ul li {
    position: relative;
}

#account-body .account-sidebar ul li:after {
    content: "";
    position: absolute;
    display: block;
    border: 5px transparent solid;
    border-right-color: #CCC;
    top: 50%;
    margin-top: -4px;
    right: 0;
}

#account-body .account-sidebar ul li a {
    display: block;
    padding: 10px 25px 10px 0;
    color: #444;
}

#account-body .account-sidebar ul li a img {
    position: relative;
    float: right;
    top: 2px;
    right: -7px;
}

#account-body .account-sidebar ul li:hover:after, #account-body .account-sidebar ul li.selected-section:after {
    border-right-color: #31708f;
}

#account-body .account-sidebar ul li.selected-section a, #account-body .account-sidebar ul li a:hover, #account-body .account-sidebar ul li a:focus {
    color: #31708f;
    text-decoration: none;
}

#account-body .account-content-wrapper {
    border-left: 1px #CCC solid;
}

#account-body .account-content {
    background: #FFF;
    background: rgba(255, 255, 255, 0.55);
    padding: 25px;
    margin: 40px 0;
    border-bottom: 2px #C5C5C5 solid;
    min-height: 210px;
}

#account-body .bordered-heading {
    margin-bottom: 10px;
}

#account-body #order-addresses {
    padding-bottom: 20px;
}

.gallery .row
{
    margin-bottom: 15px;
}

.gallery
{
    line-height: 200px;
    text-align: center;
}


.pagination
{
    margin: 0;
}

#colorbox, #cboxOverlay, #cboxWrapper
{
    z-index: 7000 !important;
}

#next_page
{
    margin-top: 15px;
    margin-bottom: 15px;
}

#submit-container{
	display:flex;
	display: -webkit-box;   /* OLD - iOS 6-, Safari 3.1-6, BB7 */
	display: -ms-flexbox;  /* TWEENER - IE 10 */
	display: -webkit-flex; /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
	justify-content: flex-end;
}

@media (min-width: 1200px) {
	#submit-container{
		margin-right:45px;
	}
}
