/* =====================================================================================*/

/* Depreciated do not edit --- 2017.11.03 by sam */

/* =====================================================================================*/



/*======================================== BUY BAR =====================================*/
.buy-bar {
    width: 100vw;
    height: 58px;
    color: #4d4d4d;
    z-index: 21;
    font-size: 18px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,.2);
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
    opacity: 1;
    position: relative;
}

    .buy-bar.affix {
        top: 0;
        left: 0;
        right: 0;
        position: fixed;
    }

.ie .buy-bar-top > a.toc-menu-toggle {
    line-height: 58px;
}

#all.blur .buy-bar {
    opacity: 0;
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

#all.open-buy-menu .buy-bar,
#all.open-toc-menu .buy-bar {
    opacity: 1;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

.buy-bar .button-buy {
    border-radius: 0;
    font-size: 14px;
    color: #fff;
    margin-top: 10px;
}

.buy-bar .product-price-medium strike {
    display: inline-block;
    text-align: right;
    color: #808080;
    font-size: 14px;
}

.buy-bar .price-wrapper {
    display: inline-block;
    height: 40px;
    line-height: 40px;
    padding-left: 10px;
    margin: 10px 15px 0 5px;
}

    .buy-bar .price-wrapper.border-left {
        border-left: 1px solid #d9d9d9;
        line-height: 56px;
        position: relative;
    }

    .buy-bar .price-wrapper .promo {
        font-size: 10px;
        text-transform: uppercase;
        color: #808080;
        position: absolute;
        top: -18px;
        left: 11px;
    }

    .buy-bar .price-wrapper.border-left .product-price {
        font-size: 20px;
    }

.buy-loading {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: #f2f2f2;
}
/*===================================== End of BUY BAR =================================*/




/*=============================== Table of Contents MENU ===============================*/
.toc-menu-toggle {
    background: #fafafa;
    height: 58px;
    line-height: 1.1;
    padding-left: 25px;
    padding-right: 50px;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
}

.open-toc-menu .toc-menu-toggle,
.open-toc-menu .toc-menu-toggle:hover {
    background: #fafafa;
}

.toc-menu-toggle:hover {
    background: #f2f2f2;
}

.toc-menu-toggle .icon-down-arrow {
    margin: 0;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    cursor: pointer;
    height: auto;
    width: 50px;
}

.open-toc-menu .toc-menu-toggle .icon-down-arrow {
    transform: scaleY(-1);
}

.buy-bar a {
    text-decoration: none;
    border: none;
    color: #4d4d4d;
}

#toc-menu {
    position: fixed;
    top: 58px;
    z-index: 20;
    width: 100%;
    width: 100vw;
    opacity: 0;
    -webkit-transition: .3s 0s ease-in-out -webkit-transform, 0s .3s ease-in-out opacity, 0s .3s z-index;
    -o-transition: .3s 0s ease-in-out -o-transform, 0s .3s ease-in-out opacity, 0s .3s z-index;
    transition: .3s 0s ease-in-out transform, 0s .3s ease-in-out opacity, 0s .3s z-index;
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

.buy-bar.affix-top ~ #toc-menu {
    position: absolute;
    top: 116px;
}

.open-toc-menu #toc-menu {
    opacity: 1;
    -webkit-transition: .3s 0s ease-in-out -webkit-transform, .3s 0s opacity, 0s 0s z-index;
    -o-transition: .3s 0s ease-in-out -o-transform, .3s 0s opacity, 0s 0s z-index;
    transition: .3s 0s ease-in-out transform, .3s 0s opacity, 0s 0s z-index;
    -webkit-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
}

.toc-menu-inner {
    display: block;
    position: relative;
    left: 0;
    min-width: 250px;
    max-height: calc(100vh - 116px);
    overflow: auto;
    padding: 25px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.2);
    -webkit-overflow-scrolling: touch;
    font-size: 14px;
    background-color: #fff;
    border-top: 1px solid #cccccc;
    border-top: 1px solid rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}

    .toc-menu-inner ul {
        list-style-type: none;
        margin: 0;
        padding: 0;
    }

    .toc-menu-inner li {
        padding: 3px 5px 3px 23px;
        position: relative;
    }

        .toc-menu-inner li a {
            vertical-align: middle;
            white-space: normal;
            position: relative;
            color: #808080;
            font-size: 15px;
            line-height: 20px;
        }

        .toc-menu-inner li:hover a,
        .toc-menu-inner li:hover:before {
            color: #a6a6a6;
            background: none;
        }

    .toc-menu-inner .title {
        text-transform: uppercase;
        line-height: 25px;
        border-bottom: 1px solid #eee;
        margin-top: 20px;
        margin-bottom: 10px;
        padding-left: 0;
        color: #000;
    }

        .toc-menu-inner .title:first-child {
            margin-top: -5px;
        }

    .toc-menu-inner li:before {
        font-family: "creative" !important;
        font-style: normal !important;
        font-weight: normal !important;
        font-variant: normal !important;
        text-transform: none !important;
        speak: none;
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        content: '\68';
        vertical-align: middle;
        position: absolute;
        left: -4px;
        top: .35em;
    }

    .toc-menu-inner li.title:before {
        display: none;
    }

    .toc-menu-inner .title a {
        padding-left: 0;
        font-size: 14px;
        font-weight: 500;
        letter-spacing: 1px;
    }

        .toc-menu-inner .title a:hover {
            border: transparent;
        }
/*=========================== End of Table of Contents MENU ============================*/



/*====================================== BUY MENU ======================================*/
/* Dropdown layer when click on Buy button. */

.buy-bar-top {
    justify-content: space-between;
}

.buy-bar-inner {
    background-color: #f2f2f2;
    height: 58px;
    z-index: 1;
    position: relative;
}

.buy-product-name label.close {
    cursor: pointer;
    z-index: 5;
}

/*.button-buy,
.open-buy-menu .cart-bar-btn {
    display: block;
}*/

.open-buy-menu .button-buy,
.open-buy-menu .toc-menu-toggle,
.cart-bar-btn,
.open-buy-menu .product-price-medium {
    display: none;
}

.open-buy-menu .cart-bar-btn {
    min-width: initial;
    overflow: visible;
}

.buy-product-name {
    display: none;
}

.open-buy-menu .buy-product-name {
    display: block;
}



#buy-menu {
    background-color: #fff;
    position: fixed;
    top: 58px;
    left: 0;
    right: 0;
    padding: 50px 0 30px;
    z-index: -1;
    overflow: auto;
    max-height: calc(100vh - 58px);
    -webkit-overflow-scrolling: touch;
    -webkit-transition: .3s 0s ease-in-out -webkit-transform, 0s .3s z-index;
    -o-transition: .3s 0s ease-in-out -o-transform, 0s .3s z-index;
    transition: .3s 0s ease-in-out transform, 0s .3s z-index;
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

.open-buy-menu #buy-menu {
    z-index: 20;
    -webkit-transition: .3s 0s ease-in-out -webkit-transform, 0s 0s z-index;
    -o-transition: .3s 0s ease-in-out -o-transform, 0s 0s z-index;
    transition: .3s 0s ease-in-out transform, 0s 0s z-index;
    -webkit-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
}

.buy-bar.affix-top ~ #buy-menu {
    position: absolute;
    top: 116px;
    max-height: calc(100vh - 116px);
}




#buy-menu .loading {
    opacity: 1;
    z-index: 1;
    /*position: relative;*/
    -webkit-transition: .3s 0s ease-in-out opacity, 0s .3s z-index;
    -o-transition: .3s 0s ease-in-out opacity, 0s .3s z-index;
    transition: .3s 0s ease-in-out opacity, 0s .3s z-index;
}

.open-buy-menu #buy-menu .loading {
    opacity: 0;
    z-index: 0;
    -webkit-transition: .3s 0s ease-in-out opacity, 0s 0s z-index;
    -o-transition: .3s 0s ease-in-out opacity, 0s 0s z-index;
    transition: .3s 0s ease-in-out opacity, 0s 0s z-index;
}

#product-buy-section {
    width: 100%;
}

    #product-buy-section a {
        border: transparent;
    }


@media screen and (max-width: 479px) {
    #product-buy-section {
        padding-bottom: 30px;
    }
}

#buy-menu .top-bar {
    z-index: 1;
    width: 100%;
    top: 0;
    left: 0;
    border: none;
    height: 58px;
    background: #f2f2f2;
}

#buy-menu .buttons {
    display: block;
    text-align: center;
    float: right;
    margin-top: 20px;
}

    #buy-menu .buttons > a, #buy-menu .buttons > div {
        display: inline-block;
    }

    #buy-menu .buttons button {
        margin-right: 0;
    }

/* Notify me. */
.notify-me-toggle {
    margin-right: 0;
    float: right;
}

.promo-text-container {
    background: #f2f2f2;
    border-left: 2px solid #26afff;
    padding: 20px;
    font-size: 14px;
    line-height: 1.5;
}

    .promo-text-container strong:first-child {
        text-transform: uppercase;
        margin-bottom: 5px;
    }

    .promo-text-container p {
    }

/*================================== End of BUY MENU ===================================*/





/*==================================== PAGE CONTENT ====================================*/
.product-hero-container {
    position: relative;
}

    .product-hero-container .loading {
        display: none;
        z-index: 3;
    }

    .product-hero-container .loading-overlay {
        display: none;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: #000;
        background: rgba(0,0,0,.55);
        z-index: 3;
    }

.overlay {
    -webkit-transition: -webkit-transform 0.2s .1s ease-in-out, opacity 0.2s .1s ease-in-out, visibility 0s 0.4s;
    transition: transform 0.2s .1s ease-in-out, opacity 0.2s .1s ease-in-out, visibility 0s 0.4s;
}

    .overlay.open {
        -webkit-transition: -webkit-transform 0.4s ease-out;
        transition: transform 0.4s ease-out;
    }

.breakout {
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    overflow: hidden;
}

    .breakout > [class*="span"],
    .breakout > [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
        margin-left: 0;
        margin-right: 0;
    }

    .breakout > .container-fluid,
    .breakout > .container {
        padding-left: 40px;
        padding-right: 40px;
    }


.product-hero-container {
    padding-top: 40px;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 1px solid #ccc;
}

.product-hero-container-light {
    background: #fff;
}

.product-hero-container-dark {
    background: #000;
    border-bottom: 1px solid #333;
}

.product-hero-container h1,
.product-hero-container h2,
.product-hero-container h3 {
    text-align: center;
    position: relative;
    z-index: 2;
}

.product-hero-container-centered h1,
.product-hero-container-centered h2,
.product-hero-container-centered h3 {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    width: 100%;
}


.product-hero-container-dark h1, .product-hero-container-dark h3 {
    color: #fff;
}

.product-hero-container-dark h2 {
    color: #808080;
}


.product-hero-container > .container {
    position: relative;
}

.hero-wrapper {
    position: static;
    overflow: hidden;
}

.ie11 .hero-wrapper {
    overflow: visible;
}

.hero-wrapper > img {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
    width: 100%;
}


.product-hero-container-centered .hero-wrapper {
    width: 100%;
    position: static;
}

    .product-hero-container-centered .hero-wrapper > img {
        margin-left: auto;
        margin-right: auto;
        width: calc(100% - 30px);
        float: none;
    }



.product-name-large {
    font-size: 32px;
    font-weight: 100;
    line-height: 1.3;
    color: #000;
    margin-bottom: 20px;
    margin-top: 20px;
}



.product-name-medium {
    font-size: 22px;
    font-weight: 300;
    line-height: 1.1;
}

.product-name-small {
    font-size: 22px;
    font-weight: 100;
    line-height: 1.1;
}

.product-tagline {
    font-weight: normal;
    font-size: 19px;
    color: #595959;
    margin-top: 0;
    line-height: 1.3;
}

.product-price-large {
    font-size: 24px;
    font-weight: 600;
}

    .product-price-large strike {
        font-size: 18px;
        font-weight: 300;
        color: #b3b3b3;
    }

.product-price-medium {
    font-weight: normal;
    display: inline-block;
    font-size: 20px;
    color: #000;
    text-transform: none;
}

    .product-price-medium strike {
        font-size: 14px;
        font-weight: 500;
        color: #b3b3b3;
    }

@media screen and (max-width: 991px) {
    html[lang="it"] .buy-bar .md-button.button-buy {
        padding: 0 10px;
    }
}

@media screen and (max-width: 760px) {
    html[lang="it"] .product-price-medium .price-wrapper.border-left {
        border: none;
    }

    html[lang="it"] .product-price-medium strike {
        display: none !important;
    }
}

@media screen and (max-width: 730px) {
    .product-price-medium .price-wrapper.border-left {
        border: none;
    }

    .product-price-medium strike {
        display: none !important;
    }
}

.product-shipping-info {
    font-size: 10px;
    color: #808080;
    margin-bottom: 35px;
}

.product-hero-container-light .product-price-large {
    margin-top: 35px;
}

.gallery-thumbnail {
    position: relative;
    z-index: 2;
    width: 70%;
    margin-left: auto;
    margin-right: auto;
}

.product-hero-container-centered .gallery-thumbnail {
    margin-left: auto;
    margin-right: auto;
}

.gallery-thumbnail > ul {
    padding: 0;
    list-style: none;
    margin-top: 35px;
    margin-bottom: 60px;
    display: flex;
    justify-content: center;
}

@media screen and (min-width: 768px) {
    .gallery-thumbnail > ul {
        justify-content: flex-start;
    }
}

.gallery-thumbnail li + li {
    margin-left: 10px;
}

.gallery-thumbnail > ul > li {
    color: #f3f3f3;
    padding: 5px;
    display: inline-block;
    margin-top: 10px;
    outline: 1px solid #ccc;
    max-width: calc(33.3333% - 10px);
    max-height: calc(33.3333% - 10px);
}

.gallery-thumbnail img {
    margin: 0 auto;
}

.product-hero-container-dark .product-tagline {
    color: #a6a6a6;
}

.product-hero-container-dark .gallery-thumbnail > ul li {
    outline: 1px solid #595959;
    background: rgba(255, 255, 255, 0.1);
}



#features img.img-responsive,
#features .flex-valign-middle img {
    margin-left: auto;
    margin-right: auto;
}

#features .flex-valign-middle img {
    flex: 0 0 auto;
    object-fit: scale-down;
}

#features, .features-contents {
    font-size: 18px;
    font-weight: 300;
    padding-top: 0;
    /*padding-top: 30px;*/
}

.feature-header {
    /*font-family: ProximaNova-SemiBold, sans-serif;*/
    font-weight: 600;
    font-size: 24px;
    text-transform: uppercase;
    line-height: 1.4;
    letter-spacing: 2px;
    -ms-word-break: break-word;
    word-break: break-word;
    color: #999;
    display: inline-block;
    margin: -120px auto 60px auto;
    padding-top: 120px;
    text-align: center;
}


    .feature-header + p {
        margin-bottom: 80px;
    }

    /* Short underline for feature headers (h3) */
    .feature-header:after {
        background: none repeat scroll 0 0 currentColor;
        bottom: -10px;
        content: "";
        display: block;
        height: 2px;
        position: relative;
        width: 25%;
        margin: 0 auto;
    }

.feature-subheader {
    font-size: 28px;
    font-weight: 100;
    text-transform: none;
    margin-top: 1em;
    line-height: 1.3;
    margin-bottom: 1em;
}

html[lang=ja] .feature-subheader {
    font-weight: 500;
}


[class*="col-sm-4"] .feature-subheader,
[class*="col-md-4"] .feature-subheader,
[class*="col-sm-3"] .feature-subheader,
[class*="col-md-3"] .feature-subheader,
{
    font-size: 24px;
}

[class*="span"] .feature-subheader {
    margin: 30px 0 0.8em 0;
}

.product-info-container {
    position: relative;
}

.product-info-container-light strong,
.product-info-container-light b {
    color: #000;
    font-weight: normal;
}

.product-info-container-dark strong,
.product-info-container-dark b,
.bg-black strong,
.bg-black b {
    color: #fff;
    font-weight: normal;
}

.product-info-container blockquote {
    line-height: 1.6;
    margin: 20px auto 0 auto;
    border: none;
    quotes: "\201C""\201D""\2018""\2019";
    padding: 0;
}

    .product-info-container blockquote:before {
        content: open-quote;
        margin-right: 5px;
    }

    .product-info-container blockquote:after {
        content: close-quote;
        margin-left: 5px;
    }

    .product-info-container blockquote:before, .product-info-container blockquote:after {
        font-family: Georgia, Times;
        color: #ccc;
        line-height: 0.1em;
        vertical-align: -0.4em;
        font-size: 3em;
    }

    .product-info-container blockquote + p.quote-source {
        font-size: 14px;
        text-align: right;
        margin: 1em 0 2em 0;
    }


.product-info-container, .product-info-container p, .product-review-container {
    font-size: 18px;
    font-weight: 100;
    line-height: 1.5;
}

    html[lang=ja] .product-info-container, html[lang=ja] .product-info-container p, html[lang=ja] .product-review-container {
        font-weight: normal;
    }

/*.product-info-container .container:nth-of-type(1) {
    outline: 1px solid red;
}
*/
.product-review-container {
    font-size: 16px;
    color: #666;
}

    .product-review-container :before {
        padding-right: 0;
    }

    .product-review-container .reviews-list {
        margin-bottom: 30px;
    }

    .product-review-container .review-desc-wrapper {
        margin-bottom: 40px;
    }

    .product-review-container .review-desc {
        font-size: 18px;
    }

.review-full-link {
    margin: 12px 25px 0 0;
    text-align: right;
    position: absolute;
    right: 20px;
    bottom: 0;
}

.review-rating {
    text-align: center;
}

    .review-rating .i-heart, .review-rating .i-heart-o {
        font-size: 130%;
        color: #e2e2e2;
        text-shadow: 1px 1px 1px rgba(255,255,255,.3);
    }

    .review-rating .i-heart {
    }

    .review-rating .i-heart-o {
    }

.product-review-container .linkandlogo {
    margin-top: 30px;
    margin-bottom: 10px;
}

.product-info-container-dark {
    color: #b0b0b0;
}

.product-info-container .bg-black,
.product-info-container .bg-grey-8 {
    color: #b0b0b0;
}

.product-info-container-light {
    color: #595959;
}

.product-info-container p {
    margin-bottom: 1.1em;
}


.product-info-container-dark a,
.bg-black a {
    color: #f8f8f8;
}

.product-info-container-dark .feature-header,
.bg-black .feature-header,
.bg-grey-8 .feature-header {
    color: #808080;
}

.product-info-container-dark .feature-subheader,
.bg-black .feature-subheader,
.bg-grey-8 .feature-subheader {
    color: #fff;
}

.product-info-container-light .feature-header {
    color: #808080;
}

.product-info-container-light .feature-subheader {
    color: #000;
}

.spec-subheader {
    font-size: 16px;
    font-weight: normal;
    margin-top: 0;
    margin-bottom: 5px;
    color: #000;
}

.product-info-container-dark .spec-subheader {
    color: #f3f3f3;
    font-size: 18px;
    font-weight: normal;
}

.spec-section-header {
    font-size: 18px;
    font-weight: 700;
    margin-top: 35px;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.product-info-container-dark .spec-section-header {
    color: #f8f8f8;
}

.product-info-container-dark .spec-defn {
    color: #b0b0b0;
    font-size: 18px;
    font-weight: 100;
}

.product-info-container-dark .header-inverted {
    color: #f8f8f8;
    background: #656565;
    font-size: 12px;
    font-weight: 100;
    display: inline-block;
    padding: 3px 10px;
    text-transform: uppercase;
    letter-spacing: 3px;
}

.product-info-container-light .feature-header .product-info-container-light .feature-subheader {
    color: #656565;
}

.product-info-container-light .spec-subheader, .system-req span.feature {
    color: #000;
    font-weight: normal;
}

.system-req span.feature {
    display: block;
    margin-top: 10px;
}

.system-req li:first-child > span {
    margin-top: 0;
}

#package-contents, #warranty-info, #downloads {
    -webkit-column-break-inside: avoid; /* Chrome, Safari, Opera */
    page-break-inside: avoid; /* Firefox */
    break-inside: avoid; /* IE 10+ */
}

#package-contents {
    padding-bottom: 20px;
}

#warranty-info h3 {
    margin-top: 0;
}

.product-info-container-light .spec-defn {
    color: #656565;
    font-size: 18px;
    font-weight: 100;
}

.product-specs-container {
    padding-top: 40px;
    line-height: 1.5;
    font-size: 16px;
    font-weight: 100;
    color: #666;
    background: #fff;
}

html[lang=ja] .product-specs-container {
    font-weight: normal;
}

.product-specs-container .feature-subheader {
    margin-top: 30px;
    font-size: 24px;
    color: #595959;
    text-transform: uppercase;
}

    .product-specs-container .feature-subheader:nth-last-of-type(2) {
        break-before: column;
        -webkit-column-break-before: always;
    }

.product-specs-container .description b, .specs-data strong, .system-req strong, .system-req b {
    color: #000;
    font-size: 16px;
    font-weight: normal;
}

.product-specs-container .description br + b {
    margin-top: 5px;
    display: block;
}

.product-specs-container .spec-item {
    margin-top: 0;
}

    .product-specs-container .spec-item .description > div {
        -webkit-column-break-inside: avoid; /* Chrome, Safari, Opera */
        page-break-inside: avoid; /* Firefox */
        break-inside: avoid; /* IE 10+ */
        /*outline: 1px solid red;*/
        margin-bottom: 5px;
    }

        .product-specs-container .spec-item .description > div:only-child {
            -webkit-column-break-inside: auto; /* Chrome, Safari, Opera */
            page-break-inside: auto; /* Firefox */
            break-inside: auto; /* IE 10+ */
            /*outline: 1px solid green;*/
            margin-bottom: 5px;
        }

    .product-specs-container .spec-item dd {
        padding-left: 0;
        margin-left: 0;
    }

.product-specs-container .container {
    margin-bottom: 40px;
}

.no-column-break {
    -webkit-column-break-inside: avoid; /* Chrome, Safari, Opera */
    page-break-inside: avoid; /* Firefox */
    break-inside: avoid; /* IE 10+ */
}

.product-specs-container ul {
    -webkit-column-break-inside: avoid; /* Chrome, Safari, Opera */
    page-break-inside: avoid; /* Firefox */
    break-inside: avoid; /* IE 10+ */
}

.system-req ul {
    list-style: none;
    padding-left: 0;
}

.system-req-item {
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
    padding-right: 60px;
    overflow: hidden;
    padding-bottom: 20px;
}

.spec-section-header + .spec-subheader {
    margin-top: 5px;
}

#sys-req .feature-subheader {
    margin-top: 0;
}

@media (min-width: 768px) {
    .system-req {
        /*-webkit-columns: 3 auto;
        -moz-columns: 3 auto;
        columns: 3 auto;*/
        padding-left: 15px;
        padding-right: 15px;
        min-height: 100px;
    }

    .specs-col {
        padding-right: 60px;
    }
}

.specs-data .spec-subheader:first-child {
    margin-top: 0;
}

.product-review-container-dark {
    background-color: #212121;
    color: #999;
}

    .product-review-container-dark .review-author {
        color: #f8f8f8;
        font-size: 18px;
        text-transform: uppercase;
    }

.product-review-container {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 30px;
    padding-bottom: 5px;
}

    .product-review-container .author {
        color: #000;
    }

.product-review-container-light {
    background: #f2f2f2;
}

.review {
    padding-right: 30px;
}

.item-rating :before {
    width: .9em;
    font-size: 130%;
    color: #008ad9;
}

.item-rating .i-star-stroke:before {
    color: #e2e2e2;
}

.review .feature-subheader {
    margin: 30px 0 0;
    padding-bottom: 10px;
    font-size: 24px;
    color: #000;
    text-transform: uppercase;
    border-bottom: 1px solid #ddd;
}

.product-faq-container {
    padding-top: 40px;
    padding-bottom: 40px;
    background: #f2f2f2;
}

    .product-faq-container .bg-transparent {
        color: #f3f3f3;
    }

    .product-faq-container p {
        /* color: #f8f8f8; */
    }

.product-faq-container-dark {
    color: #999;
    background: #212121;
    font-weight: 100;
    font-size: 18px;
}

.product-faq-container-light {
}

.product-faq-container #btnSubmit {
    background-color: #808080;
    color: #fff;
}

.product-faq-container .question {
}

.product-faq-container .answer {
    margin-bottom: 20px;
}

    .product-faq-container .answer table {
        font-size: 14px;
    }

.cross-sell {
    margin-bottom: 40px;
}

    .cross-sell .button-wrapper {
        margin: 30px -15px 60px -15px;
        display: -ms-flexbox;
        display: flex;
        justify-content: center;
    }

    .cross-sell a, .cross-sell a:hover, .cross-sell a:active, .cross-sell a:visited {
        color: #4c4c4c;
    }

    .cross-sell .product-name,
    .crosssell-list .product-name,
    .crosssell-list .crosssell-name {
        font-size: 16px;
        font-weight: 100;
        text-align: center;
        margin-top: 20px;
        margin-bottom: 10px;
        color: #000;
    }

    .cross-sell .product-price {
        font-size: 18px;
        font-weight: 600;
        text-align: center;
        margin-top: 5px;
    }

    .cross-sell .btn-learn-more, .btn-buy {
        padding-left: 20px;
        padding-right: 20px;
        height: 40px;
        line-height: 40px;
        font-size: 16px;
        text-align: center;
        display: inline-block;
    }

    .cross-sell .btn-buy {
        display: block;
        float: left;
        text-transform: uppercase;
        color: #fff;
    }

    .cross-sell .btn-learn-more {
        outline: 1px solid #ccc;
        outline-offset: -1px;
        background: #fff;
        color: #4c4c4c;
        margin-right: 20px;
    }

.btn-buy, .btn-buy:hover {
    background: #ce0030;
    color: #fff;
    border: none;
}

h3.product-section-header, .section-header {
    font-size: 18px;
    text-transform: uppercase;
    margin-top: 0;
    /*margin-bottom: 40px;*/
    margin-bottom: 0;
    letter-spacing: 1px;
    color: #999;
    line-height: 2;
}

.section-header {
    /*font-family: ProximaNova-Semibold, sans-serif;*/
    font-weight: 600;
    color: #808080;
    font-size: 16px;
}

.product-info-container-dark .section-header {
    color: #595959;
}


.section-header-wrapper {
    padding-top: 40px;
}

p.fineprint, p.footnote, ul.footnote {
    font-size: 14px;
    line-height: 18px;
}

img + h4 {
    margin-top: 40px !important;
}

.product-info-row {
    margin-top: 60px;
    margin-bottom: 60px;
}

.slick-slider .product-info-row {
    margin-bottom: 0;
    text-align: center;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}

.slides-customization .slick-dots {
    margin: 0 0 60px;
}



.buy-section-container {
    font-size: 14px;
    padding-bottom: 60px;
}

    .buy-section-container .product-section-header {
        color: #999;
    }

.buy-row {
    margin-top: 20px;
    color: #999;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.buy-row-label {
    font-weight: 700;
    color: #111;
}

.swatch {
    width: 26px;
    height: 26px;
    display: inline-block;
    outline: 1px solid #111;
    margin-right: 5px;
}

.accessories-section-container {
    background: #fff;
    padding-top: 40px;
    padding-bottom: 80px;
}

.cross-sell-section-container {
    background: #f3f3f3;
    padding-bottom: 60px;
}

.cross-sell-cell {
    position: relative;
    padding-bottom: 60px;
}

    .cross-sell-cell img {
        max-width: 80%;
        margin: 0 auto;
    }

    .cross-sell-cell > a,
    .cross-sell-cell > a:hover {
        display: block;
        text-decoration: none;
        border: transparent;
        color: #000;
    }

    .cross-sell-cell .product-name {
        margin-bottom: 10px;
        font-size: 16px;
    }

    .cross-sell-cell .product-price {
        color: #595959;
    }


.cross-sell-action {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
}

    /* .cross-sell-action a {
        width: 30%;
    } */

    .cross-sell-action a + a {
        margin-left: 10px;
    }

a.bg-transparent, input.bg-transparent {
    background: transparent;
    color: #212121;
    outline: 1px solid #999;
    outline-offset: -1px;
}

.span12 > img {
    display: block;
    margin: 0 auto;
}

.bg-white h4 {
    color: #000 !important;
}

.bg-white p {
    color: #595959 !important;
}

.one-col-text {
    text-align: center;
}

    .one-col-text p {
        text-align: left;
    }

    .one-col-text h3 {
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }


.filter-blur {
    -webkit-filter: blur(8px);
    filter: blur(8px);
}

img.center-block {
    display: block;
    float: none;
    margin: auto;
}

#features .row > .col-xxs-12 > img,
#features .row > .col-xs-12 > img,
#features .row > .col-sm-12 > img,
#features .row > .col-md-12 > img,
#features .row > .col-lg-12 > img {
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.middle-align {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

.JPModels {
    display: none;
}

html[lang=ja] .JPModels {
    font-size: 12px;
    display: block;
    width: 30%;
}

}
/*================================ End of PAGE CONTENT =================================*/






/*=============================== MEDIA QUERIES ================================*/
/* XXS- */
@media screen and (max-height: 750px) {
    .open-buy-menu .buy-bar {
        position: fixed;
        top: 0;
        z-index: 50 !important;
    }

    .open-buy-menu #buy-menu {
        position: fixed;
        top: 0 !important;
        bottom: 0 !important;
        padding-top: 108px;
        overflow: auto;
        z-index: 49 !important;
        max-height: none;
    }
}


/* XXS- */
@media screen and (max-width: 390px) {
    .toc-menu-toggle {
        font-size: 90%;
    }
}

@media screen and (max-width: 479px) {
    .buy-bar-top { /* for dropdown list. */
        margin-right: -12px;
        margin-left: -30px;
    }

    .toc-menu-toggle {
        padding-left: 10px;
        padding-right: 34px;
    }

        .toc-menu-toggle .icon-down-arrow {
            right: -5px;
        }

    #toc-menu {
        margin-left: -15px;
    }

    /* .open-buy-menu .buy-bar,
    .open-toc-menu .buy-bar {
        position: fixed;
        top: 58px;
        left: 0;
        right: 0;
    } */

    .toc-menu-inner {
        border: none;
        display: block;
        border-radius: 0;
        min-width: 100%;
        width: 100vw;
        bottom: 0;
        -webkit-box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
        box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
    }

        .toc-menu-inner a {
            font-size: 15px;
        }

            .toc-menu-inner a:first-child {
                line-height: 22px;
            }

    #buy-menu .buttons {
        float: none;
    }

    /* Reduce the scrolling. */
    .product-info-container, .product-info-container p, .product-review-container {
        font-size: 16px;
        line-height: 1.2;
    }

        .product-review-container .review-desc {
            font-size: 16px;
        }

    .product-info-row {
        margin-top: 40px;
        margin-bottom: 30px;
    }

    .feature-subheader {
        margin-top: 15px;
        margin-bottom: 0;
    }

    section#features .tech-container img + h4 {
        margin-top: 15px !important;
    }

    #specs .feature-subheader {
        margin-bottom: 1em;
    }

    .product-review-container {
        padding-top: 25px;
        padding-bottom: 1px;
    }

    .product-faq-container md-input-container {
        margin: 0 0 10px;
    }
}


/* XS- */
@media screen and (max-width: 768px) {
    #buy-menu {
        padding-top: 10px;
    }

    .feature-header {
        margin-bottom: 50px;
    }

    #toc-menu > .container > .row > div {
        padding-right: 2px;
    }

    section#features .feature-subheader,
    section#features p {
        text-align: left;
    }

    section#features .row.tech-container > .col-xs-12 > img,
    section#features .tech-container img {
        margin-left: 0;
        margin-right: 0;
    }

    section#features .slides-perfect-audio img {
        margin-bottom: 15px;
    }

    .xs-no-top-margin {
        margin-top: 0 !important;
    }

    .xs-no-bottom-margin {
        margin-bottom: 0 !important;
    }
}


/* SM+ */
@media screen and (min-width: 768px) {

    #toc-menu > .container > .row > div {
        padding: 0;
    }

    .product-hero-container h1,
    .product-hero-container h2,
    .product-hero-container h3 {
        width: 40%;
        text-align: left;
    }

    .product-hero-container-centered h1,
    .product-hero-container-centered h2,
    .product-hero-container-centered h3 {
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        width: 100%;
    }

    .product-hero-container {
        min-height: 620px;
    }

    .hero-wrapper {
        position: absolute;
        top: 0;
        right: 0;
        bottom: auto;
        width: 80%;
        margin-bottom: 0;
    }

        .hero-wrapper > img {
            margin-bottom: 0;
            float: right;
        }

    .gallery-thumbnail {
        width: 25%;
        margin-bottom: 60px;
        margin-left: 0;
        margin-right: 0;
    }

    .one-col-text p {
        text-align: center;
    }

    .product-info-row {
        margin-top: 120px;
        margin-bottom: 120px;
    }

    .breakout > .container-fluid,
    .breakout > .container {
        padding-left: 23px;
        padding-right: 23px;
    }
}


/* MD+ */
@media screen and (min-width: 992px) {
    .product-hero-container h1,
    .product-hero-container h2,
    .product-hero-container h3 {
        width: 30%;
    }

    .product-hero-container {
        min-height: 760px;
    }

    .hero-wrapper {
        width: 80%;
        position: absolute;
        bottom: 0;
        right: 0;
        z-index: 1;
    }

        .hero-wrapper > img {
            float: right;
        }
}


/* LG+ */
@media screen and (min-width: 1200px) {
    .product-hero-container {
        min-height: 840px;
    }
}
/*==============================================================================*/
