.story-section{min-height:calc(100vh - 72px);padding:48px 0 105px;background:#fbfbf0;color:#315e41}
.story-wrap{width:min(100%,1270px);margin:auto;padding:0 clamp(22px,5vw,64px)}
.story-kicker{margin:0 0 9px;color:#819d79;font-size:12px;font-weight:700;letter-spacing:.13em}
.story-intro{padding:5px 0 48px}
.story-intro h1{margin:0;color:#2e7047;font-size:clamp(33px,3.6vw,48px);font-weight:800}
.story-intro>p:last-child{margin:12px 0 0;color:#759074;font-size:15px}
.story-intro .story-preview-note,.story-single .story-preview-note{display:inline-block;margin:17px 0 0;padding:8px 13px;border-left:3px solid #9bb68b;background:#eef3e7;color:#587b5c;font-size:12px;line-height:1.7}
.story-layout{display:grid;grid-template-columns:195px minmax(0,1fr);gap:clamp(36px,5vw,75px)}
.story-directory{align-self:start;position:sticky;top:102px;display:flex;flex-direction:column;gap:3px;padding:15px 0;border-top:1px solid #aac49e}
.story-directory>p{margin:0 0 11px;font-size:13px;font-weight:800;letter-spacing:.1em}
.story-directory>a{display:flex;justify-content:space-between;gap:10px;padding:10px 11px;border-radius:4px;color:#648165;font-size:13px}
.story-directory>a span{color:#9ab095;font-size:11px}
.story-directory>a:hover,.story-directory>a[aria-current=page]{background:#e7f0dc;color:#2d6e46}
.story-directory>a[aria-current=page]{font-weight:800}
.story-list-heading{padding-bottom:21px;border-bottom:1px solid #d7e2cd}
.story-list-heading h2{margin:0;color:#346c4a;font-size:28px}
.story-list-heading>p:last-child{margin:8px 0 0;color:#8ba18a;font-size:12px}
.story-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-top:22px}
.story-card{min-height:245px;display:flex;flex-direction:column;padding:24px 26px;border:1px solid #dce7d2;border-radius:4px 21px 5px 16px;background:#fffef6;box-shadow:0 5px 19px #355a3410;transition:transform .2s ease,box-shadow .2s ease}
.story-card:nth-child(3n+2){border-radius:18px 5px 17px 4px}
.story-card:hover{transform:translateY(-4px);box-shadow:0 13px 26px #355a3425}
.story-card-meta{display:flex;justify-content:space-between;gap:12px;color:#8fa48a;font-size:11px}
.story-card h3{margin:22px 0 8px;font-size:22px;line-height:1.4}
.story-card h3 a{color:#315f43}.story-card h3 a:hover{color:#4c8855}
.story-card>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:0;color:#708a71;font-size:13px;line-height:1.8}
.story-read{align-self:flex-start;margin-top:auto;padding-top:18px;color:#3f8150;font-size:12px;font-weight:700}
.story-read span{display:inline-block;transition:transform .2s}.story-read:hover span{transform:translateX(4px)}
.story-empty{padding:36px 0;color:#7d967a}
.story-main .navigation.pagination{margin-top:30px}
.story-single{background:#fbfbf0;padding-top:48px}
.story-single .wrap-narrow{max-width:860px}
.story-back{display:inline-block;margin-bottom:35px;color:#4b8458;font-size:13px}
.story-single .single-header{padding-bottom:20px}
.story-single .single-header h1{color:#2e7047;font-size:clamp(31px,3.5vw,44px)}
.story-single .single-meta{color:#8ca28a;font-size:12px}
.story-single .single-content{color:#49674f;font-size:16px;line-height:2.05}
.story-single .single-content p{margin-bottom:1.45em}
.story-single .single-hero{overflow:hidden;border-radius:8px 30px 8px 25px}
.story-single .single-footer{border-color:#d6e3cf}
@media(max-width:800px){.story-layout{display:block}.story-directory{position:static;flex-direction:row;flex-wrap:wrap;margin-bottom:26px}.story-directory>p{width:100%}.story-list{grid-template-columns:1fr}.story-section{padding-top:28px}}
@media(prefers-reduced-motion:reduce){.story-card,.story-read span{transition:none}}
.chapter-section .story-intro{padding-bottom:28px}
.chapter-letter,.mailbox-paper{max-width:840px;margin:0 auto;padding:clamp(28px,5vw,65px);border:1px solid #dbe5d2;border-radius:5px 30px 8px 23px;background:#fffef5;box-shadow:0 13px 42px #355a3414}
.chapter-letter h2{margin:10px 0 30px;color:#326b48;font-size:clamp(26px,3vw,37px)}
.chapter-letter p:not(.story-kicker){color:#55735b;font-size:16px;line-height:2.15}
.mailbox-paper{max-width:880px}
.mailbox-paper .comments-area{margin:0}
.mailbox-paper .comment-form label{display:block;color:#3c7050;font-size:13px}
.mailbox-paper .comment-form input,.mailbox-paper .comment-form textarea{width:100%;max-width:100%;padding:11px 12px;border:1px solid #bbd0b4;border-radius:7px;background:#fffdf7;color:#315e41}
.mailbox-paper .comment-form input:focus,.mailbox-paper .comment-form textarea:focus{outline:2px solid #74aa77}
.mailbox-paper .comment-form .form-submit button{padding:11px 21px;border:0;border-radius:99px;background:#4c8855;color:white;font-size:14px}
