/* ========================================= */
/* LUXURY PRODUCT DETAIL PAGE                */
/* ========================================= */
.p-detail-hero {
    display: grid;
    grid-template-columns: 60% 40%;
    min-height: 100vh;
    align-items: center;
    padding: 8rem 5% 4rem 5%;
    gap: 4rem;
    position: relative;
}

.p-gallery { position: relative; }
.p-main-img {
    width: 100%; height: 80vh; object-fit: cover;
    border-radius: 24px;
    box-shadow: 0 30px 60px rgba(0,0,0,0.15);
    transition: transform 0.3s ease;
}

/* Thumbnails (Combined into one clean block) */
.p-thumbs {
    display: flex;
    gap: 1rem;
    margin-top: 1.5rem;
    overflow-x: auto; /* Allows horizontal scroll if needed */
    padding-bottom: 0.5rem;
    scrollbar-width: none; /* Hide scrollbar Firefox */
}
.p-thumbs::-webkit-scrollbar { display: none; /* Hide scrollbar Chrome/Safari */ }

.p-thumb {
    width: 100px; height: 120px; object-fit: cover;
    border-radius: 12px; cursor: pointer;
    transition: opacity 0.3s; opacity: 0.6;
    flex-shrink: 0; /* Prevents thumbnails from squishing when scrolling */
}
.p-thumb.active, .p-thumb:hover { opacity: 1; }

.p-info-card {
    background: rgba(255,255,255,0.6);
    backdrop-filter: blur(25px) saturate(180%);
    -webkit-backdrop-filter: blur(25px) saturate(180%);
    border: 1px solid rgba(255,255,255,0.8);
    padding: 3rem; border-radius: 24px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.05);
}
.p-info-card .p-cat { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.2em; color: #A87852; }
.p-info-card h1 { font-size: 3rem; margin: 1rem 0; font-family: 'Cormorant Garamond', serif; }
.p-info-card .p-price { font-size: 1.5rem; font-weight: 600; margin-bottom: 2rem; color: #1F1F1B; }
.p-info-card .p-desc { font-size: 1rem; line-height: 1.7; color: #4A3B2A; margin-bottom: 2rem; }

/* Transparency / Impact Box */
.impact-box {
    background: rgba(44, 74, 47, 0.1);
    border-left: 3px solid #2C4A2F;
    padding: 1.5rem;
    margin-bottom: 2rem;
    border-radius: 0 12px 12px 0;
}
.impact-box h4 { font-family: 'Inter', sans-serif; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.1em; color: #2C4A2F; margin-bottom: 0.5rem; }
.impact-box p { font-size: 0.9rem; color: #1F1F1B; }

.qty-selector { display: flex; align-items: center; gap: 1rem; margin-bottom: 2rem; }
.qty-btn { width: 40px; height: 40px; border: 1px solid rgba(0,0,0,0.1); background: transparent; font-size: 1.2rem; cursor: pointer; border-radius: 8px; }
.qty-input { width: 50px; text-align: center; font-size: 1.2rem; border: 1px solid rgba(0,0,0,0.1); border-radius: 8px; height: 40px; background: transparent; }

/* Related Products */
.related-section { padding: 6rem 5%; background: #1F1F1B; color: #F7F4F0; }
.related-section .overline { color: #E8B84B; }
.related-section h2 { color: #F7F4F0; }
.related-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; margin-top: 3rem; }

/* ========================================= */
/* PRODUCT OPTIONS & VARIATIONS              */
/* ========================================= */
.p-options {
    margin-bottom: 2rem;
}

.option-group {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.option-btn {
    background: transparent;
    border: 1px solid rgba(0,0,0,0.2);
    color: #1F1F1B;
    padding: 0.6rem 1.5rem;
    border-radius: 4px;
    font-family: 'Inter', sans-serif;
    font-size: 0.85rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.option-btn:hover {
    border-color: #1F1F1B;
    background: rgba(0,0,0,0.05);
}

.option-btn.active {
    background: #1F1F1B;
    color: #F7F4F0;
    border-color: #1F1F1B;
    box-shadow: 0 4px 15px rgba(31,31,27,0.2);
}