.project-slide.story-showcase{grid-template-columns:minmax(0,.43fr) minmax(0,.57fr);gap:42px;align-items:start;padding:46px 0;min-height:630px}
.story-showcase .project-copy>.eyebrow{font-size:12px;margin-bottom:30px}
.story-showcase .project-copy h3{font-size:clamp(29px,2.7vw,40px);line-height:1.35;margin:0 0 28px}
.story-showcase .project-copy .business-problem{font-size:20px!important;line-height:1.6!important;margin:0 0 25px!important}
.story-showcase .project-copy .story-intro{font-size:15px;line-height:2;margin-bottom:30px}
.story-showcase .project-copy .action-label{font-size:12px;color:var(--muted);margin-bottom:7px}
.story-showcase .project-copy .mini-flow{font-size:12px!important;line-height:2.1;margin-bottom:30px}
.story-showcase .result-tags{gap:10px 18px;margin:0 0 27px}
.story-showcase .result-tags span{font-size:12px;line-height:1.8;font-weight:650}
.story-showcase .project-copy .case-left{font-size:15px!important;line-height:1.95;color:var(--muted);margin:0 0 23px}
.story-showcase .tags{font-size:11px;gap:9px;margin:22px 0}
.story-showcase .tags>span{padding:6px 11px}
.story-showcase .project-copy .button{font-size:14px;padding:12px 24px;min-height:52px;margin-top:17px}
.story-flow{min-width:0;border-top:1px solid var(--ink);padding:26px 23px 30px}
.story-flow>header{display:flex;align-items:center;gap:20px;margin-bottom:23px}
.story-flow>header .eyebrow{font-size:9px;margin:0;white-space:nowrap;letter-spacing:1px}
.story-flow>header .eyebrow span{font-family:'Microsoft YaHei',sans-serif;font-size:11px;letter-spacing:.5px}
.story-flow-label{font:9px/1.7 Consolas,monospace;letter-spacing:1px;margin-left:auto;white-space:nowrap;color:var(--muted)}
.story-flow ol{list-style:none;margin:0;padding:0;display:grid;gap:18px 34px;position:relative}
.story-node{position:relative;min-width:0;background:#faf8f1;border:1px solid #e4e1d8;border-radius:5px;padding:22px 18px}
.story-number{font:700 12px/1.4 Consolas,monospace;color:var(--signal)}
.story-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:45px;height:45px;border-radius:50%;background:#eceae1}
.story-icon svg{width:23px;height:23px;fill:none;stroke:var(--ink);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.story-node h4{font-size:16px;line-height:1.55;letter-spacing:-.02em;margin:0 0 6px}
.story-node p{font-size:12px;color:var(--muted);line-height:1.8;margin:0}
.story-next{position:absolute;display:block;width:25px;height:20px;right:-30px;top:50%;transform:translateY(-50%)}
.story-next svg{width:100%;height:100%;fill:none;stroke:#82867a;stroke-width:1}
.story-flow-paired{border-left:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#efede5}
.story-flow-paired ol{grid-template-columns:repeat(2,minmax(0,1fr))}
.story-flow-paired .story-node{display:grid;grid-template-columns:18px 42px 1fr;gap:0 11px;min-height:108px;padding:18px 13px;border:0}
.story-flow-paired .story-node .story-icon{width:42px;height:42px;margin-top:6px}
.story-flow-paired .story-number{margin-top:8px}
.story-flow-paired .story-node h4{font-size:15px}
.story-flow-paired .story-node p{font-size:11px;line-height:1.85}
.story-flow-paired .story-node:nth-child(even) .story-next{display:none}
.story-flow-paired .story-node:nth-child(2n+3):before{content:"";position:absolute;left:-15px;top:-69px;height:124px;width:14px;border-left:1px solid #c5c7bd;border-top:1px solid #c5c7bd;border-bottom:1px solid #c5c7bd;border-radius:14px 0 0 14px;pointer-events:none}
.story-flow-overview{border-top:1px solid var(--line);padding-top:16px;margin:0 0 23px}
.story-flow-overview p{font-size:12px;line-height:1.9;color:var(--muted);margin:0 0 5px}
.story-flow-snake{background:#f7f5ed}
.story-flow-snake ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 25px}
.story-flow-snake .story-node{padding:18px 15px;min-height:198px;display:flex;flex-direction:column}
.story-flow-snake .story-number{position:absolute;left:17px;top:22px}
.story-flow-snake .story-icon{width:47px;height:47px;margin:0 auto 16px}
.story-flow-snake .story-node h4{padding-bottom:9px;margin-bottom:10px;border-bottom:1px solid var(--line);font-size:16px;line-height:1.5}
.story-flow-snake .story-node p{font-size:12px;line-height:1.8}
.story-flow-snake .story-node:nth-child(4){grid-row:2;grid-column:3}
.story-flow-snake .story-node:nth-child(5){grid-row:2;grid-column:2}
.story-flow-snake .story-node:nth-child(6){grid-row:2;grid-column:1}
.story-flow-snake .story-next{width:23px;right:-25px}
.story-flow-snake .story-node:nth-child(3) .story-next{display:none}
.story-flow-snake .story-node:nth-child(4) .story-next,.story-flow-snake .story-node:nth-child(5) .story-next{right:auto;left:-25px;transform:translateY(-50%) rotate(180deg)}
.story-turn{position:absolute;left:100%;top:50%;height:calc(100% + 28px);width:22px;pointer-events:none}
.story-turn svg{width:100%;height:100%;fill:none;stroke:#aeb1a4;stroke-width:1;stroke-dasharray:2 3}
.story-flow-vertical{padding-left:0;padding-right:0}
.story-flow-vertical ol{grid-template-columns:1fr;gap:14px}
.story-flow-vertical .story-node{display:grid;grid-template-columns:30px 47px 1fr;gap:0 18px;padding:20px 23px;min-height:92px;align-items:center}
.story-flow-vertical .story-number{font-size:15px}
.story-flow-vertical .story-node h4{font-size:18px;padding-right:54px}
.story-flow-vertical .story-node p{font-size:12px}
.story-step-label{position:absolute;right:19px;top:25px;font:10px/1.5 Consolas,monospace;letter-spacing:1px;color:#999d90}
.story-flow-vertical .story-next{left:32px;right:auto;top:calc(100% + 7px);transform:translate(-50%,-50%) rotate(90deg);width:14px;height:14px}
.archive-card.has-cover .archive-cover{display:block;margin:15px 0 0;background:#e9e7dd;height:156px;overflow:hidden}
.archive-cover img{width:100%;height:100%;object-fit:contain}
.archive-card.has-cover .archive-title{margin-top:17px}
.personal-brand-dialog .viewer-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px;align-items:start}
.personal-brand-dialog .viewer-gallery button.viewer-media{border:0;padding:0;background:transparent;cursor:zoom-in}
.personal-brand-dialog .viewer-gallery button.viewer-media img{width:100%;height:430px;object-fit:contain;background:#eeece3}
.personal-brand-dialog .viewer-gallery figcaption{font-size:12px;text-align:center;margin-top:12px}
.personal-brand-dialog .viewer-body{margin-bottom:24px}
.project-slide.story-cctv{grid-template-columns:minmax(0,.49fr) minmax(0,.51fr);gap:46px;padding:52px 0 38px}
.story-cctv .project-copy>.eyebrow{margin-bottom:34px}
.story-cctv .project-copy h3{font-size:clamp(30px,2.6vw,42px);line-height:1.4;letter-spacing:-.05em;margin-bottom:28px}
.story-cctv .project-copy .business-problem{font-size:clamp(19px,1.6vw,24px)!important;margin-bottom:26px!important}
.story-cctv .project-copy .story-intro{margin-bottom:28px}
.story-cctv .project-copy .mini-flow{margin-bottom:28px}
.story-cctv .result-tags{margin-bottom:18px}
.story-cctv .result-tags span{font-size:14px}
.story-cctv .project-copy .button{min-height:54px;padding:13px 28px}
.story-cctv .story-flow{padding:20px 0 0}
.story-cctv .story-flow>header{margin-bottom:26px}
.story-cctv .story-flow>header .eyebrow{font-size:10px;letter-spacing:1.2px;color:#8a8d84}
.story-cctv .story-flow>header .eyebrow span{font-size:12px}
.story-cctv .story-flow ol{gap:18px;isolation:isolate}
.story-cctv .story-flow ol:before,.story-cctv .story-flow ol:after{content:"";position:absolute;top:48px;bottom:48px;width:1px;background:var(--line);z-index:-1}
.story-cctv .story-flow ol:before{left:27px}
.story-cctv .story-flow ol:after{left:77px;top:0;bottom:0}
.story-cctv .story-node{display:grid;grid-template-columns:54px minmax(0,1fr);column-gap:36px;padding:0;background:none;border:0;min-height:96px;align-items:center}
.story-cctv .story-icon{width:54px;height:54px;margin:0;background:#f8f6ef;box-shadow:0 3px 12px #26272406;z-index:1}
.story-cctv .story-icon svg{width:26px;height:26px;stroke:#d96252;stroke-width:1.5}
.story-cctv .story-marker{position:absolute;left:73px;top:calc(50% - 4px);width:8px;height:8px;border-radius:50%;background:#d96252;box-shadow:0 0 0 2px var(--paper)}
.story-cctv .story-node-copy{min-width:0;min-height:96px;padding:19px 22px 19px 15px;background:none;border-radius:0;border-top:1px solid #e2e1d8;border-bottom:1px solid #e2e1d8;display:flex;flex-direction:column;justify-content:center}
.story-cctv .story-node h4{font-size:18px;font-weight:650;color:#696c64;line-height:1.45;margin-bottom:5px;padding-right:88px}
.story-cctv .story-node p{font-size:12px;color:#90938a;line-height:1.75}
.story-cctv .story-step-label{top:25px;right:22px;font-size:10px;color:#92948b;letter-spacing:1.2px;display:flex;align-items:center;gap:12px}
.story-cctv .story-step-label:before{content:"";width:28px;height:1px;background:#b4b6ac}
@media(max-width:1100px){.project-slide.story-showcase{grid-template-columns:1fr;gap:30px}.story-showcase .project-copy{max-width:760px}.story-flow{max-width:840px;width:100%;margin:auto}.story-flow-paired .story-node{grid-template-columns:22px 48px 1fr;gap:0 15px;padding:22px;min-height:110px}.story-flow-paired .story-node h4{font-size:17px}.story-flow-paired .story-node p{font-size:13px}.story-flow-snake .story-node{min-height:205px}.story-flow-snake .story-node h4{font-size:18px}.story-flow-snake .story-node p{font-size:13px}.personal-brand-dialog .viewer-gallery{gap:15px}.personal-brand-dialog .viewer-gallery button.viewer-media img{height:340px}}
@media(max-width:700px){.project-slide.story-showcase{gap:27px;padding:30px 0;min-height:0}.story-showcase .project-copy>.eyebrow{font-size:11px;margin-bottom:20px}.story-showcase .project-copy h3{font-size:30px;margin-bottom:24px}.story-showcase .project-copy .business-problem{font-size:19px!important;margin-bottom:22px!important}.story-showcase .project-copy .story-intro{font-size:15px;margin-bottom:24px}.story-showcase .project-copy .mini-flow{font-size:12px!important;line-height:2}.story-showcase .result-tags{margin-bottom:22px;gap:8px 15px}.story-showcase .result-tags span{font-size:12px}.story-showcase .project-copy .case-left{font-size:14px!important}.story-showcase .tags{font-size:10px;gap:8px}.story-showcase .tags>span{padding:5px 9px}.story-flow{padding:21px 17px}.story-flow>header{gap:8px;flex-wrap:wrap;margin-bottom:22px}.story-flow>header .eyebrow{font-size:8px;white-space:normal;letter-spacing:.5px}.story-flow>header .eyebrow span{font-size:10px}.story-flow-label{font-size:8px;letter-spacing:.5px}.story-flow-paired ol,.story-flow-snake ol{grid-template-columns:1fr;gap:25px}.story-flow-paired .story-node,.story-flow-vertical .story-node{grid-template-columns:20px 40px 1fr;gap:0 10px;padding:18px 12px;min-height:110px}.story-flow-paired .story-node .story-icon,.story-flow-vertical .story-icon{width:37px;height:37px;margin-top:2px}.story-flow-paired .story-node h4,.story-flow-vertical .story-node h4{font-size:17px;padding:0}.story-flow-paired .story-node p,.story-flow-vertical .story-node p{font-size:13px}.story-flow-paired .story-node:before{display:none}.story-flow-paired .story-node:nth-child(even) .story-next{display:block}.story-flow-paired .story-next,.story-flow-snake .story-next,.story-flow-snake .story-node:nth-child(4) .story-next,.story-flow-snake .story-node:nth-child(5) .story-next{left:50%;right:auto;top:calc(100% + 13px);width:18px;height:18px;transform:translate(-50%,-50%) rotate(90deg)}.story-flow-snake .story-node:nth-child(3) .story-next{display:block}.story-flow-snake .story-node:nth-child(n){grid-row:auto;grid-column:auto;min-height:0;display:grid;grid-template-columns:22px 40px 1fr;gap:0 12px;padding:18px 12px}.story-flow-snake .story-number{position:static;margin-top:7px}.story-flow-snake .story-icon{width:37px;height:37px;margin:0}.story-flow-snake .story-node h4{font-size:17px;padding-bottom:9px;margin-bottom:9px}.story-flow-snake .story-node p{font-size:13px}.story-flow-overview p{font-size:13px}.story-turn,.story-step-label{display:none}.story-flow-vertical{padding:22px 0}.story-flow-vertical ol{gap:22px}.story-flow-vertical .story-number{font-size:13px}.story-flow-vertical .story-next{top:calc(100% + 11px);left:22px}.personal-brand-dialog .viewer-gallery{grid-template-columns:1fr;gap:25px}.personal-brand-dialog .viewer-gallery button.viewer-media img{height:auto;max-height:none;object-fit:contain}.personal-brand-dialog .viewer-gallery figcaption{font-size:13px}.archive-card.has-cover .archive-cover{height:170px}}
@media(max-width:1100px){.project-slide.story-cctv{grid-template-columns:1fr;gap:30px;min-height:0}.story-cctv .project-copy h3{font-size:36px}.story-cctv .story-flow{margin:0;max-width:840px}}
@media(max-width:700px){.project-slide.story-cctv{padding:30px 0}.story-cctv .project-copy>.eyebrow{margin-bottom:22px}.story-cctv .project-copy h3{font-size:29px;margin-bottom:24px}.story-cctv .story-flow>header .eyebrow{font-size:9px;letter-spacing:.8px}.story-cctv .story-flow>header .eyebrow span{font-size:11px}.story-cctv .story-flow ol{gap:16px}.story-cctv .story-flow ol:before{left:19px}.story-cctv .story-flow ol:after{left:49px}.story-cctv .story-node{grid-template-columns:38px minmax(0,1fr);gap:0 23px;padding:0;min-height:110px}.story-cctv .story-icon{width:38px;height:38px;margin:0}.story-cctv .story-icon svg{width:21px;height:21px}.story-cctv .story-marker{left:46px;width:6px;height:6px;top:calc(50% - 3px)}.story-cctv .story-node-copy{min-height:110px;padding:18px 15px}.story-cctv .story-node h4{font-size:16px;padding-right:52px;margin-bottom:7px;line-height:1.5}.story-cctv .story-node p{font-size:13px}.story-cctv .story-step-label{display:block;right:14px;top:20px;font-size:8px;letter-spacing:.5px}.story-cctv .story-step-label:before{display:none}}
