/* Journal extends the approved Onest / paper / sand / cocoa site.
   Paper #f9f7f3, ivory #fffdf9, sand #ede6db, cocoa #5f4741, ink #3b312a. */
.journal-page .skip-link { position:fixed; top:8px; left:24px; z-index:10000; transform:translateY(-160%); padding:12px 20px; background:#fffdf9; color:#3b312a; border-radius:8px; }
.journal-page .skip-link:focus { transform:translateY(0); }
@media(min-width:1141px) and (max-width:1279px) {
  .refinement-warm .site-header .header-nav-bar .nav-links a { padding-inline:4px; font-size:11px; }
}
.journal-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.journal-grid.journal-grid--pair { grid-template-columns:repeat(2,minmax(0,1fr)); }
.journal-card { display:flex; flex-direction:column; min-width:0; padding:0 0 20px; border:1px solid #e7ded3; border-radius:14px; overflow:hidden; background:#fffdf9; color:var(--text); }
.journal-card figure { margin:0 0 20px; aspect-ratio:4/3; overflow:hidden; border-radius:0; background:#ede6db; }
.journal-card > :not(figure) { margin-inline:20px; }
.journal-card img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .2s; }
/* Focal points keep the puppies' faces centred in the shared landscape frame. */
.journal-card img[src$="/images/tg/gallery-3.jpg"] { object-position:50% 7%; }
.journal-card img[src$="/images/catalog-telegram/maltipooTeddi-1572.jpg"] { object-position:50% 48%; }
.journal-card img[src$="/images/tg/gallery-12.jpg"] { object-position:50% 28%; }
.journal-card:hover img { transform:scale(1.025); }
.journal-category { display:block; color:var(--text-muted); font-size:13px; line-height:1.5; margin-bottom:9px; }
.journal-card h3 { font-size:22px; font-weight:500; line-height:1.3; letter-spacing:-.025em; margin-block:0 12px; }
.journal-card p { margin-block:0; font-size:var(--body-size,16px); line-height:var(--body-leading,1.7); color:var(--text-muted); max-width:60ch; }
.journal-card .journal-read { align-self:flex-start; margin-top:auto; padding:20px 0 0; font-size:14px; color:var(--primary-dark); text-decoration:underline; text-underline-offset:4px; }
.journal-card:focus-visible { outline:2px solid #5f4741; outline-offset:4px; }
.journal-topics { display:flex; flex-wrap:wrap; gap:4px 24px; margin:24px 0 0; }
.journal-topics a { display:inline-flex; align-items:center; min-height:44px; color:var(--primary-dark); font-size:14px; text-decoration:underline; text-underline-offset:5px; }
.journal-group-intro { margin:-16px 0 28px; color:var(--text-muted); font-size:16px; line-height:1.65; }
.journal-page .editorial-shell { width:calc(100% - 2 * var(--layout-gutter,24px)); max-width:var(--layout-width,1280px); margin:0 auto 20px; }
.journal-page .editorial-breadcrumbs { padding:22px 4px; }
.editorial-breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:0; list-style:none; color:var(--text-muted); font-size:13px; line-height:1.5; }
.editorial-breadcrumbs li:not(:last-child)::after { content:"/"; margin-left:8px; color:#aa9b8b; }
.editorial-breadcrumbs a { text-decoration:underline; text-underline-offset:3px; }
.editorial-panel { padding:56px; background:var(--panel-bg,#ede6db); border-radius:var(--panel-radius,22px); }
.editorial-panel h1 { max-width:22ch; font:500 clamp(34px,4.1vw,54px)/1.13 var(--font); letter-spacing:-.035em; margin:0 0 22px; text-wrap:balance; }
.editorial-deck { font-size:18px; line-height:1.65; color:var(--text-muted); max-width:65ch; margin:0; }
.journal-page .editorial-meta { display:flex; flex-wrap:wrap; gap:8px 20px; margin:24px 0 0; font-size:13px; line-height:1.6; color:var(--text-muted); }
.editorial-feature { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); align-items:center; gap:48px; margin-top:44px; padding-top:36px; border-top:1px solid var(--line); }
.editorial-feature h2 { font-size:clamp(28px,3vw,40px); line-height:1.18; margin:0 0 18px; max-width:24ch; }
.editorial-feature p { font-size:16px; line-height:1.7; color:var(--text-muted); margin:0 0 24px; max-width:55ch; }
.editorial-feature figure { margin:0; }
.editorial-feature img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; object-position:center 42%; border-radius:14px; }
.journal-list-panel { margin-top:20px; }
.journal-list-panel > h2 { margin:0 0 32px; font-size:clamp(28px,3vw,40px); line-height:1.2; }
.editorial-article-hero { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr); gap:44px; align-items:center; }
.editorial-article-hero h1 { font-size:clamp(32px,3.5vw,48px); max-width:25ch; }
.editorial-article-hero figure { margin:0; }
.editorial-article-hero img { display:block; width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; border-radius:14px; }
.editorial-article-hero img.article-image--whole { aspect-ratio:1; object-fit:contain; }
.article-reading-panel { background:#fffdf9; padding:56px; border-radius:var(--panel-radius,22px); margin-top:20px; }
.article-reading-layout { display:grid; grid-template-columns:minmax(0,740px) minmax(180px,1fr); gap:56px; align-items:start; }
.article-prose { min-width:0; max-width:74ch; font-size:17px; line-height:1.8; color:var(--text); }
.article-prose p { margin:0 0 20px; }
.article-prose h2 { font:500 clamp(25px,2.3vw,32px)/1.25 var(--font); letter-spacing:-.025em; margin:0 0 22px; text-wrap:pretty; scroll-margin-top:130px; }
.prose-section { margin-top:42px; }
.prose-section:first-child { margin-top:0; }
.article-prose ul { padding-left:22px; margin:0 0 24px; }
.article-prose li { padding-left:3px; margin-bottom:10px; }
.article-prose a:not(.btn) { color:var(--primary-dark); text-decoration:underline; text-underline-offset:4px; }
.article-summary { border-left:3px solid #a88b7d; padding:4px 0 4px 24px; margin-bottom:42px; }
.article-summary p { margin:0; font-size:18px; line-height:1.7; }
.article-toc { position:sticky; top:125px; padding:0 0 0 24px; border-left:1px solid #e3d9cd; font-size:14px; line-height:1.55; }
.article-toc h2 { font:500 18px/1.3 var(--font); margin:0 0 18px; }
.article-toc ol { padding:0; margin:0; list-style:none; display:grid; gap:14px; }
.article-toc a { color:var(--text-muted); }
.article-toc a:hover { color:var(--primary-dark); }
.article-table-wrap { overflow-x:auto; margin:24px 0; }
.article-prose table { border-collapse:collapse; width:100%; font-size:16px; text-align:left; }
.article-prose caption { text-align:left; margin-bottom:12px; color:var(--text-muted); font-size:14px; }
.article-prose th,.article-prose td { border-bottom:1px solid #e3d9cd; padding:14px 14px 14px 0; }
.article-prose th { font-weight:500; }
.article-faq { margin-top:42px; }
.article-faq details { border-top:1px solid #e3d9cd; padding:18px 0; }
.article-faq details:last-child { border-bottom:1px solid #e3d9cd; }
.article-faq summary { cursor:pointer; font-weight:500; line-height:1.5; padding-right:16px; }
.article-faq details p { margin:18px 0 0; font-size:16px; }
.article-sources { border-top:1px solid #e3d9cd; margin-top:36px; padding-top:24px; font-size:14px; color:var(--text-muted); line-height:1.65; }
.article-sources h2 { font-size:20px; margin-bottom:16px; }
.article-sources ul { padding-left:18px; }
.article-sources p { font-size:14px; }
.editorial-cta { margin-top:20px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.editorial-cta h2 { font-size:clamp(28px,3vw,36px); line-height:1.2; margin:0 0 14px; }
.editorial-cta p { font-size:16px; line-height:1.65; margin:0; max-width:58ch; color:var(--text-muted); }
.editorial-cta .btn { flex:none; }
.journal-page .journal-related { margin-top:20px; }
.journal-related h2 { margin:0 0 30px; font-size:clamp(28px,3vw,38px); }
.journal-related .journal-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.journal-page :target { scroll-margin-top:125px; }
.journal-page :focus-visible,.journal-section :focus-visible { outline:2px solid #5f4741; outline-offset:5px; }
@media(max-width:1100px) {
  .editorial-panel,.article-reading-panel { padding:40px; }
  .article-reading-layout { grid-template-columns:minmax(0,1fr) 190px; gap:32px; }
  .editorial-feature,.editorial-article-hero { gap:32px; }
}
@media(max-width:800px) {
  .journal-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .article-reading-layout { display:flex; flex-direction:column; gap:32px; }
  .article-toc { position:static; order:-1; width:100%; padding:0 0 24px; border:0; border-bottom:1px solid #e3d9cd; }
  .article-toc ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 24px; }
  .editorial-article-hero { grid-template-columns:minmax(0,1fr) 30%; gap:24px; }
  .editorial-article-hero h1 { font-size:36px; }
  .editorial-cta { flex-direction:column; align-items:flex-start; }
}
@media(max-width:600px) {
  .editorial-panel,.article-reading-panel { padding:28px 22px; border-radius:16px; }
  .journal-page .editorial-breadcrumbs { padding:18px 4px; }
  .editorial-feature { grid-template-columns:1fr; gap:24px; margin-top:28px; padding-top:28px; }
  .editorial-feature figure { order:-1; }
  .editorial-feature img { aspect-ratio:4/3; }
  .journal-grid,.journal-grid.journal-grid--pair,.journal-related .journal-grid { grid-template-columns:1fr; gap:24px; }
  .journal-card h3 { font-size:22px; }
  .editorial-panel h1 { font-size:34px; }
  .editorial-deck { font-size:16px; }
  .editorial-article-hero { display:flex; flex-direction:column; align-items:stretch; }
  .editorial-article-hero figure { order:-1; }
  .editorial-article-hero img { aspect-ratio:4/3; object-position:center 38%; }
  .editorial-article-hero h1 { font-size:32px; max-width:none; }
  .article-prose { font-size:16px; line-height:1.8; }
  .article-summary { padding-left:18px; margin-bottom:32px; }
  .article-summary p { font-size:17px; }
  .article-toc ol { grid-template-columns:1fr; }
  .editorial-cta .btn { width:100%; white-space:normal; text-align:center; }
}
@media(prefers-reduced-motion:reduce) {
  .journal-card img { transition:none; }
  .journal-card:hover img { transform:none; }
}
