/* Thomas Machicoane V8.9.1 — couche finale fidèle aux aperçus V8.3 validés. */

/* Header : superposé au Hero, sans bande pleine ni cartouche autour du logo. */
body.tm-site .site-header{
  position:fixed!important;z-index:90!important;top:0!important;left:0!important;right:0!important;
  min-height:0!important;height:auto!important;margin:0!important;
  padding:22px max(5vw,calc((100vw - var(--tm-content-width,1720px))/2)) 0!important;
  align-items:flex-start!important;background:transparent!important;background-image:none!important;
  border:0!important;box-shadow:none!important;pointer-events:none!important
}
.admin-bar .site-header{top:32px!important}
body.tm-site .site-header>*{pointer-events:auto!important}
.tm-header-style-solid .site-header{padding-bottom:16px!important;background:var(--tm-header-bg,#060d0e)!important}
body.tm-site .header-logo{
  width:var(--tm-logo-width,174px)!important;min-height:0!important;margin:0!important;padding:0!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;overflow:visible!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  backdrop-filter:none!important;animation:none!important;transform-origin:top left!important
}
body.tm-site .header-logo>.logo-mask{width:100%!important;height:auto!important;aspect-ratio:936/562!important;margin:0!important;color:var(--v8-paper,#e8e2d9)!important;filter:drop-shadow(0 3px 14px #0009)!important}
body.tm-site .header-logo>img{display:block!important;width:100%!important;height:auto!important;max-height:112px!important;object-fit:contain!important;object-position:center!important;animation:none!important;background:transparent!important;filter:brightness(0) invert(1) drop-shadow(0 3px 14px #0009)!important;mix-blend-mode:screen!important}
body.tm-site .header-logo>.logo-tagline{width:100%!important;margin:-2px 0 0!important;text-align:center!important;color:var(--v8-yellow,#967100)!important;font:700 6px/1 Arial,sans-serif!important;letter-spacing:.34em!important;text-transform:uppercase!important;text-shadow:0 2px 8px #000!important}
body.tm-site .site-header .header-actions{margin-left:auto!important;display:flex!important;align-items:stretch!important;gap:0!important;color:var(--v8-paper,#e8e2d9)!important}
body.tm-site .site-header .language-switch:not(.language-switch--mobile),body.tm-site .site-header .instagram-header,body.tm-site .site-header .menu-button{
  height:50px!important;min-height:50px!important;margin:0!important;padding:0 15px!important;
  border:1px solid #e8e2d924!important;border-radius:0!important;background:#060d0e24!important;
  box-shadow:none!important;backdrop-filter:blur(5px)!important;color:var(--v8-paper,#e8e2d9)!important
}
body.tm-site .site-header .language-switch:not(.language-switch--mobile){display:flex!important;align-items:center!important;gap:9px!important}
body.tm-site .site-header .instagram-header{display:grid!important;width:50px!important;padding:0!important;place-content:center!important;border-radius:50%!important}
body.tm-site .site-header .menu-button{width:94px!important;grid-template-columns:26px auto!important;grid-template-rows:repeat(3,1px)!important;column-gap:10px!important;row-gap:5px!important;place-content:center!important}
body.tm-site .site-header .menu-button span{grid-column:1!important;width:26px!important;height:1px!important;margin:0!important;background:currentColor!important}
body.tm-site .site-header .menu-button span:nth-child(2){width:20px!important}
body.tm-site .site-header .menu-button b{display:block!important;grid-column:2!important;grid-row:1/4!important;align-self:center!important;color:inherit!important;font:700 7px/1 Arial,sans-serif!important;letter-spacing:.16em!important;text-transform:uppercase!important}

/* Hero : fenêtre vidéo centrale et composition éditoriale de Capture son 2. */
body.tm-site .hero-section{
  position:relative!important;isolation:isolate!important;width:100%!important;height:100svh!important;min-height:760px!important;
  margin:0!important;padding:0!important;overflow:hidden!important;border:0!important;background:var(--tm-section-bg,#060d0e)!important
}
body.tm-site .hero-video,body.tm-site .hero-fallback{
  position:absolute!important;z-index:1!important;top:0!important;bottom:0!important;left:50%!important;right:auto!important;
  width:var(--tm-hero-media-width-local,var(--tm-hero-media-width,34%))!important;height:100%!important;max-width:none!important;
  object-fit:cover!important;object-position:center!important;transform:translateX(-50%) translateZ(0)!important;
  background:transparent!important;border:0!important
}
.tm-hero-media-full .hero-video,.tm-hero-media-full .hero-fallback{left:0!important;width:100%!important;transform:translateZ(0)!important}
body.tm-site .hero-fallback{z-index:0!important}
body.tm-site .hero-shade{position:absolute!important;z-index:2!important;inset:0!important;opacity:1!important;background:linear-gradient(90deg,#060d0ef2 0%,#060d0ed0 31%,#060d0e22 50%,#060d0eaa 68%,#060d0ef5 100%),linear-gradient(0deg,#060d0ebf 0%,transparent 52%)!important}
body.tm-site .hero-grain{z-index:3!important}
body.tm-site .hero-content{
  position:relative!important;z-index:4!important;width:100%!important;max-width:none!important;height:100%!important;
  padding:clamp(145px,17vh,185px) max(5vw,calc((100vw - var(--tm-content-width,1720px))/2)) 8vh!important;
  display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important
}
body.tm-site .hero-content .eyebrow{margin:0 0 24px!important;color:var(--tm-section-accent,var(--v8-yellow,#967100))!important}
body.tm-site .hero-content h1{
  width:min(860px,61vw)!important;max-width:none!important;margin:0 0 28px!important;
  color:var(--tm-section-title,var(--v8-paper,#e8e2d9))!important;
  font-family:var(--tm-title-font,Georgia,serif)!important;font-size:var(--tm-local-title-size,clamp(72px,var(--tm-title-hero-vw,8.8vw),150px))!important;
  font-style:var(--tm-local-title-style,var(--tm-title-style,italic))!important;font-weight:400!important;line-height:.8!important;letter-spacing:-.067em!important
}
body.tm-site .hero-content h1 span{display:block!important}
body.tm-site .hero-intro{width:min(500px,35vw)!important;margin:0!important;padding:0!important;color:var(--tm-section-text,#e8e2d9e0)!important;font:clamp(15px,1.05vw,19px)/1.55 var(--tm-title-font,Georgia,serif)!important}
body.tm-site .hero-actions{margin-top:32px!important}
body.tm-site .hero-cta{min-width:212px!important;padding:17px 21px!important}
body.tm-site .hero-index{z-index:5!important;right:5vw!important;top:52%!important;color:var(--v8-paper,#e8e2d9)!important}
body.tm-site .hero-scroll{z-index:5!important;left:50%!important;right:auto!important;bottom:12px!important;color:var(--v8-paper,#e8e2d9)!important}
body.tm-site .hero-doodles{z-index:5!important;right:7vw!important;bottom:9vh!important;color:var(--tm-section-accent,var(--v8-yellow,#967100))!important}

/* Lecteur SoundCloud : carte longue, onde sombre et ombre rouge/ocre. */
body.tm-site .music-section{
  position:relative!important;isolation:isolate!important;display:grid!important;grid-template-columns:minmax(300px,.64fr) minmax(0,1.36fr)!important;
  gap:clamp(70px,9vw,170px)!important;align-items:center!important;min-height:720px!important;
  background:var(--tm-section-bg,var(--tm-music-bg,#060d0e))!important;color:var(--tm-section-text,var(--v8-paper,#e8e2d9))!important;overflow:hidden!important
}
body.tm-site .music-section:before{content:"";position:absolute;z-index:-1;left:0;right:0;top:0;height:72px;background:var(--tm-film-bg,#2c2412);clip-path:polygon(0 0,100% 0,100% 79%,94% 84%,88% 79%,80% 84%,72% 79%,63% 84%,54% 78%,45% 84%,36% 78%,27% 84%,18% 78%,8% 84%,0 78%)}
body.tm-site .music-intro{align-self:center!important;max-width:520px!important}
body.tm-site .music-intro .kicker{color:var(--tm-section-accent,var(--v8-yellow,#967100))!important}
body.tm-site .music-intro h2{margin:18px 0 30px!important;color:var(--tm-section-title,var(--v8-paper,#e8e2d9))!important;font-size:var(--tm-local-title-size,clamp(68px,var(--tm-title-vw,7.4vw),128px))!important;line-height:.82!important;letter-spacing:-.06em!important}
body.tm-site .music-intro h2:after{content:none!important}
body.tm-site .music-intro h2 span{display:block!important}
body.tm-site .music-intro h2 span:nth-child(2){padding-left:.48em;color:var(--tm-section-accent,var(--v8-yellow,#967100))!important}
body.tm-site .music-intro>p:last-child{max-width:520px!important;margin:0!important;color:var(--tm-section-text,#e8e2d9b8)!important;font:clamp(16px,1.05vw,19px)/1.58 var(--tm-title-font,Georgia,serif)!important}
body.tm-site .sound-player{
  position:relative!important;min-width:0!important;min-height:var(--tm-sound-panel-height-local,var(--tm-sound-panel-height,320px))!important;
  padding:clamp(30px,3vw,52px)!important;border:1px solid #e8e2d91f!important;border-radius:0!important;
  background:var(--tm-player-bg-local,var(--tm-player-bg,#07100f))!important;
  box-shadow:var(--tm-player-shadow-size-local,var(--tm-player-shadow-size,14px)) var(--tm-player-shadow-size-local,var(--tm-player-shadow-size,14px)) 0 var(--tm-player-shadow-local,var(--tm-player-shadow,#b43c2c))!important
}
body.tm-site .sound-player__topline{display:flex!important;justify-content:space-between!important;gap:24px!important;padding:0 0 25px!important;border-bottom:1px solid #e8e2d91e!important;color:var(--v8-paper,#e8e2d9)!important;font:600 7px/1 Arial,sans-serif!important;letter-spacing:.15em!important;text-transform:uppercase!important}
body.tm-site .sound-player__topline span:last-child{opacity:.42!important}
body.tm-site .sound-player__main{min-height:145px!important;display:grid!important;grid-template-columns:84px minmax(0,1fr) 46px!important;gap:28px!important;align-items:center!important}
body.tm-site .disc-button{width:76px!important;height:76px!important;border:1px solid #9671008a!important;background:repeating-radial-gradient(circle,#07100f 0 4px,#2c2412 5px 7px)!important;box-shadow:0 0 0 6px #96710013,0 0 0 12px #9671000c!important}
body.tm-site .disc-button span{width:34px!important;height:34px!important;background:var(--tm-section-accent,var(--v8-yellow,#967100))!important;color:var(--v8-ink,#060d0e)!important}
body.tm-site .waveform{height:72px!important;display:flex!important;justify-content:stretch!important;align-items:center!important;gap:5px!important;overflow:hidden!important}
body.tm-site .waveform i{flex:1 1 0!important;width:auto!important;min-width:3px!important;max-width:11px!important;background:var(--tm-wave-color-local,var(--tm-wave-color,#2c2412))!important;opacity:.78!important}
body.tm-site .sound-player__duration{color:var(--v8-paper,#e8e2d9)!important;font:600 7px/1 Arial,sans-serif!important;opacity:.5!important}
body.tm-site .soundcloud-frame{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important}
body.tm-site .soundcloud-link{display:inline-flex!important;align-items:center!important;gap:18px!important;margin:8px 0 0!important;padding:0 0 9px!important;border:0!important;border-bottom:1px solid var(--tm-section-accent,var(--v8-yellow,#967100))!important;background:transparent!important;color:var(--v8-paper,#e8e2d9)!important;font:700 7px/1 Arial,sans-serif!important;letter-spacing:.14em!important;text-transform:uppercase!important}
body.tm-site .music-side-note{position:absolute!important;right:4vw!important;bottom:32px!important;margin:0!important;color:var(--v8-paper,#e8e2d9)!important;font:italic 20px/1.05 var(--tm-title-font,Georgia,serif)!important;transform:rotate(-4deg)!important}
body.tm-site .music-side-note span{display:block!important}
body.tm-site .music-side-note b{display:block!important;margin-top:6px!important;color:var(--tm-section-accent,var(--v8-yellow,#967100))!important;font-size:35px!important;text-align:right!important}

/* Footer : logo à gauche, manifeste à droite, liens et crédits sur deux lignes fines. */
body.tm-site .site-footer{
  min-height:var(--tm-footer-min-height,500px)!important;padding:70px max(3.5vw,calc((100vw - var(--tm-content-width,1720px))/2)) 30px!important;
  display:flex!important;flex-direction:column!important;justify-content:space-between!important;
  background:var(--tm-footer-bg,#060d0e)!important;color:var(--v8-paper,#e8e2d9)!important
}
body.tm-site .footer-main{display:grid!important;grid-template-columns:minmax(180px,.55fr) minmax(420px,1fr)!important;gap:8vw!important;align-items:start!important}
body.tm-site .footer-logo{width:var(--tm-footer-logo-width,250px)!important;margin:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;color:var(--v8-paper,#e8e2d9)!important}
body.tm-site .footer-logo>.logo-mask{width:100%!important;height:auto!important;aspect-ratio:936/562!important;color:var(--v8-paper,#e8e2d9)!important}
body.tm-site .footer-logo>img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;background:transparent!important;filter:brightness(0) invert(1)!important;mix-blend-mode:screen!important}
body.tm-site .footer-logo>.logo-tagline{width:100%!important;margin:-1px 0 0!important;color:var(--v8-yellow,#967100)!important;text-align:center!important;font:700 6px/1 Arial,sans-serif!important;letter-spacing:.34em!important;text-transform:uppercase!important}
body.tm-site .footer-statement{max-width:620px!important;justify-self:end!important;margin:0!important;color:var(--v8-paper,#e8e2d9)!important;font:italic clamp(48px,4vw,76px)/.98 var(--tm-title-font,Georgia,serif)!important;letter-spacing:-.035em!important}
body.tm-site .footer-statement b{display:inline-block!important;margin-left:12px!important;color:var(--v8-yellow,#967100)!important;font-style:normal!important;font-size:.72em!important}
body.tm-site .footer-links{display:flex!important;gap:32px!important;margin:45px 0 0!important;padding:30px 0!important;border-top:1px solid #e8e2d91c!important;border-bottom:1px solid #e8e2d91c!important;color:var(--v8-paper,#e8e2d9)!important;font:600 7px/1 Arial,sans-serif!important;letter-spacing:.13em!important;text-transform:uppercase!important}
body.tm-site .footer-links a{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:0!important;border:0!important;color:inherit!important}
body.tm-site .footer-links svg{width:13px!important;height:13px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.6!important}
body.tm-site .footer-bottom{display:grid!important;grid-template-columns:1fr auto!important;padding-top:24px!important;border:0!important;color:#e8e2d96c!important;font:600 7px/1 Arial,sans-serif!important;letter-spacing:.13em!important;text-transform:uppercase!important}
body.tm-site .footer-bottom span:last-child{text-align:right!important}

@media(max-width:980px){
  body.tm-site .site-header{padding:16px 24px 0!important}
  body.tm-site .hero-video,body.tm-site .hero-fallback{width:52%!important}
  body.tm-site .hero-content h1{width:min(780px,82vw)!important}
  body.tm-site .hero-intro{width:min(500px,58vw)!important}
  body.tm-site .music-section{grid-template-columns:1fr!important;gap:60px!important;min-height:0!important}
  body.tm-site .music-intro{max-width:720px!important}
  body.tm-site .footer-main{grid-template-columns:1fr 1fr!important;gap:50px!important}
}

@media(max-width:650px){
  .admin-bar .site-header{top:46px!important}
  body.tm-site .site-header{padding:10px 12px 0!important;align-items:flex-start!important}
  body.tm-site .header-logo{width:min(var(--tm-logo-width,174px),128px)!important}
  body.tm-site .header-logo>.logo-tagline{font-size:5px!important;letter-spacing:.26em!important}
  body.tm-site .site-header .language-switch:not(.language-switch--mobile){display:none!important}
  body.tm-site .site-header .instagram-header{width:44px!important;height:44px!important;min-height:44px!important}
  body.tm-site .site-header .menu-button{width:52px!important;height:44px!important;min-height:44px!important;padding:0!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:repeat(3,1px)!important}
  body.tm-site .site-header .menu-button span{grid-column:1!important;justify-self:center!important}
  body.tm-site .site-header .menu-button b{display:none!important}
  body.tm-site .hero-section{min-height:700px!important}
  body.tm-site .hero-video,body.tm-site .hero-fallback{left:0!important;width:100%!important;transform:translateZ(0)!important}
  body.tm-site .hero-shade{background:linear-gradient(0deg,#060d0ef5 0%,#060d0e9b 58%,#060d0e70 100%)!important}
  body.tm-site .hero-content{padding:135px 20px 72px!important;justify-content:flex-end!important}
  body.tm-site .hero-content h1{width:100%!important;font-size:clamp(50px,15vw,76px)!important}
  body.tm-site .hero-intro{width:94%!important;font-size:15px!important}
  body.tm-site .hero-index,body.tm-site .hero-doodles,body.tm-site .hero-scroll{display:none!important}
  body.tm-site .music-section{padding-top:120px!important;padding-bottom:105px!important}
  body.tm-site .music-intro h2{font-size:clamp(58px,18vw,88px)!important}
  body.tm-site .music-intro h2 span:nth-child(2){padding-left:.22em!important}
  body.tm-site .sound-player{min-height:280px!important;padding:25px 20px!important;box-shadow:8px 8px 0 var(--tm-player-shadow-local,var(--tm-player-shadow,#b43c2c))!important}
  body.tm-site .sound-player__main{grid-template-columns:62px minmax(0,1fr) 34px!important;gap:15px!important}
  body.tm-site .disc-button{width:58px!important;height:58px!important}
  body.tm-site .waveform{gap:3px!important}
  body.tm-site .music-side-note{display:none!important}
  body.tm-site .site-footer{min-height:0!important;padding:60px 20px 24px!important}
  body.tm-site .footer-main{grid-template-columns:1fr!important;gap:46px!important}
  body.tm-site .footer-logo{width:min(var(--tm-footer-logo-width,250px),190px)!important;align-items:flex-start!important}
  body.tm-site .footer-statement{justify-self:start!important;font-size:clamp(38px,12vw,56px)!important}
  body.tm-site .footer-links{flex-wrap:wrap!important;gap:22px!important;margin-top:50px!important}
  body.tm-site .footer-bottom{grid-template-columns:1fr!important;gap:14px!important}
  body.tm-site .footer-bottom span:last-child{text-align:left!important}
}

@media(prefers-reduced-motion:reduce){body.tm-site .header-logo{animation:none!important}}
