/* NewTouch V3 · intégration V6 × Claude : intro, travaux sélectionnés (cartes physiques), studio en volume, collection dense.
   S'ajoute à nt.css (moteur D) sans le modifier. */

/* ---------- Intro : ouverture lumineuse ---------- */
.intro{position:fixed;inset:0;z-index:200;background:var(--noir);color:#fff;display:grid;place-items:center;overflow:hidden;cursor:pointer}
.intro[hidden]{display:none}
.intro-bloc{position:relative;z-index:2;text-align:center;padding:0 16px}
.intro-nom{font-family:var(--serif);font-size:clamp(64px,12.5vw,190px);line-height:1;letter-spacing:.045em;white-space:nowrap}
.intro-nom i{font-style:normal;color:var(--rouge-l)}
.intro-studio{font-family:var(--sans);font-weight:500;font-size:clamp(22px,3.4vw,52px);letter-spacing:.34em;margin-top:clamp(10px,1.6vw,22px);padding-left:.34em;color:#fff}
.intro-ligne{position:absolute;left:0;right:0;top:50%;height:1px;margin-top:clamp(92px,11vw,170px);background:var(--rouge-l);transform:scaleX(0);box-shadow:0 0 10px rgba(229,72,47,.55)}
.intro-lumiere{position:absolute;inset:0;z-index:3;background:var(--blanc);transform:scaleY(0)}
.intro-passer{position:absolute;z-index:4;right:clamp(16px,3vw,32px);bottom:clamp(16px,3vw,28px);font-family:var(--mono);font-size:12px;color:#C9CBCE;padding:10px 14px;border:1px solid rgba(255,255,255,.25);border-radius:999px;transition:color .2s,border-color .2s}
.intro-passer:hover{color:#fff;border-color:#fff}
@media (max-width:600px){.intro-studio{letter-spacing:.24em;padding-left:.24em}.intro-ligne{margin-top:96px}}

/* ---------- Travaux sélectionnés : la table ---------- */
.travaux{background:linear-gradient(var(--blanc),var(--gris-1) 55%,var(--gris-1));padding:clamp(40px,6vw,88px) 0 clamp(28px,4vw,56px);overflow:hidden}
.t-tete{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap}
.t-tete h2{font-size:clamp(42px,5.4vw,84px);margin-top:12px}
.t-cmd{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.t-cmd .compte{font-family:var(--mono);font-size:12px;color:var(--gris-m);margin-right:6px}
.t-cmd .btn{min-height:42px;font-size:14px;padding:0 18px}
.table{position:relative;height:clamp(500px,48vw,700px);margin-top:clamp(14px,2vw,26px);perspective:1700px;perspective-origin:50% 0%;touch-action:pan-y}
.plateau{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--incl,20deg));transform-origin:50% 100%}
.plateau:before{content:"";position:absolute;inset:4% 3% 2%;border:1px solid rgba(37,38,41,.1);background-image:linear-gradient(rgba(37,38,41,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(37,38,41,.055) 1px,transparent 1px);background-size:64px 64px;border-radius:4px}
.ombre{position:absolute;left:0;top:0;border-radius:6px;background:rgba(11,10,10,.34);box-shadow:0 0 28px 10px rgba(11,10,10,.24);will-change:transform,opacity;pointer-events:none}
.carte{position:absolute;left:0;top:0;border-radius:5px;overflow:hidden;background:var(--noir);color:#fff;border:4px solid #fff;box-shadow:0 1px 2px rgba(0,0,0,.18),0 6px 14px -6px rgba(0,0,0,.25);will-change:transform;cursor:pointer;text-align:left;padding:0;backface-visibility:hidden;transition:filter .3s,opacity .3s}
.carte img,.carte video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.carte video{opacity:0;transition:opacity .3s}.carte video.on{opacity:1}
.carte:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(11,10,10,.82));pointer-events:none}
.carte .ci{position:absolute;z-index:2;left:12px;right:12px;bottom:10px;pointer-events:none}
.carte .ci small{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:#E7E8EA;opacity:.85;text-transform:uppercase}
.carte .ci b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(20px,1.9vw,32px);line-height:1.02;margin-top:3px}
.carte.v .ci b{font-size:clamp(18px,1.5vw,24px)}
.table.survol .carte:not(.levee){filter:brightness(.62) saturate(.8)}
.table.prise .carte{cursor:grabbing}
.t-aide{font-size:13px;color:var(--gris-m);margin-top:10px}
.t-aide .p{font-family:var(--mono);font-size:11px;background:rgba(229,72,47,.12);color:var(--rouge);padding:2px 7px;border-radius:3px;margin-right:6px}
@media (max-width:700px){
  .table{height:600px;perspective:1100px}
  .plateau{--incl:12deg}
  .t-cmd{width:100%}.t-cmd .compte{width:100%}
  .carte{border-width:3px}
}

/* ---------- Le studio en volume ---------- */
.studio3d{position:relative;background:var(--gris-1);padding:clamp(40px,6vw,88px) 0 0;overflow:hidden}
.studio3d .s3-tete{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap}
.studio3d h2{font-size:clamp(42px,5.4vw,84px);margin-top:12px}
.studio3d .s3-l{max-width:380px;font-size:15px;color:var(--texte-2)}
.s3-scene{position:relative;height:clamp(460px,62vw,820px);margin-top:10px;cursor:grab;touch-action:pan-y}
.s3-scene.prise{cursor:grabbing}
.s3-scene canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}
.s3-scene .affiche{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .8s}
.s3-scene.pret .affiche{opacity:0}
.s3-etat{position:absolute;left:var(--gutter);bottom:20px;z-index:2;font-family:var(--mono);font-size:11.5px;color:var(--texte-2);background:rgba(255,255,255,.82);padding:6px 10px;border-radius:999px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.s3-aide{position:absolute;right:var(--gutter);bottom:20px;z-index:2;font-size:13px;color:var(--texte-2)}
@media (hover:none){.s3-aide{display:none}}

/* ---------- Collection : plus de films visibles, moins de texte ---------- */
@media (min-width:1001px){.grille{grid-template-columns:minmax(0,1fr) minmax(360px,440px)}}
.liste{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 10px;align-content:start}
.liste .item{display:block;padding:0;border-radius:4px;border:0;background:none}
.liste .item:hover{background:none}
.liste .th{display:block;aspect-ratio:16/10;border-radius:4px;outline:1px solid transparent;transition:outline-color .2s,transform .3s var(--ease)}
.liste .item:hover .th{transform:translateY(-2px)}
.liste .item[aria-current="true"]{background:none;border:0}
.liste .item[aria-current="true"] .th{outline:2px solid var(--rouge-l);outline-offset:2px}
.liste .tx{display:block;padding:7px 2px 2px}
.liste .t{font-family:var(--serif);font-weight:400;font-size:19px;line-height:1.05}
.liste .s{display:none}
.liste .n{font-family:var(--mono);font-size:10px;vertical-align:3px}
.fiche .demo{display:none}
/* bouton « Voir les autres films » au bout de la liste courte */
.liste .plus-li{grid-column:1/-1}
.liste .plus{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;margin-top:4px;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:14px;color:#E7E8EA;transition:border-color .2s,color .2s}
.liste .plus:hover,.liste .plus:focus-visible{border-color:var(--rouge-l);color:#fff}
.liste .plus span{color:var(--rouge-l)}
/* mobile : le rail horizontal de la piste D est conservé, avec des vignettes plus petites pour voir plus de films à la fois */
@media (max-width:1000px){.liste .plus-li{display:flex}.liste .plus{width:auto;height:100%;min-height:120px;flex-direction:column;justify-content:center;border-radius:6px;padding:16px;max-width:42vw;text-align:center}.liste{display:flex;grid-template-columns:none}.liste .item .th{width:42vw;max-width:220px}.liste .item.v .th{width:24vw;aspect-ratio:9/16}.liste .tx{max-width:42vw}}

@media (prefers-reduced-motion:reduce){.intro{display:none}}
