:root {
  --fiche-bg:#111211;
  --fiche-panel:#161716;
  --fiche-text:#f5f1ea;
  --fiche-muted:#aaa59d;
  --fiche-copper:#dc9f55;
  --fiche-line:rgba(236,226,211,.14);
}

.product-page { min-height:100vh; background:var(--fiche-bg); color:var(--fiche-text); font-family:Inter,Arial,sans-serif; }
.product-page * { box-sizing:border-box; }
.product-page a { color:inherit; }
.product-nav { display:flex; align-items:center; justify-content:space-between; gap:24px; max-width:1400px; margin:0 auto; padding:28px clamp(24px,5vw,80px); border-bottom:1px solid var(--fiche-line); }
.product-brand { display:flex; align-items:center; gap:14px; text-decoration:none; font-size:11px; font-weight:500; letter-spacing:.18em; text-transform:uppercase; }
.product-brand img { width:100px; height:auto; }
.product-back { color:var(--fiche-muted); text-decoration:none; font-size:11px; letter-spacing:.16em; text-transform:uppercase; transition:color .2s ease; }
.product-back:hover { color:var(--fiche-copper); }
.product-main { max-width:1400px; margin:0 auto; padding:0 clamp(24px,5vw,80px) 96px; }
.breadcrumb { padding:25px 0 34px; color:var(--fiche-muted); font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.breadcrumb a { color:var(--fiche-muted); text-decoration:none; }
.breadcrumb a:hover { color:var(--fiche-copper); }
.model-hero { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr); gap:clamp(34px,6vw,96px); align-items:center; }
.model-gallery { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.model-gallery figure { position:relative; min-height:clamp(300px,47vw,620px); margin:0; overflow:hidden; border:1px solid var(--fiche-line); background:#191a19; }
.model-gallery img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.model-gallery figure:hover img { transform:scale(1.025); }
.model-gallery figcaption { position:absolute; right:14px; bottom:12px; margin:0; color:#e5dfd6; font-size:9px; letter-spacing:.16em; text-transform:uppercase; }
.model-kicker { margin:0 0 20px; color:var(--fiche-copper); font-size:10px; letter-spacing:.22em; text-transform:uppercase; }
.model-title { max-width:600px; margin:0; font-family:Arial,sans-serif; font-size:clamp(52px,7vw,92px); font-weight:300; letter-spacing:-.075em; line-height:.86; }
.model-piece { display:block; margin-top:14px; color:var(--fiche-copper); font-family:Inter,Arial,sans-serif; font-size:13px; font-weight:400; letter-spacing:.18em; }
.model-meta { display:flex; align-items:center; flex-wrap:wrap; gap:14px 18px; margin:34px 0 28px; }
.model-status { display:inline-flex; align-items:center; gap:8px; padding:8px 11px; border:1px solid rgba(133,192,128,.45); border-radius:999px; color:#c6e7bf; font-size:9px; letter-spacing:.15em; text-transform:uppercase; }
.model-status::before { width:6px; height:6px; border-radius:50%; background:#81bd77; box-shadow:0 0 0 3px rgba(129,189,119,.12); content:""; }
.model-status--soon { border-color:rgba(220,159,85,.45); color:#f0d5a9; }
.model-status--soon::before { background:var(--fiche-copper); box-shadow:0 0 0 3px rgba(220,159,85,.12); }
.model-status--sold { border-color:rgba(175,175,175,.36); color:#c9c6c0; }
.model-status--sold::before { background:#979797; box-shadow:0 0 0 3px rgba(151,151,151,.12); }
.model-price { font-size:21px; font-weight:400; letter-spacing:-.04em; }
.model-description { max-width:510px; margin:0; color:#c1bcb4; font-size:15px; line-height:1.8; }
.model-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:35px; }
.model-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:13px 19px; border:1px solid var(--fiche-copper); color:#171411; background:var(--fiche-copper); text-decoration:none; font-size:11px; font-weight:500; letter-spacing:.08em; transition:background .2s ease, color .2s ease, transform .2s ease; }
.model-button:hover { transform:translateY(-2px); background:#efb873; }
.model-button--secondary { color:#efebe4; background:transparent; border-color:rgba(236,226,211,.26); }
.model-button--secondary:hover { color:#171411; background:#efebe4; }
.model-section { margin-top:112px; padding-top:28px; border-top:1px solid var(--fiche-line); }
.model-section-heading { display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:34px; }
.model-section-heading p { margin:0; color:var(--fiche-copper); font-size:10px; letter-spacing:.2em; text-transform:uppercase; }
.model-section-heading h2 { margin:0; font-family:Arial,sans-serif; font-size:clamp(32px,4vw,53px); font-weight:300; letter-spacing:-.055em; }
.model-highlights { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--fiche-line); }
.model-highlight { min-height:150px; padding:24px; border-right:1px solid var(--fiche-line); }
.model-highlight:last-child { border-right:0; }
.model-highlight span { display:block; margin-bottom:15px; color:#a8a49d; font-size:9px; letter-spacing:.16em; text-transform:uppercase; }
.model-highlight strong { display:block; font-size:16px; font-weight:400; line-height:1.45; }
.model-specs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.model-spec { padding:25px; border:1px solid var(--fiche-line); background:var(--fiche-panel); }
.model-spec h3 { margin:0 0 20px; color:var(--fiche-copper); font-size:10px; font-weight:500; letter-spacing:.18em; text-transform:uppercase; }
.model-spec dl { display:grid; grid-template-columns:minmax(110px,.75fr) 1.25fr; gap:12px 16px; margin:0; }
.model-spec dt { color:#96928b; font-size:12px; }
.model-spec dd { margin:0; color:#efebe4; font-size:12px; line-height:1.45; }
.model-contact { display:grid; grid-template-columns:1fr auto; align-items:center; gap:32px; padding:38px; background:linear-gradient(115deg,#261d14,#171716 60%); border:1px solid rgba(220,159,85,.35); }
.model-contact h2 { margin:8px 0 0; font-family:Arial,sans-serif; font-size:clamp(28px,4vw,46px); font-weight:300; letter-spacing:-.055em; }
.model-contact p { margin:0; color:var(--fiche-copper); font-size:10px; letter-spacing:.2em; text-transform:uppercase; }
.product-footer { max-width:1400px; margin:0 auto; padding:0 clamp(24px,5vw,80px) 36px; color:#89857e; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
@media (max-width:900px) { .model-hero { grid-template-columns:1fr; } .model-gallery figure { min-height:clamp(270px,54vw,500px); } .model-highlights { grid-template-columns:repeat(2,1fr); } .model-highlight:nth-child(2) { border-right:0; } .model-highlight:nth-child(-n+2) { border-bottom:1px solid var(--fiche-line); } }
@media (max-width:620px) { .product-nav { align-items:flex-start; padding-top:20px; padding-bottom:20px; } .product-brand img { width:76px; } .product-back { padding-top:8px; font-size:9px; } .breadcrumb { padding-bottom:24px; font-size:9px; } .model-gallery { gap:8px; } .model-gallery figure { min-height:245px; } .model-title { font-size:56px; } .model-section { margin-top:72px; } .model-highlights, .model-specs { grid-template-columns:1fr; } .model-highlight { min-height:auto; border-right:0; border-bottom:1px solid var(--fiche-line); } .model-highlight:last-child { border-bottom:0; } .model-contact { grid-template-columns:1fr; padding:28px 24px; } .model-contact .model-button { width:100%; } }

/* Galerie de détails : les vignettes se transforment en photos cliquables dès qu’une image est ajoutée. */
.model-detail-section { position:relative; }
.detail-gallery { display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:12px; }
.detail-gallery__item { position:relative; display:flex; min-height:190px; flex-direction:column; align-items:center; justify-content:center; gap:9px; overflow:hidden; border:1px solid var(--fiche-line); background:#171817; color:var(--fiche-text); font:inherit; text-align:center; }
.detail-gallery__item--placeholder { cursor:default; background:linear-gradient(135deg, #171817 0%, #1d1d1b 100%); color:#a6a198; }
.detail-gallery__item--placeholder > span { display:grid; width:34px; height:34px; place-items:center; border:1px solid rgba(220,159,85,.5); border-radius:50%; color:var(--fiche-copper); font-size:21px; font-weight:300; line-height:1; }
.detail-gallery__item strong { color:#dbd6cc; font-size:10px; font-weight:500; letter-spacing:.15em; text-transform:uppercase; }
.detail-gallery__item small { color:#8f8b84; font-size:10px; }
.detail-gallery__item:not(.detail-gallery__item--placeholder) { padding:0; cursor:zoom-in; }
.detail-gallery__item:not(.detail-gallery__item--placeholder) img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.detail-gallery__item:not(.detail-gallery__item--placeholder):hover img { transform:scale(1.045); }
.detail-gallery__item:not(.detail-gallery__item--placeholder)::after { position:absolute; right:10px; bottom:10px; width:28px; height:28px; display:grid; place-items:center; border:1px solid rgba(245,241,234,.55); border-radius:50%; background:rgba(10,10,10,.58); color:#fff; content:'↗'; font-size:15px; }
.detail-gallery-note { max-width:680px; margin:18px 0 0; color:var(--fiche-muted); font-size:12px; line-height:1.7; }
.detail-lightbox { position:fixed; z-index:9999; inset:0; display:none; align-items:center; justify-content:center; padding:30px; background:rgba(3,3,3,.94); }
.detail-lightbox.is-open { display:flex; }
.detail-lightbox__image { max-width:min(1100px, 92vw); max-height:85vh; object-fit:contain; box-shadow:0 20px 80px rgba(0,0,0,.6); }
.detail-lightbox__close { position:absolute; top:18px; right:20px; width:42px; height:42px; border:1px solid rgba(245,241,234,.45); border-radius:50%; background:#161716; color:#fff; cursor:pointer; font-size:24px; line-height:1; }
.detail-lightbox__close:hover { border-color:var(--fiche-copper); color:var(--fiche-copper); }
@media (max-width:1000px) { .detail-gallery { grid-template-columns:repeat(3, minmax(0, 1fr)); } }
@media (max-width:620px) { .detail-gallery { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:8px; } .detail-gallery__item { min-height:156px; } .detail-lightbox { padding:20px; } }

/* Aperçu Argon : la galerie de détails est placée juste sous les vues avant et arrière. */
.model-gallery--with-details .detail-gallery { grid-column:1 / -1; margin-top:2px; }
.model-gallery--with-details .detail-gallery__item { min-height:126px; }
.model-gallery--with-details .detail-gallery-note { grid-column:1 / -1; margin:2px 0 0; }
.model-gallery--with-details .detail-gallery-note code { color:var(--fiche-copper); font-family:inherit; font-size:.95em; }
@media (max-width:620px) { .model-gallery--with-details .detail-gallery__item { min-height:124px; } }
