/* =========================
PRODUCT GRID
========================= */

.roll-on-grid{
max-width:1500px;
margin:0 auto;
padding:20px 6% 140px;
display:grid;
grid-template-columns:repeat(auto-fit, minmax(320px,1fr));
gap:44px;
}

.roll-on-card{
background:linear-gradient(180deg, rgba(20,20,20,0.9), rgba(8,8,8,0.95));
border:1px solid rgba(214,161,77,0.16);
border-radius:22px;
padding:36px 30px 34px;
display:flex;
flex-direction:column;
align-items:center;
text-align:center;
transition:0.4s ease;
}

.bottle-wrap{
width:100%;
height:220px;
display:flex;
align-items:center;
justify-content:center;
margin-bottom:26px;
}

.add-btn.disabled{
background:#2a2a2a;
color:rgba(255,255,255,0.35);
cursor:not-allowed;
}

.add-btn.disabled:hover{
background:#2a2a2a;
}

/* =========================
GIFT SETS
========================= */

.gift-grid{
max-width:1500px;
margin:0 auto;
padding:20px 6% 140px;
display:grid;
grid-template-columns:repeat(auto-fit, minmax(420px,1fr));
gap:44px;
align-items:start;
}

.gift-card{
background:linear-gradient(180deg, rgba(20,20,20,0.9), rgba(8,8,8,0.95));
border:1px solid rgba(214,161,77,0.16);
border-radius:22px;
padding:34px 32px 32px;
display:flex;
flex-direction:column;
transition:0.4s ease;
}

.gift-card:hover{
border-color:rgba(214,161,77,0.4);
box-shadow:0 0 40px rgba(214,161,77,0.10);
}

.gift-badge{
display:inline-block;
align-self:flex-start;
font-size:10.5px;
letter-spacing:2px;
color:#d6a14d;
opacity:0.9;
border:1px solid rgba(214,161,77,0.3);
border-radius:20px;
padding:6px 14px;
margin-bottom:18px;
}

.gift-top{
display:flex;
justify-content:space-between;
align-items:flex-start;
gap:16px;
margin-bottom:10px;
}

.gift-card h3{
font-family:'Cormorant Garamond',serif;
font-weight:500;
font-size:1.9rem;
line-height:1.15;
}

.gift-price{
font-family:'Cormorant Garamond',serif;
font-size:24px;
color:#d6a14d;
white-space:nowrap;
}

.gift-desc{
font-size:14px;
line-height:1.7;
opacity:0.7;
margin-bottom:24px;
}

.piece-list{
display:flex;
flex-direction:column;
gap:10px;
margin-bottom:20px;
}

.piece-row{
display:flex;
align-items:center;
justify-content:space-between;
gap:14px;
padding:12px 16px;
background:rgba(255,255,255,0.03);
border:1px solid rgba(255,255,255,0.08);
border-radius:12px;
}

.piece-label{
font-size:12.5px;
letter-spacing:1px;
opacity:0.8;
}

.piece-label b{
color:#d6a14d;
font-weight:600;
}

.piece-row select{
background:#111;
color:white;
border:1px solid rgba(214,161,77,0.3);
border-radius:8px;
padding:9px 12px;
font-family:'Inter',sans-serif;
font-size:12.5px;
min-width:150px;
cursor:pointer;
}

.piece-row select:focus{
outline:none;
border-color:#d6a14d;
}

.gift-error{
display:none;
font-size:12.5px;
color:#e0a15c;
margin-bottom:14px;
letter-spacing:0.3px;
}

.gift-error.show{
display:block;
}

.gift-bottles{
display:flex;
align-items:flex-end;
justify-content:center;
gap:14px;
height:150px;
margin-bottom:22px;
flex-wrap:wrap;
}

.gift-bottles svg{
height:100%;
flex-shrink:0;
}

.gift-bottles svg.mini-spray{
height:100%;
}

.gift-bottles svg.mini-bottle{
height:88%;
}

/* =========================
RESPONSIVE
========================= */

@media(max-width:480px){

.gift-grid{ grid-template-columns:1fr; padding:14px 6% 90px; gap:30px; }

.gift-card{ padding:26px 20px; }

.piece-row{ flex-direction:column; align-items:stretch; gap:8px; }

.piece-row select{ width:100%; min-width:0; }

.size-select .size-btn{ padding:9px 12px; font-size:11px; }

.gift-top{ flex-direction:column; align-items:flex-start; gap:10px; }

}
