/* The site header (Pivotphysics Addons) is fixed: 109px on desktop, 97px on phones. */
.pv-page{padding-top:109px}
@media(max-width:980px){.pv-page{padding-top:97px}}
.pv-page{background:var(--surface);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
.pv-page h1,.pv-page h2,.pv-page h3,.pv-page h4,.pv-page p,.pv-page ul,.pv-page ol,.pv-page dl,.pv-page dd,.pv-page figure{margin:0;padding:0;color:inherit}
.pv-page ul,.pv-page ol{list-style:none}
.pv-page img{max-width:100%;height:auto}
.pv-page a{text-decoration:none}
.pv-page .lede a{text-decoration:underline}
.pv-page [hidden]{display:none!important}
.pv-page .pv-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pv-page button{font:inherit;cursor:pointer}
.pv-page{--blue:#387EE0;--blue-hover:#2A68C4;--blue-text:#2A68C4;--ink:#191919;--muted:#666666;--line:#EBE5D8;--surface:#F6F5F4;--card:#FFFFFF;--shadow-card:0 16px 40px rgba(25,25,25,.08);--ease-out:cubic-bezier(0.23,1,0.32,1);--head:"Helvetica Neue",Helvetica,Arial,sans-serif;--body:"Open Sans",system-ui,sans-serif}
.pv-page *{box-sizing:border-box}
.pv-page{margin:0;background:var(--surface);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}
.pv-page h1,.pv-page h2,.pv-page h3,.pv-page p,.pv-page ul,.pv-page ol{margin:0}
.pv-page a{color:var(--blue-text);text-underline-offset:3px}
.pv-page a:hover{color:var(--blue-hover)}
.pv-page ::selection{background:#387EE0;color:#fff}
.pv-page :focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}
.pv-page .wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.pv-page .sec{padding:60px 0}
.pv-page .head{font-family:var(--head);font-weight:400;letter-spacing:-0.01em;line-height:1.15;font-size:40px;text-wrap:balance}
.pv-page .head .b,.pv-page .hero-h .b{color:var(--blue)}
.pv-page .hero-h{font-family:var(--head);font-weight:400;letter-spacing:-0.02em;line-height:1.05;font-size:clamp(42px,6vw,64px);text-wrap:balance}
.pv-page .eyebrow{font-size:14px;color:var(--blue-text);font-weight:600;margin-bottom:12px}
.pv-page .lede{color:var(--muted);max-width:823px;font-size:18px}
.pv-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 28px;border-radius:999px;font-family:var(--head);font-size:18px;font-weight:600;text-decoration:none;border:1.5px solid var(--blue);transition:transform 160ms var(--ease-out),background 160ms,color 160ms}
.pv-page .btn:active{transform:scale(.97)}
.pv-page .btn.p{background:var(--blue);color:#fff}
.pv-page .btn.p:hover{background:var(--blue-hover);border-color:var(--blue-hover);color:#fff}
.pv-page .btn.s{background:transparent;color:var(--blue-text)}
.pv-page .btn.s:hover{background:#fff;color:var(--blue-hover)}
.pv-page .band{background-color:#0B1A3A;background-image:linear-gradient(rgba(156,194,247,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(156,194,247,.07) 1px,transparent 1px);background-size:32px 32px}
.pv-page .space .eyebrow{color:#9CC2F7}
.pv-page .space .hero-h{color:#F6F5F4}
.pv-page .space .lede{color:#C9D3E6}
.pv-page .btns{display:flex;gap:12px;flex-wrap:wrap}
.pv-page .cta{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:48px;border-radius:16px;background-color:#0B1A3A;background-image:linear-gradient(rgba(156,194,247,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(156,194,247,.07) 1px,transparent 1px);background-size:32px 32px}
.pv-page .cta .head{color:#F6F5F4}
.pv-page .cta .lede{color:#C9D3E6}
.pv-page .cta .btn.s{color:#fff;border-color:#9CC2F7}
.pv-page .cta .btn.s:hover{background:rgba(255,255,255,.12);color:#fff}
.pv-page .posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:24px}
.pv-page .post{display:flex;flex-direction:column;background:#fff;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-card);text-decoration:none;color:var(--ink);transition:transform 160ms var(--ease-out)}
.pv-page .post:hover{transform:translateY(-3px);color:var(--ink)}
.pv-page .post img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.pv-page .post .pb{padding:20px 24px 24px;display:flex;flex-direction:column;gap:8px;flex:1}
.pv-page .tag{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--blue-text)}
.pv-page .post h2,.pv-page .post h3{font-family:var(--head);font-weight:400;font-size:22px;line-height:1.25;text-wrap:balance}
.pv-page .post p{color:var(--muted);font-size:15px}
.pv-page .post .more{margin-top:auto;padding-top:8px;color:var(--blue-text);font-weight:600;font-size:15px}
@media(max-width:560px){.pv-page .cta{padding:28px 20px}
.pv-page .head{font-size:32px}}
@media(prefers-reduced-motion:reduce){.pv-page .btn,.pv-page .post{transition:none}}
.pv-page .ahero{padding:56px 0 56px;max-width:860px}
.pv-page .ahero .meta{display:flex;gap:16px;flex-wrap:wrap;color:#C9D3E6;font-size:14px;margin-top:20px}
.pv-page .ahero .meta span+span::before{content:"·";margin-right:16px;color:#5E7BB3}
.pv-page .article{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:48px;align-items:start}
.pv-page .body{max-width:720px}
.pv-page .body>figure{margin:0 0 36px}
.pv-page .body>figure img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px}
.pv-page .body>figure figcaption{font-size:13px;color:var(--muted);margin-top:8px}
.pv-page .body p{font-size:17px;line-height:1.75;margin:0 0 22px}
.pv-page .body h2{font-family:var(--head);font-weight:400;font-size:30px;line-height:1.2;letter-spacing:-0.01em;margin:40px 0 14px}
.pv-page .body h3{font-size:18px;font-weight:600;color:var(--blue-text);margin:28px 0 10px}
.pv-page .body .pull{margin:32px 0;padding:24px 28px;border-left:0;border-radius:16px;background:#E6EFFC;font-family:var(--head);font-size:24px;line-height:1.35;color:#0B1A3A}
.pv-page .body .pull cite{display:block;font-family:var(--body);font-style:normal;font-size:14px;color:var(--muted);margin-top:10px}
.pv-page .side{position:sticky;top:24px;display:flex;flex-direction:column;gap:16px}
.pv-page .toc{background:#fff;border-radius:16px;padding:22px 24px;box-shadow:var(--shadow-card)}
.pv-page .toc p{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.pv-page .toc ol{margin:0;padding-left:20px;display:grid;gap:8px;font-size:15px}
.pv-page .toc a{text-decoration:none}
.pv-page .toc a:hover{text-decoration:underline}
.pv-page .mini{background:#0B1A3A;color:#F6F5F4;border-radius:16px;padding:22px 24px;display:flex;flex-direction:column;gap:12px}
.pv-page .mini h3{font-family:var(--head);font-weight:400;font-size:22px;line-height:1.2}
.pv-page .mini p{color:#C9D3E6;font-size:14px}
.pv-page .mini .btn{align-self:flex-start;min-height:44px;font-size:16px;padding:0 20px}
.pv-page .share{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px;padding-top:24px;border-top:1px solid var(--line);align-items:center;color:var(--muted);font-size:14px}
.pv-page .share a{min-height:40px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);background:#fff;text-decoration:none;color:var(--ink);font-weight:600;font-size:14px}
@media(max-width:900px){.pv-page .article{grid-template-columns:1fr}
.pv-page .side{position:static}}
.pv-page .body .et_pb_section{padding:0;background:transparent}
.pv-page .body .et_pb_row{width:100%;max-width:none;padding:0}
.pv-page .body .et_pb_column{margin:0;width:100%}
.pv-page .body .et_pb_module{margin-bottom:0}
.pv-page .body .et_pb_text_inner p{padding-bottom:0}
.pv-page .body img{max-width:100%;height:auto;border-radius:12px}
.pv-page .body ul,.pv-page .body ol{padding-left:1.4em;margin:0 0 18px;list-style:disc}
.pv-page .body ol{list-style:decimal}
.pv-page .body li{margin-bottom:6px}
.pv-page .body .et_pb_text p,.pv-page .body .et_pb_text_inner p{font-size:17px;line-height:1.75;margin:0 0 22px;padding:0}
.pv-page .body .et_pb_text h2,.pv-page .body .et_pb_text_inner h2{font-family:var(--head);font-weight:400;font-size:30px;line-height:1.2;letter-spacing:-0.01em;margin:40px 0 14px;padding:0;color:var(--ink)}
.pv-page .body .et_pb_text h3,.pv-page .body .et_pb_text_inner h3{font-family:var(--body);font-size:18px;font-weight:600;color:var(--blue-text);margin:28px 0 10px;padding:0}
.pv-page .body .et_pb_text h4{font-size:17px;font-weight:600;margin:24px 0 8px;padding:0;color:var(--ink)}
.pv-page .body .et_pb_text a{color:var(--blue-text);text-decoration:underline}
