/* Boutique Custom CSS */
.boutique-section { padding: 40px 5%; background: #fdfbf9; }
.boutique-card { 
    max-width: 1100px; margin: 0 auto; background: #fff; 
    border-radius: 40px; overflow: hidden; box-shadow: 0 20px 50px rgba(0,0,0,0.05);
}
.boutique-grid { display: flex; align-items: center; gap: 50px; padding: 40px; }
.boutique-img { flex: 1; position: relative; height: 500px; }
.boutique-img img { width: 100%; height: 100%; object-fit: cover; border-radius: 30px; }
.flagship-badge { 
    position: absolute; bottom: 20px; left: 20px; background: #1a1a1a; 
    color: #fff; padding: 8px 20px; border-radius: 50px; font-size: 10px; letter-spacing: 2px;
}
.boutique-details { flex: 1.2; text-align: left; }
.label-gold { color: #C5A059; text-transform: uppercase; font-size: 11px; letter-spacing: 3px; }
.boutique-title { font-family: 'Cinzel', serif; font-size: 38px; margin: 10px 0; }
.boutique-divider { width: 40px; height: 2px; background: #C5A059; margin: 20px 0; }
.boutique-text { color: #666; line-height: 1.8; margin-bottom: 30px; }
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 40px; }
.contact-box h5 { font-size: 10px; color: #C5A059; text-transform: uppercase; margin-bottom: 5px; }
.contact-box p { font-size: 14px; color: #333; margin: 0; }
.boutique-btns { display: flex; gap: 15px; }
.btn-dark { background: #1a1a1a; color: #fff; padding: 12px 30px; border-radius: 50px; text-decoration: none; font-size: 12px; }
.btn-outline { border: 1px solid #1a1a1a; color: #1a1a1a; padding: 12px 30px; border-radius: 50px; text-decoration: none; font-size: 12px; }

@media (max-width: 768px) {
    .boutique-grid { flex-direction: column; padding: 20px; }
    .boutique-img { height: 300px; width: 100%; }
    .contact-grid { grid-template-columns: 1fr; }
}