/* Ragulika IP - IP Intelligence. Editorial + lab visual language.
   Namespaced .ipi-* so nothing can collide with app.css or ip.css. */
.ipi{
  --ink:#0A1E3C; --ink-2:#22375A; --ink-3:#5A6B85; --ink-4:#8A97AC;
  --line:#DFE4EC; --line-2:#EDF0F5;
  --paper:#FFFFFF; --canvas:#F4F6FA; --wash:#EEF2F8;
  --brand:#0A1E3C; --spark:#C8511B; --spark-soft:#FDF1EA;
  --teal:#0E6E63; --teal-soft:#E7F4F1;
  --low:#5A6B85; --low-bg:#EEF1F6;
  --med:#8A6100; --med-bg:#FDF4E0;
  --high:#B0480F; --high-bg:#FCEEE5;
  --crit:#A4162C; --crit-bg:#FCEAEC;
  --r:14px; --r-sm:9px;
  --shadow:0 1px 2px rgba(10,30,60,.05), 0 8px 24px -12px rgba(10,30,60,.18);
  --shadow-lg:0 2px 4px rgba(10,30,60,.06), 0 20px 48px -20px rgba(10,30,60,.28);
  --sans:'DM Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --display:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
}
.ipi *,.ipi *::before,.ipi *::after{box-sizing:border-box}
body.ipi-body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);
  font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased}
.ipi img{max-width:100%;height:auto}
.ipi a{color:inherit}
.ipi-wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 20px}
.ipi-wrap-narrow{max-width:768px}
.ipi-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ipi-mast{background:var(--brand);color:#fff}
.ipi-mast-in{display:flex;align-items:center;gap:16px;height:60px}
.ipi-mast a{color:#fff;text-decoration:none}
.ipi-logo{display:flex;align-items:center;gap:10px;font-family:var(--display);font-weight:800;letter-spacing:-.02em;font-size:16px}
.ipi-logo img{height:26px;width:auto;display:block;filter:brightness(0) invert(1)}
.ipi-mast-tag{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#9FB4D2;border-left:1px solid rgba(255,255,255,.22);padding-left:14px}
.ipi-mast-sp{flex:1}
.ipi-mast-cta{display:inline-block;background:#fff;color:var(--brand)!important;font-family:var(--display);font-weight:700;
  font-size:13.5px;padding:8px 15px;border-radius:99px;white-space:nowrap}
.ipi-mast-cta:hover{background:#EAF0F8}
@media(max-width:640px){.ipi-mast-tag{display:none}}
.ipi-nav{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.6) blur(10px);
  border-bottom:1px solid var(--line)}
.ipi-nav-in{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}
.ipi-nav-in::-webkit-scrollbar{display:none}
.ipi-nav a{flex:0 0 auto;display:block;padding:13px 13px 11px;font-family:var(--display);font-weight:600;font-size:14px;
  color:var(--ink-3);text-decoration:none;border-bottom:2px solid transparent;white-space:nowrap}
.ipi-nav a:hover{color:var(--ink)}
.ipi-nav a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--spark)}
.ipi h1,.ipi h2,.ipi h3,.ipi h4{font-family:var(--display);letter-spacing:-.025em;line-height:1.16;margin:0;color:var(--ink)}
.ipi h1{font-size:clamp(30px,5.2vw,50px);font-weight:800}
.ipi h2{font-size:clamp(23px,3.2vw,32px);font-weight:800}
.ipi h3{font-size:20px;font-weight:700;line-height:1.3}
.ipi h4{font-size:16.5px;font-weight:700}
.ipi p{margin:0 0 1em}
.ipi-eyebrow{font-family:var(--display);font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--spark)}
.ipi-lede{font-size:19px;line-height:1.6;color:var(--ink-2)}
.ipi-muted{color:var(--ink-3)}
.ipi-tiny{font-size:13px;line-height:1.55;color:var(--ink-3)}
.ipi-hero{background:linear-gradient(178deg,#0A1E3C 0%,#0F2A50 58%,#14335E 100%);color:#fff;padding:56px 0 60px;position:relative;overflow:hidden}
.ipi-hero::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:56px 56px;-webkit-mask-image:radial-gradient(120% 90% at 78% 8%,#000 0%,transparent 72%);mask-image:radial-gradient(120% 90% at 78% 8%,#000 0%,transparent 72%)}
.ipi-hero>*{position:relative;z-index:1}
.ipi-hero h1{color:#fff;max-width:17ch}
.ipi-hero .ipi-eyebrow{color:#F2A97E}
.ipi-hero-sub{font-size:18.5px;line-height:1.6;color:#C6D4E8;max-width:60ch;margin:16px 0 0}
.ipi-hero-rule{width:52px;height:3px;background:var(--spark);border-radius:2px;margin:22px 0 0}
.ipi-search{margin:26px 0 0;max-width:640px}
.ipi-search form{display:flex;gap:8px;background:#fff;border-radius:99px;padding:6px 6px 6px 18px;box-shadow:var(--shadow-lg)}
.ipi-search input{flex:1;min-width:0;border:0;outline:0;font:inherit;font-size:16px;color:var(--ink);background:transparent;padding:11px 0}
.ipi-search input::placeholder{color:var(--ink-4)}
.ipi-search button{flex:0 0 auto;border:0;cursor:pointer;background:var(--spark);color:#fff;font-family:var(--display);
  font-weight:700;font-size:14.5px;padding:11px 20px;border-radius:99px}
.ipi-search button:hover{background:#A9430F}
.ipi-search-plain form{border-radius:var(--r);box-shadow:none;border:1px solid var(--line);padding:5px 5px 5px 16px}
.ipi-search-plain button{border-radius:var(--r-sm)}
.ipi-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}
.ipi-chip{display:inline-block;font-size:13.5px;padding:7px 13px;border-radius:99px;text-decoration:none;
  border:1px solid rgba(255,255,255,.24);color:#D7E2F1}
.ipi-chip:hover{background:rgba(255,255,255,.1);color:#fff}
.ipi-chip-light{border-color:var(--line);color:var(--ink-2);background:#fff}
.ipi-chip-light:hover{background:var(--wash);color:var(--ink)}
.ipi-sec{padding:52px 0}
.ipi-sec-tight{padding:34px 0}
.ipi-sec-paper{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ipi-sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:0 0 22px}
.ipi-sec-head p{margin:8px 0 0;max-width:62ch}
.ipi-more{font-family:var(--display);font-weight:700;font-size:14px;color:var(--spark);text-decoration:none;white-space:nowrap}
.ipi-more:hover{text-decoration:underline}
.ipi-grid{display:grid;gap:16px}
.ipi-g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ipi-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ipi-g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.ipi-g3,.ipi-g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ipi-g2,.ipi-g3,.ipi-g4{grid-template-columns:minmax(0,1fr)}}
.ipi-card{display:flex;flex-direction:column;gap:10px;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--r);padding:20px;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s,transform .15s}
a.ipi-card:hover{border-color:#C3CEDF;box-shadow:var(--shadow);transform:translateY(-1px)}
.ipi-card h3{font-size:18.5px}
.ipi-card p{margin:0;font-size:15px;line-height:1.55;color:var(--ink-3)}
.ipi-card-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ipi-card-foot{margin-top:auto;padding-top:12px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ipi-num{font-family:var(--display);font-weight:800;font-size:12px;color:var(--ink-4);letter-spacing:.08em}
.ipi-portal{display:flex;flex-direction:column;gap:8px;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--r);padding:22px;text-decoration:none;color:inherit;position:relative;overflow:hidden}
.ipi-portal::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--spark);opacity:0;transition:opacity .15s}
.ipi-portal:hover::before{opacity:1}
.ipi-portal:hover{border-color:#C3CEDF;box-shadow:var(--shadow)}
.ipi-portal h3{font-size:19px}
.ipi-portal p{margin:0;font-size:14.5px;color:var(--ink-3);line-height:1.55}
.ipi-portal-n{font-family:var(--display);font-size:12px;font-weight:700;color:var(--ink-4);letter-spacing:.08em;text-transform:uppercase}
.ipi-sev{display:inline-flex;align-items:center;gap:6px;font-family:var(--display);font-weight:700;font-size:11px;
  letter-spacing:.09em;text-transform:uppercase;padding:4px 9px;border-radius:99px;white-space:nowrap}
.ipi-sev::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.ipi-sev-low{color:var(--low);background:var(--low-bg)}
.ipi-sev-medium{color:var(--med);background:var(--med-bg)}
.ipi-sev-high{color:var(--high);background:var(--high-bg)}
.ipi-sev-critical{color:var(--crit);background:var(--crit-bg)}
.ipi-tag{display:inline-block;font-size:12px;font-weight:500;color:var(--ink-3);background:var(--wash);
  padding:4px 9px;border-radius:99px;white-space:nowrap;text-decoration:none}
a.ipi-tag:hover{background:#E2E9F3;color:var(--ink)}
.ipi-scale{display:flex;gap:14px;flex-wrap:wrap;margin:18px 0 0}
.ipi-scale div{flex:1 1 190px;border-left:3px solid var(--line);padding:2px 0 2px 12px}
.ipi-scale b{display:block;font-family:var(--display);font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.ipi-scale span{font-size:14px;color:var(--ink-3)}
.ipi-scale .s-low{border-color:var(--low)} .ipi-scale .s-low b{color:var(--low)}
.ipi-scale .s-medium{border-color:var(--med)} .ipi-scale .s-medium b{color:var(--med)}
.ipi-scale .s-high{border-color:var(--high)} .ipi-scale .s-high b{color:var(--high)}
.ipi-scale .s-critical{border-color:var(--crit)} .ipi-scale .s-critical b{color:var(--crit)}
.ipi-crumb{font-size:13.5px;color:var(--ink-3);margin:0 0 14px}
.ipi-crumb a{color:var(--ink-3);text-decoration:none}
.ipi-crumb a:hover{color:var(--spark);text-decoration:underline}
.ipi-art{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:34px;margin:0 0 20px}
@media(max-width:640px){.ipi-art{padding:22px 18px;border-radius:14px}}
.ipi-art-head{border-bottom:1px solid var(--line-2);padding-bottom:20px;margin-bottom:22px}
.ipi-art-head h1{font-size:clamp(26px,4.2vw,38px)}
.ipi-art-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:14px 0 0}
.ipi-prose{font-size:17.5px;line-height:1.68;color:var(--ink-2)}
.ipi-prose h2{font-size:22px;margin:32px 0 12px}
.ipi-prose h3{font-size:18px;margin:26px 0 10px}
.ipi-prose ul,.ipi-prose ol{margin:0 0 1em;padding-left:22px}
.ipi-prose li{margin:0 0 .45em}
.ipi-prose strong{color:var(--ink);font-weight:700}
.ipi-prose a{color:var(--spark);text-decoration:underline;text-underline-offset:2px}
.ipi-call{border-radius:var(--r-sm);padding:16px 18px;margin:22px 0;border:1px solid var(--line);background:var(--wash)}
.ipi-call b{display:block;font-family:var(--display);font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;margin:0 0 6px}
.ipi-call p:last-child{margin:0}
.ipi-call-90{background:var(--teal-soft);border-color:#C7E4DD}
.ipi-call-90 b{color:var(--teal)}
.ipi-call-mistake{background:var(--spark-soft);border-color:#F5D7C6}
.ipi-call-mistake b{color:var(--spark)}
.ipi-call-law{background:#F2F5FA;border-color:#D8E1EE}
.ipi-call-law b{color:var(--ink-2)}
.ipi-call-next{background:#fff;border-color:var(--line);border-left:3px solid var(--ink)}
.ipi-call-next b{color:var(--ink)}
.ipi-strata{margin:22px 0}
.ipi-strat{display:grid;grid-template-columns:136px 1fr;gap:14px;padding:12px 0;border-top:1px solid var(--line-2)}
.ipi-strat b{font-family:var(--display);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);padding-top:3px}
.ipi-strat p{margin:0;font-size:16px}
@media(max-width:600px){.ipi-strat{grid-template-columns:1fr;gap:4px}}
.ipi-src{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;margin:24px 0 0}
.ipi-src h4{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-4);margin:0 0 10px}
.ipi-src ul{margin:0;padding-left:18px}
.ipi-src li{font-size:14.5px;line-height:1.55;margin:0 0 6px;color:var(--ink-2)}
.ipi-src a{color:var(--spark)}
.ipi-myth{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.ipi-myth-m{padding:18px 20px 16px;background:#FBFCFE;border-bottom:1px dashed var(--line)}
.ipi-myth-r{padding:16px 20px 18px}
.ipi-myth b{display:block;font-family:var(--display);font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 7px}
.ipi-myth-m b{color:var(--crit)}
.ipi-myth-r b{color:var(--teal)}
.ipi-myth p{margin:0;font-size:15.5px;line-height:1.55}
.ipi-myth-m p{font-family:var(--display);font-weight:600;font-size:16.5px;color:var(--ink);line-height:1.45}
.ipi-myth-r p{color:var(--ink-2)}
.ipi-myth-foot{margin-top:auto;padding:0 20px 16px}
.ipi-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:30px;align-items:start}
@media(max-width:900px){.ipi-layout{grid-template-columns:minmax(0,1fr)}}
.ipi-rail{position:sticky;top:60px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:18px}
@media(max-width:900px){.ipi-rail{position:static}}
.ipi-rail h4{font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-4);margin:0 0 9px}
.ipi-rail-grp{padding:0 0 14px;margin:0 0 14px;border-bottom:1px solid var(--line-2)}
.ipi-rail-grp:last-child{border:0;padding:0;margin:0}
.ipi-rail-list{display:flex;flex-wrap:wrap;gap:6px}
.ipi-rail-list a{font-size:13px;padding:5px 10px;border-radius:99px;text-decoration:none;color:var(--ink-2);background:var(--wash)}
.ipi-rail-list a:hover{background:#E2E9F3}
.ipi-rail-list a[aria-current]{background:var(--ink);color:#fff}
.ipi-count{font-size:13.5px;color:var(--ink-3);margin:0 0 14px}
.ipi-flow{position:relative;margin:26px 0 0;padding-left:30px}
.ipi-flow::before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:2px;background:linear-gradient(var(--spark),var(--line))}
.ipi-step{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;margin:0 0 14px}
.ipi-step::before{content:"";position:absolute;left:-27px;top:26px;width:12px;height:12px;border-radius:50%;background:#fff;border:3px solid var(--spark)}
.ipi-step h3{margin:0 0 8px}
.ipi-step-n{font-family:var(--display);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4)}
.ipi-step-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 0}
@media(max-width:640px){.ipi-step-grid{grid-template-columns:1fr}}
.ipi-step-cell{background:var(--canvas);border-radius:var(--r-sm);padding:12px 14px}
.ipi-step-cell b{display:block;font-family:var(--display);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);margin:0 0 4px}
.ipi-step-cell span{font-size:14.5px;line-height:1.5;color:var(--ink-2);display:block}
.ipi-acc{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);margin:0 0 10px;overflow:hidden}
.ipi-acc>summary{cursor:pointer;list-style:none;padding:16px 20px;font-family:var(--display);font-weight:700;font-size:16.5px;
  display:flex;gap:12px;align-items:flex-start;justify-content:space-between}
.ipi-acc>summary::-webkit-details-marker{display:none}
.ipi-acc>summary::after{content:"+";font-size:20px;font-weight:600;color:var(--ink-4);line-height:1;flex:0 0 auto}
.ipi-acc[open]>summary::after{content:"\2212"}
.ipi-acc[open]>summary{border-bottom:1px solid var(--line-2)}
.ipi-acc-body{padding:16px 20px 20px}
.ipi-acc-body p:last-child{margin:0}
.ipi-check{list-style:none;margin:0;padding:0}
.ipi-check li{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-sm);margin:0 0 10px}
.ipi-check label{display:flex;gap:12px;align-items:flex-start;padding:15px 18px;cursor:pointer}
.ipi-check input{margin:3px 0 0;width:18px;height:18px;flex:0 0 auto;accent-color:var(--spark)}
.ipi-check-q{font-family:var(--display);font-weight:600;font-size:16px;color:var(--ink)}
.ipi-check-why{display:block;font-size:14.5px;color:var(--ink-3);margin:5px 0 0;line-height:1.5;font-weight:400}
.ipi-check li.on{border-color:#F0C7AF;background:var(--spark-soft)}
.ipi-check-flag{display:none;font-size:14.5px;line-height:1.55;color:var(--high);padding:0 18px 15px 48px}
.ipi-check li.on .ipi-check-flag{display:block}
.ipi-check-score{background:var(--ink);color:#fff;border-radius:var(--r);padding:18px 20px;margin:18px 0 0}
.ipi-check-score b{font-family:var(--display);font-size:19px;display:block;margin:0 0 4px}
.ipi-check-score span{color:#C6D4E8;font-size:15px}
.ipi-tree{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:28px}
@media(max-width:640px){.ipi-tree{padding:20px 18px}}
.ipi-tree-q{font-family:var(--display);font-weight:800;font-size:clamp(20px,3vw,26px);letter-spacing:-.02em;margin:0 0 6px}
.ipi-tree-note{font-size:15.5px;color:var(--ink-3);margin:0 0 18px}
.ipi-tree-opts{display:grid;gap:10px}
.ipi-opt{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:left;cursor:pointer;font:inherit;
  background:var(--canvas);border:1px solid var(--line);border-radius:var(--r-sm);padding:15px 17px;color:var(--ink);transition:.15s}
.ipi-opt:hover{border-color:var(--spark);background:var(--spark-soft)}
.ipi-opt-k{font-family:var(--display);font-weight:800;font-size:12px;color:var(--spark);flex:0 0 auto;padding-top:3px}
.ipi-opt-t{font-family:var(--display);font-weight:600;font-size:16px}
.ipi-opt-d{display:block;font-size:14px;color:var(--ink-3);margin:3px 0 0;font-weight:400;font-family:var(--sans)}
.ipi-tree-path{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px;color:var(--ink-3);margin:0 0 16px}
.ipi-tree-path span{background:var(--wash);padding:4px 9px;border-radius:99px}
.ipi-tree-back{background:none;border:0;font:inherit;font-size:14px;color:var(--spark);cursor:pointer;padding:0;text-decoration:underline}
.ipi-tree-end{border-left:3px solid var(--spark);padding-left:16px}
.ipi-tree-end h3{margin:0 0 8px}
.ipi-az{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 22px}
.ipi-az a,.ipi-az span{display:inline-flex;align-items:center;justify-content:center;min-width:33px;height:33px;border-radius:8px;
  font-family:var(--display);font-weight:700;font-size:14px;text-decoration:none;border:1px solid var(--line);background:#fff;color:var(--ink-2)}
.ipi-az a:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.ipi-az span{color:#C6CEDB;background:var(--wash);border-color:transparent}
.ipi-def{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;margin:0 0 12px}
.ipi-def h3{margin:0 0 4px}
.ipi-def-plain{font-size:16px;color:var(--ink-2);margin:0 0 10px}
.ipi-letter{font-family:var(--display);font-weight:800;font-size:26px;color:var(--spark);margin:28px 0 12px;
  padding-bottom:8px;border-bottom:2px solid var(--line)}
.ipi-dl{margin:18px 0 0}
.ipi-dl div{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:13px 0;border-top:1px solid var(--line-2)}
.ipi-dl dt{font-family:var(--display);font-weight:700;font-size:11.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-4)}
.ipi-dl dd{margin:0;font-size:16px;color:var(--ink-2)}
@media(max-width:600px){.ipi-dl div{grid-template-columns:1fr;gap:3px}}
.ipi-cta{background:var(--ink);color:#fff;border-radius:18px;padding:28px 30px;margin:26px 0 0}
@media(max-width:640px){.ipi-cta{padding:22px 20px}}
.ipi-cta h3{color:#fff;font-size:21px;margin:0 0 8px}
.ipi-cta p{color:#C6D4E8;font-size:15.5px;margin:0 0 16px;max-width:58ch}
.ipi-cta-row{display:flex;gap:10px;flex-wrap:wrap}
.ipi-btn{display:inline-block;font-family:var(--display);font-weight:700;font-size:14.5px;padding:11px 20px;border-radius:99px;
  text-decoration:none;border:1px solid transparent;cursor:pointer}
.ipi-btn-spark{background:var(--spark);color:#fff}
.ipi-btn-spark:hover{background:#A9430F}
.ipi-btn-ghost{border-color:rgba(255,255,255,.3);color:#fff}
.ipi-btn-ghost:hover{background:rgba(255,255,255,.1)}
.ipi-btn-ink{background:var(--ink);color:#fff}
.ipi-btn-ink:hover{background:#132D52}
.ipi-btn-line{border-color:var(--line);color:var(--ink);background:#fff}
.ipi-btn-line:hover{background:var(--wash)}
.ipi-disc{border:1px solid var(--line);background:#fff;border-radius:var(--r-sm);padding:15px 17px;margin:26px 0 0}
.ipi-disc p{margin:0;font-size:13.5px;line-height:1.6;color:var(--ink-3)}
.ipi-disc b{color:var(--ink-2)}
.ipi-foot{background:var(--brand);color:#9FB4D2;padding:40px 0 46px;margin-top:46px}
.ipi-foot a{color:#D7E2F1;text-decoration:none}
.ipi-foot a:hover{text-decoration:underline}
.ipi-foot h4{color:#fff;font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px}
.ipi-foot ul{list-style:none;margin:0;padding:0}
.ipi-foot li{margin:0 0 7px;font-size:14.5px}
.ipi-foot-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:28px}
@media(max-width:820px){.ipi-foot-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.ipi-foot-grid{grid-template-columns:1fr}}
.ipi-foot-legal{border-top:1px solid rgba(255,255,255,.14);margin-top:30px;padding-top:20px;font-size:13px;line-height:1.65}
.ipi-empty{background:#fff;border:1px dashed var(--line);border-radius:var(--r);padding:30px;text-align:center;color:var(--ink-3)}
.ipi-hr{border:0;border-top:1px solid var(--line);margin:34px 0}
.ipi-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;margin:28px 0 0}
@media(max-width:600px){.ipi-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ipi-stat{background:var(--paper);padding:18px 20px}
.ipi-stat b{display:block;font-family:var(--display);font-weight:800;font-size:27px;letter-spacing:-.03em}
.ipi-stat span{font-size:13.5px;color:var(--ink-3)}
.ipi-hero .ipi-stats{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.16)}
.ipi-hero .ipi-stat{background:rgba(255,255,255,.06)}
.ipi-hero .ipi-stat b{color:#fff}
.ipi-hero .ipi-stat span{color:#B8C9E0}
.ipi-pag{display:flex;gap:8px;justify-content:center;margin:26px 0 0;flex-wrap:wrap}
.ipi-pag a,.ipi-pag span{padding:8px 13px;border-radius:8px;border:1px solid var(--line);background:#fff;text-decoration:none;font-size:14px}
.ipi-pag span{background:var(--ink);color:#fff;border-color:var(--ink)}
.ipi mark{background:#FFF0C2;color:inherit;padding:0 2px;border-radius:2px}
.ipi-save{background:none;border:1px solid var(--line);border-radius:99px;padding:6px 13px;font-family:var(--display);
  font-weight:700;font-size:12.5px;color:var(--ink-3);cursor:pointer}
.ipi-save:hover{border-color:var(--spark);color:var(--spark)}
.ipi-save[aria-pressed="true"]{background:var(--spark);border-color:var(--spark);color:#fff}
.ipi-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ipi-between{justify-content:space-between}
@media print{.ipi-nav,.ipi-mast,.ipi-foot,.ipi-cta,.ipi-save{display:none}}

/* checklist markup: pure-CSS reveal, no script needed */
.ipi-check li{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px;padding:15px 18px}
.ipi-check .ipi-ck{margin:3px 0 0;width:18px;height:18px;flex:0 0 auto;accent-color:var(--spark)}
.ipi-check label{flex:1 1 60%;min-width:0;display:block;cursor:pointer;padding:0}
.ipi-check-flag{display:none;flex-basis:100%;padding:0;color:var(--high);font-size:14.5px;line-height:1.55}
.ipi-check .ipi-ck:checked ~ .ipi-check-flag{display:block}
.ipi-check li:has(.ipi-ck:checked){border-color:#F0C7AF;background:var(--spark-soft)}
.ipi-mine{display:grid;gap:16px}
.ipi-mine:empty{display:none}

.ipi-mark{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;
  background:var(--spark);color:#fff;font-family:var(--display);font-weight:800;font-size:15px;letter-spacing:0}

/* --- masthead: white, with the Ragulika mark at full colour --- */
.ipi-mast{background:#fff;border-bottom:1px solid var(--line)}
.ipi-mast-in{height:66px;gap:14px}
.ipi-mast a{color:var(--ink);text-decoration:none}
.ipi-logo{gap:0}
.ipi-logo img{height:34px;width:auto;display:block;filter:none}
.ipi-mast-tag{color:var(--ink-4);border-left:1px solid var(--line);padding-left:14px;font-weight:600}
.ipi-mast-alt{font-family:var(--display);font-weight:700;font-size:13.5px;color:var(--ink-3);white-space:nowrap}
.ipi-mast-alt:hover{color:var(--spark)}
.ipi-mast-cta{background:var(--ink);color:#fff!important;font-size:13.5px}
.ipi-mast-cta:hover{background:#16325C}
.ipi-nav{background:rgba(238,242,248,.96);border-bottom:1px solid var(--line)}
.ipi-nav a[aria-current="page"]{background:#fff}
@media(max-width:760px){.ipi-mast-tag{display:none}.ipi-logo img{height:28px}.ipi-mast-in{height:58px;gap:10px}}
@media(max-width:520px){.ipi-mast-alt{display:none}}
