/*
*Theme Name : ThemeName
*Description : ThemeName Theme
*Version : 1.0
*/
/* .hero-style3-area{
    padding: 40px 0;
    position: relative;
} */

.hero-banner-glass{
    position: relative;
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
/*     border-radius: 30px; */
    overflow: hidden;

    /* Glassmorphism */
    background: rgba(255,255,255,0.15);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);

    border: 1px solid rgba(255,255,255,0.25);
    box-shadow:
        0 20px 60px rgba(0,0,0,0.12),
        inset 0 1px 0 rgba(255,255,255,0.4);
}
@media (max-width: 767px){

    .hero-style3-area{
        padding: 0;
    }

    .hero-banner-glass img{
        width: 100%;
        height: auto !important;
        min-height: auto;
        object-fit: cover;
        object-position: center;
        border-radius: 0;
    }

    .hero-banner-glass{
        overflow: hidden;
    }

}
.hero-banner-glass img{
    width: 100%;
    height: 640px;
    object-fit: fill;
    display: block;
/*     border-radius: 30px; */
}

/* Blue overlay for brand feel */
.hero-banner-glass::before{
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(0,120,255,0.10),
        rgba(0,180,255,0.05)
    );
    z-index: 1;
    pointer-events: none;
}

/* Floating glow */
.hero-banner-glass::after{
    content: '';
    position: absolute;
    width: 300px;
    height: 300px;
    top: -100px;
    right: -100px;
    border-radius: 50%;
    background: rgba(0,180,255,0.15);
    filter: blur(80px);
    z-index: 1;
}

/* home-products-grid-css
 */
.product-flip-card{
    height: 400px;
    perspective: 1200px;
}

.product-flip-card-inner{
    position: relative;
    width: 100%;
    height: 100%;
    transition: 0.8s;
    transform-style: preserve-3d;
}

.product-flip-card:hover .product-flip-card-inner{
    transform: rotateY(180deg);
}

.product-front,
.product-back{
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    backface-visibility: hidden;
}

/* Front Side */

.product-front{
    background: rgba(255,255,255,0.75);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);

    border: 1px solid rgba(200,220,240,.7);
    border-radius: 10px;

    box-shadow:
        0 10px 30px rgba(0,0,0,.06),
        inset 0 1px 0 rgba(255,255,255,.8);

    height: 100%;

    display: flex;
    flex-direction: column;

    padding: 15px;
}


.product-front .img-holder{
    height: 345px !important;
    background: #f8fbff;
    border: 1px solid #dbe8f5;
    border-radius: 18px;

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

    overflow: hidden;
}


.product-front .img-holder img{
    max-height: 210px;
    width: auto;
    max-width: 100%;

    transition: .4s ease;
}


.product-front:hover .img-holder img{
    transform: scale(1.08);
}


.product-front .title-holder{
    text-align: center;
    padding: 18px 10px 8px;
}


.product-front h3{
    font-size: 18px;
    line-height: 1.4;
    font-weight: 700;
    margin-bottom: 8px;
    color: #111;
}


.product-front p{
    font-size: 14px;
    line-height: 1.6;
    color: #6f7b8a;
    margin: 0;
}


/* Premium Hover */
.product-front:hover{
    transform: translateY(-8px);
    transition: .4s;
}


/* Same height cards */
.product-flip-card{
    height: 380px;
}

/* Back Side */

.product-back{
    transform: rotateY(180deg);

    background: linear-gradient(
        135deg,
        rgba(0,120,255,.95),
        rgba(0,180,255,.95)
    );

    color:#fff;

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

    text-align:center;
    padding:35px;
	border-radius: 10px;
}

.product-back h4{
    color:#fff;
    margin-bottom:15px;
    font-size:28px;
}

.product-back p{
    color:#fff;
    line-height:1.8;
    margin-bottom:25px;
}

.enquiry-btn{
    display:inline-block;
    padding:14px 35px;
    border-radius:50px;

    background:#fff;
    color:#0b59b5;

    font-weight:700;
    transition:.3s;
}

.enquiry-btn:hover{
    transform:translateY(-3px);
    color:#0b59b5;
}
/* cateogry tab-css-home */
.product-tabs{
    justify-content:center;
    gap:15px;
    margin-bottom:40px;
    border:none;
}

.product-tabs .nav-link{
    border:none;
    padding:14px 28px;
    border-radius:50px;
    font-weight:600;
    color:#222;

    background:rgba(255,255,255,.65);
    backdrop-filter:blur(12px);

    box-shadow:0 10px 25px rgba(0,0,0,.05);
    transition:.35s;
}

.product-tabs .nav-link:hover{
    transform:translateY(-3px);
}

.product-tabs .nav-link.active{
    background:linear-gradient(
        135deg,
        #35bdf4,
        #1b84e7
    );

    color:#fff;
}

.tab-content-box{
    text-align:center;
    max-width:800px;
    margin:0 auto 50px;
}

.tab-content-box h3{
    font-size:32px;
    margin-bottom:15px;
}

.tab-content-box p{
    font-size:17px;
    color:#666;
    line-height:1.8;
}
.shop-style2-area- {
    padding: 30px 0px;
    background: #fff;
}



/* footer-css */
.footer-logo a img {
    width: 154px;
}
.outer-box-to {
    position: relative;
    display: block;
    background: #ecf2f6;
    padding: 80px 80px 60px;
    border-radius: 10px;
    z-index: 10;
	margin-top:0px;
}
.outer-box-to .icon-bg {
    background: #004da1;
    border-radius: 100px !important;
}
.social-links{
    display:flex;
    align-items:center;
    gap:12px;
}

.social-links a{
    width:45px;
    height:45px;
    border-radius:50%;
    background:#59c3f0;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    transition:all .3s ease;
}

.social-links a:hover{
    transform:translateY(-3px);
    background:#0d57b3;
    color:#fff;
}
h3.cmp-name {
    font-size: 17px;
    margin-bottom: 5px;
    color: #004da1;
}

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

.footer-contact-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 15px;
    color: #585858;
    font-size: 15px;
    line-height: 1.7;
}

.footer-contact-list li i{
    color:#58c7ff;
    font-size:18px;
    min-width:20px;
    margin-top:5px;
}

.footer-contact-list li a{
    color:#585858;
    transition:all .3s ease;
}

.footer-contact-list li a:hover{
    color:#58c7ff;
    text-decoration:none;
}
/* blog-singlepage-custom-css */
.blog-details-content h2{
    margin: 25px 0 25px !important;
    padding: 15px 0;
    border-bottom: 2px solid #59c3f0;
    position: relative;
}
.blog-details-content h3 {
    padding: 15px 0;
    position: relative;
}
.blog-details-content h2:before{
    content:'';
    position:absolute;
    left:0;
    bottom:-2px;
    width:80px;
    height:2px;
    background:#0d57b3;
}

.blog-details-content ul{
    margin:30px 0;
    padding:20px 25px;
    background:#f8fcff;
    border-left:4px solid #59c3f0;
    border-radius:8px;
}

.blog-details-content ul li{
    position:relative;
    padding-left:28px;
    margin-bottom:12px;
    line-height:1.8;
}

.blog-details-content ul li:last-child{
    margin-bottom:0;
}

.blog-details-content ul li:before{
    content:"✓";
    position:absolute;
    left:0;
    color:#0d57b3;
    font-weight:700;
}

/* mission-vission-css */
.mission-vision-row{
    margin-top:30px;
}

.info-box{
    position:relative;
    height:100%;

    padding:40px;
    border-radius:24px;

    background:rgba(255,255,255,0.55);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,0.45);

    box-shadow:
    0 10px 30px rgba(0,0,0,.08),
    inset 0 1px 0 rgba(255,255,255,.9);

    overflow:hidden;
    transition:all .4s ease;
}

/* Glass shine */
.info-box::before{
    content:'';
    position:absolute;
    top:0;
    left:-120%;
    width:70%;
    height:100%;

    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.45),
        transparent
    );

    transition:.8s;
}

.info-box:hover::before{
    left:130%;
}

/* Hover Effect */
.info-box:hover{
    transform:translateY(-8px);

    background:linear-gradient(
        135deg,
        rgba(26,149,255,.08),
        rgba(255,255,255,.65)
    );

    border-color:rgba(26,149,255,.25);

    box-shadow:
    0 20px 45px rgba(26,149,255,.15),
    0 10px 20px rgba(0,0,0,.08);
}

.info-box h3{
    font-size:22px;
    margin-bottom:20px;
    line-height:1.1;
    position:relative;
}

/* Accent line */
.info-box h3::after{
    content:'';
    display:block;

    width:70px;
    height:4px;

    margin-top:15px;
    border-radius:20px;

    background:linear-gradient(
        90deg,
        #0d6efd,
        #53c7ff
    );
}

.info-box p{
    margin:0;
    font-size:20px;
    line-height:1.9;
    color:#5f6672;
}

/* Different hover colors */
.col-md-6:first-child .info-box:hover{
    background:linear-gradient(
        135deg,
        rgba(36,163,255,.12),
        rgba(255,255,255,.65)
    );
}

.col-md-6:last-child .info-box:hover{
    background:linear-gradient(
        135deg,
        rgba(0,190,160,.10),
        rgba(255,255,255,.65)
    );
}

@media(max-width:768px){

    .info-box{
        padding:30px;
        margin-bottom:20px;
    }

    .info-box h3{
        font-size:36px;
    }

    .info-box p{
        font-size:17px;
    }

}

/* CF7 Select Styling */

.contact-form-area .select-box{
    position: relative;
    width: 100%;
}

.contact-form-area .select-box select,
.contact-form-area .wpcf7-select{
    width: 100%;
    height: 90px;
    border: 0;
    background: #eef5f9;
    border-radius: 15px;

    padding: 0 60px 0 75px;

    font-size: 18px;
    color: #666;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    outline: none;
    box-shadow: none;
}

/* dropdown arrow */
.contact-form-area .select-box:after{
    content: "\f107";
    font-family: "FontAwesome";
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translateY(-50%);
    color: #9aa7b2;
    font-size: 18px;
    pointer-events: none;
}

/* icons alignment */
.contact-form-area .input-box{
    position: relative;
}

.contact-form-area .input-box .icon{
    position: absolute;
    left: 25px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    color: #5fc4f3;
    font-size: 22px;
}

.contact-form-area textarea{
    height: 130px !important;
    padding-top: 25px !important;
}

.contact-form-area input,
.contact-form-area textarea{
    width: 100%;
    border: none;
    background: #eef5f9;
    border-radius: 15px;
    padding-left: 75px;
}

/* two column responsive */
@media (max-width:767px){

    .contact-form-area .col-md-6{
        margin-bottom: 20px;
    }

    .contact-form-area .select-box select,
    .contact-form-area .wpcf7-select{
        height: 70px;
        font-size: 16px;
    }
}


.av-head-logo {
     height: 46px !important;
     width: auto;
}
 .wow{
     visibility: visible !important;
}
 .breadcrumb-area {
     position: relative;
     overflow: hidden;
}
 .breadcrumb-area .container, .breadcrumb-area .inner-content {
     position: relative;
     z-index: 2;
}
 .contact-style2_image-box img {
     max-width: 914px;
     float: inline-start;
     width: 754px;
     height: 520px;
}
 .subscribe-content-box .icon{
     width: 110px;
     height: 110px;
     margin: 0 auto 25px;
     border-radius: 50%;
     background: rgba(255,255,255,0.15);
     display: flex;
     align-items: center;
     justify-content: center;
     position: relative;
}
 .subscribe-content-box .icon::before{
     content: "";
     position: absolute;
     inset: -12px;
     border: 1px solid rgba(255,255,255,0.45);
     border-radius: 50%;
}
 .subscribe-content-box .icon i{
     font-size: 42px;
     color: #ffffff;
     width: 80px;
     height: 80px;
     border-radius: 50%;
     background: rgba(255,255,255,0.92);
     display: flex;
     align-items: center;
     justify-content: center;
     color: #0f57b5;
     box-shadow: 0 10px 25px rgba(0,0,0,.15), inset 0 1px 0 rgba(255,255,255,.9);
}
 .subscribe-content-box:hover .icon i{
     transform: scale(1.08);
     transition: .3s ease;
}
/* TABLE */
 .table-wrap{
    overflow-x:auto;
    margin:1.5rem 0 2rem
}
 table{
    width:100%;
    border-collapse:collapse;
    font-size:.88rem
}
 th{
    background:#0d1f2d;
    color:#fff;
    font-size:.72rem;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase;
    padding:.75rem 1rem;
    text-align:left
}
 td{
    padding:.75rem 1rem;
    border-bottom:1px solid #dae2e7;
    color:#4a6070;
    vertical-align:top
}
 tr:last-child td{
    border-bottom:none
}
 tr:nth-child(even) td{
    background:#ffffff;
}
 .callout.warning {
     background: #FFF8E6;
     border-left: 3px solid #E6A817;
}
 .callout {
     border-radius: 4px;
     padding: 1.5rem 1.75rem;
     margin: 2rem 0;
}
 .callout.warning .callout-label {
     font-size: .75rem;
     font-weight: 600;
     letter-spacing: .14em;
     text-transform: uppercase;
     color: #956A0A;
     margin-bottom: .5rem;
}
 .callout.tip {
     background: #e6f4ef;
     border-left: 3px solid #1a7a5e;
}
 .callout {
     border-radius: 4px;
     padding: 1.5rem 1.75rem;
     margin: 2rem 0;
}
 .callout.tip .callout-label {
     font-size: .65rem;
     font-weight: 600;
     letter-spacing: .14em;
     text-transform: uppercase;
     color: var(--teal);
     margin-bottom: .5rem;
}
/* manufecture page css here */
/* ===== Austiva License Details ===== */
 .license-card{
     max-width:920px;
     margin:auto;
     background:#fff;
     border:1px solid #d8e6f5;
     border-radius:18px;
     padding:38px;
     box-shadow:0 12px 35px rgba(17,89,170,.08);
}
/* top */
 .license-top{
     display:block;
     padding-bottom:18px;
}
 .tag{
     display:inline-block;
     background:#eaf5ff;
     color:#1777d8;
     font-size:12px;
     font-weight:600;
     padding:6px 14px;
     border-radius:30px;
     margin-bottom:12px;
}
 .license-top h2{
     margin:0;
     font-size:38px;
     line-height:1.2;
     color:#0d2b4d;
     font-weight:700;
}
/* remove old box */
 .license-badge{
     background:none;
     padding:0;
     border-radius:0;
     min-width:auto;
     margin-top:12px;
     color:#445b78;
}
 .license-badge small{
     display:inline;
     font-size:15px;
     color:#6d87a3;
     font-weight:500;
}
 .license-badge strong{
     display:inline;
     margin-left:8px;
     font-size:22px;
     color:#0077d9;
     font-weight:700;
     letter-spacing:.5px;
}
/* divider */
 .license-top::after{
     content:"";
     display:block;
     width:100%;
     height:1px;
     background:linear-gradient(90deg,#1590ff,#bfe3ff);
     margin-top:20px;
}
/* cards */
 .license-grid{
     display:grid;
     grid-template-columns:repeat(2,1fr);
     gap:16px;
     margin-top:26px;
}
 .info{
     background:#f8fcff;
     border:1px solid #dbeeff;
     border-radius:12px;
     padding:18px;
     transition:.3s;
}
 .info:hover{
     border-color:#8ac9ff;
     box-shadow:0 6px 18px rgba(21,144,255,.08);
}
 .info.full{
     grid-column:1/-1;
}
 .info h4{
     margin:0 0 8px;
     color:#1777d8;
     font-size:16px;
     font-weight:700;
}
 .info p{
     margin:0;
     color:#31465c;
     line-height:1.7;
     font-size:14px;
}
/* mobile */
 @media(max-width:768px){
     .license-card{
        padding:22px;
    }
     .license-grid{
        grid-template-columns:1fr;
    }
     .license-top h2{
        font-size:28px;
    }
     .license-badge strong{
         display:block;
         margin:6px 0 0;
         font-size:18px;
    }
}
/* manufecture page css end here */
 p {
     margin-top: 0;
     margin-bottom: 1rem;
     text-align: justify;
}
 div#sidebar {
     display: none;
}
/* ========================================= RELATED PRODUCTS - MODERN CARD UI ========================================= */
 .single-product .related.products {
     width: 100% !important;
     clear: both !important;
     margin: 50px 0 35px !important;
     padding: 0 !important;
     overflow: hidden;
}
/* Heading */
 .single-product .related.products > h2 {
     font-size: 28px !important;
     font-weight: 700 !important;
     line-height: 1.3 !important;
     margin: 0 0 25px !important;
     padding-bottom: 12px;
     border-bottom: 2px solid #f0e6d9;
     color: #222 !important;
}
/* Products Grid */
 .single-product .related.products ul.products {
/*      display: grid !important; */
     grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
     gap: 25px !important;
     width: 100% !important;
     margin: 0 !important;
     padding: 0 !important;
     float: none !important;
}
/* Remove WooCommerce float and widths */
 .single-product .related.products ul.products::before, .single-product .related.products ul.products::after {
     display: none !important;
     content: none !important;
}
 .single-product .related.products ul.products li.product {
     display: flex !important;
     flex-direction: column !important;
     align-items: stretch !important;
     float: none !important;
     width: 100% !important;
     min-width: 0 !important;
     max-width: 100% !important;
     margin: 0 !important;
     padding: 15px !important;
     box-sizing: border-box !important;
     background: #fff !important;
     border: 1px solid #eee !important;
     border-radius: 12px !important;
     overflow: hidden !important;
     position: relative;
     transition: transform .25s ease, box-shadow .25s ease;
}
/* Hover Effect */
 .single-product .related.products ul.products li.product:hover {
     transform: translateY(-4px);
     box-shadow: 0 8px 25px rgba(0, 0, 0, .08);
     border-color: #e3d3bc !important;
}
/* Product Image */
 .single-product .related.products ul.products li.product a img {
     display: block !important;
     width: 100% !important;
     height: 220px !important;
     object-fit: contain !important;
     margin: 0 0 15px !important;
     border-radius: 8px;
     background: #f8f8f8;
}
/* Product Category / Other Text */
 .single-product .related.products ul.products li.product .posted_in, .single-product .related.products ul.products li.product .ast-woo-product-category {
     font-size: 12px;
     color: #777;
}
/* Product Title */
 .single-product .related.products ul.products li.product .woocommerce-loop-product__title {
     font-size: 15px !important;
     font-weight: 600 !important;
     line-height: 1.5 !important;
     color: #292929 !important;
     padding: 0 !important;
     margin: 0 0 10px !important;
     overflow-wrap: anywhere;
}
/* Price */
 .single-product .related.products ul.products li.product .price {
     display: block !important;
     font-size: 17px !important;
     font-weight: 700 !important;
     color: #a87938 !important;
     margin: 0 0 15px !important;
}
/* Add to Cart Button */
 .single-product .related.products ul.products li.product .button {
     display: block !important;
     width: 100% !important;
     box-sizing: border-box !important;
     margin: auto 0 0 !important;
     padding: 12px 10px !important;
     background: #b88a4a !important;
     color: #fff !important;
     border: 1px solid #b88a4a !important;
     border-radius: 6px !important;
     font-size: 14px !important;
     font-weight: 600 !important;
     line-height: 1.4 !important;
     text-align: center !important;
     transition: all .25s ease;
}
 .single-product .related.products ul.products li.product .button:hover {
     background: #8f642e !important;
     border-color: #8f642e !important;
     color: #fff !important;
}
/* Sale Badge */
 .single-product .related.products ul.products li.product .onsale {
     top: 10px !important;
     left: 10px !important;
     right: auto !important;
     margin: 0 !important;
     min-height: auto !important;
     padding: 5px 10px !important;
     border-radius: 4px !important;
     background: #b88a4a !important;
     color: #fff !important;
     font-size: 12px !important;
}
/* ========================================= TABLET ========================================= */
 @media (max-width: 1024px) {
     .single-product .related.products ul.products {
         grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
         gap: 18px !important;
    }
     .single-product .related.products ul.products li.product a img {
         height: 190px !important;
    }
}
/* ========================================= MOBILE ========================================= */
 @media (max-width: 767px) {
     .single-product .related.products {
         margin-top: 35px !important;
    }
     .single-product .related.products > h2 {
         font-size: 23px !important;
         margin-bottom: 18px !important;
    }
     .single-product .related.products ul.products {
         grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
         gap: 12px !important;
    }
     .single-product .related.products ul.products li.product {
         padding: 10px !important;
         border-radius: 8px !important;
    }
     .single-product .related.products ul.products li.product a img {
         height: 145px !important;
         margin-bottom: 10px !important;
    }
     .single-product .related.products ul.products li.product .woocommerce-loop-product__title {
         font-size: 13px !important;
    }
     .single-product .related.products ul.products li.product .price {
         font-size: 15px !important;
    }
     .single-product .related.products ul.products li.product .button {
         font-size: 12px !important;
         padding: 10px 5px !important;
    }
}
/* Very Small Mobile */
 @media (max-width: 360px) {
     .single-product .related.products ul.products {
         grid-template-columns: 1fr !important;
    }
}
/* ---------- Page banner ---------- */
 .page-banner{
    position:relative;
    color:#fff;
    overflow:hidden;
     background:linear-gradient(105deg,rgba(6,52,122,.92),rgba(11,79,168,.72) 55%,rgba(61,184,245,.35)), url('https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?auto=format&fit=crop&w=1800&q=70') center/cover
}
 .page-banner .container{
    padding:62px 0 58px
}
 .page-banner h1{
    color:#fff;
    font-size:clamp(30px,4vw,46px)
}
 .page-banner p{
    color:#d4e6fb;
    max-width:560px;
    margin-top:8px;
    font-weight:300
}
 .crumbs{
    font-size:14px;
    color:#cfe3fb;
    margin-bottom:12px
}
.page-banner .crumbs a {
    color: #a0c1eb !important;
    text-decoration: none;
}
 .crumbs a:hover{
    color:#fff
}
 .crumbs span{
    margin:0 8px;
    opacity:.6
}
 .shop{
    padding:50px 0 80px;
    background:var(--bg)
}
 .shop-grid{
    display:grid;
    grid-template-columns:270px 1fr;
    gap:32px;
    align-items:start
}
 .sidebar{
    background:#fff;
    border-radius:var(--radius);
    padding:26px;
    box-shadow:var(--shadow-sm);
    position:sticky;
    top:98px
}
 .filter-block+.filter-block{
    margin-top:26px;
    padding-top:24px;
    border-top:1px solid var(--line)
}
 .filter-block h4{
    font-size:17px;
    margin-bottom:6px
}
 .wave{
    width:56px;
    height:8px;
    margin-bottom:14px;
    color:var(--sky)
}
 .check{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:7px 0;
    font-size:15px;
    color:#2a3b52;
    cursor:pointer
}
 .check label{
    display:flex;
    gap:10px;
    align-items:center;
    cursor:pointer;
     font-size: 13px;
}
 .check input{
    accent-color:var(--blue-700);
    width:17px;
    height:17px
}
 .check em{
    font-style:normal;
    font-size:12.5px;
    color:var(--muted);
    background:var(--ice);
    padding:1px 9px;
    border-radius:20px
}
 .size-chips{
    display:flex;
    flex-wrap:wrap;
    gap:8px
}
 .chip {
     padding: 3px 13px;
     border: 1.5px solid #e1e8f1;
     border-radius: 30px;
     font-size: 14px;
     color: #2a3b52;
     transition: .2s;
}
 .chip:hover{
    border-color:var(--sky)
}
 .chip.active{
    background:var(--blue-700);
    border-color:var(--blue-700);
    color:#fff
}
 .range{
    width:100%;
    accent-color:var(--blue-700);
    margin:8px 0 4px
}
 .range-vals{
    display:flex;
    justify-content:space-between;
    font-size:13px;
    color:var(--muted)
}
 .promo{
    margin-top:26px;
    border-radius:14px;
    padding:22px;
    color:#fff;
    background:linear-gradient(140deg,var(--blue-700),var(--sky))
}
 .promo h4{
    color:#fff;
    font-size:18px
}
 .promo p{
    font-size:14px;
    margin:6px 0 14px;
    color:#e6f3ff
}
 .promo .btn{
    background:#fff;
    color:var(--blue-700);
    padding:9px 20px;
    font-size:14px
}
 .toolbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    margin-bottom:24px;
    flex-wrap:wrap
}
 .toolbar p{
    color:var(--muted);
    font-size:15px
}
 .toolbar p b{
    color:var(--ink)
}
 .toolbar-right{
    display:flex;
    gap:12px;
    align-items:center
}
 select.sort{
    padding:11px 40px 11px 18px;
    border:1.5px solid var(--line);
    border-radius:30px;
    background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%230b4fa8' stroke-width='2'%3E%3Cpath d='M1 1l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 16px center;
    appearance:none;
    font:inherit;
    font-size:14.5px;
    color:var(--ink)
}
 .view-toggle{
    display:flex;
    gap:6px
}
 .view-toggle button{
    width:42px;
    height:42px;
    border-radius:12px;
    background:#fff;
    border:1.5px solid var(--line);
    display:grid;
    place-items:center;
    color:var(--muted)
}
 .view-toggle button.active{
    background:var(--blue-700);
    color:#fff;
    border-color:var(--blue-700)
}
 .view-toggle svg{
    width:18px;
    height:18px
}

 .card{
    background:#fff;
    border-radius:var(--radius);
    padding:14px 14px 22px;
    box-shadow:var(--shadow-sm);
    transition:.3s;
    position:relative;
    display:flex;
    flex-direction:column;
    border:1px solid transparent
}
 .card:hover{
    transform:translateY(-6px);
    box-shadow:var(--shadow);
    border-color:#d3e6fa
}
 .card-img{
    position:relative;
    border-radius:12px;
    background:radial-gradient(circle at 50% 35%,#fff,#eaf3fc 75%);
    aspect-ratio:1/1.05;
    display:grid;
    place-items:center;
    overflow:hidden
}
 .card-img svg.bottle{
    height:78%;
    width:auto;
    filter:drop-shadow(0 14px 14px rgba(11,79,168,.18));
    transition:.4s
}
 .card:hover .card-img svg.bottle{
    transform:scale(1.06) rotate(-2deg)
}
 .tag{
    position:absolute;
    top:12px;
    left:12px;
    background:var(--blue-700);
    color:#fff;
    font-size:12px;
    font-weight:500;
    padding:4px 12px;
    border-radius:20px
}
 .tag.new{
    background:var(--sky)
}
 .tag.sale{
    background:#ef5b5b
}
 .wish{
    position:absolute;
    top:10px;
    right:10px;
    width:36px;
    height:36px;
    border-radius:50%;
    background:#fff;
    display:grid;
    place-items:center;
    color:var(--blue-700);
    box-shadow:var(--shadow-sm);
    transition:.2s
}
 .wish:hover{
    background:var(--blue-700);
    color:#fff
}
 .wish svg{
    width:17px;
    height:17px
}
 .quick{
    position:absolute;
    left:12px;
    right:12px;
    bottom:-56px;
    transition:.3s;
    display:flex;
    gap:8px
}
 .card:hover .quick{
    bottom:12px
}
 .quick .btn{
    flex:1;
    padding:10px;
    font-size:14px
}
 .card-body{
    padding:18px 8px 0;
    text-align:center;
    display:flex;
    flex-direction:column;
    flex:1
}
 .cat{
    font-size:12px;
    letter-spacing:1.4px;
    text-transform:uppercase;
    color:var(--blue-500);
    font-weight:500
}
 .card h3{
    font-size:19px;
    margin:6px 0 4px
}
 .card h3 a:hover{
    color:var(--blue-700)
}
 .sizes{
    font-size:13.5px;
    color:var(--muted)
}
 .stars{
    color:#f5b301;
    font-size:14px;
    letter-spacing:2px;
    margin-top:6px
}
 .stars small{
    color:var(--muted);
    letter-spacing:0;
    font-size:12.5px;
    margin-left:4px
}
 .price{
    margin-top:auto;
    padding-top:12px;
    font-size:20px;
    font-weight:600;
    color:var(--blue-700)
}
 .price del{
    font-weight:300;
    color:#9aa8ba;
    font-size:15px;
    margin-left:6px
}
 .price small{
    font-weight:400;
    font-size:13px;
    color:var(--muted)
}
 .pagination{
    display:flex;
    justify-content:center;
    gap:8px;
    margin-top:44px
}
 .pagination a{
    width:44px;
    height:44px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#fff;
    border:1.5px solid var(--line);
    font-weight:500;
    transition:.2s
}
 .pagination a:hover{
    border-color:var(--blue-700);
    color:var(--blue-700)
}
 .pagination a.active{
    background:var(--blue-700);
    color:#fff;
    border-color:var(--blue-700)
}
 .shop {
     padding: 50px 0 80px;
     background: #f6f9fd;
}
 .products{
     display:grid;
     grid-template-columns:repeat(3,1fr);
     gap:24px 
}
 .card{
     background:#fff;
     border-radius:var(--radius);
     padding:14px 14px 22px;
     box-shadow:var(--shadow-sm);
     transition:.3s;
     position:relative;
     display:flex;
     flex-direction:column;
     border:1px solid transparent 
}
 .card:hover{
     transform:translateY(-6px);
     box-shadow:var(--shadow);
     border-color:#d3e6fa 
}
 .card-img{
     position:relative;
     border-radius:12px;
     background:radial-gradient(circle at 50% 35%,#fff,#eaf3fc 75%);
     aspect-ratio:1/1.05;
     display:grid;
     place-items:center;
     overflow:hidden 
}
 .card-img svg.bottle{
     height:78%;
     width:auto;
     filter:drop-shadow(0 14px 14px rgba(11,79,168,.18));
     transition:.4s 
}
 .card:hover .card-img svg.bottle{
     transform:scale(1.06) rotate(-2deg) 
}
 .tag{
     position:absolute;
     top:12px;
     left:12px;
     background:var(--blue-700);
     color:#fff;
     font-size:12px;
     font-weight:500;
     padding:4px 12px;
     border-radius:20px 
}
 .tag.new{
     background:var(--sky) 
}
 .tag.sale{
     background:#ef5b5b 
}
 .wish{
     position:absolute;
     top:10px;
     right:10px;
     width:36px;
     height:36px;
     border-radius:50%;
     background:#fff;
     display:grid;
     place-items:center;
     color:var(--blue-700);
     box-shadow:var(--shadow-sm);
     transition:.2s 
}
 .wish:hover{
     background:var(--blue-700);
     color:#fff 
}
 .wish svg{
     width:17px;
     height:17px 
}
 .quick{
     position:absolute;
     left:12px;
     right:12px;
     bottom:-56px;
     transition:.3s;
     display:flex;
     gap:8px 
}
 .card:hover .quick{
     bottom:12px 
}
 .quick .btn{
     flex:1;
     padding:10px;
     font-size:14px 
}
 .card-body{
     padding:18px 8px 0;
     text-align:center;
     display:flex;
     flex-direction:column;
     flex:1 
}
 .cat{
     font-size:12px;
     letter-spacing:1.4px;
     text-transform:uppercase;
     color:var(--blue-500);
     font-weight:500 
}
 .card h3 a {
     color: #000;
}
 .card h3 {
     font-size: 14px;
     margin: 6px 0 4px;
     color: #000;
     line-height: 26px;
}
 .card h3 a:hover{
     color:#f5b301;
}
 .sizes{
     font-size:13.5px;
     color:var(--muted) 
}
 .stars{
     color:#f5b301;
     font-size:14px;
     letter-spacing:2px;
     margin-top:6px 
}
 .stars small{
     color:var(--muted);
     letter-spacing:0;
     font-size:12.5px;
     margin-left:4px 
}
 .price{
     margin-top:auto;
     padding-top:12px;
     font-size:20px;
     font-weight:600;
     color:var(--blue-700) 
}
 .price del{
     font-weight:300;
     color:#9aa8ba;
     font-size:15px;
     margin-left:6px 
}
 .price small{
     font-weight:400;
     font-size:13px;
     color:var(--muted) 
}
/* ---------- Buttons ---------- */
 .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:13px 26px;
    border-radius:50px;
    font-weight:500;
    font-size:15px;
    transition:.25s
}
 .btn-primary{
    background:#0b4fa8;
    color:#fff;
    box-shadow:0 8px 20px rgba(11,79,168,.25)
}
 .btn-primary:hover{
    background:#0b4fa8;
    transform:translateY(-2px)
}
 .btn-outline{
    border:1.5px solid var(--blue-700);
    color:var(--blue-700)
}
 .btn-outline:hover{
    background:var(--blue-700);
    color:#fff
}
 .btn-sky{
    background:var(--sky);
    color:#fff
}
 .btn-sky:hover{
    background:var(--blue-500)
}
 .btn svg{
    width:18px;
    height:18px
}


/* ==========================================
   AUSTIVA SINGLE PRODUCT PAGE DESIGN
========================================== */

/* Main product page background */
.single-product div.product {
    background: #f5f9ff;
    padding: 35px;
    border-radius: 18px;
}

/* Product summary */
.single-product div.product .summary {
    width: 55% !important;
    float: right !important;
    box-sizing: border-box;
}

/* Product title */
.single-product div.product .product_title {
    font-size: 36px;
    line-height: 1.25;
    font-weight: 700;
    color: #111;
    margin-bottom: 15px;
}

/* Product price */
.single-product div.product p.price,
.single-product div.product span.price {
    color: #9b9900;
    font-size: 27px;
    font-weight: 700;
    margin: 15px 0 25px;
}

/* Description */
.single-product div.product .woocommerce-product-details__short-description {
    color: #344054;
    font-size: 17px;
    line-height: 1.8;
    margin: 20px 0 30px;
}

/* Variation form */
.single-product .variations_form {
    margin-top: 25px;
}

.single-product table.variations {
    width: 100%;
    border: none;
    margin-bottom: 25px;
}

.single-product table.variations tr {
    display: flex;
    flex-direction: column;
    margin-bottom: 22px;
}

.single-product table.variations th.label {
    display: block;
    width: 100%;
    text-align: left;
    padding: 0 0 12px;
}

.single-product table.variations th.label label {
    font-size: 17px;
    font-weight: 700;
    color: #111;
}

.single-product table.variations td.value {
    display: block;
    width: 100%;
    padding: 0;
}

/* Variation dropdown */
.single-product table.variations select {
    width: 100%;
    min-height: 54px;
    padding: 12px 18px;
    border: 1px solid #dce5f2;
    border-radius: 12px;
    background: #fff;
    color: #222;
    font-size: 16px;
}

/* Quantity and buttons */
.single-product .woocommerce-variation-add-to-cart,
.single-product form.cart:not(.variations_form) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    margin-top: 25px;
}

/* Quantity */
.single-product form.cart .quantity {
    display: inline-flex;
    align-items: center;
    background: #fff;
    border: 1px solid #dce5f2;
    border-radius: 40px;
    padding: 8px 14px;
    min-height: 54px;
}

.single-product form.cart .quantity input.qty {
    width: 55px;
    border: none;
    background: transparent;
    font-size: 18px;
    font-weight: 600;
    box-shadow: none;
}

/* Add to cart */
.single-product .single_add_to_cart_button {
    min-height: 54px;
    padding: 14px 30px !important;
    background: #1253ad !important;
    color: #fff !important;
    border: none !important;
    border-radius: 40px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    transition: .3s ease;
}

.single-product .single_add_to_cart_button:hover {
    background: #083f8a !important;
}

/* Variation price */
.single-product .woocommerce-variation-price {
    margin: 15px 0;
    font-size: 22px;
    font-weight: 700;
}

/* Product meta */
.single-product div.product .product_meta {
    margin-top: 35px;
    padding-top: 20px;
    border-top: 1px solid #dce5f2;
    font-size: 14px;
    line-height: 2;
}

/* Product gallery */
.single-product div.product .woocommerce-product-gallery {
    width: 42% !important;
    float: left !important;
    border-radius: 18px;
    overflow: hidden;
}

/* Mobile */
@media (max-width: 767px) {
    .single-product div.product {
        padding: 18px;
    }

    .single-product div.product .summary,
    .single-product div.product .woocommerce-product-gallery {
        width: 100% !important;
        float: none !important;
    }

    .single-product div.product .product_title {
        font-size: 27px;
    }

    .single-product div.product p.price,
    .single-product div.product span.price {
        font-size: 23px;
    }

    .single-product .woocommerce-variation-add-to-cart,
    .single-product form.cart:not(.variations_form) {
        gap: 10px;
    }

    .single-product .single_add_to_cart_button {
        padding: 12px 20px !important;
    }
}
table.variations th {
    background: #f4f8fe;
}
table.variations tr:nth-child(even) td {
    background: #f4f8fe;
}