/**************************
#GENERAL - START
**************************/
body .slick-slider {
    margin-bottom: 0;
}
h1, h2, h3, h4, h5, h6, 
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-weight: 700;
}
.hidden { display: none; }
body,
.product-listing .hic-title h3,
label,
.woocommerce-cart-form .product-name a,
.woocommerce-checkout .product-name,
.woocommerce-page .woocommerce table.shop_table th,
.footer a {
    color: #58595B;
}
.product-listing .hic-title a:not(.button):hover {
    text-decoration: none;
}
.product-price,
.product-listing .product.on-sale .hic-box:before,
.product-category-listing .hic-blurb,
.button,
.widget-post-title,
.sidebar .product-filter .main-term-title,
.accordion-title,
.tabs-title>a,
.woocommerce-cart-form {
    font-family: 'Montserrat', sans-serif;
}
.default-section:not(.has-bg-img) .section-title,
.light-section .section-title,
.product-price,
.product-listing .hic-box .button,
.product-category-listing .hic-title,
.product-category-listing .hic-blurb,
.secondary-sidebar .widgettitle,
.product-name,
.woocommerce-cart-form .product-name a:hover,
.cart_totals h2,
.woocommerce-checkout h3,
.product-listing .hic-title a:hover h3,
.modal-element h1,
.cart-active .shopping-cart-widget .shopping-cart i,
.woocommerce-order h2 {
    color: #1a7fb7;
}
.sidebar .widgettitle,
.section-title,
.cart_totals h2,
.woocommerce-checkout h3,
.modal-element h1,
.woocommerce-order h2 {
    text-transform: uppercase;
}
.section-title { 
    margin-bottom: 0;
}
.woocommerce form .form-row label {
    font-weight: 700;
}
body .section-title span {     
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0;
    text-transform: none;
 }
 
 .page-element [data-item-col="medium-6 large-4"] .hic-title h3, 
 .page-element [data-item-col="medium-4 large-2"] .hic-title h3 {
    font-size: 14px;
    text-transform: none;
 }

.page-element.image-above-content.box-equal-height .hic-content {
    position: relative;
    padding-bottom: 84px;
	min-height: 220px;
}
.page-element.image-above-content.box-equal-height .hic-box .hic-button-wrap {
    bottom: 0; 
    left: 0;
    right: 0;
    margin: auto;  
    position: absolute;   
}
.product-listing .hic-box .button:hover {
    background-color: #297fb7;
    color: #FFF;
}
.cta-element.page-element.has-bg-img .button {
    background-color: #4dafea;
}
.cta-element.page-element.has-bg-img .button:hover {
     background-color: #4c606c;
}
.sidebar .widgettitle {
    font-size: 22px;
    line-height: 1;
}
.secondary-sidebar .widgettitle {
    border-bottom: 2px solid #297fb7;
    padding-bottom: 6px;
}
.listing-element .pager-column .page-numbers {
    font-size: 12px;
    font-weight: 700;
    min-width: 30px;
}
.listing-element .pager-column {
    margin-top: 24px;
}
.listing-element .pager-column .page-numbers.current {
    background-color: #297fb7;
}
.listing-element .pager-column .page-numbers:hover {
        background-color: #297fb7;
    color: #FFF;
    text-decoration: none;
}
.page-element .slick-dots li button:before,
.page-element .slick-dots li button,
.page-element .slick-dots li {
   width: 12px;
    height: 12px;
}
.page-element .slick-dots li {
    margin: 0px 7px;
}
.page-element .slick-dots li button:before {
    font-size: 0;
    background-color: #297fb7;
    transition: all .25s ease-in-out;
}


body .show-slider-dots .slick-slider {
    margin-bottom: 50px;
}
tbody tr:nth-child(2n) {
    background-color: #FFF;
}
.modal-element .input-group {
    height: 50px;
}


.modal-element {
    border-radius: 0;
}
input[type]:focus,
textarea:focus {
    box-shadow: none;
}

.shopping-cart-widget .shopping-cart i {
    font-size: 18px;
}
.cart-active .shopping-cart-widget .shopping-cart i {
    font-size: 20px;
}
.cart-active .shopping-cart-widget .cart-item-count {
    top: 0;
    right: -3px;
    background-color: #297fb7;
    color: #FFFF;
    height: 16px;
    width: 16px;
    padding-top: 1px;
}

.shopping-cart-widget .circle-r {
    width: auto;
}

.shopping-cart-widget span.cart-item-count {
    background-color: #fff;
    color: #297fb7;
    border-radius: 10px;
    height: 13px;
    width: 13px;
    font-size: 9px;
    padding-top: 0px;
    font-weight: 700;
    font-family: 'Montserrat', sans-serif;
    right: 29px;
    top: 0px;
}
body:not(.cart-active) .cart-contents:after {
    content: 'Cart';
    text-transform: uppercase;
}
.top-header .cell:nth-child(2) .text p {
    display: none;
}
.top-header .cell:nth-child(2) .text {
    display: flex;
}
.shopping-cart-widget {
    top: 3px;
}

.slider { display: none; }
.slider.slick-initialized { display: block; }

.accordion-control:after {
    font-size: 18px;    
}
.accordion-js .accordion-control {
    top: 1px;
}
.sidebar ul li a {
    padding: 8px 16px 8px 0;
}
.widget-category-filter .accordion-js.active > .accordion-control:after {
    transform: rotate(-180deg);
    display: block;
}
@media(min-width: 641px) {
    body:not(.cart-active) .cart-contents:after {
        font-size: 12px;
        font-weight: 700;
        margin-top: 4px;
    }
    .modal-element .input-group input {
        height: 100%;
        margin-bottom: 0;
    }
}
 @media(min-width: 1024px) {
     
     body:not(.cart-active) .cart-contents:after {
        margin-left: 7px; 
     }
     
     .grid-x>.large-2_4 {
        width: 20%;
     }

    .page-element .slick-dots {
        bottom: -65px;
    }

    .section-header {
        margin-bottom: 40px;
    }
    .cta-element .section-header {
        margin-bottom: 12px;
    }
    .section-title {
        font-size: 38px;
    }
    body .section-title span { 
        font-size: 25px;
    }
    .carousel .cell.large-2 {
        padding-left: 7.5px;
        padding-right: 7.5px;
    }
    .cta-element .cta-blurb {
        font-size: 22px;
    }
    .footer-button-align-left .section-footer {
        position: absolute;
        bottom: 180px;
        margin-top: 0;
    }
    .header-left .section-header, 
    .footer-left .section-footer {
        width: 20%;
    }
    .header-left .section-body {
        width: 80%;
    }
    .page-element.about .hic-blurb h4 { margin-bottom: 24px; }
    .modal-element h1 {
        font-size: 32px;
    }
 }


/**************************
#GENERAL - END
**************************/

.grid .section-body {
    justify-content: center;
}

.content-box-element .hic-button-wrap {
    margin-top: 16px;
}
.about .hic-image {
    height: 100%;
}
/**************************
BUTTON - START
**************************/
.button {
    min-width: 160px;    
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 700;
}
.button,
.woocommerce button.button,
.woocommerce a.button {
    border-radius: 0;
}
@media(min-width: 1024px) {
    .button,
    .woocommerce a.button,
    .woocommerce button.button {
        font-size: 16px;
    }
}
/**************************
BUTTON - END
**************************/

/**************************
#HEADER - START
**************************/
.header {
    box-shadow: 0 2px 4px rgba(10,0,0,.15);
}

/* TOP HEADER - START */
.header-default .header .top-header, .header-light .header .top-header {
    background-color: #1a7fb7;
    color: #fff;
}

.header-default .header .top-header a, .header-light .header .top-header a {
    color: #fff !important;
}

.header-default .header .top-header a:hover, .header-light .header .top-header a:hover,
.header-default .header .top-header a:focus, .header-light .header .top-header a:focus,
.page-cart:not(.cart-active) .shopping-cart a
 {
    color: #64ccf1 !important;
}
.page-cart:not(.cart-active) .shopping-cart-widget span.cart-item-count,
.cart-contents:hover .cart-item-count,
.cart-contents:focus .cart-item-count{
    background-color: #64ccf1 !important;
}


.top-header .grid-x {
    align-items: center;
}



.header .top-header ul li:not(:last-child) {
    margin-right: 1rem;
    padding-right: 1rem;
    border-right: 0 !important;
}

.header .top-header .menu a{
    padding-left: 0;
    padding-right: 0;
}

.top-header .menu li.active a,
.top-header .menu li a:hover,
.top-header .menu li a:focus{
    color: #64ccf1 !important;
}
.off-canvas .menu a {
    font-weight: 700;
}

@media (min-width: 641px) and (max-width: 767px) {
    .menu-icon {
        margin-top: 8px;
        margin-left: 16px;
    }   
    .header.has-woo-cart .shopping-cart-widget {
        margin-left: 0;
    }
    .shopping-cart-widget span.cart-item-count {
        right: 6px;
        top: -6px;
        padding-top: 1px;
        background-color: #1a7fb7;
        color: #ffffff;
    }
}

@media (max-width: 640px){
    .contact-info span {
        display: none;
    }
    
    .top-header .contact-info i, .top-header .top-menu a::before {
        font-size: 22px;
    }
    
    .top-header .cell:first-child {
        display: none;
    }
    
    .top-header .cell:last-child {
        width: 100% !important;
    }
    
    .top-header .menu {
        display: flex;
        justify-content: space-between;
    }
    
    .top-header .menu a {
        padding-top: 3px;
        padding-bottom: 3px;
    }
    
    .top-header .top-menu a{
        font-size: 10px !important;
    }
    .header .top-header ul li:not(:last-child) {
        margin-right: .5rem;
        padding-right: .5rem;
        border-right: 0 !important;
    }
    
    .top-header .grid-x > .cell {
        width: auto;
    }
    .top-header .grid-x {
        justify-content: space-between;
    }
    
    .top-header .cell:nth-child(2) .text {
        justify-content: space-between;
    }
    .top-header .cell:nth-child(2) .menu {
        width: calc(50% + 37px);
    }
    .shopping-cart-widget {
        margin-right: 4px;
    }
    
    body:not(.cart-active) .top-header .cart-contents {
        display: block;
    }
    
    body:not(.cart-active) .shopping-cart-widget .circle-r {
        height: 28px;
    }
    body:not(.cart-active) .top-header a.cart-contents:after {
        font-size: 10px;
        margin-left: 0;
        font-weight: 700;
        margin-top: -2px;
        display: block;
        line-height: 1;
    }
    body:not(.cart-active) .shopping-cart-widget span.cart-item-count {
        right: -8px;
    }
}

@media (min-width: 641px){
    .top-header .contact-info i {
        margin-right: 6px;
    }
}

@media (min-width: 641px) and (max-width: 1023px){
    .top-header.two-column .cell:last-child{
        display: none;
    }
    
    .top-header .cell {
        width: 100%;
    }
}
@media (max-width: 1023px){
 .top-header .menu-item.with-icon a:before {
        margin-bottom: 4px;
    }
}

@media (min-width: 1024px){
    .top-header .contact-info i{
        font-size: 18px;
    }
    .top-header .contact-info li > * {
        padding-top: .7rem;
        padding-bottom: .7rem;
    }
    .header .top-header {
        padding: 0;
    }
    .header.has-woo-cart .shopping-cart-widget {
        padding-left: 16px;
    }
}
/* TOP HEADER - END */

/* TOP BAR - START */
.header .topbar-inner {
    display: flex;
}

.header .menu a {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 16px;
}

.menu-icon {
    width: 36px;
    height: 26px;
}

.menu-icon:after {
    background: #1a7fb7 !important;
    box-shadow: 0 10px 0 #1a7fb7, 0 20px 0 #1a7fb7 !important;
    height: 4px;
}



@media (max-width: 640px){
    .header .top-bar .top-bar-left, .header .top-bar .top-bar-right {
        width: auto;
        flex: 1 1 100%;
    }
    
    .header .top-bar ul {
        justify-content: flex-end;
    }
    .top-bar-right .menu.top .elem:first-child{
        display: none;
    }
}



@media (max-width: 1023px){
    .header .topbar-inner {
        align-items: center;
    }
    
 

    .top-bar-right .menu.top a::before {
        font-size: 26px;
    }
    .top-bar-right .menu.top a {
        font-size: 12px;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    
    .header .menu.top li.active a, .header .menu.top li a:hover, .header .menu.top li a:focus{
        color: #64ccf1 !important;
    }
    
    .top-bar-right .menu.top a,
    .top-header .top-menu a{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
}

@media (min-width: 1024px){
    .header .topbar-inner {
        align-items: flex-end;
    }
    
    .header .top-bar .menu a {
        color: #58595B;
    }
    
    .header .top-bar .menu .menu-button > a{
        color: #fff !important;
    }
    
    .header .menu .is-dropdown-submenu li.active a,
    .header .menu .is-dropdown-submenu li a:hover{
        color: #fff !important;
    }
}
/* TOP BAR - END */
/**************************
#HEADER - END
**************************/

/**************************
#HERO - START
**************************/
body:not(.home) .hero.default-alignment {
    text-align: center;
}


.hero .hero-carousel-type .hero-banner-message{
    max-width: 580px;
    margin: auto;
}

.hero::before, .hero::after {
    position: absolute;
    top: 0;
    bottom: 0;
    content: '';
    width: 50%;
    opacity: 1;
    background-color: rgba(26, 127, 183, .5);
    transform: skewX(-26deg);
    z-index: 1;
}

.hero::before {
    left: auto;
    right: 100%;
    border-right: 10px solid #fff;
}

.hero::after {
    left: 100%;
    right: auto;
    border-left: 10px solid #fff;
}

@media (min-width: 641px) and (max-width: 767px) {
    .hero.tall-banner {
        min-height: 500px;
    }
    .hero .article-header h1, 
    .hero .hero-banner-message h1, 
    .hero .hero-banner-message h2.h1 {
        font-size: 34px;
    }
    .hero .hero-banner-message p {
        font-size: 18px;
    }
    .top-header .contact-info { text-align: center; }
}
@media(max-width: 640px){
    .home .hero.tall-banner {
        min-height: 500px;
    }
    .hero .hero-banner-message p {
        font-size: 18px;
    }
    .hero::before {
        right: 108%;
    }
    .hero::after {
        left: 112%;
    }
    .hero .article-header h1, .hero .hero-banner-message h1, .hero .hero-banner-message h2.h1 {
        font-size: 36px;
    }
}
@media(min-width: 1024px){
    .hero .hero-carousel-type .hero-banner-message{
        max-width: 800px;
        margin: auto;
    }
    .hero .hero-banner-message p{
        font-size: 24px;
    }
    
    .hero::before {
        right: calc((100vw - 1024px) / 2 + 1024px);
    }
    
    .hero::after {
        left: 100%;
    }
}

@media(min-width: 1170px){
    .hero::before {
        right: calc((100vw - 1170px) / 2 + 1170px);
    }
}
/**************************
HERO - END
**************************/

/**************************
#ABOUT - END
**************************/
@media(max-width: 640px) {
    .page-element.about .section-footer {
        margin-top: 0;
    }
    .page-element.about .hic-content {
        text-align: center;
    }
}
@media(min-width: 1024px) {
    .page-element.about .hic-blurb {
        padding-bottom: 50px;
    }
}
/**************************
#ABOUT - END
**************************/

/**************************
PAGE ELEMENT - START
**************************/
.page-element.has-bg-img .bg-float:before {
    background: rgba(26, 127, 183, .85);
}
.page-element a:not(.button):hover {
    text-decoration: underline;
}

.section-title span {
    font-size: 18px;
    letter-spacing: 1px;
    font-style: italic;
}

.hic-title h3,
.article-header h3{
    font-size: 1.5rem;
    text-transform: uppercase;
    font-style: italic;
    margin-bottom: .5em;
}

.image-left-content .hic-content:only-child {
    width: 100%;
}
/**************************
PAGE ELEMENT - END
**************************/

.map-form-element.has-bg-img .button {
    background-color: #fff;
    color: #000;
}

.has-bg-img [type=text], .has-bg-img [type=email], .has-bg-img textarea {
    background-color: transparent;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    margin-bottom: .5rem;
    color: #FFFFFF;
}

/* Contact layout 1 - Start */
.contact-layout-1 .sub-map iframe {
    width: 100%;
    display: block;
}

.contact-layout-1 .sub-page-map {
    margin-top: 20px;
}

.contact-layout-1 .sub-map p {
    margin: 0;
}
.page-element.map-form-element.has-bg-img a {
    color: #FFF;
}

/* Contact Layout 1 - End */


/**************************
BLOG - START
**************************/
.white-boxes.image-left-content .cell:not(:last-child) .hic-box.article-inner {
    margin-bottom: 30px;
}
/**************************
BLOG - END
**************************/

/**************************
WOOCOMMERCE - START
**************************/
.woocommerce a.button{
    background-color: #1a7fb7;
}

.woocommerce a.button:hover{
    background-color: #4dafea;
}

.woocommerce-MyAccount-navigation ul li a:before {content: "\f105";
font-family: 'Font Awesome 5 Pro'; font-size: 12px; font-weight: 600; margin-right: 5px;}

.woocommerce-MyAccount-content .woocommerce-Address address {font-style: normal;}

.shopping-cart-widget .fas {top: 2px;}
.element-social-media .hic-icon {line-height: 120px;}
.woocommerce table.my_account_orders .woocommerce-orders-table__cell-order-actions a.button::after {display: none;}
.woocommerce table.my_account_orders .woocommerce-orders-table__cell-order-actions a.button {padding: 10px; margin-right: 5px; min-width: 80px;}
/**************************
WOOCOMMERCE - END
**************************/

/**************************
HELPER - START
**************************/
/*.menu-item.cart-icon a::before,*/
/*.menu-item.account-icon a::before,*/
/*.menu-item.checkout-icon a::before,*/
/*.menu-item.shop-icon a::before*/

.menu-item.with-icon a:before {
    font-family: 'Font Awesome 5 Pro';
    font-weight: 600;
    background-color: transparent !important;
}
.menu-item.nav-account a:before {
    content: '\f007';
}
.menu-item.cart-icon a:before {
    content: '\f07a';
}
.menu-item.shop-icon a:before {
    content: '\f54e';
}
.menu-item.checkout-icon a:before {
    content: '\f09d';
}
.menu-item.search-products a:before {
    content: '\f002';
}

.white-boxes .hic-box{
    border: 1px solid #ddd;
    border-radius: 6px;
}

.white-boxes.image-left-content .hic-box {
    border-top: 10px solid #1a7fb7;
}

.white-boxes .hic-icon {
    color: #1a7fb7;
}

.circle-icon .hic-icon i {
    color: #fff;
    background-color: #1a7fb7;
    border-radius: 50%;
    width: 100px;
    height: 100px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 60px;
}

.icon-above-content.circle-icon .hic-icon{
    margin-bottom: 16px;
}

.wave-icon-boxes .hic-box {
    background-color: #fff;
    border: 1px solid #1a7fb7;
    border-radius: 12px;
    padding: 6px;
    height: auto;
    position: relative;
}

.wave-icon-boxes .hic-box .hic-content {
   padding: 15px;
    background-color: #1a7fb7;
    border-radius: 8px;
    overflow: hidden;
    position: absolute;
    top: 6px;
    left: 6px;
    right: 6px;
    bottom: 6px;
    transition: color .5s ease-in-out;
}

.wave-icon-boxes .hic-box:hover .hic-content {
    color: #fff;
}

.wave-icon-boxes .hic-box::before {
    content: '';
    display: block;
    padding-top: 90%;
    width: 100%;
    height: auto;
}

.wave-icon-boxes .hic-box:hover .hic-content::before, 
.wave-icon-boxes .hic-box:hover .hic-content::after {
    top: -50%;
}

.wave-icon-boxes .hic-box .hic-content::before, 
.wave-icon-boxes .hic-box .hic-content::after {
    content: "";
    position: absolute;
    width: 200%;
    height: 200%;
    top: 35%;
    left: 50%;
    transition: top .5s ease-in-out;
}

.wave-icon-boxes .hic-box .hic-content::before {
    background-color: rgba(255, 255, 255, .4);
    border-radius: 45%;
    transform: translate(-50%, -70%) rotate(0);
    animation: rotate 6s linear infinite;
    z-index: 1;
}

.wave-icon-boxes .hic-box .hic-content::after {
    border-radius: 47%;
    background-color: rgba(255, 255, 255, .9);
    transform: translate(-50%, -70%) rotate(0);
    animation: rotate 10s linear -5s infinite;
    z-index: 2;
}

.wave-icon-boxes .hic-box .hic-content > * {
    position: relative;
    z-index: 3;
}

@keyframes rotate {
    50% {
        transform: translate(-50%, -73%) rotate(180deg);
    } 100% {
        transform: translate(-50%, -70%) rotate(360deg);
    }
}

@media (min-width: 641px){
    .white-boxes.image-left-content .hic-image-container {
        padding: 15px;
    }
}

@media (max-width: 1023px){
    .menu-item.cart-icon a::before,
    .menu-item.account-icon a::before,
    .menu-item.checkout-icon a::before,
    .menu-item.shop-icon a::before{
        margin-bottom: 12px;
    }
}
@media (min-width: 1024px){
    .menu-item.with-icon a::before {
        font-size: 18px;
        margin-right: 6px;
    }
}
/**************************
HELPER - END
**************************/
/**************************
#SIDEBAR - START
**************************/
.primary-sidebar .custom-mobile-menu {
    font-size: 0;
}
.primary-sidebar .custom-mobile-menu:before {
    content: 'Search Filters';
    font-size: 16px;
}

.single-product .widget-attribute-filter,
.cpt-archive .widget-attribute-filter{
    display: none;
}
.sidebar a {
    color: #1B1B1B;
}
.sidebar a:hover {
    color: #1a7fb7;
}

.sidebar .widget > .menu {
    border: 1px solid #e6e6e6; 
    border-top: 0;
    padding: 10px 15px;
}
.attribute-filter .group-button {
    text-align: center;
    margin-top: 16px;
}
.sidebar .search-form button[type="submit"] {
    min-width: 40px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    margin-bottom: 0;
}
.sidebar .search-form .button-group { height: 45px; }
.sidebar .search-form input { height: 100%; }

.widget-post-title {
    margin-bottom: 4px;
}
.sidebar .menu li a,
.sidebar .product-filter label,
.widget-post-title {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
}

.sidebar .product-listing .product-price { font-size: 14px; }

.sidebar .search-form input {
    background-color: #f2f2f2;
    border: none;
    font-size: 14px;
}
.primary-sidebar .widgettitle {
    background-color: #297fb7;
    color: #FFF;
    padding: 14px 16px;
    margin-bottom: 0;
}
.sidebar .product-filter .widgettitle:before {
    content: '\f03a';
    font-family: 'Font Awesome 5 Pro';
    margin-right: 16px;
}


@media(min-width: 1024px) {
    .default-width .has-sidebar-both .sidebar {
        width: 270px;
    }
    .default-width .has-sidebar-both .main-content {
        width: calc(100% - 540px);
    }

    .secondary-sidebar .widget li {
        background-color: #F2F2F2;
        border-bottom: none;
        margin-bottom: 4px;
        padding: 12px;
    }
}

/**************************
#SIDEBAR - END
**************************/
/**************************
#PRODUCT LISTING - START
**************************/
.product-listing .product.on-sale .hic-box:before {
    background-image: url(../images/on-sale-ribbon.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: 'On Sale!';
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100px;
    padding: 7px 8px; 
    color: white;
    font-weight: 700;
    font-size: 14px;
    line-height: 1;
    text-align: left;
    text-transform: uppercase;
}
.product-listing .product.outofstock .add_to_cart_button {
    display: none;
}
.product-listing .add_to_cart_button {
    margin-bottom: 5px;
}
.product-listing .product.product-variable .hic-button-wrap:before,
.product-listing .product.outofstock .hic-button-wrap:before{
    font-size: 12px;
    line-height: 46px;
    display: block;
    text-transform: uppercase;
    font-weight: 700;
}
.product-listing .product.product-variable:not(.outofstock) .hic-button-wrap:before {
    content: 'Options Available';
}
.product-listing .product.outofstock .hic-button-wrap:before {
    content: 'Out of Stock';
    color: #ff4545;
}
.product-listing .product-variable .product-price:before {
    font-weight: 500;
    font-style: italic;
    content: 'from';
    font-size: 14px;
}
	
 .product-price, .price {  
	 font-weight: 700; 
	 font-size: 28px; 
	 font-family: 'Montserrat', sans-serif;
}

.single-product .hic-description .price{
	font-size: 28px !important; 
	font-family: 'Montserrat', sans-serif !important;
}
.single-product .hic-description .price del{
	margin-right: 8px;
}
.single-product .hic-description .price ins{
	color: #1a7fb7;
}

 .product-listing .product-price {
     margin-bottom: 8px;
 }

.product-price del, .price del {
     color: #b6b6b6;
}
.cpt-archive .product-listing.image-above-content.default-alignment .hic-box { height: 100%; }

.product-listing.image-above-content.default-section .hic-box,
.product-listing.image-above-content.light-section .hic-box {
    background-color: #F2F2F2;
}
.product-listing .hic-box {
    padding: 8px;
}

.product-listing.image-above-content .hic-image {
    margin-bottom: 14px;
}

.product-listing .hic-box .button {
    background-color: transparent;
    border: 1px solid #297fb7;
    border-radius: 0;
    text-transform: uppercase;
    font-size: 13px;    
    margin-top: 2px;
    margin-bottom: 6px;
    font-weight: 700;
}

.product-category-listing .hic-blurb {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 13px;    
}
.product-category-listing .hic-title h3 { font-weight: 700; }
.product-category-listing .hic-box {
    border: none;
    border-radius: 0;
}

.product-listing .button span.cart-item-count {
    background-color: #297fb7;
    color: #FFF;
}

.product-listing .add_to_cart_button.added {
    margin-bottom: 0;
}

.added_to_cart {
   font-size: 12px;
    font-weight: 700; 
}

.product-listing .added_to_cart { 
    text-decoration: underline;
    display: table;
    margin: 2px auto 4px auto;
	line-height: 10px;
}
.product-category-listing .hic-box {
    background-color: #f4f5f0;
	padding: 20px;
}
.product-category-listing .hic-box .hic-image {
    background-size: contain;
    background-repeat: no-repeat;
}
.product-element .categories {
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 0;
}
@media (min-width: 641px) and (max-width: 1023px){ 
    .product-category-listing .section-body{
		padding: 20px;
	}
	
	.product-category-listing.carousel .slick-prev{
		left: 8px;
	}
	
	.product-category-listing.carousel .slick-next{
		right: 8px;
	}
	.product-category-listing .hic-box {
	    flex-flow: column;
	    text-align: center;
	}
	.product-category-listing.split-50-50 .hic-image-container,
	.product-category-listing.split-50-50 .hic-content {
	    width: 100%;
	}
	.product-category-listing.split-50-50 .hic-content { padding-right: 0; }
	.product-category-listing.split-50-50 .hic-image-container { order: 1; }
	.product-category-listing.content-box-element .hic-title,
	.product-category-listing.content-box-element .hic-button-wrap {
	    margin-left: auto;
	    margin-right: auto;
	}
}

@media(max-width: 640px) {
  .product-category-listing .hic-box {
        padding: 16px;
    }  
    
    .product-category-listing .hic-content {
            text-align: center;
    }
}

@media(min-width: 641px) {
    .tax-product_cat .product-listing .section-body,
    .cpt-archive .product-listing .section-body {
        justify-content: start;
    }
}
@media(min-width: 1024px) {
    .product-listing .product-price {
        font-size: 16px;
    }
    .product-category-listing .hic-box {
        padding: 40px;
    }
}

/**************************
#PRODUCT LISTING - END
**************************/
/**************************
#PRODUCT SINGLE PAGE - START
**************************/
.single-product .hic-gallery,
.single-product .product-gallery {
    margin-bottom: 24px;
}
.product-gallery-thumb .hic-image {
    margin-bottom: 0;
}
.single-product .description-gallery .slick-arrow:before {
    font-size: 12px;
}
.single-product .description-gallery .slick-arrow {
    background-color: #FFF;
    border-radius: 50%;
    height: 26px;
    width: 26px;
    box-shadow: 0 1px 4px 0 rgba(0,0,0, .4);
    z-index: 1;
}
.single-product .product-gallery-thumb .hic-image {
    opacity: .7;
}
.single-product .product-gallery-thumb .slick-current {
    opacity: 1;
}
.single-product .hic-gallery .slick-next {
    right: 0px;
}
.single-product .hic-gallery .slick-prev {
    left: 0px;
}
.single-product .hero.default-alignment {
    text-align: center;
}
.description-gallery .product-name,
.description-gallery .prepend,
.description-gallery .selected-size-label {
    font-weight: 700;
}
.single-product .quantity:before {
    content: 'Quantity:';
    font-weight: 700;
    margin-right: 8px;
}
.single-product .quantity:before,
.single-product .quantity input[type="number"] {
    display: inline-block;
}
.quantity input[type="number"] {
    box-shadow: none;
    border: 1px solid #CCCC;
    margin-left:0;
}
.sidebar .hic-checkbox li label:before {
    top: 15px;
}
.payment-list li {
    width: 36px;
}
input[type=checkbox] + label:before, input[type=radio] + label:before {
    width: 14px;
    height: 14px;
}

.single-product .page-elements .section-header {
    margin-bottom: 24px;
}

.single-product .page-element:after {
    display: block;
    content: '';
    width: calc(100% - 30px);
    height: 1px;
    background-color: #CCC;
    left: 0;
    right: 0;
    margin: auto;
    margin-top: 60px;
}
.single-product .page-element:last-child:after {
    display: none;
}

@media (max-width: 640px){
	.single-product .carousel .slick-prev{
		left:8px;
	}
	
	.single-product .carousel .slick-next{
		right: 8px;
	}
	
	.single-product .description-gallery .product-name{
		font-size: 22px
	}
	
	.single-product.woocommerce button.button{
		margin-bottom: 4px;
	}
	.single-product .description-gallery .hic-button-wrap .button {
	   display: block;
        width: 100%;
        margin-bottom: 8px;
	}
}	

@media (min-width: 641px) and (max-width: 767px){
    .single-product .hic-gallery .slick-prev {
        left: -10px;
    }
    .single-product .hic-gallery .slick-next {
        right: -10px;
    }
}

@media(min-width: 1024px) {
    
     .single-product .added_to_cart {
        position: absolute;
        bottom: -26px;
        left: 57px;
    }
    
    .single-product .description-gallery .hic-button-wrap {
        position: relative;
    }
    
    .single-product .description-gallery .slick-arrow {
        height: 32px;
        width: 32px;
    }
    .single-product .hic-gallery .slick-prev {
        left: -16px;
    }
    .single-product .hic-gallery .slick-next {
        right: -16px;
    } 
    .description-gallery .product-price,    
    .has-sidebar-both .main-content h1 {
        font-size: 28px;
    }
    .has-sidebar-both .main-content h2 {
        font-size: 26px;
    }
    .has-sidebar-both .main-content h3 {
        font-size: 24px;
    }
    .has-sidebar-both .main-content h4 {
        font-size: 20px;
    }
    .has-sidebar-both .main-content h5,
    .has-sidebar-both .main-content h6 {
        font-size: 18px;
    }
    .single-product .page-elements .section-title {
        text-align: left;
        font-size: 24px;
    }
    .description-gallery .hic-button-wrap .button {
        margin-right: 10px;
        font-size: 16px;
        padding: 16px;
        border-radius: 0;
        min-width: 180px;
    }
    .single-product .page-element:not(:last-child) {
        padding-bottom: 20px;
    }
}
/**************************
#PRODUCT SINGLE PAGE - END
**************************/

.tabs-title>a:focus, .tabs-title>a[aria-selected=true] {
    background-color: #1a7fb7;
    color: #FFF;
}

/**************************
#ACCORDION - STYLING START
**************************/
.accordion-title,.tabs-title>a {
    font-weight: 700;
    font-size: 16px;
}
a:not(.button).accordion-title:hover,
.tabs-title a:not(.button):hover {
    text-decoration: none;
}
.accordion-title:focus {
    background-color: #FFF;
}
.accordion-element .accordion-title, .accordion-element .accordion-content {
    border-left: 0;
    border-right: 0;
}
.has-sidebar-both .accordion-content,
.has-sidebar-both .tabs-content {
    font-size: 16px;
}
/**************************
#ACCORDION - STYLING END
**************************/
/**************************
#CART - START
**************************/
.product-remove a:not(.button):hover,
.woocommerce-cart-form .product-name a:hover {
    text-decoration: none;
}
.woocommerce-cart-form .product-subtotal .amount,
.woocommerce-cart-form .product-name {
    font-weight: 700;
}

.woocommerce-cart-form .product-name {
    font-size: 16px;
} 
.cart-subtotal .amount,
.woocommerce-checkout .product-total .amount,
.woocommerce-cart-form .product-subtotal .amount {
    display: block;
}
body.woocommerce-page .woocommerce table.shop_table th {
    background-color: #f2f2f2;
}
@media(max-width: 1023px) {
    .woocommerce-cart-form {
        margin-bottom: 40px;
    }
}
/**************************
#CART - END
**************************/
#add_payment_method #payment, 
.woocommerce-cart #payment, 
.woocommerce-checkout #payment {
    background: #F2F2F2;
    border-radius: 0;    
}
/**************************
#CHECKOUT - START
**************************/
#ship-to-different-address {
    text-transform: none;
}
#ship-to-different-address span {
    font-weight: 700;
}

body .woocommerce-checkout #payment li.payment_method_paypal img { 
    height: 60px;
    margin-right: 8px;
}
@media(max-width: 640px) {
    .woocommerce-order .includes_tax,
   .woocommerce-checkout-review-order .includes_tax {
        min-width: 124px;
    }
}
@media(min-width: 1024px) {
    #place_order {
        font-size: 20px;
    }
}
/**************************
#CHECKOUT - END
**************************/
/**************************
#WOO - THANK YOU - START
**************************/
@media(min-width: 1024px) {
   .woocommerce-thankyou-order-received {
        font-size: 24px;
    }
}
/**************************
#WOO - THANK YOU - END
**************************/

/**************************
#FOOTER - START
**************************/
.footer{
    border-top: 2px solid #4dafea;
    position: relative;
}

.footer::after, .footer::before {
    content: '';
    position: absolute;
    top: 85%;
    bottom: auto;
    width: 500%;
    height: 80%;
    background-color: #1a7fb7;
    border-radius: 50%;
    opacity: .75;
}

.footer::before {
    right: 0;
    left: auto;
}

.footer::after {
    left: 0;
    right: auto;
}

.footer .button, .footer .button:hover{
    color: #fff !important;
}

.footer i{
    color: #1a7fb7;
}

.footer .social-media-container {
    margin-top: 40px;
}
.footer .social-media-container a {
    font-size: 35px;
    display: inline-flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    border-radius: 50%;
}

.footer-layout-3 .footer-col .menu a {
    padding-left: 0;
    padding-right: 0;
}

.footer h4 {
    margin-bottom: 15px;
    text-transform: uppercase;
}

@media (max-width: 640px){
    
    .footer {
        text-align: center;
    }
    .footer .logo {
        width: 200px;
    }
    .footer .logo-wrap {
        margin-bottom: 30px;
    }    
    
    .footer .contact-details div {
        padding-left: 0;
    }
    
    .footer .contact-details i {
        position: static;
    }
    .footer-layout-3 .footer-col .menu a {
        padding: 6px 0;
    }
    .footer-col-1 .button {
        margin-bottom: 0;
    }
}

@media (min-width: 641px){
    .footer::after, .footer::before {
        width: 300%;
        height: 100%;
    }
    .footer .footer-col {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }
    
    .footer .footer-col-1 {
        width: 33.33333%;
    }
    
    .footer .footer-col-2 {
        width: 33.33333%;
    }
    
    .footer .footer-col-3 {
        width: 33.33333%;
    }
    
    .footer h4 {
        margin-bottom: 25px;
    }
    
    .footer .footer-logo{
        max-width: 250px;
    }
    
    .footer .social-media-container {
        margin-top: 50px;
    }
    
    .footer .social-media-container a {
        font-size: 45px;
    }
}

@media (min-width: 641px) and (max-width: 1023px){
    .footer{
        position: relative;
        padding-top: 140px;
        font-size: 14px;
    }
    .footer .logo-wrap {
        position: absolute;
        top: 24px;
        max-height: 150px;
        max-width: 200px;
        margin: auto;
        left: 0;
        right: 0;
    }
    .footer-layout-3 .footer-col .menu a {
        padding: 5px 0;
    }
}

@media (min-width: 1024px) {
    .footer::after, .footer::before {
        top: 80%;
        width: 150%;
        height: 200%;
    }
    .footer::before {
        right: 25%;
    }
    
    .footer::after {
        left: 25%;
    }
    
    .footer .logo-wrap{
        max-width: 280px;
        margin-bottom: 20px;
    }

    .footer .footer-col-1 {
        width: 41.66667%;
    }
    
    .footer .footer-col-2 {
        width: 25%;
    }
    
    .footer .footer-col-3 {
        width: 33.333333%;
    }
    
    .footer h4 {
        margin-bottom: 35px;
    }
}
/**************************
#FOOTER - END
**************************/

/**************************
BOTTOM FOOTER - START
**************************/
.bottom-footer{
    background-color: transparent !important;
    position: relative;
    z-index: 2;
}

.bottom-footer,
.bottom-footer a{
  color: #fff;
}

@media (max-width: 1023px){
    .bottom-footer .copyright{
        text-align: center;
    }
}
/**************************
BOTTOM FOOTER - END
**************************/

/**************************
#CUSTOMIZER - START
**************************/
.page-elements>.page-element.default-section:not(.has-bg-img)+.page-element.default-section:not(.has-bg-img), .page-elements>.page-element.light-section+.page-element.light-section, .page-elements>.page-element.grey-section+.page-element.grey-section, .page-elements>.page-element.dark-section+.page-element.dark-section, .page-elements>.page-element.theme-section+.page-element.theme-section {
    padding-top: 0;
}

body .default-section:not(.has-bg-img) .slick-arrow:before, body .grey-section .slick-arrow:before {color: #000;}
.grid-x>.large-2_4 {
    width: 50%;
}
.grid-x>.large-2_4 .hic-title h3 {
	font-size: 14px;}

.grid-x>.large-2_4 .button {padding: 8px 18px; font-size: 14px; display: block;}


.image-above-content.default-alignment .hic-box {text-align: center;}

.box-equal-height .grid-x>.large-2_4 .hic-content {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.box-equal-height .grid-x>.large-2_4 .hic-button-wrap {
    align-self: self-end;
    margin-top: auto;
    width: 100%;
}
/**************************
#CUSTOMIZER - END
**************************/