/* Blog post — same Signal-A-style type system as /css/blog.css (thin serif + heavy grotesk + light mono) */
.ps-page{background:#fff;color:#111}
.ps-page a:not(.ds-pill){color:inherit}
.ps-page .ds-menu a{color:#ECE7DF}
.ps-page .ds-menu [aria-current="page"]{color:#C8A46B}
.ps-page .ds-mono{color:#3b3b3b}

.ps-hero{max-width:1600px;margin:0 auto;padding:140px 28px 40px}
.ps-crumb{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 40px;padding-top:8px;border-top:1px solid #111;font-size:12px}
.ps-crumb a{text-decoration:none}
.ps-crumb a:hover{text-decoration:underline;text-underline-offset:4px}
.ps-title{margin:0;font-family:'Cormorant Garamond',Georgia,serif;font-weight:300;text-transform:uppercase;font-size:clamp(52px,10vw,180px);line-height:.84;letter-spacing:-.01em}
.ps-title b{font-family:'Inter Tight',Inter,system-ui,sans-serif;font-weight:800;letter-spacing:-.035em;font-size:.86em}
.ps-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 24px;margin:44px 0 0;padding:10px 0;border-top:1px solid #111;border-bottom:1px solid #d6d6d6;font-size:12px}
.ps-meta dt{color:#5a5a5a}
.ps-meta dd{margin:4px 0 0;color:#111;font-weight:500}

.ps-media{max-width:1600px;margin:0 auto;padding:0 28px}
.ps-media img,.ps-media video{display:block;width:100%;max-height:82vh;object-fit:cover;background:#111}
.ps-media.tall img,.ps-media.tall video{max-width:520px;margin:0 auto;object-fit:contain}
.ps-media figcaption{margin-top:10px;font-size:12px}

.ps-body{max-width:1240px;margin:0 auto;padding:80px 28px 40px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:64px}
.ps-side{position:sticky;top:100px;align-self:start;font-size:12px}
.ps-side p{margin:0 0 6px}
.ps-lead{margin:0 0 28px;font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(28px,2.6vw,40px);line-height:1.2}
.ps-text p{margin:0 0 22px;max-width:680px;font-family:Inter,system-ui,sans-serif;font-size:19px;line-height:1.7;color:#222}
.ps-text h2{margin:48px 0 16px;font-family:'Inter Tight',Inter,system-ui,sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:-.01em;font-size:clamp(24px,2.2vw,32px);line-height:1;scroll-margin-top:100px}
.ps-text ul{margin:0 0 22px;padding-left:1.2em;max-width:680px;font-family:Inter,system-ui,sans-serif;font-size:19px;line-height:1.7;color:#222}
.ps-text li{margin:0 0 10px}
.ps-text p a,.ps-side a{text-underline-offset:3px}
.ps-side a{display:inline-block;padding:5px 0}
.ps-quote{margin:46px 0;padding:22px 0;border-top:1px solid #111;border-bottom:1px solid #111}
.ps-quote p{margin:0;font-family:'Inter Tight',Inter,system-ui,sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:-.02em;font-size:clamp(30px,3.4vw,54px);line-height:.95;color:#111}
.ps-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.ps-btn{display:inline-flex;align-items:center;min-height:48px;padding:0 26px;border-radius:999px;border:1px solid #111;text-decoration:none;font-size:12px}
.ps-btn:hover{background:#111;color:#fff}

.ps-gallery{max-width:1600px;margin:0 auto;padding:30px 28px 90px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:56px 28px;align-items:start}
.ps-gallery figure{margin:0;grid-column:span 4}
.ps-gallery figure:nth-child(3n+2){margin-top:90px}
.ps-gallery figure:nth-child(4n+1){grid-column:span 5}
.ps-gallery img{display:block;width:100%;height:auto}
.ps-gallery figcaption{margin-top:10px;font-size:12px;line-height:1.5}

.ps-next{display:block;border-top:1px solid #111;max-width:1600px;margin:0 auto;padding:36px 28px 110px;text-decoration:none}
.ps-next .ds-mono{display:block;font-size:12px;margin-bottom:14px}
.ps-next-t{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-weight:300;text-transform:uppercase;font-size:clamp(44px,7vw,120px);line-height:.88}
.ps-next:hover .ps-next-t{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:10px}

@media (max-width:900px){
.ps-body{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:50px}
.ps-side{position:static}
.ps-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
.ps-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}
.ps-gallery figure,.ps-gallery figure:nth-child(4n+1){grid-column:auto;margin-top:0 !important}
}
@media (max-width:760px){.ps-hero{padding-top:100px}}
