/* V32 — Partnerzy: page-only additions to ds-v32.css (connection visual, partner boxes, process map, three roles). */
.pa :is(h2,h3){text-wrap:balance}
.pa p{text-wrap:pretty}

/* Opening visual: ODSŁONA connected with partners */
.pa-visual{display:grid;gap:clamp(22px,2.4vw,30px)}
.pa-hub{display:grid;justify-items:start;gap:10px;padding-bottom:clamp(18px,2vw,24px);border-bottom:1px solid #ffffff1f}
.pa-hub img{display:block;width:min(100%,300px);height:auto}
.pa-hub span{font:400 clamp(14px,1.1vw,16px)/1.4 Figtree,sans-serif;color:#c9cbc6}
.pa-net{list-style:none;position:relative;display:grid;gap:12px;margin:0;padding:0 0 0 34px}
.pa-net:before{content:"";position:absolute;left:9px;top:-30px;bottom:30px;width:2px;background:linear-gradient(var(--amber),#ffffff33)}
.pa-net li{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:16px;padding:14px 16px 14px 18px;background:#ffffff0a;border:1px solid #ffffff24}
.pa-net li:before{content:"";position:absolute;left:-25px;top:50%;width:25px;height:2px;background:#ffffff33}
.pa-net li:after{content:"";position:absolute;left:-31px;top:50%;width:14px;height:14px;margin-top:-6px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 5px #1c2125}
.pa-net b{font:700 clamp(20px,1.7vw,25px)/1.1 Sora,sans-serif;letter-spacing:-.045em;color:var(--paper)}
.pa-net span{grid-column:1;font-size:14px;line-height:1.4;color:#b9bcb6;margin-top:3px}
.pa-net i{grid-column:2;grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid #ffffff40;font:600 17px/1 Figtree,sans-serif;font-style:normal;color:var(--paper)}
.pa-net .pa-net-you{background:transparent;border:1px dashed #f2b705aa}
.pa-net .pa-net-you:after{background:#1c2125;box-shadow:inset 0 0 0 2px var(--amber),0 0 0 5px #1c2125,0 30px 0 7px #1c2125}
.pa-net .pa-net-you b{color:var(--amber)}
.pa-net .pa-net-you i{background:var(--amber);border-color:var(--amber);color:var(--ink);font-size:22px;font-weight:400}

/* Partner sections: a box and a companion block side by side, equal height */
.pa-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:stretch}
.pa-partner h3{font-size:clamp(34px,3.2vw,50px);margin-bottom:16px}
.pa-partner .ds-button{margin-top:auto;align-self:flex-start}
.pa-roles{list-style:none;margin:4px 0 0;padding:0;border-top:1px solid #15191c26}
.pa-roles li{display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:22px;align-items:center;padding:22px 0;border-bottom:1px solid #15191c26}
.pa-roles svg{grid-row:1/3;width:64px;height:46px;overflow:visible}
.pa-roles b{font:600 14px/1.3 Figtree,sans-serif;letter-spacing:.01em;color:var(--gold)}
.pa-roles span{margin-top:4px;font:600 clamp(17px,1.3vw,19px)/1.35 Figtree,sans-serif;letter-spacing:-.02em;color:var(--ink)}
.pa .pa-partner .pa-together{margin:18px 0 26px}

/* Process map (dark panel) */
.pa-map{align-content:start;grid-template-rows:auto 1fr auto}
.pa-map .ds-panel-head{grid-template-columns:1fr}
.pa-flow{list-style:none;position:relative;display:grid;align-content:space-between;gap:12px;margin:0;padding:0}
.pa-flow li{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);column-gap:22px;align-items:center;padding:14px 20px;background:#ffffff08;border:1px solid #ffffff1f}
.pa-flow li+li:before{content:"↓";position:absolute;left:44px;top:-17px;display:grid;place-items:center;width:20px;height:20px;background:#171a21;color:var(--amber);font:600 16px/1 Figtree,sans-serif}
.pa-flow svg{grid-row:1/3;width:72px;height:52px;overflow:visible}
.pa-flow b{font:600 clamp(19px,1.5vw,23px)/1.2 Figtree,sans-serif;letter-spacing:-.03em;color:var(--paper)}
.pa-flow span{font-size:15.5px;line-height:1.45;color:#b9bcb6}
.pa .pa-map-note{margin:0;padding-top:16px;border-top:1px solid #ffffff24;font-size:15px;color:#c9cbc6}

/* Zdavo: status pill and three roles sharing one data bar */
.pa-split--flip>.ds-box{order:2}
.pa-status{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;margin:0 0 20px;padding:8px 14px;border:1px solid #15191c33;border-radius:999px;font:600 14px/1.2 Figtree,sans-serif}
.pa-status i{width:10px;height:10px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 4px #f2b70540}
.pa-people{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(24px,2.6vw,36px);background:var(--paper);border:1px solid #15191c1a}
.pa-people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,28px);flex:1}
.pa-people article{position:relative;padding:22px 0 34px;border-top:1px solid #15191c38}
.pa-people article:after{content:"";position:absolute;left:24px;bottom:0;width:2px;height:26px;background:var(--amber)}
.pa-people svg{display:block;width:64px;height:46px;overflow:visible;margin-bottom:16px}
.pa-people h3{font:600 clamp(20px,1.6vw,25px)/1.2 Figtree,sans-serif;letter-spacing:-.03em;margin:0 0 8px}
.pa-people p{font-size:clamp(15.5px,1.15vw,17px);line-height:1.5;color:#5d645b;margin:0}
.pa .pa-shared{margin:0;padding:16px 20px;background:var(--amber);font:500 clamp(18px,1.5vw,22px)/1.2 Figtree,sans-serif;letter-spacing:-.02em;color:var(--ink)}
.pa-shared b{font-family:Sora,sans-serif;font-weight:700;letter-spacing:-.045em}

@media(max-width:1100px){
  .pa-split{grid-template-columns:1fr}
  .pa-split--flip>.ds-box{order:0}
}
@media(max-width:600px){
  .pa-roles li{grid-template-columns:52px minmax(0,1fr);column-gap:16px}
  .pa-roles svg{width:52px;height:38px}
  .pa-people-grid{grid-template-columns:1fr}
  .pa-people article{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:16px;padding:18px 0 30px}
  .pa-people article:after{left:24px}
  .pa-people article:not(:last-child):after{display:none}
  .pa-people article:not(:last-child){padding-bottom:18px}
  .pa-shared b{display:block}
  .pa-people svg{grid-row:1/3;width:52px;height:38px;margin:0}
  .pa-flow li{grid-template-columns:52px minmax(0,1fr);column-gap:16px;padding:16px}
  .pa-flow svg{width:52px;height:38px}
  .pa-flow li+li:before{left:32px}
  .pa-net{padding-left:28px}
  .pa-net:before{left:6px}
  .pa-net li:before{left:-22px;width:22px}
  .pa-net li:after{left:-28px}
  .pa-net li{padding:12px 12px 12px 14px;column-gap:10px}
}
@media(max-width:400px){
  .pa-roles li,.pa-flow li{grid-template-columns:minmax(0,1fr)}
  .pa-roles svg,.pa-flow svg{grid-row:auto;margin-bottom:12px}
  .pa-flow li+li:before{left:24px}
  .pa-net i{width:30px;height:30px}
}
