@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.table{display:table}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px;overflow-x:hidden}.section[id]{scroll-margin-top:-44px}.skills-section[id]{scroll-margin-top:36px}.hero[id]{scroll-margin-top:0}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,PingFang SC,Noto Sans CJK SC,Microsoft YaHei,Arial,sans-serif;overflow-x:hidden}button,a{font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #8cc8ff}::selection{color:#061b3c;background:#b8dcff}.site-header{z-index:50;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;width:min(1380px,100% - 36px);height:62px;padding:0 12px 0 22px;display:grid;position:fixed;top:18px;left:50%;transform:translate(-50%)}.brand{white-space:nowrap;letter-spacing:-.02em;align-items:center;gap:8px;display:flex}.brand span{font-weight:780}.brand strong{font-weight:560}.brand i{background:var(--blue);border-radius:50%;width:4px;height:4px}.site-header nav{justify-content:center;gap:clamp(13px,2vw,30px);display:flex}.site-header nav a{color:#3f506a;font-size:13px;transition:color .2s}.site-header nav a:hover{color:var(--blue)}.language-toggle{background:#e9f3ff;border-radius:12px;grid-template-columns:1fr 1fr;padding:4px;display:grid}.language-toggle button{cursor:pointer;background:0 0;border:0;border-radius:9px;min-width:37px;height:34px;font-size:12px;font-weight:720}.language-toggle button.active{background:var(--blue);color:#fff;box-shadow:0 6px 14px #0b5cff40}.hero{background:radial-gradient(circle at 72% 34%,#4799ff47,#0000 24%),linear-gradient(128deg,#f9fcff 2%,#e2f2ff 52%,#b8ddff 100%);border-radius:0 0 42px 42px;min-height:820px;margin:0 18px;padding:160px max(7vw,48px) 62px;position:relative;overflow:hidden}.hero:before{content:"";background-image:linear-gradient(#0630620e 1px,#0000 1px),linear-gradient(90deg,#0630620e 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 82%);mask-image:linear-gradient(#000,#0000 82%)}.hero-orbit{border:1px solid #0b5cff33;border-radius:50%;position:absolute}.orbit-one{width:620px;height:620px;top:95px;right:-130px}.orbit-two{width:410px;height:410px;top:200px;right:-25px}.hero-copy{z-index:2;max-width:920px;position:relative}.eyebrow{color:var(--blue);letter-spacing:.18em;text-transform:uppercase;margin:0 0 24px;font-size:12px;font-weight:760}.hero h1{letter-spacing:-.068em;max-width:850px;margin:0;font-size:clamp(66px,8vw,124px);font-weight:470;line-height:.91}.hero h1 span,.hero h1 strong{display:block}.hero h1 strong{color:var(--blue);font-weight:760}.hero-intro{color:#3d536f;max-width:560px;margin:34px 0 0;font-size:18px;line-height:1.75}.hero-actions{align-items:center;gap:18px;margin-top:34px;display:flex}.primary-button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:28px;min-height:50px;padding:0 22px;font-size:14px;font-weight:720;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 14px 32px #0b5cff33}.primary-button:hover{transform:translateY(-2px);box-shadow:0 18px 42px #0b5cff4d}.text-button{align-items:center;gap:16px;font-size:14px;font-weight:720;display:inline-flex}.arrow{font-size:18px;transition:transform .2s;display:inline-block}a:hover .arrow,button:hover .arrow{transform:translate(4px)}.arrow-down{transform:rotate(90deg)}.identity-card{z-index:3;border-radius:26px;grid-template-columns:118px 1fr;gap:18px;width:330px;padding:16px;display:grid;position:absolute;bottom:54px;right:max(5vw,46px)}.portrait-placeholder{color:#fff;text-align:center;background:linear-gradient(145deg,#0b5cff,#7ac7ff);border-radius:18px;align-content:center;place-items:center;min-height:160px;display:grid}.portrait-placeholder span{letter-spacing:-.08em;font-size:38px;font-weight:760}.portrait-placeholder p{margin:10px 0 2px;font-size:12px;font-weight:720}.portrait-placeholder small{opacity:.75;font-size:10px}.identity-info{flex-direction:column;justify-content:center;min-width:0;display:flex}.identity-info>span{color:var(--blue);letter-spacing:.14em;font-size:9px;font-weight:780}.identity-info strong{margin:13px 0 18px;font-size:19px;line-height:1.3}.identity-info p,.identity-info a{overflow-wrap:anywhere;margin:0 0 7px;font-size:11px}.identity-info a{color:var(--blue)}.hero-footnote{z-index:2;color:#64758c;letter-spacing:.14em;align-items:center;gap:16px;font-size:9px;display:flex;position:absolute;bottom:42px;left:max(7vw,48px)}.hero-footnote i{background:#8798ad;width:52px;height:1px}.section{max-width:1440px;margin:0 auto;padding:128px 60px}.section-heading{grid-template-columns:90px minmax(0,1fr);align-items:start;gap:26px;margin-bottom:68px;display:grid}.section-number{color:var(--blue);letter-spacing:.18em;font-size:12px;font-weight:780}.section-heading h2,.skills-copy h2{letter-spacing:-.055em;margin:-10px 0 18px;font-size:clamp(48px,6vw,82px);line-height:1}.section-heading p,.skills-copy>p{max-width:650px;color:var(--muted);margin:0;font-size:16px;line-height:1.75}.education-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.education-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;flex-direction:column;min-height:410px;padding:34px;transition:transform .25s,box-shadow .25s;display:flex}.education-card:hover{transform:translateY(-5px);box-shadow:0 24px 70px #2053911f}.education-card:nth-child(2){background:var(--navy);color:#fff}.education-card-top{opacity:.65;border-bottom:1px solid;justify-content:space-between;align-items:center;padding-bottom:28px;font-size:11px;display:flex}.education-card h3{letter-spacing:-.03em;margin:38px 0 8px;font-size:27px}.education-card>p{color:var(--muted);margin:0 0 10px}.education-card:nth-child(2)>p{color:#9eb3cf}.education-card>strong{color:var(--blue);font-size:18px}.course-block{margin-top:auto;padding-top:34px}.course-block span{color:var(--blue);letter-spacing:.15em;text-transform:uppercase;margin-bottom:10px;font-size:10px;font-weight:780;display:block}.course-block p{color:#56677e;margin:0;font-size:13px;line-height:1.7}.education-card:nth-child(2) .course-block p{color:#b4c4d8}.education-honours{border:1px solid var(--line);border-radius:var(--radius);text-align:center;background:#fff;flex-direction:column;grid-column:1/-1;align-items:center;gap:20px;margin-top:22px;padding:30px 34px;display:flex}.education-honours-head{text-align:center;flex:none}.education-honours-head span{color:var(--blue);letter-spacing:.04em;font-size:22px;font-weight:780}.education-honours ul{flex-wrap:wrap;flex:1;justify-content:center;gap:10px 14px;margin:0;padding:0;list-style:none;display:flex}.education-honours li{border:1px solid var(--line);color:#56677e;white-space:nowrap;border-radius:999px;padding:9px 14px;font-size:13px;line-height:1.4}.experience-section{padding-top:88px}.experience-groups{gap:58px;display:grid}.experience-group{border-top:1px solid var(--line);grid-template-columns:220px minmax(0,1fr);padding-top:24px;display:grid}.experience-group>header{align-items:baseline;gap:20px;display:flex}.experience-group>header span{color:var(--blue);font-size:11px;font-weight:760}.experience-group h3{margin:0;font-size:26px}.experience-list{display:grid}.experience-list article{border-bottom:1px solid var(--line);grid-template-columns:150px minmax(0,1fr);gap:30px;margin-bottom:38px;padding:0 0 38px;display:grid}.experience-list article:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.experience-list time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.experience-list h4{letter-spacing:-.025em;margin:0 0 14px;font-size:22px}.experience-list strong{color:var(--blue);font-size:14px}.experience-list p{color:#53647b;text-wrap:pretty;max-width:820px;margin:2px 0 0;font-size:14px;line-height:1.8}html[lang=zh-CN] .experience-list p{text-wrap:pretty;word-break:normal;overflow-wrap:normal}.pending-chip{color:#46617f;background:#eaf3fc;border-radius:999px;margin-top:16px;padding:7px 10px;font-size:10px;display:inline-flex}.timeline-block{margin-top:72px}.timeline{padding:6px 4px 8px}.timeline-note{text-align:center;color:var(--muted);letter-spacing:2px;margin:0 0 8px;font-size:12.5px}.timeline-legend{flex-wrap:wrap;justify-content:center;gap:20px;margin:0 0 8px;display:flex}.timeline-legend span{color:#5b7f98;align-items:center;gap:7px;font-size:12px;font-weight:560;display:inline-flex}.timeline-legend i{border-radius:50%;width:9px;height:9px;display:inline-block}.timeline-axis-wrap{position:relative}.timeline-axis{height:122px;margin:0 10px;position:relative}.timeline-line{background:linear-gradient(90deg,#0b5cff29,#0b5cff80 50%,#0b5cff29);border-radius:2px;height:1.5px;position:absolute;top:52px;left:2%;right:2%}.timeline-guide{background:var(--blue);opacity:0;pointer-events:none;width:1px;transition:left .7s cubic-bezier(.22,.8,.36,1),opacity .45s;position:absolute;top:8px;bottom:28px}.timeline-guide.on{opacity:.45}.timeline-tick{text-align:center;position:absolute;top:52px;transform:translate(-50%)}.timeline-tick i{background:#071c3d59;width:1px;height:8px;margin:0 auto;display:block}.timeline-tick time{color:#64738b;font-variant-numeric:tabular-nums;letter-spacing:1px;margin-top:12px;font-size:12px;font-weight:640;display:block}.timeline-dot{cursor:pointer;text-align:center;z-index:2;background:0 0;border:0;padding:0;position:absolute;top:52px;transform:translate(-50%,-50%)}.timeline-dot-ring{border:2px solid var(--tc,var(--blue));background:#fff;border-radius:50%;width:20px;height:20px;margin:0 auto;transition:transform .3s cubic-bezier(.22,.8,.36,1),background .3s,border-color .3s,box-shadow .3s;display:block;box-shadow:0 4px 12px #071c3d24}.timeline-dot-lbl{text-overflow:ellipsis;white-space:nowrap;max-width:150px;color:var(--muted);opacity:0;pointer-events:none;font-size:12px;font-weight:540;transition:opacity .35s cubic-bezier(.22,.8,.36,1),transform .35s cubic-bezier(.22,.8,.36,1);position:absolute;bottom:27px;left:50%;overflow:hidden;transform:translate(-50%)translateY(5px)}.timeline-dot:hover .timeline-dot-ring{transform:scale(1.22)}.timeline-dot:hover .timeline-dot-lbl{opacity:.75;transform:translate(-50%)translateY(0)}.timeline-dot.active .timeline-dot-ring{background:var(--tc,var(--blue));border-color:var(--tc,var(--blue));box-shadow:0 0 0 7px #0b5cff2e;box-shadow:0 0 0 7px var(--tc,var(--blue));transform:scale(1.3)}@supports (color:color-mix(in lab, red, red)){.timeline-dot.active .timeline-dot-ring{box-shadow:0 0 0 7px color-mix(in srgb, var(--tc,var(--blue)) 18%, transparent)}}.timeline-dot.active .timeline-dot-lbl{opacity:1;color:var(--ink);font-weight:660;transform:translate(-50%)translateY(0)}.timeline-panel{place-items:center;min-height:132px;margin-top:20px;display:grid}.timeline-hint{color:#8aa3b5;margin:0;font-size:14px}.timeline-card{background:#fff;border:1px solid #587a9229;border-radius:20px;width:min(720px,100%);padding:24px 30px 26px;animation:.5s cubic-bezier(.22,.8,.36,1) both timelineIn;box-shadow:0 12px 34px #4c718b1a}.timeline-card-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.timeline-kind{color:var(--tc,var(--blue));background:#eef3fb;background:var(--tc,var(--blue));border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:11px;font-weight:720;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.timeline-kind{background:color-mix(in srgb, var(--tc,var(--blue)) 12%, #fff)}}.timeline-kind{letter-spacing:.06em}.timeline-kind:before{content:"";background:var(--tc,var(--blue));border-radius:50%;width:7px;height:7px}.timeline-card-head time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:12.5px;font-weight:620}.timeline-card h3{color:var(--ink);letter-spacing:-.025em;margin:0 0 6px;font-size:22px;font-weight:700}.timeline-card-role{color:var(--blue);margin:0 0 12px;font-size:13.5px;font-weight:620}.timeline-card-summary{color:#53647b;text-wrap:pretty;max-width:640px;margin:0;font-size:14px;line-height:1.75}@keyframes timelineIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.timeline-guide,.timeline-dot-ring,.timeline-dot-lbl{transition:none}.timeline-card{animation:none}}.case-section{background:#eaf5ff;max-width:none;padding-left:max(60px,50vw - 660px);padding-right:max(60px,50vw - 660px)}.case-files{grid-template-columns:repeat(6,1fr);gap:22px;display:grid}.case-file{text-align:left;cursor:pointer;background:0 0;border:0;grid-column:span 2;min-height:370px;padding:34px 0 0;position:relative}.case-file:nth-child(4),.case-file:nth-child(5){grid-column:span 3}.folder-tab{background:var(--folder-color);color:#fff;letter-spacing:.14em;border-radius:16px 16px 0 0;align-items:center;width:44%;height:46px;padding-left:24px;font-size:10px;font-weight:780;display:flex;position:absolute;top:0;left:0}.folder-tab:after{display:none}.folder-body{background:#fff;border-radius:0 22px 22px;flex-direction:column;height:100%;min-height:336px;padding:30px;transition:transform .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 55px #1d4e8d1a}.folder-body:after{display:none}.case-file:hover .folder-body{transform:translateY(-8px)rotate(-.5deg);box-shadow:0 30px 70px #1d4e8d2e}.folder-meta{color:#687993;justify-content:space-between;align-items:flex-start;gap:16px;min-height:24px;font-size:10px;display:flex}.folder-meta b{color:var(--folder-color);font-size:20px}.folder-body h3{letter-spacing:-.04em;width:100%;max-width:none;margin:34px 0 20px;font-size:28px;line-height:1.3}.folder-body h3>span{white-space:nowrap;display:block}.folder-body h3.case-title-zh>span{letter-spacing:-.03em;text-overflow:ellipsis;max-width:100%;font-size:23px;overflow:hidden}.case-section-en .folder-body h3>span{white-space:normal}.tag-row{flex-wrap:wrap;gap:7px;display:flex}.folder-body .tag-row{flex-wrap:nowrap;justify-content:flex-start;margin-top:auto;overflow:hidden}.tag-row span{white-space:nowrap;border:1px solid #071c3d26;border-radius:999px;padding:7px 10px;font-size:11px;line-height:1}.folder-footer{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.folder-open{color:var(--folder-color);justify-content:space-between;align-items:center;font-size:12px;font-weight:720;display:flex}.skills-section{background:var(--navy);color:#fff;border-radius:38px;grid-template-columns:.72fr 1.28fr;gap:30px;max-width:1500px;min-height:820px;margin:18px auto;padding:90px 70px;display:grid;overflow:hidden}.skills-copy{z-index:2;padding:38px 10px 0;position:relative}.skills-copy h2{margin-top:28px}.skills-copy>p{color:#a8bcd6}.skill-legend{color:#b8c8dc;align-items:center;gap:12px;margin-top:38px;font-size:11px;display:flex}.skill-legend i{background:#6cbfff;border-radius:50%;width:12px;height:12px;box-shadow:0 0 22px #62b9ff}.tree-stage{isolation:isolate;min-height:660px;position:relative}.tree-glow{filter:blur(18px);background:radial-gradient(circle,#217cff33,#0000 67%);border-radius:50%;width:460px;height:460px;position:absolute;top:24%;left:35%}.tree-trunk{background:linear-gradient(90deg,#0f3d75,#3d8ee7 55%,#174b85);border-radius:60% 40% 8px 8px;width:28px;height:56%;position:absolute;bottom:0;left:49%;transform:skew(-5deg);box-shadow:0 0 45px #3a91f63d}.tree-trunk:after{content:"";background:radial-gradient(#4a9dff57,#0000 66%);border-radius:50%;width:230px;height:36px;position:absolute;bottom:-12px;left:-100px}.tree-branch{transform-origin:0;background:linear-gradient(#4b98ed,#16487e);border-radius:999px;height:12px;position:absolute}.b1{width:290px;top:48%;left:50%;transform:rotate(-32deg)}.b2{width:260px;top:50%;left:48%;transform:rotate(-148deg)}.b3{width:225px;top:61%;left:50%;transform:rotate(22deg)}.b4{width:250px;top:63%;left:48%;transform:rotate(154deg)}.b5{width:190px;top:34%;left:51%;transform:rotate(-69deg)}.b6{width:200px;top:37%;left:49%;transform:rotate(-116deg)}.b7{width:160px;top:73%;left:51%;transform:rotate(36deg)}.b8{width:170px;top:75%;left:47%;transform:rotate(145deg)}.skill-node{z-index:3;left:var(--x);top:var(--y);color:#d7e8fb;text-align:center;white-space:normal;background:#09254cdb;border:1px solid #a1c7f13b;border-radius:12px;justify-content:center;align-items:center;max-width:190px;min-height:38px;padding:9px 13px;font-size:11px;line-height:1.35;display:inline-flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 10px 30px #0003}button.skill-node{cursor:pointer}.key-node{color:#fff;background:#104a89eb;border-color:#70beffb8;min-height:44px;padding:10px 15px;font-weight:760;box-shadow:0 0 0 1px #57adff2e,0 0 24px #3f9dff8c,0 12px 30px #00000040}.key-node i{background:#9bd8ff;border-radius:50%;width:7px;height:7px;margin-right:8px;box-shadow:0 0 14px #9bd8ff}.gallery-section{max-width:none;padding-left:max(60px,50vw - 660px);padding-right:0}.gallery-group{margin-top:64px}.gallery-label{align-items:baseline;gap:18px;margin-bottom:24px;display:flex}.gallery-label span{color:var(--blue);font-size:11px}.gallery-label h3{margin:0;font-size:24px}.gallery-track-shell{position:relative}.gallery-track{scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#9dc8f5 transparent;gap:20px;padding:8px max(60px,50vw - 660px) 30px 0;scroll-padding-inline:24px;display:flex;overflow-x:auto}.gallery-nav-button{z-index:2;color:#365f7a;cursor:pointer;background:#ffffffeb;border:0;border-radius:50%;place-items:center;width:44px;height:44px;font-size:23px;transition:opacity .2s,transform .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 8px 24px #31536b33}.gallery-nav-button:hover:not(:disabled){transform:translateY(-50%)scale(1.06)}.gallery-nav-button:disabled{cursor:default;opacity:.35}.gallery-nav-previous{left:12px}.gallery-nav-next{right:12px}.gallery-nav-button:focus-visible{outline-offset:3px;outline:3px solid #8bb6d1}.gallery-track figure{scroll-snap-align:start;flex:0 0 min(680px,72vw);margin:0}.gallery-track img{object-fit:cover;border-radius:24px;width:100%;height:390px;box-shadow:0 18px 50px #1f4e861a}.gallery-track figcaption{color:#596a80;align-items:center;gap:14px;margin-top:14px;font-size:12px;display:flex}.gallery-track figcaption span{color:var(--blue)}.photography-group{margin-top:100px}.photo-track figure{flex-basis:min(430px,64vw)}.photo-track figure:nth-child(2n){flex-basis:min(610px,72vw)}.photo-track img{height:500px}.contact-section{background:var(--blue);color:#fff;border-radius:38px 38px 0 0;margin:30px 18px 0;padding:100px max(6vw,44px) 34px}.contact-grid{grid-template-columns:80px 1.15fr .65fr;align-items:start;gap:30px;max-width:1320px;margin:0 auto;display:grid}.contact-section .section-number{color:#bfe2ff}.contact-grid>div>p:first-child{color:#c9e5ff;letter-spacing:.12em;text-transform:uppercase;margin:0 0 16px;font-size:12px}.contact-grid h2{letter-spacing:-.06em;overflow-wrap:anywhere;margin:0;font-size:clamp(45px,6.3vw,92px);line-height:.93}.contact-copy p{color:#d9edff;margin:0 0 28px;line-height:1.7}.light-button{color:var(--blue);box-shadow:none;background:#fff}footer{background:var(--blue);color:#d8eaff;justify-content:space-between;gap:20px;padding:24px 34px;font-size:10px;display:flex}.overlay{z-index:100;background:var(--paper);position:fixed;inset:0}.overlay-header{z-index:110;border-radius:18px;justify-content:space-between;align-items:center;width:min(1340px,100% - 28px);height:68px;padding:0 12px 0 24px;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.overlay-header>div{align-items:center;gap:20px;min-width:0;display:flex}.overlay-header>div span{color:var(--blue);letter-spacing:.15em;font-size:9px;font-weight:760}.overlay-header>div strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.close-button{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:12px;align-items:center;gap:12px;height:44px;padding:0 9px 0 16px;font-size:11px;display:flex}.close-button b{width:28px;height:28px;color:var(--navy);background:#fff;border-radius:8px;place-items:center;font-size:19px;font-weight:400;display:grid}.case-slides{scroll-snap-type:y mandatory;overscroll-behavior:contain;height:100vh;overflow-y:auto}.case-slide{scroll-snap-align:start;align-items:center;min-height:100vh;padding:122px max(7vw,58px) 58px;display:grid;position:relative}.case-cover{background:radial-gradient(circle at 22% 25%, var(--case-accent), transparent 30%), #f4f9ff;grid-template-columns:.85fr 1.15fr;gap:60px}@supports (color:color-mix(in lab, red, red)){.case-cover{background:radial-gradient(circle at 22% 25%, color-mix(in srgb, var(--case-accent) 18%, transparent), transparent 30%), #f4f9ff}}.case-cover-copy h2{letter-spacing:-.055em;margin:0 0 26px;font-size:clamp(48px,6vw,88px);line-height:.98}.case-cover .tag-row{margin-bottom:56px}.metric-row{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.metric{padding:22px 15px 0 0}.metric strong{color:var(--case-accent,var(--blue));letter-spacing:-.04em;margin-bottom:8px;font-size:clamp(24px,3vw,42px);display:block}.metric span{color:var(--muted);font-size:11px}.case-hero-image{object-fit:cover;border-radius:30px;width:100%;max-height:68vh;box-shadow:0 30px 80px #1a45792e}.performance-board{background:var(--navy);color:#fff;border-radius:30px;flex-direction:column;height:60vh;min-height:430px;padding:28px;display:flex;box-shadow:0 30px 80px #061b3c40}.board-topline{letter-spacing:.14em;color:#a4c5e9;justify-content:space-between;align-items:center;font-size:10px;display:flex}.board-topline i{background:#65c0ff;border-radius:50%;width:9px;height:9px;box-shadow:0 0 18px #65c0ff}.board-chart{border-bottom:1px solid #31557d;flex:1;align-items:end;gap:5%;padding-top:60px;display:flex}.board-chart span{background:linear-gradient(#6dc4ff,#0b5cff);border-radius:8px 8px 0 0;flex:1;box-shadow:0 0 24px #48aaff2b}.board-labels{color:#88a8cc;justify-content:space-between;padding-top:18px;font-size:10px;display:flex}.scroll-cue{color:#6d7d92;align-items:center;gap:12px;font-size:10px;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.text-slide{background:#fff;grid-template-columns:100px minmax(0,760px) 1fr;gap:54px}.dark-slide{background:var(--navy);color:#fff}.slide-index{color:var(--blue);align-self:start;font-size:13px;font-weight:760}.slide-copy span,.slide-label,.skill-detail-grid article>span{color:var(--blue-2);letter-spacing:.16em;text-transform:uppercase;margin-bottom:26px;font-size:10px;font-weight:780;display:block}.slide-copy p{letter-spacing:-.04em;margin:0;font-size:clamp(28px,4vw,55px);line-height:1.25}.slide-rule{opacity:.18;background:currentColor;height:1px}.split-slide{background:#eaf5ff;grid-template-columns:.8fr 1.2fr;gap:80px}.case-slide h3{letter-spacing:-.055em;margin:0;font-size:clamp(38px,5vw,70px);line-height:1.06}.clean-list{margin:0;padding:0;list-style:none}.clean-list li{border-bottom:1px solid var(--line);color:#3f526b;padding:18px 0 18px 30px;line-height:1.65;position:relative}.clean-list li:before{content:"";background:var(--blue);border-radius:50%;width:8px;height:8px;position:absolute;top:25px;left:0}.process-slide{background:#fff;display:block}.process-slide h3{max-width:820px}.process-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-top:54px;display:grid}.process-grid article{border:1px solid var(--line);border-radius:20px;min-height:220px;padding:24px}.process-grid article:nth-child(2n){background:#eef7ff}.process-grid article>span{color:var(--blue);font-size:11px;font-weight:760}.process-grid article p{color:#42546c;margin:70px 0 0;font-size:13px;line-height:1.6}.result-slide{background:var(--navy);color:#fff;grid-template-columns:.9fr 1.1fr;gap:70px}.result-slide .metric-row{border-color:#fff3;grid-column:1/-1}.evidence-slide{background:#f3f9ff;grid-template-columns:.65fr 1.2fr;gap:50px}.evidence-slide .primary-button{position:absolute;bottom:44px;right:max(7vw,58px)}.evidence-note{background:var(--navy);color:#9bcbff;letter-spacing:.15em;text-align:center;border-radius:28px;place-items:center;min-height:330px;display:grid}.skill-overlay{background:linear-gradient(140deg,#f8fcff,#d9efff);overflow-y:auto}.skill-page{max-width:1240px;margin:0 auto;padding:64px 48px}.skill-page-copywriting{max-width:1320px}.skill-intro{grid-template-columns:1fr;gap:14px;margin-bottom:40px;display:grid}.skill-intro>span{color:var(--blue);letter-spacing:.16em;font-size:10px}.skill-intro h2{letter-spacing:-.05em;margin:0 0 14px;font-size:clamp(40px,5vw,72px);line-height:1.05}.skill-intro p{color:#4c617c;max-width:860px;margin:0;font-size:17px;line-height:1.7}html[lang=zh-CN] .skill-intro p{font-size:16px;line-height:1.75}.skill-detail-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.skill-detail-grid article{background:#ffffffe0;border:1px solid #ffffffe6;border-radius:22px;min-height:0;padding:28px;box-shadow:0 18px 60px #1a4e8b1a}.skill-detail-grid .dark-card{background:var(--navy);color:#fff}.evidence-card{color:#fff;grid-column:1/-1;background:var(--blue)!important;min-height:0!important}.evidence-card>span{color:#c5e5ff!important}.evidence-card p{letter-spacing:-.025em;max-width:900px;margin:30px 0 0;font-size:clamp(22px,2.6vw,34px);line-height:1.4}.honours-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.honours-gallery article{background:#ffffffc2;border:1px solid #4a7c9e24;border-radius:24px;min-width:0;padding:14px 14px 22px;box-shadow:0 18px 48px #31587514}.certificate-placeholder{aspect-ratio:16/10;background:linear-gradient(145deg,#f1f8fcfa,#dcedf6d1);border:1px solid #4a7c9e2e;border-radius:16px;width:100%}.honours-gallery p{color:#315875;text-align:center;margin:18px 8px 0;font-size:15px;line-height:1.55}.skill-showcase-track{overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#4b7ea052 transparent;align-items:stretch;gap:24px;margin:0 -18px;padding:24px 18px 48px;display:flex;overflow-x:auto}.skill-showcase-card{opacity:.56;transform-origin:50%;scroll-snap-align:center;background:#ffffffd1;border:1px solid #4a7c9e24;border-radius:24px;flex:0 0 min(580px,56vw);margin:0;padding:12px 12px 18px;transition:transform .36s,opacity .36s,box-shadow .36s;transform:scale(.92);box-shadow:0 20px 54px #31587514}.skill-showcase-card.active{opacity:1;transform:scale(1);box-shadow:0 26px 70px #31587524}.skill-showcase-card:focus-visible{outline-offset:5px;outline:3px solid #8bb6d1}.skill-showcase-media{grid-template-rows:1fr 1fr;grid-template-columns:1.45fr .75fr;gap:8px;min-height:200px;display:grid}.skill-showcase-media>span,.skill-showcase-media>img{object-fit:cover;background:linear-gradient(145deg,#f5fafc,#dcecf4);border:1px solid #4a7c9e29;border-radius:16px;width:100%;height:100%;min-height:0;display:block}.event-showcase-media>:first-child{grid-row:1/-1}:is(.event-showcase-media:has(>:nth-child(4)),.event-showcase-media:has(>:nth-child(5))){grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}:is(.event-showcase-media:has(>:nth-child(4))>:first-child,.event-showcase-media:has(>:nth-child(5))>:first-child){grid-row:auto}.event-showcase-media:has(>:nth-child(4)){min-height:220px}.event-showcase-media:has(>:nth-child(4))>img{min-height:0;max-height:170px}.event-showcase-media:has(>:nth-child(5)){grid-template-rows:1fr 1fr;grid-template-columns:1.3fr 1fr 1fr}.event-showcase-media:has(>:nth-child(5))>:first-child{grid-row:1/-1}.event-showcase-media>img{object-fit:cover;background:0 0}.event-showcase-media>span{background:linear-gradient(145deg,#f5fafc,#dcecf4)}.research-showcase-media{min-height:0;display:block}.research-showcase-media .research-viz{min-height:220px}.research-viz{background:linear-gradient(145deg,#f5fafc,#dcecf4);border:1px solid #4a7c9e29;border-radius:16px;flex-direction:column;gap:14px;width:100%;height:100%;min-height:0;padding:26px 30px 24px;display:flex;position:relative;overflow:hidden}.research-viz:before{content:"";border:1px solid #5f8fb02e;border-radius:50%;width:180px;height:180px;position:absolute;top:-70px;right:-60px}.research-viz-center{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.research-viz-center strong{color:#315875;letter-spacing:-.04em;font-size:clamp(34px,4vw,52px);font-weight:700;line-height:1}.research-viz-center span{color:#5f7f96;font-size:13px;font-weight:600;line-height:1.4}.research-viz-bars{flex-direction:column;gap:10px;margin-top:auto;display:flex}.viz-bar-row{grid-template-columns:96px 1fr;align-items:center;gap:12px;display:grid}.viz-bar-label{color:#5d7890;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.3;overflow:hidden}.viz-bar-track{background:#5f8fb024;border-radius:999px;height:10px;overflow:hidden}.viz-bar-track i{background:linear-gradient(90deg,#6f9fbe,#9cc3dc);border-radius:999px;height:100%;display:block}.research-viz-foot{color:#8aa3b5;letter-spacing:.02em;margin-top:2px;font-size:10px;line-height:1.5}.copywriting-showcase-track .skill-showcase-card{flex-basis:min(500px,76vw)}.copywriting-showcase-media{aspect-ratio:4/5;min-height:0;display:block}.writing-card{cursor:pointer;box-shadow:none;background:0 0;border:none;justify-content:center;align-items:center;padding:12px;display:flex}.writing-card:hover{box-shadow:none}.writing-cover-card{background:0 0;border:1px solid #4a7c9e2e;border-left:none;border-right:none;border-radius:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;width:100%;min-height:200px;padding:20px 10px;display:flex}.writing-cover-card h3{color:#315875;letter-spacing:-.03em;margin:0;font-size:clamp(22px,2.4vw,32px);font-weight:620;line-height:1.3}.writing-cover-card-note{color:#617b90;margin:0;font-size:14px;line-height:1.7}.writing-open-hint{color:#fff;background:#5d91b4;border-radius:999px;align-items:center;gap:12px;margin-top:8px;padding:11px 18px;font-size:13px;font-weight:620;display:inline-flex}.skill-showcase-card figcaption{padding:24px 12px 4px}.writing-library{background:#ffffffd1;border:1px solid #4a7c9e29;border-radius:24px;grid-template-columns:340px minmax(0,1fr);align-items:start;gap:0;display:grid;overflow:hidden;box-shadow:0 20px 54px #31587514}.writing-toc{background:#f1f8fcb3;border-right:1px solid #4a7c9e1f;flex-direction:column;gap:2px;max-height:72vh;padding:14px;display:flex;overflow-y:auto}.writing-toc-item{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:34px minmax(0,1fr);align-items:baseline;column-gap:12px;padding:12px;transition:background .25s,transform .25s;display:grid}.writing-toc-item:hover{background:#5d91b417}.writing-toc-item.active{background:#5d91b4;transform:translate(2px)}.writing-toc-num{color:#7a94a8;letter-spacing:.08em;grid-row:1/-1;align-self:center;font-size:11px;font-weight:760}.writing-toc-item.active .writing-toc-num{color:#e8f4fb}.writing-toc-title{color:#315875;font-size:14px;font-weight:620;line-height:1.35}.writing-toc-item.active .writing-toc-title{color:#fff}.writing-toc-type{color:#7a94a8;letter-spacing:.06em;font-size:10px;line-height:1.4}.writing-toc-item.active .writing-toc-type{color:#c9e4f4}.writing-panel{background:#fff;min-width:0;padding:44px 56px 56px}.writing-panel-head{margin-bottom:30px}.writing-panel-type{color:#5d8daa;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;font-size:11px;font-weight:760;display:block}.writing-panel-head h3{color:#315875;letter-spacing:-.03em;margin:0;font-size:clamp(26px,3vw,40px);font-weight:620;line-height:1.22}.writing-panel-cover{color:#617b90;margin:16px 0 0;font-size:15px;line-height:1.7}.writing-panel-body{border-top:1px solid #4a7c9e29;padding-top:32px}.writing-panel-body .writing-block{border-bottom:1px solid #4a7c9e24;margin-bottom:40px;padding-bottom:34px}.writing-panel-body .writing-block:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.writing-panel-body .writing-block h4{color:#315875;letter-spacing:-.02em;margin:0 0 16px;font-size:clamp(20px,2.2vw,26px);font-weight:620}.writing-panel-body .writing-block p{color:#42546c;text-align:justify;margin:0 0 14px;font-size:16px;line-height:1.9}.writing-panel-note-body{padding-top:6px}.writing-panel-excerpt{color:#42546c;margin:0 0 24px;font-size:17px;line-height:1.85}.writing-panel-method{background:#eaf4f8;border-radius:16px;margin-top:26px;padding:20px 24px}.writing-panel-method span{color:#5d8daa;letter-spacing:.12em;margin-bottom:8px;font-size:10px;font-weight:760;display:block}.writing-panel-method p{color:#526e83;margin:0;font-size:14px;line-height:1.72}@media (max-width:960px){.writing-library{grid-template-columns:1fr}.writing-toc{border-bottom:1px solid #4a7c9e1f;border-right:0;flex-direction:row;max-height:none;padding:10px;overflow-x:auto}.writing-toc-item{flex:none;grid-template-columns:28px minmax(0,1fr);width:min(240px,72vw)}.writing-panel{padding:32px 26px 40px}}.clickable-card{cursor:pointer}.clickable-card:hover{transform:scale(1)}.skill-showcase-card.clickable-card:hover{box-shadow:0 26px 70px #3158752e}.showcase-open{color:#5d91b4;align-items:center;gap:10px;margin-top:18px;font-size:13px;font-weight:650;display:inline-flex}.showcase-open .arrow{transition:transform .25s}.clickable-card:hover .showcase-open .arrow{transform:translate(4px)}.event-overlay{background:linear-gradient(140deg,#f8fcff,#d9efff);overflow-y:auto}.event-detail{max-width:1080px;margin:0 auto;padding:96px 48px 80px}.event-hero{background:linear-gradient(135deg,#f8fcfd,#e3f1f8);border:1px solid #4a7c9e29;border-radius:28px;grid-template-columns:1.2fr .8fr;align-items:center;gap:48px;min-height:420px;padding:56px 48px;display:grid;position:relative}.event-hero-copy{min-width:0}.event-hero-copy h2{color:#315875;letter-spacing:-.035em;margin:18px 0 0;font-size:clamp(30px,4vw,46px);font-weight:620;line-height:1.18}.event-overview{color:#526e83;margin:20px 0 0;font-size:16px;line-height:1.8}.event-metrics{flex-wrap:wrap;gap:12px 28px;margin-top:30px;display:flex}.event-metric{flex-direction:column;gap:4px;display:flex}.event-metric strong{color:#315875;letter-spacing:-.02em;font-size:26px;font-weight:700;line-height:1}.event-metric span{color:#7a94a8;font-size:11px;font-weight:600}.event-hero-photo{border-radius:20px;overflow:hidden;box-shadow:0 20px 50px #3158752e}.event-hero-photo img{object-fit:cover;width:100%;height:100%;max-height:340px;display:block}.event-section{background:#ffffffd1;border:1px solid #4a7c9e21;border-radius:24px;margin-top:28px;padding:48px 56px;box-shadow:0 16px 44px #3158750f}.event-section-label{color:#5d8daa;letter-spacing:.14em;text-transform:uppercase;margin-bottom:20px;font-size:10px;font-weight:760;display:block}.event-section p{color:#42546c;margin:0;font-size:16px;line-height:1.85}.event-bg p{max-width:820px}.event-goals-list{margin:6px 0 0;padding:0;list-style:none}.event-goals-list li{color:#42546c;padding:10px 0 10px 26px;font-size:15px;line-height:1.7;position:relative}.event-goals-list li:before{content:"";background:#9cc3dc;border-radius:2px;width:8px;height:8px;position:absolute;top:20px;left:4px;transform:rotate(45deg)}.event-sections{box-shadow:none;background:0 0;border:0;flex-direction:column;gap:24px;padding:0;display:flex}.event-block{background:#ffffffd9;border:1px solid #4a7c9e21;border-radius:22px;grid-template-columns:52px 1fr;gap:24px;padding:40px 44px;display:grid;box-shadow:0 14px 40px #3158750f}.event-block-index{color:#b8d3e6;letter-spacing:-.04em;font-size:30px;font-weight:760;line-height:1.1}.event-block-copy h3{color:#315875;letter-spacing:-.02em;margin:0 0 14px;font-size:clamp(20px,2.2vw,26px);font-weight:620}.event-block-copy .clean-list{margin:18px 0 0}.event-timeline-list{border-left:2px solid #5d91b438;flex-direction:column;gap:0;margin:6px 0 0;padding:0;list-style:none;display:flex}.event-timeline-list li{padding:14px 0 14px 28px;position:relative}.event-timeline-list li:before{content:"";background:#5d91b4;border-radius:50%;width:12px;height:12px;position:absolute;top:22px;left:-7px;box-shadow:0 0 0 4px #5d91b429}.event-timeline-list time{color:#7a94a8;letter-spacing:.06em;font-size:11px;font-weight:700;display:block}.event-timeline-list span{color:#315875;margin-top:4px;font-size:16px;font-weight:620;display:block}.event-timeline-list p{color:#617b90!important;margin:6px 0 0!important;font-size:14px!important}.event-outcome p{max-width:860px;color:#315875!important;font-size:clamp(19px,2.2vw,26px)!important;line-height:1.6!important}.event-docs-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:6px;display:grid}.event-doc{background:#f4f9fc;border:1px solid #4a7c9e29;border-radius:16px;align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.event-doc-file{color:#fff;letter-spacing:.04em;background:#5d91b4;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;font-size:10px;font-weight:800;display:grid}.event-doc strong{color:#315875;font-size:15px;font-weight:620;display:block}.event-doc p{color:#7a94a8!important;margin:6px 0 0!important;font-size:12px!important}.event-photos-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-top:6px;display:grid}.event-photos-grid figure{border-radius:16px;margin:0;overflow:hidden}.event-photos-grid img{object-fit:cover;aspect-ratio:4/3;width:100%;height:100%;display:block}.event-detail-close{text-align:center;margin:40px 0 0}@media (max-width:900px){.event-detail{padding:76px 20px 60px}.event-hero{grid-template-columns:1fr;gap:26px;min-height:0;padding:36px 26px}.event-hero-photo img{max-height:260px}.event-section{padding:34px 24px}.event-block{grid-template-columns:1fr;gap:10px;padding:30px 24px}.event-block-index{font-size:22px}}.writing-reader{z-index:130;background:#f7fbfc;position:fixed;inset:0;overflow-y:auto}.writing-book{max-width:920px;margin:0 auto;padding:128px 48px 60px}.writing-cover{text-align:center;background:linear-gradient(145deg,#f8fcfd,#e3f1f8);border:1px solid #4a7c9e29;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;min-height:62vh;padding:60px 40px;display:flex}.writing-cover-type{color:#5d8daa;letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:760}.writing-cover h2{color:#315875;letter-spacing:-.03em;margin:20px 0 0;font-size:clamp(28px,4vw,46px);font-weight:620;line-height:1.25}.writing-cover p{color:#617b90;max-width:640px;margin:18px 0 0;font-size:16px;line-height:1.7}.writing-cover-note{border-top:1px solid #4a7c9e2e;margin-top:22px;padding-top:18px;color:#7a94a8!important;font-size:14px!important}.writing-open{color:#fff;cursor:pointer;background:#5d91b4;border:0;border-radius:999px;align-items:center;gap:14px;min-height:52px;margin-top:30px;padding:0 26px;font-size:15px;font-weight:620;display:inline-flex}.writing-pages{padding:8px 0 40px}.writing-block{border-bottom:1px solid #4a7c9e29;margin-bottom:40px;padding-bottom:32px}.writing-block h3{color:#315875;letter-spacing:-.02em;margin:0 0 16px;font-size:clamp(22px,2.6vw,30px);font-weight:620}.writing-block p{color:#42546c;text-align:justify;margin:0 0 14px;font-size:16px;line-height:1.9}.writing-empty{color:#7a94a8;font-size:16px}.writing-back{color:#5d8daa;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;margin-top:10px;font-size:14px;font-weight:620;display:inline-flex}.showcase-type,.showcase-detail>span{color:#5d8daa;letter-spacing:.12em;font-size:10px;font-weight:760;display:block}.showcase-type{margin-bottom:12px}.skill-showcase-card h3{color:#315875;letter-spacing:-.035em;margin:0;font-size:clamp(24px,2.8vw,38px);font-weight:610;line-height:1.16}.showcase-excerpt{color:#617b90;margin:16px 0 0;font-size:14px;line-height:1.7}.showcase-detail{border-top:1px solid #4a7c9e24;margin-top:22px;padding-top:18px}.showcase-detail p{color:#526e83;margin:9px 0 0;font-size:13px;line-height:1.72}.showcase-outcome{background:#eaf4f8;border:0;border-radius:16px;margin-top:18px;padding:18px}@media (max-width:1100px){.site-header nav{justify-content:flex-start;overflow-x:auto}.site-header nav a{white-space:nowrap}.hero{min-height:900px}.hero h1{max-width:760px}.identity-card{bottom:78px;right:46px}.hero-footnote{bottom:42px}.case-files{grid-template-columns:1fr 1fr}.case-file,.case-file:nth-child(4),.case-file:nth-child(5){grid-column:span 1}.case-file:last-child{grid-column:1/-1}.skills-section{grid-template-columns:1fr;padding-bottom:40px}.skills-copy{max-width:680px}.tree-stage{min-height:680px}.contact-grid{grid-template-columns:60px 1fr}.contact-copy{grid-column:2;max-width:520px}.case-cover{grid-template-columns:1fr;padding-top:140px}.case-cover-copy{max-width:880px}.case-hero-image,.performance-board{min-height:300px;max-height:46vh}.text-slide{grid-template-columns:70px 1fr}.slide-rule{display:none}.process-grid{grid-template-columns:1fr 1fr}}@media (max-width:760px){html{scroll-padding-top:78px}.section[id]{scroll-margin-top:-20px}.site-header{grid-template-columns:1fr auto;width:calc(100% - 20px);height:56px;padding-left:14px;top:10px}.brand span{font-size:13px}.brand strong{font-size:12px}.site-header nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffde;border-radius:12px;align-items:center;height:38px;padding:0 12px;position:absolute;top:64px;left:0;right:0;box-shadow:0 10px 30px #14437c1a}.site-header nav a{font-size:10px}.language-toggle button{min-width:32px;height:30px}.hero{border-radius:0 0 28px 28px;min-height:920px;margin:0 8px;padding:150px 22px 36px}.hero h1{font-size:clamp(55px,17vw,76px)}.hero-intro{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch;max-width:300px}.text-button{justify-content:space-between;padding:0 12px}.identity-card{width:auto;bottom:72px;left:22px;right:22px}.hero-footnote{bottom:30px;left:24px}.section{padding:95px 22px}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:45px}.section-heading h2,.skills-copy h2{margin:0 0 16px;font-size:48px}.education-grid{grid-template-columns:1fr}.education-card{min-height:380px;padding:26px}.education-honours{flex-direction:column;grid-column:1;gap:18px;padding:22px}.education-honours ul{flex-direction:column;align-items:flex-start}.education-honours li{white-space:normal}.experience-group{grid-template-columns:1fr;gap:32px}.experience-list article{grid-template-columns:1fr;gap:12px}.timeline-axis-wrap{padding-bottom:10px;overflow-x:auto}.timeline-axis{min-width:720px;height:106px;margin:0 4px}.timeline-legend{gap:14px}.timeline-card{padding:22px 20px 24px}.timeline-card-head{flex-wrap:wrap;gap:8px}.timeline-card-head time{margin-left:0}.case-section{padding-left:22px;padding-right:22px}.case-files{grid-template-columns:1fr}.case-file,.case-file:nth-child(4),.case-file:nth-child(5),.case-file:last-child{grid-column:span 1}.skills-section{border-radius:28px;margin:8px;padding:70px 22px 24px}.tree-stage{min-height:850px}.tree-trunk{height:50%;bottom:2%;left:49%}.skill-node{max-width:135px;font-size:10px}.gallery-section{padding-left:22px;padding-right:0}.gallery-track{padding-right:22px}.gallery-track figure,.photo-track figure,.photo-track figure:nth-child(2n){flex-basis:84vw}.gallery-track img,.photo-track img{height:300px}.contact-section{margin:10px 8px 0;padding:44px 22px 22px}.contact-grid{grid-template-columns:1fr}.contact-copy{grid-column:1}.contact-grid h2{font-size:48px}footer{flex-direction:column}.overlay-header{height:58px;top:8px}.overlay-header>div span{display:none}.overlay-header>div strong{max-width:220px}.close-button span{display:none}.case-slide{padding:100px 22px 50px}.case-cover{gap:28px}.case-cover-copy h2{font-size:46px}.metric-row{grid-template-columns:1fr 1fr 1fr}.metric strong{font-size:24px}.performance-board{height:38vh}.text-slide,.split-slide,.result-slide,.evidence-slide{grid-template-columns:1fr;gap:34px}.slide-index{display:none}.slide-copy p{font-size:32px}.case-slide h3{font-size:38px}.process-grid{grid-template-columns:1fr;gap:10px}.process-grid article{min-height:150px}.process-grid article p{margin-top:35px}.result-slide .metric-row{grid-column:1}.evidence-slide .primary-button{justify-self:start;position:static}.skill-page{padding:56px 20px 50px}.skill-intro{grid-template-columns:1fr}.skill-intro>span,.skill-intro h2,.skill-intro p{grid-column:1}.skill-intro h2{margin:0;font-size:60px}.skill-detail-grid{grid-template-columns:1fr}.evidence-card{grid-column:1}.honours-gallery{grid-template-columns:1fr}.skill-showcase-card{flex-basis:min(680px,86vw)}.copywriting-showcase-track .skill-showcase-card{flex-basis:min(480px,82vw)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.case-slides{scroll-snap-type:none}}:root{--ink:#294b68;--muted:#6d879d;--blue:#4e8fbe;--blue-2:#8abadd;--sky:#eaf5fb;--paper:#f8fbfc;--line:#3d678829;--navy:#365f80;--radius:28px}body{color:var(--ink);background:#f7fbfc;font-family:Avenir,Avenir Next,PingFang SC,Noto Sans CJK SC,Microsoft YaHei,sans-serif;overflow-x:hidden}.glass{-webkit-backdrop-filter:blur(20px)saturate(115%);background:#f8fcfea8;border:1px solid #ffffffc7;box-shadow:0 20px 60px #416b8b1f}.site-header{border:1px solid #3056717a;border-radius:999px;grid-template-columns:1fr auto;width:min(1080px,100% - 120px);height:68px;padding:7px 9px 7px 28px;position:absolute;top:138px;box-shadow:0 10px 30px #486d871a}.site-header .brand{display:none}.site-header nav{justify-content:center;gap:clamp(10px,1.25vw,18px)}.site-header nav a{color:#4a6e87;text-align:center;white-space:nowrap;border-radius:999px;flex:none;max-width:none;padding:14px 15px;font-size:14px;font-weight:610}.site-header nav a:hover{color:#294b68;background:#ffffffad}.language-toggle{background:#d9ecf7d1;border-radius:999px}.language-toggle button{border-radius:999px}.language-toggle button.active{box-shadow:none;background:#5f93b6}.hero{background:linear-gradient(#f5fbfd1f,#e2f1f914),url(/images/hero-landscape.jpg) 50%/cover no-repeat;border-radius:0 0 34px 34px;min-height:700px;margin:0;padding:0}.hero:before{background:linear-gradient(#ffffff29,#0000 46%,#ecf7fc33);-webkit-mask-image:none;mask-image:none}.hero-masthead{z-index:4;text-align:center;justify-content:center;width:min(1200px,100% - 48px);display:flex;position:absolute;top:30px;left:50%;transform:translate(-50%)}.hero-masthead h1{color:#55778f;letter-spacing:-.045em;text-align:center;width:100%;margin:0;font-size:clamp(48px,5.8vw,84px);font-weight:560;line-height:1}.hero-masthead h1 span{color:#8fb2c9;font-weight:360}.hero-masthead p{color:#7898ad;letter-spacing:.26em;margin:10px 0 0;font-size:9px;font-weight:700}.hero-copy{z-index:3;text-align:left;background:linear-gradient(145deg,#cbe7f6c2,#ffffffb8);border-radius:34px;justify-content:flex-start;align-items:center;gap:44px;width:min(1180px,100% - 120px);max-width:none;padding:44px 64px;display:flex;position:absolute;top:238px;left:50%;transform:translate(-50%)}.hero-copy .hero-info{flex:auto;min-width:0}.hero-copy-zh{text-align:left;flex-direction:row;justify-content:center;align-items:center;gap:64px;padding:52px 80px}.hero-copy-zh .hero-info{flex:0 auto;min-width:0}.hero-copy-zh .hero-name,.hero-copy-zh .hero-contact,.hero-copy-zh .hero-actions{justify-content:flex-start}.hero-copy-zh .hero-actions .primary-button{margin:0}.hero-copy .portrait-placeholder{color:#6a8ba2;background:#f7fbfcb3;border:6px solid #ffffffb8;border-radius:50%;flex:none;width:210px;height:210px;min-height:210px;margin:0;overflow:hidden;box-shadow:0 12px 35px #4a73921f}.hero-copy .portrait-photo{object-fit:cover;object-position:50% 12%;border-radius:50%;width:100%;height:100%;display:block}.hero-copy .portrait-placeholder span{letter-spacing:-.04em;font-size:28px}.hero-copy .portrait-placeholder p{margin:5px 0 0;font-size:9px;font-weight:600}.hero-name{color:#365d78;white-space:nowrap;justify-content:flex-start;align-items:baseline;gap:14px;margin:0 0 30px;display:flex}.hero-name strong,.hero-name span{font-family:inherit}.hero-name strong{letter-spacing:.035em;font-size:clamp(27px,2.2vw,34px);font-weight:700;line-height:1}.hero-copy-zh .hero-name span{color:#6c8ca2;letter-spacing:.005em;text-transform:none;padding-bottom:1px;font-size:18px;font-weight:580;line-height:1}.hero-copy .eyebrow{color:#6c8ca2;letter-spacing:.2em;background:0 0;margin:0 0 20px;padding:0;font-size:9px;line-height:1.2;display:block}.hero-copy h2{color:#3d617b;letter-spacing:-.035em;margin:0;font-size:clamp(34px,3.4vw,46px);font-weight:620;line-height:1.12}.hero-copy h2 span,.hero-copy h2 strong{display:block}.hero-copy h2 span{letter-spacing:-.02em;margin-bottom:7px;font-size:.86em}.hero-copy h2 strong{color:#5f94b8;font-size:1.08em;font-weight:700}.hero-name-en span{color:#365d78;letter-spacing:.005em;text-transform:none;padding-bottom:0;font-size:20px;font-weight:650}.hero-intro{color:#5e778b;text-align:left;max-width:480px;margin:17px 0 0;font-size:13px;line-height:1.58}.hero-contact{color:#52758e;flex-wrap:wrap;justify-content:flex-start;gap:8px 22px;margin-top:30px;font-size:12px;display:flex}.hero-actions{justify-content:flex-start;margin-top:34px}.hero-actions .primary-button{min-width:250px;margin:0}.primary-button{background:#5d91b4;border-radius:999px;box-shadow:0 10px 24px #497b9d2e}.primary-button:hover{box-shadow:0 14px 30px #497b9d3d}.hero-copy{border-radius:28px;justify-content:flex-start;gap:38px;width:min(1080px,100% - 120px);padding:54px 58px}.hero-copy-zh{justify-content:center;align-items:center;gap:22px;padding:58px;display:flex}.hero-copy .portrait-placeholder{width:190px;height:190px;min-height:190px;display:block}.hero-copy .hero-info{flex:auto;display:block}.hero-main-copy{grid-template-columns:120px minmax(0,1fr);align-items:center;gap:16px;min-width:0;display:grid}.hero-side-copy{border:0;align-items:center;gap:20px;min-width:0;padding:20px 0 0;display:flex}.hero-name{flex-direction:column;align-items:flex-start;gap:6px;margin:0}.hero-name:after{content:"";background:#3d8cbc;width:28px;height:2px;margin-top:7px}.hero-name strong{letter-spacing:.025em;font-size:clamp(27px,2.1vw,32px)}.hero-copy-zh .hero-name span{color:#1676b5;letter-spacing:0;font-family:Arial,Helvetica,sans-serif;font-size:20px;font-weight:700}.hero-copy h2{border-left:1px solid #5d91b44d;padding-left:28px;font-size:clamp(34px,3.35vw,45px);line-height:1.12}.hero-copy-zh h2 span{margin-bottom:7px;font-size:1em}.hero-copy h2 strong{font-size:1em}.hero-contact{color:#426b89;flex:auto;justify-content:flex-start;align-items:center;gap:0;margin-top:0;font-size:14px;display:flex}.hero-contact-item,.hero-contact a{color:inherit;white-space:nowrap;align-items:center;gap:9px;padding:0 16px;display:inline-flex}.hero-contact-item:first-child{padding-left:0}.hero-contact a+a,.hero-contact-item+a{border-left:1px solid #5d91b438}.hero-contact a{color:#426b89}.hero-contact i{color:#416f90;place-items:center;width:18px;height:18px;font-family:Arial,sans-serif;font-size:16px;font-style:normal;font-weight:700;display:inline-grid}.hero-contact a:last-child i{color:#f7fbfc;background:#416f90;border-radius:3px;font-size:11px}.hero-contact .mail-icon{border:1.5px solid #416f90;border-radius:2px;font-size:0;position:relative}.hero-contact .mail-icon:after{content:"";border-bottom:1.5px solid #416f90;border-right:1.5px solid #416f90;width:9px;height:9px;position:absolute;top:2px;left:3px;transform:rotate(45deg)}.hero-actions{flex:none;margin:0}.hero-actions .primary-button{min-width:0;padding:13px 24px;font-size:14px}.hero-copy-zh .hero-contact-item,.hero-copy-zh .hero-contact a{padding-left:13px;padding-right:13px}.hero-copy-zh .hero-contact-item:first-child{padding-left:0}.hero-copy-zh .hero-actions{transform:translate(22px)}.hero-copy-en{gap:44px;padding:44px 64px}.hero-copy-en .portrait-placeholder{width:210px;height:210px;min-height:210px}.hero-copy-en .hero-main-copy{display:block}.hero-copy-en .hero-name{flex-direction:row;align-items:baseline;gap:9px;margin:0 0 16px}.hero-copy-en .hero-name:after{display:none}.hero-copy-en .hero-name-en span{color:#365d78;letter-spacing:.005em;font-family:inherit;font-size:20px;font-weight:650}.hero-copy-en h2{letter-spacing:-.045em;border-left:0;padding-left:0;font-size:clamp(31px,3.1vw,41px);font-weight:560;line-height:1.28}.hero-copy-en h2 span{letter-spacing:inherit;margin-bottom:0;font-size:1em}.hero-copy-en h2 strong{font-size:1em;font-weight:700}.hero-copy-en .hero-side-copy{border:0;padding:0;display:block}.hero-copy-en .hero-contact{flex-wrap:wrap;gap:8px 22px;margin-top:20px;font-size:12px;display:flex}.hero-copy-en .hero-contact-item,.hero-copy-en .hero-contact a{gap:0;padding:0}.hero-copy-en .hero-contact a+a,.hero-copy-en .hero-contact-item+a{border-left:0}.hero-copy-en .hero-contact i{display:none}.hero-copy-en .hero-actions{margin-top:24px;transform:none}.hero-copy-en .hero-actions .primary-button{min-width:250px;padding:13px 24px}.hero-copy-zh .hero-info{flex:0 720px;grid-template-columns:minmax(0,1fr) 276px;align-items:center;gap:22px;display:grid}.hero-copy-zh .hero-main-copy{display:block}.hero-copy-zh .portrait-placeholder,.hero-copy-zh .hero-main-copy{transform:translate(64px)}.hero-copy-zh .hero-name{flex-direction:row;align-items:baseline;gap:14px;margin:0;padding-bottom:26px;position:relative}.hero-copy-zh .hero-name:after{margin:0;position:absolute;bottom:0;left:0}.hero-copy-zh h2{border-left:0;margin-top:23px;padding-left:0}.hero-copy-zh .hero-side-copy{border-left:1px solid #5d91b452;padding:6px 0 6px 42px;display:block;transform:translate(-48px)}.hero-copy-zh .hero-contact{justify-content:stretch;gap:16px;display:grid}.hero-copy-zh .hero-contact-item,.hero-copy-zh .hero-contact a{gap:13px;padding:0}.hero-copy-zh .hero-contact a+a,.hero-copy-zh .hero-contact-item+a{border-left:0}.hero-copy-zh .hero-actions{margin-top:28px;transform:none}.text-button{color:#456b85}.hero-footnote{color:#5e7d92;bottom:25px;left:50%;transform:translate(-50%)}.hero-footnote i{background:#7796aa}.section{max-width:1240px;padding:112px 48px}.section-heading{margin-bottom:58px;display:block}.section-heading h2,.skills-copy h2{color:#315875;font-size:clamp(44px,5.2vw,68px);font-weight:560}.section-heading p,.skills-copy>p{color:#71899c}.section-number{color:#6e9dbd}.education-grid{gap:24px}.education-card,.education-card:nth-child(2){min-height:390px;color:var(--ink);background:linear-gradient(145deg,#fff,#edf7fb);border-color:#5883a124;box-shadow:0 16px 50px #4c718b12}.education-card:nth-child(2){background:linear-gradient(145deg,#eff8fc,#dceef7)}.education-card:nth-child(2)>p,.education-card:nth-child(2) .course-block p{color:#647f93}.education-card:nth-child(2)>strong{color:#4f86aa}.education-card h3{color:#365d78;font-weight:620}.education-card-top{justify-content:flex-end}.education-card{grid-template-rows:auto 72px 40px 34px 1fr;display:grid}.education-honours{background:linear-gradient(145deg,#fff,#f0f8fb);border:1px solid #5883a124;border-radius:28px;grid-column:1/-1;margin-top:24px;padding:28px 34px;box-shadow:0 16px 50px #4c718b12}.education-honours-head span{color:#4f86aa;letter-spacing:.04em;text-transform:none;font-size:22px}.education-honours li{color:#647f93;background:#ffffffb8;border-color:#5883a129}.education-section-en .education-honours li{font-size:12px}.education-card h3{align-self:end;margin:22px 0 8px;font-size:30px}.program-line{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.program-line strong{color:#4f86aa;font-size:20px}.faculty-line{flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:10px;display:flex}.faculty-line p{color:var(--muted);margin:0;font-size:17px}.program-line span{color:#6a879a;letter-spacing:.06em;background:#ffffffbd;border-radius:999px;padding:5px 9px;font-size:9px}.course-block{align-self:start;margin-top:34px;padding-top:0}.course-block span{font-size:14px}.course-block p{font-size:13px;line-height:1.75}.education-section-en .education-card h3{font-size:27px}.education-section-en .faculty-line p{font-size:15px}.education-section-en .program-line strong{font-size:18px}.education-section-en .course-block p{font-size:13px}.experience-group{border-color:#4b749229}.experience-list article{border-color:#4b749224}.experience-list h4{color:#345d79}.experience-list p{color:#6c8192}.case-section{background:linear-gradient(#eff8fb 0%,#e6f3f8 100%)}.folder-tab,.folder-tab:after{background:#b9d8e9}.folder-tab{color:#355d78}.folder-body{background:#ffffffe6;box-shadow:0 16px 42px #4269851a}.folder-body:after{border-color:#7baac842}.case-file:hover .folder-body{box-shadow:0 23px 54px #42698526}.folder-meta b,.folder-open{color:#5688aa}.case-section-en .folder-body h3{letter-spacing:-.035em;font-size:25px;line-height:1.3}.case-section-en .folder-meta{font-size:9px}.case-section-en .tag-row span{padding-inline:8px;font-size:10px}.case-section-en .folder-footer{padding-top:16px}.skills-section{max-width:1400px;min-height:1120px;color:var(--ink);background:linear-gradient(145deg,#f8fcfd 0%,#eaf5fa 56%,#deeff7 100%);border:1px solid #5b89a721;border-radius:38px;margin:30px auto;padding:0 0 36px;display:block;position:relative;box-shadow:0 20px 60px #476c8512}.skills-copy{z-index:5;width:auto;padding:48px 58px 22px;position:relative;top:auto;left:auto}.skills-copy h2{margin:0 0 15px;font-size:clamp(42px,4.6vw,62px);line-height:1.05}.skills-copy>p{color:#71899c;letter-spacing:.01em;max-width:620px;margin:0;font-size:14px;line-height:1.7}.skill-legend{color:#648096}.skill-legend i{box-shadow:none;background:#78a7c6}.skills-visual{width:100%;min-width:0;margin:0 auto;padding:0 14px;overflow:hidden}.tree-stage{background:#ffffff8f;border-radius:30px;min-height:900px;overflow:hidden}.tree-art{object-fit:contain;object-position:center top;transform-origin:50%;mix-blend-mode:multiply;opacity:.75;width:100%;height:100%;position:absolute;inset:0;transform:scaleX(1.2)}.tree-glow,.tree-trunk,.tree-branch{display:none}.skill-node{color:#466981;letter-spacing:.01em;background:#fdfefee6;border:1px solid #5b89a745;border-radius:10px;max-width:160px;min-height:34px;padding:7px 12px;font-size:12px;line-height:1.35;box-shadow:0 8px 20px #3e647f17}.skill-node:before{display:none}.key-node{color:#315c79;background:#eff8fcf5;border:2px solid #6f9fbe;min-height:44px;padding:9px 15px;font-size:13px;font-weight:800;box-shadow:0 10px 24px #49759324}.key-node i{display:none}.key-node:hover{transform:translate(-50%,-50%)scale(1.035)}.language-panel{background:#ffffffb3;border:1px solid #5b89a72e;border-radius:22px;grid-template-columns:100px 1fr;align-items:center;gap:18px;margin-top:18px;padding:20px 22px;display:grid}.language-panel>span{color:#6c91aa;letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:760}.language-panel>div{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.language-panel p{color:#456c87;text-align:center;background:#e8f4f9;border-radius:999px;margin:0;padding:10px 12px;font-size:12px}.gallery-track img{box-shadow:none;object-fit:contain;border-radius:0;width:auto;max-width:100%;max-height:78vh}.visual-category-tabs{border:1px solid #54809e26;border-radius:18px;flex-wrap:wrap;gap:10px;margin:0 max(60px,50vw - 660px) 0 0;padding:8px;display:flex}.gallery-empty{color:#7a94a8;text-align:center;border:1px dashed #54809e47;border-radius:22px;margin:48px 0 0;padding:60px 20px;font-size:15px}.visual-category-tabs button{color:#668399;cursor:pointer;background:0 0;border:0;border-radius:12px;flex:150px;min-height:42px;padding:0 16px;font-size:12px}.visual-category-tabs button.active{color:#365f7a;font-weight:700;box-shadow:0 8px 24px #446c8817}.gallery-track{align-items:center;padding-top:52px;padding-bottom:58px}.gallery-track figure,.photo-track figure,.photo-track figure:nth-child(2n){opacity:.56;flex:0 0 min(360px,36vw);transition:flex-basis .38s,transform .38s,opacity .38s;transform:scale(.86)}.gallery-track figure.active{opacity:1;flex-basis:min(650px,64vw);transform:scale(1)}.gallery-track:focus-visible,.gallery-track figure:focus-visible{outline-offset:6px;outline:3px solid #8bb6d1}.poster-track img{object-fit:contain;width:100%;height:auto}.poster-track figure.active img{height:auto}.cropped-design{background-repeat:no-repeat;border-radius:28px;width:100%;height:auto;transition:transform .38s;box-shadow:0 16px 42px #4269851a}.poster-track figure.active .cropped-design{height:auto}.visual-gallery .poster-track figcaption{display:none}.visual-gallery .poster-track img,.visual-gallery .poster-track figure.active img{object-fit:contain;height:auto}.gallery-section .gallery-track figure,.gallery-section .photo-track figure,.gallery-section .photo-track figure:nth-child(2n){flex-basis:min(300px,28vw)}.gallery-section .gallery-track figure.active{flex-basis:min(520px,48vw)}.gallery-section .gallery-track img,.gallery-section .visual-gallery .poster-track img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:78vh;box-shadow:none;border-radius:0;transition:transform .38s}.gallery-section .gallery-track figure.active img,.gallery-section .visual-gallery .poster-track figure.active img{height:auto;max-height:78vh}.poster-track figcaption{color:#55758c;letter-spacing:.03em;justify-content:center;margin-top:16px;font-size:12px}.photo-track img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:78vh;box-shadow:none;border-radius:0}.photo-track figure.active img{height:auto;max-height:78vh}.visual-gallery-illustration .poster-track figure{scroll-snap-align:center;justify-content:center;align-items:center;display:flex}.visual-gallery-illustration .poster-track figure.active{flex:none;min-width:min(320px,40vw)}.contact-section{color:#315875;background:radial-gradient(circle at 12% 18%,#5d91b438,#0000 34%),radial-gradient(circle at 88% 82%,#78afd22e,#0000 38%),linear-gradient(145deg,#e4f2f9,#c9e5f2);place-items:center;min-height:clamp(300px,38vh,390px);padding:44px max(6vw,44px);display:grid;position:relative;overflow:hidden}.contact-section:before{content:"";border:1px solid #5d91b433;border-radius:50%;width:420px;height:420px;position:absolute;top:-160px;right:-140px}.contact-section:after{content:"";border:1px solid #5d91b429;border-radius:50%;width:260px;height:260px;position:absolute;bottom:-110px;left:-80px}.contact-section .section-number,.contact-grid>div>p:first-child,.contact-copy p,footer{color:#587a92}.light-button{color:#fff;background:#5d91b4}footer{background:#c7e4f1}.contact-grid{z-index:2;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);align-items:center;gap:44px;max-width:1120px;position:relative}.contact-email-large{color:#315875;letter-spacing:-.025em;-webkit-backdrop-filter:blur(10px);background:#ffffff80;border:1px solid #fffc;border-radius:28px;flex-flow:wrap;align-items:baseline;gap:0;padding:32px 36px;font-weight:620;line-height:1.08;transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 22px 60px #3158751f}.contact-email-large:hover{transform:translateY(-4px);box-shadow:0 28px 70px #3158752e}.contact-email-name{font-size:clamp(30px,3.5vw,48px)}.contact-email-domain{color:#4f86aa;font-size:clamp(30px,3.5vw,48px)}.contact-email-large:hover .contact-email-domain{color:#2f6d99}.contact-copy{text-align:left;align-self:center;width:min(400px,100%);margin:0;padding-left:28px;position:relative}.contact-copy:before{content:"";background:linear-gradient(#5d91b4,#5d91b429);border-radius:3px;width:3px;position:absolute;top:8px;bottom:8px;left:0}.contact-copy p{color:#456c87;margin:0 0 24px;font-size:clamp(17px,1.45vw,20px);font-weight:560;line-height:1.65}.contact-copy .primary-button{gap:12px;min-height:56px;margin:0;padding-inline:28px;font-size:15px}.contact-section-zh .contact-copy p{max-width:460px}footer{font-size:13px}.overlay{background:#f7fbfc}.close-button{background:#5d86a3}.close-button b{color:#5d86a3}.case-cover{background:linear-gradient(145deg,#f7fbfd,#dfedf5)}.performance-board{background:linear-gradient(145deg,#5f88a5,#86b4d1);box-shadow:0 24px 60px #466e8b33}.dark-slide,.result-slide{color:#315875;background:#dcecf4}.result-slide .clean-list li{color:#587389;border-color:#3e698629}.result-slide .metric span{color:#668195}.split-slide{background:#eaf5f9}.skill-overlay{background:linear-gradient(145deg,#f8fcfd,#e5f3f8)}.skill-detail-grid .dark-card{color:#315875;background:#dcecf4}.dark-card .clean-list li{color:#557187;border-color:#416c8929}.evidence-card{background:#73a3c2!important}.case-slide{padding:108px max(6vw,48px) 42px}.text-slide{grid-template-columns:64px minmax(0,860px) 1fr;gap:38px}.slide-copy span,.slide-label,.skill-detail-grid article>span{margin-bottom:16px}.slide-copy p{letter-spacing:-.02em;max-width:900px;font-size:clamp(20px,2.35vw,34px);line-height:1.48}.split-slide,.result-slide{gap:48px}.case-slide h3{font-size:clamp(30px,3.8vw,52px);line-height:1.14}.clean-list li{padding:13px 0 13px 26px;font-size:14px;line-height:1.55}.clean-list li:before{width:7px;height:7px;top:20px}.process-grid{margin-top:38px}.process-grid article{min-height:170px;padding:20px}.process-grid article p{margin-top:38px;line-height:1.52}.evidence-slide{padding-bottom:34px;display:block}.evidence-slide>div:first-child{justify-content:space-between;align-items:baseline;gap:28px;margin-bottom:22px;display:flex}.evidence-slide h3{font-size:clamp(26px,3vw,42px)}.evidence-gallery{grid-template-rows:repeat(2,minmax(180px,1fr));grid-template-columns:1.35fr .7fr .7fr;gap:14px;height:min(62vh,610px);display:grid}.evidence-gallery figure{background:linear-gradient(145deg,#e1eff6,#cbdfea);border-radius:18px;margin:0;overflow:hidden}.evidence-gallery .primary-evidence{grid-row:1/3}.evidence-gallery img{object-fit:cover;width:100%;height:100%}.evidence-gallery figure>span{background:linear-gradient(145deg,#ffffff47,#0000),repeating-linear-gradient(135deg,#5f8fb00f 0 1px,#0000 1px 18px);width:100%;height:100%;display:block}.evidence-slide .primary-button{min-height:42px;bottom:30px;right:max(6vw,48px)}@media (max-width:1100px){.site-header{width:calc(100% - 44px)}.site-header nav a{font-size:11px}.skills-section{grid-template-columns:1fr}.skills-copy{max-width:700px}}@media (max-width:760px){.site-header{grid-template-columns:1fr auto;width:calc(100% - 24px);height:54px;padding-left:8px;top:108px}.site-header nav{height:auto;box-shadow:none;scrollbar-width:none;background:0 0;justify-content:flex-start;padding:0;position:static;overflow-x:auto}.site-header nav::-webkit-scrollbar{display:none}.site-header nav a{flex:none;padding:11px 10px;font-size:10px}.hero{min-height:700px;margin:0;padding:0}.hero-masthead{top:28px}.hero-masthead h1{font-size:40px}.hero-copy{text-align:center;flex-direction:column;gap:28px;width:calc(100% - 42px);padding:30px 26px;top:182px}.hero-copy-zh{padding:30px 26px}.hero-copy .hero-info{grid-template-columns:1fr;gap:28px}.hero-side-copy{border-top:1px solid #5d91b447;border-left:0;padding:24px 0 0}.hero-copy h2{font-size:31px;line-height:1.13}.hero-copy .portrait-placeholder{width:130px;height:130px;min-height:130px}.hero-info{text-align:center}.hero-name{justify-content:center;gap:11px;margin-bottom:26px}.hero-name strong{letter-spacing:.03em;font-size:27px}.hero-name span{letter-spacing:.005em;padding-bottom:1px;font-size:15px}.hero-name-en span{font-size:20px}.hero-copy h2 span{margin-bottom:6px}.hero-contact{margin-top:28px}.hero-intro{max-width:330px;margin:17px auto 0;font-size:12px;line-height:1.55}.hero-actions{justify-content:center;align-items:center}.hero-contact{flex-direction:column;justify-content:center;justify-items:center;gap:12px;display:grid}.hero-actions{margin-top:24px}.hero-actions .primary-button{margin:0 auto}.section{padding:92px 22px}.skills-section{background:linear-gradient(145deg,#f8fcfd,#e8f5fa);min-height:auto;padding:0 0 20px}.skills-copy{width:auto;max-width:none;padding:34px 24px 18px;position:relative;top:auto;left:auto}.skills-copy h2{font-size:40px}.skills-copy>p{max-width:330px;font-size:11px;line-height:1.65}.skills-visual{padding:0}.tree-stage{width:150%;min-height:1050px;margin-left:-25%}.tree-art{object-position:center top;opacity:.66;width:96%;height:100%;inset:0 2%}.skill-node{max-width:100px;padding:6px 8px;font-size:9px}.language-panel{grid-template-columns:1fr}.language-panel>div{grid-template-columns:1fr 1fr}.visual-category-tabs{margin-right:22px}.contact-section{background:radial-gradient(circle at 15% 12%,#5d91b433,#0000 40%),linear-gradient(145deg,#e4f2f9,#c9e5f2)}.contact-grid{grid-template-columns:1fr;gap:28px}.contact-email-large{text-align:center;flex-direction:column;align-items:center;padding:26px 20px}.contact-email-name,.contact-email-domain{font-size:30px}.contact-copy{text-align:center;width:100%;padding-left:0}.contact-copy:before{display:none}.contact-copy p{margin-left:auto;margin-right:auto}.contact-copy .primary-button{margin:0 auto}footer{background:#c7e4f1}.gallery-track figure,.photo-track figure,.photo-track figure:nth-child(2n){flex-basis:62vw}.gallery-track figure.active{flex-basis:84vw}.poster-track img,.photo-track img,.cropped-design{height:260px}.poster-track figure.active img,.photo-track figure.active img,.poster-track figure.active .cropped-design{height:360px}.visual-gallery .poster-track img,.visual-gallery .poster-track figure.active img{height:auto}.gallery-section .gallery-track figure,.gallery-section .photo-track figure,.gallery-section .photo-track figure:nth-child(2n){flex-basis:54vw}.gallery-section .gallery-track figure.active{flex-basis:78vw}.gallery-section .gallery-track img,.gallery-section .visual-gallery .poster-track img{height:min(38vh,300px)}.gallery-section .gallery-track figure.active img,.gallery-section .visual-gallery .poster-track figure.active img{height:min(54vh,420px)}.slide-copy p{font-size:22px;line-height:1.5}.case-slide h3{font-size:30px}.evidence-slide>div:first-child{margin-bottom:18px;display:block}.evidence-gallery{scroll-snap-type:x mandatory;gap:12px;height:auto;padding:4px 0 18px;display:flex;overflow-x:auto}.evidence-gallery figure,.evidence-gallery .primary-evidence{scroll-snap-align:start;flex:0 0 82vw;height:340px}.evidence-slide .primary-button{margin-top:10px;position:static}.skill-showcase-track{margin:0 -8px;padding-inline:8px}.skill-showcase-card,.copywriting-showcase-track .skill-showcase-card{flex-basis:86vw;padding:10px 10px 22px}.skill-showcase-media{min-height:250px}.research-showcase-media,.copywriting-showcase-media{min-height:0}.skill-showcase-card figcaption{padding:20px 8px 2px}.skill-showcase-card h3{font-size:25px}.research-viz{gap:12px;padding:20px 20px 18px}.viz-bar-row{grid-template-columns:1fr;gap:6px}.viz-bar-label{white-space:normal}}.scroll-nav{z-index:90;opacity:0;pointer-events:none;flex-direction:column;align-items:stretch;gap:8px;transition:opacity .3s,transform .3s;display:flex;position:fixed;bottom:24px;right:24px;transform:translateY(12px)}.scroll-nav.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.scroll-nav-btn{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#315875eb;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-width:96px;height:40px;padding:0 16px;font-size:13px;font-weight:650;line-height:1;transition:background .2s,transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 10px 26px #31587552}.scroll-nav-btn:hover{background:#294b68;transform:translateY(-1px);box-shadow:0 14px 32px #31587566}.scroll-nav-btn:focus-visible{outline-offset:3px;outline:3px solid #9cc3dc}.scroll-nav-icon{font-size:16px;font-weight:800;line-height:1}.scroll-nav-label{white-space:nowrap}@media (max-width:760px){.scroll-nav{gap:6px;bottom:14px;right:14px}.scroll-nav-btn{min-width:44px;height:36px;padding:0 12px}.scroll-nav-label{display:none}}.prd-section-wrap{background:linear-gradient(#f6fbfe 0%,#e9f3fa 100%);border-top:1px solid #4a7c9e1a;border-bottom:1px solid #4a7c9e1a}.prd-section-wrap .section-heading h2{white-space:nowrap;text-wrap:nowrap}@media (max-width:640px){.prd-section-wrap .section-heading h2{font-size:38px}}.prd-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.prd-card{text-align:left;cursor:pointer;background:#ffffffd9;border:1px solid #4a7c9e24;border-radius:24px;flex-direction:column;margin:0;padding:0;transition:transform .32s,box-shadow .32s;display:flex;overflow:hidden;box-shadow:0 20px 54px #31587514}.prd-card:hover{transform:translateY(-6px);box-shadow:0 28px 70px #31587529}.prd-card-index{background:var(--case-accent,#5d91b4);color:#fff;letter-spacing:.14em;border-radius:0 0 14px;align-self:flex-start;margin:0;padding:9px 16px;font-size:10px;font-weight:760;display:inline-block}.prd-card-body{flex-direction:column;flex:1;padding:26px 28px 30px;display:flex}.prd-card-meta{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.prd-card-meta span{color:#5d8daa;font-size:12px;font-weight:620}.prd-card-meta b{color:#9cc3dc;font-size:18px;font-weight:400}.prd-card h3{color:#315875;letter-spacing:-.03em;text-wrap:balance;overflow-wrap:break-word;margin:0;font-size:clamp(20px,2vw,27px);font-weight:620;line-height:1.25}.prd-card .tag-row{flex-wrap:wrap;align-items:center;gap:7px;margin-top:14px;display:flex}.prd-card .tag-row span{white-space:nowrap;border:1px solid #4a7c9e2e;border-radius:999px;align-items:center;padding:6px 10px;font-size:10px;line-height:1.2;display:inline-flex}.prd-card-summary{color:#617b90;text-wrap:pretty;overflow-wrap:break-word;flex:1;margin:16px 0 0;font-size:14px;line-height:1.75}.prd-card-open{color:#5d91b4;white-space:nowrap;align-items:center;gap:10px;margin-top:22px;font-size:13px;font-weight:650;display:inline-flex}.prd-card-open .arrow{transition:transform .25s}.prd-card:hover .prd-card-open .arrow{transform:translate(4px)}@media (max-width:960px){.prd-grid{grid-template-columns:1fr 1fr}}@media (max-width:640px){.prd-grid{grid-template-columns:1fr}}.prd-overlay{background:linear-gradient(140deg,#f8fcff,#d9efff);overflow-y:auto}.prd-detail{max-width:1040px;margin:0 auto;padding:96px 48px 80px}.prd-hero{background:linear-gradient(135deg,#f8fcfd,#e3f1f8);border:1px solid #4a7c9e29;border-radius:28px;padding:56px 52px;position:relative}.prd-hero h2{color:#315875;letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(30px,4vw,46px);font-weight:620;line-height:1.18}.prd-overview{color:#526e83;max-width:780px;margin:22px 0 0;font-size:16px;line-height:1.8}.prd-metrics{flex-wrap:wrap;gap:12px 30px;margin-top:30px;display:flex}.prd-metric{flex-direction:column;gap:4px;display:flex}.prd-metric strong{color:var(--case-accent,#315875);letter-spacing:-.02em;font-size:28px;font-weight:700;line-height:1}.prd-metric span{color:#7a94a8;font-size:11px;font-weight:600}.prd-section{background:#ffffffd1;border:1px solid #4a7c9e21;border-radius:24px;margin-top:24px;padding:44px 52px;box-shadow:0 16px 44px #3158750f}.prd-section-label{color:#5d8daa;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px;font-size:10px;font-weight:760;display:block}.prd-section p{color:#42546c;margin:0;font-size:16px;line-height:1.85}.prd-goals-list{margin:6px 0 0;padding:0;list-style:none}.prd-goals-list li{color:#42546c;padding:10px 0 10px 26px;font-size:15px;line-height:1.7;position:relative}.prd-goals-list li:before{content:"";background:var(--case-accent,#9cc3dc);border-radius:2px;width:8px;height:8px;position:absolute;top:20px;left:4px;transform:rotate(45deg)}.prd-sections{flex-direction:column;gap:24px;margin-top:24px;display:flex}.prd-block{background:#ffffffd9;border:1px solid #4a7c9e21;border-radius:22px;grid-template-columns:52px 1fr;gap:24px;padding:40px 44px;display:grid;box-shadow:0 14px 40px #3158750f}.prd-block-index{color:#b8d3e6;letter-spacing:-.04em;font-size:30px;font-weight:760;line-height:1.1}.prd-block-copy h3{color:#315875;letter-spacing:-.02em;text-wrap:balance;margin:0 0 14px;font-size:clamp(20px,2.2vw,26px);font-weight:620}.prd-block-copy .clean-list{margin:18px 0 0}.prd-timeline-list{border-left:2px solid #5d91b438;margin:6px 0 0;padding:0;list-style:none}.prd-timeline-list li{padding:14px 0 14px 28px;position:relative}.prd-timeline-list li:before{content:"";background:#5d91b4;border-radius:50%;width:12px;height:12px;position:absolute;top:22px;left:-7px;box-shadow:0 0 0 4px #5d91b429}.prd-timeline-list time{color:#7a94a8;letter-spacing:.06em;font-size:11px;font-weight:700;display:block}.prd-timeline-list span{color:#315875;margin-top:4px;font-size:16px;font-weight:620;display:block}.prd-timeline-list p{color:#617b90!important;margin:6px 0 0!important;font-size:14px!important}.prd-takeaways-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin:6px 0 0;padding:0;list-style:none;display:grid}.prd-takeaways-list li{color:#42546c;border-left:3px solid var(--case-accent,#5d91b4);background:#f0f7fb;border-radius:14px;padding:16px 18px;font-size:14px;line-height:1.7}.prd-detail-close{text-align:center;margin:40px 0 0}@media (max-width:900px){.prd-detail{padding:76px 20px 60px}.prd-hero{padding:36px 26px}.prd-section{padding:34px 24px}.prd-block{grid-template-columns:1fr;gap:10px;padding:30px 24px}.prd-block-index{font-size:22px}}html[lang=en] body{letter-spacing:0;font-family:Avenir Next,Avenir,Inter,Segoe UI,Helvetica,Arial,sans-serif;line-height:1.6}html[lang=en] .writing-block p,html[lang=en] .writing-panel-body .writing-block p,html[lang=en] .event-section p,html[lang=en] .prd-section p,html[lang=en] .prd-block-copy p,html[lang=en] .event-block-copy p{text-align:left;text-align-last:auto;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}html[lang=en] .writing-block,html[lang=en] .writing-panel-body .writing-block,html[lang=en] .event-block,html[lang=en] .prd-block{text-align:left}html[lang=en] .hero h1,html[lang=en] .section-heading h2,html[lang=en] .skills-copy h2,html[lang=en] .skill-intro h2,html[lang=en] .folder-body h3,html[lang=en] .case-cover-copy h2,html[lang=en] .case-slide h3,html[lang=en] .event-hero-copy h2,html[lang=en] .prd-hero h2,html[lang=en] .writing-panel-head h3{letter-spacing:-.02em;text-wrap:balance}html[lang=en] .writing-panel-body .writing-block p{text-align:left}@media (max-width:760px){html[lang=en] .hero h1{letter-spacing:-.03em;font-size:44px}html[lang=en] .section-heading h2,html[lang=en] .skills-copy h2{font-size:40px}}
