/* Journal styles are scoped so the homepage feature can coexist with OG UI. */
.journal-page { --paper:#f7f4ed; --ink:#242d29; --muted:#59655d; --line:#d9ddd2; --accent:#ac482b; --focus:#bd5735; --button-border:#566759; --surface:#eaeae1; --quote:#526255; --prose-link:#954428; --notice-bg:#eadbc3; --notice-ink:#443b2c; margin:0; background:var(--paper); color:var(--ink); font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
/* Match the existing site's charcoal; artwork supplies its own color. */
html[data-journal-theme=dark] .journal-page { --paper:#222; --ink:#eeeae0; --muted:#bebdb9; --line:#595959; --accent:#efad89; --focus:#e4a37d; --button-border:#999; --surface:#303030; --quote:#c9c6c0; --prose-link:#efad89; --notice-bg:#363636; --notice-ink:#eeeae0; }
.journal-page *, .journal-home-feature * { box-sizing:border-box; }
.journal-home-feature, .journal-home-feature * { text-shadow:none; }
.journal-page a { color:inherit; text-underline-offset:4px; }
.journal-page a:hover { color:var(--accent); }
.journal-page a:focus-visible, .journal-page select:focus-visible, .journal-home-feature a:focus-visible { outline:3px solid var(--focus,#bd5735); outline-offset:5px; border-radius:2px; }
.journal-page img { display:block; max-width:100%; }
.journal-skip { position:absolute; left:16px; top:-80px; padding:10px 16px; background:var(--paper); color:var(--ink); z-index:10; }
.journal-skip:focus { top:10px; }
.journal-preview-note { padding:7px 20px; background:#eadbc3; color:#443b2c; text-align:center; font:12px/1.5 system-ui,sans-serif; }
.journal-page .journal-preview-note { background:var(--notice-bg); color:var(--notice-ink); }
.journal-preview-note a { margin-left:16px; font-weight:650; }
.journal-masthead { display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:24px; max-width:1240px; margin:auto; padding:25px 44px; border-bottom:1px solid var(--line); }
.journal-brand { display:flex; align-items:center; gap:10px; text-decoration:none; font-size:18px; font-weight:750; letter-spacing:-.6px; white-space:nowrap; }
.journal-masthead .site-navigation { --site-nav-ink:var(--ink); --site-nav-hover:var(--surface); --site-nav-accent:var(--accent); --site-nav-border:var(--button-border); --site-nav-blue:#075bb5; --site-nav-blue-border:#2b72bb; --site-nav-blue-fill:#e5effb; }
html[data-journal-theme=dark] .journal-masthead .site-navigation { --site-nav-blue:#70b4ff; --site-nav-blue-border:#007bff; --site-nav-blue-fill:#12365b; }
.journal-theme-control { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--muted); }
.journal-theme-control[hidden] { display:none; }
.journal-theme-control select { min-height:36px; padding:6px 8px; border:1px solid var(--button-border); border-radius:4px; background:var(--paper); color:var(--ink); font:inherit; cursor:pointer; }
.journal-main { max-width:1152px; margin:0 auto; padding:0 44px; }
.journal-intro { padding-top:62px; }
.journal-eyebrow { margin:0 0 17px; font-size:11px; line-height:1.65; font-weight:650; letter-spacing:1.4px; text-transform:uppercase; color:var(--muted); }
.journal-eyebrow span { padding:0 6px; color:#8b958b; }
.journal-intro h1 { margin:0 0 25px; font:normal clamp(42px,5.6vw,76px)/1.04 Georgia,"Times New Roman",serif; letter-spacing:-2.9px; }
.journal-intro-copy { margin:0; color:var(--muted); font-size:17px; line-height:1.7; }
.journal-section-label { display:flex; justify-content:space-between; margin-top:47px; padding:0 0 13px; border-bottom:1px solid var(--ink); font-size:12px; }
.journal-section-label span:first-child { font-weight:700; }
.journal-section-label span:last-child { color:var(--muted); }
.journal-lead { display:grid; grid-template-columns:1.1fr 1fr; gap:46px; align-items:center; padding:30px 0 48px; border-bottom:1px solid var(--line); }
.journal-lead-art { display:block; background:#e7e9dd; border-radius:4px; overflow:hidden; }
.journal-lead-art img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; transition:transform 240ms ease; }
.journal-lead-art:hover img { transform:scale(1.025); }
.journal-lead h2 { font:normal clamp(29px,3.1vw,43px)/1.1 Georgia,serif; letter-spacing:-1.1px; margin:0 0 19px; }
.journal-lead h2 a, .journal-story h3 a { text-decoration:none; }
.journal-lead-copy > p:not(.journal-eyebrow) { color:var(--muted); font-size:15px; max-width:39ch; margin:0 0 23px; }
.journal-read-link { display:inline-block; text-decoration:none; font-weight:650; font-size:13px; border-bottom:1px solid currentColor; padding-bottom:5px; }
.journal-read-link span { margin-left:22px; }
.journal-more { padding-top:35px; }
.journal-section-heading { margin:0 0 25px; font-size:13px; font-weight:650; }
.journal-story-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
.journal-story img { width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; margin-bottom:22px; border-radius:4px; }
.journal-story h3 { font:normal 29px/1.17 Georgia,serif; letter-spacing:-.6px; margin:0 0 14px; }
.journal-story p:not(.journal-eyebrow) { font-size:14px; color:var(--muted); margin-top:0; max-width:48ch; }
.journal-archive { display:flex; justify-content:space-between; align-items:center; gap:28px; border-top:1px solid var(--line); margin-top:52px; padding:30px 0 38px; }
.journal-archive h2 { font:normal 24px Georgia,serif; margin:0 0 8px; }
.journal-archive p { font-size:13px; color:var(--muted); margin:0; }
.journal-archive > a { font-size:13px; white-space:nowrap; }
.journal-footer { display:flex; justify-content:space-between; align-items:start; gap:30px; max-width:1240px; margin:20px auto 0; padding:33px 44px 45px; border-top:1px solid var(--line); font-size:12px; }
.journal-footer-brand { text-decoration:none; font-weight:750; font-size:15px; }
.journal-footer p { color:var(--muted); margin-top:8px; }
.journal-footer nav { display:flex; flex-wrap:wrap; gap:11px 22px; justify-content:flex-end; }
.journal-footer nav a { text-decoration:none; }
.journal-article-header { max-width:800px; margin:auto; padding:42px 0 30px; text-align:center; }
.journal-back { display:inline-block; font-size:12px; margin-bottom:39px; text-decoration:none; }
.journal-back span { margin-right:8px; }
.journal-article-header h1 { font:normal clamp(39px,5vw,66px)/1.06 Georgia,serif; letter-spacing:-2px; margin:0 0 23px; text-wrap:balance; }
.journal-deck { font-size:18px; max-width:58ch; margin:0 auto 23px; color:var(--muted); }
.journal-byline { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; color:var(--muted); font-size:12px; margin:0; }
.journal-article-cover { margin:5px 0 42px; }
.journal-article-cover img { width:100%; max-height:500px; height:auto; object-fit:cover; border-radius:4px; }
.journal-prose { max-width:670px; margin:auto; font:19px/1.8 Georgia,"Times New Roman",serif; overflow-wrap:anywhere; }
.journal-prose > :first-child { margin-top:0; }
.journal-prose p { margin:0 0 1.4em; }
.journal-prose h2 { font-size:31px; line-height:1.2; font-weight:normal; letter-spacing:-.5px; margin:1.8em 0 .7em; }
.journal-prose h3 { font-size:23px; line-height:1.3; margin:1.5em 0 .7em; }
.journal-prose a { color:var(--prose-link); }
.journal-prose blockquote { border-left:2px solid var(--accent); padding:4px 0 4px 24px; margin:35px 0; font-size:24px; line-height:1.55; color:var(--quote); }
.journal-prose blockquote p { margin:0; }
.journal-prose ul, .journal-prose ol { padding-left:25px; }
.journal-prose li { padding-left:5px; margin-bottom:9px; }
.journal-prose pre { padding:20px; background:var(--surface); overflow:auto; font:14px/1.6 ui-monospace,monospace; border-radius:4px; }
.journal-prose code { font-size:.84em; }
.journal-prose img, .journal-prose video { max-width:100%; height:auto; }
.journal-prose figure { margin:35px 0; }
.journal-prose figcaption { font:12px/1.7 system-ui,sans-serif; color:var(--muted); margin-top:10px; }
.journal-piece-gallery > p { font:650 14px/1.5 system-ui,sans-serif; margin:0 0 14px; }
.journal-piece-gallery ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px 14px; padding:0; margin:0 0 30px; list-style:none; }
.journal-piece-gallery li { padding:0; margin:0; text-align:center; }
.journal-piece-gallery li img { width:132px; max-width:100%; height:auto; margin:0 auto 10px; border:1px solid var(--line); border-radius:4px; }
.journal-piece-gallery li p { margin:0; font:600 12px/1.5 system-ui,sans-serif; }
@media(max-width:600px) {
  .journal-piece-gallery ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
.journal-prose details { padding:18px 0; border-block:1px solid var(--line); }
.journal-prose summary { cursor:pointer; font:600 15px/1.5 system-ui,sans-serif; }
.journal-prose hr { border:0; border-top:1px solid var(--line); margin:40px 0; }
.journal-article-end { max-width:670px; margin:45px auto 60px; border-top:1px solid var(--line); padding-top:30px; text-align:center; font-size:13px; }
.journal-article-end > span { font-size:34px; color:var(--accent); }
.journal-article-end p { margin:6px 0 15px; color:var(--muted); }
.journal-empty { padding-top:60px; padding-bottom:60px; }
.journal-empty h1, .journal-empty h2 { font:normal 36px/1.2 Georgia,serif; }
.journal-home-feature { position:relative; display:grid; grid-template-columns:165px 1fr auto; gap:23px; align-items:center; margin:20px 0 22px; padding:18px; background:#f4f1e8; border:1px solid #e0dccf; border-radius:6px; color:#26332a; font:14px/1.5 system-ui,sans-serif; }
.journal-home-feature > img { display:block; width:165px; height:126px; object-fit:cover; border-radius:3px; }
.journal-home-feature h2 { font:normal 28px/1.1 Georgia,serif; letter-spacing:-.4px; margin:0 0 8px; }
.journal-home-feature h2 a { color:#26332a; text-decoration:none; }
.journal-home-feature p { margin:0 0 9px; font-size:13px; max-width:56ch; }
.journal-home-feature .journal-home-eyebrow { color:#6b563d; font:650 10px/1.5 system-ui,sans-serif; letter-spacing:1px; text-transform:uppercase; margin-bottom:8px; }
.journal-home-feature .journal-home-read { color:#984729; font-size:12px; font-weight:650; text-decoration:underline; text-underline-offset:4px; }
.journal-home-feature .journal-home-all { color:#5b655d; align-self:start; font-size:11px; white-space:nowrap; }
@media(max-width:1000px) {
  .journal-masthead { grid-template-columns:1fr auto; }
  .journal-masthead nav { grid-column:1 / -1; grid-row:2; }
  .journal-theme-control { grid-column:2; grid-row:1; }
}
@media(max-width:760px) {
  .journal-masthead { padding:20px 24px; gap:15px; }
  .journal-main { padding:0 24px; }
  .journal-intro { padding-top:43px; }
  .journal-intro h1 { letter-spacing:-1.7px; }
  .journal-intro-copy { font-size:15px; }
  .journal-section-label { margin-top:32px; }
  .journal-lead { grid-template-columns:1fr; gap:26px; padding-top:23px; }
  .journal-lead h2 { font-size:36px; }
  .journal-lead-copy > p:not(.journal-eyebrow) { max-width:none; }
  .journal-story-grid { gap:24px; }
  .journal-story h3 { font-size:25px; }
  .journal-eyebrow { letter-spacing:1px; font-size:10px; }
  .journal-archive { align-items:start; flex-direction:column; gap:18px; }
  .journal-footer { padding:28px 24px; flex-direction:column; }
  .journal-footer nav { justify-content:flex-start; }
  .journal-article-header { padding-top:25px; text-align:left; }
  .journal-article-header h1 { letter-spacing:-1.2px; }
  .journal-back { margin-bottom:28px; }
  .journal-deck { font-size:16px; }
  .journal-byline { justify-content:flex-start; }
  .journal-prose { font-size:18px; }
  .journal-home-feature { grid-template-columns:100px 1fr; gap:16px; padding:15px; }
  .journal-home-feature > img { width:100px; height:130px; }
  .journal-home-feature h2 { font-size:24px; }
  .journal-home-feature .journal-home-all { grid-column:2; }
}
@media(max-width:440px) {
  .journal-masthead { column-gap:12px; }
  .journal-brand { gap:8px; font-size:16px; }
  .journal-brand img { width:28px; height:28px; }
  .journal-theme-label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .journal-theme-control select { padding:6px 4px; }
  .journal-masthead nav { width:100%; }
  .journal-story-grid { grid-template-columns:1fr; gap:32px; }
  .journal-wide-break { display:none; }
  .journal-preview-note span { display:none; }
  .journal-home-feature { grid-template-columns:1fr; }
  .journal-home-feature > img { display:none; }
  .journal-home-feature .journal-home-all { grid-column:1; }
}
@media(prefers-reduced-motion:reduce) { .journal-lead-art img { transition:none; } .journal-lead-art:hover img { transform:none; } }
