/* Match the TLP theme: Butler headings, League Spartan UI/body. Scoped only. */
.tlp-consultation-section{padding:36px 0 0;margin:40px 0 0;border-top:1px solid #dce2e8;background:transparent;color:#17375c;clear:both}
.tlp-consultation-panel{max-width:1210px;margin:0 auto;box-sizing:border-box}
.tlp-consultation-section:not(.editor .tlp-consultation-section){padding:36px 24px;margin:40px auto;max-width:1258px}
.tlp-consultation-eyebrow{display:block;color:#a84323;font:400 12px/1.5 'League Spartan',sans-serif;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}
.tlp-consultation-panel h2,.tlp-consultation-popup h2{font-family:Butler,sans-serif;color:#17375c;font-size:clamp(27px,2.6vw,36px);font-weight:400;line-height:1.16;margin:0 0 18px;overflow-wrap:break-word;letter-spacing:normal}
.tlp-consultation-panel p,.tlp-consultation-popup p{font:400 18px/1.5 'League Spartan',sans-serif;color:#4e6175;margin:0 0 22px;letter-spacing:normal}
.tlp-consultation-note{display:block;margin-top:14px;color:#4e6175;font:400 15px/1.4 'League Spartan',sans-serif}
a.tlp-consultation-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;max-width:100%;padding:14px 21px;min-height:48px;border:1px solid #eb6437;border-radius:0;background:transparent;color:#17375c;font:400 17px/1.25 'League Spartan',sans-serif;text-decoration:none;text-align:center;cursor:pointer;white-space:normal;-webkit-tap-highlight-color:rgb(235 100 55 / 20%);transition:transform .24s ease,background-color .24s ease,color .24s ease,box-shadow .24s ease}
a.tlp-consultation-button::before,a.tlp-consultation-button::after,a.tlp-consultation-topic::before,a.tlp-consultation-topic::after{display:none!important}
a.tlp-consultation-button:focus-visible,a.tlp-consultation-topic:focus-visible,.tlp-consultation-topic-picker summary:focus-visible,.tlp-popup-close:focus-visible,.tlp-popup-later:focus-visible{outline:2px solid #a84323;outline-offset:5px}
a.tlp-consultation-button:active,a.tlp-consultation-topic:active,.tlp-popup-close:active,.tlp-popup-later:active{transform:scale(.97)}
.person a.tlp-consultation-early{margin-top:10px;margin-bottom:28px;background:transparent}
.tlp-consultation-topic-picker{margin-top:22px}
.tlp-consultation-topic-picker summary{font:400 16px/1.4 'League Spartan',sans-serif;color:#17375c;cursor:pointer;list-style:none;display:flex;align-items:center;gap:16px;padding:10px 0;transition:color .2s}
.tlp-consultation-topic-picker summary::-webkit-details-marker{display:none}
.tlp-consultation-topic-picker summary::after{content:'+';font:300 25px/1 'League Spartan',sans-serif;color:#a84323;transition:transform .24s}
.tlp-consultation-topic-picker[open] summary::after{transform:rotate(45deg)}
.tlp-consultation-topics{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;min-width:0}
.tlp-consultation-topic-picker[open] .tlp-consultation-topics{animation:tlp-topics-in .24s ease-out}
a.tlp-consultation-topic{display:flex;align-items:center;min-height:55px;padding:12px 0;border:0;border-bottom:1px solid #dce2e8;color:#17375c;background:transparent;text-decoration:none;font:400 16px/1.35 'League Spartan',sans-serif;transition:color .24s,transform .24s,border-color .24s;box-sizing:border-box;overflow-wrap:anywhere}
@keyframes tlp-topics-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
/* The menu entry inherits the theme's type, baseline and light/dark header colors. */
header.header .nav-main{align-items:baseline}
header.header .nav-main a.tlp-consultation-menu{white-space:nowrap}
/* Keep the expanded navigation on the dark half of the homepage hero.
   The theme's 45px item margins plus an 80px language margin assumed four links. */
@media(min-width:992px){
  header.header .header__main{gap:24px}
  header.header .header__url{flex-shrink:0}
  /* More breathing room before PL/EN moves the text left, while the language
     switch stays aligned. Keep the narrow-tablet gap smaller for the hero art. */
  header.header .header__nav{position:static;display:flex;align-items:center;gap:clamp(24px,calc(8vw - 56px),64px);width:auto;height:auto;opacity:1;visibility:visible;background:transparent}
  header.header .header__nav ul.nav-main{display:flex;align-items:center;gap:clamp(10px,1.1vw,18px);margin:0;padding:0;flex-wrap:nowrap}
  header.header .header__nav ul.nav-main li{margin:0}
  header.header .header__nav ul.nav-main a{display:flex;align-items:center;min-height:44px;font-size:clamp(15px,1.32vw,18px);line-height:1.25;padding:0;white-space:nowrap}
  header.header .header__language{margin:0;flex-shrink:0}
}
header.header .tlp-consultation-menu:focus-visible,header.header .tlp-consultation-mobile:focus-visible{outline:2px solid #eb6437;outline-offset:5px}
a.tlp-consultation-mobile{display:none;border:0;background:transparent;box-shadow:none;color:#17375c;font:400 14px/1.25 'League Spartan',sans-serif;text-align:center;text-decoration:none;box-sizing:border-box;transition:color .24s ease}
body.admin-bar header.header .header__fixed{top:var(--wp-admin--admin-bar--height,32px)}
/* Last-section invitation: original photos, full-frame alpha silhouettes. */
html.tlp-popup-open{overflow:hidden}
dialog.tlp-consultation-popup:not([open]){display:none}
dialog.tlp-consultation-popup{position:fixed;inset:0;width:min(880px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 40px);box-sizing:border-box;padding:0;margin:auto;border:0;border-top:3px solid #eb6437;border-radius:0;background:#fff;color:#17375c;overflow:hidden;overscroll-behavior:contain;box-shadow:0 24px 100px rgb(12 31 53 / 24%)}
.tlp-consultation-popup::backdrop{background:rgb(14 32 51 / 42%);backdrop-filter:blur(3px)}
.tlp-consultation-popup{--popup-topic-space:0px}
.tlp-consultation-popup:has(.tlp-consultation-topic-picker){--popup-topic-space:50px}
.tlp-popup-surface{position:relative;display:flex;flex-direction:column;max-height:calc(100dvh - 43px);box-sizing:border-box;padding:clamp(22px,4dvh,36px) 38px 18px;text-align:center;background:#fff}
/* Only the descriptive area can scroll at extreme zoom; the booking action stays visible. */
.tlp-popup-content{min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin}
.tlp-popup-close{position:absolute;z-index:10;right:12px;top:8px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:#17375c;cursor:pointer;transition:background-color .2s,transform .2s}
.tlp-popup-close span{position:relative;width:18px;height:18px}
.tlp-popup-close span::before,.tlp-popup-close span::after{content:'';position:absolute;left:8px;top:0;width:1px;height:18px;background:currentColor;transform:rotate(45deg)}
.tlp-popup-close span::after{transform:rotate(-45deg)}
.tlp-popup-copy{position:relative;z-index:1;padding:0 12px}
.tlp-consultation-popup .tlp-consultation-eyebrow{margin-bottom:10px}
.tlp-consultation-popup h2{font-size:clamp(28px,4.8dvh,46px);line-height:1.12;margin-bottom:12px}
.tlp-consultation-popup p{font-size:clamp(16px,2.5dvh,18px);margin-bottom:0}
.tlp-popup-portraits{--portrait-width:min(clamp(76px,19vw,174px),clamp(48px,calc((100dvh - 330px - var(--popup-topic-space)) * .52),174px));display:grid;grid-template-columns:var(--portrait-width);width:calc(var(--portrait-width) * ((var(--portrait-count) - 1) * .45 + 1));align-items:end;margin:12px auto 8px;padding-top:12px;isolation:isolate;pointer-events:none}
.tlp-popup-portrait{position:relative;grid-column:1;grid-row:1;left:calc(var(--team-wide-x)*45%);--portrait-z:2;--portrait-transform:scale(var(--team-head-scale,1));width:var(--portrait-width);height:calc(var(--portrait-width) * 650 / 436);min-width:0}
.tlp-popup-portrait:nth-child(even){--portrait-z:1}
.tlp-popup-portrait:is([data-expert="jaroslaw-wloch"],[data-expert="przemyslaw-szot"]){--portrait-z:3}
/* Blend only a 1.15px fringe. The full outer silhouette and original RGB stay intact. */
.tlp-portrait-filters{position:absolute;pointer-events:none}
.tlp-portrait-edge,.tlp-portrait-core{position:absolute;inset:0;transform:var(--portrait-transform);transform-origin:center bottom}
.tlp-portrait-edge{z-index:calc(var(--portrait-z) * 2);mix-blend-mode:darken}
.tlp-portrait-core{z-index:calc(var(--portrait-z) * 2 + 1);filter:url(#tlp-portrait-core)}
.tlp-popup-portrait[data-expert="aleksandra-nocun-galas"] img{clip-path:url(#tlp-ola-upper-contour)}
.tlp-popup-portrait[data-expert="przemyslaw-szot"] img{clip-path:url(#tlp-przemek-jacket-contour)}
.tlp-popup-portrait[data-expert="kacper-partyka"] :is(.tlp-portrait-edge,.tlp-portrait-core) img{clip-path:url(#tlp-kacper-jacket-contour)}
/* Restore only the original ear pixels, above the blending layer. */
.tlp-portrait-ear-detail{position:absolute;inset:0;z-index:calc(var(--portrait-z) * 2 + 2);transform:var(--portrait-transform);transform-origin:center bottom}
.tlp-portrait-ear-detail img{clip-path:url(#tlp-kacper-ears)}
.tlp-popup-portrait img{display:block;width:100%;max-width:none;height:100%;margin:0;object-fit:contain;object-position:center bottom;opacity:1;filter:none;mix-blend-mode:normal;mask-mode:alpha;mask-size:contain;mask-position:center bottom;mask-repeat:no-repeat;-webkit-mask-size:contain;-webkit-mask-position:center bottom;-webkit-mask-repeat:no-repeat}
.tlp-popup-actions{position:relative;z-index:4;display:flex;flex:0 0 auto;flex-direction:column;align-items:center;gap:4px;padding-top:12px;margin-top:0;background:#fff}
.tlp-popup-actions .tlp-consultation-topic-picker{margin-top:0;width:min(100%,520px);text-align:left}
.tlp-popup-actions .tlp-consultation-topic-picker summary{justify-content:center}
.tlp-popup-actions .tlp-consultation-topics{max-height:min(180px,25dvh);overflow-y:auto;overscroll-behavior:contain}
.tlp-popup-actions a.tlp-consultation-button{background:#17375c;border-color:#17375c;color:#fff;min-width:260px}
.tlp-popup-later{padding:10px 18px;min-height:42px;background:transparent;border:0;color:#526172;font:400 15px/1.3 'League Spartan',sans-serif;text-decoration:underline;text-underline-offset:4px;cursor:pointer;transition:color .2s,transform .2s}
@media(any-hover:hover) and (any-pointer:fine){
  html:not(.tlp-touch-input) a.tlp-consultation-button:hover{color:#fff!important;background:#a84323;border-color:#a84323;transform:translateY(-2px);box-shadow:0 5px 14px rgb(23 55 92 / 12%)}
  html:not(.tlp-touch-input) a.tlp-consultation-mobile:hover{color:#eb6437}
  html:not(.tlp-touch-input) a.tlp-consultation-topic:hover{color:#a84323;border-color:#eb6437;transform:translateX(3px)}
  html:not(.tlp-touch-input) .tlp-popup-close:hover{background:#f5f3f1;transform:rotate(6deg)}
  html:not(.tlp-touch-input) .tlp-popup-later:hover,html:not(.tlp-touch-input) .tlp-consultation-topic-picker summary:hover{color:#a84323}
}
html.tlp-cursor-hover a.tlp-consultation-button:hover{color:#fff!important;background:#a84323;border-color:#a84323;transform:translateY(-2px);box-shadow:0 5px 14px rgb(23 55 92 / 12%)}
html.tlp-cursor-hover a.tlp-consultation-mobile:hover{color:#eb6437}
html.tlp-cursor-hover a.tlp-consultation-topic:hover{color:#a84323;border-color:#eb6437;transform:translateX(3px)}
html.tlp-cursor-hover .tlp-popup-close:hover{background:#f5f3f1;transform:rotate(6deg)}
html.tlp-cursor-hover .tlp-popup-later:hover,html.tlp-cursor-hover .tlp-consultation-topic-picker summary:hover{color:#a84323}
@media(max-width:991px){
  a.tlp-consultation-mobile{display:inline-flex;align-items:center;justify-content:center;padding:6px 0;min-height:44px;margin-left:auto;margin-right:90px;max-width:155px;flex-shrink:1}
  header.header .nav-main a.tlp-consultation-menu{white-space:normal}
}
@media(max-width:575px){
  .tlp-consultation-topics{grid-template-columns:1fr}
  .tlp-consultation-panel p{font-size:17px}
  .tlp-popup-surface{max-height:calc(100dvh - 27px);padding:46px 20px 12px}
  dialog.tlp-consultation-popup{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}
  .tlp-popup-copy{padding:0}
  .tlp-consultation-popup h2{font-size:32px}
  .tlp-consultation-popup p{font-size:16px}
  .tlp-popup-portraits{--portrait-width:min(clamp(84px,27vw,126px),max(54px,calc((100dvh - 385px - var(--popup-topic-space)) * .4)));margin:12px auto 8px;padding-top:8px}
  /* Four behind and two in front keep the partners together in the centre. */
  .tlp-popup-portraits:has(>.tlp-popup-portrait:nth-child(5)){--portrait-width:min(clamp(84px,27vw,126px),max(54px,calc((100dvh - 385px - var(--popup-topic-space)) * .4)));grid-template-rows:calc(var(--portrait-width) * .8) calc(var(--portrait-width) * 650 / 436);width:calc(var(--portrait-width) * 2.5);padding-top:0}
  .tlp-popup-portraits:has(>.tlp-popup-portrait:nth-child(5))>.tlp-popup-portrait{grid-row:var(--team-small-row);left:calc(var(--team-small-x)*50%);align-self:start;--portrait-z:calc(var(--team-small-row)*3)}
  .tlp-popup-actions a.tlp-consultation-button{min-width:0;width:100%;font-size:16px}
  .tlp-popup-actions{gap:5px;margin-top:0}
  a.tlp-consultation-mobile{font-size:14px;max-width:130px;margin-right:76px}
  header.header .header__url{width:90px;flex-shrink:0}
  header.header .header__logo{width:90px;height:auto}
}
@media(max-width:359px){
  a.tlp-consultation-mobile{max-width:100px;font-size:13px;margin-right:66px}
  header.header .header__url{width:88px;flex-shrink:0}
  header.header .header__logo{width:88px;height:auto}
  .tlp-popup-surface{padding-inline:16px}
  .tlp-consultation-popup h2{font-size:29px}
}
@media(max-height:500px){
  .tlp-popup-surface{padding:20px 24px 10px}
  .tlp-consultation-popup .tlp-consultation-eyebrow{display:none}
  .tlp-consultation-popup h2{font-size:26px;margin-bottom:8px}
  .tlp-consultation-popup p{font-size:15px;line-height:1.35}
  .tlp-popup-portraits{--portrait-width:clamp(48px,calc((100dvh - 280px - var(--popup-topic-space)) * .5),110px);margin-block:8px 4px;padding-top:8px}
  .tlp-popup-actions{padding-top:8px}
}
/* In short landscape windows keep the portraits below the copy, never beside it. */
@media (orientation:landscape) and (max-height:700px){
  dialog.tlp-consultation-popup{width:min(880px,calc(100% - 20px));max-height:calc(100dvh - 20px)}
  .tlp-popup-surface{max-height:calc(100dvh - 23px);padding:clamp(12px,2dvh,18px) 26px clamp(10px,1.5dvh,14px)}
  .tlp-popup-content{display:flex;flex-direction:column;align-items:center;gap:0;overflow-y:auto;overflow-x:hidden}
  .tlp-popup-copy{width:100%;box-sizing:border-box;padding:0}
  .tlp-consultation-popup h2{font-size:clamp(24px,5.4dvh,36px);line-height:1.08;margin-bottom:6px}
  .tlp-consultation-popup p{font-size:clamp(14px,3dvh,18px);line-height:1.25}
  .tlp-popup-portraits{--portrait-width:clamp(42px,calc((100dvh - 220px - var(--popup-topic-space)) * .5),135px);flex-shrink:0;max-width:100%;margin:7px auto 0;padding-top:4px}
  .tlp-popup-actions{flex-direction:row;justify-content:center;gap:18px;padding-top:5px}
  .tlp-popup-actions a.tlp-consultation-button{width:auto;min-width:220px;min-height:44px;padding:9px 16px;font-size:15px}
  .tlp-popup-later{min-height:44px;padding:9px 12px}
  .tlp-popup-actions:has(.tlp-consultation-topic-picker){display:grid;grid-template-columns:auto auto;gap:0 18px;justify-items:center}
  .tlp-popup-actions:has(.tlp-consultation-topic-picker) a.tlp-consultation-button{grid-column:1;grid-row:2}
  .tlp-popup-actions:has(.tlp-consultation-topic-picker) .tlp-popup-later{grid-column:2;grid-row:2}
  .tlp-popup-actions .tlp-consultation-topic-picker{grid-column:1/-1;grid-row:1}
  .tlp-popup-close{top:4px;right:5px;width:38px;height:38px}
}
@media (orientation:landscape) and (max-height:700px) and (max-width:575px){
  .tlp-popup-surface{padding-inline:16px}
  .tlp-popup-portraits:has(>.tlp-popup-portrait:nth-child(5)){grid-template-rows:none;width:calc(var(--portrait-width) * ((var(--portrait-count) - 1) * .45 + 1))}
  .tlp-popup-portraits:has(>.tlp-popup-portrait:nth-child(5))>.tlp-popup-portrait{grid-row:1;left:calc(var(--team-wide-x)*45%);--portrait-z:2}
  .tlp-popup-actions{gap:8px}
  .tlp-popup-actions a.tlp-consultation-button{min-width:0}
}
/* The same per-person correction applies in every service-specific popup. */
@media(prefers-reduced-motion:reduce){
  a.tlp-consultation-button,a.tlp-consultation-menu,a.tlp-consultation-mobile,a.tlp-consultation-topic,.tlp-consultation-topic-picker summary,.tlp-consultation-topic-picker summary::after,.tlp-consultation-topics,.tlp-popup-close,.tlp-popup-later{transition:none!important;animation:none!important;transform:none!important;scale:none!important}
}
