/* ==========================================================================
   Scan Major : système de marque partagé des pages de scan
   Reprend à l'identique les jetons de l'accueil (couleurs, polices, en-tête,
   pied de page) pour que les neuf scans suivent la même direction artistique.
   ========================================================================== */

/* Polices de l'accueil (fichiers extraits de la page d'accueil) */
@font-face{font-family:"Neue Haas Grotesk Display Pro";src:url(/assets/fonts/nhg-display-300.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Neue Haas Grotesk Display Pro";src:url(/assets/fonts/nhg-display-450.woff2) format("woff2");font-weight:450;font-style:normal;font-display:swap}
@font-face{font-family:"Neue Haas Grotesk Display Pro";src:url(/assets/fonts/nhg-display-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Neue Haas Grotesk Text Pro";src:url(/assets/fonts/nhg-text-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Playfair Display";src:url(/assets/fonts/playfair.woff2) format("woff2");font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:"Playfair Display";src:url(/assets/fonts/playfair-italic.woff2) format("woff2");font-weight:400 900;font-style:italic;font-display:swap}

/* Familles composées pour les scans : 400 = Text Pro (texte courant),
   300/450/500+ = Display Pro, comme sur l'accueil. Le titre en Playfair
   reste en graisse régulière (400), comme sur l'accueil. */
@font-face{font-family:"SM Sans";src:url(/assets/fonts/nhg-display-300.woff2) format("woff2");font-weight:100 350;font-style:normal;font-display:swap}
@font-face{font-family:"SM Sans";src:url(/assets/fonts/nhg-text-400.woff2) format("woff2");font-weight:351 449;font-style:normal;font-display:swap}
@font-face{font-family:"SM Sans";src:url(/assets/fonts/nhg-display-450.woff2) format("woff2");font-weight:450 499;font-style:normal;font-display:swap}
@font-face{font-family:"SM Sans";src:url(/assets/fonts/nhg-display-500.woff2) format("woff2");font-weight:500 900;font-style:normal;font-display:swap}
@font-face{font-family:"SM Serif";src:url(/assets/fonts/playfair.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"SM Serif";src:url(/assets/fonts/playfair-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}

:root{
  --mm-gold:#CEA36C;
  --mm-ink:#0D0E0F;
  --mm-black:#000000;
  --mm-white:#FFFFFF;
  --mm-grey-600:#757575;
  --mm-rule-light:rgba(255,255,255,0.28);
  --font-serif:"Playfair Display",ui-serif,Georgia,"Times New Roman",serif;
  --font-sans:"Neue Haas Grotesk Display Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-sans-text:"Neue Haas Grotesk Text Pro","Neue Haas Grotesk Display Pro",-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  --font-body-alt:Lato,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --sm-sans:"SM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --sm-serif:"SM Serif",ui-serif,Georgia,"Times New Roman",serif;
  --ease:cubic-bezier(.4,0,.2,1);
  --gutter:clamp(20px,5.35vw,77px);
}

html{-webkit-text-size-adjust:100%;scroll-padding-top:110px}
body.sm-page{margin:0;background:var(--mm-ink)!important;color:var(--mm-white);font-family:var(--sm-sans);font-weight:400!important;-webkit-font-smoothing:antialiased}
body.sm-page *{font-synthesis:none}
body.sm-page :focus-visible{outline:2px solid var(--mm-gold);outline-offset:3px}

/* Le sélecteur de langue flottant de l'ancienne version est remplacé par celui de l'en-tête */
#sm-lang{display:none!important}

/* --------------------------------------------------------------------------
   En-tête et pied de page : copie conforme de l'accueil
   -------------------------------------------------------------------------- */
.sm-page a{text-decoration:none}
.sm-page .site-header{position:sticky;top:0;z-index:50;background:var(--mm-ink);border-bottom:1px solid var(--mm-rule-light);display:flex;align-items:center;justify-content:space-between;gap:20px 32px;flex-wrap:wrap;padding:calc(26px + env(safe-area-inset-top,0px)) var(--gutter) 26px}
.sm-page .brand{display:flex;align-items:center;color:var(--mm-white);line-height:0}
.sm-page .brand img{display:block;height:44px;width:auto}
.sm-page .site-nav{display:flex;align-items:center;gap:clamp(18px,2.4vw,34px);flex-wrap:wrap}
.sm-page .site-nav>a:not(.pill){font-family:var(--font-sans);font-weight:450;font-size:16px;color:var(--mm-white);transition:color 150ms var(--ease)}
.sm-page .site-nav>a:not(.pill):hover{color:var(--mm-gold)}
.sm-page .lang{display:inline-flex;align-items:center;gap:2px;font-family:var(--font-sans);font-weight:500;font-size:14px;letter-spacing:.06em;color:rgba(255,255,255,.4)}
.sm-page .lang button{background:none;border:0;padding:6px 5px;cursor:pointer;color:rgba(255,255,255,.6);letter-spacing:inherit;font:inherit;transition:color 150ms var(--ease)}
.sm-page .lang button:hover{color:var(--mm-white)}
.sm-page .lang button[aria-pressed="true"]{color:var(--mm-gold);cursor:default}
.sm-page .pill{display:inline-flex;align-items:center;height:40px;padding:0 22px;border-radius:24.2px;background:var(--mm-gold);color:var(--mm-black);font-family:var(--font-body-alt);font-weight:400;font-size:16px;line-height:24px;white-space:nowrap;transition:background 150ms var(--ease)}
.sm-page .pill:hover{background:var(--mm-white);color:var(--mm-black)}

.sm-page .site-footer{background:var(--mm-ink);color:var(--mm-white);padding-top:clamp(48px,6vw,80px)}
.sm-page .gutter{padding-left:var(--gutter);padding-right:var(--gutter)}
.sm-page .footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:clamp(28px,4vw,64px);flex-wrap:wrap}
.sm-page .site-footer .brand img{height:62px}
.sm-page .footer-links{display:flex;gap:12px clamp(20px,3vw,44px);flex-wrap:wrap}
.sm-page .footer-links a,.sm-page .footer-links button{font-family:var(--font-sans-text);font-size:16px;color:var(--mm-white);background:none;border:0;padding:0;cursor:pointer;transition:color 150ms var(--ease)}
.sm-page .footer-links a:hover,.sm-page .footer-links button:hover{color:var(--mm-gold)}
.sm-page .disclaimer{margin:clamp(32px,4vw,48px) 0 0;padding-top:26px;border-top:1px solid var(--mm-rule-light);max-width:1100px;font-family:var(--font-sans-text);font-size:14px;line-height:22px;color:var(--mm-white)}
.sm-page .disclaimer strong{font-weight:400;color:var(--mm-gold)}
.sm-page .baseline{margin-top:clamp(32px,4vw,48px);padding-top:20px;padding-bottom:20px;background:var(--mm-black)}
.sm-page .baseline p{margin:0;font-family:var(--font-sans-text);font-size:14px;line-height:22px;color:var(--mm-grey-600)}
@media (max-width:560px){
  .sm-page .site-header{padding-top:calc(18px + env(safe-area-inset-top,0px));padding-bottom:18px}
  .sm-page .site-nav>a.hide-sm{display:none}
  .sm-page .brand img{height:36px}
}

/* --------------------------------------------------------------------------
   Application de scan (React) : ajustements au système de l'accueil
   -------------------------------------------------------------------------- */
/* Ancien en-tête centré (gros logo + « Tous les scans ») : remplacé par l'en-tête de l'accueil.
   Seul le sous-titre du scan est conservé, en sur-titre doré comme sur l'accueil. */
.sm-legacy-head{background:transparent!important;border:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding:clamp(36px,5vw,64px) 20px 0!important}
.sm-legacy-head>:nth-child(1),.sm-legacy-head>:nth-child(2){display:none!important}
.sm-legacy-head>:nth-child(3){margin-top:0!important;font-family:var(--font-sans-text)!important;font-style:normal!important;font-size:16px!important;line-height:24px!important;letter-spacing:0!important;color:var(--mm-gold)!important}

/* Ancien pied de page : son avertissement est repris dans le pied de page de l'accueil */
#root footer{display:none!important}

/* Icônes (remplacent les emojis) : trait fin doré, comme les pictogrammes de l'accueil */
.sm-ic{display:inline-block;width:1em;height:1em;vertical-align:-0.14em;flex:none;color:var(--mm-gold);stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;overflow:visible}

/* Boutons d'action principaux : pastille dorée unie, comme « Commencer un scan » */
#root button[style*="linear-gradient"]{background:var(--mm-gold)!important;color:var(--mm-black)!important;border:0!important;border-radius:999px!important;box-shadow:none!important;font-family:var(--font-sans)!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important}
#root button[style*="linear-gradient"]:hover{background:var(--mm-white)!important;opacity:1!important}
#root button[style*="linear-gradient"]:disabled{opacity:.45!important}

/* Champs de saisie */
#root input,#root select,#root textarea{font-family:var(--sm-sans)}
#root input[type=range]::-webkit-slider-thumb{background:var(--mm-gold)!important;box-shadow:0 0 0 2px rgba(206,163,108,.3)!important}
#root input[type=range]::-moz-range-thumb{background:var(--mm-gold)!important}
body.sm-page ::-webkit-scrollbar-thumb{background:#3A3B3D!important}

/* --------------------------------------------------------------------------
   « Poursuivez votre scan complet » : mêmes cartes que la grille de l'accueil
   -------------------------------------------------------------------------- */
html body #smk-next{max-width:calc(1180px + 2 * var(--gutter))!important;margin:clamp(56px,7vw,104px) auto 0!important;padding:0 var(--gutter) 0!important;color:var(--mm-white)!important;font-family:var(--font-sans-text)!important}
html body #smk-next .box{background:rgba(255,255,255,0.03)!important;border:0!important;border-radius:0!important;box-shadow:0 0 0 1px rgba(255,255,255,0.14)!important;padding:clamp(24px,3vw,36px) clamp(20px,3vw,36px)!important}
html body #smk-next .k{font:400 16px/24px var(--font-sans-text)!important;letter-spacing:0!important;text-transform:none!important;color:var(--mm-gold)!important;margin-bottom:10px!important}
html body #smk-next h3{font:400 clamp(28px,3vw,40px)/1.15 var(--font-serif)!important;letter-spacing:0!important;margin-bottom:10px!important;color:var(--mm-white)!important}
html body #smk-next h3 span{color:#5ED595!important}
html body #smk-next p{font:400 15px/23px var(--font-sans-text)!important;color:rgba(255,255,255,.72)!important;margin-bottom:0!important}
html body #smk-next .row{align-items:flex-end!important;gap:20px 40px!important;margin-bottom:30px!important}
html body #smk-next .smk-s{border-radius:0!important;background:var(--mm-ink)!important;border:0!important;box-shadow:0 0 0 1px rgba(255,255,255,0.14)!important;padding:22px!important;gap:16px!important;color:var(--mm-white)!important}
html body #smk-next .smk-s:hover{background:rgba(206,163,108,0.1)!important;transform:none!important}
html body #smk-next .smk-sug{gap:1px!important}
html body #smk-next .smk-s .i{line-height:0!important;margin-top:0!important}
html body #smk-next .smk-s .i svg{width:40px;height:40px;display:block}
html body #smk-next .smk-s b{font:400 22px/1.25 var(--font-serif)!important;color:var(--mm-white)!important;margin-bottom:6px!important}
html body #smk-next .smk-s .w{font:400 14px/20px var(--font-sans-text)!important;letter-spacing:0!important;text-transform:none!important;color:var(--mm-gold)!important}
html body #smk-next .smk-s small{font:400 14px/22px var(--font-sans-text)!important;color:rgba(255,255,255,.72)!important}
html body #smk-next .smk-s .go{font:500 16px/1 var(--font-sans)!important;letter-spacing:0!important;color:var(--mm-white)!important;margin-top:14px!important}
html body #smk-next .smk-s:hover .go{color:var(--mm-gold)!important}
html body #smk-next .smk-dot{font:400 15px/1 var(--font-serif)!important;border:0!important;box-shadow:inset 0 0 0 1px rgba(206,163,108,.55)!important;color:var(--mm-gold)!important;width:30px!important;height:30px!important}
html body #smk-next .smk-dot.here{box-shadow:inset 0 0 0 1px var(--mm-gold)!important;background:rgba(206,163,108,.14)!important}
html body #smk-next .smk-dot.on{background:#2FB36B!important;box-shadow:none!important;color:#fff!important}
html body #smk-next .smk-dot:hover{color:var(--mm-white)!important}
html body #smk-next .all{color:var(--mm-white)!important;font:500 16px/1 var(--font-sans)!important;letter-spacing:0!important;margin-top:24px!important}
html body #smk-next .all:hover{color:var(--mm-gold)!important;text-decoration:none!important}
html body #smk-next .smk-new{background:none!important;color:var(--mm-gold)!important;font:400 12px/18px var(--font-sans-text)!important;letter-spacing:.08em!important;padding:0!important}

@media print{.site-header,.site-footer,#smk-next{display:none!important}}

/* Titres en Playfair : graisse régulière, comme l'accueil */
#root [style*="--sm-serif"]{font-weight:400!important}

/* Halos et lueurs décoratives retirés : l'accueil est plat */
#root div[style*="box-shadow"],#root span[style*="box-shadow"]{box-shadow:none!important}
#root [style*="text-shadow"]{text-shadow:none!important}
#root [style*="drop-shadow"]{filter:none!important}

/* Liens d'action principaux (même traitement que les boutons) */
#root a[style*="linear-gradient"]{background:var(--mm-gold)!important;color:var(--mm-black)!important;border:0!important;border-radius:999px!important;box-shadow:none!important;font-family:var(--font-sans)!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important}
#root a[style*="linear-gradient"]:hover{background:var(--mm-white)!important;opacity:1!important}
