/* ═══════════════════════════════════════════════════════════════
   Humanuity - /pricing. Loads after sections.css and page.css and
   reuses their tokens (--ink-*, --acc, --line, --r-panel, --gutter).
   ═══════════════════════════════════════════════════════════════ */

.pr-note{font-size:14px;line-height:1.55;color:var(--fg-2);}
.pr-sec{margin-top:clamp(56px,7vw,92px);}
.pr-sec h2,.pr-err h2{font-family:var(--font-display);font-weight:600;letter-spacing:-0.03em;font-size:clamp(24px,2.6vw,34px);line-height:1.12;margin-bottom:10px;}
.pr-link{color:var(--acc);text-decoration:underline;text-underline-offset:3px;font-size:15px;}
.pr-link:focus-visible,.pr-seg button:focus-visible,.pr-faq summary:focus-visible,.pr-btn:focus-visible,.btn-ghost:focus-visible{outline:2px solid var(--acc);outline-offset:3px;}
.pr-faq a,.pr-foot-note a{color:var(--acc);text-underline-offset:3px;}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}

/* billing switch */
.pr-bar{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin-bottom:clamp(28px,3.5vw,40px);}
.pr-seg{display:inline-flex;padding:4px;border-radius:999px;border:1px solid var(--line-2);background:rgba(16,16,20,0.8);}
.pr-seg button{font:inherit;font-size:15px;font-weight:600;height:40px;padding:0 20px;border:0;border-radius:999px;background:none;
  color:var(--fg-2);cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;transition:background .2s,color .2s;}
.pr-seg button:hover{color:var(--fg-1);}
.pr-seg button[aria-pressed="true"]{background:var(--acc-soft);color:var(--acc);}
.pr-save{font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;background:rgba(74,222,128,0.14);color:#6EE7A0;}

/* plan cards */
.pr-grid{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:16px;align-items:stretch;}
.pr-card{display:flex;flex-direction:column;padding:28px 26px 26px;border-radius:var(--r-panel);border:1px solid var(--line);background:var(--ink-1);
  transition:border-color .2s,transform .3s var(--ease-standard);}
.pr-card:hover{border-color:var(--line-2);}
.pr-card.pop{border-color:rgba(174,140,247,0.4);box-shadow:0 0 0 1px rgba(174,140,247,0.22),0 24px 60px -30px rgba(124,58,237,0.6);
  background:linear-gradient(160deg,rgba(174,140,247,0.10),rgba(174,140,247,0.0) 55%),var(--ink-1);}
@media (min-width:901px){.pr-card.pop{transform:translateY(-8px);}}
.pr-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;}
.pr-top h3{font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:-0.02em;}
.pr-tag{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--acc-soft);color:var(--acc);white-space:nowrap;}
.pr-desc{color:var(--fg-2);font-size:15px;line-height:1.5;margin-bottom:18px;min-height:2.9em;}
.pr-price{display:flex;align-items:baseline;gap:6px;}
.pr-price b{font-family:var(--font-display);font-size:42px;font-weight:700;letter-spacing:-0.035em;line-height:1.05;font-variant-numeric:tabular-nums;}
.pr-price span{font-size:15px;color:var(--fg-2);}
.pr-eq{font-size:13.5px;color:var(--fg-2);min-height:1.4em;margin:6px 0 16px;}
.pr-cr{display:flex;align-items:baseline;gap:8px;padding:12px 14px;border-radius:12px;background:var(--acc-soft);margin-bottom:18px;}
.pr-cr b{font-family:var(--font-display);font-size:24px;color:var(--acc);font-variant-numeric:tabular-nums;}
.pr-cr span{font-size:14px;color:var(--fg-1);}
.pr-feat,.pr-bizfeat{list-style:none;display:grid;gap:10px;font-size:15px;}
.pr-feat{flex:1;margin-bottom:24px;}
.pr-feat li,.pr-bizfeat li{display:flex;gap:10px;align-items:flex-start;line-height:1.45;color:#D4D4DA;}
.pr-ck{width:16px;height:16px;flex:none;margin-top:3px;color:var(--acc);}
.pr-foot{display:grid;gap:10px;justify-items:stretch;text-align:center;}
.pr-foot .cta{justify-content:center;padding-left:20px;}
.pr-foot .cta-ic{margin-left:auto;}
.pr-btn{justify-content:center;height:46px;font-size:15px;font-weight:600;color:var(--fg-1);}
.pr-foot small{font-size:13px;color:var(--fg-2);min-height:1.3em;}

/* skeleton: same footprint as the final cards */
.pr-sk{gap:0;}
.pr-sk i{display:block;height:14px;border-radius:7px;margin-bottom:16px;background:linear-gradient(90deg,rgba(255,255,255,0.05),rgba(255,255,255,0.11),rgba(255,255,255,0.05));
  background-size:200% 100%;animation:pr-sh 1.4s linear infinite;}
.pr-sk .w40{width:40%;height:22px}.pr-sk .w55{width:55%}.pr-sk .w60{width:60%}.pr-sk .w65{width:65%}.pr-sk .w70{width:70%}.pr-sk .w75{width:75%}.pr-sk .w80{width:80%}.pr-sk .w100{width:100%}
.pr-sk .big{height:44px;margin-bottom:12px}.pr-sk .blk{height:50px;border-radius:12px}.pr-sk .btn{height:46px;border-radius:999px;margin:auto 0 0}
.pr-sk{min-height:560px;}
@keyframes pr-sh{to{background-position:-200% 0}}

/* error */
.pr-err{padding:clamp(24px,4vw,40px);border-radius:var(--r-panel);border:1px solid var(--line-2);background:var(--ink-1);max-width:640px;}
.pr-err h2{font-size:clamp(20px,2.2vw,26px);}
.pr-err p{color:var(--fg-2);line-height:1.6;font-size:16px;}
.pr-err-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:20px;}

/* comparison table */
.pr-tbl{margin-top:20px;overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-panel);background:var(--ink-1);}
.pr-tbl table{width:100%;border-collapse:collapse;font-size:15px;min-width:520px;}
.pr-tbl th,.pr-tbl td{text-align:left;padding:14px 18px;vertical-align:middle;font-variant-numeric:tabular-nums;}
.pr-tbl thead th{font-family:var(--font-display);font-size:17px;font-weight:600;}
.pr-tbl tbody th{font-weight:500;color:var(--fg-2);}
.pr-tbl td+td,.pr-tbl th+th{border-left:1px solid var(--line);}
.pr-tbl tbody tr+tr th,.pr-tbl tbody tr+tr td{border-top:1px solid var(--line);}
.pr-dash{display:inline-block;width:12px;height:2px;border-radius:2px;background:var(--fg-4);vertical-align:middle;}

/* business */
.pr-biz{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(24px,4vw,48px);padding:clamp(24px,4vw,40px);border-radius:var(--r-panel);border:1px solid var(--line);background:var(--ink-1);align-items:start;}
.pr-bizfeat{margin:18px 0 24px;}
.pr-rows{display:grid;gap:10px;}
.pr-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border-radius:12px;background:var(--ink-2);border:1px solid var(--line);}
.pr-row span{display:grid;gap:3px;}
.pr-row small{font-size:13.5px;color:var(--fg-2);}
.pr-row strong{font-family:var(--font-display);font-size:20px;white-space:nowrap;}
.pr-row em{font-style:normal;font-size:14px;font-weight:500;color:var(--fg-2);}
.pr-seats{margin-top:22px;}
.pr-seats h3{font-family:var(--font-display);font-size:18px;font-weight:600;margin-bottom:10px;}
.pr-seats ul{list-style:none;display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px;}
.pr-seats li{display:flex;gap:10px;align-items:baseline;padding:9px 14px;border-radius:999px;border:1px solid var(--line-2);font-size:14px;color:var(--fg-2);}
.pr-seats li b{color:var(--fg-1);}
.pr-packs{padding:clamp(22px,3.5vw,32px);border-radius:var(--r-panel);border:1px solid var(--line);background:var(--ink-1);}
.pr-packs h2{font-size:clamp(20px,2.2vw,26px);}
.pr-packs p{max-width:60ch;font-size:15px;}

/* faq */
.pr-faq{margin-top:18px;border-top:1px solid var(--line);}
.pr-faq details{border-bottom:1px solid var(--line);}
.pr-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 0;font-size:17px;font-weight:600;color:var(--fg-1);}
.pr-faq summary::-webkit-details-marker{display:none;}
.pr-faq .pm{position:relative;width:14px;height:14px;flex:none;}
.pr-faq .pm::before,.pr-faq .pm::after{content:"";position:absolute;left:0;right:0;top:50%;height:1.5px;margin-top:-.75px;background:var(--fg-3);transition:transform .25s var(--ease-standard);}
.pr-faq .pm::after{transform:rotate(90deg);}
.pr-faq details[open] .pm::after{transform:rotate(0);}
.pr-faq details p{padding:0 0 22px;max-width:68ch;line-height:1.65;color:#C4C4CC;font-size:16px;}
.pr-foot-note{margin-top:28px;font-size:13.5px;line-height:1.6;color:var(--fg-3);}

@media (max-width:900px){
  .pr-grid{grid-template-columns:1fr;}
  .pr-sk{min-height:0;}
  .pr-biz{grid-template-columns:1fr;}
  .pr-desc{min-height:0;}
}
@media (max-width:520px){
  .pr-bar{flex-direction:column;align-items:flex-start;}
  .pr-seg button{padding:0 14px;}
  .pr-price b{font-size:36px;}
  .pr-card{padding:24px 20px 22px;}
  .pr-row{flex-direction:column;align-items:flex-start;gap:8px;}
}
@media (prefers-reduced-motion:reduce){
  .pr-sk i{animation:none;}
  .pr-card,.pr-faq .pm::after,.pr-seg button{transition:none;}
}
