/* Author-approved Journal additions; use the live storefront typography and layout. */
/* The shared footer already displays delivery, returns and payment services. */
.journal-published > .blog-service-trust{display:none}
.journal-published .blog-post-hero{align-items:center;padding-top:clamp(2rem,5vw,4rem)}
.journal-published .blog-post-hero h1{font-size:clamp(2.5rem,4.5vw,4.5rem);line-height:1.04}
.journal-published .article-body figure{margin:var(--space-8,3rem) 0}
.journal-published .article-body figure img{display:block;width:100%;height:auto;max-height:720px;object-fit:contain;background:var(--color-surface)}
.journal-published .article-body figcaption{font-size:.82rem;line-height:1.6;color:var(--color-muted);margin-top:.75rem}
.journal-published .blog-post-hero__media img{object-position:50% 50%}
.journal-published .blog-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem}
.journal-published .article-body p{overflow-wrap:break-word}
.journal-published .journal-piece-links{display:flex;flex-wrap:wrap;gap:.6rem 1rem;list-style:none;padding:0}
.journal-published .journal-piece-links a{text-decoration:underline;text-underline-offset:.2em}
.journal-published .journal-signature{margin-top:2rem}
.journal-new-articles .article-card__body h3{overflow-wrap:break-word}
.journal-new-articles .article-card__media img{object-position:50% 50%}
@media(max-width:680px){.journal-published .blog-post-hero h1{font-size:clamp(2.2rem,9vw,3.2rem)}.journal-published .article-body figure img{max-height:560px}}

/* Journal readability: two-line story titles and consistent breathing room. */
.blog-page .journal-hero h1{font-size:clamp(3rem,6vw,6rem);line-height:1.03;text-wrap:balance}
.blog-page .journal-hero__copy{display:flex;flex-direction:column;align-items:flex-start}
.blog-page .journal-hero__copy > p{line-height:1.65;margin:0}
.blog-page .journal-hero__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}
.blog-page .journal-hero__actions .btn{min-height:48px;margin:0}
.blog-page .journal-intents{gap:.75rem;margin-top:2rem}
.blog-page .article-grid{column-gap:clamp(1.25rem,2.4vw,2rem);row-gap:3rem;align-items:start}
.blog-page .article-card{gap:1.25rem;align-content:start}
.blog-page .article-card__body{display:flex;flex-direction:column;gap:.85rem;min-width:0}
.blog-page .article-card__body :is(h2,h3){font-size:clamp(1.2rem,1.8vw,1.75rem);line-height:1.2;margin:0;min-height:2.4em}
.blog-page :is(.article-card__body h2,.article-card__body h3,.featured-story-grid h2,.featured-story-grid h3,.editorial-card h3,.blog-post-hero h1){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-wrap:pretty}
.blog-page .article-card__body > p:not(.eyebrow){font-size:1rem;line-height:1.65;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;min-height:4.95em}
.blog-page .article-card__body > span{display:block;margin-top:.25rem;font-size:.9rem;line-height:1.5}
.blog-page .article-card__media{margin:0}
.blog-page .featured-story-grid{gap:2rem}
.blog-page .featured-story-grid__side{gap:2.5rem}
.blog-page .section-head,.blog-page .blog-section__head{margin-bottom:2rem}
.blog-page .section-head h2,.blog-page .blog-section__head h2{line-height:1.15;margin-top:.5rem}
.blog-page .blog-post-hero{padding-top:clamp(2rem,4vw,3.5rem);align-items:center}
.blog-page .blog-post-hero h1{font-size:clamp(1.8rem,3.6vw,3.5rem);line-height:1.15;margin:1rem 0 1.5rem}
.blog-page .blog-post-hero__dek{line-height:1.7;margin:0 0 1.25rem}
.blog-page .blog-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;line-height:1.5}
.blog-page .blog-layout{padding-top:3rem;padding-bottom:3rem}
.blog-page .article-body p{line-height:1.75;margin-bottom:1.5rem}
.blog-page .article-body :is(h2,h3){margin-top:2rem;margin-bottom:1rem;line-height:1.2}
.blog-page .blog-toc nav{display:grid;gap:.85rem;margin-top:1rem}
.blog-page .blog-toc a{line-height:1.55}
.blog-page .blog-newsletter{gap:2rem}
.blog-page .blog-newsletter__form{gap:1rem;margin-top:1rem}
.blog-page .blog-section{padding-block:clamp(2.75rem,6vw,5rem)}
@media(max-width:680px){
 .blog-page .article-grid{row-gap:2.75rem}
 .blog-page .journal-hero__actions{width:100%}
 .blog-page .journal-hero__actions .btn{flex:1 1 240px;text-align:center}
 .blog-page .blog-post-hero h1{font-size:1.9rem}
 .blog-page .blog-layout{padding-block:2rem}
}
