#_product-attributes {

    width: 50%;
    height: 50%;
    background: #fff;
    border: #000;
    position: fixed;
    top: 25%;
    left: 25%;
    display: none;
    z-index: 1;

}

.art275 .card {
    margin-bottom: 90px;
}

.art275 .btn-subtle {
    background-color: #e5e6e7;
}
.btn-subtle:hover,
.btn-subtle:focus {
    color: #0078a3
}

/*
// Modals
// --------------------------------------------------

// .modal-open      - body class for killing the scroll
// .modal           - container to scroll within
// .modal-dialog    - positioning shell for the actual modal
// .modal-content   - actual modal w/ bg and corners and shit
*/

/* Kill the scroll on the body*/

.modal-open {
    overflow: hidden;
}

/* Container that the modal scrolls within */

.modal {
    display: none;
    overflow: hidden;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    -webkit-overflow-scrolling: touch;
    /* Prevent Chrome on Windows from adding a focus outline. For details, see
   https://github.com/twbs/bootstrap/pull/10951. */
    outline: 0;
}

/* When fading in the modal, animate it to slide down */

.modal.fade .modal-dialog {
    -webkit-transform: translate(0, -25%);
    -ms-transform: translate(0, -25%);
    transform: translate(0, -25%);
    -webkit-transition: -webkit-transform 0.3s ease-out;
    -moz-transition: -moz-transform 0.3s ease-out;
    -o-transition: -o-transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
}

.modal.in .modal-dialog {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

/* Shell div to position the modal with bottom padding */

.modal-dialog {
    position: relative;
    width: auto;
    margin: 10px;
    margin-top: 40px;
}

/* Actual modal */

.modal-content {
    position: relative;
    background-color: #fff;
    border: 1px solid rgba(0,0,0,.2);
    /* old browsers fallback (ie8 etc) */
    border-radius: 3px;
    -webkit-box-shadow: 0 3px 9px rgba(0,0,0,.5);
    box-shadow: 0 3px 9px rgba(0,0,0,.5);
    background-clip: padding-box;
    /* Remove focus outline from opened modal */
    outline: none;
}

.modal-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    background-color: #000;
}

.modal-backdrop.fade.in {
    opacity: 0.5;
}


/* Modal header
// Top section of the modal w/ title and dismiss
*/

.modal-header {
    padding: 15px;
    border-bottom: 1px solid #e5e5e5;
    min-height: 35px;
}

@media  (max-width: 767px) {
    .modal-header {
        display: none;
    }
}


/* Close icon */

.modal-header .close {
    margin-top: -2px;
}

/* Title text within header */

.modal-title {
    margin: 0;
    line-height: 20px;
    text-overflow: ellipsis;
    height: 25px;
    overflow: hidden;
}

@media  (max-width: 768px) {
    h1.product-title {
        margin-top: 30px;
        font-size: 24px;
    }
}

@media  (min-width: 768px) {
    h1.product-title {
        margin-top: 60px;
        font-size: 36px;
    }
}

/* Modal body
// Where all modal content resides (sibling of .modal-header and .modal-footer)
*/

.modal-body {
    position: relative;
    padding: 20px;
    overflow-y: scroll;
    max-height: 65vh;
}

/* Footer (for actions) */

.modal-footer {
    margin-top: 15px;
    padding: 19px 20px 20px;
    text-align: right;
    /* right align buttons */
    border-top: 1px solid #e5e5e5;
}

@media  (max-width: 767px) {

    .modal-footer {
        text-align: center !important;
    }
}


/* Properly space out buttons */

.modal-footer .btn + .btn {
    margin-left: 5px;
    margin-bottom: 0;
    /* account for input[type="submit"] which gets the bottom margin like all other inputs */
}

/* but override that for button groups */

.modal-footer .btn-group .btn + .btn {
    margin-left: -1px;
}

/* and override it for block buttons as well */

.modal-footer .btn-block + .btn-block {
    margin-left: 0;
}

/* clear it in case folks use .pull-* classes on buttons */

.modal-footer:before,.modal-footer:after {
    display: table;
    content: "";
    line-height: 0;
}

.modal-footer:after {
    clear: both;
}

/* Scale up the modal */

@media  (min-width: 768px) {
    /* Automatically set modal's width for larger viewports */
    .modal-dialog {
        width: 90%;
        margin: 60px auto;
        max-width: 1040px;
    }
    .modal-content {
        -webkit-box-shadow: 0 5px 15px rgba(0,0,0,.5);
        box-shadow: 0 5px 15px rgba(0,0,0,.5);
    }
}

@media  (min-width: 992px) {
    .modal-lg {
        width: 900px;
    }
}

@media  (min-width: 768px) {
    .modal-dialog {
        margin-top: 60px;
    }

}



/*
*	Close
*/

.close {
    float: right;
    font-size: 27px;
    font-weight: bold;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    opacity: 0.2;
    filter: ~"alpha(opacity=@{20})";
}

.close:hover,
.close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
    opacity: 0.5;
    filter: ~"alpha(opacity=@{50})";
    border: none;
    background: transparent;
}


button.close {
    padding: 0;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
}


/*
* 	Product Details
*/
#_product-description{
    max-height: 170px;
    margin-bottom: 30px;
    overflow: hidden;
}
#_product-description + .more
.modal.details #_product-description{
    max-height: none;
    overflow: visible;
}

#product-thumbs {
    float: left;
}

#product-thumbs .thumb {
    height: 40px;
    cursor: pointer;
    margin-right: 10px;
}

@media  (max-width: 767px) {

    #product-thumbs {
        margin-bottom: 10px;
    }

    #product-thumbs .thumb {
        width: 40px;
    }
}


#product-attributes .content-with-more-outer {
    max-height: 240px;
    overflow: hidden;
}

#product-attributes .content-with-more-outer .more {
    position: absolute;
    bottom: inherit;
    top: 90px;
    left: 0px;
    right: 0px;
    padding-top: 41px;
    background-image: -webkit-linear-gradient(top, transparent 0%, #ffffff 100%);
    background-image: -o-linear-gradient(top, transparent 0%, #ffffff 100%);
    background-image: linear-gradient(to bottom, transparent 0%, #ffffff 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#ffffffff', GradientType=0);
    text-align: center;
    display: none;
}

.content-with-more-outer .more hr {
    margin: -17px 30px 0;
}

#product-attributes .content-with-more-outer.has-more {
    margin-bottom: 0px;
    padding-bottom: 45px;
    position: relative;
}
#product-attributes .content-with-more-outer.has-more .content-with-more-inner {
    max-height: 150px;
    overflow: hidden;
}
#product-attributes .content-with-more-outer.has-more .more {
    display: block;
}
.content-with-more-outer.is-open {
    max-height: inherit !important;
}

.attributes{
    margin-top: 10px;
}

.attributes label{
    min-width: 100px;
}

label + select{
    margin-left: 10px;
}


/*
	Checkout
*/
#checkout{
    margin-top: 30px;
}

#checkout h5{
    text-align: center;
}
#checkout p + h5,
#checkout table + h5,
#checkout form + h5,
#payment .row + h5{
    margin-top: 30px;
}

.tab-next{
    text-align: center;
    margin-top: 30px;
}

#checkout .checkbox label{
    display: block;
}

/* CART */
#cart-table,
#cart-final{
    width: 100%;
    max-width: 500px;
}
#cart-table td,
#cart-final td{
    border-bottom: 5px solid transparent;
}
a.remove{
    font-size: 85%;
}
#cart-table tr td:first-child,
#cart-final tr td:first-child{
    width: 80%;
}
#cart-table tr td:last-child,
#cart-final tr td:last-child{
    width: 20%;
    min-width: 100px;
    text-align: right;
}

#cart-table tr.cart-empty td{
    text-align: center;
}

#cart-final{
    margin-bottom: 20px;
}


/*
*	Order Form
*/

.order-form p {
    position: relative;
}

.order-form input + label, .order-form select + label{
    display: none;
    position: absolute;
    top: 0;
    margin-bottom: 0;
    padding-left: 16px;
    font-size: 11px;
    font-weight: 200;
    font-style: italic;
    line-height: 1;
    opacity: 0.8;
    color: #666;
}

.order-form input:focus + label,
.order-form input.not-empty + label,
.order-form select:focus + label,
.order-form select.not-empty + label{
    display: block;
}

.order-form input + label{
    padding-left: 13px;
}

p.billing, h5.billing, span.billing {
    display: none;
}


/* PAYMENT */
#payment b{

}

.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label, input.has-error {
    color: #a94442 !important;
}

input.has-error {
    border: solid 1px #a94442 !important;
}

.not-active {
    pointer-events: none;
    cursor: default;
    opacity: 0.5
}

::-webkit-input-placeholder {
    color: #999 !important;
}

:-moz-placeholder { /* Firefox 18- */
    color: #999 !important;
}

::-moz-placeholder {  /* Firefox 19+ */
    color: #999 !important;
}

:-ms-input-placeholder {
    color: #999 !important;
}

#checkout.sending {
    pointer-events: none;
    opacity: 0.7;
}


/*
*  Badges
*/



h4 .badge{
    position: absolute;
    margin-left: 5px;
    margin-top: -5px;
    min-width: 23.6px;
}

.badge:empty {
    display: none;
}

.btn .badge {
    position: relative;
    top: -1px;
}

.btn-xs .badge {
    top: 0;
    padding: 1px 5px;
}

a.badge:hover,
a.badge:focus {
    color: #00a6e2;
    text-decoration: none;
    cursor: pointer;
}


.list-group-item > .badge {
    float: right;
}

.list-group-item > .badge + .badge {
    margin-right: 5px;
}

.nav-pills > li > a > .badge {
    margin-left: 3px;
}


/*
*	Form Placeholders
*/
input::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: #555;
}
input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color:    #555;
    opacity:  1;
}
input::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:    #555;
    opacity:  1;
}
input:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color:    #555;
}

.pricing {
    font-size: 16px !important;
    color: #6a737b;
}

.product-row {
    clear: both;
}

.card.product.upselling {
    display: none;
}