/* ==========================================================================
   06 — RÉALISATIONS  (maquette : y 1072 → 1255)
   Texte x 97 ; rangée de captures 324 → 1003 (h 111), titre + catégorie ;
   flèches, glisser et balayage ; projet actif un peu plus grand ;
   la lueur prend la teinte du projet actif.
   ========================================================================== */
.works{min-height:calc(184 * var(--m));--tint:246,43,62}
.works__glow{position:absolute;z-index:0;left:calc(300 * var(--m));right:0;top:0;bottom:0;background:radial-gradient(calc(380 * var(--m)) calc(130 * var(--m)) at var(--gx,40%) 55%,rgba(var(--tint),.16),transparent 70%);transition:background .9s var(--ease);pointer-events:none}
.works__rock{position:absolute;z-index:0;left:calc(-120 * var(--m));bottom:calc(-40 * var(--m));width:calc(330 * var(--m));opacity:.38;transform:scaleX(-1);pointer-events:none;-webkit-mask-image:linear-gradient(90deg,#000 30%,transparent);mask-image:linear-gradient(90deg,#000 30%,transparent)}
.works__grid{position:relative;z-index:2;display:grid;grid-template-columns:calc(227 * var(--m)) minmax(0,1fr);padding:calc(22 * var(--m)) 0 calc(18 * var(--m)) calc(97 * var(--m))}
.works__title{margin-top:max(calc(var(--mins) * 18px),calc(13 * var(--m)))}
.works__intro .txt{margin-top:max(calc(var(--mins) * 14px),calc(10 * var(--m)));font-size:var(--fs-small);max-width:max(calc(var(--mins) * 300px),calc(205 * var(--m)))}
.works__intro .btn{margin-top:max(calc(var(--mins) * 20px),calc(15 * var(--m)))}

.slider{position:relative;min-width:0;margin-top:calc(1 * var(--m));padding-right:calc(84 * var(--m))}
.slider__viewport{overflow:hidden;cursor:grab;touch-action:pan-y;padding:calc(4 * var(--m)) 0 calc(6 * var(--m));margin:calc(-4 * var(--m)) 0 calc(-6 * var(--m))}
.slider__viewport.is-drag{cursor:grabbing}
.slider__track{display:flex;align-items:flex-start;gap:calc(14 * var(--m));will-change:transform;transition:transform .7s var(--ease-out)}
.slider__viewport.is-drag .slider__track{transition:none}

.proj{flex:0 0 calc(155 * var(--m));min-width:0;transition:flex-basis .6s var(--ease-out)}
.proj.is-active{flex-basis:calc(170 * var(--m))}
.proj__shot{position:relative;display:block;width:100%;height:max(calc(var(--mins) * 150px),calc(111 * var(--m)));overflow:hidden;background:#111;border:1px solid rgba(255,255,255,.06);transition:border-color .5s var(--ease),box-shadow .5s var(--ease)}
.proj__shot img{width:100%;height:100%;object-fit:cover;object-position:top center;filter:saturate(.92) brightness(.9);transition:transform .9s var(--ease-out),filter .6s var(--ease);user-select:none;-webkit-user-drag:none;pointer-events:none}
.proj__shot::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(6,6,6,.5));pointer-events:none}
.proj.is-active .proj__shot{border-color:rgba(var(--tint),.55);box-shadow:0 0 calc(26 * var(--m)) -8px rgba(var(--tint),.7)}
.proj.is-active .proj__shot img,.proj__shot:hover img{filter:none}
.proj__shot:hover img{transform:scale(1.035)}
.proj__name{display:block;margin-top:max(calc(var(--mins) * 12px),calc(9 * var(--m)));font-weight:600;font-size:max(calc(var(--mins) * 15px),calc(8 * var(--m)));letter-spacing:-.01em;color:var(--ink);line-height:1.2}
.proj__type{display:block;margin-top:max(calc(var(--mins) * 4px),calc(4 * var(--m)));font-family:var(--f-mono);font-weight:500;font-size:var(--fs-nano);letter-spacing:.18em;text-transform:uppercase;color:var(--red);line-height:1.4}

.slider__more{position:absolute;right:calc(10 * var(--m));top:calc(44 * var(--m));font-family:var(--f-mono);font-weight:500;font-size:var(--fs-nano);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);line-height:1.9;padding-left:calc(13 * var(--m));transition:color .3s}
.slider__more::before{content:"";position:absolute;left:0;top:-10%;bottom:-10%;width:1px;background:var(--line-2)}
.slider__more:hover{color:var(--ink)}
.slider__nav{position:absolute;right:calc(6 * var(--m));bottom:calc(30 * var(--m));display:flex;gap:6px}
.slider__nav .round{--d:max(calc(var(--mins) * 34px),calc(22 * var(--m)))}
.slider__nav .round--prev svg{transform:scaleX(-1)}
.slider__nav .round--prev:hover svg{transform:scaleX(-1) translateX(2px)}

@media (max-width:1023px){
  .works{min-height:0}
  .works__grid{grid-template-columns:minmax(0,1fr);padding:56px 0 52px 24px}
  .works__intro{padding-right:24px}
  .works__intro .txt{font-size:16px;max-width:560px}
  .slider{margin-top:34px;padding-right:0}
  .proj{flex-basis:min(74vw,340px)}
  .proj.is-active{flex-basis:min(78vw,360px)}
  .proj__shot{height:min(48vw,220px)}
  .slider__track{gap:16px}
  .slider__more{position:static;display:inline-block;margin-top:24px}
  .slider__more::before{display:none}
  .slider__nav{position:static;margin-top:20px}
  .works__rock{display:none}
}
