/* ============================================================================
   Kasi Mattress
   Product Information
   File: assets/css/pages/product-information.css
   Version: 5.0.0
   ============================================================================ */

.km-product-information{
    display:flex;
    flex-direction:column;
    gap:0;
}

.km-product-information-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:10px;
}

.km-product-rating{
    display:flex;
    align-items:center;
}

.km-product-information .km-rating-stars{
    display:inline-flex;
    align-items:center;
    gap:5px;
    color:var(--accent);
}

.km-product-rating{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:18px;
}

.km-product-information .km-rating-stars i{
    color:inherit;
    font-size:15px;
}

.km-product-availability{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 10px;
    border:1px solid var(--border);
    border-radius:999px;
    background:var(--white);
    color:var(--text);
    font-size:.76rem;
    font-weight:700;
    white-space:nowrap;
}

.km-product-availability-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--success);
    flex:0 0 auto;
}

.km-product-availability-out_of_stock .km-product-availability-dot{
    background:var(--danger);
}

.km-product-availability-pre_order .km-product-availability-dot{
    background:var(--warning);
}

.km-product-title{
    margin:0;
    color:var(--text-dark);
    font-size:clamp(1.8rem,2.7vw,2.45rem);
    line-height:1.10;
    letter-spacing:-.035em;
    font-weight:800;
}

.km-product-description{
    max-width:680px;
    margin:14px 0 0;
    color:var(--text-light);
    font-size:.94rem;
    line-height:1.6;
}

.km-product-price-block{
    margin-top:10px;
    padding-top:10px;
    border-top:1px solid var(--border);
}

.km-product-price-label{
    display:block;
    margin-bottom:7px;
    color:var(--text-light);
    font-size:.8rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.km-product-pricing{
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:12px;
}

.km-current-price{
    color:var(--primary);
    font-size:clamp(1.85rem,3vw,2.35rem);
    line-height:1;
    font-weight:850;
    letter-spacing:-.035em;
}

.km-old-price{
    color:var(--text-light);
    font-size:.94rem;
    text-decoration:line-through;
}

.km-product-sale-badge{
    display:inline-flex;
    align-items:center;
    min-height:26px;
    padding:4px 9px;
    border-radius:999px;
    background:var(--accent);
    color:var(--primary-dark);
    font-size:.72rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.km-product-benefits{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-top:22px;
    padding:14px 0;
    border-top:1px solid var(--border);
    border-bottom:1px solid var(--border);
}

.km-product-benefit{
    display:flex;
    align-items:center;
    gap:13px;
    min-width:0;
}

.km-product-benefit-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    flex:0 0 34px;
    border-radius:var(--radius-md);
    background:color-mix(in srgb, var(--accent) 16%, var(--white));
    color:var(--primary);
}

.km-product-benefit span:last-child{
    display:flex;
    flex-direction:column;
    gap:2px;
    min-width:0;
}

.km-product-benefit strong{
    color:var(--text-dark);
    font-size:.82rem;
    line-height:1.3;
}

.km-product-benefit small{
    color:var(--text-light);
    font-size:.74rem;
    line-height:1.4;
}

.km-product-actions{
    display:flex;
    gap:12px;
    margin-top:20px;
}

.km-product-actions .km-btn{
    min-height:46px;
    flex:1;
    justify-content:center;
    gap:8px;
}

.km-product-action-note{
    margin:10px 0 0;
    color:var(--text-light);
    font-size:.74rem;
    line-height:1.55;
}

.km-product-action-note strong{
    color:var(--text);
}

@media (max-width:768px){
    .km-product-information-heading{
        align-items:flex-start;
        gap:10px;
    }

    .km-product-title{
        font-size:clamp(1.7rem,7vw,2.15rem);
    }

    .km-product-description{
        font-size:.92rem;
    }

    .km-product-price-block{
        margin-top:20px;
        padding-top:18px;
    }

    .km-product-benefits{
        margin-top:20px;
    }
}

@media (max-width:480px){
    .km-product-actions{
        flex-direction:column;
    }

    .km-product-actions .km-btn{
        width:100%;
    }
}

@media (prefers-reduced-motion:reduce){
    .km-product-information *{
        transition:none !important;
    }
}
