/* checkout success coupon message */
.um-checkout-success-container .coupon-words p {
    color: #0e1111 !important;
}

/* disable hover */
.catalog-category-view .products-grid li:hover .actions,
.catalog-category-view .products-grid li:hover .productgaleries,
.catalog-category-view .products-grid li:hover .mass-color {
    display: block !important;
}

body {
    font-family: "Open Sans" !important;
    font-size: 1.4em !important;
    background-color: #ffffff !important;
    line-height: 1.5 !important;
}

.block-static-block.widget,
.block-cms-link.widget {
    margin-bottom: 0 !important;
}

/* ==========================================================================
   Attention Banner Section
   ========================================================================== */
.attention-banner {
    background-color: #2D6278 !important;
    font-size: 1.5em;
    color: #0E1111;
    text-align: center;
    padding: 5px 0;
}

.attention-banner a:link,
.attention-banner a:visited,
.attention-banner a:hover,
.attention-banner a:active {
    color: #0E1111;
}

.attention-nomargin {
    padding: 0;
    margin: 0;
}

.attention-span {
    font-size: 1.1em;
    font-weight: bold;
}

@media only screen and (max-width: 768px) {
    .attention-span {
        font-size: .85em !important;
    }

    .attention-banner {
        display: none !important;
    }
}

/* ==========================================================================
   Header Section
   ========================================================================== */
.page-header {
    border: 0 none;
    margin: 0;
    text-transform: uppercase;
}

.page-header .panel.wrapper {
    background-color: #0E1111 !important;
    border-bottom: 1px solid #000000 !important;
    border-radius: 0 !important;
    margin-bottom: 0 !important;
}

.top-head-links {
    float: left;
}

.top-head-links ul {
    margin: 0;
    padding: 0;
}

.top-head-links ul li {
    display: inline-block;
    list-style: none;
    margin: 0;
    padding: 0 10px;
}

.top-head-links li a,
.top-head-links li a:visited {
    color: #ffffff !important;
}

.top-head-links ul li,
.navigation .level0 > .level-top {
    text-transform: uppercase;
}

.header.links {
    font-weight: 400 !important;
}

.header.panel > .header.links > li > a,
.header.panel > .header.links > li > a:visited {
    color: #fff !important;
    text-decoration: none;
}

.block-search,
.minicart-wrapper {
    margin-top: 8px;
}

.customer-account-login .minicart-wrapper {
    z-index: 9999;
}

.minicart-wrapper .action.showcart::before,
.block-search::before {
    color: #748b35 !important;
    font-size: xx-large !important;
}

.minicart-wrapper .action.showcart .counter.qty {
    background: #748b35 !important;
    color: #fff !important;
    font-size: large !important;
}

.checkout-index-index .nav-sections {
    display: block;
}

.page-wrapper > .breadcrumbs {
    background: #2D6278;
    max-width: none !important;
    width: 100%;
    padding-top: 5px;
    padding-bottom: 5px;
    margin-bottom: 15px;
}

.page-wrapper > .breadcrumbs > ul {
    margin: 0 auto !important;
    max-width: 1280px;
}

.breadcrumbs .items > li {
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
}

.page-wrapper > .breadcrumbs a {
    color: #ffffff !important;
}

div.header.content,
header.page-header {
    background-color: #ffffff !important;
}

.nav-toggle {
    left: 1px !important;
    top: 1px !important;
}

.nav-toggle:before {
    font-size: 32px;
    color: #748b35 !important;
}

.page-main > .page-title-wrapper .page-title {
    margin: 15px 0 !important;
    display: inline-block;
    color: #000000;
    font-size: 20px;
}

/* ==========================================================================
   Footer Section
   ========================================================================== */
.copyright {
    background-color: #000000;
}

div.footer.content {
    padding-top: 0 !important;
}

.footer-indent {
    margin-left: 5%;
    text-align: left;
}

.footer_bg h4 {
    margin-left: 5% !important;
    text-align: left;
}

.footer_bg {
    background: #2D6278 !important;
    color: #ffffff !important;
    font-size: .95em !important;
    padding: 20px 0 !important;
}

.footer_bg a,
.footer_bg a:visited {
    color: #ffffff !important;
}

.social_bg {
    background-color: #ffffff !important;
}

/* ==================================
   CATEGORY PRODUCT BOX
   ================================== */
.cat_prod_box {
    background: #fff;
    box-shadow: 0 0 0 10px #EBECED;
    border: 1px !important;
    padding: 7px !important;
    margin: 0 !important;
    text-align: center;
}

.catalog-category-view .page-wrapper {
    background: #EBECED;
}

.product-item .price-box {
    padding: 5px !important;
    margin: 0 !important;
}

.product-item-description {
    margin: 0 0 20px 0 !important;
    font-size: .8em !important;
    padding: 20px 0 !important;
}

.product-item {
    background: #fff;
    box-shadow: 0 0 0 10px #ffffff !important;
    border: 0 !important;
    padding-left: 10px !important;
    box-sizing: unset !important;
}

.products-grid li.item:hover {
    background: #ffffff !important;
    color: #000000 !important;
}

@media only screen and (max-width: 767px) {
    .products-grid .product-item {
        display: inline-flex;
        width: 100%;
    }
}

.product-item-name,
.product.name a {
    font-weight: bold !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: .95em !important;
    color: #2D6278 !important;
    -webkit-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;
    min-height: 50px !important;
}

.sidebar-main {
    background-color: #ffffff !important;
    color: #000000 !important;
    padding: 5px !important;
}

@media only screen and (min-width: 767px) {
    .sidebar-main a {
        background-color: #ffffff !important;
        color: #000000 !important;
        padding: 0 !important;
    }
}

.sidebar-main a:hover {
    background-color: #ffffff !important;
    color: #000000 !important;
    padding: 0 !important;
}

.filter-value {
    color: #000 !important;
}

.filter-options-content .count {
    color: #ffffff !important;
}

.filter-title strong {
    background-color: #ffffff !important;
}

@media only screen and (max-width: 767px) {
    .toolbar select {
        background-color: #ffffff !important;
    }
}

span.price {
    font-size: 1.25em !important;
    color: #000000 !important;
}

span.price-label {
    font-size: .75em !important;
    padding-right: 5px !important;
    color: #000000 !important;
}

.price {
    text-align: right !important;
}

@media only screen and (min-width: 768px) {
    .page-products .products-grid .product-item {
        margin-left: 1% !important;
        padding: 2px !important;
        width: calc((100% - 6%) / 5) !important;
    }
}

.products-grid .product-item {
    display: inline-flex !important;
    justify-content: center !important;
}

.page-layout-2columns-left .sidebar-main {
    width: 17% !important;
    margin-left: 2% !important;
    margin-bottom: 2% !important;
}

@media only screen and (max-width: 767px) {
    .page-with-filter .columns .sidebar-main {
        -ms-flex-order: 99 !important;
        -webkit-order: 99 !important;
        order: 1 !important;
    }
}

/* ==================================
   INDEX PAGE
   ================================== */
.banner-container {
    width: 100%;
    padding: 25px 0 !important;
    background-color: #FFFFFF !important;
}

.banner-index {
    background-image: url("/pub/media/css-images/banner.jpg");
    padding-bottom: 15px;
    background-size: cover;
    background-repeat: no-repeat;
}

.tag-line {
    color: #2D6278;
    font-weight: bold;
    line-height: 1.1;
    background-color: #ffffff;
    padding: 0;
    margin: 20px 0;
    text-align: center;
    font-size: 1.5em;
}

@media only screen and (max-width: 767px) {
    .tag-line {
        padding: 0;
        margin: 5px 0 !important;
        text-align: center;
        font-size: .80em !important;
    }
}

.filter-title-type-2 {
    display: table;
    width: 100%;
}

.filter-title-type-2 span {
    display: table-cell;
    position: relative;
}

.filter-title-type-2 span.title-line::after {
    border-top: 1px solid #d8d8d8;
    content: "";
    display: block;
    margin-top: 3px;
    position: absolute;
    top: 50%;
    width: 100%;
}

.index-headers1 {
    padding: 0;
    margin: 0;
    text-align: center !important;
    color: #000000 !important;
    font-size: 2em;
}

@media only screen and (max-width: 767px) {
    .index-headers1 {
        font-size: 1em !important;
        padding: 5px 0;
        margin: 0 !important;
    }
}

.index-headers2 {
    padding: 0;
    margin: 0;
    text-align: center !important;
    color: #000000 !important;
    font-size: 1.5em;
}

@media only screen and (max-width: 767px) {
    .index-headers2 {
        font-size: .80em !important;
        padding: 5px 0;
    }
}

.index-headers3 {
    padding: 0;
    margin: 15px 0 0 0 !important;
    text-align: center !important;
    background-color: #F4F4FA;
    color: #000000 !important;
    font-size: 1.5em !important;
}

.index-headers4 {
    padding: 0;
    margin: 0;
    text-align: center;
    font-size: 1.25em !important;
}

.index-box {
    background-color: #ffffff;
    padding: 5px;
    width: fit-content;
    border: 1px solid #d8d8d8;
}

@media only screen and (max-width: 767px) {
    .index-box {
        width: auto;
        border: 1px solid #000000;
    }
}

.index-box-ul {
    line-height: 14px;
    padding-top: 14px;
    min-height: 175px;
}

.featured-industry-index {
    margin: 0 0 25px 0 !important;
    padding: 10px 0 0 0 !important;
    font-size: .95em;
}

.ind-height {
    min-height: 125px;
}

.featured-cat-index {
    margin: 0 75px !important;
    padding: 20px 0 0 0 !important;
    font-size: .95em !important;
}

@media only screen and (max-width: 767px) {
    .featured-cat-index {
        margin: 5px !important;
        padding: 5px !important;
    }
}

.need-help-banner {
    background-image: url("/pub/media/css-images/case-coach-banner.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: 25px !important;
}

.need-help-banner p {
    margin: 15px 25px 15px 55%;
    color: #0e1111 !important;
    text-align: left !important;
    font-size: 14px !important;
}

.need-help-banner h2 {
    color: #2d6178 !important;
    font-weight: bold !important;
    font-size: 16px !important;
    margin: 15px 25px 15px 55%;
}

@media only screen and (max-width: 767px) {
    .need-help-banner {
        background-image: url("/pub/media/css-images/case-coach-banner-mobile.jpg") !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .need-help-banner p {
        margin: 15px !important;
        color: #0e1111 !important;
        text-align: left !important;
        font-size: 16px !important;
    }

    .need-help-banner h2 {
        color: #2d6278 !important;
        font-weight: bold !important;
        font-size: 18px !important;
        margin: 15px !important;
    }
}

.need-help-button-pad {
    padding: 10px 0 0 0 !important;
}

.need-help-button {
    background-color: #ffffff;
    color: #2d6278;
    border: 2px solid #2d6278;
    border-radius: 6px;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 14px;
    cursor: pointer;
    transition-duration: 0.4s;
}

.need-help-button:hover {
    background-color: #2d6278;
    color: #ffffff;
}

.need-help-anvil {
    color: #000000;
    border: 1px solid #2D6278;
    padding: 10px;
    font-size: .80em !important;
    font-weight: bold;
}

.trust-wrapper {
    background-color: #ffffff;
}

.trust-wrapper ul {
    list-style-image: url('/pub/media/trust/bullet-arrow.png');
}

.trust-h3 {
    font-family: "Coranto 2 Headline";
    font-size: 1.5em;
    letter-spacing: 3px;
    text-align: center;
    color: #ffffff;
    background-color: #2D6278;
    padding: 5px 0;
    border-bottom: 2px solid #000000 !important;
}

.design-support-protect-index {
    margin: 5px 20px !important;
    padding: 5px;
    font-size: 1em;
    background-color: #ffffff !important;
}

.design-support-protect-index h2 {
    color: #ffffff !important;
    background-color: #2d6278 !important;
    font-size: 1.5em !important;
    font-weight: bold !important;
    text-align: center;
}

.dsp-border {
    border-right: medium solid #f4f4f4;
}

.design-support-protect-index img {
    float: left;
    padding-right: 10px;
}

.video-promise {
    margin: 5px 20px !important;
    padding: 20px !important;
}

.video-promise-iframe {
    height: 100% !important;
}

.testimonials-index-container {
    margin: 5px 20px !important;
    padding: 20px !important;
    background-color: #ffffff !important;
}

.testimonials-index-column {
    display: flex !important;
    width: 100% !important;
    align-items: stretch !important;
}

.testimonials-index-row {
    flex: 1 !important;
    min-height: 100% !important;
}

.testimonials-index-content {
    flex: 1 !important;
}

.testimonials-index-content p {
    padding: 10px;
    text-align: left;
    background-color: #ebeced !important;
    border: thin solid #2d6178 !important;
    min-height: 90% !important;
}

h3.filter-title-type-2 {
    margin-top: 25px;
}

.homeH2 {
    color: #FFF !important;
}

figcaption {
    color: #FFF !important;
}

.homeHr hr {
    border: 1px solid #cecece !important;
}

a.pagebuilder-button-secondary {
    background-color: #000000 !important;
    color: #FFFFFF !important;
    border: none !important;
}

.homeCompany {
    background-color: #2d6278 !important;
}

.needHelpTitle {
    color: #2d6278 !important;
}

@media only screen and (min-width: 768px) {
    .cjdHomePromos {
        margin-left: 150px !important;
        margin-right: 150px !important;
    }
}

/* ---------------------------------
   CART
   --------------------------------- */
.cart.table-wrapper .cart tbody td,
.cart-summary,
.mark,
mark,
td.amount {
    background-color: #ffffff !important;
}

/* ==================================
   MY ACCOUNT
   ================================== */
.old_order_note {
    font-weight: bold;
    color: #800507;
    display: none !important;
}

/* ---------------------------------
   TESTIMONIALS
   --------------------------------- */
p.testimonials {
    background-color: #ffffff;
    margin: 15px 5%;
    padding: 10px;
}

.contact-headers2 {
    padding: 0;
    margin: 0;
    text-align: center !important;
    color: #000000 !important;
    font-size: 1.5em !important;
}

/* ---------------------------------
   UTILITY
   --------------------------------- */
.center {
    text-align: center;
}

.left {
    text-align: left;
}

.right {
    text-align: right;
}

.float-left {
    float: left;
}

.float-right {
    float: right;
}

.form-col {
    width: 40%;
}

.contact-form-col {
    width: 48%;
}

.contact-input-col,
.form-col-textarea {
    width: 75%;
}

.fieldset > .field,
.fieldset > .fields > .field {
    margin: 0 0 20px;
}

/* ---------------------------------
   HR
   --------------------------------- */
hr {
    clear: both;
    border-bottom: 0;
    border-top: 1px dotted #ccc;
    border-right: 0;
    border-left: 0;
    margin: 20px 0;
    min-height: 0;
    height: 1px;
}

hr.alt1 {
    border-style: solid;
}

hr.alt2 {
    border-style: dashed;
}

/* =================================
   HEADINGS
   ================================ */
h1 {
    font-size: 1.25em !important;
    font-weight: bold !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
    color: #000000;
}

h2 {
    font-size: 1.4em;
    font-weight: bold !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
    color: #000000 !important;
}

h3 {
    font-size: 1.25em !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

h4 {
    font-size: 1em !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

h5 {
    font-size: 1em !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

h6 {
    font-size: .75em !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

ul > li,
ol > li {
    margin-top: 0;
    margin-bottom: 5px !important;
}

.col {
    width: auto !important;
}

.title {
    font-size: 22px;
    font-weight: 700;
    text-align: left;
    color: #2d6278 !important;
}

/* Mobile phone CTA */
@media (min-width: 768px) {
    .teleNum {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .teleNum {
        background: #000 !important;
        border: 1px solid #ebeced !important;
        color: #fff !important;
        text-decoration: none;
        position: fixed;
        width: 100%;
        text-align: center;
        top: 0 !important;
        bottom: auto !important;
        z-index: 2 !important;
        font-size: 2em !important;
    }
}

/* =================================
   Interior Option / Custom Buttons
   ================================ */
.cjdOptionOn {
    background: #2D6278 !important;
    color: #ffffff !important;
    padding: 10px 10px !important;
    text-align: center !important;
    display: inline-block !important;
    font-size: 14px !important;
    border-radius: 6px !important;
    transition-duration: 0.4s !important;
    min-width: auto !important;
}

.cjdOptionOn:hover,
.cjdOptionOn:active,
.cjdOptionOn:visited {
    background: #2D6278 !important;
    color: #ffffff !important;
    text-decoration: none;
}

.cjdOptionOff {
    background: #000 !important;
    color: #fff !important;
    padding: 10px 10px !important;
    text-align: center !important;
    display: inline-block !important;
    font-size: 14px !important;
    border-radius: 6px !important;
    transition-duration: 0.4s !important;
    min-width: auto !important;
    margin: 5px !important;
}

.cjdOptionOff:hover,
.cjdOptionOff:active,
.cjdOptionOff:visited {
    background: #000 !important;
    color: #fff !important;
    text-decoration: none;
}

.resultContainer {
    margin-left: 20%;
}

.cjdNumber {
    width: 4em !important;
}

@media only screen and (min-width: 767px) {
    .resultBG {
        background: #fff;
        box-shadow: 0 0 0 10px #F4F4FA;
        border: 0 !important;
        margin: 0;
        padding: 5px;
        max-width: 22%;
    }
}

@media only screen and (max-width: 767px) {
    .resultBG {
        background: #fff;
        box-shadow: 0 0 0 10px #F4F4FA;
        border-top: 1px solid #000000;
        border-left: 1px solid #000000;
    }
}

.cjdFieldset {
    display: block !important;
    margin-inline-start: 2px !important;
    margin-inline-end: 2px !important;
    padding-block-start: 0.35em !important;
    padding-inline-start: 0.75em !important;
    padding-inline-end: 0.75em !important;
    padding-block-end: 0.625em !important;
    min-inline-size: min-content !important;
    border-width: 2px !important;
    border-style: groove !important;
    border-color: threedface !important;
    border-image: initial !important;
}

.cjdLegend {
    width: auto !important;
}

/* Blog/content helpers */
.post-content img {
    float: left !important;
}

.post-content .post-description .post-ftimg-hld img {
    width: auto !important;
    padding: 5px;
    margin: 0;
}

/* Generic custom buttons */
.cjdBtn {
    background: #2d6278;
    color: #ffffff;
    padding: 15px;
    text-align: center;
    display: inline-block;
    font-size: 14px;
    border-radius: 6px;
    transition-duration: 0.4s;
    min-width: 190px;
}

.cjdBtn:hover {
    padding: 15px;
    text-align: center;
    display: inline-block;
    font-size: 14px;
    border-radius: 6px;
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2), 0 3px 10px 0 rgba(0,0,0,0.19);
}

.cjdBtn a {
    color: #ffffff !important;
}

.cjdBtn a:hover,
.cjdBtn a:active {
    color: #2d8ba6 !important;
}

.cjd_button {
    background: #000;
    border: none;
    color: #fff;
    font-weight: 600;
    margin: 5px 0 !important;
    padding: 5px;
    font-size: 1.4rem;
    line-height: 1.6rem;
    box-sizing: border-box;
    vertical-align: middle;
}

.cjd_button a,
.cjd_button a:hover {
    background: #000;
    border: none;
    color: #fff;
    font-weight: 600;
    margin: 0;
    padding: 14px 17px !important;
    font-size: 1.4rem;
    line-height: 1.6rem;
    box-sizing: border-box;
    vertical-align: middle;
}

.cjd_button button:hover,
.cjd_button button:focus,
.cjd_button button:active {
    background: #000;
    border: none;
    color: #fff;
}

.cjd_button2 {
    background: #fff !important;
    border: none !important;
    color: #000 !important;
    font-weight: bold !important;
    margin: 0 0 4px 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

.cjd_button3 {
    background: #000000 !important;
    border: none !important;
    color: #FFFFFF !important;
    font-weight: bold !important;
    text-align: center !important;
    width: 100% !important;
    padding: 9px 0 !important;
    font-size: 1.8rem !important;
}

.cjdNumBox {
    font-size: 12px !important;
    padding: 2px !important;
    text-align: center !important;
}

.brandPadding {
    padding-top: 50px !important;
}

.mgt-hint {
    bottom: 0 !important;
}

/* Checkout */
.abs-checkout-title,
.opc-wrapper .step-title,
.opc-block-shipping-information .shipping-information-title,
.opc-block-summary > .title,
.checkout-agreements-items .checkout-agreements-item-title {
    padding-bottom: 10px;
    color: #fff;
    background-color: #2D6278 !important;
    font-weight: 500;
    font-size: 2.6rem;
    padding-left: 20px;
}

.opc-wrapper .shipping-address-item.selected-item {
    border-color: #748635 !important;
}

.opc-wrapper .shipping-address-item.selected-item:after {
    background: #748635 !important;
    color: #fff;
}

.opc-progress-bar-item._active > span:after {
    border-color: #000000 !important;
    content: '\e610';
    font-family: 'luma-icons';
}

.opc-progress-bar-item._active:before,
.opc-progress-bar-item._active > span:before {
    background: #748635 !important;
    border-color: #748635 !important;
}

.opc-wrapper .create-account-block {
    margin-bottom: 20px;
    display: none !important;
}

/* Misc */
.cjdPhoneNumbers {
    font-size: 2em;
    color: #FFFFFF;
    font-weight: bold;
}

.cjdPhoneNumbers a {
    color: #fff !important;
}

.nav-sections {
    margin-bottom: 0 !important;
}

.sidebar .control {
    text-align: center !important;
}

.fieldset > .field .field.choice,
.fieldset > .fields > .field .field.choice {
    margin-bottom: 10px;
    text-align: left;
}

.sidebar-main hr {
    border-style: solid !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
}

.sidebar-main ul,
.cjd_footer_help ul {
    list-style-image: url("/pub/media/wysiwyg/sidebar-arrow.png");
}

h3.cjd-help-line,
.sidebar-main h3 {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.amreview-rating-label {
    font-size: 14px !important;
    font-weight: bold !important;
    margin: 0 5px 5px 0 !important;
}

.page-layout-1column .block.widget .products-grid .product-item:nth-child(4n+1) {
    margin-left: 0 !important;
}

.logged-in,
.not-logged-in {
    display: none !important;
}

.panel .header {
    padding: 0 !important;
}

.cjd-admin-block {
    width: 50% !important;
    height: 50% !important;
}

ul.cjdulProd {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

ul.cjdulProd li {
    display: flex;
    align-items: flex-start;
    margin-bottom: 0.5em;
}

ul.cjdulProd li::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-right: 0.5em;
    flex-shrink: 0;
    background-image: url("/pub/media/icons/checkmark.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* PDP-specific rules moved to _pdp.less / _extend.less */