* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  font-family: "Poppins", sans-serif !important;
  font-size: 16px;
  line-height: 1.5;
  color: #222;
  background-color: #fff;
}
.labozon-header {
    position: relative;
    z-index: 1000;
    background: #fff;
    /* font-family: "Outfit", sans-serif; */
}
.main_labozon-section {
  position: relative;
}
.labozon-wrap {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    align-items: center;
}

.labozon-topbar {
    /* background: #27364a; */
    background-color: #001c42;
    color: #fff;
    /* background: #2DAAE2;
    background: linear-gradient(219deg,rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%); */
}

.labozon-topbar-inner {
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.labozon-welcome {
    font-size: 13px;
}

.labozon-top-links {
    display: flex;
    align-items: center;
    /* gap: 22px; */
}

.labozon-top-links a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #fff;
    font-size: 13px;
    text-decoration: none;
    transition: .25s ease;
    /* margin: 0 5px; */
    padding: 0 8px;
}
.labozon-top-links a:nth-child(1){
    border-right: 1px solid #fff;
}
.labozon-top-links a:nth-child(2){
    border-right: 1px solid #fff;
}
.labozon-top-links a:nth-child(3){
    border-right: 1px solid #fff;
}
.labozon-top-links a:hover {
    color: #fba230;
}


.labozon-middle {
    /* background: #f4f4f4; */
    border-bottom: 1px solid #edf1f4;
    background: #2DAAE2;
  background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

.labozon-middle-inner {
    min-height: 72px;
    display: grid;
    grid-template-columns: 210px minmax(300px, 1fr) auto;
    align-items: center;
    gap: 35px;
}

.labozon-logo {
    display: block;
}

.labozon-logo img {
    width: 230px;
    max-width: 100%;
    display: block;
}

.labozon-search-area {
    position: relative;
}

.labozon-search-box {
    height: 40px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 15px;
    background: #f7fafc;
    border: 1px solid #fba331;
    border-radius: 4px;
    transition: .25s ease;
}

.labozon-search-box:focus-within {
    background: #fff;
    border-color: #ed4929;
    box-shadow: 0 0 0 3px rgba(55, 180, 182, .08);
}

.labozon-search-icon {
    color: #677888;
    font-size: 17px;
}

.labozon-search-box input {
    width: 100%;
    height: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #27364a;
    font-size: 13px;
}

.labozon-search-box input::placeholder {
    color: #8c9aa6;
}

.labozon-search-clear {
    display: none;
    border: 0;
    background: transparent;
    color: #677888;
    cursor: pointer;
}


.labozon-search-suggestions {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    display: none;
    grid-template-columns: .9fr 1fr 1.35fr;
    min-height: 270px;
    background: #fff;
    border: 1px solid #e2e9ee;
    border-radius: 10px;
    box-shadow: 0 20px 45px rgba(39, 54, 74, .13);
    overflow: hidden;
    z-index: 2000;
}

.labozon-search-suggestions.show {
    display: grid;
}

.labozon-suggestion-column {
    min-width: 0;
    padding: 20px;
}

.labozon-suggestion-column + .labozon-suggestion-column {
    border-left: 1px solid #edf1f4;
}

.labozon-suggestion-heading {
   margin-bottom: 14px;
  color: #fba230;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1px;
}

.labozon-suggestion-list {
    max-height: 300px;
    overflow-y: auto;
}

.labozon-suggestion-list::-webkit-scrollbar,
.labozon-mega-product-grid::-webkit-scrollbar {
    width: 4px;
}

.labozon-suggestion-list::-webkit-scrollbar-thumb,
.labozon-mega-product-grid::-webkit-scrollbar-thumb {
    background: #cbd5dc;
    border-radius: 10px;
}

.labozon-suggestion-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px;
    margin-bottom: 3px;
    color: #27364a;
    text-decoration: none;
    border-radius: 6px;
    transition: .2s ease;
}

.labozon-suggestion-item:hover {
    background: #f3f9fa;
}

.labozon-suggestion-image {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f7fafc;
    border-radius: 5px;
    overflow: hidden;
}

.labozon-suggestion-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.labozon-suggestion-item span {
    font-size: 13px;
  line-height: 1.4;
  font-weight: 500;
}

.labozon-no-results {
    padding: 20px 5px;
    color: #8998a5;
    font-size: 11px;
}


.labozon-header-actions {
    display: flex;
    align-items: center;
    /* gap: 20px; */
}

.labozon-action-account,
.labozon-action-wishlist,
.labozon-action-cart {
    position: relative;
    display: flex;
    align-items: center;
    gap: 2px;
    color: #27364a;
    background: transparent;
    border: 0;
    font-size: 10px;
    text-decoration: none;
    font-weight: 500;
    cursor: pointer;    
    padding: 0 4px;
}

.labozon-action-account > i,
.labozon-action-wishlist > i,
.labozon-cart-icon > i {
    color: #2b55a3;
    font-size: 21px;
}

.labozon-cart-icon b {
    position: absolute;
    top: -11px;
    left: 22px;
    min-width: 16px;
    height: 16px;
    padding: 0 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #fba030;
    border-radius: 50%;
    font-size: 8px;
    font-weight: 600;
}
.labozon-action-wishlist b{
    position: absolute;
    top: -11px;
    left: 22px;
    min-width: 16px;
    height: 16px;
    padding: 0 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #fba030;
    border-radius: 50%;
    font-size: 8px;
    font-weight: 600;
}
.labozon-cart-icon {
    position: relative;
    display: block;
}
.labozon-header-actions .qq{
    border: 1px solid #fff;
    color: #fff;
    padding: 8px 12px;
    border-radius: 4px;
    text-decoration: none;
    font-size: 15px;
    font-weight: 600;
    background: #FDA731;
    background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);   
}

.labozon-navigation {
    background: #f1f1f1;
    /* background: #FDA731;
background: linear-gradient(219deg,rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%); */
    border-bottom: 1px solid #e8edf1;
}
.labozon-action-account, .labozon-action-wishlist{
    border-right: 1px solid #fc9f31;
    margin-right: 15px;
  padding-right: 15px;
}
.labozon-action-cart{
    margin-right: 36px;
}
.labozon-navigation-inner {
    min-height: 40px;
}

.labozon-main-menu {
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
}

.labozon-main-menu > a,
.labozon-category-trigger,
.labozon-quick-trigger {
    height: 40px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #606060;
    background: transparent;
    border: 0;
    font-family: inherit;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.labozon-main-menu > a:hover,
.labozon-category-trigger:hover,
.labozon-quick-trigger:hover {
    color: #2daae2;
}


.labozon-category-menu {
    position: static;
}

.labozon-category-trigger i,
.labozon-quick-trigger i {
    font-size: 9px;
    transition: transform .25s ease;
}

.labozon-category-menu.is-open .labozon-category-trigger i,
.labozon-quick-menu:hover .labozon-quick-trigger i {
    transform: rotate(180deg);
}


.labozon-category-mega {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    padding: 0 20px;
    background: #fff;
    border-top: 1px solid #edf1f4;
    border-bottom: 1px solid #dfe7ec;
    box-shadow: 0 20px 40px rgba(39, 54, 74, .12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: .25s ease;
    pointer-events: none;
}

.labozon-category-menu.is-open .labozon-category-mega {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

.labozon-mega-layout {
    width: 100%;
    /* max-width: 1380px; */
    min-height: 390px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 280px 330px minmax(0, 1fr);
}

.labozon-mega-layout.no-subcategories {
    grid-template-columns: 280px minmax(0, 1fr);
}

.labozon-mega-layout.no-subcategories .labozon-mega-subcategory-area {
    display: none;
}

.labozon-mega-layout.no-subcategories .labozon-mega-product-area {
    border-left: 1px solid #e9eef2;
}

.labozon-mega-category-area,
.labozon-mega-subcategory-area,
.labozon-mega-product-area {
    padding: 25px;
}

.labozon-mega-category-area {
    background: #f8fafb;
}

.labozon-mega-subcategory-area {
    border-left: 1px solid #e9eef2;
    border-right: 1px solid #e9eef2;
}

.labozon-mega-title {
    margin-bottom: 18px;
    color: #fba331;
    font-size: 15px;
    font-weight: 500;
    text-transform: uppercase;
}

.labozon-mega-category-list {
    display: flex;
    flex-direction: column;
    gap: 3px;
    height: 50vh;
    max-height: 50vh;
    overflow-y: auto;
    scroll-behavior: smooth !important;
    scrollbar-width: thin;
    scrollbar-color: #b9cbd3 transparent;
    padding-right: 4px;
}

.labozon-mega-category-list::-webkit-scrollbar {
    width: 6px;
}

.labozon-mega-category-list::-webkit-scrollbar-track {
    background: transparent;
}

.labozon-mega-category-list::-webkit-scrollbar-thumb {
    background: #b9cbd3;
    border-radius: 10px;
}

.labozon-mega-slider {
    position: relative;
    min-width: 0;
}

.labozon-mega-slider-arrow {
    position: absolute;
    left: 50%;
    z-index: 3;
    width: 24px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: #63798b;
    background: rgba(255, 255, 255, .96);
    border: 1px solid #cbd8df;
    border-radius: 4px;
    box-shadow: 0 2px 6px rgba(39, 54, 74, .08);
    transform: translateX(-50%);
    cursor: pointer;
    transition: color .2s ease, background-color .2s ease, border-color .2s ease, opacity .2s ease;
}

.labozon-mega-slider-arrow:first-child {
    top: 0;
}

.labozon-mega-slider-arrow:last-child {
    bottom: 0;
}

.labozon-mega-slider-arrow:hover:not(:disabled) {
    color: #fff;
    background: #37b4b6;
    border-color: #37b4b6;
}

.labozon-mega-slider-arrow:disabled {
    opacity: .35;
    cursor: default;
}

.labozon-mega-category-item {
    width: 100%;
    padding: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #677888;
    background: transparent;
    border: 0;
    border-radius: 6px;
    text-align: left;
    font-size: 16px;
    cursor: pointer;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    font-weight: 600;
    transition: .2s ease;
}

.labozon-mega-category-item:hover,
.labozon-mega-category-item.active {
    color: #27364a;
    background: #fff;
    box-shadow: 0 4px 15px rgba(39, 54, 74, .06);
}

.labozon-mega-category-item i {
    color: #37b4b6;
    font-size: 10px;
}

.labozon-mega-subcategory-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.labozon-mega-slider-track {
    max-height: 50vh;
    overflow-y: auto;
    scroll-behavior: smooth !important;
    scrollbar-width: thin;
    scrollbar-color: #b9cbd3 transparent;
    padding-right: 5px;
}

.labozon-mega-slider-track::-webkit-scrollbar {
    width: 6px;
}

.labozon-mega-slider-track::-webkit-scrollbar-thumb {
    background: #b9cbd3;
    border-radius: 10px;
}

.labozon-mega-subcategory-item {
    display: block;
    padding: 8px;
    color: #27364a;
    border: 1px solid #edf1f4;
    border-radius: 7px;
    text-decoration: none;
    transition: .2s ease;
}

.labozon-mega-subcategory-item:hover {
    border-color: #37b4b6;
}

.labozon-mega-subcategory-image {
    height: 75px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 7px;
    background: #f7fafc;
    border-radius: 5px;
    overflow: hidden;
}

.labozon-mega-subcategory-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.labozon-mega-subcategory-item span {
    display: block;
    font-size: 13px;
    line-height: 1.4;
}

.labozon-mega-product-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 15px;
}

.labozon-mega-product-heading span {
    display: block;
    margin-bottom: 5px;
    color: #37b4b6;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 1px;
}

.labozon-mega-product-heading h3,
.labozon-mega-product-heading .labozon-mega-product-title {
    margin: 0;
    color: #27364a;
    font-family: inherit;
    font-size: 17px;
    font-weight: 500;
}

.labozon-mega-product-heading a {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #37b4b6;
    font-size: 10px;
    text-decoration: none;
}

.labozon-mega-product-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    overflow-y: auto;
    padding-right: 5px;
}

.labozon-mega-product-card {
    min-width: 0;
    padding: 9px;
    border: 1px solid #edf1f4;
    border-radius: 7px;
    text-decoration: none;
    transition: .2s ease;
}

.labozon-mega-product-card:hover {
    border-color: #37b4b6;
}

.labozon-mega-product-image {
    height: 105px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 8px;
    background: #f8fafc;
    border-radius: 5px;
    overflow: hidden;
}

.labozon-mega-product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.labozon-mega-product-card h4 {
    margin: 0;
    color: #27364a;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.45;
}


.labozon-quick-menu {
    position: relative;
}

.labozon-quick-dropdown {
    position: absolute;
    top: calc(100% + 1px);
    right: 0;
    width: 230px;
    padding: 10px;
    background: #fff;
    border: 1px solid #e5ebef;
    box-shadow: 0 15px 35px rgba(39, 54, 74, .12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: .25s ease;
}

.labozon-quick-menu:hover .labozon-quick-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.labozon-quick-dropdown a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    color: #677888;
    font-size: 11px;
    text-decoration: none;
    border-radius: 5px;
}

.labozon-quick-dropdown a:hover {
    color: #37b4b6;
    background: #f5fafb;
}


.labozon-mobile-toggle,
.labozon-mobile-backdrop,
.labozon-mobile-menu {
    display: none;
}

.labozonlinks{
    display: flex;
    gap: 5px;
    margin-left: auto;
}
.labozonlinks .headwh, .labozonlinks .headinfo{
    display: flex;
    gap: 5px; 
    font-size: 16px;
    text-decoration: none;
    color: #252525;
    font-weight: 600;
    /* align-items: center; */
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}
.labozonlinks .headwh span i{
    font-size: 22px;
    color: #53cc53;
}
.labozonlinks .headinfo span i{
    font-size: 22px;
    color: #f14e31;
    background-image: linear-gradient(90deg, #f14e31, #fca331);
    background-size: 100% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}
@media (max-width: 1100px) {

    .labozon-middle-inner {
        grid-template-columns: 160px minmax(250px, 1fr) auto;
        gap: 20px;
    }

    .labozon-logo img {
        width: 145px;
    }

    .labozon-header-actions {
        gap: 12px;
    }

    .labozon-action-account span,
    .labozon-action-wishlist span
     {
        display: none;
    }
    .labozon-action-cart > span:last-child {
        display: block;
    }
    .labozon-main-menu {
        gap: 18px;
    }

    .labozon-main-menu > a,
    .labozon-category-trigger,
    .labozon-quick-trigger {
        font-size: 10px;
    }

}

@media (max-width: 991px){
    .labozon-navigation {
        display: none;
    }
    
}
@media (max-width: 991px) {

    .labozon-topbar {
        display: none;
    }

    .labozon-middle-inner {
        min-height: 70px;
        display: grid;
        grid-template-columns: 42px 1fr auto;
        gap: 12px;
    }

    .labozon-mobile-toggle {
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #27364a;
        background: #f5f8fa;
        border: 1px solid #e2e9ed;
        border-radius: 6px;
        font-size: 21px;
        cursor: pointer;
    }

    .labozon-logo {
        justify-self: left;
    }

    .labozon-logo img {
        width: 125px;
    }

    .labozon-header-actions {
        gap: 0px;
    }

    .labozon-action-account,
    .labozon-action-wishlist,
    .labozon-action-cart {
        font-size: 0;
        margin-right: 8px;
  padding-right: 8px;
    }

    .labozon-action-account > i,
    .labozon-action-wishlist > i,
    .labozon-cart-icon > i {
        font-size: 19px;
    }

    .labozon-search-area {
        position: absolute;
        top: 70px;
        left: 15px;
        right: 15px;
        z-index: 100;
    }

    .labozon-search-box {
        height: 40px;
    }

    .labozon-middle {
        padding-bottom: 58px;
    }

    .labozon-navigation {
        display: none;
    }


    .labozon-search-suggestions {
        position: absolute;
        top: calc(100% + 7px);
        grid-template-columns: 1fr;
        max-height: 65vh;
        overflow-y: auto;
    }

    .labozon-suggestion-column {
        padding: 15px;
    }

    .labozon-suggestion-column + .labozon-suggestion-column {
        border-top: 1px solid #edf1f4;
        border-left: 0;
    }

    .labozon-suggestion-list {
        max-height: 160px;
    }


    .labozon-mobile-backdrop {
        position: fixed;
        inset: 0;
        display: block;
        background: rgba(16, 28, 40, .45);
        backdrop-filter: blur(2px);
        opacity: 0;
        visibility: hidden;
        transition: .3s ease;
        z-index: 5000;
    }

    .labozon-mobile-backdrop.show {
        opacity: 1;
        visibility: visible;
    }

    .labozon-mobile-menu {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: min(88%, 380px);
        display: block;
        background: #fff;
        box-shadow: 15px 0 40px rgba(0, 0, 0, .15);
        transform: translateX(-100%);
        transition: transform .35s ease;
        z-index: 5001;
        overflow: hidden;
    }

    .labozon-mobile-menu.show {
        transform: translateX(0);
    }

    .labozon-mobile-head {
        min-height: 70px;
        padding: 0 18px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-bottom: 1px solid #edf1f4;
    }

    .labozon-mobile-logo img {
        width: 130px;
    }

    .labozon-mobile-close,
    .labozon-mobile-panel-close {
        width: 36px;
        height: 36px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #27364a;
        background: #f5f8fa;
        border: 0;
        border-radius: 5px;
        cursor: pointer;
    }

    .labozon-mobile-content {
        padding:0 15px;
        overflow-y: auto;
        height: calc(100% - 70px);
    }

    .labozon-mobile-content > a,
    .labozon-mobile-category-button,
    .labozon-mobile-quick-button {
        width: 100%;
        min-height: 38px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 0 13px;
        color: #27364a;
        background: #fff;
        border: 0;
        border-bottom: 1px solid #edf1f4;
        font-size: 18px;
        text-align: left;
        text-decoration: none;
        cursor: pointer;
        font-family: "Sofia Sans Semi Condensed", sans-serif;
    }

    .labozon-mobile-content > a i,
    .labozon-mobile-category-button i,
    .labozon-mobile-quick-button i {
        color: #37b4b6;
    }

    .labozon-mobile-category-button > span,
    .labozon-mobile-quick-button > span {
        display: flex;
        align-items: center;
        gap: 11px;
    }


    .labozon-mobile-panel {
        position: absolute;
        inset: 70px 0 0;
        padding: 15px;
        background: #fff;
        transform: translateX(100%);
        transition: transform .3s ease;
        z-index: 2;
        overflow-y: auto;
    }

    .labozon-mobile-panel.show {
        transform: translateX(0);
    }

    .labozon-mobile-panel-head {
        min-height: 45px;
        display: grid;
        grid-template-columns: 36px 1fr 36px;
        align-items: center;
        gap: 10px;
        margin-bottom: 12px;
        border-bottom: 1px solid #edf1f4;
    }

    .labozon-mobile-panel-head .labozon-mobile-panel-title {
        margin: 0;
    color: #27364a;
    font-size: 18px;
    font-weight: 700;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    }

    .labozon-mobile-back {
        width: 36px;
        height: 36px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #27364a;
        background: #f5f8fa;
        border: 0;
        border-radius: 5px;
        cursor: pointer;
    }

    .labozon-mobile-category-item {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        min-height: 38px;
        padding: 0 12px;
        color: #27364a;
        background: #fff;
        border: 1px solid #edf1f4;
        border-radius: 7px;
        margin-bottom: 8px;
         font-family: "Sofia Sans Semi Condensed", sans-serif;
        font-size: 16px;
        text-align: left;
        cursor: pointer;
    }

    .labozon-mobile-category-item i {
        color: #37b4b6;
    }

    .labozon-mobile-subcategory-item {
        display: flex;
        align-items: center;
        gap: 12px;
        width: 100%;
        padding: 8px;
        margin-bottom: 8px;
        color: #27364a;
        background: #fff;
        border: 1px solid #edf1f4;
        border-radius: 7px;
        text-decoration: none;
    }

    .labozon-mobile-subcategory-image {
        width: 58px;
        height: 58px;
        flex: 0 0 58px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #f7fafc;
        border-radius: 5px;
        overflow: hidden;
    }

    .labozon-mobile-subcategory-image img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .labozon-mobile-subcategory-item span {
        color: #27364a;
        font-family: "Sofia Sans Semi Condensed", sans-serif;
        font-size: 16px;
        text-align: left;
        cursor: pointer;
    }

    .labozon-mobile-product-item {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 9px;
        margin-bottom: 8px;
        color: #27364a;
        border: 1px solid #edf1f4;
        border-radius: 7px;
        text-decoration: none;
    }

    .labozon-mobile-product-image {
        width: 60px;
        height: 60px;
        flex: 0 0 60px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #f7fafc;
        border-radius: 5px;
        overflow: hidden;
    }

    .labozon-mobile-product-image img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .labozon-mobile-product-item span {
        font-size: 11px;
        line-height: 1.5;
    }

    .labozon-mobile-quick-list a {
        display: flex;
        align-items: center;
        gap: 12px;
        min-height: 48px;
        padding: 0 12px;
        color: #27364a;
        border-bottom: 1px solid #edf1f4;
        font-size: 12px;
        text-decoration: none;
    }

    .labozon-mobile-quick-list a i {
        width: 20px;
        color: #37b4b6;
        font-size: 16px;
    }
    .labozon-header-actions .qq {
        padding: 6px 12px;
        font-size: 9px;
    }

}


@media (max-width: 450px) {

    .labozon-middle-inner {
        grid-template-columns: 38px 1fr auto;
        gap: 7px;
        padding: 0 12px;
    }

    .labozon-mobile-toggle {
        width: 36px;
        height: 36px;
    }

    .labozon-logo img {
        width: 110px;
    }

    .labozon-header-actions {
        gap: 6px;
    }

    .labozon-action-account > i,
    .labozon-action-wishlist > i,
    .labozon-cart-icon > i {
        font-size: 13px;
    }

}
/* -------------------------banner */
.labozon_banner {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 4;
    min-height: 620px;
    overflow: hidden;
    background: #071c2c;
}

.labozon_banner_slider {
    position: relative;
    width: 100%;
    height: 100%;
}

.labozon_banner_slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url('../images/autoclave-banner.webp');
    opacity: 0;
    visibility: hidden;
    transform: scale(1.05);
    transition:
        opacity 0.9s ease,
        visibility 0.9s ease,
        transform 5.5s ease;
}

.labozon_banner_slide.active {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
    z-index: 2;
}

.labozon_banner_overlay {
    position: absolute;
    inset: 0;
    /* background:
        linear-gradient(
            25deg,
            rgba(3, 19, 31, 0.94) 0%,
            rgba(3, 19, 31, 0.82) 28%,
            rgba(3, 19, 31, 0.42) 55%,
            rgba(3, 19, 31, 0.08) 100%
        ); */
        background: linear-gradient( 25deg, rgba(3, 19, 31, 0.19) 0%, rgba(3, 19, 31, 0.28) 28%, rgba(3, 19, 31, 0.1) 55%, rgba(3, 19, 31, 0.08) 100% );
}

.labozon_banner_container {
    position: relative;
    z-index: 3;
    width: 100%;
    height: 100%;
    max-width: 1480px;
    margin: 0 auto;
    padding: 40px 70px;
    display: flex;
    align-items: center;
}

.labozon_banner_content {
    width: 58%;
    max-width: 760px;
}

.labozon_banner_tag,
.labozon_banner_content h1,
.labozon_banner_content p,
.labozon_banner_buttons,
.labozon_banner_content h2,
.labozon_banner_content .labozon_banner_title {
    opacity: 0;
    transform: translateY(35px);
}

.labozon_banner_slide.active .labozon_banner_tag {
    animation: labozonTextUp 0.7s 0.15s forwards ease-out;
}

.labozon_banner_slide.active h1,
.labozon_banner_slide.active h2,
.labozon_banner_slide.active .labozon_banner_title {
    animation: labozonTextUp 0.8s 0.3s forwards ease-out;
}

.labozon_banner_slide.active p {
    animation: labozonTextUp 0.8s 0.45s forwards ease-out;
}

.labozon_banner_slide.active .labozon_banner_buttons {
    animation: labozonTextUp 0.8s 0.6s forwards ease-out;
}

@keyframes labozonTextUp {
    from {
        opacity: 0;
        transform: translateY(35px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.labozon_banner_tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    padding: 8px 15px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.3px;
    backdrop-filter: blur(8px);
}

.labozon_banner_tag i {
    color: #39c2c4;
    font-size: 14px;
}

.labozon_banner_content h1,
.labozon_banner_content h2,
.labozon_banner_content .labozon_banner_title {
    margin: 0;
    color: #ffffff;
    font-size: clamp(34px, 4vw, 48px);
    line-height: 1.08;
    font-weight: 400;
    letter-spacing: -1.5px;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.labozon_banner_content h1 strong,
.labozon_banner_content h2 strong,
.labozon_banner_content .labozon_banner_title strong {
    display: block;
    color: #f56f31;
    font-weight: 700;
}

.labozon_banner_content p {
    max-width: 650px;
    margin: 20px 0 27px;
    color: rgba(255, 255, 255, 0.86);
    font-size: 15px;
    line-height: 1.75;
}

.labozon_banner_buttons {
    display: flex;
    align-items: center;
    gap: 12px;
}

.labozon_banner_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 30px;
  padding: 0 22px;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition: all 0.3s ease;
  border-radius: 4px;
}

.labozon_banner_btn.primary {
    background: #2b58a5;
    color: #ffffff;
}

.labozon_banner_btn.primary:hover {
    background: #ffffff;
    color: #092338;
}

.labozon_banner_btn.secondary {
    border: 1px solid rgba(255, 255, 255, 0.45);
    color: #ffffff;
    background: rgba(255, 255, 255, 0.06);
}

.labozon_banner_btn.secondary:hover {
    background: #ffffff;
    border-color: #ffffff;
    color: #092338;
}

.labozon_banner_arrow {
    position: absolute;
    z-index: 10;
    top: 50%;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 50%;
    background: rgba(5, 22, 35, 0.35);
    color: #ffffff;
    cursor: pointer;
    transform: translateY(-50%);
    backdrop-filter: blur(8px);
    transition: all 0.3s ease;
}

.labozon_banner_arrow:hover {
    background: #39b9bb;
    border-color: #39b9bb;
}

.labozon_banner_prev {
    left: 25px;
}

.labozon_banner_next {
    right: 25px;
}

.labozon_banner_indicators {
    position: absolute;
    z-index: 10;
    right: 70px;
    bottom: 35px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.labozon_banner_dot {
    width: 38px;
    height: 3px;
    padding: 0;
    border: 0;
    background: rgba(255, 255, 255, 0.35);
    cursor: pointer;
    transition: width 0.35s ease, background 0.35s ease;
}

.labozon_banner_dot span {
    display: none;
}

.labozon_banner_dot.active {
    width: 65px;
    background: #42c5c7;
}

.labozon_banner_counter {
    position: absolute;
    z-index: 10;
    right: 70px;
    bottom: 68px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, 0.55);
    font-size: 11px;
    letter-spacing: 1px;
}

.labozon_banner_counter .current {
    color: #ffffff;
    font-weight: 700;
}

.labozon_banner_counter .line {
    display: block;
    width: 35px;
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
}

@media (max-width: 1100px) {

    .labozon_banner {
        min-height: 390px;
    }

    .labozon_banner_container {
        padding: 35px 55px;
    }

    .labozon_banner_content {
        width: 70%;
    }

    .labozon_banner_content h1,
.labozon_banner_content h2,
.labozon_banner_content .labozon_banner_title {
        font-size: 44px;
    }

    .labozon_banner_content p {
        margin: 15px 0 22px;
    }

    .labozon_banner_indicators,
    .labozon_banner_counter {
        right: 55px;
    }
}

@media (max-width: 767px) {

    .labozon_banner {
        /* aspect-ratio: auto; */
        min-height: 550px;
    }

    .labozon_banner_container {
        padding: 35px 25px 75px;
        align-items: center;
    }

    .labozon_banner_content {
        width: 100%;
    }

    .labozon_banner_content h1,
.labozon_banner_content h2,
.labozon_banner_content .labozon_banner_title {
        font-size: 36px;
        line-height: 1.12;
        letter-spacing: -0.8px;
    }

    .labozon_banner_content p {
        font-size: 14px;
        line-height: 1.65;
    }

    .labozon_banner_tag {
        font-size: 10px;
        letter-spacing: 1px;
    }

    .labozon_banner_buttons {
        flex-wrap: wrap;
    }

    .labozon_banner_btn {
        min-height: 44px;
        padding: 0 17px;
    }

    .labozon_banner_arrow {
        width: 38px;
        height: 38px;
    }

    .labozon_banner_prev {
        left: 12px;
    }

    .labozon_banner_next {
        right: 12px;
    }

    .labozon_banner_indicators {
        right: 25px;
        bottom: 25px;
    }

    .labozon_banner_counter {
        left: 25px;
        right: auto;
        bottom: 29px;
    }

    .labozon_banner_overlay {
        /* background:
            linear-gradient(
                90deg,
                rgba(3, 19, 31, 0.92),
                rgba(3, 19, 31, 0.62)
            ); */
    }
}

@media (max-width: 480px) {

    .labozon_banner {
        min-height: 580px;
    }

    .labozon_banner_container {
        padding-left: 22px;
        padding-right: 22px;
    }

    .labozon_banner_content h1,
.labozon_banner_content h2,
.labozon_banner_content .labozon_banner_title {
        font-size: 31px;
    }

    .labozon_banner_content p {
        font-size: 13px;
    }

    .labozon_banner_buttons {
        flex-direction: column;
        align-items: flex-start;
    }

    .labozon_banner_btn {
        width: auto;
    }
}
/* --------------------Category section Home */
.category_section_home {
    width: 100%;
    padding: 75px 0 45px;
    background: #f7f9fc;
}

.category_container_home {
    width: 90%;
    max-width: 1440px;
    margin: 0 auto;
}

.category_section_header_home {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 45px;
}

.category_header_content_home {
    max-width: 720px;
}

.category_header_content_home h1 {
    margin: 0 0 14px;
    color: #17243a;
    color: #17243a;
    font-size: 32px;
    line-height: 1.15;
    font-weight: 600;
    margin-bottom: 0;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}
.category_all_btn_home {
    display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 5px 14px;
  color: #ffffff;
  background: #2DAAE2;
  background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
  /* background: #0034bb;    */
  border: 1px solid transparent;
  text-decoration: none;
  font-size: 15px;
  font-weight: 500;
  white-space: nowrap;
  transition: all 0.3s ease;
  border-radius: 4px;
}

.category_all_btn_home i {
    font-size: 16px;
    transition: transform 0.3s ease;
}

.category_all_btn_home:hover {
    color: #ffffff;
    background: #2DAAE2;
    background: linear-gradient(100deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
    border-color: transparent;
}

.category_all_btn_home:hover i {
    transform: translate(3px, -3px);
}

.category_grid_home {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
}

.category_card_home {
    min-width: 0;
    background: #ffffff;
    border: 1px solid #e5eaf0;
    overflow: hidden;
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.45s ease, transform 0.45s ease, box-shadow 0.35s ease, border-color 0.35s ease;
    border-radius: 8px;
}
.category_card_home:hover .category_card_content_home h2{
    /* Fallback solid color */
    color: #f14e31;

    /* Gradient as background */
    background-image: linear-gradient(90deg, #f14e31, #fca331);
    background-size: 100% 100%;
    -webkit-background-clip: text;
    background-clip: text;

    /* Make text itself transparent so gradient shows */
    -webkit-text-fill-color: transparent;
    color: transparent;
}
.category_card_home.hidden_category_home {
    display: none;
    opacity: 0;
    transform: translateY(25px);
}

.category_card_home.category_show_home {
    display: block;
    animation: categoryCardRevealHome 0.5s ease forwards;
}

@keyframes categoryCardRevealHome {
    0% {
        opacity: 0;
        transform: translateY(25px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.category_card_link_home {
    display: block;
    height: 100%;
    color: inherit;
    text-decoration: none;
    min-height: 335px;
}

.category_image_home {
    position: relative;
    width: 100%;
    height: 150px;
    overflow: hidden;
    /* background: #f1f4f7; */
    max-width: 150px;
    display: flex;
  margin: 7px auto;
}

.category_image_home img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.55s ease;
}

.category_card_home:hover {
    border-color: #d6e2ed;
    box-shadow: 0 15px 35px rgba(23, 36, 58, 0.10);
}
.category_card_content_home {
    min-height: 88px;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.category_card_content_home h2 {
    margin: 0 0 7px;
    color: #17243a;
    font-size: 20px;
    line-height: 1.3;
    font-weight: 600;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    margin-bottom: 0;
}

.category_card_content_home span {
    color: #7b8796;
    font-size: 12px;
    font-weight: 500;
}

.category_arrow_home {
    width: 38px;
    height: 38px;
    min-width: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0034bb;
    background: #f0f5ff;
    border-radius: 50%;
    transition: all 0.3s ease;
}

.category_arrow_home i {
    font-size: 16px;
    transition: transform 0.3s ease;
}

.category_card_home:hover .category_arrow_home {
    color: #ffffff;
    background: #37b4b6;
}

.category_card_home:hover .category_arrow_home i {
    transform: translate(2px, -2px);
}

.category_load_more_home {
    display: flex;
    justify-content: center;
    margin-top: 42px;
}

.category_load_more_home button {
    position: relative;
  min-width: 215px;
  min-height: 28px;
  padding: 6px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: #fff;
  /* background: #ffffff; */
  background: #FDA731;
  background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
  border: 1px solid #fb9a31;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
  border-radius: 4px;
}

.category_load_more_home button:hover {
    color: #ffffff;
    /* background: #0034bb; */
    background: #FAA435;
background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
}

.category_load_more_home button i {
    font-size: 16px;
    transition: transform 0.3s ease;
}

.category_load_more_home button:hover i {
    transform: translateY(3px);
}

.category_loader_home {
    width: 17px;
    height: 17px;
    display: none;
    border: 2px solid rgba(0, 52, 187, 0.25);
    border-top-color: #0034bb;
    border-radius: 50%;
    animation: categoryLoaderSpinHome 0.7s linear infinite;
}

.category_load_more_home button.loading .category_loader_home {
    display: block;
}

.category_load_more_home button.loading .category_btn_text_home,
.category_load_more_home button.loading i {
    display: none;
}

.category_load_more_home button.loading {
    pointer-events: none;
    color: #0034bb;
    background: #ffffff;
}

@keyframes categoryLoaderSpinHome {
    to {
        transform: rotate(360deg);
    }
}

.category_load_more_home button.all_loaded_home {
    display: none;
}

@media (max-width: 1199px) {
    .category_section_home {
        padding: 75px 0;
    }

    .category_grid_home {
        grid-template-columns: repeat(3, 1fr);
    }

    .category_header_content_home h1 {
        font-size: 38px;
    }
}

@media (max-width: 991px) {
    .category_container_home {
        width: 92%;
    }

    .category_section_header_home {
        align-items: flex-start;
        flex-direction: column;
        margin-bottom: 35px;
    }

    .category_grid_home {
        grid-template-columns: repeat(2, 1fr);
        gap: 18px;
    }

    .category_image_home {
        height: 100px;
    max-width: 100px;
    width: 100%;
    }

    .category_header_content_home h1 {
        font-size: 34px;
    }
    .category_card_link_home {
        height: 100%;
        min-height: 220px;
    }
}

@media (max-width: 575px) {
    .category_section_home {
        padding: 55px 0;
    }

    .category_container_home {
        width: 92%;
    }

    .category_section_header_home {
        gap: 25px;
        margin-bottom: 28px;
    }

    .category_header_content_home h1 {
        font-size: 29px;
    }

    .category_header_content_home p {
        font-size: 14px;
        line-height: 1.65;
    }

    .category_all_btn_home {
        width: 100%;
        justify-content: center;
    }

    .category_grid_home {
        grid-template-columns: 1fr 1fr;
        gap: 15px;
    }

    .category_image_home {
        height: 100px;
    max-width: 100px;
    width: 100%;
    }

    .category_card_content_home {
        min-height: 82px;
        padding: 17px;
    }

    .category_card_content_home h2 {
        font-size: 16px;
    }

    .category_load_more_home {
        margin-top: 30px;
    }

    .category_load_more_home button {
        width: 100%;
    }
}
/* ----------------------Showcase Home */

/* 
   LAB PRODUCT SECTION
 */

.lab-products-section {
    position: relative;
    width: 100%;
    min-height: 620px;
    overflow: hidden;
    padding: 55px 0 65px;
}

/* Background Image */

.lab-bg {
    position: absolute;
    inset: 0;

    background:
        
        url("../images/HomeV3ProductBackground.png");

    background-size: cover;
    background-position: center;

    z-index: 0;
}


/* Container */

.lab-container {
    position: relative;
    z-index: 2;

    width: 92%;
    max-width: 1500px;

    margin: auto;

    display: grid;
    grid-template-columns: 40% 60%;

    align-items: center;
}


/* 
   LEFT FEATURED IMAGE
 */

.lab-featured {
    height: 500px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 20px;
}

.featured-image {
    width: 100%;
    max-width: 650px;
    max-height: 470px;

    object-fit: contain;

    filter: drop-shadow(
        0 15px 25px rgba(0, 0, 0, 0.12)
    );
}


/* 
   RIGHT SIDE
 */

.lab-products {
    width: 100%;
    padding-left: 25px;
}


/* Heading */

.lab-heading-row {
    display: flex;
    justify-content: space-between;
    align-items: center;

    margin-bottom: 8px;
}

.lab-heading-row h2 {
    margin: 0 0 14px;
    margin-bottom: 14px;
  color: #17243a;
  color: #17243a;
  font-size: 32px;
  line-height: 1.15;
  font-weight: 600;
  margin-bottom: 0;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}


/* Yellow Line */

.heading-line {
   max-width: 347px;
  height: 2px;
  background: #ed4929;
  margin-bottom: 20px;
  width: 100%;
}

/* 
   ARROWS
 */

.slider-arrows {
    display: flex;
    gap: 10px;
}

.slider-btn {
    border: none;
    background: transparent;

    width: 32px;
    height: 32px;

    font-size: 29px;

    cursor: pointer;

    color: #17466b;

    transition: 0.25s ease;
}

.slider-btn:hover {
    color: #f0c900;
    transform: scale(1.15);
}


/* 
   SLIDER
 */

.products-slider {
    position: relative;
    width: 100%;
    min-height: 385px;
}


/* Each Slide */

.product-slide {
    display: none;

    grid-template-columns: 1fr 1fr;
    gap: 12px;

    animation: slideFade 0.5s ease;
}

.product-slide.active {
    display: grid;
}

@keyframes slideFade {

    from {
        opacity: 0;
        transform: translateX(15px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}


/* 
   PRODUCT CARD
 */

.product-card {
    min-height: 250px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.96);
    display: flex;
    align-items: center;
    padding: 18px;
    transition: all 0.3s ease;
    border: 1px solid rgba(220, 220, 220, 0.55);
    position: relative;
}

.product-card:hover {
    box-shadow:
        0 12px 30px rgba(0, 0, 0, 0.08);
}


/* Product Image */

.product-image {
    width: 42%;
    height: 125px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;
}

.product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.3s ease;
}

/* .product-card:hover .product-image img {
    transform: scale(1.06);
} */


/* Product Info */

.product-info {
    width: 58%;
    padding-left: 12px;
}

.product-category {
    display: block;

    font-size: 14px;

    color: #70839a;

    margin-bottom: 8px;

    line-height: 1.3;
}

.product-info h3 a{
margin: 0 0 15px;
text-decoration: none;
  color: #0062b8;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 700;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.product-card-bs .product-info h3 a{
margin: 0 0 15px;
text-decoration: none;
  color: #0062b8;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 700;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}
/* Bottom */

.product-bottom {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 10px;
}

.price {
    font-size: 15px;
  color: #555;
    white-space: nowrap;
    font-weight: 500;
}


/* 
   DOTS
 */

.slider-dots {
    display: flex;

    justify-content: center;

    align-items: center;

    gap: 13px;

    margin-top: 28px;
}

.dot {
    width: 11px;
    height: 11px;

    padding: 0;

    border: none;

    border-radius: 50%;

    background: #c7c7c7;

    cursor: pointer;

    transition: 0.3s ease;
}

.dot.active {
    width: 37px;

    border-radius: 10px;

    background: #2b55a3;
}


/* 
   TABLET
 */

@media (max-width: 1100px) {

    .lab-container {
        grid-template-columns: 40% 60%;
    }

    .lab-featured {
        height: 450px;
    }

    .lab-heading-row h2 {
        font-size: 25px;
    }

    .product-card {
        padding: 12px;
    }

    .product-info h3 {
        font-size: 15px;
    }

    .price {
        font-size: 19px;
    }

}


/* 
   MOBILE
 */

@media (max-width: 768px) {

    .lab-products-section {
        padding: 35px 0 45px;
    }

    .lab-container {
        width: 92%;

        grid-template-columns: 1fr;
    }

    .lab-featured {
        height: 280px;

        order: 1;
    }

    .featured-image {
        max-height: 270px;
    }

    .lab-products {
        order: 2;

        padding-left: 0;
    }

    .lab-heading-row {
        margin-top: 15px;
    }

    .lab-heading-row h2 {
        font-size: 22px;
    }

    .heading-line {
        width: 220px;

        margin-bottom: 25px;
    }

    .products-slider {
        min-height: auto;
    }

    .product-slide {
        grid-template-columns: 1fr;
    }

    .product-card {
        min-height: 155px;
    }

    .product-image {
        height: 120px;
    }

    .product-info h3 {
        font-size: 16px;
    }

    .price {
        font-size: 18px;
    }

}


/* 
   SMALL MOBILE
 */

@media (max-width: 480px) {

    .lab-featured {
        height: 230px;
    }

    .lab-heading-row h2 {
        font-size: 20px;
    }

    .slider-btn {
        font-size: 24px;
    }

    .product-card {
        padding: 10px;
    }

    .product-image {
        width: 38%;
    }

    .product-info {
        width: 62%;
    }

    .product-category {
        font-size: 12px;
    }

    .product-info h3 {
        font-size: 14px;
    }

    .price {
        font-size: 17px;
    }

    .cart-btn {
        width: 36px;
        height: 36px;
        font-size: 15px;
    }

}


.cart-btn {
   width: 100%;
   max-width: 65px;
   padding: 0 10px;
  height: 26px;
  border: 0;
  border-radius: 4px;
  cursor: pointer;
  /* background: #111; */
  background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
  font-size: 12px;
  gap: 7px;
  font-weight: 600;
}

.cart-btn:hover {
    transform: scale(1.05);
}

.product-card-maincategory .go-to-cart-btn {
    max-width: 65px;
    padding-right: 3px;
    padding-left: 3px;
    gap: 2px;
    font-size: 10px;
    white-space: nowrap;
}


.product-hover-actions {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 0 0 8px 8px;
    display: flex;
    transform: translateY(100%);
    opacity: 0;
    transition: all .3s ease;
    background: rgba(255, 255, 255, .97);
    border-top: 1px solid #eee;
    box-shadow: rgba(0, 0, 0, 0.06) 0px 2px 4px 0px inset;
}

.product-card:hover .product-hover-actions {
    transform: translateY(0);
    opacity: 1;
}


.product-action {
    flex: 1;
    height: 46px;
    border: 0;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-size: 13px;
    font-weight: 500;
    transition: .3s;
}

.product-action:first-child {
    border-right: 1px solid #eee;
}

.product-action:hover {
    background: #f5f5f5;
}


.labozon-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .45);
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    z-index: 9998;
}

.labozon-overlay.active {
    opacity: 1;
    visibility: visible;
}

/* 
   COMMON OFFCANVAS
 */

.labozon-cart-offcanvas,
.labozon-compare-offcanvas {

    position: fixed;
    top: 0;
    right: 0;
    width: 420px;
    max-width: 100%;
    height: 100vh;
    background: #fff;
    z-index: 9999;
    transform: translateX(100%);
    transition: transform .35s ease;
    display: flex;
    flex-direction: column;
}

.labozon-cart-offcanvas.active,
.labozon-compare-offcanvas.active {
    transform: translateX(0);
}


/* 
   OFFCANVAS HEADER
 */

.offcanvas-header {
    padding: 20px !important;
    border-bottom: 1px solid #eee;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.offcanvas-header .offcanvas-title {
    margin: 0 0 4px;
    font-size: 20px;
    font-weight: 700;
}

.offcanvas-header span {
    color: #777;
    font-size: 13px;
}


.offcanvas-close {
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 50%;
    background: #f5f5f5;
    cursor: pointer;
    font-size: 18px;
}


/* 
   CART ITEMS
 */

.cart-items,
.compare-items {
    flex: 1;

    overflow-y: auto;

    padding: 15px;
}

.compare-feedback {
    margin: 12px 20px 0;
    color: #c0392b;
    font-size: 13px;
}


.cart-item {
    display: flex;

    gap: 12px;

    padding: 14px 0;

    border-bottom: 1px solid #eee;
}


.cart-item-image {
    width: 80px;
    height: 80px;

    border: 1px solid #eee;
    border-radius: 8px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.cart-item-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}


.cart-item-details {
    flex: 1;
}

.cart-item-details .cart-item-name {
    font-weight: 700;
    margin: 0 0 6px;

    font-size: 14px;
    line-height: 1.4;
}

.cart-item-price {
    font-weight: 700;
    font-size: 14px;
}


/* 
   QUANTITY
 */

.quantity-box {
    display: flex;
    align-items: center;

    margin-top: 10px;
}

.quantity-box button {
    width: 28px;
    height: 28px;

    border: 1px solid #ddd;
    background: #fff;

    cursor: pointer;
}

.quantity-box span {
    width: 32px;

    text-align: center;

    font-size: 13px;
}


/* 
   REMOVE
 */

.remove-cart {
    border: 0;
    background: none;

    color: #888;

    cursor: pointer;

    align-self: flex-start;
}

.remove-cart:hover {
    color: #d00;
}


/* 
   CART FOOTER
 */

.cart-footer,
.compare-footer {

    padding: 18px;

    border-top: 1px solid #eee;

    background: #fff;
}

.cart-total {

    display: flex;
    justify-content: space-between;

    margin-bottom: 15px;

    font-size: 17px;
}


.view-cart-btn,
.checkout-btn,
.compare-page-btn {

    width: 100%;

    display: flex;

    justify-content: center;
    align-items: center;

    padding: 13px;

    border-radius: 7px;

    text-decoration: none;

    margin-top: 8px;

    font-weight: 600;
}


.view-cart-btn {
    border: 1px solid #222;
    color: #222;
}

.checkout-btn {
    background: #111;
    color: #fff;
}

.compare-page-btn {
    background: #111;
    color: #fff;
    gap: 8px;
}


/* 
   EMPTY
 */

.cart-empty,
.compare-empty {

    flex: 1;

    display: flex;

    align-items: center;
    justify-content: center;

    flex-direction: column;

    text-align: center;

    color: #777;

    padding: 30px;
}

.cart-empty i,
.compare-empty i {
    font-size: 45px;
    margin-bottom: 15px;
    color: #bbb;
}

.cart-empty .empty-title,
.compare-empty .empty-title {
    font-weight: 700;
    margin: 0 0 5px;
    color: #333;
}


/* 
   COMPARE ITEM
 */

.compare-item {

    display: flex;

    gap: 12px;

    padding: 12px;

    border: 1px solid #eee;

    border-radius: 8px;

    margin-bottom: 10px;
}

.compare-item img {

    width: 70px;
    height: 70px;

    object-fit: contain;
}

.compare-item-info {
    flex: 1;
}

.compare-item-info .compare-item-name {
    font-weight: 700;
    font-size: 14px;
    margin: 0 0 6px;
}

.compare-item-info span {
    font-weight: 600;
}

.remove-compare {
    border: 0;
    background: none;
    cursor: pointer;
}


/* 
   WISHLIST POPUP
 */

.wishlist-popup {
    position: fixed;
    right: 25px;
    bottom: 25px;
    width: 380px;
    max-width: calc(100% - 30px);
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0,0,0,.15);
    padding: 16px;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    transform: translateY(150px);
    opacity: 0;
    visibility: hidden;
    transition: .35s;
    z-index: 10000;
}

.wishlist-popup.active {

    transform: translateY(0);

    opacity: 1;

    visibility: visible;
}


.wishlist-popup-icon {

    width: 40px;
    height: 40px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #f3f3f3;

    flex-shrink: 0;
}

.wishlist-popup-content {
    flex: 1;
}

.wishlist-popup-content strong {
    display: block;
    font-size: 14px;
    margin-bottom: 4px;
}

.wishlist-popup-content span {
    display: block;
    font-size: 12px;
    color: #777;
    margin-bottom: 8px;
}

.wishlist-popup-content a {
    font-size: 13px;
    font-weight: 600;
    color: #111;
    text-decoration: none;
}


.wishlist-popup-close {

    border: 0;
    background: transparent;

    cursor: pointer;

    color: #777;
}


/* 
   MOBILE
 */

@media (max-width: 576px) {

    .labozon-cart-offcanvas,
    .labozon-compare-offcanvas {
        width: 100%;
    }

    .wishlist-popup {
        right: 15px;
        bottom: 15px;
        width: calc(100% - 30px);
    }

}
/* --------------------------Best seller .category_card_home */
/* 
   BEST SELLER SECTION
 */

.labozon_bestseller {
    padding: 80px 0;
    background: #fff;
}

.labozon-bestseller-container {
    width: 100%;
    max-width: 1380px;
    margin: auto;
}


/* 
   SECTION HEADING
 */

.labozon-section-heading {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 45px;
}


.labozon-bestseller-category {
    margin: 8px 0 0;
    color: #5b6b7f;
    font-size: 15px;
}

.labozon-bestseller-category a {
    color: #f14e31;
    font-weight: 600;
    text-decoration: none;
}

.labozon-bestseller-category a:hover {
    text-decoration: underline;
}

.labozon-section-heading h2 {
   margin: 0 0 14px;
  color: #17243a;
  color: #17243a;
  font-size: 32px;
  line-height: 1.15;
  font-weight: 600;
  margin-bottom: 0;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}


/* 
   PRODUCT GRID
   5 CARDS PER ROW
 */

.labozon-bestseller-grid {
    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 12px;
}


/* 
   PRODUCT CARD
 */

.labozon-bestseller-grid .product-card-bs {

    position: relative;

    background: #fff;

    border: 1px solid #e7e7e7;

    border-radius: 10px;

    overflow: hidden;

    /* IMPORTANT:
       No scale transform */
    transition:
        box-shadow .3s ease,
        border-color .3s ease;
}


/* NO SCALE EFFECT */

.labozon-bestseller-grid .product-card-bs:hover {

    transform: none;

    border-color: #d5d5d5;

    box-shadow:
        0 12px 30px rgba(0, 0, 0, .08);
}


/* 
   PRODUCT IMAGE
 */

.labozon-bestseller-grid .product-card-bs .product-image {

    position: relative;
    width: 100%;
    height: 210px;

    padding: 20px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: #fff;
}

.labozon-bestseller-grid .product-card-bs .product-image img {

    width: 100%;
    height: 100%;

    object-fit: contain;

    /* No image scale */
    transition: none;
}

.labozon-bestseller-grid .product-card-bs:hover
.product-image img {

    transform: none;
}


/* 
   BEST SELLER BADGE
 */

.product-badge {

    position: absolute;

    top: 12px;
    left: 12px;

    padding: 5px 9px;

    border-radius: 4px;

    background: #111;

    color: #fff;

    font-size: 10px;

    font-weight: 600;

    text-transform: uppercase;

    letter-spacing: .5px;

    z-index: 2;
}


/* 
   PRODUCT INFO
 */

.labozon-bestseller-grid .product-info {

    padding: 18px;
    width: 100%;
    background: #f6f6f6;
    height: 100%;
}

.labozon-bestseller-grid .product-info h3 {
    margin: 0 0 8px;
    font-size: 20px;
    line-height: 1.4;
    font-weight: 600;
    color: #0062b8;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}


/* 
   SPECIFICATION
 */

.product-specification {
    min-height: 58px;
    margin: 0 0 16px;
    font-size: 12px;
    line-height: 1.6;
    color: #777;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    display: grid;
  gap: 4px;
}
.product-specification .p1::before{
    content: '-';
    color: #fc9e31;
}
.product-specification .p1{
    display: flex;
    gap: 5px;
    flex-wrap: wrap 
}
.product-specification .p1 strong{
    font-weight: 500;
    color: #1c1c1c;
}
.product-specification .p1 strong::after{
    content: ':';
    margin-left: 3px;
}
/* 
   PRICE + CART
 */

.labozon-bestseller-grid .product-bottom {
display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  gap: 10px;
  border-bottom: 1px solid #e1e1e1;
  padding-bottom: 12px;
}

.labozon-bestseller-grid .price {
font-size: 15px;
  color: #555;
  white-space: nowrap;
  font-weight: 500;
}


/* 
   CART BUTTON
 */

.labozon-bestseller-grid .cart-btn {

      /* width: 100%; */
  padding: 0 10px;
  height: 26px;
  border: 0;
  border-radius: 4px;
  cursor: pointer;
  /* background: #111; */
  background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
  font-size: 12px;
  gap: 7px;
  font-weight: 600;
}

.labozon-bestseller-grid .cart-btn:hover {

    background: #333;

}

/* 
   HOVER ACTIONS
 */

.labozon-bestseller-grid .product-card-bs
.product-hover-actions {

    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    height: 43px;

    display: flex;

    background: rgba(255, 255, 255, .98);

    border-top: 1px solid #e8e8e8;

    transform: translateY(100%);

    opacity: 0;

    visibility: hidden;

    transition:
        transform .25s ease,
        opacity .25s ease,
        visibility .25s ease;

    z-index: 5;
}


.labozon-bestseller-grid
.product-card-bs:hover
.product-hover-actions {

    transform: translateY(0);

    opacity: 1;

    visibility: visible;

}


/* 
   COMPARE / WISHLIST
 */

.labozon-bestseller-grid .product-card-bs
.product-action {
    flex: 1;
    height: 43px;
    border: 0;
    background: transparent;
    color: #333;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 15px;
    font-weight: 600;
    transition:
        background .2s ease,
        color .2s ease;
}

.labozon-bestseller-grid .product-card-bs
.product-action:first-child {

    border-right: 1px solid #e8e8e8;
}

.labozon-bestseller-grid .product-card-bs
.product-action:hover {

    background: #f5f5f5;

    color: #000;
}


/* Wishlist added state */

.labozon-bestseller-grid .product-card-bs
.wishlist-btn.added {

    color: #111;
}


/* 
   TABLET
 */

@media (max-width: 1200px) {

    .labozon-bestseller-grid  {

        grid-template-columns:
            repeat(4, minmax(0, 1fr));

    }

}


/* 
   TABLET
 */

@media (max-width: 992px) {

    .labozon_bestseller {

        padding: 65px 0;

    }

    .labozon-bestseller-grid {

        grid-template-columns:
            repeat(3, minmax(0, 1fr));

    }

}


/* 
   MOBILE
 */

@media (max-width: 768px) {

    .labozon-bestseller-container {

        width: 90%;

    }

    .labozon-section-heading h2 {

        font-size: 30px;

    }

    .labozon-bestseller-grid {

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 14px;

    }

    .labozon-bestseller-grid .product-card-bs
    .product-image {

        height: 180px;

    }

}


/* 
   SMALL MOBILE
 */

@media (max-width: 480px) {

    .labozon_bestseller {

        padding: 50px 0;

    }

    .labozon-bestseller-grid {

        grid-template-columns: 1fr 1fr;

    }

    .labozon-bestseller-grid .product-card-bs
    .product-image {

        height: 220px;

    }
    .labozon-bestseller-grid .product-bottom {
        flex-direction: column;
        align-items: flex-start;
        }
        

}
/* --------------------------Promo section home page */
/* 
   LABOZON PROMOTIONAL SECTION
 */

.labozon-promo-section {
    width: 100%;
    padding: 20px 15px 16px;
    background: #fff;
    box-sizing: border-box;
    margin-bottom: 70px;
}

.labozon-promo-section *,
.labozon-promo-section *::before,
.labozon-promo-section *::after {
    box-sizing: border-box;
}
.labozon-promo-container {
  width: 100%;
  max-width: 1380px;
  margin: auto;
}

/* 
   FOUR PROMOTIONAL BANNERS
 */

.labozon-promo-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr)); 
    gap: 12px;
    margin-bottom: 12px;
}

.labozon-promo-card {
    min-width: 0;
    min-height: 193px;
    padding: 15px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 15px;
    overflow: hidden;
    /* background: #f5f5f5; */
    color: #fff;
    text-decoration: none;
    transition: background-color .25s ease;
    background: #2DAAE2;
  background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
}

.labozon-promo-card:hover {
    /* background: #f0f0f0; */
    color: #fff;
    transform: none;
    background: #2DAAE2;
  background: linear-gradient(100deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
  border-color: transparent;
}


/* Banner image */

.labozon-promo-image {
    width: 41%;
  min-width: 0; 
  height: 125px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.labozon-promo-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform: none;
    transition: none;
}

.labozon-promo-card:hover .labozon-promo-image img {
    transform: none;
}


/* Banner text */

.labozon-promo-content {
    min-width: 0;
    flex: 1;
}

.labozon-promo-content h3 {
   margin: 0 0 12px;
  color: #fff;
  font-size: 18px;
  line-height: 1.3;
  font-weight: 400;
  letter-spacing: .15px;
  font-family: "Sofia Sans Semi Condensed", sans-serif
}

.labozon-promo-content h3 strong {
    font-weight: 750;
}

.labozon-promo-content p {
    margin: -5px 0 8px;
    color: #000;
    font-size: 13px;
    line-height: 1.4;
}

.labozon-promo-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    font-size: 13px;
  line-height: 1.4;
  font-weight: 500;
  background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
  color: #fff;
  padding: 4px 12px;
  border-radius: 4px;
}

.labozon-promo-link i {
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffd400;
    color: #fff;
    font-size: 11px;
    flex-shrink: 0;
}


/* 
   BENEFITS BAR
 */

.labozon-benefits {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    min-height: 103px;
    border: 1px solid #dedede;
    border-radius: 11px;
    overflow: hidden;
    /* background: #fff; */
    background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
}

.labozon-benefit {
    min-width: 0;
    padding: 18px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    border-right: 1px solid #dedede;
}

.labozon-benefit:last-child {
    border-right: 0;
}

.labozon-benefit > i {
    flex-shrink: 0;
    width: 32px;
    text-align: center;
    color: #fff;
    font-size: 29px;
    font-weight: 400;
}

.labozon-benefit p {
    display: flex;
    flex-direction: column;
    /* align-items: center; */
    margin: 0;
    color: #fff;
    text-align: left;
    font-size: 16px;
    line-height: 1.45;
}

.labozon-benefit p strong {
    font-weight: 700;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  font-size: 18px;
}

.labozon-benefit p span {
    font-weight: 400;
  font-size: 13px;
}


/* 
   LAPTOP
 */

@media (max-width: 1400px) {
    .labozon-promo-grid {
        gap: 16px;
        margin-bottom: 40px;
    }

    .labozon-promo-card {
        min-height: 175px;
        padding: 12px;
        gap: 10px;
    }

    .labozon-promo-image {
        height: 125px;
        width: 45%;
    }

    .labozon-promo-content h3 {
        font-size: 16px;
    }

    .labozon-benefit {
        gap: 10px;
        padding: 16px 8px;
    }

    .labozon-benefit p {
        font-size: 14px;
    }

    .labozon-benefit > i {
        font-size: 25px;
        width: 28px;
    }
}


/* 
   TABLET
 */

@media (max-width: 1050px) {
    .labozon-promo-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
        margin-bottom: 30px;
    }

    .labozon-promo-card {
        min-height: 185px;
    }

    .labozon-promo-image {
        height: 140px;
        width: 45%;
    }

    .labozon-promo-content h3 {
        font-size: 18px;
    }

    .labozon-benefits {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .labozon-benefit {
        border-bottom: 1px solid #dedede;
        min-height: 88px;
    }

    .labozon-benefit:nth-child(3) {
        border-right: 0;
    }

    .labozon-benefit:nth-child(4),
    .labozon-benefit:nth-child(5) {
        border-bottom: 0;
    }
}


/* 
   MOBILE
 */

@media (max-width: 600px) {
    .labozon-promo-section {
        padding: 15px 12px;
    }

    .labozon-promo-grid {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-bottom: 25px;
    }

    .labozon-promo-card {
        min-height: 170px;
        padding: 12px 18px;
        gap: 20px;
    }

    .labozon-promo-image {
        width: 44%;
        height: 135px;
    }

    .labozon-promo-content h3 {
        font-size: 18px;
    }

    .labozon-benefits {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .labozon-benefit {
        min-height: 90px;
        gap: 8px;
        padding: 12px 5px;
        border-right: 1px solid #dedede;
        border-bottom: 1px solid #dedede;
    }

    .labozon-benefit:nth-child(3) {
        border-right: 1px solid #dedede;
    }

    .labozon-benefit:nth-child(even) {
        border-right: 0;
    }

    .labozon-benefit:nth-child(4) {
        border-bottom: 1px solid #dedede;
    }

    .labozon-benefit:last-child {
        grid-column: 1 / -1;
        border-right: 0;
        border-bottom: 0;
    }

    .labozon-benefit > i {
        width: 24px;
        font-size: 22px;
    }

    .labozon-benefit p {
        font-size: 12px;
    }
}
/* --------------------------Footer */
/* Newsletter section */
    .newsletter-section {
      width: 100%;
      /* background: #ffd600; */
      background: #2DAAE2;
  background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(255, 255, 255, 1) 100%);
      padding: 16px 5%;
    }

    .newsletter-container {
      max-width: 1360px;
      margin: auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 30px;
    }

    .newsletter-content {
      display: flex;
      align-items: center;
      gap: 22px;
      flex: 1;
    }

    .newsletter-icon {
      font-size: 25px;
     color: #f14e31;
    background-image: linear-gradient(90deg, #f14e31, #fca331);
    background-size: 100% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
      transform: rotate(-12deg);
    }

    .newsletter-title {
      font-size: 27px;
      font-weight: 400;
      color: #283646;
      white-space: nowrap;
      font-family: "Sofia Sans Semi Condensed", sans-serif;
  
    }

    .newsletter-subtitle {
      font-size: 15px;
    color: #283646;
    white-space: nowrap;
    font-weight: 400;
    }

    .newsletter-subtitle strong {
      font-weight: 700;
    }

    .newsletter-form {
      display: flex;
    width: 38%;
    min-width: 400px;
    height: 45px;
    overflow: hidden;
    border-radius: 4px;
    background: #fff;
    }

    .newsletter-form input {
      flex: 1;
      border: none;
      outline: none;
      padding: 0 28px;
      font-size: 14px;
      color: #344150;
    }

    .newsletter-form input::placeholder {
      color: #777;
    }

    .newsletter-form button {
      width: 135px;
      border: none;
      background: #283646;
      color: #fff;
      font-size: 14px;
      cursor: pointer;
      transition: 0.3s ease;
    }

    .newsletter-form button:hover {
      background: #17222e;
    }

    .newsletter-message {
      display: none;
      margin-top: 8px;
      color: #283646;
      font-size: 13px;
      font-weight: 600;
    }

    /* Main footer */
    .main-footer {
      background: #f7f7f7;
      padding: 58px 5% 28px;
    }

    .footer-container {
      max-width: 1360px;
      margin: auto;
      display: grid;
      grid-template-columns: 1.35fr 1fr 1fr 1fr 1fr;
      gap: 55px;
    }

    .footer-brand {
      min-width: 250px;
    }

    .brand-logo {
      display: inline-block;
      margin-bottom: 12px;
      color: #283646;
      font-size: 42px;
      line-height: 1;
      font-weight: 800;
      letter-spacing: -3px;
    }

    .brand-logo img {
      width: 100%;
      max-width: 200px;
    }

    .brand-description {
      max-width: 360px;
      margin-bottom: 23px;
      color: #56616d;
      font-size: 14px;
      line-height: 1.7;
    }

    .contact-title {
      margin-bottom: 10px;
      color: #283646;
      font-size: 16px;
      font-weight: 700;
      font-family: "Sofia Sans Semi Condensed", sans-serif;
    }

    .contact-item {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      margin-bottom: 13px;
      color: #4d5865;
      font-size: 14px;
      line-height: 1.55;
    }
    .contact-item a{
        color: #56616d;
        font-size: 14px;
        text-decoration: none;
    }
    .contact-item i {
      width: 20px;
      margin-top: 3px;
      color: #56616d;
      text-align: center;
      font-size: 17px;
    }

    .footer-social {
      display: flex;
      align-items: center;
      gap: 20px;
      margin-top: 24px;
    }

    .footer-social a {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 31px;
      height: 31px;
      color: #737373;
      font-size: 20px;
      transition: 0.3s ease;
      text-decoration: none;
    }

    .footer-social a:hover {
      color: #283646;
      transform: translateY(-3px);
    }

    .footer-column .footer-heading {
      margin-bottom: 25px;
      color: #283646;
      font-size: 21px;
      font-weight: 700;
      font-family: "Sofia Sans Semi Condensed", sans-serif
    }
     .footer-column ul{
        list-style: none;
        padding: 0;
     }
    .footer-column li {
      margin-bottom: 10px;
    }

    .footer-column li a {
      color: #4c5864;
      font-size: 14px;
      transition: 0.3s ease;
      text-decoration: none;
    }

    .footer-column li a:hover {
      color: #f35332;
      padding-left: 5px;
    }

    /* Bottom footer */
    .bottom-footer {
      background: #e9e9e9;
      padding: 14px 5%;
    }

    .bottom-footer-container {
      max-width: 1360px;
      margin: auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
    }

    .copyright {
      color: #283646;
      font-size: 16px;
        font-family: "Sofia Sans Semi Condensed", sans-serif;
    }
    

    .copyright strong {
      font-weight: 700;
    }

    .payment-methods {
      display: flex;
      align-items: center;
      gap: 21px;
      color: #283646;
      font-size: 25px;
    }

    .payment-methods .discover {
      color: #db342b;
      font-size: 13px;
      font-weight: 800;
    }

    .payment-methods .mastercard {
      color: #ed4d32;
    }

    .payment-methods .paypal {
      color: #144b99;
      font-size: 15px;
      font-weight: 700;
      font-style: italic;
    }

    .payment-methods .skrill {
      color: #8e1b63;
      font-size: 17px;
      font-weight: 700;
    }

    .payment-methods .visa {
      color: #1c4786;
      font-size: 19px;
      font-weight: 800;
      font-style: italic;
    }

    /* Back to top */
    .back-to-top {
      position: fixed;
      right: 24px;
      bottom: 55px;
      z-index: 10;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 46px;
      height: 46px;
      border: none; 
      border-radius: 50%;
      background: #aeb3b7;
      color: #fff;
      font-size: 18px;
      cursor: pointer;
      opacity: 0;
      visibility: hidden;
      transition: 0.3s ease;
    }

    .back-to-top.show {
      opacity: 1;
      visibility: visible;
    }

    .back-to-top:hover {
      background: #283646;
    }

    /* Tablet */
    @media (max-width: 1100px) {
      .newsletter-container {
        flex-wrap: wrap;
      }

      .newsletter-form {
        width: 100%;
        min-width: 0;
      }

      .footer-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 42px;
      }
    }

    /* Mobile */
    @media (max-width: 650px) {
      .newsletter-section {
        padding: 22px 12px;
      }

      .newsletter-container {
        display: block;
      }

      .newsletter-content {
        display: block;
        text-align: center;
      }

      .newsletter-icon {
        margin-bottom: 10px;
      }

      .newsletter-title,
      .newsletter-subtitle {
        display: block;
        white-space: normal;
      }

      .newsletter-title {
        font-size: 23px;
        margin-bottom: 5px;
      }

      .newsletter-subtitle {
        font-size: 15px;
      }

      .newsletter-form {
        margin-top: 20px;
        height: auto;
        display: flex;
        flex-direction: column;
        border-radius: 7px;
        background: transparent;
        gap: 9px;
      }

      .newsletter-form input {
        width: 100%;
        height: 48px;
        border-radius: 7px;
      }

      .newsletter-form button {
        width: 100%;
        height: 45px;
        border-radius: 7px;
      }

      .main-footer {
        padding: 42px 20px;
      }

      .footer-container {
        grid-template-columns: 1fr;
        gap: 35px;
      }

      .footer-brand {
        text-align: left;
      }

      .brand-description {
        margin-left: auto;
        margin-right: auto;
      }

      .contact-item {
        justify-content: flex-start;
    text-align: left;
      }

      .footer-social {
        justify-content: center;
      }

      .footer-column {
        text-align: left;
      }

      .footer-column .footer-heading {
        margin-bottom: 17px;
      }

      .footer-column li {
        margin-bottom: 11px;
      }

      .bottom-footer {
        padding: 18px 20px;
      }

      .bottom-footer-container {
        flex-direction: column;
        text-align: center;
      }

      .payment-methods {
        gap: 13px;
      }

      .back-to-top {
        right: 17px;
        bottom: 20px;
      }
    }

    /* ---------------------------------About Us */
.crumb {
    /* background: #f5f5f5; */
    padding: 6px 12px;
    text-align: center;
    font-size: 12px;
    color: #59626f
}

.crumb span {
    margin: 0 8px;
    color: #aab
}

.crumb b {
    font-weight: 400;
    color: #2b55a2;
}

.ab-title {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.35;
    text-align: center;
    max-width: 860px;
    margin: 0 auto 35px;
    font-family: "Sofia Sans Semi Condensed", sans-serif
}

.ab-title.sm {
    font-size: 34px
}

.ab-lead {
    text-align: center;
    max-width: 620px;
    margin: 14px auto 40px;
    color: #59626f;
    font-size: 14px;
    line-height: 1.7
}

/* intro with dotted background */
.ab-intro {
    padding: 40px 12px 90px;
    /* background:
        radial-gradient(circle, #dfe4ee 1.6px, transparent 1.8px) 0 0/16px 16px;
    -webkit-mask-image: none */
}
.about_container{
    max-width: 1490px;
  margin: 0 auto;
  text-align: left;
}
.ab-intro .universal_container {
    position: relative
}
.universal_container{
    width: 100%;
  max-width: 1380px;
  margin: auto;
}
.brlink{
 text-decoration: none;
 font-weight: 600;
 color: #f14e31;
  background-image: linear-gradient(90deg, #f14e31, #fca331);
  background-size: 100% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.ab-photo {
    position: relative;
    padding: 0 0 40px 0
}

.ab-photo img {
    position: relative;
    z-index: 1;
    width: 100%;
    border-radius: 8px;
    box-shadow: 0 18px 40px rgba(20, 40, 80, .18);
    display: block
}
.big-num {
    display: flex;
    align-items: flex-end;
    gap: 14px;
    line-height: 1
}

.big-num .num {
    font-size: 100px;
  font-weight: 700;
  color: #2ca9e1;
  letter-spacing: -4px;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.big-num small {
    font-size: 12px;
    letter-spacing: .25em;
    font-weight: 600;
    color: #3a4453;
    line-height: 1.9;
    margin-bottom: 20px
}

.ab-sub {
   font-size: 25px;
  font-weight: 600;
  margin: 12px 0 22px;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.ab-intro p {
    color: #47515f;
    line-height: 1.85;
    margin-bottom: 20px;
    font-size: 14px;
}
.dicpro{
    padding: 5px 12px;
    font-size: 16px;
    /* background-color: red; */
    border-radius: 4px;
    background: #FAA435;
    background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
    color: #fff;
    text-decoration: none;
}
/* grey blocks */
.ab-grey {
    background: #f4f4f4;
    padding: 80px 12px;
}

.ab-block {
    padding: 80px 12px 20px
}

.vmp {
    background: #fff;
    padding: 36px 34px 40px;
    height: 100%;
    box-shadow: 0 2px 10px rgba(20, 40, 80, .04)
}

.vmp i {
    font-size: 44px;
    color: #f14e31;
    background-image: linear-gradient(90deg, #f14e31, #fca331);
    background-size: 100% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    display: block;
    margin-bottom: 14px
}

.vmp h3 {
    font-size: 22px;
    font-weight: 500;
    margin-bottom: 18px;
    color: #2b55a2;
}

.vmp ul {
    margin: 0;
    padding-left: 18px;
    color: #47515f
}

.vmp li {
    margin-bottom: 12px;
    font-size: 14px
}

.vmp li::marker {
    color: #2b55a2;
}

/* stats */
.stats {    
    padding: 30px 12px;
    color: #ffffff;
  background: #2DAAE2;
  background: linear-gradient(100deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
  border-color: transparent;
}

.stat .num {
    display: block;
    font-size: 48px;
    font-weight: 500;
    line-height: 1.1;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.stat small {
    display: block;
    margin-top: 10px;
    font-size: 15px;
    letter-spacing: .2em;
    text-transform: uppercase;
    font-weight: 600;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

/* ask us */
.ask {
    background: #f4f4f4 radial-gradient(circle, #e1e5ee 1.6px, transparent 1.8px) 0 0/16px 16px
}

.ask-card {
    background: #fff;
    padding: 56px 48px;
    box-shadow: 0 10px 30px rgba(20, 40, 80, .08)
}

.ask-card h2 {
    font-size: 30px;

    font-weight: 500;
    text-align: center;
    margin-bottom: 30px;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.ask-card .form-control {
    border-radius: 4px;
  background: #f4f5f8;
  border: 1px solid transparent;
  padding: 8px 22px;
  font-size: 13px;
  color: #595959 !important;
}

.ask-card textarea.form-control {
    border-radius: 4px
}

.ask-card .form-control:focus {
    background: #fff;
    border-color: #2b55a2;;
    box-shadow: 0 0 0 .2rem rgba(63, 140, 255, .18)
}

.contact-list {
    list-style: none;
    padding: 0;
    margin: 0
}

.contact-list li {
    display: flex;
    gap: 22px;
    align-items: center;
    margin-bottom: 38px
}

.contact-list i {
    font-size: 28px;
    color: #f14e31;
  background-image: linear-gradient(90deg, #f14e31, #fca331);
  background-size: 100% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
    
}

.contact-list small {
    display: block;
    font-size: 14px;
    color: #3a4453;
    margin-bottom: 2px
}

.contact-list .big {
    font-size: 18px;
  font-weight: 500;
  color: #555;
  line-height: 1.2;
  text-decoration: none;
}

.contact-list .mid {
    font-size: 18px;
    line-height: 1.5
}

/* equipment cards */
.eq {
    display: block;
    text-align: center
}

.eq-img {
    display: block;
    aspect-ratio: 1/1;
    background: #f7f8fa;
    padding: 22px;
    margin-bottom: 14px;
    overflow: hidden
}

.eq-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    mix-blend-mode: multiply;
    transition: transform .3s
}

.eq:hover .eq-img img {
    transform: scale(1.06)
}

.eq b {
    display: block;
    font-weight: 500;
    font-size: 18px
}

.eq small {
    color: #6b7686;
    font-size: 14px
}

@media (max-width:991.98px) {
    .ab-title {
        font-size: 25px
    }

    .ab-title.sm {
        font-size: 26px
    }

    .big-num .num {
        font-size: 65px
    }
    .big-num small{
        margin-bottom: 0;
    }

    .ask-card {
        padding: 36px 22px
    }

    .contact-list .big {
        font-size: 16px
    }
    .crumb{
        display: none;
    }   
    .contact-list .mid {
        font-size: 15px;
    }
    .big-num {
        justify-content: center;
    }
}

/* Sticky header shadow */
#siteHeader {
  transition: box-shadow 0.3s ease;
}

#siteHeader.scrolled {
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.12);
}

/* Back-to-top button */
#toTop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  z-index: 999;
}

#toTop.show {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* Form validation */
.was-validated input:invalid,
.was-validated select:invalid,
.was-validated textarea:invalid {
  border-color: #dc3545;
}
.ind {
  border: 1px solid #e1e1e1;
  text-align: center;
  padding: 10px;
  background: aliceblue;
}
.ind span{
    font-size: 18px;
    font-weight: 600;
    color: #555;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}
.sendmebtn{
    background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
  color: #fff !important;
  font-size: 20px;
}
/* ----------------------All Catalog */

/* 
   LABOZON ALL CATALOG
 */


.allcatalog {
  padding: 45px 0;
  color: #172b45;
}

.catalog-container {
  width: min(1380px, 100%);
  margin: auto;
}

.catalog-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 25px;
  margin-bottom: 35px;
}

.catalog-heading h2,
.drawer-header h2,
.modal-header h2,
.catalog-heading h1 {
  font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  max-width: 860px;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}

.catalog-heading p,
.drawer-header p,
.modal-header p {
  margin: 0;
  color: #718096;
  font-size: 14px;
  line-height: 1.7;
}

.catalog-search,
.drawer-search,
.product-search {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  border: 1px solid #e1e8ef;
  border-radius: 4px;
  padding: 0 15px;
  color: #8190a4;
}

.catalog-search {
  width: 290px;
  min-width: 230px;
  height: 40px;
}

.catalog-search input,
.drawer-search input,
.product-search input {
  width: 100%;
  min-width: 0;
  height: 100%;
  padding: 13px 0;
  border: 0;
  outline: none;
  background: transparent;
  color: #172b45;
  font: inherit;
  font-size: 13px;
}

.catalog-search:focus-within,
.drawer-search:focus-within,
.product-search:focus-within {
  border-color: #087e8b;
  box-shadow: 0 0 0 3px rgba(8, 126, 139, .08);
}

/* Category cards */

.catalog-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.catalog-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e8edf3;
  border-radius: 8px;
  cursor: pointer;
  transition: border-color .25s, box-shadow .25s;
}

.catalog-card:hover {
  /* border-color: #a8d5d9;
  box-shadow: 0 10px 30px rgba(28, 57, 82, .08); */
}

.catalog-card:focus-visible {
  outline: 3px solid #087e8b;
  outline-offset: 3px;
}

.catalog-card-image {
  height: 190px;
  position: relative;
  overflow: hidden;
  background: #edf4f7;
}

.catalog-card-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: opacity .25s;
  max-width: 190px;
  min-height: 190px;
  margin: auto;
}

.catalog-card:hover .catalog-card-image img {
  opacity: .92;
}

.catalog-card-body {
  padding: 19px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.catalog-card-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}

.catalog-category-label {
  font-size: 10px;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: .7px;
  color: #087e8b;
  background: #e8f7f7;
  padding: 6px 9px;
  border-radius: 5px;
}

.catalog-item-count {
  font-size: 11px;
  color: #8190a4;
  white-space: nowrap;
}

.catalog-card h3 {
  font-size: 20px;
  line-height: 1.45;
  color: #172b45;
  margin: 0 0 9px;
  font-weight: 600;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.catalog-card-body > p {
  color: #758397;
  font-size: 12px;
  line-height: 1.8;
  margin: 0 0 20px;
  flex: 1;
}

.catalog-explore {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-top: 15px;
  border-top: 1px solid #edf1f5;
  font-size: 15px;
  font-weight: 600;
  color: #f14e31;
  background-image: linear-gradient(90deg, #f14e31, #fca331);
  background-size: 100% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.catalog-explore i {
  transition: transform .2s;
}

.catalog-card:hover .catalog-explore i {
  transform: translateX(-4px);
}

/* Empty state */

.catalog-empty {
  padding: 45px 15px;
  text-align: center;
  color: #718096;
}

.catalog-empty[hidden] {
  display: none !important;
}

.catalog-empty > i {
  font-size: 34px;
  color: #9aabbc;
  margin-bottom: 14px;
}

.catalog-empty h3 {
  color: #172b45;
  font-size: 19px;
  margin: 0 0 8px;
}

.catalog-empty p {
  font-size: 13px;
  margin: 0;
}

/* 
   OFFCANVAS
 */

.catalog-overlay {
  position: fixed;
  inset: 0;
  background: rgba(11, 28, 46, .55);
  opacity: 0;
  visibility: hidden;
  z-index: 9990;
  transition: opacity .3s, visibility .3s;
}

.catalog-overlay.is-open {
  opacity: 1;
  visibility: visible;
}

.catalog-drawer {
  position: fixed;
  top: 0;
  right: 0;
  width: min(440px, 100%);
  height: 100%;
  height: 100dvh;
  overflow-y: auto;
  background: #fff;
  z-index: 9991;
  padding: 28px;
  transform: translateX(100%);
  visibility: hidden;
  transition: transform .3s ease, visibility .3s;
  box-shadow: -15px 0 45px rgba(0, 0, 0, .08);
}

.catalog-drawer.is-open {
  transform: translateX(0);
  visibility: visible;
}

.drawer-header,
.modal-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
}

.drawer-header h2,
.modal-header h2 {
  font-size: 25px;
}

.catalog-close {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border: 1px solid #e6ebf1;
  background: #fff;
  color: #253c54;
  border-radius: 8px;
  font-size: 17px;
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: background .2s, color .2s;
}

.catalog-close:hover {
  background: #087e8b;
  color: #fff;
}

.drawer-search {
  height: 45px;
  margin: 25px 0 20px;
}

.subcategory-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.subcategory-item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 15px;
  background: #fff;
  border: 1px solid #e6edf2;
  border-radius: 4px;
  text-align: left;
  cursor: pointer;
  color: #172b45;
  transition: border-color .2s, background .2s;
}

.subcategory-item:hover {
  border-color: #2ba9e2;
  background: #dbe1e3;
}

.subcategory-icon {
  width: 43px;
  height: 43px;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  background: #e9f6f7;
  border-radius: 9px;
  color: #087e8b;
  font-size: 17px;
}

.subcategory-text {
  flex: 1;
  min-width: 0;
}

.subcategory-text strong {
  display: block;
  font-size: 18px;
  line-height: 1.5;
  margin-bottom: 5px;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  font-weight: 500;
}

.subcategory-text small {
  display: block;
  color: #8190a4;
  font-size: 13px;
}

.subcategory-arrow {
  color: #087e8b;
  font-size: 13px;
}

/* 
   PRODUCT POPUP MODAL
 */

.catalog-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 25px;
  background: rgba(11, 28, 46, .68);
  opacity: 0;
  visibility: hidden;
  transition: opacity .25s, visibility .25s;
}

.catalog-modal-overlay.is-open {
  opacity: 1;
  visibility: visible;
}

.catalog-modal {
  width: min(1050px, 100%);
  max-height: 90vh;
  max-height: 90dvh;

  background: #fff;
  border-radius: 8px;
  padding: 28px;
  transform: translateY(15px);
  transition: transform .25s;
}

.catalog-modal-overlay.is-open .catalog-modal {
  transform: translateY(0);
}

.modal-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin: 25px 0 20px;
  font-size: 14px;
  font-weight: 500;
  color: #52657b;
}

.product-search {
  width: 250px;
  height: 42px;
}

.catalog-product-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
    overflow-y: auto;
    /* height: 200px; */
}

.catalog-product-card {
  min-width: 0;
  border: 1px solid #e7edf2;
  border-radius: 4px;
  overflow: hidden;
  display: flex;
  /* flex-direction: column; */
  background: #fff;
  text-decoration: none;
}

.catalog-product-image {
  height: 50px;
  background: #f5f8fa;
  display: grid;
  place-items: center;
  padding: 1px;
}

.catalog-product-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  max-width: 50px;
}

.catalog-product-info {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 15px;
  justify-content: center;
}

.catalog-product-info .product-type {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .6px;
  color: #087e8b;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.catalog-product-info h3 {
  color: #4e4e4e;
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
  font-weight: 500;
  text-decoration: none;
}

.catalog-product-info p {
  color: #758397;
  font-size: 11px;
  line-height: 1.7;
  margin: 0 0 15px;
  flex: 1;
}

.catalog-product-price {
  font-size: 14px;
  font-weight: 800;
  color: #172b45;
  margin-bottom: 13px;
}

.catalog-product-actions {
  display: flex;
  gap: 8px;
}

.catalog-btn {
  min-height: 38px;
  padding: 9px 12px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 7px;
  cursor: pointer;
}

.catalog-btn-primary {
  background: #087e8b;
  color: #fff;
  border: 1px solid #087e8b;
  flex: 1;
}

.catalog-btn-primary:hover {
  background: #066671;
}

.catalog-btn-outline {
  color: #087e8b;
  border: 1px solid #cbdde3;
  background: #fff;
}

.catalog-btn-outline:hover {
  background: #edf8f8;
}

.modal-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
  margin-top: 25px;
  padding-top: 20px;
  border-top: 1px solid #e9eef3;
  font-size: 12px;
  color: #718096;
}

.catalog-contact-btn {
  color: #087e8b;
  font-weight: 700;
  text-decoration: none;
}

.catalog-contact-btn i {
  margin-left: 5px;
}

/* 
   RESPONSIVE
 */

@media (max-width: 1050px) {
  .catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .catalog-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 991px){
    .catalog-heading h2,
.modal-header h2,
.catalog-heading h1 {
        font-size: 28px;
        text-align: center;
    }
    .drawer-header h2, .modal-header h2 {
        font-size: 20px;
    }
    .catalog-heading p, .drawer-header p, .modal-header p {
        font-size: 12px;
    }
    .catalog-drawer {
        width: min(330px, 100%);
        padding: 16px;
    }
    .subcategory-text strong {
        font-size: 16px;
    }
    .subcategory-text small {
        font-size: 11px;
    }
     .catalog-product-image {
        height: auto;
    }
     .catalog-card h3 {
        font-size: 20px;
    }
}
@media (max-width: 700px) {
  .allcatalog {
    padding: 45px 12px;
  }

  .catalog-heading {
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
  }

  .catalog-search {
    width: 100%;
  }

  .catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .catalog-card-image {
    height: auto;
  }

  .catalog-card-body {
    padding: 13px;
  }

  .catalog-card h3 {
    font-size: 20px;
  }

  .catalog-card-body > p {
    font-size: 11px;
  }

  .catalog-item-count {
    font-size: 10px;
  }

  .catalog-category-label {
    font-size: 9px;
    padding: 5px 6px;
  }

  .catalog-modal-overlay {
    padding: 10px;
  }

  .catalog-modal {
    padding: 18px;
    max-height: 94vh;
    max-height: 94dvh;
  }

  .modal-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .product-search {
    width: 100%;
  }

  .catalog-product-image {
    height: auto;
  }

  .catalog-product-info {
    padding: 11px;
  }

  .catalog-product-actions {
    flex-direction: column;
  }

  .catalog-product-info h3 {
    font-size: 12px;
  }

  .catalog-product-price {
    font-size: 12px;
  }

  .catalog-btn {
    font-size: 10px;
    padding: 8px;
  }
  .catalog-card-image img {
    width: 100%;
    height: 100%;
    max-width: 140px;
    min-height: 140px;
    }
.catalog-explore {
  font-size: 12px;
}
}

@media (max-width: 380px) {
  .catalog-grid {
    grid-template-columns: 1fr 1fr;
  }

  .catalog-card-image {
    height: auto;
  }

  .catalog-product-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .allcatalog *,
  .catalog-overlay,
  .catalog-drawer,
  .catalog-modal-overlay,
  .catalog-modal {
    transition: none !important;
  }
}
/* -------------------------All Product */

/* 
   LABOZON PRODUCT CATALOG
 */

.allproduct {
  --az-primary: #087e8b;
  --az-primary-dark: #066671;
  --az-heading: #172f4b;
  --az-text: #718096;
  --az-border: #e5ebf1;
  --az-light: #f5f8fb;

  padding: 45px 0;
}

.az-allproduct-container {
  width: min(1380px, 100%);
  margin: 0 auto;
}
.az-universal-heading {
    margin-bottom: 35px;
}
.az-universal-heading h1, .az-universal-heading h2, .az-universal-heading h3, .az-universal-heading h4, .az-universal-heading h5, .az-universal-heading h6{
    font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}
.az-eyebrow {
  display: inline-block;
  margin-bottom: 9px;
  color: #087e8b;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.5px;
}

.az-catalog-heading {
  margin-bottom: 28px;
}

.az-catalog-heading h2 {
  margin: 0 0 10px;
  font-size: clamp(27px, 3vw, 36px);
  line-height: 1.3;
  font-weight: 750;
}

.az-catalog-heading p {
  margin: 0;
  color: #718096;
  font-size: 14px;
  line-height: 1.7;
}

/* 
   MAIN TABS
 */

.az-main-tabs {
  display: flex;
  gap: 7px;
  padding: 7px;
  margin-bottom: 12px;
  border: 1px solid #e5ebf1;
  border-radius: 8px;
  background: #fff;
  justify-content: center;
}

.az-main-tab {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 9px;
  min-height: 30px;
  padding: 3px 18px;
  border: 1px solid transparent;
  border-radius: 4px;
  background: #f1f1f1;
  color: #2a56a4;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background .2s, color .2s;
}

.az-main-tab.active {
  color: #ffffff;
  background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
}

.az-main-tab:not(.active):hover {
  background: #59bce8;
  color: #001c42
}

.az-main-tab:focus-visible,
.az-letter:focus-visible,
.az-reset:focus-visible,
.az-product-card:focus-visible,
.az-category-card:focus-visible {
  outline: 2px solid #087e8b;
  outline-offset: 3px;
}

/* Panels */

.az-tab-panel[hidden] {
  display: none !important;
}

.az-tab-panel.active {
  display: block;
}

/* 
   A-Z LETTER NAVIGATION
 */

.az-navigation {
  padding: 20px;
  margin-bottom: 12px;
  border: 1px solid #e5ebf1;
  border-radius: 8px;
  background: #fff;
}

.az-navigation-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 17px;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  justify-content: center;
}

.az-navigation-title i {
  color: #087e8b;
}

.az-letter-list {
  display: grid;
  grid-template-columns: repeat(27, minmax(0, 1fr));
  gap: 8px;
}

.az-letter {
  min-width: 0;
  min-height: 30px;
  padding: 3px 4px;
  border: 1px solid #e5ebf1;
  border-radius: 4px;
  background: #fff;
  color: #40556b;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  transition: background .2s, color .2s, border-color .2s;
}

.az-letter:hover,
.az-letter.active {
  border-color: #2b59a6;
  background: #2b59a6;
  color: #fff;
}

/* 
   SHARED CONTENT BOX AND SEARCH
 */

.az-content-box {
  padding: 20px;
  border: 1px solid #e5ebf1;
  border-radius: 8px;
  background: #fff;
}

.az-content-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 25px;
  padding-bottom: 23px;
  border-bottom: 1px solid #e5ebf1;
}

.az-content-heading h3 {
  margin: 0 0 8px;
  font-size: 25px;
  line-height: 1.4;
  font-weight: 500;
}

.az-content-heading p {
  margin: 0;
  color: #718096;
  font-size: 13px;
  line-height: 1.7;
}

.az-search {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 270px;
  min-width: 220px;
  height: 30px;
  padding: 0 13px;
  border: 1px solid #e5ebf1;
  border-radius: 4px;
  color: #8291a3;
}

.az-search:focus-within {
  border-color: #087e8b;
  box-shadow: 0 0 0 3px rgba(8, 126, 139, .08);
}

.az-search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: none;
  background: transparent;
  color: #172f4b;
  font-size: 12px;
}

.az-result-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 20px 0;
  color: #718096;
  font-size: 15px;
}

.az-reset {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #001c42;
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
}

/* 
   TAB 1: A-Z PRODUCT LIST
 */

.az-product-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.az-product-card {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  min-width: 0;
  min-height: 82px;
  padding: 15px 13px;
  border: 1px solid #e5ebf1;
  border-radius: 7px;
  background: #fff;
  color: #172f4b;
  text-align: left;
  cursor: pointer;
  transition: border-color .2s, background .2s;
  text-decoration: none;
}

.az-product-card:hover {
  border-color: #2daae2;
  background: #c6e3f1;
}

.az-product-letter {
  display: grid;
  place-items: center;
  flex: 0 0 31px;
  width: 31px;
  height: 31px;
  border-radius: 2px;
  color: #ffffff;
  background: #2DAAE2;
  background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
  font-size: 15px;
  font-weight: 500;
}

.az-product-info {
  min-width: 0;
  flex: 1;
}

.az-product-info strong {
  display: block;
  font-size: 20px;
  line-height: 1.45;
  color: #172b45;
  margin: 0 0 9px;
  font-weight: 600;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.az-product-info small {
  color: #718096;
  font-size: 13px;
}

/* 
   TAB 2: CATEGORY IMAGE CARDS
 */

.az-category-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 17px;
}

.az-category-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  padding: 0;
  border: 1px solid #e5ebf1;
  border-radius: 8px;
  background: #fff;
  text-align: left;
  cursor: pointer;
  transition: border-color .2s, box-shadow .2s;
  text-decoration: none;
}

.az-category-card:hover {
  border-color: #a7d1d6;
  box-shadow: 0 7px 20px rgba(25, 52, 75, .07);
}

.az-category-image {
  width: 100%;
  display: grid;
  place-items: center;
  padding: 15px;
  overflow: hidden;
  background: #f3f7fa;
}

.az-category-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  max-width: 160px;
}

.az-category-image .az-image-fallback {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: #92a7b7;
  font-size: 38px;
}

.az-category-body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1;
  width: 100%;
  padding: 15px;
}

.az-category-body h4 {
 font-size: 20px;
  line-height: 1.45;
  color: #172b45;

  
  margin: 0 0 9px;
  font-weight: 600;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.az-category-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 7px;
  width: 100%;
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid #edf1f5;
}

.az-category-bottom span {
  color: #718096;
  font-size: 13px;
}

.az-category-bottom i {
  color: #087e8b;
  font-size: 12px;
}

/* Empty state */

.az-empty {
  padding: 50px 15px;
  text-align: center;
  color: #718096;
}


.az-empty[hidden] {
  display: none !important;
}

.az-empty > i {
  margin-bottom: 14px;
  color: #9baaba;
  font-size: 34px;
}

.az-empty h4 {
  margin: 0 0 8px;
  color: #172f4b;
  font-size: 17px;
}

.az-empty p {
  margin: 0;
  font-size: 12px;
}

/* 
   RESPONSIVE DESIGN
 */

@media (max-width: 1100px) {
  .az-letter-list {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }

  .az-product-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .az-category-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 800px) {
  .allproduct {
    padding: 40px 12px;
  }

  .az-content-heading {
    align-items: stretch;
    flex-direction: column;
    gap: 18px;
  }

  .az-search {
    width: 100%;
  }

  .az-content-box {
    padding: 20px;
  }

  .az-category-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .az-product-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .az-category-image {
    height: 140px;
  }
  .az-universal-heading h2,
.az-universal-heading h3,
.az-universal-heading h4,
.az-universal-heading h5,
.az-universal-heading h6,
.az-universal-heading h1 {
  font-size: 28px;
  text-align: center;
}
    .az-universal-heading {
    text-align: center;
    }
}

@media (max-width: 520px) {
  .az-main-tabs {
    gap: 5px;
    padding: 5px;
  }

  .az-main-tab {
    flex: 1;
    padding: 12px 7px;
    font-size: 11px;
  }

  .az-navigation {
    padding: 15px;
  }

  .az-letter-list {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 7px;
  }

  .az-content-box {
    padding: 14px;
  }

  .az-content-heading h3 {
    font-size: 20px;
  }

  .az-product-list {
    grid-template-columns: 1fr 1fr;
  }

  .az-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .az-product-card {
  flex-direction: column;
}

  .az-category-image {
    height: 125px;
    padding: 10px;
  }

  .az-category-body {
    padding: 11px;
  }

  .az-category-body h4 {
    font-size: 16px;
  }

.az-product-info strong {
  display: block;
  font-size: 16px;
}

  .az-category-bottom span {
    font-size: 11px;
  }

  .az-result-bar {
    flex-wrap: wrap;
  }
  .az-product-info small {
  color: #718096;
  font-size: 12px;
}
}

@media (prefers-reduced-motion: reduce) {
  .allproduct *,
  .allproduct *::before,
  .allproduct *::after {
    transition: none !important;
  }
}
/* -------------------------Section page */

.labozon-category-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 12px;
  row-gap: 12px;
}

@media (max-width: 1100px) {
  .labozon-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }
}

@media (max-width: 575px) {
  .labozon-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
}


/* 
   LABOZON CATEGORY SECTION
 */

.labozon-category-section {
  padding: 45px 0;
}

.labozon-category-section .section-container {
  width: min(1380px, 100%);
  margin: 0 auto;
}

.labozon-category-heading {
  margin-bottom: 35px;
  text-align: center;
}

.labozon-category-heading h2,
.labozon-category-heading h1 {
  font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}

/* Four cards in one row */
.labozon-category-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e3eaf1;
  border-radius: 10px;
  background: #fff;
  transition: border-color .25s ease, box-shadow .25s ease;
}

.labozon-category-card:hover {
  border-color: #cbdde9;
  box-shadow: 0 10px 28px rgba(21, 53, 80, .08);
}

.labozon-category-image-button {
  display: block;
  width: 100%;
  height: 205px;
  padding: 17px;
  overflow: hidden;
  border: 0;
  background: #fff;
  cursor: pointer;
}

.labozon-category-image-button img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: opacity .25s ease;
}

.labozon-category-image-button:hover img {
  opacity: .88;
}

.labozon-category-card-content {
  padding: 18px 17px 18px;
  border-top: 1px solid #edf1f5;
}

.labozon-category-name {
  display: block;
  width: 100%;
  min-height: 44px;
  margin: 0 0 15px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #173451;
  font: inherit;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
  text-align: left;
  cursor: pointer;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.labozon-category-name:hover {
  color: #0788ba;
}

.labozon-explore-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 30px;
  padding: 2px 12px;
  border-radius: 4px;
  color: #ffffff;
  background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease;
}


/* 
   OFFCANVAS
 */

.labozon-category-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  background: rgba(13, 29, 46, .54);
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s ease, visibility .3s ease;
}

.labozon-category-overlay.active {
  opacity: 1;
  visibility: visible;
}

.labozon-category-offcanvas {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10001;
  display: flex;
  flex-direction: column;
  width: min(440px, 100%);
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
  background: #fff;
  box-shadow: -12px 0 40px rgba(0, 0, 0, .13);
  transform: translateX(105%);
  visibility: hidden;
  transition: transform .3s ease, visibility .3s ease;
}

.labozon-category-offcanvas.active {
  transform: translateX(0);
  visibility: visible;
}

body.labozon-category-open {
  overflow: hidden;
}

.labozon-offcanvas-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
  padding: 25px 23px 22px;
  border-bottom: 1px solid #e9eef3;
}

.labozon-offcanvas-header > div > span {
  display: block;
  margin-bottom: 8px;
  color: #0788ba;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.4px;
}

.labozon-offcanvas-header h2 {
  margin: 0;
  color: #173451;
  font-size: 23px;
  font-weight: 750;
  line-height: 1.4;
}

.labozon-offcanvas-header p {
  margin: 7px 0 0;
  color: #7a899b;
  font-size: 12px;
  line-height: 1.6;
}

.labozon-offcanvas-close {
  display: grid;
  flex: 0 0 38px;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid #e1e8ee;
  border-radius: 50%;
  background: #fff;
  color: #173451;
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
}

.labozon-offcanvas-close:hover {
  background: #f0f7fa;
  color: #0788ba;
}

.labozon-offcanvas-body {
  flex: 1 1 auto;
  min-height: 0;
  padding: 15px 23px;
  overflow-y: auto;
  overscroll-behavior: contain;
}

/* Subcategory links */

.labozon-subcategory-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.labozon-subcategory-link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 14px 15px;
  border: 1px solid #e6edf2;
  border-radius: 6px;
  background: #fff;
  color: #29445e;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  transition: border-color .2s ease, background .2s ease,
    color .2s ease;
}

.labozon-subcategory-link:hover {
  border-color: #c9e3ed;
  background: #f3fafc;
  color: #0788ba;
}

.labozon-subcategory-link span {
  flex: 1;
}

.labozon-subcategory-arrow {
  flex: 0 0 auto;
  color: #0788ba;
  font-size: 17px;
}

.labozon-offcanvas-footer {
  flex: 0 0 auto;
  padding: 17px 23px 22px;
  border-top: 1px solid #e8eef3;
  background: #fff;
}

.labozon-view-all-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 46px;
  padding: 12px;
  border-radius: 5px;
  background: #087e8b;
  color: #fff;
  font-size: 13px;
  font-weight: 750;
  text-align: center;
  text-decoration: none;
  transition: background .2s ease;
}

.labozon-view-all-button:hover {
  background: #066873;
  color: #fff;
}

/* Keyboard focus */

.labozon-category-section button:focus-visible,
.labozon-category-section a:focus-visible,
.labozon-category-offcanvas button:focus-visible,
.labozon-category-offcanvas a:focus-visible {
  outline: 2px solid #0788ba;
  outline-offset: 3px;
}

/* 
   RESPONSIVE
 */

@media (max-width: 1100px) {
  .labozon-category-image-button {
    height: 220px;
  }
}
@media (max-width: 991px){
    .labozon-category-heading h2,
.labozon-category-heading h1 {
        font-size: 28px;
    }
}
@media (max-width: 575px) {
  .labozon-category-section {
    padding: 42px 0;
  }

  .labozon-category-section .section-container {
    width: 92%;
  }

  .labozon-category-image-button {
    height: 140px;
    padding: 10px;
  }

  .labozon-category-card-content {
    padding: 12px 10px 13px;
  }

  .labozon-category-name {
    min-height: 48px;
    margin-bottom: 10px;
    font-size: 16px;
  }

  .labozon-explore-button {
    min-height: 25px;
    padding: 8px 5px;
    font-size: 10px;
  }

  .labozon-category-heading {
    margin-bottom: 24px;
  }

  .labozon-category-heading p {
    font-size: 12px;
  }

  .labozon-offcanvas-header {
    padding: 20px 17px;
  }

  .labozon-offcanvas-body {
    padding: 14px 17px;
  }

  .labozon-offcanvas-footer {
    padding: 14px 17px 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .labozon-category-card,
  .labozon-category-image-button img,
  .labozon-category-overlay,
  .labozon-category-offcanvas,
  .labozon-subcategory-link {
    transition: none;
  }
}
/* --------------------------Category section */


/* ===== MAIN CATEGORY SECTION ===== */
.labozon-maincategory-section {
    padding: 45px 0 60px;
    background: #fff;
    color: #263445;
}

.maincategory-container {
    width: min(1380px, calc(100% - 40px));
    margin: 0 auto;
}

.labozon-maincategory-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 28px;
    padding-bottom: 22px;
    border-bottom: 1px solid #e5eaf0;
}

.category-eyebrow {
    display: inline-block;
    margin-bottom: 8px;
    color: #2daae2;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.labozon-maincategory-heading h2,
.labozon-maincategory-heading h1 {
    font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}

.labozon-maincategory-heading p {
    margin: 0;
    color: #697789;
    font-size: 14px;
    line-height: 1.6;
}

.category-toolbar {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #687587;
    font-size: 13px;
}

.category-toolbar select {
    min-height: 40px;
    max-width: 220px;
    padding: 0 12px;
    border: 1px solid #dce3eb;
    border-radius: 5px;
    background: #fff;
    color: #27394c;
    font: inherit;
    cursor: pointer;
}

/* ===== TWO-COLUMN PAGE LAYOUT ===== */
.labozon-maincategory-layout {
    display: grid;
    grid-template-columns: 336px minmax(0, 1fr);
    align-items: start;
    gap: 12px;
}

.maincategory-filter {
    padding: 20px 16px;
    border: 1px solid #e1e7ee;
    border-radius: 8px;
    background: #fff;
}

.filter-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding-bottom: 17px;
    border-bottom: 1px solid #e9edf2;
}

.filter-heading h3,
.filter-heading .filter-title {
    margin: 0;
  color: #000;
  font-size: 20px;
  font-weight: 600;
}

.filter-heading h3 i,
.filter-heading .filter-title i {
    margin-right: 5px;
    color: #2daae2;
}

.filter-heading button {
    padding: 0;
    border: 0;
    background: none;
    color: #555;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
}

.filter-group {
    padding: 18px 0;
    border-bottom: 1px solid #e9edf2;
}

.filter-group:last-of-type {
    border-bottom: 0;
}

.filter-group h4,
.filter-group .filter-group-title {
    margin: 0 0 14px;
    color: #1e1e1e;
  font-size: 16px;
  font-weight: 500;
}

#productSearch {
    width: 100%;
    height: 39px;
    padding: 0 11px;
    border: 1px solid #dce3eb;
    border-radius: 5px;
    outline: none;
    color: #263445;
    font: inherit;
    font-size: 12px;
}

#productSearch:focus,
.price-inputs input:focus {
    border-color: #2daae2;
    box-shadow: 0 0 0 2px rgb(8 127 140 / 10%);
}

.filter-option {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 0 0 12px;
    color: #555;
  font-size: 13px;
  line-height: 1.5;
  cursor: pointer;
}

.filter-option:last-child {
    margin-bottom: 0;
}

.filter-option input {
    flex: 0 0 auto;
    width: 15px;
    height: 15px;
    margin: 1px 0 0;
    accent-color: #2daae2;
    cursor: pointer;
}

/* Specification filters: each field shows/hides; long value lists scroll. */
.specification-filter-group {
    border-bottom: 1px solid #e6edf3;
}
.specification-filter-group summary {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 11px 0;
    color: #253247;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    list-style: none;
}
.specification-filter-group summary::-webkit-details-marker {
    display: none;
}
.specification-filter-group summary span {
    flex: 1;
    min-width: 0;
}
.specification-filter-group summary small {
    min-width: 22px;
    padding: 1px 7px;
    border-radius: 999px;
    background: #eef6fb;
    color: #5b6b7f;
    font-size: 11px;
    font-weight: 500;
    text-align: center;
}
.specification-filter-group summary::after {
    content: "";
    width: 7px;
    height: 7px;
    margin: 0 3px 3px 2px;
    border-right: 2px solid #8593a6;
    border-bottom: 2px solid #8593a6;
    transform: rotate(45deg);
    transition: transform .2s ease;
}
.specification-filter-group[open] summary::after {
    margin-bottom: -3px;
    transform: rotate(-135deg);
}
/* A dot marks a field with a selected value, even while it is hidden. */
.specification-filter-group:has(input:checked) summary span::after {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-left: 7px;
    border-radius: 50%;
    background: #2daae2;
    vertical-align: middle;
}
.specification-filter-options {
    max-height: 190px;
    overflow-y: auto;
    padding: 2px 6px 12px 0;
    scrollbar-width: thin;
    scrollbar-color: #c5d3df transparent;
}
.specification-filter-options::-webkit-scrollbar {
    width: 6px;
}
.specification-filter-options::-webkit-scrollbar-thumb {
    border-radius: 3px;
    background: #c5d3df;
}

.subcategory-filter-link {
    color: #000;
    text-decoration: none;
}

.subcategory-filter-link:hover,
.subcategory-filter-link:focus {
    color: #000;
    text-decoration: none;
}

.price-inputs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.price-inputs label {
    display: flex;
    flex-direction: column;
    gap: 6px;
    color: #778394;
    font-size: 11px;
}

.price-inputs input {
    width: 100%;
    min-width: 0;
    height: 35px;
    padding: 0 7px;
    border: 1px solid #dce3eb;
    border-radius: 4px;
    outline: none;
    color: #263445;
    font: inherit;
    font-size: 12px;
}

#priceRange {
    width: 100%;
    margin: 17px 0 5px;
    accent-color: #f25631;
    cursor: pointer;
}

.range-labels {
    display: flex;
    justify-content: space-between;
    color: #8a96a5;
    font-size: 10px;
}

.apply-filter-btn {
    width: 100%;
    min-height: 36px;
    margin-top: 17px;
    border: 1px solid #2daae2;
    border-radius: 5px;
    background: #2DAAE2;
    background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
    transition: background .2s ease;
}

.apply-filter-btn:hover {
    background: #066b76;
}

/* ===== PRODUCT GRID: 12PX GAP ===== */
.maincategory-products {
    min-width: 0;
}

.products-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    align-items: stretch;
}

/* ===== PRODUCT CARD ===== */
.product-card-maincategory {
    position: relative;
    display: flex;
    min-width: 0;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #e3e8ee;
    border-radius: 7px;
    background: #fff;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.product-card-maincategory:hover {
    border-color: #cbd9e3;
    box-shadow: 0 5px 18px rgb(27 50 72 / 7%);
}

.product-image-maincategory {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 190px;
    padding: 18px;
    overflow: hidden;
    background: #f8fafc;
}

.product-image-maincategory img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    /* No image scale on hover */
}

.product-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 5px 8px;
    border-radius: 3px;
    background: #e2f5f4;
    color: #2daae2;
    font-size: 10px;
    font-weight: 700;
}

.product-info-maincategory {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 13px 12px 12px;
}

.product-info-maincategory h3,
.product-info-maincategory h2 {
    min-height: 40px;
  margin: 0 0 10px;
  color: #101010;
  font-size: 20px;
  font-weight: 550;
  line-height: 1.45;
  overflow-wrap: anywhere;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.product-info-maincategory h3 a,
.product-info-maincategory h2 a {
    color: inherit;
    text-decoration: none;
}

.product-info-maincategory h3 a:hover,
.product-info-maincategory h2 a:hover,
.product-info-maincategory h3 a:focus,
.product-info-maincategory h2 a:focus {
    color: inherit;
    text-decoration: none;
}

.product-specification-maincategory {
    display: flex;
    flex-direction: column;
    gap: 7px;
    margin: 0 0 15px;
    color: #647184;
    font-size: 12px;
    line-height: 1.4;
}

.product-specification-maincategory .p1 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 7px;
}

.product-specification-maincategory .p1 strong {
    flex: 0 0 45%;
    color: #44566a;
    font-weight: 600;
}

.product-specification-maincategory .p1 {
    overflow-wrap: anywhere;
}

.product-bottom-maincategory {
    display: flex;
    align-items: center;
    /* justify-content: space-between; */
    gap: 7px;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid #edf0f4;
}

.product-bottom-maincategory .price {
    color: #172b43;
    font-size: 20px;
    font-weight: 550;
    line-height: 1.3;
    overflow-wrap: anywhere;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

/* .cart-btn.add-cart-btn {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 34px;
    padding: 0 10px;
    border: 0;
    border-radius: 4px;
    background: #2daae2;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    transition: background .2s ease;
}

.cart-btn.add-cart-btn:hover {
    background: #066b76;
} */

/* Compare and wishlist buttons */
.product-hover-actions-maincategory {
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    flex-direction: column;
    gap: 7px;
    opacity: 0;
    visibility: hidden;
    transform: translateX(5px);
    transition: opacity .2s ease, visibility .2s ease, transform .2s ease;
}

.product-card-maincategory:hover .product-hover-actions-maincategory,
.product-card-maincategory:focus-within .product-hover-actions-maincategory {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

/* Touch screens (tablets, including iPads served the desktop site) cannot
   hover, so Compare and Wishlist stay visible on every card. */
@media (hover: none), (pointer: coarse) {
    .product-hover-actions-maincategory {
        opacity: 1;
        visibility: visible;
        transform: none;
    }
}

.product-action-maincategory {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid #e0e7ed;
    border-radius: 5px;
    background: #fff;
    color: #35495e;
    cursor: pointer;
    transition: background .2s ease, color .2s ease, border-color .2s ease;
}

.product-action-maincategory:hover,
.product-action-maincategory.is-active {
    border-color: rgba(43, 85, 163, 1);
    background: #2DAAE2;
    background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
    color: #fff;
}

.no-products-message {
    padding: 55px 20px;
    border: 1px dashed #d6e0e8;
    border-radius: 8px;
    text-align: center;
    color: #687789;
}

.no-products-message[hidden] {
    display: none !important;
}

.no-products-message > i {
    color: #2daae2;
    font-size: 27px;
}

.no-products-message h3,
.no-products-message .no-products-title {
    font-weight: 700;
    margin: 12px 0 6px;
    color: #24374b;
    font-size: 18px;
}

.no-products-message p {
    font-size: 13px;
}

.no-products-message button {
    padding: 10px 16px;
    border: 0;
    border-radius: 4px;
    background: #2daae2;
    color: #fff;
    cursor: pointer;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1200px) {
    .labozon-maincategory-layout {
        grid-template-columns: 220px minmax(0, 1fr);
        gap: 18px;
    }

    .products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-image-maincategory {
        height: 180px;
    }
}
@media (max-width: 991px){
     .labozon-maincategory-layout {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .maincategory-filter {
  display: none;
}
}
@media (max-width: 700px) {
    .maincategory-container {
        width: calc(100% - 0px);
    }

    .labozon-maincategory-section {
        padding: 28px 12px 40px;
    }

    .labozon-maincategory-layout {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .maincategory-filter {
        padding: 16px;
    }

    .filter-group {
        padding: 14px 0;
    }

    .labozon-maincategory-heading {
        align-items: flex-start;
        flex-direction: column;
        margin-bottom: 18px;
    }

    .category-toolbar {
        width: 100%;
        justify-content: space-between;
    }

    .category-toolbar select {
        max-width: 190px;
    }

    .products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .product-image-maincategory {
        height: 145px;
        padding: 12px;
    }

    .product-info-maincategory {
        padding: 10px 9px;
    }

    .product-info-maincategory h3,
.product-info-maincategory h2 {
        min-height: 40px;
        font-size: 18px;
    }

    .product-specification-maincategory {
        font-size: 10px;
        gap: 6px;
    }

    .product-specification-maincategory .p1 {
        flex-direction: column;
        gap: 1px;
    }

    .product-specification-maincategory .p1 strong {
        flex-basis: auto;
    }

    .product-bottom-maincategory {
        align-items: flex-start;
    }

    .product-bottom-maincategory .price {
        font-size: 14px;
    }

    .cart-btn.add-cart-btn {
        width: 100%;
    }

    .product-hover-actions-maincategory {
        opacity: 1;
        visibility: visible;
        transform: none;
    }

    .product-action-maincategory {
        width: 30px;
        height: 30px;
    }
    .labozon-maincategory-heading h2,
.labozon-maincategory-heading h1 {
        font-size: 28px;
        text-align: center;
    }

}
@media (max-width: 576px){
    .product-bottom-maincategory {
        align-items: flex-start;
        flex-direction: column;
    }
    .quote-btn{
        width: 100%;
    }
     .cart-btn.add-cart-btn {
        width: 100%;
        max-width: 100%;
    }
}
@media (max-width: 360px) {
    .products-grid {
        grid-template-columns: 1fr 1fr;
    }

    .product-image-maincategory {
        height: 200px;
    }

    .product-specification-maincategory .p1 {
        flex-direction: row;
    }
    .quote-btn{
        width: 100%;
    }
    .product-bottom-maincategory {
        align-items: flex-start;
        flex-direction: column;
    }
}
.quote-btn{
    display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 26px;
  padding: 0 10px;
  border: 0;
  border-radius: 4px;
  background: #2DAAE2;
  background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: background .2s ease;
  margin-left: auto;
}
/* ---------------------------Product description */

/* ===== GLOBAL PRODUCT DETAIL ===== */
.labozon-detail-section {
    padding: 45px 12px 70px;
}

.detail-container {
    width: min(1380px, calc(100% - 40px));
    margin: 0 auto;
}

.labozon-detail-section button,
.detail-modal button,
.labozon-detail-section input,
.detail-modal input,
.detail-modal textarea,
.detail-modal select {
    font: inherit;
}

.labozon-detail-section button,
.detail-modal button {
    cursor: pointer;
}

.labozon-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 24px;
    color: #7b8795;
    font-size: 12px;
}

.labozon-breadcrumb a {
    color: #637286;
    text-decoration: none;
}

.labozon-breadcrumb a:hover {
    color: #2daae2;
}

.labozon-breadcrumb i {
    font-size: 9px;
}

.labozon-breadcrumb span {
    color: #23374c;
}

/* ===== TOP PRODUCT GRID ===== */
.labozon-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(0, 0.96fr);
    align-items: start;
    gap: 44px;
    padding-bottom: 48px;
    border-bottom: 1px solid #e7ecf1;
}

/* ===== PRODUCT GALLERY ===== */
.labozon-gallery-section-description {
    min-width: 0;
    position: relative;
}

.gallery-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 12px;
    position: absolute;
    z-index: 9;
    right: 58px;
    top: 12px;
}

.product-stock {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #66778a;
    font-size: 12px;
}

.product-stock i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #0b9c76;
}

.share-product-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 10px;
    border: 1px solid #dce4eb;
    border-radius: 5px;
    background: #fff;
    color: #40536a;
    font-size: 12px;
}

.share-product-btn:hover {
    border-color: #2daae2;
    color: #2daae2;
}

.main-product-image-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: clamp(320px, 40vw, 490px);
    overflow: hidden;
    border-radius: 9px;

    background: #fcfcfc;
    
}

.main-product-image {
    display: block;
    width: 100%;
    height: 100%;
    padding: 24px;
    object-fit: contain;
}

.gallery-image-count {
    position: absolute;
    top: 14px;
    left: 14px;
    z-index: 3;
    padding: 6px 9px;
    border: 1px solid #e4eaf0;
    border-radius: 4px;
    background: rgb(255 255 255 / 94%);
    color: #45566a;
    font-size: 11px;
}

.gallery-expand-btn {
    position: absolute;
    z-index: 4;
    top: 12px;
    right: 12px;
    display: grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border: 1px solid #e0e7ed;
    border-radius: 5px;
    background: #fff;
    color: #334a61;
}

.gallery-arrow {
    position: absolute;
    z-index: 4;
    top: 50%;
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid #dfe7ee;
    border-radius: 50%;
    background: rgb(255 255 255 / 95%);
    color: #31475e;
    opacity: 0;
    transform: translateY(-50%);
    transition: opacity .2s ease, color .2s ease, background .2s ease;
}

.main-product-image-wrap:hover .gallery-arrow,
.main-product-image-wrap:focus-within .gallery-arrow {
    opacity: 1;
}

.gallery-arrow:hover,
.gallery-expand-btn:hover {
    background: #2daae2;
    color: #fff;
}

.gallery-prev {
    left: 12px;
}

.gallery-next {
    right: 12px;
}

.zoom-hint {
    position: absolute;
    right: 12px;
    bottom: 12px;
    padding: 7px 10px;
    border-radius: 4px;
    background: rgb(255 255 255 / 90%);
    color: #647488;
    font-size: 10px;
    pointer-events: none;
}

.magnifier-lens {
    position: absolute;
    z-index: 5;
    display: none;
    width: 145px;
    height: 145px;
    border: 2px solid #fff;
    border-radius: 50%;
    box-shadow: 0 2px 14px rgb(18 37 55 / 25%);
    background-repeat: no-repeat;
    pointer-events: none;
}

.thumbnail-gallery {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 13px;
}

.thumbnail-nav {
    flex: 0 0 30px;
    width: 30px;
    height: 54px;
    border: 1px solid #e1e7ed;
    border-radius: 4px;
    background: #fff;
    color: #52657a;
}

.thumbnail-nav:hover {
    border-color: #2daae2;
    color: #2daae2;
}

.thumbnail-viewport {
    min-width: 0;
    flex: 1;
    overflow: hidden;
}

.thumbnail-track {
    display: flex;
    gap: 10px;
    transition: transform .2s ease;
}

.product-thumbnail {
    flex: 0 0 calc((100% - 30px) / 4);
    min-width: 0;
    height: 146px;
    padding: 5px;
    overflow: hidden;
    border: 1px solid #e0e6ed;
    border-radius: 5px;
    background: #f8fafc;
}

.product-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-thumbnail.active {
    border: 2px solid #2daae2;
    background: #f0fbfb;
}

.view-gallery-btn {
    display: block;
    margin: 12px auto 0;
    padding: 8px 12px;
    border: 0;
    background: transparent;
   color: #767676;
  font-size: 14px;
  font-weight: 500;
}

.view-gallery-btn:hover {
    text-decoration: underline;
}

/* ===== PRODUCT DESCRIPTION ===== */
.labozon-product-description {
    min-width: 0;
}

.product-category-label {
    margin-bottom: 9px;
    color: #2daae2;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 1.3px;
}

.labozon-product-description h1 {
    font-size: 40px;
  font-weight: 500;
  line-height: 1.15;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.product-rating-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    color: #6c7b8c;
    font-size: 12px;
      margin-top: 15px;
}

.rating-stars {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    color: #f2a900;
    font-size: 12px;
}

.product-rating-row strong {
    color: #26384b;
}

.product-rating-row a {
    color: #2daae2;
    text-decoration: none;
}

.rating-divider {
    color: #c6ced7;
}

.product-sku {
    color: #798697;
}

.product-short-description {
    margin: 22px 0 19px;
    color: #68788b;
    font-size: 14px;
    line-height: 1.85;
}

.detail-rich-content {
    color: #68788b;
    font-size: 14px;
    line-height: 1.75;
}

.detail-rich-content p {
    margin: 0 0 12px;
}

.detail-rich-content ul,
.detail-rich-content ol {
    margin: 0 0 12px;
    padding-left: 22px;
}

.detail-rich-content li + li {
    margin-top: 5px;
}

.product-short-description ul,
.product-short-description ol {
    margin: 0;
    padding-left: 22px;
}

.product-key-features .detail-rich-content ul,
.product-key-features .detail-rich-content ol {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 15px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.product-key-features .detail-rich-content li {
    position: relative;
    padding-left: 20px;
    color: #5f6f82;
    font-size: 12px;
    line-height: 1.55;
}

.product-key-features .detail-rich-content li::before {
    position: absolute;
    top: 0;
    left: 0;
    color: #2daae2;
    content: "✓";
    font-size: 14px;
    font-weight: 700;
}

.detail-price-block {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    padding: 18px 0 7px;
    border-top: 1px solid #e7ecf1;
}

.detail-current-price {
   font-size: 35px;
  font-weight: 600;
  line-height: 1.2;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  color: #f14e31;
  background-image: linear-gradient(90deg, #f14e31, #fca331);
  background-size: 100% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.detail-old-price {
    color: #8a96a4;
    font-size: 15px;
}

.detail-discount {
    padding: 5px 8px;
    border-radius: 3px;
    background: #e7f7f0;
    color: #13815f;
    font-size: 11px;
    font-weight: 700;
}

.price-note {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 8px 0 16px;
    color: #7b8795;
    font-size: 11px;
    line-height: 1.6;
}

.price-note i {
    margin-top: 2px;
    color: #2daae2;
}

.product-availability {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 11px 12px;
    border: 1px solid #dcefe7;
    border-radius: 5px;
    background: #f5fbf8;
    color: #267b5c;
    font-size: 12px;
}

.product-key-features {
    margin: 22px 0;
}

.product-key-features h3,
.product-key-features h2 {
    margin: 0 0 12px;
    color: #25394e;
    font-size: 20px;    
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.product-key-features ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 15px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.product-key-features li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    color: #5f6f82;
    font-size: 12px;
    line-height: 1.55;
}

.product-key-features li i {
    margin-top: 3px;
    color: #2daae2;
    font-size: 11px;
}

.product-quantity-row {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
    color: #34485d;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    font-weight: 600;
}
.product-quantity-row label{
    font-size: 18px;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}
.quantity-control {
    display: flex;
    align-items: center;
    height: 38px;
    overflow: hidden;
    border: 1px solid #dce4eb;
    border-radius: 5px;
}

.quantity-control button {
    width: 36px;
    height: 100%;
    border: 0;
    background: #f8fafc;
    color: #33495f;
    font-size: 17px;
}

.quantity-control #quantityMinus {
    font-size: 0;
}

.quantity-control #quantityMinus::before {
    content: "−";
    font-size: 17px;
}

.quantity-control input {
    width: 45px;
    height: 100%;
    border: 0;
    border-right: 1px solid #e1e7ed;
    border-left: 1px solid #e1e7ed;
    outline: none;
    text-align: center;
    color: #26384b;
    font-size: 12px;
    appearance: textfield;
    -moz-appearance: textfield;
}

.quantity-control input::-webkit-inner-spin-button,
.quantity-control input::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.product-primary-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.detail-add-cart-btn,
.detail-catalog-btn,
.detail-quote-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 40px;
    padding: 0 17px;
    border-radius: 5px;
    font-size: 18px;
    font-weight: 500;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.detail-add-cart-btn {
    border: 1px solid #2daae2;
    background: #2daae2;
    color: #fff;
}

.detail-add-cart-btn:hover {
    border-color: #fb9a30;
    background: #fb9a30;
}

.detail-catalog-btn {
    border: 1px solid #fb9a30;
  background: #fff;
  color: #fb9a30;
}

.detail-catalog-btn:hover {
    border-color: #2daae2;
    color: #2daae2;
}

.detail-quote-btn {
    width: 100%;
    margin-top: 10px;
    border: 1px solid rgba(240, 74, 49, 1);
    background: #FDA731;
  background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
  color: #fff;
}

.detail-quote-btn:hover {
    color: #ffffff;
  background: #0034bb;
  background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
}

.product-trust-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid #e7ecf1;
}

.product-trust-row > div {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #738195;
    font-size: 13px;
    line-height: 1.5;
}

.product-trust-row i {
    color: #2c67b0;
    font-size: 17px;
}

/* ===== SECTION HEADINGS ===== */
.detail-information-section {
    padding: 0 0 42px;
    border-bottom: 1px solid #e7ecf1;
}
.detail-content-section {
    padding: 45px 0 42px;
    border-bottom: 1px solid #e7ecf1;
}
.detail-section-heading {
    margin-bottom: 23px;
    text-align: center;
}

.detail-section-heading > span,
.form-eyebrow {
    display: block;
    margin-bottom: 8px;
    color: #2daae2;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: 1.5px;
}

.detail-section-heading h2 {
    margin: 0 0 8px;
    color: #20354b;
   font-size: 30px;
  font-weight: 600;
  line-height: 1.3;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.detail-section-heading p {
    margin: 0;
    color: #738195;
    font-size: 13px;
    line-height: 1.7;
}

.detail-heading-with-controls {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
}

/* ===== SPECIFICATIONS / TABS ===== */
.detail-tabs {
  display: flex;
  gap: 45px;
  border-bottom: 1px solid #e1e7ed;
  justify-content: center;
  background: aliceblue;
  padding-top: 15px;
  flex-wrap: wrap;
}

.detail-tab {
    position: relative;
    flex: 0 0 auto;
    padding: 0 0 15px;
    border: 0;
    background: transparent;
    color: #728094;
   font-size: 20px;
  font-weight: 500;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.detail-tab.active {
    color: #2daae2;
}

.detail-tab.active::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 3px;
    border-radius: 3px;
    background: #2daae2;
    content: "";
}

.detail-tab-panel {
    padding-top: 28px;
}

.detail-tab-panel[hidden] {
    display: none !important;
}

.specification-table-wrap {
    overflow-x: auto;
    border: 1px solid #e3e9ef;
    border-radius: 7px;
}

.labozon-specification-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
    font-size: 13px;
}

.labozon-specification-table th,
.labozon-specification-table td {
    padding: 14px 18px;
    border-bottom: 1px solid #e8edf2;
    line-height: 1.6;
}

.labozon-specification-table tr:last-child th,
.labozon-specification-table tr:last-child td {
    border-bottom: 0;
}

.labozon-specification-table th {
   width: 34%;
  background: #f7f9fb;
  color: #43566b;
  font-weight: 500;
  font-size: 14px;
}

.labozon-specification-table td {
    color: #6a788a;
    font-size: 14px;
}

.labozon-specification-table tr:nth-child(even) td {
    background: #fcfdfe;
}

/* ===== FEATURES AND APPLICATIONS ===== */
.detail-feature-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.detail-feature-card {
    padding: 23px 18px;
    border: 1px solid #e3e9ef;
    border-radius: 7px;
    background: #fff;
}

.detail-feature-card > i {
    display: inline-grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 7px;
    background: #eaf6f7;
    color: #2daae2;
    font-size: 17px;
}

.detail-feature-card h3 {
   margin: 0 0 8px;
  color: #293d52;
  font-size: 15px;
}

.detail-feature-card p {
    margin: 0;
    color: #738195;
    font-size: 12px;
    line-height: 1.75;
}

.application-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.application-list > div {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 15px;
    border: 1px solid #e4eaf0;
    border-radius: 5px;
    color: #586a7e;
    font-size: 14px;
    line-height: 1.6;
}

.application-list i {
    margin-top: 4px;
    color: #2daae2;
}

/* ===== ACCESSORY AND RELATED CARD SLIDERS ===== */
.slider-controls {
    display: flex;
    flex: 0 0 auto;
    gap: 8px;
}

.slider-controls button {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid #dce4eb;
    border-radius: 5px;
    background: #fff;
    color: #3b4f64;
}

.slider-controls button:hover {
    border-color: #2daae2;
    background: #2daae2;
    color: #fff;
}

.detail-card-slider {
    display: grid;
    grid-auto-columns: calc((100% - 48px) / 5);
    grid-auto-flow: column;
    gap: 16px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    scrollbar-color: #cbd7e1 #f5f7f9;
    padding-bottom: 10px;
}

.detail-card-slider::-webkit-scrollbar {
    height: 5px;
}

.detail-card-slider::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: #cbd7e1;
}

.detail-mini-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #e2e8ee;
    border-radius: 7px;
    background: #fff;
    scroll-snap-align: start;
}

.mini-card-image {
    display: flex;
    height: 180px;
    align-items: center;
    justify-content: center;
    padding: 0px;
   background: #f8fafc;
    width: 100%;
}

.mini-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mini-card-info {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 15px;
}

.mini-card-info h3 {
    margin: 0 0 8px;
    font-size: 14px;
    line-height: 1.5;
}

.mini-card-info h3 a {
    color: #293d52;
    text-decoration: none;
    font-size: 20px;
    line-height: 1.5;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.mini-card-info h3 a:hover {
    color: #2daae2;
}

.mini-card-info p {
    margin: 0 0 12px;
    color: #748194;
    font-size: 11px;
    line-height: 1.65;
}

.mini-card-info > strong {
    margin-top: auto;
    color: #20354b;
    font-size: 14px;
}

.mini-card-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 13px;
}

.mini-add-btn,
.mini-explore-btn {
    display: flex;
    min-height: 25px;
    align-items: center;
    justify-content: center;
    padding: 3px 9px;
    border: 1px solid #2daae2;
    border-radius: 4px;
    background: #2daae2;
    color: #fff;
    font-size: 11px;
    font-weight: 650;
    text-align: center;
    text-decoration: none;
}

.mini-explore-btn {
    background: #fff;
    color: #2daae2;
}

.mini-add-btn:hover {
    background: #066b76;
}

.mini-explore-btn:hover {
    background: #eaf6f7;
}

/* ===== VIDEO ===== */
/* .product-video-frame {
    width: min(850px, 100%);
    margin: 0 auto;
    overflow: hidden;
    border-radius: 8px;
    background: #101820;
    box-shadow: 0 6px 25px rgb(20 40 60 / 10%);
}

.product-video-frame video {
    display: block;
    width: 100%;
    max-height: 500px;
    aspect-ratio: 16 / 9;
    object-fit: contain;
} */

.video-caption {
    margin: 12px 0 0;
    color: #8994a2;
    font-size: 11px;
    text-align: center;
}

.product-video-frame {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 12px;
    background: #f3f5f7;
}

.product-video-frame iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}
.detail-mini-card .relpro{
    width: 100%;
  height: 100%;
  object-fit: contain !important;
}

/* ===== CUSTOMER REVIEWS ===== */
.reviews-summary {
    display: grid;
    grid-template-columns: 180px minmax(220px, 1fr) 260px;
    gap: 28px;
    align-items: center;
    padding: 24px;
    border: 1px solid #e2e8ee;
    border-radius: 8px;
    background: #fbfcfd;
}

.review-score {
    text-align: center;
}

.review-score > strong {
    display: block;
    margin-bottom: 8px;
    color: #20354b;
    font-size: 37px;
    line-height: 1.2;
}

.review-score > strong span {
    color: #8a96a5;
    font-size: 15px;
    font-weight: 500;
}

.review-score p {
    margin: 8px 0 0;
    color: #8994a2;
    font-size: 11px;
}

.rating-breakdown {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.rating-breakdown > div {
    display: grid;
    grid-template-columns: 45px minmax(0, 1fr) 32px;
    align-items: center;
    gap: 10px;
    color: #6d7b8d;
    font-size: 13px;
}

.rating-breakdown b {
    color: #53657a;
    font-size: 13px;
    text-align: right;
}

.rating-bar {
    height: 7px;
    overflow: hidden;
    border-radius: 10px;
    background: #e6ebf0;
}

.rating-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #eeb34c;
}

.write-review-box {
    padding-left: 22px;
    border-left: 1px solid #e1e7ed;
}

.write-review-box > i {
    color: #2daae2;
    font-size: 22px;
}

.write-review-box h3 {
    margin: 10px 0 6px;
    color: #293d52;
    font-size: 14px;
}

.write-review-box p {
    margin: 0 0 13px;
    color: #788698;
    font-size: 11px;
    line-height: 1.7;
}

.write-review-box button {
    min-height: 36px;
    padding: 0 12px;
    border: 1px solid #2daae2;
    border-radius: 4px;
    background: #fff;
    color: #2daae2;
    font-size: 11px;
    font-weight: 650;
}

.write-review-box button:hover {
    background: #2daae2;
    color: #fff;
}

.review-list {
    margin-top: 25px;
}

.review-item {
    display: flex;
    gap: 15px;
    padding: 22px 0;
    border-bottom: 1px solid #e6ebf0;
}

.review-avatar {
    display: grid;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 50%;
    background: #eaf5f6;
    color: #2daae2;
    font-size: 15px;
    font-weight: 700;
}

.review-body {
    min-width: 0;
    flex: 1;
}

.review-author-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 8px;
}

.review-author-row h3,
.review-author-row .review-author-name {
    display: block;
    margin: 0 0 4px;
    color: #2d4054;
    font-size: 15px;
}

.review-author-row span,
.review-author-row time {
    color: #8a96a5;
    font-size: 13px;
}

.review-body > p {
    margin: 10px 0 0;
    color: #68788b;
    font-size: 14px;
    line-height: 1.8;
}

/* ===== FAQ ===== */
.detail-faq-list {
    border-top: 1px solid #e2e8ee;
}

.detail-faq-item {
    border-bottom: 1px solid #e2e8ee;
}

.detail-faq-question {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 20px 3px;
    border: 0;
    background: transparent;
    color: #2b4056;
   
    text-align: left;
}
.detail-faq-question span{
     font-size: 15px;
    font-weight: 500;
}

.detail-faq-question > i {
    flex: 0 0 auto;
    color: #2daae2;
    transition: transform .2s ease;
}

.detail-faq-question[aria-expanded="true"] > i {
    transform: rotate(45deg);
}

.detail-faq-answer {
    padding: 0 28px 19px 3px;
}

.detail-faq-answer p {
    max-width: 850px;
    margin: 0;
    color: #718094;
    font-size: 12px;
    line-height: 1.85;
}

.detail-faq-answer[hidden] {
    display: none !important;
}

/* ===== MODALS ===== */
.detail-modal[hidden] {
    display: none !important;
}

.detail-modal {
    position: fixed;
    z-index: 99999;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 25px;
    background: rgb(10 21 33 / 82%);
}

.modal-close {
    position: absolute;
    z-index: 5;
    top: 20px;
    right: 22px;
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid rgb(255 255 255 / 30%);
    border-radius: 50%;
    background: rgb(255 255 255 / 12%);
    color: #fff;
    font-size: 18px;
}

.modal-gallery-content {
    width: min(1150px, 80vw);
    max-height: 95vh;
    text-align: center;
}

.modal-gallery-content > span {
    display: block;
    margin-bottom: 12px;
    color: #fff;
    font-size: 12px;
}

.modal-gallery-content > img {
    display: block;
    width: 100%;
    height: min(100vh, 570px);
    padding: 15px;
    border-radius: 7px;
    background: #fff;
    object-fit: contain;
}

.modal-thumbnail-track {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 15px;
    overflow-x: auto;
}

.modal-thumbnail-track button {
    flex: 0 0 70px;
    height: 58px;
    padding: 4px;
    border: 2px solid transparent;
    border-radius: 4px;
    background: #fff;
}

.modal-thumbnail-track button.active {
    border-color: #25c0cb;
}

.modal-thumbnail-track img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.modal-gallery-arrow {
    position: absolute;
    top: 50%;
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid rgb(255 255 255 / 40%);
    border-radius: 50%;
    background: rgb(255 255 255 / 14%);
    color: #fff;
    transform: translateY(-50%);
}

.modal-gallery-prev {
    left: 25px;
}

.modal-gallery-next {
    right: 25px;
}

.modal-gallery-arrow:hover {
    background: #2daae2;
}

/* Quote and review form dialogs */
.form-modal {
    overflow-y: auto;
    align-items: flex-start;
    padding: 35px 18px;
    background: rgb(14 29 44 / 65%);
}

.detail-form-popup {
    position: relative;
    width: min(510px, 100%);
    margin: auto;
    padding: 32px;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 20px 65px rgb(0 0 0 / 20%);
}

.form-close {
    top: 16px;
    right: 16px;
    width: 34px;
    height: 34px;
    border-color: #e0e6ed;
    background: #fff;
    color: #3c5065;
}

.detail-form-popup h2,
.detail-form-popup .detail-form-title {
    display: block;
    font-weight: 700;
    margin: 0 35px 8px 0;
    color: #20354b;
    font-size: 25px;
}

.detail-form-popup > p {
    margin: 0 0 22px;
    color: #758396;
    font-size: 12px;
    line-height: 1.7;
}

.detail-form-popup form {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.detail-form-popup form label {
    display: flex;
    flex-direction: column;
    gap: 7px;
    color: #405369;
    font-size: 12px;
    font-weight: 650;
}

.detail-form-popup input,
.detail-form-popup textarea,
.detail-form-popup select {
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid #dce4eb;
    border-radius: 5px;
    outline: none;
    background: #fff;
    color: #26384b;
    font-size: 12px;
}

.detail-form-popup textarea {
    resize: vertical;
}

.detail-form-popup input:focus,
.detail-form-popup textarea:focus,
.detail-form-popup select:focus {
    border-color: #2daae2;
    box-shadow: 0 0 0 2px rgb(8 127 140 / 10%);
}

.detail-form-submit {
    min-height: 44px;
    margin-top: 4px;
    border: 0;
    border-radius: 5px;
    background: #2daae2;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
}

.detail-form-submit:hover {
    background: #066b76;
}

.form-status {
    margin: 0;
    color: #2daae2;
    font-size: 12px;
    line-height: 1.6;
}

/* ===== TOAST ===== */
.detail-toast {
    position: fixed;
    z-index: 100001;
    right: 22px;
    bottom: 22px;
    max-width: min(380px, calc(100vw - 32px));
    padding: 13px 18px;
    border: 1px solid #dce8e9;
    border-radius: 6px;
    background: #fff;
    color: #26384b;
    box-shadow: 0 8px 30px rgb(20 40 60 / 15%);
    font-size: 12px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}

.detail-toast.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1050px) {
    .labozon-detail-grid {
        gap: 28px;
    }

    .detail-feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .detail-card-slider {
        grid-auto-columns: calc((100% - 32px) / 3);
    }

    .reviews-summary {
        grid-template-columns: 150px minmax(180px, 1fr);
    }

    .write-review-box {
        grid-column: 1 / -1;
        padding: 20px 0 0;
        border-top: 1px solid #e1e7ed;
        border-left: 0;
    }
}

@media (max-width: 760px) {
    .detail-container {
        width: calc(100% - 28px);
    }

    .labozon-detail-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .main-product-image-wrap {
        height: min(80vw, 420px);
        min-height: 280px;
    }

    .gallery-arrow {
        opacity: 1;
    }

    .magnifier-lens,
    .zoom-hint {
        display: none !important;
    }

    .product-key-features ul {
        grid-template-columns: 1fr 1fr;
    }

    .detail-content-section,
    .detail-information-section {
        padding: 32px 0;
    }

    .detail-card-slider {
        grid-auto-columns: calc((100% - 16px) / 2);
        gap: 16px;
    }

    .mini-card-image {
        height: 155px;
    }

    .reviews-summary {
        grid-template-columns: 1fr;
        gap: 22px;
        padding: 20px;
    }

    .review-score {
        text-align: left;
    }

    .write-review-box {
        grid-column: auto;
    }

    .application-list {
        grid-template-columns: 1fr;
    }

    .modal-gallery-content {
        width: 100%;
    }

    .modal-gallery-arrow {
        top: 45%;
        width: 36px;
        height: 36px;
    }

    .modal-gallery-prev {
        left: 8px;
    }

    .modal-gallery-next {
        right: 8px;
    }
}

@media (max-width: 480px) {
    .detail-container {
        width: calc(100% - 0px);
    }

    .labozon-product-description h1 {
        font-size: 28px;
        text-align: center;
    }

    .detail-current-price {
        font-size: 25px;
    }

    .product-key-features ul {
        grid-template-columns: 1fr;
    }

    .product-primary-actions {
        grid-template-columns: 1fr 1fr;
    }

    .detail-catalog-btn {
        min-height: 30px;
    }

    .product-trust-row {
        gap: 8px;
    }
    .detail-add-cart-btn, .detail-catalog-btn, .detail-quote-btn {
        min-height: 30px;
        font-size: 15px;
    }

    .product-trust-row > div {
        flex-direction: column;
        align-items: center;
    }
    .product-trust-row > div {
    text-align: center;
    }
    .detail-tab {
        font-size: 16px;
    }
    .detail-heading-with-controls {
        align-items: flex-start;
    }
    .detail-section-heading h2 {
        font-size: 20px;
    }

    .detail-heading-with-controls .slider-controls {
        align-self: flex-end;
    }

    .detail-card-slider {
        grid-auto-columns: 82%;
    }

    .detail-feature-grid {
        grid-template-columns: 1fr;
    }

    .labozon-specification-table th,
    .labozon-specification-table td {
        min-width: 145px;
        padding: 12px;
        font-size: 11px;
    }

    .detail-form-popup {
        padding: 25px 19px;
    }

    .thumbnail-nav {
        flex-basis: 25px;
        width: 25px;
    }

    .product-thumbnail {
        flex-basis: calc((100% - 20px) / 3);
        height: 60px;
    }

    .modal-thumbnail-track button {
        flex-basis: 55px;
        height: 48px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .detail-card-slider,
    .detail-modal *,
    .labozon-detail-section * {
        scroll-behavior: auto;
        transition-duration: 0.01ms !important;
    }
}
/* ------------------------------Single Catalog */

/* 
   LABOZON SINGLE PRODUCT CATALOG
 */

.labozon-singel_catalog-section {
    padding: 45px 20px;
}

.singel_catalog-container {
    max-width: 794px;
    margin: 0 auto;
}

.catalog-page {
    position: relative;
    width: 100%;
    min-height: 1122px;
    margin-bottom: 5px;
    padding: 48px 55px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 12px 40px rgba(21, 45, 69, 0.10);
    isolation: isolate;
}

.catalog-page > * {
    position: relative;
    z-index: 1;
}

.catalog-page img {
    display: block;
    max-width: 100%;
}

.catalog-page a {
    text-decoration: none;
    color: inherit;
}

/* 
   PAGE 1: COVER
 */

.catalog-cover {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: #fff;
    background-image: url(../../assets/images/product/scback.png);
}

.cover-bg {
    position: absolute;
    z-index: 0;
    inset: 0;
    background:
       radial-gradient( ellipse at 90% 35%, rgba(8, 126, 139, 0.13), transparent 38% ), linear-gradient( 135deg, #ffffffd9 0%, #f6fafce3 62%, #e8f3f7ba 100% );
}

.cover-bg::before {
    /* content: "";
    position: absolute;
    top: 190px;
    right: -220px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(8, 126, 139, 0.13);
    border-radius: 50%; */
}

.cover-bg::after {
    /* content: "";
    position: absolute;
    top: 240px;
    right: -170px;
    width: 510px;
    height: 510px;
    border: 1px solid rgba(18, 61, 105, 0.10);
    border-radius: 50%; */
}

.catalog-cover-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    /* padding-bottom: 25px; */
}

.catalog-logo img {
    width: 185px;
    max-height: 75px;
    object-fit: contain;
    object-position: left center;
}

.cover-label {
    color: #123d69;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.cover-content {
    display: grid;
    /* grid-template-columns: 1.1fr 0.9fr; */
    align-items: center;
    gap: 20px;
    flex: 1;
    padding: 60px 0;
}

.catalog-eyebrow {
    display: block;
    margin-bottom: 13px;
    color:  #087e8b;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.cover-product-name {
   font-size: 45px;
  font-weight: 500;
  line-height: 1.15;
  margin: 0 auto;
  min-width: 0;
  overflow-wrap: anywhere;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
  color: #2eaae2;
  background-image: linear-gradient(180deg, #2daae2, #2854a6);
  background-size: 100% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.cover-product-id {
    display: inline-block;
    padding: 11px 15px;
    border-left: 3px solid  #087e8b;
    background: rgba(8, 126, 139, 0.07);
    color: #123d69;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.8px;
    margin-top: 20px;
}

.cover-description {
    /* max-width: 350px; */
    margin: 24px 0;
    color: #68798b;
    font-size: 14px;
    line-height: 1.9;
}

.cover-line {
    width: 75px;
    height: 3px;
    margin: 25px 0;
    background: #FDA731;
  background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
}

.cover-bottom-text {
    color: #123d69;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
}

.cover-product-image {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
}

.cover-product-image img {
    width: 100%;
    max-height: 420px;
    object-fit: contain;
    mix-blend-mode: multiply;
}

.cover-footer {
    display: flex;
    /* grid-template-columns: 1fr 1fr auto; */
    /* align-items: end; */
    gap: 30px;
    padding-top: 24px;
    border-top: 1px solid #dce5ec;
}

.footer-label {
    display: block;
    margin-bottom: 0;
    color: #001c42;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.6px;
}

.cover-footer p {
    margin: 5px 0;
    overflow-wrap: anywhere;
    color: #68798b;
    font-size: 11px;
    line-height: 1.6;
}

.cover-page-number {
    color: #123d69;
    font-size: 27px;
    font-weight: 800;
}


/* 
   INNER PAGE HEADERS AND BACKGROUND
 */

.catalog-details,
.catalog-features {
    display: flex;
    flex-direction: column;
    background: #fff;
}

.catalog-fade-bg {
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    width: 100%;
    height: 500px;
    pointer-events: none;
    background:
        radial-gradient(
            ellipse at 95% 10%,
            rgba(8, 126, 139, 0.10),
            transparent 42%
        ),
        linear-gradient(
            180deg,
            rgba(231, 243, 248, 0.75),
            rgba(255, 255, 255, 0)
        );
}

.catalog-page-header {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
    align-items: center;
    gap: 15px;
    min-height: 65px;
    padding-bottom: 17px;
    border-bottom: 1px solid #dce5ec;
}

.catalog-small-logo img {
    width: 85px;
    max-height: 45px;
    object-fit: contain;
    object-position: left center;
}

.catalog-header-title {
    color: #123d69;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-align: center;
}

.catalog-page-number {
    color: #a6a6a6;
    font-size: 13px;
    font-weight: 400;
    text-align: right;
}


/* 
   PAGE 2: OVERVIEW
 */

.catalog-page-content {
    flex: 1;
    padding: 32px 0;
}

.catalog-section-heading {
    margin-bottom: 23px;

}

.catalog-section-heading .catalog-eyebrow {
    margin-bottom: 8px;
}

.catalog-section-heading h2 {
   margin: 0;
    color: #020202;
    font-size: 28px;
    line-height: 1.25;
    letter-spacing: -0.5px;
    font-family: "Sofia Sans Semi Condensed", sans-serif
}

.catalog-heading-line {
    width: 54px;
    height: 3px;
    margin-top: 13px;
    background: #FDA731;
  background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
}

.overview-grid {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    align-items: start;
    gap: 28px;
    margin-bottom: 32px;
}

.overview-text h3 {
   margin: 0 0 13px;
  color: #333;
  font-size: 20px;
  line-height: 1.4;
}

.overview-text p {
    margin: 0 0 13px;
    color: #68798b;
    font-size: 14px;
    line-height: 1.9;
}

.overview-highlight {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin-top: 15px;
    padding: 11px 13px;
    /* border-left: 3px solid  #087e8b; */
    background: rgba(235, 245, 248, 0.8);
}

.overview-highlight span {
    color: #68798b;
   font-size: 13px;
    font-weight: 500;
    letter-spacing: 1px;
}

.overview-highlight strong {
    color: #123d69;
    font-size: 14px;
    font-weight: 500;
}

.overview-main-image {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 275px;
    padding: 15px;
    
}

.overview-main-image img {
    width: 100%;
    height: 250px;
    object-fit: contain;
    mix-blend-mode: multiply;
}

.overview-image-caption {
    margin-top: 10px;
    color: #68798b;
    font-size: 10px;
    letter-spacing: 0.5px;
    text-align: center;
}

.specification-heading {
    margin-bottom: 17px;
}

.catalog-spec-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 13px;
}

.catalog-spec-table th {
    padding: 12px 15px;
    background: #123d69;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    text-align: left;
    letter-spacing: 0.4px;
}

.catalog-spec-table th:first-child {
    width: 38%;
}

.catalog-spec-table td {
    padding: 11px 15px;
    border-bottom: 1px solid #dce5ec;
    color: #68798b;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.catalog-spec-table tbody tr:nth-child(even) {
    background: #f4f8fa;
}

.catalog-spec-table td:first-child {
    color: #123d69;
    font-weight: 500;
}

.specification-note {
    margin-top: 13px;
    color: #68798b;
    font-size: 9px;
    line-height: 1.6;
    font-style: italic;
}

.catalog-page-footer {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding-top: 16px;
    border-top: 1px solid #dce5ec;
    color: #68798b;
    color: #68798b;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 1px;
}


/* 
   PAGE 3: ACCESSORIES
 */

.catalog-accessories {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 25px;
    align-items: flex-start;
    margin-bottom: 32px;
}

.accessory-image {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 190px;
    padding: 15px;
    border: 1px solid #dce5ec;
    background: linear-gradient(145deg, #f8fbfd, #edf5f8);
}

.accessory-image img {
    width: 100%;
    height: 170px;
    object-fit: contain;
    mix-blend-mode: multiply;
}

.accessory-intro,
.accessory-note {
    color: #68798b;
    font-size: 13px;
    line-height: 1.8;
}

.accessory-intro {
    margin: 0 0 14px;
}

.accessory-note {
    margin: 15px 0 0;
    font-size: 10px;
}

.catalog-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.catalog-list li {
    position: relative;
    margin-bottom: 11px;
    padding: 0 0 11px 15px;
    border-bottom: 1px solid #dce5ec;
    color: #27384b;
    font-size: 13px;
    line-height: 1.5;
}

.catalog-list li::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 6px;
    height: 6px;
    background:  #087e8b;
}

.feature-heading,
.application-heading {
    margin-bottom: 20px;
}

.catalog-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
    margin-bottom: 32px;
}

.catalog-feature {
    padding: 18px 14px;
    border: 1px solid #dce5ec;
    background: linear-gradient(145deg, #fff, #f4f9fb);
}

.feature-number {
    display: block;
    margin-bottom: 15px;
    color:  #087e8b;
    font-size: 21px;
    font-weight: 800;
}

.catalog-feature h3 {
    margin: 0 0 9px;
    color: #123d69;
    font-size: 15px;
    line-height: 1.4;
}

.catalog-feature p {
    margin: 0;
    color: #68798b;
    font-size: 12px;
    line-height: 1.7;
}

.catalog-applications {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.catalog-applications div {
    padding: 13px 15px;
    border: 1px solid #dce5ec;
    background: #f6f9fb;
    color: #123d69;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.5;
}

.catalog-contact-footer {
    margin-top: auto;
    padding-top: 23px;
    border-top: 2px solid #123d69;
}

.catalog-footer-brand {
    margin-bottom: 2px;
}

.catalog-footer-brand img {
    width: 125px;
  max-height: 45px;
  object-fit: contain;
  object-position: left center;
  margin: auto;
}

.catalog-footer-brand p {
    margin: 8px 0 0;
    color: #68798b;
    font-size: 10px;
    text-align: center;
}

.catalog-footer-contact {
    text-align: center;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
}

.catalog-footer-contact p {
    margin: 4px 0;
  color: #555;
  font-size: 12px;
  line-height: 1.7;
  overflow-wrap: anywhere;
  font-weight: 400;
}
.catalog-footer-contact p a{
    font-weight: 500;
    color: #555;
}
.catalog-footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-top: 18px;
    padding-top: 13px;
    border-top: 1px solid #dce5ec;
    color: #123d69;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1px;
}


/* 
   PRINT / PDF
 */

.catalog-screen-actions {
    display: flex;
    justify-content: center;
    margin-top: 30px;
}

.catalog-print-button {
    padding: 6px 24px;
  border: 0;
  background: #123d69;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  margin-bottom: 20px;
  border-radius: 4px;
}

.catalog-print-button:hover {
    background:  #f15031;
}

/* A4 sizing applied temporarily to the visible catalog during Kendo capture. */
.catalog-kendo-export {
    width: 794px !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    pointer-events: none !important;
    display: block !important;
}

.catalog-kendo-export .catalog-page {
    box-sizing: border-box !important;
    width: 794px !important;
    height: auto !important;
    min-height: 1122px !important;
    margin: 0 !important;
    padding: 48px 55px !important;
    overflow: visible !important;
    box-shadow: none !important;
}

.catalog-kendo-export .catalog-details,
.catalog-kendo-export .catalog-features {
    display: block !important;
}

.catalog-kendo-export .catalog-page-content {
    display: block !important;
    flex: none !important;
}

.catalog-kendo-export .catalog-page-break-before {
    break-before: page;
    page-break-before: always;
}

/* Fix cover 2-column layout in PDF */
.catalog-kendo-export .cover-content {
    display: grid !important;
    grid-template-columns: 1.1fr 0.9fr !important;
    align-items: center !important;
    gap: 20px !important;
    padding: 40px 0 !important;
}

/* Remove mix-blend-mode so product images render correctly in PDF */
.catalog-kendo-export .catalog-page img {
    mix-blend-mode: normal !important;
}

/* Remove CSS background-image that uses relative path (breaks in Kendo) */
.catalog-kendo-export .catalog-cover {
    background-image: none !important;
}

/* Kendo's drawing engine does not reproduce background-clip:text reliably. */
.catalog-kendo-export .cover-product-name {
    background: none !important;
    color: #2eaae2 !important;
    -webkit-text-fill-color: #2eaae2 !important;
}

@page {
    size: A4;
    margin: 0;
}

@media print {
    html,
    body {
        margin: 0 !important;
        padding: 0 !important;
        background: #fff !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .labozon-singel_catalog-section {
        margin: 0;
        padding: 0;
        background: #fff;
    }

    .singel_catalog-container {
        width: 100%;
        max-width: none;
        margin: 0;
    }

    .catalog-page {
        width: 210mm;
        height: auto;
        min-height: 297mm;
        margin: 0;
        padding: 12mm 14mm;
        box-shadow: none;
        overflow: visible;
        break-after: page;
        page-break-after: always;
    }

    /* Let long dynamic descriptions/features continue onto the next PDF page. */
    .catalog-page-content,
    .catalog-feature-grid,
    .catalog-accessories,
    .catalog-applications,
    .catalog-spec-table {
        overflow: visible;
    }

    .catalog-feature,
    .catalog-accessories,
    .catalog-applications,
    .catalog-spec-table tr {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .catalog-page:last-child {
        break-after: auto;
        page-break-after: auto;
    }

    .catalog-screen-actions {
        display: none !important;
    }

    .labozon-header,
    .newsletter-section,
    .main-footer,
    .labozon-cart-offcanvas,
    .labozon-compare-offcanvas,
    .labozon-overlay,
    .wishlist-popup,
    .labozon-cookie-popup,
    .back-to-top {
        display: none !important;
    }

    .catalog-page img {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}


/* 
   RESPONSIVE
 */

@media screen and (max-width: 700px) {
    .labozon-singel_catalog-section {
        padding: 20px 12px;
    }

    .catalog-page {
        min-height: auto;
        padding: 28px 22px;
        margin-bottom: 22px;
    }

    .catalog-cover-header {
        align-items: flex-start;
    }

    .catalog-logo img {
        width: 135px;
    }

    .cover-label {
        font-size: 8px;
        text-align: right;
    }

    .cover-content {
        grid-template-columns: 1fr;
        gap: 25px;
        padding: 40px 0;
    }

    .cover-product-name {
        font-size: 28px;
    }

    .cover-product-image img {
        max-height: 140px;
    }
    .cover-product-id {
    font-size: 12px;
    }
    .cover-description {
    font-size: 12px;
    }
    .cover-footer {
        grid-template-columns: 1fr 1fr;
        gap: 18px;
    }

    .cover-page-number {
        grid-column: 1 / -1;
    }

    .catalog-page-header {
        grid-template-columns: 1fr auto;
    }

    .catalog-header-title {
        display: none;
    }

    .overview-grid,
    .catalog-accessories {
        grid-template-columns: 1fr;
    }

    .overview-main-image {
        min-height: 220px;
    }

    .overview-main-image img {
        height: 140px;
    }
    .catalog-feature h3 {
    font-size: 13px;
    }
    .catalog-applications div {
    font-size: 13px;
    }
    .catalog-section-heading h2 {
        font-size: 20px;
    }
    .overview-text h3 {
    font-size: 16px;
    }
    .overview-text p {
    font-size: 12px;
    }
    .overview-highlight span {
    font-size: 12px;
    }
    .overview-highlight strong {
    font-size: 11px;
    }
    .catalog-spec-table {
        font-size: 10px;
    }

    .catalog-spec-table th,
    .catalog-spec-table td {
        padding: 9px 8px;
    }

    .catalog-feature-grid {
        grid-template-columns: 1fr;
    }

    .catalog-feature {
        min-height: auto;
    }

    .catalog-applications {
        grid-template-columns: 1fr;
    }

    .catalog-page-footer,
    .catalog-footer-bottom {
        flex-wrap: wrap;
    }
}
/* -------------------------------Contact Us */

.labozon-contact-us-section {
    padding: 45px 12px 70px;
}

.labozon-contact-us-section a {
    color: inherit;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.labozon-contact-section img {
    max-width: 100%;
}

.contact_us-container {
    max-width: 1380px;
    margin: 0 auto;
}

/* Hero */

.contact-hero {
    display: grid;
    grid-template-columns: 1.05fr 1.95fr;
    align-items: center;
    gap: 55px;
    margin-bottom: 30px;
    background: #eef7ff;
    border-radius: 8px;
}
.contact-hero-content {
  display: flex;
  flex-direction: column;
  text-align: center;
  margin-left: 55px;
}
.contact-eyebrow {
    display: block;
    margin-bottom: 15px;
    color: #078b91;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.contact-hero-content h1 {
    max-width: 600px;
    margin: 0 0 22px;
    font-size:40px;
    line-height: 1.15;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.contact-hero-content > p {
    max-width: 540px;
    margin: 0;
    color: #6c7b8c;
    font-size: 15px;
    line-height: 1.9;
}

.contact-hero-links {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    margin-top: 30px;
    justify-content: center;
}

.contact-primary-btn,
.contact-secondary-btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 40px;
    padding: 5px 12px;
    border: 1px solid transparent;
    font-size: 15px;
    border-radius: 4px;
    font-weight: 500;
    text-align: center;
    transition: background 0.2s ease, color 0.2s ease;
}

.contact-primary-btn {
   color: #ffffff !important;
  background: #2DAAE2;
  background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
}

.contact-primary-btn:hover {
 color: #ffffff;
  background: #2DAAE2;
  background: linear-gradient(100deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
  border-color: transparent;
}

.contact-secondary-btn {
    background: #FDA731;
    background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
    color: #fff !important;
}

.contact-secondary-btn:hover {
     color: #ffffff;
  background: #0034bb;
  background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
}

.contact-hero-image {
    position: relative;
    min-width: 0;
    /* background: linear-gradient(140deg, #edf6f9, #dbeaf1); */
}

.contact-hero-image > img {
    display: block;
    width: 100%;
    /* height: 380px; */
    object-fit: cover;
    border-radius: 0 8px 8px 0;
}

.contact-image-caption {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 25px 30px;
    background: linear-gradient(
        0deg,
        rgba(12, 43, 69, 0.94),
        rgba(12, 43, 69, 0)
    );
    color: #fff;
      border-radius: 0 0 8px 0;
}

.contact-image-caption span {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.8px;
}

.contact-image-caption p {
    margin: 8px 0 0;
    font-size: 13px;
    line-height: 1.6;
}

/* Contact information cards */

.contact-information {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border: 1px solid #dfe7ee;
    background: #fff;
    border-radius: 8px;
}

.contact-info-card {
    min-width: 0;
    padding: 30px;
}

.contact-info-card + .contact-info-card {
    border-left: 1px solid #dfe7ee;
}

.contact-info-label,
.contact-address-label {
    display: block;
    margin-bottom: 13px;
    color: #078b91;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.4px;
}

.contact-info-card h3 {
    margin: 0 0 12px;
  color: #5c5c5c;
  font-size: 22px;  
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.contact-info-card p {
    margin: 0 0 12px;
    color: #6c7b8c;
    font-size: 14px;
    line-height: 1.8;
}

.contact-info-card > a,
.contact-info-card > strong {
    display: block;
  margin-top: 7px;
  color: #2b58a5;
  font-size: 15px;
  font-weight: 500;
}

.contact-info-card .contact-muted {
    margin-top: 8px;
    font-size: 12px;
}

/* Main form and address layout */

.contact-main-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: 45px;
    margin-top: 90px;
}

.contact-form-panel {
    min-width: 0;
}

.contact-section-heading {
    margin-bottom: 20px;
}

.contact-section-heading h2,
.contact-section-heading .contact-section-title,
.contact-location-heading h2 {
    font-weight: 700;
    margin: 0 0 13px;
    /* color: #123e68; */
    font-size: 28px;
    line-height: 1.25;
    letter-spacing: -0.7px;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    text-align: center;
    color: #f14e31;
    background-image: linear-gradient(90deg, #f14e31, #fca331);
    background-size: 100% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}
.contact-address-header h2 {
    margin: 0 0 13px;
    /* color: #123e68; */
    font-size: 28px;
    line-height: 1.25;
    letter-spacing: -0.7px;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    text-align: center;
    color: #fff !important;
}

.contact-section-heading > p,
.contact-location-heading p {
    margin: 0;
    color: #6c7b8c;
    font-size: 14px;
    line-height: 1.9;
}

.contact-address-header > p
{
    margin: 0;
    color: #ececec;
    font-size: 14px;
    line-height: 1.9;
}
.labozon-contact-form {
    padding: 30px;
    border: 1px solid #dfe7ee;
    background: #fff;
    border-radius: 8px;
}

.contact-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.contact-field {
    min-width: 0;
    margin-bottom: 22px;
}

.contact-field label {
    display: block;
  margin-bottom: 10px;
  color: #343434;
  font-size: 14px;
  font-weight: 500;
}

.contact-field input,
.contact-field select,
.contact-field textarea {
    display: block;
    width: 100%;
    min-width: 0;
    padding: 5px 15px;
    border: 1px solid #d7e0e8;
    border-radius: 4px;
    outline: none;
    background: #fff;
    color: #293b4f;
    font: inherit;
    font-size: 12px;
    transition: border-color 0.2s ease;
}

.contact-field input,
.contact-field select {
    min-height: 40px;
}

.contact-field textarea {
    min-height: 140px;
    resize: vertical;
    line-height: 1.7;
}

.contact-field input::placeholder,
.contact-field textarea::placeholder {
    color: #9aa7b4;
}

.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus {
    border-color: #078b91;
}

.contact-field input:focus-visible,
.contact-field select:focus-visible,
.contact-field textarea:focus-visible {
    outline: 2px solid rgba(7, 139, 145, 0.15);
    outline-offset: 2px;
}

.contact-consent {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin: 0 0 23px;
    color: #6c7b8c;
    font-size: 12px;
    line-height: 1.8;
    cursor: pointer;
}

.contact-consent input {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    margin-top: 3px;
    accent-color: #078b91;
}

.contact-submit-btn {
    width: 100%;
    min-height: 40px;
    padding: 5px 22px;
    border: 0;
    background: #FDA731;
    background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
    color: #fff !important;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s ease;
    border-radius: 4px;
}

.contact-submit-btn:hover {
    color: #ffffff;
  background: #0034bb;
  background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
}

.contact-submit-btn:disabled {
    opacity: 0.65;
    cursor: not-allowed;
}

.contact-form-status {
    margin: 15px 0 0;
    font-size: 13px;
    line-height: 1.7;
}

.contact-form-status:empty {
    display: none;
}

/* Address panel */

.contact-address-panel {
    min-width: 0;
    padding: 32px;
    color: #fff !important;
    background: #2DAAE2;
    background: linear-gradient(267deg, rgb(139, 218, 253) 0%, rgb(107, 154, 240) 100%);
    border-top: 4px solid #fb9a31;
    border-radius: 8px;
}

.contact-address-header {
    margin-bottom: 15px;
}

.contact-address-header h2 {
    font-size: 29px;
}

.contact-address-item {
   padding: 15px 0;
    border-top: 1px solid #dfe7ee;
}

.contact-address-item h3 {
    margin: 0 0 12px;
  color: #fff;
  font-size: 22px;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.contact-address-item p {
    margin: 0;
    color: #ececec;
    font-size: 13px;
    line-height: 1.9;
}

.contact-address-item > a {
    display: block;
    width: fit-content;
    max-width: 100%;
    color: #ececec;
    font-size: 15px;
    line-height: 1.7;
    font-weight: 500;
}

.contact-address-item > a:hover {
    color: #078b91;
    text-decoration: underline;
}

.contact-response-note {
    margin-top: 12px;
    padding: 22px;
    background: #fff;
    border: 1px solid #dfe7ee;
}

.contact-response-note h3 {
    margin: 0 0 10px;
    color: #123e68;
    font-size: 17px;
}

.contact-response-note p {
    margin: 0;
    color: #6c7b8c;
    font-size: 12px;
    line-height: 1.9;
}

/* Map */

.contact-location-section {
    margin-top: 90px;
    scroll-margin-top: 30px;
}

.contact-location-heading {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 25px;
    margin-bottom: 28px;
    border-bottom: 1px solid #e1e1e1;
    padding-bottom: 28px;
}

.contact-location-heading > div {
    max-width: 650px;
}

.contact-location-heading h2 {
    font-size: 28px;
  margin-bottom: 0;
}

.contact-location-heading p {
    max-width: 580px;
}

.contact-map-link {
    flex-shrink: 0;
    padding: 5px 20px;
    border: 1px solid #123e68;
    color: #ffffff !important;
    background: #2DAAE2;
    background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
    font-size: 13px;
    font-weight: 500;
    text-align: center;
    border-radius: 4px;
}

.contact-map-link:hover {
    color: #ffffff;
  background: #2DAAE2;
  background: linear-gradient(100deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
  border-color: transparent;
}

.contact-map-frame {
    width: 100%;
    height: 400px;
    overflow: hidden;
    border: 1px solid #dfe7ee;
    background: #f3f8fb;
    border-radius: 8px;
}

.contact-map-frame iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

/* Bottom call to action */

.contact-bottom-cta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 35px;
    margin-top: 70px;
    padding: 42px;
    background: linear-gradient(120deg, #eff7fa, #e4f1f5);
    border-left: 4px solid #078b91;
}

.contact-bottom-cta > div {
    max-width: 720px;
}

.contact-bottom-cta .contact-eyebrow {
    margin-bottom: 10px;
}

.contact-bottom-cta h2 {
    margin: 0 0 12px;
    color: #123e68;
    font-size: clamp(23px, 3vw, 32px);
    line-height: 1.35;
}

.contact-bottom-cta p {
    margin: 0;
    color: #6c7b8c;
    font-size: 13px;
    line-height: 1.9;
}

.contact-bottom-cta > a {
    flex-shrink: 0;
}

/* Responsive */

@media (max-width: 900px) {
    .labozon-contact-us-section {
        padding: 45px 20px;
    }

    .contact-hero {
        gap: 30px;
        grid-template-columns: 1fr;
        padding: 35px 0 40px;
    }
    .contact-hero-content h1 {
        max-width: 100%;
    }
    .contact-hero-content > p {
        max-width: 100%;
    }
    .contact-hero-image > img {
        border-radius: 0 0 8px 8px;
    }
    .contact-information {
        grid-template-columns: 1fr 1fr;
    }

    .contact-info-card + .contact-info-card {
        border-left: 0;
    }

    .contact-info-card:nth-child(2) {
        border-left: 1px solid #dfe7ee;
    }

    .contact-info-card:nth-child(3) {
        grid-column: 1 / -1;
        border-top: 1px solid #dfe7ee;
    }

    .contact-main-grid {
        grid-template-columns: 1fr;
        gap: 35px;
        margin-top: 65px;
    }

    .contact-address-panel {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0 25px;
    }

    .contact-address-header {
        grid-column: 1 / -1;
    }

    .contact-address-item {
        align-self: start;
    }
    .contact-hero-content {
    margin-left: 0;
    padding: 12px;
    }
}

@media (max-width: 600px) {
    .labozon-contact-us-section {
        padding: 25px 15px;
    }

    .contact-hero {
        grid-template-columns: 1fr;
        padding: 35px 0 40px;
    }

    .contact-hero-content h1 {
        font-size: 28px;
    }
    .contact-address-header h2 {
    font-size: 21px;
    }
    .contact-address-header > p {   
    font-size: 12px;
    }
    .contact-address-item p { 
    font-size: 12px;
    }
    .contact-address-item > a {
     font-size: 12px;
    }

    .contact-field label {  
    font-size: 13px;
    }
    .contact-section-heading h2, .contact-section-heading .contact-section-title, .contact-location-heading h2 {
        font-size: 24px;
    }
    .contact-hero-content > p {
        font-size: 14px;
    }

    .contact-hero-image > img {
        height: 290px;
    }

    .contact-information {
        grid-template-columns: 1fr;
    }

    .contact-info-card {
        padding: 25px;
    }

    .contact-info-card:nth-child(2),
    .contact-info-card:nth-child(3) {
        grid-column: auto;
        border-top: 1px solid #dfe7ee;
        border-left: 0;
    }

    .contact-form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .labozon-contact-form {
        padding: 22px 17px;
    }

    .contact-address-panel {
        display: block;
        padding: 24px;
    }

    .contact-location-section {
        margin-top: 60px;
    }

    .contact-location-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .contact-location-heading h2 {
        font-size: 29px;
    }

    .contact-map-frame {
        height: 320px;
    }

    .contact-bottom-cta {
        align-items: flex-start;
        flex-direction: column;
        margin-top: 45px;
        padding: 28px 22px;
    }

    .contact-bottom-cta > a {
        width: 100%;
    }
}
/* -------------------Compare page */

.labozon-compare_product-section {
    padding: 45px 0;
    color: #263548;
}

.compare_product-container {
    width: min(1380px, 100%);
    margin: 0 auto;
}

.compare-heading {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 20px;
    margin-bottom: 28px;
}

.compare-eyebrow {
    display: inline-block;
    margin-bottom: 10px;
    color: #087e8b;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.8px;
}

.compare-heading h2,
.compare-heading h1 {
    font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
  text-align: center;
  margin-bottom: 10px;
}

.compare-heading p {
    /* max-width: 650px; */
    margin: 0;
    color: #6c7888;
    font-size: 15px;
    line-height: 1.7;
}
.compare-heading p {
    display: flex;
    flex-wrap: wrap;
}
.compare-heading p span{
    font-size: 13px;
  font-weight: 500;
  background-color: aliceblue;
  margin-right: 10px;
  padding: 0 6px;
  border: 1px solid #e1e1e1;
  border-radius: 4px;
}
.compare-reset-btn {
    flex-shrink: 0;
    padding: 11px 18px;
    border: 1px solid #d5dee8;
    border-radius: 6px;
    background: #fff;
    color: #33445a;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
}

.compare-reset-btn:hover {
    border-color: #087e8b;
    color: #087e8b;
}

/* Scrollable comparison table */
.compare-table-wrapper {
    width: 100%;
    max-height: 780px;
    overflow: auto;
    border: 1px solid #dfe6ee;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(25, 48, 75, 0.06);
    isolation: isolate;
}

.compare-product-table {
    width: max-content;
    min-width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
}

.compare-product-table th,
.compare-product-table td {
    width: 205px;
    min-width: 205px;
    padding: 7px 14px;
    border-right: 1px solid #e5eaf0;
    border-bottom: 1px solid #e5eaf0;
    color: #526174;
    font-size: 13px;
    line-height: 1.6;
    text-align: center;
    vertical-align: middle;
    background: #fff;
}

.compare-product-table thead th {
    /* height: 370px; */
    padding: 22px 15px;
    vertical-align: top;
    background: #fff;
}

.compare-product-table th:first-child,
.compare-product-table td:first-child {
    width: 190px;
    min-width: 190px;
    max-width: 190px;
    text-align: left;
    font-weight: 500;
    color: #000;
    font-size: 15px;

}

/* Sticky first column */
.compare-product-table .compare-sticky-col {
    position: sticky;
    left: 0;
    z-index: 3;
    background: #f8fafc;
    box-shadow: 5px 0 8px rgba(25, 48, 75, 0.035);
}

/* Sticky top product header */
.compare-product-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
}

.compare-product-table thead th.compare-sticky-col {
    z-index: 5;
    background: #f0f5fa;
}

.compare-product-table tbody tr:hover td,
.compare-product-table tbody tr:hover th.compare-sticky-col {
    background-color: #f5fbfc;
}

.compare-product-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 100%;
}

.compare-product-info img {
    display: block;
    width: 145px;
    height: 125px;
    margin-bottom: 15px;
    object-fit: contain;
}

.compare-product-info h3 {
    min-height: 44px;
    margin: 0 0 5px;
   color: #292929;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.45;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.compare-model {
    color: #7c8998;
    font-size: 11px;
}

.compare-price {
   margin: 1px 0 10px;
  color: #f25731;
  font-size: 20px;
  font-weight: 500;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.compare-quote-btn,
.compare-catalog-btn {
    display: block;
    width: 100%;
    /* max-width: 155px; */
    box-sizing: border-box;
    padding: 6px 8px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.compare-quote-btn {
    margin-bottom: 8px;
    border: 1px solid rgba(240, 74, 49, 1);
    background: #FDA731;
    background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
    color: #fff;
}

.compare-quote-btn:hover {
   color: #ffffff;
  background: #0034bb;
  background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
}

.compare-catalog-btn {
    color: #ffffff;
  background: #2DAAE2;
  background: linear-gradient(267deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
}

.compare-catalog-btn:hover {
   color: #ffffff;
  background: #2DAAE2;
  background: linear-gradient(100deg, rgba(45, 170, 226, 1) 0%, rgba(43, 85, 163, 1) 100%);
  border-color: transparent;
}

.compare-product-table .compare-category-row th,
.compare-product-table .compare-category-row td {
    background: #eaf3f7;
    color: #173653;
    font-weight: 700;
}

.compare-product-table .compare-category-row td {
    text-align: left;
    letter-spacing: 0.3px;
}

.compare-inline-link {
    color: #087e8b;
    font-weight: 700;
    text-decoration: none;
}

.compare-inline-link:hover {
    text-decoration: underline;
}

.compare-note {
    margin: 16px 0 0;
    color: #7b8795;
    font-size: 12px;
    line-height: 1.6;
}

/* Responsive */
@media (max-width: 768px) {
    .labozon-compare_product-section {
        padding: 45px 12px;
    }

    .compare-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .compare-product-table th,
    .compare-product-table td {
        width: 140px;
        min-width: 140px;
        padding: 8px 12px;
    }

    .compare-product-table th:first-child,
    .compare-product-table td:first-child {
        width: 100px;
        min-width: 100px;
        max-width: 100px;
    }
    .compare-product-info h3 { 
    font-size: 15px;
    }
    .compare-price {    
    font-size: 15px;
    }
    .compare-quote-btn, .compare-catalog-btn {
    padding: 1px 8px;
    border-radius: 4px;
    font-size: 11px;
    }
    .compare-product-table thead th {
        height: 350px;
    }

    .compare-product-info img {
        width: 120px;
        height: 105px;
    }
    .compare-heading h2,
.compare-heading h1 {
        font-size: 28px;
    }
    .compare-heading p {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    justify-content: center;
    }
    .compare-product-table th:first-child, .compare-product-table td:first-child {
    font-size: 12px;
    }
}
/* --------------------Blog */

.labozon-blog-section {
    padding: 45px 0 70px;
}

.blog-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

/* Section heading */
.labozon-blog-section .universal-heading {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 25px;
    margin-bottom: 38px;
}

.blog-subtitle {
    display: inline-block;
    margin-bottom: 10px;
    color: #2DAAE2;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.labozon-blog-section .universal-heading h2,
.labozon-blog-section .universal-heading h1 {
   font-size: 40px;
    font-weight: 500;
    line-height: 1.35;
    margin: 0 auto;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    text-transform: uppercase;
}

.labozon-blog-section .universal-heading p {
    max-width: 650px;
    margin: 0;
    color: #68798a;
    font-size: 15px;
    line-height: 1.8;
}

.blog-view-all {
    flex-shrink: 0;
    padding: 12px 21px;
    border: 1px solid #2DAAE2;
    border-radius: 5px;
    color: #2B55A3;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.25s ease;
}

.blog-view-all:hover {
    color: #ffffff;
    background: #2B55A3;
    border-color: #2B55A3;
}

/* Blog grid */
.blog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

/* Blog card */
.blog-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #e5eaf0;
    border-radius: 8px;
    box-shadow: 0 6px 24px rgba(20, 48, 76, 0.06);
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

.blog-card:hover {
    border-color: #d2e4ef;
    box-shadow: 0 12px 32px rgba(20, 48, 76, 0.12);
}

/* Blog image */
.blog-image-link {
    position: relative;
    display: block;
    height: 235px;
    overflow: hidden;
    background: #edf3f7;
}

.blog-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.45s ease;
}

.blog-card:hover .blog-image {
    transform: scale(1.04);
}

.blog-category {
    position: absolute;
    left: 16px;
    bottom: 16px;
    padding: 7px 12px;
    border-radius: 4px;
    color: #ffffff;
    background: #0034bb;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.3px;
}

/* Card content */
.blog-card-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
}

.blog-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 15px;
    margin-bottom: 15px;
    color: #788695;
    font-size: 11px;
}

.blog-meta span + span {
    padding-left: 15px;
    border-left: 1px solid #d7dfe7;
}

.blog-card-content h3 {
    margin: 0 0 13px;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.5;
}

.blog-card-content h3 a {
    color: #2a2a2a;
    text-decoration: none;
    transition: color 0.25s ease;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
  font-size: 22px;
}

.blog-card-content h3 a:hover {
    color: #2DAAE2;
}

.blog-card-content p {
    margin: 0 0 24px;
    color: #68798a;
    font-size: 13px;
    line-height: 1.85;
}

/* Buttons */
.blog-explore-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    min-height: 30px;
    margin-top: auto;
    padding: 5px 18px;
    border: none;
    border-radius: 4px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    transition: box-shadow 0.25s ease, filter 0.25s ease;
}

.blog-btn-orange {
    color: #ffffff;
    background: linear-gradient(
        100deg,
        rgba(250, 164, 53, 1) 0%,
        rgba(243, 80, 50, 1) 100%
    );
}

.blog-btn-blue {
    color: #ffffff;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
}

.blog-explore-btn:hover {
    color: #ffffff;
    filter: brightness(0.94);
    box-shadow: 0 5px 14px rgba(30, 65, 110, 0.18);
}

.blog-arrow {
    font-size: 18px;
    line-height: 1;
    transition: transform 0.25s ease;
}

.blog-explore-btn:hover .blog-arrow {
    transform: translateX(4px);
}

/* Tablet */
@media (max-width: 991px) {
    .labozon-blog-section {
        padding: 65px 0;
    }

    .blog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
    }

    .blog-image-link {
        height: 220px;
    }

    .blog-card-content {
        padding: 21px;
    }
}

/* Mobile */
@media (max-width: 600px) {
    .labozon-blog-section {
        padding: 48px 12px;
    }

    .blog-container {
        width: 100%;
    }

    .labozon-blog-section .universal-heading {
        margin-bottom: 27px;
    }

    .blog-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .blog-image-link {
        height: 230px;
    }

    .blog-card-content {
        padding: 21px;
    }

    .blog-card-content h3 {
        font-size: 18px;
    }

    .blog-view-all {
        margin-top: 3px;
    }
    .labozon-blog-section .universal-heading h2,
.labozon-blog-section .universal-heading h1 {
    font-size: 28px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .blog-card,
    .blog-image,
    .blog-explore-btn,
    .blog-arrow {
        transition: none;
    }
}

/* -------------------------Blog details */

/* Main section */
.labozon-blog_details-section {
    padding: 45px 0 80px;
}

.blog_details-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

/* Breadcrumb */
.blog-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 28px;
    color: #788695;
    font-size: 12px;
    line-height: 1.7;
}

.blog-breadcrumb a {
    color: #2B55A3;
    text-decoration: none;
}

.blog-breadcrumb a:hover {
    color: #2DAAE2;
}

/* Header */
.blog-detail-header {
    max-width: 900px;
    margin: 0 auto 30px;
    text-align: center;
}

.blog-detail-category {
    display: inline-block;
    margin-bottom: 16px;
    color: #2B55A3;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
}

.blog-detail-header h1 {
   font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}
.blog-detail-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 20px;
    color: #788695;
    font-size: 12px;
    margin-top: 10px;
}

.blog-detail-meta span + span {
    padding-left: 20px;
    border-left: 1px solid #d9e1e8;
}

/* Hero image */
.blog-detail-hero {
    max-width: 1100px;
    margin: 0 auto 55px;
    overflow: hidden;
    border-radius: 8px;
    background: #edf3f7;
    border: 1px solid #e4eaf0;
}

.blog-detail-hero img {
    display: block;
    width: 100%;
    height: clamp(260px, 43vw, 500px);
    object-fit: cover;
}

.blog-image-caption {
    padding: 13px 18px;
    color: #68798a;
    background: #f8fafc;
    font-size: 12px;
    line-height: 1.7;
}

/* Article layout */
.blog-detail-layout {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    align-items: start;
    gap: 48px;
}

/* Sidebar */
.blog-detail-sidebar {
    position: sticky;
    top: 25px;
}

.blog-toc {
    padding: 23px 19px;
    border: 1px solid #e2e9f0;
    border-radius: 9px;
    background: #f8fafc;
}

.blog-toc h3 {
    margin: 0 0 15px;
    padding-bottom: 13px;
    border-bottom: 1px solid #e1e8ef;
    color: #173653;
    font-size: 17px;
}

.blog-toc > a:not(.blog-toc-cta) {
  display: flex;
  padding: 3px 0;
  color: #5d6c7d;
  font-size: 17px;
  line-height: 1.6;
  text-decoration: none;
  transition: color 0.2s ease;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #e1e1e1;
}

.blog-toc > a:not(.blog-toc-cta):hover {
    color: #2DAAE2;
}

.blog-toc-cta {
    display: block;
    margin-top: 17px;
    padding: 12px;
    border-radius: 5px;
    color: #ffffff;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    font-size: 12px;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
}

/* Article content */
.blog-detail-article {
    min-width: 0;
}

.blog-detail-article section:not(.blog-original-content section) {
    margin-bottom: 42px;
    scroll-margin-top: 25px;
}

.blog-detail-article h2:not(.blog-original-content h2) {
    margin: 0 0 18px;
    color: #000;
    font-size: 30px;
    line-height: 1.4;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.blog-detail-article h3:not(.blog-original-content h3) {
    margin: 25px 0 10px;
    color: #244665;
    font-size: 18px;
    line-height: 1.5;
}

.blog-detail-article p:not(.blog-original-content p) {
    margin: 0 0 17px;
    color: #5d6c7d;
    font-size: 14px;
    line-height: 1.95;
}

.blog-detail-article strong:not(.blog-original-content strong) {
    color: #263e56;
    font-weight: 500;
    font-family: "Sofia Sans Semi Condensed", sans-serif
}

.blog-info-box {
    margin: 24px 0;
    padding: 22px 24px;
    border-left: 4px solid #2DAAE2;
    border-radius: 0 8px 8px 0;
    background: #f0f8fc;
}

.blog-info-box h3 {
    margin: 0 0 9px;
}

.blog-info-box p {
    margin-bottom: 0;
}

/* Types of centrifuges */
.blog-type-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin: 25px 0;
}

.blog-type-card {
    overflow: hidden;
    border: 1px solid #e2e9f0;
    border-radius: 9px;
    background: #edf3f7;
}

.blog-type-card img {
    display: block;
    height: 190px;
    object-fit: cover;
    margin: auto;
}

.blog-type-card h3 {
    margin: 17px 17px 8px;
   font-size: 20px;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.blog-type-card p {
    margin: 0;
    padding: 0 17px 20px;
    font-size: 13px;
    line-height: 1.85;
}

.blog-small-note {
    color: #7a8795 !important;
    font-size: 12px !important;
}

/* Comparison table */
.blog-table-wrapper {
    width: 100%;
    margin: 22px 0;
    overflow-x: auto;
    border: 1px solid #e0e7ee;
    border-radius: 8px;
}

.blog-spec-table {
    width: 100%;
    min-width: 540px;
    border-collapse: collapse;
    background: #ffffff;
}

.blog-spec-table th,
.blog-spec-table td {
    padding: 15px;
    border-bottom: 1px solid #e5eaf0;
    color: #5d6c7d;
    font-size: 12px;
    line-height: 1.8;
    text-align: left;
    vertical-align: top;
}

.blog-spec-table thead th {
    color: #ffffff;
    background: #173653;
    font-size: 16px;
    font-weight: 500;
    font-family: "Sofia Sans Semi Condensed", sans-serif
}

.blog-spec-table tbody tr:last-child td {
    border-bottom: none;
}

.blog-spec-table tbody tr:nth-child(even) {
    background: #f7f9fc;
}

/* Lists */
.blog-content-list {
    margin: 15px 0 22px;
    padding-left: 22px;
}

.blog-content-list li {
    margin-bottom: 13px;
    padding-left: 5px;
    color: #5d6c7d;
    font-size: 14px;
    line-height: 1.9;
}

.blog-content-list li::marker {
    color: #2DAAE2;
}

/* Warning box */
.blog-warning-box {
    margin: 25px 0;
    padding: 22px 24px;
    border: 1px solid #f5d8ad;
    border-radius: 8px;
    background: #fff9ef;
}

.blog-warning-box > strong {
    display: block;
    margin-bottom: 9px;
    color: #935719;
    font-size: 15px;
}

.blog-warning-box p {
    margin: 0;
}

/* Interactive checklist */
.blog-checklist {
    display: grid;
    gap: 12px;
    margin-top: 20px;
    padding: 22px;
    border: 1px solid #e2e9f0;
    border-radius: 8px;
    background: #f8fafc;
}

.blog-checklist label {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    color: #526174;
    font-size: 13px;
    line-height: 1.7;
    cursor: pointer;
}

.blog-checklist input {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    margin-top: 3px;
    accent-color: #2B55A3;
    cursor: pointer;
}

.blog-checklist input:checked + span {
    color: #788695;
    text-decoration: line-through;
}

/* FAQs */
.blog-faq-list {
    display: grid;
    gap: 12px;
}

.blog-faq-list details {
    padding: 17px 19px;
    border: 1px solid #e2e9f0;
    border-radius: 7px;
    background: #ffffff;
}

.blog-faq-list summary {
    position: relative;
    padding-right: 20px;
    color: #244665;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.7;
    cursor: pointer;
    list-style: none;
    font-family: "Sofia Sans Semi Condensed", sans-serif
}

.blog-faq-list summary::-webkit-details-marker {
    display: none;
}

.blog-faq-list summary::after {
    content: "+";
    position: absolute;
    top: -2px;
    right: 0;
    color: #2DAAE2;
    font-size: 21px;
    font-weight: 400;
}

.blog-faq-list details[open] summary::after {
    content: "−";
}

.blog-faq-list details p {
    margin: 13px 0 0;
    padding-top: 13px;
    border-top: 1px solid #e9eef3;
    font-size: 13px;
}

/* Final CTA */
.blog-enquiry-box {
    padding: 34px 30px;
    border-radius: 10px;
    background: #f0f7fb;
    border: 1px solid #dcebf4;
    text-align: center;
}

.blog-enquiry-box > span {
    color: #2B55A3;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.blog-enquiry-box h2 {
    margin: 12px 0;
    font-size: clamp(23px, 3vw, 30px);
}

.blog-enquiry-box p {
    max-width: 620px;
    margin: 0 auto 23px;
}

.blog-enquiry-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.blog-enquiry-primary,
.blog-enquiry-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 45px;
    padding: 12px 22px;
    border-radius: 5px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: filter 0.2s ease;
}

.blog-enquiry-primary {
    color: #ffffff;
    background: linear-gradient(
        100deg,
        rgba(250, 164, 53, 1) 0%,
        rgba(243, 80, 50, 1) 100%
    );
}

.blog-enquiry-secondary {
    color: #ffffff;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
}

.blog-enquiry-primary:hover,
.blog-enquiry-secondary:hover {
    color: #ffffff;
    filter: brightness(0.94);
}

/* Article footer */
.blog-article-footer {
    margin-top: 30px;
    padding-top: 22px;
    border-top: 1px solid #e2e9f0;
}

.blog-article-footer p {
    color: #788695;
    font-size: 12px;
}

.blog-back-link {
    display: inline-block;
    margin-top: 8px;
    color: #2B55A3;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}

.blog-back-link:hover {
    color: #2DAAE2;
}

/* Tablet */
@media (max-width: 900px) {
    .blog-detail-layout {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .blog-detail-sidebar {
        position: static;
    }

    .blog-toc {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0 18px;
    }

    .blog-toc h3 {
        grid-column: 1 / -1;
    }

    .blog-toc-cta {
        grid-column: 1 / -1;
    }
}

/* Mobile */
@media (max-width: 600px) {
    .labozon-blog_details-section {
        padding: 28px 0 50px;
    }

    .blog_details-container {
        width: 91%;
    }

    .blog-detail-header {
        text-align: center;
    }

    .blog-detail-header h1 {
        font-size: 28px;
    }

    .blog-detail-intro {
        font-size: 14px;
        line-height: 1.8;
    }

    .blog-detail-meta {
        justify-content: center;
        gap: 9px;
    }

    .blog-detail-meta span + span {
        padding-left: 9px;
    }

    .blog-detail-hero {
        margin-bottom: 35px;
        border-radius: 8px;
    }

    .blog-detail-hero img {
        height: 250px;
    }

    .blog-toc {
        display: block;
        padding: 20px;
    }

    .blog-detail-article section:not(.blog-original-content section) {
        margin-bottom: 34px;
    }

    .blog-detail-article p:not(.blog-original-content p),
    .blog-content-list li {
        font-size: 13px;
    }

    .blog-type-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .blog-type-card img {
        height: 210px;
    }

    .blog-info-box,
    .blog-warning-box {
        padding: 18px;
    }

    .blog-enquiry-box {
        padding: 27px 19px;
    }

    .blog-enquiry-actions {
        flex-direction: column;
    }

    .blog-enquiry-primary,
    .blog-enquiry-secondary {
        width: 100%;
        box-sizing: border-box;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}
/* ------------------------Sign in */

.labozon-sign_in-section {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 45px 20px;
    box-sizing: border-box;
    /* background: linear-gradient(135deg, #f3f8fc 0%, #eaf3fb 100%); */
}

.sign_in-container {
    width: 100%;
    max-width: 440px;
    margin: 0 auto;
}

.sign-in-card {
    padding: 38px 35px;
    background: #ffffff;
    border: 1px solid #e2eaf2;
    border-radius: 8px;
    box-shadow: 0 15px 45px rgba(25, 55, 85, 0.09);
}

/* Logo and heading */
.sign-in-header {
    margin-bottom: 30px;
    text-align: center;
}

.sign-in-logo {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 27px;
    text-decoration: none;
}

.sign-in-logo img{
    width: 100%;
    max-width: 200px;
}

.sign-in-header h2,
.sign-in-header h1 {
   margin: 0 0 10px;
  color: #3f3f3f;
  font-size: 30px;
  font-weight: 700;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.sign-in-header p {
    margin: 0;
    color: #788695;
    font-size: 13px;
    line-height: 1.7;
}

/* Form fields */
.labozon-sign-in-form {
    width: 100%;
}

.sign-in-form-group {
    margin-bottom: 20px;
}

.sign-in-form-group > label {
    display: block;
    margin-bottom: 8px;
    color: #344b63;
    font-size: 13px;
    font-weight: 600;
}

.sign-in-form-group input {
    display: block;
    width: 100%;
    height: 40px;
    padding: 0 12px;
    box-sizing: border-box;
    border: 1px solid #d7e0e9;
    border-radius: 4px;
    outline: none;
    background: #ffffff;
    color: #26384b;
    font-family: inherit;
    font-size: 13px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.sign-in-form-group input::placeholder {
    color: #a0acb9;
}

.sign-in-form-group input:focus {
    border-color: #2DAAE2;
    box-shadow: 0 0 0 3px rgba(45, 170, 226, 0.12);
}

/* Password field */
.sign-in-password-wrapper {
    position: relative;
}

.sign-in-password-wrapper input {
    padding-right: 65px;
}

.sign-in-toggle-password {
    position: absolute;
    top: 50%;
    right: 12px;
    padding: 4px 0;
    transform: translateY(-50%);
    border: none;
    background: transparent;
    color: #2B55A3;
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

.sign-in-toggle-password:hover {
    color: #2DAAE2;
}

/* Remember and forgot password */
.sign-in-form-options {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 3px 0 24px;
}

.sign-in-remember {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #68798a;
    font-size: 12px;
    cursor: pointer;
}

.sign-in-remember input {
    width: 15px;
    height: 15px;
    margin: 0;
    accent-color: #2B55A3;
    cursor: pointer;
}

.sign-in-forgot {
    color: #2B55A3;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
}

.sign-in-forgot:hover {
    color: #2DAAE2;
    text-decoration: underline;
}

/* Submit button */
.sign-in-submit-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    height: 44px;
    padding: 0 16px;
    border: none;
    border-radius: 4px;
    color: #ffffff;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: filter 0.2s ease, box-shadow 0.2s ease;
}

.sign-in-submit-btn:hover {
    filter: brightness(0.94);
    box-shadow: 0 5px 14px rgba(43, 85, 163, 0.2);
}

.sign-in-submit-btn:focus-visible,
.sign-in-toggle-password:focus-visible {
    outline: 2px solid #2DAAE2;
    outline-offset: 3px;
}

.sign-in-submit-btn span {
    font-size: 19px;
    line-height: 1;
}

/* Form message */
.sign-in-message {
    display: none;
    margin: 13px 0 0;
    font-size: 12px;
    line-height: 1.6;
}

.sign-in-message.is-visible {
    display: block;
}

.sign-in-message.is-error {
    color: #c0392b;
}

.sign-in-message.is-success {
    color: #18794e;
}

/* Divider and footer */
.sign-in-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 27px 0 22px;
    color: #8a97a5;
    font-size: 11px;
}

.sign-in-divider::before,
.sign-in-divider::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #e6ebf1;
}

.sign-in-register {
    margin: 0 0 19px;
    color: #68798a;
    font-size: 12px;
    text-align: center;
}

.sign-in-register a,
.sign-in-footer a {
    color: #2B55A3;
    font-weight: 600;
    text-decoration: none;
}

.sign-in-register a:hover,
.sign-in-footer a:hover {
    color: #2DAAE2;
    text-decoration: underline;
}

.sign-in-footer {
    margin: 0;
    color: #8a97a5;
    font-size: 10px;
    line-height: 1.8;
    text-align: center;
}

/* Mobile */
@media (max-width: 480px) {
    .labozon-sign_in-section {
        padding: 30px 12px;
    }

    .sign-in-card {
        padding: 30px 22px;
    }

    .sign-in-header h2,
.sign-in-header h1 {
        font-size: 25px;
    }

    .sign-in-form-options {
        align-items: flex-start;
    }
    .sign-in-header p {
    font-size: 12px;
    }
    .sign-in-form-group > label {
    font-size: 12px;
    }
    .sign-in-form-group input {
    font-size: 11px;
    }
}
/* ------------------------Sign Up */

.labozon-sign_up-section {
    width: 100%;
    padding: 45px 20px;
    box-sizing: border-box;
}


.sign_up-container {
    width: 100%;
    max-width: 520px;
    margin: 0 auto;
}

.sign-up-card {
    width: 100%;
    padding: 35px 38px;
    background: #fff;
    border: 1px solid #e5eaf1;
    border-radius: 8px;
    box-shadow: 0 8px 30px rgba(22, 48, 80, 0.08);
}

.sign-up-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-bottom: 25px;
    color: #0034bb;
    font-size: 25px;
    font-weight: 700;
    text-decoration: none;
}

.sign-up-heading {
    margin-bottom: 25px;
    text-align: center;
}

.sign-up-heading h2,
.sign-up-heading h1 {
   margin: 0 0 10px;
  color: #3f3f3f;
  font-size: 30px;
  font-weight: 700;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  margin-top: 12px;
}

.sign-up-heading p {
    margin: 0;
    color: #687386;
    font-size: 13px;
    line-height: 1.6;
}

.sign-up-field {
    margin-bottom: 17px;
}

.sign-up-field label {
    display: block;
  margin-bottom: 8px;
  color: #344b63;
  font-size: 13px;
  font-weight: 600;
}

.sign-up-field input {
    display: block;
    width: 100%;
    height: 40px;
    padding: 0 12px;
    color: #253247;
    background: #fff;
    border: 1px solid #d5dce6;
    border-radius: 4px;
    outline: none;
    font-family: inherit;
    font-size: 13px;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.sign-up-field input::placeholder {
    color: #9aa4b2;
}

.sign-up-field input:focus {
    border-color: #2d80c9;
    box-shadow: 0 0 0 3px rgba(45, 128, 201, 0.1);
}

.sign-up-field input.input-invalid {
    border-color: #dc3545;
}

.sign-up-password-wrap {
    position: relative;
}

.sign-up-password-wrap input {
    padding-right: 60px;
}

.sign-up-toggle {
    position: absolute;
    top: 50%;
    right: 10px;
    padding: 4px 0;
    color: #285db3;
    background: transparent;
    border: 0;
    transform: translateY(-50%);
    cursor: pointer;
    font-family: inherit;
    font-size: 12px;
    font-weight: 600;
}

.sign-up-hint,
.sign-up-error {
    display: block;
    margin-top: 5px;
    font-size: 12px;
    line-height: 1.4;
}

.sign-up-hint {
    color: #7a8595;
}

.sign-up-error,
.sign-up-terms-error {
    color: #dc3545;
}

.sign-up-terms {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 4px 0 7px;
    color: #687386;
    font-size: 13px;
    line-height: 1.6;
}

.sign-up-terms input {
    flex-shrink: 0;
    width: 15px;
    height: 15px;
    margin-top: 3px;
    accent-color: #285db3;
    cursor: pointer;
}

.sign-up-terms a,
.sign-up-footer a {
    color: #285db3;
    font-weight: 600;
    text-decoration: none;
}

.sign-up-terms a:hover,
.sign-up-footer a:hover {
    text-decoration: underline;
}

.sign-up-terms-error {
    display: block;
    margin-bottom: 10px;
    font-size: 12px;
}

.sign-up-submit {
    width: 100%;
    min-height: 42px;
    margin-top: 12px;
    padding: 10px 16px;
    color: #fff;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    transition: opacity 0.2s;
}

.sign-up-submit:hover {
    opacity: 0.92;
}

.sign-up-submit:focus-visible,
.sign-up-toggle:focus-visible {
    outline: 2px solid #2d80c9;
    outline-offset: 3px;
}

.sign-up-message {
    margin: 12px 0 0;
    font-size: 13px;
    line-height: 1.5;
    text-align: center;
}

.sign-up-message.success {
    color: #198754;
}

.sign-up-message.error {
    color: #dc3545;
}

.sign-up-footer {
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid #edf0f5;
    color: #687386;
    font-size: 13px;
    text-align: center;
}

@media (max-width: 576px) {
    .labozon-sign_up-section {
        padding: 35px 12px;
    }

    .sign-up-card {
        padding: 25px 20px;
    }

    .sign-up-heading h2,
.sign-up-heading h1 {
        font-size: 23px;
    }
    .sign-up-field label {
        font-size: 12px;
    }
    .sign-up-field input {
         font-size: 11px;
    }
    .sign-up-terms {
        font-size: 11px;
    }
    .sign-up-footer {
        font-size: 11px;
    }

}
/* ----------------------Forgotpassword */
.labozon-forgot_password-section {
    width: 100%;
    padding: 45px 20px;
    box-sizing: border-box;
}
.forgot_password-container {
    width: 100%;
    max-width: 460px;
    margin: 0 auto;
}
 
.forgot-password-card {
    width: 100%;
    padding: 35px;
    background: #ffffff;
    border: 1px solid #e5eaf1;
    border-radius: 8px;
    box-shadow: 0 8px 30px rgba(22, 48, 80, 0.08);
}

.forgot-password-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-bottom: 28px;
    color: #0034bb;
    font-size: 25px;
    font-weight: 700;
    text-decoration: none;
}

.forgot-password-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin: 0 auto 20px;
    color: #285db3;
    background: #edf5ff;
    border-radius: 50%;
}

.forgot-password-icon svg {
    width: 31px;
    height: 31px;
}

.forgot-password-heading {
    margin-bottom: 27px;
    text-align: center;
}

.forgot-password-heading h2,
.forgot-password-heading h1 {
   margin: 0 0 10px;
    margin-top: 0px;
  color: #3f3f3f;   
  font-size: 30px;
  font-weight: 700;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  margin-top: 12px;
}

.forgot-password-heading p {
    margin: 0;
    color: #687386;
    font-size: 13px;
    line-height: 1.7;
}

.forgot-password-field {
    margin-bottom: 18px;
}

.forgot-password-field label {
    display: block;
    margin-bottom: 7px;
    color: #253247;
    font-size: 13px;
    font-weight: 600;
}

.forgot-password-field input {
    display: block;
    width: 100%;
    height: 40px;
    padding: 0 12px;
    color: #253247;
    background: #fff;
    border: 1px solid #d5dce6;
    border-radius: 4px;
    outline: none;
    font-family: inherit;
    font-size: 12px;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.forgot-password-field input::placeholder {
    color: #9aa4b2;
}

.forgot-password-field input:focus {
    border-color: #2d80c9;
    box-shadow: 0 0 0 3px rgba(45, 128, 201, 0.1);
}

.forgot-password-field input.input-invalid {
    border-color: #dc3545;
}

.forgot-password-error {
    display: block;
    margin-top: 5px;
    color: #dc3545;
    font-size: 12px;
}

.forgot-password-submit {
    display: block;
    width: 100%;
    min-height: 42px;
    padding: 10px 16px;
    color: #fff;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    transition: opacity 0.2s, box-shadow 0.2s;
}

.forgot-password-submit:hover {
    opacity: 0.93;
    box-shadow: 0 5px 14px rgba(43, 85, 163, 0.18);
}

.forgot-password-submit:focus-visible,
.forgot-password-back:focus-visible {
    outline: 2px solid #2d80c9;
    outline-offset: 3px;
}

.forgot-password-message {
    margin: 12px 0 0;
    font-size: 13px;
    line-height: 1.6;
    text-align: center;
}

.forgot-password-message.success {
    color: #198754;
}

.forgot-password-message.error {
    color: #dc3545;
}

.forgot-password-back {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid #edf0f5;
    color: #285db3;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}

.forgot-password-back:hover {
    color: #0034bb;
}

.forgot-password-back span {
    font-size: 19px;
}

@media (max-width: 576px) {
    .labozon-forgot_password-section {
        padding: 40px 14px;
    }

    .forgot-password-card {
        padding: 27px 20px;
    }

    .forgot-password-heading h2,
.forgot-password-heading h1 {
        font-size: 23px;
    }
    .forgot-password-heading p {
        font-size: 11px;
    }
    .forgot-password-field label {
        font-size: 12px;
    }
    .forgot-password-field input{
        font-size: 11px;
    }
}
/* ---------------------------Enter OTP */

.labozon-enter_otp-section {
    width: 100%;
    padding: 45px 20px;
    box-sizing: border-box;
}

.enter_otp-container {
    width: 100%;
    max-width: 460px;
    margin: 0 auto;
}

.enter-otp-card {
    width: 100%;
    padding: 35px;
    background: #fff;
    border: 1px solid #e5eaf1;
    border-radius: 8px;
    box-shadow: 0 8px 30px rgba(22, 48, 80, 0.08);
}

.enter-otp-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-bottom: 28px;
    color: #0034bb;
    font-size: 25px;
    font-weight: 700;
    text-decoration: none;
}
.enter-otp-heading {
    margin-bottom: 27px;
    text-align: center;
}

.enter-otp-heading h2,
.enter-otp-heading h1 {
    margin: 12px 0 10px;
  color: #3f3f3f;
  font-size: 30px;
  font-weight: 700;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.enter-otp-heading p {
    margin: 0;
    color: #687386;
    font-size: 13px;
    line-height: 1.7;
}

.enter-otp-label {
    display: block;
    margin-bottom: 12px;
    color: #253247;
    font-size: 14px;
    font-weight: 600;
}

.enter-otp-inputs {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.enter-otp-digit {
    width: 100%;
    min-width: 0;
    height: 56px;
    padding: 0;
    color: #253247;
    background: #fff;
    border: 1px solid #d5dce6;
    border-radius: 4px;
    outline: none;
    font-family: inherit;
    font-size: 19px;
    font-weight: 600;
    text-align: center;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.enter-otp-digit:focus {
    border-color: #2d80c9;
    box-shadow: 0 0 0 3px rgba(45, 128, 201, 0.1);
}

.enter-otp-digit.otp-invalid {
    border-color: #dc3545;
}

.enter-otp-error {
    min-height: 18px;
    margin: 7px 0 8px;
    color: #dc3545;
    font-size: 12px;
    line-height: 1.5;
}

.enter-otp-submit {
    width: 100%;
    min-height: 42px;
    padding: 10px 16px;
    color: #fff;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    transition: opacity 0.2s, box-shadow 0.2s;
}

.enter-otp-submit:hover {
    opacity: 0.93;
    box-shadow: 0 5px 14px rgba(43, 85, 163, 0.18);
}

.enter-otp-submit:disabled {
    opacity: 0.65;
    cursor: not-allowed;
}

.enter-otp-resend {
    margin-top: 23px;
    text-align: center;
}

.enter-otp-resend p {
    margin: 0 0 9px;
    color: #687386;
    font-size: 13px;
}

.enter-otp-resend-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 13px;
}

#enterOtpTimer {
    color: #687386;
}

#enterOtpResend {
    padding: 0;
    color: #285db3;
    background: transparent;
    border: none;
    cursor: pointer;
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
}

#enterOtpResend:disabled {
    color: #9aa4b2;
    cursor: not-allowed;
}

.enter-otp-message {
    margin: 12px 0 0;
    color: #198754;
    font-size: 13px;
    line-height: 1.6;
    text-align: center;
}

.enter-otp-message.error {
    color: #dc3545;
}

.enter-otp-back {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 24px;
    padding-top: 19px;
    border-top: 1px solid #edf0f5;
    color: #285db3;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}

.enter-otp-back:hover {
    color: #0034bb;
}

.enter-otp-back span {
    font-size: 19px;
}

@media (max-width: 576px) {
    .labozon-enter_otp-section {
        padding: 40px 14px;
    }

    .enter-otp-card {
        padding: 27px 20px;
    }

    .enter-otp-heading h2,
.enter-otp-heading h1 {
        font-size: 23px;
    }

    .enter-otp-inputs {
        gap: 7px;
    }
    .enter-otp-heading p {
        font-size: 12px;
    }
    .enter-otp-label {
        font-size: 12px;
    }

}

@media (max-width: 350px) {
    .enter-otp-card {
        padding: 24px 15px;
    }

    .enter-otp-inputs {
        gap: 5px;
    }
}
/* ------------------------User Account */
.labozon-user_account-section {
    width: 100%;
    padding: 45px 0;
    box-sizing: border-box;
}

.user_account-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

.user-account-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 28px;
}
.user-account-header h2,
.user-account-header h1 {
   font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}

.user-account-header p {
    margin: 0;
    color: #687386;
    font-size: 14px;
    line-height: 1.6;
}

.user-account-shop-btn,
.user-account-primary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 6px 18px;
    color: #fff;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    transition: opacity 0.2s, box-shadow 0.2s;
}

.user-account-shop-btn:hover,
.user-account-primary-btn:hover {
    opacity: 0.93;
    box-shadow: 0 5px 14px rgba(43, 85, 163, 0.16);
}

.user-account-layout {
    display: grid;
    grid-template-columns: 270px minmax(0, 1fr);
    align-items: start;
    gap: 12px;
}

.user-account-sidebar,
.user-account-content-card {
    background: #fff;
    border: 1px solid #e5eaf1;
    border-radius: 8px;
    box-shadow: 0 4px 18px rgba(22, 48, 80, 0.035);
}

.user-account-sidebar {
    overflow: hidden;
}

.user-account-profile {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 22px 18px;
    border-bottom: 1px solid #edf0f5;
}

.user-account-avatar {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    color: #fff;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    border-radius: 50%;
    font-size: 15px;
    font-weight: 700;
}

.user-account-profile-info {
    min-width: 0;
}

.user-account-profile-info h3 {
    margin: 0 0 5px;
    overflow-wrap: anywhere;
    color: #494949;
    font-size: 22px;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.user-account-profile-info p {
    margin: 0;
    overflow-wrap: anywhere;
    color: #7a8595;
    font-size: 12px;
}

.user-account-nav {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 15px 10px;
}

.user-account-nav-link {
    display: flex;
    align-items: center;
    gap: 11px;
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    color: #536174;
    background: transparent;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 18px;
  text-align: left;
  text-decoration: none;
  transition: color 0.2s, background 0.2s;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  justify-content: space-between;
}

.user-account-nav-link:hover,
.user-account-nav-link.active {
    color: #285db3;
    background: #edf5ff;
}

.user-account-nav-link.active {
    font-weight: 700;
}

.account-nav-symbol {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 19px;
    font-size: 18px;
}

.user-account-logout {
    margin-top: 7px;
    padding-top: 15px;
    border-top: 1px solid #edf0f5;
    border-radius: 0;
    color: #dc3545;
}

.user-account-logout:hover {
    color: #c82333;
    background: #fff1f2;
}

.user-account-main {
    min-width: 0;
}

.user-account-panel {
    display: none;
}

.user-account-panel.active {
    display: block;
    animation: accountPanelFade 0.2s ease;
}

@keyframes accountPanelFade {
    from {
        opacity: 0;
        transform: translateY(4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.user-account-panel-heading {
    margin: 0 0 20px;
}

.user-account-panel-heading h3 {
    margin: 0 0 7px;
    color: #191919;
    font-size: 25px;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.user-account-panel-heading p {
    margin: 0;
    color: #7a8595;
    font-size: 13px;
    line-height: 1.6;
}

.user-account-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 12px;
}

.user-account-stat-card {
    min-width: 0;
    padding: 19px;
    background: #fff;
    border: 1px solid #e5eaf1;
    border-radius: 8px;
}

.user-account-stat-label,
.user-account-stat-note {
    display: block;
    color: #7a8595;
    font-size: 12px;
    line-height: 1.5;
}

.user-account-stat-card strong {
    display: block;
    margin: 10px 0 7px;
    color: #f14e31;
    font-size: 27px;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.user-account-content-card {
    min-width: 0;
    margin-bottom: 22px;
    padding: 22px;
}

.user-account-card-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 18px;
}

.user-account-card-heading h4 {
    margin: 0 0 6px;
    color: #182230;
    font-size: 20px;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.user-account-card-heading p {
    margin: 0;
    color: #7a8595;
    font-size: 12px;
    line-height: 1.6;
}

.user-account-text-btn {
    flex-shrink: 0;
    padding: 5px 0;
    color: #285db3;
    background: transparent;
    border: none;
    cursor: pointer;
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
}

.user-account-text-btn:hover {
    text-decoration: underline;
}

.user-account-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.user-account-orders-table {
    width: 100%;
    min-width: 590px;
    border-collapse: collapse;
    text-align: left;
}

.user-account-orders-table th {
    padding: 13px 12px;
    color: #7a8595;
    background: #f8fafc;
    border-bottom: 1px solid #e5eaf1;
    font-size: 15px;
    font-weight: 500;
    white-space: nowrap;
}

.user-account-orders-table td {
    padding: 15px 12px;
    color: #536174;
    border-bottom: 1px solid #edf0f5;
    font-size: 14px;
    white-space: nowrap;
}

.user-account-orders-table tbody tr:last-child td {
    border-bottom: none;
}

.user-account-orders-table td:first-child {
    color: #253247;
    font-weight: 600;
}

.account-status {
    display: inline-block;
    padding: 5px 8px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
}

.status-processing {
    color: #8a5a00;
    background: #fff4d6;
}

.status-delivered {
    color: #18794e;
    background: #e5f7ed;
}

.status-pending {
    color: #285db3;
    background: #edf5ff;
}

.account-order-link {
    color: #285db3;
    font-weight: 600;
    text-decoration: none;
}

.account-order-link:hover {
    text-decoration: underline;
}

.user-account-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 18px;
}

.user-account-info-grid div {
    min-width: 0;
}

.user-account-info-grid span {
    display: block;
    margin-bottom: 7px;
    color: #7a8595;
    font-size: 12px;
}

.user-account-info-grid strong {
    display: block;
    overflow-wrap: anywhere;
    color: #253247;
    font-size: 13px;
    font-weight: 600;
}

.user-account-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.user-account-field {
    min-width: 0;
    margin-bottom: 18px;
}

.user-account-field label {
    display: block;
    margin-bottom: 7px;
    color: #253247;
    font-size: 13px;
    font-weight: 600;
}

.user-account-field input {
    display: block;
    width: 100%;
    height: 40px;
    padding: 0 12px;
    color: #253247;
    background: #fff;
    border: 1px solid #d5dce6;
    border-radius: 4px;
    outline: none;
    font-family: inherit;
    font-size: 13px;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.user-account-field input::placeholder {
    color: #9aa4b2;
}

.user-account-field input:focus {
    border-color: #2d80c9;
    box-shadow: 0 0 0 3px rgba(45, 128, 201, 0.1);
}

.user-account-full-width {
    grid-column: 1 / -1;
}

.user-account-form-message {
    margin: 0 0 12px;
    font-size: 13px;
    line-height: 1.6;
}

.user-account-form-message.success {
    color: #198754;
}

.user-account-form-message.error {
    color: #dc3545;
}

.user-account-security-note {
    margin: 16px 0 0;
    color: #7a8595;
    font-size: 12px;
    line-height: 1.6;
}

.user-account-primary-btn {
    min-width: 135px;
}

@media (max-width: 1000px) {
    .user-account-layout {
        grid-template-columns: 225px minmax(0, 1fr);
        gap: 18px;
    }

    .user-account-stats {
        gap: 10px;
    }

    .user-account-stat-card {
        padding: 15px;
    }

    .user-account-content-card {
        padding: 18px;
    }
}

@media (max-width: 760px) {
    .labozon-user_account-section {
        padding: 35px 12px;
    }

    .user-account-header {
       align-items: center;
        flex-direction: column;
        justify-content: center;
        text-align: center;
    }

    .user-account-header h2,
.user-account-header h1 {
        font-size: 28px;
    }

    .user-account-layout {
        grid-template-columns: 1fr;
    }

    .user-account-nav {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .user-account-logout {
        margin-top: 0;
        padding-top: 10px;
        border-top: none;
        border-radius: 4px;
    }
}

@media (max-width: 520px) {
    .user-account-stats {
        grid-template-columns: 1fr;
    }

    .user-account-stat-card {
        padding: 15px 18px;
    }

    .user-account-stat-card strong {
        margin: 5px 0;
        font-size: 23px;
    }

    .user-account-form-grid,
    .user-account-info-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .user-account-full-width {
        grid-column: auto;
    }

    .user-account-content-card {
        padding: 16px 13px;
    }

    .user-account-card-heading {
        align-items: flex-start;
    }

    .user-account-nav {
        grid-template-columns: 1fr;
    }
}
/* ----------------------Search product */
.labozon-search_product-section {
    width: 100%;
    padding: 45px 0;
    box-sizing: border-box;
}

.search_product-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

.search-product-heading {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
}

.search-product-heading h2,
.search-product-heading h1 {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.35;
    margin: 0 auto;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    text-transform: uppercase;
}

.search-product-heading p {
    margin: 0;
    color: #687386;
    font-size: 14px;
    line-height: 1.6;
}

/* Search and sorting toolbar */
.search-product-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;

}

.search-product-input-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    max-width: 400px;
    height: 40px;
    padding: 0 12px;
    background: #fff;
    border: 1px solid #d5dce6;
    border-radius: 4px;
}

.search-product-input-wrap > i {
    color: #7a8595;
    font-size: 14px;
}

.search-product-input-wrap input {
    width: 100%;
    height: 100%;
    padding: 0;
    color: #253247;
    background: transparent;
    border: none;
    outline: none;
    font-family: inherit;
    font-size: 13px;
}

.search-product-input-wrap input::placeholder {
    color: #9aa4b2;
}

#clearProductSearch {
    flex-shrink: 0;
    width: 25px;
    height: 25px;
    padding: 0;
    color: #687386;
    background: transparent;
    border: none;
    cursor: pointer;
    font-size: 23px;
}

.search-product-sort {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: 10px;
}

.search-product-sort label {
    color: #536174;
    font-size: 13px;
    white-space: nowrap;
}

.search-product-sort select {
    width: 165px;
    height: 30px;
    padding: 0 10px;
    color: #253247;
    background: #fff;
    border: 1px solid #d5dce6;
    border-radius: 4px;
    outline: none;
    font-family: inherit;
    font-size: 13px;
}

/* Results information */
.search-product-results {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
}

.search-product-results > p {
    margin: 0;
    color: #f77a31;
    font-size: 13px;
}

.search-product-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.search-product-tags span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #687386;
    font-size: 12px;
}

.search-product-tags i {
    color: #285db3;
}

/* Five product cards per row */
.search-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    align-items: stretch;
}

/* Product card */
.product-card-sp {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 12px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3e8ef;
    border-radius: 8px;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.product-card-sp:hover {
    border-color: #c5d5ea;
    box-shadow: 0 7px 22px rgba(22, 48, 80, 0.08);
}

/* Product image */
.product-image-sp {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 185px;
    padding: 10px;
    overflow: hidden;
    background: #fff;
    border-radius: 4px;
}

.product-image-sp img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

/* Product information */
.product-info-sp {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-width: 0;
    padding-top: 13px;
}

.product-info-sp h3 {
   min-height: 30px;
  margin: 0 0 10px;
  color: #101010;
  font-size: 20px;
  font-weight: 550;
  line-height: 1.45;
  overflow-wrap: anywhere;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.product-bottom-sp {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 7px;
    /* margin-bottom: 13px; */
    margin-top: 13px;
}

.price-sp {
    color: #172b43;
  font-size: 20px;
  font-weight: 550;
  line-height: 1.3;
  overflow-wrap: anywhere;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.cart-btn-sp {
    width: 100%;
  max-width: 65px;
  padding: 0 10px;
  height: 26px;
  border: 0;
  border-radius: 4px;
  cursor: pointer;
  background: #111;
  background: #FAA435;
  background: linear-gradient(100deg, rgba(250, 164, 53, 1) 0%, rgba(243, 80, 50, 1) 100%);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
  font-size: 12px;
  gap: 7px;
  font-weight: 600;

}

.cart-btn-sp:hover {
    opacity: 0.9;
}

.cart-btn-sp:disabled {
    opacity: 0.7;
    cursor: default;
}

/* Specifications */
.product-specification-sp {
    display: flex;
    flex-direction: column;
    gap: 9px;
    margin: auto 0 0;
    padding-top: 12px;
    border-top: 1px solid #edf0f5;
}

.p1-sp {
    display: flex;
    /* flex-direction: column; */
    justify-content: space-between;
    gap: 3px;
    min-width: 0;
    color: #687386;
    font-size: 11px;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.p1-sp strong {
    color: #253247;
    font-size: 11px;
    font-weight: 600;
}

/* Compare and wishlist buttons appear on hover */
.product-hover-actions-sp {
    position: absolute;
    top: 20px;
    right: 18px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    opacity: 0;
    visibility: hidden;
    transform: translateX(5px);
    transition: opacity 0.2s, visibility 0.2s, transform 0.2s;
}

.product-card-sp:hover .product-hover-actions-sp,
.product-card-sp:focus-within .product-hover-actions-sp {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

.product-action-sp {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    color: #285db3;
    background: #fff;
    border: 1px solid #e3e8ef;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(22, 48, 80, 0.08);
    cursor: pointer;
    font-size: 12px;
    transition: color 0.2s, background 0.2s;
}

.product-action-sp span {
    display: none;
}

.product-action-sp:hover,
.product-action-sp.is-selected {
    color: #fff;
    background: #285db3;
    border-color: #285db3;
}

.product-action-sp.is-selected {
    background: #285db3;
}

/* Empty search state and feedback */
.search-product-empty {
    padding: 55px 20px;
    color: #687386;
    text-align: center;
}

.search-product-empty > i {
    color: #8b9bb1;
    font-size: 35px;
}

.search-product-empty h3,
.search-product-empty h1 {
    margin: 15px 0 8px;
    color: #253247;
    font-size: 20px;
}

.search-product-empty p {
    margin: 0;
    font-size: 14px;
}

.search-product-feedback {
    min-height: 20px;
    margin-top: 14px;
    color: #285db3;
    font-size: 13px;
    line-height: 1.5;
}

/* Responsive grid */
@media (max-width: 1250px) {
    .search-product-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 1000px) {
    .search-product-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .product-image-sp {
        height: 175px;
    }
}

@media (max-width: 700px) {
    .labozon-search_product-section {
        padding: 35px 12px;
    }

    .search-product-toolbar {
        align-items: stretch;
        flex-direction: column;
        padding: 12px;
    }

    .search-product-input-wrap {
        max-width: none;
    }

    .search-product-sort {
        justify-content: space-between;
    }

    .search-product-sort select {
        flex: 1;
        max-width: 220px;
    }

    .search-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .product-card-sp {
        padding: 9px;
    }

    .product-image-sp {
        height: 145px;
        padding: 5px;
    }

    .product-info-sp h3 {
        font-size: 18px;
    }

    .price-sp {
        font-size: 14px;
    }

    .cart-btn-sp {
        padding: 7px 8px;
        font-size: 11px;
    }

    .search-product-heading h2,
.search-product-heading h1 {
        font-size: 28px;
        text-align: center;
    }
}

@media (max-width: 380px) {
    .product-image-sp {
        height: 120px;
    }

    .product-bottom-sp {
        align-items: flex-start;
        flex-direction: column;
    }

    .cart-btn-sp {
        width: 100%;
        max-width: 100%;
    }

    .product-info-sp h3 {
        min-height: 39px;
    }

    .product-hover-actions-sp {
        top: 13px;
        right: 13px;
    }
}

@media (hover: none) {
    .product-hover-actions-sp {
        top: 12px;
        right: 12px;
        opacity: 1;
        visibility: visible;
        transform: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .product-card-sp,
    .product-hover-actions-sp,
    .product-action-sp,
    .cart-btn-sp {
        transition: none;
    }
}
/* ---------------------FAQ */

.labozon-faq-section {
    width: 100%;
    padding: 45px 0;
}

.faq-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

/* Section Heading */

.faq-header {
    max-width: 700px;
    margin: 0 auto 38px;
    text-align: center;
}

.faq-header h2,
.faq-header h1 {
    font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}


/* FAQ List */

.faq-content {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.faq-item {
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    transition: border-color 0.25s ease,
                box-shadow 0.25s ease;
}

.faq-item:hover,
.faq-item.active {
    border-color: #c8dff0;
}

.faq-item.active {
    box-shadow: 0 5px 18px rgba(32, 75, 115, 0.06);
}

/* Question Button */

.faq-question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    min-height: 66px;
    padding: 20px 24px;
    border: none;
    background: #ffffff;
    color: #253858;
    font-family: inherit;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
    cursor: pointer;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.faq-question:focus-visible {
    outline: 2px solid #2daae2;
    outline-offset: -4px;
}

.faq-item.active .faq-question {
    color: #237fb7;
}

/* Plus / Minus Icon */

.faq-icon {
    position: relative;
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    border-radius: 4px;
    background: #edf6fc;
}

.faq-icon::before,
.faq-icon::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 2px;
    border-radius: 2px;
    background: #2689c6;
    content: "";
    transform: translate(-50%, -50%);
    transition: transform 0.25s ease;
}

.faq-icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.faq-item.active .faq-icon {
    background: linear-gradient( 267deg, rgb(251, 154, 49) 0%, rgb(241, 78, 49) 100% );
}

.faq-item.active .faq-icon::before,
.faq-item.active .faq-icon::after {
    background: #ffffff;
}

.faq-item.active .faq-icon::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

/* Answer Accordion */

.faq-answer {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.3s ease;
}

.faq-item.active .faq-answer {
    grid-template-rows: 1fr;
}

.faq-answer-inner {
    overflow: hidden;
    min-height: 0;
}

.faq-answer-inner p {
    margin: 0;
    padding: 0 24px 22px;
    color: #667085;
    font-size: 14px;
    line-height: 1.9;
}


/* Responsive */

@media (max-width: 768px) {
    .labozon-faq-section {
        padding: 55px 16px;
    }

    .faq-header {
        margin-bottom: 28px;
    }

    .faq-header h2,
.faq-header h1 {
        font-size: 29px;
    }

    .faq-header p {
        font-size: 14px;
    }

    .faq-question {
        min-height: 60px;
        padding: 17px 18px;
        font-size: 15px;
    }

    .faq-answer-inner p {
        padding: 0 18px 20px;
        font-size: 13px;
    }

    .faq-contact-box {
        align-items: flex-start;
        flex-direction: column;
        padding: 24px 20px;
    }
}

@media (max-width: 480px) {
    .labozon-faq-section {
        padding: 45px 12px;
    }

    .faq-header h2,
.faq-header h1 {
        font-size: 28px;
    }

    .faq-subtitle {
        font-size: 12px;
    }

    .faq-content {
        gap: 10px;
    }

    .faq-question {
        gap: 12px;
        padding: 15px 13px;
        font-size: 18px;
    }

    .faq-icon {
        flex-basis: 25px;
        width: 25px;
        height: 25px;
    }

    .faq-answer-inner p {
        padding: 0 13px 17px;
        line-height: 1.8;
    }

    .faq-contact-text h3 {
        font-size: 19px;
    }

    .faq-contact-btn {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .faq-item,
    .faq-answer,
    .faq-icon::before,
    .faq-icon::after,
    .faq-contact-btn {
        transition: none;
    }
}
/* ---------------------Gallery */

.labozon-gallery-section {
    width: 100%;
    padding: 45px 0;
}

.gallery-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

/* Gallery Heading */

.gallery-header {
    max-width: 720px;
    margin: 0 auto 35px;
    text-align: center;
}

.gallery-subtitle {
    display: inline-block;
    margin-bottom: 10px;
    color: #2d8fca;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.gallery-header h2,
.gallery-header h1 {
   font-size: 40px;
    font-weight: 500;
    line-height: 1.35;
    margin: 0 auto;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    text-transform: uppercase;
}

.gallery-header p {
    margin: 0;
    color: #667085;
    font-size: 15px;
    line-height: 1.8;
}

/* Gallery Grid */

.labozon-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 2px;
}

/* Individual Image */

.gallery-item {
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    /* aspect-ratio: 4 / 3; */
    padding: 0;
    border: none;
    border-radius: 0;
    background: #f4f7fa;
    cursor: pointer;
    text-align: left;
    -webkit-tap-highlight-color: transparent;
}

.gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
    max-width: 170px;
    margin: auto;
    padding: 24px 0;
}

/* Hover Name Overlay */

.gallery-image-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    padding: 18px;
    background: linear-gradient( to top, rgba(165, 165, 165, 0.82) 0%, rgba(255, 255, 255, 0.18) 48%, transparent 100% );
    opacity: 0;
    transition: opacity 0.3s ease;
}

.gallery-image-name {
   color: #fff;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  transform: translateY(8px);
  transition: transform 0.3s ease;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.gallery-zoom-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.95);
    color: #243b53;
    font-size: 20px;
}

.gallery-item:hover .gallery-image-overlay,
.gallery-item:focus-visible .gallery-image-overlay {
    opacity: 1;
}

.gallery-item:hover .gallery-image-name,
.gallery-item:focus-visible .gallery-image-name {
    transform: translateY(0);
}


.gallery-item:focus-visible {
    outline: 2px solid #2daae2;
    outline-offset: 3px;
}
.gallery-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
    padding: 65px 75px 35px;
    background: rgba(8, 12, 20, 0.96);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease,
                visibility 0.25s ease;
}

.gallery-lightbox.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.gallery-lightbox-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-width: 0;
}

.gallery-lightbox-image {
    display: block;
    width: 100%;
    height: calc(100% - 50px);
    max-width: 1200px;
    object-fit: contain;
    user-select: none;
    -webkit-user-drag: none;
}

.gallery-lightbox-caption {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    max-width: 1200px;
    min-height: 45px;
    padding-top: 12px;
    color: #ffffff;
    font-size: 14px;
}

#galleryLightboxTitle {
    font-weight: 600;
}

#galleryLightboxCounter {
    flex-shrink: 0;
    color: #c7d0dc;
}

/* Close Button */

.gallery-close {
    position: absolute;
    top: 18px;
    right: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    font-size: 34px;
    font-weight: 300;
    line-height: 1;
    cursor: pointer;
    transition: background 0.2s ease;
}

.gallery-close:hover {
    background: rgba(255, 255, 255, 0.25);
}

/* Previous / Next Buttons */

.gallery-nav {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 45px;
    height: 45px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.13);
    color: #ffffff;
    font-size: 20px;
    cursor: pointer;
    transition: background 0.2s ease;
}

.gallery-nav:hover {
    background: rgba(255, 255, 255, 0.28);
}

.gallery-lightbox button:focus-visible {
    outline: 2px solid #2daae2;
    outline-offset: 3px;
}

/* Responsive Layout */

@media (max-width: 1000px) {
    .labozon-gallery-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 15px;
    }

    .gallery-lightbox {
        gap: 15px;
        padding-right: 35px;
        padding-left: 35px;
    }
}

@media (max-width: 700px) {
    .labozon-gallery-section {
        padding: 50px 16px;
    }

    .gallery-header h2,
.gallery-header h1 {
        font-size: 28px;
    }

    .labozon-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    /* Show image names on touch devices */
    .gallery-image-overlay {
        padding: 12px;
        opacity: 1;
        background: linear-gradient(
            to top,
            rgba(10, 24, 43, 0.78),
            transparent 75%
        );
    }

    .gallery-image-name {
        font-size: 13px;
        transform: none;
    }

    .gallery-zoom-icon {
        width: 28px;
        height: 28px;
        font-size: 17px;
    }

    .gallery-lightbox {
        gap: 8px;
        padding: 65px 12px 20px;
    }

    .gallery-nav {
        width: 35px;
        height: 35px;
        font-size: 16px;
    }

    .gallery-lightbox-image {
        height: calc(100% - 55px);
    }

    .gallery-close {
        top: 12px;
        right: 12px;
        width: 40px;
        height: 40px;
    }
}

@media (max-width: 400px) {
    .labozon-gallery-section {
        padding: 40px 12px;
    }

    .gallery-header h2,
.gallery-header h1 {
        font-size: 28px;
    }

    .labozon-gallery-grid {
        gap: 8px;
    }

    .gallery-image-overlay {
        padding: 8px;
    }

    .gallery-image-name {
        font-size: 16px;
    }

    .gallery-zoom-icon {
        width: 24px;
        height: 24px;
        font-size: 15px;
    }

    .gallery-lightbox {
        gap: 5px;
        padding-right: 6px;
        padding-left: 6px;
    }

    .gallery-nav {
        width: 30px;
        height: 30px;
        font-size: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .gallery-item img,
    .gallery-image-overlay,
    .gallery-image-name,
    .gallery-lightbox,
    .gallery-close,
    .gallery-nav {
        transition: none;
    }
}
/* ---------------------terms and condi */

.labozon-terms_and_conditions-section {
    width: 100%;
    padding: 45px 0;
}

.terms_and_conditions-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

/* Page Header */

.terms-page-header {
    margin-bottom: 35px;
    text-align: center;
}

.terms-page-header h1 {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.35;
    margin: 0 auto;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    text-transform: uppercase;
}

.terms-updated {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 5px;
    margin-top: 10px;
    padding: 9px 14px;
    border-radius: 4px;
    background: #e7f2fb;
    color: #344054;
    font-size: 12px;
}

#termsLastUpdated {
    color: #fb9731;
    font-weight: 500;
}

/* Main Content */

.terms-content {
    width: 100%;
}

.terms-section-block {
    padding: 0 0 27px;
    margin-bottom: 27px;
    border-bottom: 1px solid #e9edf2;
}

.terms-section-block:last-child {
    margin-bottom: 0;
    border-bottom: none;
}

.terms-section-block h2 {
    position: relative;
    margin: 0 0 15px;
    padding-left: 15px;
    color: #1b1b1b;
    font-size: 26px;
    line-height: 1.45;
    font-weight: 500;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.terms-section-block h2::before {
    position: absolute;
    top: 4px;
    bottom: 4px;
    left: 0;
    width: 4px;
    border-radius: 3px;
    background: linear-gradient(
        180deg,
        #2daae2 0%,
        #2b55a3 100%
    );
    content: "";
}

.terms-section-block p {
    margin: 0 0 12px;
    color: #596579;
    font-size: 14px;
    line-height: 1.95;
}

.terms-section-block p:last-child {
    margin-bottom: 0;
}

/* Contact Section */

.terms-contact-section {
    padding: 25px;
    border: none;
    border-radius: 8px;
    background: #f5f9fd;
}

.terms-contact-section h2 {
    margin-bottom: 14px;
}

.terms-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 43px;
    margin-top: 15px;
    padding: 0 22px;
    border: none;
    border-radius: 4px;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.terms-contact-btn:hover {
    color: #ffffff;
    opacity: 0.9;
}

.terms-contact-btn span {
    font-size: 18px;
}

/* Back to Top */

.terms-back-to-top {
    position: fixed;
    right: 25px;
    bottom: 25px;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: none;
    border-radius: 4px;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    color: #ffffff;
    font-size: 24px;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 0.2s ease,
                visibility 0.2s ease,
                transform 0.2s ease;
}

.terms-back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.terms-back-to-top:hover {
    opacity: 0.9;
}

.terms-back-to-top:focus-visible,
.terms-contact-btn:focus-visible {
    outline: 2px solid #2daae2;
    outline-offset: 3px;
}

/* Responsive */

@media (max-width: 768px) {
    .labozon-terms_and_conditions-section {
        padding: 40px 16px 60px;
    }

    .terms-page-header {
        padding: 35px 22px;
        margin-bottom: 28px;
    }

    .terms-page-header h1 {
        font-size: 31px;
    }

    .terms-page-header > p {
        font-size: 14px;
    }

    .terms-section-block {
        padding-bottom: 22px;
        margin-bottom: 22px;
    }

    .terms-section-block h2 {
        font-size: 19px;
    }

    .terms-section-block p {
        font-size: 13px;
        line-height: 1.85;
    }

    .terms-contact-section {
        padding: 22px 18px;
    }
}

@media (max-width: 480px) {
    .labozon-terms_and_conditions-section {
        padding: 30px 12px 50px;
    }

    .terms-page-header {
        padding: 30px 16px;
    }

    .terms-page-header h1 {
        font-size: 28px;
    }

    .terms-eyebrow {
        font-size: 11px;
    }

    .terms-updated {
        font-size: 11px;
    }

    .terms-section-block h2 {
        font-size: 20px;
        padding-left: 12px;
    }

    .terms-section-block p {
        font-size: 13px;
    }

    .terms-back-to-top {
        right: 15px;
        bottom: 15px;
        width: 38px;
        height: 38px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .terms-back-to-top,
    .terms-contact-btn {
        transition: none;
    }
}
/* -----------------------Privacy Policy */

.labozon-privacy_policy-section {
    width: 100%;
    padding: 45px 0;
}

.privacy_policy-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

/* Page Header */

.privacy-page-header {
    margin-bottom: 35px;
    text-align: center;
}

.privacy-page-header h1 {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.35;
    margin: 0 auto;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    text-transform: uppercase;
}

/* Last Updated */

.privacy-page-header .terms-updated {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 5px;
    margin-top: 10px;
    padding: 9px 14px;
    border-radius: 4px;
    background: #e7f2fb;
    color: #344054;
    font-size: 12px;
}

#privacyLastUpdated {
    color: #fb9731;
    font-weight: 500;
}

/* Privacy Content */

.privacy-content {
    width: 100%;
}

.privacy-section-block {
    padding-bottom: 27px;
    margin-bottom: 27px;
    border-bottom: 1px solid #e9edf2;
}

.privacy-section-block:last-child {
    margin-bottom: 0;
    border-bottom: none;
}

.privacy-section-block h2 {
    position: relative;
    margin: 0 0 15px;
    padding-left: 15px;
    color: #1b1b1b;
    font-size: 26px;
    line-height: 1.45;
    font-weight: 500;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.privacy-section-block h2::before {
    position: absolute;
    top: 4px;
    bottom: 4px;
    left: 0;
    width: 4px;
    border-radius: 3px;
    background: linear-gradient(
        180deg,
        #2daae2 0%,
        #2b55a3 100%
    );
    content: "";
}

.privacy-section-block p {
    margin: 0 0 12px;
    color: #596579;
    font-size: 14px;
    line-height: 1.95;
}

.privacy-section-block p:last-child {
    margin-bottom: 0;
}

/* Lists */

.privacy-section-block ul {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-left: 22px;
    margin: 15px 0;
    color: #596579;
}

.privacy-section-block li {
    padding-left: 4px;
    font-size: 14px;
    line-height: 1.85;
}

.privacy-section-block li::marker {
    color: #2d9bd4;
}

.privacy-section-block li strong {
    color: #344054;
    font-weight: 600;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    font-size: 15px;
}

/* Contact Section */

.privacy-contact-section {
    padding: 25px;
    border: none;
    border-radius: 8px;
    background: #f5f9fd;
}

.privacy-contact-section h2 {
    margin-bottom: 14px;
}

.privacy-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 43px;
    margin-top: 15px;
    padding: 0 22px;
    border: none;
    border-radius: 4px;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.privacy-contact-btn:hover {
    color: #ffffff;
    opacity: 0.9;
}

.privacy-contact-btn span {
    font-size: 18px;
}

/* Back to Top */

.privacy-back-to-top {
    position: fixed;
    right: 25px;
    bottom: 25px;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: none;
    border-radius: 4px;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    color: #ffffff;
    font-size: 24px;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 0.2s ease,
                visibility 0.2s ease,
                transform 0.2s ease;
}

.privacy-back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.privacy-back-to-top:hover {
    opacity: 0.9;
}

.privacy-back-to-top:focus-visible,
.privacy-contact-btn:focus-visible {
    outline: 2px solid #2daae2;
    outline-offset: 3px;
}

/* Responsive */

@media (max-width: 768px) {
    .labozon-privacy_policy-section {
        padding: 40px 16px 60px;
    }

    .privacy-page-header {
        padding: 35px 22px;
        margin-bottom: 28px;
    }

    .privacy-page-header h1 {
        font-size: 31px;
    }

    .privacy-page-header > p {
        font-size: 14px;
    }

    .privacy-section-block {
        padding-bottom: 22px;
        margin-bottom: 22px;
    }

    .privacy-section-block h2 {
        font-size: 19px;
    }

    .privacy-section-block p,
    .privacy-section-block li {
        font-size: 13px;
        line-height: 1.85;
    }

    .privacy-contact-section {
        padding: 22px 18px;
    }
}

@media (max-width: 480px) {
    .labozon-privacy_policy-section {
        padding: 30px 13px 50px;
    }

    .privacy-page-header {
        padding: 30px 16px;
    }

    .privacy-page-header h1 {
        font-size: 28px;
    }

    .privacy-eyebrow {
        font-size: 11px;
    }

    .privacy-page-header .terms-updated {
        font-size: 11px;
    }

    .privacy-section-block h2 {
        padding-left: 12px;
        font-size: 20px;
    }

    .privacy-section-block p,
    .privacy-section-block li {
        font-size: 13px;
    }

    .privacy-section-block ul {
        padding-left: 20px;
    }

    .privacy-back-to-top {
        right: 15px;
        bottom: 15px;
        width: 38px;
        height: 38px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .privacy-back-to-top,
    .privacy-contact-btn {
        transition: none;
    }
}
/* ---------------------Cookie policy */

.labozon-cookies_policy-section {
    width: 100%;
    padding: 45px 0;
}
.cookies_policy-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

/* Page Header */

.cookies-page-header {
    margin-bottom: 35px;
    text-align: center;
}


.cookies-page-header h1 {
   font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}

.cookies-page-intro {
    max-width: 720px;
    margin: 0 auto 22px;
    color: #606d7e;
    font-size: 15px;
    line-height: 1.9;
}

.cookies-updated {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 5px;
    margin-top: 10px;
    padding: 9px 14px;
    border-radius: 4px;
    background: #e7f2fb;
    color: #344054;
    font-size: 12px;
}

.cookies-updated span {
    color: #fb9731;
  font-weight: 500;
}

/* Policy Content */

.cookies-policy-content {
    width: 100%;
}

.cookies-policy-block {
    padding: 26px 0;
    border-bottom: 1px solid #e8edf3;
}

.cookies-policy-block:first-child {
    padding-top: 0;
}

.cookies-policy-block h2 {
   position: relative;
  margin: 0 0 15px;
  padding-left: 15px;
  color: #1b1b1b;
  font-size: 26px;
  line-height: 1.45;
  font-weight: 500;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.cookies-policy-block h2::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 4px;
    height: 25px;
    border-radius: 4px;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
}

.cookies-policy-block p {
    margin: 0 0 14px;
    color: #586475;
    font-size: 15px;
    line-height: 1.9;
}

.cookies-policy-block p:last-child {
    margin-bottom: 0;
}

.cookies-policy-block ul {
    margin: 12px 0 18px;
    padding-left: 23px;
}

.cookies-policy-block li {
    margin-bottom: 10px;
    padding-left: 5px;
    color: #586475;
    font-size: 15px;
    line-height: 1.8;
}

.cookies-policy-block li::marker {
    color: #2d8fca;
}

.cookies-policy-block strong {
    color: #34465f;
    font-family: "Sofia Sans Semi Condensed", sans-serif
}

.cookies-policy-block a:not(.cookies-contact-btn) {
    color: #287bbd;
    font-weight: 600;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.cookies-policy-block a:not(.cookies-contact-btn):hover {
    text-decoration: underline;
}

/* Cookie Type Cards */

.cookies-type-card {
    position: relative;
    margin-top: 15px;
    padding: 20px 22px;
    background: #ffffff;
    border: 1px solid #e3eaf2;
    border-radius: 8px;
}

.cookies-type-card h3 {
    margin: 0 0 9px;
    color: #4e4e4e;
    font-size: 20px;
    font-weight: 700;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.cookies-type-card p {
    margin: 0;
    padding-right: 100px;
    font-size: 14px;
    line-height: 1.8;
}

.cookies-type-label {
    position: absolute;
    top: 18px;
    right: 18px;
    display: inline-block;
    padding: 6px 10px;
    border-radius: 2px;
    background: #edf5ff;
    color: #373b41;
    font-size: 13px;
    font-weight: 700;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

/* Contact Section */

.cookies-contact-block {
    margin-top: 25px;
    padding: 28px;
    border: 1px solid #e1eaf5;
    border-radius: 10px;
    background: #f5f9fd;
}

.cookies-contact-block h2 {
    margin-bottom: 12px;
}

.cookies-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 8px;
    padding: 12px 22px;
    border-radius: 6px;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: opacity 0.25s ease;
}

.cookies-contact-btn:hover {
    opacity: 0.9;
}

.cookies-contact-btn span {
    font-size: 18px;
}

/* Back To Top */

.cookies-back-to-top {
    position: fixed;
    right: 25px;
    bottom: 25px;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
    color: #ffffff;
    font-size: 25px;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition:
        opacity 0.25s ease,
        visibility 0.25s ease,
        transform 0.25s ease;
}

.cookies-back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.cookies-back-to-top:hover {
    opacity: 0.9;
}

/* Responsive */

@media (max-width: 768px) {
    .labozon-cookies_policy-section {
        padding: 35px 16px 55px;
    }

    .cookies-page-header {
        padding: 32px 22px;
        margin-bottom: 25px;
    }

    .cookies-page-intro {
        font-size: 14px;
    }

    .cookies-policy-block {
        padding: 23px 0;
    }

    .cookies-policy-block h2 {
        font-size: 20px;
    }

    .cookies-policy-block p,
    .cookies-policy-block li {
        font-size: 14px;
    }

    .cookies-type-card {
        padding: 18px;
    }

    .cookies-type-card p {
        padding-right: 0;
    }

    .cookies-type-label {
        position: static;
        margin-top: 12px;
    }

    .cookies-contact-block {
        padding: 22px;
    }
}

@media (max-width: 480px) {
    .labozon-cookies_policy-section {
        padding: 25px 14px 45px;
    }

    .cookies-page-header {
        padding: 28px 16px;
    }

    .cookies-page-header h1 {
        font-size: 28px;
    }

    .cookies-page-eyebrow {
        font-size: 10px;
        letter-spacing: 1.5px;
    }

    .cookies-updated {
        font-size: 12px;
    }

    .cookies-policy-block h2 {
        font-size: 20px;
    }

    .cookies-type-card h3 {
        font-size: 16px;
    }

    .cookies-back-to-top {
        right: 16px;
        bottom: 16px;
        width: 40px;
        height: 40px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cookies-back-to-top,
    .cookies-contact-btn {
        transition: none;
    }
}
/* ----------------Cookie popup */

.labozon-cookie-popup[hidden] {
    display: none !important;
}

.labozon-cookie-popup {
    position: fixed;
    left: 236px;
    bottom: 22px;
    z-index: 99999;
    width: calc(100% - 30px);
    max-width: 430px;
    padding: 19px;
    background: #ffffff;
    border: 1px solid #e5edf5;
    border-radius: 8px;
    box-shadow: 0 12px 45px rgba(24, 43, 73, 0.18);
    transform: translateX(-50%);
    animation: labozonCookieEnter 0.35s ease-out;
}

/* Popup Content */

.labozon-cookie-popup-content {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.labozon-cookie-icon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;

    width: 40px;
    height: 40px;

    border-radius: 11px;
    background: #edf6ff;
    color: #2b68b0;
}

.labozon-cookie-icon svg {
    display: block;
    width: 23px;
    height: 23px;
}

.labozon-cookie-text {
    flex: 1;
    min-width: 0;
}

.labozon-cookie-text .labozon-cookie-title {
    margin: 1px 0 6px;
    color: #1d3150;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.labozon-cookie-text p {
    margin: 0;
    color: #657185;
    font-size: 12.5px;
    line-height: 1.65;
}

/* Popup Actions */

.labozon-cookie-popup-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 17px;
}

.labozon-cookie-accept {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    flex: 1;
    padding: 6px 14px;
    border: none;
    border-radius: 4px;
    background: #FDA731;
    background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    color: #fff;
    transition: opacity 0.2s ease;
}

.labozon-cookie-accept:hover {
    opacity: 0.9;
}

.labozon-cookie-policy-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 6px 14px;
    border: 1px solid #dce6f1;
    border-radius: 4px;
    background: #ffffff;
    color: #2b55a3;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;

    transition:
        background 0.2s ease,
        border-color 0.2s ease;
}

.labozon-cookie-policy-link:hover {
    background: #f3f8fd;
    border-color: #b8cfe7;
}

/* Keyboard Accessibility */

.labozon-cookie-popup button:focus-visible,
.labozon-cookie-popup a:focus-visible {
    outline: 3px solid #f5a623;
    outline-offset: 3px;
}

/* Entrance Animation */

@keyframes labozonCookieEnter {
    from {
        opacity: 0;
        transform: translate(-50%, 12px);
    }

    to {
        opacity: 1;
        transform: translate(-50%, 0);
    }
}

/* Responsive */

@media (max-width: 480px) {
    .labozon-cookie-popup {
        bottom: 12px;
        width: calc(100% - 24px);
        padding: 15px;
        border-radius: 12px;
    }

    .labozon-cookie-icon {
        width: 35px;
        height: 35px;
    }

    .labozon-cookie-text .labozon-cookie-title {
        font-size: 15px;
    }

    .labozon-cookie-text p {
        font-size: 12px;
    }

    .labozon-cookie-popup-actions {
        gap: 8px;
        margin-top: 14px;
    }

    .labozon-cookie-accept {
        padding: 9px 10px;
        font-size: 12px;
    }

    .labozon-cookie-policy-link {
        padding: 8px;
        font-size: 11px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .labozon-cookie-popup {
        animation: none;
    }

    .labozon-cookie-accept,
    .labozon-cookie-policy-link {
        transition: none;
    }
}
/* -------------------------Add to cart page */

.labozon-add_to_cart-section {
    padding: 45px 0;
}

.add_to_cart-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

.add-cart-page-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px;
    margin-bottom: 30px;
}

.add-cart-page-header h1 {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.35;
    margin: 0 auto;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    text-transform: uppercase;
}

.add-cart-continue-top {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 6px 17px;
    border: 1px solid rgba(240, 74, 49, 1);
    border-radius: 4px;
    color: #fff;
    background: #FDA731;
    background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: background .2s ease, border-color .2s ease;
}

/* Progress */

.add-cart-progress {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 12px;
    padding: 18px;
    border: 1px solid #e8edf4;
    border-radius: 8px;
    background: #fff;
}

.add-cart-step {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #8490a2;
    font-size: 16px;
    font-weight: 600;
    white-space: nowrap;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.add-cart-step-number {
    display: grid;
    place-items: center;
    width: 45px;
    height: 28px;
    border: 1px solid #d9e1ed;
    border-radius: 2px;
    background: #fff;
    font-size: 12px;
}

.add-cart-step.active {
    color: #2b65ad;
}

.add-cart-step.active .add-cart-step-number {
    border-color: transparent;
    background: linear-gradient(267deg, #2daae2 0%, #2b55a3 100%);
    color: #fff;
}

.add-cart-progress-line {
    width: 65px;
    height: 1px;
    background: #dfe6ef;
}

/* Main layout */

.add-cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 450px;
    align-items: start;
    gap: 12px;
}

.add-cart-main,
.add-cart-summary {
    min-width: 0;
    border: 1px solid #e6ebf2;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 5px 24px rgba(25, 50, 90, 0.035);
}

.add-cart-products-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 22px 25px;
    border-bottom: 1px solid #edf0f5;
}

.add-cart-products-header h2,
.add-cart-summary h2 {
    margin: 0;
    color: #1d304b;
    font-size: 20px;
    font-weight: 600;
     font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.add-cart-products-header h2 span {
    margin-left: 7px;
    color: #7b899d;
    font-size: 12px;
    font-weight: 500;
}

.add-cart-clear {
    padding: 6px 0;
    border: 0;
    background: transparent;
    color: #db4c4c;
    font-size: 14px;
  font-weight: 500;
    cursor: pointer;
}

.add-cart-clear:hover {
    color: #ad2424;
    text-decoration: underline;
}

/* Product row */

.add-cart-product {
    display: grid;
    grid-template-columns: 125px minmax(0, 1fr) 105px;
    gap: 19px;
    align-items: start;
    padding: 25px;
    border-bottom: 1px solid #edf0f5;
}

.add-cart-product-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 125px;
    height: 125px;
    padding: 10px;
    overflow: hidden;
    border: 1px solid #edf0f5;
    border-radius: 8px;
    background: #fafbfd;
}

.add-cart-product-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.add-cart-category {
    display: inline-block;
    margin: 1px 0 8px;
    color: #3679b9;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .45px;
    text-transform: uppercase;
}

.add-cart-product-name {
    display: block;
    margin-bottom: 8px;
    color: #203550;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.5;
    text-decoration: none;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.add-cart-product-name:hover {
    color: #2b75bd;
}

.add-cart-sku,
.add-cart-specs {
    margin: 0 0 6px;
    color: #858585;
    font-size: 13px;
    line-height: 1.6;
}

.add-cart-product-bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    margin-top: 16px;
}

.add-cart-quantity {
    display: inline-flex;
    align-items: center;
    height: 34px;
    overflow: hidden;
    border: 1px solid #dce3ed;
    border-radius: 6px;
    background: #fff;
}

.add-cart-qty-btn {
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border: 0;
    background: #f6f8fb;
    color: #334965;
    font-size: 18px;
    cursor: pointer;
}

.add-cart-qty-btn:hover {
    background: #eaf3ff;
    color: #245fa8;
}

.add-cart-qty {
    width: 36px;
    height: 32px;
    padding: 0;
    border: 0;
    outline: none;
    background: #fff;
    color: #263449;
    font-size: 12px;
    text-align: center;
    appearance: textfield;
    -moz-appearance: textfield;
}

.add-cart-qty::-webkit-inner-spin-button,
.add-cart-qty::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.add-cart-remove {
    padding: 5px 0;
    border: 0;
    background: transparent;
    color: #8a96a7;
    font-size: 11px;
    cursor: pointer;
}

.add-cart-remove:hover {
    color: #d94040;
    text-decoration: underline;
}

.add-cart-product-price {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    padding-top: 4px;
    text-align: right;
}

.add-cart-line-total {
   color: #212121;
  font-size: 18px;
  font-weight: 500;
  white-space: nowrap;
}

.add-cart-unit-price {
    color: #595959;
    font-size: 12px;
    white-space: nowrap;
}

/* Benefits */

.add-cart-benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
    padding: 22px 25px;
    background: #fbfcfe;
    border-radius: 0 0 11px 11px;
}

.add-cart-benefit {
    display: flex;
    align-items: flex-start;
    gap: 9px;
}

.add-cart-benefit-icon {
    display: grid;
    flex: 0 0 29px;
    place-items: center;
    width: 29px;
    height: 29px;
    border-radius: 50%;
    background: #eaf4ff;
    color: #286cb4;
    font-size: 15px;
    font-weight: 700;
}

.add-cart-benefit strong {
   display: block;
  margin-bottom: 5px;
  color: #303030;
  font-size: 15px;
  font-weight: 500;
}

.add-cart-benefit p {
    margin: 0;
    color: #8591a2;
    font-size: 10px;
    line-height: 1.6;
}

/* Order summary */

.add-cart-summary {
    position: sticky;
    top: 20px;
    padding: 25px;
}

.add-cart-summary h2 {
    padding-bottom: 20px;
    border-bottom: 1px solid #edf0f5;
}

.add-cart-summary-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
    padding: 15px 0 0;
    color: #728096;
    font-size: 14px;
    line-height: 1.5;   
}

.add-cart-summary-item strong {
   color: #3d3d3d;
  font-size: 14px;
  font-weight: 500;
  text-align: right;
}

.add-cart-discount-row strong {
    color: #25865d;
}

.add-cart-tax-note {
    margin-top: 16px;
    padding: 12px;
    border-radius: 6px;
    background: #f5f8fc;
    color: #78879b;
    font-size: 10px;
    line-height: 1.7;
}

.add-cart-coupon {
    margin-top: 22px;
    padding-bottom: 21px;
    border-bottom: 1px solid #edf0f5;
}

.add-cart-coupon label {
    display: block;
    margin-bottom: 10px;
    color: #34465f;
   font-size: 13px;
  font-weight: 500;
}

.add-cart-coupon-field {
    display: flex;
    gap: 7px;
}

.add-cart-coupon-field input {
    width: 100%;
    min-width: 0;
    height: 39px;
    padding: 0 10px;
    border: 1px solid #dce4ef;
    border-radius: 6px;
    outline: none;
    color: #293b53;
    font-size: 11px;
}

.add-cart-coupon-field input:focus {
    border-color: #398bd0;
    box-shadow: 0 0 0 3px rgba(57, 139, 208, .1);
}

.add-cart-coupon-field button {
    flex: 0 0 auto;
    padding: 0 13px;
    border: 1px solid #cbd8e9;
    border-radius: 6px;
    background: #f5f8fc;
    color: #2b5ba5;
    font-size: 13px;
  font-weight: 500;
    cursor: pointer;
}

.add-cart-coupon-field button:hover {
    background: #e8f2ff;
}

#addCartCouponMessage {
    min-height: 0;
    margin: 7px 0 0;
    font-size: 11px;
    line-height: 1.5;
}

#addCartCouponMessage:empty {
    display: none;
}

#addCartCouponMessage.success {
    color: #208458;
}

#addCartCouponMessage.error {
    color: #cf3e3e;
}

.add-cart-coupon small {
    display: block;
    margin-top: 8px;
    color: #929cad;
    font-size: 10px;
}

.add-cart-total {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
    padding: 21px 0;
}

.add-cart-total > span {
   color: #263b56;
  font-size: 16px;
  font-weight: 500;
}

.add-cart-total > div {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 5px;
}

.add-cart-total strong {
   color: #f15131;
  font-size: 25px;
  font-weight: 600;
  overflow-wrap: anywhere;
  text-align: right;
   font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.add-cart-total small {
    max-width: 170px;
    color: #8b96a7;
    font-size: 9px;
    line-height: 1.5;
    text-align: right;
}

.add-cart-checkout-btn,
.add-cart-primary-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
   min-height: 40px;
  padding: 8px 15px;
  border: 0;
  border-radius: 4px;
    background: linear-gradient(267deg, #2daae2 0%, #2b55a3 100%);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: filter .2s ease;
}

.add-cart-checkout-btn:hover,
.add-cart-primary-btn:hover {
    filter: brightness(1.08);
}

.add-cart-checkout-btn:disabled {
    opacity: .55;
    cursor: not-allowed;
}

.add-cart-continue-bottom {
    display: block;
    margin-top: 16px;
    color: #376ca9;
    font-size: 13px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
}

.add-cart-continue-bottom:hover {
    text-decoration: underline;
}

.add-cart-payment-note {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 7px;
    margin-top: 23px;
    padding-top: 17px;
    border-top: 1px solid #edf0f5;
    color: #7f8c9e;
    font-size: 12px;
}

.add-cart-help {
    margin-top: 20px;
    padding: 15px;
    border: 1px solid #e7eef7;
    border-radius: 7px;
    background: #f8fbff;
    text-align: center;
}

.add-cart-help p {
    margin: 0 0 7px;
    color: #687b93;
    font-size: 12px;
}

.add-cart-help a {
    color: #2b65ad;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
}

.add-cart-help a:hover {
    text-decoration: underline;
}

/* Empty cart */

.add-cart-empty {
    padding: 55px 20px;
    text-align: center;
}

.add-cart-empty[hidden],
.add-cart-discount-row[hidden] {
    display: none !important;
}

.add-cart-empty-icon {
    margin-bottom: 14px;
    font-size: 40px;
}

.add-cart-empty h3 {
    margin: 0 0 9px;
    color: #243852;
    font-size: 20px;
}

.add-cart-empty p {
    margin: 0 0 22px;
    color: #7e8ba0;
    font-size: 13px;
}

.add-cart-empty .add-cart-primary-btn {
    max-width: 200px;
    margin: 0 auto;
}

/* Accessibility */

.labozon-add_to_cart-section button:focus-visible,
.labozon-add_to_cart-section a:focus-visible,
.labozon-add_to_cart-section input:focus-visible {
    outline: 2px solid #2daae2;
    outline-offset: 3px;
}

/* Responsive */

@media (max-width: 1050px) {
    .add-cart-layout {
        grid-template-columns: minmax(0, 1fr) 310px;
        gap: 18px;
    }

    .add-cart-product {
        grid-template-columns: 100px minmax(0, 1fr) 90px;
        gap: 14px;
        padding: 20px;
    }

    .add-cart-product-image {
        width: 100px;
        height: 110px;
    }

    .add-cart-summary {
        padding: 20px;
    }
}

@media (max-width: 800px) {
    .labozon-add_to_cart-section {
        padding: 35px 15px 50px;
    }

    .add-cart-layout {
        grid-template-columns: 1fr;
    }

    .add-cart-summary {
        position: static;
    }

    .add-cart-summary h2 {
        font-size: 19px;
    }

    .add-cart-benefits {
        gap: 12px;
        padding: 20px;
    }
}

@media (max-width: 520px) {
    .add-cart-page-header {
        align-items: center;
    flex-direction: column;
    gap: 17px;
    text-align: center;
    justify-content: center;
    }

    .add-cart-page-header h1 {
        font-size: 28px;
    }

    .add-cart-progress {
        justify-content: space-between;
        gap: 7px;
        padding: 13px 9px;
    }

    .add-cart-step {
        flex-direction: column;
        gap: 5px;
        font-size: 9px;
        text-align: center;
    }

    .add-cart-progress-line {
        flex: 1;
        width: auto;
    }

    .add-cart-products-header {
        padding: 18px 15px;
    }

    .add-cart-products-header h2 {
        font-size: 15px;
    }

    .add-cart-product {
        grid-template-columns: 80px minmax(0, 1fr);
        gap: 12px;
        padding: 18px 14px;
    }

    .add-cart-product-image {
        width: 80px;
        height: 90px;
    }

    .add-cart-product-info {
        min-width: 0;
    }

    .add-cart-product-name {
        font-size: 18px;
    }
    .add-cart-sku, .add-cart-specs {
    font-size: 12px;
    }
    .add-cart-product-price {
        grid-column: 2;
        align-items: flex-start;
        padding-top: 0;
        text-align: left;
    }

    .add-cart-product-bottom {
        gap: 12px;
        margin-top: 12px;
    }

    .add-cart-benefits {
        grid-template-columns: 1fr;
        gap: 16px;
        padding: 20px 16px;
    }

    .add-cart-benefit strong {
        font-size: 11px;
    }

    .add-cart-benefit p {
        font-size: 11px;
    }

    .add-cart-summary {
        padding: 20px 16px;
    }

    .add-cart-total strong {
        font-size: 21px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .labozon-add_to_cart-section *,
    .labozon-add_to_cart-section *::before,
    .labozon-add_to_cart-section *::after {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}
/* ------------------------------Checkout */

.labozon-checkout-section {
    padding: 45px 0;
}

.checkout-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

.labozon-checkout-section [hidden] {
    display: none !important;
}

/* Header */

.checkout-page-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 30px;
}

.checkout-page-header h1 {
   font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}

.checkout-back-cart {
    display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 6px 17px;
  border: 1px solid rgba(240, 74, 49, 1);
  border-radius: 4px;
  color: #fff;
  background: #FDA731;
  background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  transition: background .2s ease, border-color .2s ease;
}


/* Progress */

.checkout-progress {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 12px;
    padding: 17px;
    border: 1px solid #e5ebf3;
    border-radius: 9px;
    background: #fff;
}

.checkout-progress-step {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #8490a2;
  font-size: 16px;
  font-weight: 600;
  white-space: nowrap;
  font-family: "Sofia Sans Semi Condensed", sans-serif
}

.checkout-progress-number {
   display: grid;
  place-items: center;
  width: 45px;
  height: 28px;
  border: 1px solid #d9e1ed;
  border-radius: 2px;
  background: #fff;
  font-size: 12px;
}

.checkout-progress-step.active {
    color: #2b65ad;
}

.checkout-progress-step.active .checkout-progress-number,
.checkout-progress-step.completed .checkout-progress-number {
    border-color: transparent;
    background: linear-gradient(267deg, #2daae2 0%, #2b55a3 100%);
    color: #fff;
}

.checkout-progress-line {
    width: 70px;
    height: 1px;
    background: #dfe6ef;
}

/* Main layout */

.checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 450px;
    align-items: start;
    gap: 12px;
}

.checkout-form-column {
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-width: 0;
}

.checkout-card,
.checkout-summary {
    min-width: 0;
    border: 1px solid #e5ebf3;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 5px 22px rgba(25, 50, 90, .035);
}

/* Section headings */

.checkout-card {
    padding: 26px;
}

.checkout-card-heading {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-bottom: 25px;
}

.checkout-section-number {
   display: grid;
    flex: 0 0 37px;
    place-items: center;
    width: 37px;
    height: 37px;
    border-radius: 2px;
    background: #edf5ff;
    color: #2d69ae;
    font-size: 15px;
    font-weight: 500;
}

.checkout-card-heading h2 {
    margin: 0;
  color: #1d304b;
  font-size: 20px;
  font-weight: 600;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.checkout-card-heading p {
    margin: 0;
    color: #8390a2;
    font-size: 12px;
    line-height: 1.6;
}

/* Form fields */

.checkout-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 19px 17px;
}

.checkout-field {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.checkout-field-full {
    grid-column: 1 / -1;
}

.checkout-field label,
.checkout-summary-coupon label {
    display: block;
  margin-bottom: 8px;
  color: #505050;
  font-size: 14px;
  font-weight: 500;
}

.checkout-field label span {
    color: #e34c4c;
}

.checkout-field input,
.checkout-field select,
.checkout-field textarea {
    display: block;
    width: 100%;
    min-width: 0;
    min-height: 40px;
    padding: 6px 12px;
    border: 1px solid #dce4ee;
    border-radius: 4px;
    outline: none;
    background: #fff;
    color: #28394f;
    font-family: inherit;
    font-size: 12px;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.checkout-field textarea {
    min-height: 95px;
    resize: vertical;
    line-height: 1.6;
}

.checkout-field input::placeholder,
.checkout-field textarea::placeholder {
    color: #a1aaba;
}

.checkout-field input:focus,
.checkout-field select:focus,
.checkout-field textarea:focus {
    border-color: #398bd0;
    box-shadow: 0 0 0 3px rgba(57, 139, 208, .09);
}

.checkout-field input.invalid,
.checkout-field select.invalid,
.checkout-field textarea.invalid {
    border-color: #d94c4c;
    background: #fffafa;
}

.checkout-error {
    display: block;
    min-height: 0;
    margin-top: 5px;
    color: #cf3c3c;
    font-size: 10px;
    line-height: 1.5;
}

.checkout-error:empty {
    display: none;
}

/* Checkboxes */

.checkout-checkbox,
.checkout-terms-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #596a80;
    font-size: 12px;
    line-height: 1.7;
    cursor: pointer;
}

.checkout-checkbox {
    margin-top: 22px;
}

.checkout-checkbox input,
.checkout-terms-checkbox input {
    flex: 0 0 15px;
    width: 15px;
    height: 15px;
    margin: 3px 0 0;
    accent-color: #2b65ad;
    cursor: pointer;
}

.checkout-billing-fields {
    margin-top: 24px;
    padding-top: 22px;
    border-top: 1px solid #edf0f5;
}

.checkout-billing-fields h3 {
    margin: 0 0 20px;
    color: #263a54;
    font-size: 14px;
}

/* Delivery and payment options */

.checkout-option-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.checkout-option {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    border: 1px solid #dfe6ef;
    border-radius: 4px;
    background: #fff;
    cursor: pointer;
    transition: border-color .2s ease, background .2s ease;
}

.checkout-option:has(input:checked) {
    border-color: #4386c5;
    background: #f5f9ff;
}

.checkout-option > input {
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: #2b65ad;
}

.checkout-option-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}

.checkout-option-content strong {
  color: #484848;
  font-size: 14px;
  font-weight: 500;
}

.checkout-option-content small {
    color: #8290a2;
    font-size: 10px;
    line-height: 1.6;
}

.checkout-option-price {
    color: #363636;
    font-size: 13px;
    font-weight: 500;
    text-align: right;
}

.checkout-payment-symbol {
    display: grid;
    flex: 0 0 33px;
    place-items: center;
    width: 33px;
    height: 33px;
    border-radius: 6px;
    background: #edf5ff;
    color: #2b65ad;
    font-size: 19px;
}

.checkout-payment-note {
    margin: 18px 0 0;
    padding: 12px;
    border-radius: 6px;
    background: #f6f8fb;
    color: #7a8799;
    font-size: 11px;
    line-height: 1.8;
}

.checkout-order-notes {
    margin-top: 24px;
}

/* Order summary */

.checkout-summary {
    position: sticky;
    top: 20px;
    padding: 25px;
}

.checkout-summary-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 20px;
    border-bottom: 1px solid #edf0f5;
}

.checkout-summary-heading h2 {
   margin: 0;
  color: #1d304b;
  font-size: 20px;
  font-weight: 600;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.checkout-summary-heading a {
    color: #2d6cb2;
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}

.checkout-summary-heading a:hover {
    text-decoration: underline;
}

.checkout-summary-products {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 22px 0;
    border-bottom: 1px solid #edf0f5;
}

.checkout-summary-product {
    display: flex;
    align-items: flex-start;
    gap: 25px;
    min-width: 0;
}

.checkout-summary-image {
    position: relative;
    display: grid;
    flex: 0 0 68px;
    place-items: center;
    width: 68px;
    height: 68px;
    padding: 5px;
    border: 1px solid #e9edf4;
    border-radius: 7px;
    background: #fafbfd;
}

.checkout-summary-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.checkout-product-quantity {
    position: absolute;
    top: -7px;
    right: -7px;
    display: grid;
    place-items: center;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    border-radius: 20px;
    background: #f56c31;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
}

.checkout-summary-product-info {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
    padding-top: 2px;
}

.checkout-summary-product-info strong {
    color: #30445e;
    font-size: 18px;
    line-height: 1.5;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
    font-weight: 700;
}

.checkout-summary-product-info small {
    color: #8b96a7;
    font-size: 12px;
}

.checkout-summary-line-price {
   margin-top: 3px;
  color: #f15431;
  font-size: 18px;
  font-weight: 600;
  font-family: "Sofia Sans Semi Condensed", sans-serif
}

/* Coupon */

.checkout-summary-coupon {
    padding: 20px 0;
    border-bottom: 1px solid #edf0f5;
}

.checkout-coupon-row {
    display: flex;
    gap: 7px;
}

.checkout-coupon-row input {
    flex: 1;
    width: 100%;
    min-width: 0;
    height: 39px;
    padding: 0 10px;
    border: 1px solid #dce4ee;
    border-radius: 6px;
    outline: none;
    font-family: inherit;
    font-size: 11px;
}

.checkout-coupon-row input:focus {
    border-color: #398bd0;
}

.checkout-coupon-row button {
    padding: 0 13px;
    border: 1px solid #d0dceb;
    border-radius: 6px;
    background: #f4f8fd;
    color: #2b5ba5;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
}

.checkout-coupon-row button:hover {
    background: #e7f1ff;
}

.checkout-summary-coupon > small {
    display: block;
    margin-top: 8px;
    color: #919cad;
    font-size: 10px;
}

#checkoutCouponMessage {
    margin: 7px 0 0;
    font-size: 10px;
    line-height: 1.5;
}

#checkoutCouponMessage:empty {
    display: none;
}

#checkoutCouponMessage.success {
    color: #21855b;
}

#checkoutCouponMessage.error {
    color: #d23f3f;
}

/* Totals */

.checkout-price-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
    padding-top: 16px;
    color: #758297;
    font-size: 12px;
}

.checkout-price-row strong {
    color: #3d3d3d;
  font-size: 14px;
  font-weight: 500;
  text-align: right;
}

.checkout-grand-total {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-top: 20px;
    padding: 20px 0;
    border-top: 1px solid #e8edf4;
}

.checkout-grand-total > div {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.checkout-grand-total > div strong {
    color: #263b56;
  font-size: 16px;
  font-weight: 500;
}

.checkout-grand-total small {
    max-width: 235px;
  color: #8b96a7;
  font-size: 11px;
  line-height: 1.6;
}

.checkout-grand-total > strong {
   color: #f15131;
  font-size: 25px;
  font-weight: 600;
  overflow-wrap: anywhere;
  text-align: right;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.checkout-terms-checkbox {
    margin: 0 0 6px;
    font-size: 13px;
}

.checkout-terms-checkbox a {
    color: #2b65ad;
    font-weight: 600;
    text-decoration: none;
}

.checkout-terms-checkbox a:hover {
    text-decoration: underline;
}

.checkout-terms-error {
    display: block;
    margin-bottom: 20px;
    color: #cf3c3c;
    font-size: 10px;
    line-height: 1.5;
}

.checkout-place-order-btn {
    display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 40px;
  padding: 8px 15px;
  border: 0;
  border-radius: 4px;
  background: linear-gradient(267deg, #2daae2 0%, #2b55a3 100%);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: filter .2s ease;

}

.checkout-place-order-btn:hover {
    filter: brightness(1.08);
}

.checkout-place-order-btn:disabled {
    opacity: .6;
    cursor: not-allowed;
}

.checkout-secure-note {
    margin: 15px 0 0;
    color: #7c899b;
    font-size: 10px;
    line-height: 1.7;
    text-align: center;
}

.checkout-support-box {
    margin-top: 22px;
    padding: 16px;
    border: 1px solid #e5edf7;
    border-radius: 7px;
    background: #f8fbff;
}

.checkout-support-box strong {
    color: #344960;
    font-size: 16px;
}

.checkout-support-box p {
    margin: 7px 0;
    color: #7c8ba0;
    font-size: 10px;
    line-height: 1.7;
}

.checkout-support-box a {
    color: #2b65ad;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
}

.checkout-support-box a:hover {
    text-decoration: underline;
}

/* Form feedback */

.checkout-notice {
    margin-bottom: 22px;
    padding: 15px 18px;
    border: 1px solid #b9e5ce;
    border-radius: 8px;
    background: #f0fbf5;
    color: #206b48;
    font-size: 13px;
    line-height: 1.7;
}

.checkout-notice.error {
    border-color: #f0c5c5;
    background: #fff5f5;
    color: #a92f2f;
}

/* Keyboard focus */

.labozon-checkout-section a:focus-visible,
.labozon-checkout-section button:focus-visible,
.labozon-checkout-section input:focus-visible,
.labozon-checkout-section select:focus-visible,
.labozon-checkout-section textarea:focus-visible {
    outline: 2px solid #2daae2;
    outline-offset: 3px;
}

/* Responsive */

@media (max-width: 1050px) {
    .checkout-layout {
        grid-template-columns: minmax(0, 1fr) 330px;
        gap: 18px;
    }

    .checkout-card {
        padding: 22px;
    }

    .checkout-summary {
        padding: 20px;
    }
}

@media (max-width: 820px) {
    .labozon-checkout-section {
        padding: 35px 15px 50px;
    }

    .checkout-layout {
        grid-template-columns: 1fr;
    }

    .checkout-summary {
        position: static;
    }

    .checkout-summary-products {
        gap: 20px;
    }
}

@media (max-width: 520px) {
    .checkout-page-header {
        align-items: center;
        flex-direction: column;
        gap: 17px;
    }

    .checkout-page-header h1 {
        font-size: 28px;
    }

    .checkout-progress {
        justify-content: space-between;
        gap: 7px;
        padding: 13px 9px;
    }

    .checkout-progress-step {
        flex-direction: column;
        gap: 5px;
        font-size: 9px;
        text-align: center;
    }

    .checkout-progress-line {
        flex: 1;
        width: auto;
    }

    .checkout-card {
        padding: 19px 15px;
    }

    .checkout-card-heading {
        gap: 10px;
        margin-bottom: 21px;
    }

    .checkout-section-number {
        flex-basis: 33px;
        width: 33px;
        height: 33px;
    }

    .checkout-card-heading h2 {
        font-size: 16px;
    }

    .checkout-form-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .checkout-field-full {
        grid-column: auto;
    }

    .checkout-option {
        align-items: flex-start;
        gap: 9px;
        padding: 13px 10px;
    }

    .checkout-option-price {
        max-width: 80px;
        font-size: 9px;
    }

    .checkout-option-content small {
        font-size: 9px;
    }

    .checkout-summary {
        padding: 20px 15px;
    }

    .checkout-grand-total > strong {
        font-size: 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .labozon-checkout-section *,
    .labozon-checkout-section *::before,
    .labozon-checkout-section *::after {
        transition: none !important;
    }
}
/* -------------------------Order details */

.labozon-order_details-section {
    padding: 45px 0;
}

.order_details-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

/* Header */

.order-details-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
}

.order-details-eyebrow,
.order-card-eyebrow {
    display: inline-block;
    margin-bottom: 9px;
    color: #3477b9;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.order-details-header h1 {
   font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}

.order-details-header p {
    margin: 0;
    color: #7c899c;
    font-size: 13px;
    line-height: 1.7;
}

.order-details-back-link {
    display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 6px 17px;
  border: 1px solid rgba(240, 74, 49, 1);
  border-radius: 4px;
  color: #fff;
  background: #FDA731;
  background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  transition: background .2s ease, border-color .2s ease;
}

.order-details-back-link:hover {
    background: #edf5ff;
}

/* Success banner */

.order-details-success-banner {
   display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 12px;
  padding: 23px 25px;
  border: 1px solid #d8e9f9;
  border-radius: 8px;
    background: linear-gradient(110deg, #f0f8ff, #fff);
}

.order-success-icon {
    display: grid;
    flex: 0 0 44px;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #e0f2e9;
    color: #21865a;
    font-size: 21px;
    font-weight: 800;
}

.order-success-message {
    flex: 1;
    min-width: 0;
}

.order-success-message h2 {
    margin: 0 0 6px;
  color: #171717;
  font-size: 21px;
  font-weight: 600;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.order-success-message p {
    margin: 0;
    color: #74849a;
    font-size: 13px;
    line-height: 1.7;
}

.order-status-badge,
.order-payment-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 11px;
    border: 1px solid #f2dfaa;
    border-radius: 2px;
    background: #fff8e6;
    color: #946d13;
    font-size: 10px;
    font-weight: 600;
    white-space: nowrap;
}

/* Top order information */

.order-details-top-card {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    align-items: start;
    margin-bottom: 12px;
    padding: 24px;
    border: 1px solid #e5ebf3;
    border-radius: 8px;
    background: #fff;
}

.order-meta-item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px 9px;
    min-width: 0;
}

.order-meta-item > span {
    width: 100%;
    color: #8390a2;
    font-size: 12px;
}

.order-meta-item > strong {
    color: #283b55;
    font-size: 15px;
    font-weight: 500;
    overflow-wrap: anywhere;
}

.order-copy-btn {
    padding: 3px 7px;
    border: 1px solid #dce6f2;
    border-radius: 4px;
    background: #f5f9ff;
    color: #2b65ad;
    font-size: 10px;
    cursor: pointer;
}

.order-copy-btn:hover {
    background: #e6f1ff;
}

.order-meta-item .order-payment-pending {
    color: #a77513;
}

.order-meta-actions {
    display: flex;
    flex-wrap: wrap;
    grid-column: 1 / -1;
    gap: 10px;
    padding-top: 19px;
    border-top: 1px solid #edf0f5;
    justify-content: center;
}

.order-outline-btn,
.order-primary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 30px;
    padding: 5px 15px;
    border-radius: 2px;
    font-size: 11px;
    font-weight: 750;
    text-decoration: none;
    cursor: pointer;
}

.order-outline-btn {
    border: 1px solid #dce4ef;
    background: #fff;
    color: #345574;
}

.order-outline-btn:hover {
    background: #f5f8fc;
}

.order-primary-btn {
    border: 0;
    background: linear-gradient(267deg, #2daae2 0%, #2b55a3 100%);
    color: #fff;
}

.order-primary-btn:hover {
    filter: brightness(1.07);
}

/* General cards */

.order-details-card {
    min-width: 0;
    padding: 25px;
    border: 1px solid #e5ebf3;  
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 5px 22px rgba(25, 50, 90, .03);
}

.order-card-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 23px;
}

.order-card-heading h2 {
    margin: 0;
    color: #1e1e1e;
  font-size: 25px;
  font-weight: 500;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.order-card-heading p {
    margin: 7px 0 0;
    color: #8390a2;
    font-size: 13px;
    line-height: 1.6;
}

.order-card-eyebrow {
    margin-bottom: 7px;
    font-size: 9px;
}

/* Tracking */

.order-tracking-card {
    margin-bottom: 12px;
}

.order-tracking-reference {
    color: #8190a3;
    font-size: 15px;
    white-space: nowrap;
}

.order-tracking-reference strong {
    color: #2b5ba5;
    font-weight: 500;
}   

.order-tracking-timeline {
    display: flex;
    align-items: flex-start;
    padding: 14px 5px 26px;
}

.order-timeline-step {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: center;
    width: 125px;
    gap: 11px;
    text-align: center;
}

.order-timeline-marker {
    display: grid;
    place-items: center;
    width: 39px;
    height: 39px;
    border: 2px solid #dfe6ef;
    border-radius: 2px;
    background: #fff;
    color: #8794a6;
    font-size: 12px;
    font-weight: 750;
}

.order-timeline-step.completed .order-timeline-marker {
    border-color: #2b8b65;
    background: #e6f7ef;
    color: #21865a;
}

.order-timeline-step.active .order-timeline-marker {
    border-color: #2b65ad;
    background: linear-gradient(267deg, #2daae2 0%, #2b55a3 100%);
    color: #fff;
    box-shadow: 0 0 0 5px #eaf4ff;
}

.order-timeline-text {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.order-timeline-text strong {
    color: #34465e;
    font-size: 15px;
    font-weight: 500;
}

.order-timeline-step.active .order-timeline-text strong {
    color: #2b65ad;
}

.order-timeline-text span {
    color: #8b97a8;
    font-size: 12px;
    line-height: 1.5;
}

.order-timeline-connector {
    flex: 1;
    min-width: 12px;
    height: 2px;
    margin-top: 19px;
    background: #e2e8f0;
}

.order-timeline-connector.completed {
    background: #65b995;
}

.order-tracking-footer {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
    align-items: center;
    gap: 20px;
    padding-top: 20px;
    border-top: 1px solid #edf0f5;
}

.order-tracking-footer > div {
    display: flex;
    flex-direction: column;
    gap: 7px;
    min-width: 0;
}

.order-tracking-footer-label {
    color: #8491a3;
    font-size: 12px;    
}

.order-tracking-footer > div strong {
    color: #2e2e2e;
  font-size: 15px;
  overflow-wrap: anywhere;
  font-weight: 500;
}

.order-track-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #2b65ad;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    white-space: nowrap;
}

.order-track-link:hover {
    text-decoration: underline;
}

/* Main columns */

.order-details-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 450px;
    align-items: start;
    gap: 12px;
}

.order-details-main {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0;
}

.order-details-sidebar {
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-width: 0;
}

.order-products-heading {
    margin-bottom: 20px;
}

.order-items-count {
    padding: 7px 10px;
    border-radius: 5px;
    background: #eef5ff;
    color: #2b65ad;
    font-size: 15px;
    font-weight: 500;
    white-space: nowrap;
}

/* Products table */

.order-products-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.order-products-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
}

.order-products-table thead {
    background: #f7f9fc;
}

.order-products-table th {
    padding: 13px 12px;
    color: #7b899d;
    font-size: 15px;
    font-weight: 400;
    white-space: nowrap;
}

.order-products-table th:first-child {
    padding-left: 14px;
}

.order-products-table td {
    padding: 17px 0;
    border-bottom: 1px solid #edf0f5;
    color: #42546b;
    font-size: 15px;
    vertical-align: middle;
}

.order-products-table tbody tr:last-child td {
    border-bottom: 0;
}

.order-product-info {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 245px;
}

.order-product-image {
    display: grid;
    flex: 0 0 72px;
    place-items: center;
    width: 72px;
    height: 72px;
    padding: 5px;
    overflow: hidden;
    border: 1px solid #e9edf4;
    border-radius: 7px;
    background: #fafbfd;
}

.order-product-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.order-product-info > div {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
}

.order-product-name {
    display: block;
  color: #203550;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.order-product-name:hover {
    color: #2b75bd;
}

.order-product-sku,
.order-product-category {
    display: block;
    color: #8a96a7;
    font-size: 13px;
    line-height: 1.5;
}

.order-unit-price,
.order-product-quantity {
    white-space: nowrap;
}

.order-product-total {
    color: #273b55 !important;
    font-weight: 600;
    white-space: nowrap;
}

.order-products-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-top: 20px;
    padding-top: 17px;
    border-top: 1px solid #edf0f5;
}

.order-products-bottom > span {
    color: #8995a6;
    font-size: 13px;
}

.order-continue-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #2b65ad;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
}

.order-continue-link:hover {
    text-decoration: underline;
}

/* Address cards */

.order-address-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.order-address-grid .order-details-card {
    padding: 22px;
}

.order-address-card .order-card-heading {
    justify-content: flex-start;
    margin-bottom: 20px;
}

.order-address-icon {
    display: grid;
    flex: 0 0 38px;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 7px;
    background: #edf5ff;
    color: #2b65ad;
    font-size: 20px;
}

.order-address-card .order-card-heading h2 {
    font-size: 25px;
}

.order-address-card .order-card-heading p {
    margin-top: 5px;
}

.order-address-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #718096;
    font-size: 13px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.order-address-content strong {
    margin-bottom: 2px;
  color: #363636;
  font-size: 16px;
  font-weight: 600;
}

/* Payment details */

.order-payment-card .order-card-heading {
    align-items: flex-start;
}

.order-payment-details {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.order-payment-details > div {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
}

.order-payment-details span {
    color: #8793a4;
    font-size: 13px;
}

.order-payment-details strong {
    color: #2b405a;
    font-size: 15px;
    overflow-wrap: anywhere;
    font-weight: 500;
}

.order-payment-message {
    margin: 20px 0 0;
    padding: 13px;
    border-radius: 6px;
    background: #f7f9fc;
    color: #77869b;
    font-size: 10px;
    line-height: 1.8;
}

/* Price summary */

.order-price-card .order-card-heading {
    margin-bottom: 22px;
}

.order-price-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 0 0;
    color: #78869a;
    font-size: 13px;
}

.order-price-row strong {
   color: #30445d;
  font-size: 14px;
  text-align: right;
  font-weight: 500;
}

.order-grand-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 20px;
    padding: 20px 0;
    border-top: 1px solid #e7edf4;
}

.order-grand-total span {
   color: #263b56;
  font-size: 16px;
  font-weight: 500;
}

.order-grand-total strong {
    color: #f15131;
  font-size: 25px;
  font-weight: 600;
  overflow-wrap: anywhere;
  text-align: right;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.order-price-note {
    margin: -3px 0 20px;
    color: #8a96a7;
    font-size: 9px;
    line-height: 1.7;
}

.order-download-btn,
.order-secondary-btn {
    display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 40px;
  padding: 8px 15px;
  border: 0;
  border-radius: 4px;
  background: linear-gradient(267deg, #2daae2 0%, #2b55a3 100%);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: filter .2s ease;

}

.order-download-btn {
    border: 0;
    background: linear-gradient(267deg, #2daae2 0%, #2b55a3 100%);
    color: #fff;
}

.order-download-btn:hover {
    filter: brightness(1.07);
}

.order-secondary-btn {
    margin-top: 10px;
    border: 1px solid #dce5f0;
    background: #fff;
    color: #2b5ba5;
}

.order-secondary-btn:hover {
    background: #f1f6fd;
}

/* Focus states */

.labozon-order_details-section a:focus-visible,
.labozon-order_details-section button:focus-visible {
    outline: 2px solid #2daae2;
    outline-offset: 3px;
}

/* Responsive */

@media (max-width: 1050px) {
    .order-details-layout {
        grid-template-columns: minmax(0, 1fr) 290px;
        gap: 18px;
    }

    .order-details-card {
        padding: 20px;
    }

    .order-details-top-card {
        gap: 20px 15px;
        padding: 20px;
    }

    .order-address-grid {
        gap: 16px;
    }

    .order-tracking-footer {
        gap: 14px;
    }

    .order-timeline-step {
        width: 105px;
    }
}

@media (max-width: 820px) {
    .labozon-order_details-section {
        padding: 35px 15px 50px;
    }

    .order-details-layout {
        grid-template-columns: 1fr;
    }

    .order-details-sidebar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;
    }

    .order-details-top-card {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .order-timeline-step {
        width: 115px;
    }
}

@media (max-width: 560px) {
    .order-details-header {
        align-items: center;
        flex-direction: column;
        gap: 17px;
    }

    .order-details-header h1 {
        font-size: 28px;
    }

    .order-details-success-banner {
        flex-wrap: wrap;
        gap: 12px;
        padding: 18px;
    }

    .order-success-icon {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
    }

    .order-success-message {
        flex-basis: calc(100% - 55px);
    }

    .order-success-message h2 {
        font-size: 15px;
    }

    .order-status-badge {
        margin-left: 50px;
    }

    .order-details-top-card {
        gap: 20px 12px;
        padding: 18px;
    }

    .order-meta-actions {
        flex-direction: column;
    }

    .order-outline-btn,
    .order-primary-btn {
        width: 100%;
    }

    .order-details-card {
        padding: 18px 14px;
    }

    .order-card-heading h2 {
        font-size: 18px;
    }
    .order-product-name {
        font-size: 16px;
    }
    .order-product-sku, .order-product-category {
    font-size: 12px;
    }
    .order-tracking-reference {
        display: none;
    }
    .order-address-card .order-card-heading h2 {
        font-size: 18px;
    }
    .order-tracking-timeline {
        align-items: stretch;
        flex-direction: column;
        gap: 0;
        padding: 0 0 20px;
    }

    .order-timeline-step {
        display: grid;
        grid-template-columns: 36px minmax(0, 1fr);
        align-items: center;
        width: 100%;
        gap: 12px;
        text-align: left;
    }

    .order-timeline-marker {
        width: 32px;
        height: 32px;
        font-size: 11px;
    }

    .order-timeline-text {
        gap: 4px;
    }

    .order-timeline-text strong {
        font-size: 11px;
    }

    .order-timeline-text span {
        font-size: 10px;
    }

    .order-timeline-connector {
        flex: 0 0 18px;
        width: 2px;
        min-width: 2px;
        height: 18px;
        margin: 0 0 0 15px;
    }

    .order-tracking-footer {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .order-track-link {
        justify-self: start;
    }

    .order-address-grid {
        grid-template-columns: 1fr;
    }

    .order-payment-details {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .order-products-bottom {
        align-items: flex-start;
        flex-direction: column;
    }

    .order-details-sidebar {
        grid-template-columns: 1fr;
    }

    .order-products-table {
        min-width: 650px;
    }
}

@media print {
    body {
        background: #fff !important;
    }

    .labozon-order_details-section {
        padding: 0;
        background: #fff;
    }

    .order-details-header,
    .order-meta-actions,
    .order-track-link,
    .order-continue-link,
    .order-support-card,
    .order-download-btn,
    .order-secondary-btn,
    .order-copy-btn {
        display: none !important;
    }

    .order-details-card,
    .order-details-top-card,
    .order-details-success-banner {
        box-shadow: none;
        break-inside: avoid;
    }

    .order-details-layout {
        grid-template-columns: 1fr;
    }

    .order-details-sidebar {
        display: block;
    }

    .order-price-card {
        margin-top: 20px;
    }

    .order-products-table-wrap {
        overflow: visible;
    }

    .order-products-table {
        min-width: 0;
    }

    a {
        color: inherit !important;
        text-decoration: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .labozon-order_details-section * {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}
/* --------------------------Site Map */

.labozon-site_map-section {
    width: 100%;
    padding: 45px 0;
}

.site_map-container {
    max-width: 1380px;
    width: 100%;
    margin: 0 auto;
}

/* Header */

.site_map-header {
    max-width: 720px;
    margin: 0 auto 38px;
    text-align: center;
}

.site_map-header h2,
.site_map-header h1 {
   font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
}

/* Search */

.site_map-search {
    display: flex;
    max-width: 550px;
    margin: 25px auto 0;
    padding: 6px;
    gap: 10px;
    background: #fff;
    border: 1px solid #e2eaf3;
    border-radius: 4px;
    box-shadow: 0 8px 25px rgba(31, 63, 104, 0.06);
}

.site_map-search input {
    width: 100%;
    min-width: 0;
    padding: 6px 14px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #26364a;
    font-size: 14px;
}

.site_map-search input::placeholder {
    color: #9aa7b8;
}

.site_map-search button {
   flex-shrink: 0;
  padding: 4px 23px;
  border: 0;
  border-radius: 2px;
  background: #FDA731;
  background: linear-gradient(220deg, rgba(253, 167, 49, 1) 0%, rgba(240, 74, 49, 1) 100%);
  font-size: 14px;
  color: #fff;
  font-weight: 500;
    cursor: pointer;
    transition: filter 0.2s ease;
}

.site_map-search button:hover {
    filter: brightness(1.08);
}

.site_map-search-message {
    min-height: 18px;
    margin-top: 8px !important;
    font-size: 12px !important;
}

/* Main card */

.site_map-card {
    /* padding: 30px 34px;
    background: #fff;
    border: 1px solid #e2eaf3;
    border-radius: 18px;
    box-shadow: 0 12px 40px rgba(32, 65, 110, 0.06); */
}

.site_map-card-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 18px;
    padding-bottom: 24px;
    margin-bottom: 25px;
    border-bottom: 1px solid #edf1f7;
}

.site_map-card-heading h3 {
    margin: 0 0 7px;
    color: #1b2d49;
    font-size: 21px;
    font-weight: 750;
}

.site_map-card-heading p {
    margin: 0;
    color: #718096;
    font-size: 13px;
    line-height: 1.6;
}

.site_map-controls {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.site_map-controls button {
    padding: 9px 13px;
    border: 1px solid #dce6f2;
    border-radius: 7px;
    background: #fff;
    color: #2b55a3;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s ease, border-color 0.2s ease;
}

.site_map-controls button:hover {
    background: #eff7ff;
    border-color: #a8d4f2;
}

/* Tree reset */

.site_map-tree {
    width: 100%;
    overflow-x: auto;
    padding: 4px 0 12px;
}

.site_map-list,
.site_map-children {
    list-style: none;
    margin: 0;
    padding: 0;
}

.site_map-root {
    min-width: 280px;
}

.site_map-node {
    position: relative;
    padding: 0 0 0 30px;
}

/* Vertical connector */

.site_map-children {
    position: relative;
    margin-left: 13px;
    padding-left: 0;
    border-left: 1px solid #cbd9e9;
}

.site_map-children > .site_map-node::before {
    position: absolute;
    content: "";
    top: 22px;
    left: 0;
    width: 29px;
    height: 1px;
    background: #cbd9e9;
}

/* Remove the connector below the last item */

.site_map-children > .site_map-node:last-child::after {
    position: absolute;
    content: "";
    top: 23px;
    bottom: 0;
    left: -1px;
    width: 2px;
    background: #fff;
}

/* Node rows */

.site_map-node-row {
    position: relative;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    min-height: 44px;
    padding: 5px 12px 5px 0;
}

.site_map-node-icon {
    display: inline-flex;
    flex: 0 0 30px;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 8px;
    background: #edf6ff;
    color: #2b55a3;
    font-size: 17px;
    font-weight: 700;
}

.site_map-link {
    display: inline-block;
    padding: 4px 0;
    color: #45566d;
    font-size: 14px;
    line-height: 1.6;
    font-weight: 500;
    text-decoration: none;
    overflow-wrap: anywhere;
    transition: color 0.2s ease;
}

.site_map-link:hover {
    color: #2daae2;
}

.site_map-static-label {
    cursor: default;
}

.site_map-root-link {
    color: #fff;
    font-size: 16px;
    font-weight: 750;
}

/* Root node */

.site_map-root-node {
    padding-left: 0;
}

.site_map-root-node > .site_map-node-row {
    min-height: 62px;
    padding: 12px 18px;
    gap: 12px;
    border-radius: 11px;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
}

.site_map-root-node > .site_map-node-row .site_map-node-icon {
    background: rgba(255, 255, 255, 0.18);
    color: #fff;
}

.site_map-root-badge {
    margin-left: auto;
    padding: 5px 9px;
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 30px;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.3px;
}

/* First-level spacing */

.site_map-root-node > .site_map-children {
    margin-top: 16px;
    margin-left: 17px;
    padding-top: 2px;
}

/* Toggle button */

.site_map-toggle {
    display: inline-flex;
    flex: 0 0 22px;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    padding: 0;
    border: 1px solid #d9e4f1;
    border-radius: 2px;
    background: #fff;
    cursor: pointer;
    transition: background 0.2s ease, border-color 0.2s ease;
}

.site_map-toggle:hover {
    background: #edf6ff;
    border-color: #9ccbed;
}

.site_map-chevron {
    width: 7px;
    height: 7px;
    border-right: 1.7px solid #2b55a3;
    border-bottom: 1.7px solid #2b55a3;
    transform: rotate(45deg) translate(-1px, -1px);
    transition: transform 0.2s ease;
}

.site_map-toggle[aria-expanded="false"] .site_map-chevron {
    transform: rotate(-45deg);
}

/* Category count */

.site_map-count {
    margin-left: auto;
    padding: 5px 9px;
    border-radius: 20px;
    background: #f0f6fc;
    color: #627b98;
    font-size: 11px;
    font-weight: 650;
}

/* Highlight matches */

.site_map-node.site_map-match > .site_map-node-row {
    border-radius: 7px;
    background: #fff5d9;
}

.site_map-node.site_map-match > .site_map-node-row .site_map-link {
    color: #8b5700;
    font-weight: 750;
}

.site_map-node.site_map-hidden {
    display: none;
}

.site_map-children.site_map-collapsed {
    display: none;
}

/* No results */

.site_map-no-results {
    padding: 28px 15px;
    border-radius: 10px;
    background: #f7f9fc;
    color: #718096;
    text-align: center;
    font-size: 14px;
}

/* Footer */

.site_map-footer-note {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 24px;
    text-align: center;
}

.site_map-footer-dot {
    width: 8px;
    height: 8px;
    flex-shrink: 0;
    border-radius: 50%;
    background: #2daae2;
}

.site_map-footer-note p {
    margin: 0;
    color: #718096;
    font-size: 13px;
    line-height: 1.8;
}

.site_map-footer-note a {
    color: #2b55a3;
    font-weight: 700;
    text-decoration: none;
}

.site_map-footer-note a:hover {
    text-decoration: underline;
}

/* Focus accessibility */

.labozon-site_map-section a:focus-visible,
.labozon-site_map-section button:focus-visible,
.labozon-site_map-section input:focus-visible {
    outline: 3px solid rgba(45, 170, 226, 0.35);
    outline-offset: 3px;
}

/* Responsive */

@media (max-width: 768px) {
    .labozon-site_map-section {
        padding: 50px 14px;
    }

    .site_map-card {
        padding: 22px 17px;
        border-radius: 13px;
    }

    .site_map-card-heading {
        align-items: flex-start;
        flex-direction: column;
        margin-bottom: 18px;
        padding-bottom: 18px;
    }

    .site_map-controls {
        width: 100%;
    }

    .site_map-controls button {
        flex: 1;
    }

    .site_map-root-node > .site_map-row {
        flex-wrap: wrap;
    }

    .site_map-node {
        padding-left: 23px;
    }

    .site_map-children > .site_map-node::before {
        width: 22px;
    }

    .site_map-root-badge {
        display: none;
    }

    .site_map-count {
        margin-left: 32px;
    }

    .site_map-link {
        font-size: 13px;
    }
}

@media (max-width: 480px) {
    .site_map-header {
        margin-bottom: 25px;
    }

    .site_map-header h2,
.site_map-header h1 {
        font-size: 28px;    
    }

    .site_map-search {
        gap: 5px;
    }

    .site_map-search input {
        padding: 10px 8px;
        font-size: 12px;
    }

    .site_map-search button {
        padding: 10px 13px;
        font-size: 12px;
    }

    .site_map-card {
        padding: 17px 12px;
    }

    .site_map-node {
        padding-left: 17px;
    }

    .site_map-children {
        margin-left: 8px;
    }

    .site_map-children > .site_map-node::before {
        width: 16px;
    }

    .site_map-node-row {
        gap: 7px;
    }

    .site_map-node-icon {
        flex-basis: 25px;
        width: 25px;
        height: 25px;
        font-size: 14px;
    }

    .site_map-toggle {
        flex-basis: 20px;
        width: 20px;
        height: 20px;
    }

    .site_map-count {
        margin-left: 27px;
    }
}

/* Print */

@media print {
    .labozon-site_map-section {
        padding: 0;
        background: #fff;
    }

    .site_map-search,
    .site_map-controls,
    .site_map-search-message {
        display: none;
    }

    .site_map-card {
        padding: 10px;
        border: 0;
        box-shadow: none;
    }

    .site_map-children.site_map-collapsed {
        display: block !important;
    }

    .site_map-node.site_map-hidden {
        display: block !important;
    }
}
.smlhome{
    color: #f25731;
  font-weight: 600;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  font-size: 20px;
  padding: 2px;
  border: 1px solid #e1e1e1;
  padding: 0 12px;
  border-radius: 4px;
}
.smlcateg, .smlallcat, .smlblog, .smlabt, .smlcu, .smlql{
     color: #2a56a4;
  font-weight: 500;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  font-size: 18px;
  padding: 2px;
  border: 1px solid #e1e1e1;
  padding: 0 12px;
  border-radius: 4px;
}


.smlcategory {
      color: #2d2d2d;
  font-weight: 500;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  font-size: 16px;
  padding: 2px;
  border: 1px solid #e1e1e1;
  padding: 0 12px;
  border-radius: 4px;
}
.smlsubcategory{
        color: #777;
  font-weight: 500;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  font-size: 14px;
  padding: 2px;
  border: 1px solid #e1e1e1;
  padding: 0 12px;
  border-radius: 4px;
}
/* ------------------------Thank you */

.labozon-thank_you-section {
    width: 100%;
    padding: 45px 0;
}
.thank_you-container {
    max-width: 1380px;
    margin: 0 auto;
}

/* Success header */

.thank_you-success-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 22px;
}

.bi-check2-circle {
    position: relative;
    display: block;
    font-size: 40px;
    color: #f98e31;
}

.thank_you-eyebrow {
    display: block;
    margin-bottom: 12px;
    color: #2b55a3;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    text-align: center;
}

.labozon-thank_you-section h1 {
    font-size: 40px;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 auto;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
  text-transform: uppercase;
  text-align: center;
}

.thank_you-intro {
    max-width: 650px;
    margin: 20px auto 34px;
    color: #738196;
    font-size: 15px;
    line-height: 1.8;
    text-align: center;
}

/* Order status */

.thank_you-status-card {
    display: flex;
    align-items: center;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 20px;
    padding: 24px 28px;
    margin-bottom: 28px;
    background: #fff;
    border: 1px solid #e4eaf2;
    border-radius: 8px;
    box-shadow: 0 8px 28px rgba(28, 54, 91, 0.04);
}

.thank_you-status-info {
    display: flex;
    flex: 1 1 180px;
    flex-direction: column;
    gap: 9px;
    min-width: 0;
}

.thank_you-status-label {
   color: #1d304b;
  font-size: 15px;
  font-weight: 500;
}

.thank_you-status-info > strong {
    color: #1d304b;
    font-size: 15px;
     font-weight: 400;
}

.thank_you-order-number {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
}

.thank_you-order-number strong {
    color: #2b55a3;
    font-size: 14px;
    overflow-wrap: anywhere;
    font-weight: 400;
}

.thank_you-copy-btn {
    padding: 5px 9px;
    border: 0;
    border-radius: 5px;
    background: #fff;
    color: #f25631;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
}

.thank_you-copy-btn:hover {
    background: #edf5ff;
}

.thank_you-status-divider {
    width: 1px;
    align-self: stretch;
    min-height: 42px;
    background: #e4eaf2;
}

.thank_you-status-badge {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 7px;
    padding: 7px 11px;
    color: #215c9b;
    font-size: 14px;
    font-weight: 400;
}

.thank_you-status-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #2daae2;
}

/* Main layout */

.thank_you-content-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(270px, 0.9fr);
    align-items: start;
    gap: 24px;
}

.thank_you-main-content,
.thank_you-sidebar {
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-width: 0;
}

.thank_you-card {
    padding: 25px;
    background: #fff;
    border: 1px solid #e4eaf2;
    border-radius: 8px;
    box-shadow: 0 6px 22px rgba(28, 54, 91, 0.035);
}

.thank_you-card-heading {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 24px;
}

.thank_you-heading-icon {
    display: flex;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: #edf6ff;
    color: #2b55a3;
    font-size: 21px;
    font-weight: 700;
}

.thank_you-card-heading h2 {
    margin: 0 0 6px;
    color: #333434;
    font-size: 25px;
    line-height: 1.4;
    font-weight: 600;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.thank_you-card-heading p {
    margin: 0;
    color: #738196;
    font-size: 14px;
    line-height: 1.6;
}

/* Next steps */

.thank_you-steps {
    display: flex;
    flex-direction: column;
}

.thank_you-step {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 15px;
    padding-bottom: 23px;
}

.thank_you-step:last-child {
    padding-bottom: 0;
}

.thank_you-step:not(:last-child)::before {
    position: absolute;
    top: 39px;
    bottom: 0;
    left: 17px;
    width: 1px;
    content: "";
    background: #d9e7f5;
}

.thank_you-step-number {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 0 0 35px;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    border: 1px solid #d6e8f9;
    border-radius: 50%;
    background: #f0f7ff;
    color: #2b55a3;
    font-size: 13px;
    font-weight: 750;
}

.thank_you-step h3 {
    margin: 2px 0 7px;
    color: #293c55;
    font-size: 15px;
    font-weight: 500;
}

.thank_you-step p {
    margin: 0;
    color: #738196;
    font-size: 14px;
    line-height: 1.8;
}

/* Products */

.thank_you-products {
    display: flex;
    flex-direction: column;
}

.thank_you-product {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr) auto;
    align-items: center;
    gap: 15px;
    padding: 18px 0;
    border-bottom: 1px solid #edf1f6;
}

.thank_you-product:first-child {
    padding-top: 0;
}

.thank_you-product:last-child {
    padding-bottom: 20px;
}

.thank_you-product-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 78px;
    height: 78px;
    padding: 8px;
    overflow: hidden;
    border: 1px solid #edf1f6;
    border-radius: 9px;
    background: #f9fbfe;
}

.thank_you-product-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.thank_you-product-info {
    min-width: 0;
}

.thank_you-product-info h3 {
   margin: 0 0 8px;
  color: #1b1b1b;
  font-size: 20px;
  line-height: 1.6;
  font-weight: 500;
  overflow-wrap: anywhere;
  font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.thank_you-product-sku,
.thank_you-product-quantity {
    display: block;
    margin-top: 5px;
    color: #738196;
    font-size: 13px;
    line-height: 1.5;
}

.thank_you-product-price {
   align-self: center;
  color: #1c304c;
  font-size: 15px;
  white-space: nowrap;
  font-weight: 600;
}

/* Order totals */

.thank_you-totals {
    padding-top: 20px;
}

.thank_you-total-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 8px 0;
    color: #738196;
    font-size: 15px;
}

.thank_you-total-row > span:last-child {
    color: #354960;
    text-align: right;
}

.thank_you-grand-total {
    margin-top: 12px;
    padding-top: 18px;
    border-top: 1px solid #e4eaf2;
    color: #172b4d;
    font-size: 15px;
}

.thank_you-grand-total strong:last-child {
    color: #2b55a3;
    font-size: 21px;
    font-weight: 600;
}

/* Address */

.thank_you-address {
    padding: 16px;
    border: 1px solid #edf1f6;
    border-radius: 9px;
    background: #f9fbfe;
}

.thank_you-address strong {
    display: block;
    margin-bottom: 10px;
    color: #253751;
    font-size: 18px;
  font-weight: 500;
}

.thank_you-address p {
    margin: 5px 0;
    color: #738196;
    font-size: 13px;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.thank_you-address .thank_you-address-contact {
    margin-top: 12px;
    color: #2b55a3;
}

.thank_you-text-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    color: #2b55a3;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}

.thank_you-text-link span {
    font-size: 18px;
    transition: transform 0.2s ease;
}

.thank_you-text-link:hover span {
    transform: translateX(4px);
}

/* Payment */

.thank_you-payment-row {
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 14px 0;
    border-bottom: 1px solid #edf1f6;
}

.thank_you-payment-row:first-of-type {
    padding-top: 0;
}

.thank_you-payment-row:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.thank_you-payment-row span {
    color: #738196;
    font-size: 14px;
}

.thank_you-payment-row strong {
    color: #293c55;
    font-size: 13px;
    overflow-wrap: anywhere;
    font-weight: 600;
}

.thank_you-payment-row .thank_you-payment-pending {
    color: #9a6508;
}

/* Help card */

.thank_you-help-card {
    padding: 25px;
    border: 1px solid #dceafa;
    border-radius: 14px;
    background: linear-gradient(145deg, #f0f8ff 0%, #fff 100%);
}

.thank_you-help-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin-bottom: 15px;
    border-radius: 50%;
    background: #e1f1ff;
    color: #2b55a3;
    font-size: 20px;
    font-weight: 800;
}

.thank_you-help-card h2 {
    margin: 0 0 10px;
    color: #1c304c;
    font-size: 17px;
    font-weight: 750;
}

.thank_you-help-card p {
    margin: 0 0 18px;
    color: #738196;
    font-size: 12px;
    line-height: 1.8;
}

.thank_you-help-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 43px;
    padding: 11px 15px;
    border: 1px solid #2b55a3;
    border-radius: 8px;
    color: #2b55a3;
    font-size: 12px;
    font-weight: 750;
    text-align: center;
    text-decoration: none;
    transition: color 0.2s ease, background 0.2s ease;
}

.thank_you-help-btn:hover {
    background: #2b55a3;
    color: #fff;
}

/* Bottom CTA */

.thank_you-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 24px;
    margin-top: 28px;
    padding: 25px;
    border-radius: 8px;
    background: linear-gradient(
        267deg,
        rgba(45, 170, 226, 1) 0%,
        rgba(43, 85, 163, 1) 100%
    );
}

.thank_you-bottom-message h2 {
    margin: 0 0 8px;
    color: #fff;
   font-size: 25px;
    line-height: 1.4;
    font-weight: 500;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}

.thank_you-bottom-message p {
    margin: 0;
    color: rgba(255, 255, 255, 0.85);
    font-size: 15px;
    line-height: 1.7;
}

.thank_you-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.thank_you-primary-btn,
.thank_you-secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 20px;
    padding: 3px 17px;
    border: 1px solid transparent;
    border-radius: 4px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease;
}

.thank_you-primary-btn {
    background: #fff;
    color: #2b55a3;
}

.thank_you-primary-btn:hover {
    background: #edf6ff;
}

.thank_you-primary-btn span {
    font-size: 17px;
}

.thank_you-secondary-btn {
    border-color: rgba(255, 255, 255, 0.55);
    background: transparent;
    color: #fff;
}

.thank_you-secondary-btn:hover {
    background: rgba(255, 255, 255, 0.13);
}

.thank_you-secure-note {
    margin: 22px 0 0;
    color: #738196;
    font-size: 12px;
    line-height: 1.7;
    text-align: center;
}

/* Toast */

.thank_you-toast {
    position: fixed;
    z-index: 9999;
    right: 24px;
    bottom: 24px;
    max-width: calc(100% - 32px);
    padding: 13px 18px;
    border-radius: 8px;
    background: #20334e;
    color: #fff;
    font-size: 13px;
    line-height: 1.5;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity 0.2s ease, transform 0.2s ease,
        visibility 0.2s ease;
}

.thank_you-toast.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Responsive */

@media (max-width: 900px) {
    .thank_you-content-grid {
        grid-template-columns: minmax(0, 1fr) minmax(240px, 0.8fr);
        gap: 18px;
    }

    .thank_you-card {
        padding: 20px;
    }

    .thank_you-status-card {
        justify-content: flex-start;
    }

    .thank_you-status-divider {
        display: none;
    }

    .thank_you-status-info {
        flex-basis: 40%;
    }

    .thank_you-bottom {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 680px) {
    .labozon-thank_you-section {
        padding: 45px 12px;
    }

    .thank_you-success-icon {
        width: 68px;
        height: 68px;
    }

    .thank_you-intro {
        font-size: 14px;
    }

    .thank_you-content-grid {
        grid-template-columns: 1fr;
    }

    .thank_you-status-card {
        gap: 22px 15px;
        padding: 20px;
    }

    .thank_you-status-info {
        flex: 1 1 42%;
    }

    .thank_you-product {
        grid-template-columns: 65px minmax(0, 1fr);
        gap: 12px;
    }

    .thank_you-product-image {
        width: 65px;
        height: 65px;
    }

    .thank_you-product-price {
        grid-column: 2;
        justify-self: start;
        margin-top: -3px;
    }

    .thank_you-bottom {
        padding: 23px 19px;
    }

    .thank_you-actions {
        width: 100%;
        flex-direction: column;
    }

    .thank_you-primary-btn,
    .thank_you-secondary-btn {
        width: 100%;
    }
    .labozon-thank_you-section h1 {
    font-size: 28px;
    }
}

@media (max-width: 380px) {
    .thank_you-status-info {
        flex-basis: 100%;
    }

    .thank_you-card {
        padding: 17px;
    }

    .thank_you-card-heading h2 {
        font-size: 16px;
    }

    .thank_you-product-info h3 {
        font-size: 18px;
    }
}

/* Print */

@media print {
    .labozon-thank_you-section {
        padding: 0;
        background: #fff;
    }

    .thank_you-copy-btn,
    .thank_you-actions,
    .thank_you-help-card,
    .thank_you-text-link,
    .thank_you-toast {
        display: none !important;
    }

    .thank_you-content-grid {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

    .thank_you-card,
    .thank_you-status-card {
        box-shadow: none;
        break-inside: avoid;
    }

    .thank_you-bottom {
        background: #fff;
        border: 1px solid #ddd;
    }

    .thank_you-bottom-message h2,
    .thank_you-bottom-message p {
        color: #222;
    }
}

/* ------------------------------------------------------------------
   Dynamic PHP views: links that replace the static template buttons
   keep the exact button look, plus flash messages and captcha.
   ------------------------------------------------------------------ */
a.labozon-category-name,
a.labozon-category-image-button,
a.user-account-nav-link,
a.user-account-text-btn,
a.az-letter,
a.az-main-tab,
a.az-reset,
a.subcategory-item,
a.catalog-card,
a.catalog-close,
a.site_map-link {
    text-decoration: none;
}

a.catalog-card,
a.subcategory-item {
    display: block;
    color: inherit;
}

a.subcategory-item {
    display: flex;
}

.labozon-flash-messages {
    max-width: 1320px;
    margin: 15px auto 0;
    padding: 0 15px;
}

.labozon-flash-messages .alert {
    margin-bottom: 10px;
    font-size: 15px;
}

.captcha-widget {
    display: grid;
    gap: 8px;
    margin: 12px 0;
}

.captcha-challenge {
    display: flex;
    align-items: center;
    gap: 10px;
}

.captcha-challenge .captcha_image {
    height: 48px;
    width: auto;
    border-radius: 4px;
}

.captcha-challenge .refresh_captcha {
    color: #285db3;
    font-size: 18px;
}

.captcha-label {
    font-size: 14px;
    font-weight: 500;
}

.captcha-widget .captcha-input {
    width: 100%;
    min-height: 42px;
    padding: 8px 12px;
    border: 1px solid #d6dde6;
    border-radius: 4px;
}


/* Shared "Get Quote" modal (includes/quote-modal.php) */
.labozon-quote-modal {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: none;
    align-items: flex-start;
    justify-content: center;
    padding: 30px 15px;
    overflow-y: auto;
    background: rgba(13, 27, 42, 0.6);
}

.labozon-quote-modal.is-open {
    display: flex;
}

body.labozon-quote-open {
    overflow: hidden;
}

.labozon-quote-dialog {
    position: relative;
    width: 100%;
    max-width: 640px;
    margin: auto 0;
}

.labozon-quote-dialog .contact-form-panel {
    background: #fff;
}

.labozon-quote-close {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: #f1f4f8;
    color: #173451;
    font-size: 16px;
    cursor: pointer;
}

.labozon-quote-product {
    position: relative;
}

.labozon-quote-product-box {
    position: relative;
}

.labozon-quote-product-box input[readonly] {
    padding-right: 36px;
    background: #f5f8fb;
    cursor: default;
}

.labozon-quote-product-clear {
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    border: 0;
    background: transparent;
    color: #5d6c7d;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}

.labozon-quote-suggestions {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    z-index: 5;
    max-height: 230px;
    margin: 4px 0 0;
    padding: 4px 0;
    overflow-y: auto;
    list-style: none;
    background: #fff;
    border: 1px solid #d6dde6;
    border-radius: 4px;
    box-shadow: 0 10px 24px rgba(13, 27, 42, 0.12);
}

.labozon-quote-suggestions li {
    padding: 8px 12px;
    font-size: 13px;
    color: #173451;
    cursor: pointer;
}

.labozon-quote-suggestions li:hover,
.labozon-quote-suggestions li.is-active {
    background: #edf5ff;
}

.labozon-quote-suggestions li.is-empty {
    color: #8592a0;
    cursor: default;
}

/* Product variants (VARIANT_OPTIONS): option picker and compare table */
.product-variant-options {
    margin: 18px 0 14px;
}

.product-variant-label {
    display: block;
    margin-bottom: 8px;
    color: #173451;
    font-size: 14px;
    font-weight: 600;
}

.product-variant-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.product-variant-option {
    display: inline-flex;
    flex-direction: column;
    min-width: 120px;
    padding: 8px 12px;
    border: 1px solid #d6dde6;
    border-radius: 6px;
    background: #fff;
    color: #173451;
    text-decoration: none;
    line-height: 1.35;
    transition: border-color 0.2s, background 0.2s;
}

.product-variant-option strong {
    font-size: 13px;
    font-weight: 600;
}

.product-variant-option small {
    color: #5d6c7d;
    font-size: 12px;
}

.product-variant-option:hover {
    border-color: #2DAAE2;
    color: #173451;
}

.product-variant-option.active {
    border-color: #2b55a3;
    background: #edf5ff;
    box-shadow: inset 0 0 0 1px #2b55a3;
}

.variant-compare-table thead th {
    background: #f1f6fb;
    white-space: nowrap;
}

.variant-compare-table thead th a {
    color: #173451;
    text-decoration: none;
}

.variant-compare-table .is-selected {
    background: #edf5ff;
}

.variant-compare-table tr.is-different th {
    color: #c6320e;
}

/* Subcategory entries in the category sidebar are <h2> links; render like the old label text. */
.filter-option-title {
    margin: 0;
    color: inherit;
    font: inherit;
    letter-spacing: normal;
    line-height: inherit;
}

/* Category pages with a single product: no filter sidebar */
.labozon-maincategory-layout.no-filters {
    grid-template-columns: minmax(0, 1fr);
}
.maincategory-filter[hidden] {
    display: none !important;
}

/* Specification values stored as small HTML tables (see spec_value_html) */
.spec-value-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    font-size: inherit;
}
.spec-value-table td,
.spec-value-table th {
    padding: 3px 6px;
    border: 1px solid #e1e7ee;
    text-align: left;
    vertical-align: top;
    background: transparent;
}

/* Product option boxes: one box per option showing what it changes */
.product-variant-label small {
    margin-left: 6px;
    color: #5d6c7d;
    font-size: 12px;
    font-weight: 400;
}
.product-variant-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
    gap: 10px;
    max-height: 420px;
    overflow-y: auto;
    padding: 2px;
}
.product-variant-box {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    border: 1px solid #d6dde6;
    border-radius: 8px;
    background: #fff;
    color: #173451;
    text-decoration: none;
    line-height: 1.35;
    cursor: pointer;
    transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;
}
.product-variant-box:hover {
    border-color: #2DAAE2;
    color: #173451;
}
.product-variant-box.active {
    border-color: #2b55a3;
    background: #edf5ff;
    box-shadow: inset 0 0 0 1px #2b55a3;
}
.variant-box-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
}
.variant-box-head strong {
    font-size: 14px;
    font-weight: 600;
    word-break: break-word;
}
.variant-box-head i {
    color: #2b55a3;
    font-size: 16px;
    visibility: hidden;
}
.product-variant-box.active .variant-box-head i {
    visibility: visible;
}
.variant-box-diffs {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 12px;
}
.variant-box-diffs > span {
    display: flex;
    flex-direction: column;
}
.variant-box-diffs em {
    color: #5d6c7d;
    font-style: normal;
}
.variant-box-diffs b {
    color: #173451;
    font-weight: 600;
}
.variant-box-diffs .variant-box-more {
    color: #2b55a3;
}
.variant-box-price {
    margin-top: auto;
    color: #c6320e;
    font-size: 13px;
    font-weight: 600;
}
.detail-cart-slot[hidden],
.detail-price-block[hidden] {
    display: none !important;
}

/* Quote modal: selected product option */
.quote-option-note { margin: 6px 0 0; color: #5d6c7d; font-size: 13px; }
.quote-option-note strong { color: #173451; }

/* Listing cards for products with options */
.product-image-maincategory { position: relative; }
.card-option-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 8px;
    border-radius: 999px;
    background: #2b55a3;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;
}
.card-option-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 8px 0 4px;
}
.card-option-chips a {
    max-width: 100%;
    padding: 3px 8px;
    border: 1px solid #d6dde6;
    border-radius: 6px;
    background: #fff;
    color: #173451;
    font-size: 11px;
    line-height: 1.4;
    text-decoration: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.card-option-chips a:hover { border-color: #2DAAE2; color: #173451; }
.card-option-chips a.is-more { border-style: dashed; color: #2b55a3; }
.card-option-chips a.is-match { border-color: #2b55a3; background: #edf5ff; font-weight: 600; }
.card-option-match { margin: 0 0 6px; color: #2b55a3; font-size: 12px; font-weight: 600; }
.card-option-match[hidden] { display: none; }

/* Search results and wishlist cards */
.search_product-container { padding: 0 20px; box-sizing: border-box; }
@media (max-width: 700px) { .search_product-container { padding: 0; } }
.product-info-sp h3 a { color: inherit; text-decoration: none; }
.product-info-sp h3 a:hover { color: #2b55a3; }
/* Wishlist: Compare / Remove stay visible (no hover on touch screens) */
.search-product-grid.is-wishlist .product-hover-actions-sp { opacity: 1; visibility: visible; transform: none; }

/* Captcha refresh is a real button (not a "#" link) */
button.refresh_captcha { padding: 0; border: 0; background: transparent; cursor: pointer; line-height: 1; }
/* width/height on <img> only reserve space while loading; sizes still come
   from the stylesheet (zero specificity, so any class rule wins). */
:where(img[width][height]) { width: auto; height: auto; }

/* Blog headings demoted from <h1> by blog_content() keep the h1 size. */
.blog-original-content h2[data-h1] { font-size: calc(1.375rem + 1.5vw); }
@media (min-width: 1200px) { .blog-original-content h2[data-h1] { font-size: 2.5rem; } }
/* Tables inside product tabs (e.g. Rotors): bordered, striped, scroll sideways on narrow screens */
.rich-table-wrap { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 12px 0; border: 1px solid #e5ebf1; border-radius: 8px; }
.rich-table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: 14px; line-height: 1.45; }
.rich-table th, .rich-table td { padding: 10px 14px; text-align: left; border-bottom: 1px solid #e5ebf1; vertical-align: top; }
.rich-table th { background: #f5f8fb; color: #172f4b; font-weight: 600; white-space: nowrap; }
.rich-table tbody tr:nth-child(even) td { background: #fafcfd; }
.rich-table tbody tr:last-child td { border-bottom: 0; }
.rich-table tbody tr:hover td { background: #eef6f7; }

/* Navbar: keep every link on one line now that it holds Lab Equipment and A-Z Products */
.labozon-main-menu > a,
.labozon-category-trigger,
.labozon-quick-trigger {
    white-space: nowrap;
}

@media (min-width: 1101px) and (max-width: 1440px) {
    .labozon-main-menu {
        gap: 20px;
    }

    .labozon-main-menu > a,
    .labozon-category-trigger,
    .labozon-quick-trigger {
        font-size: 14px;
    }
}

@media (max-width: 1100px) {
    .labozon-main-menu {
        gap: 12px;
    }
}

@media (min-width: 1441px) {
    .labozon-main-menu {
        gap: 24px;
    }
}

/* ===== SweetAlert2 dialogs (assets/js/notify.js) ===== */
.swal2-container.lz-swal-container {
  z-index: 20000;
  padding: 24px 16px;
  background: rgba(15, 30, 48, .45) !important;
  backdrop-filter: blur(2px);
}
.swal2-popup.lz-swal-modal {
  width: 460px;
  max-width: 100%;
  padding: 36px 36px 30px !important;
  border-radius: 18px;
  border-top: 5px solid #2daae2;
  background: #fff;
  box-shadow: 0 30px 70px rgba(15, 30, 48, .28);
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
}
.swal2-popup.lz-swal-success { border-top-color: #1f9d6b; }
.swal2-popup.lz-swal-error   { border-top-color: #e5484d; }
.swal2-popup.lz-swal-warning { border-top-color: #f5a524; }
.swal2-popup.lz-swal-info    { border-top-color: #2daae2; }
/* SweetAlert draws the icon (and its tick / cross) in em: size it with font-size. */
.swal2-popup.lz-swal-modal .lz-swal-icon {
  font-size: 15px;
  margin: 0 auto 18px;
}
.swal2-popup.lz-swal-modal .lz-swal-title {
  margin: 0;
  padding: 0;
  color: #172f4b;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.3;
}
.swal2-popup.lz-swal-modal .lz-swal-text {
  margin: 10px 0 0;
  padding: 0;
  color: #5b6b7c;
  font-size: 16px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.swal2-popup.lz-swal-modal .lz-swal-actions { margin: 26px 0 0; width: 100%; }
.swal2-popup.lz-swal-modal .lz-swal-confirm {
  min-width: 140px;
  padding: 12px 32px;
  border: 0;
  border-radius: 10px;
  color: #fff;
  background: linear-gradient(90deg, #f14e31, #fca331);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: .02em;
  cursor: pointer;
  box-shadow: 0 8px 20px rgba(241, 78, 49, .28);
  transition: transform .15s ease, box-shadow .15s ease;
}
.swal2-popup.lz-swal-modal .lz-swal-confirm:hover { transform: translateY(-1px); box-shadow: 0 12px 24px rgba(241, 78, 49, .34); }
.swal2-popup.lz-swal-modal .lz-swal-confirm:focus-visible { outline: 3px solid rgba(45, 170, 226, .45); outline-offset: 2px; }
.swal2-popup.lz-swal-modal .lz-swal-close {
  top: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  color: #8a99a8;
  font-size: 28px;
  border-radius: 8px;
  box-shadow: none !important;
}
.swal2-popup.lz-swal-modal .lz-swal-close:hover { color: #172f4b; background: #f1f4f8; }
.swal2-popup.lz-swal-modal .swal2-timer-progress-bar-container { border-radius: 0 0 18px 18px; }
.swal2-popup.lz-swal-success .swal2-timer-progress-bar { background: rgba(31, 157, 107, .5); }
.swal2-popup.lz-swal-info .swal2-timer-progress-bar    { background: rgba(45, 170, 226, .5); }
@media (min-width: 992px) {
  .swal2-popup.lz-swal-modal { width: 540px; padding: 44px 48px 36px !important; }
  .swal2-popup.lz-swal-modal .lz-swal-icon { font-size: 17.6px; margin-bottom: 22px; }
  .swal2-popup.lz-swal-modal .lz-swal-title { font-size: 28px; }
  .swal2-popup.lz-swal-modal .lz-swal-text { font-size: 17px; }
  .swal2-popup.lz-swal-modal .lz-swal-confirm { min-width: 170px; padding: 14px 36px; font-size: 16px; }
}
@media (max-width: 575px) {
  .swal2-popup.lz-swal-modal { padding: 30px 22px 24px !important; border-radius: 16px; }
  .swal2-popup.lz-swal-modal .lz-swal-icon { font-size: 12.8px; margin-bottom: 14px; }
  .swal2-popup.lz-swal-modal .lz-swal-title { font-size: 20px; }
  .swal2-popup.lz-swal-modal .lz-swal-text { font-size: 15px; }
  .swal2-popup.lz-swal-modal .lz-swal-confirm { width: 100%; }
}

/* Shown only if SweetAlert2 could not load */
.lz-notice {
  position: fixed; top: 50%; left: 50%; z-index: 20000;
  transform: translate(-50%, -50%);
  display: flex; gap: 12px; align-items: flex-start;
  width: 440px; max-width: calc(100vw - 32px); padding: 22px 24px;
  background: #fff; border: 1px solid #e6ebf0; border-top: 5px solid #2daae2; border-radius: 16px;
  box-shadow: 0 30px 70px rgba(15, 30, 48, .28); color: #172f4b; font-size: 16px; line-height: 1.55;
}
.lz-notice-success { border-top-color: #1f9d6b; }
.lz-notice-error { border-top-color: #e5484d; }
.lz-notice-warning { border-top-color: #f5a524; }
.lz-notice-body { flex: 1; }
.lz-notice button { border: 0; background: none; font-size: 24px; line-height: 1; color: #8a99a8; cursor: pointer; }
