.journal-page { padding-bottom: 60px; background: #fff; }
.journal-page > .container { max-width: 1320px; padding-inline: 40px; }
.journal-page .breadcrumb { padding-block: 24px; }
.journal-kicker { display: block; color: #8a9a7b; font-size: 10px; margin-bottom: 10px; }
.journal-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; padding: 24px 0 45px; border-bottom: 1px solid #e9eee2; }
.journal-heading h1 { color: #23452b; font-size: 46px; letter-spacing: -1px; font-weight: 700; }
.journal-heading h1 > span { color: #9aaa86; }
.journal-heading p { font-size: 12px; color: #86917e; margin-top: 12px; }
.journal-search { display: flex; align-items: center; gap: 8px; min-width: 300px; background: #f7f9f3; border: 1px solid #e3e9dc; border-radius: 10px; padding: 5px 14px 5px 5px; }
.journal-search:focus-within { border-color: #829773; box-shadow: 0 0 0 3px #60734f0a; }
.journal-page .journal-search input[type=search] { width: 100%; min-width: 0; border: 0; outline: none; background: transparent; border-radius: 0; padding: 8px 0; font-size: 12px; }
.journal-search button { display: grid; place-items: center; width: 36px; height: 36px; border: 0; background: none; color: #657b58; border-radius: 8px; flex-shrink: 0; }
.journal-search .icon { width: 18px; height: 18px; }
.journal-feature { display: grid; grid-template-columns: 1.55fr 1fr; gap: 45px; padding-block: 45px 65px; }
.journal-lead-photo { display: block; position: relative; aspect-ratio: 1.7; overflow: hidden; border-radius: 18px; background: #f4f6ee; }
.journal-lead-photo img, .journal-card-photo img, .journal-compact img, .reader-cover img { width: 100%; height: 100%; object-fit: cover; }
.journal-lead-photo > span { position: absolute; right: 20px; bottom: 18px; color: #324d32; background: #fffffff0; padding: 5px 12px; border-radius: 30px; font-size: 10px; }
.journal-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 10px; margin-top: 19px; color: #7b8c6f; }
.journal-card-meta > span { display: inline-flex; align-items: center; gap: 5px; color: #99a18f; white-space: nowrap; }
.journal-card-meta .icon { width: 12px; height: 12px; }
.journal-lead h2 { font-size: 26px; line-height: 1.8; font-weight: 650; color: #294a2f; margin-top: 10px; }
.journal-lead > p { color: #86917c; font-size: 12px; line-height: 2.2; margin-top: 10px; }
.journal-read-link { display: inline-flex; align-items: center; gap: 10px; color: #58724a; font-size: 11px; margin-top: 18px; }
.journal-read-link .icon { width: 16px; height: 16px; }
.journal-feature-side { padding: 12px 0 0; }
.journal-feature-side > h2 { color: #345438; font-size: 30px; font-weight: 550; line-height: 1.9; margin-bottom: 23px; }
.journal-compact { display: flex; align-items: center; gap: 20px; padding-block: 22px; border-top: 1px solid #eaf0e2; }
.journal-compact > a { width: 132px; height: 110px; border-radius: 12px; overflow: hidden; flex-shrink: 0; background: #f4f6ee; }
.journal-compact > div { min-width: 0; }
.journal-compact h3 { font-size: 15px; line-height: 2; font-weight: 600; color: #3b533b; }
.journal-mini-time { display: block; margin-top: 9px; color: #9aa48f; font-size: 10px; }
.journal-editor-note { display: flex; align-items: center; gap: 9px; color: #96a288; font-size: 10px; border-top: 1px solid #eaf0e2; padding-top: 20px; }
.journal-editor-note .icon { width: 18px; height: 18px; }
.journal-library { border-top: 1px solid #e9eee2; padding-top: 45px; scroll-margin-top: 210px; }
.journal-library-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.journal-library-heading h2 { color: #294a2f; font-size: 29px; font-weight: 650; letter-spacing: -.5px; }
#journal-count { font-size: 11px; color: #97a08d; }
.journal-topics { display: flex; flex-wrap: wrap; gap: 9px; padding-bottom: 30px; }
.journal-topics a { display: inline-flex; align-items: center; gap: 9px; border: 1px solid #e5ebdd; border-radius: 30px; padding: 7px 13px; font-size: 11px; color: #78896b; }
.journal-topics a > span { font-size: 10px; opacity: .65; }
.journal-topics a[aria-current=true] { color: #fff; background: #294a2f; border-color: #294a2f; }
.journal-topics a:hover { border-color: #8c9e7e; }
.journal-library-layout { display: grid; grid-template-columns: minmax(0,1fr) 260px; gap: 40px; }
.journal-results-bar { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-block: 12px 23px; font-size: 10px; color: #91a182; }
.journal-results-bar > div { display: flex; align-items: center; gap: 10px; }
.journal-results-bar select { background: #fff; border-color: #e6ebdf; font-size: 10px; padding: 7px 8px; color: #728366; }
#journal-clear { color: #718262; border: 0; background: none; font-size: 10px; padding: 5px; text-decoration: underline; }
.journal-card-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px 26px; }
.journal-card { min-width: 0; padding-bottom: 20px; border-bottom: 1px solid #edf0e8; }
.journal-card-photo { display: block; overflow: hidden; aspect-ratio: 1.5; border-radius: 14px; background: #f4f6ee; }
.journal-card-photo img { transition: transform 350ms ease; }
.journal-card:hover .journal-card-photo img { transform: scale(1.025); }
.journal-card h3 { font-size: 18px; font-weight: 600; line-height: 1.9; color: #304e34; margin-top: 12px; }
.journal-card > p { font-size: 12px; color: #718068; line-height: 2.2; margin-top: 10px; }
.journal-sidebar { padding-top: 14px; }
.journal-sidebar > section { padding: 25px 22px; border: 1px solid #e8eee0; border-radius: 14px; margin-bottom: 24px; }
.journal-sidebar > section:first-child { background: #f6f8f1; }
.journal-sidebar h3 { font-size: 17px; font-weight: 600; color: #365138; }
.journal-sidebar p { font-size: 11px; color: #87977a; line-height: 2.3; margin-top: 12px; }
.journal-sidebar-list > a { display: flex; align-items: flex-start; gap: 13px; margin-top: 24px; }
.journal-sidebar-list > a > span { color: #bdc8b1; font-size: 21px; line-height: 1.6; }
.journal-sidebar-list strong { font-size: 12px; font-weight: 500; line-height: 2; display: block; color: #506445; }
.journal-sidebar-list small { display: block; color: #9baa8e; font-size: 9px; margin-top: 5px; }
.journal-shop-note { display: block; background: #f6f8f1; border-radius: 14px; overflow: hidden; padding: 0 20px 22px; }
.journal-shop-note > img { width: calc(100% + 40px); max-width: none; margin-inline: -20px; height: 165px; object-fit: cover; margin-bottom: 20px; }
.journal-shop-note > strong { font-size: 17px; color: #3a5939; font-weight: 600; display: block; }
.journal-shop-note .journal-read-link { font-size: 10px; }
.journal-pagination { display: flex; justify-content: center; gap: 8px; margin-top: 35px; }
.journal-pagination button { width: 37px; height: 37px; border: 1px solid #e0e8d8; border-radius: 9px; background: #fff; color: #718363; }
.journal-pagination button[aria-current=page] { background: #294a2f; color: #fff; border-color: #294a2f; }
.journal-empty { text-align: center; padding: 70px 20px; border: 1px dashed #dfe7d6; border-radius: 14px; }
.journal-empty > .icon { width: 35px; height: 35px; color: #99ab86; margin-bottom: 20px; }
.journal-empty h3 { font-size: 20px; color: #3f5c3b; }
.journal-empty p { font-size: 12px; color: #94a287; margin-top: 10px; }
.journal-empty button { display: inline-flex; align-items: center; gap: 8px; border: 0; background: #edf3e5; border-radius: 8px; padding: 9px 15px; color: #4e6c3f; font-size: 11px; margin-top: 22px; }
.journal-empty button .icon { width: 16px; }
.journal-bottom-note { display: flex; align-items: center; gap: 20px; border-top: 1px solid #e7edde; margin-top: 60px; padding-top: 35px; }
.journal-bottom-note > .icon { width: 35px; height: 35px; color: #8ba277; flex-shrink: 0; }
.journal-bottom-note h2 { font-size: 20px; color: #3c593b; font-weight: 550; }
.journal-bottom-note p { font-size: 11px; color: #92a084; margin-top: 6px; }
.journal-bottom-note .btn { margin-inline-start: auto; white-space: nowrap; }
.reader-heading { max-width: 900px; margin: 15px auto 35px; text-align: center; }
.reader-topic { display: inline-block; color: #718660; font-size: 11px; background: #f0f5e9; padding: 5px 14px; border-radius: 30px; }
.reader-heading h1 { font-size: 38px; line-height: 1.9; color: #26472e; font-weight: 650; letter-spacing: -.7px; margin-top: 20px; }
.reader-heading > p { max-width: 700px; margin: 18px auto; font-size: 13px; line-height: 2.2; color: #87977a; }
.reader-meta { display: flex; align-items: center; justify-content: center; gap: 25px; margin-top: 25px; font-size: 11px; color: #90a080; }
.reader-meta > span { display: inline-flex; align-items: center; gap: 7px; }
.reader-meta .icon { width: 16px; height: 16px; }
.reader-cover { margin: 40px 0 55px; height: 480px; border-radius: 20px; overflow: hidden; background: #f4f7ee; }
.reader-layout { display: grid; grid-template-columns: 240px minmax(0,760px); gap: 65px; }
.reader-toc { position: sticky; top: 210px; align-self: start; border: 1px solid #e6edde; border-radius: 13px; padding: 23px 20px; }
.reader-toc nav { display: grid; gap: 12px; margin-top: 20px; }
.reader-toc nav button { display: flex; align-items: baseline; gap: 10px; text-align: start; padding: 0; background: none; border: 0; color: #708460; font-size: 11px; line-height: 2; }
.reader-toc nav button > span { color: #b0bfa0; font-size: 10px; }
.reader-toc .journal-read-link { padding-top: 15px; border-top: 1px solid #e8efdf; font-size: 10px; width: 100%; }
.reader-body section { margin-bottom: 38px; scroll-margin-top: 215px; }
.reader-body h2 { color: #355639; font-size: 25px; font-weight: 600; line-height: 1.9; margin-bottom: 17px; }
.reader-body p { font-size: 16px; color: #65755b; line-height: 2.6; }
.reader-end-note { display: flex; align-items: center; gap: 12px; font-size: 12px; color: #7b916b; background: #f4f7ee; border-radius: 12px; padding: 20px; margin-top: 45px; }
.reader-end-note .icon { flex-shrink: 0; }
.reader-article-actions { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 28px; }
.reader-article-actions .journal-read-link { margin: 0; }
.reader-related { border-top: 1px solid #e6edde; margin-top: 70px; padding-top: 45px; }
.journal-related-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
@media (max-width: 1050px) { .journal-feature { gap: 28px; } .journal-feature-side > h2 { font-size: 26px; } .journal-compact { gap: 13px; } .journal-compact > a { width: 100px; height: 100px; } .journal-library-layout { grid-template-columns: minmax(0,1fr) 220px; gap: 25px; } .journal-card-grid { gap: 28px 18px; } .reader-layout { grid-template-columns: 200px minmax(0,1fr); gap: 35px; } }
@media (max-width: 760px) {
 .journal-page { padding-bottom: 40px; }
 .journal-page > .container { padding-inline: 22px; }
 .journal-heading { display: block; padding: 10px 0 28px; }
 .journal-heading h1 { font-size: 35px; }
 .journal-heading p { font-size: 11px; line-height: 2.2; }
 .journal-search { min-width: 0; margin-top: 24px; }
 .journal-feature { grid-template-columns: 1fr; gap: 28px; padding-block: 28px 35px; }
 .journal-lead h2 { font-size: 23px; }
 .journal-lead-photo { aspect-ratio: 1.4; border-radius: 14px; }
 .journal-lead > p { font-size: 12px; }
 .journal-feature-side { padding-top: 0; }
 .journal-feature-side > h2 { font-size: 23px; margin-bottom: 15px; }
 .journal-feature-side > h2 br { display: none; }
 .journal-compact { padding-block: 18px; }
 .journal-compact > a { width: 110px; height: 95px; }
 .journal-compact h3 { font-size: 14px; }
 .journal-editor-note { font-size: 10px; }
 .journal-library { padding-top: 30px; scroll-margin-top: 20px; }
 .journal-library-heading { align-items: flex-start; gap: 10px; margin-bottom: 22px; }
 .journal-library-heading h2 { font-size: 24px; }
 #journal-count { font-size: 9px; margin-top: 30px; text-align: end; max-width: 100px; }
 .journal-topics { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 17px; margin-bottom: 10px; scrollbar-width: thin; gap: 7px; }
 .journal-topics a { white-space: nowrap; font-size: 10px; padding: 7px 11px; }
 .journal-library-layout { grid-template-columns: 1fr; gap: 35px; }
 .journal-results-bar { align-items: flex-start; padding-block: 10px 20px; }
 .journal-results-bar > span { display: none; }
 .journal-results-bar > div { width: 100%; }
 .journal-results-bar label { margin-inline-start: auto; }
 .journal-card-grid { grid-template-columns: 1fr; gap: 30px; }
 .journal-card-photo { aspect-ratio: 1.5; }
 .journal-card h3 { font-size: 20px; }
 .journal-card > p { font-size: 12px; }
 .journal-sidebar { display: grid; grid-template-columns: 1fr; gap: 20px; padding-top: 0; }
 .journal-sidebar > section { margin: 0; }
 .journal-shop-note { display: none; }
 .journal-bottom-note { flex-wrap: wrap; gap: 14px; margin-top: 35px; padding-top: 25px; }
 .journal-bottom-note > .icon { width: 28px; height: 28px; }
 .journal-bottom-note > div { flex: 1; }
 .journal-bottom-note h2 { font-size: 17px; }
 .journal-bottom-note .btn { width: 100%; margin-top: 8px; }
 .reader-heading { margin-top: 10px; }
 .reader-heading h1 { font-size: 29px; line-height: 1.9; }
 .reader-heading > p { font-size: 12px; }
 .reader-cover { height: 260px; border-radius: 14px; margin-block: 30px; }
 .reader-layout { grid-template-columns: 1fr; gap: 30px; }
 .reader-toc { position: static; padding: 20px; }
 .reader-toc nav { gap: 12px; }
 .reader-toc nav button { font-size: 12px; }
 .reader-body h2 { font-size: 23px; }
 .reader-body p { font-size: 15px; line-height: 2.6; }
 .reader-body section { scroll-margin-top: 20px; }
 .reader-end-note { font-size: 11px; line-height: 2.2; }
 .reader-article-actions { flex-wrap: wrap; }
 .reader-related { margin-top: 40px; padding-top: 30px; }
 .journal-related-grid { grid-template-columns: 1fr; gap: 30px; }
}
@media (prefers-reduced-motion: reduce) { .journal-card-photo img { transition: none; } }
