/* Portfolio case presentation system. Original artwork, chart canvases and iframe demos are excluded. */
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) {
 --portfolio-text-font:"PingFang SC",-apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif;
 --portfolio-h1-size:64px; --portfolio-h2-size:44px; --portfolio-h3-size:28px;
 --portfolio-lead-size:20px; --portfolio-body-size:16px; --portfolio-small-size:14px; --portfolio-meta-size:12px;
 --case-space-1:8px; --case-space-2:16px; --case-space-3:24px; --case-space-4:32px; --case-space-5:48px; --case-space-6:96px;
 --portfolio-section-gap:var(--case-space-6); --grc-chapter-space:var(--case-space-6);
 --space-chapter:var(--case-space-6); --space-group:var(--case-space-5); --space-media:var(--case-space-4);
 font-family:var(--portfolio-text-font); font-size:16px; line-height:1.8; font-weight:400;
}
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(h1,h2,h3) { font-family:var(--portfolio-text-font); font-style:normal; letter-spacing:-.02em; text-wrap:pretty; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) h1 { font-size:var(--portfolio-h1-size); line-height:1.15; font-weight:700; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) h2 { font-size:var(--portfolio-h2-size); line-height:1.25; font-weight:700; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) h3 { font-size:var(--portfolio-h3-size); line-height:1.4; font-weight:600; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.eyebrow,.case-kicker,.kicker,.chapter-no,.chapter__index,.scene__index,.step-label) { font-family:var(--portfolio-text-font); font-size:12px; line-height:1.5; font-weight:600; letter-spacing:.04em; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) .chapter-no > span { font-size:12px; line-height:1.5; font-weight:600; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.chapter,.video-section,.closing) { padding-block:var(--case-space-6); }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) .scene { padding-block:var(--case-space-6); }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.chapter-head,.chapter__head,.stage-heading,.section-intro) { margin-bottom:0; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.chapter-head,.chapter__head,.stage-heading,.section-intro) h2 { margin-bottom:16px; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.chapter-head,.chapter__head,.stage-heading,.section-intro) :is(.eyebrow,.chapter-no,.chapter__index,.case-kicker) { margin-bottom:16px; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.hero__lead,.hero-lead,.case-hero__content > p:not(.case-kicker):not(.case-hero__credit),.hero-copy > .portfolio-lead) { font-family:var(--portfolio-text-font); font-size:20px; line-height:1.8; font-weight:400; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.chapter__intro,.chapter-head .intro,.hero-description,.chart-intro-lead,.scene__copy,.scene-stage__explain p) { font-size:16px; line-height:1.8; font-weight:400; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.evidence figcaption,.prototype-evidence figcaption,.overview-stage figcaption,.feature figcaption,.scene-stage__visual figcaption,.method-stage__full figcaption,.graph-figure figcaption:not(.chart-case-explanation),.video-caption) { margin-top:16px; font-size:14px; line-height:1.7; font-weight:400; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) .chart-case-explanation { font-size:16px; line-height:1.8; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.project-responsibilities h3,.role-route h3,.closing__factor h3,.outcome-summary__columns h3,.film-outline strong) { font-size:20px; line-height:1.4; font-weight:600; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.project-facts,.project-responsibilities) { margin-top:32px; padding-block:24px; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.project-facts dt,.project-responsibilities dt,.decision-notes dt) { font-family:var(--portfolio-text-font); font-size:12px; font-weight:600; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.project-facts dd,.project-responsibilities dd,.decision-notes dd) { font-family:var(--portfolio-text-font); font-size:14px; line-height:1.7; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.context__body,.method-stage,.path-model,.film-outline,.closing__body,.blueprint,.mini-map,.outcome-summary__columns) { margin-top:48px; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.scene-stage,.film-chapters,.workflow-guide) { margin-top:32px; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) .scene-stage__visual { margin-top:0; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.video-wrap,.validation__video,.overview-stage) { margin-top:48px; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.scene-stage__tab,.review-switch__tabs button,.video-chapter,.film-chapters button,.portfolio-home-link) { min-height:44px; font-family:var(--portfolio-text-font); }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(a,button,summary,[tabindex="0"]):focus-visible { outline:2px solid var(--portfolio-focus,currentColor); outline-offset:4px; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.scene-stage__tab,.review-switch__tabs button,.video-chapter):focus-visible { outline-offset:-3px; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.portfolio-mark__brand,.portfolio-footer__brand) { font-family:var(--portfolio-text-font); letter-spacing:.04em; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) .portfolio-footer__inner { padding-block:24px; gap:24px; font-size:12px; line-height:1.5; }
body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) .portfolio-footer__brand { font-size:12px; line-height:1.5; }
@media(min-width:1200px) {
 body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) { --portfolio-content-width:min(1280px,calc(100vw - 240px)); --content:var(--portfolio-content-width); --content-width:var(--portfolio-content-width); --grc-content-width:var(--portfolio-content-width); --grc-content-left:calc((100vw - var(--portfolio-content-width))/2); --grc-content-right:var(--grc-content-left); }
}
@media(max-width:1100px) {
 body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) { --case-space-6:80px; }
}
@media(max-width:760px) {
 body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) { --portfolio-h1-size:40px; --portfolio-h2-size:32px; --portfolio-h3-size:24px; --case-space-6:64px; --case-space-5:32px; --case-space-4:24px; }
 body.portfolio-case:is(.portfolio-case--bangyang,.portfolio-case--ioc,.portfolio-case--image,.portfolio-case--grc) :is(.hero__lead,.hero-lead,.case-hero__content > p:not(.case-kicker):not(.case-hero__credit),.hero-copy > .portfolio-lead) { font-size:18px; }
}
