:root{--cp-green:#17563b;--cp-deep:#103f2c;--cp-gold:#a87b37;--cp-paper:#f7f2e8;--cp-card:#fffdf9;--cp-line:rgba(151,111,52,.19);--cp-muted:#786f62}
body.culture-content{margin:0;background:var(--cp-paper);color:#283128;font-family:"Noto Sans SC","PingFang SC",sans-serif}.culture-content *{box-sizing:border-box}.cp-wrap{width:1690px;margin:0 auto}.cp-hero{height:230px;padding:49px 115px;background:linear-gradient(90deg,rgba(250,246,236,.9),rgba(250,246,236,.55),rgba(250,246,236,.76)),url('../images/01_home_hero_bg.png') center 48%/cover no-repeat;border-bottom:1px solid var(--cp-line)}.cp-hero h1{margin:0;color:var(--cp-green);font:900 62px/1.2 "Noto Serif SC","Songti SC",serif;letter-spacing:12px}.cp-hero p{margin:9px 0;color:#8b622d;font:700 20px "Noto Serif SC",serif;letter-spacing:5px}.cp-crumb{height:58px;padding:17px 5px;color:#82796d;font-size:14px;border-bottom:1px solid var(--cp-line)}.cp-crumb a{color:var(--cp-green);text-decoration:none}.cp-main{padding:26px 0 62px}.cp-filter{display:flex;align-items:center;gap:10px;padding:12px 15px;background:var(--cp-card);border:1px solid var(--cp-line);border-radius:14px;box-shadow:0 8px 25px rgba(67,50,26,.05)}.cp-filter button,.cp-filter select{height:42px;padding:0 22px;border:0;border-radius:9px;background:transparent;color:#6f685e;font:14px inherit;cursor:pointer}.cp-filter button.active{background:var(--cp-green);color:#fff}.cp-filter .stats{margin-left:auto;color:#655f56;letter-spacing:1px}.cp-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:25px;margin-top:24px}.cp-card,.cp-side{background:var(--cp-card);border:1px solid var(--cp-line);border-radius:14px;overflow:hidden;box-shadow:0 10px 28px rgba(62,46,24,.06)}.cp-feature{display:grid;grid-template-columns:54% 1fr;min-height:315px}.cp-feature img{width:100%;height:100%;object-fit:cover}.cp-copy{padding:34px}.cp-tag{display:inline-block;padding:5px 12px;border-radius:4px;background:#e8eee7;color:var(--cp-green);font-size:12px}.cp-copy h2{margin:15px 0 10px;color:var(--cp-green);font:800 28px/1.45 "Noto Serif SC",serif}.cp-copy p{color:var(--cp-muted);font-size:14px;line-height:1.9}.cp-meta{margin-top:15px;color:#9b8d7b;font-size:12px}.cp-more{display:inline-block;margin-top:20px;color:#946628;font-weight:700;text-decoration:none}.cp-news-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.cp-news{display:grid;grid-template-columns:210px 1fr;min-height:170px;cursor:pointer;transition:.25s}.cp-news:hover,.cp-class:hover{transform:translateY(-4px);box-shadow:0 15px 34px rgba(58,44,23,.12)}.cp-news img{width:100%;height:100%;object-fit:cover}.cp-news .cp-copy{padding:20px}.cp-news h3{margin:10px 0;color:var(--cp-green);font:750 18px/1.5 "Noto Serif SC",serif}.cp-side{padding:23px;margin-bottom:18px}.cp-side h3{margin:0 0 12px;padding-bottom:13px;border-bottom:1px solid var(--cp-line);color:var(--cp-green);font:800 21px "Noto Serif SC",serif}.cp-side ol,.cp-side ul{margin:0;padding-left:24px}.cp-side li{padding:12px 0;border-bottom:1px solid var(--cp-line);font-size:14px;line-height:1.5}.cp-archive{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cp-archive a{padding:9px 4px;background:#f1eadc;border-radius:6px;color:#655e54;text-align:center;text-decoration:none;font-size:12px}.cp-article{padding:52px 65px}.cp-article>h1{margin:14px 0;color:var(--cp-green);text-align:center;font:900 39px/1.42 "Noto Serif SC",serif}.cp-article>.cp-meta{text-align:center}.cp-article-cover{width:100%;height:475px;object-fit:cover;border-radius:9px;margin:24px 0}.cp-article p{font:17px/2.1 "Noto Serif SC","Songti SC",serif;color:#514d46}.cp-quote{margin:24px 0;padding:20px 28px;border-left:4px solid var(--cp-gold);background:#f2ecde;color:#7e592a;font:700 20px "Noto Serif SC",serif}.cp-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cp-gallery img{width:100%;height:180px;object-fit:cover;border-radius:8px}.cp-article-nav{display:flex;justify-content:space-between;margin-top:28px;padding-top:20px;border-top:1px solid var(--cp-line)}.cp-back{display:inline-block;padding:12px 25px;border-radius:24px;background:var(--cp-green);color:#fff;text-decoration:none}.cp-class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:24px}.cp-class{background:var(--cp-card);border:1px solid var(--cp-line);border-radius:14px;overflow:hidden;box-shadow:0 10px 28px rgba(62,46,24,.06);transition:.25s}.cp-class img{width:100%;height:215px;object-fit:cover}.cp-class-body{padding:22px}.cp-class h2{margin:9px 0;color:var(--cp-green);font:800 24px "Noto Serif SC",serif}.cp-class p{color:#776f63}.cp-class-meta{display:flex;gap:26px;margin-top:15px;color:#777064;font-size:13px}.cp-class-link{display:block;margin-top:17px;padding-top:14px;border-top:1px solid var(--cp-line);color:#956628;text-decoration:none;font-weight:700}.cp-class-hero{height:360px;position:relative}.cp-class-hero img{width:100%;height:100%;object-fit:cover;filter:brightness(.65)}.cp-class-hero-copy{position:absolute;inset:0;padding:75px 115px;color:#fff;background:linear-gradient(90deg,rgba(11,49,34,.82),transparent 72%)}.cp-class-hero h1{margin:15px 0 8px;font:900 60px "Noto Serif SC",serif;letter-spacing:8px}.cp-class-hero p{font-size:18px}.cp-class-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px}.cp-module{padding:28px 32px;margin-bottom:20px;background:var(--cp-card);border:1px solid var(--cp-line);border-radius:14px;box-shadow:0 10px 28px rgba(62,46,24,.05)}.cp-module h2{margin:0 0 17px;color:var(--cp-green);font:800 24px "Noto Serif SC",serif}.cp-timeline{display:flex;justify-content:space-between;margin-top:24px;padding-top:18px;border-top:2px solid var(--cp-gold)}.cp-timeline b{color:#93652c}.cp-list a{display:block;padding:13px 0;border-bottom:1px solid var(--cp-line);color:#4d4a44;text-decoration:none}.cp-list em{float:right;color:#996b30;font-style:normal}.cp-teacher{display:flex;align-items:center;gap:18px}.cp-teacher img{width:92px;height:92px;flex:0 0 92px;border-radius:50%;object-fit:cover;object-position:center 24%}.cp-teacher-avatar[hidden]{display:none!important}.cp-album{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cp-album img{width:100%;height:160px;object-fit:cover;border-radius:8px}
@media(max-width:1100px){.cp-wrap{width:calc(100% - 40px)}.cp-layout,.cp-class-layout{grid-template-columns:1fr}.cp-class-grid{grid-template-columns:repeat(2,1fr)}}
.cp-profile-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:24px}.cp-profile{display:grid;grid-template-columns:220px 1fr;min-height:285px;background:var(--cp-card);border:1px solid var(--cp-line);border-radius:14px;overflow:hidden;box-shadow:0 10px 28px rgba(62,46,24,.06)}.cp-profile>img{width:100%;height:100%;object-fit:cover}.cp-profile>div{padding:25px}.cp-profile h2,.cp-achievement-grid h2{margin:10px 0 3px;color:var(--cp-green);font:800 25px "Noto Serif SC",serif}.cp-profile b{color:#8c622f;font-size:13px}.cp-profile p,.cp-achievement-grid p{color:var(--cp-muted);font-size:14px;line-height:1.8}.cp-detail-btn{padding:0;border:0;background:none;color:#946628;font:700 14px inherit;cursor:pointer}.cp-profile .cp-detail-btn{margin-top:12px}.cp-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.cp-stat-grid div{padding:22px;text-align:center;background:var(--cp-card);border:1px solid var(--cp-line);border-radius:14px}.cp-stat-grid strong{display:block;color:var(--cp-green);font:900 35px "Noto Serif SC",serif}.cp-stat-grid span{color:var(--cp-muted);font-size:13px}.cp-achievement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px}.cp-achievement-grid article{background:var(--cp-card);border:1px solid var(--cp-line);border-radius:14px;overflow:hidden;box-shadow:0 10px 28px rgba(62,46,24,.06)}.cp-achievement-grid img{width:100%;height:205px;object-fit:cover}.cp-achievement-grid article>div{padding:22px}.cp-achievement-grid small{display:block;margin:15px 0;color:#998c7b}.cp-activity-feature{display:grid;grid-template-columns:52% 1fr;margin-bottom:20px;min-height:330px;background:var(--cp-green);border-radius:14px;overflow:hidden;color:#fff;text-decoration:none}.cp-activity-feature img{width:100%;height:100%;object-fit:cover}.cp-activity-feature>div{padding:40px}.cp-activity-feature h2{font:800 30px "Noto Serif SC",serif}.cp-activity-feature p{line-height:1.9;opacity:.8}.cp-activity-feature b{color:#e6bc74}.cp-activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cp-activity-grid article{display:grid;grid-template-columns:170px 1fr;background:var(--cp-card);border:1px solid var(--cp-line);border-radius:12px;overflow:hidden}.cp-activity-grid img{width:100%;height:100%;object-fit:cover}.cp-activity-grid article>div{padding:18px}.cp-activity-grid span{color:#986a2d;font-size:12px}.cp-activity-grid h3{margin:5px 0;color:var(--cp-green);font:800 18px "Noto Serif SC",serif}.cp-activity-grid p{margin:0 0 8px;color:var(--cp-muted);font-size:13px}.cp-wall-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:24px}.cp-wall-grid figure{margin:0;background:var(--cp-card);border:1px solid var(--cp-line);border-radius:14px;overflow:hidden}.cp-wall-grid button[data-lightbox]{display:block;width:100%;height:240px;padding:0;border:0;cursor:zoom-in}.cp-wall-grid img{width:100%;height:100%;object-fit:cover}.cp-wall-grid figcaption{display:flex;justify-content:space-between;padding:16px 18px;gap:8px}.cp-wall-grid figcaption b{color:var(--cp-green)}.cp-wall-grid figcaption span{color:var(--cp-muted);font-size:12px}.cp-wall-quote{display:flex;min-height:315px;flex-direction:column;justify-content:space-between;padding:28px;background:var(--cp-green)!important;color:#fff}.cp-wall-quote blockquote{margin:20px 0;font:700 23px/1.8 "Noto Serif SC",serif}.cp-wall-quote figcaption{padding:0;color:#fff}.cp-wall-quote figcaption b,.cp-wall-quote figcaption span{color:#fff;opacity:.9}.cp-submit{display:flex;align-items:center;justify-content:space-between;margin-top:24px;padding:35px 45px;border-radius:14px;background:#e8eee7}.cp-submit span{color:#976b31}.cp-submit h2{margin:5px 0;color:var(--cp-green);font:800 27px "Noto Serif SC",serif}.cp-submit p{margin:0;color:var(--cp-muted)}.cp-submit .cp-detail-btn{padding:13px 27px;border-radius:24px;background:var(--cp-green);color:#fff}.cp-modal,.cp-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:25px;background:rgba(12,35,25,.66);backdrop-filter:blur(6px)}.cp-modal.open,.cp-lightbox.open{display:flex}.cp-modal-card{position:relative;width:min(560px,100%);padding:38px;background:#fffdf9;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.25)}.cp-modal-card h2{color:var(--cp-green);font:800 27px "Noto Serif SC",serif}.cp-modal-card p{color:var(--cp-muted);line-height:2}.cp-modal-close,.cp-lightbox-close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:30px;cursor:pointer}.cp-modal-ok{margin-top:15px;padding:10px 24px;border:0;border-radius:22px;background:var(--cp-green);color:#fff;cursor:pointer}.cp-lightbox{flex-direction:column}.cp-lightbox img{max-width:min(1050px,92vw);max-height:78vh;border-radius:12px}.cp-lightbox p{color:#fff;font-size:17px}.cp-lightbox-close{color:#fff;right:30px;top:20px}
.cp-module-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:17px}.cp-module-heading h2{margin:0}.cp-data-source{color:#9b8d7b;font-size:12px}.cp-empty-inline{grid-column:1/-1;margin:0;padding:22px;border:1px dashed rgba(20,87,61,.22);border-radius:9px;background:#faf7f0;color:#8d8376;text-align:center}.cp-loading-line{color:#8d8376}.cp-list a{display:flex;align-items:center;justify-content:space-between;gap:20px}.cp-list a span{display:grid;gap:3px}.cp-list a small{color:#9b8d7b}.cp-album a{display:block;overflow:hidden;border-radius:8px;background:#eef1e9}.cp-album a:hover img{transform:scale(1.035)}.cp-album img{transition:transform .25s}.cp-teacher-avatar{display:grid;width:92px;height:92px;flex:0 0 92px;place-items:center;border-radius:50%;background:#e8eee7;color:var(--cp-green);font:800 30px "Noto Serif SC",serif}.cp-muted-item{color:#92887a}.cp-class-voice{margin:12px 0;padding:15px 18px;border-left:3px solid var(--cp-gold);background:#f5f1e7;color:#565149;line-height:1.8}.cp-class-voice small{display:block;margin-top:5px;color:#9a7b4b}.cp-article [hidden]{display:none!important}
@media(max-width:1100px){.cp-profile-grid,.cp-achievement-grid,.cp-wall-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.cp-hero{height:auto;padding:35px 20px}.cp-hero h1{font-size:38px}.cp-filter{overflow-x:auto}.cp-profile-grid,.cp-achievement-grid,.cp-wall-grid,.cp-activity-grid,.cp-stat-grid{grid-template-columns:1fr}.cp-profile,.cp-activity-grid article,.cp-activity-feature{grid-template-columns:1fr}.cp-profile>img{height:280px}.cp-activity-feature img{height:250px}.cp-submit{align-items:flex-start;flex-direction:column;gap:20px}.cp-wall-grid button[data-lightbox]{height:280px}}
.cp-story{overflow:hidden}.cp-story-cover{display:grid;grid-template-columns:46% 1fr;min-height:430px;background:var(--cp-green);color:#fff}.cp-story-cover>img{width:100%;height:100%;max-height:520px;object-fit:cover}.cp-story-cover>div{display:flex;flex-direction:column;justify-content:center;padding:58px}.cp-story-cover h1{margin:18px 0 12px;font:900 39px/1.45 "Noto Serif SC",serif}.cp-story-cover p{font:18px/1.8 "Noto Serif SC",serif;opacity:.8}.cp-story-body{max-width:1050px;margin:0 auto;padding:50px 70px}.cp-story-meta{padding-bottom:20px;border-bottom:1px solid var(--cp-line);color:#9a8b77}.cp-story-body h2{margin:33px 0 12px;color:var(--cp-green);font:800 25px "Noto Serif SC",serif}.cp-story-body>p{color:#5f5a52;font:17px/2.15 "Noto Serif SC",serif}.cp-story-body blockquote{margin:28px 0;padding:24px 30px;border-left:4px solid var(--cp-gold);background:#f2ecde;color:#855e2d;font:700 20px/1.8 "Noto Serif SC",serif}.cp-story-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:35px}.cp-story-points div{padding:22px;background:#eef2eb;border-radius:10px}.cp-story-points b{display:block;color:#b08445;font-size:25px}.cp-story-points span{color:var(--cp-green);font-weight:700}.cp-detail-btn{text-decoration:none}@media(max-width:700px){.cp-story-cover{grid-template-columns:1fr}.cp-story-cover>img{height:300px}.cp-story-cover>div,.cp-story-body{padding:30px}.cp-story-points{grid-template-columns:1fr}}
