/* ═══════════════════════════════════════════════════════════════
   swissPatina — Charte graphique « Maison »
   Fond #f2f2f2 · texte noir · cadres blancs · liserets bordeaux
   Feuille partagée par toutes les pages publiques (surcouche)
   ═══════════════════════════════════════════════════════════════ */

  /* ═══════════════════════════════════════════════════════════════
     CHARTE « MAISON » — surcouche de test (index-luxe.php)
     Blanc / noir, typographie Jost + Cormorant, photos sur gris clair
     ═══════════════════════════════════════════════════════════════ */
  :root {
    --cream: #ffffff; --parchment: #f6f5f3; --ink: #111111; --sepia: #111111;
    --gold: #8a8a8a; --gold-light: #dcdcdc; --warm-gray: #757575; --border: #e6e6e6;
    --couleur-hero: #111111; --couleur-cartes: #ffffff; --couleur-footer: #111111;
    --nav-texte: #111111; --nav-hover: #111111; --nav-cta-bg: transparent;
    --font-titre: 'Jost', Helvetica, Arial, sans-serif;
    --font-corps: 'Jost', Helvetica, Arial, sans-serif;
    --font-mono:  'Jost', Helvetica, Arial, sans-serif;
    --font-nav:   'Jost', Helvetica, Arial, sans-serif;
    --l-soft: #f6f5f3; --l-line: #e6e6e6; --l-grey: #757575;
    --l-ed: 'Cormorant Garamond', Georgia, serif;
  }
  body { font-weight: 300; font-size: 15px; background: #fff; }
  body::before { display: none !important; }

  /* ── Bandeau service ── */
  .lx-topbar { background: #111; color: #fff; text-align: center; font-size: .68rem; letter-spacing: .16em; text-transform: uppercase; padding: 9px 16px; font-weight: 400; }
  .lx-topbar a { color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.4); margin-left: .6rem; }

  /* ── En-tête : logo centré, menu dessous ── */
  header { display: grid !important; grid-template-columns: 1fr auto 1fr; grid-template-rows: 76px auto; height: auto !important; padding: 0 3.5vw !important; background: #fff !important; border-bottom: 1px solid var(--l-line) !important; }
  .logo { grid-column: 2; grid-row: 1; align-self: center; justify-self: center; color: #111 !important; font-family: 'Jost', sans-serif !important; font-weight: 400; font-size: 1.65rem !important; letter-spacing: .42em !important; text-transform: uppercase; padding-left: .42em; }
  .logo span { display: none !important; }
  .logo img { filter: grayscale(1) brightness(0); }
  header > nav { grid-column: 1 / -1; grid-row: 2; justify-content: center; gap: 2.6rem !important; padding: 0 0 15px; }
  header nav a, .nav-dd-btn { color: #111 !important; opacity: 1 !important; font-size: .72rem !important; letter-spacing: .16em !important; font-weight: 400; padding-bottom: 5px; border-bottom: 1px solid transparent; transition: border-color .25s; }
  header nav a:hover, .nav-dd-btn:hover { border-color: #111; color: #111 !important; }
  .nav-cta { background: transparent !important; padding: 0 0 5px !important; border-radius: 0 !important; border-bottom: 1px solid #111 !important; }
  .nav-dd-menu { background: #fff !important; border: 1px solid var(--l-line) !important; border-top: 1px solid #111 !important; box-shadow: 0 18px 40px rgba(0,0,0,.08) !important; }
  .nav-dd-menu a { color: #111 !important; border-bottom: 0 !important; padding: .7rem 1.4rem !important; letter-spacing: .1em !important; }
  .nav-dd-menu a:hover { background: var(--l-soft) !important; }
  .nav-dd-sep { background: var(--l-line) !important; }
  .burger { grid-column: 1; grid-row: 1; align-self: center; }
  .burger span { background: #111 !important; }
  .nav-drawer { background: #fff !important; top: 76px !important; border-top: 1px solid var(--l-line) !important; }
  .nav-drawer a { color: #111 !important; font-family: 'Jost', sans-serif !important; font-size: 1rem !important; font-weight: 400; letter-spacing: .16em !important; text-transform: uppercase; border-bottom: 1px solid var(--l-line) !important; padding: 1.1rem 0 !important; }
  .drawer-section { color: var(--l-grey) !important; font-family: 'Jost', sans-serif !important; }

  /* ── Hero plein cadre ── */
  .hero { display: flex !important; align-items: flex-end; justify-content: center; min-height: 78vh !important; background: #111 var(--hero-img, radial-gradient(ellipse at 70% 45%, #3a3530 0%, #1a1816 55%, #0d0c0b 100%)) center / cover no-repeat; }
  .hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.62) 0%, rgba(0,0,0,.18) 55%, rgba(0,0,0,.08) 100%); }
  .hero-right { display: none !important; }
  .hero-left { background: transparent !important; position: relative; z-index: 1; text-align: center; align-items: center; justify-content: flex-end; padding: 0 2rem 9vh !important; max-width: 900px; }
  .hero-left::after { display: none !important; }
  .hero-eyebrow { color: #fff !important; font-family: 'Jost', sans-serif !important; font-size: .72rem !important; letter-spacing: .3em !important; opacity: .85; margin-bottom: 1.1rem !important; }
  .hero-title { font-family: var(--l-ed) !important; font-weight: 300 !important; color: #fff !important; font-size: clamp(2.6rem, 5.4vw, 4.8rem) !important; line-height: 1.05 !important; letter-spacing: 0 !important; margin-bottom: 1.4rem !important; text-transform: none; }
  .hero-title em { display: inline !important; font-family: var(--l-ed) !important; color: #fff !important; font-size: 1em !important; font-weight: 300; letter-spacing: 0 !important; }
  .hero-desc { color: rgba(255,255,255,.85) !important; font-style: normal !important; margin: 0 auto 2rem !important; max-width: 520px !important; }
  .hero-ctas { justify-content: center; }
  .btn-primary, .btn-ghost { background: transparent !important; color: #fff !important; border: 1px solid #fff !important; border-radius: 0 !important; font-family: 'Jost', sans-serif !important; font-size: .72rem !important; letter-spacing: .2em !important; padding: 15px 38px !important; transform: none !important; transition: all .3s !important; }
  .btn-primary:hover, .btn-ghost:hover { background: #fff !important; color: #111 !important; }

  .ticker, .reassurance-strip { display: none !important; }

  /* ── En-têtes de section ── */
  .section-header { text-align: center; }
  .section-eyebrow { font-family: 'Jost', sans-serif !important; color: var(--l-grey) !important; font-size: .68rem !important; letter-spacing: .28em !important; }
  .section-title { font-family: 'Jost', sans-serif !important; font-weight: 300 !important; font-size: clamp(1.7rem, 2.6vw, 2.2rem) !important; letter-spacing: .14em !important; text-transform: uppercase; color: #111 !important; }
  .section-title em { font-style: normal !important; color: inherit !important; font-family: inherit !important; }
  .section-rule { display: none !important; }

  /* ── Filtres : onglets soulignés ── */
  .filters { gap: 2rem !important; padding: 18px 3.5vw; border-top: 1px solid var(--l-line); border-bottom: 1px solid var(--l-line); margin: 0 -5vw 0 !important; }
  .filter-btn { border: 0 !important; background: none !important; color: var(--l-grey) !important; padding: 0 0 5px !important; border-bottom: 1px solid transparent !important; border-radius: 0 !important; font-family: 'Jost', sans-serif !important; font-size: .72rem !important; letter-spacing: .16em !important; }
  .filter-btn:hover, .filter-btn.active { color: #111 !important; border-bottom-color: #111 !important; }

  /* ── Grille produits ── */
  .catalogue { padding-left: 0 !important; padding-right: 0 !important; }
  .catalogue .section-header { padding: 0 5vw; }
  .grid { grid-template-columns: repeat(4, 1fr) !important; gap: 2px !important; margin-top: 2px; }
  .card { background: #fff !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; transform: none !important; padding-bottom: 36px; }
  .card:hover { transform: none !important; box-shadow: none !important; }
  .card-img { background: var(--l-soft) !important; aspect-ratio: 1 !important; height: auto !important; }
  .card-img img { transition: transform .8s cubic-bezier(.2,.7,.2,1) !important; }
  .card:hover .card-img img { transform: scale(1.05); }
  .card-overlay { display: none !important; }
  .card-badge { background: transparent !important; color: #111 !important; border: 0 !important; box-shadow: none !important; font-family: 'Jost', sans-serif !important; font-size: .62rem !important; letter-spacing: .16em !important; padding: 0 !important; top: 16px !important; left: 16px !important; z-index: 3; }
  .card.sold .card-img::after, .card.unavailable .card-img::after, .card.reserved .card-img::after { background: rgba(255,255,255,.62) !important; color: #111 !important; text-shadow: none !important; font-family: 'Jost', sans-serif !important; font-size: .74rem !important; letter-spacing: .3em !important; font-weight: 400; }
  .card-body { text-align: center; padding: 20px 18px 0 !important; background: #fff !important; }
  .card-era { color: var(--l-grey) !important; font-family: 'Jost', sans-serif !important; font-size: .64rem !important; letter-spacing: .2em !important; margin-bottom: 6px !important; }
  .card-name { font-family: 'Jost', sans-serif !important; font-size: .95rem !important; font-weight: 400 !important; color: #111 !important; letter-spacing: .03em !important; line-height: 1.35 !important; }
  .card-ref { color: var(--l-grey) !important; font-family: 'Jost', sans-serif !important; font-size: .78rem !important; letter-spacing: .02em !important; margin-bottom: 4px !important; }
  .card-body > div[style*="DM Mono"] { color: #aaa !important; font-family: 'Jost', sans-serif !important; font-size: .68rem !important; letter-spacing: .06em !important; margin-bottom: 8px !important; }
  .card-footer { flex-direction: column !important; justify-content: center !important; align-items: center !important; gap: 12px !important; border-top: 0 !important; padding-top: 4px !important; }
  .card-price { font-family: 'Jost', sans-serif !important; font-size: .9rem !important; font-weight: 400 !important; color: #111 !important; letter-spacing: .02em !important; opacity: 1 !important; }
  .card-price span { display: none !important; }
  .card-actions { opacity: 0; transition: opacity .25s; }
  .card:hover .card-actions { opacity: 1; }
  .btn-card { width: auto !important; height: auto !important; background: none !important; border: 0 !important; border-bottom: 1px solid #111 !important; border-radius: 0 !important; color: #111 !important; font-family: 'Jost', sans-serif !important; font-size: .64rem !important; letter-spacing: .16em !important; text-transform: uppercase; padding: 0 0 3px !important; }
  .btn-card-primary { display: none !important; }
  .card-cd .cd-badge, .cd-badge { border-radius: 0 !important; background: #111 !important; color: #fff !important; border: 0 !important; font-family: 'Jost', sans-serif !important; letter-spacing: .16em !important; }

  /* ── Sections de confiance : bandes noires éditoriales ── */
  .trust-section, .reassurance-section { background: #111 !important; border: 0 !important; }
  .trust-section .section-title, .reassurance-section .section-title { color: #fff !important; }
  .trust-icon, .reassurance-icon, .contact-card-icon { display: none !important; }
  .trust-title, .reassurance-title, .process-step-title { font-family: 'Jost', sans-serif !important; font-weight: 400 !important; font-size: .78rem !important; letter-spacing: .18em !important; text-transform: uppercase; color: #fff !important; }
  .trust-desc, .reassurance-body, .reassurance-intro-text, .process-step-body { color: #bdbdbd !important; font-style: normal !important; font-family: 'Jost', sans-serif !important; }
  .reassurance-num, .process-step-num { color: #fff !important; border-color: #444 !important; font-family: var(--l-ed) !important; font-weight: 300; }
  .reassurance-card { border-color: #2a2a2a !important; }
  .reassurance-card:hover { background: #181818 !important; }
  .process-connector { background: #333 !important; }
  .trust-quote { background: var(--l-soft) !important; border: 0 !important; }
  .trust-quote-text { font-family: var(--l-ed) !important; font-weight: 300 !important; color: #111 !important; }
  .trust-quote-mark { color: #bbb !important; }
  .trust-quote-source { color: var(--l-grey) !important; font-family: 'Jost', sans-serif !important; }

  /* ── Contact ── */
  .contact-section { background: #fff !important; }
  .contact-card { background: #fff !important; border: 1px solid var(--l-line) !important; border-radius: 0 !important; }
  .contact-card:hover { border-color: #111 !important; }
  .contact-card-label { color: var(--l-grey) !important; font-family: 'Jost', sans-serif !important; }
  .contact-card-value, .contact-desc { color: #111 !important; font-family: 'Jost', sans-serif !important; font-style: normal !important; }
  .contact-form-wrap { background: var(--l-soft) !important; border-radius: 0 !important; }
  .contact-form-wrap::before { display: none !important; }
  .form-title { color: #111 !important; font-family: 'Jost', sans-serif !important; font-weight: 300 !important; letter-spacing: .14em !important; text-transform: uppercase; }
  .form-sub, .cf-group label { color: var(--l-grey) !important; font-family: 'Jost', sans-serif !important; font-style: normal !important; }
  .cf-group input, .cf-group select, .cf-group textarea { background: #fff !important; border: 1px solid var(--l-line) !important; border-radius: 0 !important; color: #111 !important; font-family: 'Jost', sans-serif !important; }
  .cf-group input:focus, .cf-group select:focus, .cf-group textarea:focus { border-color: #111 !important; }
  .cf-group select option { background: #fff !important; color: #111 !important; }
  .cf-submit { background: #111 !important; color: #fff !important; border: 1px solid #111 !important; border-radius: 0 !important; font-family: 'Jost', sans-serif !important; letter-spacing: .2em !important; }
  .cf-submit:hover { background: #fff !important; color: #111 !important; }

  /* ── Fiche produit (modale) ── */
  .modal-backdrop { background: rgba(255,255,255,.72) !important; backdrop-filter: blur(6px) !important; }
  .modal { background: #fff !important; border-radius: 0 !important; max-width: 1080px !important; grid-template-columns: 1.2fr 1fr !important; box-shadow: 0 30px 80px rgba(0,0,0,.14) !important; border: 1px solid var(--l-line); }
  .modal-img { background: var(--l-soft) !important; min-height: 0 !important; height: 90vh !important; max-height: 90vh; position: sticky !important; top: 0; align-self: start; }
  .modal-img img { object-fit: contain !important; }
  .carousel-thumbs { background: rgba(255,255,255,.85) !important; }
  .carousel-nav, .carousel-zoom-btn { background: #fff !important; color: #111 !important; border: 1px solid var(--l-line) !important; }
  .carousel-nav:hover, .carousel-zoom-btn:hover { background: #111 !important; color: #fff !important; }
  .carousel-counter { background: #fff !important; color: #111 !important; }
  .modal-body { padding: 3.2rem 3rem 2.4rem !important; }
  .modal-close { background: none !important; color: #111 !important; border-radius: 0 !important; font-size: 1.2rem !important; }
  .modal-close:hover { background: none !important; opacity: .5; }
  .modal-era { color: var(--l-grey) !important; font-family: 'Jost', sans-serif !important; font-size: .66rem !important; letter-spacing: .22em !important; }
  .modal-name { font-family: 'Jost', sans-serif !important; font-weight: 300 !important; font-size: 1.8rem !important; letter-spacing: .06em !important; text-transform: uppercase; color: #111 !important; line-height: 1.25 !important; }
  .modal-ref { color: var(--l-grey) !important; font-family: 'Jost', sans-serif !important; font-size: .8rem !important; letter-spacing: .02em !important; }
  .modal-specs { gap: 0 !important; border-top: 1px solid var(--l-line); }
  .spec { background: none !important; border-bottom: 1px solid var(--l-line); border-radius: 0 !important; padding: .8rem 0 !important; }
  .spec:nth-child(even) { padding-left: 1.2rem !important; border-left: 1px solid var(--l-line); }
  .spec-label { font-family: 'Jost', sans-serif !important; color: var(--l-grey) !important; letter-spacing: .16em !important; font-size: .6rem !important; }
  .spec-val { font-family: 'Jost', sans-serif !important; font-weight: 400 !important; color: #111 !important; font-size: .9rem !important; }
  .modal-desc { font-style: normal !important; color: #555 !important; font-family: 'Jost', sans-serif !important; font-size: .9rem !important; line-height: 1.75 !important; }
  #modal-texte-libre { background: var(--l-soft) !important; border-left: 1px solid #111 !important; font-family: 'Jost', sans-serif !important; font-style: normal !important; }
  .modal-price-row { border-top: 1px solid var(--l-line) !important; }
  .modal-price { font-family: 'Jost', sans-serif !important; font-weight: 400 !important; font-size: 1.5rem !important; color: #111 !important; letter-spacing: .02em !important; }
  .modal-price-note { font-family: 'Jost', sans-serif !important; color: var(--l-grey) !important; letter-spacing: .04em !important; }
  .btn-paypal, .btn-wise, .btn-whatsapp-modal { border-radius: 0 !important; font-family: 'Jost', sans-serif !important; font-size: .72rem !important; letter-spacing: .2em !important; font-weight: 400; padding: 16px !important; transition: all .3s !important; }
  .btn-paypal { background: #111 !important; color: #fff !important; border: 1px solid #111 !important; }
  .btn-paypal:hover { background: #fff !important; color: #111 !important; }
  .btn-wise { background: #fff !important; color: #111 !important; border: 1px solid #111 !important; }
  .btn-wise:hover { background: #111 !important; color: #fff !important; }
  .btn-whatsapp-modal { background: none !important; border: 0 !important; color: #111 !important; padding: 8px 0 !important; }
  .btn-whatsapp-modal:hover { background: none !important; color: #111 !important; text-decoration: underline; text-underline-offset: 5px; }
  #btn-ask-modal { color: #111 !important; }
  .payment-note { font-family: 'Jost', sans-serif !important; color: var(--l-grey) !important; opacity: 1 !important; }
  .modal-share { border-top: 1px solid var(--l-line) !important; }
  .share-label { font-family: 'Jost', sans-serif !important; color: var(--l-grey) !important; }
  .share-btns a, .share-btns button { border: 1px solid var(--l-line) !important; border-radius: 0 !important; color: #111 !important; }
  .share-btns a:hover, .share-btns button:hover { background: #111 !important; color: #fff !important; }
  /* Modale Wise : fonds et typos */
  #wise-backdrop .modal-body div[style*="parchment"] { background: var(--l-soft) !important; border-color: var(--l-line) !important; border-radius: 0 !important; }
  #wise-backdrop [style*="Bebas"], #wise-backdrop [style*="Cormorant"], #wise-backdrop [style*="DM Mono"] { font-family: 'Jost', sans-serif !important; }
  #btn-copy-all-wise { background: #111 !important; border-radius: 0 !important; }
  .lightbox-close:hover, .lightbox-nav:hover { background: #fff !important; color: #111 !important; }

  /* ── Pied de page ── */
  footer { background: #111 !important; border-top: 0 !important; flex-direction: column; text-align: center; padding: 64px 3.5vw 40px !important; gap: 1.6rem !important; }
  .footer-logo { color: #fff !important; font-family: 'Jost', sans-serif !important; font-weight: 400; font-size: 1.3rem !important; letter-spacing: .42em !important; text-transform: uppercase; }
  .footer-copy { color: #9a9a9a !important; font-family: 'Jost', sans-serif !important; font-style: normal !important; }
  .footer-links { justify-content: center; }
  .footer-links a, .footer-social a { color: #bdbdbd !important; font-family: 'Jost', sans-serif !important; letter-spacing: .14em !important; }
  .footer-links a:hover, .footer-social a:hover { color: #fff !important; }

  /* ── Responsive ── */
  @media (max-width: 1100px) { .grid { grid-template-columns: repeat(3, 1fr) !important; } }
  @media (max-width: 900px) {
    header { grid-template-rows: 64px !important; }
    header > nav { display: none !important; }
    .burger { display: flex !important; }
    .logo { font-size: 1.2rem !important; letter-spacing: .32em !important; }
    .nav-drawer { top: 64px !important; }
    .grid { grid-template-columns: repeat(2, 1fr) !important; }
    .card-actions { opacity: 1; }
    .modal { grid-template-columns: 1fr !important; }
    .modal-img { min-height: 320px !important; }
    .modal-body { padding: 2rem 1.4rem !important; }
    .filters { gap: 1.2rem !important; justify-content: flex-start !important; overflow-x: auto; flex-wrap: nowrap !important; }
    .filter-btn { white-space: nowrap; }
  }


  /* ═══ VARIANTE CLAIRE — fond #f2f2f2, texte noir, aucune zone noire ═══ */
  :root { --lx-bg: #f2f2f2; --lx-line: #dcdcdc; --lx-grey: #6b6b6b; --l-soft: #e9e9e9; --l-line: #dcdcdc; --cream: #f2f2f2; --parchment: #e9e9e9; }
  html, body { background: var(--lx-bg) !important; color: #111; }
  .lx-topbar { background: var(--lx-bg); color: #111; border-bottom: 1px solid var(--lx-line); }
  .lx-topbar a { color: #111; border-bottom-color: #111; }
  header { background: var(--lx-bg) !important; border-bottom: 1px solid var(--lx-line) !important; }
  .nav-dd-menu, .nav-drawer { background: var(--lx-bg) !important; }

  /* Hero : texte noir à gauche, photo à droite */
  .hero { display: grid !important; grid-template-columns: 1fr 1fr; align-items: stretch; background: var(--lx-bg) !important; min-height: 72vh !important; border-bottom: 1px solid var(--lx-line); }
  .hero::before { display: none !important; }
  .hero-left { text-align: left !important; align-items: flex-start !important; justify-content: center !important; padding: 8vh 6vw !important; max-width: none !important; }
  .hero-right { display: block !important; background: #e4e4e4 var(--hero-img, none) center / cover no-repeat !important; min-height: 420px; }
  .hero-right > * { display: none !important; }
  .hero-eyebrow { color: var(--lx-grey) !important; opacity: 1 !important; }
  .hero-title, .hero-title em { color: #111 !important; }
  .hero-desc { color: #444 !important; margin: 0 0 2rem !important; }
  .hero-ctas { justify-content: flex-start !important; }
  .btn-primary { background: #111 !important; color: #fff !important; border-color: #111 !important; }
  .btn-primary:hover { background: transparent !important; color: #111 !important; }
  .btn-ghost { color: #111 !important; border-color: #111 !important; }
  .btn-ghost:hover { background: #111 !important; color: #fff !important; }

  /* Catalogue sur fond gris */
  .catalogue, .grid { background: var(--lx-bg) !important; }
  .card, .card-body { background: transparent !important; }
  .filters { border-color: var(--lx-line) !important; }
  .card-img { background: #e9e9e9 !important; }
  .card.sold .card-img::after, .card.unavailable .card-img::after, .card.reserved .card-img::after { background: rgba(242,242,242,.7) !important; }

  /* Sections de confiance : claires, séparées par des filets */
  .trust-section, .reassurance-section, .reassurance-intro, .process-section { background: var(--lx-bg) !important; color: #111 !important; }
  .trust-section { border-top: 1px solid var(--lx-line) !important; border-bottom: 1px solid var(--lx-line) !important; }
  .trust-section .section-title, .reassurance-section .section-title, .process-section .section-title { color: #111 !important; }
  .trust-title, .reassurance-title, .process-step-title { color: #111 !important; }
  .trust-desc, .reassurance-body, .reassurance-intro-text, .process-step-body { color: #444 !important; }
  .reassurance-num, .process-step-num { color: #111 !important; border-color: #bdbdbd !important; }
  .reassurance-card { border-color: var(--lx-line) !important; background: transparent !important; }
  .reassurance-card:hover { background: #ebebeb !important; }
  .process-connector { background: #cfcfcf !important; }
  .trust-quote { background: #ebebeb !important; }
  .section-eyebrow { color: var(--lx-grey) !important; }

  /* Contact */
  .contact-section { background: var(--lx-bg) !important; border-top: 1px solid var(--lx-line); }
  .contact-card { background: #fff !important; border-color: var(--lx-line) !important; }
  .contact-form-wrap { background: #fff !important; border: 1px solid var(--lx-line); }

  /* Fiche produit : blanche sur voile gris */
  .modal-backdrop { background: rgba(242,242,242,.8) !important; }
  .modal-img, .carousel-main { background: #e9e9e9 !important; }

  /* Pied de page clair */
  footer { background: var(--lx-bg) !important; border-top: 1px solid var(--lx-line) !important; }
  .footer-logo { color: #111 !important; }
  .footer-copy { color: var(--lx-grey) !important; }
  .footer-links a, .footer-social a { color: #444 !important; }
  .footer-links a:hover, .footer-social a:hover { color: #111 !important; }

  @media (max-width: 900px) {
    .hero { grid-template-columns: 1fr; }
    .hero-right { order: -1; min-height: 300px; }
    .hero-left { padding: 2.4rem 1.4rem 3rem !important; }
  }


  /* ═══ CADRES — blocs blancs arrondis, bordure fine, ombre douce ═══ */
  :root { --cx-r: 14px; --cx-b: 1px solid #e3e3e3; --cx-sh: 0 1px 2px rgba(0,0,0,.04), 0 10px 28px -14px rgba(0,0,0,.16); --cx-sh-h: 0 2px 4px rgba(0,0,0,.05), 0 20px 40px -18px rgba(0,0,0,.24); }

  /* Hero : photo encadrée */
  .hero { gap: 3vw; padding: 4vh 4vw !important; }
  .hero-right { border-radius: var(--cx-r); border: var(--cx-b); box-shadow: var(--cx-sh); overflow: hidden; }

  /* Filtres en pastilles encadrées */
  .filters { border: 0 !important; gap: .6rem !important; padding: 0 4vw 1.6rem !important; margin: 0 !important; justify-content: center; }
  .filter-btn { background: #fff !important; border: var(--cx-b) !important; border-radius: 100px !important; padding: 10px 20px !important; color: #444 !important; }
  .filter-btn:hover { border-color: #111 !important; color: #111 !important; }
  .filter-btn.active { background: #111 !important; border-color: #111 !important; color: #fff !important; }

  /* Grille : cartes encadrées */
  .catalogue { padding: 5rem 4vw !important; }
  .grid { gap: 1.4rem !important; }
  .card { background: #fff !important; border: var(--cx-b) !important; border-radius: var(--cx-r) !important; box-shadow: var(--cx-sh) !important; overflow: hidden; padding-bottom: 22px !important; transition: transform .25s, box-shadow .25s !important; }
  .card:hover { transform: translateY(-4px) !important; box-shadow: var(--cx-sh-h) !important; }
  .card-body { background: #fff !important; }
  .card-badge { border-radius: 100px !important; border: var(--cx-b) !important; }

  /* Engagements : 4 cadres */
  .trust-grid { gap: 1.4rem !important; }
  .trust-item { background: #fff; border: var(--cx-b); border-radius: var(--cx-r); box-shadow: var(--cx-sh); padding: 2rem 1.6rem !important; }

  /* Réassurance : 6 cadres */
  .reassurance-grid { gap: 1.4rem !important; padding: 0 4vw 4rem; }
  .reassurance-card { background: #fff !important; border: var(--cx-b) !important; border-radius: var(--cx-r) !important; box-shadow: var(--cx-sh); }
  .reassurance-card:hover { background: #fff !important; box-shadow: var(--cx-sh-h); }

  /* Étapes : chaque étape dans un cadre */
  .process-step { background: #fff; border: var(--cx-b); border-radius: var(--cx-r); box-shadow: var(--cx-sh); padding: 1.4rem 1.6rem; }
  .process-connector { opacity: 0 !important; height: .9rem !important; }
  .process-step-num { background: #f2f2f2; }

  /* Citation encadrée */
  .trust-quote { background: transparent !important; padding: 3rem 4vw !important; }
  .trust-quote-inner { background: #fff; border: var(--cx-b); border-radius: var(--cx-r); box-shadow: var(--cx-sh); padding: 3rem 2.4rem; max-width: 860px; margin: 0 auto; }

  /* Contact */
  .contact-card, .contact-form-wrap { border-radius: var(--cx-r) !important; box-shadow: var(--cx-sh); border: var(--cx-b) !important; }
  .cf-group input, .cf-group select, .cf-group textarea { border-radius: 8px !important; }
  .cf-submit, .btn-primary, .btn-ghost { border-radius: 8px !important; }

  /* Fiche produit encadrée */
  .modal { border-radius: calc(var(--cx-r) + 4px) !important; overflow: hidden; }
  .btn-paypal, .btn-wise { border-radius: 8px !important; }
  .share-btns a, .share-btns button { border-radius: 8px !important; }
  #wise-backdrop .modal-body div[style*="parchment"], #btn-copy-all-wise { border-radius: 8px !important; }

  @media (max-width: 900px) {
    .hero { padding: 1rem !important; }
    .catalogue { padding: 3rem 12px !important; }
    .grid { gap: 10px !important; }
    .filters { justify-content: flex-start !important; padding: 0 12px 1.2rem !important; }
    .reassurance-grid { padding: 0 12px 3rem; }
  }


  /* ═══ LISERETS — accent latéral discret, réservé aux blocs clés ═══ */
  :root { --cx-accent: #6e1f2a; }  /* bordeaux maison */

  /* Photo d'ouverture : liseret à gauche */
  .hero-right { border-left: 3px solid var(--cx-accent) !important; }
  .hero-eyebrow { color: var(--cx-accent) !important; }

  /* Citation : liseret à gauche */
  .trust-quote-inner { border-left: 3px solid var(--cx-accent) !important; text-align: left; }

  /* Formulaire de contact et fiche produit : liseret en haut */
  .contact-form-wrap { border-top: 3px solid var(--cx-accent) !important; }
  .modal { border-top: 3px solid var(--cx-accent) !important; }

  /* Garanties et étapes : le liseret n'apparaît qu'au survol */
  .reassurance-card, .process-step { border-left: 3px solid transparent !important; transition: border-color .25s, box-shadow .25s; }
  .reassurance-card:hover, .process-step:hover { border-left-color: var(--cx-accent) !important; }

  /* Rappel discret sur les cartes produit : filet sous le prix au survol */
  .card-price { position: relative; padding-bottom: 6px; }
  .card-price::after { content: ''; position: absolute; left: 50%; bottom: 0; width: 0; height: 1px; background: var(--cx-accent); transition: width .3s, left .3s; }
  .card:hover .card-price::after { width: 100%; left: 0; }

/* ═══════════════════════════════════════════════════════════════
   PAGES INTÉRIEURES — mêmes principes : fond clair, cadres, liserets
   ═══════════════════════════════════════════════════════════════ */

/* ── Bandeaux d'en-tête de page (garanties, blog, article, outils, villes, mentions) ── */
.page-hero, .blog-hero, .article-hero, .tool-hero, .local-hero {
  background: var(--lx-bg) !important; background-image: none !important;
  border-bottom: 1px solid var(--lx-line) !important; border-top: 0 !important;
  text-align: center; padding: 72px 6vw 56px !important; min-height: 0 !important;
}
.page-hero::before, .page-hero::after, .blog-hero::before, .blog-hero::after,
.article-hero::before, .article-hero::after, .tool-hero::before, .tool-hero::after,
.local-hero::before, .local-hero::after, .page-hero-deco { display: none !important; }
.page-hero *, .blog-hero *, .article-hero *, .tool-hero *, .local-hero * { color: #111 !important; text-shadow: none !important; }
.page-hero-eyebrow, .page-eyebrow, .blog-eyebrow, .tool-eyebrow, .local-eyebrow, .article-hero .cat, .article-hero .date {
  color: var(--cx-accent) !important; font-family: 'Jost', sans-serif !important; font-size: .7rem !important;
  letter-spacing: .26em !important; text-transform: uppercase; font-style: normal !important; opacity: 1 !important;
}
.page-hero-title, .page-title, .blog-title, .tool-title, .article-hero h1, .local-hero h1 {
  font-family: 'Jost', sans-serif !important; font-weight: 300 !important; letter-spacing: .1em !important;
  text-transform: uppercase; font-size: clamp(1.9rem, 3.6vw, 2.9rem) !important; line-height: 1.2 !important;
  margin-left: auto; margin-right: auto;
}
.page-hero-title em, .page-title em, .blog-title em, .tool-title em, .local-hero h1 em {
  display: block; font-family: var(--l-ed) !important; text-transform: none; letter-spacing: 0 !important;
  font-style: italic; font-weight: 300; font-size: .62em; color: #555 !important; margin-bottom: .3em;
}
.article-hero h1 { text-transform: none; letter-spacing: .02em !important; }
.page-hero-desc, .blog-sub, .tool-sub, .local-sub, .article-hero .chapo {
  color: #555 !important; font-family: 'Jost', sans-serif !important; font-style: normal !important;
  max-width: 640px; margin-left: auto !important; margin-right: auto !important; line-height: 1.75 !important;
}
.local-ctas { justify-content: center; }

/* ── Boutons génériques des pages ── */
.cta-primary, .tool-btn, .btn-next, .quote-cta, .see-all, .result-cta a, .cta-wa, .cta-mail {
  background: #111 !important; color: #fff !important; border: 1px solid #111 !important; border-radius: 8px !important;
  font-family: 'Jost', sans-serif !important; letter-spacing: .16em !important; text-transform: uppercase;
  font-size: .72rem !important; box-shadow: none !important; transition: all .25s !important;
}
.cta-primary:hover, .tool-btn:hover, .btn-next:hover, .quote-cta:hover, .see-all:hover, .cta-wa:hover, .cta-mail:hover { background: #fff !important; color: #111 !important; }
.cta-secondary, .btn-back { background: #fff !important; color: #111 !important; border: 1px solid #111 !important; border-radius: 8px !important; font-family: 'Jost', sans-serif !important; }

/* ── Titres de sections internes ── */
.section-label, .legal-title, .where-title, .era-title { font-family: 'Jost', sans-serif !important; color: #111 !important; letter-spacing: .16em !important; text-transform: uppercase; }
.section-label { color: var(--cx-accent) !important; font-size: .7rem !important; }

/* ── GARANTIES ── */
.pillars-section, .engagement-section, .quote-section, .process-section { background: var(--lx-bg) !important; border: 0 !important; }
.pillars-grid { gap: 1.4rem !important; border: 0 !important; background: transparent !important; }
.pillar { background: #fff !important; border: var(--cx-b) !important; border-radius: var(--cx-r) !important; box-shadow: var(--cx-sh); border-left: 4px solid transparent !important; transition: border-color .25s, box-shadow .25s; }
.pillar:hover { border-left-color: var(--cx-accent) !important; box-shadow: var(--cx-sh-h); }
.pillar-icon, .engagement-item-icon { display: none !important; }
.pillar-num { color: #111 !important; opacity: .18 !important; font-family: var(--l-ed) !important; }
.pillar-title, .process-title, .engagement-title { color: #111 !important; font-family: 'Jost', sans-serif !important; font-weight: 400 !important; font-style: normal !important; }
.pillar-body, .process-body, .engagement-body, .engagement-item-text { color: #444 !important; font-family: 'Jost', sans-serif !important; font-style: normal !important; }
.pillar-tag { background: transparent !important; border: 1px solid #cfcfcf !important; color: #555 !important; border-radius: 100px !important; font-family: 'Jost', sans-serif !important; }
.process-step { background: #fff !important; border: var(--cx-b) !important; border-radius: var(--cx-r) !important; box-shadow: var(--cx-sh); padding: 1.6rem !important; }
.process-num { color: #111 !important; border-color: #cfcfcf !important; background: #f2f2f2 !important; font-family: var(--l-ed) !important; }
.process-line { background: transparent !important; }
.process-detail { background: #f5f5f5 !important; border-left: 2px solid var(--cx-accent) !important; color: #444 !important; font-family: 'Jost', sans-serif !important; font-style: normal !important; border-radius: 0 8px 8px 0; }
.engagement-title, .engagement-title * { color: #111 !important; font-family: 'Jost', sans-serif !important; }
.engagement-title em { font-family: var(--l-ed) !important; font-style: italic; }
.engagement-item { background: #fff !important; border: var(--cx-b) !important; border-radius: 10px !important; box-shadow: var(--cx-sh); }
.quote-inner { background: #fff; border: var(--cx-b); border-left: 4px solid var(--cx-accent); border-radius: var(--cx-r); box-shadow: var(--cx-sh); padding: 3rem 2.6rem; max-width: 860px; margin: 0 auto; }
.quote-text { color: #111 !important; font-family: var(--l-ed) !important; font-weight: 300 !important; }
.quote-mark { color: #c9c9c9 !important; }
.quote-source { color: var(--lx-grey) !important; font-family: 'Jost', sans-serif !important; }

/* ── BLOG ── */
.featured-card { background: #fff !important; border: var(--cx-b) !important; border-left: 4px solid var(--cx-accent) !important; border-radius: var(--cx-r) !important; box-shadow: var(--cx-sh); overflow: hidden; }
.featured-body, .featured-body * { color: #111 !important; }
.featured-tag, .article-cat { color: var(--cx-accent) !important; font-family: 'Jost', sans-serif !important; letter-spacing: .2em !important; }
.featured-titre, .article-titre, .sug-titre { font-family: 'Jost', sans-serif !important; font-weight: 400 !important; color: #111 !important; }
.featured-chapo, .article-chapo { color: #555 !important; font-family: 'Jost', sans-serif !important; font-style: normal !important; }
.featured-meta, .article-meta, .sug-date { color: var(--lx-grey) !important; font-family: 'Jost', sans-serif !important; }
.article-card, .sug-card { background: #fff !important; border: var(--cx-b) !important; border-radius: var(--cx-r) !important; box-shadow: var(--cx-sh); overflow: hidden; transition: transform .25s, box-shadow .25s !important; }
.article-card:hover, .sug-card:hover { transform: translateY(-4px); box-shadow: var(--cx-sh-h); }
.lire { color: #111 !important; }

/* ── ARTICLE ── */
.article-cover { border-radius: var(--cx-r) !important; overflow: hidden; box-shadow: var(--cx-sh) !important; border: var(--cx-b); }
.article-content { color: #222 !important; font-family: 'Jost', sans-serif !important; }
.article-content h2 { font-family: 'Jost', sans-serif !important; font-weight: 400 !important; color: #111 !important; letter-spacing: .06em; }
.article-content h2::before { color: var(--cx-accent) !important; }
.article-content a { color: var(--cx-accent) !important; }
.article-content .source-note, .article-content .pullquote { border-color: var(--cx-accent) !important; }
.article-content .section-title { color: var(--cx-accent) !important; }
.article-content .article-figure img { border-radius: 10px; }
.suggestions { background: var(--lx-bg) !important; border-top: 1px solid var(--lx-line); }
.back-link { color: #111 !important; font-family: 'Jost', sans-serif !important; }

/* ── OUTILS ROLEX ── */
.tool-card, .result, .where, .gloss-wrap .term, .check, .era-select, .verdict-box, .recap, .trust-item, .spec-item, .choice, .mini-card, .faq-item, .legal-section, .suggest-box, .result-cta, .cta-box, .other-city {
  background: #fff !important; border: var(--cx-b) !important; border-radius: var(--cx-r) !important; box-shadow: var(--cx-sh);
}
.tool-card, .legal-section, .verdict-box { border-top: 4px solid var(--cx-accent) !important; }
.tool-card *, .result *, .where *, .term *, .check *, .era-select *, .verdict-box *, .recap *, .choice *, .spec-item *, .legal-section *, .faq-item *, .mini-card *, .suggest-box *, .result-cta *, .cta-box * { color: #111; }
.tool-label, .spec-label, .recap-label, .term-cat, .input-hint, .tool-hint, .disclaimer, .count, .legal-updated, .choice-desc, .check-how, .result-detail, .result-note, .mini-marque { color: var(--lx-grey) !important; font-family: 'Jost', sans-serif !important; font-style: normal !important; }
.tool-input, .search-input, .text-input { background: #fff !important; color: #111 !important; border: 1px solid #d6d6d6 !important; border-radius: 8px !important; font-family: 'Jost', sans-serif !important; }
.tool-input:focus, .search-input:focus, .text-input:focus { border-color: #111 !important; outline: none; }
.result-year, .result-model-name, .verdict-score, .trust-num, .step-num { color: var(--cx-accent) !important; font-family: var(--l-ed) !important; }
.pill, .era-btn, .cb { background: #fff !important; color: #444 !important; border: 1px solid #d6d6d6 !important; border-radius: 100px !important; font-family: 'Jost', sans-serif !important; }
.pill.active, .era-btn.active, .pill:hover, .era-btn:hover, .cb.on, .cb.active { background: #111 !important; color: #fff !important; border-color: #111 !important; }
.choice:hover, .choice.selected, .choice.active { border-color: #111 !important; box-shadow: var(--cx-sh-h); }
.progress-seg { background: #dcdcdc !important; border-radius: 4px; }
.progress-seg.done { background: var(--cx-accent) !important; }
.term-name, .check-q, .step-title, .legal-title { font-family: 'Jost', sans-serif !important; font-weight: 400 !important; color: #111 !important; font-style: normal !important; }
.term-def, .legal-block, .faq-a, .step-body, .result-main { color: #444 !important; font-family: 'Jost', sans-serif !important; font-style: normal !important; }
.term-blog, .term-anchor, .term-links a { color: var(--cx-accent) !important; }
.check-critical { color: var(--cx-accent) !important; }
.check-num { color: #111 !important; border-color: #cfcfcf !important; background: #f2f2f2 !important; }
.result-error { color: var(--cx-accent) !important; }
.cta-text, .result-cta-text, .suggest-text { color: #111 !important; font-family: 'Jost', sans-serif !important; font-style: normal !important; }

/* ── PAGES VILLES ── */
.local-section { background: transparent !important; }
.step-item { background: #fff !important; border: var(--cx-b) !important; border-left: 4px solid var(--cx-accent) !important; border-radius: var(--cx-r) !important; box-shadow: var(--cx-sh); padding: 1.4rem 1.6rem !important; }
.step-n { color: var(--cx-accent) !important; font-family: var(--l-ed) !important; }
.mini-img { background: #e9e9e9 !important; }
.mini-modele { font-family: 'Jost', sans-serif !important; color: #111 !important; font-weight: 400 !important; }
.faq-q { font-family: 'Jost', sans-serif !important; color: #111 !important; font-weight: 400 !important; }

/* ── MENTIONS ── */
.legal-wrap { background: transparent !important; }
.legal-section { padding: 1.8rem 2.2rem !important; margin-bottom: 1.4rem !important; }
.legal-title { margin-bottom: 1rem !important; }

/* ── Ajustements fins ── */
.card-badge { background: #fff !important; padding: 5px 9px !important; }
.reassurance-num { font-size: 2rem !important; opacity: .3; }
.reassurance-title { padding-right: 3.4rem; }
@media (max-width: 900px) {
  .lx-topbar { font-size: .58rem; letter-spacing: .08em; padding: 8px 12px; }
  .lx-topbar a { display: none; }
  .filters { margin: 0 !important; padding: 0 12px 1.2rem !important; }
  .card-badge { top: 10px !important; left: 10px !important; }
  .tool-input-row { flex-direction: column !important; align-items: stretch !important; gap: .7rem !important; }
  .tool-input-row .tool-btn, .tool-input-row button { width: 100% !important; }
  .tool-input { font-size: 1rem !important; letter-spacing: .06em !important; min-width: 0 !important; width: 100% !important; }
  .page-hero, .blog-hero, .article-hero, .tool-hero, .local-hero { padding: 48px 18px 40px !important; }
}
@media (max-width: 900px) { .tool-input-row .tool-btn, .tool-input-row button { padding: 15px 20px !important; height: auto !important; } }

/* ── Statuts des pièces (Vendu, Réservé, Indisponible) — réglables dans le BO ── */
.card.sold .card-img::before, .card.unavailable .card-img::before, .card.reserved .card-img::before {
  content: ''; position: absolute; inset: 0; z-index: 2; background: rgba(242,242,242, var(--st-veil, .55));
}
.card.sold .card-img::after, .card.unavailable .card-img::after, .card.reserved .card-img::after {
  inset: auto !important; top: 50% !important; left: 50% !important; transform: translate(-50%, -50%);
  z-index: 3; display: block !important; white-space: nowrap;
  background: transparent !important; color: var(--st-color, #111) !important;
  font-family: 'Jost', sans-serif !important; font-size: var(--st-size, 1.1rem) !important;
  font-weight: var(--st-weight, 500) !important; letter-spacing: var(--st-spacing, .22em) !important;
  text-transform: uppercase; text-shadow: none !important; line-height: 1 !important;
}
body[data-statut="etiquette"] .card.sold .card-img::after,
body[data-statut="etiquette"] .card.unavailable .card-img::after,
body[data-statut="etiquette"] .card.reserved .card-img::after {
  background: var(--st-bg, #fff) !important; padding: .85em 1.5em .85em calc(1.5em + var(--st-spacing, .22em)) !important;
  -webkit-backdrop-filter: blur(var(--st-blur, 0px)); backdrop-filter: blur(var(--st-blur, 0px));
  border: 1px solid rgba(0,0,0,.08); border-left: var(--st-lis, 4px solid #6e1f2a); border-radius: 8px;
  box-shadow: 0 10px 28px -12px rgba(0,0,0,.25);
}

/* ── Fiche produit : colonne photo fixe pendant le défilement du texte ── */
.modal { align-items: start !important; }
@media (max-width: 900px) {
  .modal-img { position: relative !important; height: 62vh !important; max-height: 62vh; }
}

/* ── Bouton « retour en haut » avec anneau de progression ── */
.lx-top {
  position: fixed; right: 24px; bottom: 24px; z-index: 1500; width: 52px; height: 52px; padding: 0;
  border-radius: 50%; border: 1px solid #e3e3e3; background: #fff; color: #111; cursor: pointer;
  box-shadow: 0 10px 28px -12px rgba(0,0,0,.3);
  opacity: 0; visibility: hidden; transform: translateY(12px);
  transition: opacity .3s, visibility .3s, transform .3s, background .2s, color .2s;
}
.lx-top.on { opacity: 1; visibility: visible; transform: translateY(0); }
.lx-top:hover { background: #111; color: #fff; }
.lx-top-ring { position: absolute; inset: 1px; width: calc(100% - 2px); height: calc(100% - 2px); transform: rotate(-90deg); }
.lx-top-track { fill: none; stroke: transparent; stroke-width: 2; }
.lx-top-bar { fill: none; stroke: var(--cx-accent, #6e1f2a); stroke-width: 2; stroke-linecap: round; transition: stroke-dashoffset .12s linear; }
.lx-top-arrow { position: absolute; left: 50%; top: 50%; width: 18px; height: 18px; transform: translate(-50%, -50%); fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width: 900px) { .lx-top { right: 14px; bottom: 14px; width: 46px; height: 46px; } }
.lx-top svg { pointer-events: none; }
@media print { .lx-top { display: none; } }

/* ── Menu mobile : tête avec bouton Fermer ── */
.lx-drawer-head { display: flex; align-items: center; justify-content: space-between; padding: .4rem 0 1rem; margin-bottom: .4rem; border-bottom: 1px solid var(--l-line, #dcdcdc); }
.lx-drawer-head > span { font-family: 'Jost', sans-serif; font-size: .66rem; letter-spacing: .26em; text-transform: uppercase; color: var(--cx-accent, #6e1f2a); }
.lx-drawer-close { display: inline-flex; align-items: center; gap: .5rem; background: #fff; color: #111; border: 1px solid #111; border-radius: 100px; padding: 8px 16px; font-family: 'Jost', sans-serif; font-size: .68rem; letter-spacing: .16em; text-transform: uppercase; cursor: pointer; }
.lx-drawer-close span { font-size: 1.1rem; line-height: 1; }
.lx-drawer-close:hover { background: #111; color: #fff; }
.nav-drawer { padding-top: 1.2rem !important; }
.nav-drawer a::after { display: none !important; }
body.drawer-open { overflow: hidden; }
.nav-drawer { align-items: stretch !important; justify-content: flex-start !important; gap: 0 !important; }
.lx-drawer-head { align-self: stretch; width: 100%; }
.nav-drawer a { text-align: left !important; justify-content: flex-start !important; font-size: .9rem !important; padding: 1rem 0 !important; margin: 0 !important; }
.nav-drawer .drawer-section { text-align: left !important; padding: 1.4rem 0 .4rem !important; }

/* ── Fiche produit sur mobile : plein écran, photo réduite, fermeture toujours visible ── */
@media (max-width: 900px) {
  .modal-backdrop { padding: 0 !important; align-items: stretch !important; }
  .modal { width: 100% !important; max-width: 100% !important; height: 100vh; height: 100dvh; max-height: 100vh !important; max-height: 100dvh !important;
           border-radius: 0 !important; border: 0 !important; border-top: 0 !important; animation: none !important; transform: none !important; }
  .modal-img { height: 46vh !important; max-height: 46vh; }
  .modal-body { padding: 1.6rem 1.3rem 2.4rem !important; }
  .modal-close { position: fixed !important; top: 12px !important; right: 12px !important; z-index: 1200 !important;
                 width: 42px !important; height: 42px !important; border-radius: 50% !important;
                 background: #fff !important; color: #111 !important; border: 1px solid #e3e3e3 !important;
                 box-shadow: 0 6px 18px -8px rgba(0,0,0,.35); }
  .modal-name { font-size: 1.45rem !important; }
}

/* ── Fiche produit : défilement vertical rétabli (l'arrondi masquait le débordement) ── */
.modal { overflow-x: hidden !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }
