        /* ═══════ HERO ═══════ */
        .hero{position:relative;height:480px;overflow:hidden}
        .hero-bg{position:absolute;inset:0;background:url("/images/hero-bg.png") center/cover no-repeat}
        .hero-ov{position:absolute;inset:0;background:linear-gradient(175deg,rgba(78,26,56,.8) 0%,rgba(50,18,36,.65) 55%,rgba(20,6,14,.8) 100%)}
        .hero-body{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#fff;padding:0 24px}
        .hero h2{
            font-family:"Noto Serif SC",serif;font-size:2.4rem;font-weight:700;
            letter-spacing:6px;line-height:1.4;
        }
        .hero h2 em{font-style:normal;color:#e8b4c8}
        .hero-sub{font-size:1rem;color:rgba(255,255,255,.6);max-width:520px;margin-top:16px;line-height:1.9;letter-spacing:.8px}
        .hero-line{width:40px;height:2px;background:rgba(255,255,255,.25);border-radius:1px;margin:28px auto 0}

        /* ═══════ SECTION ═══════ */
        .sec{padding:56px 0 48px}
        .sec-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
        .sec-t{
            font-family:"Noto Serif SC",serif;font-size:1.1rem;font-weight:700;color:var(--t1);
            display:flex;align-items:center;gap:10px;
            padding-left:14px;border-left:3px solid var(--p);
        }
        .sec-m{font-size:.74rem;color:var(--t3);display:flex;align-items:center;gap:3px;transition:color .25s}
        .sec-m:hover{color:var(--p)}
        .sec-m svg{width:13px;height:13px;fill:currentColor;transition:transform .25s}
        .sec-m:hover svg{transform:translateX(2px)}

        /* ═══════ NEWS ═══════ */
        .news{display:grid;grid-template-columns:1fr 1fr;gap:24px}
        .nf{
            background:var(--w);border-radius:var(--r);overflow:hidden;
            border:1px solid var(--bd);transition:all .3s;
        }
        .nf:hover{border-color:var(--p-line);box-shadow:0 4px 20px rgba(114,39,81,.06)}
        .nf-img{height:240px;overflow:hidden;position:relative}
        .nf-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
        .nf:hover .nf-img img{transform:scale(1.04)}
        .nf-img .tag{
            position:absolute;top:14px;left:14px;
            background:var(--p);color:#fff;font-size:.68rem;
            padding:3px 12px;border-radius:4px;letter-spacing:.5px;
        }
        .nf-bd{padding:20px}
        .nf-bd h3{font-size:.98rem;font-weight:600;line-height:1.65;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
        .nf-bd h3:hover{color:var(--p)}
        .nf-bd p{font-size:.8rem;color:var(--t2);line-height:1.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
        .nf-bd .dt{margin-top:12px;font-size:.7rem;color:var(--t3)}

        .nl{background:var(--w);border-radius:var(--r);border:1px solid var(--bd);overflow:hidden}
        .ni{display:flex;align-items:center;gap:16px;padding:15px 20px;border-bottom:1px solid var(--bd);transition:all .2s}
        .ni:last-of-type {border-bottom:none}
        .ni:hover{background:var(--p-bg)}
        .ni-d{flex-shrink:0;width:48px;text-align:center;padding:6px 0;background:var(--p-bg);border-radius:6px}
        .ni-d .d{font-size:1.3rem;font-weight:800;color:var(--p);line-height:1}
        .ni-d .m{font-size:.6rem;color:var(--p-l);margin-top:2px}
        .ni h4{flex:1;min-width:0;font-size:.82rem;font-weight:500;line-height:1.55;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
        .ni h4:hover{color:var(--p)}
        .ni .go{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .2s;flex-shrink:0}
        .ni .go svg{width:11px;height:11px;fill:var(--p)}
        .ni:hover .go{opacity:1;background:var(--p)}
        .ni:hover .go svg{fill:#fff}

        /* ═══════ NOTICES ═══════ */
        .n2{display:grid;grid-template-columns:1fr 1fr;gap:24px}
        .nc{
            background:var(--w);border-radius:var(--r);border:1px solid var(--bd);
            overflow:hidden;transition:all .3s;position:relative;
        }
        .nc:hover{border-color:var(--p-line);box-shadow:0 4px 20px rgba(114,39,81,.06)}
        .nc-h{
            padding:16px 20px 12px;display:flex;align-items:center;gap:10px;
            border-bottom:1px solid var(--bd);
        }
        .nc-ic{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
        .nc-ic svg{width:16px;height:16px;fill:#fff}
        .nc-ic.ip{background:var(--p)}
        .nc-ic.io{background:var(--accent)}
        .nc-nm{font-size:.88rem;font-weight:700;flex:1}
        .nc-mr{font-size:.68rem;color:var(--t3);padding:3px 8px;border-radius:8px;transition:all .2s}
        .nc-mr:hover{color:var(--p);background:var(--p-bg)}
        .nc-mr svg{width:10px;height:10px;fill:currentColor}
        .nl2{padding:4px 20px 16px}
        .nl2 li{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px dashed var(--bd);transition:all .2s}
        .nl2 li:last-child{border-bottom:none}
        .nl2 li::before{content:'';width:4px;height:4px;border-radius:1px;background:var(--p-line);flex-shrink:0;margin-top:9px;transform:rotate(45deg);transition:all .2s}
        .nl2 li:hover::before{background:var(--p);transform:rotate(45deg) scale(1.4)}
        .nl2 li:hover{padding-left:4px}
        .nl2 a{flex:1;min-width:0;font-size:.78rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s}
        .nl2 a:hover{color:var(--p)}
        .nl2 .td{font-size:.66rem;color:var(--t3);flex-shrink:0;margin-top:2px;font-variant-numeric:tabular-nums}

        /* ═══════ REGULATION ═══════ */
        .reg{
            background:linear-gradient(135deg,var(--p-d),var(--p) 60%,var(--p-l));
            border-radius:var(--r);color:#fff;position:relative;overflow:hidden;
            transition:all .3s;
        }
        .reg:hover{box-shadow:0 6px 28px rgba(114,39,81,.2)}
        .reg::after{
            content:'';position:absolute;right:-40px;top:-40px;width:180px;height:180px;
            border-radius:50%;background:rgba(255,255,255,.04);pointer-events:none;
        }
        .reg-in{position:relative;z-index:1;display:flex;align-items:center;gap:20px;padding:24px 28px}
        .reg-ic{
            width:48px;height:48px;border-radius:12px;flex-shrink:0;
            background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);
            display:flex;align-items:center;justify-content:center;
        }
        .reg-ic svg{width:24px;height:24px;fill:#fff}
        .reg-bd{flex:1;min-width:0}
        .reg-bd .lab{font-size:.62rem;letter-spacing:2px;color:rgba(255,255,255,.4);text-transform:uppercase;margin-bottom:3px}
        .reg-bd h3{font-size:.92rem;font-weight:600;line-height:1.5}
        .reg-bd h3:hover{color:var(--g1)}
        .reg-bd p{font-size:.72rem;color:rgba(255,255,255,.45);margin-top:3px}
        .reg-btn{
            flex-shrink:0;padding:9px 22px;border-radius:8px;font-size:.78rem;font-weight:600;
            color:var(--p);background:#fff;transition:all .3s;white-space:nowrap;
            display:inline-flex;align-items:center;gap:6px;
        }
        .reg-btn:hover{box-shadow:0 4px 16px rgba(0,0,0,.15);transform:translateY(-1px)}
        .reg-btn svg{width:14px;height:14px;fill:var(--p)}

        /* ═══════ FOOTER ═══════ */
        .ft{margin-top:auto;background:var(--p-d);color:rgba(255,255,255,.4)}
        .ft-main{padding:40px 0 24px;border-bottom:1px solid rgba(255,255,255,.06)}
        .ft-grid{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:40px}
        .ft-bd h3{color:#fff;font-size:.9rem;font-weight:600;letter-spacing:1px;margin-bottom:8px}
        .ft-bd p{font-size:.74rem;color:rgba(255,255,255,.3);line-height:1.9}
        .ft-cl h4{color:rgba(255,255,255,.6);font-size:.74rem;font-weight:600;margin-bottom:12px;padding-bottom:8px;position:relative}
        .ft-cl h4::after{content:'';position:absolute;bottom:0;left:0;width:14px;height:2px;background:var(--accent);border-radius:1px}
        .ft-cl a{display:block;font-size:.72rem;color:rgba(255,255,255,.3);padding:4px 0;transition:all .25s}
        .ft-cl a:hover{color:rgba(255,255,255,.7);padding-left:4px}
        .ft-bt{padding:14px 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}

        /* ═══════ RSP ═══════ */
        @media(max-width:1024px){
            .news{grid-template-columns:1fr}
            .hero{height:400px}
            .hero h2{font-size:2rem;letter-spacing:3px}
            .ft-grid{grid-template-columns:1fr 1fr;gap:28px}
        }
        @media(max-width:768px){
            .dn{display:none}
            .hb{display:flex}
            .hd-top{height:56px}
            .hero{height:340px}
            .hero h2{font-size:1.5rem;letter-spacing:2px}
            .n2{grid-template-columns:1fr}
            .stat .n{font-size:1.35rem}
            .reg-in{flex-direction:column;align-items:flex-start;gap:14px;padding:20px 22px}
            .reg-btn{align-self:flex-start}
            .ft-grid{grid-template-columns:1fr;gap:20px}
            .ft-main{padding:28px 0 18px}
        }
        @media(max-width:480px){
            .hero{height:280px}
            .hero h2{font-size:1.25rem;letter-spacing:1px}
            .nf-img{height:180px}
        }