@charset "UTF-8";
#body [contenteditable=true]:focus,
#body [href]:focus,
#body [tabindex]:not([tabindex="-1"]):focus,
#body button:focus,
#body details:focus,
#body textarea:focus {
  outline: none !important;
  border: none !important; }

#body input:focus,
#body select:focus,
#body input[type="checkbox"],
#body input[type="radio"] {
  outline: none !important;
  border: 1px solid #ececec !important; }

input:focus + label {
  outline: none !important;
  border-radius: 0; }

#body .custom-product-template .product.main.left {
  width: 100%;
  float: none; }

#body .custom-product-template .product .productView .custom-product-details-wrapper {
  display: block; }
  @media (max-width: 1023px) {
    #body .custom-product-template .product .productView .custom-product-details-wrapper {
      display: block; } }
  #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images {
    width: 36%;
    display: flex;
    padding: 0;
    margin-bottom: 10px;
    height: 365px; }
    @media (max-width: 1200px) {
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images {
        width: 40%; } }
    @media (max-width: 1023px) {
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images {
        display: block;
        width: 100%;
        height: auto; } }
    #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-image-main {
      border: 1px solid #e8e8e8;
      order: 2;
      width: auto;
      height: 365x; }
      @media (min-width: 1024px) {
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-image-main {
          width: calc(100% - 100px); } }
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-image-main .productView-image {
        height: 100%;
        max-width: 100%;
        min-height: 365px;
        min-width: auto; }
        @media (max-width: 1023px) {
          #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-image-main .productView-image {
            min-height: initial; } }
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-image-main .productView-image img {
          width: 250px !important;
          height: 250px;
          object-fit: cover; }
          @media (max-width: 1023px) {
            #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-image-main .productView-image img {
              width: auto !important;
              height: auto; } }
    #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-thumbnails {
      margin: 30px 20px 0;
      text-align: center; }
      @media (min-width: 1024px) {
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-thumbnails {
          order: 1;
          width: 100px;
          margin: 0; } }
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-thumbnails .slick-list {
        height: 100% !important; }
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-thumbnails .slick-list .slick-track {
          height: 100% !important; }
      @media (min-width: 1024px) {
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-thumbnails li {
          width: auto !important; } }
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-thumbnails li .productView-thumbnail-link {
        width: auto;
        border: 1px solid #e8e8e8; }
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-thumbnails li .productView-thumbnail-link img {
          width: 80px;
          height: 80px; }
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-images .productView-thumbnails li .productView-thumbnail-link.is-active {
          border-color: #b33616; }
  #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details {
    width: 64%;
    display: block;
    font-size: 0;
    padding: 0;
    margin: 0;
    position: relative;
    z-index: 0; }
    @media (max-width: 1200px) {
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details {
        width: 60%; } }
    @media (max-width: 1023px) {
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details {
        width: 100%; } }
    @media (max-width: 767px) {
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details {
        display: block;
        margin: 0; } }
    @media (max-width: 1365px) {
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product {
        width: 100%; } }
    #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-basic-details {
      padding: 0 20px;
      display: inline-block;
      vertical-align: top;
      width: 53%; }
      @media (max-width: 1023px) {
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-basic-details {
          padding: 0 20px 10px 0;
          width: 60%; } }
      @media (max-width: 767px) {
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-basic-details {
          padding: 0;
          width: 100%; } }
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-basic-details .productView-rating .productView-reviewLink {
        font-size: 11px; }
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-basic-details .product-description p {
        font-size: 14px; }
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-basic-details .product-description p:last-child {
          margin-bottom: 0; }
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-basic-details .productView-info {
        margin-top: 10px; }
    #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details {
      padding: 20px !important;
      border: 1px solid #e8e8e8;
      width: 47%;
      display: inline-block;
      vertical-align: top;
      height: 310px;
      overflow: hidden !important;
      position: relative; }
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details.wishlist-include {
        height: 365px; }
      @media (max-width: 1365px) {
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details {
          padding: 15px 15px 0 !important; } }
      @media (max-width: 1023px) {
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details {
          max-width: 100%;
          width: 40%;
          height: 330px; } }
      @media (max-width: 767px) {
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details {
          border-bottom: 1px solid #e8e8e8;
          padding: 20px 20px 0 !important;
          margin: 15px 0;
          max-width: 100%;
          width: 100%;
          height: auto; } }
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details .price-wrapper {
        margin-bottom: 10px; }
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details .price-wrapper .productView-price {
          padding-top: 0;
          padding-bottom: 0; }
      #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details .guarantee-text {
        margin-bottom: 20px; }
        @media (max-width: 1365px) {
          #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details .guarantee-text {
            margin-bottom: 10px; } }
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details .guarantee-text a {
          font-size: 15px; }
        #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details .guarantee-text + .productView-info {
          margin-bottom: 10px;
          margin-top: 0; }
          @media (max-width: 767px) {
            #body .custom-product-template .product .productView .custom-product-details-wrapper .productView-details .productView-product.product-box-details .guarantee-text + .productView-info {
              margin-bottom: 0; } }

#body .recommended-visibility .product .productView .custom-product-details-wrapper .productView-images .productView-thumbnails li .productView-thumbnail-link {
  border: 1px solid #e8e8e8 !important; }
  #body .recommended-visibility .product .productView .custom-product-details-wrapper .productView-images .productView-thumbnails li .productView-thumbnail-link.is-active {
    border-color: #b33616 !important; }

@media (max-width: 767px) {
  #body .productView-description {
    margin-top: 20px; } }

#body .productView-description .tabs .tab .tab-title {
  border: 1px solid #ececec !important;
  border-bottom: 0 !important; }
  #body .productView-description .tabs .tab .tab-title:focus {
    border: 1px solid #ececec !important;
    border-bottom: 0 !important;
    border-radius: 4px 4px 0 0 !important; }

.productView-details .price-section.current-price span.price-label.price-now-label.label-inactive {
  display: inline-block !important; }

@media (max-width: 1023px) {
  div[data-content-region="product_above_tabs--global"] div[data-layout-id] div[data-sub-layout-container]:last-child div[data-sub-layout] {
    flex-basis: 50%;
    max-width: 50%; } }

@media (max-width: 767px) {
  div[data-content-region="product_above_tabs--global"] div[data-layout-id] div[data-sub-layout-container]:last-child div[data-sub-layout] {
    flex-basis: 100%;
    max-width: 100%; } }

@media (max-width: 767px) {
  div[data-content-region="product_above_tabs--global"] div[data-layout-id] div[data-sub-layout-container] div[data-sub-layout] {
    flex-basis: 100%;
    max-width: 100%; } }

.productView-reviewLink + .productView-reviewLink {
  display: inline-block;
  margin-left: 0.78571rem;
  vertical-align: middle; }

@media (max-width: 1200px) {
  body.main.eleven-seventy .main.custom-product-template-container {
    max-width: 1024px !important;
    margin: 0 auto;
    float: none; } }

@media (max-width: 1023px) {
  body.main.eleven-seventy .main.custom-product-template-container {
    max-width: 900px !important; } }

@media (max-width: 899px) {
  body.main.eleven-seventy .main.custom-product-template-container {
    max-width: 768px !important; } }

@media (max-width: 767px) {
  body.main.eleven-seventy .main.custom-product-template-container {
    max-width: 551px !important; } }

@media (max-width: 550px) {
  body.main.eleven-seventy .main.custom-product-template-container {
    max-width: 375px !important; } }

@media (max-width: 374px) {
  body.main.eleven-seventy .main.custom-product-template-container {
    max-width: 320px !important; } }

div#showcase-products .productCarousel-slide.slick-slide {
  display: inline-block; }

.home #showcase-products .slick-next {
  right: 5px !important; }

.subcategory-grid {
  margin-bottom: 20px; }
  .subcategory-grid .navList {
    display: flex;
    flex-wrap: wrap; }
    .subcategory-grid .navList .subcategory-item.noImage {
      width: auto;
      border: 1px solid #000;
      padding: 9px 30px;
      border-radius: 14px;
      margin-right: 30px;
      margin-bottom: 25px; }
      .subcategory-grid .navList .subcategory-item.noImage .subcateogory-image-link {
        display: none; }
      .subcategory-grid .navList .subcategory-item.noImage a.subcategory-link {
        min-height: auto; }
      .subcategory-grid .navList .subcategory-item.noImage:last-of-type {
        padding-right: 30px !important; }

@media (min-width: 1200px) {
  .productView-options.custom-productView-options .form .custom-product-options .custom-product-list {
    margin-top: 10px;
    margin-bottom: 10px; }
  .productView-options.custom-productView-options .form .custom-product-options {
    margin-top: 9px; }
  .productView-options.custom-productView-options .form .custom-product-options .location-zip {
    padding-top: 33px; }
  .recommended-visibility .recommended-position.below section.productView-details {
    margin-bottom: 7px !important; }
  #body .ets-appointment-pref-date {
    margin-top: -23%; }
  #body .productView-options.custom-productView-options .form .custom-product-options .location-zip {
    margin-top: -18% !important; } }

.brand-top-section {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-left: 0;
  margin-right: -10px;
  margin-top: 0px;
  margin-bottom: 10px;
  align-items: center; }
  @media (max-width: 767px) {
    .brand-top-section {
      gap: 15px 0;
      margin-left: 0;
      margin-right: 0;
      margin-top: 15px;
      margin-bottom: 15px; } }
  .brand-top-section .brand-top-col {
    padding-right: 10px;
    padding-left: 10px; }
    @media (max-width: 767px) {
      .brand-top-section .brand-top-col {
        padding-right: 0;
        padding-left: 0; } }
    .brand-top-section .brand-top-col .brand-image-container {
      margin-left: auto;
      margin-right: auto;
      align-items: center;
      max-width: 75px; }
    .brand-top-section .brand-top-col:first-child {
      width: 7%;
      padding-right: 0;
      padding-left: 0; }
      @media (max-width: 767px) {
        .brand-top-section .brand-top-col:first-child {
          width: 100%; } }
    .brand-top-section .brand-top-col:nth-child(2), .brand-top-section .brand-top-col:nth-child(4) {
      width: 17%; }
      @media (max-width: 767px) {
        .brand-top-section .brand-top-col:nth-child(2), .brand-top-section .brand-top-col:nth-child(4) {
          width: 100%; } }
    .brand-top-section .brand-top-col:nth-child(3) {
      width: 34%; }
      @media (max-width: 767px) {
        .brand-top-section .brand-top-col:nth-child(3) {
          width: 100%; } }
    .brand-top-section .brand-top-col:nth-child(5) {
      width: 25%; }
      @media (max-width: 767px) {
        .brand-top-section .brand-top-col:nth-child(5) {
          width: 100%; } }

.header-container .top-menu .content .hlp-header-link {
  display: none; }

.header-container .top-menu .content .navUser-item--cart .crt-text {
  display: none; }

@media (min-width: 1023px) {
  .above-topMenu p {
    font-size: 14px;
    font-family: "Nunito", sans-serif;
    line-height: 15px;
    display: flex; }
    .above-topMenu p strong {
      font-size: 14px !important;
      line-height: 15px !important; }
  .header-container .top-menu {
    height: 28px; }
    .header-container .top-menu .content {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      padding: 5px 0;
      height: 100%; }
      .header-container .top-menu .content .phone-number, .header-container .top-menu .content .hlp-header-link {
        line-height: normal;
        display: inline-block; }
        .header-container .top-menu .content .phone-number a, .header-container .top-menu .content .hlp-header-link a {
          font-weight: 700;
          color: #1a2a44;
          margin: 0 15px;
          text-transform: capitalize;
          text-decoration: none;
          line-height: normal;
          font-family: "Nunito", sans-serif; }
          .header-container .top-menu .content .phone-number a:hover, .header-container .top-menu .content .hlp-header-link a:hover {
            color: #e84d56; }
      .header-container .top-menu .content .navUser-item .navUser-action {
        font-weight: 700;
        text-transform: capitalize;
        line-height: normal;
        font-family: "Nunito", sans-serif; }
      .header-container .top-menu .content .currency-converter ul {
        margin: 0; }
        .header-container .top-menu .content .currency-converter ul .icon.currency {
          margin-left: 0 !important; }
      .header-container .top-menu .content .account-links ul {
        margin: 0;
        display: flex;
        align-items: center; }
      .header-container .top-menu .content .navUser-item--cart .navUser-action {
        display: flex;
        align-items: center;
        top: 0;
        padding-left: 27px; }
        .header-container .top-menu .content .navUser-item--cart .navUser-action.is-open .cart-icon {
          background-color: transparent !important;
          fill: #1a2a44 !important;
          stroke: #1a2a44 !important; }
          .header-container .top-menu .content .navUser-item--cart .navUser-action.is-open .cart-icon svg {
            background-color: transparent !important;
            fill: #1a2a44 !important;
            stroke: #1a2a44 !important; }
        .header-container .top-menu .content .navUser-item--cart .navUser-action:hover .cart-icon {
          background-color: transparent !important;
          fill: #1a2a44 !important;
          stroke: #1a2a44 !important; }
          .header-container .top-menu .content .navUser-item--cart .navUser-action:hover .cart-icon svg {
            background-color: transparent !important;
            fill: #1a2a44 !important;
            stroke: #1a2a44 !important; }
      .header-container .top-menu .content .navUser-item--cart .countPill {
        top: -2px !important;
        right: -21px;
        left: auto;
        border-color: #ececec; }
      .header-container .top-menu .content .navUser-item--cart .navUser-item-cartLabel {
        display: flex; }
      .header-container .top-menu .content .navUser-item--cart .cart-icon {
        margin-right: 0;
        width: 24px;
        height: 20px;
        padding: 0;
        display: flex;
        align-items: center; }
        .header-container .top-menu .content .navUser-item--cart .cart-icon svg {
          width: 22px;
          height: 22px;
          margin-top: 0; }
      .header-container .top-menu .content .navUser-item--cart .crt-text {
        margin-left: 4px;
        display: inline-block; }
  .header-container .navPages-container.inside-header {
    width: calc(100% - 109px);
    display: flex;
    align-items: center;
    padding-left: 7px; }
    .header-container .navPages-container.inside-header .navPages {
      max-width: 420px; }
    .header-container .navPages-container.inside-header .navPages-quickSearch .form-fieldset {
      max-width: 598px;
      width: 100%;
      position: relative; }
      .header-container .navPages-container.inside-header .navPages-quickSearch .form-fieldset .form-input {
        width: 100%;
        background-color: #f8f8f8;
        font-size: 15px;
        color: #7b7b7b;
        font-weight: 400;
        font-family: "Nunito", sans-serif;
        padding-top: 17px;
        padding-bottom: 18px;
        height: 54px;
        padding-left: 53px; }
        .header-container .navPages-container.inside-header .navPages-quickSearch .form-fieldset .form-input::placeholder {
          color: #7b7b7b !important; }
      .header-container .navPages-container.inside-header .navPages-quickSearch .form-fieldset .search-icon {
        left: 9px;
        top: 50%;
        transform: translatey(-50%); }
        .header-container .navPages-container.inside-header .navPages-quickSearch .form-fieldset .search-icon svg {
          fill: #1a2a44; }
      .header-container .navPages-container.inside-header .navPages-quickSearch .form-fieldset .button--primary {
        left: 9px;
        top: 50%;
        transform: translatey(-50%); }
  .header-container .navPages-container .head-service-btns {
    display: flex;
    align-items: center;
    width: calc(100% - 420px);
    justify-content: flex-end;
    gap: 0 7px;
    flex-wrap: wrap;
    padding-left: 5px; }
    .header-container .navPages-container .head-service-btns .col-1 {
      display: flex;
      align-items: center;
      text-decoration: none; }
      .header-container .navPages-container .head-service-btns .col-1.col-1-sub {
        padding: 11px 13px 12px;
        border-radius: 4px;
        width: 35%; }
        .header-container .navPages-container .head-service-btns .col-1.col-1-sub .col-1-img svg {
          width: 33px;
          height: 31px; }
        .header-container .navPages-container .head-service-btns .col-1.col-1-sub:hover {
          background-color: #eaeaea;
          cursor: pointer; }
      .header-container .navPages-container .head-service-btns .col-1.col-2-sub {
        border-radius: 4px;
        padding: 11px 8px;
        width: 31%; }
        .header-container .navPages-container .head-service-btns .col-1.col-2-sub .col-1-img svg {
          width: 32px;
          height: 32px; }
        .header-container .navPages-container .head-service-btns .col-1.col-2-sub p span {
          font-size: 11px; }
        .header-container .navPages-container .head-service-btns .col-1.col-2-sub:hover {
          background-color: #eaeaea; }
      .header-container .navPages-container .head-service-btns .col-1.col-3-sub {
        padding: 10px 15px 10px 18px;
        border: 1px solid #4682b5;
        border-radius: 4px;
        width: 30%; }
        .header-container .navPages-container .head-service-btns .col-1.col-3-sub .col-1-img svg {
          width: 27px;
          height: 31px; }
        .header-container .navPages-container .head-service-btns .col-1.col-3-sub p span {
          font-size: 12px; }
      .header-container .navPages-container .head-service-btns .col-1 .col-1-img {
        display: flex;
        align-items: center;
        justify-content: center; }
      .header-container .navPages-container .head-service-btns .col-1 a {
        display: flex;
        align-items: center;
        text-decoration: none; }
      .header-container .navPages-container .head-service-btns .col-1 p {
        font-size: 14px;
        line-height: 14px;
        color: #1a2a44;
        font-weight: 700;
        font-family: "Nunito", sans-serif;
        margin: 0 0 0 7px; }
        .header-container .navPages-container .head-service-btns .col-1 p span {
          color: #1a2a44;
          font-weight: 400;
          font-family: "Nunito", sans-serif;
          display: flex; }
          .header-container .navPages-container .head-service-btns .col-1 p span a {
            color: #1a2a44;
            padding: 0 2px; }
  .header-container .header {
    display: flex;
    align-items: center;
    max-width: 1220px !important; }
  .header-container .header-logo {
    width: 109px !important;
    height: auto; }
  .header-container .main-nav-container {
    position: relative; }
  .header-container .navPages {
    width: 100%;
    position: initial; }
    .header-container .navPages .custom-pages-nav .navPages-item.top-level.active .navPages-action {
      border-color: #ffcb25; }
    .header-container .navPages .custom-pages-nav .navPages-item.top-level .navPages-action {
      border-bottom: 4px solid transparent;
      font-size: 15px;
      font-family: "Nunito", sans-serif;
      font-weight: 700;
      line-height: normal;
      border-radius: 2px;
      padding-top: 12px;
      padding-bottom: 4px;
      padding-left: 12px !important;
      padding-right: 12px;
      margin: 0 20px; }
      .header-container .navPages .custom-pages-nav .navPages-item.top-level .navPages-action .fa-chevron-down {
        margin-left: 6px;
        top: 2px; }
    .header-container .navPages .custom-pages-nav .navPages-item.top-level .navPage-subMenu {
      margin-top: 1px; }
      .header-container .navPages .custom-pages-nav .navPages-item.top-level .navPage-subMenu .navPage-subMenu-list {
        max-width: 1137px;
        margin: 0 auto;
        padding-left: 0;
        padding-right: 0;
        padding-top: 34px;
        padding-bottom: 37px; }
        .header-container .navPages .custom-pages-nav .navPages-item.top-level .navPage-subMenu .navPage-subMenu-list .navPages-action {
          margin: 0; }
        .header-container .navPages .custom-pages-nav .navPages-item.top-level .navPage-subMenu .navPage-subMenu-list li.level-2 {
          padding-left: 30px !important;
          padding-right: 30px !important; }
          .header-container .navPages .custom-pages-nav .navPages-item.top-level .navPage-subMenu .navPage-subMenu-list li.level-2 a.level-2 {
            font-family: "Nunito", sans-serif;
            font-size: 15px;
            text-decoration: none; }
        .header-container .navPages .custom-pages-nav .navPages-item.top-level .navPage-subMenu .navPage-subMenu-list ul.level-3 {
          margin-top: 14px; }
          .header-container .navPages .custom-pages-nav .navPages-item.top-level .navPage-subMenu .navPage-subMenu-list ul.level-3 a.level-3 {
            font-family: "Nunito", sans-serif;
            font-size: 14px; }
  .header-container .ets-main-menu .ets-main-menu-wrapper {
    width: 100%;
    max-width: 1170px; }
  .header-container .ets-main-menu .navPages {
    width: 100%; } }

@media (min-width: 1200px) {
  .header-container .navPages-container.inside-header .navPages {
    max-width: 598px; }
  .header-container .navPages-container.inside-header .head-service-btns {
    width: calc(100% - 598px);
    padding-left: 10px; }
  .header-container .navPages-container .head-service-btns .col-1 p {
    font-size: 16px;
    line-height: 16px; }
  .header-container .navPages-container .head-service-btns .col-1.col-1-sub {
    padding: 11px 13px 12px;
    width: 34%; }
  .header-container .navPages-container .head-service-btns .col-1.col-2-sub {
    padding: 11px 16px;
    width: 32%; }
  .header-container .navPages-container .head-service-btns .col-1.col-3-sub {
    padding: 10px 28px 10px 19px;
    width: 31%; } }

/* Hide header search on homepage and brand pages */
body.home .navPages-quickSearch,
body.brand-layout .navPages-quickSearch {
  display: none !important; }

/* FORCE MOBILE VISIBILITY FOR ZIP CODE */
@media screen and (max-width: 480px) {
  .citylocation-popup .popup-content {
    width: 90% !important;
    padding: 20px !important; }
  .popup-form {
    display: flex !important;
    flex-direction: row !important;
    width: 100% !important;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
    background: #fff !important; }
  #zipcode {
    display: block !important;
    width: 70% !important;
    min-width: 140px !important;
    height: 50px !important;
    border: none !important;
    font-size: 16px !important; }
  .location-btn {
    width: 30% !important;
    min-width: 50px !important;
    height: 50px !important;
    flex-shrink: 0 !important; } }

.hb-global-header {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important; }

.hb-hidden-options {
  position: absolute !important;
  left: -9999px !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important; }

#hb-custom-options-ui {
  display: block;
  flex: 1; }

.hb-quote-card form {
  display: flex;
  flex-direction: column; }

.hb-step-section {
  margin-bottom: 20px !important;
  padding-top: 14px !important;
  border-top: 2px solid #e8e8e8 !important;
  clear: both !important;
  width: 100% !important;
  display: block !important;
  overflow: hidden !important;
  transition: all 0.3s ease; }
  .hb-step-section:first-of-type {
    margin-top: -24px !important;
    padding-top: 13px !important; }
  .hb-step-section[data-step-type="addon"]::after {
    content: '';
    display: block;
    clear: both;
    height: 0;
    width: 100%; }
  .hb-step-section.error {
    border-top-color: #dc3545 !important;
    background: #fff5f5;
    border-radius: 8px;
    animation: shake 0.5s; }
    .hb-step-section.error .hb-step-circle {
      background: #dc3545;
      animation: pulse-error 1s infinite; }
    .hb-step-section.error .hb-step-label {
      color: #dc3545; }
  .hb-step-section[data-step-type="schedule"] {
    border-top: 2px solid #e8e8e8 !important;
    padding: 14px 0px 10px 0px !important;
    margin-bottom: 10px !important;
    margin-top: 0 !important;
    clear: both !important;
    overflow: hidden !important;
    background: #fafbfc;
    border-radius: 8px; }
    .hb-step-section[data-step-type="schedule"] .hb-step-circle {
      background: #9e9e9e; }
    .hb-step-section[data-step-type="schedule"] .hb-step-header.completed .hb-step-circle {
      background: #27ae60; }
    .hb-step-section[data-step-type="schedule"] .hb-step-label {
      color: #6b7280; }

@keyframes shake {
  0%, 100% {
    transform: translateX(0); }
  10%, 30%, 50%, 70%, 90% {
    transform: translateX(-5px); }
  20%, 40%, 60%, 80% {
    transform: translateX(5px); } }

@keyframes pulse-error {
  0%, 100% {
    transform: scale(1); }
  50% {
    transform: scale(1.1); } }

.hb-step-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
  padding-left: 0 !important;
  margin-left: 0 !important; }
  .hb-step-header.completed .hb-step-circle {
    background: #27ae60; }

.hb-step-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 50%;
  background: #007bff;
  color: #fff;
  font-weight: 800;
  font-size: 16px;
  transition: all 0.3s ease;
  flex-shrink: 0;
  margin: 0 !important; }
  .hb-step-circle::after {
    content: attr(data-step-number); }

.hb-step-label {
  font-size: 14px;
  font-weight: 700;
  color: #1e3a8a; }

.hb-optional-text {
  font-style: italic;
  font-weight: 400;
  color: #9ca3af;
  font-size: 13px; }

.hb-error-banner {
  display: none;
  background: #dc3545;
  color: #fff;
  padding: 12px 16px;
  border-radius: 8px;
  margin-bottom: 16px;
  font-weight: 600;
  font-size: 14px;
  animation: slideDown 0.3s ease; }
  .hb-error-banner.show {
    display: block; }

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px); }
  to {
    opacity: 1;
    transform: translateY(0); } }

.hb-error-banner-icon {
  display: inline-block;
  margin-right: 8px;
  font-size: 16px; }

.hb-pill-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  width: 100%; }

.hb-pill-btn {
  background: #fff;
  border: 2px solid #e0e0e0;
  padding: 12px 8px;
  border-radius: 12px;
  font-weight: 700;
  font-size: 14px;
  color: #333;
  cursor: pointer;
  transition: all 0.3s ease;
  text-align: center;
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: center; }
  .hb-pill-btn:hover {
    border-color: #2196F3;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(33, 150, 243, 0.15); }
  .hb-pill-btn.active {
    background: #2196F3;
    border-color: #2196F3;
    color: #fff;
    box-shadow: 0 4px 12px rgba(33, 150, 243, 0.3); }

.hb-checkbox-pills {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  overflow: hidden; }
  .hb-checkbox-pills::after {
    content: '';
    display: block;
    clear: both;
    height: 0; }

.hb-checkbox-pill {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  border-radius: 12px;
  border: 2px solid #e0e0e0;
  background: #fff;
  cursor: pointer;
  transition: all 0.3s ease;
  font-weight: 700; }
  .hb-checkbox-pill:hover {
    border-color: #90CAF9;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(33, 150, 243, 0.15); }
  .hb-checkbox-pill.active {
    background: #E3F2FD;
    border-color: #2196F3;
    color: #1565C0;
    box-shadow: 0 4px 12px rgba(33, 150, 243, 0.2); }
  .hb-checkbox-pill:not(.active) .hb-checkmark-icon::before {
    content: '☐';
    color: #999; }
  .hb-checkbox-pill.active .hb-checkmark-icon::before {
    content: '✓';
    color: #2196F3; }

.hb-checkbox-pill-label {
  flex: 1;
  display: flex;
  align-items: center;
  line-height: 1.4; }

.hb-checkbox-pill-price {
  font-size: 15px;
  color: #2196F3;
  font-weight: 800; }

.hb-checkmark-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  font-size: 18px;
  font-weight: 700;
  flex-shrink: 0; }

.hb-starting-text {
  transition: opacity 0.3s ease; }
  .hb-starting-text.hide {
    display: none !important; }

.ets-appointment-date-wrap {
  position: relative;
  width: 100%;
  clear: both !important; }

.ets-appointment-pref-date-input {
  padding: 10px 14px;
  border: 2px solid #e0e0e0;
  border-radius: 12px;
  width: 100%;
  font-weight: 600;
  font-size: 14px;
  transition: all 0.2s ease;
  display: none; }
  .ets-appointment-pref-date-input:focus {
    border-color: #2196F3;
    outline: none; }

.ets-no-appoint-pref-date {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 2px dashed #d1d5db;
  border-radius: 12px;
  padding: 8px 12px;
  cursor: pointer;
  transition: all 0.2s ease; }
  .ets-no-appoint-pref-date:hover {
    border-color: #9ca3af;
    border-style: dashed; }
  .ets-no-appoint-pref-date:hover .ets-pancil-wrap {
    opacity: 1; }

.ets-no-appointment-pref {
  margin: 0;
  font-weight: 600;
  font-size: 14px;
  color: #9ca3af;
  display: flex;
  align-items: center; }

.ets-pancil-wrap {
  display: flex;
  align-items: center;
  opacity: 0.8;
  transition: opacity 0.2s ease; }

.ets-pencil-icon {
  font-size: 16px;
  line-height: 1; }

.hb-product-container .productView-options {
  margin: 0 !important; }
  .hb-product-container .productView-options input[type="radio"],
  .hb-product-container .productView-options input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important; }
  .hb-product-container .productView-options .form-option,
  .hb-product-container .productView-options label.form-option {
    display: inline-block !important;
    padding: 14px 28px !important;
    border-radius: 12px !important;
    border: 2px solid #e0e0e0 !important;
    background: #fff !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    min-width: 80px !important;
    text-align: center !important;
    margin: 0 !important;
    vertical-align: top !important; }
    .hb-product-container .productView-options .form-option:hover,
    .hb-product-container .productView-options label.form-option:hover {
      border-color: #90CAF9 !important;
      transform: translateY(-2px) !important;
      box-shadow: 0 4px 12px rgba(33, 150, 243, 0.15) !important; }
  .hb-product-container .productView-options input[type="radio"]:checked + .form-option {
    background: #2196F3 !important;
    border-color: #2196F3 !important;
    color: #fff !important;
    box-shadow: 0 4px 12px rgba(33, 150, 243, 0.3) !important; }
  .hb-product-container .productView-options .form-field {
    margin-bottom: 20px !important;
    position: relative !important; }
    .hb-product-container .productView-options .form-field[data-product-attribute="set-rectangle"], .hb-product-container .productView-options .form-field[data-product-attribute="set-radio"] {
      display: block !important; }
      .hb-product-container .productView-options .form-field[data-product-attribute="set-rectangle"] > *, .hb-product-container .productView-options .form-field[data-product-attribute="set-radio"] > * {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        align-items: flex-start !important; }
      .hb-product-container .productView-options .form-field[data-product-attribute="set-rectangle"]::after, .hb-product-container .productView-options .form-field[data-product-attribute="set-radio"]::after {
        content: "";
        display: table;
        clear: both; }
  .hb-product-container .productView-options .form-radio,
  .hb-product-container .productView-options .form-option-wrapper,
  .hb-product-container .productView-options .form-field[data-product-attribute="set-rectangle"] label,
  .hb-product-container .productView-options .form-field[data-product-attribute="set-radio"] label,
  .hb-product-container .productView-options .form-field[data-product-attribute="set-rectangle"] .form-option,
  .hb-product-container .productView-options .form-field[data-product-attribute="set-radio"] .form-option {
    display: inline-block !important;
    margin: 0 !important;
    float: none !important; }
  .hb-product-container .productView-options .form-checkbox + label {
    display: flex !important;
    align-items: center !important;
    padding: 16px 20px !important;
    border-radius: 12px !important;
    border: 2px solid #e0e0e0 !important;
    background: #fff !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    font-weight: 700 !important;
    margin: 0 0 12px 0 !important;
    width: 100% !important; }
    .hb-product-container .productView-options .form-checkbox + label:hover {
      border-color: #90CAF9 !important;
      transform: translateY(-1px) !important;
      box-shadow: 0 2px 8px rgba(33, 150, 243, 0.15) !important; }
    .hb-product-container .productView-options .form-checkbox + label::before {
      content: "☐" !important;
      font-size: 20px !important;
      margin-right: 12px !important;
      color: #666 !important;
      transition: all 0.3s ease !important; }
  .hb-product-container .productView-options input[type="checkbox"]:checked + label {
    background: #E3F2FD !important;
    border-color: #2196F3 !important;
    color: #1565C0 !important;
    box-shadow: 0 4px 12px rgba(33, 150, 243, 0.2) !important; }
    .hb-product-container .productView-options input[type="checkbox"]:checked + label::before {
      content: "✓" !important;
      color: #2196F3 !important;
      font-weight: 900 !important; }
  .hb-product-container .productView-options select {
    width: 100% !important;
    padding: 12px 16px !important;
    border: 2px solid #e0e0e0 !important;
    border-radius: 12px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    background: #fff !important;
    cursor: pointer !important; }
    .hb-product-container .productView-options select:focus {
      border-color: #2196F3 !important;
      outline: none !important; }
  @media (max-width: 768px) {
    .hb-product-container .productView-options .form-option,
    .hb-product-container .productView-options label.form-option {
      padding: 12px 20px !important;
      font-size: 14px !important; }
    .hb-product-container .productView-options .form-checkbox + label {
      padding: 14px 16px !important;
      font-size: 14px !important; } }

.hb-product-container {
  max-width: 1240px;
  margin: 0 auto;
  padding: 18px 20px;
  display: flex;
  gap: 40px;
  align-items: flex-start; }

.hb-left-visuals {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  background: #fff;
  border-radius: 24px;
  padding: 29px 20px 25px 20px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08); }
  .hb-left-visuals > :not(.hb-whats-included) {
    flex-shrink: 0; }

.hb-whats-included {
  margin-top: 10px;
  padding-top: 0;
  clear: both; }

.hb-product-description-section {
  margin-top: -30px;
  margin-bottom: 0;
  padding: 16px 18px;
  background: #f8fafc;
  border-radius: 12px;
  border: 1px solid #e2e8f0; }
  .hb-product-description-section h3 {
    font-size: 15px;
    font-weight: 700;
    color: #333;
    margin: 0 0 10px 0; }
  .hb-product-description-section p {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: #555; }
  .hb-product-description-section ul, .hb-product-description-section ol {
    margin: 8px 0;
    padding-left: 20px; }
  .hb-product-description-section li {
    font-size: 14px;
    line-height: 1.6;
    color: #555;
    margin-bottom: 4px; }

.hb-description-content {
  font-size: 14px;
  line-height: 1.6;
  color: #555; }
  .hb-description-content > *:first-child {
    margin-top: 0; }
  .hb-description-content > *:last-child {
    margin-bottom: 0; }

.hb-sku-line {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #e2e8f0;
  font-size: 13px;
  color: #666; }
  .hb-sku-line strong {
    color: #333; }

.hb-category {
  font-size: 11px;
  text-transform: uppercase;
  color: #2196F3;
  font-weight: 700;
  letter-spacing: 0.5px;
  margin: 0; }

.hb-title-badges-wrapper {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 0; }

.hb-title-wrapper {
  flex: 1;
  min-width: 0; }

.hb-title {
  font-size: 32px;
  font-weight: 800;
  color: #333;
  margin: 0;
  line-height: 1.2;
  border-bottom: none !important;
  padding-bottom: 0 !important; }

.hb-wishlist-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  cursor: pointer;
  padding: 8px;
  border-radius: 8px;
  transition: all 0.2s ease;
  flex-shrink: 0; }
  .hb-wishlist-icon svg {
    width: 24px;
    height: 24px;
    color: #666;
    transition: all 0.2s ease; }
  .hb-wishlist-icon:hover {
    background: #f0f0f0; }
    .hb-wishlist-icon:hover svg {
      color: #2196F3;
      fill: rgba(33, 150, 243, 0.1); }
    .hb-wishlist-icon:hover .hb-wishlist-text {
      color: #2196F3; }
  .hb-wishlist-icon.active svg {
    fill: #2196F3;
    color: #2196F3; }

.hb-wishlist-text {
  font-size: 10px;
  font-weight: 600;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 0.5px; }

.hb-rating-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 2px;
  margin-bottom: 0;
  font-size: 14px;
  color: #666;
  border-bottom: none !important;
  padding-bottom: 0 !important; }

.hb-stars-wrapper {
  display: inline-flex;
  align-items: center; }
  .hb-stars-wrapper .icon {
    font-size: 18.3px !important;
    width: 18.3px !important;
    height: 18.3px !important; }

.hb-review-count {
  color: #666;
  font-size: 14px; }
  .hb-review-count a {
    color: #666;
    text-decoration: none; }
    .hb-review-count a:hover {
      color: #2196F3;
      text-decoration: underline; }

.hb-image-gallery-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: 8px; }

.hb-trust-badges {
  display: flex;
  flex-direction: row;
  gap: 12px;
  margin: -15px 0 0 0;
  flex-shrink: 0;
  justify-content: flex-start; }

.hb-trust-badge-circle {
  position: relative;
  width: 95px;
  height: 95px;
  flex-shrink: 0; }
  .hb-trust-badge-circle svg {
    width: 100%;
    height: 100%; }

.hb-trust-badge-circle {
  image-rendering: -webkit-optimize-contrast;
  /* helps on Safari/Chrome */
  shape-rendering: geometricPrecision;
  /* smoother curves without losing detail */ }

.hb-badge-jagged-border {
  stroke-linejoin: round;
  /* soften any sharp corners if stroked */
  stroke-linecap: round; }

/* Optional: tiny scale nudge for better subpixel anti-aliasing */
.hb-trust-badge-circle {
  transform: scale(1.002);
  /* often fixes jaggy edges in browsers */ }

.hb-badge-jagged-border {
  shape-rendering: geometricPrecision;
  /* or auto */
  stroke-linecap: round;
  /* if it has any stroke */
  stroke-linejoin: round; }

.hb-badge-inner-white {
  fill: #fff; }

.hb-badge-text-curved {
  fill: #fff;
  font-size: 5.8px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1.2px; }

.hb-badge-center-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 32px;
  height: 32px;
  z-index: 2;
  pointer-events: none; }
  .hb-badge-center-icon svg {
    width: 100%;
    height: 100%; }

.hb-included-heading {
  font-size: 15px;
  font-weight: 700;
  color: #333;
  margin: 20px 0 10px 0; }

.hb-included-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 15px; }

.hb-included-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 15px;
  background: #f8fafc;
  border: 1px solid #eef2f6;
  border-radius: 12px; }
  .hb-included-item svg {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    margin-top: 2px; }

.hb-tile-content strong {
  display: block;
  font-size: 13px;
  color: #1e3a8a;
  font-weight: 700; }

.hb-tile-content span {
  font-size: 11px;
  color: #64748b;
  line-height: 1.3; }

.hb-product-container .productView-images {
  width: 100%;
  max-width: 100%;
  margin: 0;
  flex: 1; }

.hb-product-container .productView-image {
  margin: 0; }

.hb-product-container .productView-img-container {
  position: relative;
  width: 100%;
  margin: 0;
  border-radius: 12px;
  overflow: hidden;
  min-height: 338px;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center; }

.hb-product-container .hb-product-image {
  width: 100%;
  height: auto;
  max-height: 565px;
  object-fit: contain;
  object-position: center;
  display: block;
  margin: 0;
  border-radius: 12px;
  transition: opacity 0.3s ease; }

.hb-product-container .productView-image--default {
  width: 100%;
  height: auto;
  display: block; }

.hb-right-quote {
  flex: 0 0 420px;
  display: flex;
  flex-direction: column; }

.hb-quote-card {
  background: #fff;
  border-radius: 24px;
  padding: 12px 20px 26px;
  margin-top: -1px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
  flex: 1;
  display: flex;
  flex-direction: column; }
  .hb-quote-card .hb-wishlist-icon {
    display: flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
    opacity: 0.7; }
    .hb-quote-card .hb-wishlist-icon:hover {
      opacity: 1; }
    .hb-quote-card .hb-wishlist-icon svg {
      width: 20px;
      height: 20px;
      stroke: #666; }
  .hb-quote-card .hb-wishlist-text {
    font-size: 11px;
    font-weight: 700;
    color: #666;
    letter-spacing: 0.5px; }

.hb-quote-header-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px; }

.hb-quote-heading {
  font-size: 18px;
  font-weight: 800;
  color: #2196F3;
  margin: 0;
  letter-spacing: 1px; }

.hb-price-section {
  margin-bottom: 0;
  padding: 0; }

.hb-price-inline-wrapper {
  display: flex;
  align-items: baseline;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 0; }

.hb-starting-text {
  font-size: 14px;
  color: #666;
  font-weight: 600; }

.hb-quote-card .productView-price {
  font-size: 32px !important;
  font-weight: 800 !important;
  color: #333 !important;
  margin: 0 !important; }

.hb-quote-card .hb-submit-btn,
.hb-quote-card button[type="submit"] {
  width: 100% !important;
  background: #2196F3 !important;
  color: #fff !important;
  border: none !important;
  padding: 12px !important;
  border-radius: 50px !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
  box-shadow: 0 10px 20px rgba(33, 150, 243, 0.2) !important;
  transition: all 0.2s ease !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  min-height: 46px !important;
  margin-top: 20px !important;
  margin-bottom: 0 !important; }
  .hb-quote-card .hb-submit-btn:hover,
  .hb-quote-card button[type="submit"]:hover {
    background: #1976D2 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 24px rgba(33, 150, 243, 0.3) !important; }

.hb-verified-text {
  text-align: center;
  margin-top: 2px;
  font-size: 12px;
  color: #666;
  font-weight: 600; }

.dot-pulse {
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: #27ae60;
  border-radius: 50%;
  margin-right: 8px;
  vertical-align: middle;
  animation: pulse-green 1.5s infinite; }

@keyframes pulse-green {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(39, 174, 96, 0.7); }
  70% {
    transform: scale(1);
    box-shadow: 0 0 0 6px rgba(39, 174, 96, 0); }
  100% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(39, 174, 96, 0); } }

.hb-tabs-nav {
  display: flex;
  justify-content: center;
  gap: 20px;
  padding: 40px 0 30px;
  border-bottom: 2px solid #eee;
  max-width: 1240px;
  margin: 0 auto;
  background: #fff;
  border-radius: 24px 24px 0 0;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08); }

.hb-tab-link {
  background: transparent;
  border: none;
  padding: 12px 25px;
  font-weight: 700;
  font-size: 15px;
  color: #666;
  cursor: pointer;
  position: relative;
  transition: all 0.2s ease; }
  .hb-tab-link:hover {
    color: #2196F3; }
  .hb-tab-link.active {
    color: #2196F3; }
    .hb-tab-link.active::after {
      content: '';
      position: absolute;
      bottom: -2px;
      left: 0;
      right: 0;
      height: 3px;
      background: #2196F3; }

.hb-tab-content {
  max-width: 1240px;
  margin: 0 auto;
  padding: 40px 20px;
  background: #fff;
  border-radius: 0 0 24px 24px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08); }

.hb-tab-pane {
  display: none; }
  .hb-tab-pane.active {
    display: block; }
  .hb-tab-pane p {
    margin-bottom: 1em;
    line-height: 1.6; }
  .hb-tab-pane p strong {
    color: #333;
    font-weight: 700; }
  .hb-tab-pane a {
    color: #2196F3;
    text-decoration: none; }
    .hb-tab-pane a:hover {
      text-decoration: underline; }
  .hb-tab-pane h3 {
    font-size: 20px;
    font-weight: 700;
    color: #333;
    margin-bottom: 20px; }

.productView-reviewLink {
  margin-left: 0; }
  .productView-reviewLink a {
    color: #2196F3;
    font-weight: 600; }

#tab-reviews .productView-rating {
  margin-bottom: 20px; }

.hb-how-step {
  margin-bottom: 24px; }
  .hb-how-step h4 {
    font-size: 16px;
    font-weight: 700;
    color: #2196F3;
    margin: 0 0 8px 0; }
  .hb-how-step p {
    margin: 0;
    color: #555; }

.hb-current-step {
  background: #e3f2fd;
  padding: 16px;
  border-radius: 8px;
  border-left: 4px solid #2196F3; }
  .hb-current-step h4 {
    color: #1565C0; }

.productView-description > .tabs,
.productView > .tabs,
.product-tabs:not(.hb-tabs-nav),
nav.tabs:not(.hb-tabs-nav),
ul.tabs:not(.hb-tabs-nav) {
  display: none !important; }

@media (max-width: 768px) {
  .hb-pickup-banner {
    padding: 16px 18px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important; }
    .hb-pickup-banner > a {
      width: 100% !important;
      box-sizing: border-box !important; } }

.citylocation-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.75);
  z-index: 2147483646 !important; }
  .citylocation-backdrop.open {
    display: block; }

.citylocation-popup {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 2147483647 !important;
  align-items: center;
  justify-content: center;
  pointer-events: none; }
  .citylocation-popup.open {
    display: flex !important;
    pointer-events: auto; }
  .citylocation-popup .popup-content {
    background: url("https://cdn11.bigcommerce.com/s-50tpv0ajym/images/stencil/original/image-manager/modal-background.png?t=1770817711") no-repeat center center;
    background-size: cover;
    position: relative;
    min-height: 363px;
    max-height: 90vh;
    overflow-y: auto;
    width: 500px;
    max-width: 90%;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
    pointer-events: auto; }
  .citylocation-popup .popup-form {
    display: flex !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
    margin-top: 0 !important;
    padding: 0 !important;
    position: relative !important; }
    .citylocation-popup .popup-form::before {
      content: "";
      position: absolute;
      left: 10px;
      top: 50%;
      transform: translateY(-50%);
      width: 16px;
      height: 16px;
      background: url("https://cdn11.bigcommerce.com/s-50tpv0ajym/product_images/uploaded_images/location-pin-blue.png") no-repeat center;
      background-size: contain;
      z-index: 10;
      pointer-events: none; }
    .citylocation-popup .popup-form #zipcode {
      margin: 0 !important;
      border-right: none !important;
      border-radius: 4px 0 0 4px !important;
      float: none !important;
      display: block !important;
      box-sizing: border-box !important;
      padding-left: 35px !important; }
      .citylocation-popup .popup-form #zipcode::placeholder {
        font-size: 12px !important; }
    .citylocation-popup .popup-form .location-btn,
    .citylocation-popup .popup-form .ets-popup-btn {
      background-color: #FDB913 !important;
      border: none !important;
      border-radius: 0 4px 4px 0 !important;
      margin: 0 !important;
      padding: 0 12px !important;
      color: #fff !important;
      flex-shrink: 0 !important;
      float: none !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      position: relative !important;
      left: 0 !important;
      top: 0 !important;
      height: auto !important;
      min-height: 100% !important;
      box-sizing: border-box !important;
      min-width: 50px !important; }
  .citylocation-popup .close-modal-x {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 28px;
    height: 28px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid #ccc;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 9999;
    color: #333;
    font-size: 16px;
    font-family: Arial, sans-serif;
    transition: all 0.2s ease;
    text-decoration: none !important; }
  @media (max-width: 600px) {
    .citylocation-popup .popup-content {
      width: 90% !important;
      max-width: 90% !important;
      max-height: 85vh !important;
      overflow-y: auto !important;
      border-radius: 12px !important; } }

.ets-loader {
  text-align: center;
  margin: 15px auto;
  min-height: 50px; }
  .ets-loader img {
    max-width: 100px; }
  .ets-loader::after {
    content: "Checking availability...";
    display: block;
    font-size: 13px;
    color: #e74c3c;
    margin-top: 8px; }

.popup-text .secure-note {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

#hb-sticky-card {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: #fff;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);
  z-index: 9999;
  transform: translateY(100%);
  transition: transform 0.3s ease-in-out;
  border-top: 3px solid #2196F3;
  padding-bottom: env(safe-area-inset-bottom, 0px); }
  #hb-sticky-card.show {
    transform: translateY(0); }

.hb-sticky-desktop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1240px;
  margin: 0 auto;
  padding: 14px 24px;
  gap: 20px; }

.hb-sticky-mobile {
  display: none; }

.hb-sticky-left {
  flex: 1;
  min-width: 0; }

.hb-sticky-product-name {
  font-size: 16px;
  font-weight: 700;
  color: #333;
  margin-bottom: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.hb-sticky-rating {
  font-size: 13px;
  color: #666;
  display: flex;
  align-items: center;
  gap: 6px; }
  .hb-sticky-rating .icon {
    font-size: 14px !important;
    width: 14px !important;
    height: 14px !important; }

.hb-sticky-right {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0; }

.hb-sticky-price-wrapper {
  text-align: right; }

.hb-sticky-starting {
  display: block;
  font-size: 11px;
  color: #666;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px; }

.hb-sticky-price {
  display: block;
  font-size: 26px;
  font-weight: 800;
  color: #333;
  line-height: 1.2; }

.hb-sticky-btn {
  background: #2196F3 !important;
  color: #fff !important;
  border: none !important;
  padding: 14px 32px !important;
  border-radius: 50px !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
  box-shadow: 0 4px 12px rgba(33, 150, 243, 0.3) !important;
  transition: all 0.2s ease !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  white-space: nowrap !important; }
  .hb-sticky-btn:hover {
    background: #1976D2 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(33, 150, 243, 0.4) !important; }
  .hb-sticky-btn:active {
    transform: translateY(0) !important; }

@media (max-width: 800px) {
  .hb-sticky-desktop {
    display: none; }
  .hb-sticky-mobile {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    padding: 8px 10px 8px 0; }
  .hb-sticky-mobile-spacer {
    flex: 0 0 62px;
    min-width: 62px; }
  .hb-sticky-mobile-inner {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding-right: 8px; }
  .hb-sticky-mobile-row1 {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    width: 100%; }
  .hb-sticky-mobile .hb-sticky-product-name {
    font-size: 12px;
    font-weight: 700;
    color: #555;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    min-width: 0;
    margin-bottom: 0; }
  .hb-sticky-mobile .hb-sticky-price-wrapper {
    flex-shrink: 0;
    text-align: right; }
  .hb-sticky-mobile .hb-sticky-starting {
    font-size: 9px;
    color: #666;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    display: block; }
  .hb-sticky-mobile .hb-sticky-price {
    font-size: 20px;
    font-weight: 800;
    color: #333;
    line-height: 1;
    display: block; }
  .hb-sticky-mobile .hb-sticky-btn {
    width: 100% !important;
    display: block !important;
    padding: 12px 16px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    border-radius: 50px !important;
    text-align: center !important;
    box-sizing: border-box !important; } }

@media (min-height: 900px) {
  .hb-quote-card {
    padding: 28px 24px 30px !important; }
  .hb-price-section {
    margin-bottom: 30px !important; }
  .hb-quote-heading {
    font-size: 22px !important; }
  .productView-price {
    font-size: 36px !important; }
  .productView-images, .hb-product-image {
    max-width: 100% !important;
    margin: 0 !important; }
  .hb-whats-included {
    margin-top: 10px !important; }
  .hb-included-heading {
    font-size: 16px !important;
    margin: 0 0 15px 0 !important; }
  .hb-included-item {
    padding: 18px !important; }
    .hb-included-item svg {
      width: 28px !important;
      height: 28px !important; }
  .hb-tile-content strong {
    font-size: 14px !important; }
  .hb-tile-content span {
    font-size: 12px !important; }
  .hb-submit-btn, .hb-quote-card button[type="submit"] {
    padding: 20px !important;
    font-size: 18px !important;
    min-height: 56px !important; } }

@media (max-width: 1024px) and (min-width: 801px) {
  .productView-img-container {
    min-height: 318px; }
  .hb-product-image {
    max-height: 500px; } }

@media (max-width: 800px) {
  .hb-product-container {
    flex-direction: column;
    padding: 20px 12px;
    gap: 24px;
    align-items: stretch; }
  .hb-left-visuals {
    display: block;
    padding: 16px 16px 12px 16px; }
  .hb-image-gallery-wrapper {
    flex-direction: column;
    margin-top: 12px; }
  .hb-title-badges-wrapper {
    flex-direction: column;
    gap: 10px; }
  .hb-trust-badges {
    flex-direction: row;
    gap: 10px;
    justify-content: center;
    width: 100%;
    margin-top: 8px; }
  .hb-trust-badge-circle {
    width: 85px;
    height: 85px; }
  .hb-badge-text-curved {
    font-size: 5.2px;
    letter-spacing: 1px; }
  .hb-badge-center-icon {
    width: 28px;
    height: 28px; }
  .hb-title {
    font-size: 24px; }
  .hb-rating-row {
    margin-top: 2px;
    margin-bottom: 0; }
  .productView-img-container {
    min-height: 238px; }
  .hb-product-image {
    max-height: 400px; }
  .hb-whats-included {
    margin-top: 10px;
    padding-top: 0; }
  .hb-product-description-section {
    margin-top: 16px;
    margin-bottom: 0;
    padding: 14px; }
    .hb-product-description-section h3 {
      font-size: 14px;
      margin-bottom: 8px; }
    .hb-product-description-section p, .hb-product-description-section li {
      font-size: 13px; }
  .hb-included-heading {
    font-size: 14px;
    margin: 0 0 10px 0; }
  .hb-included-grid {
    grid-template-columns: 1fr; }
  .hb-included-item {
    padding: 12px; }
    .hb-included-item svg {
      width: 24px;
      height: 24px; }
  .hb-tile-content strong {
    font-size: 12px; }
  .hb-tile-content span {
    font-size: 10px; }
  .hb-right-quote {
    flex: 1;
    display: block; }
  .hb-quote-card {
    display: block;
    padding: 12px 16px 32px; }
    .hb-quote-card form {
      display: block; }
  #hb-custom-options-ui {
    flex: none; }
  .hb-submit-btn, .hb-quote-card button[type="submit"] {
    margin-top: 16px !important;
    margin-bottom: 0 !important; }
  .hb-quote-heading {
    font-size: 16px; }
  .hb-price-section {
    margin-bottom: 18px; }
  .hb-wishlist-icon {
    padding: 6px; }
    .hb-wishlist-icon svg {
      width: 20px;
      height: 20px; }
  .hb-wishlist-text {
    font-size: 9px; }
  .hb-step-section[data-step-type="schedule"] {
    margin-top: 30px !important;
    padding-top: 30px !important; }
  .hb-how-step {
    margin-bottom: 20px; }
    .hb-how-step h4 {
      font-size: 15px; }
    .hb-how-step p {
      font-size: 14px; }
  .hb-tab-pane h3 {
    font-size: 18px; } }

@media (max-width: 480px) {
  .hb-title {
    font-size: 22px; }
  .hb-product-container {
    padding: 16px 10px;
    gap: 20px; }
  .hb-title-badges-wrapper {
    gap: 12px; }
  .hb-trust-badges {
    flex-direction: row;
    gap: 8px;
    width: 100%;
    justify-content: center; }
  .hb-trust-badge-circle {
    width: 75px;
    height: 75px; }
  .hb-badge-text-curved {
    font-size: 4.8px;
    letter-spacing: 0.8px; }
  .hb-badge-center-icon {
    width: 24px;
    height: 24px; }
  .hb-left-visuals {
    padding: 14px 14px 10px 14px; }
  .productView-img-container {
    min-height: 198px; }
  .hb-product-image {
    max-height: 350px; }
  .hb-product-description-section {
    margin-top: 12px;
    padding: 12px; }
    .hb-product-description-section h3 {
      font-size: 13px; }
    .hb-product-description-section p, .hb-product-description-section li {
      font-size: 12px; } }

@media (max-width: 400px) {
  .hb-pill-container {
    grid-template-columns: 1fr; }
  .hb-quote-heading {
    font-size: 15px; }
  .hb-title {
    font-size: 20px; }
  .hb-wishlist-icon {
    padding: 4px; }
    .hb-wishlist-icon svg {
      width: 18px;
      height: 18px; } }
