/*
 * Blake's Journal post (/field-notes/<slug>/), v13: prototypes/13/40-journal-post.css
 * (CD 2026-11-04-journal-post-40-pass) plus the editorial.css post rules it
 * uses (prose, pull quote, sign-off, link button), scoped to the template's
 * main. Loaded after field-notes.css, which brings the shared editorial
 * tokens, type, cards and the Bulletin close.
 * Brief: docs/briefs/2026-10-31-field-notes-wp-port.md (40); goal batch 3 item 3.
 *
 * Differences from the prototype, all mechanical:
 *   - reveals hide only under html.js (inc/journal-post.php);
 *   - the body is the editor's own blocks (core/post-content), so the prose
 *     rules also cover core's lists, headings, quotes and images;
 *   - a post with no featured image is a one-column, text-only hero;
 *   - the Ken Burns and every reveal stop under reduced motion.
 */

.rhinory-page--journal-post { background: #FBF7EE; }
.rhinory-journal-post .sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0 }
.rhinory-journal-post:focus { outline: none; }

/* HEADER · statement left, one square image right, nothing over it */
.rhinory-journal-post .jp-head { padding:clamp(48px,6vw,88px) 0 clamp(56px,6vw,88px);background:var(--paper) }
.rhinory-journal-post .jp-head-grid { display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(40px,6vw,96px);align-items:center }
.rhinory-journal-post .jp-head-grid--text { grid-template-columns:minmax(0,1fr) }
.rhinory-journal-post .jp-head-grid--text .jp-head-copy { max-width:900px }
.rhinory-journal-post .jp-head-copy { display:flex;flex-direction:column;gap:28px;min-width:0 }
/* breadcrumb · the PDP trail; a long title truncates to one line */
.rhinory-journal-post .jp-crumb { display:flex;flex-wrap:nowrap;min-width:0;align-items:center;gap:11px;font-family:"Josefin Sans",system-ui,sans-serif;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase }
.rhinory-journal-post .jp-crumb a { color:var(--ink-warm-2);text-decoration:none;transition:color .2s;display:inline-flex;align-items:center;min-height:44px;margin-block:-13px }
.rhinory-journal-post .jp-crumb a:hover { color:var(--burgundy) }
.rhinory-journal-post .jp-crumb a, .rhinory-journal-post .jp-crumb .sep { flex:none;white-space:nowrap }
.rhinory-journal-post .jp-crumb .sep { color:var(--rule-warm-2) }
.rhinory-journal-post .jp-crumb .current { color:var(--burgundy);flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap }
.rhinory-journal-post .jp-dek { max-width:34ch;font-size:19px }
.rhinory-journal-post .jp-head .ed-h1 { font-size:clamp(48px,6.2vw,92px) }
.rhinory-journal-post .jp-head .ed-h1 em { display:block }
.rhinory-journal-post .jp-meta { display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;padding-top:14px;border-top:1px solid var(--rule-warm-2) }
.rhinory-journal-post .jp-share { display:flex;flex-wrap:wrap;align-items:center;gap:4px 18px }
.rhinory-journal-post .jp-share-btn { display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0;background:none;border:0;cursor:pointer;font-family:"Josefin Sans",system-ui,sans-serif;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-warm-2);text-decoration:none;transition:color .2s }
.rhinory-journal-post a.jp-share-btn { color:var(--ink-warm-2) }
.rhinory-journal-post .jp-share-btn:hover, .rhinory-journal-post a.jp-share-btn:hover { color:var(--burgundy) }
.rhinory-journal-post .jp-share-btn[hidden] { display:none }
.rhinory-journal-post .jp-share-btn svg { flex:none }
.rhinory-journal-post .jp-share-btn:active { transform:scale(.94) }
.rhinory-journal-post .jp-crumb a:focus-visible, .rhinory-journal-post .jp-share-btn:focus-visible, .rhinory-journal-post .ed-form-row button:focus-visible, .rhinory-journal-post .ed-tsr-link:focus-visible, .rhinory-journal-post .jp-card:focus-visible { outline:2px solid var(--burgundy);outline-offset:3px }
.rhinory-journal-post .jp-date { margin:0;font-family:"Lora",Georgia,serif;font-style:italic;font-size:18px;line-height:1.5;color:var(--ink-warm-2) }
.rhinory-journal-post .jp-head-fig { margin:0 }
.rhinory-journal-post .jp-head-fig .ed-photo { aspect-ratio:1/1 }
.rhinory-journal-post .jp-head-fig .ed-photo img { width:100%;height:100%;object-fit:cover;object-position:50% 60%;transform-origin:50% 55%;animation:jp-kb 22s ease-in-out infinite alternate }
@keyframes jp-kb { from { transform:scale(1.02) } to { transform:scale(1.12) } }
/* hero reveal · editorial stagger 0/100/200/300ms */
.rhinory-journal-post .jp-head-copy>.ed-reveal:nth-child(2) { transition-delay:.1s }
.rhinory-journal-post .jp-head-copy>.ed-reveal:nth-child(3) { transition-delay:.2s }
.rhinory-journal-post .jp-head-copy>.ed-reveal:nth-child(n+4) { transition-delay:.3s }
.rhinory-journal-post .jp-head-fig.ed-reveal { transition-delay:.2s }

/* BODY · 720px measure (editorial.css post rules, for the editor's own blocks) */
.rhinory-journal-post .ed-post-body { padding:clamp(48px,6vw,80px) 0 clamp(64px,7vw,96px) }
.rhinory-journal-post .jp-body { border-top:1px solid var(--rule-warm-2) }
.rhinory-journal-post .ed-prose { max-width:720px;margin:0 auto }
.rhinory-journal-post .ed-prose > * { margin-block:0 }
.rhinory-journal-post .ed-prose > * + *, .rhinory-journal-post .ed-prose blockquote > * + * { margin-top:24px }
.rhinory-journal-post .ed-prose p, .rhinory-journal-post .ed-prose li { font-family:"Lora",Georgia,serif;font-size:18px;line-height:1.72;color:var(--ink-warm-2);text-wrap:pretty }
.rhinory-journal-post .ed-prose strong { font-weight:600;color:var(--ink-warm) }
.rhinory-journal-post .ed-prose em { font-style:italic }
.rhinory-journal-post .ed-prose a { color:var(--burgundy);text-decoration:none;border-bottom:1px solid rgba(82,0,0,.35);transition:border-color .2s }
.rhinory-journal-post .ed-prose a:hover { border-bottom-color:var(--burgundy) }
.rhinory-journal-post .ed-prose h2, .rhinory-journal-post .ed-prose h3 { margin:44px 0 16px;font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:clamp(26px,2.6vw,32px);line-height:1.15;color:var(--ink-warm) }
.rhinory-journal-post .ed-prose h3 { font-size:clamp(22px,2.2vw,26px) }
.rhinory-journal-post .ed-prose :is(h2,h3) em { font-style:italic;color:var(--burgundy) }
.rhinory-journal-post .ed-prose ul, .rhinory-journal-post .ed-prose ol { padding-left:1.2em }
.rhinory-journal-post .ed-prose li + li { margin-top:10px }
.rhinory-journal-post .ed-prose figure { margin:40px 0 }
.rhinory-journal-post .ed-prose img { max-width:100%;height:auto }
.rhinory-journal-post .ed-prose figcaption { margin-top:12px;font-family:"Josefin Sans",system-ui,sans-serif;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-warm-2) }
.rhinory-journal-post .ed-prose .ed-open, .rhinory-journal-post .ed-prose > p:first-child.is-style-lead { font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(24px,2.4vw,30px);line-height:1.36;color:var(--ink-warm) }
.rhinory-journal-post .ed-prose blockquote, .rhinory-journal-post .ed-pq { margin:36px 0;padding:26px 0;border:0;border-block:1px solid var(--rule-warm-2);font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:clamp(24px,2.4vw,32px);line-height:1.28;color:var(--ink-warm);text-wrap:pretty }
.rhinory-journal-post .ed-prose blockquote p, .rhinory-journal-post .ed-pq p { font:inherit;color:inherit;margin:0 }
.rhinory-journal-post .ed-prose blockquote em, .rhinory-journal-post .ed-pq em { font-style:italic;color:var(--burgundy) }
.rhinory-journal-post .ed-prose blockquote cite { display:block;margin-top:14px;font-family:"Josefin Sans",system-ui,sans-serif;font-style:normal;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--rhino-warm) }
.rhinory-journal-post .ed-signoff { font-style:italic;color:var(--ink-warm) !important }
/* the prototype's one breakout: photo + pull quote side by side (class jp-pq on a group) */
.rhinory-journal-post .jp-pq { display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,4vw,56px);align-items:center;width:min(1000px,calc(100vw - 112px));margin:56px 0 56px 50%;translate:-50% 0 }
.rhinory-journal-post .jp-pq .ed-pq, .rhinory-journal-post .jp-pq blockquote { margin:0;font-size:clamp(26px,2.7vw,36px);line-height:1.26 }

/* KEEP READING · real H2, three same-size cards, one hover */
.rhinory-journal-post .jp-sec-h { margin-bottom:clamp(36px,4vw,56px) }
.rhinory-journal-post .jp-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px }
.rhinory-journal-post .jp-card .ed-photo { aspect-ratio:4/3 }
.rhinory-journal-post .jp-card .ed-photo img { width:100%;height:100%;object-fit:cover }
.rhinory-journal-post .jp-card .ed-card-body { padding:24px 26px 30px }
.rhinory-journal-post .jp-card .ed-card-x { font-size:15.5px }
/* card stagger 0/100/200ms once the section reveals; translate keeps the hover transform free */
html.js .rhinory-journal-post .jp-card { --d:0s;opacity:0;translate:0 20px;transition:opacity .9s cubic-bezier(.2,.7,.2,1) var(--d),translate 1s cubic-bezier(.2,.7,.2,1) var(--d),transform .25s ease,border-color .25s ease }
html.js .rhinory-journal-post .is-in .jp-card { opacity:1;translate:0 0 }
.rhinory-journal-post .jp-card:nth-child(2) { --d:.1s }
.rhinory-journal-post .jp-card:nth-child(3) { --d:.2s }
.rhinory-journal-post .jp-more-cta { display:flex;justify-content:center;margin-top:clamp(40px,4vw,56px) }
.rhinory-journal-post .ed-tsr-link { display:inline-flex;align-items:center;justify-content:space-between;gap:14px;white-space:nowrap;font-family:"Josefin Sans",system-ui,sans-serif;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--burgundy);text-decoration:none;border:1px solid var(--rule-warm-2);padding:16px 26px;min-height:44px;transition:border-color .25s,background .25s }
.rhinory-journal-post .ed-tsr-link:hover { border-color:var(--burgundy);background:rgba(82,0,0,.05) }
.rhinory-journal-post .ed-tsr-link .arr { font-family:"Cormorant Garamond",Georgia,serif;font-size:19px;line-height:0;transition:transform .25s }
.rhinory-journal-post .ed-tsr-link:hover .arr { transform:translateX(5px) }

/* reveals: field-notes.css hides .ed-reveal only under html.js; the body's
   own blocks get the class from view.js */
@media (prefers-reduced-motion:reduce) {
	.rhinory-journal-post .jp-head-fig .ed-photo img { animation:none;transform:none }
	.rhinory-journal-post .jp-head-copy>.ed-reveal, .rhinory-journal-post .jp-head-fig.ed-reveal { transition-delay:0s }
	html.js .rhinory-journal-post .jp-card { opacity:1;translate:none;transition:none }
	.rhinory-journal-post .jp-share-btn:active { transform:none }
}

/* responsive */
@media (max-width:1080px) {
	.rhinory-journal-post .jp-grid { grid-template-columns:1fr;gap:20px }
	.rhinory-journal-post .jp-card:not(.jp-card--text) { display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr) }
	.rhinory-journal-post .jp-card .ed-photo { aspect-ratio:auto;min-height:240px;border-bottom:0;border-right:1px solid var(--rule-warm) }
	.rhinory-journal-post .jp-card .ed-card-body { padding:28px 30px;justify-content:center }
}
@media (max-width:1024px) { .rhinory-journal-post .jp-pq { width:min(1000px,calc(100vw - 80px)) } }
@media (max-width:900px) {
	.rhinory-journal-post .jp-head-grid { grid-template-columns:1fr;gap:36px }
	.rhinory-journal-post .jp-head-fig .ed-photo { aspect-ratio:4/3 }
	.rhinory-journal-post .jp-head-fig .ed-photo img { object-position:40% 78% }
}
@media (max-width:760px) {
	.rhinory-journal-post .jp-pq { grid-template-columns:1fr;gap:28px;width:auto;margin:44px 0;translate:none }
	.rhinory-journal-post .jp-pq .ed-photo { max-width:320px }
}
@media (max-width:640px) {
	.rhinory-journal-post .jp-card:not(.jp-card--text) { grid-template-columns:1fr }
	.rhinory-journal-post .jp-card .ed-photo { aspect-ratio:4/3;min-height:0;border-right:0;border-bottom:1px solid var(--rule-warm) }
	.rhinory-journal-post .jp-card .ed-card-body { padding:22px 22px 26px }
	.rhinory-journal-post .jp-date { font-size:17px }
}
@media (max-width:560px) {
	.rhinory-journal-post .jp-crumb>a:first-child, .rhinory-journal-post .jp-crumb>a:first-child+.sep { display:none }
	.rhinory-journal-post .jp-head { padding-top:28px }
	.rhinory-journal-post .jp-head-copy { gap:22px }
	.rhinory-journal-post .jp-head-grid { gap:28px }
	.rhinory-journal-post .jp-dek { font-size:18px }
	.rhinory-journal-post .ed-wrap { padding:0 22px }
}

/* ---- Wine Notes post (42, CD 2026-11-04-posts-40-42-pass): the short answer,
   the wines from this note and the Conservation Circle bridge. The bottle
   cards and the bridge's button paint come from wine-notes.css. ---- */
.rhinory-journal-post .jp-answer-slot { max-width:720px;margin:0 auto }
.rhinory-journal-post .jp-answer-slot:empty { display:none }
.rhinory-journal-post .wp-answer { display:flex;flex-direction:column;gap:12px;margin:0 0 44px;padding:26px 0 28px;border-block:1px solid var(--rule-warm-2) }
.rhinory-journal-post .wp-answer p { margin:0;font-family:"Lora",Georgia,serif;font-size:18px;line-height:1.72;color:var(--ink-warm) }
.rhinory-journal-post .wp-answer .wp-answer-eye { display:flex;align-items:center;gap:12px;font-family:"Josefin Sans",system-ui,sans-serif;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--burgundy);line-height:1.4 }
.rhinory-journal-post .wp-answer-eye::before { content:"";flex:none;width:24px;height:1px;background:currentColor }
.rhinory-journal-post .wp-bottles-grid { display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(40px,5vw,80px);align-items:center }
.rhinory-journal-post .wp-bottles-copy { display:flex;flex-direction:column;gap:24px }
.rhinory-journal-post .wp-bottles-copy .ed-h2 em { display:block }
.rhinory-journal-post .wp-bottles-copy .ed-ctas { display:flex }
.rhinory-journal-post .wp-bottles .ed-bottles { grid-template-columns:repeat(3,minmax(0,1fr)) }
/* The closing card ("Bring Rhinory home."), every post type (Erik 2026-11-06:
   Field Notes posts end with it too). Keyed to the card, not the section, so a
   post that does not load wine-notes.css still gets the whole card. */
.rhinory-journal-post .rhinory-journal-post__circle .ed-tsr { background:var(--card);border-top:1px solid var(--rule-warm-2);padding:64px 0;scroll-margin-top:96px }
.rhinory-journal-post .rhinory-journal-post__circle .wp-tsr .ed-wrap { display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(32px,4vw,56px);align-items:center }
.rhinory-journal-post .rhinory-journal-post__circle .ed-tsr-copy { display:flex;flex-direction:column;gap:16px;max-width:70ch }
.rhinory-journal-post .rhinory-journal-post__circle .ed-tsr-line { margin:0;font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:clamp(24px,2.4vw,32px);line-height:1.26;color:var(--ink-warm);text-wrap:pretty }
.rhinory-journal-post .rhinory-journal-post__circle .ed-tsr-line em { font-style:italic;color:var(--burgundy) }
.rhinory-journal-post .rhinory-journal-post__circle .ed-tsr-links { display:flex;flex-direction:column;gap:12px }
.rhinory-journal-post .rhinory-journal-post__circle .ed-tsr-link.is-fill { background:var(--acacia);color:#1C1916;border-color:var(--acacia);box-shadow:0 12px 34px -14px rgba(185,119,39,.5) }
.rhinory-journal-post .rhinory-journal-post__circle .ed-tsr-link.is-fill:hover { background:var(--reserve);color:var(--ivory);border-color:var(--reserve) }
.rhinory-journal-post .rhinory-journal-post__circle .wp-tsr-fig { margin:0;width:240px }
.rhinory-journal-post .rhinory-journal-post__circle .wp-tsr-fig .ed-photo { aspect-ratio:4/5 }
.rhinory-journal-post .rhinory-journal-post__circle .wp-tsr-fig .ed-photo img { width:100%;height:100%;object-fit:cover;object-position:42% 30% }
@media (max-width:1080px) {
	.rhinory-journal-post .wp-bottles-grid { grid-template-columns:1fr;gap:40px }
	.rhinory-journal-post .wp-bottles-copy { max-width:640px }
	.rhinory-journal-post .rhinory-journal-post__circle .wp-tsr .ed-wrap { grid-template-columns:auto minmax(0,1fr) }
	.rhinory-journal-post .rhinory-journal-post__circle .wp-tsr .ed-tsr-links { grid-column:2;justify-self:start }
	.rhinory-journal-post .rhinory-journal-post__circle .wp-tsr-fig { width:200px;grid-row:span 2 }
}
@media (max-width:900px) {
	.rhinory-journal-post .rhinory-journal-post__circle .wp-tsr .ed-wrap { grid-template-columns:1fr;gap:26px }
	.rhinory-journal-post .rhinory-journal-post__circle .wp-tsr .ed-tsr-links { grid-column:auto;justify-self:start }
	.rhinory-journal-post .rhinory-journal-post__circle .wp-tsr-fig { width:100%;max-width:320px;grid-row:auto }
}
@media (max-width:640px) {
	.rhinory-journal-post .wp-bottles .ed-bottles { grid-template-columns:1fr;gap:14px }
}
