:root{--section-projets:#f7d8df;--section-formations:#d5edf2;--section-agenda:#f8e681;--section-compagnie:#dcebd4;--section-contact:#f4c4b7}
.project-grid:has(.new-project-card){grid-template-columns:repeat(3,minmax(0,1fr))}
#main .new-project-announcement{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;background:#dcebd4;color:var(--leaf);padding:28px;text-align:center}
.new-project-announcement>span{font-family:'Atelier Hand',sans-serif;font-size:38px;font-weight:700;line-height:1.1;transform:rotate(-5deg)}
.new-project-announcement em{font-style:normal;background:linear-gradient(transparent 78%,#f3d65b 78%,#f3d65b 95%,transparent 95%)}
.new-project-page{display:block;padding-top:40px;padding-bottom:50px;min-height:380px}
.new-project-page .detail-heading{max-width:1000px}
.artist-credit-link{color:var(--leaf);text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:4px;text-decoration-thickness:1px}
.artist-credit-link:hover{color:var(--red)}
.artist-credit-link:focus-visible{outline:2px solid var(--leaf);outline-offset:4px}
@media(max-width:1099px){.project-grid:has(.new-project-card){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.project-grid:has(.new-project-card){grid-template-columns:minmax(0,1fr)}.new-project-page{padding-top:28px;padding-bottom:36px;min-height:0}.new-project-announcement>span{font-size:34px}}
#main strong.company-values{display:inline;font-family:inherit;font-size:inherit;font-weight:700;line-height:inherit;color:var(--leaf);margin:0;padding:0 .08em;transform:none;background:linear-gradient(transparent 76%,#f3d65b99 76%,#f3d65b99 94%,transparent 94%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.header nav a[aria-current=location]{color:var(--ink)}
.header nav a[aria-current=location]::after{content:'';position:absolute;bottom:4px;left:13px;right:13px;width:auto;height:2px;background:var(--red);transform:rotate(-3deg);border-radius:50%}
@media(min-width:761px) and (max-width:1099px){.header nav a[aria-current=location]::after{left:5px;right:5px}}
@media(max-width:760px){.header nav a[aria-current=location]::after{left:19px;right:19px}}
.header nav>a[href="#/projets"]{--menu-paint:var(--section-projets)}
.header nav>a[href="#/formations"]{--menu-paint:var(--section-formations)}
.header nav>a[href="#/agenda"]{--menu-paint:var(--section-agenda)}
.header .nav-company>a{--menu-paint:var(--section-compagnie)}
.header nav>.nav-contact{--menu-paint:var(--section-contact)}
main[data-section=projets]{--section-color:var(--section-projets)}
main[data-section=formations]{--section-color:var(--section-formations)}
main[data-section=agenda]{--section-color:var(--section-agenda)}
main[data-section=compagnie]{--section-color:var(--section-compagnie)}
main[data-section=contact]{--section-color:var(--section-contact)}
main[data-section]>.page-title,main[data-section]>.detail-hero,main[data-section=compagnie]>.artist{background:var(--section-color,#e0f1f3)}
[data-private-rate]{display:none!important}
.cms-rates{margin:26px 0;display:flex;align-items:center;min-width:0}
.cms-rates .text-link{font-family:'Atelier Hand',Georgia,serif;font-size:28px;line-height:1.25;color:var(--leaf);max-width:100%;flex-wrap:wrap}
.intro-company-action{grid-column:2;grid-row:3;justify-self:end;align-self:end;max-width:100%}
@media(max-width:760px){.intro-company-action{grid-column:1;grid-row:4}}
.intro-person-name{display:block;width:100%;text-align:center;padding-left:0;padding-right:0}
.intro-person::before,.gallery-artist .gallery-stage::before{background:var(--portrait-tape,#bdc9bfbc)}
.intro-person::before,.gallery-stage::before,.person-row>.portrait::after,.artist-visual>.portrait::after{clip-path:polygon(2px 0,calc(100% - 1px) 0,calc(100% - 3px) 9%,100% 18%,calc(100% - 2px) 28%,100% 37%,calc(100% - 3px) 47%,calc(100% - 1px) 57%,calc(100% - 3px) 67%,100% 77%,calc(100% - 2px) 88%,calc(100% - 1px) 100%,1px 100%,3px 91%,0 81%,2px 71%,0 62%,3px 52%,1px 42%,3px 32%,0 22%,2px 12%);background-image:repeating-linear-gradient(90deg,#ffffff12 0 1px,transparent 1px 4px);box-shadow:inset 0 1px #ffffff26,inset 0 -1px #0000000a}
.person-row>.portrait,.artist-visual>.portrait{position:relative}
.person-row>.portrait::after,.artist-visual>.portrait::after{content:'';position:absolute;top:0;left:35%;width:30%;height:18px;background:var(--portrait-tape,#bdc9bfbc);transform:rotate(-5deg);z-index:1;pointer-events:none}
.intro-person::before,.gallery-stage::before,.gallery-artist .gallery-stage::before,.person-row>.portrait::after,.artist-visual>.portrait::after{background-image:repeating-linear-gradient(90deg,#ffffff12 0 1px,transparent 1px 4px)}
.venue-link{display:inline-flex;align-items:center;gap:9px;max-width:100%;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;color:var(--leaf)}
.venue-link img{width:16px;height:16px;flex-shrink:0;object-fit:contain}
.site-credit-space{height:104px}
.venue-link:hover{color:var(--red)}

/* One handwritten action style, with a filled variant for primary requests. */
#main :is(.button,.text-link){display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;max-width:100%;font-family:'Atelier Hand',Georgia,serif;font-size:26px;font-weight:700;line-height:1.25;text-align:left;white-space:normal;overflow-wrap:anywhere;box-shadow:none;transform:none;transition:color .18s,background .18s,transform .18s}
#main :is(.text-link,.button:not(.red)){width:fit-content;padding:7px 0;border:0;border-bottom:2px solid var(--red);border-radius:0;background:transparent;color:var(--leaf)}
#main .button.red{padding:12px 20px;border:1px solid var(--red);border-radius:1px 7px 2px 5px;background:var(--red);color:#fff}
#main :is(.button,.text-link)>span{font-size:23px;line-height:1;flex-shrink:0}
#main :is(.text-link,.button:not(.red)):hover{color:var(--red);background:transparent;transform:translateY(-2px)}
#main .button.red:hover{background:#96223b;border-color:#96223b;transform:translateY(-2px)}
#main .hero .button:not(.red){color:#fff;border-bottom-color:var(--yellow)}
#main .hero .button:not(.red):hover{color:var(--yellow)}
#main :is(.button,.text-link):focus-visible{outline:3px solid var(--leaf);outline-offset:5px}
#main .hero :is(.button,.text-link):focus-visible{outline-color:var(--yellow)}
@media(max-width:760px){
 #main :is(.button,.text-link){font-size:24px;gap:14px}
 #main .section-head{flex-wrap:wrap}
 #main .section-head>.text-link{max-width:100%;margin-left:auto;flex-shrink:1}
}
@media(prefers-reduced-motion:reduce){#main :is(.button,.text-link){transition:none}#main :is(.button,.text-link):hover{transform:none}}
@media(min-width:761px){
 .artist-edge-flow .artist-edge-block{margin-left:var(--artist-edge-offset,0px)}
 .artist-edge-flow .artist-edge-shaped{display:flow-root;text-align:left;text-wrap:pretty}
 .artist-edge-flow .artist-edge-shaped::before{content:'';display:block;float:left;width:var(--artist-edge-width,0px);height:var(--artist-edge-height,0px);shape-outside:var(--artist-edge-shape);pointer-events:none}
 .artist-edge-flow h1.artist-edge-block{transform:none;overflow-wrap:anywhere}
 .image-text-flow{display:flow-root;min-width:0}
 .image-text-flow::before{content:'';display:block;width:var(--flow-width);height:var(--flow-height);shape-outside:var(--flow-shape);pointer-events:none}
 .image-text-flow.flow-left::before{float:left}
 .image-text-flow.flow-right::before{float:right}
 .detail-heading.image-text-flow>.button{margin-top:8px}
 .detail-heading.image-text-flow>.eyebrow{margin-top:0}
 .image-text-flow :is(h1,h2,p){text-align:left;text-wrap:pretty}
 .image-text-flow :is(h1,h2){overflow-wrap:anywhere}
 .artist-bio.image-text-flow>.socials,.artist-bio.image-text-flow>.artist-projects{display:block}
 .artist-bio.image-text-flow>.socials>a,.artist-bio.image-text-flow>.artist-projects>a{margin-right:24px;margin-bottom:12px;vertical-align:middle}
 .artist-bio.image-text-flow>.artist-projects>h2{margin-bottom:18px}
}

/* Compact page openings without shrinking the readable body text. */
.header{height:106px}
.header .brand-logo img{width:88px;height:88px}
.page-title{padding-top:28px;padding-bottom:30px}
.page-heading-brand{grid-template-columns:minmax(0,1fr) 160px;gap:28px}
.page-heading-brand>.logo-home-link,.page-heading-mark{max-width:140px}
.page-title h1{font-size:56px;line-height:1.18}
.page-title .eyebrow{margin-bottom:12px}
.page-title .page-heading-copy>p:not(.eyebrow){margin-top:12px}
.artist.section{padding-top:42px;padding-bottom:46px}
.detail-hero{padding-top:32px;padding-bottom:32px}
.venue-link{font-weight:700}
@media(min-width:761px) and (max-width:1099px){
 .header{height:98px}
 .header .brand-logo img{width:80px;height:80px}
 .page-title h1{font-size:48px}
 .page-heading-brand{grid-template-columns:minmax(0,1fr) 130px;gap:22px}
 .page-heading-brand>.logo-home-link,.page-heading-mark{max-width:120px}
}
@media(max-width:760px){
 .header{height:86px}
 .header .brand-logo img{width:72px;height:72px}
 .header nav{top:86px;max-height:calc(100svh - 86px)}
 .page-title{padding-top:22px;padding-bottom:26px}
 .page-title h1{font-size:40px;line-height:1.2}
 .page-heading-brand{grid-template-columns:minmax(0,1fr) 80px;gap:12px}
 .page-heading-brand>.logo-home-link,.page-heading-mark{max-width:80px}
 .page-title .page-heading-copy>.eyebrow{margin-bottom:0}
 .artist.section{padding-top:28px;padding-bottom:34px}
 .detail-hero{padding-top:24px;padding-bottom:28px}
 .venue-link{align-items:baseline}
}
@media(max-width:359px){.page-title h1{font-size:36px}}
:root{--site-menu-height:106px}
html{scroll-padding-top:calc(var(--site-menu-height) + 16px)}
.header{position:sticky;top:0;z-index:40;height:var(--site-menu-height)}
@media(min-width:761px){
 #main[data-section=formations]>.detail-layout>.sidebar{position:sticky;align-self:start}
 #main .detail-layout>.sidebar{top:calc(var(--site-menu-height) + 24px);max-height:calc(100svh - var(--site-menu-height) - 48px);overflow-y:auto}
 #main .artist-visual{position:sticky;align-self:start;top:calc(var(--site-menu-height) + 24px)}
}
@media(min-width:761px) and (max-width:1099px){:root{--site-menu-height:98px}}
@media(max-width:760px){:root{--site-menu-height:86px}.header nav{top:var(--site-menu-height);max-height:calc(100svh - var(--site-menu-height))}}
:root{--site-menu-height:53px}
.header>.brand-logo{display:none}
.header{justify-content:center}
.header nav{margin:0 auto}
.hero-carousel .carousel-slide.is-logo,.hero-opening:not(.with-carousel){background:#151715}
.hero-opening:not(.with-carousel)::after{background:transparent}
.hero-opening:not(.with-carousel) .hero-brand{visibility:hidden}
.hero-opening:not(.with-carousel) .hero-content{color:#fff}
#main .hero-opening:not(.with-carousel)>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:64px 32px 115px;transform:none}
.hero:has(.carousel-slide.is-logo.is-active)::after{background:transparent}
.hero:has(.carousel-slide.is-logo.is-active) .hero-content,.hero:has(.carousel-slide.is-logo.is-active) .hero-content>.eyebrow{color:#fff}
.hero:has(.carousel-slide.is-logo.is-active) .hero-content p{text-shadow:none}
#main .hero:has(.carousel-slide.is-logo.is-active) .button:not(.red){color:#fff;border-bottom-color:var(--yellow)}
#main .hero:has(.carousel-slide.is-logo.is-active) .button:not(.red):hover{color:var(--yellow)}
.hero-carousel .carousel-slide.is-logo img{padding:64px 32px 115px}
.hero h1.hero-brand,.hero.has-parallax h1.hero-brand{rotate:-6deg;transform-origin:center}
.hero:has(.carousel-slide.is-logo.is-active) .carousel-controls img{filter:invert(1)}
.hero:has(.carousel-slide.is-logo.is-active) .carousel-counter{color:#fff;text-shadow:none}
.hero:has(.carousel-slide.is-logo.is-active) .carousel-dots button::after{background:#fff}
@media(min-width:761px){
 .header nav>a,.header .nav-company>a{padding-top:4px;padding-bottom:4px;min-height:44px}
 .header nav a{font-size:26px}
}
@media(min-width:761px) and (max-width:1099px){:root{--site-menu-height:49px}.header nav a{font-size:22px}#main[data-section=formations]>.detail-layout{grid-template-columns:minmax(0,1fr) minmax(230px,.65fr);gap:32px}}
@media(max-width:760px){
 :root{--site-menu-height:44px}
 .header{justify-content:flex-end}
 .header .menu-toggle{width:44px;height:44px}
 .hero h1.hero-brand,.hero.has-parallax h1.hero-brand{rotate:-4deg}
 #main .hero-carousel .carousel-slide.is-logo img,#main .hero.has-parallax .hero-carousel .carousel-slide.is-logo img{position:static;display:block;width:min(240px,72%);height:auto;aspect-ratio:1;max-height:240px;margin:70px auto 0;padding:0;object-fit:contain}
 #main .hero-opening:not(.with-carousel)>img{inset:70px 0 auto;width:min(240px,72%);height:240px;margin:0 auto;padding:0}
}
.header>.brand-logo{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;transform:none}
.header>.brand-logo>img{display:block;width:40px;height:40px;object-fit:contain}
.footer-top p.slogan-single-line{display:flex;align-items:center;justify-content:center;gap:0;white-space:nowrap;transform:rotate(-3deg);transform-origin:center}
.footer-top p.slogan-single-line br{display:none}
.footer-top .slogan-space{display:none;white-space:pre}
.footer-top .slogan-single-line .slogan-space{display:inline}
@media(max-width:760px){.header{justify-content:space-between}.header>.brand-logo>img{width:36px;height:36px}.footer-top p.slogan-single-line{justify-content:flex-start}}
