/* Approved paper/photo direction. Artwork never determines layout geometry.
   Layout-contract.css remains last and owns spacing, controls, cards and belts. */
.training-site main h1:not(#hero-title){position:relative;isolation:isolate}
.training-site main h1:not(#hero-title)::after{
 content:"";position:absolute;left:0;bottom:-9px;width:min(300px,4.5em,78%);height:18px;z-index:-1;pointer-events:none;
 background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 18'%3E%3Cpath d='M4 9Q145 -2 294 7' fill='none' stroke='%23ffbc00' stroke-width='7' stroke-linecap='round'/%3E%3Cpath d='M17 16Q152 3 292 11' fill='none' stroke='%23ffbc00' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") left center/100% 100% no-repeat;
}
.training-site figure.brand-photo,.training-site .path-photo{position:relative;isolation:isolate;background:transparent;overflow:visible}
.training-site figure.brand-photo::before,.training-site .path-photo::before{
 content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
 background:transparent url('/assets/brand-paper-landscape-v2.webp') center/100% 100% no-repeat;
}
.training-site figure.brand-photo img,.training-site .path-photo img{position:relative;z-index:1;filter:none;mix-blend-mode:normal;border-radius:0}
/* Hero collages share one scale system; the photography breaks beyond the paper. */
.training-site :is(.classes-photo.brand-approved-composition,figure.brand-private-art){aspect-ratio:var(--hero-frame-ratio,4/3)}
.training-site :is(.classes-photo.brand-approved-composition,figure.brand-private-art)::before{display:none}
.training-site .classes-photo.brand-approved-composition .classes-photo-surface{display:block;position:relative;aspect-ratio:4/3;min-height:0;background:transparent;z-index:1;overflow:visible}
.training-site :is(.classes-photo.brand-approved-composition,figure.brand-private-art) img{
 position:absolute;inset:auto;left:var(--hero-art-left,-34%);top:var(--hero-art-top,-12%);
 width:var(--hero-art-width,160%);max-width:none;height:auto;aspect-ratio:var(--hero-art-ratio,3/2);object-fit:contain;
 mask-image:none;-webkit-mask-image:none;clip-path:none;transform:none;
}
.training-site figure.brand-private-art{--hero-frame-ratio:3/4;--hero-art-ratio:4/5;--hero-art-width:110%;--hero-art-left:-5%;--hero-art-top:-4%}
/* Coach portrait: retain the original photograph inside an offset paper frame. */
.training-site figure.brand-justin{aspect-ratio:3/4}
.training-site figure.brand-justin::before{inset:-2% -4% -3% -5%;background-image:url('/assets/brand-paper-portrait-v2.webp');transform:rotate(-3deg)}
.training-site figure.brand-justin img{
 clip-path:polygon(2% 1%,24% 0,48% 1%,72% 0,98% 1%,100% 26%,99% 50%,100% 74%,98% 99%,73% 100%,49% 99%,24% 100%,1% 99%,0 75%,1% 50%,0 26%);
 position:absolute;inset:3%;width:94%;height:94%;object-fit:cover;margin:0;
}
/* Home feature keeps a contextual photo, with paper around it rather than over it. */
.home-page .class-feature .brand-context-photo::after{display:none}
.training-site .path-photo.brand-context-photo::before{inset:-3% -3% -4%;transform:rotate(3deg)}
.training-site .path-photo.brand-context-photo img{width:94%;height:90%;margin:3%;object-fit:cover;clip-path:polygon(0 1%,24% 0,50% 1%,75% 0,100% 1%,99% 50%,100% 99%,75% 100%,50% 99%,25% 100%,0 99%,1% 50%)}
/* Two supporting home cards use distinct paper placement and full-size source cutouts. */
.training-site .brand-card-nataliia::before{inset:8% 0 0;background-image:url('/assets/brand-paper-landscape-v2.webp');transform:rotate(5deg)}
.training-site .brand-card-partner::before{inset:0 7% 0 2%;background-image:url('/assets/brand-paper-portrait-v2.webp');transform:rotate(-6deg)}
.training-site .path-photo.brand-card-nataliia img{mask-image:url('/assets/brand-mask-nataliia.png');-webkit-mask-image:url('/assets/brand-mask-nataliia.png');mask-size:cover;-webkit-mask-size:cover;mask-position:50% 12%;-webkit-mask-position:50% 12%;object-position:50% 12%}
.training-site .path-photo.brand-card-partner img{mask-image:url('/assets/brand-mask-partner.png');-webkit-mask-image:url('/assets/brand-mask-partner.png');mask-size:cover;-webkit-mask-size:cover;mask-position:50% 0%;-webkit-mask-position:50% 0%;object-position:50% 0%}
/* Workshops: a paper-framed full photograph, a warm photographic cutout, and
   documentary training. Different backgrounds; one coherent material language. */
.training-site .wk-gallery figure{position:relative;isolation:isolate;background:transparent;overflow:visible}
.training-site .wk-gallery figure::before{content:"";position:absolute;inset:-2% -1%;z-index:0;background:url('/assets/brand-paper-portrait-v2.webp') center/100% 100% no-repeat;pointer-events:none}
.training-site .wk-gallery figure:first-child::before{transform:rotate(-4deg)}
.training-site .wk-gallery figure:last-child::before{background-image:url('/assets/brand-paper-landscape-v2.webp');transform:rotate(5deg)}
.training-site .wk-gallery figure:not(.brand-photo)>img{position:relative;z-index:1;width:92%;height:92%;margin:4%;filter:none;mix-blend-mode:normal;clip-path:polygon(1% 0,25% 1%,50% 0,75% 1%,99% 0,100% 50%,99% 100%,75% 99%,50% 100%,25% 99%,1% 100%,0 50%)}
.training-site .wk-gallery figure.brand-partner::before{inset:-3% -1%;transform:rotate(4deg)}
.training-site .wk-gallery figure.brand-partner img{width:100%;height:100%;object-fit:cover;object-position:center top;mask-image:url('/assets/brand-mask-partner.png');-webkit-mask-image:url('/assets/brand-mask-partner.png');mask-size:cover;-webkit-mask-size:cover;mask-position:center top;-webkit-mask-position:center top;filter:none;mix-blend-mode:normal}
/* Documentary photo frames: real colour photography over visible generated paper.
   Named variants change paper orientation, never the photo or card geometry. */
.training-site :is(.class-training-photo,.group-workshop-photo){
 position:relative;isolation:isolate;background:transparent;overflow:visible;
 --photo-left:7%;--photo-top:6%;--paper-turn:-2deg;--paper-flip:1;
}
.training-site :is(.class-training-photo,.group-workshop-photo)::before{
 content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
 background:url('/assets/brand-paper-landscape-v2.webp') center/100% 100% no-repeat;
 transform:rotate(var(--paper-turn)) scaleX(var(--paper-flip));
}
.training-site :is(.class-training-photo,.group-workshop-photo)>img{
 position:absolute;z-index:1;left:var(--photo-left);top:var(--photo-top);
 width:90%;height:90%;max-width:none;margin:0;object-fit:cover;
 filter:none;mix-blend-mode:normal;
 clip-path:polygon(0 1%,24% 0,49% 1%,74% 0,100% 1%,99% 50%,100% 99%,74% 100%,49% 99%,24% 100%,0 99%,1% 50%);
}
.training-site .adult-training-photo{--photo-left:3%;--paper-turn:2deg;--paper-flip:-1}
.training-site .group-workshop-photo{--photo-left:4%;--photo-top:8%;--paper-turn:178deg}
/* Practical information gets the same materials in small, quiet doses. */
.training-site .parent-quote{position:relative}
.training-site .parent-quote::before{content:"";position:absolute;left:-4px;top:2%;height:96%;width:6px;background:var(--gf-yellow);transform:rotate(-1deg);pointer-events:none}
.training-site .faq-column summary::marker{color:var(--gf-yellow)}
@media(max-width:1050px) and (min-width:761px){.training-site :is(.classes-photo.brand-approved-composition,figure.brand-private-art) img{width:120%;left:-10%;top:0}}
@media(max-width:760px){
 .training-site :is(.classes-photo.brand-approved-composition,figure.brand-private-art) img{width:110%;left:-5%;top:0}
 .training-site main h1:not(#hero-title)::after{height:13px;bottom:-7px;width:min(230px,4.1em,74%)}
}

/* Natural source colour wins over the legacy photo wash, including galleries.
   Paper is a separate layer behind each photograph, never a multiply overlay. */
.training-site :is(.path-photo,.offer-photo,.coach-photo,.wk-gallery figure,.class-training-photo,.core-photo,.group-workshop-photo){background:transparent}
.training-site :is(.path-photo,.offer-photo,.coach-photo,.wk-gallery figure,.class-training-photo,.core-photo,.group-workshop-photo)>img{filter:none;mix-blend-mode:normal}
