/* B281 · polish: the last pages under the bar, on web and mobile. New rules only; nothing above this file is edited. */

/* ── Heroes with a designed right half (Ask, Status) ─────────────────────────────────────────── */
.pz-hero-g{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:clamp(40px,5vw,72px)!important}
.pz-hero-g .sx-copy{min-width:0}
.pz-art{position:relative;min-width:0;padding:8px 0 24px}
@media (max-width:1000px){.pz-art{display:none}.pz-hero-g{grid-template-columns:1fr!important}}

/* Ask: a still sample of the question box, in the panel's own language */
.pz-ask{position:relative;z-index:1;max-width:540px;margin-left:auto;border-radius:22px;background:#fff;box-shadow:0 50px 100px -40px rgba(11,21,48,.5),0 0 0 1px rgba(10,22,51,.07);overflow:hidden;font-family:var(--px-sans);transform:perspective(1600px) rotateY(-4deg) rotateX(2deg);transform-origin:100% 50%}
.pz-ask-h{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--sx-line)}
.pz-ask-h img{width:28px;height:28px;flex:none}
.pz-ask-h div{flex:1;min-width:0}
.pz-ask-h b{display:block;font:600 15px/1.25 var(--px-sans);color:var(--sx-ink)}
.pz-ask-h small{display:block;margin-top:2px;font:400 12.5px/1.3 var(--px-sans);color:var(--sx-slate)}
.pz-on{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:#eef3ff;font:600 11.5px/1 var(--px-sans);color:#0f46c9}
.pz-on::before{content:"";width:6px;height:6px;border-radius:50%;background:#1559f5}
.pz-ask-t{display:flex;flex-direction:column;gap:12px;padding:20px 20px 16px;background:linear-gradient(#fff,#fbfcff)}
.pz-me{align-self:flex-end;max-width:80%;margin:0;padding:10px 14px;border-radius:16px 16px 4px 16px;background:var(--sx-ink);color:#fff;font:400 14.5px/1.5 var(--px-sans)}
.pz-lab{position:relative;padding-left:34px}
.pz-lab::before{content:"";position:absolute;left:0;top:2px;width:24px;height:24px;border-radius:50%;background:url(/img/brand/theculturelab-badge.svg) center/100% no-repeat}
.pz-lab p{margin:0;padding:12px 15px;border-radius:16px 16px 16px 4px;background:#fff;box-shadow:inset 0 0 0 1px var(--sx-line);font:400 14.5px/1.6 var(--px-sans);color:var(--sx-ink)}
.pz-lab i{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:3px;padding:0 4px;border-radius:6px;background:#1559f514;color:#0f46c9;font:600 11px/1 var(--px-mono);font-style:normal;vertical-align:1px}
.pz-src{list-style:none;margin:0;padding:0 0 0 34px;display:flex;flex-wrap:wrap;gap:8px}
.pz-src li{display:inline-flex;align-items:center;gap:8px;padding:7px 11px 7px 8px;border-radius:10px;background:#f5f7fc;box-shadow:inset 0 0 0 1px var(--sx-line);font:400 12.5px/1.3 var(--px-sans);color:var(--sx-slate)}
.pz-src b{display:grid;place-items:center;width:18px;height:18px;border-radius:5px;background:#1559f5;color:#fff;font:600 10.5px/1 var(--px-mono)}
.pz-src em{font-style:normal;font-weight:600;color:var(--sx-ink)}
.pz-acts{display:flex;align-items:center;gap:14px;padding-left:34px}
.pz-hear{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 13px 0 11px;border-radius:999px;background:var(--sx-ink);color:#fff;font:500 13px/1 var(--px-sans)}
.pz-hear svg{width:11px;height:11px}
.pz-wave{display:flex;align-items:center;gap:3px;height:22px}
.pz-wave i{width:3px;border-radius:2px;background:#1559f5;opacity:.85;height:30%;animation:pz-w 1.6s ease-in-out infinite}
.pz-wave i:nth-child(3n){height:70%;animation-delay:-.4s}.pz-wave i:nth-child(3n+1){height:45%;animation-delay:-.9s}.pz-wave i:nth-child(4n){height:90%;animation-delay:-1.2s}
@keyframes pz-w{50%{transform:scaleY(.45)}}
.pz-ask-in{display:flex;align-items:center;gap:10px;margin:0 16px 16px;padding:6px 6px 6px 16px;border-radius:14px;box-shadow:inset 0 0 0 1px var(--sx-line);font:400 14px/1 var(--px-sans);color:var(--sx-slate)}
.pz-ask-in span{flex:1}
.pz-ask-in b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#1559f5;color:#fff}
.pz-ask-in svg{width:16px;height:16px}
.pz-float{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;padding:10px 14px 10px 10px;border-radius:14px;background:#fff;box-shadow:0 24px 48px -24px rgba(11,21,48,.45),0 0 0 1px rgba(10,22,51,.07);font:500 13px/1.2 var(--px-sans);color:var(--sx-ink)}
.pz-float b{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#eef3ff;color:#0f46c9;font:600 14px/1 var(--px-sans)}
.pz-float-a{left:-36px;top:88px}
@media (prefers-reduced-motion:reduce){.pz-wave i{animation:none}}

/* Status: a snapshot of the board, mirrored from the live checks below */
.pz-board{max-width:560px;margin-left:auto;border-radius:16px;overflow:hidden;background:#0b1530;box-shadow:0 50px 100px -30px rgba(11,21,48,.55),0 0 0 1px rgba(255,255,255,.06);font-family:var(--px-sans)}
.pz-bar{display:flex;align-items:center;gap:6px;height:34px;padding:0 12px;background:#121d3d;border-bottom:1px solid rgba(255,255,255,.08)}
.pz-bar i{width:9px;height:9px;border-radius:50%;background:#2a375c}
.pz-bar span{margin:0 auto;padding:5px 40px;border-radius:6px;background:#0b1530;font:400 12px/1 var(--px-sans);color:#a9b6d6}
.pz-board-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px 12px}
.pz-board-h b{font:600 16px/1.2 var(--px-sans);color:#fff}
.pz-sum{display:inline-flex;align-items:center;gap:8px;padding:6px 11px;border-radius:999px;background:rgba(91,140,250,.14);box-shadow:inset 0 0 0 1px rgba(91,140,250,.32);font:500 12.5px/1 var(--px-sans);color:#dbe4fb}
.pz-sum::before{content:"";width:7px;height:7px;border-radius:50%;background:#5b8cfa;box-shadow:0 0 0 3px rgba(91,140,250,.25)}
.pz-rows{list-style:none;margin:0 14px;padding:0}
.pz-rows li{display:grid;grid-template-columns:10px minmax(0,1fr) auto 58px;align-items:center;gap:12px;padding:13px 8px;border-top:1px solid rgba(255,255,255,.07)}
.pz-rows li:first-child{border-top:0}
.pz-rows li>i{width:8px;height:8px;border-radius:50%;background:#3a4769}
.pz-rows li.is-ok>i{background:#5b8cfa;box-shadow:0 0 0 3px rgba(91,140,250,.2)}
.pz-rows li.is-bad>i{background:#fff}
.pz-rows b{font:500 14px/1.3 var(--px-sans);color:#e6ecfb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pz-w{font:500 13px/1.2 var(--px-sans);color:#c9d3ea;text-align:right}
.pz-rows li.is-ok .pz-w{color:#fff}
.pz-rows li.is-off .pz-w{color:#a9b6d6}
.pz-ms{font:400 12px/1 var(--px-mono);color:#a9b6d6;text-align:right}
.pz-board-f{display:flex;justify-content:space-between;gap:12px;margin-top:6px;padding:14px 22px;border-top:1px solid rgba(255,255,255,.08);background:#0e1938;font:400 12px/1.3 var(--px-mono);color:#a9b6d6}
.st-hero .st-banner{max-width:none}

/* ── OKR demo on phones: only finished parts are drawn; each step arrives when it is done ───── */
@media (max-width:640px){
  .okx.s0 .okx-steps li,.okx.s1 .okx-steps li:nth-child(n+2),.okx.s2 .okx-steps li:nth-child(n+3),
  .okx:is(.s0,.s1,.s2,.s3) .okx-ok,.okx:is(.s0,.s1,.s2,.s3,.s4) .okx-done{display:none!important}
  .okx .okx-steps li,.okx .okx-ok,.okx .okx-done{animation:pz-in .45s cubic-bezier(.2,.7,.2,1) both}
  .okx.s0 .okx-steps{margin:0!important;padding:0!important}
}
@keyframes pz-in{from{transform:translateY(10px)}}
@media (prefers-reduced-motion:reduce){.okx .okx-steps li,.okx .okx-ok,.okx .okx-done{animation:none}}

/* ── Field notes on phones: the reading bar tucks away going down, the Ask button lives in it ── */
@media (max-width:760px){
  .pz-note .px-rbar.on.pz-tuck{transform:translateY(calc(-100% + 1px))}
  .pz-note .px-rbar.on.pz-tuck .px-rbar-prog{height:3px;bottom:-2px}
  .pz-note:not(.pz-end) .px-askfab{opacity:0!important;visibility:hidden;pointer-events:none;transform:translateY(16px)!important}
  .pz-note.px-askp-open .px-askfab{visibility:visible}
  .pz-rask{color:var(--px-acc)!important}
  .pz-note .px-rbar-b{width:40px}
  .pz-note .px-rbar-acts{gap:0}
}
@media (min-width:761px){.pz-rask{display:none!important}}
@media (prefers-reduced-motion:reduce){.pz-note .px-rbar{transition:none}}

/* ── Security: numbered section heads beside their cards on laptops ─────────────────────────── */
.px-secp .sec-sec .os-head h2::before{display:block;margin:0 0 18px;font:500 13px/1 var(--px-mono);letter-spacing:.04em;color:#1559f5}
.px-secp [aria-labelledby="h-data"] .os-head h2::before{content:"01"}
.px-secp [aria-labelledby="h-access"] .os-head h2::before{content:"02"}
.px-secp [aria-labelledby="h-ai"] .os-head h2::before{content:"03"}
.px-secp [aria-labelledby="h-subs"] .os-head h2::before{content:"04"}
@media (min-width:1001px){
  .px-secp .sec-sec:not(#report)>.sx-in{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:16px 56px;align-items:start}
  .px-secp .sec-sec:not(#report) .sec-grid li:last-child:nth-child(odd){grid-column:1/-1}
  .px-secp .sec-sec:not(#report) .os-head{display:block;position:sticky;top:96px;margin:0}
  .px-secp .sec-sec:not(#report) .os-head h2{font-size:40px;max-width:11ch}
  .px-secp .sec-sec:not(#report) .os-head p{margin-top:16px;font-size:17px}
  .px-secp .sec-sec:not(#report) .sec-grid,.px-secp .sec-sec:not(#report) .sec-grid-3{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr))}
  .px-secp .sec-hipaa{grid-column:2}
  .px-secp .sec-sec:not(#report) .sx-in>:nth-child(n+2){grid-column:2}
  .px-secp .sec-sec .os-head{grid-row:1/span 3}
}
.px-secp .sec-sec{padding-top:clamp(64px,8vw,104px)}
.px-secp .sec-grid li{transition:box-shadow .25s,transform .25s}
@media (hover:hover){.px-secp .sec-grid li:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #d5dcea,0 24px 48px -28px rgba(11,21,48,.45)}}
/* the companies we rely on, as cards */
.px-secp .sec-subs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:0;margin:0}
.px-secp .sec-subs div{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border:0;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--sx-line),0 14px 32px -26px rgba(11,21,48,.35)}
.px-secp .sec-subs dt{display:flex;align-items:center;gap:10px;font:600 16px/1.3 var(--px-sans);color:var(--sx-ink)}
.px-secp .sec-subs dt::before{content:"";width:8px;height:8px;border-radius:2px;background:#1559f5}
.px-secp .sec-subs dd{font:400 15px/1.5 var(--px-sans);color:var(--sx-slate)}
.px-secp section[aria-labelledby="h-subs"]{position:relative}
@media (max-width:640px){.px-secp .sec-subs{grid-template-columns:1fr}.px-secp .sec-subs div{padding:16px 18px}}

/* ── Contact: the three ways in, as cards ────────────────────────────────────────────────── */
.px-contact .ct-routes .ct-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0 0;border:0}
.px-contact .ct-routes .ct-facts div{display:flex;flex-direction:column;gap:8px;padding:24px;border:0;border-radius:18px;background:#f5f7fc;box-shadow:inset 0 0 0 1px var(--sx-line)}
.px-contact .ct-routes .ct-facts dt{font:500 13px/1 var(--px-mono);letter-spacing:.02em;color:#1559f5}
.px-contact .ct-routes .ct-facts dd{font:400 16px/1.55 var(--px-sans);color:var(--sx-slate)}
.px-contact .ct-routes .ct-facts dd a{font-weight:600}
.px-contact .ct-routes h2.sx-h-sm{font:600 clamp(28px,3vw,40px)/1.1 var(--px-sans)!important;letter-spacing:-.025em!important;color:var(--sx-ink)!important;margin-bottom:32px!important}
@media (max-width:860px){.px-contact .ct-routes .ct-facts{grid-template-columns:1fr;gap:12px}.px-contact .ct-routes .ct-facts div{padding:20px}}

/* ── The Ledger: the scoreboard and every call as cards on a soft band ─────────────────────── */
.pz-ledger .px-board{gap:12px;border:0;margin-top:8px}
.pz-ledger .px-board div{padding:22px 22px 24px;border-radius:18px;background:#fff;box-shadow:0 0 0 1px var(--px-line),0 18px 40px -30px rgba(11,21,48,.35)}
.pz-ledger .px-board div:last-child{background:#0b1530;box-shadow:none}
.pz-ledger .px-board div:last-child .px-k{color:#8fb0ff}
.pz-ledger .px-board div:last-child .px-l{color:#dbe4fb}
.pz-ledger .px-board div:last-child .px-l span{color:#a9b6d6}
.pz-ledger section[aria-labelledby="h-calls"]{margin-top:clamp(48px,6vw,80px);padding:clamp(56px,7vw,88px) 0 clamp(64px,8vw,104px)!important;background:#f5f7fc;border-top:1px solid var(--px-line);border-bottom:1px solid var(--px-line)}
.pz-ledger .px-calls{display:grid;gap:16px;border:0}
.pz-ledger .px-cl{padding:28px 32px 32px;border:0;border-radius:20px;background:#fff;box-shadow:0 0 0 1px var(--px-line),0 20px 44px -34px rgba(11,21,48,.4);scroll-margin-top:96px}
.pz-ledger .px-cl:target{box-shadow:0 0 0 2px #1559f5,0 20px 44px -34px rgba(11,21,48,.4)}
.pz-ledger .px-cl-meta{padding:20px 22px;border-radius:14px;background:#f5f7fc}
.pz-ledger .px-cl-top{padding-bottom:6px;border-bottom:1px solid var(--px-line)}
.pz-ledger .px-st{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#eef3ff;color:#0f46c9!important;font-weight:500}
.pz-ledger .px-lfoot{margin-top:28px!important;text-align:center}
@media (max-width:760px){
  .pz-ledger .px-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .pz-ledger .px-board .px-k{font-size:36px}
  .pz-ledger .px-board div{padding:16px 14px}
  .pz-ledger .px-board div:last-child{grid-column:1/-1}
  .pz-ledger .px-cl{padding:20px 20px 22px;border-radius:18px}
  .pz-ledger .px-cl-meta{padding:16px}
}

/* Security hero: the three groups of controls, drawn as a stack */
.pz-sec{position:relative;display:grid;gap:14px;max-width:500px;margin-left:auto}
.pz-sec-c{display:flex;gap:16px;align-items:flex-start;padding:20px 22px;border-radius:18px;background:#fff;box-shadow:0 30px 60px -36px rgba(11,21,48,.5),0 0 0 1px rgba(10,22,51,.07)}
.pz-sec-c b{display:block;font:600 16px/1.3 var(--px-sans);color:var(--sx-ink)}
.pz-sec-c p{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0}
.pz-sec-c em{font:500 12.5px/1 var(--px-sans);font-style:normal;padding:7px 10px 7px 24px;border-radius:999px;background:#f5f7fc url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559f5' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") 9px 50%/10px no-repeat;box-shadow:inset 0 0 0 1px var(--sx-line);color:var(--sx-ink)}
.pz-ic{flex:none;width:36px;height:36px;border-radius:11px;background:#1559f5 center/20px no-repeat}
.pz-c1 .pz-ic{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='9' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E")}
.pz-c2{margin-left:-36px;margin-right:36px}
.pz-c2 .pz-ic{background-color:#0a1633;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='15' r='4'/%3E%3Cpath d='m11 12 8-8M16 7l2 2M14 9l2 2'/%3E%3C/svg%3E")}
.pz-c3 .pz-ic{background-color:#fff;box-shadow:inset 0 0 0 1.5px #1559f5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559f5' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.5'/%3E%3Cpath d='M5 20c1-4 4-6 7-6s6 2 7 6'/%3E%3C/svg%3E")}
@media (min-width:1001px){.px-secp .sec-subs div:last-child:nth-child(odd){grid-column:1/-1}}

/* Phones: the room kept for the Ask button sits inside the footer, so the page never ends on a white strip */
@media (max-width:900px){body:has(>footer.cf){padding-bottom:0!important}body>footer.cf{padding-bottom:calc(88px + 72px)}}

/* Home hero on phones: the card overlaps the thread's padding, never its last line */
@media (max-width:900px){.hx5-thread{padding-bottom:34px}}

/* Platform on phones: the modules an app uses light up; the others stay readable */
@media (max-width:760px),(hover:none){.pf-apps.lit .pf-mods li{opacity:1}.pf-apps.lit .pf-mods li:not(.on) span{color:#aab6d3}}

/* Founders on phones: the two founder cards read as rows, photo beside name, so credentials never break mid-word */
@media (max-width:560px){
  .px-fd .fd-duo{grid-template-columns:1fr!important;gap:12px!important}
  .px-fd .fd-duo .fd-card{grid-template-columns:112px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:16px;row-gap:6px;align-items:start;padding:8px 14px 8px 8px}
  .px-fd .fd-duo .fd-img{grid-row:1/3;margin:0}
  .px-fd .fd-duo .fd-img img{height:100%;width:100%;object-fit:cover}
  .px-fd .fd-duo .fd-card b{padding:14px 0 0;font-size:16px}
  .px-fd .fd-duo .fd-card>span:last-child{padding:0;font-size:14px}
}

/* The Ledger strip on phones: the whole sentence, never cut off mid-way */
@media (max-width:760px){
  .px-ledger .px-lg{white-space:normal!important;align-items:baseline!important}
  .px-ledger .px-lg>span:nth-child(3){overflow:visible!important;text-overflow:clip!important;line-height:1.45}
  .px-ledger .px-lg-k{flex:none}
}
