/* Le journal: long-form reading on the shop's own tokens. */
.j-intro{padding:clamp(2.4rem,6vh,4.5rem) var(--pad) clamp(1.2rem,3vh,2rem); display:grid; gap:.9rem; max-width:60ch}
.j-intro h1{font-size:var(--fs-2xl)}
.j-intro p{color:var(--muted)}

.j-list{padding:0 var(--pad) clamp(3rem,7vh,5rem); display:grid; gap:clamp(1.4rem,3vw,2.4rem);
  grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}
.j-card{display:grid; gap:.85rem; align-content:start; border:1px solid var(--line); background:var(--paper)}
.j-card img{width:100%; aspect-ratio:3/2; object-fit:cover}
.j-card .in{display:grid; gap:.5rem; padding:0 1.15rem 1.3rem}
.j-card h2{font-size:var(--fs-lg)}
.j-card p{color:var(--muted); font-size:var(--fs-sm)}
.j-card time{font-size:var(--fs-xs); letter-spacing:.16em; text-transform:uppercase; color:var(--gold)}
.j-card:hover{border-color:var(--blue)}

.post{padding:clamp(2rem,5vh,3.4rem) var(--pad) clamp(3rem,7vh,5rem); display:grid;
  gap:clamp(1.6rem,4vh,2.8rem); max-width:74ch; margin-inline:auto}
.post-head{display:grid; gap:.7rem}
.post h1{font-size:var(--fs-2xl)}
.post .dek{font-size:var(--fs-lg); color:var(--ink); font-family:'Cormorant Garamond',Georgia,serif; line-height:1.35}
.post .byline{font-size:var(--fs-xs); letter-spacing:.16em; text-transform:uppercase; color:var(--muted)}

.hero{margin:0; display:grid; gap:.6rem}
.hero img{width:100%; aspect-ratio:3/2; object-fit:cover; border:1px solid var(--line)}
.hero figcaption{font-size:var(--fs-xs); color:var(--muted)}

.post .body{display:grid; gap:1.6rem}
.post .body h2{font-size:var(--fs-xl); margin-top:.6rem}
.post .body p{color:var(--ink)}
.post .body p + p{margin-top:-.6rem}
.post .body a{color:var(--blue); text-decoration:underline; text-underline-offset:3px}

.buy{display:grid; gap:clamp(1.2rem,3vw,2.2rem); align-items:start; border-top:1px solid var(--line);
  border-bottom:1px solid var(--line); padding:clamp(1.6rem,4vh,2.6rem) 0}
@media (min-width:640px){.buy{grid-template-columns:200px 1fr}}
.buy h2{font-size:var(--fs-lg); margin-top:.35rem}
.buy .by{font-size:var(--fs-sm); letter-spacing:.14em; text-transform:uppercase; color:var(--blue)}
.buy .note{color:var(--muted); font-size:var(--fs-sm); margin-top:.6rem}
.buy .credit{font-size:var(--fs-xs); color:var(--muted); margin-top:.8rem}
.buy .btn{display:inline-block; margin-top:.9rem}

.more ul{list-style:none; margin:.8rem 0 1.2rem; padding:0; display:grid; gap:.55rem}
.more a{color:var(--blue); text-decoration:underline; text-underline-offset:3px; font-size:var(--fs-sm)}
.more .quiet{color:var(--muted); text-decoration:none; font-size:var(--fs-sm); letter-spacing:.1em}
