:root{
  --ink:#090908; --ink2:#11100f; --paper:#f5efe5; --paper2:#d8cfc3;
  --muted:#a49d94; --line:rgba(255,255,255,.13); --line2:rgba(255,255,255,.08);
  --ember:#ff7a2f; --ember2:#d64b28; --gold:#e8bd79; --max:1240px;
  --serif: Georgia, 'Times New Roman', serif;
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --shadow:0 28px 90px rgba(0,0,0,.42);
}
*{box-sizing:border-box} html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none} img{display:block;max-width:100%} button{font:inherit}
::selection{background:var(--ember);color:#111}
.container{width:min(calc(100% - 44px),var(--max));margin:auto}

/* header */
.header{position:fixed;z-index:80;inset:0 0 auto;height:82px;transition:.28s;background:linear-gradient(to bottom,rgba(7,7,6,.88),rgba(7,7,6,.48),transparent)}
.header.scrolled{background:rgba(9,9,8,.92);border-bottom:1px solid var(--line2);backdrop-filter:blur(18px)}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:grid;line-height:.86;text-transform:uppercase;font-weight:900;letter-spacing:.04em;font-size:1rem;transform:rotate(-2deg)}
.brand b{font-size:1.38rem;letter-spacing:-.02em}.brand small{font-size:.52rem;letter-spacing:.18em;margin-top:6px;color:var(--paper2)}
.navlinks{display:flex;gap:25px;align-items:center;font-size:.88rem;font-weight:700}.navlinks a{opacity:.76;position:relative}.navlinks a:hover{opacity:1}.navlinks a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--ember);transition:.2s}.navlinks a:hover:after{right:0}
.navlinks .pro{border:1px solid rgba(255,255,255,.24);padding:10px 14px;border-radius:999px;opacity:1}.navlinks .pro:after{display:none}
.menu{display:none;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.18);color:white;width:45px;height:45px;border-radius:50%;padding:0;place-content:center;gap:6px}
.menu span{display:block;width:18px;height:1.5px;background:currentColor;transition:.25s;transform-origin:center}
.menu[aria-expanded="true"] span:first-child{transform:translateY(3.75px) rotate(45deg)}
.menu[aria-expanded="true"] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}

/* hero */
.hero{min-height:100svh;position:relative;display:grid;align-items:end;background:#17120f;overflow:hidden}
.hero-media{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:55% center;filter:saturate(.78) contrast(1.05) brightness(.8)}
.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,4,3,.93) 0%,rgba(4,4,3,.63) 36%,rgba(4,4,3,.15) 74%),linear-gradient(0deg,var(--ink) 0%,transparent 32%),radial-gradient(circle at 72% 28%,transparent 0,rgba(0,0,0,.08) 44%,rgba(0,0,0,.6) 100%)}
.hero-content{position:relative;z-index:2;padding:170px 0 95px;max-width:760px}
.kicker{display:flex;align-items:center;gap:12px;text-transform:uppercase;font-size:.73rem;letter-spacing:.25em;font-weight:900;color:#f3c6aa}.kicker:before{content:"";width:44px;height:1px;background:var(--ember)}
.hero h1{font:500 clamp(4rem,8.5vw,8.3rem)/.83 var(--serif);letter-spacing:-.065em;margin:22px 0 20px}.hero h1 span{display:block;font-style:italic;color:#f7d8c4}
.hero .lead{font-size:clamp(1.05rem,1.7vw,1.28rem);max-width:600px;color:#e6dfd7}.hero .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid rgba(255,255,255,.26);padding:13px 18px;border-radius:999px;font-size:.86rem;font-weight:850;letter-spacing:.025em;transition:.2s;cursor:pointer}.btn:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.6)}.btn.primary{background:var(--ember);border-color:var(--ember);color:#16110d}.btn.ghost{background:rgba(0,0,0,.22);backdrop-filter:blur(10px)}
.hero-facts{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.hero-facts span{padding:7px 10px;border-left:1px solid rgba(255,255,255,.35);color:#cfc6bd;font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;font-weight:750}
.hero-note{position:absolute;right:6vw;bottom:68px;z-index:3;font:italic 1.45rem/1.25 var(--serif);transform:rotate(-4deg);color:#f2dfcf;max-width:240px;text-align:right}.hero-note:after{content:"";display:block;width:86px;height:2px;background:var(--paper);margin:16px 0 0 auto;transform:rotate(-10deg)}

/* sections */
.section{padding:110px 0;border-top:1px solid var(--line2);position:relative}.section.alt{background:#0e0d0c}.section.cream{background:#efe7dc;color:#1b1917}
.headline{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.52fr);gap:44px;align-items:end;margin-bottom:46px}.eyebrow{text-transform:uppercase;font-size:.72rem;letter-spacing:.23em;font-weight:900;color:#d1a682;margin-bottom:12px}.headline h2,.display{font:500 clamp(2.8rem,5.6vw,5.6rem)/.93 var(--serif);letter-spacing:-.048em;margin:0}.headline p{color:var(--muted);margin:0 0 5px;font-size:1.04rem}.cream .headline p{color:#655f58}
.rule-title{display:flex;align-items:center;gap:16px}.rule-title:after{content:"";height:1px;background:currentColor;opacity:.22;flex:1}.rule-title small{color:var(--muted);font-size:.72rem;white-space:nowrap}

/* show cards */
.show-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:18px}.show-card{min-height:570px;border-radius:28px;position:relative;overflow:hidden;background:#211a16;border:1px solid var(--line);box-shadow:var(--shadow)}.show-card.small{min-height:570px}.show-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.82)}.show-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,4,3,.96) 3%,rgba(5,4,3,.48) 48%,rgba(5,4,3,.06) 79%)}.show-card-content{position:absolute;z-index:2;left:30px;right:30px;bottom:28px}.show-card h3{font:500 clamp(2.8rem,4vw,4.4rem)/.95 var(--serif);letter-spacing:-.04em;margin:0 0 12px}.show-card p{max-width:560px;color:#ddd4ca;margin:0 0 20px}.tag{display:inline-flex;border:1px solid rgba(255,255,255,.3);padding:7px 10px;border-radius:999px;text-transform:uppercase;font-size:.65rem;letter-spacing:.13em;font-weight:900;margin-bottom:14px;background:rgba(0,0,0,.25);backdrop-filter:blur(6px)}

/* intro */
.editorial{display:grid;grid-template-columns:.88fr 1.12fr;gap:70px;align-items:center}.editorial.reverse{grid-template-columns:1.12fr .88fr}.editorial.reverse .copy{order:2}.editorial.reverse .photo{order:1}.photo{border-radius:28px;overflow:hidden;min-height:620px;background:#1a1714;position:relative}.photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.photo:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.1);border-radius:28px;pointer-events:none}.photo-index{position:absolute;z-index:2;left:18px;bottom:18px;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.35);backdrop-filter:blur(8px);border-radius:999px;padding:7px 10px;font-size:.66rem;letter-spacing:.14em}.copy .display{margin-bottom:24px}.copy p{font-size:1.07rem;color:#cec5bc}.copy .big-quote{font:italic 1.95rem/1.2 var(--serif);color:#f2e5da;margin:32px 0}.cream .copy p{color:#5f5953}.cream .copy .big-quote{color:#241f1b}
.fact-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:34px;border-radius:20px;overflow:hidden}.fact{padding:20px;background:#151412}.fact b{font:500 1.55rem var(--serif);display:block}.fact span{color:var(--muted);font-size:.78rem}

/* vivi feature */
.vivi-section:before{content:"";position:absolute;width:52vw;height:52vw;border-radius:50%;right:-26vw;top:-16vw;background:radial-gradient(circle,rgba(255,122,47,.13),transparent 66%);pointer-events:none}.vivi-mark{max-width:155px;max-height:90px;object-fit:contain;object-position:left center;filter:drop-shadow(0 8px 20px rgba(0,0,0,.3));margin-bottom:18px}.feature-stage{position:relative;border-radius:34px;overflow:hidden;min-height:76vh;background:#17120e}.feature-stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.feature-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,5,4,.94),rgba(6,5,4,.55) 52%,rgba(6,5,4,.1)),linear-gradient(0deg,rgba(6,5,4,.78),transparent 45%)}.feature-copy{position:relative;z-index:2;width:min(660px,84%);padding:64px}.feature-copy h2{font:500 clamp(3.8rem,7vw,7.2rem)/.86 var(--serif);letter-spacing:-.055em;margin:0 0 18px}.feature-copy p{color:#ddd3c8;font-size:1.05rem}.feature-copy .story{font:italic 1.55rem/1.28 var(--serif);color:#fff1e2;margin:24px 0}.vivi-facts{display:flex;gap:0;flex-wrap:wrap;margin:25px 0 5px;border-block:1px solid rgba(255,255,255,.16)}.vivi-facts span{padding:12px 17px 12px 0;margin-right:17px;color:#c5bbb1;font-size:.75rem}.vivi-facts b{display:block;color:#fff;font:500 1.15rem var(--serif)}

/* duo */
.duo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.artist-card{border-radius:26px;overflow:hidden;background:#181614;border:1px solid var(--line)}.artist-photo{aspect-ratio:4/3;position:relative;background:#211f1b}.artist-photo img{width:100%;height:100%;object-fit:cover}.artist-body{padding:28px}.artist-body h3{font:500 2.7rem/1 var(--serif);margin:0 0 10px}.artist-body p{color:#c9c0b7}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.chip{font-size:.73rem;border:1px solid var(--line);border-radius:999px;padding:7px 10px;color:#d8c9be}

/* gallery */
.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:96px;gap:10px}.gallery button{padding:0;border:0;border-radius:17px;overflow:hidden;background:#1b1815;cursor:zoom-in;position:relative}.gallery img{width:100%;height:100%;object-fit:cover;transition:.4s}.gallery button:hover img{transform:scale(1.035)}.gallery button:after{content:"+";position:absolute;right:10px;bottom:8px;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.55);color:#fff;opacity:0;transition:.2s}.gallery button:hover:after{opacity:1}.gallery button:nth-child(9n+1){grid-column:span 6;grid-row:span 5}.gallery button:nth-child(9n+2){grid-column:span 3;grid-row:span 3}.gallery button:nth-child(9n+3){grid-column:span 3;grid-row:span 3}.gallery button:nth-child(9n+4){grid-column:span 3;grid-row:span 2}.gallery button:nth-child(9n+5){grid-column:span 3;grid-row:span 2}.gallery button:nth-child(9n+6){grid-column:span 4;grid-row:span 4}.gallery button:nth-child(9n+7){grid-column:span 4;grid-row:span 4}.gallery button:nth-child(9n+8){grid-column:span 4;grid-row:span 4}.gallery button:nth-child(9n){grid-column:span 12;grid-row:span 4}
.archive{margin-top:24px}.archive summary{cursor:pointer;list-style:none;border:1px solid var(--line);border-radius:999px;padding:12px 18px;width:max-content;font-weight:800}.archive summary::-webkit-details-marker{display:none}.archive[open] summary{margin-bottom:28px}.archive .gallery{margin-top:10px}

/* videos */
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.video{background:#151311;border:1px solid var(--line);border-radius:24px;overflow:hidden}.video-frame{aspect-ratio:16/9;background:#000}.video-frame iframe{width:100%;height:100%;border:0}.video-body{padding:18px 20px 22px}.video h3{font:500 1.55rem var(--serif);margin:0}.video small{color:var(--muted)}

/* magicians */
.magicians{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}.poster-video{border-radius:28px;overflow:hidden;background:#000;border:1px solid var(--line);box-shadow:var(--shadow);aspect-ratio:16/10}.poster-video iframe{width:100%;height:100%;border:0}.roles{display:grid;gap:10px;margin-top:26px}.role{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;border-top:1px solid var(--line);padding-top:14px}.role strong{font-family:var(--serif);font-size:1.18rem;color:#f0d5bf}.role span{color:#c8beb4}

/* media */
.album-card{display:grid;grid-template-columns:.68fr 1.32fr;gap:40px;align-items:center;background:#171412;border:1px solid var(--line);border-radius:28px;padding:24px;margin-top:52px}.album-cover{aspect-ratio:1;border-radius:20px;background:radial-gradient(circle at 30% 20%,#f29255,transparent 24%),radial-gradient(circle at 75% 76%,#173f46,transparent 34%),linear-gradient(145deg,#332019,#0c0b0b);display:grid;place-items:center;position:relative;overflow:hidden}.album-cover img{width:64%;height:44%;object-fit:contain;filter:invert(1) drop-shadow(0 12px 30px rgba(0,0,0,.3));mix-blend-mode:screen}.album-cover span{position:absolute;bottom:24px;text-transform:uppercase;letter-spacing:.2em;font-size:.63rem}.album-card h3{font:500 3rem/1 var(--serif);margin:0 0 12px}.album-card p{color:#c7beb6}

/* pro */
.pro-wrap{border-radius:34px;overflow:hidden;position:relative;background:#22150e;min-height:540px;display:grid;align-items:end}.pro-wrap>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.65)}.pro-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,7,5,.95),rgba(10,7,5,.62),rgba(10,7,5,.22)),linear-gradient(0deg,rgba(10,7,5,.72),transparent)}.pro-content{position:relative;z-index:2;padding:56px;max-width:780px}.pro-content h2{font:500 clamp(3.3rem,6vw,6.3rem)/.9 var(--serif);letter-spacing:-.05em;margin:0 0 18px}.pro-content p{color:#dfd4ca;max-width:640px}.pro-points{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 6px}.pro-points span{border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.25);border-radius:999px;padding:8px 11px;font-size:.75rem;color:#e9dfd5;backdrop-filter:blur(8px)}.contact-line{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.contact-pill{border:1px solid rgba(255,255,255,.26);border-radius:999px;padding:10px 14px;background:rgba(0,0,0,.28);backdrop-filter:blur(8px)}

.footer{padding:42px 0 56px;border-top:1px solid var(--line2);color:#9f968e}.footer-row{display:flex;justify-content:space-between;align-items:flex-end;gap:28px}.footer .brand{color:#eee7df}.footer small{display:block;margin-top:10px;max-width:530px}

/* lightbox / reveal */
.lightbox{position:fixed;z-index:120;inset:0;background:rgba(0,0,0,.94);display:none;place-items:center;padding:28px}.lightbox.open{display:grid}.lightbox img{max-width:94vw;max-height:90vh;object-fit:contain}.lightbox .close{position:absolute;right:22px;top:15px;background:none;color:#fff;border:0;font-size:2.4rem;cursor:pointer}
.reveal{opacity:0;transform:translateY(18px);transition:.65s cubic-bezier(.2,.75,.2,1)}.reveal.visible{opacity:1;transform:none}

/* responsiveness */
@media(max-width:900px){
  .container{width:min(calc(100% - 28px),var(--max))}.menu{display:grid}.navlinks{position:fixed;inset:82px 0 auto;background:rgba(9,9,8,.97);backdrop-filter:blur(14px);display:none;flex-direction:column;align-items:stretch;padding:20px 24px 26px;border-bottom:1px solid var(--line)}.navlinks.open{display:flex}.navlinks a{padding:10px 2px}.navlinks a:after{display:none}.navlinks .pro{text-align:center;margin-top:4px}
  .hero{min-height:91svh}.hero-media img{object-position:62% center}.hero-media:after{background:linear-gradient(0deg,rgba(6,5,4,.96) 0,rgba(6,5,4,.66) 54%,rgba(6,5,4,.16)),linear-gradient(90deg,rgba(6,5,4,.55),transparent)}.hero-content{padding:145px 0 52px}.hero h1{font-size:clamp(3.8rem,17vw,6.4rem)}.hero-note{display:none}.hero-facts{margin-top:18px}
  .section{padding:76px 0}.headline{grid-template-columns:1fr;gap:18px;margin-bottom:34px}.show-grid,.editorial,.editorial.reverse,.duo-grid,.video-grid,.magicians,.album-card{grid-template-columns:1fr}.show-card,.show-card.small{min-height:520px}.editorial.reverse .copy,.editorial.reverse .photo{order:initial}.editorial{gap:32px}.photo{min-height:470px}.fact-row{grid-template-columns:1fr}.feature-stage{min-height:810px}.feature-stage:after{background:linear-gradient(0deg,rgba(6,5,4,.97) 0,rgba(6,5,4,.76) 55%,rgba(6,5,4,.18))}.feature-copy{padding:430px 24px 34px;width:100%}.feature-copy h2{font-size:4.5rem}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}.gallery button,.gallery button:nth-child(n){grid-column:span 1;grid-row:span 1}.gallery button:nth-child(5n+1){grid-column:span 2;grid-row:span 2}.pro-wrap{min-height:680px}.pro-content{padding:34px 24px}.footer-row{display:block}.footer-row>div+div{margin-top:22px}.album-card{padding:18px}.album-cover{max-width:480px;width:100%;margin:auto}.rule-title{align-items:flex-start;flex-wrap:wrap}.rule-title small{order:3;width:100%}.rule-title:after{margin-top:17px}
}
@media(max-width:520px){.hero .actions,.contact-line{display:grid;grid-template-columns:1fr}.btn{width:100%}.show-card,.show-card.small{min-height:470px}.feature-stage{min-height:790px}.artist-body{padding:22px}.gallery{grid-auto-rows:135px}.pro-content h2{font-size:3.7rem}.vivi-facts{display:grid;grid-template-columns:repeat(3,1fr)}.vivi-facts span{padding:11px 8px 11px 0;margin:0;font-size:.67rem}.hero-facts span{font-size:.66rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

/* Direction artistique — carton de scène */
:root{
  --ink:#201008;
  --ink2:#2b160d;
  --paper:#fae8c7;
  --paper2:#e8c18b;
  --muted:#8b654a;
  --line:rgba(68,31,15,.24);
  --line2:rgba(255,235,205,.12);
  --ember:#9f2d21;
  --ember2:#6f1d18;
  --gold:#efaf58;
  --cardboard:#d98532;
  --cardboard-light:#efb767;
  --cardboard-dark:#6e3418;
  --texture:url("../images/cardboard-texture.webp");
  --shadow:0 28px 70px rgba(40,16,5,.34);
}

body{background:#21110b;color:var(--paper)}
.header{background:linear-gradient(to bottom,rgba(38,13,10,.96),rgba(38,13,10,.7),transparent)}
.header.scrolled{background:rgba(43,18,12,.94);border-color:rgba(244,199,139,.18)}
.brand small{color:#d8ad78}
.navlinks .pro{border-radius:4px 12px 4px 4px;border-color:rgba(239,183,103,.52);background:rgba(159,45,33,.22)}
.navlinks a:after{background:#e79a45}
.menu{border-radius:4px 12px 4px 4px;border-color:rgba(239,183,103,.48)}

.hero{align-items:center;background:#201008}
.hero-media img{filter:saturate(.88) contrast(1.03) brightness(.68)}
.hero-media:after{background:linear-gradient(90deg,rgba(32,14,7,.76),rgba(32,14,7,.22) 65%,rgba(32,14,7,.18)),linear-gradient(0deg,#21110b 0,transparent 30%),radial-gradient(circle at 72% 35%,transparent 0,rgba(25,7,4,.42) 100%)}
.hero-content{max-width:none;padding:132px 0 70px}
.hero-card{position:relative;width:min(660px,100%);padding:46px 48px 40px;color:#271207;background-color:#db8733;background-image:linear-gradient(120deg,rgba(255,226,171,.16),rgba(115,49,14,.06)),var(--texture);background-size:auto,820px;background-position:center;border:1px solid rgba(90,39,13,.48);border-radius:5px 26px 7px 4px;box-shadow:0 34px 90px rgba(17,5,2,.5),inset 0 0 0 1px rgba(255,231,186,.22);clip-path:polygon(.5% 1%,99% 0,100% 97.5%,97% 100%,1% 99%)}
.hero-card:before{content:"VV / VIVI";position:absolute;right:22px;top:19px;padding:6px 9px;border:2px solid rgba(111,29,24,.58);color:#711f18;font-size:.62rem;font-weight:900;letter-spacing:.16em;transform:rotate(3deg)}
.hero .kicker{color:#642015}.hero .kicker:before{background:#8d261d}
.hero h1{color:#1d0d07;text-shadow:none;font-size:clamp(3.8rem,7vw,7rem);margin-top:18px}
.hero h1 span{color:#762119}
.hero .lead{color:#3c2114;max-width:560px}
.hero-card .btn.primary{background:#8f281f;border-color:#762119;color:#fff0d6}
.hero-card .btn.ghost{background:rgba(255,232,190,.24);border-color:rgba(61,27,11,.5);color:#30160b;backdrop-filter:none}
.hero-facts span{color:#4f2b19;border-color:rgba(69,31,13,.42)}
.hero-note{color:#f7d9aa;text-shadow:0 3px 20px #1a0804}

.btn{border-radius:4px 14px 4px 4px;letter-spacing:.015em}
.btn.primary{background:#9a2c21;border-color:#7e241b;color:#fff0d9}
.tag,.chip,.contact-pill,.archive summary{border-radius:4px 12px 4px 4px}

#spectacles,#vivi,#medias{
  color:#2c150a;
  background-color:#dc8b39;
  background-image:linear-gradient(rgba(255,224,168,.13),rgba(104,42,10,.04)),var(--texture);
  background-size:auto,920px;
  background-repeat:no-repeat,repeat;
  border-color:rgba(77,33,12,.28)
}
#spectacles .headline p,#medias .headline p{color:#684127}
#spectacles .eyebrow,#vivi .eyebrow,#medias .eyebrow{color:#74231b}
#spectacles .headline h2,#medias .headline h2{color:#281208}

.show-card{border:10px solid #a9571e;border-radius:5px 24px 6px 4px;box-shadow:0 24px 55px rgba(73,29,8,.38)}
.show-card:nth-child(2){border-color:#c06c25;transform:rotate(.35deg)}
.show-card-content{left:25px;right:25px;bottom:23px}
.show-card .tag{background:rgba(209,119,43,.8);border-color:rgba(255,226,179,.46);color:#fff5e5}

#compagnie{background-color:#2b140b;background-image:linear-gradient(rgba(37,16,9,.9),rgba(37,16,9,.94)),var(--texture);background-size:auto,840px}
#compagnie .editorial{gap:38px}
#compagnie .copy{position:relative;padding:42px 44px;color:#2a1409;background-color:#e2a04d;background-image:linear-gradient(rgba(255,231,185,.14),rgba(109,45,12,.05)),var(--texture);background-size:auto,760px;border:1px solid rgba(102,44,14,.5);border-radius:4px 20px 5px 4px;box-shadow:var(--shadow);transform:rotate(.3deg)}
#compagnie .copy p{color:#4d2a18}
#compagnie .copy .big-quote{color:#762219}
#compagnie .eyebrow{color:#7e241b}
.photo{border:11px solid #a95a22;border-radius:5px 22px 6px 4px;box-shadow:var(--shadow)}
.photo:after{border-radius:2px;border-color:rgba(255,224,177,.26)}
.photo-index{border-radius:3px 10px 3px 3px;background:#a2471d;border-color:#e9ab61;color:#fff2db}
#compagnie .fact-row{background:rgba(83,35,13,.2);border-color:rgba(83,35,13,.25)}
#compagnie .fact{background:rgba(255,227,180,.2)}
#compagnie .fact span{color:#6c4329}

.vivi-section:before{opacity:.38}
.feature-stage{border:12px solid #a7551d;border-radius:5px 26px 6px 4px;box-shadow:0 30px 70px rgba(73,28,7,.38)}
.feature-stage:after{background:linear-gradient(90deg,rgba(30,12,5,.38),rgba(30,12,5,.1) 56%,rgba(30,12,5,.03)),linear-gradient(0deg,rgba(28,11,5,.54),transparent 45%)}
.feature-copy{margin:46px;padding:42px 44px;width:min(610px,78%);color:#2b150a;background-color:#df9442;background-image:linear-gradient(rgba(255,230,180,.14),rgba(108,43,11,.05)),var(--texture);background-size:auto,760px;border:1px solid rgba(85,34,10,.48);border-radius:4px 20px 5px 4px;box-shadow:0 26px 65px rgba(31,10,3,.44)}
.feature-copy h2{color:#281108}
.feature-copy p,.feature-copy .story{color:#472717}
.feature-copy .story{border-left:3px solid #8e281e;padding-left:17px}
.vivi-facts{border-color:rgba(75,31,11,.3)}
.vivi-facts span{color:#684127}.vivi-facts b{color:#2b1409}
.feature-copy .btn.ghost{color:#35190d;border-color:rgba(69,28,9,.48);background:rgba(255,232,193,.22);backdrop-filter:none}

#artistes{background-color:#efc17e;background-image:linear-gradient(rgba(255,240,208,.58),rgba(255,229,183,.52)),var(--texture);background-size:auto,980px;color:#2b160d}
#artistes .headline p{color:#6c4730}
#artistes .eyebrow{color:#80261d}
.artist-card{color:#2c160c;background-color:#df9948;background-image:linear-gradient(rgba(255,232,190,.14),rgba(100,40,10,.04)),var(--texture);background-size:auto,760px;border:8px solid #b96624;border-radius:5px 20px 6px 4px;box-shadow:0 24px 55px rgba(83,35,11,.25)}
.artist-card:nth-child(2){transform:rotate(-.25deg);border-color:#c6762f}
.artist-body p{color:#58351f}.artist-body .chip{color:#552e1a;border-color:rgba(77,34,14,.34);background:rgba(255,230,187,.2)}
.artist-body .btn{color:#3b1d0f;border-color:rgba(68,29,11,.45)}

#magiciens{background-color:#2b140b;background-image:linear-gradient(rgba(35,14,8,.91),rgba(35,14,8,.94)),var(--texture);background-size:auto,880px}
#magiciens .copy p{color:#d9b98e}
#magiciens .eyebrow{color:#e49b4c}
#magiciens .role{border-color:rgba(231,165,91,.24)}
#magiciens .role strong{color:#f0b869}
#magiciens .role span{color:#d2b48f}
.poster-video{border:10px solid #a45620;border-radius:5px 22px 6px 4px;box-shadow:var(--shadow)}

#medias .video{background:#3a1b0f;border:9px solid #ae5d22;border-radius:5px 18px 6px 4px;box-shadow:0 22px 52px rgba(71,27,7,.3)}
#medias .video-body{color:#fae8c7}
#medias .video small{color:#d5ae7d}
#medias .rule-title{color:#30160b}
#medias .rule-title small{color:#6f452a}
.gallery button{border:7px solid #9f511d;border-radius:4px 14px 5px 3px;box-shadow:0 10px 24px rgba(80,31,8,.24)}
.gallery button:nth-child(3n+2){border-color:#bd6a27}
.archive summary{color:#32170c;border-color:rgba(71,29,10,.46);background:rgba(255,225,178,.2)}
.album-card{background-color:#4a2111;background-image:linear-gradient(rgba(49,19,9,.78),rgba(49,19,9,.82)),var(--texture);background-size:auto,780px;border:9px solid #a75820;border-radius:5px 22px 6px 4px;color:#fae7c8}
.album-card p{color:#dbbd96}
.album-card .eyebrow{color:#efae5a}
.album-cover{border-radius:3px 15px 4px 3px;border:1px solid rgba(255,220,168,.25)}

#pro{background:#25120b}
.pro-wrap{border:11px solid #a65721;border-radius:5px 24px 6px 4px;box-shadow:var(--shadow)}
.pro-wrap:after{background:linear-gradient(90deg,rgba(43,17,7,.96),rgba(43,17,7,.64),rgba(43,17,7,.22)),linear-gradient(0deg,rgba(43,17,7,.72),transparent)}
.pro-points span,.contact-pill{border-radius:4px 12px 4px 4px;border-color:rgba(235,177,104,.38);background:rgba(111,45,20,.48)}

.footer{color:#d6b187;background-color:#32170d;background-image:linear-gradient(rgba(42,17,9,.88),rgba(42,17,9,.92)),var(--texture);background-size:auto,820px;border-color:rgba(235,177,104,.18)}
.footer .brand{color:#f7dec0}

@media(max-width:900px){
  .navlinks{background-color:#32150e;background-image:linear-gradient(rgba(47,18,11,.9),rgba(47,18,11,.94)),var(--texture);background-size:auto,700px}
  .hero{align-items:end;min-height:96svh}
  .hero-media img{object-position:66% center}
  .hero-content{padding:118px 0 28px}
  .hero-card{padding:34px 26px 28px;width:100%;border-radius:4px 18px 5px 3px}
  .hero-card:before{top:14px;right:15px;font-size:.55rem}
  .hero h1{font-size:clamp(3.5rem,15.5vw,5.7rem);margin-top:14px}
  .hero .lead{font-size:1rem}
  #compagnie .copy{padding:30px 25px;transform:none}
  .photo{border-width:8px}
  .feature-stage{min-height:0;border-width:8px}
  .feature-stage>img{height:390px;position:absolute;object-position:64% center}
  .feature-copy{margin:330px 12px 12px;padding:30px 24px 27px;width:calc(100% - 24px)}
  .feature-copy h2{font-size:4.3rem}
  .show-card,.artist-card,#medias .video,.poster-video,.album-card,.pro-wrap{border-width:8px}
  .artist-card:nth-child(2),.show-card:nth-child(2){transform:none}
}

@media(max-width:520px){
  .hero-card{padding:31px 20px 23px}
  .hero-card:before{display:none}
  .hero-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
  .hero-facts span{padding:7px 6px;font-size:.61rem}
  .feature-stage>img{height:330px;object-position:62% center}
  .feature-copy{margin-top:278px;padding:26px 20px 23px}
  .feature-copy h2{font-size:3.9rem}
  .vivi-mark{max-width:125px;max-height:68px}
  .vivi-facts b{font-size:1rem}
}

/* Valises en carton — contraste, relief et navigation flottante */
html{scroll-padding-top:82px;width:100%;max-width:100%;overflow-x:clip}
body{width:100%;max-width:100%;overflow-x:hidden;overflow-x:clip;overscroll-behavior-x:none;touch-action:pan-y pinch-zoom}
main,.hero,.section,.footer{width:100%;max-width:100%}
.container{width:calc(100% - 44px);max-width:var(--max)}
.show-grid>*,.editorial>*,.duo-grid>*,.video-grid>*,.magicians>*,.album-card>*{min-width:0}

.header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  width:100%;
  max-width:100%;
  height:94px;
  transform:translate3d(0,0,0);
  will-change:height,top,width,transform;
  background:linear-gradient(to bottom,rgba(28,10,7,.98),rgba(35,13,8,.72) 58%,transparent);
  transition:height .28s ease,top .28s ease,width .28s ease,background .28s ease,box-shadow .28s ease,border-radius .28s ease;
}
.header .nav{height:94px;transition:height .28s ease,padding .28s ease}
.header.scrolled{
  position:fixed;
  top:12px;
  left:50%;
  right:auto;
  width:min(calc(100% - 30px),1040px);
  height:62px;
  transform:translate3d(-50%,0,0);
  color:#fff2dc;
  background-color:#3b170f;
  background-image:linear-gradient(rgba(43,15,10,.92),rgba(43,15,10,.95)),var(--texture);
  background-size:auto,700px;
  border:1px solid rgba(244,191,118,.42);
  border-bottom-color:#7f321d;
  border-radius:5px 18px 5px 5px;
  box-shadow:0 6px 0 rgba(91,32,18,.95),0 17px 34px rgba(11,3,1,.44),inset 0 1px rgba(255,225,179,.14);
  backdrop-filter:blur(15px);
}
.header.scrolled .nav{width:100%;height:62px;padding:0 16px}
.header.scrolled .brand{font-size:.82rem}
.header.scrolled .brand b{font-size:1.08rem}
.header.scrolled .brand small{display:none}
.navlinks a{opacity:.88;text-shadow:0 1px 6px rgba(0,0,0,.5)}
.navlinks a:hover,.navlinks a:focus-visible{opacity:1;color:#ffd89d}
.menu{display:none!important}

.hero-card,
#compagnie .copy,
.feature-copy,
.artist-card{
  color:#130704;
  background-color:#d69a53;
  background-image:
    linear-gradient(90deg,rgba(74,25,10,.22),transparent 8%,rgba(255,235,190,.15) 42%,transparent 78%,rgba(74,25,10,.12)),
    linear-gradient(rgba(255,232,183,.56),rgba(219,151,77,.34)),
    var(--texture);
  background-size:auto,auto,760px;
  border-top:11px solid #87351f;
  border-right:4px solid #612414;
  border-bottom:11px solid #6d2918;
  border-left:4px solid #77301b;
  box-shadow:
    0 7px 0 #4e1b0f,
    0 18px 0 -6px rgba(106,41,20,.88),
    0 34px 58px rgba(31,9,3,.48),
    inset 14px 0 20px rgba(82,31,12,.16),
    inset -7px 0 12px rgba(255,232,183,.13),
    inset 0 2px rgba(255,239,203,.35);
}
.hero-card{color:#100503;clip-path:none}
.hero .kicker{color:#4a160f}
.hero h1{color:#100503}
.hero h1 span{color:#671b15}
.hero .lead{color:#1d0b06;font-weight:560}
.hero-facts span{color:#251006;font-weight:850;border-color:rgba(45,16,7,.5)}
.hero-card .btn.ghost{color:#160804;border-color:rgba(35,12,5,.65);background:rgba(255,236,202,.38)}

#spectacles .headline p,
#medias .headline p,
#artistes .headline p,
#compagnie .copy p,
.feature-copy p,
.feature-copy .story,
.artist-body p{
  color:#1b0905;
  font-weight:540;
}
#spectacles .headline h2,#medias .headline h2,.feature-copy h2,.artist-body h3{color:#120603}
#compagnie .copy .big-quote,.feature-copy .story{color:#5f1712}
#compagnie .fact span,.vivi-facts span{color:#35150b;font-weight:700}
.vivi-facts b{color:#110503}
.artist-body .chip,.artist-body .btn{color:#210c06;border-color:rgba(48,17,7,.55);font-weight:750}

.show-card,
.photo,
.feature-stage,
#medias .video,
.poster-video,
.album-card,
.pro-wrap{
  border-top-color:#ad5d2a;
  border-right-color:#6c2a17;
  border-bottom-color:#762d19;
  border-left-color:#91401e;
  box-shadow:0 8px 0 #501b0f,0 20px 0 -7px rgba(106,40,20,.9),0 35px 58px rgba(35,10,3,.4),inset 7px 0 10px rgba(31,9,3,.16);
}
.show-card:nth-child(2),.artist-card:nth-child(2){border-top-color:#b9652d;border-right-color:#702a17;border-bottom-color:#7c301a;border-left-color:#9c4822}
.show-card:nth-child(2),#compagnie .copy,.artist-card:nth-child(2){transform:none}

@media(max-width:900px){
  html{scroll-padding-top:68px}
  .container{width:calc(100% - 28px)}
  .header{height:112px}
  .header .nav{height:112px;display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;align-content:center;justify-items:center;gap:11px;padding-block:10px}
  .brand{text-align:center;justify-items:center;font-size:.76rem}
  .brand b{font-size:1.02rem}
  .brand small{margin-top:4px;font-size:.46rem}
  .navlinks,.navlinks.open{
    position:static;
    inset:auto;
    display:flex;
    width:100%;
    flex-direction:row;
    justify-content:center;
    align-items:center;
    gap:clamp(8px,3.5vw,22px);
    padding:0;
    border:0;
    background:none;
    backdrop-filter:none;
    font-size:.72rem;
    white-space:nowrap;
  }
  .navlinks a{padding:4px 0}
  .navlinks .pro{padding:4px 0;margin:0;border:0;background:none;text-align:initial}
  .header.scrolled{top:8px;width:calc(100% - 18px);height:54px}
  .header.scrolled .nav{display:flex;height:54px;padding:0 11px}
  .header.scrolled .brand{display:none}
  .header.scrolled .navlinks{justify-content:space-around;gap:4px;font-size:clamp(.64rem,2.85vw,.75rem)}
  .hero-content{padding-top:132px}
  .hero-card,#compagnie .copy,.feature-copy,.artist-card{border-top-width:9px;border-bottom-width:9px}
}

@media(max-width:380px){
  .navlinks,.header.scrolled .navlinks{font-size:.61rem;letter-spacing:-.01em}
}

/* Diaporama récent et lecteur Bandcamp */
.photo-slider{margin-top:22px;border:10px solid #a95722;border-color:#ad5d2a #6c2a17 #762d19 #91401e;border-radius:5px 24px 6px 4px;background:#35160d;box-shadow:0 8px 0 #501b0f,0 20px 0 -7px rgba(106,40,20,.9),0 35px 58px rgba(35,10,3,.4);overflow:hidden}
.slider-viewport{position:relative;aspect-ratio:16/9;min-height:360px;max-height:680px;background:#160a06;overflow:hidden;touch-action:pan-y}
.slider-slide{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:#160a06;cursor:zoom-in;opacity:0;visibility:hidden;transition:opacity .6s ease;overflow:hidden}
.slider-slide.active{opacity:1;visibility:visible;z-index:2}
.slider-backdrop{position:absolute;inset:-28px;width:calc(100% + 56px);height:calc(100% + 56px);object-fit:cover;filter:blur(24px) brightness(.48) saturate(.72);transform:scale(1.05)}
.slider-image{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 28px rgba(0,0,0,.52))}
.slider-toolbar{min-height:62px;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:16px;padding:10px 14px;background-color:#d69a53;background-image:linear-gradient(rgba(255,232,183,.5),rgba(204,127,55,.3)),var(--texture);background-size:auto,760px;color:#160804;border-top:7px solid #87351f}
.slider-arrow{width:42px;height:38px;border:1px solid rgba(55,19,8,.55);border-radius:4px 12px 4px 4px;background:#7f2a1d;color:#fff0d8;font-size:1.2rem;font-weight:900;cursor:pointer}
.slider-arrow:hover,.slider-arrow:focus-visible{background:#a33b27;transform:translateY(-1px)}
.slider-dots{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0}
.slider-dot{width:9px;height:9px;padding:0;border:1px solid #572012;border-radius:50%;background:rgba(81,30,13,.2);cursor:pointer;transition:.2s}
.slider-dot.active{width:24px;border-radius:8px;background:#7d281c}
.slider-counter{min-width:48px;font-size:.75rem;font-weight:900;text-align:center}

.album-card{grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:32px;align-items:center;padding:30px}
.album-intro{padding:10px 8px}
.album-intro h3{font-size:clamp(2.5rem,4.5vw,4.3rem);margin-bottom:16px}
.album-intro p{font-size:1rem}
.bandcamp-player{border:6px solid #6e2a17;border-top-color:#a75a29;border-radius:4px 16px 5px 4px;background:#f6e4c3;overflow:hidden;box-shadow:0 8px 0 #371208,0 20px 34px rgba(12,3,1,.32)}
.bandcamp-player iframe{display:block;width:100%;height:472px;border:0;background:#f6e4c3}

@media(max-width:900px){
  .slider-viewport{aspect-ratio:4/3;min-height:0}
  .slider-toolbar{grid-template-columns:auto 1fr auto;gap:10px;padding:9px 10px}
  .slider-counter{grid-column:2;grid-row:1;font-size:.7rem;pointer-events:none}
  .slider-dots{display:none}
  .slider-prev{grid-column:1}.slider-next{grid-column:3}
  .album-card{grid-template-columns:1fr;padding:22px;gap:24px}
  .album-intro{padding:4px 2px}
}

@media(prefers-reduced-motion:reduce){.slider-slide{transition:none}}

@media(max-width:520px){
  .photo-slider{border-width:8px}
  .slider-viewport{aspect-ratio:1/1}
  .slider-toolbar{min-height:56px}
  .bandcamp-player iframe{height:472px}
}
