/* Shared chapter rhythm, without changing editable text or its CMS keys. */
:root{--heading-page:clamp(40px,5vw,68px);--heading-section:clamp(30px,3.2vw,42px);--heading-subsection:clamp(24px,2.4vw,28px)}
#main :is(h1,h2,h3,h4){font-family:'Atelier Hand',Georgia,serif;font-weight:700;font-style:normal;letter-spacing:0;line-height:1.2;overflow-wrap:break-word;text-wrap:pretty}
#main h2{font-size:var(--heading-section)}
#main h3{font-size:var(--heading-subsection)}
#main h4{font-size:22px}
#main :is(.page-title,.detail-heading,.artist-bio) h1{font-size:var(--heading-page);line-height:1.1}
#main :is(.section-head,.related-artists,.team-preview) h2{font-size:var(--heading-section)}
#main :is(.sidebar,.contact-side,.cms-rates) h2,#main h2.cms-rate-quote{font-size:var(--chapter-size,36px);margin-block:var(--editorial-gap,34px) 18px}
#main :is(.project-meta,.person-row) h3{font-size:var(--heading-subsection)}
#main .cms-rate-quote{color:var(--ink);max-inline-size:100%;width:fit-content}

.prose>h2,.ehpad-page .ehpad-chapter>h2{color:var(--ink);font-family:'Atelier Hand',Georgia,serif;font-style:normal;font-weight:700;line-height:1.2}
.prose>h2:nth-of-type(even),.ehpad-page .ehpad-chapter:nth-child(even)>h2{color:var(--red)}
.sessions .session{border-bottom:1px solid var(--line);gap:12px 28px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
.sessions .session strong{font-family:'Source Sans 3',Arial,sans-serif;font-size:23px;font-weight:600;line-height:1.4;color:var(--ink);padding-left:16px;border-left:3px solid var(--red);overflow-wrap:anywhere}
.sessions .session:nth-child(even) strong{border-left-color:var(--leaf)}
.sessions .session span{font-size:18px;line-height:1.5}
@media(max-width:760px){.sessions .session{grid-template-columns:minmax(0,1fr);gap:10px}.sessions .session strong{font-size:21px}.sessions .session span{padding-left:19px}}

/* One reading scale for public pages; galleries and interactive scenes keep their layout. */
:root{--reading-size:20px;--reading-leading:var(--golden-ratio,1.618);--reading-measure:66ch;--chapter-size:var(--heading-section);--editorial-gap:var(--gold-space-xl,34px)}
#main :is(.prose,.artist-bio){font-family:var(--body-font);font-size:var(--reading-size);line-height:var(--reading-leading);min-width:0}
#main :is(.prose,.artist-bio)>p:not(.eyebrow,.caption),#main .ehpad-chapter-copy>p,#main .cms-rich-content>p{font-size:var(--reading-size);line-height:var(--reading-leading);max-inline-size:var(--reading-measure);overflow-wrap:break-word}
#main .prose>p,#main .ehpad-chapter-copy>p,#main .cms-rich-content>p{margin-block:0 22px}
#main .prose>p+p,#main .artist-bio>p+p{margin-top:0}
#main :is(.prose,.artist-bio) h2{font-family:'Atelier Hand',Georgia,serif;font-size:var(--chapter-size);font-weight:700;font-style:normal;line-height:1.2;text-wrap:pretty;overflow-wrap:break-word;letter-spacing:0;margin-block:var(--editorial-gap) 18px}
#main :is(.prose,.artist-bio)>h2:first-child{margin-top:0}
#main :is(.prose,.artist-bio) h3{font-family:'Atelier Hand',Georgia,serif;font-size:var(--heading-subsection);line-height:1.25;margin-block:28px 12px}
#main :is(.prose,.artist-bio) :is(ul,ol){max-inline-size:var(--reading-measure);padding-inline-start:24px;line-height:var(--reading-leading)}
#main :is(.prose,.artist-bio) li+li{margin-top:8px}
#main :is(.prose,.artist-bio) p:last-child{margin-bottom:0}
#main :is(.page-title,.detail-heading) :is(h1,p),#main :is(.sidebar,.contact-side){min-width:0;overflow-wrap:break-word}
#main :is(.sidebar,.contact-side) .button{max-width:100%;white-space:normal;gap:16px}
#main :is(.sidebar,.contact-side) .button>span{flex:none}
#main .sidebar h3{font-family:'Atelier Hand',Georgia,serif;font-size:var(--heading-subsection);line-height:1.2}
#main .legal :is(p,li){--reading-size:18px}
@media(max-width:760px){
 :root{--reading-size:18px;--chapter-size:var(--heading-section);--editorial-gap:28px}
 #main :is(.prose,.artist-bio) h3{font-size:var(--heading-subsection)}
 #main .prose>p,#main .ehpad-chapter-copy>p,#main .cms-rich-content>p{margin-bottom:18px}
}

/* EHPAD chapters form an unframed editorial sequence, not a wall of text. */
#main.ehpad-page .ehpad-layout{grid-template-columns:minmax(0,1fr) 270px;column-gap:var(--gold-space-2xl,55px);align-items:start}
#main.ehpad-page .ehpad-story{width:100%;max-width:none}
#main.ehpad-page .ehpad-story>.ehpad-chapter{padding-block:0 var(--editorial-gap);margin-block:0 var(--editorial-gap);border-bottom:1px solid var(--line)}
#main.ehpad-page .ehpad-chapter>h2{font-size:var(--chapter-size);line-height:1.2;margin:0 0 18px;text-wrap:pretty;overflow-wrap:normal}
#main.ehpad-page .ehpad-chapter-copy{min-width:0;max-width:var(--reading-measure)}
#main.ehpad-page .ehpad-chapter-copy>p:last-child{margin-bottom:0}
#main.ehpad-page .ehpad-story>.ehpad-chapter:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
#main.ehpad-page .ehpad-layout>.sidebar{border-left:0;border-top:2px solid var(--red);padding:22px 0 0}
#main.ehpad-page .ehpad-layout>.sidebar .button{font-size:22px;line-height:1.25;padding:14px 18px;width:100%;margin:12px 0 0}
#main.ehpad-page .ehpad-layout>.sidebar .cms-rates{margin-top:20px}
@media(min-width:1200px){
 #main.ehpad-page .ehpad-chapter{display:grid;grid-template-columns:190px minmax(0,1fr);gap:var(--editorial-gap);align-items:start}
 #main.ehpad-page .ehpad-chapter>h2{font-size:var(--heading-section);margin:0}
}
@media(min-width:761px) and (max-width:1099px){#main.ehpad-page .ehpad-layout{grid-template-columns:minmax(0,1fr) 235px;column-gap:var(--editorial-gap)}}
@media(max-width:760px){
 #main.ehpad-page .ehpad-layout{grid-template-columns:minmax(0,1fr);gap:var(--editorial-gap)}
 #main.ehpad-page .ehpad-layout>.sidebar{grid-row:auto}
 #main.ehpad-page .ehpad-chapter>h2{font-size:var(--heading-section)}
}

/* Public module contract: one reading rhythm, action style and chapter hierarchy. */
:root{--module-gap:clamp(24px,3vw,40px);--action-size:clamp(24px,2vw,26px)}
#main :is(.section-head,.project-agenda,.project-credits,.cms-rates,.related-artists,.team-preview,.training-band,.care-band,.company-band) h2{font-size:var(--heading-section);line-height:1.2;font-style:normal}
#main :is(.project-agenda,.sidebar,.contact-side) h3{font-size:var(--heading-subsection);line-height:1.25}
#main .project-agenda h4{font-size:22px;line-height:1.3}
#main .section-head{gap:16px 28px;align-items:baseline;margin-bottom:var(--module-gap)}
#main .section-head h2{margin-block:0}
#main :is(.sidebar,.contact-side){font-family:var(--body-font);font-size:18px;line-height:1.6;min-width:0}
#main :is(.sidebar,.contact-side)>h3{margin-block:0 16px}
#main :is(.sidebar,.contact-side) p{margin-block:0 16px;overflow-wrap:break-word}
#main :is(.sidebar,.contact-side) dl{margin-block:0 24px}
#main :is(.sidebar,.contact-side) dd{margin-inline:0;overflow-wrap:anywhere}
#main :is(.sidebar,.contact-side) dt{margin-top:16px;line-height:1.4}
#main :is(.prose,.artist-bio,.ehpad-story,.sidebar,.contact-side,.cms-rates,.project-credits,.project-agenda){min-width:0}
#main .cms-rates{gap:14px;margin-block:var(--module-gap);align-items:flex-start}
#main .cms-rates>h2{margin:0;max-width:100%}
#main .cms-rate-quote+.cms-rates{margin-top:0}
#main :is(.project-card,.person-row) p{font-family:var(--body-font);font-size:18px;line-height:1.5}
#main .tags{gap:8px;flex-wrap:wrap;line-height:1.4}
#main .tags>span{font-family:var(--body-font);font-size:16px;line-height:1.4;max-width:100%;overflow-wrap:break-word}

/* Secondary actions are underlined text. Only filled actions keep a paper silhouette. */
#main :is(.button,.text-link),#main.ehpad-page .ehpad-layout>.sidebar .button{font-size:var(--action-size);line-height:1.25;min-height:48px;gap:14px}
#main :is(.text-link,.button:not(.red)){position:relative;clip-path:none;rotate:none;overflow:visible;border:0;border-radius:0;background:transparent;padding:7px 0 9px;width:fit-content;max-width:100%;text-decoration:none;isolation:auto}
#main:has(>.hero.hero-opening) .button:not(.red),#main:has(>.hero.hero-opening) .button:not(.red):hover{clip-path:none}
#main.ehpad-page .ehpad-layout>.sidebar .button:not(.red){padding:7px 0 9px;width:fit-content}
#main :is(.text-link,.button:not(.red))::after{content:'';position:absolute;left:0;right:0;bottom:2px;height:var(--title-stroke-weight,2.5px);background:var(--underline-color);opacity:var(--title-stroke-opacity,.65);clip-path:var(--title-stroke-shape,polygon(0 50%,24% 20%,60% 30%,100% 47%,100% 60%,62% 85%,25% 76%,0 62%));transform:rotate(var(--title-stroke-angle,-.15deg));transform-origin:center;pointer-events:none}
#main .hero :is(.text-link,.button:not(.red))::after{background:var(--yellow)}
#main :is(.text-link,.button:not(.red)):focus-visible{outline:2px solid var(--leaf);outline-offset:4px;box-shadow:none}
#main .hero :is(.text-link,.button:not(.red)):focus-visible{outline-color:var(--yellow)}
#main :is(.button,.text-link)>span[aria-hidden=true]{align-self:center;flex:none;font-size:1em;line-height:1}
#main :is(.gallery-arrow,.carousel-arrow,.carousel-controls button){min-width:44px;min-height:44px}

/* Chapters read in the same order as the other project pages, without a narrow title rail. */
@media(min-width:1200px){
 #main.ehpad-page .ehpad-chapter{display:block}
 #main.ehpad-page .ehpad-chapter>h2{margin:0 0 18px;max-width:var(--reading-measure)}
}
@media(max-width:760px){
 #main .section-head{align-items:flex-start}
 #main .section-head>.text-link{margin-inline-start:0}
 #main :is(.sidebar,.contact-side){font-size:18px}
}
@media(prefers-reduced-motion:reduce){#main :is(.button,.text-link){transition:none}}

/* Each editorial column starts with ink, then alternates with the brand red. */
#main h2[data-heading-tone][data-heading-tone=dark]{color:var(--ink)}
#main h2[data-heading-tone][data-heading-tone=accent]{color:var(--red)}
