/* Labels stay above the field at rest, on focus and after typing. */
body .tlp-geo-people-form .wpcf7 .field > label,
body.page-id-17 main .forms .wpcf7 .field > label{display:block}
body .tlp-geo-people-form .wpcf7 .field .field__label,
body.page-id-17 main .forms .wpcf7 .field .field__label{position:static;display:block;transform:none;opacity:1;margin:0 0 9px;line-height:1.4;color:#17375c;font:400 16px/1.4 'League Spartan',sans-serif;transition:none;pointer-events:auto}
body .tlp-geo-people-form .wpcf7 input.wpcf7-text,
body .tlp-geo-people-form .wpcf7 textarea,
body.page-id-17 main .forms .wpcf7 input.wpcf7-text,
body.page-id-17 main .forms .wpcf7 textarea{box-sizing:border-box;display:block;width:100%;max-width:100%;min-height:52px;padding:14px 18px;border:1px solid #b9c5cf;border-radius:0;background:#fff;color:#17375c;font:400 17px/1.5 'League Spartan',sans-serif;text-indent:0}
body .tlp-geo-people-form .wpcf7 textarea,
body.page-id-17 main .forms .wpcf7 textarea{min-height:150px;resize:vertical}
body .tlp-geo-people-form .wpcf7 .field:not(.field--text):not(.field--submit){margin-bottom:22px}

/* A shared 6% bottom trim aligns the silhouettes; faces and the upper frame stay intact. */
/* One shared backdrop and overlapping original silhouettes, like the consultation popup. */
.tlp-team-gallery{position:relative;isolation:isolate;width:100%;max-width:1320px;margin:0 auto;padding:24px 22px 0;overflow:hidden;box-sizing:border-box;background:radial-gradient(ellipse at 50% 35%,#fff 0%,#f5f6f5 72%);border:0;border-radius:0;box-shadow:none}
.tlp-team-filters{position:absolute;pointer-events:none}
.tlp-team-group{display:grid;grid-template-columns:repeat(calc(var(--team-count)*2 + 2),minmax(0,1fr));align-items:end;isolation:isolate;margin-bottom:calc(-17.875% / (var(--team-count) + 1))}
.tlp-team-gallery .tlp-team-gallery-person{position:relative;display:block;grid-column:calc(var(--team-index)*2 - 1) / span 4;grid-row:1;min-width:0;width:100%;aspect-ratio:1205/1795;align-self:end;border:0;background:transparent;box-shadow:none;text-decoration:none;--team-layer:3;--team-depth:var(--team-layer);--team-transform:none}
.tlp-team-gallery .tlp-team-gallery-person:nth-child(even){--team-layer:2}
.tlp-team-gallery .tlp-team-gallery-person::before,.tlp-team-gallery .tlp-team-gallery-person::after{display:none}
.tlp-team-photo-edge,.tlp-team-photo-core,.tlp-team-photo-ears{position:absolute;inset:0;display:block;translate:0 var(--team-offset-y,0%);transform:var(--team-transform);transform-origin:center bottom;transition:transform .28s ease}
/* This portrait's trouser opening begins higher; lower it within the shared baseline. */
.tlp-team-gallery [data-person="emilia-wiecek-2"]{--team-offset-y:4%}
.tlp-team-photo-edge{z-index:calc(var(--team-depth)*2);mix-blend-mode:darken}
.tlp-team-photo-core{z-index:calc(var(--team-depth)*2 + 1);filter:url(#tlp-team-portrait-core)}
.tlp-team-photo-ears{z-index:calc(var(--team-depth)*2 + 2)}
.tlp-team-gallery .tlp-team-gallery-photo{display:block;width:100%;max-width:none;height:100%;object-fit:contain;object-position:center bottom;border:0;border-radius:0;box-shadow:none;margin:0;opacity:1;filter:none;mask-image:var(--team-mask);-webkit-mask-image:var(--team-mask);mask-mode:alpha;mask-size:100% 100%;mask-position:center bottom;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;-webkit-mask-position:center bottom;-webkit-mask-repeat:no-repeat}
.tlp-team-gallery [data-person="aleksandra-nocun-galas"] img{clip-path:url(#tlp-team-ola-upper-contour)}
.tlp-team-gallery .tlp-team-photo-ears img{mask-image:none;-webkit-mask-image:none;clip-path:url(#tlp-team-kacper-ears)}
.tlp-team-gallery .tlp-team-person-name{position:absolute;z-index:30;left:50%;bottom:12px;transform:translate(-50%,6px);padding:8px 12px;background:#17375c;color:#fff;font:400 15px/1.25 'League Spartan',sans-serif;text-align:center;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}
.tlp-team-gallery .tlp-team-gallery-person:focus-visible{outline:2px solid #a84323;outline-offset:2px;z-index:20}
.tlp-team-gallery .tlp-team-gallery-person:focus-visible .tlp-team-person-name{opacity:1;transform:translate(-50%,0)}
body.home main .team--v2:has(.tlp-team-gallery--home){background:#f5f6f5;padding-bottom:0}
body.home main .team--v2 .container--max:has(.tlp-team-gallery--home){margin-top:38px}
body.home main .team--v2 .container--max:has(.tlp-team-gallery--home)::before{display:none}
.tlp-team-gallery--contact{max-width:630px;padding:14px 0 0;background:radial-gradient(ellipse at 50% 30%,#fff 0%,#f4f6f7 75%)}
.tlp-team-gallery--contact .tlp-team-group{grid-template-columns:repeat(8,minmax(0,1fr));margin-bottom:-4.469%}
.tlp-team-gallery--contact .tlp-team-gallery-person{grid-column:calc(var(--team-small-col)) / span 4;grid-row:var(--team-small-row);margin-top:calc(var(--team-small-lift)*-55%);--team-depth:calc(var(--team-small-row)*4 + var(--team-layer))}
.tlp-geo-people-inner:has(>.tlp-team-gallery--contact){row-gap:38px;grid-template-rows:max-content auto}
.tlp-geo-people-inner:has(>.tlp-team-gallery--contact)>.tlp-geo-people-intro{grid-column:1;grid-row:1}
.tlp-geo-people-inner:has(>.tlp-team-gallery--contact)>.tlp-geo-people-form{grid-column:2;grid-row:1 / span 2}
.tlp-geo-people-inner>.tlp-team-gallery--contact{grid-column:1;grid-row:2;align-self:start;margin-top:0}
body.single-team .tlp-geo-people-intro .tlp-geo-people-photo{display:block;width:min(100%,330px);height:auto;aspect-ratio:1205/1795;object-fit:contain;border-radius:0;box-shadow:none;margin:36px 0 0}
@media(hover:hover) and (pointer:fine){.tlp-team-gallery-person:hover{--team-transform:scale(1.015)!important}.tlp-team-gallery-person:hover .tlp-team-person-name{opacity:1;transform:translate(-50%,0)}}
@media(max-width:1000px){
 .tlp-team-gallery--home{max-width:850px;padding:20px 18px 0}
 .tlp-team-gallery--home .tlp-team-group{grid-template-columns:repeat(14,minmax(0,1fr));margin-bottom:-2.554%}
 .tlp-team-gallery--home .tlp-team-gallery-person{grid-column:var(--team-mid-col) / span 4;grid-row:var(--team-mid-row);margin-top:calc(var(--team-mid-lift)*-55%);--team-depth:calc(var(--team-mid-row)*4 + var(--team-layer))}
 .tlp-team-gallery--home .tlp-team-gallery-person:nth-child(n+7){grid-column:calc(var(--team-mid-col) + 1) / span 4}
}
@media(max-width:900px){.tlp-geo-people-inner:has(>.tlp-team-gallery--contact)>.tlp-geo-people-form{grid-column:1;grid-row:2}.tlp-geo-people-inner>.tlp-team-gallery--contact{grid-row:3}}
@media(max-width:600px){
 .tlp-team-gallery--home{padding:14px 4px 0}
 .tlp-team-gallery--home .tlp-team-group{grid-template-columns:repeat(10,minmax(0,1fr));margin-bottom:-3.575%}
 .tlp-team-gallery--home .tlp-team-gallery-person,.tlp-team-gallery--home .tlp-team-gallery-person:nth-child(n+7){grid-column:var(--team-small-col) / span 4;grid-row:var(--team-small-row);margin-top:calc(var(--team-small-lift)*-48%);--team-depth:calc(var(--team-small-row)*4 + var(--team-layer))}
 .tlp-team-gallery--home .tlp-team-gallery-person:nth-child(n+9){grid-column:calc(var(--team-small-col) + 1) / span 4}
 .tlp-team-gallery .tlp-team-person-name{font-size:13px;max-width:170px;white-space:normal}
 .tlp-geo-people-inner:has(.tlp-team-gallery--contact){gap:36px}
}
@media(prefers-reduced-motion:reduce){.tlp-team-photo-edge,.tlp-team-photo-core,.tlp-team-photo-ears,.tlp-team-person-name{transition:none}.tlp-team-gallery-person:hover{--team-transform:none!important}}

/* Transparent photo margins must not intercept a neighbouring expert's link. */
.tlp-team-gallery-person{pointer-events:none}
.tlp-team-person-hit{position:absolute;z-index:30;inset:0 26%;pointer-events:auto;cursor:pointer}
