/* Shared reading and archive layouts for articles managed in the existing back office. */
.atelier .journal-shell { display:block; width:calc(100% - 80px); max-width:1280px; margin:0 auto; padding:0; color:var(--ink); }
.atelier .journal-shell>.bc-nav { width:100% !important; margin:0 0 34px; padding:20px 0; border-bottom:1px solid var(--line); background:none; }
.atelier .journal-layout { display:grid; grid-template-columns:minmax(0,1fr) 272px; align-items:start; gap:56px; }
.atelier :is(.journal-reading,.journal-archive,.journal-sidebar) { min-width:0; }
.atelier .journal-kicker { display:block; margin:0 0 16px; color:#66776d; font:600 11px/1.6 var(--sans); letter-spacing:.14em; text-transform:uppercase; }
.atelier .journal-heading { padding:36px 40px; margin:0 0 40px; border:1px solid #e1e8e2; border-top:3px solid var(--forest); background:#f3f6f3; }
.atelier .journal-heading h1 { margin:0 0 18px; color:var(--forest); font:clamp(38px,4vw,56px)/1.15 var(--serif); letter-spacing:-.025em; overflow-wrap:anywhere; text-wrap:balance; }
.atelier .journal-intro { max-width:640px; margin:0; color:var(--muted); font:16px/1.8 var(--sans); }
.atelier .journal-topic-nav { display:flex; flex-wrap:wrap; gap:10px; margin:24px 0 0; }
.atelier .journal-topic-nav a { display:inline-flex; align-items:center; gap:16px; min-height:42px; padding:10px 16px; border:1px solid #d4dfd6; border-radius:2px; background:var(--paper); color:var(--forest); font:13px/1.6 var(--sans); }
.atelier .journal-topic-nav a[aria-current],.atelier .journal-topic-nav a:hover { background:var(--forest); border-color:var(--forest); color:var(--forest-text); }
.atelier .journal-shell a:focus-visible,.atelier .journal-shell button:focus-visible,.atelier .journal-shell input:focus-visible,.atelier .journal-shell textarea:focus-visible { outline:2px solid var(--forest); outline-offset:4px; }
.atelier .journal-article-heading { padding:0 0 26px; margin:0 0 28px; border-bottom:1px solid #d7e1da; }
.atelier .journal-article-heading h1 { width:100%; margin:0 0 24px; color:var(--forest); font:clamp(32px,3.4vw,46px)/1.2 var(--serif); letter-spacing:-.025em; overflow-wrap:anywhere; text-wrap:balance; }
.atelier .journal-meta { display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; color:var(--muted); font:12px/1.7 var(--sans); }
.atelier .journal-meta>a { padding:6px 10px; background:#eef3ef; border-radius:2px; color:var(--forest); }
.atelier .journal-standfirst { margin:0 0 32px; padding:22px 26px; border-left:3px solid #9cae9f; background:#f4f6f3; color:#48594e; font:17px/1.8 var(--sans); overflow-wrap:anywhere; }
.atelier .journal-prose { max-width:760px; margin:0; color:#303c34; font:17px/1.9 var(--sans); overflow-wrap:anywhere; }
.atelier .journal-prose :is(p,div,span,font) { max-width:100% !important; font-family:inherit !important; font-size:inherit !important; line-height:inherit !important; }
.atelier .journal-prose :is(p,div,section,figure) { height:auto !important; min-width:0; margin-left:0 !important; margin-right:0 !important; }
.atelier .journal-prose p { margin:0 0 1.35em !important; text-indent:0 !important; }
.atelier .journal-prose p:empty { display:none; }
.atelier .journal-prose :is(h1,h2,h3,h4,h5,h6) { max-width:100%; height:auto !important; margin:1.65em 0 .7em !important; color:var(--forest); font-family:var(--serif) !important; font-weight:400; line-height:1.4 !important; overflow-wrap:anywhere; }
.atelier .journal-prose :is(h1,h2) { font-size:28px !important; }
.atelier .journal-prose h3 { font-size:23px !important; }
.atelier .journal-prose :is(h4,h5,h6) { font-size:19px !important; }
.atelier .journal-prose :is(h1,h2,h3,h4,h5,h6)>:is(span,strong,font) { font-size:inherit !important; line-height:inherit !important; }
.atelier .journal-prose a { color:var(--forest); text-decoration:underline; text-underline-offset:3px; text-decoration-color:#9bad9f; }
.atelier .journal-prose a:hover { text-decoration-color:var(--forest); }
.atelier .journal-prose :is(strong,b) { font-weight:600; }
.atelier .journal-prose :is(ul,ol) { margin:18px 0 26px; padding-left:26px; list-style:revert; }
.atelier .journal-prose li { padding:4px 0; }
.atelier .journal-prose blockquote { margin:28px 0; padding:20px 24px; border-left:3px solid var(--forest); background:#f3f6f3; }
.atelier .journal-prose img { display:block; float:none !important; width:auto !important; max-width:100% !important; height:auto !important; margin:28px auto !important; border-radius:3px; }
.atelier .journal-prose :is(video,iframe,embed,object) { display:block; max-width:100% !important; margin:24px auto; }
.atelier .journal-prose video { height:auto; }
.atelier .journal-prose iframe { width:100%; height:auto; aspect-ratio:16/9; border:0; }
.atelier .journal-prose table { display:block; width:100% !important; max-width:100%; margin:24px 0; border-collapse:collapse; overflow-x:auto; }
.atelier .journal-prose :is(th,td) { padding:12px 14px; border:1px solid var(--line); text-align:left; }
.atelier .journal-prose th { background:#f3f6f3; color:var(--forest); }
.atelier .journal-prose pre { max-width:100%; white-space:pre-wrap; }
.atelier .journal-pagination { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:36px 0; padding-top:28px; border-top:1px solid var(--line); }
.atelier .journal-pagination>a { display:flex; flex-direction:column; gap:12px; padding:20px; border:1px solid var(--line); color:var(--forest); font:19px/1.5 var(--serif); overflow-wrap:anywhere; }
.atelier .journal-pagination>a:only-child { grid-column:1/-1; }
.atelier .journal-pagination .journal-kicker { margin:0; font-size:10px; }
.atelier .journal-pagination>a:hover { background:#f3f6f3; border-color:#a9bbb0; }
.atelier .journal-section-heading { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-bottom:20px; margin:0; }
.atelier .journal-section-heading h2,.atelier .journal-discussion>h2 { margin:0; color:var(--forest); font:27px/1.35 var(--serif); }
.atelier .journal-section-heading>a,.atelier .journal-section-heading>span { color:var(--muted); font:12px/1.6 var(--sans); }
.atelier .journal-collection { margin:44px 0; }
.atelier .journal-collection ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:0; padding:0; list-style:none; }
.atelier .journal-collection li { min-width:0; }
.atelier .journal-collection a { display:block; color:var(--forest); }
.atelier .journal-collection img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; border:1px solid var(--line); background:#fff; }
.atelier .journal-collection a>span { display:block; padding:12px 0; font:12px/1.7 var(--sans); overflow-wrap:anywhere; }
.atelier .journal-sidebar { display:grid; gap:26px; }
.atelier .journal-sidebar :is(section,nav) { padding:22px; border:1px solid var(--line); border-top:2px solid var(--forest); }
.atelier .journal-sidebar h2 { margin:0 0 16px; color:var(--forest); font:22px/1.35 var(--serif); }
.atelier .journal-side-nav { background:#f3f6f3; }
.atelier .journal-side-nav .journal-kicker { margin-bottom:10px; }
.atelier .journal-side-nav>a { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; border-top:1px solid #dde6df; font:13px/1.6 var(--sans); color:var(--forest); }
.atelier .journal-side-stories ol { counter-reset:journal-story; margin:0; padding:0; list-style:none; }
.atelier .journal-side-stories li { counter-increment:journal-story; display:grid; grid-template-columns:22px minmax(0,1fr); gap:10px; padding:14px 0; border-top:1px solid var(--line); }
.atelier .journal-side-stories li::before { content:counter(journal-story,decimal-leading-zero); color:#798e7d; font:13px/1.7 var(--serif); }
.atelier .journal-side-stories li>a { color:var(--ink); font:13px/1.7 var(--sans); overflow-wrap:anywhere; }
.atelier .journal-side-watch { display:block; padding:22px; background:#f3f6f3; color:var(--forest); border:1px solid #e1e8e2; }
.atelier .journal-side-watch img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; margin:12px 0 18px; background:#fff; }
.atelier .journal-watch-name { display:block; margin-bottom:18px; font:14px/1.7 var(--sans); overflow-wrap:anywhere; }
.atelier .journal-text-link { display:inline-flex; align-items:center; gap:16px; color:var(--forest); font:600 12px/1.7 var(--sans); }
.atelier .journal-story-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin:0; padding:0; list-style:none; }
.atelier .journal-story-grid>li { min-width:0; }
.atelier .journal-story-card { display:flex; flex-direction:column; height:100%; border:1px solid var(--line); background:var(--paper); color:var(--ink); }
.atelier .journal-story-image { position:relative; flex:none; aspect-ratio:3/2; background:#f3f6f3; }
.atelier .journal-story-image img { position:absolute; inset:16px; display:block; width:calc(100% - 32px); height:calc(100% - 32px); object-fit:contain; }
.atelier .journal-prose .journal-empty-paragraph { display:none; }
.atelier .journal-story-copy { display:flex; flex-direction:column; align-items:flex-start; flex:1; padding:24px; }
.atelier .journal-story-copy>time { margin:0 0 12px; font:11px/1.6 var(--sans); color:var(--muted); }
.atelier .journal-story-copy h2 { margin:0 0 14px; color:var(--forest); font:24px/1.4 var(--serif); overflow-wrap:anywhere; }
.atelier .journal-story-copy>p { margin:0 0 22px; color:var(--muted); font:14px/1.85 var(--sans); overflow-wrap:anywhere; }
.atelier .journal-story-copy>.journal-text-link { margin-top:auto; }
.atelier .journal-story-card:hover { border-color:#91a99a; box-shadow:0 4px 18px #173d320a; }
.atelier .journal-featured-story { display:grid; grid-template-columns:42% minmax(0,1fr); margin-bottom:40px; border:1px solid #dce5df; background:#f3f6f3; color:var(--forest); }
.atelier .journal-featured-image { display:flex; padding:24px; background:#edf2ed; }
.atelier .journal-featured-image img { display:block; width:100%; height:100%; max-height:380px; align-self:center; object-fit:contain; }
.atelier .journal-featured-copy { min-width:0; padding:32px; }
.atelier .journal-featured-copy h2 { margin:0 0 18px; color:var(--forest); font:30px/1.3 var(--serif); overflow-wrap:anywhere; }
.atelier .journal-featured-copy>p:not(.journal-kicker) { margin:0 0 24px; color:var(--muted); font:14px/1.85 var(--sans); }
.atelier .journal-sections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.atelier .journal-section-card { display:flex; flex-direction:column; min-width:0; padding:26px; border:1px solid var(--line); border-top:2px solid #9aafa1; background:var(--paper); }
.atelier .journal-section-card h2 { margin:0 0 20px; color:var(--forest); font:25px/1.35 var(--serif); overflow-wrap:anywhere; }
.atelier .journal-section-card ul { flex:1; margin:0 0 18px; padding:0; list-style:none; }
.atelier .journal-section-card li { border-top:1px solid var(--line); }
.atelier .journal-section-card li a { display:flex; align-items:baseline; justify-content:space-between; gap:14px; padding:14px 0; color:var(--ink); font:14px/1.8 var(--sans); overflow-wrap:anywhere; }
.atelier .journal-section-card li a>span { flex:none; color:#718b79; }
.atelier :is(.journal-section-card,.journal-side-stories,.journal-collection) a:hover { color:var(--forest); text-decoration:underline; text-underline-offset:4px; }
.atelier .journal-archive .pagebar { margin:36px 0; }
.atelier .journal-archive .pagebar .pager { width:auto; margin:0; float:none; }
.atelier .journal-archive .pagebar .pager :is(a,strong,.unprev,.unnext) { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:10px 13px; height:auto; background:none; border:1px solid var(--line); color:var(--forest); font:12px/1.6 var(--sans); }
.atelier .journal-archive .pagebar .pager strong { background:var(--forest); color:var(--paper); }
.atelier .journal-discussion { padding:28px; border:1px solid var(--line); background:#fafbf9; }
.atelier .journal-discussion>h2 { margin-bottom:24px; }
.atelier .journal-discussion #ECS_COMMENT { padding:0; }
.atelier .journal-discussion :is(.no-com,.add-c,.comemt_lm3) { border:0; background:none; margin:12px 0; padding:0; height:auto; }
.atelier .journal-discussion .add-c>.lm { display:block; font:20px/1.4 var(--serif); margin:22px 0 14px; color:var(--forest); }
.atelier .journal-discussion form { margin:0; }
.atelier .journal-discussion :is(table,tbody,tr,td) { display:block; width:100% !important; max-width:100%; height:auto; text-align:left; }
.atelier .journal-discussion tr { margin-bottom:16px; }
.atelier .journal-discussion td { padding:4px 0; font:13px/1.8 var(--sans); }
.atelier .journal-discussion :is(textarea,input[type=text],input[type=file]) { max-width:100%; width:100% !important; min-width:0; padding:10px; border:1px solid #cdd9d0; border-radius:2px; background:var(--paper); color:var(--ink); font:16px/1.6 var(--sans); }
.atelier .journal-discussion textarea { min-height:140px; }
.atelier .journal-discussion input[type=file] { font-size:12px; margin:3px 0; }
.atelier .journal-discussion :is(input[type=submit],.sub) { width:auto; min-width:140px; height:auto; min-height:44px; margin:0; padding:12px 24px; border:0; border-radius:2px; background:var(--forest); color:var(--paper); font:600 13px/1.6 var(--sans); cursor:pointer; }
.atelier .journal-discussion #comments-list .item { padding:18px 0; margin:0 0 18px; display:grid; grid-template-columns:64px minmax(0,1fr); gap:16px; border-bottom:1px solid var(--line); background:none; }
.atelier .journal-discussion #comments-list .c-user { position:static; width:100%; }
.atelier .journal-discussion #comments-list .c-name { overflow-wrap:anywhere; }
.atelier .journal-discussion #comments-list .c-item { min-width:0; margin:0; padding:0; background:none; border:0; }
.atelier .journal-discussion #comments-list :is(.con,.rep,.stat) { line-height:1.8; border-color:var(--line); overflow-wrap:anywhere; }
.atelier .journal-discussion #comments-list .rep { padding:12px; background:#eef3ef; color:var(--forest); }
.atelier .journal-discussion #comments-list .rep strong { color:inherit; font-weight:400; }
.atelier .journal-discussion #comments-list .corner { display:none; }
.atelier .journal-discussion td.journal-rating { display:flex; gap:8px; flex-wrap:wrap; }
.atelier .journal-rating-option { position:relative; display:flex; align-items:center; justify-content:center; flex:1; max-width:70px; min-height:44px; border:1px solid #cdd9d0; border-radius:2px; background:var(--paper); color:var(--forest); cursor:pointer; font:600 14px/1.5 var(--sans); }
.atelier .journal-rating-option:has(input:checked) { background:var(--forest); color:var(--paper); border-color:var(--forest); }
.atelier .journal-rating-option input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; margin:0; }
.atelier .journal-discussion .journal-upload { position:relative; display:flex; align-items:center; gap:14px; min-height:48px; padding:10px 12px; margin:8px 0; border:1px solid #cdd9d0; background:var(--paper); cursor:pointer; }
.atelier .journal-discussion .journal-upload input[type=file] { position:absolute; inset:0; height:100%; margin:0; padding:0; opacity:0; cursor:pointer; }
.atelier .journal-upload-action { flex:none; color:var(--forest); font-weight:600; }
.atelier .journal-upload-name { min-width:0; color:var(--muted); overflow-wrap:anywhere; font-size:12px; }
.atelier .journal-discussion .shaitu>br { display:none; }
.atelier :is(.journal-rating-option,.journal-upload):focus-within { outline:2px solid var(--forest); outline-offset:3px; }
@media (max-width:1100px) {
  .atelier .journal-shell { width:calc(100% - 48px); }
  .atelier .journal-layout { grid-template-columns:minmax(0,1fr) 240px; gap:30px; }
  .atelier .journal-story-grid,.atelier .journal-sections { gap:18px; }
  .atelier .journal-story-copy,.atelier .journal-section-card { padding:20px; }
  .atelier .journal-story-copy h2 { font-size:22px; }
  .atelier .journal-featured-story { grid-template-columns:minmax(0,1fr); }
  .atelier .journal-featured-image { max-height:280px; justify-content:center; }
  .atelier .journal-featured-image img { width:auto; max-width:100%; height:auto; max-height:230px; }
}
@media (max-width:900px) {
  .atelier .journal-layout { grid-template-columns:minmax(0,1fr); gap:40px; }
  .atelier .journal-prose { max-width:none; }
  .atelier .journal-sidebar { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
  .atelier .journal-side-watch { display:none; }
  .atelier .journal-featured-story { grid-template-columns:42% minmax(0,1fr); }
  .atelier .journal-featured-image { max-height:none; }
}
@media (max-width:600px) {
  .atelier .journal-shell { width:calc(100% - 32px); }
  .atelier .journal-shell>.bc-nav { margin-bottom:24px; padding:16px 0; }
  .atelier .journal-heading { padding:26px 22px; margin-bottom:28px; }
  .atelier .journal-heading h1 { font-size:36px; }
  .atelier .journal-intro { font-size:14px; }
  .atelier .journal-topic-nav { gap:8px; margin-top:20px; }
  .atelier .journal-topic-nav a { padding:9px 12px; font-size:12px; }
  .atelier .journal-article-heading h1 { font-size:32px; line-height:1.2; }
  .atelier .journal-meta { gap:10px; font-size:11px; }
  .atelier .journal-kicker { font-size:10px; }
  .atelier .journal-standfirst { padding:18px 20px; font-size:16px; }
  .atelier .journal-prose { font-size:16px; line-height:1.85; }
  .atelier .journal-prose :is(h1,h2) { font-size:25px !important; }
  .atelier .journal-prose h3 { font-size:21px !important; }
  .atelier .journal-prose img { margin:22px auto !important; }
  .atelier .journal-prose [style*="float"] { float:none !important; }
  .atelier .journal-pagination { grid-template-columns:minmax(0,1fr); }
  .atelier .journal-collection ul { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  .atelier .journal-section-heading h2,.atelier .journal-discussion>h2 { font-size:25px; }
  .atelier .journal-story-grid,.atelier .journal-sections,.atelier .journal-sidebar { grid-template-columns:minmax(0,1fr); }
  .atelier .journal-story-copy h2 { font-size:25px; }
  .atelier .journal-featured-story { grid-template-columns:minmax(0,1fr); }
  .atelier .journal-featured-image { padding:20px; }
  .atelier .journal-featured-copy { padding:24px; }
  .atelier .journal-featured-copy h2 { font-size:29px; }
  .atelier .journal-discussion { padding:20px 16px; }
  .atelier .journal-discussion .journal-upload { align-items:flex-start; flex-direction:column; gap:2px; }
  .atelier .journal-discussion #comments-list .item { grid-template-columns:48px minmax(0,1fr); gap:12px; }
  .atelier .journal-discussion #comments-list .icon img { width:48px; height:auto; }
}
