﻿* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Cormorant Garamond', serif; background: #0a0a0a; color: #d4d4d4; line-height: 1.6; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
h1, h2, h3, h4 { font-family: 'Playfair Display', serif; color: #d4af37; }
.header { position: fixed; width: 100%; top: 0; z-index: 1000; background: rgba(10,10,10,0.95); border-bottom: 1px solid rgba(212,175,55,0.2); }
.header-inner { display: flex; justify-content: space-between; align-items: center; padding: 15px 20px; }
.logo { font-family: 'Playfair Display', serif; font-size: 1.8rem; color: #d4af37; text-decoration: none; letter-spacing: 3px; }
.nav ul { list-style: none; display: flex; gap: 35px; }
.nav a { color: #d4d4d4; text-decoration: none; font-size: 1.1rem; letter-spacing: 1px; transition: color 0.3s; }
.nav a:hover, .nav a.active { color: #d4af37; }
.hero { height: 100vh; display: flex; align-items: center; justify-content: center; text-align: center; background: linear-gradient(rgba(10,10,10,0.55), rgba(10,10,10,0.55)), url('../images/Acceuil.jpg') center/cover no-repeat; position: relative; }
.hero::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: radial-gradient(circle at 30% 50%, rgba(212,175,55,0.05) 0%, transparent 50%); }
.hero-content { position: relative; z-index: 1; }
.hero h1 { font-size: 4rem; margin-bottom: 20px; letter-spacing: 5px; }
.hero p { font-size: 1.3rem; color: #a0a0a0; margin-bottom: 40px; letter-spacing: 2px; }
.btn { display: inline-block; padding: 15px 40px; background: transparent; color: #d4af37; border: 1px solid #d4af37; text-decoration: none; font-size: 1rem; letter-spacing: 3px; transition: all 0.3s; font-family: 'Cormorant Garamond', serif; cursor: pointer; }
.btn:hover { background: #d4af37; color: #0a0a0a; }
.section { padding: 100px 0; }
.section-title { text-align: center; font-size: 2.8rem; margin-bottom: 15px; letter-spacing: 3px; }
.section-subtitle { text-align: center; color: #888; margin-bottom: 60px; font-size: 1.1rem; letter-spacing: 2px; }
.collections-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 25px; }
.collection-card { flex: 0 1 300px; min-width: 280px; background: #121212; border: 1px solid rgba(212,175,55,0.1); text-align: center; transition: all 0.4s; cursor: pointer; display: block; text-decoration: none; color: inherit; overflow: hidden; }
.collection-card:hover { border-color: #d4af37; transform: translateY(-8px); box-shadow: 0 10px 30px rgba(212,175,55,0.1); }
.collection-card .card-img { width: 100%; height: 250px; object-fit: cover; display: block; border-bottom: 1px solid rgba(212,175,55,0.1); }
/* --- Controle du format des photos (choisissable dans Decap) --- */
.product-card img { object-fit: cover; }
.product-card img.img-contain { object-fit: contain; background: #0a0a0a; }
.product-card img.img-auto { object-fit: cover; height: auto; }
.product-card img.img-h-small { height: 220px; }
.product-card img.img-h-large { height: 480px; }
.product-card img.img-h-auto { height: auto; }
.collection-card .card-img.img-contain { object-fit: contain; background: #0a0a0a; }
.collection-card .card-img.img-auto { height: auto; }
.collection-card .card-img.img-h-small { height: 200px; }
.collection-card .card-img.img-h-large { height: 320px; }
.collection-card .card-img.img-h-auto { height: auto; }
.collection-card .card-body { padding: 25px 20px; }
.collection-card h3 { font-size: 1.5rem; margin-bottom: 10px; }
.collection-card p { color: #888; font-size: 0.95rem; }
.about { background: #0d0d0d; }
.about-content { display: flex; justify-content: center; }
.about-text { flex: 1; max-width: 900px; text-align: center; }
.about-text p { margin-bottom: 20px; font-size: 1.1rem; color: #bbb; }
.testimonials { background: #0a0a0a; }
.testimonials-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)); gap: 40px; }
.testimonial-card { background: #121212; border: 1px solid rgba(212,175,55,0.1); padding: 40px; position: relative; }
.testimonial-card::before { content: '\201C'; font-size: 4rem; color: #d4af37; position: absolute; top: 10px; left: 20px; opacity: 0.3; }
.testimonial-card p { color: #bbb; font-size: 1.1rem; margin-bottom: 20px; font-style: italic; }
.testimonial-card .author { color: #d4af37; font-size: 1rem; letter-spacing: 1px; }
.contact-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 25px; max-width: 1000px; margin: 0 auto; }
.contact-item { background: #121212; border: 1px solid rgba(212,175,55,0.1); padding: 30px; text-align: center; transition: all 0.4s; }
.contact-item:hover { border-color: #d4af37; transform: translateY(-5px); }
.contact-item .contact-icon { font-size: 2.2rem; color: #d4af37; margin-bottom: 15px; }
.contact-item .contact-icon-fb svg { width: 2.2rem; height: 2.2rem; display: inline-block; vertical-align: middle; }
.contact-item .contact-icon-wa svg { width: 2.2rem; height: 2.2rem; display: inline-block; vertical-align: middle; }
.contact-item .contact-icon-gm svg { width: 2.2rem; height: 2.2rem; display: inline-block; vertical-align: middle; }
.contact-item .contact-label { color: #888; font-size: 0.9rem; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 8px; }
.contact-item .contact-value { color: #d4d4d4; font-size: 1.15rem; font-family: 'Playfair Display', serif; text-decoration: none; display: block; transition: color 0.3s; }
.contact-item .contact-value:hover { color: #d4af37; }
.footer { padding: 40px 0; border-top: 1px solid rgba(212,175,55,0.1); text-align: center; }
.footer p { color: #666; font-size: 0.9rem; letter-spacing: 1px; }
.admin-btn { display: inline-block; margin-top: 18px; padding: 10px 26px; border: 1px solid rgba(212,175,55,0.45); color: #d4af37; text-decoration: none; letter-spacing: 2px; font-size: 0.85rem; text-transform: uppercase; font-family: 'Cormorant Garamond', serif; transition: all 0.3s; cursor: pointer; }
.admin-btn:hover { background: #d4af37; color: #0a0a0a; }
@media (max-width: 768px) {
  .logo { font-size: 1.2rem; letter-spacing: 2px; }
  .hero h1 { font-size: 2.2rem; }
  .nav ul { gap: 15px; }
  .nav a { font-size: 0.85rem; }
  .about-content { flex-direction: column; }
  .section-title { font-size: 2rem; }
}
@media (max-width: 480px) {
  .header-inner { padding: 10px 12px; }
  .logo { font-size: 1rem; letter-spacing: 1px; }
  .nav ul { gap: 10px; }
  .nav a { font-size: 0.75rem; letter-spacing: 0.5px; }
}
