/* PIVRA market guides: square slate system, compact hero, sticky tools, mobile action bar.
   Loaded on guide pages only, after the site and investor stylesheets. */

:root{
  --g-surface:#F7F8F9;
  --g-line:#E5E8EB;
  --g-line-2:#DDE2E7;
  --g-ink:#15191E;
  --g-body:#3A434C;
  --g-muted:#5B6570;
  --g-faint:#7A848E;
}

/* ---------- Hero ---------- */
html body .hero.svc-hero{padding:54px 0 34px}
html body .hero.svc-hero h1{font-size:clamp(1.9rem,2.8vw,2.3rem);line-height:1.12;letter-spacing:-.018em;max-width:820px;margin:12px 0 0}
html body .svc-hero .back{margin-bottom:10px;font-size:.78rem}
html body .svc-hero .eyebrow{font-size:.66rem;letter-spacing:.12em}
html body .svc-hero .lede{font-size:1.02rem;line-height:1.6;max-width:700px;margin-top:14px;color:var(--g-muted)}
html body .guide-meta{font-size:.7rem;margin-top:16px;color:#77828C}

/* ---------- Layout ---------- */
html body .wrap{max-width:1160px}
html body .inv-detail{grid-template-columns:minmax(0,1fr) 300px;gap:52px;max-width:1104px}
html body .guide-body{max-width:780px;min-width:0}
html body .guide-body p,
html body .guide-body li{font-size:1rem;line-height:1.7;color:var(--g-body)}
html body .guide-body p{max-width:68ch;margin-bottom:18px}
html body .guide-body h2{font-size:1.5rem;line-height:1.25;margin:44px 0 12px;letter-spacing:-.018em}
html body .guide-body h3{font-size:1.06rem;line-height:1.4;margin:26px 0 8px}
html body .guide-body h2 + p{font-size:1.03rem;line-height:1.7;color:#2E353B}
html body .guide-body table{border-radius:0;box-shadow:none;border-color:var(--g-line)}
html body .guide-body th{background:var(--g-surface)}

/* ---------- Sidebar ---------- */
html body .inv-aside{position:static;top:auto;max-height:none;display:grid;align-content:start;gap:12px;overflow:visible;padding-right:0}
@media (min-width:961px) and (min-height:980px){
  html body .inv-aside{position:sticky;top:96px;max-height:calc(100vh - 112px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#7A848E transparent;scrollbar-gutter:stable}
  html body .inv-aside::-webkit-scrollbar{width:8px}
  html body .inv-aside::-webkit-scrollbar-track{background:transparent}
  html body .inv-aside::-webkit-scrollbar-thumb{background:#7A848E;border:2px solid #fff}
}
html body .inv-box{background:var(--g-surface);border:1px solid var(--g-line);border-radius:0;padding:18px 18px 16px;box-shadow:none}
html body .inv-box h4{font-family:var(--sans);font-size:.66rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#59636D;margin:0 0 8px}
html body .inv-box p{font-family:var(--sans);font-size:.83rem;line-height:1.55;color:var(--g-muted);margin:0 0 12px}

/* Subscribe */
html body .g-k{display:block;font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:#6E7882}
html body .g-sub h4{font-family:var(--serif);font-size:1.12rem;font-weight:600;letter-spacing:-.01em;text-transform:none;color:var(--g-ink);margin:5px 0 6px;line-height:1.3}
html body .g-form{margin-top:10px}
html body .g-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html body .g-form input[type="email"]{width:100%;height:38px;border:1px solid var(--g-line-2);border-radius:0;background:#fff;padding:0 10px;font-family:var(--sans);font-size:.84rem;color:var(--g-ink);margin-bottom:8px}
html body .g-form input[type="email"]:focus{outline:2px solid rgba(21,25,30,.12);border-color:#9AA4AE}
html body .g-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
html body .g-btn{display:flex;width:100%;align-items:center;justify-content:center;min-height:38px;border:0;border-radius:0;background:var(--g-ink);color:#fff;font-family:var(--sans);font-size:.82rem;font-weight:600;text-decoration:none;border-bottom:0!important;cursor:pointer;padding:0 10px}
html body .g-btn:hover{background:#2B3238;color:#fff}
html body .g-fine{font-size:.7rem!important;color:var(--g-faint)!important;margin:8px 0 0!important;line-height:1.4!important}
html body .g-sub-inline{margin:34px 0!important}
html body .g-msg{font-family:var(--sans);font-size:.78rem;line-height:1.5;color:var(--g-muted);margin:8px 0 0!important;min-height:0}
html body .g-msg.err{color:#8A3B2A}
html body .g-msg.ok{color:#0B5F55;font-weight:600}
html body .g-turnstile{margin:0 0 8px}

/* Download */
html body .g-dl{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid var(--g-line-2)!important;border-radius:0;padding:9px 11px;margin-top:7px;text-decoration:none}
html body .g-dl:first-of-type{margin-top:0}
html body .g-dl:hover{border-color:#AEB8C2!important}
html body .g-dl b{display:block;font-family:var(--sans);font-size:.8rem;font-weight:600;color:var(--g-ink);line-height:1.3}
html body .g-dl span span{display:block;font-family:var(--mono);font-size:.62rem;color:var(--g-faint);letter-spacing:.02em;margin-top:2px}
html body .g-dl-ico{font-family:var(--mono);color:var(--g-muted);font-size:.95rem;line-height:1}

/* Quote */
html body .g-quote{background:var(--g-surface);border-color:var(--g-line)}
html body .g-quote p{margin-bottom:12px}

/* More guides */
html body .g-more a{display:block;font-family:var(--sans);font-size:.79rem;line-height:1.45;color:#4A535B;text-decoration:none;padding:7px 0;border-bottom:1px solid #E9ECEF!important}
html body .g-more a:last-child{border-bottom:0!important}
html body .g-more a:hover{color:var(--g-ink)}
html body .g-more a.here{color:var(--g-ink);font-weight:600}
html body .g-all{display:inline-block;margin-top:8px;font-family:var(--sans);font-size:.75rem;font-weight:600;color:var(--g-ink);text-decoration:none;border-bottom:1px solid var(--g-ink)!important}

/* ---------- Callouts and TOC inside guides ---------- */
html body .ba-guide .ba-rule{background:var(--g-surface)!important;border:1px solid var(--g-line)!important;border-radius:0!important;box-shadow:none!important;padding:24px 26px;margin:28px 0 36px}
html body .ba-guide .ba-rule p{color:#3E464E;font-family:var(--sans);font-size:.93rem;line-height:1.7;margin-bottom:12px}
html body .ba-guide .ba-rule strong{color:var(--g-ink)}
html body .ba-guide .ba-rule-kicker{background:#ECEEF1;color:#4A535B;border-radius:0;font-size:.62rem;letter-spacing:.1em;padding:5px 9px}
html body .ba-guide .ba-rule-kicker::before{display:none}
html body .ba-guide .ba-rule-src{color:#6C7680!important}

html body .ba-guide .ba-note,
html body .ba-guide .ba-warn{background:var(--g-surface)!important;border-color:var(--g-line)!important;border-radius:0!important;padding:18px 20px 18px 52px!important}
html body .ba-guide .ba-note::before,
html body .ba-guide .ba-warn::before{border-radius:0!important;background:#ECEEF1!important;color:#4A535B!important;width:22px!important;height:22px!important;left:18px!important;top:18px!important;font-size:.72rem!important}
html body .ba-guide .ba-note p,
html body .ba-guide .ba-warn p{font-size:.9rem!important;line-height:1.65!important}

html body .ba-guide .ba-toc{border-top:1px solid var(--g-line);padding-top:18px;margin-top:18px;background:transparent}
html body .ba-guide .ba-toc-h{color:#6B747D!important;font-size:.66rem!important}
html body .ba-guide .ba-toc li{padding-left:26px;font-size:.84rem}
html body .ba-guide .ba-toc li::before{background:transparent!important;color:#8A929A!important;width:auto!important;height:auto!important;font-family:var(--mono)!important;font-size:.64rem!important;top:1px!important;left:0!important}
html body .ba-guide .ba-toc a{font-size:.84rem;color:#3A434C;border-bottom:0}
html body .ba-guide .ba-toc a:hover{color:var(--teal-deep);border-bottom:0}

html body .ba-guide .ba-steps li::before{border-radius:0!important;background:#ECEEF1!important;color:#4A535B!important}

html body .ba-guide .ba-tablewrap{border-radius:0!important;box-shadow:none!important;border-color:var(--g-line)!important}
html body .ba-guide th{background:var(--g-surface)}

/* ---------- In-article quote bar ---------- */
html body .guide-help{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:32px 0;padding:14px 0;background:transparent!important;border:0;border-top:1px solid var(--g-line);border-bottom:1px solid var(--g-line);border-radius:0!important;box-shadow:none!important}
html body .guide-help>p:first-child{flex:1 1 400px;margin:0;font-family:var(--sans);font-size:.88rem;line-height:1.55;color:#4A535B}
html body .guide-help>p:first-child strong{display:inline;font-family:var(--sans);font-size:.88rem;font-weight:600;color:var(--g-ink);margin-right:5px}
html body .guide-help-actions{display:flex;gap:8px;margin:0}
html body .guide-help-actions .btn{padding:8px 13px!important;font-size:.77rem!important;border-radius:0!important}
html body .guide-help-actions .btn.primary{background:var(--g-ink)!important;color:#fff!important}
html body .guide-help-actions .btn.secondary{background:transparent!important;border:1px solid #D8DEE4!important;color:var(--g-ink)!important}
html body .guide-help-alt{display:none!important}

/* ---------- Mobile action bar ---------- */
.g-mbar{display:none}
@media (max-width:960px){
  html body .inv-detail{grid-template-columns:1fr;gap:28px}
  html body .inv-aside{order:-1;position:static;max-height:none;overflow:visible;padding-right:0;display:grid;grid-template-columns:1fr;gap:10px}
  html body .g-more-box,
  html body .g-quote{display:none}
  html body .hero.svc-hero{padding:40px 0 26px}
  html body .hero.svc-hero h1{font-size:1.85rem}
  html body .guide-body p,
  html body .guide-body li{font-size:.98rem}

  .g-mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:80;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--g-line);transform:translateY(110%);visibility:hidden;transition:transform .2s ease,visibility .2s ease}
  .g-mbar.is-on{transform:none;visibility:visible}
  .g-mbar a{flex:1;min-height:42px;display:flex;align-items:center;justify-content:center;gap:6px;font-family:var(--sans);font-size:.8rem;font-weight:600;text-decoration:none;color:var(--g-ink);background:#fff;border:1px solid var(--g-line-2);padding:0 8px}
  .g-mbar a.g-primary{background:var(--g-ink);border-color:var(--g-ink);color:#fff}
  .g-mbar a.g-ghost{flex:0 0 auto;padding:0 14px}
  body.g-mbar-on{padding-bottom:72px}
  body.g-mbar-on .wa-float{bottom:78px}
}
