/* roulang page: index */
:root{--green:#167a4a;--green-dark:#10271d;--orange:#f0643b;--ink:#18201c;--muted:#65716a;--bg:#f5f7f4;--white:#fff;--line:#dde4df;--radius:8px;--shadow:0 4px 18px rgba(16,39,29,.07);--max:1240px}
    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;background:var(--bg);color:var(--ink);line-height:1.75;letter-spacing:0}
    a{color:inherit;text-decoration:none}
    img{display:block;width:100%;object-fit:cover}
    button,input{font:inherit}
    button{cursor:pointer}
    .container{width:min(var(--max),calc(100% - 48px));margin:auto}
    .site-header{height:76px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
    .nav-wrap{height:100%;display:flex;align-items:center;gap:42px}
    .logo{font-size:25px;font-weight:800;color:var(--green);display:flex;align-items:center;gap:9px;white-space:nowrap}
    .logo-mark{width:27px;height:27px;border:3px solid var(--green);border-radius:50% 50% 50% 4px;transform:rotate(-45deg);position:relative}
    .logo-mark:after{content:"";position:absolute;width:8px;height:3px;background:var(--orange);right:-4px;bottom:3px;transform:rotate(45deg)}
    .nav{display:flex;align-items:center;gap:27px;flex:1}
    .nav a{font-size:15px;color:#455149;padding:25px 0;position:relative}
    .nav a:hover,.nav a.active{color:var(--green);font-weight:700}
    .nav a.active:after{content:"";position:absolute;height:3px;background:var(--green);left:0;right:0;bottom:0}
    .search{border:1px solid var(--line);background:white;border-radius:6px;padding:8px 13px;color:var(--muted)}
    .menu-btn{display:none;background:none;border:0;font-size:24px;color:var(--green)}
    main section{padding:78px 0}
    .hero{padding:28px 0 38px}
    .hero-grid{display:grid;grid-template-columns:1.65fr .85fr;gap:18px}
    .hero-main{min-height:480px;border-radius:var(--radius);overflow:hidden;position:relative;background:url('/assets/images/34adb0d986d0a797.webp') center/cover}
    .hero-main:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,32,23,.88),rgba(12,32,23,.08) 70%)}
    .hero-copy{position:absolute;z-index:1;left:42px;bottom:38px;color:#fff;max-width:650px}
    .eyebrow,.tag{display:inline-flex;align-items:center;background:var(--orange);color:white;border-radius:999px;padding:3px 11px;font-size:13px;font-weight:700}
    h1{font-size:48px;line-height:1.2;margin:15px 0 14px;letter-spacing:0}
    .hero-copy p{font-size:17px;max-width:580px;color:#edf5ef}
    .btn{display:inline-block;border:1px solid var(--green);padding:10px 19px;border-radius:6px;font-weight:700;transition:.2s;margin-top:22px}
    .btn-primary{background:var(--green);color:white}
    .btn-primary:hover{background:#0e6039;transform:translateY(-2px)}
    .btn-light{background:white;color:var(--green);border-color:white}
    .btn-outline{color:var(--green);background:transparent}
    .btn-outline:hover{background:var(--green);color:white}
    .side-news{display:grid;grid-template-rows:1fr 1fr;gap:18px}
    .side-card{position:relative;overflow:hidden;border-radius:var(--radius);min-height:231px;color:white}
    .side-card img{height:100%}
    .side-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,28,19,.85),transparent)}
    .side-card div{position:absolute;z-index:1;bottom:20px;left:22px;right:20px}
    .side-card h3{font-size:21px;line-height:1.35;margin-top:8px}
    .status-bar{margin-top:18px;background:var(--green-dark);color:white;border-radius:6px;display:flex;align-items:center;gap:28px;padding:13px 20px;overflow:auto;white-space:nowrap}
    .status-bar strong{color:#a9e1bd}.status-item{padding-right:28px;border-right:1px solid rgba(255,255,255,.18);font-size:14px}
    .section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}
    h2{font-size:31px;line-height:1.25}
    .section-head p{color:var(--muted);margin-top:8px}
    .more{color:var(--green);font-weight:700;font-size:14px}
    .events{background:white;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
    .date-tabs{display:flex;gap:10px;overflow:auto;margin-bottom:18px}
    .date-tabs span{padding:9px 18px;border:1px solid var(--line);border-radius:6px;white-space:nowrap;color:var(--muted)}
    .date-tabs span.active{background:var(--green);color:white;border-color:var(--green)}
    .event-row{display:grid;grid-template-columns:100px 100px 1fr 110px 90px;align-items:center;border-bottom:1px solid var(--line);padding:16px 8px;gap:18px}
    .event-row:last-child{border:0}.sport{font-weight:700;color:var(--green)}.match{font-weight:700}.event-status{font-size:13px;color:var(--orange)}
    .feature-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:18px}
    .article-card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.2s}
    .article-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
    .article-card img{aspect-ratio:16/9}
    .article-body{padding:19px}.article-body h3{font-size:19px;line-height:1.45;margin:9px 0}.article-body p{font-size:14px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
    .meta{display:flex;gap:12px;color:var(--muted);font-size:12px;margin-top:12px}.feature-main img{aspect-ratio:16/8}.feature-main h3{font-size:24px}
    .timeline{display:grid;grid-template-columns:1fr 1fr;gap:20px}
    .timeline-item{background:white;border-left:4px solid var(--orange);padding:22px 24px;border-radius:0 var(--radius) var(--radius) 0;border-bottom:1px solid var(--line)}
    .timeline-item time{color:var(--orange);font-size:13px;font-weight:700}.timeline-item h3{margin:5px 0;font-size:19px}
    .football-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:stretch}
    .visual-story{min-height:410px;position:relative;border-radius:var(--radius);overflow:hidden;color:white}
    .visual-story img{height:100%}.visual-story:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,34,23,.86),transparent 70%)}
    .visual-story .story-text{position:absolute;z-index:1;bottom:24px;left:27px;right:27px}.story-text h3{font-size:26px;line-height:1.3;margin:10px 0}
    .news-list{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:8px 22px}
    .news-list article{padding:19px 0;border-bottom:1px solid var(--line)}.news-list article:last-child{border:0}.news-list h3{font-size:18px}.news-list p{font-size:14px;color:var(--muted)}
    .basketball{background:var(--green-dark);color:white}.basketball .section-head p{color:#b8c8be}
    .basket-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px}.basket-card{background:#18382b;border-radius:var(--radius);overflow:hidden}.basket-card img{aspect-ratio:4/3}.basket-card .article-body{padding:18px}.basket-card p{color:#bfd0c5}
    .tactics{background:#eef3ee}.tactic-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px}.board{background:var(--green-dark);border-radius:var(--radius);padding:24px;color:white;min-height:260px;position:relative;overflow:hidden}.pitch{border:1px solid rgba(255,255,255,.45);height:180px;position:relative}.pitch:before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:1px solid rgba(255,255,255,.4)}.dot{position:absolute;width:13px;height:13px;background:var(--orange);border-radius:50%;border:2px solid white}.d1{left:22%;top:25%}.d2{left:46%;top:45%}.d3{right:20%;top:30%}.data-box{background:white;padding:22px;border:1px solid var(--line);border-radius:var(--radius)}.data-number{font-size:38px;font-weight:800;color:var(--green)}
    .plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan{background:white;border:1px solid var(--line);padding:22px;border-radius:var(--radius)}.plan h3{font-size:20px}.plan ul{list-style:none;margin-top:15px}.plan li{padding:8px 0;border-top:1px solid var(--line);font-size:14px}.plan li b{color:var(--green);margin-right:7px}
    .fitness{background:white}.filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.filter span{border:1px solid var(--line);padding:6px 13px;border-radius:999px;font-size:13px}.filter span.active{background:#e1f0e7;color:var(--green);border-color:#b7dbc5}.fitness-list{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.fitness-item{border-top:3px solid var(--green);padding:18px;background:var(--bg)}.fitness-item h3{font-size:18px}.fitness-item p{font-size:14px;color:var(--muted);margin-top:7px}
    .gear-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gear-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:20px}.gear-card img{aspect-ratio:16/10;border-radius:5px;margin-bottom:15px}.gear-card h3{font-size:20px}.gear-card dl{margin-top:12px;font-size:14px}.gear-card dt{color:var(--muted);display:inline}.gear-card dd{display:inline;font-weight:700;margin-right:10px}
    .health-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.health-item{background:#fff;border:1px solid var(--line);padding:22px;border-radius:var(--radius)}.health-item strong{font-size:20px;color:var(--green)}.health-item p{color:var(--muted);margin-top:8px}
    .city{background:url('/assets/images/93821047f451075c.webp') center/cover;position:relative;color:white}.city:before{content:"";position:absolute;inset:0;background:rgba(16,39,29,.7)}.city .container{position:relative}.city .section-head p{color:#d8e5dc}.city-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.city-card{border:1px solid rgba(255,255,255,.35);padding:22px;background:rgba(255,255,255,.08);border-radius:var(--radius)}.city-card h3{font-size:20px}.city-card p{color:#dce9df;font-size:14px;margin-top:7px}
    .story-band{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:center}.story-band img{aspect-ratio:4/3;border-radius:var(--radius)}.quote{font-size:28px;font-weight:700;line-height:1.5}.quote:before{content:"“";color:var(--orange);font-size:60px;line-height:.5;vertical-align:-20px;margin-right:5px}
    .faq{background:white}.faq-list{max-width:900px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:19px 0}.faq summary{cursor:pointer;font-size:18px;font-weight:700;list-style:none;display:flex;justify-content:space-between}.faq summary:after{content:"+";color:var(--green);font-size:25px}.faq details[open] summary:after{content:"−"}.faq details p{color:var(--muted);padding:12px 30px 0 0}
    footer{background:var(--green-dark);color:#d9e8dc;padding:54px 0 22px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:30px}.footer-logo{color:white}.footer-grid h3{color:white;font-size:16px;margin-bottom:14px}.footer-grid a{display:block;color:#b6c9bb;font-size:14px;margin:7px 0}.footer-grid a:hover{color:white}.footer-intro{color:#afc5b5;font-size:14px;max-width:290px;margin-top:14px}.copyright{border-top:1px solid rgba(255,255,255,.14);margin-top:38px;padding-top:17px;color:#91a99a;font-size:12px}
    :focus-visible{outline:3px solid #f6a18c;outline-offset:3px}
    @media(max-width:992px){.nav-wrap{gap:22px}.nav{gap:16px}.feature-grid,.basket-grid{grid-template-columns:1fr 1fr}.feature-main{grid-column:span 2}.tactic-grid{grid-template-columns:1fr 1fr}.tactic-grid .board{grid-column:span 2}.fitness-list{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}
    @media(max-width:768px){.site-header{height:64px}.container{width:min(100% - 30px,var(--max))}.menu-btn{display:block;margin-left:auto}.nav{display:none;position:absolute;top:64px;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:10px 20px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.nav.open{display:flex}.nav a{padding:11px 0}.nav a.active:after{bottom:4px}.search{display:none}.hero-grid,.football-layout,.story-band{grid-template-columns:1fr}.hero-main{min-height:470px}.side-news{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.side-card{min-height:190px}.event-row{grid-template-columns:65px 75px 1fr 70px;gap:8px}.event-row a{display:none}main section{padding:58px 0}.timeline,.health-grid,.city-grid,.gear-grid{grid-template-columns:1fr 1fr}.plan-grid{grid-template-columns:1fr}.story-band{gap:24px}.quote{font-size:24px}}
    @media(max-width:520px){h1{font-size:34px}.hero-copy{left:23px;right:20px;bottom:25px}.hero-copy p{font-size:15px}.side-news,.feature-grid,.basket-grid,.tactic-grid,.fitness-list,.health-grid,.city-grid,.gear-grid{grid-template-columns:1fr}.feature-main,.tactic-grid .board{grid-column:auto}.side-card{min-height:180px}.section-head{display:block}.section-head .more{display:inline-block;margin-top:12px}.event-row{grid-template-columns:58px 1fr 65px}.event-row .match{font-size:14px}.status-bar{gap:18px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}.btn{width:100%;text-align:center}.timeline-item{padding:17px}.quote{font-size:21px}}

/* roulang page: category1 */
:root{--green:#167a4a;--green-dark:#10271d;--orange:#f0643b;--ink:#18201c;--muted:#65716a;--bg:#f5f7f4;--white:#fff;--line:#dde4df;--radius:8px;--shadow:0 4px 18px rgba(16,39,29,.07);--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;background:var(--bg);color:var(--ink);line-height:1.75;letter-spacing:0}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}button{font:inherit;cursor:pointer}.container{width:min(var(--max),calc(100% - 48px));margin:auto}
.site-header{height:76px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.nav-wrap{height:100%;display:flex;align-items:center;gap:42px}.logo{font-size:25px;font-weight:800;color:var(--green);display:flex;align-items:center;gap:9px;white-space:nowrap}.logo-mark{width:27px;height:27px;border:3px solid var(--green);border-radius:50% 50% 50% 4px;transform:rotate(-45deg);position:relative}.logo-mark:after{content:"";position:absolute;width:8px;height:3px;background:var(--orange);right:-4px;bottom:3px;transform:rotate(45deg)}.nav{display:flex;align-items:center;gap:27px;flex:1}.nav a{font-size:15px;color:#455149;padding:25px 0;position:relative}.nav a:hover,.nav a.active{color:var(--green);font-weight:700}.nav a.active:after{content:"";position:absolute;height:3px;background:var(--green);left:0;right:0;bottom:0}.search{border:1px solid var(--line);background:#fff;border-radius:6px;padding:8px 13px;color:var(--muted)}.menu-btn{display:none;background:none;border:0;font-size:24px;color:var(--green)}
main section{padding:76px 0}.page-head{padding:48px 0 38px;background:#fff;border-bottom:1px solid var(--line)}.crumb{font-size:13px;color:var(--muted);margin-bottom:18px}.crumb a{color:var(--green)}h1{font-size:48px;line-height:1.2;margin:0 0 14px;font-weight:800}.page-head p{max-width:720px;color:var(--muted);font-size:17px;margin:0}.head-rule{height:5px;width:112px;background:var(--orange);margin-top:28px;border-radius:999px}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}.section-head h2{font-size:30px;line-height:1.3;margin:0}.section-head p{color:var(--muted);margin:7px 0 0}.date-tabs{display:flex;gap:10px;overflow:auto;padding-bottom:12px;margin-bottom:15px}.date-tabs span{flex:0 0 auto;border:1px solid var(--line);background:#fff;border-radius:6px;padding:9px 18px;color:var(--muted);font-size:14px}.date-tabs span:first-child{background:var(--green);border-color:var(--green);color:#fff}.event-table{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.event-row{display:grid;grid-template-columns:110px 105px 1fr 140px 95px;gap:16px;align-items:center;padding:17px 22px;border-bottom:1px solid var(--line)}.event-row:last-child{border-bottom:0}.event-row strong{font-size:16px}.event-row small{color:var(--muted)}.status{color:var(--green);font-size:13px;font-weight:700}.tag{display:inline-flex;background:#fff0eb;color:var(--orange);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}.latest-layout{display:grid;grid-template-columns:1.35fr .85fr;gap:26px}.timeline{border-left:2px solid var(--line);padding-left:25px}.timeline article{position:relative;padding:0 0 28px}.timeline article:before{content:"";position:absolute;width:11px;height:11px;border:3px solid var(--orange);background:var(--bg);border-radius:50%;left:-32px;top:7px}.timeline time{font-size:13px;color:var(--orange);font-weight:700}.timeline h3{font-size:21px;line-height:1.4;margin:7px 0}.timeline p{color:var(--muted);margin:0;font-size:15px}.side-news{background:var(--green-dark);color:#fff;border-radius:var(--radius);padding:25px}.side-news h3{font-size:21px;margin-top:0}.side-news a{display:block;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.18)}.side-news a:last-child{border:0}.side-news small{color:#b9c9bf}.duel{background:#10271d;color:#fff}.duel-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.duel-card{min-height:255px;padding:28px;background-size:cover;background-position:center;border-radius:var(--radius);position:relative;overflow:hidden}.duel-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,25,17,.9),rgba(8,25,17,.12))}.duel-card div{position:relative;margin-top:125px}.duel-card h3{font-size:24px;line-height:1.35;margin:8px 0}.calendar{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:17px}.calendar-grid span{min-height:75px;border:1px solid var(--line);padding:9px;font-size:13px;color:var(--muted)}.calendar-grid span strong{display:block;color:var(--ink);font-size:16px}.calendar-grid .marked{border-top:3px solid var(--orange);background:#fffaf8}.sport-review{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.review-card img{aspect-ratio:16/9}.review-card div{padding:19px}.review-card h3{font-size:19px;line-height:1.4;margin:7px 0}.review-card p{font-size:14px;color:var(--muted);margin:0}.more{text-align:center;margin-top:30px}.btn{display:inline-block;border:1px solid var(--green);padding:10px 22px;border-radius:6px;font-weight:700;transition:.2s}.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{background:#0e6039;transform:translateY(-2px)}.btn-outline{color:var(--green)}.btn-outline:hover{background:var(--green);color:#fff}.editor-note{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.editor-note img{height:270px;border-radius:var(--radius)}.editor-note p{color:var(--muted);font-size:16px}.note-list{padding:0;margin:18px 0 0;list-style:none}.note-list li{padding:10px 0;border-bottom:1px solid var(--line)}.note-list li:before{content:"•";color:var(--orange);font-weight:700;margin-right:10px}
footer{background:var(--green-dark);color:#d9e6dc;padding:54px 0 20px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:35px}.footer-logo{color:#fff}.footer-logo .logo-mark{border-color:#fff}.footer-intro{max-width:280px;color:#aebfb3;font-size:14px;margin-top:18px}.footer-grid h3{font-size:16px;color:#fff;margin:2px 0 14px}.footer-grid a:not(.logo){display:block;color:#b9c9bf;font-size:14px;margin:8px 0}.footer-grid a:hover{color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.16);margin-top:36px;padding-top:17px;color:#98aea0;font-size:13px}
:focus-visible{outline:3px solid rgba(240,100,59,.5);outline-offset:3px}
@media(max-width:900px){.nav-wrap{gap:20px}.nav{gap:15px}.event-row{grid-template-columns:85px 85px 1fr 80px}.event-row .hide-md{display:none}.latest-layout,.editor-note{grid-template-columns:1fr}.footer-grid{grid-template-columns:2fr 1fr 1fr}}
@media(max-width:700px){.container{width:min(100% - 30px,var(--max))}.site-header{height:64px}.nav{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:10px 20px;flex-direction:column;align-items:flex-start;gap:0}.nav.open{display:flex}.nav a{padding:10px 0;width:100%}.nav a.active:after{bottom:3px;right:auto;width:35px}.search{margin-left:auto}.menu-btn{display:block}.page-head{padding:34px 0}.page-head h1{font-size:36px}.page-head p{font-size:15px}main section{padding:52px 0}.section-head{display:block}.section-head h2{font-size:26px}.section-head p{font-size:14px}.event-row{grid-template-columns:70px 1fr 62px;gap:10px;padding:14px 12px}.event-row .hide-sm{display:none}.duel-grid,.sport-review{grid-template-columns:1fr}.calendar{padding:14px}.calendar-grid{gap:4px}.calendar-grid span{min-height:58px;padding:5px;font-size:11px}.calendar-grid span strong{font-size:14px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:390px){.footer-grid{grid-template-columns:1fr}.search{font-size:13px;padding:6px 8px}.page-head h1{font-size:32px}}

/* roulang page: category2 */
:root{--green:#167a4a;--green-dark:#10271d;--orange:#f0643b;--ink:#18201c;--muted:#65716a;--bg:#f5f7f4;--white:#fff;--line:#dde4df;--radius:8px;--shadow:0 4px 18px rgba(16,39,29,.07);--max:1240px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;background:var(--bg);color:var(--ink);line-height:1.75;letter-spacing:0}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;object-fit:cover}
button,input{font:inherit}
button{cursor:pointer}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-weight:800;line-height:1.3}
.container{width:min(var(--max),calc(100% - 48px));margin:auto}
.site-header{height:76px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.nav-wrap{height:100%;display:flex;align-items:center;gap:42px}
.logo{font-size:25px;font-weight:800;color:var(--green);display:flex;align-items:center;gap:9px;white-space:nowrap}
.logo-mark{width:27px;height:27px;border:3px solid var(--green);border-radius:50% 50% 50% 4px;transform:rotate(-45deg);position:relative;display:inline-block;flex:0 0 auto}
.logo-mark:after{content:"";position:absolute;width:8px;height:3px;background:var(--orange);right:-4px;bottom:3px;transform:rotate(45deg)}
.nav{display:flex;align-items:center;gap:27px;flex:1}
.nav a{font-size:15px;color:#455149;padding:25px 0;position:relative}
.nav a:hover,.nav a.active{color:var(--green);font-weight:700}
.nav a.active:after{content:"";position:absolute;height:3px;background:var(--green);left:0;right:0;bottom:0}
.search{border:1px solid var(--line);background:white;border-radius:6px;padding:8px 13px;color:var(--muted);transition:.2s}
.search:hover{border-color:var(--green);color:var(--green)}
.menu-btn{display:none;background:none;border:0;font-size:24px;color:var(--green)}
a:focus-visible,button:focus-visible{outline:3px solid rgba(240,100,59,.45);outline-offset:3px}
main section{padding:74px 0}
.breadcrumbs{display:flex;gap:9px;align-items:center;font-size:14px;color:var(--muted);margin-bottom:28px}
.breadcrumbs a:hover{color:var(--green)}
.page-head{position:relative;padding:56px 0 64px;background:var(--white);border-bottom:1px solid var(--line);overflow:hidden}
.page-head:before,.page-head:after{content:"";position:absolute;border:2px solid rgba(22,122,74,.13);border-radius:50%}
.page-head:before{width:310px;height:310px;right:8%;top:-145px}
.page-head:after{width:170px;height:170px;right:20%;bottom:-112px}
.pitch-line{position:absolute;right:7%;top:47%;width:290px;height:2px;background:rgba(22,122,74,.2)}
.pitch-line:after{content:"";position:absolute;width:56px;height:56px;border:2px solid rgba(22,122,74,.2);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
.head-copy{max-width:790px;position:relative;z-index:1}
.kicker,.tag{display:inline-flex;align-items:center;border-radius:999px;font-size:13px;font-weight:700}
.kicker{color:var(--green);background:#e8f2ec;padding:4px 12px;margin-bottom:14px}
.page-head h1{font-size:48px;margin-bottom:16px}
.page-head p{font-size:18px;color:var(--muted);max-width:760px;margin-bottom:14px}
.update{font-size:13px;color:var(--green);font-weight:700}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}
.section-head h2{font-size:32px;margin-bottom:7px}
.section-head p{color:var(--muted);margin-bottom:0;max-width:690px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--green);padding:10px 19px;border-radius:6px;font-weight:700;transition:.2s}
.btn-primary{background:var(--green);color:white}
.btn-primary:hover{background:#0e6039;color:#fff;transform:translateY(-2px)}
.btn-outline{color:var(--green);background:transparent}
.btn-outline:hover{background:var(--green);color:#fff}
.feature-story{display:grid;grid-template-columns:1.55fr .75fr;background:var(--green-dark);border-radius:var(--radius);overflow:hidden;color:white}
.feature-image{position:relative;min-height:440px}
.feature-image img{height:100%;position:absolute;inset:0}
.feature-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 58%,rgba(16,39,29,.6))}
.feature-copy{padding:48px 38px;align-self:center}
.tag{background:var(--orange);color:#fff;padding:3px 11px}
.feature-copy h2{font-size:32px;margin:15px 0}
.feature-copy p{color:#cbd8d0}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:25px}
.metric{border-top:1px solid rgba(255,255,255,.22);padding-top:13px}
.metric strong{display:block;font-size:17px}
.metric span{font-size:12px;color:#afc3b6}
.article-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.article-row{display:grid;grid-template-columns:190px 1fr;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.2s}
.article-row:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.article-row img{height:100%;min-height:190px}
.article-body{padding:21px}
.article-body h3{font-size:20px;margin:8px 0}
.article-body p{font-size:14px;color:var(--muted);margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:12px}
.soft-section{background:#edf2ee;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.team-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px}
.team-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.2s}
.team-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.team-card img{aspect-ratio:16/10}
.team-card div{padding:20px}
.team-card h3{font-size:20px;margin:9px 0}
.team-card p{font-size:14px;color:var(--muted);margin:0}
.team-card:first-child img{aspect-ratio:16/8}
.player-list{display:grid;gap:14px}
.player-card{display:grid;grid-template-columns:112px 1fr auto;align-items:center;gap:22px;padding:16px;background:#fff;border-bottom:1px solid var(--line)}
.player-card img{width:112px;height:112px;border-radius:6px}
.player-card h3{font-size:20px;margin:4px 0}
.player-card p{color:var(--muted);font-size:14px;margin:0}
.position{font-size:12px;font-weight:700;color:var(--green);border:1px solid #acd0ba;border-radius:999px;padding:3px 10px}
.player-note{min-width:120px;text-align:right}
.player-note strong{display:block;color:var(--green);font-size:18px}
.player-note span{font-size:12px;color:var(--muted)}
.tactic-wrap{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tactic-board{min-height:430px;background:#176a43;border-radius:var(--radius);padding:28px;position:relative;overflow:hidden;color:#fff}
.field{position:absolute;inset:22px;border:2px solid rgba(255,255,255,.45)}
.field:before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:2px solid rgba(255,255,255,.4)}
.field:after{content:"";position:absolute;width:112px;height:112px;border:2px solid rgba(255,255,255,.4);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
.player-dot{position:absolute;z-index:2;width:34px;height:34px;background:#fff;color:var(--green);border:3px solid #cce4d5;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800}
.p1{left:12%;top:47%}.p2{left:31%;top:18%}.p3{left:31%;top:47%}.p4{left:31%;top:76%}.p5{left:55%;top:27%}.p6{left:55%;top:66%}.p7{left:78%;top:47%}
.tactic-notes{display:grid;gap:14px}
.tactic-note{padding:22px;background:white;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:0 var(--radius) var(--radius) 0}
.tactic-note h3{font-size:19px;margin-bottom:7px}
.tactic-note p{font-size:14px;color:var(--muted);margin:0}
.editor-picks{display:grid;grid-template-columns:1.4fr 1fr;gap:24px}
.pick-image{position:relative;border-radius:var(--radius);overflow:hidden;min-height:370px}
.pick-image img{height:100%;position:absolute;inset:0}
.pick-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(16,39,29,.9),transparent 70%)}
.pick-copy{position:absolute;z-index:2;left:28px;right:28px;bottom:24px;color:#fff}
.pick-copy h2{font-size:28px;margin:10px 0 6px}
.pick-copy p{color:#dbe8df;margin:0}
.pick-list{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:6px 24px}
.pick-list article{padding:20px 0;border-bottom:1px solid var(--line)}
.pick-list article:last-child{border:0}
.pick-list h3{font-size:18px;margin:5px 0}
.pick-list p{font-size:14px;color:var(--muted);margin:0}
.more-row{display:flex;justify-content:flex-end;margin-top:24px}
footer{background:var(--green-dark);color:#d9e5dd;padding:60px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:46px}
.footer-logo{color:#fff;margin-bottom:16px}
.footer-logo .logo-mark{border-color:#fff}
.footer-intro{color:#aebfb4;max-width:360px;font-size:14px}
footer h3{font-size:16px;color:#fff;margin-bottom:15px}
footer .footer-grid>div>a:not(.logo){display:block;color:#b8c8be;font-size:14px;margin:9px 0}
footer .footer-grid>div>a:hover{color:#fff}
.copyright{border-top:1px solid rgba(255,255,255,.14);margin-top:42px;padding-top:20px;color:#8fa397;font-size:13px}
@media(max-width:1024px){
.nav-wrap{gap:20px}.nav{gap:15px}.nav a{font-size:14px}.search{display:none}
.feature-story{grid-template-columns:1.2fr .8fr}.article-row{grid-template-columns:150px 1fr}.team-grid{grid-template-columns:1fr 1fr}.team-card:first-child{grid-column:1/-1}.footer-grid{grid-template-columns:1.4fr repeat(3,1fr)}
}
@media(max-width:768px){
.container{width:min(100% - 32px,var(--max))}
.site-header{height:64px}.nav-wrap{justify-content:space-between}.menu-btn{display:block}
.nav{display:none;position:absolute;left:0;right:0;top:64px;background:#fff;border-bottom:1px solid var(--line);padding:10px 20px 18px;box-shadow:var(--shadow)}
.nav.open{display:grid}.nav a{padding:11px 8px}.nav a.active:after{width:42px;bottom:4px}
main section{padding:56px 0}.page-head{padding:38px 0 46px}.page-head h1{font-size:36px}.page-head p{font-size:16px}.pitch-line{display:none}
.section-head{display:block}.section-head h2{font-size:27px}
.feature-story{grid-template-columns:1fr}.feature-image{min-height:300px}.feature-image:after{background:linear-gradient(0deg,rgba(16,39,29,.45),transparent)}.feature-copy{padding:30px 25px}
.article-grid,.team-grid,.tactic-wrap,.editor-picks{grid-template-columns:1fr}.team-card:first-child{grid-column:auto}.player-card{grid-template-columns:88px 1fr}.player-card img{width:88px;height:88px}.player-note{grid-column:2;text-align:left}
.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}
}
@media(max-width:520px){
.container{width:calc(100% - 24px)}.logo{font-size:22px}.logo-mark{width:24px;height:24px}
.page-head h1{font-size:32px}.breadcrumbs{margin-bottom:20px}.feature-image{min-height:230px}.feature-copy h2{font-size:25px}.metrics{grid-template-columns:1fr}
.article-row{grid-template-columns:1fr}.article-row img{aspect-ratio:16/9;min-height:0}.team-grid{grid-template-columns:1fr}
.player-card{grid-template-columns:72px 1fr;gap:14px;padding:13px}.player-card img{width:72px;height:72px}.position{display:inline-flex;margin-top:7px}
.tactic-board{min-height:330px;padding:16px}.field{inset:14px}.player-dot{width:29px;height:29px}
.pick-image{min-height:330px}.pick-copy{left:20px;right:20px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.btn{width:100%}.more-row{display:block}
}

/* roulang page: category3 */
:root{--green:#167a4a;--green-dark:#10271d;--orange:#f0643b;--ink:#18201c;--muted:#65716a;--bg:#f5f7f4;--white:#fff;--line:#dde4df;--radius:8px;--shadow:0 4px 18px rgba(16,39,29,.07);--max:1240px}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;background:var(--bg);color:var(--ink);line-height:1.75;letter-spacing:0}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}button{font:inherit;cursor:pointer}.container{width:min(var(--max),calc(100% - 48px));margin:auto}
    .site-header{height:76px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.nav-wrap{height:100%;display:flex;align-items:center;gap:42px}.logo{font-size:25px;font-weight:800;color:var(--green);display:flex;align-items:center;gap:9px;white-space:nowrap}.logo-mark{width:27px;height:27px;border:3px solid var(--green);border-radius:50% 50% 50% 4px;transform:rotate(-45deg);position:relative}.logo-mark:after{content:"";position:absolute;width:8px;height:3px;background:var(--orange);right:-4px;bottom:3px;transform:rotate(45deg)}.nav{display:flex;align-items:center;gap:27px;flex:1}.nav a{font-size:15px;color:#455149;padding:25px 0;position:relative}.nav a:hover,.nav a.active{color:var(--green);font-weight:700}.nav a.active:after{content:"";position:absolute;height:3px;background:var(--green);left:0;right:0;bottom:0}.search{border:1px solid var(--line);background:#fff;border-radius:6px;padding:8px 13px;color:var(--muted)}.menu-btn{display:none;background:none;border:0;font-size:24px;color:var(--green)}
    main section{padding:76px 0}.crumb{padding:28px 0 0;color:var(--muted);font-size:14px}.crumb a{color:var(--green)}.page-head{padding:28px 0 52px;border-bottom:1px solid var(--line)}.page-head-grid{display:flex;justify-content:space-between;align-items:end;gap:30px}.page-head h1{font-size:48px;line-height:1.2;margin:12px 0 14px}.page-head p{max-width:690px;color:var(--muted);font-size:17px;margin:0}.score-line{display:flex;gap:8px;align-items:center;color:var(--green);font-weight:700;border-left:4px solid var(--orange);padding:13px 0 13px 16px;white-space:nowrap}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.section-head h2{font-size:30px;margin:0}.section-head p{color:var(--muted);margin:6px 0 0}.tag{display:inline-flex;background:var(--orange);color:white;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700}.btn{display:inline-block;border:1px solid var(--green);padding:9px 18px;border-radius:6px;font-weight:700;transition:.2s}.btn-primary{background:var(--green);color:white}.btn-primary:hover{background:#0e6039;transform:translateY(-2px)}.btn-outline{color:var(--green)}.btn-outline:hover{background:var(--green);color:#fff}
    .focus{background:var(--green-dark);color:#fff}.focus-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;align-items:stretch}.focus-image{min-height:350px;border-radius:var(--radius);overflow:hidden;position:relative;background:url('/assets/images/8fa5f3c45b376add.webp') center/cover}.focus-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,30,20,.9),transparent 68%)}.focus-copy{position:absolute;z-index:1;bottom:27px;left:30px;right:30px}.focus-copy h2{font-size:32px;line-height:1.35;margin:12px 0}.focus-copy p{color:#d8e7dd}.match-note{border:1px solid rgba(255,255,255,.2);padding:25px;border-radius:var(--radius);display:flex;flex-direction:column;justify-content:center}.match-note h3{font-size:25px;margin:10px 0}.match-score{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);padding:18px 0;margin:16px 0}.match-score strong{font-size:30px}.muted-light{color:#b9cec1;font-size:14px}
    .schedule{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.date-strip{display:flex;gap:8px;padding:15px;border-bottom:1px solid var(--line);overflow:auto}.date-strip span{padding:8px 16px;border-radius:5px;white-space:nowrap;color:var(--muted)}.date-strip span.active{background:var(--green);color:#fff}.game-row{display:grid;grid-template-columns:110px 110px 1fr 130px;gap:18px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}.game-row:last-child{border:0}.game-row time{font-weight:700;color:var(--green)}.game-row small{color:var(--muted)}.status{color:var(--orange);font-weight:700;text-align:right}
    .news-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.news-card{display:grid;grid-template-columns:190px 1fr;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.2s}.news-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.news-card img{height:100%;min-height:160px}.news-body{padding:19px}.news-body h3{font-size:20px;line-height:1.4;margin:9px 0}.news-body p{font-size:14px;color:var(--muted);margin:0}.meta{color:var(--muted);font-size:12px}
    .team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.team-card{background:#fff;border-top:4px solid var(--green);padding:23px;border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow)}.team-card h3{font-size:21px;margin:10px 0}.team-card p{color:var(--muted);font-size:14px}.team-card a,.player-card a{color:var(--green);font-weight:700;font-size:14px}
    .players{background:#eaf1ec}.player-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.player-card{display:flex;gap:16px;background:#fff;padding:16px;border:1px solid var(--line);border-radius:var(--radius);align-items:center}.player-card img{width:94px;height:112px;border-radius:6px}.player-card h3{margin:5px 0;font-size:19px}.player-card p{font-size:14px;color:var(--muted);margin:0 0 8px}
    .tactic-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px}.court{background:#18382b;border-radius:var(--radius);padding:30px;color:#fff;min-height:280px;position:relative;overflow:hidden}.court:before{content:"";position:absolute;inset:22px;border:2px solid rgba(255,255,255,.45);border-radius:4px}.court:after{content:"";position:absolute;width:150px;height:150px;border:2px solid rgba(255,255,255,.45);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.dots{position:absolute;z-index:1;display:flex;gap:35px;left:18%;right:18%;justify-content:space-between;top:42%}.dots i{width:22px;height:22px;background:var(--orange);border-radius:50%;box-shadow:0 0 0 5px rgba(240,100,59,.2)}.analysis{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px}.analysis h3{font-size:22px;margin-top:0}.analysis li{padding:11px 0;border-bottom:1px solid var(--line);list-style:none}.analysis ul{padding:0;margin:0}.analysis strong{color:var(--green)}
    .data-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.data-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px}.data-box strong{font-size:32px;color:var(--green);display:block}.data-box span{color:var(--muted);font-size:14px}.more{text-align:center;margin-top:30px}
    footer{background:var(--green-dark);color:#dce9df;padding:52px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:35px}.footer-logo{color:#fff}.footer-logo .logo-mark{border-color:#fff}.footer-logo .logo-mark:after{background:var(--orange)}.footer-intro{color:#a9c0b1;max-width:300px;margin-top:18px}.footer-grid h3{font-size:16px;color:#fff;margin:0 0 14px}.footer-grid>div>a:not(.logo){display:block;color:#a9c0b1;font-size:14px;margin:7px 0}.footer-grid>div>a:hover{color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.15);margin-top:40px;padding-top:18px;color:#91aa9a;font-size:13px}
    :focus-visible{outline:3px solid rgba(240,100,59,.55);outline-offset:3px}
    @media(max-width:900px){.nav-wrap{gap:20px}.nav{gap:15px}.nav a{font-size:14px}.page-head-grid,.focus-grid,.tactic-grid{grid-template-columns:1fr;display:grid}.team-grid,.player-grid{grid-template-columns:repeat(2,1fr)}.data-grid{grid-template-columns:repeat(2,1fr)}}
    @media(max-width:700px){.container{width:min(var(--max),calc(100% - 30px))}.site-header{height:64px}.nav{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:12px 20px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:12px 0}.nav a.active:after{bottom:4px}.search{margin-left:auto}.menu-btn{display:block}.page-head{padding-bottom:35px}.page-head h1{font-size:36px}.page-head p{font-size:16px}.score-line{white-space:normal}.focus-copy h2{font-size:26px}.game-row{grid-template-columns:72px 1fr 70px;gap:10px;padding:16px}.game-row small{display:block}.game-row .league{display:none}.status{text-align:right}.news-grid,.team-grid,.player-grid{grid-template-columns:1fr}.news-card{grid-template-columns:125px 1fr}.news-card img{min-height:145px}.section-head{display:block}.section-head h2{font-size:27px}.section-head .btn{margin-top:15px}.data-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:1/-1}}
    @media(max-width:420px){.hero-copy{left:20px;right:20px}.focus-image{min-height:390px}.data-box strong{font-size:27px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.btn{width:100%;text-align:center}}

/* roulang page: category4 */
:root{--green:#167a4a;--green-dark:#10271d;--orange:#f0643b;--ink:#18201c;--muted:#65716a;--bg:#f5f7f4;--white:#fff;--line:#dde4df;--radius:8px;--shadow:0 4px 18px rgba(16,39,29,.07);--max:1240px}
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;scroll-padding-top:90px}
    body{margin:0;font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;background:var(--bg);color:var(--ink);line-height:1.75;letter-spacing:0}
    a{color:inherit;text-decoration:none}
    img{display:block;width:100%;object-fit:cover}
    button,input{font:inherit}
    button{cursor:pointer}
    .container{width:min(var(--max),calc(100% - 48px));margin:auto}
    .site-header{height:76px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
    .nav-wrap{height:100%;display:flex;align-items:center;gap:42px}
    .logo{font-size:25px;font-weight:800;color:var(--green);display:flex;align-items:center;gap:9px;white-space:nowrap}
    .logo-mark{width:27px;height:27px;border:3px solid var(--green);border-radius:50% 50% 50% 4px;transform:rotate(-45deg);position:relative;flex:none}
    .logo-mark:after{content:"";position:absolute;width:8px;height:3px;background:var(--orange);right:-4px;bottom:3px;transform:rotate(45deg)}
    .nav{display:flex;align-items:center;gap:27px;flex:1}
    .nav a{font-size:15px;color:#455149;padding:25px 0;position:relative;white-space:nowrap}
    .nav a:hover,.nav a.active{color:var(--green);font-weight:700}
    .nav a.active:after{content:"";position:absolute;height:3px;background:var(--green);left:0;right:0;bottom:0}
    .search{border:1px solid var(--line);background:white;border-radius:6px;padding:8px 13px;color:var(--muted);white-space:nowrap}
    .search:hover{border-color:var(--green);color:var(--green)}
    .menu-btn{display:none;background:none;border:0;font-size:24px;color:var(--green)}
    :focus-visible{outline:3px solid rgba(240,100,59,.72);outline-offset:3px}
    main section{padding:72px 0}
    .container-narrow{max-width:960px}
    .crumb{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px;margin:0 0 20px}
    .crumb a:hover{color:var(--green)}
    .page-head{padding:44px 0 30px}
    .head-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;align-items:end;gap:32px}
    .eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--green);font-size:13px;font-weight:800;text-transform:uppercase}
    .eyebrow:before{content:"";width:26px;height:3px;background:var(--orange)}
    h1{font-size:48px;line-height:1.2;letter-spacing:0;margin:10px 0 15px;font-weight:800}
    .page-lede{max-width:760px;margin:0;color:#4e5c53;font-size:17px;line-height:1.85}
    .head-note{border-left:1px solid var(--line);padding:6px 0 6px 20px;color:var(--muted);font-size:14px}
    .head-note strong{display:block;color:var(--ink);font-size:16px;margin-bottom:3px}
    .head-ruler{height:7px;margin-top:28px;background:repeating-linear-gradient(90deg,var(--green) 0 2px,transparent 2px 18px);position:relative;opacity:.65}
    .head-ruler:after{content:"";position:absolute;width:45px;height:7px;right:12%;top:0;background:var(--orange)}
    .topic-strip{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0}
    .topic-strip .container{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
    .strip-label{font-size:13px;font-weight:800;color:var(--muted);margin-right:6px}
    .topic-pill{border:1px solid var(--line);border-radius:999px;background:#fff;padding:7px 13px;font-size:13px;color:#435148;transition:.18s}
    .topic-pill:hover{border-color:var(--green);color:var(--green);background:#f4faf6}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px}
    .section-head h2{font-size:30px;line-height:1.3;margin:0;font-weight:800}
    .section-head p{margin:7px 0 0;color:var(--muted);font-size:15px}
    .section-index{font-size:13px;color:var(--muted);white-space:nowrap}
    .feature{display:grid;grid-template-columns:1.08fr .92fr;min-height:405px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
    .feature-media{min-height:405px;overflow:hidden}
    .feature-media img{height:100%;min-height:405px;transition:transform .3s}
    .feature:hover .feature-media img,.gear-item:hover img{transform:scale(1.025)}
    .feature-copy{padding:clamp(26px,4vw,52px);display:flex;flex-direction:column;justify-content:center}
    .tag{display:inline-flex;align-self:flex-start;padding:4px 11px;border-radius:999px;background:#e9f3ed;color:var(--green);font-size:13px;font-weight:700}
    .tag.orange{background:#fff0eb;color:#c9502d}
    .feature-copy h3{font-size:30px;line-height:1.4;margin:15px 0 12px}
    .feature-copy p{color:var(--muted);margin:0}
    .spec-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:23px 0 6px}
    .spec{border-top:2px solid var(--line);padding-top:10px}
    .spec b{display:block;font-size:15px}
    .spec span{font-size:12px;color:var(--muted)}
    .text-link{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-weight:800;font-size:14px;margin-top:18px}
    .text-link:after{content:"→";transition:transform .18s}
    .text-link:hover{color:#0e6039}
    .text-link:hover:after{transform:translateX(4px)}
    .feature-band{background:#fff}
    .gear-list{border-top:1px solid var(--line)}
    .gear-item{display:grid;grid-template-columns:240px minmax(0,1fr) 170px;gap:25px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}
    .gear-item figure{margin:0;overflow:hidden;border-radius:6px;aspect-ratio:16/10}
    .gear-item img{height:100%;transition:transform .3s}
    .item-copy h3{font-size:21px;line-height:1.4;margin:8px 0}
    .item-copy p{font-size:15px;color:var(--muted);margin:0}
    .item-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--muted)}
    .item-spec{border-left:1px solid var(--line);padding-left:20px}
    .item-spec span{display:block;font-size:12px;color:var(--muted);margin-bottom:3px}
    .item-spec strong{font-size:15px}
    .item-spec .text-link{margin-top:9px;font-size:13px}
    .running-section{background:#edf3ee}
    .running-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch}
    .running-photo{position:relative;min-height:390px;border-radius:var(--radius);overflow:hidden}
    .running-photo img{height:100%;position:absolute;inset:0}
    .running-photo:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(0deg,rgba(16,39,29,.82),transparent)}
    .photo-caption{position:absolute;z-index:1;left:27px;bottom:24px;color:#fff}
    .photo-caption strong{font-size:22px;display:block}
    .photo-caption span{font-size:14px;color:#e3eee7}
    .gear-checks{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #cdd9d0}
    .check{padding:18px 16px 17px 0;border-bottom:1px solid #cdd9d0}
    .check:nth-child(odd){margin-right:17px}
    .check b{font-size:17px;display:block;margin-bottom:5px}
    .check p{margin:0;color:var(--muted);font-size:14px}
    .court-section{background:var(--green-dark);color:white}
    .court-section .section-head p,.court-section .section-index{color:#c1d2c7}
    .court-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
    .court-card{display:grid;grid-template-columns:43% 1fr;background:#18382b;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);overflow:hidden}
    .court-card img{height:100%;min-height:220px}
    .court-copy{padding:22px}
    .court-copy h3{font-size:20px;line-height:1.45;margin:11px 0 8px}
    .court-copy p{font-size:14px;color:#c1d2c7;margin:0}
    .court-copy .text-link{color:#a9e2bd}
    .outdoor-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:center}
    .outdoor-image{aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden}
    .outdoor-image img{height:100%}
    .outdoor-copy h3{font-size:25px;line-height:1.4;margin:0 0 12px}
    .outdoor-copy>p{color:var(--muted);margin:0 0 19px}
    .outdoor-points{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
    .outdoor-points li{display:flex;gap:13px;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px}
    .outdoor-points li:before{content:"+";font-weight:800;color:var(--orange)}
    .knowledge-section{background:#fff}
    .knowledge-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
    .knowledge{padding:24px 22px 26px 0;margin-right:22px}
    .knowledge+.knowledge{border-left:1px solid var(--line);padding-left:22px}
    .knowledge .number{font-size:13px;color:var(--orange);font-weight:800}
    .knowledge h3{font-size:18px;margin:8px 0}
    .knowledge p{font-size:14px;color:var(--muted);margin:0}
    .more-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0 0;color:var(--muted);font-size:14px}
    .btn{display:inline-block;border:1px solid var(--green);padding:10px 19px;border-radius:6px;font-weight:700;transition:.2s}
    .btn-primary{background:var(--green);color:white}
    .btn-primary:hover{background:#0e6039;color:#fff;transform:translateY(-2px)}
    .btn-outline{color:var(--green);background:transparent}
    .btn-outline:hover{background:var(--green);color:white}
    footer{background:var(--green-dark);color:#e5eee8;padding:54px 0 22px}
    .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px;padding-bottom:37px}
    .footer-logo{color:white}
    .footer-logo .logo-mark{border-color:#a7d8b6}
    .footer-intro{font-size:14px;color:#bdcec2;max-width:290px;margin-top:17px}
    .footer-grid h3{font-size:15px;color:white;margin:4px 0 14px}
    .footer-grid>div>a:not(.logo){display:block;color:#bdcec2;font-size:14px;margin:7px 0}
    .footer-grid>div>a:not(.logo):hover{color:#fff}
    .copyright{border-top:1px solid rgba(255,255,255,.15);padding-top:18px;color:#aebfb3;font-size:13px}
    @media(max-width:1050px){
      .nav-wrap{gap:24px}.nav{gap:18px}.search{padding:7px 10px}
      .gear-item{grid-template-columns:200px minmax(0,1fr) 145px;gap:18px}
      .court-grid{grid-template-columns:1fr}
    }
    @media(max-width:767px){
      .container{width:min(var(--max),calc(100% - 36px))}
      .site-header{height:62px}.nav-wrap{gap:14px}.logo{font-size:22px}
      .search{margin-left:auto;font-size:13px;padding:6px 10px}.menu-btn{display:block;padding:4px 2px}
      .nav{display:none;position:absolute;top:61px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:8px 18px 16px;box-shadow:var(--shadow)}
      .nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}
      .nav a{padding:11px 6px;border-bottom:1px solid #edf1ee}
      .nav a.active:after{height:0}
      main section{padding:54px 0}
      .page-head{padding:32px 0 24px}
      .head-layout{grid-template-columns:1fr;gap:15px}
      .head-note{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}
      h1{font-size:36px}
      .page-lede{font-size:16px}
      .section-head h2{font-size:26px}
      .feature{grid-template-columns:1fr}
      .feature-media,.feature-media img{min-height:280px;height:280px}
      .feature-copy{padding:26px}
      .feature-copy h3{font-size:25px}
      .gear-item{grid-template-columns:145px minmax(0,1fr);gap:15px;padding:17px 0}
      .gear-item figure{grid-row:span 2}
      .item-spec{grid-column:2;border-left:0;border-top:1px solid var(--line);padding:10px 0 0}
      .item-spec span,.item-spec strong{display:inline;margin-right:8px}
      .running-grid,.outdoor-grid{grid-template-columns:1fr}
      .running-photo{min-height:300px}
      .court-card{grid-template-columns:40% 1fr}
      .court-card img{min-height:210px}
      .knowledge-grid{grid-template-columns:1fr 1fr}
      .knowledge{padding:18px 12px 18px 0;margin-right:12px}
      .knowledge+.knowledge{padding-left:12px}
      .knowledge:nth-child(3){border-left:0;padding-left:0}
      .footer-grid{grid-template-columns:1fr 1fr;gap:24px}
    }
    @media(max-width:520px){
      .container{width:calc(100% - 32px)}
      .search{font-size:0;width:38px;height:38px;padding:0;position:relative}
      .search:before{content:"⌕";font-size:22px;position:absolute;inset:1px 0 0;display:grid;place-items:center}
      h1{font-size:32px}
      .topic-strip .container{gap:8px}
      .strip-label{width:100%;margin-bottom:2px}
      .topic-pill{font-size:12px;padding:6px 10px}
      .section-head{align-items:start}
      .section-index{font-size:12px;padding-top:8px}
      .spec-row{gap:8px}
      .spec b{font-size:13px}
      .gear-item{grid-template-columns:112px minmax(0,1fr);gap:12px}
      .gear-item figure{aspect-ratio:1}
      .item-copy h3{font-size:17px}
      .item-copy p{font-size:13px;line-height:1.6}
      .court-card{grid-template-columns:1fr}
      .court-card img{height:190px;min-height:190px}
      .court-copy{padding:17px}
      .gear-checks{grid-template-columns:1fr}
      .check,.check:nth-child(odd){margin:0;padding:14px 0}
      .knowledge-grid{grid-template-columns:1fr}
      .knowledge,.knowledge+.knowledge,.knowledge:nth-child(3){border-left:0;border-bottom:1px solid var(--line);padding:16px 0;margin:0}
      .more-row{align-items:flex-start;flex-direction:column}
      .more-row .btn{width:100%;text-align:center}
      .footer-grid{grid-template-columns:1fr 1fr;gap:20px 14px}
      .footer-grid>div:first-child{grid-column:1/-1}
    }
    @media(prefers-reduced-motion:reduce){
      *,*:before,*:after{scroll-behavior:auto!important;transition:none!important}
    }

/* roulang page: category5 */
:root{--green:#167a4a;--green-dark:#10271d;--orange:#f0643b;--ink:#18201c;--muted:#65716a;--bg:#f5f7f4;--white:#fff;--line:#dde4df;--radius:8px;--shadow:0 4px 18px rgba(16,39,29,.07);--max:1240px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;background:var(--bg);color:var(--ink);line-height:1.75;letter-spacing:0}
a{color:inherit;text-decoration:none;transition:color .2s,background .2s,transform .2s,box-shadow .2s}
img{display:block;width:100%;object-fit:cover}
button,input{font:inherit}
button{cursor:pointer}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(240,100,59,.42);outline-offset:3px}
.container{width:min(var(--max),calc(100% - 48px));margin:auto}
.site-header{height:76px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.nav-wrap{height:100%;display:flex;align-items:center;gap:42px}
.logo{font-size:25px;font-weight:800;color:var(--green);display:flex;align-items:center;gap:9px;white-space:nowrap}
.logo-mark{display:inline-block;width:27px;height:27px;border:3px solid var(--green);border-radius:50% 50% 50% 4px;transform:rotate(-45deg);position:relative;flex:0 0 auto}
.logo-mark:after{content:"";position:absolute;width:8px;height:3px;background:var(--orange);right:-4px;bottom:3px;transform:rotate(45deg)}
.nav{display:flex;align-items:center;gap:27px;flex:1}
.nav a{font-size:15px;color:#455149;padding:25px 0;position:relative;white-space:nowrap}
.nav a:hover,.nav a.active{color:var(--green);font-weight:700}
.nav a.active:after{content:"";position:absolute;height:3px;background:var(--green);left:0;right:0;bottom:0}
.search{border:1px solid var(--line);background:white;border-radius:6px;padding:8px 13px;color:var(--muted);white-space:nowrap}
.search:hover{border-color:var(--green);color:var(--green)}
.menu-btn{display:none;background:none;border:0;font-size:24px;color:var(--green);padding:8px}
.search-panel{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow);padding:16px 0}
.search-panel.open{display:block}
.search-field{display:flex;gap:10px;max-width:680px;margin:auto}
.search-field label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.search-field input{flex:1;min-width:0;border:1px solid var(--line);border-radius:6px;padding:10px 13px;color:var(--ink)}
.search-note{margin:6px auto 0;max-width:680px;color:var(--muted);font-size:13px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--green);padding:10px 19px;border-radius:6px;font-weight:700;transition:.2s}
.btn-primary{background:var(--green);color:white}
.btn-primary:hover{background:#0e6039;color:white;transform:translateY(-2px)}
.btn-outline{color:var(--green);background:transparent}
.btn-outline:hover{background:var(--green);color:#fff}
.breadcrumb-wrap{padding:22px 0 0}
.breadcrumbs{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px}
.breadcrumbs a:hover{color:var(--green)}
.category-hero{padding:22px 0 66px}
.category-shell{position:relative;min-height:410px;border-radius:var(--radius);overflow:hidden;background:var(--green-dark);display:grid;grid-template-columns:1.08fr .92fr}
.category-copy{padding:60px 54px;color:#fff;position:relative;z-index:2;align-self:center}
.category-copy:before{content:"";display:block;width:76px;height:5px;background:var(--orange);margin-bottom:25px}
.category-copy h1{font-size:50px;line-height:1.12;font-weight:800;margin:0 0 18px}
.category-copy p{font-size:17px;line-height:1.9;color:#dce9e1;max-width:600px;margin:0}
.hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.hero-meta span{border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:5px 12px;color:#e8f2ec;font-size:13px}
.category-image{min-height:410px;position:relative}
.category-image img{height:100%;position:absolute;inset:0}
.category-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--green-dark),transparent 38%)}
.scale-lines{position:absolute;right:28px;bottom:25px;z-index:2;display:flex;gap:13px;align-items:end}
.scale-lines i{display:block;width:2px;background:rgba(255,255,255,.76)}
.scale-lines i:nth-child(1){height:18px}.scale-lines i:nth-child(2){height:30px}.scale-lines i:nth-child(3){height:22px}.scale-lines i:nth-child(4){height:42px}.scale-lines i:nth-child(5){height:27px}
main section{padding:76px 0}
.section-white{background:#fff}
.section-dark{background:var(--green-dark);color:#fff}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:28px}
.section-head h2{font-size:32px;line-height:1.25;font-weight:800;margin:0}
.section-head p{color:var(--muted);margin:8px 0 0;max-width:710px}
.section-dark .section-head p{color:#bfd0c5}
.eyebrow,.tag{display:inline-flex;align-items:center;background:var(--orange);color:white;border-radius:999px;padding:3px 11px;font-size:13px;font-weight:700}
.topic-grid{display:grid;grid-template-columns:1.42fr .8fr;gap:24px}
.topic-visual{position:relative;min-height:470px;border-radius:var(--radius);overflow:hidden}
.topic-visual img{height:100%;position:absolute;inset:0}
.topic-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,27,18,.9),rgba(9,27,18,.04) 70%)}
.topic-caption{position:absolute;z-index:2;left:30px;right:30px;bottom:28px;color:#fff}
.topic-caption h2{font-size:31px;line-height:1.35;margin:10px 0}
.topic-caption p{color:#e5eee8;max-width:680px;margin:0}
.dimension-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px}
.dimension-panel h2{font-size:25px;font-weight:800;margin:0 0 18px}
.dimension{padding:17px 0;border-bottom:1px solid var(--line)}
.dimension:last-child{border:0}
.dimension-head{display:flex;justify-content:space-between;gap:14px;font-weight:700}
.dimension-head span:last-child{color:var(--green);font-size:13px}
.dimension p{margin:5px 0 0;color:var(--muted);font-size:14px}
.article-list{border-top:1px solid var(--line)}
.article-row{display:grid;grid-template-columns:280px 1fr 150px;gap:28px;padding:26px 0;border-bottom:1px solid var(--line);align-items:center}
.article-row img{aspect-ratio:16/10;border-radius:var(--radius)}
.article-row h3{font-size:22px;line-height:1.4;margin:8px 0}
.article-row h3 a:hover{color:var(--green)}
.article-row p{color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.article-facts{border-left:1px solid var(--line);padding-left:22px;display:grid;gap:12px;font-size:13px;color:var(--muted)}
.article-facts strong{display:block;color:var(--ink);font-size:15px}
.list-more{display:flex;justify-content:flex-end;margin-top:26px}
.run-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.run-lead{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.run-lead img{aspect-ratio:16/9}
.run-lead-body{padding:24px}
.run-lead h3{font-size:24px;margin:9px 0}
.run-lead p{color:var(--muted);margin:0}
.checklist{display:grid;gap:12px}
.check-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;display:grid;grid-template-columns:44px 1fr;gap:15px;align-items:start}
.check-icon{width:44px;height:44px;border-radius:50%;background:#e7f2eb;color:var(--green);display:grid;place-items:center;font-weight:800}
.check-item h3{font-size:18px;margin:0 0 4px}
.check-item p{font-size:14px;color:var(--muted);margin:0}
.ball-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}
.ball-card{background:#18382b;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);overflow:hidden;transition:.2s}
.ball-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.ball-card img{aspect-ratio:4/3}
.ball-body{padding:20px}
.ball-body h3{font-size:20px;margin:9px 0}
.ball-body p{color:#bfd0c5;font-size:14px;margin:0}
.ball-card:first-child img{aspect-ratio:16/8}
.outdoor-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:25px;align-items:stretch}
.outdoor-image{position:relative;min-height:460px;border-radius:var(--radius);overflow:hidden}
.outdoor-image img{height:100%;position:absolute;inset:0}
.outdoor-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,25,17,.82),transparent 60%)}
.outdoor-label{position:absolute;z-index:2;left:24px;bottom:23px;color:#fff}
.outdoor-label strong{display:block;font-size:24px}
.kit-list{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.kit{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:21px}
.kit b{display:block;color:var(--green);font-size:20px;margin-bottom:5px}
.kit p{margin:0;color:var(--muted);font-size:14px}
.knowledge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.knowledge-card{background:#fff;border:1px solid var(--line);border-top:4px solid var(--green);border-radius:var(--radius);padding:22px;transition:.2s}
.knowledge-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-top-color:var(--orange)}
.knowledge-card span{font-size:13px;color:var(--orange);font-weight:700}
.knowledge-card h3{font-size:19px;line-height:1.45;margin:8px 0}
.knowledge-card p{font-size:14px;color:var(--muted);margin:0}
.knowledge-card a{display:inline-block;color:var(--green);font-weight:700;font-size:14px;margin-top:12px}
.principles{padding-top:58px!important}
.principle-strip{background:#e8f1eb;border:1px solid #cedfd3;border-radius:var(--radius);display:grid;grid-template-columns:repeat(3,1fr)}
.principle{padding:26px 28px;border-right:1px solid #cedfd3}
.principle:last-child{border:0}
.principle strong{display:block;font-size:20px;color:var(--green);margin-bottom:5px}
.principle p{margin:0;color:#52635a;font-size:14px}
footer{background:var(--green-dark);color:#dce8e0;padding:62px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:50px}
.footer-logo{color:#fff;margin-bottom:17px}
.footer-logo .logo-mark{border-color:#fff}
.footer-intro{color:#aebfb4;max-width:350px;margin:0}
footer h3{font-size:16px;color:#fff;margin:5px 0 16px}
footer .footer-grid>div>a:not(.logo){display:block;color:#aebfb4;font-size:14px;margin:9px 0}
footer .footer-grid>div>a:hover{color:#fff}
.copyright{border-top:1px solid rgba(255,255,255,.13);margin-top:42px;padding-top:20px;color:#8fa398;font-size:13px}
@media(max-width:1024px){
.nav-wrap{gap:22px}.nav{gap:16px}.nav a{font-size:14px}.category-copy{padding:44px 38px}.category-copy h1{font-size:42px}
.topic-grid{grid-template-columns:1.2fr .8fr}.article-row{grid-template-columns:230px 1fr 130px}.knowledge-grid{grid-template-columns:repeat(2,1fr)}
.footer-grid{grid-template-columns:1.3fr repeat(3,1fr);gap:28px}
}
@media(max-width:820px){
.site-header{height:64px}.nav-wrap{position:relative}.nav{display:none;position:absolute;left:0;right:0;top:64px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:12px 22px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:12px 0;border-bottom:1px solid var(--line)}.nav a.active:after{display:none}.search{margin-left:auto}.menu-btn{display:block}.search-panel{top:64px}
.category-shell{grid-template-columns:1fr}.category-copy{min-height:320px}.category-image{min-height:260px}.category-image:after{background:linear-gradient(180deg,var(--green-dark),transparent 45%)}
main section{padding:62px 0}.topic-grid,.run-layout,.outdoor-layout{grid-template-columns:1fr}.article-row{grid-template-columns:200px 1fr}.article-facts{grid-column:2;border-left:0;padding:0;grid-template-columns:repeat(2,1fr)}.ball-grid{grid-template-columns:1fr 1fr}.ball-card:first-child{grid-column:1/-1}.kit-list{grid-template-columns:1fr 1fr}.principle-strip{grid-template-columns:1fr}.principle{border-right:0;border-bottom:1px solid #cedfd3}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2}
}
@media(max-width:600px){
.container{width:min(100% - 28px,var(--max))}.search{display:none}.logo{font-size:22px}.category-hero{padding-bottom:42px}.category-copy{padding:38px 25px;min-height:330px}.category-copy h1{font-size:34px}.category-copy p{font-size:16px}.category-image{min-height:220px}
main section{padding:52px 0}.section-head{display:block}.section-head h2{font-size:27px}.section-head .btn{margin-top:18px}.topic-visual{min-height:430px}.topic-caption{left:21px;right:21px}.topic-caption h2{font-size:25px}.dimension-panel{padding:22px}
.article-row{grid-template-columns:112px 1fr;gap:16px;align-items:start}.article-row img{aspect-ratio:4/3}.article-row h3{font-size:18px;margin:6px 0}.article-row p{display:none}.article-facts{grid-column:1/-1;grid-template-columns:1fr 1fr;border-top:1px dashed var(--line);padding-top:12px}.list-more .btn{width:100%}
.ball-grid,.kit-list,.knowledge-grid{grid-template-columns:1fr}.ball-card:first-child{grid-column:auto}.outdoor-image{min-height:350px}.principle{padding:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.search-field{padding:0 14px}.search-note{padding:0 14px}
}
@media(max-width:375px){
.category-copy h1{font-size:30px}.hero-meta{gap:6px}.hero-meta span{font-size:12px}.article-row{grid-template-columns:1fr}.article-row img{aspect-ratio:16/9}.article-facts{grid-column:1}.btn{width:100%}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}
}

/* roulang: framework shim */
/* 覆盖 Bootstrap 等对 a/btn 的全局默认，避免导航出现下划线/蓝链 */
.site-header a,.site-header a:hover,.navbar a,.navbar a:hover,.nav-links a,.nav-links a:hover,header nav a,header nav a:hover{text-decoration:none}
.site-header .btn,.navbar .btn,.nav-cta{text-decoration:none}
