/* ===========================================
   PRODUCT PAGE
   PRELOVED CLOTHING
=========================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:'Inter',sans-serif;
    background:#F8F6F2;
    color:#1D1D1D;

}

img{

    width:100%;
    display:block;

}

a{

    text-decoration:none;
    color:inherit;

}

.container{

    width:min(1280px,90%);
    margin:auto;

}

/* ===========================================
BREADCRUMB
=========================================== */

.breadcrumb{

    padding:35px 0;

    font-size:.9rem;

    color:#777;

}

/* ===========================================
PRODUCT HERO
=========================================== */

.product-hero{

    padding:80px 0 120px;

}

.product-container{

    display:grid;

    grid-template-columns:1.05fr .95fr;

    gap:80px;

    align-items:start;

}

/* ===========================================
GALLERY
=========================================== */

.gallery{

    position:sticky;

    top:120px;

}

.main-image{

    border-radius:20px;

    overflow:hidden;

    margin-bottom:20px;

    background:white;

}

.main-image img{

    height:760px;

    object-fit:cover;

    transition:.4s;

}

.thumbnails{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:15px;

}

.thumbnails img{

    height:145px;

    object-fit:cover;

    border-radius:12px;

    cursor:pointer;

    transition:.35s;

    border:2px solid transparent;

}

.thumbnails img:hover{

    transform:translateY(-5px);

    border-color:#A67C52;

}

.thumb.active{

    border:2px solid #A67C52;

}

/* ===========================================
PRODUCT DETAILS
=========================================== */

.category{

    color:#A67C52;

    letter-spacing:3px;

    font-size:.85rem;

}

.product-details h1{

    font-family:"Cormorant Garamond",serif;

    font-size:4.2rem;

    line-height:1.05;

    font-weight:600;

    margin:18px 0 25px;

}

.rating{

    color:#777;

    margin-bottom:35px;

}

.rating span{

    margin-left:12px;

}

.description{

    color:#666;

    line-height:2;

    margin:35px 0;

}

/* ===========================================
PRICE BOX
=========================================== */

.price-box{

    background:white;

    border-radius:18px;

    padding:35px;

    margin-bottom:30px;

    border:1px solid #ECE6DF;

}

.price-box h2{

    font-size:2.6rem;

    margin-bottom:10px;

}

.price-box strong{

    color:#A67C52;

}

.availability{

    margin:30px 0;

    color:#2d7a3e;

    font-weight:600;

}

/* ===========================================
OPTIONS
=========================================== */

.product-options{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:20px;

}

.option{

    display:flex;

    flex-direction:column;

}

.option label{

    margin-bottom:10px;

    font-weight:600;

}

.option select{

    padding:15px;

    border:1px solid #ddd;

    outline:none;

    background:white;

    font-size:1rem;

}

/* ===========================
   PRODUCT ACTION BUTTONS
=========================== */

.action-buttons{

    display:flex;
    gap:18px;
    margin:35px 0;

}

.buy-btn,
.rent-btn{

    flex:1;

    height:56px;

    border-radius:10px;

    font-family:"Cormorant Garamond",sans-serif;

    font-size:1.35rem;

    font-weight:600;

    letter-spacing:.2px;

    cursor:pointer;

    transition:all .3s ease;

}

.buy-btn{

    background:#1d1d1d;

    color:#fff;

    border:none;

}

.buy-btn:hover{

    background:#A67C52;

}

.rent-btn{

    background:#fff;

    color:#1d1d1d;

    border:1px solid #d9cbb8;

}

.rent-btn:hover{

    border-color:#A67C52;

    color:#A67C52;

    background:#faf8f5;

}

/* ===========================================
EXTRA INFO
=========================================== */

.product-extra{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:20px;

    margin-top:50px;

}

.product-extra div{

    background:white;

    border:1px solid #ECE6DF;

    border-radius:16px;

    padding:25px;

}

.product-extra strong{

    display:block;

    margin-bottom:8px;

    font-size:1rem;

}

.product-extra p{

    color:#777;

    line-height:1.7;

}

/*==========================================
PRODUCT DESCRIPTION
==========================================*/

.product-description{

    padding:120px 0;

    background:#ffffff;

}

.description-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    margin-top:70px;

}

.description-grid h3{

    font-family:"Cormorant Garamond",serif;

    font-size:2.3rem;

    margin-bottom:25px;

}

.description-grid p{

    color:#666;

    line-height:2;

    margin-bottom:25px;

}

/*==========================================
SPECIFICATION TABLE
==========================================*/

.spec-table{

    width:100%;

    border-collapse:collapse;

    background:#F8F6F2;

    border-radius:18px;

    overflow:hidden;

}

.spec-table tr{

    border-bottom:1px solid #E7E2DA;

}

.spec-table tr:last-child{

    border-bottom:none;

}

.spec-table td{

    padding:22px 25px;

    font-size:.95rem;

}

.spec-table td:first-child{

    font-weight:600;

    width:40%;

}

.spec-table td:last-child{

    color:#666;

}

/*==========================================
RENTAL POLICY
==========================================*/

.rental-policy{

    padding:130px 0;

    background:#F8F6F2;

}

.policy-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:70px;

}

.policy-card{

    background:white;

    border-radius:18px;

    padding:35px;

    border:1px solid #ECE6DF;

    transition:.35s;

}

.policy-card:hover{

    transform:translateY(-8px);

    box-shadow:0 18px 35px rgba(0,0,0,.07);

}

.policy-card h3{

    font-family:"Cormorant Garamond",serif;

    font-size:2rem;

    margin-bottom:18px;

}

.policy-card p{

    color:#666;

    line-height:1.8;

}

/* =========================
   FAQ
========================= */

.faq-section{

    padding:120px 0;

}

.faq-item{

    border-bottom:1px solid #ece6df;

    transition:.35s ease;

}

.faq-question{

    display:flex;
    justify-content:space-between;
    align-items:center;

    cursor:pointer;

    padding:34px 0;

    transition:.35s ease;

}

.faq-question h3{

    font-size:1.25rem;

    font-weight:600;

    transition:.3s;

}

.faq-icon{

    font-size:32px;

    color:#b5895a;

    transition:.35s ease;

    font-weight:300;

}


.faq-answer{
    max-height:0;
    overflow:hidden;
    opacity:0;

    transition:
        max-height .45s ease,
        opacity .35s ease,
        padding .35s ease;

    padding:0 0;
}


.faq-answer p{

    font-size:17px;
    line-height:1.8;

    color:#666;

    width:85%;

}

.faq-item.active .faq-answer{

    max-height:220px;
    opacity:1;

    padding:0 0 28px;

}

.faq-item.active .faq-icon{

    transform:rotate(45deg);

}

.faq-question:hover h3{

    color:#A67C52;

}

/*==========================================
RELATED PRODUCTS
==========================================*/

.related-products{

    padding:140px 0;

    background:#F8F6F2;

}

.related-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

    margin-top:70px;

}

.related-card{

    background:white;

    border-radius:18px;

    overflow:hidden;

    border:1px solid #ECE6DF;

    transition:.35s;

}

.related-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 40px rgba(0,0,0,.08);

}

.related-card img{

    height:420px;

    object-fit:cover;

    transition:.5s;

}

.related-card:hover img{

    transform:scale(1.06);

}

.related-content{

    padding:28px;

}

.related-content h3{

    font-family:"Cormorant Garamond",serif;

    font-size:2rem;

    margin-bottom:10px;

}

.related-content p{

    color:#777;

    margin-bottom:20px;

}

.related-price{

    display:flex;

    justify-content:space-between;

    margin-bottom:25px;

}

.related-price span{

    font-weight:600;

}

.related-price small{

    color:#A67C52;

    font-size:.95rem;

}

.related-content a{

    font-weight:600;

    transition:.3s;

}

.related-content a:hover{

    color:#A67C52;

}

/*==========================================
RESPONSIVE
==========================================*/

@media(max-width:1100px){

.product-container{

grid-template-columns:1fr;

}

.gallery{

position:relative;

top:0;

}

.description-grid{

grid-template-columns:1fr;

}

.policy-grid{

grid-template-columns:repeat(2,1fr);

}

.related-grid{

grid-template-columns:repeat(2,1fr);

}

.product-extra{

grid-template-columns:1fr;

}

}

@media(max-width:768px){

.product-details h1{

font-size:3rem;

}

.product-options{

grid-template-columns:1fr;

}

.buttons{

flex-direction:column;

}

.related-grid{

grid-template-columns:1fr;

}

.policy-grid{

grid-template-columns:1fr;

}

.thumbnails{

grid-template-columns:repeat(2,1fr);

}

.main-image img{

height:500px;

}

.description-grid{

gap:40px;

}

}

/*==========================================
ANIMATIONS
==========================================*/

.main-image{

animation:fadeIn .7s ease;

}

@keyframes fadeIn{

from{

opacity:0;
transform:translateY(20px);

}

to{

opacity:1;
transform:translateY(0);

}

}

.buy,
.rent,
.related-card,
.policy-card{

transition:.35s ease;

}

.buy:hover{

transform:translateY(-4px);

}

.rent:hover{

transform:translateY(-4px);

}

.faq-question.open::after{

content:"−";

}

.related-card{

cursor:pointer;

}

.related-card img{

transition:.6s;

}

.related-card:hover img{

transform:scale(1.08);

}

.price-box{

    background:#fff;

    border:1px solid #e7dfd4;

    border-radius:18px;

    padding:35px;

    margin:30px 0;

    box-shadow:0 15px 35px rgba(0,0,0,.05);

}

.price-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:18px;

}

.current-price{

    font-family:"Cormorant Garamond", serif;

    font-size:4.2rem;

    font-weight:700;

    line-height:1;

    color:#1d1d1d;

    letter-spacing:-1px;

}

.discount{

    background:#0d8a3d;

    color:#fff;

    padding:8px 14px;

    border-radius:50px;

    font-size:.85rem;

    letter-spacing:1px;

}

.old-price{

    margin-bottom:22px;

    color:#777;

    font-size:1rem;

}

.old-price span{

    text-decoration:line-through;

    margin-left:8px;

}

.rent-price{

    font-size:1.25rem;

    margin-bottom:28px;

}

.rent-price strong{

    font-family:"Cormorant Garamond", serif;

    color:#A67C52;

    font-size:2.7rem;

    font-weight:700;

    margin:0 6px;

    letter-spacing:-0.5px;

}

.rent-price small{

    color:#777;

}

.price-info{

    display:flex;

    flex-direction:column;

    gap:12px;

    padding-top:22px;

    border-top:1px solid #eee;

}

.price-info p{

    color:#555;

    font-size:.95rem;

}