.pd-wrap { 
    max-width: 1100px; 
    margin: 0 auto; 
    padding: 3rem 1rem 2.5rem; 
}
   
.breadcrumb { 
    font-size: .85rem; 
    color:#777; 
    margin-bottom: 1rem; 
}
    
.breadcrumb a { 
    color:#777; 
    text-decoration:none; 
}
    
.pd-grid { 
    display:grid; 
    grid-template-columns: 1fr; gap: 2rem; 
    align-items: start; 
}
   
@media(min-width: 900px){ 
    .pd-grid { grid-template-columns: 1fr 1fr; } 
}
    
.pd-media { 
    background:#fff; 
    border:1px solid #eee; 
    border-radius: 10px; 
    max-width: 450px; 
    display:flex; 
    align-items:center; 
    justify-content:center; 
    aspect-ratio: 1 / 1; 
}
    
.pd-media img { 
    width:100%; 
    max-width: 420px; 
    height:auto; 
    object-fit: contain; 
}
    
.pd-header { 
    display:flex; 
    justify-content:space-between; 
    align-items:center; 
}
    
.pd-title { 
    font-size: 32px; 
    margin-top: 1rem; 
}
    
.pd-price { 
    font-weight: bold; 
    font-size: 20px; 
}
    
.pd-desc { 
    line-height: 1.9; 
    margin: 2.5rem 0; 
    color:#333; 
}

.pd-stock {
    margin: -1.5rem 0 1.5rem;
    color: #047857;
    font-weight: 700;
}
    
.pd-label { 
    font-weight: bold; 
    margin: 2rem 0 2rem; 
    display:block; 
}
    
.pd-info { 
    display:flex; 
    flex-direction:column; 
}
    
.size-row { 
    display:flex; 
    gap:.6rem; 
    flex-wrap:wrap; 
    margin-bottom:2rem; 
}
    
.size-btn { width:40px; 
    height:40px; 
    border:1px solid #9a9797; 
    border-radius:50%; 
    background:#F8F5F2; 
    cursor:pointer; 
    font-weight:600; 
    display:flex; 
    align-items:center; 
    justify-content:center; 
}
    
.size-btn.active { 
    background:#C49AA0; 
    border-color:#000; 
}
    
.buy-row { 
    margin-top:auto; 
    display:flex; 
    gap:.75rem; 
    align-items:center; 
}
    
.qty { 
    display:flex; 
    align-items:center; 
    gap:.5rem; 
    border-radius:10px; 
    padding:.35rem .5rem; 
}
    
.qty button { border:none; 
    width:34px; 
    height:34px; 
    font-size:1.25rem; 
    cursor:pointer; 
    border:2px solid #C49AA0; 
    border-radius:6px; 
    background:#F9F3EC; 
}
    
.qty input { width:38px; 
    height:31px; 
    text-align:center; 
    border:none; 
    border-radius:6px; 
    font-size:1rem; 
    font-weight:bold; 
    background:#C49AA0; 
}
    
.add-btn { 
    flex:1 1 auto; 
    border:none; 
    border-radius:10px; 
    padding:.9rem 1rem; 
    font-weight:bold; 
    cursor:pointer; 
    background:#C49AA0; 
    color:#fff; 
    box-shadow:0 4px 4px rgba(0,0,0,.5); 
}
    
.add-btn:hover { 
    transform: translateY(-2px); 
}
    
.muted { 
    color:#777; 
}
