/* A shared rhythm of ink and light grey for Le suivi and Qui suis-je. */
.performance-page,.profile-page{--surface:#f2f2ef;--text:#141414;--copy:#484848;--gold:#766019;--rule:#cfceca;background:var(--surface);color:var(--text);font-size:19px;line-height:1.65}
.surface-mist{--surface:#f2f2ef;--text:#141414;--copy:#484848;--gold:#766019;--rule:#cfceca;background:var(--surface);color:var(--text)}
.surface-ink{--surface:#111;--text:#fff;--copy:#e5e5e5;--gold:#d2b74b;--rule:#4b4b4b;background:var(--surface);color:var(--text)}
.performance-page p,.profile-page p{color:var(--copy)}
.performance-page h1,.performance-page h2,.performance-page h3,.profile-page h1,.profile-page h2,.profile-page h3{color:var(--text)}
.performance-page .eyebrow,.profile-page .eyebrow{font-size:14px;line-height:1.6;letter-spacing:.08em;color:var(--gold)}
.performance-intro,.profile-intro{padding-block:60px 48px}
.performance-intro h1,.profile-intro h1{font-size:clamp(47px,5.3vw,78px);line-height:1.08;letter-spacing:-.045em;font-weight:600;margin-top:23px}
.performance-intro h1 em{color:var(--gold)}
.performance-lead{font-size:27px;line-height:1.5;max-width:840px;margin-top:27px}
.performance-intro>p:last-of-type{font-size:20px;line-height:1.65;max-width:780px;margin-top:18px}
.performance-page-nav{display:flex;flex-wrap:wrap;gap:18px 34px;border-top:1px solid var(--rule);margin-top:34px;padding-top:22px}
.performance-page-nav a{display:flex;align-items:center;gap:22px;padding-block:9px;font-size:18px;line-height:1.5}
.performance-page-nav a:hover,.performance-page-nav a span{color:var(--gold)}
.performance-statement{padding-block:60px}
.performance-statement-inner{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.performance-statement h2{font-size:clamp(30px,3.5vw,50px);font-weight:700;line-height:1.13;letter-spacing:-.03em}
.performance-statement p:not(.eyebrow){font-size:21px;line-height:1.65;margin-top:24px;max-width:470px}
.performance-expertise{margin-top:30px;padding-top:28px;border-top:1px solid var(--rule)}
.performance-expertise h3{font-size:30px;line-height:1.2;font-weight:700;letter-spacing:-.025em;color:var(--gold)}
.performance-expertise p:not(.eyebrow){margin-top:18px}
.performance-section{padding-block:75px;scroll-margin-top:140px}
.performance-section-heading{max-width:830px;margin-bottom:37px}
.performance-section-heading h2{font-size:clamp(36px,3.6vw,52px);line-height:1.13;letter-spacing:-.035em;font-weight:600;margin-top:20px}
.performance-section-heading>p:not(.eyebrow){font-size:20px;line-height:1.65;max-width:750px;margin-top:23px}
.performance-audiences{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
.performance-audiences article{border-top:2px solid #bfa434;padding-top:23px}
.performance-index{display:block;font-size:15px;line-height:1.5;letter-spacing:.04em;font-weight:600;color:var(--gold)}
.performance-audiences h3,.profile-values h3{font-size:28px;line-height:1.2;letter-spacing:-.025em;font-weight:600;margin-block:18px 16px}
.performance-audiences p,.profile-values p{font-size:19px;line-height:1.65}
.performance-purpose,.profile-vision{padding-block:65px;scroll-margin-top:140px}
.performance-purpose-inner{display:grid;grid-template-columns:1fr 1.3fr;gap:65px;align-items:start}
.performance-purpose-inner .performance-section-heading{margin-bottom:0}
.performance-purpose-copy{padding-top:5px}
.performance-purpose-copy p{font-size:23px;line-height:1.65;max-width:720px;margin-bottom:24px}
.performance-purpose-copy p:last-child{margin-bottom:0}
.performance-purpose-copy strong{font-weight:600;color:var(--gold)}
.performance-method{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:start}
.performance-method .performance-section-heading{margin-bottom:26px}
.performance-method figure{margin-top:7px}
.performance-method-steps{list-style:none;margin:0;padding:0}
.performance-method-steps li{display:flex;gap:22px;border-top:1px solid var(--rule);padding-block:24px}
.performance-method-steps li>span{font-size:16px;font-weight:600;color:var(--gold);padding-top:4px}
.performance-method-steps h3{font-size:27px;line-height:1.25;letter-spacing:-.025em;font-weight:600;margin-bottom:13px}
.performance-method-steps p{font-size:19px;line-height:1.65}
.performance-method-steps p+p{margin-top:16px}
.performance-formula-note{font-size:17px;line-height:1.6;margin-top:8px}
.performance-page .button,.profile-page .button{font-size:18px;line-height:1.45;min-height:54px;gap:25px}
.performance-page .button-outline,.profile-page .button-outline{background:transparent;color:var(--text);border-color:#a18b3d}
.performance-page .button-outline:hover,.profile-page .button-outline:hover{background:#bfa434;color:#000;border-color:#bfa434}
.performance-method .button{margin-top:24px}
.performance-page .text-link,.profile-page .text-link{color:var(--text);border-color:var(--rule);font-size:18px;line-height:1.5}
.performance-page .text-link:hover,.profile-page .text-link:hover{color:var(--gold);border-color:var(--gold)}
.performance-nolio{padding-block:65px;scroll-margin-top:140px}
.nolio-workflow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
.nolio-workflow article{padding-top:25px;border-top:1px solid var(--rule)}
.nolio-workflow h3{font-size:28px;line-height:1.25;font-weight:600;letter-spacing:-.025em;margin-block:18px 16px}
.nolio-workflow p{font-size:19px;line-height:1.65}
.nolio-section-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--rule);margin-top:37px;padding-top:28px}
.nolio-section-bottom p{font-size:17px;line-height:1.65;max-width:590px}
.nolio-section-bottom .button{flex-shrink:0}
.performance-coach-link{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:27px;align-items:center;border-bottom:1px solid var(--rule);padding-block:35px}
.performance-coach-link>img{width:86px;height:86px;object-fit:cover;object-position:center 25%;border-radius:50%;-webkit-mask-image:radial-gradient(circle,#000 67%,transparent 73%);mask-image:radial-gradient(circle,#000 67%,transparent 73%)}
.performance-coach-link h2{font-size:31px;line-height:1.2;font-weight:600;margin-top:9px}
.performance-coach-link p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:620px;margin-top:10px}
.performance-page .closing-description,.profile-page .closing-description{font-size:18px;line-height:1.65}
.performance-page .closing .eyebrow,.profile-page .closing .eyebrow{font-size:14px;letter-spacing:.06em}
.performance-page .closing .button,.profile-page .closing .button{background:#111;color:#fff;border-color:#111}
.performance-page .closing .button:hover,.profile-page .closing .button:hover{background:#bfa434;color:#000;border-color:#bfa434}
/* Subtle edge fades inherit the colour of the surrounding section. */
.performance-photo{min-width:0;background:var(--surface)}
.performance-photo-frame{position:relative;display:block;isolation:isolate;overflow:hidden;background:var(--surface)}
.performance-photo-frame img{display:block;width:100%;height:auto}
.performance-photo-frame:after{content:"";position:absolute;inset:-1px;pointer-events:none;background:linear-gradient(90deg,var(--surface) 0%,transparent 2.5%,transparent 97.5%,var(--surface) 100%),linear-gradient(0deg,var(--surface) 0%,transparent 4%,transparent 98%,var(--surface) 100%)}
.performance-photo figcaption{color:var(--copy);font-size:16px;line-height:1.6;margin-top:13px}
.profile-intro .performance-lead{font-size:25px}
.profile-story-section{padding-block:65px;scroll-margin-top:140px}
.profile-story{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}
.profile-story .performance-photo{max-width:460px;width:100%}
.profile-story .performance-photo-frame img{aspect-ratio:4/5;object-fit:cover;object-position:center 30%}
.profile-story h2{font-size:clamp(34px,3vw,45px);line-height:1.15;font-weight:600;margin-block:20px 25px}
.profile-story p:not(.eyebrow){font-size:20px;line-height:1.7;margin-bottom:22px}
.profile-qualification{border-left:3px solid #bfa434;padding-left:21px}
.profile-story .button{margin-top:5px}
.profile-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.profile-values article{border-top:1px solid var(--rule);padding-top:10px}
.profile-gallery{columns:3;column-gap:20px}
.profile-gallery-photo{break-inside:avoid;margin:0 0 20px;min-width:0}
.profile-gallery-photo .performance-photo-frame{cursor:zoom-in}
.profile-gallery-photo .performance-photo-frame:after{background:linear-gradient(90deg,var(--surface) 0%,transparent 2.5%,transparent 97.5%,var(--surface) 100%),linear-gradient(0deg,var(--surface) 0%,transparent 4%,transparent 98%,var(--surface) 100%)}
.profile-gallery-photo a:focus-visible{outline:3px solid #766019;outline-offset:3px}
.profile-return{margin-top:30px}
.nolio-screens{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 28px;margin-top:45px}
.nolio-screen{min-width:0;margin:0}
.nolio-screen-planning{grid-column:1/-1}
.nolio-screen>a{display:block;position:relative;background:#fff;border:1px solid #6b6b6b;border-radius:6px;overflow:hidden;cursor:zoom-in}
.nolio-screen img{display:block;width:100%;height:auto}
.nolio-screen>a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.screen-expand{display:block;background:#232323;color:#fff;font-size:16px;line-height:1.5;text-align:right;padding:10px 18px;border-top:1px solid #4b4b4b}
.nolio-screen figcaption{padding-top:19px}
.nolio-screen h3{font-size:26px;font-weight:600;letter-spacing:-.02em;line-height:1.3}
.nolio-screen p{font-size:18px;line-height:1.6;margin-top:9px;max-width:750px}
.profile-trainer-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px}
.profile-trainer-intro .performance-section-heading{margin-bottom:0}
.trainer-class figcaption{font-size:18px}
.local-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;justify-items:center}
.trainer-videos{margin-top:44px}
.local-video-card{min-width:0;background:var(--surface);border-top:1px solid var(--rule);padding-top:22px}
.local-video-card.portrait{width:100%;max-width:380px}
.local-video-card video{display:block;width:100%;height:auto;object-fit:contain;background:#171717;border-radius:3px}
.local-video-card figcaption{padding:20px 0 5px}
.local-video-card h3{font-size:28px;line-height:1.3;letter-spacing:-.02em;font-weight:600}
.local-video-card p{font-size:18px;line-height:1.65;margin-top:10px}
.practice-videos{margin-bottom:48px}
@media(max-width:850px){
 .profile-trainer-intro{grid-template-columns:1fr;gap:30px}
 .trainer-class{max-width:700px}
}
@media(max-width:700px){
 .nolio-screens{grid-template-columns:1fr;gap:30px;margin-top:33px}
 .nolio-screen-planning{grid-column:auto}
 .nolio-screen h3{font-size:25px}.screen-expand{font-size:16px;padding:9px 14px}
 .local-video-grid{grid-template-columns:1fr;gap:30px}
 .local-video-card h3{font-size:27px}
 .trainer-videos{margin-top:32px}.practice-videos{margin-bottom:35px}
}
@media(max-width:1100px){
 .performance-statement-inner{gap:38px}.performance-method{gap:40px}.performance-audiences{gap:25px}.profile-story{gap:45px}
 .performance-coach-link{grid-template-columns:75px minmax(0,1fr)}.performance-coach-link .text-link{grid-column:2;justify-self:start}
 .nolio-section-bottom{align-items:flex-start;flex-direction:column}.nolio-workflow{gap:25px}
}
@media(max-width:900px){.profile-gallery{columns:2}}
@media(max-width:850px){
 .performance-audiences,.profile-values{grid-template-columns:1fr;gap:30px}.performance-audiences p,.profile-values p{max-width:680px}
 .performance-purpose-inner{grid-template-columns:1fr;gap:26px}.performance-method{grid-template-columns:1fr;gap:35px}.performance-method figure{max-width:650px}
 .nolio-workflow{grid-template-columns:1fr;gap:30px}.nolio-workflow p{max-width:680px}
 .profile-story{grid-template-columns:1fr;gap:35px}.profile-story .performance-photo{max-width:400px}
}
@media(max-width:700px){
 .performance-intro,.profile-intro{padding-block:37px 35px}.performance-intro h1,.profile-intro h1{font-size:clamp(41px,9.1vw,58px);line-height:1.08;margin-top:20px}
 .performance-page .eyebrow,.profile-page .eyebrow{font-size:13px;letter-spacing:.07em}
 .performance-lead,.profile-intro .performance-lead{font-size:23px;line-height:1.5;margin-top:23px}
 .performance-intro>p:last-of-type{font-size:19px;line-height:1.65}.performance-page-nav{gap:14px 25px;margin-top:27px;padding-top:19px}.performance-page-nav a{font-size:18px;gap:14px}
 .performance-statement{padding-block:38px}.performance-statement-inner{grid-template-columns:1fr;gap:32px}.performance-statement h2{font-size:clamp(28px,7.3vw,45px)}.performance-statement p:not(.eyebrow){font-size:20px;margin-top:22px}
 .performance-expertise{margin-top:25px;padding-top:24px}.performance-expertise h3{font-size:28px}
 .performance-section{padding-block:48px;scroll-margin-top:125px}.performance-section-heading{margin-bottom:28px}.performance-section-heading h2{font-size:35px;line-height:1.15;margin-top:18px}.performance-section-heading>p:not(.eyebrow){font-size:19px;margin-top:20px}
 .performance-audiences h3,.profile-values h3{font-size:27px;line-height:1.25}.performance-audiences p,.profile-values p{font-size:19px;line-height:1.65}
 .performance-purpose,.profile-vision{padding-block:43px;scroll-margin-top:125px}.performance-purpose-copy p{font-size:21px;line-height:1.65}
 .performance-method{gap:30px}.performance-method-steps li{gap:17px;padding-block:23px}.performance-method-steps h3{font-size:26px}.performance-method-steps p{font-size:19px}
 .performance-page .button,.profile-page .button{font-size:18px;width:100%;gap:18px}
 .performance-nolio{padding-block:43px;scroll-margin-top:125px}.nolio-workflow h3{font-size:27px}.nolio-section-bottom{gap:23px;margin-top:30px;padding-top:24px}.nolio-section-bottom .button{flex-shrink:1;white-space:normal}
 .performance-coach-link{grid-template-columns:60px minmax(0,1fr);gap:18px;padding-block:29px}.performance-coach-link>img{width:60px;height:60px;align-self:start}.performance-coach-link h2{font-size:28px}.performance-coach-link .text-link{grid-column:1/-1}
 .profile-story-section{padding-block:43px}.profile-story{gap:30px}.profile-story .performance-photo{max-width:380px}.profile-story h2{font-size:33px;margin-block:18px 23px}.profile-story p:not(.eyebrow){font-size:19px;line-height:1.7}
 .profile-gallery{column-gap:12px}.profile-gallery-photo{margin-bottom:12px}
 .performance-photo-frame:after{background:linear-gradient(90deg,var(--surface) 0%,transparent 2.5%,transparent 97.5%,var(--surface) 100%),linear-gradient(0deg,var(--surface) 0%,transparent 4%,transparent 98%,var(--surface) 100%)}
}
