.back-link{position:fixed;top:110px;left:40px;z-index:50;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-hand);font-size:20px;color:var(--ink);text-decoration:none;background:rgba(253,250,245,0.92);padding:7px 16px;border-radius:var(--radius-pill);border:1px dashed rgba(42,38,34,0.25);backdrop-filter:blur(6px);transition:transform .25s,color .25s}.back-link:hover{color:var(--accent);transform:translateX(-3px)}.project-header{padding:160px 40px 60px;text-align:center;position:relative;max-width:900px;margin:0 auto}.project-number{font-family:var(--font-hand);font-size:20px;letter-spacing:.2em;color:var(--ink-mute);margin-bottom:6px}.project-tag{display:inline-block;background:url('/assets/design/bouton-fond.png') center / 100% 100% no-repeat;padding:6px 24px;font-family:var(--font-hand);font-size:20px;color:var(--ink);margin-bottom:18px}.project-header h1{font-family:var(--font-display);font-size:clamp(52px,9vw,110px);line-height:.95;color:var(--ink)}.project-header h1 .small{display:block;font-family:var(--font-hand);font-size:clamp(22px,3vw,34px);font-weight:400;color:var(--ink-soft);margin-top:10px}.project-subtitle{margin-top:16px;font-size:19px;font-style:italic;color:var(--ink-soft)}.project-meta{margin:50px auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:24px;max-width:800px;text-align:left;border-top:1px dashed rgba(42,38,34,0.2);border-bottom:1px dashed rgba(42,38,34,0.2);padding:28px 0}.meta-item .meta-label{display:block;font-family:var(--font-hand);font-size:19px;color:var(--accent);margin-bottom:4px}.meta-item .meta-value{font-family:var(--font-display);font-size:17px;line-height:1.4;color:var(--ink)}.project-main{position:relative;max-width:640px;margin:0 auto;padding:40px}.corner-shape{position:absolute;pointer-events:none}.corner-shape-tl{top:20px;left:20px}.corner-shape-br{bottom:20px;right:20px}.main-figure{border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);background:var(--cream-deep)}.main-figure img{width:100%;height:auto;display:block}.carousel{position:relative;border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);background:var(--cream-deep);outline:none}.carousel:focus-visible{box-shadow:0 0 0 3px var(--accent)}.carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;aspect-ratio:4 / 5}.carousel-track::-webkit-scrollbar{display:none}.carousel-slide{flex:0 0 100%;scroll-snap-align:center;height:100%;display:block;position:relative;background:var(--cream-deep);cursor:zoom-in}.carousel-slide img{width:100%;height:100%;object-fit:cover;display:block}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%;background:rgba(253,250,245,0.92);color:var(--ink);border:1.5px solid rgba(42,38,34,0.2);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;z-index:5;transition:background .2s,color .2s,transform .2s;padding:0}.carousel-btn:hover{background:var(--accent);color:var(--cream);border-color:var(--accent);transform:translateY(-50%) scale(1.05)}.carousel-btn svg{display:block}.carousel-prev{left:0;border-top-left-radius:0;border-bottom-left-radius:0;border-left:0}.carousel-next{right:0;border-top-right-radius:0;border-bottom-right-radius:0;border-right:0}.carousel-dots{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:flex;gap:9px;z-index:5;background:rgba(42,38,34,0.45);padding:7px 12px;border-radius:100px}.carousel-dot{width:9px;height:9px;border-radius:50%;background:rgba(250,242,234,0.55);border:0;cursor:pointer;padding:0;transition:background .2s,transform .2s}.carousel-dot.is-active{background:var(--mustard);transform:scale(1.3)}.carousel-caption{position:absolute;top:16px;left:16px;background:rgba(42,38,34,0.78);color:var(--cream);padding:7px 16px;border-radius:100px;font-family:var(--font-hand);font-size:19px;z-index:5;max-width:calc(100% - 32px);pointer-events:none}@media (max-width:580px){.carousel-btn{width:40px;height:40px}.carousel-caption{font-size:16px;padding:5px 13px;top:10px;left:10px}}.project-story{max-width:1100px;margin:0 auto;padding:80px 40px;display:grid;grid-template-columns:1fr 1fr;gap:80px}.story-block h2{font-family:var(--font-display);font-size:clamp(30px,4vw,46px);line-height:1.05;margin-bottom:20px}.story-block p{font-size:18px;color:var(--ink-soft);margin-bottom:14px;line-height:1.7}.deliverables{background:var(--cream-mid);padding:100px 40px}.deliverables-inner{max-width:1100px;margin:0 auto}.deliverables h2{font-family:var(--font-display);font-size:clamp(38px,6vw,66px);line-height:1;margin-bottom:50px;text-align:center;color:var(--ink)}.deliverables h2 .accent{color:var(--accent)}.deliv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}.deliv-card{background:rgba(250,242,234,0.7);border:1px dashed rgba(42,38,34,0.2);padding:30px 26px;border-radius:var(--radius-card);transition:transform .25s,box-shadow .25s}.deliv-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft)}.deliv-icon{width:56px;height:56px;border-radius:50%;background:var(--pink);display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px}.deliv-card:nth-child(2) .deliv-icon{background:var(--mustard)}.deliv-card:nth-child(3) .deliv-icon{background:var(--sand)}.deliv-card h3{font-family:var(--font-display);font-size:22px;margin-bottom:10px;color:var(--ink)}.deliv-card p{font-size:15px;color:var(--ink-soft);line-height:1.65}.project-context{position:relative;padding:100px 40px;background:var(--cream);overflow:hidden}.context-inner{max-width:900px;margin:0 auto;text-align:center;position:relative;z-index:2}.context-inner h2{font-family:var(--font-display);font-size:clamp(34px,5vw,54px);line-height:1;margin-bottom:40px}.context-inner h2 .accent{color:var(--accent)}.context-figure{position:relative;border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);background:var(--cream-deep)}.context-figure img{width:100%;height:auto;display:block}.context-caption{margin-top:20px;font-family:var(--font-hand);font-size:21px;color:var(--ink-soft)}.context-decoration{position:absolute;pointer-events:none;opacity:.45}.context-deco-1{top:20px;left:6%}.context-deco-2{bottom:30px;right:6%}.project-nav{max-width:1100px;margin:0 auto;padding:60px 40px 80px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.project-nav a{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-family:var(--font-display);font-size:19px;padding:11px 24px;border-radius:var(--radius-pill);border:1.5px solid rgba(42,38,34,0.3);background:transparent;transition:background .2s,color .2s,transform .2s}.project-nav a:hover{background:var(--ink);color:var(--cream);border-color:var(--ink);transform:translateY(-2px)}.project-nav-center a{border:none;font-family:var(--font-hand)}.project-nav-center a:hover{background:transparent;color:var(--accent)}.checker-band{margin:26px auto 0;width:160px;height:12px;background-image:repeating-linear-gradient( -45deg,var(--accent) 0,var(--accent) 7px,var(--cream) 7px,var(--cream) 14px );border:1px solid rgba(42,38,34,0.2);border-radius:4px}.project-gallery{max-width:900px;margin:0 auto;padding:40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;align-items:start}.gallery-item{border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);cursor:zoom-in;transition:transform .3s ease,box-shadow .3s ease}.gallery-item:hover{transform:translateY(-4px);box-shadow:0 8px 32px rgba(42,38,34,0.14)}.gallery-item img{width:100%;height:auto;display:block}@media (max-width:600px){.project-gallery{grid-template-columns:1fr;padding:20px;gap:18px}}.lightbox{display:none;position:fixed;inset:0;z-index:200;background:rgba(42,38,34,0.92);align-items:center;justify-content:center;padding:20px;cursor:zoom-out;animation:fadeIn .2s ease}.lightbox.is-open{display:flex}.lightbox-img{max-width:90vw;max-height:88vh;border-radius:var(--radius-card);box-shadow:0 0 60px rgba(0,0,0,0.4);object-fit:contain;cursor:default}.lightbox-close{position:absolute;top:20px;right:20px;width:42px;height:42px;border-radius:50%;background:var(--cream);color:var(--ink);border:1.5px solid rgba(42,38,34,0.3);font-size:18px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s,color .2s;line-height:1}.lightbox-close:hover{background:var(--accent);color:var(--cream);border-color:var(--accent)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%;background:rgba(250,242,234,0.12);color:var(--cream);border:1.5px solid rgba(250,242,234,0.35);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,transform .2s;z-index:2}.lightbox-nav:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-50%) scale(1.08)}.lightbox-prev{left:24px}.lightbox-next{right:24px}.lightbox-counter{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);font-family:var(--font-hand);font-size:19px;color:rgba(250,242,234,0.65);pointer-events:none}@media (max-width:580px){.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-nav{width:40px;height:40px}}@media (max-width:900px){.back-link{top:90px;left:16px;font-size:17px;padding:6px 12px}.project-header{padding:120px 20px 40px}.project-meta{grid-template-columns:repeat(2,1fr);gap:16px}.project-main{padding:28px 20px}.project-story{grid-template-columns:1fr;gap:48px;padding:60px 20px}.deliverables{padding:60px 20px}.project-context{padding:60px 20px}.project-nav{padding:40px 20px 60px;flex-direction:column}}