/* September 23 content revision: shared spacing, typography and responsive layouts. */
.revision-section{padding:88px 0;scroll-margin-top:110px}
.revision-heading{max-width:950px;margin-bottom:42px}
.revision-heading h2{font-size:clamp(28px,2.6vw,38px);line-height:1.45}
.revision-lede{margin-top:20px;font-size:18px;line-height:1.9;color:var(--muted)}
.revision-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.revision-cards article{padding:32px;background:#fff}
.revision-cards h3{font-size:23px;margin:16px 0 14px}
.revision-cards p,.organization-grid p,.taskforce-priorities p{font-size:17px;line-height:1.85;color:var(--muted)}
.revision-number{color:var(--gold);font-size:30px;font-weight:400}
.revision-icon{display:block;width:38px;height:38px;color:var(--gold)}
.strategic-section{background:#fff}
.strategic-section .revision-cards article{background:#f6f2eb}
.needs-section{background:#f5f0e7}
.needs-section .revision-cards,.advantages-section .revision-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.shared-impact{background-color:#781a29;background-image:linear-gradient(110deg,rgba(77,14,26,.88),rgba(104,20,34,.80) 64%,rgba(105,24,37,.70)),url("../imgs/editorial/action-guide-huabiao.webp");background-size:cover;background-position:center right;color:#fff}
.shared-impact .editorial-kicker{color:#f2d8a5}
.shared-impact .editorial-kicker:before{background:#e7c591}
.shared-impact .revision-lede{color:#f3e1df}
.shared-impact .revision-cards article{padding:12px 36px 0 0;background:none}
.shared-impact .revision-cards p{color:#f3e1df}
.shared-impact .revision-icon{color:#f2d8a5}
.life-stories{row-gap:42px}
.exhibit-copy{font-size:16px;line-height:1.85;margin-top:12px;color:var(--muted)}
.life-stories .life-story-card{cursor:default}
.revision-split{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:start}
.taskforce-section{background:#f7f4ee}
.taskforce-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;align-items:start;margin-bottom:42px}
.taskforce-section .revision-heading{margin:0}
.taskforce-section .revision-heading h2{max-width:18em;font-size:32px;line-height:1.55}
.taskforce-intro-copy{padding-top:5px}
.taskforce-intro-copy p{font-size:18px;line-height:1.9;color:var(--muted)}
.taskforce-intro-copy p+p{margin-top:16px}
.taskforce-priorities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.taskforce-priorities article{min-width:0;background:#fff;transition:transform .35s ease,box-shadow .35s ease}
.taskforce-photo{position:relative;margin:0;overflow:hidden;background:#e8e1d5}
.taskforce-photo img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center 62%;transition:transform .5s ease}
.taskforce-label{position:absolute;bottom:0;left:0;padding:10px 26px;background:var(--red-dark);color:#fff;font-size:17px;letter-spacing:.12em}
.taskforce-card-copy{padding:26px 28px 30px}
.taskforce-priorities h3{font-size:23px;margin:0 0 12px;line-height:1.5}
.taskforce-priorities p{margin:0}
@media(hover:hover) and (pointer:fine){
  .taskforce-priorities article:hover{transform:translateY(-5px);box-shadow:0 14px 32px #72202b12}
  .taskforce-priorities article:hover img{transform:scale(1.035)}
}
@media(max-width:1100px){
  .taskforce-intro{gap:36px}
  .taskforce-priorities{gap:20px}
  .taskforce-card-copy{padding:24px}
}
@media(max-width:767px){
  .taskforce-intro{grid-template-columns:1fr;gap:22px;margin-bottom:30px}
  .taskforce-intro-copy{padding-top:0}
  .taskforce-intro-copy p{font-size:17px}
  .taskforce-priorities{grid-template-columns:1fr;gap:24px}
  .taskforce-priorities h3{font-size:21px}
}
@media(prefers-reduced-motion:reduce){
  .taskforce-priorities article,.taskforce-photo img{transition:none}
  .taskforce-priorities article:hover,.taskforce-priorities article:hover img{transform:none}
}
.advantages-section{background:#fff}
.advantages-section .revision-cards article{background:#f7f4ee}
.organization-section{background:#fcfaf6}
.organization-root{position:relative;max-width:660px;background:var(--red-dark);color:#fff;margin:0 auto 50px;padding:30px;text-align:center}
.organization-root>span{font-size:14px;color:#f3d8ae}
.organization-root h3{font-size:25px;margin-top:8px}
.organization-grid{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.organization-grid article{position:relative;background:#fff;padding:26px 22px}
.organization-grid .organization-icon{display:block;width:38px;height:38px;margin:4px 0 18px;color:var(--gold)}
.organization-grid h3{font-size:22px;margin:12px 0}
.organization-grid .department-short{color:var(--gold);font-size:14px;margin-bottom:12px}
/* Connect the coordinating team to each department. */
.organization-root::after{content:"";position:absolute;top:100%;left:50%;width:1.5px;height:25px;background:var(--gold);transform:translateX(-50%);pointer-events:none}
.organization-grid::before{content:"";position:absolute;top:-25px;left:calc(10% - 8px);right:calc(10% - 8px);height:1.5px;background:var(--gold);pointer-events:none}
.organization-grid article::before{content:"";position:absolute;top:-25px;left:50%;width:1.5px;height:25px;background:var(--gold);transform:translateX(-50%);pointer-events:none}
.content-page .action-detail-heading .action-full-title{font-size:clamp(28px,2.5vw,38px);line-height:1.45;margin:12px 0 22px}
.action-narrative{padding:36px 0;margin:28px 0}
.action-narrative h3{font-size:26px;margin-bottom:20px;color:var(--red-dark)}
.action-narrative p{font-size:18px;line-height:1.9;margin-top:16px;max-width:1140px;color:var(--muted)}
.action-meaning{background:linear-gradient(115deg,#f1e5d5,#fbf8f2)}
.action-meaning .revision-heading{margin-bottom:0;max-width:1000px}
.content-page .phase-year{width:200px;text-align:right}
@media(min-width:768px) and (max-width:1200px){.content-page .phase-year{width:180px}}
@media(max-width:767px){.content-page .phase-year{width:auto;text-align:left}}
.media-news-section{padding:64px 0 90px}
.media-feature{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center;margin-bottom:64px}
.media-feature-photo{display:block;overflow:hidden}
.media-feature-photo img{width:100%;height:auto;aspect-ratio:25/16;object-fit:cover}
.media-meta{font-size:14px;color:var(--gold);display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.media-feature h2{font-size:34px;line-height:1.5;margin:18px 0}
.media-feature p{font-size:18px;color:var(--muted);line-height:1.9;margin-bottom:26px}
.media-original{font-size:16px;color:var(--red);display:inline-flex;gap:20px;align-items:center}
.media-original .icon{width:20px;height:20px}
.media-filter-bar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:0 0 30px}
.media-filter-bar button{padding:10px 24px;background:#f5f0e9;font-size:17px}
.media-filter-bar button[aria-pressed=true]{background:var(--red);color:#fff}
.media-filter-bar .filter-status{margin-left:auto;font-size:14px;color:var(--muted)}
.media-filter-bar{scroll-margin-top:120px}
.news-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:40px;padding-top:30px;border-top:1px solid #e7ddcf}
.news-page-numbers{display:flex;gap:8px}
.news-pagination button{min-width:44px;min-height:44px;padding:8px 14px;border:1px solid #d9cbb8;background:#fff;color:var(--red-dark);font-size:16px;transition:background-color .2s ease,color .2s ease}
.news-pagination button[aria-current=page]{background:var(--red);border-color:var(--red);color:#fff}
.news-pagination button:disabled{color:#8e8881;background:#f6f3ee;border-color:#e9e2d8;cursor:default}
.news-pagination button:not(:disabled):not([aria-current]):hover{background:#f6ebe7}
.news-page-status{margin-left:10px;font-size:14px;color:var(--muted)}
@media(max-width:767px){.news-pagination{gap:8px;margin-top:28px;padding-top:24px}.news-page-numbers{gap:6px}.news-pagination button{padding:8px 10px}.news-page-status{width:100%;margin:6px 0 0;text-align:center}.media-filter-bar{scroll-margin-top:92px}}
@media(max-width:380px){.news-pagination{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.news-page-numbers{grid-column:1 / -1;grid-row:1;justify-content:center}.news-pagination>[data-page-step]{grid-row:2}.news-page-status{grid-column:1 / -1}}
.media-news-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.media-news-item{background:#f8f5f0;padding:30px;display:flex;flex-direction:column;align-items:flex-start}
.media-news-item h3{font-size:23px;line-height:1.55;margin:14px 0}
.media-news-item p{font-size:17px;line-height:1.85;color:var(--muted);margin-bottom:22px}
.media-news-item .media-original{margin-top:auto}
.media-news-item h3 a:hover,.media-feature h2 a:hover{color:var(--red)}
.news-feed-page .news-feed-band{margin-bottom:0}
.feature-news .home-media-meta{font-size:14px;color:var(--gold);padding-top:16px;display:block}
.feature-news .feature-news-title{padding-top:6px}
.home-news-lead{padding:18px 0 22px;display:block}
.home-news-lead strong{font-size:24px;line-height:1.6;display:block}
.home-news-lead small{font-size:14px;display:block;color:var(--gold);margin-top:10px}
.home-news-lead p{font-size:16px;color:var(--muted);margin-top:10px}
@media(max-width:1100px){.organization-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.revision-split{gap:45px}.needs-section .revision-cards,.advantages-section .revision-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.revision-cards{gap:20px}.revision-cards article{padding:26px}.media-feature{gap:32px}}
@media(max-width:767px){.revision-section{padding:58px 0}.revision-heading{margin-bottom:28px}.revision-lede{font-size:17px}.revision-cards,.needs-section .revision-cards,.advantages-section .revision-cards,.revision-split,.organization-grid,.media-news-list,.media-feature{grid-template-columns:1fr}.revision-cards h3{font-size:21px}.revision-split{gap:32px}.taskforce-section .revision-heading h2{font-size:28px}.organization-root{padding:24px;margin-bottom:28px}.organization-root h3{font-size:23px}.organization-grid article{padding:26px}.shared-impact .revision-cards article{padding:12px 0}.action-narrative p{font-size:17px}.media-news-section{padding:42px 0 58px}.media-feature{gap:24px;margin-bottom:40px}.media-feature h2{font-size:27px}.media-news-item{padding:24px}.media-news-item h3{font-size:21px}.media-filter-bar button{padding:9px 17px}.media-filter-bar .filter-status{width:100%;margin-left:0}.home-news-lead strong{font-size:22px}}

/* On narrower screens, keep all departments on the same shared branch. */
@media(max-width:1100px){
  .organization-root{margin-bottom:32px}
  .organization-root::after{height:16px}
  .organization-grid{grid-template-columns:1fr;padding-left:28px}
  .organization-grid::before{top:-16px;left:0;right:50%;height:1.5px}
  .organization-grid article::before{top:40px;left:-28px;width:28px;height:1.5px;transform:none}
  .organization-grid article::after{content:"";position:absolute;top:-20px;bottom:0;left:-28px;width:1.5px;background:var(--gold);pointer-events:none}
  .organization-grid article:first-child::after{top:-16px}
  .organization-grid article:last-child::after{bottom:auto;height:60px}
}

/* Document 0923-2: restrained card motion and clearer project presentation. */
.strategic-section .revision-cards article,
.needs-section .revision-cards article {
  transition:background-color .35s ease,color .35s ease,transform .35s ease,box-shadow .35s ease;
}
.strategic-section .revision-cards :is(h3,p,svg),
.needs-section .revision-cards :is(h3,p,svg) {
  transition:color .35s ease,border-color .35s ease;
}
.needs-section .revision-cards h3{font-size:22px;line-height:1.55;text-wrap:balance}
@media(hover:hover) and (pointer:fine){
  .strategic-section .revision-cards article:hover,
  .needs-section .revision-cards article:hover{
    background:#951f30;color:#fff;transform:translateY(-6px);box-shadow:0 16px 34px #7017271a;
  }
  .strategic-section .revision-cards article:hover :is(h3,p),
  .needs-section .revision-cards article:hover :is(h3,p){color:#fff5ee}
  .strategic-section .revision-cards article:hover svg,
  .needs-section .revision-cards article:hover svg{color:#f4d6a1}
}
/* Keep transitions on the resting state so mouse leave reverses smoothly. */
.editorial-about .needs-columns article{display:flex;flex-direction:column;transition:transform .55s cubic-bezier(.22,1,.36,1),box-shadow .55s ease}
.needs-columns .need-photo{overflow:hidden;flex-shrink:0}
.needs-columns .need-photo img{display:block;transition:transform .75s cubic-bezier(.22,1,.36,1)}
.needs-columns .need-copy{position:relative;flex:1;transition:background-color .5s ease}
.needs-columns .need-copy::after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:#dfbd82;transform:scaleX(0);transform-origin:left;transition:transform .55s cubic-bezier(.22,1,.36,1)}
.editorial-about .needs-columns :is(h3,p,svg,strong){transition:color .5s ease,border-color .5s ease,transform .55s cubic-bezier(.22,1,.36,1)}
@media(hover:hover) and (pointer:fine){
  .editorial-about .needs-columns article:hover{transform:translateY(-8px);box-shadow:0 20px 40px #54212b21}
  .needs-columns article:hover .need-photo img{transform:scale(1.055)}
  .needs-columns article:hover .need-copy{background-color:#951f30}
  .needs-columns article:hover .need-copy::after{transform:scaleX(1)}
  .editorial-about .needs-columns article:hover :is(h3,p){color:#fff5ee}
  .editorial-about .needs-columns article:hover :is(svg,strong){color:#f4d6a1}
  .editorial-about .needs-columns article:hover svg{transform:translateY(-3px)}
  .editorial-about .needs-columns article:hover strong{border-color:#d5ad7b66}
}
.organization-root h3{margin:0;color:#fff;line-height:1.55}
.organization-root>p{margin:12px 0 0;color:#fff;font-size:17px;line-height:1.65}
.about-video-cover::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 35%,#23181742)}
.about-video-play{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;background:transparent;color:#fff;font-size:16px;font-weight:500;letter-spacing:.1em}
.video-play-ring{position:relative;display:grid;place-items:center;width:84px;height:84px;border:1px solid #f3d6a8;border-radius:50%;background:linear-gradient(145deg,#b43042,#781a2a);box-shadow:inset 0 1px 0 #ffffff30,0 8px 28px #210b1459;transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease}
.video-play-ring::before{content:"";position:absolute;inset:-9px;border:1px solid #fff7d5a6;border-radius:inherit;background:#ffffff0a;transition:transform .45s ease,border-color .45s ease}
.video-play-ring svg{position:relative;width:30px;height:30px;fill:currentColor}
.video-play-label{padding:8px 18px;border:1px solid #ffffff45;border-radius:24px;background:#21171b9c;backdrop-filter:blur(8px);line-height:1.5;transition:transform .45s ease,background-color .45s ease,border-color .45s ease}
@media(hover:hover) and (pointer:fine){
  .about-video-play:hover .video-play-ring{transform:scale(1.08);box-shadow:inset 0 1px 0 #ffffff30,0 12px 34px #53101e70}
  .about-video-play:hover .video-play-ring::before{transform:scale(1.06);border-color:#fff0c5}
  .about-video-play:hover .video-play-label{transform:translateY(3px);background-color:#781a2ae6;border-color:#e7c59199}
}
.about-video-play:active .video-play-ring{transform:scale(.97)}
.about-video-play:focus-visible{outline:3px solid #dfb86f;outline-offset:-6px}
.about-video-play:focus-visible .video-play-ring{box-shadow:0 0 0 5px #fff,0 8px 28px #210b1459}
.about-video-cover .photo-ribbon{z-index:3;pointer-events:none}
.about-video-dialog{width:min(1080px,calc(100vw - 40px));max-height:calc(100dvh - 40px);padding:0;border:0;background:#171318;color:#fff;box-shadow:0 30px 100px #0006;overflow:auto}
.about-video-dialog::backdrop{background:#160b13c9;backdrop-filter:blur(5px)}
.about-video-bar{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;gap:20px}
.about-video-bar h2{font-size:21px;margin:0;line-height:1.5}
.about-video-close{flex-shrink:0;color:#fff;border-color:#ffffff70}
.about-video-dialog video{display:block;width:100%;max-height:calc(100dvh - 130px);background:#000}
body:has(.about-video-dialog[open]){overflow:hidden}
.content-page .path-photo img{object-fit:cover;object-position:center}
#policy .action-detail-heading>p:not(.gold-label){font-size:18px;line-height:1.9;margin-top:18px;max-width:36em}
#policy .action-overview{align-items:stretch}
#policy .action-detail-photo img{height:100%;min-height:430px;object-position:45% center}
@media(max-width:767px){
  .needs-section .revision-cards h3{font-size:21px}
  .video-play-ring{width:68px;height:68px}
  .about-video-dialog{width:calc(100vw - 24px)}
  .about-video-bar{padding:12px 16px}
  .about-video-bar h2{font-size:18px}
  #policy .action-detail-heading>p:not(.gold-label){font-size:17px}
  #policy .action-detail-photo img{height:auto;min-height:0;aspect-ratio:4/3}
}
@media(prefers-reduced-motion:reduce){
  .strategic-section .revision-cards article,.needs-section .revision-cards article,
  .editorial-about .needs-columns article,.needs-columns .need-photo img,
  .needs-columns .need-copy,.needs-columns .need-copy::after,
  .strategic-section .revision-cards :is(h3,p,svg),.needs-section .revision-cards :is(h3,p,svg),
  .editorial-about .needs-columns :is(h3,p,svg,strong),.video-play-ring,.video-play-ring::before,.video-play-label{transition:none}
  .strategic-section .revision-cards article:hover,.needs-section .revision-cards article:hover,
  .editorial-about .needs-columns article:hover,.needs-columns article:hover .need-photo img,
  .editorial-about .needs-columns article:hover svg,.about-video-play:is(:hover,:active) .video-play-ring,
  .about-video-play:hover .video-play-ring::before,.about-video-play:hover .video-play-label{transform:none}
}

/* September 24 document review: natural news wrapping and mobile title phrasing. */
.media-news-item h3, .media-feature h2 { text-wrap: wrap; word-break: normal; overflow-wrap: break-word; }
.about-video-cover > img { object-position: center; }
@media (max-width: 767px) {
  .editorial-page h2:has(.heading-line), .revision-heading h2:has(.heading-line) { font-size: clamp(26px, 6.8vw, 30px); line-height: 1.5; text-wrap: wrap; }
  .revision-heading h2, .taskforce-section .revision-heading h2 { font-size: clamp(26px, 6.8vw, 30px); line-height: 1.5; }
  .content-page .action-detail-heading .action-full-title { font-size: clamp(26px, 6.8vw, 30px); letter-spacing: 0; line-height: 1.5; }
  .about-video-cover .photo-ribbon { display: none; }
  .editorial-page .media-news-item h3, .editorial-page .media-feature h2 { text-wrap: wrap; text-align: justify; text-align-last: left; word-break: normal; overflow-wrap: break-word; }
  .media-news-item h3 a, .media-feature h2 a { display: inline; }
}
