/* index.css — dual theme homepage
   ─────────────────────────────── */

/* ── LIGHT (default) ── */
:root{
  --blue:#2558ff;
  --accent:#2558ff;
  --accent-bg:rgba(37,88,255,.08);
  --bg:#f7f6f3;
  --surface:rgba(0,0,0,.03);
  --text:#0c0c0b;
  --muted:rgba(12,12,11,.44);
  --border:rgba(12,12,11,.08);
  --border-2:rgba(12,12,11,.14);
  --nav-bg:rgba(247,246,243,.9);
  --logo-filter:invert(0);
}
/* ── DARK override ── */
[data-theme="dark"]{
  --bg:#080808;
  --surface:rgba(255,255,255,.03);
  --text:#eeecea;
  --muted:rgba(238,236,234,.38);
  --border:rgba(238,236,234,.07);
  --border-2:rgba(238,236,234,.13);
  --nav-bg:rgba(8,8,8,.88);
  --logo-filter:invert(1);
}

body{font-family:'PPMori','DM Sans',-apple-system,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background .3s ease,color .3s ease;}

/* NAV — frosted dark strip au top (sur vidéo), themed glass scrollé */
nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  padding:1rem clamp(1.5rem,4vw,3.5rem);
  transition:background .35s ease, border-color .35s ease, backdrop-filter .35s ease;
}
/* Transparent sur le hero, fond au scroll */
nav:not(.nav-scrolled){
  background:transparent;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  border-bottom:1px solid transparent;
  mix-blend-mode:difference;
}
nav:not(.nav-scrolled) .nav-logo,
nav:not(.nav-scrolled) .nav-logo svg { color:#fff !important; }
nav:not(.nav-scrolled) .nav-links a { color:#fff; }
nav:not(.nav-scrolled) .nav-links a::after { background:#fff; }
nav:not(.nav-scrolled) .nav-links a:hover,
nav:not(.nav-scrolled) .nav-links a.active { color:#fff; }
nav:not(.nav-scrolled) .ts-track { background:rgba(238,236,234,.12); border-color:rgba(238,236,234,.3); }
nav:not(.nav-scrolled) .theme-switch:hover .ts-track { border-color:rgba(238,236,234,.55); }
[data-theme="dark"] nav:not(.nav-scrolled) .ts-track { background:rgba(37,88,255,.3); border-color:rgba(37,88,255,.55); }
nav:not(.nav-scrolled) .ts-thumb { background:#eeecea; color:#333; }
nav:not(.nav-scrolled) .burger span           { background:#eeecea; }
nav:not(.nav-scrolled) .lang-pill             { border-color:rgba(238,236,234,.22); }
nav:not(.nav-scrolled) .lang-pill-track       { background:#eeecea; }
nav:not(.nav-scrolled) .lang-pill-btn         { color:rgba(238,236,234,.45); }
nav:not(.nav-scrolled) .lang-pill-btn[aria-pressed="true"] { color:#1a1a1a; }

/* Une fois scrollé : fond frosted glass adapté au thème courant */
nav.nav-scrolled{
  background:var(--nav-bg, rgba(247,246,243,.92));
  backdrop-filter:blur(28px);
  -webkit-backdrop-filter:blur(28px);
  border-bottom:1px solid var(--border);
}
nav.nav-scrolled .nav-logo { display:flex; align-items:center; color:var(--text); }
nav.nav-scrolled .nav-links a { color:var(--muted); }
nav.nav-scrolled .nav-links a:hover,
nav.nav-scrolled .nav-links a.active { color:var(--text); }
nav.nav-scrolled .ts-track { border-color:var(--border); }
nav.nav-scrolled .theme-switch:hover .ts-track { border-color:var(--border-2); }
nav.nav-scrolled .burger span { background:var(--text); }

/* shared nav structure */
.nav-logo .logo-svg{width:44px;height:44px;display:block;}
.nav-links{display:flex;justify-content:center;align-items:center;gap:0;list-style:none;}
.nav-links a{
  display:block;padding:.65rem 1.1rem;
  font-size:.78rem;letter-spacing:.04em;
  transition:color .2s;position:relative;
}
.nav-links a::after{
  content:'';position:absolute;bottom:.3rem;left:1.1rem;right:1.1rem;
  width:auto!important;height:1px;
  transform:scaleX(0);transform-origin:left;
  transition:transform .3s cubic-bezier(.16,1,.3,1);
}
.nav-links a:hover::after,
.nav-links a.active::after{transform:scaleX(1)!important;width:auto!important;}
.nav-links a.active::after{background:var(--accent,#2558ff);}
.nav-right{display:flex;align-items:center;gap:.6rem;}

/* ── LANG PILL (dupliqué ici car index.php ne charge pas base.css) ── */
.lang-pill{position:relative;display:inline-flex;align-items:stretch;border:1px solid var(--border-2);border-radius:20px;overflow:hidden;flex-shrink:0;}
.lang-pill-track{position:absolute;inset:0 50% 0 0;background:var(--text);transition:transform .32s cubic-bezier(.16,1,.3,1);pointer-events:none;}
[data-lang="en"] .lang-pill-track{transform:translateX(100%);}
.lang-pill-btn{position:relative;z-index:1;flex:1;background:none;border:none;cursor:pointer;font-family:inherit;font-size:.58rem;letter-spacing:.13em;padding:.28rem .62rem;line-height:1;color:var(--muted);transition:color .25s;-webkit-tap-highlight-color:transparent;}
.lang-pill-btn[aria-pressed="true"]{color:var(--bg);}

/* ── THEME SWITCH (dupliqué ici car index.php ne charge pas base.css) ── */
.theme-switch{padding:4px 0;border:none;background:transparent;cursor:pointer;flex-shrink:0;display:flex;align-items:center;}
.ts-track{width:46px;height:26px;border-radius:13px;background:var(--surface);border:1.5px solid var(--border);position:relative;transition:background .28s,border-color .28s;}
.ts-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:transform .28s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center;color:#555;}
[data-theme="dark"] .ts-thumb{transform:translateX(20px);}
.ts-sun,.ts-moon{position:absolute;width:10px;height:10px;transition:opacity .18s,transform .18s;}
.ts-sun{opacity:1;transform:scale(1) rotate(0deg);}
.ts-moon{opacity:0;transform:scale(.55) rotate(-30deg);}
[data-theme="dark"] .ts-sun{opacity:0;transform:scale(.55) rotate(30deg);}
[data-theme="dark"] .ts-moon{opacity:1;transform:scale(1) rotate(0deg);}
[data-theme="dark"] .ts-track{background:var(--accent);border-color:var(--accent);}

.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;}
.burger span{display:block;width:22px;height:1px;transition:.3s;}
.burger.open span:nth-child(1){transform:translateY(6px) rotate(45deg);}
.burger.open span:nth-child(2){opacity:0;}
.burger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}

/* BUTTONS */
.btn-blue{background:var(--accent);color:#fff;padding:.88rem 2.4rem;font-size:.74rem;letter-spacing:.07em;transition:opacity .2s,transform .28s cubic-bezier(.16,1,.3,1);display:inline-block;}
.btn-blue:hover{opacity:.82;transform:translateY(-2px);}
.btn-outline{border:1px solid var(--border-2);padding:.88rem 2.4rem;color:var(--text);font-size:.74rem;letter-spacing:.07em;transition:background .2s,color .2s,border-color .2s,transform .28s cubic-bezier(.16,1,.3,1);display:inline-block;}
.btn-outline:hover{background:var(--text);color:var(--bg);border-color:var(--text);transform:translateY(-2px);}

/* ── HERO ── */
#hero{height:100vh;width:100%;position:relative;overflow:hidden;background:var(--bg);}
.hero-video{position:absolute;inset:0;z-index:0;}
.hero-video video{width:100%;height:100%;object-fit:cover;display:block;}
.hero-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(to bottom,rgba(8,8,8,0) 0%,rgba(8,8,8,0) 42%,rgba(8,8,8,.7) 100%);
}
.hero-content{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:end;
  gap:3rem;
  padding:0 clamp(1.5rem,4vw,3.5rem) clamp(3.5rem,6vh,6rem);
  height:100vh;
}
.hero-inner{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:0 clamp(1.5rem,4vw,3.5rem) 5rem;height:100vh;}

/* sound cursor removed — replaced by .hero-sound in inline style */
.hero-grain{position:absolute;inset:0;z-index:1;opacity:.06;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px 200px;}
.hero-bg-word{position:absolute;bottom:-4rem;right:-2rem;font-family:'PPTelegraf',sans-serif;font-weight:900;font-size:clamp(18rem,35vw,40rem);color:rgba(248,247,244,.016);letter-spacing:-.06em;pointer-events:none;z-index:0;user-select:none;line-height:1;animation:bgDrift 50s ease-in-out infinite alternate;}
@keyframes bgDrift{from{transform:rotate(-1deg)}to{transform:translateX(-2%) rotate(-3deg)}}
.hero-reel-badge{position:absolute;top:2rem;right:3.5rem;font-size:.52rem;letter-spacing:.24em;color:rgba(248,247,244,.18);z-index:3;text-transform:uppercase;}
.hero-avail{position:absolute;top:7.5rem;left:3.5rem;display:flex;align-items:center;gap:.65rem;font-size:.58rem;letter-spacing:.16em;color:rgba(248,247,244,.28);z-index:3;}
.avail-dot{width:5px;height:5px;border-radius:50%;background:#4ade80;flex-shrink:0;animation:dotPulse 2.5s ease-in-out infinite;}
@keyframes dotPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.6)}}
.hero-ticker{position:absolute;right:-6rem;top:50%;transform:translateY(-50%) rotate(90deg);transform-origin:center;font-size:.52rem;letter-spacing:.22em;color:rgba(248,247,244,.14);white-space:nowrap;z-index:3;width:65vh;overflow:hidden;}
.ticker-inner{display:inline-flex;gap:2.5rem;animation:tickerRun 22s linear infinite;}
.ticker-inner span{white-space:nowrap;}
@keyframes tickerRun{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.hero-eyebrow{font-size:.58rem;letter-spacing:.2em;color:rgba(238,236,234,.55);margin-bottom:1.1rem;display:flex;align-items:center;gap:1rem;text-transform:uppercase;}
h1{
  font-family:'PPTelegraf',sans-serif;font-weight:900;
  font-size:clamp(2.8rem,4.8vw,6rem);
  line-height:.92;letter-spacing:-.04em;color:#eeecea;
}
h1 span{color:var(--accent);}
.hero-left{ display:flex; flex-direction:column; }
.hero-right{display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end;text-align:right;}
.hero-desc{font-size:.88rem;color:rgba(238,236,234,.52);max-width:300px;line-height:1.85;letter-spacing:.01em;}

/* ── SOUND BUTTON ── */
.hero-sound {
  display:inline-flex; align-items:center; gap:.75rem;
  align-self:flex-end;
  margin-bottom:1.4rem;
  background:rgba(0,0,0,.48);
  border:1px solid rgba(238,236,234,.48);
  backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
  box-shadow:0 2px 16px rgba(0,0,0,.35);
  padding:.7rem 1.25rem .7rem 1rem;
  color:rgba(238,236,234,.9);
  font-size:.58rem; letter-spacing:.2em; text-transform:uppercase;
  font-family:-apple-system,sans-serif;
  cursor:pointer;
  transition:color .25s, background .25s, border-color .25s, box-shadow .25s, transform .35s cubic-bezier(.16,1,.3,1);
}
.hero-sound:hover {
  color:#eeecea;
  background:rgba(0,0,0,.65);
  border-color:rgba(238,236,234,.7);
  box-shadow:0 4px 20px rgba(0,0,0,.45);
  transform:translateY(-2px);
}
.hero-sound svg               { width:15px; height:15px; display:block; flex-shrink:0; }
.hero-sound .hs-on            { display:none; }
.hero-sound.sound-on          { color:rgba(238,236,234,.9); border-color:rgba(37,88,255,.55); background:rgba(37,88,255,.14); }
.hero-sound.sound-on .hs-off  { display:none; }
.hero-sound.sound-on .hs-on   { display:block; }
.hero-sound.sound-on:hover    { background:rgba(37,88,255,.25); border-color:rgba(37,88,255,.75); transform:translateY(-2px); }

/* ── SHOWREEL ── */
#showreel{border-top:1px solid var(--border);}
.showreel-header{display:flex;justify-content:space-between;align-items:flex-end;padding:2.5rem 3.5rem 1.8rem;}
.section-label{font-size:.55rem;letter-spacing:.24em;color:rgba(248,247,244,.22);text-transform:uppercase;margin-bottom:.5rem;}
.sr-title{font-family:'PPTelegraf',sans-serif;font-weight:900;font-size:clamp(1.2rem,2.5vw,2rem);letter-spacing:-.025em;color:var(--bg);}
.sr-year{font-size:.58rem;letter-spacing:.2em;color:rgba(248,247,244,.22);text-transform:uppercase;}
.showreel-video-wrap{position:relative;width:calc(100% - 7rem);margin:0 3.5rem;aspect-ratio:16/9;overflow:hidden;background:#0a0a0a;}
.showreel-video-wrap video{width:100%;height:100%;object-fit:cover;display:block;}
.showreel-labels{position:absolute;inset:0;pointer-events:none;z-index:2;}
.sr-label{position:absolute;font-size:.52rem;letter-spacing:.2em;color:rgba(248,247,244,.2);text-transform:uppercase;white-space:nowrap;}
.showreel-foot{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 3.5rem 3rem;}
.sr-foot-l,.sr-foot-r{font-size:.62rem;letter-spacing:.12em;color:rgba(248,247,244,.25);}

/* ── CLIENTS ── */
#clients{padding:3.5rem 0;border-top:1px solid var(--border);}
.clients-label{font-size:.58rem;letter-spacing:.22em;color:var(--muted);margin-bottom:2.2rem;padding:0 clamp(1.5rem,4vw,3.5rem);text-transform:uppercase;}

/* carrousel logo + nom */
.clients-logos{overflow:hidden;position:relative;height:72px;}
.clients-logos::before,.clients-logos::after{content:'';position:absolute;top:0;bottom:0;width:8rem;z-index:1;pointer-events:none;}
.clients-logos::before{left:0;background:linear-gradient(to right,var(--bg),transparent);}
.clients-logos::after{right:0;background:linear-gradient(to left,var(--bg),transparent);}
.clients-logos-track{display:flex;gap:0;align-items:center;animation:marquee 40s linear infinite;width:max-content;}
.client-logo-wrap{width:140px;height:52px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.client-logo-img{display:block;max-width:100px;max-height:34px;width:auto;height:auto;filter:brightness(0) opacity(.55);transition:filter .3s;}
[data-theme="dark"] .client-logo-img{filter:brightness(0) invert(1) opacity(.4);}
.client-logo-wrap:hover .client-logo-img,.logo-link:hover .client-logo-img{filter:brightness(0) opacity(.9);}
[data-theme="dark"] .client-logo-wrap:hover .client-logo-img,[data-theme="dark"] .logo-link:hover .client-logo-img{filter:brightness(0) invert(1) opacity(.8);}
.logo-link{display:flex;align-items:center;justify-content:center;}

/* boîte uniforme pour chaque logo (nouveau format) */
.client-item{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:.55rem;flex-shrink:0;
  width:150px;
}
/* Zone logo : hauteur fixe, le img se centre dedans */
.client-item-logo{
  width:110px; height:32px;
  display:flex; align-items:center; justify-content:center;
}
.client-item img{
  display:block;
  max-width:110px;   /* borne horizontale */
  max-height:28px;   /* borne verticale — uniforme pour tous */
  width:auto;
  height:auto;
  /* Light mode : logo noir */
  filter:brightness(0) opacity(.5);
  transition:filter .3s;
}
/* Dark mode : logo blanc */
[data-theme="dark"] .client-item img{
  filter:brightness(0) invert(1) opacity(.38);
}
.client-item:hover img{
  filter:brightness(0) opacity(.85);
}
[data-theme="dark"] .client-item:hover img{
  filter:brightness(0) invert(1) opacity(.7);
}
.client-name{display:block;font-size:.5rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);opacity:.5;white-space:nowrap;line-height:1;transition:opacity .3s;}
.client-item:hover .client-name{opacity:.75;}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ── WORK ── */
#work{border-top:1px solid var(--border);}

/* Header */
.work-header{display:flex;justify-content:space-between;align-items:flex-end;padding:5rem clamp(1.5rem,4vw,3.5rem) 3.5rem;}
.work-eyebrow{display:block;font-size:.55rem;letter-spacing:.24em;color:var(--muted);text-transform:uppercase;margin-bottom:.7rem;}
.work-title{font-family:'PPTelegraf',sans-serif;font-weight:900;font-size:clamp(2.2rem,4.5vw,4rem);letter-spacing:-.038em;line-height:.88;color:var(--text);}
.work-see-all{display:flex;align-items:center;gap:.55rem;font-size:.65rem;letter-spacing:.13em;color:var(--muted);transition:color .25s;text-decoration:none;white-space:nowrap;padding-bottom:.3rem;}
.work-see-all svg{width:13px;height:13px;flex-shrink:0;transition:transform .3s cubic-bezier(.16,1,.3,1);}
.work-see-all:hover{color:var(--text);}
.work-see-all:hover svg{transform:translate(4px,-4px);}

/* Grid top : featured (gauche, haut×2) + 2 empilées droite */
.work-grid-top{
  display:grid;
  grid-template-columns:57fr 43fr;
  grid-template-rows:300px 300px;
  gap:2px;
  background:var(--border);
  margin-bottom:2px;
}
.wk-feat{grid-row:span 2;}

/* Grid bottom : 3 égales */
.work-grid-bottom{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:340px;
  gap:2px;
  background:var(--border);
}

/* Carte */
.wk-card{
  position:relative;
  overflow:hidden;
  display:block;
  text-decoration:none;
  background:#050505;
  opacity:0;
  transform:translateY(28px);
  transition:opacity .72s cubic-bezier(.16,1,.3,1) var(--d,0s), transform .72s cubic-bezier(.16,1,.3,1) var(--d,0s);
}
.wk-card.go{opacity:1;transform:translateY(0);}

/* Image */
.wk-img-wrap{position:absolute;inset:0;overflow:hidden;}
.wk-img{
  width:100%;height:100%;
  object-fit:cover;display:block;
  will-change:transform;
  transition:filter .5s ease;
}
.wk-card:hover .wk-img{filter:brightness(.92);}

/* Overlay gradient permanent */
.wk-overlay{
  position:absolute;inset:0;
  background:linear-gradient(
    to top,
    rgba(8,8,8,.92) 0%,
    rgba(8,8,8,.24) 48%,
    rgba(8,8,8,.04) 100%
  );
  display:flex;flex-direction:column;justify-content:space-between;
  padding:1.4rem 1.6rem 1.8rem;
  transition:background .4s ease;
}
.wk-card:hover .wk-overlay{
  background:linear-gradient(
    to top,
    rgba(8,8,8,.97) 0%,
    rgba(8,8,8,.48) 58%,
    rgba(8,8,8,.1) 100%
  );
}

/* Numéro en haut */
.wk-num{
  font-size:.5rem;letter-spacing:.2em;
  color:rgba(238,236,234,.22);
  font-family:'PPMori',-apple-system,sans-serif;
  align-self:flex-start;
  transition:opacity .3s;
}
.wk-card:hover .wk-num{opacity:.45;}

/* Bloc bas */
.wk-bottom{display:flex;flex-direction:column;gap:.3rem;}

.wk-cat{
  font-size:.55rem;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(238,236,234,.38);
  transform:translateY(8px);opacity:0;
  transition:transform .36s cubic-bezier(.16,1,.3,1),opacity .36s ease;
}
.wk-card:hover .wk-cat{transform:translateY(0);opacity:1;}

.wk-name{
  font-family:'PPTelegraf',sans-serif;font-weight:900;
  font-size:clamp(1.05rem,1.8vw,1.55rem);
  letter-spacing:-.022em;line-height:1;
  color:#eeecea;
  transform:translateY(5px);
  transition:transform .3s cubic-bezier(.16,1,.3,1);
}
.wk-feat .wk-name{font-size:clamp(1.7rem,3vw,2.6rem);}
.wk-card:hover .wk-name{transform:translateY(0);}

.wk-arrow{
  display:inline-block;margin-top:.3rem;
  font-size:.85rem;
  color:var(--accent);
  opacity:0;
  transform:translate(-5px,5px);
  transition:opacity .28s ease,transform .35s cubic-bezier(.16,1,.3,1);
}
.wk-card:hover .wk-arrow{opacity:1;transform:translate(0,0);}


/* ── ABOUT ── */
#about{padding:7rem 3.5rem;border-top:1px solid var(--border);display:grid;grid-template-columns:1fr 1fr;gap:8rem;align-items:start;}
.about-left h2{font-family:'PPTelegraf',sans-serif;font-weight:900;font-size:clamp(2.2rem,4.5vw,4rem);line-height:.9;letter-spacing:-.04em;color:var(--bg);margin-bottom:2rem;}
.about-left p{font-size:.9rem;color:rgba(248,247,244,.38);line-height:1.82;max-width:380px;}
.about-cta{margin-top:2.5rem;display:inline-block;}
.about-right{display:flex;flex-direction:column;}
.stat-row{padding:2rem 0;border-top:1px solid var(--border);display:flex;align-items:baseline;gap:1.5rem;}
.stat-num{font-family:'PPTelegraf',sans-serif;font-weight:900;font-size:clamp(2.8rem,5.5vw,4.8rem);letter-spacing:-.05em;color:var(--bg);}
.stat-label{font-size:.62rem;letter-spacing:.16em;color:rgba(248,247,244,.28);text-transform:uppercase;}
.tools-row{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border);}
.tools-label{font-size:.55rem;letter-spacing:.22em;color:rgba(248,247,244,.2);margin-bottom:1.2rem;text-transform:uppercase;}
.tools-list{display:flex;flex-wrap:wrap;gap:.6rem;}
.tool-tag{font-size:.56rem;letter-spacing:.1em;border:1px solid rgba(248,247,244,.1);padding:.28rem .85rem;color:rgba(248,247,244,.32);}

/* ── CONTACT CTA ── */
#contact-cta{padding:7rem 3.5rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4rem;}
.cta-text h2{font-family:'PPTelegraf',sans-serif;font-weight:900;font-size:clamp(3.5rem,8vw,8.5rem);line-height:.86;letter-spacing:-.045em;color:var(--bg);}
.cta-text p{font-size:.9rem;color:rgba(248,247,244,.35);max-width:340px;line-height:1.78;margin-top:2rem;}
.cta-email{font-family:'PPTelegraf',sans-serif;font-weight:900;font-size:clamp(.9rem,1.8vw,1.4rem);letter-spacing:-.01em;color:rgba(248,247,244,.25);margin-top:2.5rem;display:block;transition:color .2s;}
.cta-email:hover{color:var(--blue);}
.cta-actions{display:flex;flex-direction:column;align-items:flex-end;gap:1.2rem;}

/* ── FOOTER ── */
footer{padding:2.5rem clamp(1.5rem,4vw,3.5rem) 2rem;border-top:1px solid var(--border);}
.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.8rem;margin-bottom:1.8rem;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:1.5rem;}
.footer-logo{display:flex;align-items:center;color:var(--text);}
.footer-logo .logo-svg{width:28px;height:28px;}
.footer-nav{display:flex;flex-wrap:wrap;}
.footer-nav a{padding:.25rem .85rem;font-size:.78rem;letter-spacing:.04em;color:var(--muted);transition:color .2s;}
.footer-nav a:hover{color:var(--text);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
.footer-copy{font-size:.72rem;color:var(--muted);}
.footer-legal{display:flex;gap:1.5rem;flex-wrap:wrap;}
.footer-legal a{font-size:.72rem;color:var(--muted);transition:color .2s;}
.footer-legal a:hover{color:var(--text);}
.footer-social{display:flex;gap:1.5rem;}
.footer-social a{font-size:.72rem;color:var(--muted);transition:color .2s;}
.footer-social a:hover{color:var(--text);}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  .work-grid-top{grid-template-columns:1fr 1fr;grid-template-rows:260px 260px;}
  .work-grid-bottom{grid-template-rows:280px;}
}
@media(max-width:768px){
  nav{display:flex;align-items:center;padding:1rem 1.5rem;}
  .nav-logo{order:1;flex-shrink:0;}
  .nav-right{order:2;flex-shrink:0;margin-left:.6rem;}
  .burger{order:3;display:flex;flex-shrink:0;margin-left:auto;}
  .nav-links{display:none;}
  .hero-content{
    grid-template-columns:1fr;
    grid-template-rows:auto auto;
    gap:2rem;
    padding:0 1.5rem 4rem;
  }
  .hero-right{ justify-content:flex-start; align-items:flex-start; text-align:left; }
  .hero-sound{ align-self:flex-start; }
  h1{ font-size:clamp(2.2rem,10vw,3.8rem); }
  .hero-inner{padding:0 1.5rem 4rem;}
  #hero{cursor:auto;}
  .hero-ticker,.hero-deco,.hero-reel-badge,.hero-avail{display:none;}
  #clients{padding:2.5rem 0;}
  .clients-label{padding:0 1.5rem;}
  footer{padding:2rem 1.5rem 1.5rem;}
  .footer-top{flex-direction:column;align-items:flex-start;gap:1.2rem;padding-bottom:1.5rem;margin-bottom:1.5rem;}
  .footer-nav{margin-left:-.85rem;}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:.9rem;}
  .footer-legal{gap:1.2rem;}
  .work-header{padding:3.5rem 1.5rem 2.5rem;flex-direction:column;align-items:flex-start;gap:1.5rem;}
  .work-grid-top{grid-template-columns:1fr;grid-template-rows:56vw 56vw 56vw;}
  .wk-feat{grid-row:span 1;}
  .work-grid-bottom{grid-template-columns:1fr;grid-template-rows:56vw 56vw 56vw;}
  .wk-name{font-size:1.3rem!important;}
}

/* ── PAGE CONTENT BLOCKS (accueil) ── */
.page-content-blocks {
  padding: 4rem clamp(1.5rem,4vw,3.5rem);
  display: flex; flex-direction: column; gap: 2rem;
  border-top: 1px solid var(--border);
}
.pcb-text  { font-size:1rem; line-height:1.8; color:var(--text); max-width:72ch; }
.pcb-heading { font-size:clamp(1.3rem,3vw,2rem); font-weight:700; letter-spacing:-.02em; color:var(--text); }
.page-content-blocks .img-full img { width:100%; display:block; }
.page-content-blocks .img-grid-2,.page-content-blocks .img-grid-3 { display:grid; gap:1rem; }
.page-content-blocks .img-grid-2 { grid-template-columns:1fr 1fr; }
.page-content-blocks .img-grid-3 { grid-template-columns:1fr 1fr 1fr; }
.page-content-blocks .img-grid-2 img,.page-content-blocks .img-grid-3 img { width:100%; display:block; }
@media(max-width:768px){
  .page-content-blocks .img-grid-2,.page-content-blocks .img-grid-3{grid-template-columns:1fr;}
}

/* ── MODIFS PERSO ── */

#hero h1 span { color:#eeecea !important; }