:root{
  --paper:#fbf7ea; --sheet:#ffffff; --sky:#e4eef6; --sky2:#cadeed; --ink:#18292e; --soft:#46575b;
  --teal:#0d4f5c; --teal2:#093a44; --ochre:#8a5a00; --rule:#d9cfb2; --line:#e8e0c8;
  --ia:#0d4f5c; --mn:#2a5683; --sd:#6c4415; --mo:#7a3349;
  --f-head:"Young Serif",Georgia,serif; --f-body:"Figtree",system-ui,sans-serif; --f-mono:"IBM Plex Mono",ui-monospace,monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.65 var(--f-body);overflow-wrap:break-word}
img,svg{max-width:100%}
a{color:var(--teal);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--teal2);text-decoration-thickness:2px}
p a,li a,dd a,address a{overflow-wrap:anywhere}
:focus-visible{outline:3px solid var(--ochre);outline-offset:3px}
h1,h2,h3{font-family:var(--f-head);font-weight:400;line-height:1.15;margin:0 0 .5em;color:var(--teal2)}
h2{font-size:clamp(1.55rem,1.2rem + 1.4vw,2.1rem)}
p{margin:0 0 1em}
.pl-skip{position:absolute;left:16px;top:-80px;background:var(--teal);color:#fff;padding:12px 16px;z-index:50;border-radius:4px}
.pl-skip:focus{top:12px;color:#fff}
.pl-frame{width:100%;max-width:1200px;margin:0 auto;padding-left:16px;padding-right:16px}
@media(min-width:700px){.pl-frame{padding-left:32px;padding-right:32px}}
.pl-measure{max-width:68ch}

/* running head */
.pl-run{background:var(--sheet);border-bottom:1px solid var(--rule)}
.pl-run__in{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding-top:14px;padding-bottom:0}
.pl-name{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:center;text-decoration:none;color:var(--ink);min-height:44px}
.pl-name .pl-mark{grid-row:span 2}
.pl-name__t{font-family:var(--f-head);font-size:1.25rem;line-height:1.1;overflow-wrap:anywhere}
.pl-name__a{color:var(--teal2)}.pl-name__b{color:var(--ochre)}
.pl-name__s{font:500 .75rem/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}
.pl-tabs ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.pl-tabs a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:6px 8px;text-decoration:none;color:var(--ink);font-weight:600;font-size:.95rem;border-bottom:3px solid transparent;text-align:center}
.pl-tabs a:hover{background:var(--sky)}
.pl-tabs a[aria-current="page"]{border-bottom-color:var(--ochre)}
@media(min-width:900px){
  .pl-run__in{grid-template-columns:auto minmax(0,1fr);align-items:end;padding-top:18px}
  .pl-name{padding-bottom:14px}
  .pl-tabs ul{display:flex;justify-content:flex-end;border-top:0;gap:2px}
  .pl-tabs a{padding:8px 16px;border:1px solid transparent;border-bottom:0;border-radius:6px 6px 0 0}
  .pl-tabs a:hover{border-color:var(--rule);background:var(--sky)}
  .pl-tabs a[aria-current="page"]{border-color:var(--rule);background:var(--paper);border-bottom:0;box-shadow:inset 0 3px 0 var(--ochre)}
}

/* sheet head */
.pl-eyebrow{font:500 .8125rem/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ochre);margin-bottom:.6em}
.pl-sheet{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin-top:28px;margin-bottom:8px}
.pl-sheet__main,.pl-sheet__side{background:var(--sheet);border:1px solid var(--rule);border-radius:10px;padding:24px 20px}
.pl-sheet h1{font-size:clamp(2.3rem,1.6rem + 3.4vw,4.1rem);margin-bottom:.35em}
.pl-sheet h1 span{color:var(--ochre)}
.pl-lede{font-size:1.125rem;max-width:62ch}
.pl-sheet__side{display:grid;gap:18px;align-content:start;justify-items:center}
.pl-badge{width:100%;max-width:200px;height:auto}
.pl-fields{margin:0;width:100%;display:grid;gap:0;border-top:1px solid var(--line)}
.pl-fields div{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}
.pl-fields dt{font:500 .8125rem/1.5 var(--f-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--soft)}
.pl-fields dd{margin:0;font-size:1rem}
@media(min-width:900px){
  .pl-sheet{grid-template-columns:minmax(0,1fr) 300px;margin-top:40px}
  .pl-sheet__main{padding:40px 44px}
  .pl-sheet__side{padding:28px 24px}
  .pl-badge{max-width:220px}
}

/* disclosure */
.pl-disc{border:1px solid var(--sky2);border-left:4px solid var(--teal);background:var(--sky);border-radius:6px;padding:12px 16px;margin:0 0 1.25em;max-width:68ch}
.pl-disc__k{font:500 .75rem/1.4 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--teal2);margin:0 0 4px}
.pl-disc__t{margin:0;font-size:1rem}

/* brief */
.pl-brief{margin-top:40px}
.pl-crit{list-style:none;counter-reset:c;margin:24px 0 0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.pl-crit li{counter-increment:c;background:var(--sheet);border:1px solid var(--rule);border-top:3px solid var(--teal);border-radius:6px;padding:16px 18px;display:grid;gap:4px}
.pl-crit li::before{content:"0" counter(c);font:500 .8125rem var(--f-mono);color:var(--ochre)}
.pl-crit strong{font-family:var(--f-head);font-weight:400;font-size:1.2rem;color:var(--teal2)}
.pl-crit span{color:var(--soft);font-size:1rem}
@media(min-width:700px){.pl-crit{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1000px){.pl-crit{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* desk: finder + list */
.pl-desk{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;margin-top:48px}
@media(min-width:1000px){.pl-desk{grid-template-columns:280px minmax(0,1fr);align-items:start}
  .pl-finder{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow:auto}}
.pl-finder{background:var(--sheet);border:1px solid var(--rule);border-radius:10px;padding:20px}
.pl-finder__h{font-size:1.35rem}
.pl-finder__k{font:500 .75rem/1.4 var(--f-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--soft);margin:16px 0 8px}
.pl-chips{display:flex;flex-wrap:wrap;gap:8px}
.pl-chip{min-height:44px;padding:8px 14px;border:1px solid var(--sky2);background:var(--sheet);color:var(--ink);border-radius:999px;font:600 .9375rem var(--f-body);cursor:pointer}
.pl-chip:hover{background:var(--sky)}
.pl-chip[aria-pressed="true"]{background:var(--teal);border-color:var(--teal);color:#fff}
.pl-count{margin:16px 0 0;font-weight:600;color:var(--teal2)}
.pl-jump{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.pl-jump a{display:flex;gap:6px;align-items:center;min-height:44px;padding:6px 10px;border:1px solid var(--line);border-radius:6px;text-decoration:none;color:var(--ink);font-size:.9375rem;line-height:1.25;overflow-wrap:anywhere}
.pl-jump a span{font:500 .8125rem var(--f-mono);color:var(--ochre)}
.pl-jump a:hover{background:var(--sky)}
@media(min-width:1000px){.pl-jump{grid-template-columns:minmax(0,1fr)}}
.pl-list{display:grid;gap:22px}
.pl-list__h{margin-bottom:0}
.pl-empty{background:var(--sheet);border:1px dashed var(--rule);padding:16px;border-radius:8px}

/* entry dossier */
.pl-entry{background:var(--sheet);border:1px solid var(--rule);border-radius:10px;overflow:hidden;scroll-margin-top:16px;--rc:var(--ia)}
.pl-r-mn{--rc:var(--mn)}.pl-r-sd{--rc:var(--sd)}.pl-r-mo{--rc:var(--mo)}
.pl-entry[hidden]{display:none}
.pl-entry--own{border:3px solid var(--teal);--rc:var(--ochre)}
.pl-ribbon{margin:0;background:var(--ochre);color:#fff;font-weight:600;font-size:.9375rem;line-height:1.4;padding:10px 18px}
.pl-entry__grid{display:grid;grid-template-columns:minmax(0,1fr)}
.pl-spine{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:0 18px 14px;border-bottom:1px solid var(--line);background:var(--paper)}
.pl-tag{flex-basis:100%;align-self:flex-start;margin-left:-18px;margin-bottom:6px;background:var(--rc);color:#fff;font:600 .8125rem/1.3 var(--f-body);letter-spacing:.02em;padding:6px 12px;border-radius:0 0 8px 0;max-width:max-content}
.pl-rank{font:400 2.4rem/1 var(--f-head);color:var(--teal2)}
.pl-mono{display:grid;place-items:center;width:64px;height:64px;border-radius:8px;background:var(--sky);border:1px solid var(--sky2);box-shadow:inset 0 0 0 4px #fff}
.pl-mono span{font:400 1.35rem var(--f-head);color:var(--rc);letter-spacing:.04em}
.pl-body{padding:18px;min-width:0}
.pl-body__h h3{font-size:clamp(1.35rem,1.1rem + .9vw,1.75rem);margin-bottom:.15em}
.pl-loc{font:500 .875rem var(--f-mono);color:var(--soft);letter-spacing:.03em;margin-bottom:12px}
.pl-k{font:500 .75rem/1.4 var(--f-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ochre);margin:14px 0 4px}
.pl-cols{display:grid;grid-template-columns:minmax(0,1fr);gap:4px 28px}
.pl-cols p{max-width:68ch}
.pl-fac{margin:0 0 4px;padding-left:1.1em}
.pl-fac li{margin:3px 0}
.pl-fac li::marker{color:var(--rc)}
.pl-hl{background:var(--sky);border-radius:8px;padding:12px 16px;margin-top:14px}
.pl-hl .pl-k{margin-top:0;color:var(--teal2)}
.pl-hl p:last-child{margin:0}
.pl-notes{margin:16px 0 0;display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--line)}
.pl-notes div{display:grid;grid-template-columns:minmax(0,1fr);padding:10px 0;border-bottom:1px solid var(--line)}
.pl-notes dt{font:500 .75rem/1.4 var(--f-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--soft)}
.pl-notes dd{margin:2px 0 0;font-size:1rem}
.pl-act{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:18px}
.pl-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 24px;background:var(--teal);color:#fff;border-radius:6px;font-weight:700;text-decoration:none;white-space:nowrap}
.pl-cta:hover{background:var(--teal2);color:#fff}
.pl-act__s{font-size:.875rem;color:var(--soft)}
.pl-more{margin-top:14px;border-top:1px dashed var(--rule)}
.pl-more summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600;color:var(--teal)}
.pl-more__in p{max-width:68ch}
@media(min-width:760px){
  .pl-entry__grid{grid-template-columns:150px minmax(0,1fr)}
  .pl-spine{flex-direction:column;align-items:center;flex-wrap:nowrap;padding:0 14px 20px;border-bottom:0;border-right:1px solid var(--line)}
  .pl-tag{flex-basis:auto;align-self:stretch;margin:0 -14px 14px;border-radius:0;text-align:center;max-width:none}
  .pl-rank{font-size:3.2rem}
  .pl-mono{width:84px;height:84px}
  .pl-mono span{font-size:1.7rem}
  .pl-body{padding:22px 26px}
  .pl-cols{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
  .pl-notes{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px}
}

/* sections */
.pl-sec{margin-top:56px}
.pl-small{font-size:.9375rem;color:var(--soft);margin-top:10px}
.pl-tablebox{background:var(--sheet);border:1px solid var(--rule);border-radius:10px;overflow-x:auto}
.pl-table{width:100%;border-collapse:collapse;font-size:1rem}
.pl-table caption{text-align:left;padding:14px 16px;font-weight:600;color:var(--teal2);border-bottom:1px solid var(--line)}
.pl-table th,.pl-table td{text-align:left;vertical-align:top;padding:12px 16px;border-bottom:1px solid var(--line)}
.pl-table thead th{font:500 .75rem/1.4 var(--f-mono);text-transform:uppercase;letter-spacing:.07em;color:var(--soft);background:var(--paper)}
.pl-table tbody th{font-weight:600}
.pl-table th,.pl-table td{overflow-wrap:anywhere}
@media(max-width:759px){
  .pl-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .pl-table,.pl-table tbody,.pl-table tr,.pl-table th,.pl-table td{display:block;width:100%}
  .pl-table tr{padding:10px 16px;border-bottom:1px solid var(--rule)}
  .pl-table tbody th,.pl-table td{border:0;padding:4px 0;display:grid;grid-template-columns:minmax(0,7.5em) minmax(0,1fr);gap:10px}
  .pl-table tbody th::before,.pl-table td::before{content:attr(data-label);font:500 .75rem/1.6 var(--f-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--soft)}
  .pl-tablebox{overflow-x:visible}
}
.pl-qs{display:grid;gap:10px;max-width:860px}
.pl-q{background:var(--sheet);border:1px solid var(--rule);border-radius:8px;padding:0 18px}
.pl-q summary{cursor:pointer;min-height:52px;display:flex;align-items:center;font-weight:600;color:var(--teal2);padding:10px 0}
.pl-q p{max-width:68ch}
.pl-method__cols{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.pl-method__aside{background:var(--sky);border-radius:8px;padding:18px;align-self:start;margin:0}
@media(min-width:900px){.pl-method__cols{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}

/* inner pages */
.pl-ph{margin-top:32px;background:var(--sheet);border:1px solid var(--rule);border-radius:10px;padding:26px 20px}
@media(min-width:700px){.pl-ph{padding:36px 40px;margin-top:40px}}
.pl-ph h1{font-size:clamp(2rem,1.5rem + 2.4vw,3.2rem)}
.pl-rev{font:500 .8125rem var(--f-mono);color:var(--soft);margin:0 0 1em}
.pl-foot__k{font-weight:700;color:var(--teal2)}
.pl-doc{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin-top:28px}
@media(min-width:1000px){.pl-doc{grid-template-columns:240px minmax(0,1fr);align-items:start}.pl-toc{position:sticky;top:16px}}
.pl-toc details{background:var(--sky);border-radius:8px;padding:4px 16px 10px}
.pl-toc summary{min-height:44px;display:flex;align-items:center;font:500 .8125rem var(--f-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--teal2);cursor:pointer}
.pl-toc ol{margin:0;padding-left:1.3em}
.pl-toc li{margin:2px 0}
.pl-toc a{display:inline-block;padding:8px 0;min-height:40px}
.pl-text{min-width:0}
.pl-text section{background:var(--sheet);border:1px solid var(--rule);border-radius:10px;padding:20px;margin-bottom:16px;scroll-margin-top:16px}
@media(min-width:700px){.pl-text section{padding:26px 32px}}
.pl-text h2{font-size:1.5rem}
.pl-text p,.pl-text ul{max-width:68ch}
.pl-text li{margin:6px 0}
.pl-addr{font-style:normal;line-height:1.7}

/* form */
.pl-form{display:grid;gap:16px;max-width:620px;margin-top:12px}
.pl-field{display:grid;gap:6px}
.pl-field label{font-weight:600}
.pl-field input,.pl-field select,.pl-field textarea{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #74838a;border-radius:6px;padding:10px 12px;min-height:48px}
.pl-check{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start}
.pl-check input{width:24px;height:24px;margin:2px 0 0;accent-color:var(--teal)}
.pl-err{color:#9b1c1c;font-weight:600;margin:0}
.pl-ok{color:var(--teal2);font-weight:600;margin:0}

/* buttons */
.pl-btn{min-height:44px;padding:8px 16px;border:2px solid var(--teal);background:#fff;color:var(--teal2);border-radius:6px;font:700 .9375rem/1.2 var(--f-body);cursor:pointer}
.pl-btn:hover{background:var(--sky)}
.pl-btn--fill{background:var(--teal);color:#fff}
.pl-btn--fill:hover{background:var(--teal2);color:#fff}
.pl-btn--wide{justify-self:start;padding:12px 26px}
.pl-textbtn{background:none;border:0;padding:0;font:inherit;color:var(--teal);text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:44px}

/* footer */
.pl-foot{margin-top:72px;background:var(--sky);border-top:1px solid var(--sky2);padding:40px 0 110px}
.pl-foot__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
@media(min-width:900px){.pl-foot__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr) minmax(0,1.3fr)}}
.pl-foot__h{font:500 .75rem/1.4 var(--f-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--teal2);margin-bottom:10px}
.pl-foot address{font-style:normal;line-height:1.7}
.pl-foot__note{font-size:.9375rem;color:var(--soft);margin-top:10px}
.pl-foot__links ul{list-style:none;margin:0;padding:0;display:grid;gap:0}
.pl-foot__links a,.pl-foot__links .pl-textbtn{display:inline-flex;align-items:center;min-height:44px}
.pl-foot__strip{font-size:.9375rem}
.pl-foot__disc{font-size:.9375rem;background:#fff;border:1px solid var(--sky2);border-radius:6px;padding:12px 14px}
.pl-foot__age{font-size:.875rem;color:var(--soft);margin:0}
.pl-foot__end{margin:28px 0 0;padding-top:16px;border-top:1px solid var(--sky2);font-size:.875rem;color:var(--soft)}

/* cookie bar + dialog */
.pl-ck{position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:3px solid var(--teal);box-shadow:0 -4px 18px rgba(24,41,46,.12);padding:10px 16px}
.pl-ck[hidden]{display:none}
.pl-ck__t{margin:0 0 8px;font-size:.9375rem;line-height:1.45;max-width:none}
.pl-ck__row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pl-ck .pl-btn{padding:6px 8px;font-size:.875rem;line-height:1.15}
@media(min-width:900px){.pl-ck{display:flex;align-items:center;gap:20px;justify-content:center}.pl-ck[hidden]{display:none}.pl-ck__t{margin:0}.pl-ck__row{display:flex}.pl-ck .pl-btn{padding:8px 16px}}
.pl-dlg{border:1px solid var(--rule);border-radius:10px;padding:0;max-width:min(520px,calc(100vw - 32px));width:100%;color:var(--ink)}
.pl-dlg::backdrop{background:rgba(24,41,46,.35)}
.pl-dlg__in{padding:22px}
.pl-dlg h2{font-size:1.4rem}
.pl-sw{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:12px;align-items:start;padding:12px 0;border-bottom:1px solid var(--line)}
.pl-sw p{margin:2px 0 0;font-size:.9375rem;color:var(--soft)}
.pl-sw input{width:26px;height:26px;margin:4px auto 0;accent-color:var(--teal)}
.pl-gpc{color:var(--teal2)!important;font-weight:600}
.pl-dlg__row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;justify-content:flex-end}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
