/* PayNPlayKasinot.co — "Ledger" design system.
   Editorial league-table / financial-ledger identity for a Finnish Pay N Play
   casino comparison. Serif masthead display (Newsreader) + humanist grotesk body
   (Hanken Grotesk), hairline rules, numbered sections, tabular figures.
   Palette: deep petrol + arctic cyan + muted mint + warm amber on pale ice-grey.
   Fully self-hosted fonts (no external CDN). Mobile-first, WCAG AA.
   Independent identity — deliberately shares no class namespace or layout with any sibling site. */

/* ---- self-hosted variable fonts (latin subset covers Finnish ä/ö/å) ---- */
@font-face{font-family:'Newsreader';font-style:normal;font-weight:500 700;font-display:swap;
  src:url('/static/fonts/newsreader-var.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400 800;font-display:swap;
  src:url('/static/fonts/hanken-var.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

:root{
  /* ---- owner palette (kept; rebalanced application) ---- */
  --petrol:#0E4257;          /* deep petrol blue (primary ink / structure) */
  --petrol-hover:#0A3444;
  --petrol-ink:#0C2A38;      /* darkest — headings/body */
  --petrol-050:#E1EEF2;
  --cyan:#15AFC6;            /* arctic cyan (decorative) */
  --cyan-dark:#0C6F80;       /* AA-safe cyan for text/links on white */
  --cyan-050:#E2F5F8;
  --mint:#5FBE9C;            /* muted mint (secondary accent) */
  --mint-dark:#2E7D5B;       /* AA-safe mint text */
  --mint-050:#E5F4EC;
  --amber:#E7A339;           /* warm amber (the ledger highlight) */
  --amber-ink:#8A5410;       /* AA-safe amber text */
  --amber-050:#FBF0DD;
  --ice:#EDF3F5;             /* pale ice-grey background */
  --paper:#F7FAFB;           /* near-white ledger paper */
  --white:#FFFFFF;

  /* ---- surfaces & text ---- */
  --page-bg:var(--paper);
  --surface:var(--white);
  --surface-soft:#E6EEF1;
  --ink:var(--petrol-ink);
  --ink-2:#3E5663;
  --dim:#5C727D;
  --rule:#D2E0E5;            /* hairline */
  --rule-strong:#A9C4CC;
  --danger:#B14A4A;

  --maxw:1200px;
  --serif:'Newsreader',Georgia,'Times New Roman',serif;
  --sans:'Hanken Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  --shadow:0 1px 0 var(--rule);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--page-bg);line-height:1.66;font-size:17px;-webkit-font-smoothing:antialiased}
main{counter-reset:pnpsec}
img{max-width:100%;height:auto;display:block}
a{color:var(--cyan-dark);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{font-family:var(--serif);line-height:1.12;color:var(--ink);font-weight:600;margin:0 0 .5em;letter-spacing:-.008em}
h1{font-size:clamp(2.3rem,5.4vw,3.6rem);font-weight:600}
h2{font-size:clamp(1.55rem,3.1vw,2.25rem);margin-top:0}
h3{font-size:clamp(1.14rem,2vw,1.4rem)}
h4{font-size:1.02rem}
p{margin:0 0 1rem}
b,strong{font-weight:700}
.pnp-wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.pnp-wrap--narrow{max-width:820px}
.pnp-band{padding:58px 0;border-top:1px solid var(--rule)}
.pnp-band--tight{padding:30px 0}
.pnp-band--plain{border-top:none}
.pnp-band--soft{background:var(--ice)}
.pnp-band--paper{background:var(--surface)}
.pnp-lede{font-family:var(--serif);font-size:1.28rem;line-height:1.5;color:var(--ink-2);max-width:38ch;font-weight:400}
.pnp-lede--wide{max-width:62ch}
.pnp-dim{color:var(--dim)}
.pnp-flow>*+*{margin-top:1.05rem}
.pnp-mb0{margin-bottom:0}
:focus-visible{outline:3px solid var(--cyan-dark);outline-offset:2px}

/* ---- editorial labels ---- */
.pnp-eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;font-weight:700;color:var(--cyan-dark);display:inline-block;margin-bottom:.6rem}
/* numbered section label: auto "01 — LABEL" with a hairline lead */
.pnp-kicker{counter-increment:pnpsec;display:flex;align-items:center;gap:14px;
  text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;font-weight:700;color:var(--cyan-dark);margin:0 0 1.1rem}
.pnp-kicker::before{content:counter(pnpsec,decimal-leading-zero);font-family:var(--serif);font-size:1.35rem;font-weight:600;letter-spacing:0;color:var(--amber-ink);line-height:1}
.pnp-kicker::after{content:"";flex:1;height:1px;background:var(--rule)}

/* ---- skip link ---- */
.pnp-skip{position:absolute;left:-9999px;top:0;background:var(--petrol);color:#fff;padding:10px 16px;z-index:200}
.pnp-skip:focus{left:0}

/* ---- ticker (top strip) ---- */
.pnp-ticker{background:var(--petrol-ink);color:#C4D6DE;font-size:.76rem;letter-spacing:.02em}
.pnp-ticker .pnp-wrap{display:flex;gap:18px;justify-content:space-between;align-items:center;padding:8px 24px;flex-wrap:wrap}
.pnp-ticker strong{color:#fff;font-weight:700}
.pnp-ticker__tag{font-family:var(--serif);font-style:italic;color:var(--amber)}

/* ---- masthead (light, hairline) ---- */
.pnp-mast{position:sticky;top:0;z-index:60;background:rgba(247,250,251,.94);backdrop-filter:saturate(1.4) blur(6px);border-bottom:1px solid var(--rule-strong)}
.pnp-mast .pnp-wrap{display:flex;align-items:center;gap:22px;padding:14px 24px;position:relative}
.pnp-brand{display:flex;align-items:center}
.pnp-brand img{height:32px;width:auto}
.pnp-menu{display:flex;gap:2px;margin-left:auto;align-items:center}
.pnp-menu a{color:var(--ink);font-weight:600;font-size:.86rem;padding:8px 11px;border-bottom:2px solid transparent}
.pnp-menu a:hover{color:var(--cyan-dark);border-bottom-color:var(--cyan);text-decoration:none}
.pnp-age{display:inline-flex;align-items:center;margin-left:8px}
.pnp-burger{display:none;margin-left:auto;background:none;border:1px solid var(--rule-strong);padding:9px 11px;cursor:pointer}
.pnp-burger span{display:block;width:20px;height:2px;background:var(--ink);margin:4px 0}

/* 18+ token */
.pnp-18{font-family:var(--sans);font-weight:800;color:#8A1F1F;border:2px solid #8A1F1F;padding:1px 6px;font-size:.8rem;white-space:nowrap;letter-spacing:.02em}
.pnp-18--ice{color:#fff;border-color:#7FE3EC}

/* ---------- HERO: asymmetric editorial + facts ledger ---------- */
.pnp-lead{background:var(--surface);border-top:none}
.pnp-lead .pnp-wrap{padding:56px 24px 50px}
.pnp-lead__grid{display:grid;grid-template-columns:1.55fr .95fr;gap:52px;align-items:start}
.pnp-lead__main h1{max-width:14ch;margin-top:.2rem}
.pnp-lead__hd{display:flex;align-items:baseline;gap:14px;border-bottom:2px solid var(--ink);padding-bottom:.5rem;margin-bottom:1.2rem}
.pnp-lead__no{font-family:var(--serif);font-size:1rem;font-weight:600;color:var(--amber-ink)}
.pnp-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.pnp-tag{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--rule-strong);color:var(--ink);padding:6px 12px;font-size:.8rem;font-weight:600;background:var(--surface)}
.pnp-tag__dot{width:7px;height:7px;background:var(--cyan)}
.pnp-tag__dot--mint{background:var(--mint)}
.pnp-tag__dot--amber{background:var(--amber)}

/* quick-facts ledger panel */
.pnp-facts{border:1px solid var(--rule-strong);background:var(--surface)}
.pnp-facts__cap{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--petrol-ink);color:#fff;
  padding:11px 16px;font-family:var(--sans);text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;font-weight:700}
.pnp-facts__cap span{font-family:var(--serif);text-transform:none;letter-spacing:0;color:var(--amber);font-style:italic;font-size:.86rem}
.pnp-facts__row{display:grid;grid-template-columns:8.5rem 1fr;gap:12px;padding:12px 16px;border-top:1px solid var(--rule);font-size:.9rem}
.pnp-facts__row:first-of-type{border-top:none}
.pnp-facts__k{color:var(--dim);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:700;padding-top:2px}
.pnp-facts__v{color:var(--ink);font-weight:600}
.pnp-facts__foot{padding:10px 16px;border-top:1px solid var(--rule);background:var(--ice);font-size:.74rem;color:var(--dim)}

/* ---------- byline ---------- */
.pnp-byline{display:flex;gap:12px;flex-wrap:wrap;align-items:center;font-size:.84rem;color:var(--dim);margin:20px 0 0;padding-top:16px;border-top:1px solid var(--rule)}
.pnp-byline img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:1px solid var(--rule)}
.pnp-byline b{color:var(--ink)}

/* ---------- section heading composite (used on inner content) ---------- */
.pnp-sechead{max-width:64ch}

/* ---------- buttons / CTA ---------- */
.pnp-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--sans);font-weight:700;font-size:.95rem;
  padding:13px 22px;cursor:pointer;border:2px solid var(--petrol);background:var(--surface);color:var(--petrol);text-align:center;min-height:46px;transition:background .15s,color .15s}
.pnp-cta:hover{text-decoration:none;background:var(--petrol);color:#fff}
.pnp-cta--go{background:var(--petrol);color:#fff}
.pnp-cta--go:hover{background:var(--amber);border-color:var(--amber);color:var(--petrol-ink)}
.pnp-cta--ghost{border-color:var(--rule-strong);color:var(--ink);background:transparent}
.pnp-cta--block{width:100%}
.pnp-cta[aria-disabled="true"]{background:var(--ice);border-color:var(--rule);color:#8497A0;cursor:not-allowed;pointer-events:none}
.pnp-note{font-size:.74rem;color:var(--dim);margin-top:7px}
.pnp-rlink{font-size:.85rem;font-weight:700;color:var(--cyan-dark);border-bottom:1px solid transparent}
.pnp-rlink:hover{border-bottom-color:var(--cyan);text-decoration:none}

/* ---------- rating state (never a number while unverified) ---------- */
.pnp-rate{display:inline-flex;align-items:center;gap:6px;background:var(--cyan-050);color:var(--cyan-dark);border:1px solid var(--rule);padding:3px 11px;font-size:.72rem;font-weight:700;letter-spacing:.02em}
.pnp-rate::before{content:"◷";font-size:.85rem}
.pnp-ratewrap{display:inline-flex;align-items:baseline;gap:5px;font-family:var(--serif)}
.pnp-ratewrap b{font-size:1.3rem}
.pnp-ratescale{font-size:.72rem;color:var(--dim)}

/* ====================================================================
   LEAGUE TABLE — full-width ranked ledger rows (the moat component)
   ==================================================================== */
.pnp-league{border:1px solid var(--rule-strong);background:var(--surface)}
.pnp-league__head{display:grid;grid-template-columns:5.5rem 1fr 12.5rem;gap:0;
  background:var(--petrol-ink);color:#B9D0D8;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.13em}
.pnp-league__head span{padding:11px 18px}
.pnp-league__head span+span{border-left:1px solid rgba(255,255,255,.12)}

.pnp-entry{display:grid;grid-template-columns:5.5rem 1fr 12.5rem;border-top:1px solid var(--rule-strong);position:relative}
.pnp-entry:nth-child(even of .pnp-entry){background:var(--paper)}
.pnp-entry--lead{box-shadow:inset 4px 0 0 var(--amber)}
/* rank gutter with large ghost numeral */
.pnp-entry__rank{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:20px 6px;border-right:1px solid var(--rule)}
.pnp-entry__num{font-family:var(--serif);font-weight:600;font-size:clamp(2.6rem,5vw,3.7rem);line-height:.82;
  color:transparent;-webkit-text-stroke:1.5px var(--rule-strong);letter-spacing:-.02em}
.pnp-entry--lead .pnp-entry__num{-webkit-text-stroke-color:var(--amber)}
@supports not ((-webkit-text-stroke:1px black)){.pnp-entry__num{color:var(--rule-strong);-webkit-text-stroke:0}}
.pnp-entry__pick{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--amber-ink)}

.pnp-entry__body{min-width:0;padding:20px 22px;display:flex;flex-direction:column;gap:13px}
.pnp-entry__top{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.pnp-entry__logo{width:104px;height:52px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--rule);padding:6px;flex:0 0 auto}
.pnp-entry__logo img{max-height:100%;width:auto;object-fit:contain}
.pnp-entry__name{font-family:var(--serif);font-weight:600;font-size:1.32rem;color:var(--ink);line-height:1.1}
.pnp-entry__name a{color:inherit}
/* inline editorial meta tags (licence / providers) */
.pnp-meta{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-top:5px}
.pnp-meta__t{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;
  color:var(--ink-2);border:1px solid var(--rule);padding:3px 9px;background:var(--surface)}
.pnp-meta__t b{color:var(--dim);font-weight:700}
.pnp-meta__t--lic{border-color:var(--rule-strong);color:var(--petrol)}
.pnp-meta__t--dep::before{content:"";width:7px;height:7px;background:var(--petrol)}
.pnp-meta__t--wd::before{content:"";width:7px;height:7px;background:var(--mint)}

/* bonus highlighted figure */
.pnp-bfig{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:11px 0}
.pnp-bfig__lab{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--dim)}
.pnp-bfig__sum{font-family:var(--serif);font-weight:600;font-size:1.5rem;line-height:1.05;color:var(--ink);
  box-shadow:inset 0 -.38em 0 var(--amber-050)}
.pnp-bfig__terms{flex:1 1 100%;font-size:.74rem;color:var(--dim);margin-top:2px}

/* ledger spec cells + withdrawal band */
.pnp-specs{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--rule)}
.pnp-spec{padding:9px 12px;border-right:1px solid var(--rule);font-size:.86rem;font-variant-numeric:tabular-nums}
.pnp-spec:last-child{border-right:none}
.pnp-spec b{display:block;color:var(--dim);font-size:.62rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700;margin-bottom:2px}
.pnp-wdband{display:inline-flex;align-items:center;gap:9px;background:var(--mint-050);border:1px solid var(--mint);
  padding:6px 13px;font-size:.82rem;font-weight:600;color:var(--mint-dark);font-variant-numeric:tabular-nums}
.pnp-wdband b{font-family:var(--serif);font-size:1rem;color:var(--ink)}
.pnp-wdband small{color:var(--dim);font-weight:600}

/* action column at row end */
.pnp-entry__act{display:flex;flex-direction:column;gap:8px;justify-content:center;align-items:stretch;padding:20px;border-left:1px solid var(--rule);background:var(--ice)}
.pnp-entry__act .pnp-rlink,.pnp-entry__act .pnp-rate{align-self:center}
.pnp-rg{font-size:.7rem;color:var(--dim);text-align:center;display:flex;gap:6px;justify-content:center;align-items:center;flex-wrap:wrap}
.pnp-flag{display:inline-block;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;background:var(--cyan-050);color:var(--cyan-dark)}
.pnp-flag--amber{background:var(--amber-050);color:var(--amber-ink)}

/* ---------- featured podium (ledger slips, not boxed rail cards) ---------- */
.pnp-podium{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pnp-slip{background:var(--surface);border:1px solid var(--rule-strong);border-top:3px solid var(--cyan);padding:22px;display:flex;flex-direction:column;gap:12px}
.pnp-slip--1{border-top-color:var(--amber)}
.pnp-slip__hd{display:flex;align-items:baseline;justify-content:space-between;gap:10px;border-bottom:1px solid var(--rule);padding-bottom:10px}
.pnp-slip__no{font-family:var(--serif);font-size:2rem;font-weight:600;line-height:1;color:var(--petrol)}
.pnp-slip--1 .pnp-slip__no{color:var(--amber-ink)}
.pnp-slip__logo{height:46px;display:flex;align-items:center}
.pnp-slip__logo img{max-height:100%;width:auto;object-fit:contain}
.pnp-slip__name{font-family:var(--serif);font-size:1.24rem;font-weight:600;color:var(--ink)}
.pnp-slip .pnp-cta{margin-top:auto}

/* ---------- generic content blocks ---------- */
.pnp-cols2{display:grid;grid-template-columns:1fr 1fr;gap:34px}
.pnp-cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pnp-panel{background:var(--surface);border:1px solid var(--rule);padding:22px}
.pnp-panel h3{margin-top:0}
a.pnp-panel{display:block;transition:border-color .15s}
a.pnp-panel:hover{text-decoration:none;border-color:var(--rule-strong);box-shadow:inset 0 -3px 0 var(--cyan)}
.pnp-qa{background:var(--surface);border:1px solid var(--rule);border-left:3px solid var(--cyan);padding:20px 22px}
.pnp-qa h3{font-size:1.06rem;font-family:var(--serif)}

.pnp-callout{border:1px solid var(--rule);border-left:4px solid var(--cyan);background:var(--cyan-050);padding:14px 18px;font-size:.92rem;color:var(--ink-2)}
.pnp-callout--warn{border-left-color:var(--amber);background:var(--amber-050)}
.pnp-callout--rg{border-left-color:var(--mint);background:var(--mint-050)}
.pnp-callout strong{color:var(--ink)}

/* ---------- data table ---------- */
.pnp-tablewrap{overflow-x:auto;border:1px solid var(--rule-strong);background:var(--surface)}
table.pnp-data{width:100%;border-collapse:collapse;min-width:600px}
table.pnp-data caption{text-align:left;padding:12px 16px;font-size:.8rem;color:var(--dim)}
table.pnp-data th,table.pnp-data td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--rule);font-size:.9rem;font-variant-numeric:tabular-nums}
table.pnp-data thead th{background:var(--petrol-ink);color:#fff;font-family:var(--sans);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}
table.pnp-data tbody tr:nth-child(even){background:var(--paper)}
table.pnp-data th[scope=row]{background:var(--ice);color:var(--ink);font-weight:700}

/* ---------- table of contents (ledger index) ---------- */
.pnp-toc{border:1px solid var(--rule-strong);background:var(--surface)}
.pnp-toc__cap{background:var(--ice);border-bottom:1px solid var(--rule);padding:12px 18px;font-family:var(--serif);font-weight:600;font-size:1.05rem}
.pnp-toc ol{margin:0;padding:10px 18px 14px;list-style:none;counter-reset:toc;columns:2;column-gap:34px}
.pnp-toc li{counter-increment:toc;margin-bottom:7px;font-size:.9rem;break-inside:avoid}
.pnp-toc li::before{content:counter(toc,decimal-leading-zero);font-family:var(--serif);color:var(--amber-ink);font-weight:600;margin-right:9px}
.pnp-toc a{color:var(--ink-2)}
.pnp-toc a[aria-current]{color:var(--cyan-dark);font-weight:700}

/* ---------- author box ---------- */
.pnp-author{display:flex;gap:16px;align-items:flex-start;background:var(--surface);border:1px solid var(--rule);border-left:3px solid var(--petrol);padding:20px 22px}
.pnp-author img{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:0 0 auto;border:1px solid var(--rule)}
.pnp-author__role{font-size:.68rem;color:var(--cyan-dark);font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.pnp-author__name{font-weight:600;color:var(--ink);font-family:var(--serif);font-size:1.14rem}

/* ---------- FAQ ---------- */
.pnp-faq details{background:var(--surface);border:1px solid var(--rule);border-top:none;overflow:hidden}
.pnp-faq details:first-child{border-top:1px solid var(--rule)}
.pnp-faq summary{cursor:pointer;padding:16px 18px;font-weight:600;color:var(--ink);font-family:var(--serif);font-size:1.08rem;
  list-style:none;display:flex;justify-content:space-between;gap:12px;align-items:center}
.pnp-faq summary::-webkit-details-marker{display:none}
.pnp-faq summary::after{content:"+";font-family:var(--sans);color:var(--cyan-dark);font-weight:800;font-size:1.25rem}
.pnp-faq details[open] summary::after{content:"–"}
.pnp-faq details[open] summary{border-bottom:1px solid var(--rule)}
.pnp-faq details>div{padding:14px 18px;color:var(--ink-2)}

/* ---------- breadcrumbs ---------- */
.pnp-crumbs{font-size:.8rem;color:var(--dim);padding:18px 0 0;letter-spacing:.02em}
.pnp-crumbs a{color:var(--dim)}
.pnp-crumbs a:hover{color:var(--cyan-dark)}
.pnp-crumbs span{color:var(--ink)}

/* ---------- steps / flow ---------- */
.pnp-steps{counter-reset:st;border:1px solid var(--rule-strong);background:var(--surface)}
.pnp-step{counter-increment:st;display:flex;gap:16px;align-items:flex-start;padding:16px 18px;border-top:1px solid var(--rule)}
.pnp-step:first-child{border-top:none}
.pnp-step::before{content:counter(st,decimal-leading-zero);flex:0 0 auto;font-family:var(--serif);font-weight:600;font-size:1.3rem;color:var(--amber-ink);width:2.2rem}

/* 4-stage open-banking flow */
.pnp-flow4{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--rule-strong);background:var(--surface);counter-reset:ob}
.pnp-flow4__item{counter-increment:ob;padding:20px 18px;border-left:1px solid var(--rule)}
.pnp-flow4__item:first-child{border-left:none}
.pnp-flow4__item::before{content:counter(ob,decimal-leading-zero);font-family:var(--serif);font-weight:600;font-size:1.5rem;color:var(--petrol);display:block;margin-bottom:8px}
.pnp-flow4__item h4{margin:0 0 6px;font-size:1rem}
.pnp-flow4__item p{margin:0;font-size:.85rem;color:var(--ink-2)}

/* ---------- pros / cons ---------- */
.pnp-pc{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pnp-pcbox{background:var(--surface);border:1px solid var(--rule);padding:22px}
.pnp-pcbox--pro{border-top:3px solid var(--mint)}
.pnp-pcbox--con{border-top:3px solid var(--amber)}
.pnp-pcbox h3{margin-top:0}
.pnp-pcbox ul{list-style:none;margin:0;padding:0}
.pnp-pcbox li{padding:7px 0 7px 24px;position:relative;font-size:.93rem;border-top:1px solid var(--rule)}
.pnp-pcbox li:first-child{border-top:none}
.pnp-pcbox--pro li::before{content:"+";position:absolute;left:2px;color:var(--mint-dark);font-weight:800}
.pnp-pcbox--con li::before{content:"–";position:absolute;left:3px;color:var(--danger);font-weight:800}

/* ---------- fact slip (dl) ---------- */
.pnp-factslip{background:var(--surface);border:1px solid var(--rule-strong)}
.pnp-factslip dl{margin:0}
.pnp-factslip dt{font-weight:700;color:var(--dim);font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;padding:11px 18px 2px}
.pnp-factslip dd{margin:0;color:var(--ink);font-weight:600;padding:0 18px 11px;border-bottom:1px solid var(--rule)}
.pnp-factslip dd:last-child{border-bottom:none}

/* ---------- trust strip ---------- */
.pnp-trust{border:1px solid var(--rule-strong);background:var(--surface);display:grid;grid-template-columns:repeat(5,1fr)}
.pnp-trust__i{display:flex;flex-direction:column;gap:3px;padding:15px 16px;border-left:1px solid var(--rule);font-size:.86rem;font-weight:600;color:var(--ink)}
.pnp-trust__i:first-child{border-left:none}
.pnp-trust__i svg{margin-bottom:4px}
.pnp-trust__i small{font-weight:500;color:var(--dim);font-size:.72rem}

/* ---------- editorial figure + media ---------- */
.pnp-fig{margin:0;border:1px solid var(--rule-strong);background:var(--surface)}
.pnp-fig img{width:100%;height:auto;display:block}
.pnp-fig figcaption{font-size:.76rem;color:var(--dim);padding:9px 15px;border-top:1px solid var(--rule)}
.pnp-media{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}
.pnp-media--rev .pnp-fig{order:2}
.pnp-media h2,.pnp-media h3{margin-top:0}

/* ---------- bank chips ---------- */
.pnp-banks{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--rule-strong);background:var(--surface)}
.pnp-bank{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;font-weight:600;font-size:.88rem;color:var(--ink);border-right:1px solid var(--rule);border-top:1px solid var(--rule)}
.pnp-bank::before{content:"";width:8px;height:8px;background:var(--cyan)}

/* ---------- provider strip ---------- */
.pnp-provs{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--rule-strong);background:var(--surface)}
.pnp-prov{padding:18px 20px;border-left:1px solid var(--rule)}
.pnp-prov:first-child{border-left:none}
.pnp-prov b{font-family:var(--serif);display:block;font-size:1.15rem;color:var(--petrol-ink);margin-bottom:3px}
.pnp-prov span{font-size:.84rem;color:var(--ink-2)}

/* ---------- verdict ---------- */
.pnp-verdict{background:var(--petrol-ink);color:#DCE9F2;padding:34px;border-left:4px solid var(--amber)}
.pnp-verdict h2{color:#fff}
.pnp-verdict .pnp-eyebrow{color:var(--amber)}
.pnp-verdict .pnp-lede{color:#C6DCE8}

/* ---------- disclosure ---------- */
.pnp-disc{font-size:.82rem;color:var(--ink-2);background:var(--ice);border:1px solid var(--rule);border-left:3px solid var(--dim);padding:11px 15px}

/* ---------- forms ---------- */
.pnp-form{display:grid;gap:14px;max-width:560px}
.pnp-form label{font-weight:600;font-size:.9rem;display:block;margin-bottom:5px}
.pnp-form input,.pnp-form textarea{width:100%;padding:12px 14px;border:1px solid var(--rule-strong);font:inherit;font-size:.95rem;background:var(--surface)}
.pnp-form .pnp-check{display:flex;gap:10px;align-items:flex-start;font-size:.88rem}
.pnp-form .pnp-check input{width:auto}

/* ---------- go stub ---------- */
.pnp-go{max-width:620px;margin:70px auto;padding:0 24px;text-align:center}
.pnp-go .pnp-panel{padding:32px;border-top:3px solid var(--cyan)}

/* ---------- footer (ledger masthead, dark) ---------- */
.pnp-foot{background:var(--petrol-ink);color:#A6BDC8;margin-top:0;font-size:.9rem;border-top:4px solid var(--amber)}
.pnp-foot .pnp-wrap{padding:48px 24px 24px}
.pnp-foot__grid{display:grid;grid-template-columns:1.6fr repeat(5,1fr);gap:26px}
.pnp-foot h4{color:#fff;font-family:var(--sans);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.14)}
.pnp-foot ul{list-style:none;margin:0;padding:0}
.pnp-foot li{margin-bottom:8px}
.pnp-foot a{color:#A6BDC8}
.pnp-foot a:hover{color:#fff}
.pnp-foot__brand img{height:32px;margin-bottom:12px;filter:brightness(0) invert(1)}
.pnp-foot__brand .pnp-serif{font-family:var(--serif)}
.pnp-seals{display:flex;flex-wrap:wrap;gap:0;border:1px solid rgba(255,255,255,.14);margin-top:26px}
.pnp-seal{display:inline-flex;align-items:center;gap:8px;padding:11px 15px;font-size:.76rem;font-weight:700;color:#CBDDE6;border-left:1px solid rgba(255,255,255,.12)}
.pnp-seal:first-child{border-left:none}
.pnp-seal b{color:#fff}
.pnp-foot__legal{border-top:1px solid rgba(255,255,255,.12);margin-top:26px;padding-top:22px;font-size:.8rem;color:#8399A6}
.pnp-foot__legal p{margin:0 0 8px}

/* ---------- responsive ---------- */
@media(max-width:1080px){
  .pnp-foot__grid{grid-template-columns:1fr 1fr 1fr}
  .pnp-trust{grid-template-columns:repeat(2,1fr)}
  .pnp-trust__i:nth-child(odd){border-left:none}
  .pnp-trust__i{border-top:1px solid var(--rule)}
  .pnp-trust__i:nth-child(-n+2){border-top:none}
}
@media(max-width:960px){
  .pnp-lead__grid{grid-template-columns:1fr;gap:36px}
  .pnp-podium,.pnp-cols3,.pnp-flow4,.pnp-provs{grid-template-columns:1fr 1fr}
  .pnp-flow4__item,.pnp-prov{border-left:none;border-top:1px solid var(--rule)}
  .pnp-flow4__item:first-child,.pnp-prov:first-child{border-top:none}
  .pnp-league__head{display:none}
}
@media(max-width:860px){
  .pnp-cols2,.pnp-pc{grid-template-columns:1fr}
  .pnp-toc ol{columns:1}
  .pnp-media,.pnp-media--rev{grid-template-columns:1fr}
  .pnp-media--rev .pnp-fig{order:0}
  .pnp-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);flex-direction:column;gap:0;
    border-bottom:1px solid var(--rule-strong);padding:6px 24px;box-shadow:0 12px 24px rgba(12,42,56,.12)}
  .pnp-menu.pnp-open{display:flex}
  .pnp-menu a{padding:13px 4px;border-bottom:1px solid var(--rule);width:100%}
  .pnp-age{margin:10px 0}
  .pnp-burger{display:block}
  .pnp-foot__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .pnp-podium,.pnp-cols3,.pnp-flow4,.pnp-provs{grid-template-columns:1fr}
  .pnp-specs{grid-template-columns:1fr 1fr}
  .pnp-spec:nth-child(2n){border-right:none}
  .pnp-entry{grid-template-columns:3.4rem 1fr;grid-template-areas:"rank body" "act act"}
  .pnp-entry__rank{grid-area:rank;border-right:1px solid var(--rule)}
  .pnp-entry__num{font-size:2.2rem}
  .pnp-entry__body{grid-area:body}
  .pnp-entry__act{grid-area:act;border-left:none;border-top:1px solid var(--rule)}
  .pnp-foot__grid{grid-template-columns:1fr}
  .pnp-seals{flex-direction:column}
  .pnp-seal{border-left:none;border-top:1px solid rgba(255,255,255,.12)}
  .pnp-seal:first-child{border-top:none}
  .pnp-facts__row{grid-template-columns:1fr}
  .pnp-facts__k{padding-bottom:2px}
  body{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
