/* SMT — pages du site. Univers : l'atelier. Geste signature : la ligne de cote orange (flèches, valeur), le panneau perforé. */
:root{--sx-kraft:#e8dcc4;--sx-kraft-2:#dccfb3;--sx-encre-2:#2b332e;--sx-max:1200px}
.smt-site .site-content,.smt-site .inside-article,.smt-site .entry-content{padding:0!important;margin:0!important}
.smt-site .entry-header,.smt-site .page-header-image{display:none}
.smt-site .entry-content>*:first-child{margin-top:0}
.smt-site .site-main{margin:0!important}
.smt-site .content-area{width:100%!important}

/* Sections pleine largeur */
.sx{position:relative;width:100vw;margin-left:calc(50% - 50vw);padding:clamp(48px,7vw,96px) 0;overflow:hidden}
.sx-in{max-width:var(--sx-max);margin:0 auto;padding:0 clamp(16px,3vw,32px);position:relative;z-index:1}
.sx h1,.sx h2,.sx h3{margin:0;color:inherit;line-height:1.1}
.sx h1{font-size:clamp(2.1rem,4.2vw,3.5rem);letter-spacing:-.02em}
.sx h2{font-size:clamp(1.7rem,3vw,2.5rem);letter-spacing:-.01em}
.sx p{margin:0}
.sx-chapo{font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.6;max-width:56ch;margin-top:1rem!important;color:var(--mt-doux)}
.sx-papier{background:var(--mt-papier)}
.sx-blanc{background:#fff}
.sx-encre{background:var(--mt-encre);color:#eef0ec}
.sx-encre .sx-chapo{color:#b9c2bd}
.sx-orange{background:var(--mt-accent);color:#fff}
.sx-kraft{background:var(--sx-kraft)}
/* panneau perforé de l'atelier */
.sx-perfore{background-color:var(--sx-kraft);background-image:radial-gradient(circle at center,rgba(60,45,25,.15) 0 2.5px,transparent 3px);background-size:28px 28px}

/* Boutons */
.sx-bouton{display:inline-flex;align-items:center;gap:.5em;background:var(--mt-encre);color:#fff!important;text-decoration:none!important;padding:.85em 1.3em;border-radius:6px;font-weight:700;transition:transform .15s,background .15s}
.sx-bouton:hover{background:var(--mt-accent-fonce);transform:translateY(-2px)}
.sx-bouton.sx-clair{background:#fff;color:var(--mt-encre)!important}
.sx-attente{opacity:.85}

/* Ligne de cote (geste signature) */
.sx-cote{display:inline-flex;align-items:center;gap:.6em;font-weight:800;color:var(--mt-accent-fonce);font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}
.sx-cote::before,.sx-cote::after{content:"";width:26px;height:2px;background:currentColor;position:relative}
.sx-cote::before{box-shadow:-1px 0 0 0 currentColor;mask:linear-gradient(90deg,#000 0 100%)}
.sx-encre .sx-cote,.sx-orange .sx-cote{color:#ffb070}

/* ---------- HERO ---------- */
.sx-hero{padding:clamp(40px,6vw,80px) 0 clamp(48px,6vw,88px)}
.sx-hero .sx-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(24px,4vw,64px);align-items:center}
.sx-hero h1 span{color:var(--mt-accent-fonce)}
.sx-recherche{display:flex;gap:.5rem;margin-top:1.6rem;max-width:520px;background:#fff;border:2px solid var(--mt-encre);border-radius:8px;padding:.35rem}
.sx-recherche input{flex:1;border:0!important;background:transparent!important;font-size:1rem;padding:.6em .7em!important;min-width:0;outline:0}
.sx-recherche button{background:var(--mt-accent);color:#fff;border:0;border-radius:5px;padding:.6em 1.1em;font-weight:700;cursor:pointer}
.sx-recherche button:hover{background:var(--mt-accent-fonce)}
.sx-raccourcis{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.sx-raccourcis a,.sx-raccourcis span{font-size:.88rem;background:rgba(255,255,255,.7);border:1px solid rgba(0,0,0,.12);border-radius:999px;padding:.35em .85em;color:var(--mt-encre);text-decoration:none}
.sx-raccourcis a:hover{background:#fff;border-color:var(--mt-accent)}
/* montage photo épinglé */
.sx-montage{position:relative;height:clamp(340px,40vw,520px)}
.sx-polaroid{position:absolute;background:#fff;padding:10px 10px 34px;box-shadow:0 18px 40px -12px rgba(40,30,15,.45);border-radius:3px;width:62%;will-change:transform}
.sx-polaroid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:2px}
.sx-polaroid figcaption{position:absolute;left:12px;right:12px;bottom:8px;font-size:.78rem;color:var(--mt-doux);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sx-polaroid::before{content:"";position:absolute;top:-9px;left:50%;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ff9a4d,#a94b05);box-shadow:0 3px 5px rgba(0,0,0,.35)}
.sx-p1{left:0;top:6%;transform:rotate(-5deg);z-index:2}
.sx-p2{right:0;top:0;transform:rotate(4deg);width:52%;z-index:1}
.sx-p3{right:6%;bottom:0;transform:rotate(-2deg);width:54%;z-index:3}
.sx-cotes{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:visible}
.sx-cotes path,.sx-cotes line{stroke:var(--mt-accent);stroke-width:2.5;fill:none}
.sx-cotes .fl{fill:var(--mt-accent);stroke:none}
.sx-cotes text{fill:var(--mt-encre);font-weight:800;font-size:15px;paint-order:stroke;stroke:#fff;stroke-width:5px;stroke-linejoin:round}

/* ---------- MACHINES (bento) ---------- */
.sx-entete{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:clamp(20px,3vw,36px);flex-wrap:wrap}
.sx-entete .sx-chapo{margin-top:.6rem!important}
.sx-bento{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:260px 220px;gap:14px}
.sx-tuile{position:relative;border-radius:10px;overflow:hidden;display:block;color:#fff!important;text-decoration:none!important;background:var(--mt-encre)}
.sx-tuile:first-child{grid-row:span 2}
.sx-tuile:nth-child(4){grid-column:span 2}
.sx-tuile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.sx-tuile:hover img{transform:scale(1.06)}
.sx-tuile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,24,22,0) 35%,rgba(20,24,22,.88))}
.sx-tuile-txt{position:absolute;left:20px;right:20px;bottom:18px;z-index:2}
.sx-tuile-txt strong{display:block;font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.1}
.sx-tuile-txt span{display:block;font-size:.92rem;color:#d7ddd9;margin-top:.35rem}
.sx-tuile-fleche{position:absolute;top:16px;right:16px;z-index:2;width:42px;height:42px;border-radius:50%;background:var(--mt-accent);display:flex;align-items:center;justify-content:center;transform:rotate(-45deg);transition:transform .3s}
.sx-tuile:hover .sx-tuile-fleche{transform:rotate(0)}
.sx-tuile-fleche::before{content:"→";font-weight:800}

/* ---------- MODÈLES (défilement) ---------- */
.sx-modeles{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 18px;scrollbar-width:thin;cursor:grab}
.sx-modeles.sx-glisse{cursor:grabbing;scroll-snap-type:none}
.sx-modele{flex:0 0 clamp(220px,22vw,260px);scroll-snap-align:start;background:#fff;border-radius:10px;overflow:hidden;text-decoration:none!important;color:var(--mt-encre)!important;box-shadow:0 1px 0 rgba(0,0,0,.08),0 12px 24px -16px rgba(0,0,0,.35);transition:transform .2s;user-select:none}
a.sx-modele:hover{transform:translateY(-4px)}
.sx-modele img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;pointer-events:none}
.sx-modele-type{display:block;margin:12px 14px 0;font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:var(--mt-accent-fonce);font-weight:700}
.sx-modele strong{display:block;margin:2px 14px 0;font-size:1.25rem}
.sx-puces{display:flex;flex-wrap:wrap;gap:6px;margin:10px 14px 16px}
.sx-puces span{font-size:.78rem;background:var(--mt-papier);border:1px solid var(--mt-ligne);border-radius:4px;padding:.15em .55em}
div.sx-modele{cursor:default}
.sx-defile-nav{display:flex;gap:8px}
.sx-defile-nav button{width:44px;height:44px;border-radius:50%;border:2px solid var(--mt-encre);background:#fff;color:var(--mt-encre);font-size:1.1rem;font-weight:800;line-height:1;padding:0;cursor:pointer}
.sx-defile-nav button:hover{background:var(--mt-encre);color:#fff}

/* ---------- CHIFFRES ---------- */
.sx-chiffres{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:clamp(24px,3vw,40px);border-top:2px solid rgba(255,255,255,.35)}
.sx-chiffre{padding:28px 22px 6px 0;color:#fff!important;text-decoration:none!important;display:block;position:relative}
.sx-chiffre+.sx-chiffre{padding-left:22px;border-left:2px solid rgba(255,255,255,.35)}
.sx-val{display:inline-flex;align-items:baseline;white-space:nowrap}
.sx-nb{font-size:clamp(2.6rem,5.4vw,4.8rem);font-weight:800;line-height:.95;letter-spacing:-.03em}
.sx-u{font-size:clamp(1.3rem,2.4vw,2rem);font-weight:800;margin-left:.15em}
.sx-t{display:block;margin-top:.8rem;font-size:.98rem;line-height:1.45;color:#fff4ea;max-width:24ch}
a.sx-chiffre .sx-t{text-decoration:underline;text-decoration-color:rgba(255,255,255,.45);text-underline-offset:3px}

/* ---------- SPLITS ---------- */
.sx-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center}
.sx-split.sx-inverse>:first-child{order:2}
.sx-split .mt-outil{margin:0}
.sx-cadre{position:relative;border-radius:10px;overflow:hidden;box-shadow:0 24px 48px -24px rgba(0,0,0,.5)}
.sx-cadre img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.sx-cadre .sx-etiquette{position:absolute;left:16px;bottom:16px;background:var(--mt-encre);color:#fff;font-weight:700;font-size:.9rem;padding:.45em .8em;border-radius:4px}
.sx-liste{list-style:none;margin:1.4rem 0 0!important;padding:0}
.sx-liste li{display:flex;gap:.8rem;align-items:baseline;padding:.6rem 0;border-bottom:1px dashed var(--mt-ligne);margin:0}
.sx-encre .sx-liste li{border-bottom-color:rgba(255,255,255,.18)}
.sx-liste li::before{content:"";flex:0 0 10px;height:10px;border-radius:2px;background:var(--mt-accent);transform:translateY(1px) rotate(45deg)}
.sx-liste a{color:inherit!important;text-decoration:underline;text-decoration-color:var(--mt-accent);text-underline-offset:3px}
.sx-encre .mt-outil{border-color:#fff;color:var(--mt-texte)}
.sx-encre .mt-outil-corps,.sx-encre .mt-outil-corps *:not(a):not(button){color:var(--mt-encre)}
.sx-encre .mt-outil label{color:var(--mt-doux)}
.sx:has(.sx-vide){display:none}

/* ---------- SAISONS ---------- */
.sx-saisons{list-style:none;margin:clamp(20px,3vw,36px) 0 0!important;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;row-gap:26px;counter-reset:m}
.sx-saisons li{margin:0;background:#fff;border-radius:8px;padding:16px 16px 18px;min-height:118px;position:relative;font-size:.95rem;line-height:1.35;border-top:4px solid var(--mt-ligne);transition:transform .2s}
.sx-saisons li a{color:var(--mt-encre);text-decoration:none}
.sx-saisons li a:hover{text-decoration:underline}
.sx-mois{display:block;font-weight:800;font-size:1rem;margin-bottom:.4rem;color:var(--mt-encre)}
.sx-saisons li.sx-maintenant{background:var(--mt-encre);color:#fff;border-top-color:var(--mt-accent);transform:translateY(-8px);box-shadow:0 14px 28px -14px rgba(0,0,0,.6)}
.sx-saisons li.sx-maintenant .sx-mois,.sx-saisons li.sx-maintenant a{color:#fff}
.sx-saisons li.sx-maintenant::after{content:"ce mois-ci";position:absolute;top:-26px;left:10px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--mt-accent-fonce)}

/* ---------- CARTES D'ARTICLES ---------- */
.sx-cartes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sx-cartes-magazine{grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:auto auto}
.sx-cartes-magazine .sx-une{grid-row:span 2}
.sx-carte{display:flex;flex-direction:column;background:#fff;border-radius:10px;overflow:hidden;text-decoration:none!important;color:var(--mt-encre)!important;box-shadow:0 1px 0 rgba(0,0,0,.06),0 14px 28px -20px rgba(0,0,0,.4);transition:transform .2s}
.sx-carte:hover{transform:translateY(-3px)}
.sx-carte-img img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.sx-une .sx-carte-img img{aspect-ratio:4/3}
.sx-carte-txt{padding:14px 16px 18px}
.sx-carte-cat{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.07em;color:var(--mt-accent-fonce);font-weight:700;margin-bottom:.3rem}
.sx-carte strong{font-size:1.05rem;line-height:1.3}
.sx-une strong{font-size:1.35rem}

/* ---------- AUTEUR / À PROPOS ---------- */
.sx-perfore .sx-auteur{background:#fffdf8;border-radius:16px;padding:clamp(22px,4vw,48px);box-shadow:0 24px 48px -30px rgba(40,30,15,.45)}
.sx-auteur{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:center}
.sx-avatar{width:clamp(120px,14vw,180px);aspect-ratio:1;border-radius:50%;object-fit:cover;border:6px solid #fff;box-shadow:0 12px 30px -12px rgba(0,0,0,.45)}
.sx-texte{font-size:1.08rem;line-height:1.75;max-width:62ch}
.sx-texte p+p{margin-top:1rem}
.sx-signature{margin-top:1.2rem!important;font-weight:800}

/* ---------- PILIERS ---------- */
.sx-pilier-hero{color:#fff;padding:clamp(56px,8vw,110px) 0}
.sx-pilier-hero .sx-fond{position:absolute;inset:0;z-index:0}
.sx-pilier-hero .sx-fond img{width:100%;height:100%;object-fit:cover}
.sx-pilier-hero .sx-fond::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,22,20,.92) 0%,rgba(18,22,20,.75) 45%,rgba(18,22,20,.15) 100%)}
.sx-pilier-hero .sx-chapo{color:#e5e9e6}
.sx-fil{font-size:.85rem;margin-bottom:1rem!important;color:#c8cfca}
.sx-fil a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.sx-essentiel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sx-point{background:#fff;border-radius:10px;padding:20px 18px;border-top:4px solid var(--mt-accent);box-shadow:0 12px 24px -20px rgba(0,0,0,.45)}
.sx-point strong{display:block;font-size:1.6rem;line-height:1;color:var(--mt-encre)}
.sx-point span{display:block;margin-top:.5rem;font-size:.95rem;line-height:1.45;color:var(--mt-doux)}
.sx-questions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;list-style:none;margin:clamp(18px,2vw,28px) 0 0!important;padding:0}
.sx-questions li{margin:0;padding:14px 0;border-bottom:1px solid var(--mt-ligne);display:flex;gap:.8rem;align-items:baseline;font-size:1.02rem}
.sx-questions li::before{content:"?";flex:0 0 26px;height:26px;border-radius:50%;background:var(--mt-encre);color:#fff;font-weight:800;font-size:.85rem;display:flex;align-items:center;justify-content:center;transform:translateY(4px)}
.sx-questions a{color:var(--mt-encre);font-weight:600;text-decoration:none;border-bottom:2px solid var(--mt-accent)}
.sx-questions a:hover{color:var(--mt-accent-fonce)}

/* Animations : état initial seulement si JS actif et mouvement autorisé */
.sx-js .sx-revele{opacity:0;transform:translateY(28px)}
@media (prefers-reduced-motion:reduce){.sx-js .sx-revele{opacity:1;transform:none}}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
  .sx-saisons{grid-template-columns:repeat(4,minmax(0,1fr))}
  .sx-essentiel{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .sx-hero .sx-in,.sx-split,.sx-auteur{grid-template-columns:minmax(0,1fr)}
  .sx-split.sx-inverse>:first-child{order:0}
  .sx-montage{height:clamp(300px,78vw,440px)}
  .sx-bento{grid-template-columns:1fr 1fr;grid-template-rows:200px 170px 170px}
  .sx-tuile:first-child{grid-row:span 1;grid-column:span 2}
  .sx-tuile:nth-child(4){grid-column:span 2}
  .sx-chiffres{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sx-chiffre:nth-child(3){padding-left:0;border-left:0}
  .sx-chiffre:nth-child(n+3){border-top:2px solid rgba(255,255,255,.35)}
  .sx-cartes,.sx-cartes-magazine{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .sx-cartes-magazine .sx-une{grid-row:auto;grid-column:span 2}
  .sx-questions{grid-template-columns:minmax(0,1fr)}
  .sx-avatar{margin:0 auto}
}
@media (max-width:560px){
  .sx-bento{grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-auto-rows:190px}
  .sx-tuile:first-child,.sx-tuile:nth-child(4){grid-column:auto;grid-row:auto}
  .sx-saisons{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sx-saisons li{min-height:120px}
  .sx-cartes,.sx-cartes-magazine{grid-template-columns:minmax(0,1fr)}
  .sx-cartes-magazine .sx-une{grid-column:auto}
  .sx-essentiel{grid-template-columns:minmax(0,1fr)}
  .sx-recherche{flex-wrap:wrap}
  .sx-recherche button{flex:1 0 100%}
}

/* Liens sur fonds sombres */
.sx-fil a{color:#fff!important;text-decoration:none}
.sx-fil a:hover{text-decoration:underline}
.sx-encre .sx-liste a{color:#fff!important;text-decoration:none}
.sx-encre .sx-liste a:hover{color:#ffb070!important}

/* Pages machines : aiguillage par symptôme + conseil d'André */
.sx-pistes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sx-piste{background:var(--mt-papier,#f6f3ec);border-radius:14px;padding:26px 24px 20px;position:relative;border-top:5px solid var(--mt-accent)}
.sx-piste h3{margin:0 0 .45rem;font-size:1.3rem;line-height:1.15;color:var(--mt-encre)}
.sx-piste>p{margin:0 0 1rem;color:var(--mt-doux);font-size:.98rem;line-height:1.5}
.sx-piste ul{list-style:none;margin:0!important;padding:0}
.sx-piste li{margin:0;border-top:1px solid var(--mt-ligne)}
.sx-piste li>a,.sx-piste li>span{display:flex;justify-content:space-between;gap:.8rem;padding:.7rem 0;font-weight:600;font-size:.98rem;line-height:1.35;color:var(--mt-encre)!important;text-decoration:none!important}
.sx-piste li>a::after{content:"→";color:var(--mt-accent);font-weight:800;transition:transform .2s}
.sx-piste li>a:hover{color:var(--mt-accent-fonce)!important}
.sx-piste li>a:hover::after{transform:translateX(4px)}
.sx-piste li>span{color:var(--mt-doux)!important;font-weight:500}
.sx-astuce{display:flex;gap:18px;align-items:flex-start;margin:clamp(28px,4vw,44px) 0 0;padding:24px 26px;background:#fff;border-radius:14px;border-left:5px solid var(--mt-encre);box-shadow:0 12px 24px -20px rgba(0,0,0,.45)}
.sx-astuce img{flex:0 0 64px;width:64px;height:64px;border-radius:50%;object-fit:cover;filter:grayscale(1)}
.sx-astuce blockquote{margin:0;padding:0;border:0;font-style:normal}
.sx-astuce blockquote p{margin:0;font-size:1.12rem;line-height:1.55;color:var(--mt-encre)}
.sx-astuce figcaption{margin-top:.5rem;font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--mt-accent-fonce)}
@media (max-width:860px){.sx-pistes{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.sx-astuce{flex-direction:column}}

/* Page contact : formulaire + panneau pratique (même logique que fx_contact du template) */
.sx-contact{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.sx-contact-form{background:var(--mt-papier,#f6f3ec);border-radius:16px;padding:clamp(20px,3vw,36px)}
.sx-contact-form .wpcf7-form p{margin:0 0 1rem}
.sx-contact-form label{display:block;font-weight:700;color:var(--mt-encre);margin-bottom:.35rem;font-size:.95rem}
.sx-contact-form input[type=text],.sx-contact-form input[type=email],.sx-contact-form input[type=tel],.sx-contact-form textarea{width:100%;padding:12px 14px;border:1px solid var(--mt-ligne);border-radius:10px;background:#fff;font:inherit;color:var(--mt-encre)}
.sx-contact-form textarea{min-height:170px;resize:vertical}
.sx-contact-form input:focus,.sx-contact-form textarea:focus{outline:none;border-color:var(--mt-accent);box-shadow:0 0 0 3px var(--mt-accent-pale)}
.sx-contact-form .wpcf7-submit{background:var(--mt-accent);color:#fff;border:0;border-radius:10px;padding:13px 26px;font-weight:800;font-size:1rem;cursor:pointer}
.sx-contact-form .wpcf7-submit:hover{background:var(--mt-accent-fonce)}
.sx-contact-side{position:sticky;top:24px}
.sx-ci{padding:16px 0;border-top:1px solid var(--mt-ligne)}
.sx-ci strong{display:block;color:var(--mt-encre);margin-bottom:.25rem}
.sx-ci span{display:block;color:var(--mt-doux);line-height:1.5;font-size:.97rem}
@media (max-width:860px){.sx-contact{grid-template-columns:minmax(0,1fr)}.sx-contact-side{position:static}}
