:root{--welfare-red:#b31f34;--welfare-red-dark:#801426;--welfare-blue:#2e6f87;--welfare-teal:#2e7975;--welfare-ink:#172735;--welfare-muted:#6d7a85}

/* 首页第二屏：平台概览与公益内容各占一半权重。 */
.overview-welfare-shell{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.overview-welfare-copy,.overview-welfare-content{justify-content:center!important}
.overview-welfare-content{padding:clamp(30px,2.2vw,54px)!important;align-items:stretch}
.overview-welfare-heading{position:relative;display:block!important;width:100%;margin:0 0 clamp(22px,1.5vw,34px)!important;padding-right:clamp(132px,9vw,176px);text-align:left}
.overview-welfare-heading>div{display:flex;align-items:center;justify-content:flex-start;gap:14px}
.overview-welfare-heading span{flex:0 0 auto}
.overview-welfare-heading h3{font-size:clamp(24px,1.45vw,36px)!important}
.overview-welfare-heading>p{max-width:760px;margin:12px 0 0!important;font-size:clamp(12px,.66vw,16px)!important;line-height:1.7!important}
.welfare-topic-entry{position:absolute;right:0;top:2px;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;color:#a71930;background:#fff;border:1px solid #e5c9ce;border-radius:999px;box-shadow:0 7px 18px rgba(105,25,40,.07);font-size:clamp(11px,.62vw,14px);font-weight:800;text-decoration:none;white-space:nowrap;transition:color .2s,background .2s,border-color .2s,transform .2s}
.welfare-topic-entry:hover{color:#fff;background:#a71930;border-color:#a71930;transform:translateY(-2px)}
.welfare-topic-entry span{font-size:1.15em}
.welfare-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:clamp(14px,1vw,22px)}
.welfare-home-grid .welfare-card{height:100%}
.welfare-home-grid .welfare-card-head{justify-content:flex-start}
.welfare-more-link{width:max-content;max-width:100%;margin:clamp(18px,1.25vw,28px) auto 0;display:inline-flex;align-items:center;gap:12px;padding:10px 18px;color:#fff;background:linear-gradient(135deg,var(--welfare-red),var(--welfare-red-dark));border-radius:999px;box-shadow:0 10px 24px rgba(155,24,45,.2);font-size:clamp(12px,.68vw,16px);font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s}
.welfare-more-link:hover{color:#fff;transform:translateY(-2px);box-shadow:0 15px 30px rgba(155,24,45,.26)}
.welfare-more-link span{font-size:1.25em}

/* 首页和二级专题页共用的公益卡片。 */
.welfare-card{position:relative;isolation:isolate;min-width:0;display:flex;flex-direction:column;padding:22px;background:linear-gradient(155deg,#fff 0%,#fff 68%,#fff8f8 100%);border:1px solid #e1e6e9;border-radius:14px;box-shadow:0 12px 32px rgba(28,45,58,.07);overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}
.welfare-card:before{content:"";position:absolute;z-index:-1;right:-42px;top:-52px;width:144px;height:144px;border:30px solid rgba(179,31,52,.045);border-radius:50%}
.welfare-card:hover{transform:translateY(-6px);border-color:rgba(173,35,52,.28);box-shadow:0 22px 42px rgba(37,47,60,.12)}
.welfare-card-product{background:linear-gradient(155deg,#fff 0%,#fff 68%,#f4f9fb 100%)}
.welfare-card-product:before{border-color:rgba(46,111,135,.055)}
.welfare-card-resource{background:linear-gradient(155deg,#fff 0%,#fff 68%,#f1faf8 100%)}
.welfare-card-resource:before{border-color:rgba(46,121,117,.055)}
.welfare-card-head{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:12px}
.welfare-card-icon{position:relative;width:42px;height:42px;display:grid;flex:0 0 auto;place-items:center;color:#fff;background:linear-gradient(145deg,#d32439,#8f1729);border-radius:12px;box-shadow:0 9px 20px rgba(164,25,44,.2);font-size:14px;font-weight:900}
.welfare-card-icon:after{content:"";position:absolute;inset:6px;border:1px solid rgba(255,255,255,.36);border-radius:8px}
.welfare-card-product .welfare-card-icon{background:linear-gradient(145deg,#4388a1,#245c73);box-shadow:0 9px 20px rgba(45,104,128,.2)}
.welfare-card-resource .welfare-card-icon{background:linear-gradient(145deg,#45958d,#24635f);box-shadow:0 9px 20px rgba(42,119,113,.2)}
.welfare-card-code{color:#8a949d;font-size:10px;font-weight:800;letter-spacing:.11em;white-space:nowrap}
.welfare-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.welfare-card-tags span{padding:4px 8px;color:#8e2834;background:#fff4f5;border:1px solid #eed9dc;border-radius:999px;font-size:10px;font-weight:700}
.welfare-card-product .welfare-card-tags span{color:#2e6579;background:#f0f7f9;border-color:#d7e7ed}
.welfare-card-resource .welfare-card-tags span{color:#2d6d68;background:#f0f8f7;border-color:#d4e9e6}
.welfare-card h3{margin:14px 0 8px;color:var(--welfare-ink);font-size:19px;line-height:1.45}
.welfare-card>p{display:-webkit-box;min-height:66px;flex:1;margin:0;overflow:hidden;color:var(--welfare-muted);font-size:13px;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.welfare-card-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:14px;background:#e8ecee;border:1px solid #e8ecee;border-radius:9px;overflow:hidden}
.welfare-card-facts>span{min-width:0;padding:9px 10px;background:rgba(249,250,250,.97)}
.welfare-card-facts small,.welfare-card-facts b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.welfare-card-facts small{margin-bottom:4px;color:#90999f;font-size:10px}
.welfare-card-facts b{color:#33454d;font-size:12px}
.welfare-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:13px;border-top:1px solid #edf0f2}
.welfare-card-footer em{color:var(--welfare-red);font-size:11px;font-style:normal;font-weight:900;letter-spacing:.08em}
.welfare-card-product .welfare-card-footer em{color:var(--welfare-blue)}
.welfare-card-resource .welfare-card-footer em{color:var(--welfare-teal)}
.welfare-card-footer a{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;color:#45535e;background:#fff;border:1px solid #dce1e5;border-radius:999px;font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap;transition:color .18s,border-color .18s,background .18s}
.welfare-card-footer a:hover{color:#fff;background:var(--welfare-red);border-color:var(--welfare-red)}
.welfare-card-footer i{font-style:normal}

/* 公益专题页。 */
.welfare-page{background:#f4f6f8}
.welfare-hero{position:relative;min-height:380px;padding:76px 0 52px;background:radial-gradient(circle at 76% 42%,rgba(255,83,103,.15),transparent 25%),linear-gradient(115deg,#fff 0%,#fff8f8 54%,#f5f7f9 100%);overflow:hidden}
.welfare-hero:after{content:"";position:absolute;right:8%;top:-34%;width:520px;aspect-ratio:1;border:1px solid rgba(217,37,61,.08);border-radius:50%;box-shadow:0 0 0 48px rgba(217,37,61,.025),0 0 0 96px rgba(217,37,61,.018)}
.welfare-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:50px}
.welfare-breadcrumb{display:flex;gap:10px;margin-bottom:34px;color:#818b94;font-size:13px}
.welfare-breadcrumb a{color:#6f7c86;text-decoration:none}
.welfare-hero h1{margin:0;color:#202a33;font-size:52px;line-height:1.15;letter-spacing:.04em}
.welfare-hero-copy>p{max-width:780px;margin:20px 0 0;color:#687580;font-size:17px;line-height:1.8}
.welfare-hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.welfare-hero-tags span{padding:8px 13px;color:#9f2032;background:#fff;border:1px solid #efd7db;border-radius:999px;font-size:12px;font-weight:800}
.welfare-illustration{position:relative;width:min(360px,90%);aspect-ratio:1;margin:auto;display:grid;place-items:center}
.welfare-heart{position:relative;width:210px;height:184px;transform:rotate(-45deg);background:linear-gradient(145deg,#ff6b7d,#d91f3a);border-radius:32px 0 32px 32px;box-shadow:0 28px 70px rgba(207,30,56,.24)}
.welfare-heart:before,.welfare-heart:after{content:"";position:absolute;width:210px;height:184px;background:inherit;border-radius:50%}
.welfare-heart:before{left:0;top:-92px}.welfare-heart:after{left:92px;top:0}
.welfare-people{position:absolute;z-index:2;display:flex;align-items:flex-end;gap:9px;color:#fff;transform:translateY(7px)}
.welfare-people i{position:relative;width:38px;height:46px;background:#fff;border-radius:19px 19px 9px 9px;box-shadow:0 -33px 0 -10px #fff}
.welfare-people i:nth-child(2){width:50px;height:60px;border-radius:25px 25px 11px 11px;box-shadow:0 -43px 0 -13px #fff}
.welfare-topic-hero .scene-topic-hero-image{object-position:center 20%;filter:saturate(.94) contrast(1.03)}
.welfare-topic-hero:before{background:linear-gradient(90deg,rgba(43,13,18,.82) 0%,rgba(111,20,35,.58) 48%,rgba(39,19,23,.24) 100%)}
.welfare-content-section{padding:0 0 84px;background:#f5f7f7}
.welfare-topic-tabs{display:flex;gap:10px;margin-bottom:34px;padding:6px;background:#fff;border:1px solid #e5e9ec;border-radius:14px;box-shadow:0 10px 30px rgba(30,45,58,.05)}
.welfare-topic-tabs button{min-width:150px;padding:13px 22px;color:#56646f;background:transparent;border:0;border-radius:10px;font-size:14px;font-weight:800;cursor:pointer}
.welfare-topic-tabs button.is-active{color:#fff;background:linear-gradient(135deg,var(--welfare-red),var(--welfare-red-dark));box-shadow:0 8px 20px rgba(155,24,45,.18)}
.welfare-list-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:24px}
.welfare-list-head h2{margin:0 0 8px;color:var(--welfare-ink);font-size:28px}
.welfare-list-head p{margin:0;color:#7a858e;font-size:14px}
.welfare-result-count{color:#9d2939;font-size:13px;font-weight:800}
.welfare-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.welfare-page-grid[hidden]{display:none}
.welfare-page .scene-app-meta,.welfare-page .scene-market-footer{margin-top:auto}

@media(max-width:1280px){.overview-welfare-shell{grid-template-columns:1fr!important}.overview-welfare-copy{min-height:760px}.overview-welfare-content{min-height:900px}}
@media(max-width:980px){.welfare-hero-inner{grid-template-columns:1fr}.welfare-illustration{display:none}.welfare-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.overview-welfare-heading{padding-right:0}.overview-welfare-heading>div{align-items:flex-start;flex-direction:column}.welfare-topic-entry{position:static;margin-top:16px}.welfare-home-grid,.welfare-page-grid{grid-template-columns:1fr}.welfare-topic-tabs{overflow-x:auto}.welfare-topic-tabs button{min-width:128px}.welfare-hero{padding:54px 0 42px}.welfare-hero h1{font-size:38px}.welfare-list-head{align-items:flex-start;flex-direction:column}}
