/*
Theme Name: Study Physics Formulas
Description: Physics formulas explained one per page, with SI units, dimensional formulas, worked examples and solve-for calculators. "Instrument plate" design: every formula sits on a dark lab-instrument plate with its SI unit and dimensions read out like a display, a measurement-grid hero with the formula finder, section drawers, spec-sheet quick facts and solve-for calculators.
Version: 1.0.0
Text Domain: studyphysicsformulas
*/
@font-face{font-family:"Petch";font-weight:500;font-display:swap;src:url(assets/fonts/chakra-petch-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Petch";font-weight:700;font-display:swap;src:url(assets/fonts/chakra-petch-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Ubu";font-weight:400;font-display:swap;src:url(assets/fonts/ubuntu-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Ubu";font-weight:600;font-display:swap;src:url(assets/fonts/ubuntu-sans-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"UbuMono";font-weight:400;font-display:swap;src:url(assets/fonts/ubuntu-sans-mono-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"UbuMono";font-weight:500;font-display:swap;src:url(assets/fonts/ubuntu-sans-mono-latin-500-normal.woff2) format("woff2")}

:root{
	--plate:#0c1a2b;--plate2:#13263d;--plate3:#1d3654;--glow:#38d6f5;--signal:#ff7a1a;--volt:#2f6bff;
	--bg:#f3f6fb;--card:#fff;--line:#dce3ee;--line2:#c6d1e1;--ink:#121a27;--ink2:#334155;--mute:#5d687c;--tint:#e9effa;
	--good:#1e8e5a;--bad:#d1343b;--st:var(--volt);--r:18px;--r2:12px;
	--shadow:0 1px 2px rgba(12,26,43,.06),0 8px 24px rgba(12,26,43,.08);
	--head:"Petch","Bahnschrift","DIN Alternate",system-ui,sans-serif;--body:"Ubu","Segoe UI",system-ui,-apple-system,sans-serif;--mono:"UbuMono",ui-monospace,"SF Mono",Menlo,monospace;
	--grid:linear-gradient(rgba(56,214,245,.07) 1px,transparent 1px) 0 0/24px 24px,linear-gradient(90deg,rgba(56,214,245,.07) 1px,transparent 1px) 0 0/24px 24px,linear-gradient(rgba(56,214,245,.12) 1px,transparent 1px) 0 0/120px 120px,linear-gradient(90deg,rgba(56,214,245,.12) 1px,transparent 1px) 0 0/120px 120px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17.5px/1.72 var(--body);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--volt);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--plate)}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--signal);outline-offset:2px;border-radius:6px}
h1,h2,h3{font-family:var(--head);font-weight:700;line-height:1.18;margin:0 0 .55em;letter-spacing:-.01em;text-wrap:balance}
p{margin:0 0 1em}
code{font-family:var(--mono)}
.pf-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.pf-wrap{width:min(1180px,100% - 32px);margin-inline:auto}
.pf-skip{position:absolute;left:-999px;top:8px;background:var(--plate);color:#fff;padding:8px 14px;border-radius:8px;z-index:99}
.pf-skip:focus{left:12px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

/* header: white instrument bar, section tabs with coloured under-rules */
.pf-top{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.pf-top-row{display:flex;align-items:center;gap:18px;min-height:66px}
.pf-logo{display:flex;align-items:center;gap:10px;text-decoration:none;font:700 21px/1 var(--head);white-space:nowrap;color:var(--plate);letter-spacing:-.01em}
.pf-logo img{width:36px;height:36px}
.pf-logo b{font-weight:700;color:var(--volt)}
.pf-nav{display:flex;gap:4px;margin-left:auto}
.pf-nav a{font:600 15px/1 var(--body);text-decoration:none;padding:23px 10px 20px;color:var(--ink2);border-bottom:3px solid transparent}
.pf-nav a:hover{color:var(--ink);border-bottom-color:var(--st)}
.pf-find-link{font:600 15px/1 var(--body);text-decoration:none;background:var(--plate);color:#fff;border-radius:999px;padding:11px 17px;white-space:nowrap}
.pf-find-link span{color:var(--glow);margin-right:4px}
.pf-find-link:hover{background:var(--plate3);color:#fff}
.pf-menubtn{display:flex;align-items:center;gap:8px;font:600 15px/1 var(--body);background:var(--card);color:var(--ink);border:1.5px solid var(--line2);border-radius:999px;padding:10px 14px;cursor:pointer}
.pf-menubtn-bars{width:18px;height:12px;border-top:2px solid;border-bottom:2px solid;position:relative}
.pf-menubtn-bars::after{content:"";position:absolute;left:0;right:0;top:3px;border-top:2px solid}
.pf-drawer{background:var(--bg);padding:16px 0 20px;border-top:1px solid var(--line)}
.pf-drawer-sections{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.pf-drawer-sections a{display:block;text-decoration:none;background:var(--card);border-radius:var(--r2);padding:12px 14px;box-shadow:var(--shadow);border-left:4px solid var(--st)}
.pf-drawer-sections b{display:block;font:600 16px/1.3 var(--body);color:var(--ink)}
.pf-drawer-sections span{font:400 14px/1.4 var(--body);color:var(--mute)}

/* hero: measurement grid on the instrument navy, finder in a glass panel */
.pf-hero{background:radial-gradient(ellipse 70% 90% at 85% 10%,rgba(47,107,255,.35),transparent 60%),var(--grid),var(--plate);color:#e8f1ff;padding:64px 0 72px;position:relative;overflow:hidden}
.pf-hero::after{content:"";position:absolute;left:0;right:0;bottom:22px;height:60px;opacity:.55;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 60' preserveAspectRatio='none'%3E%3Cpath d='M0 30 C50 0 100 0 150 30 S250 60 300 30 S400 0 450 30 S550 60 600 30 S700 0 750 30 S850 60 900 30 S1000 0 1050 30 S1150 60 1200 30' fill='none' stroke='%2338d6f5' stroke-width='2'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;pointer-events:none}
.pf-hero-grid{display:grid;grid-template-columns:1fr minmax(0,1.05fr);gap:52px;align-items:center;position:relative;z-index:1}
.pf-eyebrow{display:inline-flex;align-items:center;gap:8px;font:500 14px/1.3 var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--glow);margin:0 0 16px}
.pf-eyebrow::before{content:"";width:28px;height:2px;background:var(--signal)}
.pf-hero h1{font-size:clamp(38px,5.4vw,64px);color:#fff;margin-bottom:18px}
.pf-hero-lede{font-size:19px;color:#bcd0ea;max-width:34em}
.pf-hero-count{font:500 15px/1.4 var(--mono);color:#9fb6d6;margin:22px 0 0}
.pf-hero-count b{font:700 30px/1 var(--head);color:var(--signal);margin-right:6px}

/* tools (finder, dimension finder, solver) */
.pf-tool{margin:28px 0}
.pf-fd{background:var(--card);color:var(--ink);border-radius:var(--r);box-shadow:var(--shadow);padding:22px;border:1px solid var(--line)}
.pf-tool--hero{margin:0}
.pf-tool--hero .pf-fd{background:rgba(255,255,255,.97);box-shadow:0 30px 60px rgba(0,0,0,.35);border:0}
.pf-fd label{display:block;font:700 18px/1.3 var(--head);margin:0 0 10px}
.pf-fd input{width:100%;font:400 18px/1.3 var(--body);padding:14px 16px;border:2px solid var(--line2);border-radius:12px;background:var(--bg);color:var(--ink)}
.pf-fd input:focus{border-color:var(--volt);outline:none;background:#fff}
.pf-fd-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:12px 0 4px;font-size:14px;color:var(--mute)}
.pf-fd-row button,.pf-sv-pick button{font:500 14px/1 var(--body);background:var(--tint);color:var(--plate);border:0;border-radius:999px;padding:8px 12px;cursor:pointer}
.pf-fd-row button:hover,.pf-sv-pick button:hover{background:#d8e3f8}
.pf-fd-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px}
.pf-fd-list li>a,.pf-fd-list li>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;text-decoration:none;color:var(--ink);padding:10px 12px;border-radius:10px;background:var(--bg)}
.pf-fd-list li>a:hover{background:var(--tint)}
.pf-fd-list b{font-weight:600}
.pf-fd-list code{grid-column:1;font-size:15px;color:var(--plate3);overflow-wrap:anywhere}
.pf-fd-list span{grid-column:1;font:400 13px/1.4 var(--mono);color:var(--mute)}
.pf-fd-list i{grid-row:1;grid-column:2;font:500 12px/1.6 var(--head);text-transform:uppercase;letter-spacing:.05em;color:var(--mute);font-style:normal}
.pf-fd-none{padding:10px;color:var(--mute)}
.pf-fd-note{font-size:13px;color:var(--mute);margin:12px 0 0}
.pf-dm-h{font:700 20px/1.2 var(--head);margin:0 0 4px}
.pf-dm-sub{color:var(--mute);font-size:15px;margin:0 0 14px}
.pf-dm-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.pf-dm-cell{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:var(--plate);color:#fff;border-radius:12px;padding:10px 8px;gap:4px}
.pf-dm-cell span{grid-column:1/-1;text-align:center;font:700 24px/1 var(--head)}
.pf-dm-cell small{display:block;font:400 11px/1.6 var(--body);color:#9fb6d6;letter-spacing:.04em}
.pf-dm-cell button{width:34px;height:34px;border-radius:50%;border:0;background:var(--plate3);color:#fff;font:700 18px/1 var(--body);cursor:pointer;justify-self:center}
.pf-dm-cell button:hover{background:var(--volt)}
.pf-dm-cell output{text-align:center;font:500 22px/1 var(--mono);color:var(--glow)}
.pf-dm-now{font:500 17px/1.4 var(--mono);margin:14px 0 0}
.pf-sv-pick{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 14px}
.pf-sv-pick button[aria-pressed=true]{background:var(--plate);color:#fff}
.pf-sv-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.pf-sv-in label{display:block;font:600 14px/1.3 var(--body);margin:0}
.pf-sv-in label>span:first-child{display:block;margin-bottom:6px}
.pf-sv-in label i{font:400 13px var(--mono);color:var(--mute)}
.pf-sv-field{display:flex;align-items:center;border:2px solid var(--line2);border-radius:12px;background:var(--bg);overflow:hidden}
.pf-sv-field:focus-within{border-color:var(--volt);background:#fff}
.pf-sv-field input{border:0;background:transparent;padding:12px;font-size:17px;min-width:0}
.pf-sv-field b{font:500 14px var(--mono);color:var(--mute);padding:0 12px;white-space:nowrap}
.pf-sv-out{margin:16px 0 0;padding:14px 16px;border-radius:12px;background:var(--plate);color:#d9e6f7;font:400 17px/1.5 var(--body)}
.pf-sv-out b{font:700 26px/1 var(--mono);color:var(--glow);margin:0 4px}
.pf-sv-out i{font-family:var(--mono)}

/* section drawers on the home page */
.pf-drawers{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin-top:-34px;position:relative;z-index:2}
.pf-drawer-card{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;align-items:start;text-decoration:none;color:var(--ink);background:var(--card);border-radius:var(--r);padding:16px 18px;box-shadow:var(--shadow);transition:transform .15s ease,box-shadow .15s ease}
.pf-drawer-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(12,26,43,.14);color:var(--ink)}
.pf-drawer-n{grid-row:1/3;width:46px;height:46px;border-radius:12px;background:var(--st);color:#fff;display:grid;place-items:center;font:700 18px/1 var(--head)}
.pf-drawer-card b{font:700 17px/1.25 var(--head)}
.pf-drawer-eg{font-size:14px;line-height:1.4;color:var(--mute)}

/* page head with the formula plate */
.pf-pagehead{background:var(--card);border-bottom:1px solid var(--line);padding:30px 0 34px}
.pf-pagehead--plate{background:linear-gradient(var(--card),var(--card)) padding-box}
.pf-pagehead-grid{display:grid;gap:26px}
.pf-pagehead--plate .pf-pagehead-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}
.pf-pagehead h1{font-size:clamp(32px,4.4vw,50px);margin:6px 0 12px}
.pf-trail{display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:var(--mute)}
.pf-trail a{color:var(--mute);text-decoration:none}
.pf-trail a:hover{color:var(--volt)}
.pf-pagehead-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0;font-size:14px}
.pf-pagehead-meta a,.pf-pagehead-meta span{padding:5px 11px;border-radius:999px;background:var(--bg);color:var(--ink2);text-decoration:none;border:1px solid var(--line)}
.pf-pagehead-meta a{background:var(--st);border-color:var(--st);color:#fff}
.pf-plate{margin:0;position:relative;background:radial-gradient(ellipse at 100% 0,rgba(47,107,255,.3),transparent 60%),var(--grid),var(--plate);color:#fff;border-radius:22px;padding:30px 28px 22px;box-shadow:0 22px 48px rgba(12,26,43,.28);overflow:hidden}
.pf-plate::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--st)}
.pf-plate-eq{font-size:clamp(24px,3.2vw,36px);overflow-x:auto;overflow-y:hidden;padding:6px 0 10px;color:#fff}
.pf-plate-eq .katex-display{margin:0;text-align:left}
.pf-plate-eq .katex-display>.katex{text-align:left}
.pf-copy{position:absolute;top:14px;right:14px;font:500 13px/1 var(--body);background:rgba(255,255,255,.1);color:#cfe0f5;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:7px 12px;cursor:pointer}
.pf-copy:hover{background:rgba(255,255,255,.2);color:#fff}
.pf-plate-facts{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 0}
.pf-plate-facts div{background:rgba(255,255,255,.07);border:1px solid rgba(56,214,245,.28);border-radius:10px;padding:8px 12px}
.pf-plate-facts dt{font:500 11px/1.2 var(--head);letter-spacing:.09em;text-transform:uppercase;color:#8fb0d6}
.pf-plate-facts dd{margin:3px 0 0;font:500 18px/1.2 var(--mono);color:var(--glow)}
.pf-plate figcaption{margin-top:16px;padding-top:12px;border-top:1px dashed rgba(255,255,255,.18);display:flex;gap:12px;font-size:14px;color:#bcd0ea}
.pf-plate figcaption>span{font:500 12px/1.9 var(--head);text-transform:uppercase;letter-spacing:.08em;color:var(--signal)}
.pf-plate figcaption ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 16px}
.pf-plate figcaption b{font:500 15px var(--mono);color:#fff;margin-right:3px}
.pf-plate figcaption i{font:400 13px var(--mono);color:#8fb0d6;font-style:normal}

/* reading column */
.pf-read{display:grid;grid-template-columns:minmax(0,780px);justify-content:center;padding:40px 0 30px}
.pf-read--narrow{grid-template-columns:minmax(0,720px)}
.pf-article{min-width:0}
.pf-article h2{font-size:clamp(25px,3vw,31px);margin-top:1.6em;padding-top:.2em}
.pf-article h3{font-size:21px;margin-top:1.3em}
.pf-article ul,.pf-article ol{padding-left:1.25em}
.pf-article li{margin:.3em 0}
.pf-article li::marker{color:var(--st)}
.pf-intro>p:first-child{font-size:19.5px;line-height:1.65;color:var(--ink)}
.pf-intro .katex{font-size:1.08em}
.katex-display{overflow-x:auto;overflow-y:hidden;padding:4px 0}
.pf-key{margin:28px 0;background:var(--card);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}
.pf-key-h{margin:0;padding:12px 18px;background:var(--plate);color:#fff;font:700 14px/1.2 var(--head);letter-spacing:.09em;text-transform:uppercase}
.pf-key ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.pf-key li{margin:0;padding:12px 18px;border-top:1px solid var(--line);border-right:1px solid var(--line)}
.pf-key li:nth-child(2n){border-right:0}
.pf-key-name{margin:0;font:500 12px/1.3 var(--head);letter-spacing:.07em;text-transform:uppercase;color:var(--mute)}
.pf-key-val{font-size:16px;line-height:1.5;margin-top:3px}
.pf-toc{margin:28px 0;padding:16px 20px;border:1px solid var(--line);border-radius:var(--r2);background:var(--card)}
.pf-toc p{margin:0 0 6px;font:700 14px/1.2 var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.pf-toc ol{margin:0;padding-left:1.3em;columns:2;column-gap:28px;font-size:15.5px}
.pf-toc a{text-decoration:none;color:var(--ink2)}
.pf-toc a[aria-current]{color:var(--volt);font-weight:600}
.pf-table{overflow-x:auto;margin:20px 0;border-radius:var(--r2);border:1px solid var(--line);background:var(--card)}
.pf-table table{width:100%;border-collapse:collapse;font-size:15.5px}
.pf-table caption{caption-side:top;text-align:left;padding:12px 14px 4px;font:600 14px var(--head);color:var(--mute);letter-spacing:.02em}
.pf-table th,.pf-table td{padding:10px 14px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
.pf-table thead th{background:var(--tint);font:600 14px var(--body);color:var(--ink2)}
.pf-table tbody tr:nth-child(2n){background:#fafbfd}
.pf-example{margin:22px 0;padding:18px 20px 8px;border-radius:var(--r2);background:var(--card);border:1px solid var(--line);border-left:5px solid var(--st);position:relative}
.pf-example::before{content:"Worked example";display:inline-block;font:500 11px/1 var(--head);letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--st);padding:5px 9px;border-radius:6px;margin-bottom:10px}
.pf-example>p:first-of-type strong{font:700 18px/1.3 var(--head)}
.pf-note{margin:20px 0;padding:14px 18px;border-radius:var(--r2);background:#fff4ea;border:1px solid #ffd2ad;font-size:16px}
.pf-note::before{content:"Tip  ";font:700 13px var(--head);letter-spacing:.06em;color:var(--signal)}
.pf-faq details{border-bottom:1px solid var(--line);padding:4px 0}
.pf-faq summary{cursor:pointer;font:600 18px/1.4 var(--body);padding:12px 30px 12px 0;list-style:none;position:relative}
.pf-faq summary::-webkit-details-marker{display:none}
.pf-faq summary::after{content:"+";position:absolute;right:4px;top:8px;font:500 24px var(--mono);color:var(--st)}
.pf-faq details[open] summary::after{content:"−"}
.pf-faq-a{padding:0 0 10px;color:var(--ink2)}
.pf-hero-img{margin:24px 0}
.pf-hero-img img{border-radius:var(--r)}
.pf-ad{margin:26px 0;text-align:center}
.pf-related{margin:44px 0 0}
.pf-related h2{font-size:24px}
.pf-related ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.pf-related a{display:block;text-decoration:none;color:var(--ink);background:var(--card);border-radius:var(--r2);padding:14px 16px;box-shadow:var(--shadow);height:100%}
.pf-related b{display:block;font:700 16px/1.3 var(--head)}
.pf-related code{font-size:14px;color:var(--plate3)}

/* formula index: rows like a data sheet */
.pf-indexes{padding:10px 0 50px;display:grid;gap:28px}
.pf-index{background:var(--card);border-radius:var(--r);box-shadow:var(--shadow);padding:20px 22px;border-top:5px solid var(--st)}
.pf-index-head{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-bottom:10px}
.pf-index h2{font-size:22px;margin:0}
.pf-index h2 small{font:500 14px var(--mono);color:#fff;background:var(--st);border-radius:999px;padding:2px 9px;vertical-align:middle}
.pf-filter input{font:400 15px var(--body);padding:9px 12px;border:1.5px solid var(--line2);border-radius:10px;background:var(--bg);min-width:220px}
.pf-rows{list-style:none;margin:0;padding:0;columns:2 360px;column-gap:24px}
.pf-rows li{break-inside:avoid;border-bottom:1px solid var(--line)}
.pf-rows a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 10px;text-decoration:none;color:var(--ink);padding:9px 2px}
.pf-rows a:hover b{color:var(--volt)}
.pf-rows b{font-weight:600;font-size:16px}
.pf-rows code{grid-column:1;font-size:14px;color:var(--plate3);overflow-wrap:anywhere}
.pf-rows i{grid-row:1/3;grid-column:2;align-self:center;font:400 13px var(--mono);color:var(--mute);font-style:normal;text-align:right;max-width:11em}
.pf-index-none{color:var(--mute)}

/* blog bits, lists and 404 */
.pf-list-title{padding:34px 0 10px}
.pf-postlist{display:grid;gap:14px;padding-bottom:40px}
.pf-postrow{background:var(--card);border-radius:var(--r2);padding:16px 20px;box-shadow:var(--shadow)}
.pf-postrow h2{font-size:21px;margin:0 0 4px}
.pf-postrow h2 a{color:var(--ink);text-decoration:none}
.pf-date{font-size:14px;color:var(--mute);margin:0 0 6px}
.pf-pager{padding:0 0 40px;display:flex;gap:8px}
.pf-latest{padding:20px 0 50px}
.pf-latest ul{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.pf-latest a{display:block;text-decoration:none;color:var(--ink);background:var(--card);border-radius:var(--r2);padding:14px 16px;box-shadow:var(--shadow)}
.pf-latest small{display:block;color:var(--mute)}
.pf-guides{margin:36px 0}
.pf-guides-h{font:700 20px var(--head)}
.pf-tiles{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.pf-tile a{display:block;text-decoration:none;color:var(--ink);background:var(--card);border-radius:var(--r2);overflow:hidden;box-shadow:var(--shadow);border-top:4px solid var(--st)}
.pf-tile-img{display:block;position:relative}
.pf-tile-badge{position:absolute;left:8px;top:8px;background:var(--signal);color:#fff;font:600 12px var(--head);padding:3px 8px;border-radius:6px}
.pf-tile-body{display:block;padding:10px 12px}
.pf-tile-name{display:block;font:700 16px/1.3 var(--head)}
.pf-tile-meta{font-size:13px;color:var(--mute)}
.pf-article--post img{border-radius:var(--r2)}

/* footer: light panel, section pills, legal line */
.pf-foot{background:#e7edf6;border-top:1px solid var(--line);margin-top:30px}
.pf-foot-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:30px;padding:36px 0 22px}
.pf-foot-brand p{color:var(--ink2);font-size:15.5px;max-width:32em}
.pf-logo--foot{margin:0 0 10px}
.pf-foot-sections{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;align-content:start}
.pf-foot-sections a{display:inline-block;text-decoration:none;color:var(--ink);background:var(--card);border-radius:999px;padding:7px 13px;font-size:14.5px;border-left:4px solid var(--st)}
.pf-foot-legal{border-top:1px solid var(--line2);padding:16px 0 26px;font-size:14px;color:var(--mute)}
.pf-foot-note{margin:0 0 10px}
.pf-foot-legal nav{display:flex;flex-wrap:wrap;gap:6px 16px}
.pf-foot-legal a{color:var(--ink2);text-decoration:none}
.pf-foot-legal a:hover{color:var(--volt)}
.pf-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--plate);color:#fff;padding:10px 16px;border-radius:999px;font-size:15px;z-index:60;box-shadow:var(--shadow)}

@media (min-width:1101px){.pf-menubtn{display:none}}
@media (max-width:1100px){.pf-nav{display:none}.pf-find-link{margin-left:auto}}
@media (max-width:900px){
	.pf-hero-grid,.pf-pagehead--plate .pf-pagehead-grid,.pf-foot-top{grid-template-columns:minmax(0,1fr)}
	.pf-hero{padding:40px 0 64px}
	.pf-dm-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:600px){
	body{font-size:17px}
	.pf-logo span{font-size:17px}
	.pf-find-link{padding:10px 12px;font-size:14px}
	.pf-find-link span+*{display:none}
	.pf-key ul{grid-template-columns:minmax(0,1fr)}
	.pf-key li{border-right:0}
	.pf-toc ol{columns:1}
	.pf-plate{padding:42px 18px 18px}
	.pf-drawers{margin-top:-28px}
	.pf-filter input{min-width:0;width:100%}
	.pf-filter{width:100%}
}
@media (max-width:420px){.pf-find-link{display:none}}
