/*==================================================
=            PRODUCT HERO
==================================================*/

.jc-product{
    padding:60px 0;
    background:#fff;
}

.jc-product{
    margin:0 auto;
    padding:0 15px;
}

.jc-product-hero{
    display:grid;

    grid-template-columns:620px minmax(0,1fr);

    gap:70px;

    align-items:start;
}

.jc-product-gallery{
    width:100%;
}

.jc-gallery-slider{
    margin-bottom:15px;
}

.jc-gallery-slider img{
    width:100%;
    height:auto;
    object-fit:cover;
    border-radius:12px;
}

.jc-gallery-thumb img{
    width:100%;
    height:100px;
    object-fit:cover;
    border-radius:8px;
    cursor:pointer;
}

.jc-gallery-thumb .swiper-slide{
    opacity:.5;
    transition:.3s;
}

.jc-gallery-thumb .swiper-slide-thumb-active{
    opacity:1;
}

.jc-gallery-thumb .swiper-slide-thumb-active img{
    border:2px solid #005c68;
}

.swiper-button-next, .swiper-button-prev {
    width: 30px;
    height: 30px;
    color:#fff;
    background-color: #005c68;
    border-radius: 50%;
    box-shadow: 0 10px 30px rgba(0,0,0,.12);
}

/*==================================================
=            PRODUCT SUMMARY
==================================================*/

.jc-product-summary{
    display:flex;

    flex-direction:column;

    padding: 15px 0;

    width:100%;
}


/*==================================================
=            PRODUCT TITLE
==================================================*/

.jc-product-title{

    margin:0;

    font-size:22px;

    line-height:1.3;

    font-weight:700;

    color:#1f2937;

}

@media(max-width:991px){

    .jc-product-title{

        font-size:18px;

    }

}

@media(max-width:767px){

    .jc-product-title{

        font-size:18px;

    }

}


/*==================================================
=            PRODUCT RATING
==================================================*/

.jc-product-rating{

    display:flex;

    align-items:center;

    flex-wrap:wrap;

}

.jc-product-stars{

    color:#f59e0b;

    font-size:18px;

    letter-spacing:2px;

    padding-right: 10px;

}

.jc-product-rating-score{

    font-weight:600;

    color:#111827;

    padding-right: 10px;

}

.jc-product-review-link{

    color:#005c68;

    text-decoration:none;

    font-size:15px;

    padding-right: 10px;

}

.jc-product-review-link:hover{

    text-decoration:underline;

}


/*==================================================
=            PRODUCT META
==================================================*/

.jc-product-meta{

    border-top:1px solid #e5e7eb;

    border-bottom:1px solid #e5e7eb;

    padding:15px 0;

    display:flex;

    flex-direction:column;

}

.jc-meta-item{

    display:grid;

    grid-template-columns:140px 1fr;

    align-items:center;

    padding: 12px 0;

}

.jc-meta-label{

    color:#6b7280;

    font-size:15px;

    font-weight:500;

}

.jc-meta-value{

    color:#111827;

    font-size:15px;

    font-weight:600;

    word-break:break-word;

}

/*=========================================
=          Product Description
=========================================*/

.jc-product-description{

    margin:60px 0;
    text-align: justify;

}

.jc-product-description .jc-content{

    background:#fff;

    border:1px solid #e5e7eb;

    border-radius:12px;

    padding:40px;

}

.jc-product-short-description{

    margin:15px 0;

    font-size:16px;

    line-height:1.8;

    color:#4b5563;

}

.jc-product-short-description p{

    margin:0 0 12px;

}

.jc-product-short-description p:last-child{

    margin-bottom:0;

}

/*=========================================
=          Typography
=========================================*/

.jc-product-description h2{

    margin:0 0 24px;
    font-size:30px;
    font-weight:700;
    line-height:1.3;
    color:#005c68;

}

.jc-product-description h3{

    margin:40px 0 18px;

    font-size:24px;

    font-weight:600;

    line-height:1.4;

    color:#005c68;

}

.jc-product-description h4{

    margin:30px 0 15px;

    font-size:20px;

    font-weight:600;

    color:#005c68;

}

.jc-product-description p{

    margin:0 0 20px;

    color:#4b5563;

    font-size:16px;

    line-height:1.8;

}

.jc-product-description strong{

    color:#111827;

    font-weight:600;

}

.jc-product-description a{
    color:#005c68;
    text-decoration:none;
    transition:.25s;

}

.jc-product-description a:hover{

    color:#004852;

    text-decoration:underline;

}

/*=========================================
=          List
=========================================*/

.jc-product-description ul,

.jc-product-description ol{

    margin:20px 0;

    padding-left:22px;

}

.jc-product-description li{

    margin-bottom:10px;

    line-height:1.8;

    color:#4b5563;

}

/*=========================================
=          Image
=========================================*/

.jc-product-description img{

    display:block;

    max-width:100%;

    height:auto;

    margin:30px auto;

    border-radius:8px;

}

/*=========================================
=          Table
=========================================*/

.jc-product-description table{

    width:100%;

    border-collapse:collapse;

    margin:30px 0;

}

.jc-product-description table th{

    background:#f8fafc;

    color:#111827;

    font-weight:600;

}

.jc-product-description table th,

.jc-product-description table td{
    padding:14px 18px;
    border:1px solid #e5e7eb;

    text-align:left;

}
/*=========================================
=          Blockquote
=========================================*/

.jc-product-description blockquote{

    margin:30px 0;

    padding:20px 25px;

    border-left:4px solid #005c68;

    background:#f8fafc;

    color:#374151;

    font-style:italic;

}

/*=====================================
PAGINATION
=====================================*/

.jc-pagination {
  margin-top: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.jc-pagination .nav-links {
	display: flex !important;
	flex-direction: row !important;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.jc-pagination .navigation {
	display: block !important;
	width: 100%;
}

.jc-pagination .page-numbers {
  display: inline-flex!important;
  width: auto !important;
  flex: none !important;
  align-items: center;
  justify-content: center;
  min-width: 46px;
  height: 46px;
  margin: 0 6px;
  padding: 0 16px;
  border: 1px solid #e5ddd5;
  border-radius: 6px;
  background: #ffffff;
  color: #111827;

  font-size: 15px;
  font-weight: 600;
  line-height: 1;

  text-decoration: none;

  transition: all 0.3s ease;
}

.jc-pagination .page-numbers:hover {
    background: #111827;
    border-color: #111827;
    color: #ffffff;
}

.jc-pagination .page-numbers.current {
    background: #1677ff;
    border-color: #1677ff;
    color: #ffffff;
    cursor: default;
}

.jc-pagination .page-numbers.prev,
.jc-pagination .page-numbers.next {
  padding: 0 18px;
  font-weight: 700;
  min-width:56px; 
}

.jc-pagination .page-numbers.dots {
  border: none;
  background: transparent;
  color: #999999;
  cursor: default;
  min-width: auto;
  padding: 0 8px;
}

.jc-pagination .page-numbers.dots:hover {
  background: transparent;
  border-color: transparent;
  color: #999999;
}

/*=========================================
=          HR
=========================================*/

.jc-product-description hr{

    margin:40px 0;

    border:none;

    border-top:1px solid #e5e7eb;

}

/*=========================================
=          Responsive
=========================================*/

@media(max-width:991px){

    .jc-product-description{

        margin:40px 0;

    }

    .jc-product-description .jc-content{

        padding:30px;

    }

    .jc-product-description h2{

        font-size:20px!important;

    }

    .jc-product-description h3{

        font-size:16px!!important;

    }

}

@media(max-width:767px){

    .jc-product-description{

        margin:30px 0;

    }

    .jc-product-description .jc-content{

        padding:24px;

        border-radius:8px;

    }

    .jc-product-description h2{

        font-size:20px!!important;

    }

    .jc-product-description h3{

        font-size:16px;

    }

    .jc-product-description p{

        font-size:14px!important;

    }

    .jc-product-description table{

        display:block;

        overflow-x:auto;

    }

}


/*==================================================
=            STOCK STATUS
==================================================*/

.jc-stock-dot{

    display:inline-block;

    width:10px;

    height:10px;

    border-radius:50%;

    margin-right:8px;

    background:#16a34a;

}

.jc-stock-dot.out{

    background:#dc2626;

}

.jc-stock-dot.backorder{

    background:#f59e0b;

}

.jc-stock-instock{

    color:#15803d;

    font-weight:700;

}

.jc-stock-outofstock{

    color:#dc2626;

    font-weight:700;

}

.jc-stock-onbackorder{

    color:#d97706;

    font-weight:700;

}


/*==================================================
=            PRODUCT PRICE
==================================================*/

.jc-product-price{

    display:flex;

    align-items:center;

    gap:12px;

    flex-wrap:wrap;

    margin:20px 0;

}

.jc-product-price-sale{

    font-size:25px;

    font-weight:700;

    color:#25b14e;

}

.jc-product-price-current{

    font-size:22px;

    font-weight:700;

    color:#25b14e;

}

.jc-product-price-regular{

    font-size:16px;

    color:#9ca3af;

    text-decoration:line-through;

}

.jc-product-price-discount{

    padding:6px 12px;

    border-radius:30px;

    background:#eaf8ef;

    color:#25b14e;

    font-size:13px;

    font-weight:700;

    text-transform:uppercase;

}


/*==================================================
=            MOBILE
==================================================*/

@media(max-width:767px){

    .jc-meta-item{

        grid-template-columns:110px 1fr;

    }

    .jc-product-price-current,

    .jc-product-price-sale{

        font-size:20px;

    }

    .jc-product-price-regular{

        font-size:16px;

    }

}

/*==================================================
=            PRODUCT QUANTITY
==================================================*/

.jc-product-quantity{

    display:flex;

    align-items:center;

    gap:20px;

}

.jc-product-quantity label{

    margin:0;

    font-size:15px;

    font-weight:600;

    color:#374151;

}


/* Quantity */

.jc-qty{

    display:flex;

    align-items:center;

    border:1px solid #d1d5db;

    border-radius:8px;

    overflow:hidden;

    width:140px;

    height:48px;

}

.jc-qty button{

    width:45px;
    height:48px;
    border:0;
    background:#1f385f;
    cursor:pointer;
    transition:.25s;
    font-size:15px;
    padding-left: 15px;

}

.jc-qty button:hover{
    background:#005c68;
    color:#fff;
}

.jc-qty input{

    width:50px;

    border:0;

    outline:0;

    text-align:center;

    font-size:16px;

    font-weight:600;

    background:#fff;

}

/* Chrome */

.jc-qty input::-webkit-inner-spin-button,
.jc-qty input::-webkit-outer-spin-button{

    -webkit-appearance:none;

    margin:0;

}

/* Firefox */

.jc-qty input{

    -moz-appearance:textfield;

}



/*==================================================
=            PRODUCT ACTION
==================================================*/

.jc-product-actions{

    display:flex;

    gap:15px;

    margin-top:25px;

    flex-wrap:wrap;

}


/* Button */

.jc-btn{

    height:52px;

    padding:0 32px;

    border-radius:8px;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    text-decoration:none;

    cursor:pointer;

    transition:.3s;

    font-size:16px;

    font-weight:600;

}

.jc-btn-primary{

    flex:1;

    border:0;

    background:#005c68;

    color:#fff;

}

.jc-btn-primary:hover{

    background:#dedede;

}
.jc-btn-secondary{

    min-width:180px;
    border:2px solid #005c68;
    color:#005c68;
    background:#fff;

}

.jc-btn-secondary:hover{

    background:#005c68;

    color:#fff;

}


/*==================================================
=            TRUST BAR
==================================================*/

.jc-product-trust{

    margin-top:35px;

    border-top:1px solid #e5e7eb;

    padding-top:25px;

    display:grid;

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

    gap:18px;

}

.jc-trust-item{

    display:flex;

    align-items:flex-start;

    gap:15px;

}

.jc-trust-item i{

    width:46px;

    height:46px;

    border-radius:50%;

    background:#ecfeff;

    color:#005c68;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:18px;

    flex-shrink:0;

}

.jc-trust-item strong{

    display:block;

    color:#111827;

    margin-bottom:5px;

    font-size:15px;

}

.jc-trust-item span{

    display:block;

    color:#6b7280;

    line-height:1.5;

    font-size:14px;

}



/*==================================================
=            RESPONSIVE
==================================================*/

@media(max-width:991px){

    .jc-product-trust{

        grid-template-columns:1fr 1fr;

    }

}


@media(max-width:767px){

    .jc-product-actions{

        flex-direction:column;

    }

    .jc-btn {
        height: 52px;
        padding: 10px 20px;
        border-radius: 8px;
        gap: 10px;
        text-decoration: none;
        font-size: 14px;
        font-weight: 600;
    }

    .jc-product-quantity{

        flex-direction:column;

        align-items:flex-start;

    }

    .jc-product-trust{

        grid-template-columns:1fr;

    }

}