.line-climp-2 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* number of lines to show */
            line-clamp: 2;
    -webkit-box-orient: vertical;
 }



div#productQuickView .product-text-container {
    min-height:500px;
    min-width:500px;
}
div#productQuickView .quick-image-box{
    min-height:500px;
}

@media (max-width:780px){
    div#productQuickView .product-text-container {
        min-height:500px;
        min-width:350px;
    }
    div#productQuickView .quick-image-box{
        min-height:250px;
    }
}

@media (max-width:600px){
    div#productQuickView .product-text-container {
        min-height:250px;
        min-width:250px;
    }
    div#productQuickView .quick-image-box{
        min-height:250px;
    }
}

@media (max-width:600px){
    div#productQuickView .modal-dialog{
        margin:auto;
    }
}

.items_active
{
    color: #ffffff;
    background: #b64747;
    /* transform: skewY(4deg); */
    padding: 0 5px;
    border-radius: 2px;
}


fieldset {
    border-radius: 8px;
    border-color: #ffffff8c;
    margin-bottom: 30px;
    position: relative;
}

legend {
    padding: 0 15px;
}



.product_unit .option-list,
.product-text-container_fornt {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top:10px;
}

.product_unit .option,
.product-text-container_fornt .option{
    flex:1 1 25%;
}

.product_unit .option input,
.product-text-container_fornt .option input{
    display:none;
}



.product_unit .option  .option-label,
.product-text-container_fornt  .option-label{
    cursor:pointer;
    display:flex;
    flex-direction:column;
    border:1px solid gray;
    display:inline-flex;
    width:100%;
    padding:7px;;
    border-radius:5px;
        text-align:center;
    gap:5px;
}

.product_unit .option input:checked ~ .option-label,
.product-text-container_fornt .option input:checked ~ .option-label{
    background:#198754;
    color:white;

}

.product_unit {
    padding-top:30px !important;
}



.customize_menu_button {
    position: absolute;
    top: 0;
    right: 0;
    overflow:hidden;
    white-space:nowrap;
    padding: 2px 0 2px 6px;
    z-index: 444444;
    width: auto;

}

.customize_menu_button:hover {
    position: absolute;
    top: 0;
    right: 0;


}
.customize_menu_button:hover span{
    width:auto;
}
.customize_menu_button i{
    display:inline-block;
}
.customize_menu_button span{
    width:0px;
    transition:2.5s linear;
}
p:has(.customize_menu_button),
form:has(.customize_menu_button),
div:has(.customize_menu_button){
    position: relative;
}

.font-weight-bold{
    font-weight: 600 !important;
}
.font-weight-bolder{
    font-weight: 700 !important;
}

.white-space-nowrap{
    white-space:nowrap;
}

/* ===== Global Readability Upgrade ===== */
html {
    font-size: 16px;
}

body {
    font-family: var(--dynamic-font), "Hind Siliguri", sans-serif;
    color: #2a2a2a;
}



h1, h2, h3, h4, h5, h6 {
    color: #201b17;
    letter-spacing: 0.1px;
}

.section,
section {
    scroll-margin-top: 90px;
}

.main-title h1,
.main-title h2,
.main-title h3 {
    font-weight: 700;
    margin-bottom: 8px;
}

.main-title p,
.section-subtitle,
.sub_title {
    color: #74685c;
}

.card,
.featured-product-card,
.product-card,
.checkout-box,
.single-faq,
.single_faq {
    border-radius: 12px !important;
}



.btn-primary,
.active-btn,
.cus-btn.active-btn {
    background: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: white;
    font-weight: 600;
}

.btn-outline-primary {
    color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.btn-outline-primary:hover {
    background: var(--primary-color) !important;
    color: #141414 !important;
}

.form-control,
.form-select,
select,
input,
textarea {
    border-radius: 10px !important;
}

.form-control:focus,
.form-select:focus,
select:focus,
input:focus,
textarea:focus {
    border-color: color-mix(in srgb, var(--primary-color), #fff 35%) !important;
    box-shadow: 0 0 0 0.18rem color-mix(in srgb, var(--primary-color), transparent 78%) !important;
}

.price,
.name_price span {
    font-weight: 700;
}

.name_price_old span {
    color: #8f8f8f;
}

.line-climp-2 {
    line-height: 1.4;
}

@media (max-width: 991px) {
    h1 { font-size: 1.8rem; }
    h2 { font-size: 1.55rem; }
    h3 { font-size: 1.3rem; }
    .main-title { text-align: left; }
    .btn,
    .cus-btn {
        font-size: 0.95rem;
        padding: 0.55rem 0.9rem;
    }
}
