*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;color:#1d2b26;background:#f6f3eb;line-height:1.7}a{text-decoration:none;color:inherit}button{font:inherit}.topbar{height:68px;background:rgba(246,243,235,.94);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:sticky;top:0;z-index:20;border-bottom:1px solid #ded9cd}.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.02em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#1f3d32;color:#f6f3eb}.topbar nav{display:flex;gap:24px;font-size:14px}.topbar nav a{opacity:.65}.topbar nav a:hover,.topbar nav a.active{opacity:1;color:#1f5b46}.menu-btn{display:none;border:0;background:none;font-size:24px}.hero{min-height:calc(100vh - 68px);padding:8vh 8vw;display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;background:radial-gradient(circle at 80% 20%,#d9e5d4 0 18%,transparent 19%),#f6f3eb}.eyebrow,.panel-kicker{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#6c7b70;font-weight:800}.hero h1{font-size:clamp(48px,7vw,92px);line-height:1.05;margin:18px 0}.hero h1 em{font-style:normal;color:#39745b}.hero p{max-width:620px;font-size:18px;color:#5e675f}.hero-actions{display:flex;gap:14px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:999px;border:1px solid #2e5e49;font-weight:700;font-size:14px;cursor:pointer}.btn.primary{background:#244d3c;color:#fff}.btn.ghost{background:transparent;color:#244d3c}.hero-art{min-height:460px;border-radius:28px;background:#dce7d7;position:relative;overflow:hidden;border:1px solid #c7d4c5}.sun{width:180px;height:180px;border-radius:50%;background:#d0a857;position:absolute;right:13%;top:12%;opacity:.9}.reed-field{position:absolute;bottom:0;left:10%;right:8%;height:80%;display:flex;justify-content:space-around;align-items:flex-end}.reed-field span{font-size:130px;line-height:.5;color:#4b7057;transform:rotate(7deg)}.hero-card{position:absolute;left:8%;bottom:8%;background:rgba(255,255,255,.85);padding:18px 22px;border-radius:16px;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(30,50,40,.08)}.hero-card strong{font-size:34px}.hero-card span{font-size:13px;color:#657066}.section{padding:90px 8vw}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:36px}.section h2,.subpage h2{font-size:clamp(30px,4vw,52px);line-height:1.15;margin:10px 0}.section-head>p{max-width:460px;color:#6a716b}.module-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.module-card{background:#fff;border:1px solid #dedbd1;border-radius:20px;padding:28px;min-height:210px;position:relative;transition:.2s}.module-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(40,50,40,.08)}.module-card.accent{background:#254d3d;color:#fff;border-color:#254d3d}.module-card.wide{grid-column:1/-1;min-height:150px}.module-no{font-size:12px;letter-spacing:.1em;opacity:.55}.module-card h3{font-size:28px;margin:25px 0 8px}.module-card p{max-width:560px;color:#687168}.module-card.accent p{color:#d7e1dc}.arrow{position:absolute;right:26px;bottom:24px;font-size:28px}.flow-section{padding:45px 8vw;border-top:1px solid #ddd8cc;border-bottom:1px solid #ddd8cc;background:#eeeadf}.flow-items{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}.flow-items div,.learning-loop div{display:flex;align-items:center;gap:10px}.flow-items b,.learning-loop b{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#244d3c;color:#fff;font-size:11px}.flow-items i,.learning-loop i{font-style:normal;color:#8b948d}.teaching-section{padding-top:70px}.teaching-panel{padding:42px;border-radius:26px;background:#e0e9db;display:flex;align-items:center;justify-content:space-between;gap:40px}.footer{padding:25px 8vw;border-top:1px solid #ddd8cc;display:flex;justify-content:space-between;color:#69716b;font-size:13px}.subpage{max-width:1300px;margin:auto;padding:70px 5vw 100px}.page-title{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.page-title h1{font-size:clamp(38px,6vw,72px);margin:10px 0;line-height:1.08}.page-title p{color:#687169;max-width:680px}.map-layout{display:grid;grid-template-columns:1.5fr .7fr;gap:22px}.map-board{min-height:650px;background:#dfe8dd;border-radius:28px;position:relative;overflow:hidden;border:1px solid #c8d3c6}.water-shape{position:absolute;width:75%;height:110%;right:-20%;top:-10%;border-radius:50%;background:#c8ddd9;transform:rotate(-20deg)}.map-route{position:absolute;height:2px;background:#8ea994;transform-origin:left center;opacity:.6}.r1{width:55%;left:16%;top:35%;transform:rotate(16deg)}.r2{width:48%;left:30%;top:55%;transform:rotate(-20deg)}.r3{width:40%;left:8%;top:68%;transform:rotate(7deg)}.map-label{position:absolute;left:30px;top:28px;font-size:25px;font-weight:900;z-index:2}.map-label small{font-size:9px;letter-spacing:.18em;color:#68766b}.map-compass{position:absolute;right:28px;top:25px;z-index:2;text-align:center;font-weight:800}.map-note{position:absolute;left:28px;bottom:24px;font-size:11px;color:#657268;z-index:2}.map-node{position:absolute;border:0;background:#fff;padding:0;border-radius:999px;box-shadow:0 8px 22px rgba(30,50,40,.12);display:flex;align-items:center;gap:8px;padding-right:12px;cursor:pointer;z-index:3}.map-node span{font-weight:800}.map-node b{width:30px;height:30px;display:grid;place-items:center;background:#244d3c;color:#fff;border-radius:50%;font-size:10px}.node-reed{left:25%;top:31%}.node-folk{left:57%;top:42%}.node-textile{left:32%;top:62%}.node-cut{left:67%;top:70%}.info-panel{background:#fff;border:1px solid #ddd9cf;border-radius:24px;padding:30px;min-height:350px}.info-panel h2{font-size:34px}.tip-box{background:#eef3e9;border-left:4px solid #4f7b5e;padding:14px;margin-top:28px;font-size:13px}.museum-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:28px;align-items:stretch}.museum-image{min-height:450px;border-radius:28px;background:#dce7d7;display:grid;place-items:center;position:relative;overflow:hidden}.placeholder-art:before{content:"";position:absolute;inset:15%;border:1px solid rgba(40,70,50,.18);border-radius:50%}.reed-symbol{font-size:180px;font-weight:900;color:#42664f;z-index:1}.museum-image span{position:absolute;bottom:18px;font-size:12px;color:#68736b}.museum-video{border-radius:28px;background:#111;overflow:hidden;position:relative;display:flex;flex-direction:column;min-width:0}.museum-video .video-title{padding:18px 22px;color:#fff;font-size:17px;font-weight:700;background:#25352b}.video-frame-wrap{width:100%;aspect-ratio:16/9;background:#000}.video-frame-wrap video{width:100%;height:100%;display:block;object-fit:contain;background:#000}.video-meta{padding:14px 18px 16px;background:#111;color:#dfe8dd}.video-meta strong{display:block;font-size:14px;margin-bottom:6px}.video-meta p{margin:0;font-size:13px;line-height:1.75;color:#dbe4da}.task-entry{display:flex;justify-content:space-between;gap:26px;align-items:center;margin-top:26px;padding:30px 34px;background:#e7ece2;border:1px solid #d4ddd0;border-radius:24px}.task-entry h2{margin:8px 0 10px;font-size:30px;line-height:1.25}.task-entry p{margin:0;color:#637068;max-width:780px}.task-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.task-actions .btn{white-space:nowrap}@media(max-width:900px){.museum-hero{grid-template-columns:1fr}.video-frame-wrap{aspect-ratio:16/9}.task-entry{flex-direction:column;align-items:flex-start}.task-entry h2{font-size:24px}}
.museum-copy{background:#fff;border:1px solid #ddd9cf;border-radius:28px;padding:40px}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.mini-stats div{background:#f0eee7;padding:15px;border-radius:14px}.mini-stats b,.mini-stats span{display:block}.mini-stats span{font-size:12px;color:#747c75}.museum-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:25px}.museum-grid article{background:#fff;border:1px solid #ddd9cf;padding:25px;border-radius:20px}.museum-grid article span{font-size:12px;color:#6f8776}.museum-grid h3{font-size:22px}.museum-grid p{font-size:14px;color:#697169}.process-strip,.symbol-flow,.learning-loop{display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:wrap;margin-top:32px;padding:22px;background:#ebe7dc;border-radius:18px}.process-strip span{font-weight:700}.process-strip b{color:#78917e}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:25px}.filter{border:1px solid #cfd0c7;background:#fff;border-radius:999px;padding:9px 15px;cursor:pointer}.filter.active{background:#244d3c;color:#fff;border-color:#244d3c}.symbol-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.symbol-card{background:#fff;border:1px solid #ddd9cf;border-radius:20px;padding:22px;min-height:220px}.symbol-visual{height:90px;background:#e9eee5;border-radius:14px;display:grid;place-items:center;font-size:48px;color:#41634e;margin-bottom:16px}.symbol-card h3{margin:5px 0;font-size:20px}.symbol-card p{font-size:13px;color:#687169}.symbol-meta{font-size:11px;color:#7a847c;letter-spacing:.04em}.ai-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:24px}.ai-character,.ai-demo,.prompt-card{background:#fff;border:1px solid #ddd9cf;border-radius:28px}.ai-character{padding:40px;text-align:center}.ai-orb{width:130px;height:130px;margin:20px auto;border-radius:50%;display:grid;place-items:center;background:#dce7d7;color:#315c46;font-size:72px;font-weight:900}.ai-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.ai-tags span{font-size:12px;padding:7px 10px;background:#eef1e9;border-radius:999px}.chat-head{padding:18px 22px;border-bottom:1px solid #e0ddd4;font-weight:800}.online-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#6d9b72;margin-right:7px}.chat-body{padding:25px;min-height:380px;background:#f4f1e9;display:flex;flex-direction:column;gap:14px}.bubble{max-width:78%;padding:13px 16px;border-radius:17px;font-size:14px}.bubble.bot{background:#fff;align-self:flex-start}.bubble.student{background:#dce8dc;align-self:flex-end}.ai-actions{padding:20px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.config-note{font-size:11px;color:#7a827c}.prompt-card{margin-top:24px;padding:30px}.prompt-card li{margin:9px 0}.learning-loop{justify-content:space-around;background:#fff;border:1px solid #ddd9cf}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:30px auto 0;max-width:980px}.work-card{background:#fff;border:1px solid #ddd9cf;border-radius:22px;overflow:hidden}.work-image{height:300px;background:linear-gradient(135deg,#dce7d7,#eee7d4);display:grid;place-items:center;font-size:80px;color:#4a6c56;overflow:hidden}.work-image img{width:100%;height:100%;display:block;object-fit:cover}.work-body{padding:22px}.work-body h3{margin:0 0 5px}.work-body p{font-size:13px;color:#6d756e}.work-process{display:flex;gap:5px;flex-wrap:wrap;margin-top:15px}.work-process span{font-size:10px;padding:5px 8px;border-radius:999px;background:#eef0e9}.empty-note{padding:30px;background:#fff;border:1px dashed #c8c7bd;border-radius:18px;color:#6d756e}@media(max-width:900px){.topbar nav{display:none;position:absolute;top:68px;left:0;right:0;background:#f6f3eb;padding:20px 5vw;border-bottom:1px solid #ddd8cc;flex-direction:column}.topbar nav.open{display:flex}.menu-btn{display:block}.hero,.museum-hero,.map-layout,.ai-layout{grid-template-columns:1fr}.hero{padding-top:50px}.hero-art{min-height:360px}.module-grid,.museum-grid,.symbol-grid,.work-grid{grid-template-columns:1fr 1fr}.module-card.wide{grid-column:auto}.page-title,.section-head,.teaching-panel{align-items:flex-start;flex-direction:column}.footer{flex-direction:column;gap:10px}.map-board{min-height:520px}}@media(max-width:560px){.hero{padding:45px 6vw}.section,.subpage{padding-left:6vw;padding-right:6vw}.module-grid,.museum-grid,.symbol-grid,.work-grid{grid-template-columns:1fr}.hero h1{font-size:52px}.hero p{font-size:16px}.hero-art{min-height:310px}.reed-field span{font-size:90px}.museum-copy,.ai-character{padding:28px}.mini-stats{grid-template-columns:1fr}.map-node span{font-size:11px}.node-reed{left:14%;top:28%}.node-folk{left:48%;top:40%}.node-textile{left:20%;top:60%}.node-cut{left:55%;top:72%}}
.heritage-map-page{background:#f6f0e3;color:#173b48}.heritage-map-main{max-width:1500px;margin:auto;padding:46px 4vw 70px}.heritage-map-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.heritage-map-intro h1{font-family:"STKaiti","KaiTi",serif;font-size:clamp(34px,4vw,60px);margin:8px 0 4px;color:#173d4c}.heritage-map-intro p{margin:0;color:#6e6b60}.heritage-map-shell{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(330px,.65fr);gap:22px}.heritage-map-visual{position:relative;border-radius:26px;overflow:hidden;min-height:720px;background:#eee5d3;border:1px solid #d7c7ad}.heritage-map-visual img{width:100%;height:100%;object-fit:cover;display:block}.map-overlay-title{position:absolute;left:4%;top:4%;padding:18px 22px;background:rgba(249,244,232,.84);border-left:5px solid #a43b2f}.map-overlay-title b,.map-overlay-title span,.map-overlay-title small{display:block}.map-overlay-title b{font-family:"STKaiti","KaiTi",serif;font-size:38px}.map-overlay-title span{font-family:"STKaiti","KaiTi",serif;font-size:22px}.map-overlay-title small{font-size:11px;letter-spacing:.16em;color:#846e55}.heritage-directory{background:#fbf7ed;border:1px solid #cbb494;border-radius:24px;padding:24px}.directory-title{padding-bottom:18px;border-bottom:1px solid #d7c8b1}.directory-title span,.directory-title b{display:block}.directory-title b{font-family:"STKaiti","KaiTi",serif;font-size:31px}.heritage-item{width:100%;display:grid;grid-template-columns:54px 1fr 20px;align-items:center;gap:12px;text-align:left;border:0;border-bottom:1px solid #ded0bc;background:transparent;padding:14px 3px;cursor:pointer;color:#173b48}.heritage-item:hover,.heritage-item.active{background:#f0e7d5}.heritage-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff6e5;border:1px solid #c79c68;color:#a23b2f;font-size:20px;font-weight:800}.heritage-item b,.heritage-item small{display:block}.heritage-item small{font-size:11px;color:#7d7468}.heritage-item i{font-style:normal;font-size:26px}.heritage-detail{margin-top:18px;padding:18px;background:#fffaf0;border:1px solid #e0d2bd;border-radius:16px}.heritage-detail h2{font-family:"STKaiti","KaiTi",serif;font-size:27px;margin:4px 0}.heritage-detail p{font-size:13px;color:#6e695f}.heritage-tags{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.heritage-tags span{padding:4px 8px;border-radius:999px;background:#e8eee5;font-size:10px}.heritage-slogan{text-align:right;font-family:"STKaiti","KaiTi",serif;font-size:22px;color:#6f412d;padding:20px 6px}.heritage-learning-flow{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px;padding:20px;background:#eee5d4;border-radius:18px}.heritage-learning-flow div{display:flex;align-items:center;gap:8px}.heritage-learning-flow b{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#1f5962;color:#fff;font-size:10px}.heritage-learning-flow i{font-style:normal}@media(max-width:980px){.heritage-map-shell{grid-template-columns:1fr}.heritage-map-visual{min-height:620px}}@media(max-width:600px){.heritage-map-main{padding:30px 5vw 60px}.heritage-map-intro{align-items:flex-start;flex-direction:column}.heritage-map-visual{min-height:620px}.map-overlay-title{padding:12px 14px}.map-overlay-title b{font-size:28px}.map-overlay-title span{font-size:17px}}

/* museum video final optimization */
.video-frame-wrap{width:100%;aspect-ratio:16/9;background:#000;overflow:hidden}
.video-frame-wrap video{width:100%;height:100%;display:block;object-fit:contain;background:#000}

.local-video-player{width:100%;height:100%;object-fit:contain;background:#000;display:block;max-width:100%;}.video-frame-wrap{aspect-ratio:16/9;background:#000;overflow:hidden}.video-frame-wrap iframe{object-fit:contain;}


/* museum 视频播放器适配优化 */
.museum-video{
  min-width:0;
  overflow:hidden;
}
.video-frame-wrap{
  width:100%;
  aspect-ratio:16 / 9;
  background:#000;
  overflow:hidden;
}
.video-frame-wrap iframe{
  width:100%;
  height:100%;
  display:block;
  border:0;
}
.video-meta{
  padding:14px 18px;
  background:#111;
  color:#dfe8dd;
}
@media(max-width:900px){
  .video-frame-wrap{
    aspect-ratio:16 / 9;
  }
}


/* 符号库图片适配：保持卡片比例，不影响整体布局 */
.symbol-visual img{width:100%;height:100%;object-fit:cover;border-radius:12px;display:block;}
.symbol-visual{overflow:hidden;}


/* symbols image cards: keep both real pufferfish and clay pufferfish clearly visible */
.symbol-card.image-card{grid-column:span 2;min-height:320px;}
.symbol-card.image-card .symbol-visual{height:180px;background:#f7f7f4;padding:10px;}
.symbol-card.image-card .symbol-visual img{width:100%;height:100%;object-fit:contain;border-radius:12px;display:block;}
@media(max-width:900px){.symbol-card.image-card{grid-column:span 2;}}
@media(max-width:560px){.symbol-card.image-card{grid-column:auto;min-height:unset;}.symbol-card.image-card .symbol-visual{height:170px;}}


/* symbols page row layout: one module per row */
.symbol-grid{display:flex;flex-direction:column;gap:16px;}
.symbol-card{display:grid;grid-template-columns:320px 1fr;grid-template-areas:"visual type" "visual title" "visual desc" "visual tags";gap:8px 22px;align-items:center;min-height:auto;padding:22px 24px;}
.symbol-card .symbol-visual{grid-area:visual;height:170px;margin-bottom:0;display:flex;align-items:center;justify-content:center;}
.symbol-card .symbol-type{grid-area:type;}
.symbol-card h3{grid-area:title;margin:0;font-size:22px;}
.symbol-card p{grid-area:desc;margin:0;}
.symbol-card .symbol-tags{grid-area:tags;}
.symbol-card.image-card{grid-column:auto;min-height:auto;}
.symbol-card.image-card .symbol-visual{height:170px;padding:10px;background:#f7f7f4;}
.symbol-card.puffer-dual .symbol-visual{height:auto;padding:12px;background:#f7f7f4;align-self:stretch;}
.puffer-dual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;}
.puffer-item{background:#fff;border:1px solid #e4e1d8;border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:8px;}
.puffer-item img{width:100%;height:145px;object-fit:contain;border-radius:8px;display:block;background:#fff;}
.puffer-item span{font-size:12px;color:#6f786f;text-align:center;}
@media(max-width:900px){.symbol-card{grid-template-columns:260px 1fr;}.puffer-item img{height:130px;}}
@media(max-width:680px){.symbol-card{grid-template-columns:1fr;grid-template-areas:"type" "title" "visual" "desc" "tags";}.symbol-card .symbol-visual,.symbol-card.image-card .symbol-visual{height:180px;}.symbol-card.puffer-dual .symbol-visual{height:auto;}.puffer-dual{grid-template-columns:1fr;}}


/* structure board image card */
.symbol-card.structure-board .symbol-visual{height:260px;padding:10px;background:#f7f7f4;}
.symbol-card.structure-board .symbol-visual img{width:100%;height:100%;object-fit:contain;border-radius:10px;display:block;}
@media(max-width:900px){.symbol-card.structure-board .symbol-visual{height:220px;}}
@media(max-width:680px){.symbol-card.structure-board .symbol-visual{height:200px;}}


/* process board image card */
.symbol-card.process-board .symbol-visual{height:260px;padding:10px;background:#f7f7f4;}
.symbol-card.process-board .symbol-visual img{width:100%;height:100%;object-fit:contain;border-radius:10px;display:block;}
@media(max-width:900px){.symbol-card.process-board .symbol-visual{height:220px;}}
@media(max-width:680px){.symbol-card.process-board .symbol-visual{height:200px;}}


/* texture board image card */
.symbol-card.texture-board .symbol-visual{height:260px;padding:10px;background:#f7f7f4;}
.symbol-card.texture-board .symbol-visual img{width:100%;height:100%;object-fit:contain;border-radius:10px;display:block;}
@media(max-width:900px){.symbol-card.texture-board .symbol-visual{height:220px;}}
@media(max-width:680px){.symbol-card.texture-board .symbol-visual{height:200px;}}


/* translation board image card */
.symbol-card.translation-board .symbol-visual{height:260px;padding:10px;background:#f7f7f4;}
.symbol-card.translation-board .symbol-visual img{width:100%;height:100%;object-fit:contain;border-radius:10px;display:block;}
@media(max-width:900px){.symbol-card.translation-board .symbol-visual{height:220px;}}
@media(max-width:680px){.symbol-card.translation-board .symbol-visual{height:200px;}}


/* symbols clean page refinement */
.filter-bar{margin-bottom:18px;}
.symbol-flow{margin-top:20px;}


/* symbols final showcase optimization */
.subpage{padding-top:38px;padding-bottom:72px;}
.page-title{margin-bottom:24px;padding:22px 26px;background:#fff;border:1px solid #ddd9cf;border-radius:24px;box-shadow:0 8px 24px rgba(34,45,38,.04);}
.page-title h1{margin-bottom:10px;}
.page-title p{max-width:920px;line-height:1.8;color:#5f6a62;}
.filter-bar{margin-bottom:20px;padding:14px 16px;background:#fff;border:1px solid #e2ddd2;border-radius:18px;justify-content:center;}
.filter{padding:10px 16px;font-weight:700;}
.symbol-grid{gap:18px;}
.symbol-card{grid-template-columns:380px 1fr;gap:10px 26px;padding:24px 28px;border-radius:24px;box-shadow:0 10px 28px rgba(40,45,36,.04);}
.symbol-card .symbol-visual{height:240px;border-radius:16px;}
.symbol-card h3{font-size:24px;letter-spacing:.02em;}
.symbol-card p{font-size:14px;line-height:1.85;color:#5e6961;}
.symbol-meta{font-size:12px;line-height:1.6;}
.symbol-card .symbol-type{font-weight:700;color:#4f6756;}
.symbol-card .symbol-tags{color:#7b867e;}
.symbol-card.puffer-dual .symbol-visual,.symbol-card.image-card .symbol-visual,.symbol-card.structure-board .symbol-visual,.symbol-card.process-board .symbol-visual,.symbol-card.texture-board .symbol-visual,.symbol-card.translation-board .symbol-visual{height:240px;padding:12px;background:#f7f7f4;}
.puffer-dual{height:100%;align-items:stretch;}
.puffer-item{padding:10px;border-radius:14px;}
.puffer-item img{height:165px;}
.puffer-item span{font-size:13px;font-weight:600;}
.symbol-flow{margin-top:26px;padding:24px 20px;background:#fff;border:1px solid #ddd9cf;border-radius:22px;justify-content:space-between;gap:14px;}
.symbol-flow div{min-width:180px;}
.symbol-flow b{display:block;font-size:15px;margin-bottom:6px;color:#244d3c;}
.symbol-flow span{font-size:13px;color:#637066;}
.symbol-flow i{font-style:normal;color:#9aa294;font-weight:700;}
.footer{margin-top:0;}
@media(max-width:900px){.subpage{padding-top:26px;padding-bottom:56px;}.symbol-card{grid-template-columns:320px 1fr;padding:22px 22px;}.symbol-card .symbol-visual,.symbol-card.puffer-dual .symbol-visual,.symbol-card.image-card .symbol-visual,.symbol-card.structure-board .symbol-visual,.symbol-card.process-board .symbol-visual,.symbol-card.texture-board .symbol-visual,.symbol-card.translation-board .symbol-visual{height:220px;}.puffer-item img{height:148px;}.symbol-flow{justify-content:center;}}
@media(max-width:680px){.page-title{padding:20px;}.filter-bar{justify-content:flex-start;}.symbol-card{grid-template-columns:1fr;grid-template-areas:"type" "title" "visual" "desc" "tags";gap:10px 0;padding:20px;}.symbol-card .symbol-visual,.symbol-card.puffer-dual .symbol-visual,.symbol-card.image-card .symbol-visual,.symbol-card.structure-board .symbol-visual,.symbol-card.process-board .symbol-visual,.symbol-card.texture-board .symbol-visual,.symbol-card.translation-board .symbol-visual{height:auto;min-height:210px;}.puffer-dual{grid-template-columns:1fr;}.puffer-item img{height:160px;}.symbol-flow{padding:20px 16px;justify-content:flex-start;}.symbol-flow div{min-width:unset;width:100%;}.symbol-flow i{display:none;}}


/* 唐山花吹图像轮播 */
.museum-gallery-panel{background:#111;}
.huachui-carousel{position:relative;background:#000;aspect-ratio:16/9;overflow:hidden;}
.huachui-slides{position:relative;width:100%;height:100%;}
.huachui-slide{position:absolute;inset:0;opacity:0;transition:opacity .45s ease;display:flex;align-items:center;justify-content:center;background:#000;margin:0;}
.huachui-slide.active{opacity:1;z-index:1;}
.huachui-slide img{width:100%;height:100%;object-fit:contain;display:block;background:#000;}
.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(20,20,20,.55);color:#fff;font-size:24px;display:grid;place-items:center;cursor:pointer;z-index:2;transition:background .2s ease;}
.carousel-btn:hover{background:rgba(20,20,20,.78);}
.carousel-btn.prev{left:14px;}
.carousel-btn.next{right:14px;}
.carousel-dots{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);display:flex;gap:8px;z-index:2;}
.carousel-dots .dot{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.45);padding:0;cursor:pointer;}
.carousel-dots .dot.active{background:#fff;}
@media(max-width:900px){.carousel-btn{width:38px;height:38px;font-size:22px;}.carousel-btn.prev{left:10px;}.carousel-btn.next{right:10px;}}


/* 李氏家谱数字展厅图像适配 */
.genealogy-gallery-panel{background:#111;}
.genealogy-image-wrap{width:100%;aspect-ratio:16/9;background:#0b0d16;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:18px;}
.genealogy-image-wrap img{width:100%;height:100%;object-fit:contain;display:block;}
@media(max-width:900px){.genealogy-image-wrap{aspect-ratio:16/9;padding:12px;}}

/* =========================
   INDEX V1.2 — map / museum / symbols visual integration
   ========================= */
.home-page-v2{background:#f5f1e7;color:#20302a;}
.home-page-v2 .topbar{background:rgba(248,245,236,.94);}
.cf-home-main{overflow:hidden;}
.cf-home-hero{position:relative;min-height:calc(100vh - 68px);padding:7vh 7vw 6vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);gap:5vw;align-items:center;background:linear-gradient(105deg,rgba(248,245,236,.98) 0%,rgba(248,245,236,.94) 47%,rgba(241,237,226,.82) 100%);isolation:isolate;}
.cf-home-hero-bg{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,rgba(247,243,233,.98) 0%,rgba(247,243,233,.91) 52%,rgba(247,243,233,.62) 100%),url('../assets/images/caofeidian-map.png');background-size:cover,54% auto;background-repeat:no-repeat;background-position:center,right 10% center;filter:saturate(.78);}
.cf-home-hero:before{content:"";position:absolute;left:-8vw;bottom:-150px;width:50vw;height:320px;border-radius:50%;border:1px solid rgba(62,92,72,.12);box-shadow:0 0 0 46px rgba(62,92,72,.035),0 0 0 92px rgba(62,92,72,.025);z-index:-1;transform:rotate(-7deg);}
.cf-home-hero:after{content:"";position:absolute;right:2vw;top:9vh;width:190px;height:190px;border-radius:50%;background:rgba(198,160,84,.15);z-index:-1;}
.cf-home-hero-copy{max-width:720px;}
.cf-home-hero-copy h1{font-size:clamp(52px,6.8vw,96px);line-height:1.02;margin:18px 0 20px;letter-spacing:-.025em;color:#21362e;}
.cf-home-hero-copy h1 em{font-style:normal;color:#356e57;}
.cf-home-lead{max-width:720px;font-size:18px;line-height:1.95;color:#5d675f;margin:0;}
.cf-home-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px;}
.cf-home-tags span{padding:7px 12px;border:1px solid #d7d1c5;background:rgba(255,255,255,.64);border-radius:999px;font-size:12px;font-weight:700;color:#657068;backdrop-filter:blur(8px);}
.cf-home-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:34px;max-width:650px;}
.cf-home-stats div{padding:15px 14px;border-top:1px solid #cfc8ba;background:rgba(255,255,255,.38);}
.cf-home-stats strong{display:block;font-size:26px;color:#244d3c;line-height:1.1;}
.cf-home-stats span{display:block;margin-top:5px;font-size:11px;color:#69736b;}
.cf-home-map-card{position:relative;min-height:610px;border-radius:30px;overflow:hidden;border:1px solid rgba(94,95,76,.2);box-shadow:0 28px 70px rgba(48,54,44,.14);background:#dfe6dc;transform:rotate(.5deg);}
.cf-home-map-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.88) contrast(.98);transition:transform .55s ease;}
.cf-home-map-card:hover img{transform:scale(1.025);}
.cf-home-map-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,40,30,.02) 20%,rgba(17,34,26,.05) 52%,rgba(17,34,26,.72) 100%);}
.cf-home-map-title{position:absolute;left:28px;right:28px;bottom:26px;color:#fff;z-index:2;}
.cf-home-map-title small{display:block;font-size:10px;letter-spacing:.16em;opacity:.78;margin-bottom:5px;}
.cf-home-map-title strong{display:block;font-size:30px;line-height:1.2;}
.cf-home-map-title span{display:block;margin-top:6px;font-size:13px;opacity:.86;}
.cf-map-chip{position:absolute;z-index:2;padding:7px 11px;border-radius:999px;background:rgba(250,247,238,.9);box-shadow:0 8px 18px rgba(38,47,38,.12);font-size:11px;font-weight:800;color:#315444;border:1px solid rgba(45,78,60,.12);backdrop-filter:blur(8px);}
.cf-map-chip:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#a44435;margin-right:6px;vertical-align:1px;}
.chip-a{left:11%;top:28%;}.chip-b{right:8%;top:45%;}.chip-c{left:20%;top:58%;}.chip-d{right:13%;top:69%;}
.cf-home-section{padding:88px 7vw;}
.cf-section-head{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:34px;}
.cf-section-head h2,.cf-route-copy h2{font-size:clamp(31px,4.1vw,54px);line-height:1.14;margin:9px 0;color:#22362e;}
.cf-section-head>p{max-width:500px;margin:0;color:#697169;line-height:1.9;}
.cf-heritage-section{background:#f8f5ed;position:relative;}
.cf-heritage-section:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 90% 10%,rgba(61,100,76,.08),transparent 30%),linear-gradient(180deg,transparent 0 94%,rgba(112,93,62,.05) 94% 100%);}
.cf-heritage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;position:relative;}
.cf-heritage-card{background:#fff;border:1px solid #ded8cb;border-radius:22px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease;min-width:0;}
.cf-heritage-card:hover{transform:translateY(-5px);box-shadow:0 18px 44px rgba(41,50,42,.09);}
.cf-heritage-image{height:220px;background:#e9e5dc;overflow:hidden;}
.cf-heritage-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease;}
.cf-heritage-card:hover .cf-heritage-image img{transform:scale(1.04);}
.cf-heritage-card:nth-child(4) .cf-heritage-image img{object-fit:contain;background:#0c1735;padding:10px;}
.cf-heritage-body{padding:22px 22px 24px;}
.cf-card-no{font-size:10px;letter-spacing:.11em;color:#75847a;font-weight:800;}
.cf-heritage-body h3{font-size:23px;line-height:1.35;margin:9px 0 8px;color:#263a31;}
.cf-heritage-body p{font-size:13px;line-height:1.8;color:#69726b;min-height:70px;margin:0 0 17px;}
.cf-heritage-body b{font-size:12px;color:#315d49;}
.cf-module-section{background:#eee9dd;position:relative;}
.cf-module-section:after{content:"";position:absolute;right:4vw;bottom:10px;width:360px;height:150px;opacity:.12;background:repeating-linear-gradient(105deg,transparent 0 15px,#496a58 16px 17px,transparent 18px 31px);clip-path:polygon(0 100%,15% 38%,28% 100%,42% 22%,54% 100%,70% 45%,83% 100%,100% 18%,100% 100%);pointer-events:none;}
.cf-module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;position:relative;z-index:1;}
.cf-module-card{position:relative;min-height:280px;padding:25px;border:1px solid #d9d3c6;background:rgba(255,255,255,.78);border-radius:22px;display:flex;flex-direction:column;transition:.25s ease;overflow:hidden;}
.cf-module-card:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(41,51,42,.08);}
.cf-module-card.accent{background:#254d3d;border-color:#254d3d;color:#fff;}
.cf-module-index{font-size:11px;letter-spacing:.14em;opacity:.6;}
.cf-module-icon{margin-top:30px;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;border:1px solid #c9d2c9;background:#edf2eb;color:#315e49;font-size:21px;font-weight:900;}
.cf-module-card.accent .cf-module-icon{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25);color:#fff;}
.cf-module-card h3{font-size:25px;margin:19px 0 7px;}
.cf-module-card p{font-size:13px;line-height:1.8;color:#69726b;margin:0 0 18px;}
.cf-module-card.accent p{color:#d8e3dc;}
.cf-module-card em{margin-top:auto;font-style:normal;font-size:11px;font-weight:800;letter-spacing:.08em;color:#60806e;}
.cf-module-card.accent em{color:#d9e7df;}
.cf-teaching-route{display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center;background:#f7f4ec;position:relative;}
.cf-teaching-route:before{content:"";position:absolute;left:0;top:0;bottom:0;width:100%;pointer-events:none;background:linear-gradient(90deg,rgba(55,91,70,.035) 1px,transparent 1px),linear-gradient(rgba(55,91,70,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,#000,transparent 70%);}
.cf-route-copy{position:relative;z-index:1;}
.cf-route-copy p{color:#667068;line-height:1.9;margin:0 0 24px;max-width:650px;}
.cf-route-flow{position:relative;z-index:1;display:flex;align-items:center;gap:10px;padding:28px;border:1px solid #d8d4ca;background:rgba(255,255,255,.78);border-radius:26px;box-shadow:0 16px 42px rgba(43,48,40,.05);}
.cf-route-flow div{flex:1;min-width:0;padding:14px 10px;text-align:center;border-radius:16px;background:#f2eee5;}
.cf-route-flow b{display:grid;place-items:center;width:34px;height:34px;margin:0 auto 9px;border-radius:50%;background:#2d5d48;color:#fff;font-size:11px;}
.cf-route-flow span{display:block;font-size:14px;font-weight:800;color:#30463b;}
.cf-route-flow small{display:block;margin-top:4px;font-size:10px;color:#7a817b;line-height:1.5;}
.cf-route-flow i{font-style:normal;color:#9a9f98;font-weight:800;}
.cf-home-footer{background:#f1ede4;}
@media(max-width:1100px){
  .cf-home-hero{grid-template-columns:1fr;min-height:auto;padding-top:70px;}
  .cf-home-map-card{min-height:520px;transform:none;}
  .cf-heritage-grid,.cf-module-grid{grid-template-columns:repeat(2,1fr);}
  .cf-teaching-route{grid-template-columns:1fr;}
}
@media(max-width:720px){
  .cf-home-hero{padding:52px 5vw 45px;}
  .cf-home-hero-copy h1{font-size:50px;}
  .cf-home-lead{font-size:16px;}
  .cf-home-stats{grid-template-columns:repeat(2,1fr);}
  .cf-home-map-card{min-height:440px;}
  .cf-map-chip{font-size:9px;padding:6px 8px;}
  .cf-home-section{padding:62px 5vw;}
  .cf-section-head{display:block;}
  .cf-section-head>p{margin-top:14px;}
  .cf-heritage-grid,.cf-module-grid{grid-template-columns:1fr;}
  .cf-heritage-image{height:230px;}
  .cf-heritage-body p{min-height:0;}
  .cf-route-flow{display:grid;grid-template-columns:1fr 22px 1fr;}
  .cf-route-flow i:nth-of-type(2){display:none;}
  .cf-route-flow div:nth-of-type(3){grid-column:1/2;}
  .cf-route-flow div:nth-of-type(4){grid-column:3/4;}
}

/* 首页右侧地图：直接使用 map 页面左侧原图，不叠加文字与遮罩 */
.cf-home-map-card-clean img{filter:none;object-fit:cover;object-position:center center;}


/* ===== 曹妃甸湿地芦苇画新增模块 ===== */
.map-reed-label{position:absolute;left:8%;bottom:16%;z-index:4;display:flex;align-items:center;gap:9px;padding:9px 13px;border-radius:999px;background:rgba(255,250,239,.92);border:1px solid rgba(160,117,71,.45);box-shadow:0 8px 22px rgba(63,63,45,.12);color:#214a40;font-size:12px;font-weight:800;backdrop-filter:blur(6px);}
.map-reed-label b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#496c52;color:#fff;font-size:13px;}
.museum-grid-five{grid-template-columns:repeat(5,1fr);}
.cf-heritage-grid{grid-template-columns:repeat(5,1fr);}
.cf-reed-card-visual{position:relative;background:linear-gradient(180deg,#e8eadb 0%,#d7dfcf 58%,#b9cdbc 58%,#a8c1b1 100%);overflow:hidden;}
.cf-reed-sun{position:absolute;width:62px;height:62px;border-radius:50%;right:18%;top:16%;background:#d2aa62;opacity:.75;}
.cf-reed-water{position:absolute;left:0;right:0;bottom:0;height:35%;background:linear-gradient(180deg,#aecbc4,#91b7b0);opacity:.9;}
.cf-reed-stems{position:absolute;left:10%;right:8%;bottom:15%;height:72%;display:flex;align-items:flex-end;justify-content:space-around;}
.cf-reed-stems i{display:block;width:5px;height:70%;background:#8b7047;border-radius:5px 5px 0 0;transform-origin:bottom center;}
.cf-reed-stems i:after{content:"";position:absolute;width:18px;height:7px;border-radius:50%;background:#7c633f;transform:translate(-6px,-4px) rotate(-18deg);}
.cf-reed-stems i:nth-child(2){height:88%;transform:rotate(3deg)}.cf-reed-stems i:nth-child(3){height:58%;transform:rotate(-4deg)}.cf-reed-stems i:nth-child(4){height:94%;transform:rotate(2deg)}.cf-reed-stems i:nth-child(5){height:64%;transform:rotate(-2deg)}.cf-reed-stems i:nth-child(6){height:82%;transform:rotate(4deg)}
.museum-reed-panel{background:#172019;}
.reed-art-showcase{aspect-ratio:16/9;padding:22px;background:linear-gradient(145deg,#1c261f,#101712);display:grid;place-items:center;}
.reed-art-frame{position:relative;width:100%;height:100%;overflow:hidden;border:10px solid #d8c79f;box-shadow:inset 0 0 0 1px #8a7650;background:linear-gradient(180deg,#e9e2cb 0%,#dad9bf 54%,#b8c4ad 54%,#9fb5a6 100%);}
.reed-art-sun{position:absolute;width:84px;height:84px;border-radius:50%;right:15%;top:16%;background:#bd8e43;opacity:.78;}
.reed-art-water{position:absolute;left:-5%;right:-5%;bottom:-8%;height:42%;background:repeating-linear-gradient(0deg,rgba(239,231,202,.7) 0 3px,rgba(100,131,121,.55) 4px 7px);transform:skewY(-3deg);}
.reed-art-birds{position:absolute;right:30%;top:24%;font-size:28px;color:#596b5f;letter-spacing:8px;}
.reed-art-cluster{position:absolute;left:7%;bottom:8%;width:48%;height:78%;display:flex;justify-content:space-around;align-items:flex-end;}
.reed-art-cluster i{position:relative;width:6px;height:78%;background:#8e6c3f;border-radius:4px 4px 0 0;transform-origin:bottom;}
.reed-art-cluster i:after{content:"";position:absolute;top:-13px;left:-5px;width:17px;height:25px;border-radius:70% 30% 70% 30%;background:#6e5637;}
.reed-art-cluster i:nth-child(2){height:94%;transform:rotate(4deg)}.reed-art-cluster i:nth-child(3){height:66%;transform:rotate(-4deg)}.reed-art-cluster i:nth-child(4){height:86%;transform:rotate(2deg)}.reed-art-cluster i:nth-child(5){height:58%;transform:rotate(-3deg)}.reed-art-cluster i:nth-child(6){height:99%;transform:rotate(3deg)}.reed-art-cluster i:nth-child(7){height:73%;transform:rotate(-2deg)}.reed-art-cluster i:nth-child(8){height:90%;transform:rotate(5deg)}
.reed-art-caption{position:absolute;right:7%;bottom:10%;padding:11px 16px;background:rgba(244,236,211,.82);border-left:4px solid #82613d;color:#4f4433;display:flex;align-items:center;gap:11px;}
.reed-art-caption b{font-family:"STKaiti","KaiTi",serif;font-size:34px;}.reed-art-caption span{font-size:12px;letter-spacing:.08em;}
.reed-symbol-section{margin-top:54px;padding-top:10px;}
.reed-symbol-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:22px;padding:24px 28px;background:#eef0e5;border:1px solid #d8ddcf;border-radius:22px;}
.reed-symbol-heading h2{font-size:34px;margin:8px 0 0;color:#2b4538;}.reed-symbol-heading p{max-width:620px;margin:0;color:#657067;font-size:14px;}
.reed-symbol-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;}
.reed-symbol-card{background:#fff;border:1px solid #ddd9cf;border-radius:20px;padding:20px;min-width:0;}
.reed-symbol-card h3{font-size:21px;margin:9px 0 7px;color:#2d4438;}.reed-symbol-card p{font-size:13px;line-height:1.75;color:#687169;min-height:92px;}
.reed-symbol-visual{height:130px;border-radius:14px;background:#eef1e7;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;margin-bottom:15px;color:#536b56;}
.reed-symbol-landscape{align-items:flex-end;padding:0 12px 8px;background:linear-gradient(180deg,#e9e4cf,#d9dec8 62%,#afc2b3 62%);}
.reed-symbol-landscape .reed-sun{position:absolute;right:15%;top:17%;width:34px;height:34px;border-radius:50%;background:#c9a155;opacity:.8}.reed-symbol-landscape i{width:4px;background:#7e6744;border-radius:4px 4px 0 0;margin:0 5px;height:55%;}.reed-symbol-landscape i:nth-of-type(2){height:78%}.reed-symbol-landscape i:nth-of-type(3){height:66%}.reed-symbol-landscape i:nth-of-type(4){height:88%}.reed-symbol-landscape i:nth-of-type(5){height:72%}
.reed-symbol-form{flex-direction:column}.reed-symbol-form b{font-family:"STKaiti","KaiTi",serif;font-size:54px;line-height:1}.reed-symbol-form span{font-size:11px;letter-spacing:.13em;margin-top:8px;}
.reed-symbol-process{gap:6px;font-weight:800}.reed-symbol-process span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid #cad5c4}.reed-symbol-process b{font-size:13px;color:#9aa493;}
.reed-symbol-texture{gap:7px;padding:14px}.reed-symbol-texture i{height:82px;flex:1;border-radius:5px;background:repeating-linear-gradient(90deg,#d4c39a 0 3px,#b69b69 4px 7px)}.reed-symbol-texture i:nth-child(2){filter:brightness(.88)}.reed-symbol-texture i:nth-child(3){filter:brightness(.72)}.reed-symbol-texture i:nth-child(4){filter:brightness(.58)}
.reed-symbol-translation{gap:7px}.reed-symbol-translation span,.reed-symbol-translation strong{font-family:"STKaiti","KaiTi",serif;font-size:30px}.reed-symbol-translation b{font-size:14px;color:#8d9a8e}.reed-symbol-flow{margin-top:18px;}
@media(max-width:1200px){.museum-grid-five{grid-template-columns:repeat(3,1fr)}.cf-heritage-grid{grid-template-columns:repeat(3,1fr)}.reed-symbol-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.museum-grid-five{grid-template-columns:repeat(2,1fr)}.cf-heritage-grid{grid-template-columns:repeat(2,1fr)}.reed-symbol-heading{align-items:flex-start;flex-direction:column}.reed-symbol-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.map-reed-label{left:5%;bottom:9%;font-size:10px}.museum-grid-five,.cf-heritage-grid,.reed-symbol-grid{grid-template-columns:1fr}.reed-symbol-card p{min-height:0}.reed-art-showcase{padding:12px}.reed-art-caption span{display:none}}


/* ===== 芦苇画标注与作品图片优化 ===== */
.map-page-reed-label{
  left:18%;
  right:auto;
  bottom:19%;
  padding:10px 15px 10px 11px;
  font-size:13px;
  border-color:rgba(134,101,55,.55);
  box-shadow:0 10px 26px rgba(50,55,43,.18);
}
.map-page-reed-label:before,
.index-map-reed-label:before{
  content:"";
  position:absolute;
  left:20px;
  bottom:-10px;
  width:2px;
  height:10px;
  background:#496c52;
}
.map-page-reed-label:after,
.index-map-reed-label:after{
  content:"";
  position:absolute;
  left:16px;
  bottom:-17px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#496c52;
  box-shadow:0 0 0 4px rgba(255,250,239,.86);
}
.index-map-reed-label{
  left:18%;
  right:auto;
  bottom:19%;
  z-index:5;
  font-size:12px;
  padding:9px 13px 9px 10px;
}
.cf-home-map-card:hover .index-map-reed-label{transform:translateY(-2px);}
.cf-home-map-card .index-map-reed-label{transition:transform .25s ease;}

.cf-reed-card-gallery{position:relative;background:#090909;overflow:hidden;}
.cf-reed-card-gallery .reed-card-main{width:100%;height:100%;object-fit:cover;display:block;transform:none!important;}
.cf-reed-card-gallery .reed-card-inset{
  position:absolute;
  right:9px;
  bottom:9px;
  width:39%;
  height:52%;
  object-fit:cover;
  border:3px solid rgba(255,255,255,.92);
  border-radius:10px;
  box-shadow:0 7px 20px rgba(0,0,0,.25);
  background:#000;
  transform:none!important;
}
.cf-heritage-card:hover .cf-reed-card-gallery .reed-card-main{transform:scale(1.035)!important;}
.cf-heritage-card:hover .cf-reed-card-gallery .reed-card-inset{transform:translateY(-2px)!important;}

.reed-carousel{position:relative;background:#000;aspect-ratio:16/9;overflow:hidden;}
.reed-carousel-slides{position:relative;width:100%;height:100%;}
.reed-carousel-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .45s ease;display:flex;align-items:center;justify-content:center;background:#000;}
.reed-carousel-slide.active{opacity:1;z-index:1;}
.reed-carousel-slide img{width:100%;height:100%;object-fit:contain;display:block;background:#000;}
@media(max-width:600px){
  .map-page-reed-label{left:12%;right:auto;bottom:16%;font-size:10px;padding:7px 10px 7px 8px;}
  .index-map-reed-label{left:12%;right:auto;bottom:16%;font-size:10px;}
  .map-page-reed-label b,.index-map-reed-label b{width:24px;height:24px;font-size:11px;}
}


/* ===== 非遗符号库并列页面：面塑 / 芦苇画 ===== */
.symbol-project-switch{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 18px;padding:12px;background:#ece9df;border:1px solid #ddd8cc;border-radius:18px;}
.symbol-project-switch a{display:flex;align-items:center;gap:9px;padding:10px 16px;border-radius:14px;color:#536059;font-size:13px;font-weight:700;transition:.2s;background:rgba(255,255,255,.55);border:1px solid transparent;}
.symbol-project-switch a span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e1e8dc;color:#355945;font-weight:900;}
.symbol-project-switch a.active,.symbol-project-switch a:hover{background:#fff;border-color:#ccd4c8;color:#244d3c;box-shadow:0 6px 18px rgba(38,56,45,.06);}
.symbol-project-switch a.active span{background:#244d3c;color:#fff;}
.heritage-detail-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px;}
.reed-independent-grid .symbol-card{grid-template-columns:380px 1fr;}
.reed-independent-grid .symbol-visual{height:240px;}
.reed-work-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;height:100%;}
.reed-work-item{display:flex;flex-direction:column;gap:6px;background:#111;border-radius:12px;padding:7px;overflow:hidden;}
.reed-work-item img{width:100%;height:185px;object-fit:contain;background:#000;border-radius:8px;}
.reed-work-item span{text-align:center;color:#e8e3d8;font-size:11px;}
.reed-independent-grid .reed-symbol-form,.reed-independent-grid .reed-symbol-process,.reed-independent-grid .reed-symbol-texture{height:240px;margin:0;}
.reed-translation-visual img{width:100%;height:100%;object-fit:contain;background:#070707;border-radius:12px;}
.reed-symbol-entry{margin-top:25px;}
@media(max-width:900px){.reed-independent-grid .symbol-card{grid-template-columns:320px 1fr;}.reed-work-item img{height:165px;}}
@media(max-width:680px){.symbol-project-switch{padding:10px}.symbol-project-switch a{width:100%;}.reed-independent-grid .symbol-card{grid-template-columns:1fr;}.reed-independent-grid .symbol-visual,.reed-independent-grid .reed-symbol-form,.reed-independent-grid .reed-symbol-process,.reed-independent-grid .reed-symbol-texture{height:auto;min-height:210px;}.reed-work-pair{grid-template-columns:1fr;}.reed-work-item img{height:190px;}}

/* 芦苇符号库图片轮播 */
.reed-carousel{width:100%;height:100%;overflow:hidden;position:relative;border-radius:18px}
.reed-carousel-track{display:flex;width:400%;height:100%;animation:reedSlide 18s infinite}
.reed-carousel .reed-work-item{width:25%;flex:none;display:flex;flex-direction:column;gap:10px;height:100%}
.reed-carousel img{width:100%;height:260px;object-fit:cover;border-radius:14px;display:block;background:#eee8dc}
.reed-carousel span{font-size:13px;color:#5d665e;text-align:center}
.reed-work-dual .reed-carousel img{height:280px}
.reed-form-board .reed-carousel img{height:300px}
@keyframes reedSlide{
0%,20%{transform:translateX(0)}
25%,45%{transform:translateX(-25%)}
50%,70%{transform:translateX(-50%)}
75%,95%{transform:translateX(-75%)}
100%{transform:translateX(0)}
}

.reed-work-dual .reed-carousel-track{width:300%}
.reed-work-dual .reed-carousel .reed-work-item{width:33.333%}

/* 芦苇画制作流程图片轮播 */
.reed-symbol-process-carousel{position:relative;display:block;overflow:hidden;border-radius:14px;background:#f8f5ed;min-height:210px}
.process-slides{width:100%;height:190px}
.process-slide{display:none;margin:0;width:100%;height:100%}
.process-slide.active{display:block}
.process-slide img{width:100%;height:190px;object-fit:cover;border-radius:12px}
.process-btn{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;border:1px solid #d7c8a7;background:rgba(255,255,255,.85);font-size:24px;line-height:20px;cursor:pointer}
.process-prev{left:8px}.process-next{right:8px}
.process-caption{text-align:center;font-size:12px;color:#6f624d;padding:7px 0 0}


/* 图形与当代应用图片轮播 */
.reed-translation-carousel{position:relative;display:block;overflow:hidden;border-radius:14px;background:#f7f4ec;min-height:240px}
.translation-slides{position:relative;width:100%;height:100%}
.translation-slide{display:none;margin:0;width:100%;height:100%;padding:8px}
.translation-slide.active{display:block}
.translation-slide img{width:100%;height:188px;object-fit:contain;border-radius:12px;background:#f0ece2;display:block}
.translation-slide figcaption{text-align:center;font-size:12px;line-height:1.45;color:#6a6256;padding:8px 10px 4px}
.translation-btn{position:absolute;top:42%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;border:1px solid #d7c8a7;background:rgba(255,255,255,.92);font-size:24px;line-height:20px;cursor:pointer;color:#6f624d;z-index:3}
.translation-prev{left:8px}.translation-next{right:8px}
.translation-dots{position:absolute;left:0;right:0;bottom:40px;display:flex;justify-content:center;gap:8px;z-index:3}
.translation-dots .dot{width:9px;height:9px;border-radius:50%;border:none;background:rgba(121,111,95,.35);cursor:pointer;padding:0}
.translation-dots .dot.active{background:#8c7a58}
@media(max-width:680px){
  .reed-translation-carousel{min-height:250px}
  .translation-slide img{height:185px}
  .translation-dots{bottom:44px}
}


/* 滨海湿地意象 / 芦苇结构提取：卡片轮播样式（与图形与当代应用一致） */
.reed-gallery-carousel{position:relative;display:block;overflow:hidden;border-radius:14px;background:#f7f4ec;min-height:240px}
.reed-gallery-carousel .gallery-slides{position:relative;width:100%;height:100%}
.reed-gallery-carousel .gallery-slide{display:none;margin:0;width:100%;height:100%;padding:8px}
.reed-gallery-carousel .gallery-slide.active{display:block}
.reed-gallery-carousel .gallery-slide img{width:100%;height:188px;object-fit:contain;border-radius:12px;background:#f0ece2;display:block}
.reed-gallery-carousel .gallery-slide figcaption{text-align:center;font-size:12px;line-height:1.45;color:#6a6256;padding:8px 10px 4px}
.reed-gallery-carousel .gallery-btn{position:absolute;top:42%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;border:1px solid #d7c8a7;background:rgba(255,255,255,.92);font-size:24px;line-height:20px;cursor:pointer;color:#6f624d;z-index:3}
.reed-gallery-carousel .gallery-prev{left:8px}
.reed-gallery-carousel .gallery-next{right:8px}
.reed-gallery-carousel .gallery-dots{position:absolute;left:0;right:0;bottom:40px;display:flex;justify-content:center;gap:8px;z-index:3}
.reed-gallery-carousel .gallery-dots .dot{width:9px;height:9px;border-radius:50%;border:none;background:rgba(121,111,95,.35);cursor:pointer;padding:0}
.reed-gallery-carousel .gallery-dots .dot.active{background:#8c7a58}
@media(max-width:680px){
  .reed-gallery-carousel{min-height:250px}
  .reed-gallery-carousel .gallery-slide img{height:185px}
  .reed-gallery-carousel .gallery-dots{bottom:44px}
}


/* ===== V1.4 小苇AI美育导师入口 ===== */
.cf-ai-entry-section{background:#17201c;padding-top:72px;padding-bottom:72px;}
.cf-ai-entry-card{display:grid;grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);gap:38px;align-items:center;max-width:1320px;margin:0 auto;padding:34px;border:1px solid rgba(255,255,255,.12);border-radius:30px;background:linear-gradient(135deg,#1a2520 0%,#111815 100%);box-shadow:0 28px 70px rgba(13,22,18,.26);color:#fff;overflow:hidden;position:relative;transition:transform .25s ease,box-shadow .25s ease;}
.cf-ai-entry-card:before{content:"";position:absolute;width:380px;height:380px;left:-130px;bottom:-230px;border-radius:50%;border:1px solid rgba(154,194,154,.18);box-shadow:0 0 0 50px rgba(154,194,154,.035),0 0 0 100px rgba(154,194,154,.02);}
.cf-ai-entry-card:hover{transform:translateY(-4px);box-shadow:0 34px 84px rgba(10,18,15,.32);}
.cf-ai-entry-copy{position:relative;z-index:2;padding:12px 4px 12px 14px;}
.cf-ai-entry-copy .eyebrow{color:#9fb6a5;}
.cf-ai-entry-copy h2{font-size:clamp(34px,4.2vw,58px);line-height:1.12;margin:12px 0 18px;color:#f4efe3;}
.cf-ai-entry-copy p{max-width:590px;margin:0;color:#d0d8d2;font-size:16px;line-height:1.9;}
.cf-ai-entry-tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 24px;}
.cf-ai-entry-tags span{padding:7px 11px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.055);font-size:11px;color:#dbe5dd;}
.cf-ai-entry-btn{display:inline-flex;align-items:center;gap:12px;padding:13px 20px;border-radius:999px;background:linear-gradient(90deg,#d8e2a9,#9bd7a4);color:#183629;font-weight:900;box-shadow:0 10px 25px rgba(112,174,126,.18);}
.cf-ai-entry-btn b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#244f3d;color:#fff;}
.cf-ai-entry-copy small{display:block;margin-top:12px;color:#94a39a;font-size:11px;}
.cf-ai-entry-visual{position:relative;z-index:1;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.10);background:#0d1411;aspect-ratio:4/3;}
.cf-ai-entry-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.cf-ai-entry-card:hover .cf-ai-entry-visual img{transform:scale(1.018);}
.ai-tutor-portrait{display:block;width:100%;max-width:430px;aspect-ratio:4/3;object-fit:cover;margin:12px auto 24px;border-radius:22px;border:1px solid #d6d9cf;box-shadow:0 12px 30px rgba(47,62,52,.10);}
.cf-module-grid{grid-template-columns:repeat(5,1fr);}
@media(max-width:1200px){.cf-module-grid{grid-template-columns:repeat(3,1fr)}.cf-ai-entry-card{grid-template-columns:1fr 1fr;}}
@media(max-width:900px){.cf-ai-entry-card{grid-template-columns:1fr;padding:24px}.cf-ai-entry-visual{order:-1}.cf-module-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cf-ai-entry-section{padding-top:42px;padding-bottom:42px}.cf-ai-entry-card{padding:16px;border-radius:22px}.cf-ai-entry-copy{padding:8px}.cf-ai-entry-copy h2{font-size:34px}.cf-module-grid{grid-template-columns:1fr}}
