 @import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,400;1,500&family=Noto+Serif+SC:wght@600;700;900&display=swap');

        *,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
        html{font-size:16px;scroll-behavior:smooth;overflow-x:hidden}
        body{font-family:"PingFang SC","Microsoft YaHei",sans-serif;color:#2c2c2c;background:#f7f5f3;line-height:1.75;overflow-x:hidden}
        a{color:inherit;text-decoration:none;transition:color .3s}
        img{max-width:100%;display:block}
        ul{list-style:none}
        button{font-family:inherit}

        :root{
            --p:#722751;
            --p-l:#953868;
            --p-d:#4e1a38;
            --p-bg:#faf5f7;
            --p-line:#e0c8d0;
            --accent:#d4965a;
            --accent-l:#e8b87a;
            --accent-d:#b87d3e;
            --t1:#1e1e1e;
            --t2:#4a4a4a;
            --t3:#9a9a9a;
            --w:#fff;
            --bd:#ebe8e4;
            --r:14px;
            --serif:"Noto Serif SC",serif;
            --en-serif:"Cormorant Garamond",serif;
        }

        .ctn{max-width:1200px;margin:0 auto;padding:0 clamp(12px,3vw,28px);width:100%}

        /* ═══════ HEADER + NAV ═══════ */
        .hd{background:rgba(255,255,255,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--bd);position:sticky;top:0;z-index:900;transition:box-shadow .3s}
        .hd.scroll{box-shadow:0 2px 24px rgba(114,39,81,.08)}
        .hd-top{display:flex;align-items:center;justify-content:space-between;height:80px}
        .lg{display:flex;align-items:center;gap:16px;cursor:pointer}
        .lg-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;filter:drop-shadow(0 2px 6px rgba(114,39,81,.15))}
        .lg-icon img{width:100%;height:100%;object-fit:contain;transition:transform .3s}
        .lg:hover .lg-icon img{transform:scale(1.05)}
        .lg h1{font-family:var(--serif);font-size:1.18rem;color:var(--p);font-weight:700;letter-spacing:2.5px}
        .lg p{font-size:.68rem;color:var(--t3);letter-spacing:1px;margin-top:2px;opacity:.8}

        .dn{display:flex;align-items:center;gap:0;height:72px}
        .dn-item{position:relative;height:100%;display:flex;align-items:center}
        .dn-item>a{padding:0 16px;font-size:.82rem;color:var(--t2);font-weight:500;letter-spacing:.3px;transition:color .2s;height:100%;display:flex;align-items:center;position:relative}
        .dn-item>a::after{content:'';position:absolute;bottom:18px;left:50%;transform:translateX(-50%);width:0;height:2.5px;background:var(--p);border-radius:2px;transition:width .25s}
        .dn-item:hover>a,.dn-item.on>a{color:var(--p)}
        .dn-item:hover>a::after,.dn-item.on>a::after{width:18px}
        .dn-item>a .caret{display:inline-block;width:0;height:0;border-left:3.5px solid transparent;border-right:3.5px solid transparent;border-top:4px solid var(--t3);margin-left:5px;margin-top:2px;transition:border-top-color .2s}
        .dn-item:hover>a .caret{border-top-color:var(--p)}

        .dd{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);background:var(--w);border:1px solid var(--bd);border-radius:10px;padding:8px;min-width:min(170px,100vw);box-shadow:0 12px 36px rgba(114,39,81,.1);opacity:0;visibility:hidden;transition:all .25s;z-index:50}
        .dn-item:hover .dd{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
        .dd a{display:flex;align-items:center;gap:8px;padding:9px 14px;font-size:.78rem;color:var(--t2);border-radius:6px;transition:all .2s;white-space:nowrap}
        .dd a:hover{background:var(--p-bg);color:var(--p)}
        .dd a svg{width:14px;height:14px;fill:var(--accent);opacity:0;transition:opacity .2s}
        .dd a:hover svg{opacity:1}

        .hb{display:none;width:40px;height:40px;border-radius:10px;background:var(--p-bg);border:none;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}
        .hb span{display:block;width:18px;height:2px;background:var(--p);border-radius:1px;transition:all .3s}
        .hb.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
        .hb.open span:nth-child(2){opacity:0}
        .hb.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

        .dr{position:fixed;top:0;right:0;bottom:0;width:min(300px,100vw);background:var(--w);z-index:1000;transform:translateX(100%);transition:transform .35s;box-shadow:-4px 0 28px rgba(0,0,0,.12);display:flex;flex-direction:column}
        .dr.open{transform:translateX(0)}
        .dr-h{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--bd)}
        .dr-h span{font-size:.88rem;font-weight:600;color:var(--p)}
        .dr-x{width:30px;height:30px;border-radius:8px;background:var(--p-bg);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}
        .dr-x svg{width:14px;height:14px;fill:var(--p)}
        .dr-n{flex:1;overflow-y:auto;padding:10px 14px}
        .dr-group{margin-bottom:6px}
        .dr-group-title{display:flex;align-items:center;gap:8px;padding:10px 12px 4px;font-size:.68rem;color:var(--accent);font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
        .dr-group-title::after{content:'';flex:1;height:1px;background:var(--bd)}
        .dr-n a{display:flex;align-items:center;gap:10px;padding:10px 14px;font-size:.82rem;color:var(--t2);border-radius:8px;transition:all .2s;font-weight:500}
        .dr-n a svg{width:16px;height:16px;fill:var(--t3);flex-shrink:0;transition:fill .2s}
        .dr-n a:hover,.dr-n a.on{background:var(--p-bg);color:var(--p)}
        .dr-n a:hover svg,.dr-n a.on svg{fill:var(--p)}
        .dr-f{padding:14px 20px;border-top:1px solid var(--bd);font-size:.66rem;color:var(--t3)}
        .ov{position:fixed;inset:0;background:rgba(0,0,0,.25);z-index:950;opacity:0;pointer-events:none;transition:opacity .3s}
        .ov.on{opacity:1;pointer-events:auto}

        /* ═══════ PAGE BANNER ═══════ */
        .pg-banner{position:relative;min-height:320px;display:flex;align-items:center;justify-content:center;background:var(--p-d);overflow:hidden}
        .pg-banner-bg{position:absolute;inset:0;background:url('../hero-bg.jpg') center/cover no-repeat;opacity:.25}
        .pg-banner::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(78,26,56,.5) 0%,rgba(78,26,56,.8) 100%)}
        .pg-banner-ct{position:relative;z-index:2;text-align:center;padding:60px 28px}
        .pg-banner-ct .en{font-family:var(--en-serif);font-style:italic;font-size:1.2rem;color:rgba(255,255,255,.3);letter-spacing:2px;margin-bottom:6px}
        .pg-banner-ct h1{font-family:var(--serif);font-size:2rem;color:#fff;font-weight:700;letter-spacing:6px;text-shadow:0 2px 20px rgba(0,0,0,.3)}
        .pg-banner-ct .sub{font-size:.76rem;color:rgba(255,255,255,.4);letter-spacing:1px;margin-top:10px}

        /* Breadcrumb */
        .bc{background:var(--w);border-bottom:1px solid var(--bd);padding:14px 0}
        .bc-list{display:flex;align-items:center;gap:6px;font-size:.74rem;color:var(--t3)}
        .bc-list a{color:var(--t3);transition:color .2s}
        .bc-list a:hover{color:var(--p)}
        .bc-list .sep{color:var(--bd)}
        .bc-list .cur{color:var(--p);font-weight:600}

        /* ═══════ MAIN LAYOUT ═══════ */
        .main{display:grid;grid-template-columns:1fr 300px;gap:36px;padding:48px 0 64px}
        .article{min-width:0}

        /* Section Title */
        .art-h2{font-family:var(--serif);font-size:1.3rem;font-weight:700;color:var(--t1);letter-spacing:2px;margin-bottom:20px;padding-left:14px;position:relative}
        .art-h2::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:22px;background:linear-gradient(180deg,var(--p),var(--accent));border-radius:2px}
        .art-h2 .en{font-family:var(--en-serif);font-style:italic;font-size:.82rem;color:var(--accent);font-weight:400;margin-left:8px;letter-spacing:1px}

        /* ═══════ MIXED ARTICLE LIST ═══════ */
        .mix-list{display:flex;flex-direction:column;gap:16px}

        /* ── Type 1: Featured large card with image ── */
        .mix-card.featured{display:flex;flex-direction:column;background:var(--w);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;transition:all .35s;position:relative}
        .mix-card.featured::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--p),var(--accent));transform:scaleY(0);transition:transform .35s;transform-origin:center;z-index:3}
        .mix-card.featured:hover{border-color:var(--p-line);box-shadow:0 8px 32px rgba(114,39,81,.08)}
        .mix-card.featured:hover::before{transform:scaleY(1)}
        .mix-card.featured .mix-cover{width:100%;height:320px;overflow:hidden;background:linear-gradient(135deg,var(--p-bg),var(--p-bg));position:relative}
        .mix-card.featured .mix-cover .cover-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
        .mix-card.featured .mix-cover .cover-ph svg{width:56px;height:56px;fill:var(--p-line)}
        .mix-card.featured .mix-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
        .mix-card.featured:hover .mix-cover img{transform:scale(1.04)}
        .mix-card.featured .mix-cover .cover-tag{position:absolute;top:16px;left:16px;padding:5px 14px;border-radius:6px;font-size:.64rem;font-weight:600;background:var(--accent);color:#fff;letter-spacing:.5px;backdrop-filter:blur(4px)}
        .mix-card.featured .mix-content{padding:24px 28px}
        .mix-card.featured .mix-title{font-family:var(--serif);font-size:1.1rem;font-weight:700;color:var(--t1);line-height:1.6;margin-bottom:10px;transition:color .25s}
        .mix-card.featured:hover .mix-title{color:var(--p)}
        .mix-card.featured .mix-excerpt{font-size:.8rem;color:var(--t3);line-height:1.9;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:14px}
        .mix-card.featured .mix-meta{display:flex;align-items:center;gap:12px;font-size:.68rem;color:var(--t3)}
        .mix-card.featured .mix-meta .date{display:flex;align-items:center;gap:5px}
        .mix-card.featured .mix-meta .date svg{width:13px;height:13px;fill:var(--t3)}
        .mix-card.featured .mix-meta .src{display:flex;align-items:center;gap:5px}
        .mix-card.featured .mix-meta .src svg{width:13px;height:13px;fill:var(--t3)}
        .mix-card.featured .mix-meta .views{display:flex;align-items:center;gap:5px;margin-left:auto}
        .mix-card.featured .mix-meta .views svg{width:13px;height:13px;fill:var(--t3)}
        .mix-card.featured .mix-meta .sep{color:var(--bd)}
        .mix-card.featured .mix-meta .read-more{color:var(--p);font-weight:500;display:flex;align-items:center;gap:4px;transition:gap .25s}
        .mix-card.featured .mix-meta .read-more svg{width:14px;height:14px;fill:var(--p)}
        .mix-card.featured:hover .mix-meta .read-more{gap:7px}

        /* ── Type 2: Horizontal card with thumbnail ── */
        .mix-card.thumb{display:flex;gap:22px;padding:22px 24px;background:var(--w);border:1px solid var(--bd);border-radius:var(--r);transition:all .35s;position:relative;overflow:hidden}
        .mix-card.thumb::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--p),var(--accent));transform:scaleY(0);transition:transform .35s;transform-origin:center}
        .mix-card.thumb:hover{border-color:var(--p-line);box-shadow:0 6px 24px rgba(114,39,81,.06)}
        .mix-card.thumb:hover::before{transform:scaleY(1)}
        .mix-card.thumb .mix-thumb{flex-shrink:0;width:min(220px,40vw);height:150px;border-radius:10px;overflow:hidden;background:var(--p-bg);position:relative}
        .mix-card.thumb .mix-thumb .thumb-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
        .mix-card.thumb .mix-thumb .thumb-ph svg{width:40px;height:40px;fill:var(--p-line)}
        .mix-card.thumb .mix-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
        .mix-card.thumb:hover .mix-thumb img{transform:scale(1.06)}
        .mix-card.thumb .mix-body{flex:1;min-width:0;display:flex;flex-direction:column}
        .mix-card.thumb .mix-title{font-size:.9rem;font-weight:600;color:var(--t1);line-height:1.7;margin-bottom:8px;transition:color .25s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
        .mix-card.thumb:hover .mix-title{color:var(--p)}
        .mix-card.thumb .mix-excerpt{font-size:.76rem;color:var(--t3);line-height:1.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:auto;padding-bottom:10px}
        .mix-card.thumb .mix-meta{display:flex;align-items:center;gap:10px;font-size:.66rem;color:var(--t3)}
        .mix-card.thumb .mix-meta .date{display:flex;align-items:center;gap:4px}
        .mix-card.thumb .mix-meta .date svg{width:12px;height:12px;fill:var(--t3)}
        .mix-card.thumb .mix-meta .sep{color:var(--bd)}
        .mix-card.thumb .mix-meta .views{display:flex;align-items:center;gap:4px}
        .mix-card.thumb .mix-meta .views svg{width:12px;height:12px;fill:var(--t3)}
        .mix-card.thumb .mix-meta .read-more{margin-left:auto;color:var(--p);font-weight:500;display:flex;align-items:center;gap:4px;transition:gap .25s}
        .mix-card.thumb .mix-meta .read-more svg{width:13px;height:13px;fill:var(--p)}
        .mix-card.thumb:hover .mix-meta .read-more{gap:7px}

        /* ── Type 3: Text-only card with date block ── */
        .mix-card.text{display:flex;align-items:center;gap:20px;padding:18px 24px;background:var(--w);border:1px solid var(--bd);border-radius:var(--r);transition:all .35s;position:relative;overflow:hidden}
        .mix-card.text::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--p),var(--accent));transform:scaleY(0);transition:transform .35s;transform-origin:center}
        .mix-card.text:hover{border-color:var(--p-line);box-shadow:0 6px 24px rgba(114,39,81,.06);transform:translateX(4px)}
        .mix-card.text:hover::before{transform:scaleY(1)}
        .mix-card.text .mix-date{flex-shrink:0;width:64px;text-align:center;padding:8px 0;background:var(--p-bg);border-radius:10px;transition:all .35s}
        .mix-card.text:hover .mix-date{background:var(--p)}
        .mix-card.text .mix-date .day{font-family:var(--serif);font-size:1.4rem;font-weight:700;color:var(--p);line-height:1;transition:color .35s}
        .mix-card.text:hover .mix-date .day{color:#fff}
        .mix-card.text .mix-date .ym{font-size:.6rem;color:var(--t3);margin-top:4px;letter-spacing:.5px;transition:color .35s}
        .mix-card.text:hover .mix-date .ym{color:rgba(255,255,255,.6)}
        .mix-card.text .mix-body{flex:1;min-width:0}
        .mix-card.text .mix-title{font-size:.86rem;font-weight:600;color:var(--t1);line-height:1.7;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .25s}
        .mix-card.text:hover .mix-title{color:var(--p)}
        .mix-card.text .mix-excerpt{font-size:.74rem;color:var(--t3);line-height:1.7;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:6px}
        .mix-card.text .mix-meta{display:flex;align-items:center;gap:10px;font-size:.66rem;color:var(--t3)}
        .mix-card.text .mix-meta .views{display:flex;align-items:center;gap:4px}
        .mix-card.text .mix-meta .views svg{width:12px;height:12px;fill:var(--t3)}
        .mix-card.text .mix-meta .sep{color:var(--bd)}
        .mix-card.text .mix-arrow{flex-shrink:0;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--p-bg);transition:all .35s}
        .mix-card.text .mix-arrow svg{width:16px;height:16px;fill:var(--t3);transition:fill .35s}
        .mix-card.text:hover .mix-arrow{background:var(--p)}
        .mix-card.text:hover .mix-arrow svg{fill:#fff;transform:translateX(2px)}

        /* ═══════ Pagination ═══════ */
        .pg-nav{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:32px}
        .pg-btn{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.78rem;color:var(--t2);background:var(--w);border:1px solid var(--bd);cursor:pointer;transition:all .25s;font-weight:500}
        .pg-btn:hover{border-color:var(--p-line);color:var(--p)}
        .pg-btn.active{background:var(--p);color:#fff;border-color:var(--p)}
        .pg-btn.disabled{color:var(--bd);cursor:not-allowed}
        .pg-btn.disabled:hover{border-color:var(--bd);color:var(--bd)}
        .pg-btn svg{width:14px;height:14px;fill:currentColor}

        /* ═══════ SIDEBAR ═══════ */
        .side{display:flex;flex-direction:column;gap:24px}
        .side-card{background:var(--w);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden}
        .side-hd{padding:14px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--bd);background:var(--p-bg)}
        .side-hd .tt{display:flex;align-items:center;gap:10px}
        .side-hd .tt .bar{width:3px;height:16px;background:var(--p);border-radius:2px}
        .side-hd h4{font-family:var(--serif);font-size:.88rem;font-weight:700;color:var(--t1)}
        .side-hd .more{font-size:.68rem;color:var(--t3);transition:color .2s}
        .side-hd .more:hover{color:var(--p)}
        .side-list{padding:6px 20px 12px}
        .side-list a{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 0;font-size:.78rem;color:var(--t2);line-height:1.6;border-bottom:1px dashed var(--bd);transition:all .2s}
        .side-list a:last-child{border-bottom:none}
        .side-list a:hover{color:var(--p);padding-left:4px}
        .side-list a .tt{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
        .side-list a .dt{font-size:.64rem;color:var(--t3);flex-shrink:0}
        .side-list a.on{color:var(--p);font-weight:600}
        .side-list a.on::before{content:'';display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--accent);margin-right:8px;vertical-align:middle}

        .side-contact{background:linear-gradient(135deg,var(--p) 0%,var(--p-l) 100%);border-radius:var(--r);padding:24px 22px;color:#fff}
        .side-contact h4{font-family:var(--serif);font-size:.95rem;font-weight:700;margin-bottom:16px;letter-spacing:1px}
        .side-contact .item{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;font-size:.76rem;color:rgba(255,255,255,.65);line-height:1.7}
        .side-contact .item svg{width:16px;height:16px;fill:var(--accent-l);flex-shrink:0;margin-top:3px}
        .side-contact .item span{flex:1}

        /* ═══════ FOOTER ═══════ */
        .ft{background:var(--p-d);color:rgba(255,255,255,.4)}
        .ft-main{padding:52px 0 36px;border-bottom:1px solid rgba(255,255,255,.06)}
        .ft-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:start}
        .ft-left h3{color:#fff;font-size:1rem;font-weight:600;letter-spacing:1.5px;margin-bottom:12px;font-family:var(--serif)}
        .ft-left .desc{font-size:.78rem;color:rgba(255,255,255,.35);line-height:1.9;margin-bottom:24px;max-width:min(420px,100%)}
        .ft-contact{display:flex;flex-wrap:wrap;gap:16px 24px;margin-bottom:20px}
        .ft-contact span{display:flex;align-items:center;gap:6px;font-size:.72rem;color:rgba(255,255,255,.4)}
        .ft-contact svg{width:14px;height:14px;fill:var(--accent);opacity:.7}
        .ft-nav{display:flex;flex-wrap:wrap;gap:0 16px}
        .ft-nav a{font-size:.72rem;color:rgba(255,255,255,.3);transition:color .25s}
        .ft-nav a:hover{color:rgba(255,255,255,.65)}
        .ft-nav .sep{color:rgba(255,255,255,.12);margin:0 4px}
        .ft-right{display:flex;flex-direction:column;align-items:center}
        .ft-qr-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:20px 24px;text-align:center;backdrop-filter:blur(8px)}
        .ft-qr-card img{width:min(120px,40vw);height:min(120px,40vw);border-radius:8px;background:#fff;display:block;margin:0 auto 10px}
        .ft-qr-card p{font-size:.7rem;color:rgba(255,255,255,.45);letter-spacing:.5px}
        .ft-qr-card .label{font-size:.68rem;color:rgba(255,255,255,.3);margin-top:4px}
        .ft-bt{padding:16px 0;text-align:center;font-size:.68rem;color:rgba(255,255,255,.2)}
        .ft-bt a{color:rgba(255,255,255,.28)}
        .ft-bt a:hover{color:rgba(255,255,255,.6)}
        .ft-bt .s{margin:0 8px;opacity:.3}

        /* ═══════ Animations ═══════ */
        .fade-up{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}
        .fade-up.in{opacity:1;transform:translateY(0)}

        /* ═══════ RSP ═══════ */
        @media(max-width:1024px){
            .main{grid-template-columns:1fr;gap:28px}
            .ft-grid{grid-template-columns:1fr;gap:32px}
            .ft-right{align-items:flex-start}
        }
        @media(max-width:768px){
            .dn{display:none}
            .hb{display:flex}
            .hd-top{height:58px}
            .pg-banner{min-height:240px}
            .pg-banner-ct h1{font-size:1.5rem;letter-spacing:4px}
            .pg-banner-ct .en{font-size:1rem}
            .mix-card.featured .mix-cover{height:200px}
            .mix-card.featured .mix-content{padding:18px 20px}
            .mix-card.featured .mix-title{font-size:.96rem;word-break:break-word}
            .mix-card.featured .mix-meta{flex-wrap:wrap;gap:8px}
            .mix-card.thumb{flex-direction:column;gap:14px;padding:16px;min-width:0;max-width:100%}
            .mix-card.thumb .mix-thumb{width:100%;height:180px}
            .mix-card.thumb .mix-title{white-space:normal;word-break:break-word}
            .mix-card.thumb .mix-meta{flex-wrap:wrap;gap:8px}
            .mix-card.text{padding:14px 16px;gap:14px;min-width:0;max-width:100%}
            .mix-card.text .mix-date{width:52px}
            .mix-card.text .mix-date .day{font-size:1.1rem}
            .mix-card.text .mix-title{white-space:normal;word-break:break-word}
            .mix-card.text .mix-meta{flex-wrap:wrap;gap:8px}
            .mix-card.text .mix-arrow{display:none}
            .ft-grid{grid-template-columns:1fr;gap:24px}
            .ft-right{align-items:center}
            .ft-main{padding:32px 0 24px}
        }
        @media(max-width:480px){
            /* 统一减小容器内边距 */
            .ctn{padding:0 16px}

            /* Header */
            .hd-top{height:52px}
            .lg h1{font-size:.92rem;letter-spacing:1px}
            .lg-icon{width:40px;height:40px}

            /* Banner */
            .pg-banner{min-height:200px}
            .pg-banner-ct{padding:36px 16px}
            .pg-banner-ct h1{font-size:1.1rem;letter-spacing:2px}
            .pg-banner-ct .en{font-size:.85rem}
            .pg-banner-ct .sub{font-size:.7rem}

            /* Breadcrumb */
            .bc{padding:10px 0}

            /* Main layout */
            .main{padding:24px 0 40px}

            /* mix-card 统一内边距 */
            .mix-card.featured .mix-content{padding:16px}
            .mix-card.featured .mix-title{font-size:.96rem;word-break:break-word}
            .mix-card.featured .mix-meta{flex-wrap:wrap;gap:8px}
            .mix-card.thumb{padding:14px;gap:14px;min-width:0;max-width:100%}
            .mix-card.thumb .mix-thumb{height:160px}
            .mix-card.thumb .mix-title{white-space:normal;word-break:break-word}
            .mix-card.thumb .mix-meta{flex-wrap:wrap;gap:8px}
            .mix-card.text{padding:12px 14px;gap:12px;min-width:0;max-width:100%}
            .mix-card.text .mix-date{width:48px}
            .mix-card.text .mix-date .day{font-size:1rem}
            .mix-card.text .mix-title{white-space:normal;word-break:break-word}
            .mix-card.text .mix-meta{flex-wrap:wrap;gap:8px}
            .mix-card.text .mix-arrow{display:none}

            /* 侧边栏 */
            .side{gap:16px}
            .side-hd{padding:12px 16px}
            .side-list{padding:6px 16px 10px}
            .side-contact{padding:20px 16px}

            /* Footer */
            .ft-main{padding:28px 0 20px}
            .ft-qr-card{padding:16px}
            .ft-qr-card img{width:min(100px,35vw);height:min(100px,35vw)}

            /* 标题字号统一 */
            .art-h2{font-size:1rem;margin-bottom:16px}
            .ft-left h3{font-size:.9rem}
        }
    
        /* ═══════ 全断点防溢出（320px以下及任意尺寸） ═══════ */
        /* 1. 所有 flex/grid 子项强制可收缩 */
        .news-body,.news-title,.mix-title,.art-title,.side-list a .tt,
        .card-list a .tt,.party-list a .tt,.nl2 a,.ni h4,
        .ft-bd,.ft-cl,.reg-bd,.nf-bd,.nc,.nl,.nf,
        .hero-body,.hero-body-inner,.hero-sub,.hero-stats,
        .pg-banner-ct,.pg-banner-ct h1,.art-hd h1,.art-body,
        .mag-feat-bd,.mag-side,.path-step,.path-flow,
        .feat,.feat-grid,.country,.country-grid,.coop-grid,
        .alumni-grid,.activity-gallery,.ag-item,
        .pro,.pro-grid,.gallery-grid,.gal,.adm,.adm-grid,
        .stats,.stats-inner,.st,.cta,.cta-btns,
        .sec-hd,.sec-hd h2,.sec-title,.sec-desc,
        .ft-grid,.ft-main,.ft-bt,.ft-left,.ft-right,.ft-qr-card,
        .hd-top,.lg,.lg h1,.lg p,.dn,.dn-item,
        .dr-n,.dr-h,.dr-f,.ov,.hb,
        .side,.side-card,.side-hd,.side-list,.side-contact,
        .pn-nav,.pn-title,.bc,.main,
        .ml-banner,.ml-track,.ml-word,.ml-words,.ml-item,
        .lang-bar,.hero-btns,.hero-en,.hero-stat,.hero-stat-sep,
        .scroll-ind,.hero-scroll,.hero-badge,.hero-accent-line,
        .ni-d,.news-date,.news-meta,.news-arrow,.news-item,
        .mix-card,.mix-thumb,.mix-body,.art-card,.art-thumb,.art-body,
        .nc-h,.nc-ic,.nc-nm,.nc-mr,.nl2,.nl2 li,.nl2 .td,
        .reg,.reg-in,.reg-ic,.reg-bd,.reg-btn,.reg-bd h3,.reg-bd p,
        .sec-t,.sec-m,.nf-img,.nf-bd h3,.nf-bd p,.nf-bd .dt,
        .ft-cl h4,.ft-bd h3,.ft-bd p,.ft-cl a,.ft-bt a,.ft-bt .s
        {min-width:0}

        /* 2. 所有标题/文本强制可换行 */
        h1,h2,h3,h4,h5,h6,p,span,a,li,div,
        .news-title,.mix-title,.art-title,.side-list a .tt,
        .card-list a .tt,.party-list a .tt,.nl2 a,.ni h4,
        .pg-banner-ct h1,.pg-banner-ct .en,.pg-banner-ct .sub,
        .hero h2,.hero-sub,.hero-en,.hero-stat .num,.hero-stat .lab,
        .art-hd h1,.art-body h2,.art-body p,.art-body li,
        .mag-feat-bd h3,.mag-feat-bd p,
        .sec-title,.sec-hd h2,.sec-hd .en,.sec-desc,
        .ft-bd h3,.ft-bd p,.ft-cl h4,.ft-cl a,.ft-bt,.ft-bt a,
        .reg-bd h3,.reg-bd p,.reg-bd .lab,
        .nf-bd h3,.nf-bd p,.nf-bd .dt,
        .lg h1,.lg p,
        .cta h2,.cta p,.cta-btns a,
        .st-num,.st-label,.st .lab,
        .path-step,.ml-item,
        .news-meta,.mix-meta,.art-meta
        {white-space:normal !important;word-break:break-word !important;overflow-wrap:break-word !important}
        /* 恢复二级菜单正常显示 */
        .dd{min-width:min(170px,100vw)}
        .dd a{white-space:nowrap !important;word-break:normal !important;overflow-wrap:normal !important;flex-wrap:nowrap !important}
        .dd a svg{flex-shrink:0}

        /* 3. 允许换行的 flex 布局 */
        .hd-top,.hero-btns,.cta-btns,.lang-bar,.news-meta,.mix-meta,.art-meta,
        .nl2 li,.ni,.nc-h,.reg-in,.sec-h,.ft-grid,.ft-main,
        .dn,.dr-n,.dr-h,.side-list a,.card-list a,.party-list a,
        .hero-stats,.path-flow,.stats-inner,.feat-grid,.country-grid,
        .mag-grid,.party-grid,.coop-grid,.alumni-grid,.activity-gallery,
        .pro,.adm,.gallery-grid,.ft-right
        {flex-wrap:wrap}

        /* 4. 图片/媒体安全 */
        img,svg,video,canvas,iframe{max-width:100%;height:auto}

        /* 5. 表格安全 */
        table{max-width:100%;display:block;overflow-x:auto}

        /* 6. 320px 以下极端窄屏专项 */
        @media(max-width:320px){
            .ctn{padding:0 12px !important}
            .hd-top{height:48px !important}
            .lg h1{font-size:.85rem !important;letter-spacing:.5px !important}
            .lg p{font-size:.6rem !important;letter-spacing:.5px !important}
            .lg-icon{width:32px !important;height:32px !important}
            .lg-icon img{width:100%;height:auto}
            .lg-icon svg{width:18px;height:18px}
            .hero h2{font-size:1.05rem !important;letter-spacing:.5px !important}
            .hero-sub{font-size:.72rem !important;letter-spacing:0 !important}
            .hero{min-height:240px !important;height:auto !important}
            .hero-body{padding:30px 12px !important}
            .hero-body-inner{padding:20px 12px 24px !important}
            .hero-stats{gap:10px !important;padding:0 12px 12px !important}
            .hero-stat .num{font-size:1rem !important}
            .hero-stat .lab{font-size:.55rem !important}
            .hero-stat-sep{display:none !important}
            .hero-btns a,.cta-btns a{padding:8px 18px !important;font-size:.76rem !important}
            .hero-btns,.cta-btns{gap:8px !important}
            .hero-en{font-size:.75rem !important;letter-spacing:0 !important}
            .hero-scroll,.scroll-ind{display:none !important}
            .hero-badge{font-size:.65rem !important;padding:4px 10px !important}
            .hero-accent-line{width:28px !important}
            .sec{padding:28px 0 !important}
            .sec-h{margin-bottom:16px !important}
            .sec-t,.sec-hd h2,.sec-title{font-size:.95rem !important;letter-spacing:.5px !important}
            .sec-hd .en{font-size:.68rem !important}
            .sec-m{font-size:.66rem !important}
            .news,.n2,.main,.intro-grid,.feat-grid,.country-grid,
            .mag-grid,.party-grid,.coop-grid,.alumni-grid,.activity-gallery,
            .pro-grid,.adm-grid,.gallery-grid,.stats-inner,.ft-grid,
            .cta3-grid
            {grid-template-columns:1fr !important;gap:14px !important}
            .nf-img{height:150px !important}
            .nf-bd{padding:14px !important}
            .nf-bd h3{font-size:.86rem !important}
            .nf-bd p{font-size:.74rem !important}
            .ni{padding:10px 12px !important;gap:10px !important}
            .ni-d{width:40px !important;padding:4px 0 !important}
            .ni-d .d{font-size:1rem !important}
            .ni-d .m{font-size:.55rem !important}
            .ni h4{font-size:.76rem !important}
            .nc-h{padding:12px 14px !important}
            .nc-nm{font-size:.8rem !important}
            .nc-ic{width:26px !important;height:26px !important}
            .nc-ic svg{width:14px;height:14px}
            .nl2{padding:4px 14px 12px !important}
            .nl2 li{padding:8px 0 !important;gap:8px !important}
            .nl2 a{font-size:.72rem !important}
            .nl2 .td{font-size:.62rem !important}
            .reg-in{padding:16px 14px !important;gap:12px !important}
            .reg-ic{width:40px !important;height:40px !important}
            .reg-ic svg{width:20px;height:20px}
            .reg-bd h3{font-size:.82rem !important}
            .reg-bd p{font-size:.68rem !important}
            .reg-btn{padding:7px 16px !important;font-size:.72rem !important}
            .pg-banner{min-height:160px !important}
            .pg-banner-ct{padding:24px 12px !important}
            .pg-banner-ct h1{font-size:.95rem !important;letter-spacing:1px !important}
            .pg-banner-ct .en{font-size:.75rem !important}
            .pg-banner-ct .sub{font-size:.62rem !important}
            .bc{padding:8px 0 !important;font-size:.66rem !important}
            .main{padding:20px 0 32px !important}
            .news-item{padding:10px 12px !important;gap:10px !important}
            .news-item.featured .feat-top{padding:12px !important}
            .news-item.featured .feat-excerpt{padding:0 12px 10px !important}
            .news-date{width:44px !important}
            .news-date .day{font-size:.9rem !important}
            .news-title{font-size:.78rem !important}
            .news-meta{gap:6px !important;font-size:.62rem !important}
            .side{gap:14px !important}
            .side-hd{padding:10px 14px !important}
            .side-list{padding:4px 14px 8px !important}
            .side-list a{padding:8px 0 !important}
            .side-list a .tt{font-size:.74rem !important}
            .side-contact{padding:16px 14px !important}
            .side-contact h4{font-size:.82rem !important}
            .art-hd h1{font-size:1.05rem !important}
            .art-body{font-size:.8rem !important}
            .art-body h2{font-size:.95rem !important}
            .art-body p{font-size:.78rem !important}
            .pn-nav{padding:10px 12px !important;gap:8px !important}
            .pn-title{font-size:.72rem !important}
            .mix-card.thumb .mix-thumb{width:120px !important;height:90px !important}
            .mix-card.thumb{flex-direction:row !important}
            .mix-card.thumb .mix-body{padding:10px !important}
            .mix-title{font-size:.76rem !important}
            .mix-meta{gap:6px !important;font-size:.6rem !important}
            .art-card{flex-direction:column !important}
            .art-thumb{width:100% !important;height:140px !important}
            .art-body{padding:12px !important}
            .art-title{font-size:.8rem !important}
            .art-meta{gap:6px !important;font-size:.6rem !important}
            .ml-word{display:none !important}
            .ml-item{font-size:.78rem !important}
            .ml-banner{padding:10px 0 !important}
            .path-flow{gap:6px !important}
            .path-step{min-width:0 !important;padding:0 4px !important}
            .feat{padding:18px 14px !important}
            .country{min-height:160px !important}
            .mag-feat{min-height:200px !important}
            .mag-feat-bd{padding:14px !important}
            .mag-feat-bd h3{font-size:.86rem !important}
            .stats{margin-top:-24px !important}
            .st{padding:14px 8px !important}
            .st-num{font-size:1.1rem !important}
            .st .lab{font-size:.55rem !important}
            .cta{padding:36px 0 !important}
            .cta h2{font-size:1.05rem !important;letter-spacing:1px !important}
            .cta p{font-size:.74rem !important}
            .pro{grid-template-columns:1fr !important}
            .pro-img{height:140px !important}
            .gal{height:140px !important}
            .adm{padding:16px !important}
            .ft-main{padding:20px 0 16px !important}
            .ft-grid{gap:16px !important}
            .ft-bd h3{font-size:.8rem !important}
            .ft-bd p{font-size:.68rem !important}
            .ft-cl h4{font-size:.68rem !important}
            .ft-cl a{font-size:.66rem !important}
            .ft-qr-card{padding:12px !important}
            .ft-qr-card img{width:80px !important;height:80px !important}
            .ft-bt{padding:10px 0 !important;font-size:.6rem !important}
            .ft-bt .s{margin:0 4px !important}
            .hb{width:36px !important;height:36px !important}
            .hb span{width:16px !important}
            .dr{width:100vw !important}
            .dr-h{padding:14px 14px !important}
            .dr-n{padding:6px 10px !important}
            .dr-n a{padding:10px 12px !important;font-size:.8rem !important}
            .dr-f{padding:12px 14px !important;font-size:.6rem !important}
        }

        /* 7. 超极端窄屏（280px 以下）兜底 */
        @media(max-width:280px){
            .ctn{padding:0 8px !important}
            .hero h2{font-size:.9rem !important}
            .hero-sub{font-size:.65rem !important}
            .sec-t,.sec-hd h2,.sec-title{font-size:.85rem !important}
            .lg h1{font-size:.78rem !important}
            .lg p{display:none}
            .lg-icon{width:28px !important;height:28px !important}
            .hd-top{height:44px !important}
            .ni-d{display:none}
            .ni{padding:10px 8px !important}
            .nl2 .td{display:none}
            .ft-qr-card{display:none}
            .reg-ic{display:none}
            .nc-ic{display:none}
        }