/** Shopify CDN: Minification failed

Line 48:2 Expected "{" but found "."
Line 95:8 Expected identifier but found whitespace
Line 95:9 Unexpected "0"

**/




/*============================================================================
Get font-families from theme settings
==============================================================================*/





/*#cloud-zoom-big,.cloud-zoom-lens {
  display: none !important;
}*/
/* footer toggle */
.footer-top .col1 .footer-title { display:none; }
@media(max-width: 767px){	
  footer .col-footer {
    margin-bottom: 15px;
  }
  .footer-top .col1 .footer-title { display:block; }
  .footer-top .footer-title:after {
    content: "\f107";
    display: block;
    font-weight: 700;
    font-family: FontAwesome;
    font-size: 18px;
    position: absolute;
    right: 25px;
    margin-top: -20px;
  }
  .footer-top .footer-title { cursor:pointer;margin-bottom: 0px; }
  .footer-top .footer-content {
    display:none;
  }
}

/* sidebar for mobile display */
@media (min-width: 768px)
  .container {
    width: inherit;
  }
@media (max-width: 991px){ 
  #sidebar-toggle {
    font-size: 26px;
    padding: 0 0 15px 15px;
    font-weight: 300;
  }
  #column-left {
    display: none;
  }
  #column-left.sidebar-toggle {
    display: none;
    position: absolute;
    top: inherit;
    z-index: 9;
    left: 0;
    width: 275px;
    overflow: hidden;
    padding: 15px;
    background: #fff;
    -webkit-box-shadow: 0 3px 11px 0 rgba(0,0,0,0.1);
    box-shadow: 0 3px 11px 0 rgba(0,0,0,0.1);
  }
  .sidebar-overlay {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    cursor: pointer;
    display: none;
    z-index: 6;
  }
}
/* bullets lists format correction */
.product-info-detailed ol, .product-info-detailed ul {
  list-style: inherit;
  margin-left: 10px;
  padding-left: 10px;
}
.product-info-detailed ol {
  list-style-type: decimal;
}

.product-layout .item.first .item-inner .box-border::before
opacity: 0;
}

/* for cart */
.cart-image {
  max-width: 100px;
  max-height: 100px;
}

/* for sticky add to cart bar */

#form_buy_sticky #productSelect {
  display: block;
}
.form_buy_sticky {
  text-align: center;
}
.form_buy_sticky .form-group {
  padding: 0px 20px;
  margin-bottom: 0px;
}
.form_buy_sticky .button {
  line-height: 30px;
  font-size: 12px;
}
.form_buy_sticky #Quantity {
  margin: 0px;
  border: 2px solid #eee !important;
  -webkit-border-radius: 4px !important;
  background: #fff;
}
.form_buy_sticky .form-control, .form_buy_sticky .img-thumbnail {
  border: 2px solid #eee;
}
@media(max-width: 767px){ 
  .form_buy_sticky .form-group {
    padding: 0px 5px;
    float: left;
  }
  .form_buy_sticky .form-group.col-7 {
    width: 55%;
  }
  .form_buy_sticky .form-group.col-2 {
    width: 20%;
  }
  .form_buy_sticky .form-group.col-3 {
    width: 25%;
  }
  #form_buy_sticky #Quantity {
    width: 100%;
  }
  button#button-cart-sticky {
    padding: 0px 10px;
    font-size: 12px;
    width: 100%;
  }
}
@media(max-width: 350px){ 
  button#button-cart-sticky {
    font-size: 10px;
  }
}
.form_buy_sticky.fix-header1{
  bottom: 0;
  padding: 10px 0 !important;
  background: #fff;
  border: none;
  box-shadow: 0 0 2px rgba(0,0,0,0.1);
  -moz-box-shadow: 0 0 2px rgba(0,0,0,0.1);
  -webkit-box-shadow: 0 0 2px rgba(0,0,0,0.1);
  -o-box-shadow: 0 0 2px rgba(0,0,0,0.1);
  -ms-box-shadow: 0 0 2px rgba(0,0,0,0.1);
  width: 100%;
  max-width: 100% !important;
  left: 0;
  right: 0;
  z-index: 889;
  margin: 0 auto;
  position: fixed !important;
  -webkit-animation-name: fadeInDown;
  -webkit-animation-duration: 5.0s;
  -webkit-animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-direction: normal;
  -webkit-animation-play-state: running;
  -webkit-animation-fill-mode: forwards;
  -moz-animation-name: anim_titles;
  -moz-animation-duration: 5.0s;
  -moz-animation-timing-function: linear;
  -moz-animation-iteration-count: infinite;
  -moz-animation-direction: normal;
  -moz-animation-play-state: running;
  -moz-animation-fill-mode: forwards;
  -webkit-animation-delay: 1s;
  -moz-animation-delay: 1s;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  -webkit-animation-duration: 0.7s;
  -moz-animation-duration: 0.7s;
  -webkit-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -webkit-animation-timing-function: ease-out;
  -moz-animation-timing-function: ease-out;
  -moz-transform: translateY(0);
  -webkit-transform: translateY(0);
  -o-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* logo text */
#logo .navbar-brand {
  float: none;
  text-transform: uppercase;
  font-weight: bold;
}
/* svg */
.placeholder-background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.placeholder-svg {
  display: block;
  fill: rgba(105,114,123,0.35);
  background-color: rgba(105,114,123,0.1);
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  border: 1px solid rgba(105,114,123,0.2);
}

/* soldout */
.label-product.label_sale.l_sold {
  font-size: 10px;
  text-transform: capitalize;
  font-weight: bold;
}

/*body:not(.common-home) footer {
margin-top: 20px;
}*/
/*
.ion-android-cart:before {
font-size: 32px;
}
*/
/* owl carousal show on mobile */

@media(max-width: 768px){
  .owl-carousel.owl-theme .owl-nav div {
    opacity: 1;
  }
}

/* deal*/
.product-info-main .item-inner .caption {
  padding: 0px 0 24px 0;  
}
#product-product #content .is-countdown .countdown-row {
  margin-left: 0px;  
}

/* megamenu product type css */

.sub-item2-content.sub-product {
  text-align: center;
}
@media(max-width: 1199px){
  li.li-second-items.product-img {
    float: none; 
  }
}
@media(max-width: 991px){
  #oc-menu-mheader .ul-second-items .li-second-items .mega-second-image {
    padding-top: 15px;
  }
}

/* for adding effect to items added to wishlist */
.item-inner .action-links button.wishlist-btn.is-active {
  color: #4078BD; 
  background-color: transparent; 
}

#desc {
  z-index:9;
}
/* custom slider */
.static-slider-cust-slider {
  background: #1d1d1d;
  border-bottom: 1px solid #2d2d2d;
}
.static-slider-cust-slider .owl-item.active {
  border-left: 1px solid #2d2d2d;
}
.static-slider-cust-slider .owl-item.first {
  border:0;
}
.static-slider-cust-slider.banner-static .image a:before {
  display:none;
}
.static-slider-cust-slider .image a .text {
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  bottom: 8%;
  top:auto;
  -moz-transform: translateY(0);
  -webkit-transform: translateY(0);
  -o-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}
.static-slider-cust-slider .text .text1 {
  color: #4078BD;
  display: block;
  text-transform: capitalize;
  font-weight: 300;
  font-size: 16px;
  margin-bottom: 2px;
}
.static-slider-cust-slider .text .text2 {
  color: #fff;
  display: block;
  text-transform: capitalize;
  font-weight: 400;
  font-size: 30px;
  font-family: Candara, Calibri, Segoe, 'Segoe UI', Optima, Arial, sans-serif;
  line-height: 1.1;
}

.static-slider-cust-slider .text .link {
  font-size: 14px;
  display: block;
  color: #525252;
  text-transform: capitalize;
  margin-top: 36px;
  text-decoration: underline;
}
.static-slider-cust-slider .text .link:hover {
  color: #4078BD;
}

/* custom slider */

/* product page */
#product-product #content .is-countdown {
  position: relative;
  max-width: 250px;
  text-align: center;
  bottom: auto;
  left: 0;
}

.product-zoom-image.sticky div#wrap {
  margin-bottom: 20px;
}

span#variantQuantity.is-visible {
  color: red; 
  margin: auto 20px;
  line-height: 45px;
}
/* full width add to cart button on mobile */
@media (max-width: 1024px) {
  .product-info-main .button-cart {
    padding: 0 15px !important;
    font-size: 12px;
  }
}
@media (max-width: 479px) {
  .product-info-main .button-cart {
    width: 100%;
  }
  button#button-cart-buy { 
    margin-left: 0px !important;  
  }
}
/*.hd2 .selected-currency {
padding-right: 0px !important;
margin-right: 0px !important;
border:0px !important;
}*/
.note.form-error {
  color: #4078BD;
}
.topbar.alert-success {
  color: #ffffff;
  background-color: #16273F;
}
.topbar.alert-success a {
  color: #8FB4DB;
  text-decoration: underline;
  font-weight: 600;
}
.topbar.alert-success a:hover {
  color: #ffffff;
}

.topbar.alert-success button#alertbtn {
  float: none;
  padding-left: 40px;
  font-size: 13px;
  vertical-align: text-top;
  opacity: 1;
  padding-top: 1px;
  color: #ffffff;
  top: inherit;
  right: inherit;
}
.toast-success {
  background-color: #4078BD !important;
}
#instafeed img.insta-size {
  width: 30% !important;
  display: inline !important;
  padding: 0px 10px 10px 0px;
}
#instafeed img.insta-size:hover {
  opacity: .8;
}
div#instafeed {
  text-align: center;
  padding: 0px;
}


.selector-wrapper {
  display: none;
}
#productSelect {
  display: none;
}

/*.product-view .tab-view a {
padding: 0px !important;
font-size: 15px !important; 
}*/

/* cart page */
.buttons.cartbtn a {
  color: #fff;
}
/* footer content */
.footer .footer-content.contact {
  margin-top: 10px;
}
.footer .footer-content.contact li i {
  display: inline-block;
  text-align: center;
  float: left;
  font-size: 18px;
  margin: 5px 10px 5px 0px;
}

/* vertical slider */
.bx-pager.bx-default-pager {
  display: none;
}
.bx-wrapper {
  box-shadow: none !important;
  background: transparent !important;
  border: none !important;
}

.bx-wrapper .bx-controls-direction a {
  top: 110% !important;
}

.bx-wrapper .bx-next {
  right: -2px !important;
}
.bx-wrapper .bx-prev {
  left : -2px !important;
}

.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  width: 100%;
  margin: auto;
}

.carousel-inner > .item {
  margin-bottom: 0px;
}

.carousel-inner > .item.active {
  border: 0px;
}

.carousel-control {
  position: absolute;
  display: block;
  top: 50%;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  left: 0px;
  margin-top: -20px;
  /*  color: #262626;
  border-radius: 100%;
  */
  background: #fff;
  opacity: 0;
  -webkit-transform: translateY(30px);
  -moz-transform: translateY(30px);
  -o-transform: translateY(30px);
  cursor: pointer;
  transform: translateY(30px);
  background-image: none !important;
}

.carousel:hover .carousel-control{
  opacity: 1;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}

.carousel-control:hover{
  /*background: #4078BD;*/
  color: #fff;
}

.carousel-inside .carousel-control {
  position: absolute;
  display: block;
  height: 35px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: #333745;
  color: #ffffff;
  top: 50%;
  padding: 0;
  margin-top: -17px;
  border: none;
  outline: none;
  opacity: 1;
  -webkit-transition: left 0.3s ease 0.3s, right 0.3s ease 0.3s;
  -o-transition: left 0.3s ease 0.3s, right 0.3s ease 0.3s;
  transition: left 0.3s ease 0.3s, right 0.3s ease 0.3s;
  text-shadow: none;
}

.carousel-control i.fa {
  font-size: 20px;
  vertical-align: text-top;
  color: #333;
}
.carousel-control i.fa:hover {
  color: #4078BD; 
}
.carousel-inside .carousel-control.next {
  right: -22px;
  left: auto;
}

.carousel-inside .carousel-control.prev {
  left: -22px;
  right: auto;
}

.owl-item a.carousel-control {
  position: absolute;
}

.carousel-indicators li {
  width: 20px;
  height: 20px;
  border-radius: 20px; 
}

.toolbar label.control-label {
  display: none;
}

.small-item .spr-badge:after {
  clear: none;
}

.social-sharing {
  margin: 20px 0px 0px 0px;
}
.social-sharing .btn {
  height: 47px;
  line-height: 47px;
  border: 2px solid #ababab;
  max-width: 150px;
  font-size: 14px;
  color: #fff;
}

.social-sharing a.btn {
  width: 47px;
  line-height: 47px;
  
  border-radius: 0;
  background: transparent;
  color: #4078BD;
  position: initial;
  left: 50%;
  opacity: 1;
  padding: 0px;
  margin-right: 6px;
}

.social-sharing a.btn:hover {
  color: #fff;
  background: #4078BD;
  border-color: #4078BD;
}

.error-text img { 
  display:block;
  margin: 0px auto;
}

.error-text h1 {
  text-align: center;
}

.error-text .buttons a, .submit button, #submitMessage {
  margin: 10px;
}
.error-text .buttons a {
  margin: 0px auto;
  display: block;
  border: none;
  box-shadow: none;
  color: #4078BD;
}
#wraper_ajax.loadding_ajaxcart, .ajax_loading {
  width: 50px;
  height: 50px;
  text-align: center;
  line-height: 50px;
  font-size: 26px !important;
  color: #666;
  background-color: #fff;
  box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.5);
  -webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.5);
  margin-top: -25px;
  margin-left: -25px;
  -webkit-animation: tp-rotateplane 1.2s infinite ease-in-out;
  animation: tp-rotateplane 1.2s infinite ease-in-out;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  top: 50% !important;
  left: 60%;
  position:fixed;
  display: none;
  z-index: 9990;
}
#wraper_ajax.loadding_ajaxcart .fa {
  font-size: 26px !important;
}

.advanced-filters{margin-bottom:30px}
.advanced-filters a {
  display: block;
  position: relative;
  /*padding: 0px 0px 0px 25px !important;*/
  border: 0px !important;
}
.advanced-filters a:before,.advanced-filters a:after{content:'';display:block;position:absolute}
.advanced-filters a:before{top:16px;left:0;width:12px;height:12px;/*background-color:#fff;*/border:1px solid #ccc; margin-top: 0px;}
.advanced-filters .active-filter a:after {
  top: 16px;
  left: 2px;
  width: 8px;
  height: 8px;
  background-color: transparent;
  margin-top: 2px;
}
.advanced-filters a:hover:after {
  background-color: transparent;
}
.active-filter a.advanced-filter:after{
  background-color:#4078BD
}
.active-filter a.advanced-filter:hover:after {
  content: '\78';
  top: 14px;
  left: -1px;
  width: 14px;
  height: 14px;
  background-color: #4078BD;
  font-size: 7px;
  text-align: center;
  color: #fff;
  font-family: "icons";
  line-height: 14px;
  speak: none;
  padding-left: 1px;
}
.advanced-filters .blue a:before {
  background-color:blue; 
}
.advanced-filters .red a:before {
  background-color:red; 
}
.advanced-filters .green a:before {
  background-color:green; 
}
.advanced-filters .white a:before {
  background-color:white; 
}
.advanced-filters .black a:before {
  background-color:black; 
}
.advanced-filters .yellow a:before {
  background-color:yellow; 
}
.advanced-filters .pink a:before {
  background-color:pink; 
}
.advanced-filters .grey a:before {
  background-color:grey; 
}
.advanced-filters .orange a:before {
  background-color:orange; 
}
.advanced-filters .maroon a:before {
  background-color:maroon; 
}

.selector-wrapper select {
  background: #ffffff none repeat scroll 0 0;
  height: 26px;
  padding: 0 0 0 5px;
  margin-bottom: 15px;
  width: 224px;
  border: 1px solid #d6d4d4;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
  -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}

.selector-wrapper label {
  display: inline-block;
  float: left;
  font-size: 12px;
  font-weight: 300;
  margin-bottom: 7px;
  text-align: left;
  width: 65px;
}

.table-bordered>tbody>tr>td, .table-bordered>tbody>tr>th, .table-bordered>tfoot>tr>td, .table-bordered>tfoot>tr>th, .table-bordered>thead>tr>td, .table-bordered>thead>tr>th {
  vertical-align: middle;
}

.table-checkout-cart h5 a {
  color: #4078BD;
  font-size: 13px;
}

#product .contact-form {
  display:inline;
}

.item form#contact_form {
  display: inline;
}

/* 
Swatches Styles
*/



.swatch { 
  margin:0px 0px 0px 0px; 
}
.swatch:first-child { 
  margin:0 0 1em 0; 
}
/* Label */
.swatch .header {
  display: none;
  margin: 0.5em 0;
}
/* Hide radio buttons.*/
.swatch input { 
  display:none;
}
.swatch label {
  /* Rounded corners */
  -webkit-border-radius:2px;
  -moz-border-radius:2px;
  border-radius:2px;
  /* To give width and height */
  float:left;
  /* Color swatches contain no text so they need to have a width. */
  min-width:50px !important; 
  height:35px !important;
  /* No extra spacing between them */
  margin:0;
  /* The border when the button is not selected */
  border:#4078BD 1px solid;
  /* Background color */
  background-color:#fff;
  /* Styling text */
  font-size:13px;
  text-align:center;
  line-height:35px;
  white-space:nowrap;
  text-transform:uppercase;
}
.swatch label.img {
  /* Color swatches contain no text so they need to have a width. */
  width:50px !important; 
  height:50px !important;
}
.swatch-element label { padding:0 10px; }
.color.swatch-element label { padding:0; border:none; }
.color.white.swatch-element label.bg-white { border:#4078BD 1px solid; }
.color.white.swatch-element label.img { border:none; }
/* Styling selected swatch */
/* Slightly raised */
.swatch input:checked + label {
  /* -webkit-box-shadow:0px 1px 2px #4078BD ;
  -moz-box-shadow:0px 1px 2px #4078BD;
  box-shadow:0px 1px 2px #4078BD;*/
  background-color: #4078BD; 
  color: #fff;
  border-color:transparent;
} 
.swatch input:checked + label.img {
  background: transparent;
}
.swatch .swatch-element {
  float:left;
  -webkit-transform:translateZ(0); /* webkit flicker fix */
  -webkit-font-smoothing:antialiased; /* webkit text rendering fix */
  /* Spacing between buttons */
  margin:10px 10px 10px 0;
  /* To position the sold out graphic and tooltip */
  position:relative;
}
/* Image with the cross in it */
.crossed-out { position:absolute; width:100%; height:100%; left:0; top:0; }
.swatch .swatch-element .crossed-out { display:none; }
.swatch .swatch-element.soldout .crossed-out { display:block; }
.swatch .swatch-element.soldout label {
  filter: alpha(opacity=60); /* internet explorer */
  -khtml-opacity: 0.6;      /* khtml, old safari */
  -moz-opacity: 0.6;       /* mozilla, netscape */
  opacity: 0.6;           /* fx, safari, opera */
}
/* Tooltips */
.swatch .tooltip {
  text-align:center;
  background:#4078BD;
  color:#fff;
  bottom:100%;
  padding: 5px;
  display:block;
  position:absolute;
  width:100px;
  left:-23px;
  margin-bottom:7px;
  /* Make it invisible by default */
  filter:alpha(opacity=0);
  -khtml-opacity: 0;
  -moz-opacity: 0;
  opacity:0;
  visibility:hidden;
  /* Animations */
  -webkit-transform: translateY(10px);
  -moz-transform: translateY(10px);
  -ms-transform: translateY(10px);
  -o-transform: translateY(10px);
  transform: translateY(10px);
  -webkit-transition: all .25s ease-out;
  -moz-transition: all .25s ease-out;
  -ms-transition: all .25s ease-out;
  -o-transition: all .25s ease-out;
  transition: all .25s ease-out;
  -webkit-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  -moz-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  -ms-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  -o-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  z-index: 10000;
  -moz-box-sizing:border-box; 
  -webkit-box-sizing:border-box; 
  box-sizing:border-box;
}
.swatch .tooltip:before {
  bottom:-20px;
  content:" ";
  display:block;
  height:20px;
  left:0;
  position:absolute;
  width:100%;
}
/* CSS triangle */
.swatch .tooltip:after {
  border-left:solid transparent 10px;
  border-right:solid transparent 10px;
  border-top:solid #4078BD 10px;
  bottom:-10px;
  content:" ";
  height:0;
  left:50%;
  margin-left:-13px;
  position:absolute;
  width:0;
}
.swatch .swatch-element:hover .tooltip {
  filter:alpha(opacity=100);
  -khtml-opacity:1;
  -moz-opacity:1;
  opacity:1;
  visibility:visible;
  -webkit-transform:translateY(0px);
  -moz-transform:translateY(0px);
  -ms-transform:translateY(0px);
  -o-transform:translateY(0px);
  transform:translateY(0px);
}
.swatch.error {
  background-color:#E8D2D2!important;
  color:#333!important;
  padding:1em;
  border-radius:5px;
}
.swatch.error p {
  margin:0.7em 0;
}
.swatch.error p:first-child {
  margin-top:0;
}
.swatch.error p:last-child {
  margin-bottom:0;
}
.swatch.error code {
  font-family:monospace;
}

/* review tab form */
input.spr-form-input, textarea.spr-form-input {
  padding: 8px;
}
.spr-form-input.spr-starrating a {
  line-height: 20px;
  height: 18px;
  padding: 0px;
}
.spr-badge {
  font-size: 10px;
  line-height: 14px;
}
.featuredproduct-container .spr-badge, .mostviewed-container .spr-badge {
  display: inline-block;
}
.spr-icon {
  font-size: 100% !important;
  color: #4078BD;
}
.spr-icon-star {
  color: #4078BD;
}

.spr-icon.spr-icon-star-empty {
  opacity: 1 !important;
}
/*--------------------------------------------*/
/*  Newsletter PopUP Area
/*--------------------------------------------*/
#newsletter-popup-conatiner {
  background-color: rgba(0, 0, 0, 0.7);
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 9998;
  width: 100%;
  height: 100%;
}
#newsletter-pop-up {
  background: rgba(100, 100, 100, 0.7) repeat scroll 0 0;
  color: #ffffff;
  height: 400px;
  left: 50%;
  min-width: 450px;
  padding: 35px;
  position: absolute;
  text-align: left;
  top: 50%;
  width: 800px;
  margin-left: -400px;
  margin-top: -200px;
}
#newsletter-pop-up .hide-popup {
  background: #000000 none repeat scroll 0 0;
  border: 1px solid #ffffff;
  cursor: pointer;
  font-size: 10px;
  font-weight: bold;
  line-height: 24px;
  min-width: 70px;
  position: absolute;
  right: 0;
  text-align: center;
  text-transform: uppercase;
  top: -30px;
}
#newsletter-pop-up .hide-popup:hover {
  background: #E03550
}
.title-subscribe h1 {
  font-size: 2.5em;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 0;
  margin-top: 60px;
  text-transform: uppercase;
  color: #232323;
}
#newsletter-form .content-subscribe {overflow: hidden}
.form-subscribe-header label {
  color: #999999;
  font-size: 1.1em;
  font-weight: normal;
  line-height: 25px;
  margin: 20px 0;
  max-width: 72%;
}
#newsletter-form .input-box, #newsletter-form .content-subscribe .actions1 {float: left}
#newsletter-form .input-box .input-text {
  color: #232323;
  border: 1px solid #eeeeee;
  height: 40px;
  line-height: 40px;
  margin: 0 0 5px;
  padding-left: 10px;
  width: 380px;
}
#newsletter-form  .actions1 .button-subscribe {
  background-color: #222222;
  border: medium none;
  color: #ffffff;
  font-family: "Poppins", "HelveticaNeue", "Helvetica Neue", sans-serif;
  font-size: 1em;
  height: 40px;
  line-height: 40px;
  min-width: 115px;
  padding: 0 10px;
  text-transform: uppercase;
}
#newsletter-form .actions1 .button-subscribe:hover {
  background: #4078BD;
  color: #fff;
}
.subscribe-bottom {
  color: #000000;
  display: block;
  margin-top: 15px;
  overflow: hidden;
}
.subscribe-bottom label {
  color: #000;
  font-size: 12px;
  margin-bottom: 0;
}
#dont_show {
  margin: 0;
  vertical-align: middle;
}
.footer-bottom .payment, .footer-payment  {
  display: inline-block;
  line-height: 32px;
  padding: 5px 0;
}
.footer-payment  {
  margin-top: 0px;
}
.ct-payment a.fa {
  font-size: 30px; 
}

@media(max-width: 768px){
  #newsletter-popup-conatiner {
    display: none !important;
  }
  ul.ct-payment {
    float: none !important;
    text-align:center;
    padding-top: 10px; 
    padding-right: 0px;
  }
}

/**
* Simple fade transition for product video popup,
*/
.mfp-fade.mfp-bg {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out; 
  -moz-transition: all 0.15s ease-out; 
  transition: all 0.15s ease-out;
}
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.8;
}
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out; 
  -moz-transition: all 0.15s ease-out; 
  transition: all 0.15s ease-out;
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}


/* alert success message newsletter */
#contact_form .successMessage.alert.alert-success.alert-dismissible {
  position: relative;
  width: 100%;
}
.alert-dismissible {
  padding-bottom: 30px;
}
.alert-dismissible .errors {
  float: left;
}
.alert-dismissable .close, .alert-dismissible .close {
  right: 10px !important;
  font-size: 15px;
}

/* instagram */

#instagram_block_home .owl-carousel .owl-item{
  padding: 0;
}
#instagram_block_home .owl-item a::before{
  background: rgba(0,0,0,.5);
  right: 25px;
  top: 25px;
  bottom: 25px;
  left: 25px;
  position: absolute;
  content: "";
  z-index: 1;
  opacity: 0;
}
#instagram_block_home .owl-item::after,
#instagram_block_home .owl-item::before{
  display: none;
  position: absolute;
  width: 1px;
  height: 70px;
  content: "";
  top: 50%;
  left: 50%;
  z-index: 2;
  background: #fff;
  margin-top: -35px;
  transform: scale(0);
}
#instagram_block_home .owl-item::after{
  width: 70px;
  height: 1px;
  margin-top: 0;
  margin-left: -35px;
}
#instagram_block_home .owl-item ,
#instagram_block_home .owl-item a{
  position: relative;
  display: block;
}
#instagram_block_home .owl-item:hover::before,
#instagram_block_home .owl-item:hover::after{
  transform: scale(1);
}
#instagram_block_home .owl-item:hover a::before{
  opacity: 1;
}

/* transition */
#instagram_block_home .owl-item:hover::before, #instagram_block_home .owl-item:hover::after{
  -webkit-transition: ease-in-out all .3s;
  -moz-transition: ease-in-out all .3s;
  transition: ease-in-out all .3s;
}

.modal-product span.old-price {
  text-decoration: line-through;
  padding-left: 10px;
  color: red;
}

/* Static slider video */
.our_story, .our_story1{
  position:relative;
  text-align:center;
  margin-bottom: 50px;
}
.our_story1{
  margin-bottom: 0px;
  margin-top: 74px;
}
@media (max-width:991px){
  .our_story, .our_story1{
    margin-bottom:30px;
  }
}
.static_video, .static_video1{
  position:relative;
  padding:0;
}
.our_story .static_video .added_video, .our_story1 .static_video1 .added_video1{
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  width:100%;
  height:100%;
  z-index: 9;
}
.oc-banner7-container .flexslider .slides.static_video img {
  z-index: -1; 
}
.our_story .static_video #cms_play, .our_story1 .static_video1 #cms_play1{
  position:absolute;
  top:30%;
  left:50%;
  cursor:pointer;
  -moz-transform:translateX(-50%) translateY(-50%);
  -webkit-transform:translateX(-50%) translateY(-50%);
  -o-transform:translateX(-50%) translateY(-50%);
  -ms-transform:translateX(-50%) translateY(-50%);
  transform:translateX(-50%) translateY(-50%);
}
.our_story1 .static_video1 #cms_play1{
  top:50%;
  left:50%;
}
.our_story1 .static_video1 .img_static1 {
  width: 100% !important;
}
.our_story .static_video #cms_play img, .our_story1 .static_video1 #cms_play1 img{
  -webkit-transition:all 300ms ease-in;
  -moz-transition:all 300ms ease-in;
  -ms-transition:all 300ms ease-in;
  -o-transition:all 300ms ease-in;
  transition:all 300ms ease-in;
}
.our_story .static_video #cms_play img:hover, .our_story1 .static_video1 #cms_play1 img:hover{
  transform:scale3d(1.1,1.1,1.1);
  -moz-transform:scale3d(1.1,1.1,1.1);
  -webkit-transform:scale3d(1.1,1.1,1.1);
  -webkit-transition:all 300ms ease-in;-moz-transition:all 300ms ease-in;
  -ms-transition:all 300ms ease-in;
  -o-transition:all 300ms ease-in;
  transition:all 300ms ease-in;
}

.our_story .static_video video.added_video {
  width: 100%    !important;
  height: auto   !important;
}

.our_story .static_video .added_video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* blog */
.blog-article .article-description img {
  float: left;
  margin-right: 30px;
  margin-bottom: 15px;
}

/* comments area css */
.comment-area {
  margin-top: 15px;
}
.comments-heading > h3 {
  border-top: 1px solid #e5e5e5;
  font-family: "Poppins", "HelveticaNeue", "Helvetica Neue", sans-serif;
  font-size: 24px;
  margin: 0 0 50px;
  padding: 22px 0 0;
  text-transform: uppercase;
}
.comment-list-image {
  float: left;
  margin-right: 15px;
}
.comment-content-wrap > p {
  margin-top: 15px;
}
.comment-content-wrap {
  border: 1px solid #ddd;
  color: #42414f;
  font-size: 12px;
  line-height: 1;
  margin: 0 0 15px 63px;
  padding: 10px;
  position: relative;
}
.comment-content-wrap::before {
  background: #fff none repeat scroll 0 0;
  border-bottom: 1px solid #ececec;
  border-left: 1px solid #ececec;
  content: "";
  display: block;
  height: 10px;
  left: -5px;
  position: absolute;
  top: 10px;
  transform: rotate(45deg);
  width: 10px;
}
.comments-list ul li {
  margin-bottom: 25px;
}
.threaded-comments {
  margin-left: 50px;
}
.comment-respond {
  margin-top: 15px;
}
h3.comment-reply-title {
  border-top: 1px solid #e5e5e5;
  font-family: Candara, Calibri, Segoe, 'Segoe UI', Optima, Arial, sans-serif;
  font-size: 24px;
  margin: 0 0 20px;
  padding: 22px 0 0;
  text-transform: uppercase;
}
span.email-notes {
  color: #42414f;
  display: block;
  font-size: 12px;
  margin-bottom: 10px;
}
.comment-respond input[type="text"],
.comment-respond input[type="email"] {
  background: #fff none repeat scroll 0 0;
  border: 1px solid #e5e5e5;
  border-radius: 0;
  height: 32px;
  margin-bottom: 15px;
  padding: 0 0 0 10px;
  width: 100%;
}
.comment-respond textarea#message, .comment-respond textarea#CommentBody {
  background: #fff none repeat scroll 0 0;
  border: 1px solid #e5e5e5;
  border-radius: 0;
  height: 130px;
  max-width: 100%;
  padding: 10px;
  width: 100%;
}
.comment-respond input[type="submit"] {
  background: #919191 none repeat scroll 0 0;
  border: medium none;
  border-radius: 0;
  box-shadow: none;
  color: #fff;
  display: inline-block;
  font-family: Candara, Calibri, Segoe, 'Segoe UI', Optima, Arial, sans-serif;
  font-size: 12px;
  font-weight: 400;
  height: 40px;
  line-height: 40px;
  margin-top: 20px;
  padding: 0 15px;
  text-shadow: none;
  text-transform: capitalize;
  transition: all 0.3s ease 0s;
  white-space: nowrap;
}
.comment-respond input[type="submit"]:hover {
  background-color: #4078BD;
}

.single-reply .comment-author {
  display: inline;
  float: left;
  padding-right: 25px;
}

#checkout-cart .pull-right .additional-checkout-button {
  margin-left: 10px; 
}
@media (max-width:991px){
  #checkout-cart .pull-right, #checkout-cart .pull-left{
    float: none !important;
    text-align: center;
    margin: 10px 0; 
  }
}


.bg-navy {
  background-color: #001F3F !important
}

.bg-blue {
  background-color: #0074D9 !important
}

.bg-aqua {
  background-color: #7FDBFF !important
}

.bg-teal {
  background-color: #39CCCC !important
}

.bg-olive {
  background-color: #3D9970 !important
}

.bg-green {
  background-color: #2ECC40 !important
}

.bg-lime {
  background-color: #01FF70 !important
}

.bg-yellow {
  background-color: #FFDC00 !important
}

.bg-orange {
  background-color: #FF851B !important
}

.bg-red {
  background-color: #FF4136 !important
}

.bg-fuchsia {
  background-color: #F012BE !important
}

.bg-purple {
  background-color: #B10DC9 !important
}

.bg-maroon {
  background-color: #85144B !important
}

.bg-white {
  background-color: #fff !important
}

.bg-gray {
  background-color: #aaa !important
}

.bg-silver {
  background-color: #ddd !important
}

.bg-black {
  background-color: #111 !important
}

.navy {
  color: #001F3F
}

.blue {
  color: #0074D9
}

.aqua {
  color: #7FDBFF
}

.teal {
  color: #39CCCC
}

.olive {
  color: #3D9970
}

.green {
  color: #2ECC40
}

.lime {
  color: #01FF70
}

.yellow {
  color: #FFDC00
}

.orange {
  color: #FF851B
}

.red {
  color: #FF4136
}

.fuchsia {
  color: #F012BE
}

.purple {
  color: #B10DC9
}

.maroon {
  color: #85144B
}

.white {
  color: #fff
}

.silver {
  color: #ddd
}

.gray {
  color: #aaa
}

.black {
  color: #111
}

.border--navy {
  border-color: #001F3F
}

.border--blue {
  border-color: #0074D9
}

.border--aqua {
  border-color: #7FDBFF
}

.border--teal {
  border-color: #39CCCC
}

.border--olive {
  border-color: #3D9970
}

.border--green {
  border-color: #2ECC40
}

.border--lime {
  border-color: #01FF70
}

.border--yellow {
  border-color: #FFDC00
}

.border--orange {
  border-color: #FF851B
}

.border--red {
  border-color: #FF4136
}

.border--fuchsia {
  border-color: #F012BE
}

.border--purple {
  border-color: #B10DC9
}

.border--maroon {
  border-color: #85144B
}

.border--white {
  border-color: #fff
}

.border--gray {
  border-color: #aaa
}

.border--silver {
  border-color: #ddd
}

.border--black {
  border-color: #111
}

.fill-navy {
  fill: #001F3F
}

.fill-blue {
  fill: #0074D9
}

.fill-aqua {
  fill: #7FDBFF
}

.fill-teal {
  fill: #39CCCC
}

.fill-olive {
  fill: #3D9970
}

.fill-green {
  fill: #2ECC40
}

.fill-lime {
  fill: #01FF70
}

.fill-yellow {
  fill: #FFDC00
}

.fill-orange {
  fill: #FF851B
}

.fill-red {
  fill: #FF4136
}

.fill-fuchsia {
  fill: #F012BE
}

.fill-purple {
  fill: #B10DC9
}

.fill-maroon {
  fill: #85144B
}

.fill-white {
  fill: #fff
}

.fill-gray {
  fill: #aaa
}

.fill-silver {
  fill: #ddd
}

.fill-black {
  fill: #111
}

.stroke-navy {
  stroke: #001F3F
}

.stroke-blue {
  stroke: #0074D9
}

.stroke-aqua {
  stroke: #7FDBFF
}

.stroke-teal {
  stroke: #39CCCC
}

.stroke-olive {
  stroke: #3D9970
}

.stroke-green {
  stroke: #2ECC40
}

.stroke-lime {
  stroke: #01FF70
}

.stroke-yellow {
  stroke: #FFDC00
}

.stroke-orange {
  stroke: #FF851B
}

.stroke-red {
  stroke: #FF4136
}

.stroke-fuchsia {
  stroke: #F012BE
}

.stroke-purple {
  stroke: #B10DC9
}

.stroke-maroon {
  stroke: #85144B
}

.stroke-white {
  stroke: #fff
}

.stroke-gray {
  stroke: #aaa
}

.stroke-silver {
  stroke: #ddd
}

.stroke-black {
  stroke: #111
}

/* Touch-target sizing (F-005): header nav dropdown links and social icons
   measured below the 44px platform guideline. Padding-only / explicit-size
   changes, no layout restructuring. !important needed: the base rules these
   override (#top .box > div > a; ul.link-follow li a) chain more type
   selectors and win on specificity despite loading earlier. */
a.NavBarItems, button.dropdown-toggle.NavBarItems {
  padding: 9px 0 !important;
}
.social-top ul.link-follow li a,
a.facebook, a.twitter, a.pinterest, a.instagram, a.linkedin, a.youtube, a.vimeo, a.tumblr, a.google-plus {
  width: 44px !important;
  height: 44px !important;
  line-height: 44px !important;
}

/* ==========================================================================
   Helix Exchange product card (Option C: image-forward, minimal)
   Markup: snippets/product-grid-item.liquid
   ========================================================================== */
.hx-card-wrap { height: 100%; }
.hx-cardc { display: flex; flex-direction: column; gap: 12px; height: 100%; text-align: left; }
.hx-cardc-media {
  position: relative; display: flex; align-items: center; justify-content: center;
  aspect-ratio: 5 / 6; padding: 28px; box-sizing: border-box;
  background: #F1F6FC; border-radius: 12px; overflow: hidden; transition: background .15s ease;
}
.hx-cardc-media img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; transition: transform .2s ease; }
.hx-cardc:hover .hx-cardc-media { background: #E6EEF8; }
.hx-cardc:hover .hx-cardc-media img { transform: scale(1.03); }
.hx-cardc-new {
  position: absolute; top: 12px; left: 12px; background: #16273F; color: #ffffff;
  font-size: 11px; font-weight: 700; letter-spacing: 0.4px; text-transform: uppercase; border-radius: 4px; padding: 3px 8px;
}
.hx-cardc-text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.hx-cardc-title {
  font-size: 15px; font-weight: 600; line-height: 1.35; color: #16273F !important; text-decoration: none;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.7em;
}
.hx-cardc-title:hover, .hx-cardc-title:focus { color: #4078BD !important; text-decoration: underline; }
.hx-cardc-meta { font-size: 13px; color: #6B7280; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hx-cardc-foot {
  margin-top: auto; padding-top: 12px; border-top: 1px solid #E9EEF5;
  display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap;
}
.hx-cardc-price { display: flex; align-items: baseline; gap: 4px 8px; flex-wrap: wrap; min-width: 0; }
.hx-cardc-price-now { font-size: 18px; font-weight: 700; color: #16273F; }
.hx-cardc-price-was { font-size: 13px; color: #6B7280; text-decoration: line-through; }
.hx-cardc-save { font-size: 12px; font-weight: 600; color: #2B5384; background: #F1F6FC; border-radius: 4px; padding: 2px 6px; white-space: nowrap; }
.hx-cardc-btn {
  flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center;
  height: 44px; padding: 0 18px; border: 1px solid #4078BD; border-radius: 8px;
  background: #4078BD; color: #ffffff !important; font-size: 14px; font-weight: 600;
  text-transform: none; line-height: 1; white-space: nowrap; text-decoration: none; cursor: pointer; box-shadow: none;
}
.hx-cardc-btn:hover, .hx-cardc-btn:focus { background: #2B5384; border-color: #2B5384; color: #ffffff !important; }
.hx-cardc-btn--outline { background: #ffffff; color: #2B5384 !important; }
.hx-cardc-btn--outline:hover, .hx-cardc-btn--outline:focus { background: #F1F6FC; color: #2B5384 !important; border-color: #4078BD; }
.hx-cardc-btn--disabled { background: #F1F6FC; border-color: #D6E2F0; color: #6B7280 !important; cursor: default; }

/* Equal-height cards inside the homepage/related carousels */
.tt_product_module .owl-stage { display: flex; }
.tt_product_module .owl-item { display: flex; }
.tt_product_module .owl-item > .row_items { width: 100%; }


/* ==========================================================================
   Helix Exchange search + collection pages (layout B: filter sidebar)
   Markup: sections/search-page.liquid, sections/collection-page.liquid,
           snippets/hx-filters.liquid, snippets/hx-pagination.liquid
   ========================================================================== */
.hx-sr-only { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.hx-results { padding-top: 28px; padding-bottom: 64px; }
.hx-breadcrumb { font-size: 13px; color: #6B7280; margin-bottom: 10px; }
.hx-breadcrumb a { color: #6B7280; text-decoration: none; }
.hx-breadcrumb a:hover { color: #4078BD; text-decoration: underline; }

.hx-results-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 26px; flex-wrap: wrap; }
.hx-results-title { display: inline; margin: 0 14px 0 0; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 32px; line-height: 1.2; color: #16273F; text-transform: none; }
.hx-results-count { font-size: 15px; color: #475569; }
.hx-results-desc { margin-top: 10px; max-width: 760px; font-size: 15px; line-height: 1.55; color: #475569; }
.hx-sort { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 14px; font-weight: 400; color: #475569; }
.hx-sort-select { height: 40px; border: 1px solid #D6E2F0; border-radius: 8px; padding: 0 12px; font-size: 14px; color: #16273F; background: #ffffff; }

.hx-results-body { display: flex; gap: 40px; align-items: flex-start; }
.hx-results-side { width: 248px; flex-shrink: 0; }
.hx-results-main { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 32px; }
.hx-results-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 24px; }
.hx-results-body.no-filters .hx-results-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
/* Cancel old theme spacing on the card wrapper (.grid-style:not(:first-child) adds margin-top: 45px). */
.hx-results-grid > .hx-card-wrap { margin: 0 !important; padding: 0 !important; width: auto !important; float: none !important; }

.hx-filters { border: 0; }
.hx-filters-summary { display: none; }
.hx-filters-head { display: flex; align-items: baseline; justify-content: space-between; padding-bottom: 14px; }
.hx-filters-title { font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 18px; color: #16273F; }
.hx-filters-clear { font-size: 13px; font-weight: 600; color: #4078BD; text-decoration: none; }
.hx-filters-clear:hover { text-decoration: underline; }
.hx-filter { border: 0; margin: 0; padding: 18px 0; border-top: 1px solid #E9EEF5; min-width: 0; }
.hx-filter-legend { font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 15px; color: #16273F; border: 0; padding: 0; margin: 0 0 8px; width: auto; }
.hx-filter-values { display: flex; flex-direction: column; gap: 2px; }
.hx-filter-value { display: flex; align-items: center; gap: 10px; min-height: 32px; margin: 0; font-size: 14px; font-weight: 400; color: #16273F; cursor: pointer; }
.hx-filter-value input { width: 18px; height: 18px; margin: 0; accent-color: #4078BD; flex-shrink: 0; cursor: pointer; }
.hx-filter-label { flex: 1 1 auto; min-width: 0; }
.hx-filter-count { font-size: 12px; color: #6B7280; }
.hx-filter-value.is-empty { color: #9AA4B2; cursor: default; }
.hx-filter-price { display: flex; align-items: center; gap: 8px; }
.hx-filter-price input { width: 100%; min-width: 0; height: 40px; border: 1px solid #D6E2F0; border-radius: 8px; padding: 0 10px; font-size: 14px; color: #16273F; box-sizing: border-box; }
.hx-filter-price span { color: #6B7280; font-size: 13px; }
.hx-filter-apply { margin-top: 10px; height: 40px; padding: 0 14px; border: 1px solid #4078BD; border-radius: 8px; background: #ffffff; color: #2B5384; font-size: 13px; font-weight: 600; cursor: pointer; }
.hx-filter-apply:hover { background: #F1F6FC; }

.hx-results-empty { padding: 40px 0; }
.hx-results-empty h2 { font-family: 'Poppins', sans-serif; font-size: 22px; color: #16273F; margin: 0 0 8px; }
.hx-results-empty p { font-size: 15px; color: #475569; }

.hx-pagination { display: flex; justify-content: center; align-items: center; gap: 6px; flex-wrap: wrap; }
.hx-page { min-width: 40px; height: 40px; padding: 0 12px; box-sizing: border-box; border: 1px solid #D6E2F0; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; font-weight: 600; color: #16273F; text-decoration: none; }
a.hx-page:hover { background: #F1F6FC; color: #16273F; }
.hx-page.is-current { background: #16273F; border-color: #16273F; color: #ffffff; }
.hx-page--gap { border-color: transparent; }

@media (max-width: 1199px) {
  .hx-results-body.no-filters .hx-results-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
  .hx-results-body { flex-direction: column; gap: 20px; }
  .hx-results-side { width: 100%; }
  .hx-filters { border: 1px solid #D6E2F0; border-radius: 8px; padding: 0 16px; }
  .hx-filters-summary { display: flex; align-items: center; min-height: 48px; font-weight: 600; color: #16273F; cursor: pointer; }
  .hx-filters[open] .hx-filters-summary { border-bottom: 1px solid #E9EEF5; }
  .hx-results-grid, .hx-results-body.no-filters .hx-results-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; }
}
@media (max-width: 479px) {
  .hx-results-grid, .hx-results-body.no-filters .hx-results-grid { grid-template-columns: minmax(0, 1fr); }
  .hx-results-title { font-size: 26px; }
}


/* ==========================================================================
   Helix Exchange product page (layout A: add-on above Add to cart)
   Markup: snippets/product-page-features.liquid, product-horizontal-slider-alt.liquid,
           product-page-section.liquid, hx-product-meta.liquid
   ========================================================================== */
.hx-hide { display: none !important; }

/* Gallery: full-bleed 4:5 type images, rounded, no fixed pixel box */
.hx-gallery .product-zoom-image { border-radius: 14px; overflow: hidden; background: #F1F6FC; }
.hx-gallery #product-cloud-zoom { display: block; width: 100% !important; height: auto !important; }
.hx-gallery #product-cloud-zoom img { display: block; width: 100%; height: auto; }
.hx-gallery .additional-images { margin-top: 14px; }
.hx-gallery .additional-images img { border-radius: 8px; }

/* Buy box */
.hx-buy-col { padding-left: 40px; }
.product-info-main > .inner.hx-buy { display: flex; flex-direction: column; gap: 18px; }
.hx-buy-chips { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.hx-chip-type { font-size: 12px; font-weight: 700; letter-spacing: 0.6px; color: #ffffff; background: #16273F; border-radius: 4px; padding: 3px 9px; }
.hx-chip-code { font-size: 13px; font-weight: 700; letter-spacing: 0.4px; color: #2B5384; border: 1px solid #D6E2F0; border-radius: 4px; padding: 2px 8px; }
.product-info-main .product-name.hx-buy-title { margin: 0; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 32px; line-height: 1.22; color: #16273F; text-transform: none; }
.hx-buy-vendor { margin-top: -8px; font-size: 14px; color: #475569; }
.hx-buy-vendor a { color: #4078BD; font-weight: 600; }
.hx-buy-sku { font-size: 13px; color: #6B7280; }
.product-info-main .hx-buy-price .price-box { margin: 0; display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.product-info-main .hx-buy-price .price-box p { margin: 0; }
.product-info-main .hx-buy-price .price-box .price { font-size: 32px; font-weight: 700; color: #16273F; }
.product-info-main .hx-buy-price .price-box p.old-price .price { font-size: 18px; font-weight: 400; color: #6B7280; text-decoration: line-through; }
.product-info-main .short-des.hx-buy-summary { margin: 0; font-size: 16px; line-height: 1.6; color: #475569; }

.hx-buy-included { display: flex; flex-direction: column; gap: 10px; padding-bottom: 18px; border-bottom: 1px solid #E9EEF5; }
.hx-buy-eyebrow { font-size: 12px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; color: #6B7280; }
.hx-buy-included ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.hx-buy-included li { display: flex; align-items: flex-start; gap: 10px; font-size: 15px; line-height: 1.4; color: #16273F; }
.hx-buy-included li svg { flex-shrink: 0; color: #17703F; }

.hx-buy-form form { display: flex; flex-direction: column; gap: 16px; margin: 0; }
.product-info-main #product .form-group.hx-buy-actions, .product-info-main #product .form-group.hx-buy-variants { margin: 0; display: flex; flex-direction: column; gap: 12px; }
.hx-buy-label { font-size: 14px; font-weight: 600; color: #16273F; margin: 0; }
.product-info-main #product #productSelect { height: 48px; border: 1px solid #D6E2F0; border-radius: 8px; font-size: 15px; color: #16273F; }

/* Instructor Kit add-on (sits above Add to cart) */
.instructor-kit-addon.hx-addon { display: flex; align-items: flex-start; gap: 14px; margin: 0; padding: 16px; border: 1px solid #D6E2F0; border-radius: 10px; background: #F1F6FC; font-weight: 400; cursor: pointer; }
.instructor-kit-addon.hx-addon input[type="checkbox"] { width: 20px; height: 20px; margin: 2px 0 0; flex-shrink: 0; accent-color: #4078BD; cursor: pointer; }
.hx-addon-text { display: flex; flex-direction: column; gap: 4px; }
.hx-addon-name { font-size: 15px; font-weight: 600; color: #16273F; }
.hx-addon-price { color: #2B5384; }
.hx-addon-note { font-size: 13px; font-weight: 400; color: #475569; }
.hx-addon-desc { font-size: 13px; line-height: 1.45; color: #475569; }

/* Quantity stepper + buttons */
.hx-buy-row { display: flex; align-items: center; gap: 12px; }
.hx-qty { display: flex; align-items: center; height: 48px; border: 1px solid #D6E2F0; border-radius: 8px; background: #ffffff; flex-shrink: 0; }
.hx-qty-btn { width: 44px; height: 46px; border: 0; background: transparent; font-size: 20px; line-height: 1; color: #16273F; cursor: pointer; }
.hx-qty-btn:hover { background: #F1F6FC; }
#product .hx-qty #Quantity {
  float: none; width: 44px; height: 46px; margin: 0 !important; padding: 0 !important;
  border: 0; border-radius: 0 !important; background: transparent; box-shadow: none;
  font-size: 16px; font-weight: 600; color: #16273F; text-align: center;
}
.hx-buy #button-cart { flex: 1 1 auto; height: 48px; margin: 0; padding: 0 24px; border-radius: 8px; font-size: 16px; font-weight: 600; text-transform: none; }
.hx-buy #button-cart-buy, .hx-buy .hx-btn-login {
  display: flex; align-items: center; justify-content: center; width: 100%; height: 48px; margin: 0 !important; padding: 0 24px !important;
  border: 1px solid #4078BD; border-radius: 8px; background: #ffffff; color: #2B5384;
  font-size: 16px; font-weight: 600; text-transform: none; text-decoration: none; clear: none;
}
/* Hover inverts, mirroring Add to cart (which goes filled -> white): outline -> filled blue with white text.
   Keyboard focus gets the same treatment. Also covers the "Log in to purchase" button. */
.hx-buy #button-cart-buy:hover, .hx-buy #button-cart-buy:focus-visible,
.hx-buy .hx-btn-login:hover, .hx-buy .hx-btn-login:focus-visible { background: #4078BD; color: #ffffff; border-color: #4078BD; }
.hx-buy-notice { padding: 16px; border: 1px solid #D6E2F0; border-radius: 10px; background: #F1F6FC; font-size: 14px; line-height: 1.55; color: #16273F; }
.hx-buy-notice p { margin: 0 0 8px; }
.hx-buy-notice p:last-child { margin: 0; }
.hx-buy-notice a { color: #2B5384; font-weight: 600; }

/* Tabs (Description / Additional info) */
body .product-info-detailed { margin-top: 56px; }
body .product-info-detailed .nav-tabs { text-align: left; border-bottom: 1px solid #D6E2F0; }
body .product-info-detailed .nav-tabs li { margin-right: 28px; }
body .product-info-detailed .nav-tabs li a, body .product-info-detailed .mobtab a {
  font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 600; text-transform: none; line-height: 22px; padding: 13px 0; color: #475569;
}
body .product-info-detailed .nav-tabs li.active a, body .product-info-detailed .nav-tabs li a:hover { color: #16273F; }
body .product-info-detailed .nav-tabs li a:after { height: 3px; }
body .product-info-detailed .tab-content { max-width: 860px; padding-top: 24px; font-size: 16px; line-height: 1.65; color: #1B2735; text-align: left; }

@media (max-width: 767px) {
  .hx-buy-col { padding-left: 15px; margin-top: 24px; }
  .product-info-main .product-name.hx-buy-title { font-size: 26px; }
}


/* Numerals: the body font (Candara) defaults to old-style figures, which make
   course codes read wrong (AZ-104T00 looks like "AZ-104Too"). Force lining figures
   sitewide, and set course-code chips in Poppins, which only has lining figures. */
body { font-variant-numeric: lining-nums; font-feature-settings: "lnum" 1; }
.hx-chip-code { font-family: 'Poppins', sans-serif; }


/* ==========================================================================
   Helix Exchange homepage (layout A: catalog first)
   Markup: sections/hx-home-intro.liquid, sections/hx-home-audience.liquid,
           templates/index.liquid, snippets/feature-carousal.liquid (carousel headings)
   ========================================================================== */
.hx-home-intro { padding: 32px 0 0; }
.hx-home-copy { display: flex; flex-direction: column; gap: 10px; max-width: 820px; }
.hx-home-eyebrow { font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 13px; letter-spacing: 2px; color: #4078BD; text-transform: uppercase; }
.hx-home-h1 { margin: 0; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 36px; line-height: 1.15; color: #16273F; text-transform: none; }
.hx-home-sub { margin: 0; font-size: 17px; line-height: 1.5; color: #475569; }
.hx-home-stats { display: flex; gap: 56px; margin: 28px 0 0; padding-top: 24px; border-top: 1px solid #D6E2F0; }
.hx-home-stats > div { display: flex; flex-direction: column-reverse; gap: 2px; }
.hx-home-stats dd { margin: 0; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 32px; line-height: 1.1; color: #16273F; }
.hx-home-stats dt { font-size: 14px; font-weight: 400; color: #475569; }
.hx-home-types { margin-top: 32px; display: flex; flex-direction: column; gap: 14px; }
.hx-home-h2 { margin: 0; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 32px; line-height: 1.2; color: #16273F; text-transform: none; }
.hx-type-tiles { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.hx-type-tile {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; height: 100%; min-height: 52px;
  padding: 10px 14px; box-sizing: border-box; border: 1px solid #D6E2F0; border-radius: 12px; background: #ffffff; text-decoration: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.hx-type-tile:hover, .hx-type-tile:focus { border-color: #8FB4DB; box-shadow: 0 4px 16px rgba(22, 39, 63, 0.08); text-decoration: none; }
.hx-type-text { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.hx-type-name { font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 15px; line-height: 1.25; color: #16273F; overflow-wrap: normal; word-break: normal; }
.hx-type-count { font-size: 12px; color: #6B7280; white-space: nowrap; }
.hx-type-arrow { flex-shrink: 0; color: #4078BD; }
.hx-type-tile { min-height: 60px; }

/* Homepage carousels: plain white, left-aligned period headings, View all link */
.main-row.background-full { background: transparent; margin-top: 0; padding-top: 0; padding-bottom: 0; }
.main-row.background-full .tt_product_module { background: transparent; border-radius: 0; margin-top: 0; }
.tt_product_module .module-title {
  display: flex; align-items: baseline; justify-content: space-between; gap: 16px;
  margin: 48px 0 20px; text-align: left; border-bottom: 0;
}
.tt_product_module .module-title h2 {
  font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 32px; line-height: 1.2;
  color: #16273F; text-transform: none; padding: 0;
}
.tt_product_module .module-title h2:after { display: none; }
.tt_product_module .module-title .box-tab, .tt_product_module .module-title .clearfix { display: none; }
.hx-viewall { flex-shrink: 0; font-size: 14px; font-weight: 600; color: #4078BD; text-decoration: none; }
.hx-viewall:hover, .hx-viewall:focus { color: #2B5384; text-decoration: underline; }

/* Audiences + credentials */
.hx-home-audience { padding: 72px 0 80px; }
.hx-home-audience .hx-home-h2 { margin-bottom: 28px; }
.hx-aud-cols { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; }
.hx-aud-cols li { display: flex; flex-direction: column; gap: 10px; padding-top: 18px; border-top: 2px solid #16273F; }
.hx-aud-cols h3 { margin: 0; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 19px; color: #16273F; text-transform: none; }
.hx-aud-cols p { margin: 0; font-size: 15px; line-height: 1.55; color: #475569; }
.hx-cred {
  margin-top: 72px; display: grid; grid-template-columns: 320px repeat(3, minmax(0, 1fr)); gap: 32px; align-items: start;
  padding: 36px 40px; border-radius: 14px; background: #F1F6FC;
}
.hx-cred-h { margin: 0; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 24px; line-height: 1.25; color: #16273F; text-transform: none; }
.hx-cred-item { display: flex; flex-direction: column; gap: 6px; }
.hx-cred-title { font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 17px; color: #16273F; }
.hx-cred-text { font-size: 14px; line-height: 1.5; color: #475569; }

@media (max-width: 1199px) {
  .hx-type-tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hx-cred { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hx-cred-h { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
  .hx-home-h1 { font-size: 32px; }
  .hx-home-h2, .tt_product_module .module-title h2 { font-size: 26px; }
  .hx-home-stats { gap: 32px; }
  .hx-type-tiles, .hx-aud-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }
  .hx-cred { grid-template-columns: minmax(0, 1fr); padding: 28px 24px; }
}


/* ==========================================================================
   Helix Exchange footer (option A: navy, corporate-style)
   Markup: snippets/footer-1.liquid   Settings: sections/footer.liquid
   ========================================================================== */
.hx-foot { background: #16273F; color: #CFE0F2; margin-top: 0; }
.hx-foot a { color: #CFE0F2; text-decoration: none; }
.hx-foot a:hover, .hx-foot a:focus { color: #ffffff; text-decoration: underline; }
.hx-foot-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, 1fr)) minmax(0, 1.3fr); gap: 40px; padding-top: 56px; padding-bottom: 44px; }
.hx-foot-grid:before, .hx-foot-grid:after, .hx-foot-bottom-inner:before, .hx-foot-bottom-inner:after { display: none; }
.hx-foot-brand { display: flex; flex-direction: column; gap: 18px; }
.hx-foot-lockup { display: inline-flex; align-items: center; gap: 12px; align-self: flex-start; }
.hx-foot-lockup:hover { text-decoration: none; }
.hx-foot-mark { flex-shrink: 0; filter: drop-shadow(0 0 4px rgba(143, 180, 219, 0.55)); }
.hx-foot-stack { display: flex; flex-direction: column; gap: 4px; }
.hx-foot-endorse { font-weight: 600; font-size: 9px; line-height: 1; letter-spacing: 0.8px; color: #8FB4DB; white-space: nowrap; }
.hx-foot-divider { width: 1px; height: 34px; background: #2B5384; }
.hx-foot-name { font-weight: 700; font-size: 20px; line-height: 1; color: #ffffff; white-space: nowrap; }
.hx-foot-about { margin: 0; font-size: 14px; line-height: 1.55; color: #CFE0F2; }
.hx-foot-tagline { margin: 0; font-weight: 600; font-size: 15px; color: #ffffff; }
.hx-foot-contact { display: flex; flex-direction: column; gap: 6px; margin: 0; font-style: normal; font-size: 14px; line-height: 1.5; color: #CFE0F2; }
.hx-foot .hx-foot-contact a { color: #8FB4DB; }
.hx-foot-col { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.hx-foot h3 { margin: 0; font-weight: 600; font-size: 13px; letter-spacing: 1px; text-transform: uppercase; color: #8FB4DB; }
.hx-foot-col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.hx-foot-col li a { font-size: 14px; line-height: 1.4; }
.hx-foot-news-text { margin: 0; font-size: 14px; line-height: 1.5; color: #CFE0F2; }
.hx-foot-form { display: flex; align-items: center; height: 44px; border-radius: 8px; background: #ffffff; padding: 0 4px 0 12px; margin: 0; }
.hx-foot-form input[type="email"] { flex: 1 1 auto; min-width: 0; height: 40px; border: 0; outline: none; background: transparent; box-shadow: none; font-size: 14px; color: #16273F; padding: 0; }
.hx-foot-form button { flex-shrink: 0; height: 36px; padding: 0 14px; border: 0; border-radius: 6px; background: #4078BD; color: #ffffff; font-size: 13px; font-weight: 600; cursor: pointer; }
.hx-foot-form button:hover { background: #2B5384; }
.hx-foot-form:focus-within { box-shadow: 0 0 0 3px #8FB4DB; }
.hx-foot-form input[type="email"]:focus { outline: none !important; }
.hx-foot-msg { margin: 0; font-size: 13px; color: #16273F; }
.hx-foot-msg--error { color: #B42318; }
.hx-foot-social { list-style: none; margin: 8px 0 0; padding: 0; display: flex; gap: 8px; }
.hx-foot-social a { width: 44px; height: 44px; border-radius: 8px; border: 1px solid #2B5384; display: flex; align-items: center; justify-content: center; color: #CFE0F2; }
.hx-foot-social a:hover, .hx-foot-social a:focus { background: #213F66; color: #ffffff; text-decoration: none; }
.hx-foot-bottom { background: #101D30; }
.hx-foot-bottom-inner { display: flex; align-items: center; justify-content: space-between; gap: 16px 24px; flex-wrap: wrap; padding-top: 18px; padding-bottom: 18px; }
.hx-foot-creds { margin: 0; font-size: 13px; color: #CFE0F2; }
.hx-foot-creds span { color: #2B5384; margin: 0 6px; }
.hx-foot-legal { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 20px; }
.hx-foot-legal a { font-size: 13px; }
/* Back-to-top button. Layer 900 keeps it above the sticky Add to Cart bar (889); position is set by
   the script in footer-1.liquid (beside the chat bubble, or above any bar fixed to the bottom). */
.hx-back-to-top {
  position: fixed; right: 20px; bottom: 20px; z-index: 900;
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; padding: 0; border: 0; border-radius: 8px;
  background: #4078BD; color: #ffffff; cursor: pointer; box-shadow: 0 4px 12px rgba(22, 39, 63, 0.18);
}
.hx-back-to-top[hidden] { display: none; }
.hx-back-to-top:hover, .hx-back-to-top:focus-visible { background: #2B5384; }

@media (max-width: 1199px) {
  .hx-foot-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hx-foot-brand, .hx-foot-connect { grid-column: span 3; }
}
@media (max-width: 767px) {
  .hx-foot-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 20px; padding-top: 40px; }
  .hx-foot-brand, .hx-foot-connect { grid-column: 1 / -1; }
  .hx-foot-bottom-inner { flex-direction: column; align-items: flex-start; }
}


/* ==========================================================================
   Helix Exchange cart (option A: item list + sticky order summary)
   Markup: snippets/cart-page-section.liquid
   ========================================================================== */
.hx-cart { padding-top: 28px; padding-bottom: 72px; }
.hx-cart-title { margin: 0 0 24px; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 32px; color: #16273F; text-transform: none; }
.hx-cart-count { font-weight: 500; font-size: 18px; color: #475569; margin-left: 8px; }
.hx-cart-layout { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 48px; align-items: start; margin: 0; }
.hx-cart-head, .hx-cart-row { display: grid; grid-template-columns: 88px minmax(0, 1fr) 150px 110px 44px; gap: 20px; align-items: center; }
.hx-cart-head { padding-bottom: 10px; font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #6B7280; }
.hx-right { text-align: right; }
.hx-cart-list { list-style: none; margin: 0; padding: 0; border-bottom: 1px solid #E9EEF5; }
.hx-cart-row { padding: 20px 0; border-top: 1px solid #E9EEF5; }
.hx-cart-thumb { display: block; width: 88px; aspect-ratio: 4 / 5; border-radius: 8px; overflow: hidden; background: #F1F6FC; }
.hx-cart-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hx-cart-info { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.hx-cart-name { font-size: 16px; font-weight: 600; line-height: 1.35; color: #16273F; text-decoration: none; }
.hx-cart-name:hover, .hx-cart-name:focus { color: #4078BD; text-decoration: underline; }
.hx-cart-meta { font-size: 13px; color: #6B7280; }
.hx-cart-each { font-size: 13px; color: #475569; }
.hx-cart .hx-qty { height: 44px; }
.hx-cart .hx-qty-btn { height: 42px; width: 40px; }
.hx-cart .hx-qty-input { width: 40px; height: 42px; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; text-align: center; font-size: 15px; font-weight: 600; color: #16273F; }
.hx-cart-line { font-size: 17px; font-weight: 700; color: #16273F; text-align: right; }
.hx-cart-remove { width: 44px; height: 44px; border-radius: 8px; display: flex; align-items: center; justify-content: center; color: #6B7280; }
.hx-cart-remove:hover, .hx-cart-remove:focus { background: #F1F6FC; color: #B42318; }
.hx-cart-update { margin-top: 16px; height: 44px; padding: 0 16px; border: 1px solid #4078BD; border-radius: 8px; background: #ffffff; color: #2B5384; font-weight: 600; }

.hx-cart-summary { position: sticky; top: 24px; display: flex; flex-direction: column; gap: 16px; padding: 28px; border: 1px solid #D6E2F0; border-radius: 14px; background: #ffffff; box-shadow: 0 8px 24px rgba(22, 39, 63, 0.06); }
.hx-cart-summary-title { margin: 0; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 20px; color: #16273F; text-transform: none; }
.hx-cart-sumrow { display: flex; align-items: baseline; justify-content: space-between; font-size: 15px; color: #475569; }
.hx-cart-subtotal span:last-child { font-size: 24px; font-weight: 700; color: #16273F; }
.hx-cart-note-small { margin: 0; font-size: 13px; line-height: 1.5; color: #6B7280; }
.hx-cart-field { display: flex; flex-direction: column; gap: 8px; }
.hx-cart-field label { margin: 0; font-size: 14px; font-weight: 600; color: #16273F; }
.hx-cart-field input, .hx-cart-notes textarea { width: 100%; box-sizing: border-box; border: 1px solid #D6E2F0; border-radius: 8px; padding: 0 12px; font-size: 14px; color: #16273F; background: #ffffff; }
.hx-cart-field input { height: 44px; }
.hx-cart-notes summary { font-size: 14px; font-weight: 600; color: #2B5384; cursor: pointer; min-height: 32px; display: flex; align-items: center; }
.hx-cart-notes textarea { margin-top: 8px; padding: 10px 12px; min-height: 96px; }
.hx-cart-divider { height: 1px; background: #E9EEF5; }
.hx-cart-terms { display: flex; align-items: flex-start; gap: 10px; }
.hx-cart-terms input { width: 20px; height: 20px; margin: 1px 0 0; flex-shrink: 0; accent-color: #4078BD; cursor: pointer; }
.hx-cart-terms label { margin: 0; font-size: 14px; font-weight: 400; line-height: 1.45; color: #16273F; cursor: pointer; }
.hx-cart-terms a { color: #2B5384; font-weight: 600; text-decoration: underline; }
.hx-cart-error { font-size: 13px; color: #B42318; }
.hx-cart-checkout { display: flex; align-items: center; justify-content: center; height: 52px; border: 0; border-radius: 8px; background: #4078BD; color: #ffffff !important; font-size: 16px; font-weight: 600; text-transform: none; text-decoration: none; cursor: pointer; }
.hx-cart-checkout:hover, .hx-cart-checkout:focus { background: #2B5384; text-decoration: none; }
.hx-cart-continue { text-align: center; font-size: 14px; font-weight: 600; color: #4078BD; text-decoration: none; }
.hx-cart-continue:hover { text-decoration: underline; }
.hx-cart-empty { display: flex; flex-direction: column; gap: 14px; padding-top: 16px; }
.hx-cart-empty p { margin: 0 0 12px; font-size: 17px; line-height: 1.55; color: #475569; }
.hx-cart-browse { align-self: flex-start; padding: 0 24px; }

@media (max-width: 991px) {
  .hx-cart-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .hx-cart-summary { position: static; }
}
@media (max-width: 767px) {
  .hx-cart-head { display: none; }
  .hx-cart-row { grid-template-columns: 64px minmax(0, 1fr) auto; grid-template-areas: "thumb info remove" "thumb qty line"; gap: 10px 14px; }
  .hx-cart-thumb { grid-area: thumb; width: 64px; }
  .hx-cart-info { grid-area: info; }
  .hx-cart-row .hx-qty { grid-area: qty; justify-self: start; }
  .hx-cart-line { grid-area: line; }
  .hx-cart-remove { grid-area: remove; }
}


/* Button shape consistency: every control uses 8px corners (steppers, buttons,
   cart remove, social icons). Theme carousel arrows were 40px circles. Badges and
   carousel dots stay round on purpose; they're indicators, not buttons. */
.owl-carousel.owl-theme .owl-nav div { border-radius: 8px; -webkit-border-radius: 8px; }


/* ==========================================================================
   Helix Exchange account pages (sign in, create account, account, and the
   legacy-wrapped addresses / order / reset / activate pages)
   ========================================================================== */
.hx-acct { padding-top: 28px; padding-bottom: 72px; }
.hx-acct-h1 { margin: 0 0 8px; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 30px; line-height: 1.2; color: #16273F; text-transform: none; }
.hx-acct-h2 { margin: 0 0 14px; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 22px; color: #16273F; text-transform: none; }
.hx-acct-h3 { margin: 0; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 17px; color: #16273F; text-transform: none; }
.hx-acct-lede { display: block; margin: 0 0 18px; font-size: 15px; line-height: 1.5; color: #475569; }
.hx-acct-lede a, .hx-acct-small a, .hx-acct-box a, .hx-field-row a { color: #4078BD; font-weight: 600; }
.hx-acct-small { margin: 10px 0 0; font-size: 13px; color: #6B7280; }
.hx-acct-muted { font-size: 14px; line-height: 1.55; color: #475569; font-style: normal; }
.hx-acct-success { margin-bottom: 14px; padding: 12px 14px; border-radius: 8px; background: #EAF5EE; color: #17703F; font-size: 14px; }

.hx-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; min-width: 0; }
.hx-field label, .hx-field-row label { margin: 0; font-size: 14px; font-weight: 600; color: #16273F; }
.hx-field-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.hx-field-row a { font-size: 13px; }
.hx-field input, .hx-field select, .hx-acct-legacy .form-control {
  width: 100%; height: 46px; box-sizing: border-box; border: 1px solid #D6E2F0; border-radius: 8px;
  padding: 0 12px; font-size: 15px; color: #16273F; background: #ffffff; box-shadow: none;
}
.hx-field input.error, .hx-field input[aria-invalid="true"] { border-color: #B42318; }
.hx-field-hint { font-size: 12px; line-height: 1.45; color: #6B7280; }
.hx-acct-btn, .hx-acct-legacy .btn, .hx-acct-legacy input[type="submit"], .hx-acct-legacy button[type="submit"] {
  display: inline-flex; align-items: center; justify-content: center; width: 100%; height: 48px; padding: 0 24px;
  border: 1px solid #4078BD; border-radius: 8px; background: #4078BD; color: #ffffff; font-size: 16px; font-weight: 600;
  text-transform: none; text-decoration: none; cursor: pointer; box-shadow: none;
}
.hx-acct-btn:hover, .hx-acct-btn:focus, .hx-acct-legacy .btn:hover { background: #2B5384; border-color: #2B5384; color: #ffffff; text-decoration: none; }
.hx-acct-btn--outline { background: #ffffff; color: #2B5384; }
.hx-acct-btn--outline:hover, .hx-acct-btn--outline:focus { background: #F1F6FC; color: #2B5384; border-color: #4078BD; }
.hx-acct-btn--inline, .hx-acct-legacy .btn, .hx-acct-legacy input[type="submit"], .hx-acct-legacy button[type="submit"] { width: auto; }

.hx-login { display: grid; grid-template-columns: minmax(0, 520px) minmax(0, 440px); gap: 56px; justify-content: center; align-items: start; margin-top: 24px; }
.hx-acct-card { padding: 36px; border: 1px solid #D6E2F0; border-radius: 14px; background: #ffffff; }
.hx-acct-panel { display: flex; flex-direction: column; gap: 16px; padding: 36px; border-radius: 14px; background: #F1F6FC; }
.hx-acct-panel .hx-acct-h2 { margin: 0; }
.hx-acct-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.hx-acct-list li { position: relative; padding-left: 24px; font-size: 15px; line-height: 1.45; color: #16273F; }
.hx-acct-list li:before { content: "\2713"; position: absolute; left: 0; top: 0; font-weight: 700; color: #17703F; }
.hx-acct-guest { margin-top: 24px; padding-top: 20px; border-top: 1px solid #E9EEF5; }

.hx-register { max-width: 760px; margin: 12px auto 0; }
.hx-fieldset { border: 0; margin: 0 0 12px; padding: 0 0 12px; border-bottom: 1px solid #E9EEF5; min-width: 0; }
.hx-fieldset:last-of-type { border-bottom: 0; }
.hx-fieldset legend { width: auto; border: 0; margin: 12px 0 14px; padding: 0; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 17px; color: #16273F; }
.hx-fieldset-note { margin: -6px 0 16px; }
.hx-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
.hx-grid-tight { gap: 0 12px; }
.hx-span-2 { grid-column: 1 / -1; }

.hx-acct-hello { margin-bottom: 12px; }
.hx-acct-hello .hx-acct-lede { margin-bottom: 0; }
.hx-acct-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 48px; align-items: start; margin-top: 24px; }
.hx-acct-nav { display: flex; flex-direction: column; gap: 4px; }
.hx-acct-nav a { display: flex; align-items: center; min-height: 44px; padding: 0 14px; border-radius: 8px; font-size: 15px; font-weight: 600; color: #475569; text-decoration: none; }
.hx-acct-nav a:hover, .hx-acct-nav a:focus { background: #F1F6FC; color: #16273F; text-decoration: none; }
.hx-acct-nav a[aria-current="page"] { background: #F1F6FC; color: #16273F; }
.hx-acct-main { display: flex; flex-direction: column; gap: 28px; min-width: 0; }
.hx-acct-table-wrap { border: 1px solid #D6E2F0; border-radius: 12px; overflow-x: auto; }
.hx-acct-table { width: 100%; border-collapse: collapse; font-size: 15px; }
.hx-acct-table th { padding: 12px 18px; background: #F1F6FC; text-align: left; font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #6B7280; white-space: nowrap; }
.hx-acct-table td { padding: 16px 18px; border-top: 1px solid #E9EEF5; color: #475569; white-space: nowrap; }
.hx-acct-table td a { color: #2B5384; font-weight: 600; }
.hx-strong { color: #16273F !important; font-weight: 700; }
.hx-tag { display: inline-block; font-size: 12px; font-weight: 600; color: #475569; background: #F1F6FC; border-radius: 4px; padding: 3px 8px; }
.hx-tag--ok { color: #17703F; background: #EAF5EE; }
.hx-acct-empty { padding: 28px; border: 1px dashed #D6E2F0; border-radius: 12px; }
.hx-acct-empty p { margin: 0 0 14px; font-size: 15px; color: #475569; }
.hx-acct-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.hx-acct-box { display: flex; flex-direction: column; gap: 8px; padding: 22px; border: 1px solid #D6E2F0; border-radius: 12px; }

/* Legacy-wrapped pages: addresses, order detail, reset password, activate account */
.hx-acct-legacy h1 { font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 30px; color: #16273F; text-transform: none; }
.hx-acct-legacy h2, .hx-acct-legacy h3, .hx-acct-legacy legend { font-family: 'Poppins', sans-serif; font-weight: 600; color: #16273F; text-transform: none; border: 0; }
.hx-acct-legacy .table { border: 1px solid #D6E2F0; border-radius: 12px; overflow: hidden; border-collapse: separate; border-spacing: 0; }
.hx-acct-legacy .table > thead > tr > th, .hx-acct-legacy .table > thead > tr > td { background: #F1F6FC; border: 0; font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #6B7280; }
.hx-acct-legacy .table > tbody > tr > td, .hx-acct-legacy .table > tfoot > tr > td { border: 0; border-top: 1px solid #E9EEF5; color: #475569; }
.hx-acct-legacy .table-bordered > tbody > tr > td { border-left: 0; border-right: 0; }
.hx-acct-legacy a { color: #2B5384; }
.hx-acct-legacy select.form-control { padding: 0 10px; }

@media (max-width: 991px) {
  .hx-login, .hx-acct-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .hx-acct-nav { flex-direction: row; flex-wrap: wrap; }
}
@media (max-width: 767px) {
  .hx-grid-2, .hx-acct-cards { grid-template-columns: minmax(0, 1fr); }
  .hx-acct-card, .hx-acct-panel { padding: 24px; }
}

/* Footer fix: social icons sit in a row (the footer column list rule stacked them). */
.hx-foot-col .hx-foot-social { flex-direction: row; flex-wrap: wrap; }

/* Create account button keeps its original id (#button-account), which the theme's base
   button rule targets by id and paints white. Match the id so it gets the primary style. */
.hx-acct #button-account.hx-acct-btn { background: #4078BD; border-color: #4078BD; color: #ffffff; height: 48px; padding: 0 32px; border-radius: 8px; font-size: 16px; }
.hx-acct #button-account.hx-acct-btn:hover, .hx-acct #button-account.hx-acct-btn:focus { background: #2B5384; border-color: #2B5384; color: #ffffff; }


/* ==========================================================================
   Helix Exchange content pages: standard page (FAQ etc.), Contact, 404
   Markup: sections/main-page.liquid, contact-page.liquid, 404-page.liquid
   ========================================================================== */
.hx-content-page { padding-top: 28px; padding-bottom: 72px; }
.hx-page-h1 { margin: 0 0 20px; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 34px; line-height: 1.2; color: #16273F; text-transform: none; }
.hx-page-article { max-width: 780px; }
.hx-rte { font-size: 16px; line-height: 1.7; color: #1B2735; }
.hx-rte p { margin: 0 0 16px; }
.hx-rte h2, .hx-rte h3, .hx-rte h4 { margin: 32px 0 12px; font-family: 'Poppins', sans-serif; font-weight: 700; line-height: 1.3; color: #16273F; text-transform: none; }
.hx-rte h2 { font-size: 24px; } .hx-rte h3 { font-size: 20px; } .hx-rte h4 { font-size: 17px; }
.hx-rte strong, .hx-rte b { color: #16273F; }
.hx-rte a { color: #2B5384; font-weight: 600; text-decoration: underline; }
.hx-rte a:hover { color: #4078BD; }
.hx-rte ul, .hx-rte ol { margin: 0 0 16px; padding-left: 24px; }
.hx-rte li { margin-bottom: 6px; }
.hx-rte img { max-width: 100%; height: auto; border-radius: 8px; }
.hx-rte table { width: 100%; border-collapse: collapse; margin: 0 0 16px; }
.hx-rte th, .hx-rte td { padding: 10px 12px; border-bottom: 1px solid #E9EEF5; text-align: left; }

.hx-contact-layout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 48px; align-items: start; }
.hx-contact-form textarea { width: 100%; box-sizing: border-box; min-height: 160px; border: 1px solid #D6E2F0; border-radius: 8px; padding: 10px 12px; font-size: 15px; color: #16273F; }
.hx-contact-form .hx-cart-terms { margin: 4px 0 8px; }
.hx-contact-form #submitMessage { margin-top: 12px; }
.hx-contact-side { display: flex; flex-direction: column; gap: 24px; }
.hx-contact-map { border-radius: 12px; overflow: hidden; border: 1px solid #D6E2F0; aspect-ratio: 4 / 3; }
.hx-contact-map iframe { width: 100% !important; height: 100% !important; border: 0; display: block; }

.hx-404 { display: flex; flex-direction: column; gap: 28px; }
.hx-404-copy { max-width: 720px; display: flex; flex-direction: column; gap: 10px; padding-top: 24px; }
.hx-404-copy .hx-page-h1 { margin: 0; }
.hx-404-search { display: flex; align-items: center; max-width: 560px; height: 50px; margin-top: 8px; padding: 0 5px 0 14px; border: 1px solid #D6E2F0; border-radius: 8px; background: #ffffff; }
.hx-404-search:focus-within { box-shadow: 0 0 0 3px #8FB4DB; }
.hx-404-search input[type="search"] { flex: 1 1 auto; min-width: 0; height: 44px; border: 0; outline: none !important; background: transparent; font-size: 15px; color: #16273F; }
.hx-404-search button { flex-shrink: 0; height: 38px; padding: 0 18px; border: 0; border-radius: 6px; background: #4078BD; color: #ffffff; font-size: 14px; font-weight: 600; cursor: pointer; }
.hx-404-search button:hover { background: #2B5384; }
.hx-404 .hx-acct-small a { color: #4078BD; font-weight: 600; }

@media (max-width: 991px) {
  .hx-contact-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
}

/* Product image: hover zoom off. Cloud Zoom lays an invisible "mousetrap" layer over the
   image; hiding it (plus the lens and zoom window) stops the zoom. The zoom script itself
   stays attached, because thumbnail clicks and variant changes use it to swap the main image.
   The image also stops acting as a link to the raw full-size file. */
.hx-gallery .mousetrap, .hx-gallery .cloud-zoom-lens, #cloud-zoom-big { display: none !important; }
.hx-gallery #product-cloud-zoom { pointer-events: none; cursor: default; }


/* ==========================================================================
   Helix Exchange News (blog list + article)
   Markup: sections/blog-page.liquid, sections/article-page.liquid
   ========================================================================== */
.hx-news-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 32px; margin-bottom: 40px; }
.hx-news-card { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.hx-news-media { display: block; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: #16273F; }
.hx-news-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .25s ease; }
.hx-news-card:hover .hx-news-media img { transform: scale(1.02); }
.hx-news-body { display: flex; flex-direction: column; gap: 10px; }
.hx-news-meta { margin: 0; font-size: 13px; color: #6B7280; }
.hx-news-title { margin: 0; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 21px; line-height: 1.3; text-transform: none; }
.hx-news-title a { color: #16273F; text-decoration: none; }
.hx-news-title a:hover, .hx-news-title a:focus { color: #4078BD; text-decoration: underline; }
.hx-news-excerpt { margin: 0; font-size: 15px; line-height: 1.6; color: #475569; }
.hx-news-more { align-self: flex-start; font-size: 14px; font-weight: 600; color: #4078BD; text-decoration: none; }
.hx-news-more:hover, .hx-news-more:focus { color: #2B5384; text-decoration: underline; }
.hx-news-card--featured { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 32px; align-items: center; padding-bottom: 40px; border-bottom: 1px solid #E9EEF5; }
.hx-news-card--featured .hx-news-title { font-size: 28px; }
.hx-news-card--featured .hx-news-excerpt { font-size: 16px; }

.hx-article-inner { max-width: 820px; margin: 0 auto; }
.hx-article-head { margin-bottom: 24px; }
.hx-article-head .hx-news-meta { margin-bottom: 10px; }
.hx-article-head .hx-page-h1 { font-size: 36px; margin: 0; }
.hx-article-image { width: 100%; height: auto; border-radius: 12px; margin-bottom: 28px; display: block; }
.hx-article-back { margin: 32px 0 0; padding-top: 20px; border-top: 1px solid #E9EEF5; }
.hx-article-back a { font-size: 14px; font-weight: 600; color: #4078BD; text-decoration: none; }
.hx-article-back a:hover { text-decoration: underline; }
.hx-article .comment-area, .hx-article #comment_form { max-width: 820px; margin-left: auto; margin-right: auto; }

@media (max-width: 991px) {
  .hx-news-card--featured { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}
@media (max-width: 767px) {
  .hx-news-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .hx-news-card--featured .hx-news-title, .hx-article-head .hx-page-h1 { font-size: 24px; }
}

/* Pre-order template: Pre-order is the only purchase button there, so give it the primary style. */
.hx-buy #button-cart-buy.hx-btn-preorder { background: #4078BD; border-color: #4078BD; color: #ffffff; }
.hx-buy #button-cart-buy.hx-btn-preorder:hover, .hx-buy #button-cart-buy.hx-btn-preorder:focus { background: #2B5384; border-color: #2B5384; color: #ffffff; }

/* Cookie banner: brand typography, 44px dismiss button, link color on navy. */
.cc-window { font-family: inherit; font-size: 14px; }
.cc-window .cc-btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; border-radius: 8px; font-weight: 600; }
.cc-window .cc-link { color: #8FB4DB; opacity: 1; }
/* Keep the cookie banner's "Got it!" clear of the Shopify Inbox chat bubble (set to "Lowest",
   bottom-right). Desktop: reserve space on the right. Phones: the banner stacks, so reserve
   space at the bottom instead and the full-width button sits above the bubble. */
/* !important: the banner's own stylesheet (cookieconsent, loaded from cdnjs after the theme's CSS)
   sets the same padding with equal specificity and would otherwise win. */
.cc-window.cc-banner { padding-right: 150px !important; }
@media (max-width: 767px) {
  .cc-window.cc-banner { padding-right: 16px !important; padding-bottom: 86px !important; }
}

/* Product page buttons: the theme draws a "+" before every .button-cart (Add to cart, Buy now,
   Pre-order) with a :before rule in the main stylesheet. Remove it. */
.product-info-main .button-cart:before, .hx-buy .button-cart:before { content: none; display: none; }

/* "More information" link at the end of the shortened on-page summary. */
.hx-more-info { margin-left: 4px; font-weight: 600; color: #2B5384; text-decoration: underline; white-space: nowrap; }
.hx-more-info:hover, .hx-more-info:focus { color: #4078BD; }
