@charset "UTF-8";/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@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-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--tracking-normal:0em;--shadow-2xs:0 1px #0000000d;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--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%;-moz-tab-size:4;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;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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--theme-transition-duration:.6s;--theme-transition-timing:cubic-bezier(.25, 1, .5, 1);--bg-page:#f5efeb;--bg-surface:#ffffffd9;--bg-surface-elevated:#fff;--text-primary:#26221e;--text-secondary:#74695d;--text-tertiary:#9e9182;--accent:#947249;--accent-soft:#94724926;--accent-hover:#785a34;--border-line:#94724926;--border-line-strong:#94724947;--bg:var(--bg-page);--page-bg:var(--bg-page);--page-bg-soft:var(--bg-page);--ink:var(--text-primary);--ink-2:var(--text-primary);--foreground:var(--text-primary);--muted:var(--text-secondary);--muted-2:var(--text-secondary);--hairline:var(--border-line);--line:var(--border-line);--line-strong:var(--border-line-strong);--card:var(--bg-surface);--card-bg:var(--bg-surface);--surface-strong:var(--bg-surface)}html[data-page-theme=images],html[data-page-theme=images] body,body[data-page-theme=images]{--bg-page:#f5efeb;--bg-surface:#ffffffdb;--bg-surface-elevated:#fff;--text-primary:#28211b;--text-secondary:#74675a;--text-tertiary:#9e8f7f;--accent:#967043;--accent-soft:#96704326;--accent-hover:#7a5730;--border-line:#96704324;--border-line-strong:#96704342;--bg:#f5efeb;--page-bg:#f5efeb;--page-bg-soft:#f5efeb}html[data-page-theme=music],html[data-page-theme=music] body,body[data-page-theme=music]{--bg-page:#e3ecf5;--bg-surface:#ffffffe0;--bg-surface-elevated:#fff;--text-primary:#172433;--text-secondary:#516985;--text-tertiary:#7d94b0;--accent:#33679e;--accent-soft:#33679e26;--accent-hover:#234e7d;--border-line:#33679e24;--border-line-strong:#33679e42;--bg:#e3ecf5;--page-bg:#e3ecf5;--page-bg-soft:#e3ecf5}html[data-page-theme=videos],html[data-page-theme=videos] body,body[data-page-theme=videos]{--bg-page:#f7e5db;--bg-surface:#ffffffdb;--bg-surface-elevated:#fff;--text-primary:#301e17;--text-secondary:#805e51;--text-tertiary:#aa8677;--accent:#b2532e;--accent-soft:#b2532e26;--accent-hover:#913c1c;--border-line:#b2532e24;--border-line-strong:#b2532e42;--bg:#f7e5db;--page-bg:#f7e5db;--page-bg-soft:#f7e5db}html[data-page-theme=articles],html[data-page-theme=articles] body,body[data-page-theme=articles]{--bg-page:#e2efe5;--bg-surface:#ffffffe0;--bg-surface-elevated:#fff;--text-primary:#15291b;--text-secondary:#4e7358;--text-tertiary:#769e81;--accent:#2e7948;--accent-soft:#2e794826;--accent-hover:#1f5e34;--border-line:#2e794824;--border-line-strong:#2e794842;--bg:#e2efe5;--page-bg:#e2efe5;--page-bg-soft:#e2efe5}html[data-page-theme=about],html[data-page-theme=about] body,body[data-page-theme=about]{--bg-page:#e5edf2;--bg-surface:#ffffffe0;--bg-surface-elevated:#fff;--text-primary:#18232d;--text-secondary:#546b7f;--text-tertiary:#7e97ad;--accent:#40688c;--accent-soft:#40688c26;--accent-hover:#2d4f6e;--border-line:#40688c24;--border-line-strong:#40688c42;--bg:#e5edf2;--page-bg:#e5edf2;--page-bg-soft:#e5edf2}html[data-page-theme=contact],html[data-page-theme=contact] body,body[data-page-theme=contact]{--bg-page:#f7e5e8;--bg-surface:#ffffffe0;--bg-surface-elevated:#fff;--text-primary:#2d1920;--text-secondary:#805663;--text-tertiary:#a87d8b;--accent:#b23d57;--accent-soft:#b23d5726;--accent-hover:#91273e;--border-line:#b23d5724;--border-line-strong:#b23d5742;--bg:#f7e5e8;--page-bg:#f7e5e8;--page-bg-soft:#f7e5e8}html[data-theme=dark][data-page-theme=images],html[data-theme=dark][data-page-theme=images] body,body[data-theme=dark][data-page-theme=images]{--bg-page:#171512;--bg-surface:#211d19e0;--bg-surface-elevated:#28241f;--text-primary:#ede6dc;--text-secondary:#a39a8b;--text-tertiary:#71695c;--accent:#d6b88e;--accent-soft:#d6b88e29;--accent-hover:#eacca4;--border-line:#d6b88e24;--border-line-strong:#d6b88e3d;--bg:#171512;--page-bg:#171512;--page-bg-soft:#171512}html[data-theme=dark][data-page-theme=music],html[data-theme=dark][data-page-theme=music] body,body[data-theme=dark][data-page-theme=music]{--bg-page:#101622;--bg-surface:#162030e0;--bg-surface-elevated:#1d2b3f;--text-primary:#e3e9f4;--text-secondary:#8a9cba;--text-tertiary:#5b6e8d;--accent:#87ade0;--accent-soft:#87ade029;--accent-hover:#a7c5ee;--border-line:#87ade024;--border-line-strong:#87ade03d;--bg:#101622;--page-bg:#101622;--page-bg-soft:#101622}html[data-theme=dark][data-page-theme=videos],html[data-theme=dark][data-page-theme=videos] body,body[data-theme=dark][data-page-theme=videos]{--bg-page:#1c130e;--bg-surface:#281a14e0;--bg-surface-elevated:#33211a;--text-primary:#f2e5df;--text-secondary:#ab948b;--text-tertiary:#7a655c;--accent:#e0987a;--accent-soft:#e0987a29;--accent-hover:#edb29b;--border-line:#e0987a24;--border-line-strong:#e0987a3d;--bg:#1c130e;--page-bg:#1c130e;--page-bg-soft:#1c130e}html[data-theme=dark][data-page-theme=articles],html[data-theme=dark][data-page-theme=articles] body,body[data-theme=dark][data-page-theme=articles]{--bg-page:#0f1a12;--bg-surface:#15261ae0;--bg-surface-elevated:#1b3322;--text-primary:#e0ede4;--text-secondary:#8ba493;--text-tertiary:#5b7463;--accent:#81c497;--accent-soft:#81c49729;--accent-hover:#a2dbb4;--border-line:#81c49724;--border-line-strong:#81c4973d;--bg:#0f1a12;--page-bg:#0f1a12;--page-bg-soft:#0f1a12}html[data-theme=dark][data-page-theme=about],html[data-theme=dark][data-page-theme=about] body,body[data-theme=dark][data-page-theme=about]{--bg-page:#111720;--bg-surface:#17212ee0;--bg-surface-elevated:#1e2b3d;--text-primary:#e4eaf2;--text-secondary:#8c9bb0;--text-tertiary:#5d6c80;--accent:#8eacd4;--accent-soft:#8eacd429;--accent-hover:#afc5e3;--border-line:#8eacd424;--border-line-strong:#8eacd43d;--bg:#111720;--page-bg:#111720;--page-bg-soft:#111720}html[data-theme=dark][data-page-theme=contact],html[data-theme=dark][data-page-theme=contact] body,body[data-theme=dark][data-page-theme=contact]{--bg-page:#1d1217;--bg-surface:#2a1820e0;--bg-surface-elevated:#351e28;--text-primary:#f4e4e8;--text-secondary:#ae8e97;--text-tertiary:#7d5f67;--accent:#e0899c;--accent-soft:#e0899c29;--accent-hover:#efa8b7;--border-line:#e0899c24;--border-line-strong:#e0899c3d;--bg:#1d1217;--page-bg:#1d1217;--page-bg-soft:#1d1217}html,body,.site-shell{background-color:var(--bg-page)!important;color:var(--text-primary)!important;transition:background-color .6s cubic-bezier(.25,1,.5,1),color .45s,border-color .45s!important}.site-nav a.active,.site-nav a[aria-current=page],.site-nav a:hover{color:var(--accent)!important}.music-player-card,.cv-page,.node-card{background:var(--bg-surface)!important;border-color:var(--border-line)!important}.gallery-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:8px;margin-bottom:24px;display:flex;border:none!important;padding:0!important}.gallery-index-kicker{color:var(--text-secondary,#74695d);letter-spacing:.05em;opacity:.85;align-items:center;font-family:inherit;font-size:13px;font-style:normal;font-weight:400;line-height:1.4;display:inline-flex;margin:0!important}.gallery-index-kicker span{font-weight:400}.photo-filters{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex;margin:0!important}.photo-filter-btn{color:var(--text-secondary,#74695d);border:1px solid var(--border-line-strong,#94724940);cursor:pointer;white-space:nowrap;background:0 0;border-radius:9999px;justify-content:center;align-items:center;padding:3px 12px;font-family:inherit;font-size:13px;font-weight:400;line-height:1.4;transition:all .2s;display:inline-flex}.photo-filter-btn:hover{border-color:var(--accent)!important;color:var(--accent)!important}.photo-filter-btn.active{font-weight:400;background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}.page-section{will-change:opacity,transform;position:relative}.page-section.is-active{animation:.55s cubic-bezier(.16,1,.3,1) both page-silk-entrance}@keyframes page-silk-entrance{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.page-section.is-active .page-header,.page-section.is-active .gallery-text{animation:.5s cubic-bezier(.16,1,.3,1) both header-silk-fade}@keyframes header-silk-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-section.is-active .photo-grid-item:first-child,.page-section.is-active .music-track-item:first-child,.page-section.is-active .video-card:first-child,.page-section.is-active .article-card:first-child,.page-section.is-active .timeline-node:first-child{animation:.48s cubic-bezier(.16,1,.3,1) 40ms both child-stagger-fade}.page-section.is-active .photo-grid-item:nth-child(2),.page-section.is-active .music-track-item:nth-child(2),.page-section.is-active .video-card:nth-child(2),.page-section.is-active .article-card:nth-child(2),.page-section.is-active .timeline-node:nth-child(2){animation:.48s cubic-bezier(.16,1,.3,1) 80ms both child-stagger-fade}.page-section.is-active .photo-grid-item:nth-child(3),.page-section.is-active .music-track-item:nth-child(3),.page-section.is-active .video-card:nth-child(3),.page-section.is-active .article-card:nth-child(3),.page-section.is-active .timeline-node:nth-child(3){animation:.48s cubic-bezier(.16,1,.3,1) .12s both child-stagger-fade}.page-section.is-active .photo-grid-item:nth-child(4),.page-section.is-active .music-track-item:nth-child(4),.page-section.is-active .video-card:nth-child(4),.page-section.is-active .article-card:nth-child(4),.page-section.is-active .timeline-node:nth-child(4){animation:.48s cubic-bezier(.16,1,.3,1) .16s both child-stagger-fade}@keyframes child-stagger-fade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}html{scrollbar-gutter:stable}@font-face{font-family:HuiwenMincho;src:url(https://pub-03b5a2e995e948508262312977ad5792.r2.dev/fonts/Huiwenmincho-improved.ttf)format("truetype");font-display:swap}:root{--bg:#f5f5f1;--ink:#1f2020;--ink-2:#2b2d2d;--muted:#f3f3f3;--muted-2:#666d69;--accent:#000;--line:#1c201f1f;--line-strong:#1c201f33;--card:#fff;--desktop-left:280px;--desktop-right-gap:60px;--mobile-gap:20px;--content-area-width:calc(100vw - var(--desktop-left) - var(--desktop-right-gap));--media-width:min(1200px, var(--content-area-width));--media-aspect-height:calc(var(--media-width) * 533 / 800);--image-max-width:min(1000px, var(--content-area-width));--image-max-height:max(240px, calc(100vh - 120px) );--latin-serif-font:"DM Serif Display", "Libre Baskerville", "Lora", "Merriweather", serif;--latin-mono-font:"Fira Code", "SFMono-Regular", Consolas, monospace;--cjk-serif-font:"HuiwenMincho", "Songti SC", "STSong", "Noto Serif SC", serif;--body-copy-font:var(--latin-serif-font), var(--cjk-serif-font);--article-serif-font:var(--cjk-serif-font);--about-latin-font:var(--latin-serif-font);--body-copy-size:10.5px;--body-copy-chinese-size:12.5px;--body-copy-english-size:12.5px;--body-copy-line-height:1.55;--body-copy-color:#000;--body-copy-letter-spacing:.03em;--background:#fff;--foreground:#111;--card-foreground:#111;--popover:#fff;--popover-foreground:#111;--primary:#111;--primary-foreground:#fff;--secondary:#d6d6d6;--secondary-foreground:#0a0a0a;--muted-foreground:#707070;--accent-foreground:#fff;--destructive:#dc2626;--destructive-foreground:#fff;--border:#e5e7eb;--input:#e5e7eb;--ring:#000;--chart-1:#000;--chart-2:#111;--chart-3:#d6d6d6;--chart-4:#949494;--chart-5:#090909;--sidebar:#f5f5f5;--sidebar-foreground:#111;--sidebar-primary:#111;--sidebar-primary-foreground:#fff;--sidebar-accent:#000;--sidebar-accent-foreground:#fff;--sidebar-border:#e5e7eb;--sidebar-ring:#000;--font-sans:"Adobe Garamond W01", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif, ui-sans-serif, system-ui, sans-serif;--font-serif:ui-serif, Georgia, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, monospace;--radius:.5rem;--shadow-x:0px;--shadow-y:2px;--shadow-blur:3px;--shadow-spread:0px;--shadow-opacity:.18;--shadow-color:#353535;--shadow-2xs:0px 2px 3px 0px #35353517;--shadow-xs:0px 2px 3px 0px #35353517;--shadow-sm:0px 2px 3px 0px #3535352e, 0px 1px 2px -1px #3535352e;--shadow:0px 2px 3px 0px #3535352e, 0px 1px 2px -1px #3535352e;--shadow-md:0px 2px 3px 0px #3535352e, 0px 2px 4px -1px #3535352e;--shadow-lg:0px 2px 3px 0px #3535352e, 0px 4px 6px -1px #3535352e;--shadow-xl:0px 2px 3px 0px #3535352e, 0px 8px 10px -1px #3535352e;--shadow-2xl:0px 2px 3px 0px #35353573;--tracking-normal:0em;--spacing:.25rem;color:var(--text-primary,#111);background:var(--bg-page,#f5efeb);font-synthesis:none;text-rendering:optimizelegibility;font-family:Adobe Garamond W01,游明朝体,Yu Mincho,YuMincho,ヒラギノ明朝 Pro,Hiragino Mincho Pro,MS P明朝,MS PMincho,serif;font-size:14px;line-height:1.18}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--bg);color:var(--ink-2);font-family:Inter,Helvetica Neue,PingFang SC,sans-serif}img,.photo{filter:saturate(.88)contrast(.98)sepia(.02)}a{color:inherit;text-decoration:none}a:hover,a[aria-current=page]{color:#777;font-style:normal}button{font:inherit}.site-shell{z-index:2;min-width:0;min-height:100vh;padding:60px;display:block;position:relative}.sidebar{flex-direction:column;align-items:flex-start;width:220px;display:flex;position:fixed;top:60px;left:60px}.identity{flex-direction:column;gap:8px;margin-bottom:68px;font-style:normal;display:inline-flex}.identity:hover,.identity[aria-current=page]{color:#111}.identity__name{font-size:23px}.identity__chinese{white-space:pre;margin-left:2px;font-size:18px;display:inline-flex}.identity__slogan{color:var(--text-secondary,#777);font-family:var(--body-copy-font);letter-spacing:.04em;margin-top:4px;font-size:11px;line-height:1.6;display:block}.identity__chinese-second{margin-left:3px}.site-nav,.project-links,.utility-links{flex-direction:column;align-items:flex-start;display:flex}.site-nav{font-size:14px;line-height:1.7em}.project-links a,.utility-links a{white-space:nowrap;transition:color .2s,background-color .2s,border-color .2s;display:inline-block}@media(hover:hover){.project-links a:hover,.utility-links a:hover{color:var(--accent)!important}}.utility-links{margin-top:1.7em}.mobile-menu-toggle{color:#111;cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-size:14px;line-height:1.7em;display:none}.site-copyright{z-index:10;color:#0000004d;text-align:left;white-space:nowrap;font-size:11px;line-height:1.7em;position:fixed;bottom:20px;left:60px}.content{flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;min-width:0;margin-left:220px;display:flex}.page-section{flex:auto;width:100%;min-width:0}.page-section[hidden]{display:none!important}.page-section.is-active{display:block}.page-header h1{margin:0;font-family:inherit;font-size:22px;font-weight:400;line-height:1.2}.empty-state{color:#777;width:min(100%,720px);font-family:var(--body-copy-font);font-size:var(--body-copy-chinese-size);letter-spacing:.03em;line-height:1.75}.article-feature{width:min(100%,760px);color:var(--text-primary)}.articles-stack{gap:20px;display:grid}.article-card{width:min(100%,760px)}.article-card__link{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.article-card__cover{border-radius:8px;width:100%;margin-bottom:14px;display:block;overflow:hidden}.article-card__cover img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.article-card__meta{color:var(--text-secondary);font-family:var(--body-copy-font);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:14px;font-size:11px;display:flex}.article-card__date{color:var(--text-secondary)}.article-card__title{color:#111;margin:0;font-family:inherit;font-size:clamp(22px,3vw,30px);font-weight:400;line-height:1.16}.article-card__excerpt{color:#4b5563;font-family:var(--body-copy-font);font-size:var(--body-copy-chinese-size);margin:14px 0 0;line-height:1.85}.article-detail{width:min(100%,760px)}.article-detail__back{color:var(--text-secondary);font-family:var(--body-copy-font);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin:0 0 22px;padding:0;font-size:12px;line-height:1.6;display:inline-flex}.article-detail__back:hover,.article-detail__back:focus-visible{color:var(--accent)}.article-feature__meta{color:var(--text-secondary);font-family:var(--body-copy-font);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:18px;font-size:11px;display:flex}.article-feature__tag{border:1px solid;border-radius:999px;justify-content:center;align-items:center;padding:2px 8px;display:inline-flex}.article-feature__title{color:#111;margin:0;font-family:inherit;font-size:clamp(26px,4vw,38px);font-weight:400;line-height:1.12}.article-feature__lead{color:#4b5563;font-family:var(--body-copy-font);font-size:var(--body-copy-chinese-size);letter-spacing:.02em;margin:18px 0 0;line-height:1.8}.article-feature__body{gap:16px;margin-top:30px;display:grid}.article-feature__body p{color:#2f2f2f;font-family:var(--body-copy-font);font-size:var(--body-copy-chinese-size);letter-spacing:.02em;margin:0;line-height:1.95}.video-page{width:min(100%,960px);font-family:var(--body-copy-font);display:block}.video-loading-state,.video-error-state{color:#777;margin:0 0 18px;font-size:12px;line-height:1.6}.video-error-state{color:#9f3a30}.video-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 18px;min-width:0;display:grid}.video-card{color:#111;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:1fr;gap:10px;width:100%;padding:0;display:grid}.video-card img{aspect-ratio:16/9;object-fit:cover;border-radius:6px;width:100%;display:block}.video-card__media{aspect-ratio:16/9;background:linear-gradient(135deg,#1111110f,#11111105),var(--surface-muted,#f3f0ea);border-radius:6px;display:block;position:relative;overflow:hidden}.video-card strong{-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:13px;font-weight:400;line-height:1.35;display:-webkit-box;overflow:hidden}.video-card:hover strong,.video-card:focus-visible strong,.video-card.is-active strong{color:var(--accent)}.video-card:focus-visible{outline:1px solid var(--accent);outline-offset:4px}.video-card__body{min-width:0}.video-media__fallback{color:var(--text-secondary,#777);place-items:center;font-size:12px;line-height:1.4;display:none;position:absolute;top:0;right:0;bottom:0;left:0}.video-media__fallback:before{content:"视频封面暂不可用"}.video-card__media.is-missing-image .video-media__fallback{display:grid}.video-error-state a{color:var(--accent,#7d2b22);text-underline-offset:3px;text-decoration:underline}.video-card__badge{z-index:1;color:#fff;background:#000000a8;border-radius:999px;justify-content:center;align-items:center;padding:2px 8px;font-size:10px;line-height:1.4;display:inline-flex;position:absolute;top:8px;left:8px}.video-modal{z-index:5000;isolation:isolate;place-items:center;width:100vw;min-height:100dvh;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}body.video-open{overflow:hidden}body.video-open .content,body.video-open .sidebar,body.video-open .sidebar-theme-toggle,body.video-open .site-copyright{filter:blur(22px)saturate(72%);opacity:.1;pointer-events:none;-webkit-user-select:none;user-select:none;transition:none}.video-modal__backdrop{z-index:0;-webkit-backdrop-filter:saturate(145%)blur(52px);background-color:#080807f0;background-image:radial-gradient(circle at 50% 20%,#ffffff14,#0000 36%),linear-gradient(#080807e6,#080807f7);position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 180px #000000ad}.video-modal__dialog{z-index:1;width:min(1040px,100vw - 56px);position:relative}.video-modal__close{z-index:2;color:#fff;cursor:pointer;background:#000000bd;border:1px solid #ffffffb8;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-width:86px;height:48px;margin:0;padding:0 17px 1px 15px;font-family:Helvetica Neue,Arial,sans-serif;font-size:0;line-height:1;transition:background-color .18s,border-color .18s,transform .18s;display:inline-flex;position:fixed;top:clamp(20px,3.6vw,42px);right:clamp(20px,3.6vw,42px);box-shadow:0 16px 44px #0000006b,inset 0 1px #ffffff2e}.video-modal__close:before{content:"×";justify-content:center;align-items:center;width:16px;height:16px;font-size:22px;font-weight:400;line-height:1;display:inline-flex;transform:translateY(-1px)}.video-modal__close:after{content:"关闭";letter-spacing:.06em;font-size:13px;font-weight:500;line-height:1}.video-modal__close:hover,.video-modal__close:focus-visible{background:#000000e0;border-color:#fffffff5;transform:scale(1.04)}.video-modal__frame{width:100%;box-shadow:none;aspect-ratio:16/9;background:0 0;border-radius:0;position:relative;overflow:hidden}.video-modal__frame iframe,.video-modal__frame video{object-fit:contain;background:#000;border:0;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.video-modal__frame iframe{border:0}@media(max-width:900px){.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}}.text-page{padding-top:0}.contact-links{grid-template-columns:repeat(3,72px);place-items:center;gap:28px 34px;display:grid}.contact-link{opacity:.82;justify-content:center;align-items:center;width:72px;height:72px;transition:opacity .18s,transform .18s;display:inline-flex}.contact-link:hover,.contact-link:focus-visible{opacity:1}.contact-link:focus-visible{outline-offset:5px;outline:1px solid #111}.contact-link img{object-fit:contain;width:auto;max-width:50px;height:auto;max-height:50px;display:block}.about-portfolio{width:min(100%,900px);color:var(--text-primary);font-family:var(--body-copy-font)}.intro-section{border:1px solid var(--hairline);background:linear-gradient(135deg,var(--surface-strong),var(--surface)),var(--surface-strong);box-shadow:var(--shadow-soft);border-radius:18px;margin-bottom:clamp(42px,7vw,68px);padding:clamp(24px,4vw,38px)}.intro-badge{color:var(--accent);background:var(--accent-soft);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;margin-bottom:16px;padding:5px 12px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.intro-title{max-width:13em;color:var(--text-primary);letter-spacing:0;text-wrap:balance;margin:0 0 22px;font-family:Georgia,Times New Roman,Songti SC,SimSun,serif;font-size:clamp(34px,5.4vw,62px);font-weight:400;line-height:1.08}.intro-text{max-width:66ch;color:var(--text-secondary);font-size:14px;line-height:1.85}.intro-text p+p{margin-top:14px}.intro-text strong{color:var(--text-primary);font-weight:600}.trait-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px;display:grid}.trait-card{border:1px solid var(--hairline);background:var(--surface-muted);border-radius:14px;min-width:0;padding:16px;transition:border-color .22s,background-color .22s,transform .22s}.trait-card:hover{border-color:var(--accent);background:var(--surface-strong);transform:translateY(-2px)}.trait-icon-tag{color:var(--accent);letter-spacing:.02em;margin-bottom:9px;font-size:12px;font-weight:700;display:block}.trait-name{color:var(--text-primary);margin-bottom:6px;font-size:14px;font-weight:600;line-height:1.45}.trait-desc{color:var(--text-secondary);font-size:12.5px;line-height:1.7}.timeline-header{border-left:3px solid var(--accent);margin-bottom:34px;padding-left:16px}.timeline-header h2{color:var(--text-primary);margin:0 0 8px;font-size:clamp(22px,3vw,32px);font-weight:500;line-height:1.25}.timeline-header p{max-width:52ch;color:var(--text-secondary);font-size:13.5px;line-height:1.75}.timeline-body{padding-left:132px;position:relative}.timeline-spine{background:linear-gradient(180deg,var(--hairline-strong),var(--hairline),transparent);width:1px;position:absolute;top:8px;bottom:0;left:102px}.timeline-node{z-index:1;opacity:0;margin-bottom:34px;transition:opacity .52s cubic-bezier(.2,.8,.2,1),transform .52s cubic-bezier(.2,.8,.2,1);position:relative;transform:translateY(18px)}.timeline-node.visible{opacity:1;transform:translateY(0)}.node-time{text-align:right;width:88px;position:absolute;top:4px;left:-132px}.time-range{color:var(--accent);font-size:13px;font-weight:700;line-height:1.3;display:block}.time-duration{color:var(--text-tertiary);margin-top:4px;font-size:11px;line-height:1.4;display:block}.node-pointer{z-index:2;border:3px solid var(--accent);background:var(--page-bg);border-radius:50%;width:13px;height:13px;transition:background-color .22s,border-color .22s,box-shadow .22s,transform .22s;position:absolute;top:7px;left:-36px}.timeline-node:hover .node-pointer{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 5px var(--accent-soft);transform:scale(1.12)}.node-card{border:1px solid var(--hairline);background:var(--surface-strong);box-shadow:var(--shadow-soft);border-radius:14px;padding:clamp(18px,3vw,24px);transition:border-color .22s,transform .22s}.node-card:hover{border-color:var(--accent);transform:translateY(-1px)}.card-meta{margin-bottom:16px}.company-name{color:var(--text-primary);margin:0 0 8px;font-size:clamp(17px,2.1vw,21px);font-weight:600;line-height:1.35}.role-badge{color:var(--accent);background:var(--accent-soft);border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600;line-height:1.35;display:inline-flex}.sub-projects{gap:13px;display:grid}.project-row{padding-left:15px;position:relative}.project-row:before{content:"";background:var(--hairline-strong);border-radius:50%;width:5px;height:5px;position:absolute;top:.75em;left:0}.timeline-node:hover .project-row:before{background:var(--accent)}.project-title{color:var(--text-primary);margin-bottom:4px;font-size:13.5px;font-weight:700;line-height:1.5}.project-desc{color:var(--text-secondary);font-size:12.8px;line-height:1.75}.skill-pills{border-top:1px solid var(--hairline);flex-wrap:wrap;gap:7px;margin-top:18px;padding-top:14px;display:flex}.pill{min-height:24px;color:var(--text-secondary);background:var(--surface-muted);border:1px solid var(--hairline);border-radius:7px;align-items:center;padding:2px 8px;font-size:11.5px;font-weight:500;line-height:1.2;display:inline-flex}@media(max-width:900px){.trait-grid{grid-template-columns:1fr}.timeline-body{padding-left:34px}.timeline-spine{left:10px}.node-time{text-align:left;width:auto;margin-bottom:10px;position:static}.time-range,.time-duration{display:inline}.time-duration{margin-left:8px}.node-pointer{left:-29px}}@media(max-width:720px){.about-portfolio{width:100%}.intro-section{border-radius:16px;padding:22px}.intro-title{max-width:100%;font-size:clamp(32px,10vw,46px)}.intro-text{font-size:13.5px}.timeline-header{margin-bottom:28px}.timeline-body{padding-left:26px}.node-pointer{left:-23px}.node-card{border-radius:12px}}.gallery-page{flex-direction:column;flex:auto;justify-content:flex-start;width:100%;margin-left:0;display:flex}.gallery-frame{flex-direction:column;width:auto;display:flex}.gallery-image-wrap{width:auto;height:var(--media-aspect-height);position:relative}.artwork-image{object-fit:contain;width:auto;max-width:none;height:auto;max-height:none;display:block}.gallery-frame .artwork-image{width:auto;height:auto;max-width:var(--image-max-width);max-height:var(--image-max-height);opacity:1;transition:opacity .42s}.gallery-frame .artwork-image.is-fading{opacity:0}.gallery-image-hit{cursor:none;background:0 0;border:0;width:50%;height:100%;padding:0;position:absolute;top:0}.gallery-image-hit--previous{left:0}.gallery-image-hit--next{right:0}.gallery-image-wrap{cursor:default}.image-cursor{z-index:2000;pointer-events:none;width:44px;height:44px;text-shadow:none;border-radius:50%;justify-content:center;align-items:center;font-family:system-ui,-apple-system,sans-serif;font-size:18px;font-weight:500;line-height:1;transition:transform .1s,background-color .2s,color .2s;display:none;position:fixed;transform:translate(-50%,-50%);box-shadow:0 4px 14px #0000001f}html[data-theme=light] .image-cursor{color:#111;background:#ffffffeb;border:1px solid #00000014}html[data-theme=dark] .image-cursor{color:#eee;background:#0f0f12eb;border:1px solid #ffffff1f}.gallery-image-wrap:hover .image-cursor{display:flex!important}.mobile-image-list{display:none}.gallery-text{width:min(620px,var(--media-width));font-size:var(--body-copy-size);line-height:var(--body-copy-line-height);margin-top:5.1em;display:block}.river-text-column{min-width:0}.gallery-text h1{min-height:26.4px;margin:0 0 37.4px;font-family:inherit;font-size:22px;font-weight:400;line-height:1.2}.gallery-text h1+p{margin-top:0}.gallery-text .english-title{font-size:20px}.gallery-text .english-title--large{font-size:22px}.gallery-text p{color:var(--body-copy-color);font-family:var(--body-copy-font);font-size:var(--body-copy-size);letter-spacing:var(--body-copy-letter-spacing);line-height:var(--body-copy-line-height);margin:0}.gallery-text p+p{margin-top:1.5em}.gallery-text .body-copy-english{font-size:var(--body-copy-english-size);line-height:1.54}.gallery-text p.body-copy-chinese{font-size:var(--body-copy-chinese-size);letter-spacing:.03em;line-height:1.75}.gallery-text p.body-copy-japanese{font-size:var(--body-copy-chinese-size);letter-spacing:.02em;line-height:1.56}h1,p{margin:0}@media(min-width:1280px){.content{width:var(--content-area-width)!important}.gallery-page{flex-basis:var(--content-area-width);align-items:center}.gallery-frame{align-items:center;width:var(--content-area-width)!important}}@media(max-width:720px){:root{--content-area-width:calc(100vw - (var(--mobile-gap) * 2));--media-width:var(--content-area-width);--image-max-width:var(--content-area-width);--image-max-height:none;font-size:13px}.site-shell{min-height:auto;padding:var(--mobile-gap);display:block}.sidebar{top:0;left:var(--mobile-gap);z-index:30;width:var(--content-area-width);min-height:0;padding:var(--mobile-gap) 0 24px;background:var(--bg-page,#fff);position:fixed;right:auto}.identity{margin-bottom:0}.mobile-menu-toggle{top:var(--mobile-gap);display:block;position:absolute;right:0}.site-nav{background:#ffffff4d;gap:36px;width:100%;min-height:0;margin-top:32px;padding:8px 10px 10px 0;display:none}.sidebar.is-open .site-nav{display:flex}.project-links{max-width:100%}.content{width:100%;margin-left:0;padding-top:80px;display:block}.page-header{margin-bottom:28px}.contact-links{grid-template-columns:repeat(3,minmax(64px,1fr));gap:24px;width:min(100%,360px)}.video-page{width:100%;display:block}.video-details{width:100%}.video-list{margin-top:26px}.video-card{grid-template-columns:112px minmax(0,1fr)}.video-card img{width:112px}.gallery-page{display:block;flex:none!important;width:100%!important;margin-left:0!important}.gallery-frame{align-items:flex-start;width:100%!important}.gallery-image-wrap{display:none!important}.mobile-image-list{flex-direction:column;gap:20px;width:100%;display:flex}.mobile-image-list img,.gallery-frame .artwork-image{max-width:none;max-height:none;width:var(--content-area-width)!important;height:auto!important}.gallery-text{margin-top:40px;width:var(--content-area-width)!important;display:block!important}.gallery-text h1{min-height:0!important;margin-bottom:1.7em!important}.gallery-text>div+div{margin-top:3.4em}.site-copyright{margin-top:40px;margin-left:var(--mobile-gap);position:static}}:root{--desktop-left:0px;--desktop-right-gap:0px;--content-area-width:min(1120px, calc(100vw - 56px) );--media-width:min(1040px, var(--content-area-width));--image-max-width:min(980px, var(--content-area-width));--image-max-height:max(320px, calc(100dvh - 240px) );--body-copy-letter-spacing:0;--page-bg:var(--background,#f5f5f7);--page-bg-soft:var(--sidebar,#fff);--surface:var(--card,#ffffffc7);--surface-strong:var(--card,#fff);--surface-muted:var(--muted,#ffffff94);--text-primary:var(--foreground,#1d1d1f);--text-secondary:var(--muted-foreground,#6e6e73);--text-tertiary:var(--muted-foreground,#86868b);--hairline:var(--border,#0000001a);--hairline-strong:var(--border,#0000002e);--accent:var(--accent,#d12f2f);--accent-soft:var(--accent)}@supports (color:color-mix(in lab,red,red)){:root{--accent-soft:color-mix(in srgb, var(--accent) 12%, transparent)}}:root{--shadow-soft:0 18px 55px #00000014;--header-height:82px;--container-pad:clamp(22px, 4vw, 56px);color:var(--text-primary);background:var(--page-bg);font-family:Karla,Helvetica Neue,Helvetica,Arial,PingFang SC,Hiragino Sans GB,sans-serif}html[data-theme=dark]{--page-bg:var(--background,#171715);--page-bg-soft:var(--sidebar,#222220);--surface:var(--card,#272725);--surface-strong:var(--card,#272725);--surface-muted:var(--muted,#2d2d2b);--text-primary:var(--foreground,#f5f5f4);--text-secondary:var(--muted-foreground,#9c9c9b);--text-tertiary:var(--muted-foreground,#9c9c9b);--hairline:var(--border,#434342);--hairline-strong:var(--border,#434342);--accent:var(--accent,#404040);--accent-soft:var(--accent)}@supports (color:color-mix(in lab,red,red)){html[data-theme=dark]{--accent-soft:color-mix(in srgb, var(--accent) 16%, transparent)}}html[data-theme=dark]{--shadow-soft:0 22px 70px #0000006b;color-scheme:dark;--background:#171715;--foreground:#f5f5f4;--card:#272725;--card-foreground:#f5f5f4;--popover:#272725;--popover-foreground:#f5f5f4;--primary:#585858;--primary-foreground:#fff;--secondary:#21211f;--secondary-foreground:#fff;--muted:#2d2d2b;--muted-foreground:#9c9c9b;--accent:#404040;--accent-foreground:#fff;--destructive:#ef4444;--destructive-foreground:#fff;--border:#434342;--input:#434342;--ring:#404040;--chart-1:#404040;--chart-2:#585858;--chart-3:#21211f;--chart-4:#b4b4b4;--chart-5:#313131;--sidebar:#222220;--sidebar-foreground:#f5f5f4;--sidebar-primary:#585858;--sidebar-primary-foreground:#fff;--sidebar-accent:#404040;--sidebar-accent-foreground:#fff;--sidebar-border:#434342;--sidebar-ring:#404040;--font-sans:"Adobe Garamond W01", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif, ui-sans-serif, system-ui, sans-serif;--font-serif:ui-serif, Georgia, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, monospace;--radius:.5rem;--shadow-x:0px;--shadow-y:2px;--shadow-blur:3px;--shadow-spread:0px;--shadow-opacity:.18;--shadow-color:#0d0d0d;--shadow-2xs:0px 2px 3px 0px #0d0d0d17;--shadow-xs:0px 2px 3px 0px #0d0d0d17;--shadow-sm:0px 2px 3px 0px #0d0d0d2e, 0px 1px 2px -1px #0d0d0d2e;--shadow:0px 2px 3px 0px #0d0d0d2e, 0px 1px 2px -1px #0d0d0d2e;--shadow-md:0px 2px 3px 0px #0d0d0d2e, 0px 2px 4px -1px #0d0d0d2e;--shadow-lg:0px 2px 3px 0px #0d0d0d2e, 0px 4px 6px -1px #0d0d0d2e;--shadow-xl:0px 2px 3px 0px #0d0d0d2e, 0px 8px 10px -1px #0d0d0d2e;--shadow-2xl:0px 2px 3px 0px #0d0d0d73}html{scroll-behavior:auto;background:var(--page-bg)}body{min-height:100dvh;color:var(--text-primary);background:linear-gradient(180deg,var(--page-bg-soft) 0%,var(--page-bg) 28rem),var(--page-bg);transition:background-color .32s,color .32s}body:before{content:"";z-index:-1;pointer-events:none;opacity:.22;background-image:linear-gradient(90deg,#80808014 1px,#0000 1px),linear-gradient(#80808014 1px,#0000 1px);background-size:72px 72px;position:fixed;top:0;right:0;bottom:0;left:0;-webkit-mask-image:linear-gradient(#000000b3,#0000 65%);mask-image:linear-gradient(#000000b3,#0000 65%)}.skip-link,.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link:focus{z-index:80;clip:auto;width:auto;height:auto;color:var(--page-bg);background:var(--text-primary);border-radius:999px;padding:10px 14px;position:fixed;top:16px;left:16px}.site-shell{min-height:100dvh;padding:0 var(--container-pad) 96px}.sidebar{z-index:40;width:min(1180px,100%);height:var(--header-height);background:0 0;grid-template-columns:minmax(160px,1fr) auto;align-items:center;margin:0 auto;padding:14px 0;display:grid;position:sticky;top:0;left:auto;right:auto}.sidebar:before{content:"";height:var(--header-height);z-index:-1;border-bottom:1px solid var(--hairline);background:var(--page-bg-soft);position:fixed;top:0;left:0;right:0}@supports (color:color-mix(in lab,red,red)){.sidebar:before{background:color-mix(in srgb,var(--page-bg-soft) 78%,transparent)}}.sidebar:before{-webkit-backdrop-filter:saturate(180%)blur(22px)}.identity{width:fit-content;color:var(--text-primary);grid-template-columns:auto auto;align-items:baseline;gap:10px;margin:0;transition:color .22s,transform .22s;display:inline-grid}.identity:hover,.identity:focus-visible{color:var(--accent);transform:translateY(-1px)}.identity__name{font-family:Quicksand,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(26px,3vw,36px);font-weight:600;line-height:1}.identity__chinese{color:var(--text-secondary);letter-spacing:0;white-space:nowrap;margin:0;font-family:Karla,PingFang SC,Hiragino Sans GB,sans-serif;font-size:13px;font-weight:500}.site-nav{color:var(--text-secondary);justify-content:flex-end;align-items:center;gap:22px;font-size:13px;font-weight:500;line-height:1;display:flex}.project-links,.utility-links{flex-direction:row;align-items:center;gap:4px;margin:0;display:flex}.project-links a,.utility-links a{min-height:34px;color:var(--text-secondary);border-radius:999px;justify-content:center;align-items:center;padding:0 11px;transition:background-color .22s,color .22s,transform .22s;display:inline-flex;border:1px solid #0000!important;font-size:15px!important;font-weight:600!important}.site-nav .nav-icon{vertical-align:-.16em;opacity:.88;flex-shrink:0;width:1.15em;height:1.15em;margin-right:5px;font-size:15px;transition:transform .22s,opacity .22s;display:inline-block}.site-nav a:hover .nav-icon,.site-nav a[aria-current=page] .nav-icon,.site-nav a.active .nav-icon{opacity:1;transform:scale(1.08)}.site-nav a[aria-current=page],.site-nav a.active{font-style:normal;color:var(--accent)!important;-webkit-backdrop-filter:blur(20px)saturate(170%)!important;background:linear-gradient(135deg,#fffffff0,#ffffffa6)!important;border:1px solid #ffffffd9!important;box-shadow:0 4px 12px #76684d1f,0 1px 3px #00000008,inset 0 1px #fff,inset 0 -1px #00000005!important}html[data-theme=dark] .site-nav a[aria-current=page],html[data-theme=dark] .site-nav a.active{color:#e3d3b8!important;-webkit-backdrop-filter:blur(20px)saturate(170%)!important;background:linear-gradient(135deg,#ffffff2e,#ffffff0f)!important;border:1px solid #ffffff47!important;box-shadow:0 4px 16px #0000006b,0 0 12px #ff5a5a14,inset 0 1px #ffffff40,inset 0 -1px #00000059!important}@media(hover:hover){.site-nav a:hover{color:var(--text-primary);-webkit-backdrop-filter:blur(8px)saturate(120%)!important;background:#ffffff6b!important}html[data-theme=dark] .site-nav a:hover{color:var(--text-primary);-webkit-backdrop-filter:blur(8px)saturate(120%)!important;background:#ffffff0f!important}}.project-links a:active,.utility-links a:active,.identity:active{transform:scale(.98)}.project-links a:focus-visible,.utility-links a:focus-visible,.identity:focus-visible,.sidebar-theme-toggle:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.mobile-menu-toggle{color:var(--text-primary)}.site-nav{position:relative}@media(min-width:881px){.site-nav:before{content:"";z-index:1;pointer-events:none;background-color:#0000001f;width:1px;position:absolute;top:6px;bottom:24px;left:18px}html[data-theme=dark] .site-nav:before{background-color:#333}.project-links,.utility-links{z-index:2;position:relative;margin-left:40px!important;padding-left:0!important}.site-nav .site-copyright{border-top:1px solid var(--hairline);padding-top:14px;margin-left:40px!important}.mobile-theme-toggle{display:none!important}.sidebar-top-bar{display:block!important}}.sidebar-theme-toggle,.theme-toggle-btn{color:#666;cursor:pointer;z-index:3;box-sizing:border-box;background-color:#fff;border:1px solid #00000026;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin:14px 0 12px;padding:0;transition:background-color .2s,border-color .2s,color .2s;display:flex;position:relative;left:18px;transform:translate(-50%)}html[data-theme=dark] .sidebar-theme-toggle,html[data-theme=dark] .theme-toggle-btn{color:#888;background-color:#1a1a1a;border:1px solid #333}.sidebar-theme-toggle:hover,.theme-toggle-btn:hover{color:#111;background-color:#f0f0f2;border-color:#999}html[data-theme=dark] .sidebar-theme-toggle:hover,html[data-theme=dark] .theme-toggle-btn:hover{color:#fff;background-color:#2a2a2a;border-color:#555}.sidebar-theme-toggle:active,.theme-toggle-btn:active{background-color:#e5e5e7}html[data-theme=dark] .sidebar-theme-toggle:active,html[data-theme=dark] .theme-toggle-btn:active{background-color:#333}.sidebar-theme-toggle .theme-icon,.theme-toggle-btn .theme-icon{pointer-events:none;display:none}html[data-theme=dark] .sidebar-theme-toggle .theme-icon--sun,html[data-theme=dark] .theme-toggle-btn .theme-icon--sun,html[data-theme=light] .sidebar-theme-toggle .theme-icon--moon,html[data-theme=light] .theme-toggle-btn .theme-icon--moon,:root:not([data-theme=dark]) .sidebar-theme-toggle .theme-icon--moon,:root:not([data-theme=dark]) .theme-toggle-btn .theme-icon--moon{display:block}.content{width:min(1120px,100%);margin:0 auto;padding-top:clamp(78px,11vh,132px);display:block}.page-section{width:100%}.page-header{width:min(100%,760px);margin-bottom:clamp(32px,5vw,64px)}.page-header h1,.gallery-text h1{color:var(--text-primary);letter-spacing:0;text-wrap:balance;font-family:Adobe Garamond W01,Georgia,Times New Roman,serif;font-size:clamp(44px,7vw,84px);font-weight:400;line-height:.98}.empty-state{border:1px solid var(--hairline);width:min(100%,760px);min-height:clamp(220px,34vh,360px);color:var(--text-secondary);background:var(--surface);box-shadow:var(--shadow-soft);letter-spacing:0;-webkit-backdrop-filter:blur(24px);border-radius:26px;justify-content:center;align-items:center;padding:38px;font-family:Karla,PingFang SC,sans-serif;font-size:15px;line-height:1.7;display:flex}.video-page{width:min(100%,980px);color:var(--text-primary);font-family:Karla,PingFang SC,sans-serif}.video-player-frame{border-color:var(--hairline);box-shadow:var(--shadow-soft);background:#000;border-radius:24px}.video-platform,.video-card small{color:var(--text-secondary)}.video-title,.video-card{color:var(--text-primary)}.video-description{color:var(--text-secondary);letter-spacing:0}.video-open-link{color:var(--text-primary)}.video-open-link:hover,.video-open-link:focus-visible{color:var(--accent)}.video-card img{box-shadow:inset 0 0 0 1px var(--hairline);border-radius:12px}.contact-links{width:min(100%,390px);box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0;border-radius:0;grid-template-columns:repeat(3,minmax(72px,104px));gap:clamp(28px,4vw,46px);padding:0}.contact-link{opacity:.88;border-radius:18px;width:72px;height:72px;transition:background-color .22s,opacity .22s,transform .22s}.contact-link:hover,.contact-link:focus-visible{opacity:1;background:var(--accent-soft);transform:translateY(-2px)}.contact-link:active{transform:scale(.96)}.gallery-page{display:block}.gallery-frame{align-items:flex-start;width:100%}.gallery-image-wrap{box-shadow:var(--shadow-soft);background:var(--surface-strong);border-radius:28px;overflow:hidden}.gallery-frame .artwork-image{max-width:var(--image-max-width);max-height:var(--image-max-height)}.gallery-text{width:min(100%,760px);margin-top:clamp(40px,7vw,84px)}.gallery-text h1{min-height:0;margin-bottom:0}.image-cursor{color:var(--text-primary);text-shadow:0 1px 0 var(--page-bg),1px 0 0 var(--page-bg),0 -1px 0 var(--page-bg),-1px 0 0 var(--page-bg)}.site-copyright{left:var(--container-pad);z-index:35;color:var(--text-tertiary);letter-spacing:0;font-family:Karla,PingFang SC,sans-serif;font-size:12px;position:fixed;bottom:24px}@media(min-width:1280px){.content,.gallery-page,.gallery-frame{width:min(1120px,100vw - 112px)!important}}@media(max-width:720px){:root{--header-height:76px;--container-pad:20px;--content-area-width: calc(100vw - 40px) }.site-shell{padding:0 var(--container-pad) 72px}.sidebar{width:100%;min-height:0;padding:14px 0;display:flex}.identity{grid-template-columns:1fr;gap:3px}.identity__name{font-size:28px}.identity__chinese{font-size:12px}.mobile-menu-toggle{background:var(--surface-muted);border-radius:999px;min-height:32px;padding:0 10px;display:block;position:absolute;top:22px;right:0}.site-nav{top:calc(var(--header-height) - 2px);border:1px solid var(--hairline);background:var(--surface);width:100%;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(24px);border-radius:22px;flex-direction:column;align-items:stretch;gap:10px;margin:0;padding:14px;display:none;position:absolute;left:0;right:0}.sidebar.is-open .site-nav{display:flex}.project-links,.utility-links{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.project-links a,.utility-links a{background:var(--surface-muted);min-height:40px}.theme-pull{height:86px}.theme-pull__line{height:60px}.content{width:100%;padding-top:82px}.page-header h1,.gallery-text h1{font-size:clamp(40px,14vw,64px)}.contact-links{grid-template-columns:repeat(3,minmax(58px,1fr))}.video-page{width:100%;display:block}.video-player-frame{border-radius:18px}.video-list{margin-top:28px}.video-card{grid-template-columns:108px minmax(0,1fr)}.video-card img{width:108px}.gallery-image-wrap{display:none!important}.mobile-image-list{flex-direction:column;gap:22px;width:100%;display:flex}.mobile-image-list img{box-shadow:var(--shadow-soft);border-radius:22px;width:100%!important;height:auto!important}.site-copyright{margin:48px 0 0;position:static}}@media(min-width:721px){:root{--content-area-width:min(1060px, calc(100vw - 360px) );--media-width:min(1040px, var(--content-area-width));--image-max-width:min(1020px, var(--content-area-width));--image-max-height:max(320px, calc(100dvh - 150px) );--container-pad:56px}.site-shell{min-height:100dvh;padding:0 var(--container-pad) 96px}.sidebar{top:56px;left:var(--container-pad);z-index:42;flex-direction:column;align-items:flex-start;width:220px;height:calc(100dvh - 132px);margin:0;padding:0;display:flex;position:fixed}.sidebar:before{display:none}.identity{flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:clamp(18px,3vh,36px);display:inline-flex}.identity__name{font-size:clamp(26px,2.6vw,34px)}.identity__chinese{font-size:13px}.site-nav,.project-links,.utility-links{flex-direction:column;align-items:flex-start;display:flex}.site-nav{flex:1;justify-content:flex-start;gap:0;width:100%;font-size:14px;line-height:1.4}.project-links,.utility-links{gap:12px}.utility-links{margin-top:0;padding-top:12px;padding-bottom:0;position:relative}.utility-links:before{display:none}.utility-links a{color:var(--text-tertiary)}.project-links a,.utility-links a{transform-origin:0;justify-content:flex-start;min-height:36px;padding:0 12px}.mobile-menu-toggle{display:none}.content{width:var(--content-area-width);max-width:1060px;margin:0 0 0 248px;padding-top:clamp(128px,15vh,178px)}.page-header{margin-bottom:clamp(34px,5vw,58px)}.page-header h1,.gallery-text h1{font-size:clamp(40px,5.6vw,72px)}.empty-state{width:min(100%,780px);min-height:clamp(240px,35vh,380px)}.gallery-page,.gallery-frame{width:var(--content-area-width)!important}.gallery-frame{align-items:flex-start}.site-copyright{left:var(--container-pad);bottom:26px}}@keyframes cord-float{0%,to{transform:translate(-50%)translateY(0)}34%{transform:translate(-50%)translateY(4px)}52%{transform:translate(-50%)translateY(2px)}68%{transform:translate(-50%)translateY(5px)}84%{transform:translate(-50%)translateY(1px)}}@keyframes cord-pull{0%{transform:translate(-50%)translateY(0)}36%{transform:translate(-50%)translateY(18px)}56%{transform:translate(-50%)translateY(-3px)}72%{transform:translate(-50%)translateY(6px)}88%{transform:translate(-50%)translateY(-1px)}to{transform:translate(-50%)translateY(0)}}:root{--material-sheen:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){:root{--material-sheen:color-mix(in srgb, var(--surface-strong) 72%, transparent)}}:root{--quiet-engrave:var(--text-primary)}@supports (color:color-mix(in lab,red,red)){:root{--quiet-engrave:color-mix(in srgb, var(--text-primary) 8%, transparent)}}body{background:var(--bg-page);background-color:var(--bg-page)}.page-section{animation:.52s cubic-bezier(.2,.8,.2,1) both page-materialize;position:relative}@keyframes page-materialize{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-header{position:relative}.page-header:before{content:"";background:linear-gradient(90deg,var(--text-primary),transparent);opacity:.46;width:52px;height:1px;margin-bottom:22px;display:block}.page-header h1,.gallery-text h1{text-shadow:0 1px 0 var(--page-bg-soft)}@supports (color:color-mix(in lab,red,red)){.page-header h1,.gallery-text h1{text-shadow:0 1px 0 color-mix(in srgb,var(--page-bg-soft) 72%,transparent)}}.project-links a,.utility-links a{position:relative}.project-links a:before,.utility-links a:before,.project-links a[aria-current=page]:before,.utility-links a[aria-current=page]:before,.project-links a.active:before,.utility-links a.active:before{content:none!important;display:none!important}.empty-state{background:linear-gradient(135deg,var(--material-sheen),var(--surface)),var(--surface);justify-content:flex-start;position:relative;overflow:hidden}.empty-state:before{content:"";pointer-events:none;background:linear-gradient(180deg,#ffffff38,transparent 34%),repeating-linear-gradient(135deg,transparent 0 17px,var(--quiet-engrave) 17px 18px);opacity:.35;position:absolute;top:0;right:0;bottom:0;left:0}.empty-state:after{content:"";border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline);opacity:.72;border-radius:0 0 18px;width:82px;height:42px;position:absolute;bottom:22px;right:24px}.contact-link{background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.contact-link{background:color-mix(in srgb,var(--surface-strong) 58%,transparent)}}@supports (color:color-mix(in lab,red,red)){.contact-link:hover,.contact-link:focus-visible{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 34%,var(--hairline)),0 10px 24px color-mix(in srgb,var(--accent) 12%,transparent)}}.contact-links{grid-template-columns:repeat(3,minmax(72px,104px));grid-auto-rows:72px;place-items:center;gap:clamp(28px,4vw,46px);width:min(100%,390px);max-width:100%;padding:0}.contact-link{border-radius:18px;width:72px;height:72px}.contact-link img{max-width:50px;max-height:50px}@media(max-width:720px){.contact-links{grid-template-columns:repeat(2,minmax(84px,1fr));grid-auto-rows:68px;gap:24px;width:100%;padding:0}.contact-link{border-radius:18px;width:68px;height:68px}.contact-link img{max-width:46px;max-height:46px}}@media(min-width:721px){.sidebar:after{content:"";background:linear-gradient(180deg,transparent,var(--hairline-strong) 18%,var(--hairline) 72%,transparent);width:1px;position:absolute;top:2px;bottom:58px;left:-20px}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--site-max-width:1060px;--section-gap:clamp(34px, 5vw, 64px);--grid-gap:clamp(22px, 3vw, 34px)}.content,.page-section,.video-page,.gallery-page,.gallery-frame{max-width:var(--site-max-width)}.content{padding-top:clamp(72px,10vh,124px)}.page-header{margin-bottom:var(--section-gap)}.empty-state{min-height:clamp(180px,28vh,300px)}.video-page{gap:var(--grid-gap);grid-template-columns:minmax(0,1fr) minmax(220px,280px)}.video-card{min-height:64px}.contact-links{gap:var(--grid-gap)}@media(min-width:1181px){.site-nav{gap:0}.project-links,.utility-links{gap:12px}.video-player-frame{max-height:min(62vh,560px)}}@media(min-width:721px)and (max-width:1180px){:root{--container-pad:36px;--content-area-width: calc(100vw - 300px) ;--site-max-width:min(900px, var(--content-area-width));--section-gap:42px;--grid-gap:24px}.site-shell{padding-right:var(--container-pad)}.sidebar{left:var(--container-pad);width:200px}.content{width:var(--site-max-width);margin-left:240px;padding-top:86px}.page-header h1,.gallery-text h1{font-size:clamp(38px,5.4vw,60px)}.video-page{grid-template-columns:minmax(0,1fr)}.video-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:0;display:grid}.video-card{grid-template-columns:120px minmax(0,1fr)}.video-card img{width:120px}.contact-links{grid-template-columns:repeat(3,minmax(72px,1fr));width:min(100%,420px)}}@media(max-width:720px){:root{--container-pad:20px;--site-max-width:100%;--section-gap:30px;--grid-gap:22px}.site-shell{padding:0 var(--container-pad) 64px}.sidebar{align-items:center;width:100%;height:76px;min-height:0;padding:14px 0;display:flex;position:sticky;top:0}.sidebar:before{display:block}.site-nav{border:1px solid var(--hairline);background:var(--surface);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(24px);border-radius:20px;margin:0;padding:14px;display:none;position:absolute;top:calc(100% - 2px);left:0;right:0}.sidebar.is-open .site-nav{display:flex}.project-links,.utility-links{grid-template-columns:1fr;gap:8px}.project-links a,.utility-links a{justify-content:flex-start;width:100%;min-height:42px}.content{width:100%;margin:0;padding-top:56px}.page-header{margin-bottom:var(--section-gap)}.page-header h1,.gallery-text h1{font-size:clamp(38px,13vw,58px)}.video-page,.video-player,.video-details,.video-list,.gallery-page,.gallery-frame{width:100%;max-width:100%}.video-page{display:block}.video-player-frame{border-radius:18px}.video-details{margin-top:18px}.video-list{flex-direction:column;gap:16px;margin-top:26px;display:flex}.video-card{grid-template-columns:112px minmax(0,1fr);min-height:68px}.video-card img{width:112px}.contact-links{grid-template-columns:repeat(2,minmax(84px,1fr));gap:24px;width:100%}.empty-state{border-radius:20px;min-height:180px;padding:26px}}@media(max-width:640px){:root{--container-pad:18px;--section-gap:26px;--grid-gap:18px}.site-shell{padding-bottom:54px}.identity__name{font-size:26px}.content{padding-top:44px}.theme-pull{display:none}.video-card{grid-template-columns:96px minmax(0,1fr)}.video-card img{width:96px}.contact-links{grid-template-columns:repeat(2,minmax(72px,1fr))}.gallery-text{margin-top:34px}.site-copyright{margin-top:38px}}.theme-pull{z-index:100;position:fixed;top:0;left:auto;right:clamp(24px,4.5vw,60px)}@media(max-width:720px){.theme-pull{top:0;right:20px}}.gallery-image-wrap{display:none!important}.gallery-index-header{width:min(100%,1020px);margin:0 0 clamp(36px,6vw,74px);padding-top:8px;display:block}.gallery-index-kicker{color:var(--text-tertiary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-family:Karla,PingFang SC,sans-serif;font-size:12px;font-weight:600}.gallery-index-header h1{color:var(--text-primary);letter-spacing:0;text-wrap:balance;margin:0;font-family:Adobe Garamond W01,Georgia,Times New Roman,serif;font-size:clamp(44px,6.8vw,104px);font-weight:400;line-height:.96}.gallery-index-header p:last-child{max-width:34em;color:var(--text-secondary);letter-spacing:0;margin:18px 0 0;font-family:Karla,PingFang SC,sans-serif;font-size:14px;line-height:1.8}.photo-subtitle{margin:0!important;position:absolute!important;top:85px!important;left:0!important}.mobile-image-list{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:clamp(28px,3.4vw,42px);width:min(100%,1020px);display:grid!important}.gallery-card{min-width:0;margin:0;display:block}.gallery-card__button{background:linear-gradient(135deg,var(--surface-strong),var(--surface)),var(--surface-strong);border:0;width:100%;padding:0;display:block;position:relative}@supports (color:color-mix(in lab,red,red)){.gallery-card__button{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong) 72%,transparent),var(--surface)),var(--surface-strong)}}.gallery-card__button{cursor:zoom-in;aspect-ratio:4/3;overflow:hidden}.gallery-card__button:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(90deg,transparent 0 28%,var(--text-primary) 45%,transparent 62%),repeating-linear-gradient(135deg,transparent 0 18px,var(--text-primary) 18px 19px);position:absolute;top:0;right:0;bottom:0;left:0}@supports (color:color-mix(in lab,red,red)){.gallery-card__button:before{background:linear-gradient(90deg,transparent 0 28%,color-mix(in srgb,var(--text-primary) 5%,transparent) 45%,transparent 62%),repeating-linear-gradient(135deg,transparent 0 18px,color-mix(in srgb,var(--text-primary) 4%,transparent) 18px 19px)}}.gallery-card__button:before{opacity:.38;transition:opacity .26s}.gallery-card__button.is-image-loaded:before{opacity:0}.mobile-image-list img{z-index:1;background:var(--surface-strong);min-height:0;box-shadow:none;object-fit:contain;object-position:center;opacity:0;border-radius:0;transition:opacity .26s,filter .22s,transform .22s;display:block;position:relative;width:100%!important;height:100%!important}.mobile-image-list img.is-loaded{opacity:1}.gallery-card__button:hover img,.gallery-card__button:focus-visible img{filter:brightness(.92);transform:scale(1.015)}.gallery-card__meta{color:var(--text-tertiary);letter-spacing:0;margin-top:11px;font-family:Karla,PingFang SC,sans-serif;display:block}.gallery-card__title{color:var(--text-primary);text-wrap:pretty;font-size:14px;font-weight:500;line-height:1.35;display:block}.gallery-card__description{max-width:38em;color:var(--text-secondary);text-wrap:pretty;margin-top:5px;font-size:12.5px;line-height:1.65;display:block}.gallery-text{display:none}@media(min-width:1181px){.gallery-index-header{padding-top:128px}.mobile-image-list{width:min(100%,1020px);padding-top:0}}@media(min-width:1280px){.gallery-index-header,.mobile-image-list{width:min(100%,1160px)}.mobile-image-list{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:720px){.gallery-index-header{margin-bottom:34px}.gallery-index-kicker{margin-bottom:10px}.gallery-index-header h1{font-size:clamp(44px,14vw,64px)}.gallery-index-header p:last-child{margin-top:18px}.mobile-image-list{grid-template-columns:1fr;gap:34px;width:100%}}body.viewer-open{overflow:hidden}.gallery-viewer{z-index:90;color:var(--ink-2);background:var(--bg);opacity:0;pointer-events:none;visibility:hidden;grid-template-rows:58px minmax(0,1fr);grid-template-columns:minmax(0,1fr) clamp(230px,24vw,320px);transition:opacity .18s,visibility .18s;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.gallery-viewer.is-open{opacity:1;pointer-events:auto;visibility:visible}.gallery-viewer__rail{display:none!important}.gallery-viewer__back{color:#ffffffb8;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff14;border-radius:8px;align-items:center;min-height:34px;padding:0 14px;display:inline-flex}.gallery-viewer__nav{gap:16px;margin-top:34px;font-family:Adobe Garamond W01,Georgia,Times New Roman,serif;font-size:clamp(26px,2.5vw,34px);line-height:1.2;display:grid}.gallery-viewer__nav span{color:#ffffffd1;border-radius:6px;padding:8px 16px;display:block}.gallery-viewer__nav .is-current{background:#ffffff21}.gallery-viewer__stage{min-width:0;min-height:100dvh;display:contents;position:relative}.gallery-viewer__toolbar{background:0 0;border-bottom:0;grid-area:1/1;justify-content:flex-end;align-items:center;gap:16px;padding:0 22px;display:flex}.gallery-viewer__icon-button{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;font-size:28px;line-height:1;display:inline-grid}.gallery-viewer__icon-button:hover,.gallery-viewer__icon-button:focus-visible{color:var(--ink);background:#281e1414}.gallery-viewer__figure{grid-area:2/1;place-items:center;min-width:0;min-height:0;margin:0;padding:clamp(18px,3vw,42px);display:grid}.gallery-viewer__figure img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 118px);display:block;box-shadow:0 28px 90px #0000006b}.gallery-viewer__metadata{min-height:100dvh;color:var(--ink-2);background:0 0;grid-area:1/2/3;grid-template-columns:minmax(0,1fr);align-content:center;align-items:start;gap:0;padding:clamp(24px,4vw,42px) clamp(18px,2.4vw,34px);font-family:Karla,PingFang SC,sans-serif;display:grid}.gallery-viewer__rating{display:none!important}.gallery-viewer__rating span,.gallery-viewer__metadata dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:11px;line-height:1.2;display:block}.gallery-viewer__rating strong{color:#ffffffbd;letter-spacing:.1em;font-size:18px}.gallery-viewer__metadata dl{grid-template-columns:1fr;gap:18px;min-width:0;margin:0;display:grid}.gallery-viewer__metadata div{min-width:0}.gallery-viewer__metadata dd{color:var(--ink-2);text-overflow:ellipsis;white-space:normal;margin:0;font-size:13px;line-height:1.55;overflow:hidden}.gallery-viewer__metadata div[hidden]{display:none}@media(max-width:980px){.gallery-viewer{grid-template-columns:minmax(0,1fr) minmax(190px,32vw)}.gallery-viewer__rail{display:none}.gallery-viewer__metadata{grid-template-columns:minmax(0,1fr)}.gallery-viewer__metadata dl{grid-template-columns:1fr}}@media(max-width:640px){.gallery-viewer{grid-template-rows:54px minmax(0,1fr) auto;grid-template-columns:1fr}.gallery-viewer__toolbar{grid-area:1/1}.gallery-viewer__figure{grid-area:2/1;padding:14px}.gallery-viewer__figure img{max-height:calc(100dvh - 240px)}.gallery-viewer__metadata{grid-area:3/1;min-height:0;padding:16px}.gallery-viewer__metadata dl{grid-template-columns:1fr;gap:12px}.gallery-viewer__metadata dd{white-space:normal}}@media(min-width:1181px){:root{--site-max-width:min(1060px, calc(100vw - 360px) )}.content,.page-section,.video-page,.gallery-page,.gallery-frame{max-width:var(--site-max-width)}.content{width:var(--site-max-width)}}.contact-links{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));grid-auto-rows:minmax(112px,auto);place-items:stretch stretch;gap:clamp(14px,2.2vw,20px);width:min(100%,680px);padding:clamp(4px,1.2vw,8px) 0 0;display:grid}.contact-link{width:100%;min-width:0;height:auto;min-height:112px;color:var(--text-primary);background:linear-gradient(180deg,#ffffffa3,#ffffff2e),var(--surface-strong);border-radius:22px;grid-template-rows:72px auto;place-items:center;gap:8px;padding:12px 8px 10px;text-decoration:none;display:grid}@supports (color:color-mix(in lab,red,red)){.contact-link{background:linear-gradient(180deg,#ffffffa3,#ffffff2e),color-mix(in srgb,var(--surface-strong) 82%,transparent)}}.contact-link{box-shadow:inset 0 0 0 1px var(--hairline),0 16px 34px #13151a0f}@supports (color:color-mix(in lab,red,red)){.contact-link{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--hairline) 76%,transparent),0 16px 34px #13151a0f}}.contact-link:hover,.contact-link:focus-visible{background:linear-gradient(180deg,#ffffffbd,#ffffff3d),var(--accent-soft)}@supports (color:color-mix(in lab,red,red)){.contact-link:hover,.contact-link:focus-visible{background:linear-gradient(180deg,#ffffffbd,#ffffff3d),color-mix(in srgb,var(--accent-soft) 72%,var(--surface-strong))}}.contact-link:hover,.contact-link:focus-visible{box-shadow:inset 0 0 0 1px var(--accent),0 18px 38px var(--accent)}@supports (color:color-mix(in lab,red,red)){.contact-link:hover,.contact-link:focus-visible{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 32%,var(--hairline)),0 18px 38px color-mix(in srgb,var(--accent) 12%,transparent)}}.contact-link img{object-fit:contain;width:64px;max-width:64px;height:64px;max-height:64px}.contact-link__label{max-width:100%;color:var(--text-secondary);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.2;overflow:hidden}@media(max-width:720px){.contact-links{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(108px,auto);gap:12px;width:100%}.contact-link{border-radius:20px;grid-template-rows:68px auto;gap:7px;min-height:108px;padding:11px 6px 9px}.contact-link img{width:60px;max-width:60px;height:60px;max-height:60px}.contact-link__label{font-size:11px}}html[data-theme=light]{--page-bg:var(--bg);--page-bg-soft:#f0f0ec;--surface:var(--card);--surface-strong:#f8f8f4a3;--surface-muted:#f8f8f46b;--text-primary:var(--ink);--text-secondary:var(--muted);--text-tertiary:var(--muted-2);--hairline:var(--line);--hairline-strong:var(--line-strong);--accent-soft:#76684d1f;--shadow-soft:0 18px 48px #1c201f14}html[data-theme=light] body{background:var(--bg);color:var(--ink-2);font-family:Inter,Helvetica Neue,PingFang SC,sans-serif}html[data-theme=light] body:before{z-index:1;opacity:.6;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.6' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.18  0 0 0 0 0.19  0 0 0 0 0.18  0 0 0 0.24 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");background-size:220px 220px;-webkit-mask-image:none;mask-image:none}html[data-theme=light] body:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(at 50% -10%,#d2d2ca33,#0000 55%),radial-gradient(circle at 18% 24%,#7e848014,#0000 28%),radial-gradient(circle at 78% 72%,#fffffa3d,#0000 32%),linear-gradient(135deg,#464c4809,#0000 38%,#ffffff1f);position:fixed;top:0;right:0;bottom:0;left:0}html[data-theme=light] .sidebar:before{-webkit-backdrop-filter:saturate(120%)blur(12px);background:#eeeeead6;border-bottom:1px solid #262a2824}html[data-theme=light] .identity,html[data-theme=light] .site-nav a,html[data-theme=light] .utility-links a,html[data-theme=light] .project-links a{color:var(--text-primary)}html[data-theme=light] .identity:focus-visible,html[data-theme=light] .site-nav a[aria-current=page],html[data-theme=light] .site-nav a.active{color:var(--accent)}@media(hover:hover){html[data-theme=light] .identity:hover,html[data-theme=light] .site-nav a:hover{color:var(--accent)}}html[data-theme=light] .identity__name,html[data-theme=light] .page-header h1,html[data-theme=light] .gallery-text h1,html[data-theme=light] .gallery-index-header h1,html[data-theme=light] .intro-title,html[data-theme=light] .timeline-header h2,html[data-theme=light] .video-title,html[data-theme=light] .company-name{letter-spacing:.01em;font-family:Adobe Garamond W01,STSong,Songti SC,Noto Serif SC,serif}html[data-theme=light] .page-header,html[data-theme=light] .gallery-index-header,html[data-theme=light] .gallery-text,html[data-theme=light] .empty-state{position:relative}html[data-theme=light] .page-header:before,html[data-theme=light] .gallery-index-header:before,html[data-theme=light] .gallery-text:before,html[data-theme=light] .empty-state:before{content:"";z-index:-1;opacity:.9;background:radial-gradient(circle at 16% 22%,#383e3c0d 0,#383e3c0d 1px,#0000 1.8px),linear-gradient(#464c4809,#0000 72%);border:1px solid #2e323014;position:absolute;top:-16px;right:-18px;bottom:-16px;left:-18px}html[data-theme=light] .page-header h1,html[data-theme=light] .gallery-index-header h1,html[data-theme=light] .gallery-text h1{color:var(--text-primary);font-weight:600}html[data-theme=light] .page-header p,html[data-theme=light] .gallery-index-header p:last-child,html[data-theme=light] .gallery-text p,html[data-theme=light] .empty-state,html[data-theme=light] .video-description,html[data-theme=light] .article-card__excerpt,html[data-theme=light] .intro-text,html[data-theme=light] .project-desc,html[data-theme=light] .trait-desc,html[data-theme=light] .node-card,html[data-theme=light] .contact-link__label{color:var(--text-secondary)}html[data-theme=light] .video-player-frame,html[data-theme=light] .video-details,html[data-theme=light] .video-card,html[data-theme=light] .about-portfolio,html[data-theme=light] .trait-card,html[data-theme=light] .node-card,html[data-theme=light] .contact-link,html[data-theme=light] .gallery-text,html[data-theme=light] .gallery-index-header,html[data-theme=light] .empty-state{background:linear-gradient(180deg,#f4f4f0e0,#e2e3dec7),var(--surface);border:1px solid #2a2e2c29;border-radius:0;box-shadow:inset 0 0 0 1px #fffffa57,0 10px 24px #1c201f0f}html[data-theme=light] .video-card,html[data-theme=light] .trait-card,html[data-theme=light] .contact-link{overflow:hidden}html[data-theme=light] .video-card:before,html[data-theme=light] .trait-card:before,html[data-theme=light] .node-card:before,html[data-theme=light] .contact-link:before,html[data-theme=light] .gallery-text:after,html[data-theme=light] .gallery-index-header:after{content:"";pointer-events:none;opacity:.22;mix-blend-mode:multiply;background-image:radial-gradient(circle at 14% 18%,#343a381a 0,#343a381a 1px,#0000 1.8px),repeating-linear-gradient(90deg,#343a3805 0,#343a3805 1px,#0000 1px,#0000 8px),repeating-linear-gradient(0deg,#343a3804 0,#343a3804 1px,#0000 1px,#0000 10px);position:absolute;top:0;right:0;bottom:0;left:0}html[data-theme=light] .video-card:hover,html[data-theme=light] .trait-card:hover,html[data-theme=light] .contact-link:hover,html[data-theme=light] .contact-link:focus-visible{transform:none;box-shadow:inset 0 0 0 1px #76684d33,0 14px 28px #1c201f17}html[data-theme=light] .video-card strong,html[data-theme=light] .video-title,html[data-theme=light] .trait-name,html[data-theme=light] .project-title,html[data-theme=light] .company-name,html[data-theme=light] .contact-link__label{color:var(--text-primary)}html[data-theme=light] .video-meta,html[data-theme=light] .video-card small,html[data-theme=light] .time-range,html[data-theme=light] .time-duration,html[data-theme=light] .gallery-index-kicker,html[data-theme=light] .intro-badge,html[data-theme=light] .video-section-label{color:var(--text-secondary)}html[data-theme=light] .video-pill,html[data-theme=light] .role-badge,html[data-theme=light] .pill,html[data-theme=light] .trait-icon-tag{color:#4f4a3e;background:#76684d14;border:1px solid #383e3c2e;border-radius:999px}html[data-theme=light] .timeline-spine,html[data-theme=light] .project-row:before,html[data-theme=light] .page-header:after{background:linear-gradient(#464c4857,#0000)}html[data-theme=light] .node-pointer{background:#686050;box-shadow:0 0 0 4px #464c481f}html[data-theme=light] .contact-link{background:linear-gradient(180deg,#f4f4f0e0,#e2e3dec7),var(--surface-strong)}html[data-theme=light] .contact-link img{filter:saturate(.88)contrast(.98)sepia(.02)}html[data-theme=light] .gallery-image-wrap,html[data-theme=light] .gallery-viewer__stage,html[data-theme=light] .gallery-viewer__metadata{background-color:#251812eb}:root{--bg:var(--bg-page,#f5f5f1);--ink:var(--text-primary,#1f2020);--ink-2:var(--text-primary,#2b2d2d);--muted:var(--text-secondary,#545a57);--muted-2:var(--text-tertiary,#666d69);--accent:var(--accent,#76684d);--line:var(--border-line,#1c201f1f);--line-2:var(--border-line-strong,#1c201f33);--card-bg:var(--bg-surface,transparent)}html[data-theme=light],html[data-theme=light] body{background:var(--bg-page,var(--bg));color:var(--text-primary,var(--ink-2));font-family:Inter,Helvetica Neue,PingFang SC,sans-serif}html[data-theme=light] body:before,html[data-theme=light] body:after{display:none!important}html[data-theme=dark] body{color:var(--text-primary);background:var(--bg-page);background-color:var(--bg-page)}html[data-theme=dark] body:before,html[data-theme=dark] body:after{display:none!important}#app,main,.layout,.content{z-index:2;position:relative}.page-hero,.hero,.section-header,.page-header,.gallery-index-header{box-shadow:none;background:0 0;border:none;border-bottom-width:0}.page-hero .kicker,.hero .kicker,.section-header .kicker,.gallery-index-kicker{letter-spacing:3px;color:var(--accent);text-transform:uppercase;font-size:11px;font-weight:600}.page-hero h1,.hero h1,.section-header h1,.page-header h1,.gallery-index-header h1{letter-spacing:clamp(1px,.5vw,6px);color:var(--ink);text-wrap:balance;font-family:DM Serif Display,Songti SC,serif;font-size:clamp(30px,7vw,62px);font-weight:500;line-height:1}.page-hero h1 em,.hero h1 em,.section-header h1 em{color:var(--accent);font-style:italic;font-weight:400}.page-hero .sub,.hero .sub,.section-header .sub,.page-header p,.gallery-index-header p:last-child{color:var(--muted);font-size:13px}.card,.photo-card,.video-card,.gallery-card,.article-card{padding:0;box-shadow:none!important;background:0 0!important;border:none!important}.card .thumb,.card img,.photo-card img,.video-card .cover,.video-card img,.article-card__cover img{aspect-ratio:4/3;filter:saturate(.88)contrast(.98)sepia(.02);object-fit:cover;border:1px solid #281e1414;width:100%;display:block;overflow:hidden}.gallery-card img{aspect-ratio:4/3;filter:saturate(.88)contrast(.98)sepia(.02);object-fit:contain;object-position:center;border:1px solid #281e1414;width:100%;display:block;overflow:hidden}.card h4,.card .title,.photo-card .title,.video-card .title,.gallery-card__title,.article-card__title,.video-card strong{color:var(--ink);font-size:14px;font-weight:600}.card p,.card .desc,.card .meta,.photo-card .desc,.video-card .desc,.gallery-card__description,.article-card__excerpt{color:var(--muted);font-size:12px;line-height:1.65}.card .source,.video-card .source,.video-card .platform,.video-pill,html[data-theme=light] .video-pill,.article-card__source,.article-feature__tag{letter-spacing:1px;color:var(--accent);text-transform:uppercase;font-size:11px;font-weight:600;background:0 0!important;padding:0!important}.contact-links{background:0 0}.contact-link{text-align:center;box-shadow:none;border-radius:0;transition:border-color .2s,transform .2s;background:0 0!important;border:0!important}.contact-link:hover,.contact-link:focus-visible{box-shadow:none;transform:translateY(-2px);background:0 0!important}.contact-link img,html[data-theme=light] .contact-link img,.contact-link svg{filter:grayscale()opacity(.7);width:40px;max-width:40px;height:40px;max-height:40px;transition:filter .2s}.contact-link:hover img,.contact-link:focus-visible img,html[data-theme=light] .contact-link:hover img,html[data-theme=light] .contact-link:focus-visible img,.contact-link:hover svg,.contact-link:focus-visible svg{filter:grayscale(0)opacity()}.contact-link span,.contact-link__label{color:var(--muted);font-size:12px;display:block}.sidebar a,.side-nav a,nav a{color:var(--muted);cursor:pointer;align-items:center;gap:8px;font-size:13px;text-decoration:none;display:flex}.sidebar a.active,.side-nav a.active,nav a.active,.sidebar a[aria-current=page],.side-nav a[aria-current=page],nav a[aria-current=page]{color:var(--ink);font-weight:600}.sidebar a.active:before,.side-nav a.active:before,nav a.active:before,.sidebar a[aria-current=page]:before,.side-nav a[aria-current=page]:before,nav a[aria-current=page]:before{content:"";background:var(--accent);border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}html[data-theme=light] .identity:focus-visible,html[data-theme=light] .site-nav a[aria-current=page],html[data-theme=light] .site-nav a.active,.video-card:focus-visible strong,.video-card.is-active strong,.article-detail__back:focus-visible{color:var(--accent)}@media(hover:hover){html[data-theme=light] .identity:hover,html[data-theme=light] .site-nav a:hover,.video-card:hover strong,.article-detail__back:hover{color:var(--accent)}}html[data-theme=dark] .sidebar a,html[data-theme=dark] .side-nav a,html[data-theme=dark] nav a{color:var(--text-secondary)}html[data-theme=dark] .sidebar a.active,html[data-theme=dark] .side-nav a.active,html[data-theme=dark] nav a.active,html[data-theme=dark] .sidebar a[aria-current=page],html[data-theme=dark] .side-nav a[aria-current=page],html[data-theme=dark] nav a[aria-current=page],html[data-theme=dark] .page-header h1,html[data-theme=dark] .gallery-index-header h1,html[data-theme=dark] .intro-title,html[data-theme=dark] .gallery-card__title,html[data-theme=dark] .article-card__title,html[data-theme=dark] .video-card strong,html[data-theme=dark] .contact-link__label,html[data-theme=dark] .trait-name,html[data-theme=dark] .project-title,html[data-theme=dark] .company-name{color:var(--text-primary)}html[data-theme=dark] .page-header p,html[data-theme=dark] .gallery-index-header p:last-child,html[data-theme=dark] .gallery-card__description,html[data-theme=dark] .article-card__excerpt,html[data-theme=dark] .intro-text,html[data-theme=dark] .project-desc,html[data-theme=dark] .trait-desc,html[data-theme=dark] .contact-link span,html[data-theme=dark] .contact-link__label{color:var(--text-secondary)}html[data-theme=dark] .video-pill,html[data-theme=dark] .article-card__source,html[data-theme=dark] .article-feature__tag,html[data-theme=dark] .gallery-index-kicker{color:var(--accent)}html[data-theme=dark] .contact-link{box-shadow:none;background:0 0!important;border:0!important}html[data-theme=light] .contact-link{box-shadow:none!important;background:0 0!important;border:0!important}html[data-theme=dark] .contact-link img,html[data-theme=dark] .contact-link svg{filter:grayscale()opacity(.76);border:0}html[data-theme=dark] .contact-link:hover img,html[data-theme=dark] .contact-link:focus-visible img,html[data-theme=dark] .contact-link:hover svg,html[data-theme=dark] .contact-link:focus-visible svg{filter:grayscale(0)opacity()}.identity,.sidebar .identity,html[data-theme=light] .identity,html[data-theme=light] .sidebar .identity,html[data-theme=dark] .identity,html[data-theme=dark] .sidebar .identity{width:100%;min-width:0;max-width:100%;color:var(--text-primary);border:0;border-radius:0;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:clamp(54px,8vh,82px);padding:0;text-decoration:none;transition:color .18s,opacity .18s;display:inline-flex;transform:none;box-shadow:none!important;background:0 0!important}.identity:hover,.identity:focus-visible,.sidebar .identity:hover,.sidebar .identity:focus-visible,html[data-theme=light] .identity:hover,html[data-theme=light] .identity:focus-visible,html[data-theme=light] .sidebar .identity:hover,html[data-theme=light] .sidebar .identity:focus-visible,html[data-theme=dark] .identity:hover,html[data-theme=dark] .identity:focus-visible,html[data-theme=dark] .sidebar .identity:hover,html[data-theme=dark] .sidebar .identity:focus-visible,.identity:active,.sidebar .identity:active,html[data-theme=light] .identity:active,html[data-theme=light] .sidebar .identity:active,html[data-theme=dark] .identity:active,html[data-theme=dark] .sidebar .identity:active{color:var(--accent);transform:none;box-shadow:none!important;background:0 0!important}.identity__name,html[data-theme=light] .identity__name,html[data-theme=dark] .identity__name{color:inherit;letter-spacing:-.015em;font-family:Quicksand,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(38px,3.8vw,50px);font-weight:700;line-height:1;display:block}.identity__slogan,html[data-theme=light] .identity__slogan,html[data-theme=dark] .identity__slogan{max-width:15em;color:var(--text-secondary);font-family:var(--body-copy-font);letter-spacing:.03em;text-wrap:pretty;margin-top:0;font-size:11.5px;font-weight:400;line-height:1.55;display:block}.identity:hover .identity__slogan,.identity:focus-visible .identity__slogan,html[data-theme=light] .identity:hover .identity__slogan,html[data-theme=light] .identity:focus-visible .identity__slogan,html[data-theme=dark] .identity:hover .identity__slogan,html[data-theme=dark] .identity:focus-visible .identity__slogan{color:var(--text-secondary)}@media(max-width:1180px){.identity,.sidebar .identity,html[data-theme=light] .identity,html[data-theme=light] .sidebar .identity,html[data-theme=dark] .identity,html[data-theme=dark] .sidebar .identity{width:min(220px,100% - 120px);margin-bottom:0}.identity__name,html[data-theme=light] .identity__name,html[data-theme=dark] .identity__name{font-size:clamp(30px,5.8vw,40px);font-weight:700}}.page-header:before,.gallery-index-header:before,html[data-theme=light] .page-header:before,html[data-theme=light] .gallery-index-header:before,.page-header:after,.gallery-index-header:after,html[data-theme=light] .page-header:after,html[data-theme=light] .gallery-index-header:after{display:none}.page-header,.gallery-index-header{max-width:min(100%,980px);margin-bottom:clamp(22px,4vw,42px);padding-top:clamp(18px,4vw,42px);padding-bottom:clamp(16px,3vw,28px);box-shadow:none!important;background:0 0!important;border:0!important}html[data-theme=light] .page-header,html[data-theme=light] .gallery-index-header{box-shadow:none!important;background:0 0!important;border:0!important}#articles .articles-stack{gap:0;width:min(100%,980px)}#articles .article-card{width:100%;border-top:1px solid var(--line)!important}#articles .article-card:first-child{border-top-color:var(--accent)!important}#articles .article-card__link{grid-template-columns:minmax(0,1fr) clamp(220px,25vw,260px);align-items:center;column-gap:clamp(30px,5vw,56px);min-height:238px;padding:30px 0;display:grid}#articles .article-card__cover{border-radius:0;order:4;grid-area:1/2/span 3;width:100%;margin:0}#articles .article-card__cover img{aspect-ratio:4/3}#articles .article-card__meta,#articles .article-card__title,#articles .article-card__excerpt{grid-column:1}#articles .article-card__meta{align-self:end;gap:8px 12px;margin:0 0 14px}#articles .article-card__title{max-width:20em;font-size:clamp(20px,2.3vw,26px);font-weight:700;line-height:1.25}#articles .article-card__excerpt{max-width:34em;margin-top:18px;line-height:1.7}@media(max-width:720px){#articles .article-card__link{grid-template-columns:1fr;min-height:0;padding:28px 0}#articles .article-card__cover,#articles .article-card__meta,#articles .article-card__title,#articles .article-card__excerpt{grid-column:1}#articles .article-card__cover{order:0;grid-row:auto;margin-bottom:16px}}#images .gallery-index-header,#images .mobile-image-list{width:min(100%,1160px);max-width:min(100%,1160px);margin-left:auto;margin-right:auto}#images .gallery-index-header{margin-bottom:24px;padding-bottom:0}#images .mobile-image-list{gap:clamp(26px,2.8vw,38px);padding-top:0}@media(min-width:1280px){#images .gallery-index-header,#images .mobile-image-list{width:min(100%,1160px)}}@media(max-width:900px){.mobile-image-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.mobile-image-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.page-header h1,.gallery-index-header h1{letter-spacing:2px;font-size:clamp(30px,11vw,42px)}.video-grid,.mobile-image-list{grid-template-columns:1fr}}body.viewer-open .theme-pull{display:none}body.viewer-open .cat-wrapper,body.viewer-open .sidebar,body.viewer-open .site-nav,body.viewer-open .mobile-menu-toggle,body.viewer-open .site-copyright{display:none!important}.cv-page{width:min(100%,780px);color:var(--text-primary);background:var(--page-bg);box-shadow:none;margin:0 auto;padding:56px 56px 48px;font-family:Noto Sans SC,Inter,PingFang SC,sans-serif;line-height:1.75}.cv-header{border-bottom:1px solid var(--hairline-strong);align-items:center;gap:32px;padding-bottom:32px;display:flex}.cv-portrait{border:4px solid var(--page-bg);outline:1px solid var(--hairline);background:var(--surface-muted);width:120px;height:120px;box-shadow:var(--shadow-soft);border-radius:50%;flex-shrink:0;position:relative;overflow:hidden}.cv-portrait img{object-fit:cover;object-position:center;filter:saturate(.72)contrast(.96)sepia(.18)grayscale(.12);width:100%;height:100%;display:block}.cv-name-block{flex:1;min-width:0}.cv-eyebrow,.cv-contacts,.cv-num,.cv-en,.cv-period,.cv-skill-column h4,.cv-footer{font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace}.cv-eyebrow{color:var(--accent);letter-spacing:.25em;margin-bottom:10px;font-size:11px}.cv-name{color:var(--text-primary);letter-spacing:.08em;margin:0 0 10px;font-family:STXingkai,华文行楷,FZKai-Z03,KaiTi,楷体,Noto Serif SC,Songti SC,cursive,serif;font-size:42px;font-weight:500;line-height:1.18}.cv-title{color:var(--text-primary);margin-bottom:14px;font-size:14.5px;line-height:1.6}.cv-contacts{color:var(--text-secondary);flex-wrap:wrap;gap:14px;font-size:11.5px;display:flex}.cv-contacts span{align-items:center;gap:6px;display:inline-flex}.cv-contacts span:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;display:inline-block}.cv-section{margin-top:44px}.cv-section-head{border-bottom:1px solid var(--hairline);align-items:baseline;gap:14px;margin-bottom:20px;padding-bottom:10px;display:flex}.cv-num{color:var(--text-secondary);letter-spacing:.1em;font-size:11px;font-weight:500}.cv-section-head h2{color:var(--text-primary);letter-spacing:.02em;margin:0;font-family:Noto Serif SC,Songti SC,serif;font-size:18px;font-weight:700}.cv-en{color:var(--text-tertiary);letter-spacing:.15em;margin-left:auto;font-size:10px}.cv-about p{color:var(--text-primary);margin:0 0 12px;font-size:14.5px;line-height:1.95}.cv-about strong{color:var(--text-primary);font-weight:600}.cv-emphasis{color:#a83a32;font-weight:700}html[data-theme=dark] .cv-emphasis{color:#ff8a80}.cv-highlights{border:1px solid var(--hairline-strong);grid-template-columns:repeat(3,1fr);display:grid}.cv-highlight{border-right:1px solid var(--hairline);padding:22px 18px}.cv-highlight:last-child{border-right:0}.cv-big{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:10px;font-family:Noto Serif SC,Songti SC,serif;font-size:42px;font-weight:900;line-height:1}.cv-big sup{color:var(--text-secondary);margin-left:2px;font-size:14px;font-weight:500}.cv-desc{color:var(--text-secondary);font-size:12px;line-height:1.6}.cv-timeline-item{border-top:1px solid var(--hairline);grid-template-columns:110px 1fr;gap:24px;padding:22px 0;display:grid}.cv-timeline-item:first-of-type{border-top:0;padding-top:8px}.cv-period{color:var(--text-primary);letter-spacing:.04em;font-size:12px;font-weight:500;line-height:1.7}.cv-period span:not(.cv-now){color:var(--text-secondary);margin-top:4px;font-size:11px;display:block}.cv-now{color:var(--page-bg);background:var(--text-primary);letter-spacing:.1em;margin-bottom:6px;padding:2px 8px;font-size:10px;display:inline-block}.cv-role{color:var(--text-primary);margin-bottom:4px;font-family:Noto Serif SC,Songti SC,serif;font-size:17px;font-weight:700}.cv-org{color:var(--text-secondary);margin-bottom:12px;font-size:13px;font-weight:500}.cv-org:before{content:"@ ";color:var(--text-tertiary)}.cv-body ul,.cv-skill-column ul{margin:0;padding:0;list-style:none}.cv-body li{color:var(--text-primary);margin-bottom:4px;padding-left:16px;font-size:13.5px;line-height:1.85;position:relative}.cv-body li:before{content:"-";color:var(--text-tertiary);font-weight:600;position:absolute;left:0}.cv-skills{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.cv-skill-column h4{border-bottom:1px solid var(--hairline);color:var(--text-secondary);letter-spacing:.18em;margin:0 0 12px;padding-bottom:8px;font-size:10.5px;font-weight:500}.cv-skill-column li{color:var(--text-primary);font-size:13px;line-height:2}.cv-compact-list{gap:10px;display:grid}.cv-compact-list p{color:var(--text-primary);margin:0;font-size:13.5px;line-height:1.85}.cv-footer{border-top:1px solid var(--hairline-strong);color:var(--text-secondary);letter-spacing:.15em;justify-content:space-between;align-items:center;margin-top:56px;padding-top:24px;font-size:10.5px;display:flex}.cv-quote{color:var(--text-primary);letter-spacing:0;font-family:Noto Serif SC,Songti SC,serif;font-size:13px;font-style:italic}html[data-theme=dark] .cv-page{color:var(--text-primary);background:var(--page-bg);box-shadow:none}html[data-theme=dark] .cv-header,html[data-theme=dark] .cv-footer,html[data-theme=dark] .cv-highlights{border-color:var(--hairline-strong)}html[data-theme=dark] .cv-section-head,html[data-theme=dark] .cv-highlight,html[data-theme=dark] .cv-timeline-item,html[data-theme=dark] .cv-skill-column h4{border-color:var(--hairline)}html[data-theme=dark] .cv-name,html[data-theme=dark] .cv-section-head h2,html[data-theme=dark] .cv-about strong,html[data-theme=dark] .cv-big,html[data-theme=dark] .cv-period,html[data-theme=dark] .cv-role,html[data-theme=dark] .cv-title,html[data-theme=dark] .cv-about p,html[data-theme=dark] .cv-body li,html[data-theme=dark] .cv-skill-column li,html[data-theme=dark] .cv-quote{color:var(--text-primary)}html[data-theme=dark] .cv-contacts,html[data-theme=dark] .cv-org,html[data-theme=dark] .cv-desc,html[data-theme=dark] .cv-footer{color:var(--text-secondary)}html[data-theme=dark] .cv-contacts span:before,html[data-theme=dark] .cv-now{background:var(--text-primary);color:var(--page-bg)}@media(max-width:680px){.cv-page{padding:32px 24px}.cv-header{gap:20px}.cv-portrait{border-width:3px;width:90px;height:90px}.cv-name{font-size:28px}.cv-timeline-item,.cv-skills,.cv-highlights{grid-template-columns:1fr}.cv-highlight{border-bottom:1px solid #ebe7dc;border-right:0}.cv-highlight:last-child{border-bottom:0}.cv-footer{flex-direction:column;align-items:flex-start;gap:10px}}body.viewer-open .gallery-viewer,html[data-theme=light] body.viewer-open .gallery-viewer{color:var(--ink-2);background:var(--bg)!important}html[data-theme=dark] body.viewer-open .gallery-viewer{color:#ffffffd6;background:#000!important}body.viewer-open .gallery-viewer,html[data-theme=light] body.viewer-open .gallery-viewer,html[data-theme=dark] body.viewer-open .gallery-viewer{z-index:6000!important;color:#ffffffd6!important;-webkit-backdrop-filter:none!important;isolation:isolate!important;background:#000!important;grid-template-rows:minmax(0,1fr)!important;grid-template-columns:minmax(0,1fr)!important;place-items:center!important;padding:clamp(38px,6vh,72px) clamp(24px,6vw,84px)!important}body.viewer-open .gallery-viewer__toolbar,body.viewer-open .gallery-viewer__figure,body.viewer-open .gallery-viewer__metadata,html[data-theme=light] body.viewer-open .gallery-viewer__toolbar,html[data-theme=light] body.viewer-open .gallery-viewer__figure,html[data-theme=light] body.viewer-open .gallery-viewer__metadata{background:0 0!important}body.viewer-open .gallery-viewer__stage{grid-template-rows:auto auto!important;grid-template-columns:minmax(0,1fr)!important;place-items:start center!important;width:min(840px,78vw)!important;min-height:0!important;max-height:calc(100vh - 90px)!important;display:grid!important;position:relative!important}body.viewer-open .gallery-viewer__toolbar{z-index:2!important;grid-area:1/1!important;justify-content:flex-end!important;gap:12px!important;width:100%!important;padding:0!important;display:flex!important;position:absolute!important;top:clamp(-54px,-5vh,-34px)!important;right:0!important}body.viewer-open .gallery-viewer__toolbar [data-viewer-previous],body.viewer-open .gallery-viewer__toolbar [data-viewer-next]{z-index:3!important;position:fixed!important;top:50%!important;transform:translateY(-50%)!important}body.viewer-open .gallery-viewer__toolbar [data-viewer-previous]{left:calc(50% - min(420px,39vw) - 96px)!important}body.viewer-open .gallery-viewer__toolbar [data-viewer-next]{right:calc(50% - min(420px,39vw) - 96px)!important}body.viewer-open .gallery-viewer__toolbar [data-viewer-close]{color:#fffffff0!important}body.viewer-open .gallery-viewer__icon-button{color:#ffffffeb!important;-webkit-backdrop-filter:blur(18px)saturate(135%)!important;background:linear-gradient(#ffffff2e,#ffffff0f)!important;border:1px solid #ffffff24!important;border-radius:999px!important;justify-content:center!important;align-items:center!important;width:48px!important;height:48px!important;display:inline-flex!important;box-shadow:0 18px 38px #00000057,inset 0 1px #fff3,inset 0 -1px #ffffff0d!important}body.viewer-open .gallery-viewer__icon-button:hover,body.viewer-open .gallery-viewer__icon-button:focus-visible{color:#fff!important;background:linear-gradient(#ffffff3d,#ffffff1a)!important;border-color:#ffffff38!important;transform:translateY(-1px)!important}body.viewer-open .gallery-viewer__icon-button>span{font-size:28px!important;line-height:1!important;display:inline-block!important}body.viewer-open .gallery-viewer__figure{grid-area:1/1!important;width:100%!important;min-height:0!important;padding:0!important}body.viewer-open .gallery-viewer__figure img{transform-origin:50%!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:min(56vh,520px)!important;transition:transform .16s!important;box-shadow:0 28px 90px #0000008f!important}body.viewer-open .gallery-viewer__metadata{color:#ffffffbd!important;grid-area:2/1!important;gap:14px!important;width:100%!important;min-height:0!important;padding:22px 0 8px!important;font-family:Karla,PingFang SC,sans-serif!important;display:grid!important}body.viewer-open .gallery-viewer__title{color:#ffffffeb!important;letter-spacing:0!important;margin:0!important;font-size:17px!important;line-height:1.4!important;display:block!important}body.viewer-open .gallery-viewer__metadata dl{gap:7px!important;margin:0!important;display:grid!important}body.viewer-open .gallery-viewer__metadata div{flex-wrap:wrap!important;align-items:baseline!important;min-width:0!important;max-width:100%!important;display:flex!important}body.viewer-open .gallery-viewer__metadata dt{color:#ffffff9e!important;margin:0 8px 0 0!important;font-size:12px!important;line-height:1.65!important;display:inline-flex!important}body.viewer-open .gallery-viewer__metadata dt:before{content:"•"!important;color:#ffffffbd!important;margin-right:8px!important}body.viewer-open .gallery-viewer__metadata dd{color:#fffc!important;white-space:normal!important;margin:0!important;font-size:12px!important;line-height:1.65!important;display:inline!important}body.viewer-open .gallery-viewer__note{color:#ffffffd1!important;white-space:normal!important;margin:4px 0 0!important;font-size:12px!important;line-height:1.85!important;display:block!important}html[data-theme=dark] body.viewer-open .gallery-viewer__metadata{color:#ffffffbd}html[data-theme=dark] body.viewer-open .gallery-viewer__title{color:#ffffffeb}html[data-theme=dark] body.viewer-open .gallery-viewer__metadata dt{color:#ffffff9e}html[data-theme=dark] body.viewer-open .gallery-viewer__metadata dd{color:#fffc}html[data-theme=dark] body.viewer-open .gallery-viewer__note{color:#ffffffd1}html[data-theme=dark] body.viewer-open .gallery-viewer__icon-button{color:#ffffffeb}html[data-theme=dark] body.viewer-open .gallery-viewer__icon-button:hover,html[data-theme=dark] body.viewer-open .gallery-viewer__icon-button:focus-visible{color:#fff}#contact .contact-links{grid-template-columns:repeat(3,86px);grid-auto-rows:86px;justify-content:start;place-items:center;gap:16px 24px;width:min(100%,318px);padding-top:4px;display:grid}#contact .contact-link,html[data-theme=light] #contact .contact-link,html[data-theme=dark] #contact .contact-link{border-radius:0;grid-template-rows:48px 16px;place-items:center;gap:8px;width:86px;min-width:0;height:86px;min-height:0;padding:7px 4px;display:grid;box-shadow:none!important;background:0 0!important;border:0!important}#contact .contact-link:hover,#contact .contact-link:focus-visible{transform:translateY(-2px);box-shadow:none!important;background:0 0!important}#contact .contact-link:hover img,#contact .contact-link:focus-visible img,html[data-theme=light] #contact .contact-link:hover img,html[data-theme=light] #contact .contact-link:focus-visible img,html[data-theme=dark] #contact .contact-link:hover img,html[data-theme=dark] #contact .contact-link:focus-visible img{filter:grayscale(0)opacity()}#contact .contact-link__label{font-size:11px;line-height:1.1}@media(max-width:420px){#contact .contact-links{grid-template-columns:repeat(3,80px);grid-auto-rows:82px;gap:14px 20px;width:min(100%,300px)}#contact .contact-link{width:80px;height:82px}}html[data-theme=light] body{background:var(--bg)!important}.video-card:before,html[data-theme=light] .video-card:before,.trait-card:before,html[data-theme=light] .trait-card:before,.node-card:before,html[data-theme=light] .node-card:before,.contact-link:before,html[data-theme=light] .contact-link:before{content:none!important;background:0 0!important;display:none!important}#images .mobile-image-list{grid-template-columns:repeat(3,minmax(0,1fr))}.site-nav a:before,.site-nav a.active:before,.site-nav a[aria-current=page]:before{content:none!important;display:none!important}@media(max-width:900px){#images .mobile-image-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){#images .mobile-image-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){#images .mobile-image-list{grid-template-columns:1fr}}#images .gallery-index-header,#images .mobile-image-list,#videos .page-header,#articles .articles-stack,#articles .page-header,#videos .video-page,#about .about-portfolio,#about .cv-page,#contact .page-header,#contact .contact-links{margin-left:auto;margin-right:auto}#videos .video-page,#about .about-portfolio,#about .cv-page{width:min(100%,980px)}#contact .page-header,#contact .contact-links{width:min(100%,360px)}#contact .contact-links{width:min(100%,318px)}#contact .page-header{width:min(100%,1060px);max-width:min(100%,1060px)}@media(max-width:420px){#contact .contact-links{width:min(100%,300px)}}.content{width:min(1120px,100%)}#images .gallery-index-header,#images .mobile-image-list,#videos .page-header,#videos .video-page,#articles .page-header,#articles .articles-stack{width:min(100%,1060px);max-width:min(100%,1060px)}#images .mobile-image-list{gap:clamp(22px,2.6vw,34px)}@media(min-width:901px){#images .mobile-image-list,#videos .video-grid{grid-template-columns:repeat(6,minmax(0,1fr))}#images .gallery-card,#videos .video-card{grid-column:span 2}#images .gallery-card:last-child:nth-child(3n+1),#videos .video-card:last-child:nth-child(3n+1){grid-column:3/span 2}#images .gallery-card:nth-last-child(2):nth-child(3n+1),#videos .video-card:nth-last-child(2):nth-child(3n+1){grid-column:2/span 2}#images .gallery-card:last-child:nth-child(3n+2),#videos .video-card:last-child:nth-child(3n+2){grid-column:4/span 2}}@media(max-width:900px){#images .gallery-card,#videos .video-card{grid-column:auto}}#articles .page-header,#articles .articles-stack,#articles .article-detail{width:min(100%,920px);margin-left:auto;margin-right:auto}#articles .page-header,#articles .articles-stack{width:min(100%,1060px);max-width:min(100%,1060px)}#articles .article-card__link{grid-template-columns:minmax(0,1fr) clamp(220px,23vw,250px);column-gap:clamp(26px,4vw,46px)}#articles .article-card__title,#articles .article-feature__title{font-family:var(--article-serif-font);letter-spacing:.01em}#articles .article-card__excerpt,#articles .article-feature__lead,#articles .article-feature__body p{font-family:var(--article-serif-font);letter-spacing:.02em;font-size:15px;line-height:1.95}#articles .article-feature__body{max-width:42em;margin-left:auto;margin-right:auto}@media(min-width:1280px){#images .mobile-image-list{grid-template-columns:repeat(6,minmax(0,1fr))}}.page-header:before,.gallery-index-header:before,html[data-theme=light] .page-header:before,html[data-theme=light] .gallery-index-header:before,.page-header:after,.gallery-index-header:after,html[data-theme=light] .page-header:after,html[data-theme=light] .gallery-index-header:after{content:none!important;background:0 0!important;display:none!important}@media(min-width:1181px){:root{--module-axis-left:240px;--module-axis-width:min(1280px, calc(100vw - 360px) )}.content{width:var(--module-axis-width)!important;max-width:none!important;margin-left:var(--module-axis-left)!important;margin-right:0!important}.page-section{max-width:none!important}#images .gallery-page,#images .gallery-frame,#images .gallery-index-header,#images .mobile-image-list,#videos .page-header,#videos .video-page,#articles .page-header,#articles .articles-stack,#contact .page-header{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}#contact .page-header,#contact .contact-links{margin-left:auto!important;margin-right:auto!important}}.gallery-card__image,.gallery-card img,.mobile-image-list img{object-fit:cover!important}.gallery-card__button.is-portrait-frame .gallery-card__image,.gallery-card__image.is-portrait-frame{background:linear-gradient(180deg,var(--surface-strong),var(--surface));object-fit:contain!important}@supports (color:color-mix(in lab,red,red)){.gallery-card__button.is-portrait-frame .gallery-card__image,.gallery-card__image.is-portrait-frame{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 90%,transparent),color-mix(in srgb,var(--surface) 84%,transparent))}}html[data-theme=dark] #articles .article-card{border-top-color:#ffffff2e!important}html[data-theme=dark]{--bg:var(--background,#171715);--ink:var(--foreground,#f5f5f4);--ink-2:var(--muted-foreground,#9c9c9b);--muted:var(--muted-foreground,#9c9c9b);--muted-2:var(--muted,#2d2d2b);--page-bg:var(--background,#171715);--page-bg-soft:var(--sidebar,#222220)}html[data-theme=dark],html[data-theme=dark] body{background-color:var(--background,#171715)!important}html[data-theme=dark] body{background:repeating-linear-gradient(90deg,transparent 0 31px,#ffffff07 31px 32px),linear-gradient(180deg,var(--sidebar,#222220) 0%,var(--background,#171715) 34rem),var(--background,#171715)!important;transition:color .32s!important}html[data-theme=dark] #articles .article-card:first-child{border-top-color:#d12f2fb3!important}html[data-theme=dark] #articles .article-card__title,html[data-theme=dark] #articles .article-feature__title{color:#fffffff0!important}html[data-theme=dark] #articles .article-card__excerpt,html[data-theme=dark] #articles .article-feature__lead,html[data-theme=dark] #articles .article-feature__body p,html[data-theme=dark] #articles .article-detail__back{color:#f5f5f7d6!important}html[data-theme=dark] #articles .article-card__meta,html[data-theme=dark] #articles .article-feature__meta,html[data-theme=dark] #articles .article-card__date{color:#f5f5f7ad!important}.video-modal__close{-webkit-backdrop-filter:blur(22px)saturate(150%)}html[data-theme=light] .video-modal__backdrop{-webkit-backdrop-filter:saturate(118%)blur(46px);background-color:#f2f1ece0;background-image:radial-gradient(circle at 50% 12%,#ffffff9e,#0000 34%),linear-gradient(#faf9f5db,#e1ded5e6);box-shadow:inset 0 0 180px #bebaae61}html[data-theme=dark] .video-modal__backdrop{-webkit-backdrop-filter:saturate(145%)blur(52px);background-color:#080807eb;background-image:radial-gradient(circle at 50% 20%,#ffffff14,#0000 36%),linear-gradient(#080807e0,#080807f5);box-shadow:inset 0 0 180px #000000ad}html[data-theme=light] .video-modal__close{color:#1e1d1aeb;background:#ffffff8f;border-color:#ffffffa3;box-shadow:0 18px 50px #55524a2e,inset 0 1px #ffffffc2,inset 0 -1px #78746a1f}html[data-theme=dark] .video-modal__close{color:#fffffff0;background:#18181685;border-color:#ffffff4d;box-shadow:0 18px 50px #00000070,inset 0 1px #ffffff2e,inset 0 -1px #00000047}html[data-theme=light] .video-modal__close:hover,html[data-theme=light] .video-modal__close:focus-visible{background:#ffffffb8;border-color:#ffffffdb}html[data-theme=dark] .video-modal__close:hover,html[data-theme=dark] .video-modal__close:focus-visible{background:#20201ead;border-color:#ffffff7a}html,body{overflow-x:hidden}body:before{mix-blend-mode:multiply;z-index:0!important;opacity:.18!important;background-image:radial-gradient(circle at 18% 12%,#ffffff2e 0,#ffffff2e 1px,#0000 1.2px),radial-gradient(circle at 78% 38%,#22201c14 0,#22201c14 1px,#0000 1.3px),repeating-linear-gradient(0deg,#504a3e05 0,#504a3e05 1px,#0000 1px,#0000 4px),repeating-linear-gradient(90deg,#504a3e04 0,#504a3e04 1px,#0000 1px,#0000 5px)!important;background-size:19px 19px,27px 27px,100% 4px,5px 100%!important;-webkit-mask-image:none!important;mask-image:none!important}html[data-theme=dark] body:before{mix-blend-mode:screen;opacity:.12!important;background-image:radial-gradient(circle at 18% 12%,#ffffff24 0,#ffffff24 1px,#0000 1.2px),radial-gradient(circle at 78% 38%,#ffffff14 0,#ffffff14 1px,#0000 1.3px),repeating-linear-gradient(0deg,#ffffff04 0,#ffffff04 1px,#0000 1px,#0000 4px),repeating-linear-gradient(90deg,#ffffff03 0,#ffffff03 1px,#0000 1px,#0000 5px)!important}.app,.site-copyright,.theme-pull{z-index:1;position:relative}.video-modal{z-index:5000!important;isolation:isolate!important;place-items:center!important;width:100vw!important;min-height:100dvh!important;padding:90px 24px 30px!important;display:grid!important;position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.video-modal[hidden]{display:none!important}.video-modal__dialog{width:min(1180px,100vw - 48px)!important}.video-modal__backdrop{-webkit-backdrop-filter:blur(58px)saturate(130%)!important;background-color:#181817f0!important;background-image:radial-gradient(circle at 50% 18%,#ffffff1a,#0000 34%),linear-gradient(#363633e6,#121211fa)!important;position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important}html[data-theme=light] .video-modal__backdrop{background-color:#f2f1ece6!important;background-image:radial-gradient(circle at 50% 14%,#ffffffb8,#0000 36%),linear-gradient(#f9f8f4eb,#dfdcd4e6)!important;box-shadow:inset 0 0 180px #bebaae59!important}html[data-theme=dark] .video-modal__backdrop{background-color:#0a0a09f0!important;background-image:radial-gradient(circle at 50% 18%,#ffffff14,#0000 34%),linear-gradient(#30302db8,#0a0a09fa)!important;box-shadow:inset 0 0 180px #000000b3!important}.video-modal__close,html[data-theme=light] .video-modal__close,html[data-theme=dark] .video-modal__close{color:#fffffff0!important;-webkit-backdrop-filter:blur(24px)saturate(155%)!important;background:#22222075!important;border:1px solid #ffffff47!important;border-radius:999px!important;width:62px!important;min-width:62px!important;height:62px!important;padding:0!important;position:fixed!important;top:clamp(18px,4vh,38px)!important;left:50%!important;right:auto!important;transform:translate(-50%)!important;box-shadow:0 18px 48px #00000059,inset 0 1px #ffffff52,inset 0 -1px #0000003d!important}.video-modal__close:before{width:auto!important;height:auto!important;font-size:30px!important;line-height:1!important;transform:translateY(-2px)!important}.video-modal__close:after{content:none!important;display:none!important}.video-modal__close:hover,.video-modal__close:focus-visible,html[data-theme=light] .video-modal__close:hover,html[data-theme=light] .video-modal__close:focus-visible,html[data-theme=dark] .video-modal__close:hover,html[data-theme=dark] .video-modal__close:focus-visible{background:#30302d94!important;border-color:#ffffff85!important;transform:translate(-50%)scale(1.04)!important}#contact .contact-links,html[data-theme=light] #contact .contact-links,html[data-theme=dark] #contact .contact-links{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:minmax(132px,auto)!important;place-items:stretch stretch!important;gap:clamp(18px,2.4vw,28px)!important;width:min(100%,720px)!important;max-width:720px!important;display:grid!important}#contact .contact-link,html[data-theme=light] #contact .contact-link,html[data-theme=dark] #contact .contact-link{background:linear-gradient(#232322db,#141413eb),#121211eb!important;border:1px solid #ffffff24!important;border-radius:18px!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:14px!important;width:100%!important;min-width:0!important;height:132px!important;min-height:132px!important;padding:20px 16px 18px!important;display:flex!important;box-shadow:0 18px 46px #00000029,inset 0 1px #ffffff1c,inset 0 0 0 1px #d12f2f14!important}#contact .contact-link:hover,#contact .contact-link:focus-visible{background:linear-gradient(#2c2b29e6,#181817f2),#141413f0!important;border-color:#d12f2f61!important;transform:translateY(-3px)!important;box-shadow:0 22px 56px #00000038,0 0 0 1px #d12f2f21,0 0 32px #d12f2f1f,inset 0 1px #ffffff29!important}#contact .contact-link img,html[data-theme=light] #contact .contact-link img,html[data-theme=dark] #contact .contact-link img{object-fit:contain!important;filter:grayscale(.18)opacity(.9)!important;width:50px!important;max-width:50px!important;height:50px!important;max-height:50px!important}#contact .contact-link__label,html[data-theme=light] #contact .contact-link__label,html[data-theme=dark] #contact .contact-link__label{color:#ffffffe0!important;letter-spacing:0!important;text-align:center!important;font-size:15px!important;font-weight:600!important;line-height:1.2!important}#about.text-page{background:0 0!important}#about .cv-page,html[data-theme=light] #about .cv-page{background:linear-gradient(#fffffdfc,#fcfbf7fc),#fffefa!important;border:1px solid #1f202024!important;box-shadow:0 18px 48px #1f202012,0 2px 10px #1f202009,inset 0 1px #fffffff5,0 0 0 6px #ffffff47!important}html[data-theme=dark] #about.text-page{background:0 0!important}html[data-theme=dark] #about .cv-page{background:linear-gradient(180deg,#232320fa,#1b1b19fa),var(--page-bg)!important;border-color:#ffffff1c!important;box-shadow:0 26px 72px #00000047,inset 0 1px #ffffff0f!important}@media(max-width:720px){body{min-width:0!important}.app{min-height:100dvh!important;display:block!important}.sidebar{border-right:0!important;border-bottom:1px solid var(--line)!important;background:var(--page-bg)!important;width:100%!important;height:auto!important;min-height:0!important;padding:18px 18px 14px!important;position:sticky!important;top:0!important;left:0!important}@supports (color:color-mix(in lab,red,red)){.sidebar{background:color-mix(in srgb,var(--page-bg) 86%,transparent)!important}}.sidebar{-webkit-backdrop-filter:blur(18px)saturate(130%)!important}.content{width:100%!important;max-width:none!important;margin:0!important;padding:28px 18px 56px!important}.page-section,.gallery-page,.gallery-frame,#images .gallery-index-header,#images .mobile-image-list,#videos .page-header,#videos .video-page,#articles .page-header,#articles .articles-stack,#articles .article-detail,#contact .page-header,#contact .contact-links{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}.page-header,.gallery-index-header{padding:0 0 22px!important}#images .mobile-image-list,#videos .video-grid{grid-template-columns:1fr!important;gap:28px!important}#images .gallery-card,#videos .video-card{grid-column:auto!important}#images .gallery-card__button{aspect-ratio:4/3!important}#images .gallery-card__button.is-portrait-frame{aspect-ratio:9/16!important}.gallery-card__title,.gallery-card__description,.video-card strong{overflow-wrap:anywhere!important}#articles .article-card__link{grid-template-columns:1fr!important;row-gap:14px!important;display:grid!important}#articles .article-card__cover,#articles .article-card__meta,#articles .article-card__title,#articles .article-card__excerpt{grid-area:auto/1!important}#contact .contact-links,html[data-theme=light] #contact .contact-links,html[data-theme=dark] #contact .contact-links{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:minmax(124px,auto)!important;gap:16px!important}#contact .contact-link,html[data-theme=light] #contact .contact-link,html[data-theme=dark] #contact .contact-link{height:124px!important;min-height:124px!important;padding:18px 12px 16px!important}.video-modal{padding:86px 14px 22px!important}.video-modal__dialog{width:100%!important}.video-modal__close,html[data-theme=light] .video-modal__close,html[data-theme=dark] .video-modal__close{width:56px!important;min-width:56px!important;height:56px!important;top:18px!important}body.about-poster-page{overflow-x:hidden!important}body.about-poster-page .site-shell{padding-left:4px!important;padding-right:4px!important}body.about-poster-page .content{padding:18px 4px 56px!important;overflow-x:hidden!important}#about.text-page.is-active{width:100%!important;max-width:100%!important;height:calc(var(--about-poster-height,0px) + 56px)!important;min-height:calc(var(--about-poster-height,0px) + 56px)!important;padding:0 0 56px!important;display:block!important;position:relative!important;overflow:visible!important}#about .cv-page,html[data-theme=light] #about .cv-page,html[data-theme=dark] #about .cv-page{width:980px!important;min-width:980px!important;max-width:none!important;transform:translate(-50%) scale(var(--about-poster-scale,1))!important;transform-origin:top!important;margin:0!important;padding:56px 56px 48px!important;position:absolute!important;top:0!important;left:50%!important}#about .cv-header{align-items:center!important;gap:32px!important;padding-bottom:32px!important;display:flex!important}#about .cv-portrait{border-width:4px!important;width:120px!important;height:120px!important}#about .cv-name{font-size:42px!important}#about .cv-highlights{grid-template-columns:repeat(3,1fr)!important}#about .cv-highlight{border-right:1px solid var(--hairline)!important;border-bottom:0!important}#about .cv-highlight:last-child{border-right:0!important}#about .cv-timeline-item{grid-template-columns:110px 1fr!important}#about .cv-skills{grid-template-columns:repeat(3,1fr)!important}#about .cv-footer{flex-direction:row!important;align-items:center!important;gap:0!important}}html[data-theme=light] body,body{box-sizing:border-box;filter:none;color:#1f1f1f;min-height:100vh;margin:0;padding:4rem;background:0 0!important}html[data-theme=light] body:before,body:before,html[data-theme=light] body:after,body:after{display:none!important}:root{--article-reader-size:17px}#images .gallery-index-header,#images .page-header,#videos .page-header,#articles .page-header{margin-bottom:24px;transform:none}#articles .article-detail__toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}#articles .article-font-control{-webkit-backdrop-filter:blur(10px);background:#ffffff6b;border:1px solid #22221e24;border-radius:999px;align-items:center;gap:8px;padding:4px;display:inline-flex}#articles .article-font-control button{color:#1f1f1fd1;cursor:pointer;background:0 0;border:0;border-radius:999px;min-width:38px;height:30px;padding:0 10px;font-family:Karla,PingFang SC,sans-serif;font-size:12px;line-height:1}#articles .article-font-control button:hover,#articles .article-font-control button:focus-visible{background:#1f1f1f14}#articles .article-font-control span{color:#1f1f1f94;text-align:center;min-width:22px;font-family:Karla,PingFang SC,sans-serif;font-size:12px}#articles .article-feature__body p{font-size:var(--article-reader-size,17px)!important;letter-spacing:.015em!important;line-height:1.9!important}#articles .article-feature__lead{font-size:max(16px,calc(var(--article-reader-size,17px) - 1px))!important;line-height:1.85!important}@media(max-width:720px){#images .gallery-index-header,#images .page-header,#videos .page-header,#articles .page-header{transform:none;margin-bottom:16px!important}#articles .article-detail__toolbar{flex-direction:column;align-items:flex-start}}.gradient-bg{z-index:0;pointer-events:none;background-color:#fbfbf8;background-image:radial-gradient(128% 96% at 48% -18%,#beebf994,#dbf4fb57 40%,#fbfbf800 78%),radial-gradient(94% 78% at 56% 112%,#cdf1f96b,#e1f7fc38 34%,#fbfbf800 70%),radial-gradient(94% 58% at 54% 36%,#f4e0be38,#f4e0be1a 34%,#fbfbf800 76%),linear-gradient(#fbfbf8,#f8fbfa 52%,#f5fbfd);background-position:50%;background-repeat:repeat,repeat,repeat,repeat;background-size:100% 100%;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;width:100vw;height:100vh;animation:none;position:fixed;top:0;left:0;overflow:hidden}.gradient-bg:before{content:"";filter:blur(72px);opacity:.72;background:radial-gradient(at 16% 35%,#1a576533,#1a576514 22%,#0000 54%),radial-gradient(at 48% 31%,#ed65522e,#ed655214 25%,#0000 58%),radial-gradient(at 71% 40%,#eec1572e,#eec15714 24%,#0000 58%),radial-gradient(at 44% 58%,#f8f8f470,#f8f8f433 26%,#0000 62%);position:absolute;top:-24%;right:-14%;bottom:-24%;left:-14%;transform:rotate(-2deg)}.gradient-bg:after{content:"";opacity:.32;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='table' tableValues='0 0.58'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.42'/%3E%3C/svg%3E");background-size:180px 180px;position:absolute;top:0;right:0;bottom:0;left:0}.cat-wrapper{display:none!important}.black-cat,.cow-cat{width:140px;height:140px;position:relative}.black-cat .body{z-index:2;background:#111;border-radius:38px;width:76px;height:52px;position:absolute;bottom:24px;left:24px}.black-cat .head{z-index:3;background:#111;border-radius:50%;width:52px;height:46px;position:absolute;bottom:54px;left:68px}.black-cat .ear-l,.black-cat .ear-r{z-index:2;background:#111;width:18px;height:18px;position:absolute;transform:rotate(45deg)}.black-cat .ear-l{bottom:88px;left:72px}.black-cat .ear-r{bottom:88px;left:94px}.black-cat .eye-l,.black-cat .eye-r{z-index:4;background:gold;border-radius:50%;width:8px;height:14px;position:absolute;bottom:70px}.black-cat .eye-l{left:88px}.black-cat .eye-r{left:104px}.black-cat .tail{z-index:1;transform-origin:100%;background:#111;border-radius:5px;width:42px;height:10px;position:absolute;bottom:56px;left:2px;transform:rotate(-35deg)}.black-cat .leg{z-index:1;background:#111;border-radius:4px;width:8px;height:26px;position:absolute;bottom:4px}.black-cat .leg-1,.cow-cat .leg-1{left:34px}.black-cat .leg-2,.cow-cat .leg-2{left:46px}.black-cat .leg-3,.cow-cat .leg-3{left:74px}.black-cat .leg-4,.cow-cat .leg-4{left:86px}.cow-cat .body{z-index:2;box-sizing:border-box;background:#fff;border:3px solid #111;border-radius:38px;width:76px;height:52px;position:absolute;bottom:24px;left:24px;overflow:hidden}.cow-cat .spot-1{background:#111;border-radius:50%;width:32px;height:32px;position:absolute;top:-8px;left:12px}.cow-cat .spot-2{background:#111;border-radius:50%;width:26px;height:22px;position:absolute;bottom:-6px;right:8px}.cow-cat .head{z-index:3;box-sizing:border-box;background:#fff;border:3px solid #111;border-radius:50%;width:52px;height:46px;position:absolute;bottom:54px;left:68px}.cow-cat .ear-l,.cow-cat .ear-r{z-index:2;box-sizing:border-box;background:#fff;border-top:3px solid #111;border-left:3px solid #111;width:18px;height:18px;position:absolute;transform:rotate(45deg)}.cow-cat .ear-l{bottom:88px;left:72px}.cow-cat .ear-r{bottom:88px;left:94px}.cow-cat .eye-l,.cow-cat .eye-r{z-index:4;background:#111;border-radius:50%;width:7px;height:11px;position:absolute;bottom:72px}.cow-cat .eye-l{left:80px}.cow-cat .eye-r{left:96px}.cow-cat .tail{z-index:1;box-sizing:border-box;transform-origin:100%;background:#fff;border:3px solid #111;border-radius:5px;width:42px;height:10px;position:absolute;bottom:56px;left:2px;transform:rotate(-35deg)}.cow-cat .leg{z-index:1;box-sizing:border-box;background:#fff;border:3px solid #111;border-top:none;border-radius:0 0 4px 4px;width:8px;height:26px;position:absolute;bottom:4px}@media(prefers-reduced-motion:reduce){.cat-walker,.leg-swing-1,.leg-swing-2{animation:none!important}}.site-shell{z-index:1;position:relative}.cat-walker{width:180px;height:130px}.cat-svg{width:180px;height:130px;display:block;overflow:visible}.cat-shadow{fill:#1c1a161f;transform-box:fill-box;transform-origin:50%;animation:.72s ease-in-out infinite cat-shadow-pulse}.cat-body{transform-box:fill-box;transform-origin:bottom;animation:.72s ease-in-out infinite cat-body-step}.cat-head{transform-box:fill-box;transform-origin:50% 80%;animation:.72s ease-in-out infinite cat-head-step}.cat-tail{transform-box:fill-box;transform-origin:100%;animation:.72s ease-in-out infinite cat-tail-sway}.cat-tail path{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:12px}.cat-body-fill,.cat-head-fill{stroke-linejoin:round;stroke-width:5px}.cat-leg{fill:none;stroke-linecap:round;stroke-width:10px;transform-box:fill-box}.cat-leg-1,.cat-leg-3{transform-origin:top;animation:.72s ease-in-out infinite cat-front-step}.cat-leg-2,.cat-leg-4{transform-origin:top;animation:.72s ease-in-out infinite cat-back-step}.cat-eye{fill:#d4a82b;transform-box:fill-box;transform-origin:50%;animation:5.6s ease-in-out infinite cat-eye-blink}.black-cat-svg .cat-body-fill,.black-cat-svg .cat-head-fill{fill:#080808;stroke:#080808}.black-cat-svg .cat-tail path,.black-cat-svg .cat-leg{stroke:#080808}.black-cat-svg .cat-eye{fill:#d8b13a}.cow-cat-svg .cat-body-fill,.cow-cat-svg .cat-head-fill{fill:#fff;stroke:#111}.cow-cat-svg .cat-spot{fill:#111}.cow-cat-svg .cat-tail path,.cow-cat-svg .cat-leg{stroke:#111}.cow-cat-svg .cat-eye{fill:#b88a1f;stroke:#111;stroke-width:1.5px}@keyframes cat-body-step{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-4px)rotate(-1deg)}}@keyframes cat-head-step{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-2px)rotate(2deg)}}@keyframes cat-tail-sway{0%,to{transform:rotate(-4deg)translateY(0)}50%{transform:rotate(8deg)translateY(-2px)}}@keyframes cat-front-step{0%,to{transform:rotate(12deg)translateY(0)}50%{transform:rotate(-18deg)translateY(-3px)}}@keyframes cat-back-step{0%,to{transform:rotate(-15deg)translateY(-2px)}50%{transform:rotate(15deg)translateY(1px)}}@keyframes cat-shadow-pulse{0%,to{opacity:.9;transform:scaleX(1)}50%{opacity:.62;transform:scaleX(.9)}}@keyframes cat-eye-blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.12)}}@media(min-width:1181px){:root{--module-axis-left:205px;--module-axis-width:min(1280px, calc(100vw - 325px) )}}:root{--page-title-axis-y:-38px}.identity__slogan br{display:block}.site-nav .site-copyright{border-top:1px solid var(--hairline-strong,#1f1f1f1f);color:var(--text-tertiary);letter-spacing:0;white-space:normal;width:100%;max-width:210px;padding-top:clamp(10px,1.5vh,18px);font-family:inherit;font-size:11px;line-height:1.5;z-index:auto!important;pointer-events:auto!important;margin-top:auto!important;position:static!important}html[data-theme=dark] .site-nav .site-copyright{border-top-color:#ffffff1a}.site-quote{border:none;flex-direction:column;gap:4px;margin:0;padding:0;display:flex}.site-quote__zh{letter-spacing:.04em;color:var(--text-secondary,#000000c2);margin:0;font-family:PingFang SC,Hiragino Sans GB,Noto Serif SC,Songti SC,serif;font-size:12px;font-weight:500;line-height:1.65}html[data-theme=dark] .site-quote__zh{color:#f5f5f7d1}.site-quote__en{letter-spacing:.01em;color:var(--readable-muted-2,#00000085);margin:0;font-family:Lora,Libre Baskerville,Merriweather,Georgia,serif;font-size:10.5px;font-style:italic;line-height:1.45}html[data-theme=dark] .site-quote__en{color:#f5f5f785}.site-quote__cite{letter-spacing:.03em;color:var(--readable-muted-2,#00000070);margin-top:1px;font-family:PingFang SC,Hiragino Sans GB,Karla,sans-serif;font-size:10px;font-style:normal;line-height:1.4;display:block}html[data-theme=dark] .site-quote__cite{color:#f5f5f766}.site-copyright__meta{letter-spacing:.04em;color:var(--readable-muted-2,#0006);opacity:.85;margin-top:14px;font-family:Karla,PingFang SC,sans-serif;font-size:10px}html[data-theme=dark] .site-copyright__meta{color:#f5f5f759}#images .gallery-index-header,#videos .page-header,#articles .page-header,#contact .page-header,#about .page-header{transform:translateY(var(--page-title-axis-y))!important;margin-top:0!important}#images .gallery-index-header,#videos .page-header,#articles .page-header{margin-bottom:0!important}body>.site-copyright{display:none!important}@media(min-width:1181px){#images .gallery-index-header,#videos .page-header,#articles .page-header,#contact .page-header,#about .page-header{padding-top:0!important}}@media(max-width:720px){.site-nav .site-copyright{margin-top:18px}}@media(min-width:721px){body.about-poster-page .content{padding-top:0!important}}@media(min-width:1181px){#about .cv-page{transform:translate(-48px,-12px)!important}}@media(min-width:721px)and (max-width:1180px){#about .cv-page{transform:translateY(-12px)!important}}#contact .contact-panel{width:min(100%,720px);max-width:720px;margin:0!important}#contact .contact__head{width:100%!important;max-width:none!important;margin:0 0 10px!important;padding-bottom:0!important}#contact .contact__head h1{margin:0 0 12px}#contact .contact__head p{color:#1f1f1f85;letter-spacing:.02em;max-width:28em;margin:0;font-family:Karla,PingFang SC,sans-serif;font-size:13px;line-height:1.7}#contact .contact__list{border-top:1px solid #1f1f1f29;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;width:100%;margin:0;padding:0;list-style:none;display:grid}#contact .contact__list li{border-bottom:1px solid #1f1f1f24}#contact .contact__list a{min-height:82px;color:inherit;grid-template-rows:auto auto;grid-template-columns:54px minmax(0,1fr);align-items:center;column-gap:18px;padding:18px 12px 18px 4px;text-decoration:none;transition:background-color .22s,padding .22s;display:grid}#contact .contact__list a:hover,#contact .contact__list a:focus-visible{background:#1f1f1f0e;outline:none;padding-left:12px}#contact .contact__icon{background:0 0;border-radius:50%;grid-row:1/3;place-items:center;width:54px;height:54px;transition:background-color .22s;display:grid}#contact .contact__list a:hover .contact__icon,#contact .contact__list a:focus-visible .contact__icon{background:0 0}#contact .contact__list svg{fill:none;stroke:#1f1f1fa8;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:32px;height:32px;transition:stroke .22s}#contact .contact__icon img{object-fit:contain;opacity:.86;filter:grayscale(.08)saturate(.9);width:44px;height:44px;transition:opacity .22s,filter .22s,transform .22s}#contact .contact__list a:hover svg,#contact .contact__list a:focus-visible svg{stroke:#1f1f1feb}#contact .contact__list a:hover .contact__icon img,#contact .contact__list a:focus-visible .contact__icon img{opacity:1;filter:grayscale(0)saturate();transform:translate(1px)}#contact .contact__list .name{color:#1f1f1fe6;letter-spacing:.03em;font-family:Karla,PingFang SC,sans-serif;font-size:19px;font-weight:500;line-height:1.2}#contact .contact__list .meta{color:#1f1f1f7a;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;min-width:0;font-family:Karla,PingFang SC,sans-serif;font-size:13px;line-height:1.35;overflow:hidden}html[data-theme=dark] #contact .contact__head p{color:#f5f5f78c}html[data-theme=dark] #contact .contact__list{border-top-color:#f5f5f729}html[data-theme=dark] #contact .contact__list li{border-bottom-color:#f5f5f724}html[data-theme=dark] #contact .contact__list a:hover,html[data-theme=dark] #contact .contact__list a:focus-visible{background:#f5f5f70f}html[data-theme=dark] #contact .contact__icon,html[data-theme=dark] #contact .contact__list a:hover .contact__icon,html[data-theme=dark] #contact .contact__list a:focus-visible .contact__icon{background:0 0}html[data-theme=dark] #contact .contact__list svg{stroke:#f5f5f7ad}html[data-theme=dark] #contact .contact__icon img{filter:grayscale(.06)saturate(.95)brightness(1.05)}html[data-theme=dark] #contact .contact__list a:hover svg,html[data-theme=dark] #contact .contact__list a:focus-visible svg{stroke:#fffffff0}html[data-theme=dark] #contact .contact__list a:hover .contact__icon img,html[data-theme=dark] #contact .contact__list a:focus-visible .contact__icon img{filter:grayscale(0)saturate(1.08)brightness(1.12)}@media(max-width:720px){#contact .contact__list{grid-template-columns:1fr}#contact .contact__list a{padding-right:4px}#contact .contact__list .meta{white-space:normal}}#images .gallery-index-header h1,#music .page-header h1,#videos .page-header h1,#articles .page-header h1,#contact .page-header h1{font-family:DM Serif Display,Noto Serif SC,Songti SC,STSong,SimSun,serif!important;font-style:italic!important;font-weight:400!important}.gallery-index-kicker,.gallery-index-header h2,.video-pill,.cv-eyebrow,.cv-en,.cv-quote,.cv-footer,.video-card strong{letter-spacing:.04em;font-family:DM Serif Display,Georgia,Times New Roman,serif!important;font-style:italic!important;font-weight:400!important}.gallery-index-kicker,.cv-eyebrow,.cv-en{letter-spacing:.22em!important}#contact .contact__list .name{font-size:20px!important;line-height:1.12!important}#contact .contact__list .meta{font-size:13.5px!important}:root{--page-title-axis-y:-66px;--readable-muted:#1f1f1fad;--readable-muted-2:#1f1f1f94;--nav-link-gap:15px}html[data-theme=dark]{--readable-muted:#f5f5f7b8;--readable-muted-2:#f5f5f79e}.identity__slogan,.gallery-index-header p:last-child,#contact .contact__head p,#articles .article-card__excerpt,#articles .article-feature__lead,#articles .article-feature__body p{color:var(--readable-muted)!important}.gallery-index-kicker,#articles .article-card__meta,#articles .article-feature__meta,#articles .article-card__date,#contact .contact__list .meta,.site-nav .site-copyright,.cv-eyebrow,.cv-en,.cv-footer{color:var(--readable-muted-2)!important}#articles .article-card__source,#articles .article-feature__source,#articles .article-feature__tag{color:#94372de6!important}html[data-theme=dark] #articles .article-card__source,html[data-theme=dark] #articles .article-feature__source,html[data-theme=dark] #articles .article-feature__tag{color:#ff8e84f0!important}.project-links,.utility-links{gap:var(--nav-link-gap)!important}.project-links a,.utility-links a{min-height:31px;padding-block:2px;line-height:1.45!important}.site-nav{gap:28px!important}#images .gallery-index-header,#videos .page-header,#articles .page-header,#contact .page-header,#about .page-header{transform:translateY(var(--page-title-axis-y))!important}#contact .contact-panel{width:min(100%,780px);max-width:780px}#contact .contact__list{column-gap:clamp(76px,8vw,124px)}#contact .contact__list .name{color:#1f1f1ff0!important;letter-spacing:.02em!important;font-family:Karla,PingFang SC,sans-serif!important;font-style:normal!important}#contact .contact__list .meta{letter-spacing:.01em!important;font-family:Karla,PingFang SC,sans-serif!important;font-style:normal!important}html[data-theme=dark] #contact .contact__list .name{color:#f5f5f7f2!important}html[data-theme=dark] #contact .contact__list .meta{color:var(--readable-muted-2)!important}@media(min-width:1181px){:root{--module-axis-left:168px;--module-axis-width:min(1300px, calc(100vw - 288px) )}}@media(max-width:720px){:root{--page-title-axis-y:-16px;--nav-link-gap:11px}#contact .contact-panel{width:100%;max-width:none}}html[data-theme=dark] .gradient-bg{background:radial-gradient(ellipse 96% 82% at 50% -10%,#2e434e57,#14181d47 38%,#14181d00 78%),linear-gradient(180deg,var(--card,#272725) 0%,var(--background,#171715) 100%)!important;background-color:var(--background,#171715)!important}html[data-theme=dark] .gradient-bg:before{mix-blend-mode:screen;opacity:.22!important;filter:blur(86px)!important}html[data-theme=dark] .gradient-bg:after{mix-blend-mode:screen;opacity:.16!important}#contact.text-page,#about.text-page{transform:none!important}.site-copyright{z-index:35!important;pointer-events:auto!important;bottom:24px!important}@media(max-width:720px){#contact.text-page,#about.text-page{transform:none!important}.site-copyright{bottom:24px!important;left:var(--container-pad)!important}:root{--mobile-edge:clamp(18px, 5.2vw, 24px);--mobile-top-space:42px;--mobile-bottom-space:92px;--page-title-axis-y:0px;--content-area-width:calc(100vw - (var(--mobile-edge) * 2));--module-axis-width:var(--content-area-width)}html,body{overflow-x:hidden}body{min-width:0;padding:0!important}.site-shell{width:100%;min-height:100dvh;padding:0 var(--mobile-edge) var(--mobile-bottom-space)!important}.sidebar{-webkit-backdrop-filter:none;backdrop-filter:none;z-index:80!important;border-bottom:1px solid var(--hairline,#0000000f)!important;pointer-events:auto!important;box-sizing:border-box!important;background:0 0!important;width:100%!important;height:auto!important;min-height:auto!important;padding:16px 0 14px!important;display:block!important;position:relative!important;inset:auto!important}html[data-theme=dark] .sidebar{background:0 0!important;border-bottom-color:#ffffff0f!important}.identity{pointer-events:auto;width:max-content;max-width:calc(100vw - 112px);gap:7px!important;margin:0!important}.identity__name{font-size:clamp(30px,5.8vw,40px)!important;font-weight:700!important;line-height:1.05!important}.identity__slogan{letter-spacing:.02em!important;margin-top:0!important;font-size:11px!important;line-height:1.45!important}.mobile-menu-toggle{display:none!important}.mobile-menu-toggle:before{content:"☰";font-size:17px}html[data-theme=dark] .mobile-menu-toggle{color:#ffffffe6!important;background:#18181880!important;border-color:#ffffff2e!important}.site-nav{pointer-events:auto;top:auto!important;right:var(--mobile-edge)!important;bottom:max(16px,env(safe-area-inset-bottom))!important;left:var(--mobile-edge)!important;z-index:90!important;-webkit-backdrop-filter:blur(28px)saturate(190%)!important;background:linear-gradient(135deg,#ffffff94,#ffffff47)!important;border:1px solid #ffffff7a!important;border-radius:999px!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;width:auto!important;min-height:0!important;margin:0!important;padding:8px!important;display:flex!important;position:fixed!important;box-shadow:0 20px 48px #182a2c29,0 4px 14px #182a2c0d,inset 0 0 0 1px #fff9,inset 0 1.5px #ffffffe6!important}html[data-theme=dark] .site-nav{-webkit-backdrop-filter:blur(28px)saturate(190%)!important;background:linear-gradient(135deg,#161c1d7a,#0c101161)!important;border-color:#ffffff2e!important;box-shadow:0 20px 48px #00000075,0 4px 14px #00000029,inset 0 0 0 1px #ffffff14,inset 0 1.5px #ffffff38!important}.project-links,.utility-links{display:contents!important}.project-links a,.utility-links a{white-space:nowrap;border-radius:999px;place-items:center;border:1px solid #0000!important;min-width:0!important;min-height:36px!important;padding:0 clamp(8px,2.6vw,13px)!important;font-size:15px!important;font-weight:600!important;line-height:1!important;display:grid!important}.project-links a:before,.utility-links a:before{display:none!important}.project-links a[aria-current=page],.utility-links a[aria-current=page],.project-links a.active,.utility-links a.active{-webkit-backdrop-filter:blur(20px)saturate(170%)!important;color:var(--accent)!important;background:linear-gradient(135deg,#fffffff0,#ffffffa6)!important;border:1px solid #ffffffd9!important;box-shadow:0 4px 12px #76684d1f,0 1px 3px #00000008,inset 0 1px #fff,inset 0 -1px #00000005!important}html[data-theme=dark] .project-links a[aria-current=page],html[data-theme=dark] .utility-links a[aria-current=page],html[data-theme=dark] .project-links a.active,html[data-theme=dark] .utility-links a.active{-webkit-backdrop-filter:blur(20px)saturate(170%)!important;color:#e3d3b8!important;background:linear-gradient(135deg,#ffffff2e,#ffffff0f)!important;border:1px solid #ffffff47!important;box-shadow:0 4px 16px #0000006b,0 0 12px #ff5a5a14,inset 0 1px #ffffff40,inset 0 -1px #00000059!important}.site-nav .site-copyright,body>.site-copyright{display:none!important}.content{width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important;padding-top:var(--mobile-top-space)!important;margin:0!important;display:block!important}.page-section{width:100%!important;max-width:none!important}#images .gallery-page,#images .gallery-frame,#images .gallery-index-header,#images .mobile-image-list,#videos .page-header,#videos .video-page,#articles .page-header,#articles .articles-stack,#articles .article-detail,#contact .page-header,#contact .contact-panel,#about .cv-page{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}#images .gallery-index-header,#music .page-header,#videos .page-header,#articles .page-header,#contact .page-header,#about .page-header{margin-top:0!important;margin-bottom:clamp(28px,8vw,42px)!important;padding-top:0!important;transform:none!important}#images .gallery-index-header h1,#music .page-header h1,#videos .page-header h1,#articles .page-header h1,#contact .page-header h1{font-size:clamp(46px,17vw,68px)!important;line-height:.98!important}#images .gallery-index-kicker{letter-spacing:.2em!important;margin-bottom:20px!important;font-size:11px!important}.page-header p,.gallery-index-header p:last-child,#contact .contact__head p{max-width:28em!important;color:var(--readable-muted)!important;font-size:13px!important;line-height:1.75!important}#images .mobile-image-list{padding-bottom:10px;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;display:grid!important}#images .gallery-card,#videos .video-card{grid-column:auto!important}#images .gallery-card__button,#images .gallery-card__image,#images .gallery-card img,#images .mobile-image-list img{width:100%!important;max-width:none!important}#images .gallery-card__image,#images .gallery-card img,#images .mobile-image-list img{aspect-ratio:1!important;object-fit:cover!important;height:auto!important}#images .gallery-card__title{margin-top:10px!important;font-size:13px!important;line-height:1.35!important}#images .gallery-card__desc{font-size:12px!important;line-height:1.55!important}#videos .video-grid,#videos .video-page{grid-template-columns:1fr!important;gap:16px!important;display:grid!important}#videos .video-card{border-bottom:1px solid var(--line)!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;padding:16px 0!important;display:grid!important}#videos .video-card img{aspect-ratio:16/9!important;object-fit:cover!important;width:100%!important;height:auto!important}#videos .video-card strong{font-size:18px!important;line-height:1.35!important}#articles .article-card__link{grid-template-columns:1fr!important;gap:16px!important;padding:22px 0!important;display:grid!important}#articles .article-card__cover{order:3;aspect-ratio:16/10!important;grid-row:auto!important;width:100%!important}#articles .article-card__meta{order:1;white-space:normal!important;gap:8px!important;font-size:12px!important;line-height:1.5!important}#articles .article-card__title{order:2;font-size:clamp(22px,7vw,30px)!important;line-height:1.36!important}#articles .article-card__excerpt{order:4;font-size:15.5px!important;line-height:1.9!important}#articles .article-detail{padding-bottom:20px!important}#articles .article-detail__toolbar{z-index:10;background:var(--page-bg);position:sticky;top:104px;margin-bottom:22px!important;padding:10px 0!important}@supports (color:color-mix(in lab,red,red)){#articles .article-detail__toolbar{background:color-mix(in srgb,var(--page-bg) 82%,transparent)}}#articles .article-detail__toolbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}#articles .article-feature__title{font-size:clamp(28px,9vw,40px)!important;line-height:1.38!important}#articles .article-feature__body p{font-size:max(17px,var(--article-reader-size,17px))!important;line-height:1.95!important}#contact .contact-panel{padding-bottom:12px}#contact .contact__head{margin-bottom:20px!important}#contact .contact__list{border-top-color:#1f1f1f29!important;grid-template-columns:1fr!important;column-gap:0!important}#contact .contact__list a{grid-template-columns:48px minmax(0,1fr)!important;column-gap:16px!important;min-height:78px!important;padding:16px 4px!important}#contact .contact__icon{width:48px!important;height:48px!important}#contact .contact__icon img{width:38px!important;height:38px!important}#contact .contact__list .name{font-size:18px!important;line-height:1.25!important}#contact .contact__list .meta{max-width:100%;color:var(--readable-muted-2)!important;text-overflow:clip!important;white-space:normal!important;font-size:13px!important;line-height:1.5!important;overflow:visible!important}#about .cv-page,html[data-theme=light] #about .cv-page,html[data-theme=dark] #about .cv-page{width:100%!important;max-width:min(980px,var(--content-area-width))!important;border-radius:0!important;min-height:0!important;padding:clamp(24px,7vw,34px)!important;transform:none!important}#about .cv-grid,#about .cv-section,#about .cv-list{max-width:100%!important}#about .cv-name{font-size:clamp(34px,11vw,46px)!important;line-height:1.05!important}#about .cv-page p,#about .cv-page li{font-size:14px!important;line-height:1.8!important}}@media(max-width:420px){.project-links a,.utility-links a{padding-left:8px!important;padding-right:8px!important;font-size:13px!important;font-weight:600!important}#images .mobile-image-list{gap:14px!important}}@media(min-width:721px){:root{--desktop-fluid-left:clamp(42px, 4.2vw, 60px);--desktop-fluid-sidebar:220px;--desktop-fluid-gap:clamp(30px, 5vw, 76px);--desktop-fluid-right:clamp(24px, 5vw, 84px);--desktop-fluid-width:calc(100vw - var(--desktop-fluid-left) - var(--desktop-fluid-sidebar) - var(--desktop-fluid-gap) - var(--desktop-fluid-right));--content-area-width:min(1060px, max(420px, var(--desktop-fluid-width)));--media-width:min(1040px, var(--content-area-width));--image-max-width:min(980px, var(--content-area-width))}.site-shell{padding:clamp(42px,4.2vw,60px) var(--desktop-fluid-right) clamp(42px,4.2vw,60px) var(--desktop-fluid-left)!important}.sidebar{top:clamp(42px,4.2vw,60px)!important;left:var(--desktop-fluid-left)!important;width:var(--desktop-fluid-sidebar)!important}.site-copyright{left:var(--desktop-fluid-left)!important}.content{width:var(--content-area-width)!important;max-width:var(--content-area-width)!important;margin-left:calc(var(--desktop-fluid-sidebar) + var(--desktop-fluid-gap))!important;padding-left:0!important;padding-right:0!important}body:not(.about-poster-page) #images .gallery-page,body:not(.about-poster-page) #images .gallery-frame,body:not(.about-poster-page) #images .gallery-index-header,body:not(.about-poster-page) #images .mobile-image-list,body:not(.about-poster-page) #music .page-header,body:not(.about-poster-page) #music .music-page,body:not(.about-poster-page) #videos .page-header,body:not(.about-poster-page) #videos .video-page,body:not(.about-poster-page) #articles .page-header,body:not(.about-poster-page) #articles .articles-stack,body:not(.about-poster-page) #articles .article-detail,body:not(.about-poster-page) #contact .page-header,body:not(.about-poster-page) #contact .contact-panel{width:min(100%,var(--content-area-width))!important;max-width:min(100%,var(--content-area-width))!important}body:not(.about-poster-page) #videos .video-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))!important}body:not(.about-poster-page) #videos .video-card{grid-column:auto!important}body:not(.about-poster-page) #contact .contact__list{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))!important;column-gap:clamp(42px,7vw,110px)!important}}@media(min-width:721px)and (max-width:1040px){:root{--desktop-fluid-left:28px;--desktop-fluid-sidebar:190px;--desktop-fluid-gap:28px;--desktop-fluid-right:24px}.identity__slogan{max-width:145px!important}body:not(.about-poster-page) #images .gallery-frame{align-items:flex-start!important}}@media(min-width:721px){body:not(.about-poster-page) #images .gallery-page{gap:clamp(18px,2.4vw,34px)!important;display:block!important}body:not(.about-poster-page) #images .gallery-index-header{width:min(100%,1060px)!important;max-width:min(100%,1060px)!important;margin:0 auto clamp(18px,2.2vw,28px)!important;display:block!important;transform:none!important}body:not(.about-poster-page) #images .gallery-frame{width:100%!important;max-width:none!important;display:block!important}body:not(.about-poster-page) #images .gallery-preview,body:not(.about-poster-page) #images .gallery-index-rail,body:not(.about-poster-page) #images .gallery-text{display:none!important}body:not(.about-poster-page) #images .mobile-image-list{grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-auto-flow:dense!important;grid-auto-rows:clamp(78px,7.2vw,112px)!important;gap:0!important;width:100%!important;max-width:none!important;margin:0!important;display:grid!important}body:not(.about-poster-page) #images .gallery-card{grid-column:auto!important;width:auto!important;margin:0!important}body:not(.about-poster-page) #images .gallery-card__button{aspect-ratio:auto!important;background:#111!important;border:0!important;outline:0!important;height:100%!important;overflow:hidden!important}body:not(.about-poster-page) #images .gallery-card:nth-child(12n+1),body:not(.about-poster-page) #images .gallery-card:nth-child(12n+2){grid-area:span 2/span 3!important}body:not(.about-poster-page) #images .gallery-card:nth-child(12n+3),body:not(.about-poster-page) #images .gallery-card:nth-child(12n+4),body:not(.about-poster-page) #images .gallery-card:nth-child(12n+5){grid-area:span 2/span 2!important}body:not(.about-poster-page) #images .gallery-card:nth-child(12n+6),body:not(.about-poster-page) #images .gallery-card:nth-child(12n+9){grid-area:span 2/span 4!important}body:not(.about-poster-page) #images .gallery-card:nth-child(12n+7),body:not(.about-poster-page) #images .gallery-card:nth-child(12n+8){grid-area:span 2/span 2!important}body:not(.about-poster-page) #images .gallery-card:nth-child(12n+10),body:not(.about-poster-page) #images .gallery-card:nth-child(12n+11){grid-area:span 2/span 3!important}body:not(.about-poster-page) #images .gallery-card:nth-child(12n){grid-area:span 2/span 6!important}body:not(.about-poster-page) #images .gallery-card__image,body:not(.about-poster-page) #images .gallery-card img{object-fit:cover!important;opacity:1!important;width:100%!important;height:100%!important;display:block!important}body:not(.about-poster-page) #images .gallery-card__button:hover img,body:not(.about-poster-page) #images .gallery-card__button:focus-visible img{filter:brightness(.64)saturate(.88)!important;transform:scale(1.025)!important}body:not(.about-poster-page) #images .gallery-card__meta{display:none!important}}@media(min-width:721px)and (max-width:1040px){body:not(.about-poster-page) #images .mobile-image-list{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-rows:clamp(74px,10vw,104px)!important}body:not(.about-poster-page) #images .gallery-card,body:not(.about-poster-page) #images .gallery-card:nth-child(n){grid-area:span 2/span 2!important}body:not(.about-poster-page) #images .gallery-card:nth-child(8n+2),body:not(.about-poster-page) #images .gallery-card:nth-child(8n+6),body:not(.about-poster-page) #images .gallery-card:nth-child(8n+7){grid-area:span 1/span 2!important}body:not(.about-poster-page) #images .gallery-card:nth-child(8n+3),body:not(.about-poster-page) #images .gallery-card:nth-child(8n+4){grid-area:span 1/span 1!important}body:not(.about-poster-page) #images .gallery-card:nth-child(8n){grid-area:span 2/span 4!important}body:not(.about-poster-page) #images .gallery-card:last-child:nth-child(8n+3){grid-column:span 2!important}}.identity__name,html[data-theme=light] .identity__name,html[data-theme=dark] .identity__name,.identity .identity__name{letter-spacing:-.015em!important;font-family:Quicksand,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-style:normal!important;font-weight:700!important}@media(max-width:720px){.sidebar,html[data-theme=light] .sidebar,html[data-theme=dark] .sidebar{width:100%!important;height:auto!important;min-height:0!important;padding:18px var(--mobile-edge) 0!important;box-shadow:none!important;pointer-events:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:0 0!important;border:0!important;position:static!important}.sidebar:before,.sidebar:after,html[data-theme=light] .sidebar:before,html[data-theme=light] .sidebar:after,html[data-theme=dark] .sidebar:before,html[data-theme=dark] .sidebar:after{content:none!important;opacity:0!important;box-shadow:none!important;background:0 0!important;display:none!important}.identity{z-index:auto!important;position:static!important;top:auto!important;left:auto!important}.site-nav{pointer-events:auto!important}.site-nav a:before,.site-nav a.active:before,.site-nav a[aria-current=page]:before,.project-links a:before,.utility-links a:before,.project-links a.active:before,.utility-links a.active:before,.project-links a[aria-current=page]:before,.utility-links a[aria-current=page]:before{content:none!important;opacity:0!important;display:none!important}body.about-poster-page .site-shell,body.about-poster-page .content,body.about-poster-page #about{width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;overflow:visible!important}body.about-poster-page .content{padding:var(--mobile-top-space) 0 var(--mobile-bottom-space)!important}#about .cv-page,html[data-theme=light] #about .cv-page,html[data-theme=dark] #about .cv-page,body.about-poster-page #about .cv-page{transform-origin:top!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:0!important;margin:0!important;position:relative!important;top:auto!important;left:auto!important;transform:none!important}#about .cv-header{grid-template-columns:72px minmax(0,1fr)!important;align-items:center!important;gap:16px!important;padding-bottom:24px!important;display:grid!important}#about .cv-portrait{width:72px!important;height:72px!important}#about .cv-title,#about .cv-contacts,#about .cv-section-head,#about .cv-timeline-item,#about .cv-skills,#about .cv-highlights,#about .cv-footer{min-width:0!important}#about .cv-highlights,#about .cv-skills,#about .cv-timeline-item{grid-template-columns:1fr!important}#about .cv-section-head{grid-template-columns:auto 1fr!important;align-items:baseline!important;display:grid!important}#about .cv-en{grid-column:1/-1;margin-left:0!important}.gradient-bg:before{opacity:.42!important;filter:blur(72px)saturate(1.08)!important}.site-nav{-webkit-backdrop-filter:blur(28px)saturate(190%)!important;background:linear-gradient(135deg,#ffffff94,#ffffff47)!important;border-color:#ffffff7a!important;box-shadow:0 20px 48px #182a2c29,0 4px 14px #182a2c0d,inset 0 0 0 1px #fff9,inset 0 1.5px #ffffffe6!important}html[data-theme=dark] .site-nav{-webkit-backdrop-filter:blur(28px)saturate(190%)!important;background:linear-gradient(135deg,#161c1d7a,#0c101161)!important;border-color:#ffffff2e!important;box-shadow:0 20px 48px #00000075,0 4px 14px #00000029,inset 0 0 0 1px #ffffff14,inset 0 1.5px #ffffff38!important}#images .gallery-frame{display:block!important}#images .gallery-preview,#images .gallery-index-rail,#images .gallery-text{display:none!important}#images .mobile-image-list{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-flow:dense!important;grid-auto-rows:clamp(76px,22vw,112px)!important;align-items:stretch!important;gap:0!important;overflow:hidden!important}#images .gallery-card{grid-area:span 2/span 2!important;min-height:0!important;margin:0!important;padding:0!important;display:block!important}#images .gallery-card__button{aspect-ratio:auto!important;width:100%!important;height:100%!important;box-shadow:none!important;background:#111!important;border:0!important;border-radius:0!important}#images .gallery-card__button:before{opacity:.22!important;background:linear-gradient(90deg,#0000 0,#0000 30%,#62868c14 48%,#0000 64%),repeating-linear-gradient(135deg,#0000 0,#0000 18px,#5a7a800d 18px,#5a7a800d 19px)!important}#images .gallery-card__button.is-image-loaded:before{opacity:0!important}#images .gallery-card__image,#images .gallery-card img,#images .mobile-image-list img{aspect-ratio:auto!important;object-fit:cover!important;object-position:center!important;opacity:1!important;width:100%!important;height:100%!important;display:block!important}#images .gallery-card__button.is-portrait-frame .gallery-card__image,#images .gallery-card__image.is-portrait-frame{object-fit:cover!important}#images .gallery-card__meta{display:none!important}#images .gallery-card:nth-child(8n+1),#images .gallery-card:nth-child(8n+5){grid-area:span 2/span 2!important}#images .gallery-card:nth-child(8n+2),#images .gallery-card:nth-child(8n+6),#images .gallery-card:nth-child(8n+7){grid-area:span 1/span 2!important}#images .gallery-card:nth-child(8n+3),#images .gallery-card:nth-child(8n+4){grid-area:span 1/span 1!important}#images .gallery-card:nth-child(8n){grid-area:span 2/span 4!important}#images .gallery-card:last-child:nth-child(8n+3){grid-column:span 2!important}#images .gallery-card__title{color:#181c1cf5!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;min-height:36px!important;margin-top:0!important;font-size:13.5px!important;font-weight:650!important;line-height:1.35!important;display:-webkit-box!important;overflow:hidden!important}#images .gallery-card__description,#images .gallery-card__desc{color:#2b3434b8!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;min-height:60px!important;margin-top:5px!important;font-size:12.5px!important;line-height:1.6!important;display:-webkit-box!important;overflow:hidden!important}html[data-theme=dark] #images .gallery-card__button{background:linear-gradient(135deg,#ffffff12,#ffffff08),#1a1c1cad!important;border-color:#e0f8fa1f!important;box-shadow:0 14px 30px #00000038,inset 0 0 0 1px #dcf8fa0f!important}html[data-theme=dark] #images .gallery-card__title{color:#f5f5f7f0!important}html[data-theme=dark] #images .gallery-card__description,html[data-theme=dark] #images .gallery-card__desc{color:#f5f5f7ad!important}}@media(min-width:1025px){#images .gallery-index-header,#images .page-header,#music .page-header,#videos .page-header,#articles .page-header,#contact .page-header,#about .page-header{margin-top:0!important;padding-top:0!important;display:block!important;position:relative!important;transform:none!important}.photo-subtitle{margin:4px 0 0!important;position:static!important}}@media(min-width:721px){.site-nav{gap:clamp(36px,3.8vw,52px)!important}.project-links,.utility-links{gap:clamp(22px,2vw,30px)!important}.project-links a,.utility-links a{padding-inline:clamp(12px,1.2vw,18px)!important}}body.viewer-open .gallery-viewer{--viewer-media-width:min(840px, 78vw);--viewer-meta-height:210px}body.viewer-open .gallery-viewer__toolbar,body.viewer-open .gallery-viewer__figure,body.viewer-open .gallery-viewer__metadata{width:min(100%,var(--viewer-media-width))!important;max-width:min(100%,var(--viewer-media-width))!important;margin-left:auto!important;margin-right:auto!important}body.viewer-open .gallery-viewer__toolbar{gap:10px!important;top:clamp(-42px,-4vh,-24px)!important}body.viewer-open .gallery-viewer__icon-button{width:40px!important;height:40px!important}body.viewer-open .gallery-viewer__icon-button>span{font-size:22px!important}body.viewer-open .gallery-viewer__metadata{gap:12px!important;padding:20px 0 8px!important;overflow:hidden!important}body.viewer-open .gallery-viewer__title,body.viewer-open .gallery-viewer__note{overflow-wrap:anywhere!important;width:100%!important;max-width:100%!important}body.viewer-open .gallery-viewer__metadata dl{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px clamp(20px,3vw,34px)!important;width:100%!important}body.viewer-open .gallery-viewer__metadata div{grid-template-columns:max-content minmax(0,1fr)!important;align-items:start!important;column-gap:10px!important;display:grid!important}body.viewer-open .gallery-viewer__metadata dt,body.viewer-open .gallery-viewer__metadata dd{overflow-wrap:anywhere!important;min-width:0!important}body.viewer-open .gallery-viewer__metadata dt{margin:0!important}@media(max-width:900px){body.viewer-open .gallery-viewer__metadata dl{grid-template-columns:minmax(0,1fr)!important}}@media(min-width:1025px){body:not(.about-poster-page) .content{padding-top:0!important}body:not(.about-poster-page) #images .gallery-index-header,body:not(.about-poster-page) #images .page-header,body:not(.about-poster-page) #music .page-header,body:not(.about-poster-page) #videos .page-header,body:not(.about-poster-page) #articles .page-header,body:not(.about-poster-page) #contact .page-header,body:not(.about-poster-page) #about .page-header{margin-top:0!important;padding-top:0!important;display:block!important;position:relative!important;transform:none!important}}body.viewer-open .gallery-viewer__stage{min-height:calc(100vh - 96px)!important;max-height:none!important}body.viewer-open .gallery-viewer__toolbar{top:18px!important}body.viewer-open .gallery-viewer__figure{top:54px!important;left:0!important;right:0!important;bottom:calc(var(--viewer-meta-height) + 42px)!important;place-items:center!important;width:100%!important;height:auto!important;display:grid!important;position:absolute!important}body.viewer-open .gallery-viewer__figure img{max-height:100%!important}body.viewer-open .gallery-viewer__metadata{grid-row:auto!important;position:absolute!important;bottom:24px!important;left:50%!important;transform:translate(-50%)!important}body.viewer-open .gallery-viewer.gallery-viewer--wide{--viewer-media-width:min(1280px, 88vw)}body.viewer-open .gallery-viewer.gallery-viewer--wide .gallery-viewer__stage{grid-template-columns:minmax(0,1fr) clamp(280px,24vw,340px)!important;align-items:center!important;column-gap:clamp(24px,2.6vw,38px)!important;width:min(1280px,88vw)!important;display:grid!important}body.viewer-open .gallery-viewer.gallery-viewer--wide .gallery-viewer__figure{grid-column:1!important;align-self:center!important;width:100%!important;min-height:0!important;position:relative!important;inset:auto!important}body.viewer-open .gallery-viewer.gallery-viewer--wide .gallery-viewer__figure img{max-width:100%!important;max-height:min(76vh,100vh - 180px)!important}body.viewer-open .gallery-viewer.gallery-viewer--wide .gallery-viewer__metadata{grid-area:1/2!important;align-self:center!important;width:100%!important;max-width:100%!important;padding:0!important;position:relative!important;bottom:auto!important;left:auto!important;transform:none!important}body.viewer-open .gallery-viewer.gallery-viewer--wide .gallery-viewer__metadata dl{grid-template-columns:minmax(0,1fr)!important;row-gap:10px!important}html,body,button,input,select,textarea{font-family:var(--body-copy-font)!important}.identity__name,.page-header h1,.gallery-index-header h1,.gallery-viewer__title,.gallery-card__title,.article-card__title,.contact__list .name{font-family:var(--latin-serif-font),var(--cjk-serif-font)!important}.site-nav,.gallery-index-kicker,.photo-subtitle,.page-header p,.gallery-viewer__note,body.viewer-open .gallery-viewer__metadata,body.viewer-open .gallery-viewer__metadata dt,body.viewer-open .gallery-viewer__metadata dd{font-family:var(--body-copy-font)!important}#images .gallery-index-header h1,#music .page-header h1,#videos .page-header h1,#articles .page-header h1,#contact .page-header h1,#about .page-header h1{font-family:var(--latin-serif-font),var(--cjk-serif-font)!important}code,pre,.article-code,.article-detail pre,.article-detail code{font-family:var(--latin-mono-font)!important}@media(min-width:1025px){#videos .page-header,#articles .page-header,#contact .page-header{margin-top:0!important;padding-top:0!important;transform:none!important}body.about-poster-page .content,body.about-poster-page #about .cv-page{margin-top:0!important}}@media(min-width:721px){#images .mobile-image-list{grid-template-columns:repeat(12,minmax(0,1fr))!important;grid-auto-rows:clamp(58px,5.2vw,82px)!important;grid-auto-flow:dense!important;gap:0!important}#images .gallery-card,#images .gallery-card:nth-child(n){grid-area:span 3/span 3!important}#images .gallery-card--wide,#images .gallery-card--wide:nth-child(n){grid-area:span 4/span 6!important}#images .gallery-card--portrait,#images .gallery-card--portrait:nth-child(n){grid-area:span 6/span 3!important}#images .gallery-card--subject,#images .gallery-card--subject:nth-child(n){grid-area:span 5/span 4!important}#images .gallery-card--subject.gallery-card--wide,#images .gallery-card--subject.gallery-card--wide:nth-child(n){grid-area:span 5/span 6!important}#images .gallery-card__button,#images .gallery-card__image,#images .gallery-card img{width:100%!important;height:100%!important}#images .gallery-card__image,#images .gallery-card img,#images .mobile-image-list img{object-fit:cover!important;object-position:50% 44%!important}#images .gallery-card--subject .gallery-card__image,#images .gallery-card--subject img,#images .gallery-card__button.is-human-subject .gallery-card__image{object-position:50% 38%!important}#images .gallery-card--portrait .gallery-card__image,#images .gallery-card--portrait img,#images .gallery-card__button.is-portrait-frame .gallery-card__image{object-position:50% 36%!important}body:not(.about-poster-page) #images .mobile-image-list{grid-template-columns:repeat(12,minmax(0,1fr))!important;grid-auto-rows:clamp(58px,5.2vw,82px)!important}body:not(.about-poster-page) #images .gallery-card,body:not(.about-poster-page) #images .gallery-card:nth-child(n){grid-area:span 3/span 3!important}body:not(.about-poster-page) #images .gallery-card--wide,body:not(.about-poster-page) #images .gallery-card--wide:nth-child(n){grid-area:span 4/span 6!important}body:not(.about-poster-page) #images .gallery-card--portrait,body:not(.about-poster-page) #images .gallery-card--portrait:nth-child(n){grid-area:span 6/span 3!important}body:not(.about-poster-page) #images .gallery-card--subject,body:not(.about-poster-page) #images .gallery-card--subject:nth-child(n){grid-area:span 5/span 4!important}body:not(.about-poster-page) #images .gallery-card--subject.gallery-card--wide,body:not(.about-poster-page) #images .gallery-card--subject.gallery-card--wide:nth-child(n){grid-area:span 5/span 6!important}}@media(min-width:960px){body.viewer-open .gallery-viewer{--viewer-media-width:min(1280px, 88vw)}body.viewer-open .gallery-viewer__stage,body.viewer-open .gallery-viewer.gallery-viewer--wide .gallery-viewer__stage{grid-template-columns:minmax(0,1fr) clamp(300px,24vw,360px)!important;align-items:center!important;column-gap:clamp(34px,3vw,48px)!important;width:min(1280px,88vw)!important;min-height:calc(100vh - 120px)!important;max-height:none!important;display:grid!important}body.viewer-open .gallery-viewer__figure,body.viewer-open .gallery-viewer.gallery-viewer--wide .gallery-viewer__figure{grid-area:1/1!important;align-self:center!important;place-items:center!important;width:100%!important;height:calc(100vh - 180px)!important;min-height:520px!important;max-height:calc(100vh - 180px)!important;display:grid!important;position:relative!important;inset:auto!important;transform:translateY(15px)!important}body.viewer-open .gallery-viewer__figure img,body.viewer-open .gallery-viewer.gallery-viewer--wide .gallery-viewer__figure img{width:auto!important;max-width:100%!important;height:auto!important;max-height:100%!important}body.viewer-open .gallery-viewer__metadata,body.viewer-open .gallery-viewer.gallery-viewer--wide .gallery-viewer__metadata{grid-area:1/2!important;align-self:center!important;width:100%!important;max-width:100%!important;max-height:calc(100vh - 180px)!important;padding:0!important;position:relative!important;bottom:auto!important;left:auto!important;overflow:auto!important;transform:none!important}body.viewer-open .gallery-viewer__metadata dl,body.viewer-open .gallery-viewer.gallery-viewer--wide .gallery-viewer__metadata dl{grid-template-columns:minmax(0,1fr)!important;row-gap:10px!important}body.viewer-open .gallery-viewer__toolbar{z-index:7000!important;gap:12px!important;width:auto!important;max-width:none!important;position:fixed!important;top:32px!important;left:auto!important;right:48px!important;transform:none!important}body.viewer-open .gallery-viewer__toolbar [data-viewer-previous]{left:48px!important}body.viewer-open .gallery-viewer__toolbar [data-viewer-next]{right:48px!important}}@media(min-width:1025px){body:not(.about-poster-page) #images .gallery-index-header,body:not(.about-poster-page) #images .page-header,body:not(.about-poster-page) #music .page-header,body:not(.about-poster-page) #videos .page-header,body:not(.about-poster-page) #articles .page-header,body:not(.about-poster-page) #contact .page-header{margin-top:0!important;padding-top:0!important;transform:none!important}body:not(.about-poster-page) #images .gallery-index-header,body:not(.about-poster-page) #images .page-header,body.about-poster-page .content,body.about-poster-page #about .cv-page{margin-top:0!important}}@media(min-width:721px){body:not(.about-poster-page) #images .mobile-image-list{grid-template-columns:repeat(12,minmax(0,1fr))!important;grid-auto-rows:clamp(60px,5.3vw,84px)!important;grid-auto-flow:dense!important;gap:0!important}body:not(.about-poster-page) #images .gallery-card,body:not(.about-poster-page) #images .gallery-card:nth-child(n){grid-area:span 3/span 3!important}body:not(.about-poster-page) #images .gallery-card--wide,body:not(.about-poster-page) #images .gallery-card--wide:nth-child(n){grid-area:span 4/span 6!important}body:not(.about-poster-page) #images .gallery-card--portrait,body:not(.about-poster-page) #images .gallery-card--portrait:nth-child(n){grid-area:span 7/span 4!important}body:not(.about-poster-page) #images .gallery-card--subject,body:not(.about-poster-page) #images .gallery-card--subject:nth-child(n){grid-area:span 6/span 4!important}body:not(.about-poster-page) #images .gallery-card--subject:nth-child(4n+1){grid-area:span 6/span 5!important}body:not(.about-poster-page) #images .gallery-card--subject:nth-child(4n+2){grid-area:span 7/span 4!important}body:not(.about-poster-page) #images .gallery-card--subject:nth-child(4n+3){grid-area:span 5/span 5!important}body:not(.about-poster-page) #images .gallery-card--subject.gallery-card--wide,body:not(.about-poster-page) #images .gallery-card--subject.gallery-card--wide:nth-child(n){grid-area:span 5/span 6!important}body:not(.about-poster-page) #images .gallery-card--subject.gallery-card--portrait,body:not(.about-poster-page) #images .gallery-card--subject.gallery-card--portrait:nth-child(n){grid-area:span 7/span 4!important}body:not(.about-poster-page) #images .gallery-card__image,body:not(.about-poster-page) #images .gallery-card img,body:not(.about-poster-page) #images .mobile-image-list img{object-position:50% 48%!important}body:not(.about-poster-page) #images .gallery-card--subject .gallery-card__image,body:not(.about-poster-page) #images .gallery-card--subject img,body:not(.about-poster-page) #images .gallery-card__button.is-human-subject .gallery-card__image{object-position:50% 46%!important}body:not(.about-poster-page) #images .gallery-card--portrait .gallery-card__image,body:not(.about-poster-page) #images .gallery-card--portrait img,body:not(.about-poster-page) #images .gallery-card__button.is-portrait-frame .gallery-card__image{object-position:50% 45%!important}}@media(min-width:960px){body.viewer-open .gallery-viewer__toolbar [data-viewer-previous]{left:clamp(18px,1.8vw,28px)!important}body.viewer-open .gallery-viewer__toolbar [data-viewer-next]{right:clamp(18px,1.8vw,28px)!important}}@media(min-width:1025px){body:not(.about-poster-page) #images .gallery-index-header,body:not(.about-poster-page) #images .page-header{margin-top:0!important;padding-top:0!important;transform:none!important}body:not(.about-poster-page) #images .photo-subtitle{margin:4px 0 0!important;position:static!important}}html.viewer-open,html.viewer-open body,body.viewer-open{overscroll-behavior:none!important;overflow:hidden!important}@media(min-width:721px){body:not(.about-poster-page) #images .mobile-image-list{flex-wrap:wrap!important;grid-template-columns:none!important;grid-auto-rows:auto!important;grid-auto-flow:row!important;align-content:flex-start!important;align-items:stretch!important;gap:0!important;display:flex!important}body:not(.about-poster-page) #images .gallery-card,body:not(.about-poster-page) #images .gallery-card:nth-child(n),body:not(.about-poster-page) #images .gallery-card--wide,body:not(.about-poster-page) #images .gallery-card--portrait,body:not(.about-poster-page) #images .gallery-card--subject{flex:var(--gallery-ratio,1.3333) 1 clamp(190px,18vw,270px)!important;grid-area:auto!important;min-width:clamp(180px,17vw,280px)!important;height:clamp(190px,17vw,258px)!important;margin:0!important}body:not(.about-poster-page) #images .gallery-card--wide{flex-grow:max(var(--gallery-ratio,1.6),1.45)!important}body:not(.about-poster-page) #images .gallery-card--portrait{flex-grow:min(var(--gallery-ratio,.78),.82)!important;min-width:clamp(150px,14vw,220px)!important}body:not(.about-poster-page) #images .gallery-card__button,body:not(.about-poster-page) #images .gallery-card__image,body:not(.about-poster-page) #images .gallery-card img{aspect-ratio:auto!important;width:100%!important;height:100%!important}}.identity__slogan{-webkit-font-smoothing:antialiased;letter-spacing:.05em!important;max-width:none!important;color:var(--text-secondary,#1e1e1ead)!important;text-wrap:nowrap!important;flex-direction:column!important;gap:3px!important;margin-top:8px!important;font-family:Songti SC,Source Han Serif SC,Noto Serif SC,STSong,HuiwenMincho,Hiragino Mincho ProN,Songti,serif!important;font-size:12px!important;font-style:normal!important;font-weight:400!important;line-height:1.75!important;display:flex!important}html[data-theme=dark] .identity__slogan{color:#f2f2f7b8!important}.slogan-line{white-space:nowrap!important;font-family:inherit!important;font-size:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;color:inherit!important;display:block!important}@media(max-width:720px){.identity__slogan{letter-spacing:.03em!important;gap:1px!important;margin-top:2px!important;font-size:11px!important;line-height:1.45!important}}#images .page-header,#music .page-header,#videos .page-header,#articles .page-header,#contact .page-header{border-bottom:1px solid var(--hairline,#00000012)!important;width:100%!important;max-width:none!important;margin:0 0 24px!important;padding-bottom:16px!important;padding-left:0!important;padding-right:0!important;display:block!important;position:relative!important;transform:none!important}html[data-theme=dark] #images .page-header,html[data-theme=dark] #music .page-header,html[data-theme=dark] #videos .page-header,html[data-theme=dark] #articles .page-header,html[data-theme=dark] #contact .page-header{border-bottom-color:#ffffff14!important}@media(min-width:1025px){#images .page-header,#music .page-header,#videos .page-header,#articles .page-header,#contact .page-header{margin-top:0!important;padding-top:0!important}}@media(max-width:1024px){#images .page-header,#images .gallery-index-header,#music .page-header,#videos .page-header,#articles .page-header,#contact .page-header,#about .page-header{margin-top:0!important;padding-top:0!important}}#images .page-header p,#music .page-header p,#videos .page-header p,#articles .page-header p,#contact .page-header p{color:var(--readable-muted,var(--text-secondary))!important;opacity:.8!important;margin-top:6px!important;margin-bottom:0!important;font-size:13px!important;line-height:1.55!important}#contact .contact__list{border-top:none!important}html[data-theme=light] #contact .contact__list,html[data-theme=dark] #contact .contact__list{border-top:#0000!important}#articles .article-card:first-child{border-top:none!important}@media(min-width:1025px){body:not(.about-poster-page) #images,body:not(.about-poster-page) #videos,body:not(.about-poster-page) #articles,body:not(.about-poster-page) #contact,body:not(.about-poster-page) .content{padding-top:0!important}}@media(max-width:720px){#images,#videos,#articles,#contact{padding-top:clamp(24px,5vw,36px)!important}}.photo-wall-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;width:100%;margin-top:24px;display:grid}@media(min-width:1200px){.photo-wall-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1600px){.photo-wall-grid{grid-template-columns:repeat(4,1fr)}}.photo-wall-item{aspect-ratio:3/2;background-color:var(--card);border:1px solid var(--line);cursor:pointer;border-radius:8px;width:100%;transition:transform .6s cubic-bezier(.16,1,.3,1),box-shadow .6s cubic-bezier(.16,1,.3,1),border-color .6s;display:block;position:relative;overflow:hidden;box-shadow:0 4px 16px #00000005,0 1px 3px #00000003}.photo-wall-item:hover{border-color:var(--accent);transform:translateY(-5px);box-shadow:0 20px 38px -4px #0000000f,0 8px 16px -2px #00000005}.photo-wall-image{object-fit:cover;width:100%;height:100%;transition:transform 1.2s cubic-bezier(.25,1,.5,1)}.photo-wall-item:hover .photo-wall-image{transform:scale(1.08)}.photo-wall-overlay{opacity:0;pointer-events:none;background:linear-gradient(#0000,#0000004d,#000000d9);align-items:flex-end;padding:20px;transition:opacity .3s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.photo-wall-item:hover .photo-wall-overlay{opacity:1}@media(max-width:1024px){.photo-wall-overlay{opacity:1;background:linear-gradient(#0000001a 40%,#000000bf);padding:14px}}.photo-wall-info{color:#fff;width:100%;transition:transform .4s cubic-bezier(.16,1,.3,1);transform:translateY(4px)}.photo-wall-item:hover .photo-wall-info{transform:translateY(0)}.photo-wall-info h3{text-shadow:0 1px 3px #0000004d;letter-spacing:.03em;margin:0;font-size:16px;font-weight:500;font-family:"DM Serif Display",var(--cjk-serif-font),serif!important;color:#fff!important}.photo-wall-info p{text-transform:uppercase;letter-spacing:.06em;text-shadow:0 1px 2px #0003;margin:4px 0 0;font-size:11px;font-family:var(--body-copy-font)!important;color:#ffffffbf!important}.fancybox-caption-custom{font-family:var(--body-copy-font)!important}.fancybox-caption-title{font-family:"DM Serif Display",var(--cjk-serif-font),serif!important;color:#fff!important;margin-bottom:6px!important;font-size:18px!important}.fancybox-caption-desc{font-family:var(--body-copy-font)!important;color:#ffffffe6!important;font-size:13.5px!important;line-height:1.6!important}.fancybox-caption-meta{font-family:var(--body-copy-font)!important;letter-spacing:.04em!important;color:#fff9!important;font-size:11px!important}html[data-theme=dark] .photo-wall-item{background-color:#14141466;border-color:#ffffff14;box-shadow:0 4px 20px #0003}html[data-theme=dark] .photo-wall-item:hover{border-color:var(--accent);box-shadow:0 20px 40px -4px #00000080,0 8px 16px -2px #0000004d}.photo-filters{flex-wrap:wrap;gap:10px;margin-top:18px;margin-bottom:4px;display:flex}.photo-filter-btn{border:1px solid var(--line);color:var(--text-secondary);font-size:13px;font-family:var(--body-copy-font),sans-serif;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border-radius:100px;padding:6px 16px;line-height:1.2;transition:all .25s cubic-bezier(.16,1,.3,1)}.photo-filter-btn:hover{color:var(--text-primary);border-color:var(--text-secondary)}.photo-filter-btn.active{color:var(--accent);border-color:var(--accent);background-color:rgba(var(--accent-rgb,120, 115, 100),.08);font-weight:500}html[data-theme=dark] .photo-filter-btn.active{color:#e3d3b8!important;background-color:#e3d3b81f!important;border-color:#e3d3b899!important}@keyframes photoCardEntrance{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.photo-wall-item{animation:.6s cubic-bezier(.16,1,.3,1) both photoCardEntrance}.music-container{flex-direction:column;gap:40px;width:100%;max-width:1060px;margin:0 auto;padding:0;display:flex}.music-player-card{background:var(--surface-low,#fcfcfc);border:1px solid var(--hairline,#00000014);box-shadow:var(--shadow-soft);border-radius:20px;width:100%;max-width:800px;margin:0 auto;padding:32px clamp(16px,4vw,36px);position:relative;overflow:hidden}html[data-theme=dark] .music-player-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff08;border-color:#ffffff14;box-shadow:0 10px 30px #0003}.music-info-wrapper{text-align:center;flex-direction:column;align-items:center;gap:24px;display:flex}@media(min-width:480px){.music-info-wrapper{text-align:left;flex-direction:row}}.album-cover-container{flex-shrink:0;width:150px;height:150px;position:relative}.album-cover-disc{background:#111;border:4px solid #222;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;animation:15s linear infinite paused discRotation;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #00000026,inset 0 0 0 12px #181818}.album-cover-disc.is-playing{animation-play-state:running}.album-cover-inner{z-index:2;border-radius:50%;width:76px;height:76px;position:relative;overflow:hidden}.album-cover-inner img{object-fit:cover;width:100%;height:100%}.disc-center-hole{background:var(--surface-low,#fcfcfc);z-index:3;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 2px 4px #0006}html[data-theme=dark] .disc-center-hole{background:#1d1d1b}@keyframes discRotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.track-details{flex-direction:column;flex-grow:1;justify-content:center;display:flex}.track-title{font-family:var(--title-font),"Space Grotesk",sans-serif;color:var(--text-primary);margin-bottom:4px;font-size:20px;font-weight:600}.track-artist{color:var(--text-secondary);margin-bottom:12px;font-size:14px}.waveform-container{align-items:flex-end;gap:4px;height:24px;margin-top:4px;display:flex}.wave-bar{background-color:var(--accent);border-radius:2px;width:3px;height:4px;transition:height .15s}html[data-theme=dark] .wave-bar{background-color:#e3d3b8}.progress-bar-container{align-items:center;gap:12px;margin:24px 0 16px;display:flex}.time-label{color:var(--text-secondary);min-width:38px;font-family:monospace;font-size:12px}.progress-slider-wrapper{background:var(--line,#0000000f);cursor:pointer;border-radius:3px;flex-grow:1;height:6px;position:relative}html[data-theme=dark] .progress-slider-wrapper{background:#ffffff1a}.progress-slider-fill{background:var(--accent);border-radius:3px;width:0%;height:100%;position:absolute;top:0;left:0}html[data-theme=dark] .progress-slider-fill{background:#e3d3b8}.progress-slider-handle{background:var(--accent);border-radius:50%;width:12px;height:12px;transition:transform .1s,left .1s linear;position:absolute;top:50%;left:0%;transform:translate(-50%,-50%);box-shadow:0 2px 6px #00000026}html[data-theme=dark] .progress-slider-handle{background:#e3d3b8}.progress-slider-wrapper:hover .progress-slider-handle{transform:translate(-50%,-50%)scale(1.2)}.control-buttons{justify-content:center;align-items:center;gap:16px;margin-bottom:20px;display:flex}.music-btn{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .2s;display:flex}.music-btn.secondary-btn{color:var(--text-secondary);border:1px solid var(--line,#0000000f);border-radius:50%;width:36px;height:36px}html[data-theme=dark] .music-btn.secondary-btn{color:#ffffffb3;border-color:#ffffff1a}.music-btn.secondary-btn:hover{color:var(--text-primary);background:var(--line,#0000000a);transform:scale(1.05)}html[data-theme=dark] .music-btn.secondary-btn:hover{background:#ffffff0d}.music-btn.primary-btn{background:var(--accent);color:var(--accent-foreground,#fff);width:52px;height:52px;box-shadow:0 4px 12px var(--accent);border-radius:50%}@supports (color:color-mix(in lab,red,red)){.music-btn.primary-btn{box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 30%,transparent)}}html[data-theme=dark] .music-btn.primary-btn{color:#1d1d1b;background:#e3d3b8;box-shadow:0 4px 12px #e3d3b840}.music-btn.primary-btn:hover{box-shadow:0 6px 16px var(--accent);transform:scale(1.08)}@supports (color:color-mix(in lab,red,red)){.music-btn.primary-btn:hover{box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 40%,transparent)}}html[data-theme=dark] .music-btn.primary-btn:hover{box-shadow:0 6px 16px #e3d3b859}.music-btn:active{transform:scale(.95)}.volume-container{justify-content:center;align-items:center;gap:8px;max-width:180px;margin:0 auto;display:flex}.volume-icon{color:var(--text-secondary)}.volume-slider-input{background:var(--line,#0000000f);-webkit-appearance:none;height:4px;accent-color:var(--accent);border-radius:2px;outline:none;flex-grow:1}html[data-theme=dark] .volume-slider-input{accent-color:#e3d3b8;background:#ffffff1a}.music-playlist-card{width:100%;box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.music-playlist-card h3{color:var(--text-primary);font-style:italic;border-bottom:1px solid var(--hairline)!important;margin-bottom:24px!important;padding-bottom:12px!important;font-family:DM Serif Display,Noto Serif SC,serif!important;font-size:22px!important;font-weight:400!important}html[data-theme=dark] .music-playlist-card h3{border-color:#ffffff14!important}.playlist-items{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:clamp(16px,3vw,24px)!important;padding-right:0!important;display:grid!important;overflow-y:visible!important}@media(min-width:768px){.playlist-items{grid-template-columns:repeat(4,minmax(0,1fr))!important}}.playlist-item{border:1px solid var(--hairline)!important;background:var(--surface-low,#fcfcfc)!important;text-align:left!important;cursor:pointer!important;width:100%!important;box-shadow:var(--shadow-soft)!important;border-radius:16px!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;padding:12px!important;transition:all .3s cubic-bezier(.16,1,.3,1)!important;display:flex!important;position:relative!important}html[data-theme=dark] .playlist-item{background:#ffffff05!important;border-color:#ffffff14!important}.playlist-item:hover{border-color:var(--accent)!important;transform:translateY(-4px)!important;box-shadow:0 12px 30px #0000000a!important}html[data-theme=dark] .playlist-item:hover{border-color:#e3d3b8!important;box-shadow:0 12px 30px #00000040!important}.playlist-item.is-active{background:var(--surface)!important;border-color:#d12f2f!important;box-shadow:0 8px 24px #d12f2f14!important}html[data-theme=dark] .playlist-item.is-active{background:#ffffff0a!important;border-color:#ff5a5a!important;box-shadow:0 8px 24px #ff5a5a26!important}.playlist-item__cover{aspect-ratio:1!important;border-radius:10px!important;flex-shrink:0!important;width:100%!important;height:auto!important;position:relative!important;overflow:hidden!important}.playlist-item__cover img{object-fit:cover!important;width:100%!important;height:100%!important}.playlist-item__info{text-align:center!important;flex-direction:column!important;flex-grow:1!important;gap:4px!important;display:flex!important}.playlist-item__title{font-family:var(--title-font),sans-serif!important;color:var(--text-primary)!important;white-space:nowrap!important;text-overflow:ellipsis!important;font-size:14px!important;font-weight:600!important;display:block!important;overflow:hidden!important}.playlist-item__artist{color:var(--readable-muted,var(--text-secondary))!important;white-space:nowrap!important;text-overflow:ellipsis!important;font-size:11px!important;display:block!important;overflow:hidden!important}.playlist-item__duration{color:var(--text-secondary)!important;text-align:center!important;opacity:.7!important;font-family:monospace!important;font-size:11px!important;display:block!important}.playlist-item__play-icon{color:#fff!important;opacity:0!important;z-index:10!important;pointer-events:none!important;background:#d12f2fe6!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;width:44px!important;height:44px!important;transition:all .25s cubic-bezier(.16,1,.3,1)!important;display:flex!important;position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)scale(.8)!important;box-shadow:0 4px 12px #0003!important}html[data-theme=dark] .playlist-item__play-icon{color:#fff!important}.playlist-item:hover .playlist-item__play-icon,.playlist-item.is-active .playlist-item__play-icon{opacity:1!important;transform:translate(-50%,-50%)scale(1)!important}:root{--plyr-color-main:#76684d!important}html[data-theme=dark]{--plyr-color-main:#e3d3b8!important}.plyr--full-ui input[type=range]{color:var(--plyr-color-main)!important}.plyr__control--overlaid{background:var(--plyr-color-main)!important;color:#fff!important}*,:before,:after{box-sizing:border-box}html,body{max-width:100vw;overflow-x:hidden}@media(min-width:1025px){:root{--desktop-fluid-left:clamp(28px, 3.2vw, 56px);--desktop-fluid-sidebar:clamp(180px, 16vw, 230px);--desktop-fluid-gap:clamp(28px, 3.5vw, 64px);--desktop-fluid-right:clamp(24px, 3vw, 64px);--desktop-fluid-width:calc(100vw - var(--desktop-fluid-left) - var(--desktop-fluid-sidebar) - var(--desktop-fluid-gap) - var(--desktop-fluid-right));--content-area-width:min(1180px, max(100%, var(--desktop-fluid-width)))}.site-shell{width:100%!important;max-width:1600px!important;padding:clamp(32px,3.8vw,56px) var(--desktop-fluid-right) clamp(32px,3.8vw,56px) var(--desktop-fluid-left)!important;box-sizing:border-box!important;margin:0 auto!important}.sidebar{top:clamp(28px,3.5vw,48px)!important;bottom:clamp(20px,3vh,40px)!important;left:var(--desktop-fluid-left)!important;width:var(--desktop-fluid-sidebar)!important;scrollbar-width:none!important;-ms-overflow-style:none!important;pointer-events:auto!important;flex-direction:column!important;justify-content:flex-start!important;height:calc(100dvh - clamp(28px,3.5vw,48px) - clamp(20px,3vh,40px))!important;display:flex!important;position:fixed!important;overflow:visible!important}.sidebar::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}.sidebar .identity__name{font-size:clamp(38px,3.6vw,48px)!important;font-weight:700!important;line-height:1!important}.content{width:calc(100% - var(--desktop-fluid-sidebar) - var(--desktop-fluid-gap))!important;max-width:min(1180px,100%)!important;margin-left:calc(var(--desktop-fluid-sidebar) + var(--desktop-fluid-gap))!important;box-sizing:border-box!important;min-width:0!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important}}@media(max-width:1024px){:root{--mobile-edge:clamp(16px, 4vw, 32px);--mobile-top-space:0px;--mobile-bottom-space: calc(max(96px, env(safe-area-inset-bottom,20px) + 72px) + 24px) ;--page-title-axis-y:0px;--content-area-width:100%;--content-max-width:100%;--module-axis-width:100%}.site-shell{min-height:100dvh;width:100%!important;max-width:100%!important;padding:0 var(--mobile-edge) 0!important;box-sizing:border-box!important;flex-direction:column!important;align-items:center!important;margin:0 auto!important;display:flex!important}.sidebar{width:100%!important;max-width:var(--content-max-width,100%)!important;border-bottom:1px solid var(--hairline,#00000014)!important;pointer-events:auto!important;box-sizing:border-box!important;background:0 0!important;height:auto!important;min-height:auto!important;margin:0 auto!important;padding:clamp(16px,2.5vw,24px) 0 clamp(14px,2vw,20px)!important;display:block!important;position:relative!important;inset:auto!important}.sidebar:before,.sidebar:after{content:none!important;display:none!important}html[data-theme=dark] .sidebar{border-bottom-color:#ffffff14!important}.sidebar-top-bar{box-sizing:border-box!important;flex-direction:row!important;justify-content:space-between!important;align-items:flex-start!important;gap:16px!important;width:100%!important;padding:0!important;display:flex!important}.identity{z-index:85!important;pointer-events:auto!important;word-break:break-word!important;text-align:left!important;flex-direction:column!important;flex:auto!important;justify-content:flex-start!important;align-items:flex-start!important;gap:4px!important;width:auto!important;min-width:0!important;margin:0!important;display:flex!important;position:relative!important}.identity__name{letter-spacing:-.015em!important;text-align:left!important;font-size:clamp(30px,5.8vw,40px)!important;font-weight:700!important;line-height:1.05!important;display:block!important}.identity__slogan{opacity:.9;letter-spacing:.04em!important;color:var(--text-secondary)!important;text-align:left!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important;margin:4px 0 0!important;padding:0!important;font-size:clamp(12px,1.8vw,13.5px)!important;line-height:1.45!important;display:flex!important}.identity__slogan .slogan-line{text-align:left!important;margin:0!important;display:block!important}.mobile-theme-toggle{width:clamp(38px,5vw,44px)!important;min-width:clamp(38px,5vw,44px)!important;height:clamp(38px,5vw,44px)!important;min-height:clamp(38px,5vw,44px)!important;color:var(--text-primary,#333)!important;cursor:pointer!important;-webkit-backdrop-filter:blur(16px)saturate(180%)!important;pointer-events:auto!important;background:linear-gradient(135deg,#fffffff2,#f5f5f7d9)!important;border:1px solid #00000014!important;border-radius:12px!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important;margin:0!important;padding:0!important;transition:all .22s cubic-bezier(.16,1,.3,1)!important;display:inline-flex!important;position:static!important;transform:none!important;box-shadow:0 3px 10px #0000000d,0 1px 2px #0000000a,inset 0 1px #ffffffe6!important}.mobile-theme-toggle svg{width:18px!important;height:18px!important;transition:transform .3s cubic-bezier(.34,1.56,.64,1)!important}html[data-theme=dark] .mobile-theme-toggle{color:#edb!important;background:linear-gradient(135deg,#202628e6,#14181ad9)!important;border-color:#ffffff24!important;box-shadow:0 4px 12px #0006,0 1px 3px #0003,inset 0 1px #ffffff1f!important}.mobile-theme-toggle:active{transform:scale(.92)!important}.mobile-theme-toggle:hover svg{transform:rotate(15deg)scale(1.08)!important}.mobile-menu-toggle,.site-nav #sidebar-theme-toggle,.site-nav .sidebar-theme-toggle,.sidebar>.sidebar-theme-toggle{display:none!important}.site-nav{top:auto!important;bottom:max(20px,env(safe-area-inset-bottom,20px))!important;z-index:9999!important;-webkit-backdrop-filter:blur(24px)saturate(180%)!important;pointer-events:auto!important;box-sizing:border-box!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;-ms-overflow-style:none!important;white-space:nowrap!important;touch-action:manipulation!important;will-change:transform,opacity!important;background:linear-gradient(135deg,#fffffff0,#ffffffd1)!important;border:1px solid #ffffff8c!important;border-radius:999px!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:8px!important;width:auto!important;max-width:calc(100vw - 28px)!important;margin:0!important;padding:6px 12px!important;transition:transform .28s cubic-bezier(.16,1,.3,1),opacity .24s!important;display:flex!important;position:fixed!important;left:50%!important;right:auto!important;overflow-x:auto!important;transform:translate(-50%)!important;box-shadow:0 18px 44px #182a2c29,0 4px 14px #182a2c0f,inset 0 0 0 1px #fff9,inset 0 1.5px #ffffffe6!important}.site-nav.is-hidden{opacity:0!important;pointer-events:none!important;transform:translate(-50%,calc(100% + 32px))!important}.site-nav::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}html[data-theme=dark] .site-nav{background:linear-gradient(135deg,#161c1df0,#0c1011e6)!important;border-color:#ffffff2e!important;box-shadow:0 18px 44px #00000080,0 4px 14px #0003,inset 0 0 0 1px #ffffff14,inset 0 1.5px #ffffff38!important}.site-nav .project-links,.site-nav .utility-links{flex-direction:row!important;align-items:center!important;gap:8px!important;margin:0!important;padding:0!important;display:flex!important}.site-nav a{white-space:nowrap!important;width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important;color:var(--text-secondary)!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;cursor:pointer!important;will-change:transform!important;-webkit-user-select:none!important;user-select:none!important;border:1px solid #0000!important;border-radius:999px!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important;gap:0!important;padding:0!important;font-size:13.5px!important;font-weight:500!important;line-height:1!important;transition:transform .14s cubic-bezier(.16,1,.3,1),background .14s,color .14s,border-color .14s!important;display:inline-flex!important;overflow:hidden!important}.site-nav a:active,.site-nav a.is-touching{transform:scale(.9)!important}.site-nav a .nav-icon{flex-shrink:0!important;width:19px!important;height:19px!important;margin:0!important;font-size:19px!important}.site-nav a span{white-space:nowrap!important;margin-left:5px!important;font-size:13.5px!important;font-weight:600!important;line-height:1!important;display:none!important}.site-nav a[aria-current=page],.site-nav a.active{width:auto!important;min-width:0!important;color:var(--accent)!important;background:linear-gradient(135deg,#fffffffa,#ffffffc7)!important;border:1px solid #ffffffe6!important;gap:3px!important;padding:0 15px 0 13px!important;font-weight:600!important;box-shadow:0 4px 12px #76684d24,0 1px 3px #0000000a!important}.site-nav a[aria-current=page] span,.site-nav a.active span{display:inline-block!important}html[data-theme=dark] .site-nav a{color:#f5f5f7a6!important}html[data-theme=dark] .site-nav a[aria-current=page],html[data-theme=dark] .site-nav a.active{color:#f1e2c8!important;background:linear-gradient(135deg,#ffffff3d,#ffffff1a)!important;border-color:#ffffff47!important;box-shadow:0 4px 12px #0006,0 1px 3px #0003!important}.site-nav .site-copyright,body>.site-copyright{display:none!important}.content,body .content,body:not(.about-poster-page) .content{width:100%!important;max-width:var(--content-max-width,100%)!important;padding-top:clamp(20px,3.2vw,32px)!important;padding-bottom:var(--mobile-bottom-space)!important;box-sizing:border-box!important;min-width:0!important;margin:0 auto!important;padding-left:0!important;padding-right:0!important;display:block!important}.page-section{box-sizing:border-box!important;width:100%!important;max-width:100%!important;margin:0 auto!important;padding:0!important}.page-section[hidden]{display:none!important}.page-section.is-active{display:block!important}}@media(min-width:641px)and (max-width:1024px){:root{--mobile-edge:clamp(24px, 4.5vw, 44px);--content-max-width:clamp(660px, 88vw, 920px)}.page-header,.gallery-index-header,#images .gallery-index-header,#music .page-header,#videos .page-header,#articles .page-header,#contact .page-header,#about .page-header{text-align:left!important;flex-direction:column!important;justify-content:flex-start!important;align-items:flex-start!important;width:100%!important;max-width:100%!important;margin-top:0!important;margin-bottom:22px!important;padding:0!important;display:flex!important}.page-header h1,.gallery-index-header h1,#images .gallery-index-header h1,#music .page-header h1,#videos .page-header h1,#articles .page-header h1,#contact .page-header h1,#about .page-header h1{letter-spacing:-.01em!important;text-align:left!important;margin:0 0 6px!important;font-size:clamp(24px,3.2vw,30px)!important;font-weight:600!important;line-height:1.25!important;display:block!important}.page-header p,.gallery-index-header p:last-child,#images .gallery-index-header p:last-child,#music .page-header p,#videos .page-header p,#articles .page-header p,#contact .page-header p,#about .page-header p{letter-spacing:.02em!important;color:var(--text-secondary)!important;text-align:left!important;margin:0!important;font-size:clamp(13px,1.8vw,14.5px)!important;line-height:1.5!important;display:block!important}.gallery-page{width:100%!important;max-width:100%!important;margin:0 auto!important}.photo-filters{flex-wrap:wrap!important;gap:10px!important;width:100%!important;margin-top:14px!important;margin-bottom:6px!important;display:flex!important}.photo-filter-btn{border-radius:999px!important;padding:6px 16px!important;font-size:13.5px!important}.photo-wall-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:clamp(14px,2vw,20px)!important;width:100%!important;margin-top:16px!important;display:grid!important}.photo-wall-item{border-radius:12px!important;width:100%!important;overflow:hidden!important}.photo-wall-item img{aspect-ratio:4/3!important;object-fit:cover!important;width:100%!important;height:auto!important}.music-container{flex-direction:column!important;gap:28px!important;width:100%!important;max-width:100%!important;margin:0 auto!important;padding:0!important;display:flex!important}.music-player-card{box-sizing:border-box!important;border-radius:20px!important;width:100%!important;max-width:100%!important;margin:0 auto!important;padding:clamp(24px,3.5vw,32px)!important}.music-info-wrapper{text-align:left!important;flex-direction:row!important;align-items:center!important;gap:clamp(20px,3vw,32px)!important;width:100%!important;display:flex!important}.album-cover-container{border-radius:14px!important;flex-shrink:0!important;width:clamp(130px,18vw,154px)!important;height:clamp(130px,18vw,154px)!important;margin:0!important;overflow:hidden!important}.album-cover-disc{width:100%!important;height:100%!important}.album-cover-inner{width:76px!important;height:76px!important}.track-details{text-align:left!important;align-items:flex-start!important;width:100%!important;min-width:0!important}.track-title{text-align:left!important;margin-bottom:4px!important;font-size:22px!important;font-weight:600!important;line-height:1.3!important}.track-artist{text-align:left!important;color:var(--text-secondary)!important;margin-bottom:10px!important;font-size:14px!important}.waveform-container{justify-content:flex-start!important;height:24px!important;margin:0!important}.progress-bar-container{box-sizing:border-box!important;gap:12px!important;width:100%!important;margin:20px 0 14px!important}.time-display{font-size:12px!important}.control-buttons{gap:18px!important;margin-bottom:14px!important}.control-btn{width:38px!important;height:38px!important}.play-pause-btn{width:52px!important;height:52px!important}.volume-container{justify-content:center!important;width:100%!important;max-width:220px!important;margin:0 auto!important}.playlist-items{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;width:100%!important;display:grid!important}.playlist-item{box-sizing:border-box!important;border-radius:10px!important;gap:10px!important;width:100%!important;padding:10px 12px!important}.playlist-cover{border-radius:6px!important;width:40px!important;height:40px!important}.playlist-title{font-size:13.5px!important;line-height:1.3!important}.playlist-artist{font-size:12px!important}#videos .video-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:clamp(16px,2.5vw,24px)!important;width:100%!important;display:grid!important}#videos .video-card{border-radius:14px!important;overflow:hidden!important}#videos .video-card strong{font-size:14.5px!important;line-height:1.4!important}#articles .articles-stack{width:100%!important;max-width:100%!important;margin:0 auto!important}#articles .article-card{box-sizing:border-box!important;border-bottom:1px solid var(--hairline,#00000014)!important;width:100%!important;max-width:100%!important}#articles .article-card__link{box-sizing:border-box!important;flex-direction:row!important;justify-content:space-between!important;align-items:flex-start!important;gap:28px!important;width:100%!important;min-height:auto!important;padding:22px 0!important;display:flex!important}#articles .article-card__cover{border-radius:10px!important;order:1!important;width:240px!important;min-width:240px!important;max-height:150px!important;margin:0!important;overflow:hidden!important}#articles .article-card__cover img{aspect-ratio:16/9!important;object-fit:cover!important;width:100%!important;height:100%!important}#articles .article-card__meta{margin:0 0 6px!important;font-size:12.5px!important}#articles .article-card__title{max-width:100%!important;font-size:20px!important;font-weight:600!important;line-height:1.35!important}#articles .article-card__excerpt{max-width:100%!important;margin-top:8px!important;font-size:14px!important;line-height:1.65!important}#articles .article-detail{box-sizing:border-box!important;width:100%!important;max-width:100%!important;margin:0 auto!important}#articles .article-feature__title{font-size:clamp(24px,3.5vw,30px)!important;font-weight:600!important;line-height:1.3!important}#articles .article-feature__body{font-size:var(--article-reader-size,17px)!important;word-break:break-word!important;line-height:1.8!important}#articles .article-feature__body p{font-size:var(--article-reader-size,17px)!important;margin-bottom:16px!important;line-height:1.8!important}#contact .contact__list{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;width:100%!important;margin:0!important;padding:0!important;display:grid!important}#contact .contact__list li{width:100%!important;margin:0!important;list-style:none!important}#contact .contact__list a{box-sizing:border-box!important;border-radius:14px!important;width:100%!important;padding:18px 20px!important}#contact .contact__list .name{font-size:15px!important;font-weight:600!important}#contact .contact__list .handle{font-size:13px!important}.cv-page{box-sizing:border-box!important;overflow-wrap:break-word!important;word-break:break-word!important;border-radius:18px!important;width:100%!important;max-width:100%!important;margin:0 auto!important;padding:clamp(28px,4vw,40px)!important}.cv-header{flex-direction:row!important;align-items:center!important;gap:24px!important;width:100%!important;display:flex!important}.cv-portrait{border-radius:14px!important;flex-shrink:0!important;width:80px!important;height:80px!important}.cv-name{font-size:26px!important;font-weight:700!important}.cv-title{font-size:15px!important;line-height:1.45!important}.cv-contacts{flex-wrap:wrap!important;gap:6px 18px!important;font-size:13px!important;display:flex!important}.cv-section-title{margin-bottom:12px!important;font-size:17px!important}.cv-highlights,.cv-skills{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;width:100%!important;font-size:13.5px!important;display:grid!important}.cv-timeline-item{grid-template-columns:140px minmax(0,1fr)!important;gap:16px!important;width:100%!important;font-size:13.5px!important;display:grid!important}.cv-timeline-period{font-size:13px!important;font-weight:600!important}.cv-timeline-content{font-size:13.5px!important;line-height:1.6!important}.cv-footer{text-align:left!important;flex-direction:row!important;justify-content:space-between!important;padding-top:20px!important;font-size:12.5px!important;display:flex!important}}@media(max-width:640px){.page-header,.gallery-index-header,#images .gallery-index-header,#music .page-header,#videos .page-header,#articles .page-header,#contact .page-header,#about .page-header{text-align:left!important;flex-direction:column!important;justify-content:flex-start!important;align-items:flex-start!important;width:100%!important;max-width:100%!important;margin-top:0!important;margin-bottom:14px!important;padding:0!important;display:flex!important}.page-header h1,.gallery-index-header h1,#images .gallery-index-header h1,#music .page-header h1,#videos .page-header h1,#articles .page-header h1,#contact .page-header h1,#about .page-header h1{letter-spacing:-.01em!important;text-align:left!important;margin:0 0 3px!important;font-size:18px!important;font-weight:600!important;line-height:1.25!important;display:block!important}.page-header p,.gallery-index-header p:last-child,#images .gallery-index-header p:last-child,#music .page-header p,#videos .page-header p,#articles .page-header p,#contact .page-header p,#about .page-header p{letter-spacing:.02em!important;color:var(--text-secondary)!important;text-align:left!important;margin:0!important;font-size:12px!important;line-height:1.4!important;display:block!important}.photo-filters{flex-wrap:wrap!important;gap:6px!important;margin-top:10px!important;margin-bottom:2px!important;display:flex!important}.photo-filter-btn{border-radius:999px!important;padding:4px 10px!important;font-size:12px!important}.photo-wall-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:clamp(8px,2.5vw,14px)!important;width:100%!important;margin-top:10px!important;display:grid!important}.photo-wall-item{border-radius:8px!important;width:100%!important;overflow:hidden!important}.photo-wall-item img{aspect-ratio:4/3!important;object-fit:cover!important;width:100%!important;height:auto!important}.music-container{flex-direction:column!important;gap:16px!important;width:100%!important;padding:0!important;display:flex!important}.music-player-card{box-sizing:border-box!important;border-radius:14px!important;width:100%!important;max-width:100%!important;margin:0 auto!important;padding:16px 14px!important}.music-info-wrapper{text-align:center!important;flex-direction:column!important;align-items:center!important;gap:12px!important;width:100%!important;display:flex!important}.album-cover-container{border-radius:10px!important;flex-shrink:0!important;width:100px!important;height:100px!important;margin:0 auto!important;overflow:hidden!important}.track-details{text-align:center!important;align-items:center!important;width:100%!important;min-width:0!important}.track-title{text-align:center!important;word-break:break-word!important;margin-bottom:2px!important;font-size:16px!important;font-weight:600!important;line-height:1.3!important}.track-artist{text-align:center!important;color:var(--text-secondary)!important;margin-bottom:6px!important;font-size:12px!important}.waveform-container{justify-content:center!important;height:24px!important;margin:0 auto!important}.progress-bar-container{box-sizing:border-box!important;gap:6px!important;width:100%!important;margin:12px 0 10px!important}.time-display{font-size:11px!important}.control-buttons{gap:12px!important;margin-bottom:8px!important}.control-btn{width:34px!important;height:34px!important}.play-pause-btn{width:44px!important;height:44px!important}.volume-container{justify-content:center!important;width:100%!important;max-width:180px!important;margin:0 auto!important}.playlist-items{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;display:grid!important}.playlist-item{box-sizing:border-box!important;border-radius:8px!important;gap:6px!important;width:100%!important;padding:8px!important}.playlist-cover{border-radius:4px!important;width:32px!important;height:32px!important}.playlist-title{font-size:12px!important;line-height:1.25!important}.playlist-artist{font-size:10.5px!important}#videos .video-grid{grid-template-columns:1fr!important;gap:14px!important;width:100%!important;display:grid!important}#videos .video-card{border-radius:10px!important;overflow:hidden!important}#articles .articles-stack{width:100%!important;max-width:100%!important}#articles .article-card{box-sizing:border-box!important;border-bottom:1px solid var(--hairline,#0000000f)!important;width:100%!important;max-width:100%!important}#articles .article-card__link{box-sizing:border-box!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;min-height:auto!important;padding:16px 0!important;display:flex!important}#articles .article-card__cover{border-radius:8px!important;order:-1!important;width:100%!important;max-height:180px!important;margin:0 0 10px!important;overflow:hidden!important}#articles .article-card__cover img{aspect-ratio:16/9!important;object-fit:cover!important;width:100%!important;height:auto!important}#articles .article-card__meta{margin:0 0 4px!important;font-size:11.5px!important}#articles .article-card__title{max-width:100%!important;font-size:16.5px!important;font-weight:600!important;line-height:1.35!important}#articles .article-card__excerpt{max-width:100%!important;margin-top:6px!important;font-size:13px!important;line-height:1.55!important}#articles .article-detail{box-sizing:border-box!important;width:100%!important;max-width:100%!important}#articles .article-feature__title{font-size:clamp(19px,5vw,23px)!important;font-weight:600!important;line-height:1.3!important}#articles .article-feature__body{font-size:var(--article-reader-size,clamp(14.5px, 3.8vw, 16px))!important;word-break:break-word!important;line-height:1.75!important}#articles .article-feature__body p{font-size:var(--article-reader-size,16px)!important;margin-bottom:14px!important;line-height:1.75!important}#articles .article-feature__body img{border-radius:8px!important;max-width:100%!important;height:auto!important;margin:12px 0!important}#contact .contact__list{grid-template-columns:1fr!important;gap:10px 0!important;width:100%!important;margin:0!important;padding:0!important;display:grid!important}#contact .contact__list li{width:100%!important;margin:0!important;list-style:none!important}#contact .contact__list a{box-sizing:border-box!important;border-radius:10px!important;width:100%!important;padding:12px 14px!important}#contact .contact__list .name{font-size:14px!important}#contact .contact__list .handle{font-size:12px!important}.cv-page{box-sizing:border-box!important;overflow-wrap:break-word!important;word-break:break-word!important;border-radius:12px!important;width:100%!important;max-width:100%!important;padding:14px 12px!important}.cv-header{flex-direction:column!important;align-items:flex-start!important;gap:10px!important;width:100%!important;display:flex!important}.cv-portrait{border-radius:10px!important;flex-shrink:0!important;width:60px!important;height:60px!important}.cv-name{font-size:20px!important;font-weight:700!important}.cv-title{font-size:12.5px!important;line-height:1.45!important}.cv-contacts{flex-wrap:wrap!important;gap:4px 10px!important;font-size:11.5px!important;display:flex!important}.cv-section-title{margin-bottom:8px!important;font-size:14.5px!important}.cv-highlights,.cv-skills,.cv-timeline-item{grid-template-columns:1fr!important;gap:8px!important;width:100%!important;font-size:12.5px!important;display:grid!important}.cv-timeline-period{font-size:11px!important}.cv-timeline-content{font-size:12.5px!important;line-height:1.5!important}.cv-footer{text-align:center!important;flex-direction:column!important;gap:4px!important;padding-top:14px!important;font-size:11.5px!important;display:flex!important}}@media(max-width:480px){.site-nav{gap:3px!important;max-width:calc(100vw - 12px)!important;padding:3px 5px!important}.site-nav .project-links,.site-nav .utility-links{gap:3px!important}.site-nav a{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important}.site-nav a[aria-current=page],.site-nav a.active{width:auto!important;padding:0 10px 0 8px!important}.site-nav a .nav-icon{width:15px!important;height:15px!important;font-size:15px!important}.photo-wall-grid{grid-template-columns:1fr!important}.playlist-items{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:360px){.site-nav{gap:2px!important;max-width:calc(100vw - 8px)!important;padding:3px 4px!important}.site-nav .project-links,.site-nav .utility-links{gap:2px!important}.site-nav a{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important}.site-nav a[aria-current=page],.site-nav a.active{width:auto!important;padding:0 8px 0 6px!important}.site-nav a .nav-icon{width:14px!important;height:14px!important;font-size:14px!important}}html,body,.site-shell{transition:background-color .65s cubic-bezier(.4,0,.2,1),color .45s,border-color .45s!important}html[data-page-theme=images],html[data-page-theme=images] body,body[data-page-theme=images]{--bg-page:#f5efeb;--page-bg:#f5efeb;--accent:#967043;background:#f5efeb!important}html[data-page-theme=music],html[data-page-theme=music] body,body[data-page-theme=music]{--bg-page:#e3ecf5;--page-bg:#e3ecf5;--accent:#33679e;background:#e3ecf5!important}html[data-page-theme=videos],html[data-page-theme=videos] body,body[data-page-theme=videos]{--bg-page:#f7e5db;--page-bg:#f7e5db;--accent:#b2532e;background:#f7e5db!important}html[data-page-theme=articles],html[data-page-theme=articles] body,body[data-page-theme=articles]{--bg-page:#e2efe5;--page-bg:#e2efe5;--accent:#2e7948;background:#e2efe5!important}html[data-page-theme=about],html[data-page-theme=about] body,body[data-page-theme=about]{--bg-page:#e5edf2;--page-bg:#e5edf2;--accent:#40688c;background:#e5edf2!important}html[data-page-theme=contact],html[data-page-theme=contact] body,body[data-page-theme=contact]{--bg-page:#f7e5e8;--page-bg:#f7e5e8;--accent:#b23d57;background:#f7e5e8!important}html[data-theme=dark][data-page-theme=images],html[data-theme=dark][data-page-theme=images] body,body[data-theme=dark][data-page-theme=images]{--accent:#d6b88e;background:#171512!important}html[data-theme=dark][data-page-theme=music],html[data-theme=dark][data-page-theme=music] body,body[data-theme=dark][data-page-theme=music]{--accent:#87ade0;background:#101620!important}html[data-theme=dark][data-page-theme=videos],html[data-theme=dark][data-page-theme=videos] body,body[data-theme=dark][data-page-theme=videos]{--accent:#e0987a;background:#1b1310!important}html[data-theme=dark][data-page-theme=articles],html[data-theme=dark][data-page-theme=articles] body,body[data-theme=dark][data-page-theme=articles]{--accent:#81c497;background:#101913!important}html[data-theme=dark][data-page-theme=about],html[data-theme=dark][data-page-theme=about] body,body[data-theme=dark][data-page-theme=about]{--accent:#8eacd4;background:#12171e!important}html[data-theme=dark][data-page-theme=contact],html[data-theme=dark][data-page-theme=contact] body,body[data-theme=dark][data-page-theme=contact]{--accent:#e0899c;background:#1d1317!important}@media(pointer:fine)and (hover:hover){html,body,*,:before,:after{cursor:none!important}}.glass-cursor{z-index:99999;opacity:0;will-change:transform,opacity;transition:opacity .2s cubic-bezier(.16,1,.3,1);position:fixed;top:0;left:0;transform:translate(-100px,-100px);pointer-events:none!important}.glass-cursor.is-visible{opacity:1}.glass-cursor__disc{transform-origin:50%;-webkit-backdrop-filter:blur(5px)saturate(160%);background:#ffffff29;border:1px solid #ffffff8c;border-radius:50%;width:18px;height:18px;transition:transform .22s cubic-bezier(.2,.9,.2,1),background-color .2s,border-color .2s,box-shadow .2s;position:relative;transform:translate(-50%,-50%)scale(1);box-shadow:0 2px 10px #00000012,inset 0 0 4px #ffffff59}.glass-cursor__disc:after{content:"";background:#1e1e1e80;border-radius:50%;width:3px;height:3px;transition:opacity .18s,transform .18s,background-color .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.glass-cursor.is-active .glass-cursor__disc{background:#ffffff52;border-color:#fffc;transform:translate(-50%,-50%)scale(.7);box-shadow:0 1px 6px #0000001a,inset 0 0 5px #fff9}.glass-cursor.is-hover .glass-cursor__disc{-webkit-backdrop-filter:blur(7px)saturate(180%);background:#ffffff1f;border-color:#ffffffb3;transform:translate(-50%,-50%)scale(1.38);box-shadow:0 4px 16px #0000001a,inset 0 0 6px #ffffff73}.glass-cursor.is-hover .glass-cursor__disc:after{opacity:.2;transform:translate(-50%,-50%)scale(.6)}html[data-theme=dark] .glass-cursor__disc{background:#ffffff14;border-color:#ffffff47;box-shadow:0 3px 12px #00000059,inset 0 0 4px #ffffff26}html[data-theme=dark] .glass-cursor__disc:after{background:#ffffffbf}html[data-theme=dark] .glass-cursor.is-active .glass-cursor__disc{background:#fff3;border-color:#fff9}html[data-theme=dark] .glass-cursor.is-hover .glass-cursor__disc{background:#ffffff0f;border-color:#ffffff6b;box-shadow:0 5px 20px #00000073,inset 0 0 6px #ffffff38}.glass-click-ripple{-webkit-backdrop-filter:blur(3px)saturate(150%);z-index:99998;will-change:transform,opacity;background:#fff3;border:1px solid #ffffff7a;border-radius:50%;width:12px;height:12px;animation:.38s cubic-bezier(.1,.85,.25,1) forwards glass-ripple-expand;position:fixed;transform:translate(-50%,-50%)scale(1);box-shadow:0 2px 8px #0000000f;pointer-events:none!important}html[data-theme=dark] .glass-click-ripple{background:#ffffff1f;border-color:#ffffff47}@keyframes glass-ripple-expand{0%{opacity:.9;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(2.4)}}@media(pointer:coarse),(hover:none){.glass-cursor,.glass-click-ripple{display:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}:root{--f-button-width: 40px;--f-button-height: 40px;--f-button-border: 0;--f-button-border-radius: 0;--f-button-color: #374151;--f-button-bg: #f8f8f8;--f-button-shadow: none;--f-button-transition: all .15s ease;--f-button-transform: none;--f-button-outline-width: 1px;--f-button-outline-color: rgba(0, 0, 0, .7);--f-button-svg-width: 20px;--f-button-svg-height: 20px;--f-button-svg-stroke-width: 1.5;--f-button-svg-fill: none;--f-button-svg-filter: none;--f-button-svg-opacity: 1;--f-button-svg-disabled-opacity: .5;--f-button-svg-transition: opacity .15s ease;--f-button-svg-transform: none}.f-button{width:var(--f-button-width);height:var(--f-button-height);border:var(--f-button-border);border-radius:var(--f-button-border-radius);color:var(--f-button-color);background:var(--f-button-bg);box-shadow:var(--f-button-shadow);transform:var(--f-button-transform);transition:var(--f-button-transition);-webkit-backdrop-filter:var(--f-button-backdrop-filter);backdrop-filter:var(--f-button-backdrop-filter);display:flex;justify-content:center;align-items:center;box-sizing:content-box;position:relative;margin:0;padding:0;pointer-events:all;cursor:pointer;overflow:hidden}@media(hover:hover){.f-button:hover:not([aria-disabled]){color:var(--f-button-hover-color, var(--f-button-color));background-color:var(--f-button-hover-bg, var(--f-button-bg))}}.f-button:active:not([aria-disabled]){color:var(--f-button-active-color, var(--f-button-hover-color, var(--f-button-color)));background-color:var(--f-button-active-bg, var(--f-button-hover-bg, var(--f-button-bg)))}.f-button:focus{outline:none}.f-button:focus-visible{outline:var(--f-button-outline-width) solid var(--f-button-outline-color);outline-offset:var(--f-button-outline-offset)}.f-button svg{width:var(--f-button-svg-width);height:var(--f-button-svg-height);transform:var(--f-button-svg-transform);fill:var(--f-button-svg-fill);filter:var(--f-button-svg-filter);opacity:var(--f-button-svg-opacity, 1);transition:var(--f-button-svg-transition);stroke:currentColor;stroke-width:var(--f-button-svg-stroke-width);stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.f-button[aria-disabled]{cursor:default}.f-button[aria-disabled] svg{opacity:var(--f-button-svg-disabled-opacity)}[data-panzoom-action=toggleFS] g:first-child{display:flex}[data-panzoom-action=toggleFS] g:last-child{display:none}.in-fullscreen [data-panzoom-action=toggleFS] g:first-child{display:none}.in-fullscreen [data-panzoom-action=toggleFS] g:last-child{display:flex}[data-autoplay-action=toggle] svg g:first-child{display:flex}[data-autoplay-action=toggle] svg g:last-child{display:none}.has-autoplay [data-autoplay-action=toggle] svg g:first-child{display:none}.has-autoplay [data-autoplay-action=toggle] svg g:last-child{display:flex}:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:first-child{display:none}:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:last-child{display:flex}:root{--f-spinner-color-1: rgba(0, 0, 0, .1);--f-spinner-color-2: rgba(17, 24, 28, .8);--f-spinner-width: 50px;--f-spinner-height: 50px;--f-spinner-border-radius: 50%;--f-spinner-border-width: 4px}.f-spinner{position:absolute;top:50%;left:50%;margin:0;padding:0;width:var(--f-spinner-width);height:var(--f-spinner-height);translate:-50% -50%;border:var(--f-spinner-border-width) solid var(--f-spinner-color-1);border-top-color:var(--f-spinner-color-2);border-radius:var(--f-spinner-border-radius);animation:f-spinner .75s linear infinite,f-fadeIn .2s ease .2s both}@keyframes f-spinner{to{rotate:360deg}}.f-panzoom,.f-zoomable{position:relative;overflow:hidden;display:flex;align-items:center;flex-direction:column}.f-panzoom:before,.f-panzoom:after,.f-zoomable:before,.f-zoomable:after{display:block;content:""}.f-panzoom:not(.has-controls):before,.f-zoomable:not(.has-controls):before{margin-bottom:auto}.f-panzoom:after,.f-zoomable:after{margin-top:auto}.f-panzoom.in-fullscreen,.f-zoomable.in-fullscreen{position:fixed;top:0;left:0;margin:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;aspect-ratio:unset!important;z-index:9999}.f-panzoom__wrapper{position:relative;min-width:0;min-height:0;max-width:100%;max-height:100%}.f-panzoom__wrapper.will-zoom-out{cursor:zoom-out}.f-panzoom__wrapper.can-drag{cursor:move;cursor:grab}.f-panzoom__wrapper.will-zoom-in{cursor:zoom-in}.f-panzoom__wrapper.is-dragging{cursor:move;cursor:grabbing}.f-panzoom__wrapper.has-error{display:none}.f-panzoom__content{display:block;min-width:0;min-height:0;max-width:100%;max-height:100%}.f-panzoom__content.is-lazyloading,.f-panzoom__content.has-lazyerror{visibility:hidden}img.f-panzoom__content{width:auto;height:auto;vertical-align:top;object-fit:contain;transition:none;-webkit-user-select:none;user-select:none}.f-panzoom__wrapper>.f-panzoom__content{visibility:hidden}.f-panzoom__viewport{display:block;position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.f-panzoom__viewport>.f-panzoom__content{width:100%;height:100%;object-fit:fill}picture.f-panzoom__content img{vertical-align:top;width:100%;height:auto;max-height:100%;object-fit:contain;transition:none;-webkit-user-select:none;user-select:none}.f-panzoom__protected{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;-webkit-user-select:none;user-select:none}html.with-panzoom-in-fullscreen{overflow:hidden}.f-fadeIn{animation:var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;z-index:2}.f-fadeOut{animation:var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;z-index:1}@keyframes f-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes f-fadeOut{to{opacity:0}}.f-crossfadeIn{animation:var(--f-transition-duration, .2s) ease both f-crossfadeIn;z-index:2}.f-crossfadeOut{animation:calc(var(--f-transition-duration, .2s) * .2) ease calc(var(--f-transition-duration, .2s) * .8) both f-crossfadeOut;z-index:1}@keyframes f-crossfadeIn{0%{opacity:0}to{opacity:1}}@keyframes f-crossfadeOut{to{opacity:0}}.is-horizontal .f-slideIn.from-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideInNextX}.is-horizontal .f-slideIn.from-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideInPrevX}.is-horizontal .f-slideOut.to-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideOutNextX}.is-horizontal .f-slideOut.to-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideOutPrevX}@keyframes f-slideInPrevX{0%{transform:translate(calc(100% + var(--f-carousel-gap, 0)))}to{transform:translateZ(0)}}@keyframes f-slideInNextX{0%{transform:translate(calc(-100% - var(--f-carousel-gap, 0)))}to{transform:translateZ(0)}}@keyframes f-slideOutNextX{to{transform:translate(calc(-100% - var(--f-carousel-gap, 0)))}}@keyframes f-slideOutPrevX{to{transform:translate(calc(100% + var(--f-carousel-gap, 0)))}}.is-vertical .f-slideIn.from-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideInNextY}.is-vertical .f-slideIn.from-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideInPrevY}.is-vertical .f-slideOut.to-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideOutNextY}.is-vertical .f-slideOut.to-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideOutPrevY}@keyframes f-slideInPrevY{0%{transform:translateY(calc(100% + var(--f-carousel-gap, 0)))}to{transform:translateZ(0)}}@keyframes f-slideInNextY{0%{transform:translateY(calc(-100% - var(--f-carousel-gap, 0)))}to{transform:translateZ(0)}}@keyframes f-slideOutNextY{to{transform:translateY(calc(-100% - var(--f-carousel-gap, 0)))}}@keyframes f-slideOutPrevY{to{transform:translateY(calc(100% + var(--f-carousel-gap, 0)))}}.f-zoomInUp{animation:var(--f-transition-duration, .3s) ease both f-zoomInUp}.f-zoomOutDown{animation:var(--f-transition-duration, .3s) ease both f-zoomOutDown}@keyframes f-zoomInUp{0%{transform:scale(var(--f-zoomInUp-scale, .975)) translate3d(var(--f-zoomInUp-x, 0),var(--f-zoomInUp-y, 16px),0);opacity:var(--f-zoomInUp-opacity, 0)}to{transform:scale(1) translateZ(0);opacity:1}}@keyframes f-zoomOutDown{to{transform:scale(var(--f-zoomOutDown-scale, .975)) translate3d(var(--f-zoomOutDown-x, 0),var(--f-zoomOutDown-y, 16px),0);opacity:0}}.f-throwOutUp{animation:var(--f-throwOutUp-duration, .2s) ease-out both f-throwOutUp}.f-throwOutDown{animation:var(--f-throwOutDown-duration, .2s) ease-out both f-throwOutDown}@keyframes f-throwOutUp{to{transform:translate3d(0,calc(var(--f-throwOutUp-y, 150px) * -1),0);opacity:0}}@keyframes f-throwOutDown{to{transform:translate3d(0,var(--f-throwOutDown-y, 150px),0);opacity:0}}.has-iframe .f-html,.has-pdf .f-html,.has-gmap .f-html{width:100%;height:100%;min-height:1px;overflow:visible}.has-pdf .f-html,.has-gmap .f-html{padding:0}.f-html{position:relative;box-sizing:border-box;margin:var(--f-html-margin, 0);padding:var(--f-html-padding, 2rem);color:var(--f-html-color, currentColor);background:var(--f-html-bg)}.is-loading>.f-html{opacity:0}.f-html.is-error{text-align:center}.f-iframe{display:block;margin:0;border:0;height:100%;width:100%}.f-caption{align-self:center;flex-shrink:0;margin:var(--f-caption-margin);padding:var(--f-caption-padding, 16px 8px);max-width:100%;max-height:calc(80vh - 100px);overflow:auto;overflow-wrap:anywhere;line-height:var(--f-caption-line-height);color:var(--f-caption-color);background:var(--f-caption-bg);font:var(--f-caption-font);text-wrap:balance}.has-html5video .f-html,.has-youtube .f-html,.has-vimeo .f-html{padding:0;width:100%;height:100%;min-height:1px;overflow:visible;max-width:var(--f-video-width, 960px);max-height:var(--f-video-height, 540px);aspect-ratio:var(--f-video-aspect-ratio);background:var(--f-video-bg, rgba(0, 0, 0, .9))}.f-html5video{border:0;display:block;height:100%;width:100%;background:transparent}.f-button.is-arrow{--f-button-width: var(--f-arrow-width, 46px);--f-button-height: var(--f-arrow-height, 46px);--f-button-svg-width: var(--f-arrow-svg-width, 24px);--f-button-svg-height: var(--f-arrow-svg-height, 24px);--f-button-svg-stroke-width: var(--f-arrow-svg-stroke-width, 1.75);--f-button-border-radius: var(--f-arrow-border-radius, unset);--f-button-bg: var(--f-arrow-bg, transparent);--f-button-hover-bg: var(--f-arrow-hover-bg, var(--f-arrow-bg));--f-button-active-bg: var(--f-arrow-active-bg, var(--f-arrow-hover-bg));--f-button-shadow: var(--f-arrow-shadow);--f-button-color: var(--f-arrow-color);--f-button-hover-color: var(--f-arrow-hover-color, var(--f-arrow-color));--f-button-active-color: var( --f-arrow-active-color, var(--f-arrow-hover-color) );overflow:visible}.f-button.is-arrow.is-prev,.f-button.is-arrow.is-next{position:absolute;transform:translate(0);z-index:20}.is-horizontal .f-button.is-arrow.is-prev,.is-horizontal .f-button.is-arrow.is-next{inset:50% auto auto;transform:translateY(-50%)}.is-horizontal.is-ltr .f-button.is-arrow.is-prev{left:var(--f-arrow-pos, 0)}.is-horizontal.is-ltr .f-button.is-arrow.is-next{right:var(--f-arrow-pos, 0)}.is-horizontal.is-rtl .f-button.is-arrow.is-prev{right:var(--f-arrow-pos, 0);transform:translateY(-50%) rotateY(180deg)}.is-horizontal.is-rtl .f-button.is-arrow.is-next{left:var(--f-arrow-pos, 0);transform:translateY(-50%) rotateY(180deg)}.is-vertical.is-ltr .f-button.is-arrow.is-prev,.is-vertical.is-rtl .f-button.is-arrow.is-prev{top:var(--f-arrow-pos, 0);right:auto;bottom:auto;left:50%;transform:translate(-50%)}.is-vertical.is-ltr .f-button.is-arrow.is-next,.is-vertical.is-rtl .f-button.is-arrow.is-next{top:auto;right:auto;bottom:var(--f-arrow-pos, 0);left:50%;transform:translate(-50%)}.is-vertical .f-button.is-arrow.is-prev svg,.is-vertical .f-button.is-arrow.is-next svg{transform:rotate(90deg)}.f-carousel__toolbar{display:grid;grid-template-columns:1fr auto 1fr;margin:var(--f-toolbar-margin, 0);padding:var(--f-toolbar-padding, 8px);line-height:var(--f-toolbar-line-height);background:var(--f-toolbar-bg, none);box-shadow:var(--f-toolbar-shadow, none);-webkit-backdrop-filter:var(--f-toolbar-backdrop-filter);backdrop-filter:var(--f-toolbar-backdrop-filter);position:relative;z-index:20;color:var(--f-toolbar-color, currentColor);font-size:var(--f-toolbar-font-size, 17px);font-weight:var(--f-toolbar-font-weight, inherit);font-family:var(--f-toolbar-font, -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif);text-shadow:var(--f-toolbar-text-shadow);text-align:center;font-variant-numeric:tabular-nums;-webkit-font-smoothing:subpixel-antialiased;white-space:nowrap;pointer-events:none}.f-carousel__toolbar.is-absolute{position:absolute;top:0;left:0;right:0}.f-carousel__toolbar .f-button:focus-visible{position:relative;z-index:1}.f-carousel__toolbar__column{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start;gap:var(--f-toolbar-gap, 0)}.f-carousel__toolbar__column.is-left{display:flex;justify-self:flex-start;justify-content:flex-start}.f-carousel__toolbar__column.is-middle{display:flex;justify-content:center}.f-carousel__toolbar__column.is-right{display:flex;justify-self:flex-end;justify-content:flex-end;flex-flow:nowrap}.f-carousel__toolbar__column{pointer-events:none}.f-carousel__toolbar__column>*{pointer-events:all}.f-counter{position:relative;display:flex;flex-direction:row;cursor:default;-webkit-user-select:none;user-select:none;margin:var(--f-counter-margin, 0);padding:var(--f-counter-padding, 4px);line-height:var(--f-counter-line-height);background:var(--f-counter-bg);border-radius:var(--f-counter-border-radius)}.f-counter span{padding:0 var(--f-counter-gap, 4px)}:root{--f-thumbs-gap: 8px;--f-thumbs-margin: 0;--f-thumbs-padding-x: 8px;--f-thumbs-padding-y: 8px;--f-thumbs-bg: transparent;--f-thumbs-transition: max-height .3s ease, max-width .3s ease, padding .3s ease;--f-thumbs-z-index: 1;--f-thumbs-viewport-padding-x: 0px;--f-thumbs-viewport-padding-y: 0px;--f-thumb-width: 94px;--f-thumb-height: 76px;--f-thumb-clip-width: 46px;--f-thumb-extra-gap: 16px;--f-thumb-opacity: 1;--f-thumb-transition: opacity .3s ease, transform .15s ease;--f-thumb-border: none;--f-thumb-border-radius: 4px;--f-thumb-shadow: none;--f-thumb-bg: linear-gradient(rgba(0, 0, 0, .1), rgba(0, 0, 0, .05));--f-thumb-focus-shadow: inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;--f-thumb-selected-shadow: inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;--f-thumb-border-transition: all .1s ease;--f-thumb-img-width: 100%;--f-thumb-img-height: 100%;--f-thumb-img-fit: cover;--f-thumb-img-position: 50% 20%}.f-thumbs{--f-carousel-slide-width: var(--f-thumb-width);--f-carousel-slide-height: var(--f-thumb-height);--f-carousel-gap: var(--f-thumbs-gap);position:relative;box-sizing:border-box;flex-shrink:0;margin:var(--f-thumbs-margin);padding:var(--f-thumbs-padding-y) var(--f-thumbs-padding-x);overflow:hidden;background:var(--f-thumbs-bg);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;transition:var(--f-thumbs-transition);z-index:var(--f-thumbs-z-index)}.f-thumbs.is-horizontal{max-height:calc(var(--f-carousel-slide-height) + var(--f-thumbs-padding-y) * 2)}.f-thumbs.is-horizontal.is-hidden{max-height:0;--f-thumbs-padding-y: 0}.f-thumbs.is-vertical{max-width:calc(var(--f-carousel-slide-width) + var(--f-thumbs-padding-x) * 2)}.f-thumbs.is-vertical.is-hidden{max-width:0;--f-thumbs-padding-x: 0}.f-thumbs.is-scrollable.is-hidden{max-height:0;--f-thumbs-padding-y: 0}.f-thumbs.is-ltr{direction:ltr}.f-thumbs.is-rtl{direction:rtl}.f-thumbs img{display:block;width:var(--f-thumb-img-width);height:var(--f-thumb-img-height);object-fit:var(--f-thumb-img-fit);object-position:var(--f-thumb-img-position);pointer-events:none;border-radius:inherit;color:transparent}.f-thumbs img[data-lazy-src]{visibility:hidden}.f-thumbs img.has-lazyerror{display:none}.f-thumbs__viewport{box-sizing:border-box;height:100%;padding:var(--f-thumbs-viewport-padding-y) var(--f-thumbs-viewport-padding-x);overflow:visible;display:grid}.f-thumbs__slide{position:relative;box-sizing:border-box;grid-area:1/1;width:var(--f-carousel-slide-width);height:var(--f-carousel-slide-height);margin:0;padding:0;display:flex;align-items:center;flex-direction:column;cursor:pointer;overflow:visible}.f-thumbs__slide:hover button{opacity:var(--f-thumb-hover-opacity, 1);transform:var(--f-thumb-hover-transform, none)}.f-thumbs__slide:hover button:after{border:var(--f-thumb-hover-border, none);box-shadow:var(--f-thumb-hover-shadow, var(--f-thumb-shadow))}.f-thumbs__slide button{all:unset;display:block;margin:auto;padding:0;position:relative;overflow:visible;width:100%;height:100%;outline:none;transition:var(--f-thumb-transition);border-radius:var(--f-thumb-border-radius);opacity:var(--f-thumb-opacity);transform:var(--f-thumb-transform);background:var(--f-thumb-bg)}.f-thumbs__slide button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;transition:var(--f-thumb-border-transition);border-radius:inherit;border:var(--f-thumb-border);box-shadow:var(--f-thumb-shadow)}.f-thumbs__slide button:focus-within{opacity:var(--f-thumb-focus-opacity, 1);transform:var(--f-thumb-focus-transform, none)}.f-thumbs__slide button:focus-within:after{border:var(--f-thumb-focus-border, none);box-shadow:var(--f-thumb-focus-shadow, var(--f-thumb-shadow))}.f-thumbs__slide:active{opacity:var(--f-thumb-active-opacity, 1);transform:var(--f-thumb-active-transform, none)}.f-thumbs__slide:active:after{border:var(--f-thumb-active-border, none);box-shadow:var(--f-thumb-active-shadow, var(--f-thumb-shadow))}.f-thumbs__slide.is-selected{z-index:2}.f-thumbs__slide.is-selected button{opacity:var(--f-thumb-selected-opacity, 1);transform:var(--f-thumb-selected-transform, none)}.f-thumbs__slide.is-selected button:after{border:var(--f-thumb-selected-border, none);box-shadow:var(--f-thumb-selected-shadow, var(--f-thumb-shadow))}.f-thumbs.is-modern{--f-carousel-slide-width: calc( var(--f-thumb-clip-width) + var(--f-thumbs-gap) );--f-carousel-slide-height: var(--f-thumb-height);--f-carousel-gap: 0;--width-diff: calc((var(--f-thumb-width) - var(--f-thumb-clip-width)))}.f-thumbs.is-modern .f-thumbs__viewport{width:calc(100% + var(--f-carousel-slide-width) * 2 + var(--f-thumbs-padding-x));margin-inline:calc((var(--f-carousel-slide-width) + var(--f-thumbs-padding-x)) * -1)}.f-thumbs.is-modern .f-thumbs__slide{--clip-shift: calc((var(--width-diff) * .5) * var(--progress));--clip-path: inset( 0 var(--clip-shift) round var(--f-thumb-border-radius, 0) );padding:0;overflow:visible;left:var(--shift, 0);will-change:left;transition:left var(--f-transition-duration) var(--f-transition-easing)}.f-thumbs.is-modern .f-thumbs__slide button{display:block;margin-inline:50%;width:var(--f-thumb-width);clip-path:var(--clip-path);border:none;box-shadow:none;transition:clip-path var(--f-transition-duration) var(--f-transition-easing),opacity var(--f-thumb-transition-duration, .2s) var(--f-thumb-transition-easing, ease)}.f-thumbs.is-modern .f-thumbs__slide button:after{display:none}.f-thumbs.is-modern .f-thumbs__slide:focus:not(:focus-visible){outline:none}.f-thumbs.is-modern .f-thumbs__slide:focus-within:not(.is-selected) button:before{content:"";position:absolute;z-index:1;top:0;left:var(--clip-shift);bottom:0;right:var(--clip-shift);transition:border var(--f-transition-duration) var(--f-transition-easing),box-shadow var(--f-transition-duration) var(--f-transition-easing);border-radius:inherit;border:var(--f-thumb-focus-border, none);box-shadow:var(--f-thumb-focus-shadow, none)}.f-thumbs.is-modern{--f-transition-duration: .25s;--f-transition-easing: ease-out}.f-thumbs.is-modern.is-syncing{--f-transition-duration: 0s}.f-thumbs.is-scrollable .f-thumbs__viewport{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--f-thumb-width),1fr));grid-auto-rows:var(--f-thumb-height);gap:var(--f-thumbs-gap);overflow:auto;overscroll-behavior:contain;-webkit-user-select:none;user-select:none}.f-thumbs.is-scrollable .f-thumbs__viewport .f-thumbs__slide{grid-area:auto;display:block;position:relative;max-width:100%;width:var(--f-thumb-width);height:var(--f-thumb-height);cursor:pointer;outline:none}:root{--f-progressbar-height: 3px;--f-progressbar-color: var(--f-carousel-theme-color, #575ad6);--f-progressbar-opacity: 1;--f-progressbar-z-index: 30}.f-progressbar{position:absolute;top:0;left:0;right:0;z-index:var(--f-progressbar-z-index);height:var(--f-progressbar-height);transform:scaleX(0);transform-origin:0;opacity:var(--f-progressbar-opacity);background:var(--f-progressbar-color);-webkit-user-select:none;user-select:none;pointer-events:none;animation-name:f-progressbar;animation-play-state:running;animation-timing-function:linear}.f-progressbar:empty{display:block}button>.f-progressbar{--f-progressbar-height: 100%;--f-progressbar-opacity: .2}@keyframes f-progressbar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}[data-fullscreen-action=toggle] svg g:first-child{display:flex}[data-fullscreen-action=toggle] svg g:last-child{display:none}:fullscreen [data-fullscreen-action=toggle] svg g:first-child{display:none}:fullscreen [data-fullscreen-action=toggle] svg g:last-child{display:flex}.in-fullscreen-mode>.f-carousel{flex:1;min-width:0!important;min-height:0!important}html.with-fancybox{width:auto;overflow:visible;scroll-behavior:auto}html.with-fancybox body.hide-scrollbar{width:auto;margin-right:calc(var(--f-body-margin, 0px) + var(--f-scrollbar-compensate, 0px));overflow:hidden!important;overscroll-behavior-y:none}.fancybox__dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;width:100%;height:100vh;max-height:unset;max-width:unset;padding:0;margin:0;border:0;overflow:hidden;background:transparent;touch-action:none;overscroll-behavior:contain}.fancybox__dialog:focus{outline:none}.fancybox__dialog::backdrop{opacity:0}@supports (height: 100dvh){.fancybox__dialog{height:100dvh}}.fancybox__dialog *:empty{display:block}.fancybox__container{--fancybox-color: #dbdbdb;--fancybox-backdrop-bg: rgba(24, 24, 27, .95);--f-toolbar-margin: 0;--f-toolbar-padding: 8px;--f-toolbar-gap: 0;--f-toolbar-color: #ddd;--f-toolbar-font-size: 16px;--f-toolbar-font-weight: 500;--f-toolbar-font: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif;--f-toolbar-line-height: var(--f-button-height);--f-toolbar-text-shadow: 1px 1px 1px rgba(0, 0, 0, .75);--f-toolbar-shadow: none;--f-toolbar-bg: none;--f-counter-margin: 0;--f-counter-padding: 0px 10px;--f-counter-gap: 4px;--f-counter-line-height: var(--f-button-height);--f-carousel-gap: 17px;--f-carousel-slide-width: 100%;--f-carousel-slide-height: 100%;--f-carousel-slide-padding: 0;--f-carousel-slide-bg: unset;--f-html-color: #222;--f-html-bg: #fff;--f-error-color: #fff;--f-error-bg: #333;--f-caption-margin: 0;--f-caption-padding: 16px 8px;--f-caption-color: var(--fancybox-color, #dbdbdb);--f-caption-bg: transparent;--f-caption-font: inherit;--f-caption-line-height: 1.375;--f-spinner-color-1: rgba(255, 255, 255, .2);--f-spinner-color-2: rgba(255, 255, 255, .8);--f-spinner-width: 50px;--f-spinner-height: 50px;--f-spinner-border-radius: 50%;--f-spinner-border-width: 4px;--f-progressbar-color: rgba(255, 255, 255);--f-button-width: 46px;--f-button-height: 46px;--f-button-color: #ddd;--f-button-hover-color: #fff;--f-button-outline-width: 1px;--f-button-outline-color: rgba(255, 255, 255, .75);--f-button-outline-offset: 0px;--f-button-bg: rgba(54, 54, 54, .75);--f-button-border: 0;--f-button-border-radius: 0;--f-button-shadow: none;--f-button-transition: all .2s ease;--f-button-transform: none;--f-button-svg-width: 24px;--f-button-svg-height: 24px;--f-button-svg-stroke-width: 1.75;--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, .01)), drop-shadow(1px 2px 1px rgba(24, 24, 27, .05));--f-button-svg-fill: none;--f-button-svg-disabled-opacity: .5;--f-arrow-pos: 32px;--f-arrow-width: 50px;--f-arrow-height: 50px;--f-arrow-svg-width: 24px;--f-arrow-svg-height: 24px;--f-arrow-svg-stroke-width: 2.5;--f-arrow-border-radius: 50%;--f-arrow-bg: rgba(54, 54, 54, .65);--f-arrow-color: #ddd;--f-arrow-hover-color: #fff;--f-close-button-width: 30px;--f-close-button-height: 30px;--f-close-button-svg-width: 24px;--f-close-button-svg-height: 24px;--f-close-button-svg-stroke-width: 1.75;--f-close-border-radius: 4px;--f-close-button-color: #fff;--f-close-button-hover-color: #fff;--f-close-button-bg: transparent;--f-close-button-hover-bg: transparent;--f-close-button-active-bg: transparent;--f-thumbs-margin: 0px;--f-thumbs-padding-x: 8px;--f-thumbs-padding-y: 8px;--f-thumbs-bg: none;--f-thumb-transition: all .2s ease;--f-thumb-width: 94px;--f-thumb-height: 76px;--f-thumb-opacity: 1;--f-thumb-border: none;--f-thumb-shadow: none;--f-thumb-transform: none;--f-thumb-focus-opacity: 1;--f-thumb-focus-border: none;--f-thumb-focus-shadow: inset 0 0 0 2px rgba(255, 255, 255, .65);--f-thumb-focus-transform: none;--f-thumb-hover-opacity: 1;--f-thumb-hover-border: none;--f-thumb-hover-transform: none;--f-thumb-active-opacity: var(--f-thumb-hover-opacity);--f-thumb-active-border: var(--f-thumb-hover-border);--f-thumb-active-transform: var(--f-thumb-hover-transform);--f-thumb-selected-opacity: 1;--f-thumb-selected-border: none;--f-thumb-selected-shadow: inset 0 0 0 2px #fff;--f-thumb-selected-transform: none;--f-scrollbar-width: 7px;--f-scrollbar-track-bg: #444;--f-scrollbar-track-border-radius: 10px;--f-scrollbar-track-shadow: inset 0 0 6px rgba(0, 0, 0, .2);--f-scrollbar-thumb-bg: #ddd;--f-scrollbar-thumb-border-radius: 10px}.fancybox__container[theme=light]{--fancybox-color: #222;--fancybox-backdrop-bg: rgba(255, 255, 255, .97);--f-toolbar-color: var(--fancybox-color, #222);--f-toolbar-text-shadow: none;--f-toolbar-font-weight: 400;--f-html-color: var(--fancybox-color, #222);--f-html-bg: #fff;--f-error-color: #555;--f-error-bg: #fff;--f-video-bg: #fff;--f-caption-color: #333;--f-spinner-color-1: rgba(0, 0, 0, .2);--f-spinner-color-2: rgba(0, 0, 0, .8);--f-spinner-border-width: 3.5px;--f-progressbar-color: rgba(111, 111, 116);--f-button-color: #333;--f-button-hover-color: #000;--f-button-outline-color: rgba(0, 0, 0, .85);--f-button-bg: rgba(255, 255, 255, .85);--f-button-svg-stroke-width: 1.3;--f-button-svg-filter: none;--f-arrow-bg: rgba(255, 255, 255, .85);--f-arrow-color: #333;--f-arrow-hover-color: #000;--f-arrow-svg-stroke-width: 1.3;--f-close-button-color: #555;--f-close-button-hover-color: #000;--f-thumb-bg: linear-gradient(#ebeff2, #e2e8f0);--f-thumb-focus-shadow: 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #888;--f-thumb-selected-shadow: 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #000;--f-scrollbar-track-bg: #ddd;--f-scrollbar-thumb-bg: #444}.fancybox__container{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;display:flex;flex-direction:column}.fancybox__container:focus{outline:none}.fancybox__container.has-vertical-thumbs{flex-direction:row-reverse}.fancybox__container.has-vertical-thumbs:not(.is-closing) .fancybox__viewport{overflow-x:clip;overflow-y:visible}.fancybox__container>*:not(.fancybox__carousel),.fancybox__container .fancybox__carousel>*:not(.fancybox__grid,.fancybox__viewport),.fancybox__container .fancybox__column>*:not(.fancybox__viewport),.fancybox__container .fancybox__slide:not(.is-selected),.fancybox__container .fancybox__slide.is-selected>*:not(.f-html,.f-panzoom__wrapper,.f-spinner){opacity:var(--f-drag-opacity, 1)}.fancybox__container:not(.is-ready,.is-hiding){visibility:hidden}.fancybox__container.is-revealing>*:not(.fancybox__carousel),.fancybox__container.is-revealing .fancybox__carousel>*:not(.fancybox__grid,.fancybox__viewport),.fancybox__container.is-revealing .fancybox__column>*:not(.fancybox__viewport),.fancybox__container.is-revealing .fancybox__slide:not(.is-selected),.fancybox__container.is-revealing .fancybox__slide.is-selected>*:not(.f-html,.f-panzoom__wrapper){animation:var(--f-interface-enter-duration, .35s) ease none f-fadeIn}.fancybox__container.is-hiding>*:not(.fancybox__carousel),.fancybox__container.is-hiding .fancybox__carousel>*:not(.fancybox__grid,.fancybox__viewport),.fancybox__container.is-hiding .fancybox__column>*:not(.fancybox__viewport),.fancybox__container.is-hiding .fancybox__slide.is-selected>*:not(.f-html,.f-panzoom__wrapper){animation:var(--f-interface-exit-duration, .35s) ease forwards f-fadeOut}.fancybox__container.is-hiding .fancybox__carousel .fancybox__slide:not(.is-selected){opacity:0}.fancybox__container.is-hiding{pointer-events:none}.fancybox__container.is-idle .f-carousel__toolbar{pointer-events:none;opacity:0}.fancybox__container.is-idle .f-button.is-arrow{opacity:0}.fancybox__container.is-idle.is-ready .f-carousel__toolbar{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__container.is-idle.is-ready .f-button.is-arrow{animation:.15s ease-out both f-fadeOut}.fancybox__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--fancybox-backdrop-bg);filter:var(--fancybox-backdrop-filter)}.fancybox__carousel{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0;position:relative;z-index:10;overflow-y:visible;overflow-x:clip}.fancybox__carousel.is-vertical{--f-carousel-slide-height: 100%}.fancybox__carousel.is-ltr{direction:ltr}.fancybox__carousel.is-rtl{direction:rtl}.fancybox__carousel>.f-button.is-arrow:before{position:absolute;content:"";top:-30px;right:-30px;bottom:-30px;left:-30px;z-index:1}.fancybox__viewport{display:grid;flex:1;min-height:0;min-width:0;position:relative;overflow:visible;transform:translate3d(0,var(--f-drag-offset, 0),0)}.fancybox__viewport.is-draggable{cursor:move;cursor:grab}.fancybox__viewport.is-dragging{cursor:move;cursor:grabbing}.fancybox__viewport [data-selectable],.fancybox__viewport [contenteditable]{cursor:auto}.fancybox__slide{box-sizing:border-box;position:relative;grid-area:1/1;display:flex;align-items:center;flex-direction:column;width:var(--f-carousel-slide-width);height:var(--f-carousel-slide-height);min-width:0;min-height:0;max-width:100%;margin:0;padding:var(--f-carousel-slide-padding);background:var(--f-carousel-slide-bg);backface-visibility:hidden;transform:translateZ(0);will-change:transform}.fancybox__slide:before,.fancybox__slide:after{display:block;content:""}.fancybox__slide:before{margin-bottom:auto}.fancybox__slide:after{margin-top:auto}.fancybox__slide.is-selected{z-index:1}.fancybox__slide.f-zoomable{overflow:visible}.fancybox__slide.has-error{--f-html-color: var(--f-error-color, --f-html-color);--f-html-bg: var(--f-error-bg, --f-html-bg)}.fancybox__slide.has-html{overflow:auto;padding:8px}.fancybox__slide.has-iframe{overflow:hidden;padding:8px 0}.fancybox__slide.has-close-btn{padding-top:34px}.fancybox__slide.has-controls:before{margin:0}.fancybox__slide .f-spinner{cursor:pointer}.fancybox__container.is-closing .f-caption,.fancybox__slide.is-loading .f-caption{visibility:hidden}.fancybox__container.is-closing .fancybox__carousel,.fancybox__container.is-closing .fancybox__viewport,.fancybox__container.is-closing .fancybox__slide.is-selected{overflow:visible}.f-button.is-close-button{--f-button-width: var(--f-close-button-width);--f-button-height: var(--f-close-button-height);--f-button-border-radius: var(--f-close-border-radius);--f-button-color: var(--f-close-button-color);--f-button-hover-color: var(--f-close-button-hover-color);--f-button-bg: var(--f-close-button-bg);--f-button-hover-bg: var(--f-close-button-hover-bg);--f-button-active-bg: var(--f-close-button-active-bg);--f-button-svg-width: var(--f-close-button-svg-width);--f-button-svg-height: var(--f-close-button-svg-height);--f-button-svg-stroke-width: var(--f-close-button-svg-stroke-width);position:absolute;top:calc((var(--f-button-height) + 2px) * -1);right:0;z-index:10}.is-loading .f-button.is-close-button{visibility:hidden}.fancybox__thumbs{flex:0 1 100%}.fancybox__thumbs.is-scrollable{--f-thumbs-cols: 1;--f-thumbs-gap: 8px;--f-thumbs-transition: none;--f-thumbs-padding-x: 4px;--f-thumbs-padding-y: 8px;--f-thumbs-viewport-padding-x: 4px;--f-thumbs-viewport-padding-y: 0px;max-width:calc(var(--f-thumb-width) * var(--f-thumbs-cols) + var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1) + var(--f-thumbs-padding-x) * 2 + var(--f-thumbs-viewport-padding-x) * 2)}.fancybox__thumbs.is-scrollable ::-webkit-scrollbar{width:var(--f-scrollbar-width)}.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-track{background:var(--f-scrollbar-track-bg);border-radius:var(--f-scrollbar-track-border-radius);box-shadow:var(--f-scrollbar-track-shadow)}.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-thumb{background:var(--f-scrollbar-thumb-bg);border-radius:var(--f-scrollbar-thumb-border-radius)}.fancybox__thumbs.is-scrollable.is-hidden{max-width:0;--f-thumbs-padding-x: 0;max-height:unset;--f-thumbs-padding-y: unset}.fancybox__thumbs.is-scrollable .f-thumbs__viewport{overflow-x:hidden!important;grid-template-columns:repeat(auto-fill,calc((100% - var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1)) / var(--f-thumbs-cols)))!important}@keyframes plyr-progress{to{background-position:25px 0;background-position:var(--plyr-progress-loading-size,25px) 0}}@keyframes plyr-popup{0%{opacity:.5;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes plyr-fade-in{0%{opacity:0}to{opacity:1}}.plyr{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;align-items:center;direction:ltr;display:flex;flex-direction:column;font-family:inherit;font-family:var(--plyr-font-family,inherit);font-variant-numeric:tabular-nums;font-weight:400;font-weight:var(--plyr-font-weight-regular,400);line-height:1.7;line-height:var(--plyr-line-height,1.7);max-width:100%;min-width:200px;position:relative;text-shadow:none;transition:box-shadow .3s ease;z-index:0}.plyr audio,.plyr iframe,.plyr video{display:block;height:100%;width:100%}.plyr button{font:inherit;line-height:inherit;width:auto}.plyr:focus{outline:0}.plyr--full-ui{box-sizing:border-box}.plyr--full-ui *,.plyr--full-ui :after,.plyr--full-ui :before{box-sizing:inherit}.plyr--full-ui a,.plyr--full-ui button,.plyr--full-ui input,.plyr--full-ui label{touch-action:manipulation}.plyr__badge{background:#4a5464;background:var(--plyr-badge-background,#4a5464);border-radius:2px;border-radius:var(--plyr-badge-border-radius,2px);color:#fff;color:var(--plyr-badge-text-color,#fff);font-size:9px;font-size:var(--plyr-font-size-badge,9px);line-height:1;padding:3px 4px}.plyr--full-ui ::-webkit-media-text-track-container{display:none}.plyr__captions{animation:plyr-fade-in .3s ease;bottom:0;display:none;font-size:13px;font-size:var(--plyr-font-size-small,13px);left:0;padding:10px;padding:var(--plyr-control-spacing,10px);position:absolute;text-align:center;transition:transform .4s ease-in-out;width:100%}.plyr__captions span:empty{display:none}@media(min-width:480px){.plyr__captions{font-size:15px;font-size:var(--plyr-font-size-base,15px);padding:20px;padding:calc(var(--plyr-control-spacing, 10px)*2)}}@media(min-width:768px){.plyr__captions{font-size:18px;font-size:var(--plyr-font-size-large,18px)}}.plyr--captions-active .plyr__captions{display:block}.plyr:not(.plyr--hide-controls) .plyr__controls:not(:empty)~.plyr__captions{transform:translateY(-40px);transform:translateY(calc(var(--plyr-control-spacing, 10px)*-4))}.plyr__caption{background:#000c;background:var(--plyr-captions-background,#000c);border-radius:4px;-webkit-box-decoration-break:clone;box-decoration-break:clone;color:#fff;color:var(--plyr-captions-text-color,#fff);line-height:185%;padding:.2em .5em;white-space:pre-wrap}.plyr__caption div{display:inline}.plyr__control{background:#0000;border:0;border-radius:4px;border-radius:var(--plyr-control-radius,4px);color:inherit;cursor:pointer;flex-shrink:0;overflow:visible;padding:7px;padding:calc(var(--plyr-control-spacing, 10px)*.7);position:relative;transition:all .1s ease-in-out}.plyr__control svg{display:block;fill:currentColor;height:18px;height:var(--plyr-control-icon-size,18px);pointer-events:none;width:18px;width:var(--plyr-control-icon-size,18px)}.plyr__control:focus{outline:0}.plyr__control:focus-visible{outline:2px dashed #00b2ff;outline:2px dashed var(--plyr-focus-visible-color,var(--plyr-color-main,var(--plyr-color-main,#00b2ff)));outline-offset:2px}a.plyr__control{text-decoration:none}.plyr__control.plyr__control--pressed .icon--not-pressed,.plyr__control.plyr__control--pressed .label--not-pressed,.plyr__control:not(.plyr__control--pressed) .icon--pressed,.plyr__control:not(.plyr__control--pressed) .label--pressed,a.plyr__control:after,a.plyr__control:before{display:none}.plyr--full-ui ::-webkit-media-controls{display:none}.plyr__controls{align-items:center;display:flex;justify-content:flex-end;text-align:center}.plyr__controls .plyr__progress__container{flex:1;min-width:0}.plyr__controls .plyr__controls__item{margin-left:2.5px;margin-left:calc(var(--plyr-control-spacing, 10px)/4)}.plyr__controls .plyr__controls__item:first-child{margin-left:0;margin-right:auto}.plyr__controls .plyr__controls__item.plyr__progress__container{padding-left:2.5px;padding-left:calc(var(--plyr-control-spacing, 10px)/4)}.plyr__controls .plyr__controls__item.plyr__time{padding:0 5px;padding:0 calc(var(--plyr-control-spacing, 10px)/2)}.plyr__controls .plyr__controls__item.plyr__progress__container:first-child,.plyr__controls .plyr__controls__item.plyr__time+.plyr__time,.plyr__controls .plyr__controls__item.plyr__time:first-child{padding-left:0}.plyr [data-plyr=airplay],.plyr [data-plyr=captions],.plyr [data-plyr=fullscreen],.plyr [data-plyr=pip],.plyr__controls:empty{display:none}.plyr--airplay-supported [data-plyr=airplay],.plyr--captions-enabled [data-plyr=captions],.plyr--fullscreen-enabled [data-plyr=fullscreen],.plyr--pip-supported [data-plyr=pip]{display:inline-block}.plyr__menu{display:flex;position:relative}.plyr__menu .plyr__control svg{transition:transform .3s ease}.plyr__menu .plyr__control[aria-expanded=true] svg{transform:rotate(90deg)}.plyr__menu .plyr__control[aria-expanded=true] .plyr__tooltip{display:none}.plyr__menu__container{animation:plyr-popup .2s ease;background:#ffffffe6;background:var(--plyr-menu-background,#ffffffe6);border-radius:8px;border-radius:var(--plyr-menu-radius,8px);bottom:100%;box-shadow:0 1px 2px #00000026;box-shadow:var(--plyr-menu-shadow,0 1px 2px #00000026);color:#4a5464;color:var(--plyr-menu-color,#4a5464);font-size:15px;font-size:var(--plyr-font-size-base,15px);margin-bottom:10px;position:absolute;right:-3px;text-align:left;white-space:nowrap;z-index:3}.plyr__menu__container>div{overflow:hidden;transition:height .35s cubic-bezier(.4,0,.2,1),width .35s cubic-bezier(.4,0,.2,1)}.plyr__menu__container:after{border:4px solid #0000;border-top-color:#ffffffe6;border:var(--plyr-menu-arrow-size,4px) solid #0000;border-top-color:var(--plyr-menu-background,#ffffffe6);content:"";height:0;position:absolute;right:14px;right:calc(var(--plyr-control-icon-size, 18px)/2 + var(--plyr-control-spacing, 10px)*.7 - var(--plyr-menu-arrow-size, 4px)/2);top:100%;width:0}.plyr__menu__container [role=menu]{padding:7px;padding:calc(var(--plyr-control-spacing, 10px)*.7)}.plyr__menu__container [role=menuitem],.plyr__menu__container [role=menuitemradio]{margin-top:2px}.plyr__menu__container [role=menuitem]:first-child,.plyr__menu__container [role=menuitemradio]:first-child{margin-top:0}.plyr__menu__container .plyr__control{align-items:center;color:#4a5464;color:var(--plyr-menu-color,#4a5464);display:flex;font-size:13px;font-size:var(--plyr-font-size-menu,var(--plyr-font-size-small,13px));padding:4.66667px 10.5px;padding:calc(var(--plyr-control-spacing, 10px)*.7/1.5) calc(var(--plyr-control-spacing, 10px)*.7*1.5);-webkit-user-select:none;user-select:none;width:100%}.plyr__menu__container .plyr__control>span{align-items:inherit;display:flex;width:100%}.plyr__menu__container .plyr__control:after{border:4px solid #0000;border:var(--plyr-menu-item-arrow-size,4px) solid #0000;content:"";position:absolute;top:50%;transform:translateY(-50%)}.plyr__menu__container .plyr__control--forward{padding-right:28px;padding-right:calc(var(--plyr-control-spacing, 10px)*.7*4)}.plyr__menu__container .plyr__control--forward:after{border-left-color:#728197;border-left-color:var(--plyr-menu-arrow-color,#728197);right:6.5px;right:calc(var(--plyr-control-spacing, 10px)*.7*1.5 - var(--plyr-menu-item-arrow-size, 4px))}.plyr__menu__container .plyr__control--forward:focus-visible:after,.plyr__menu__container .plyr__control--forward:hover:after{border-left-color:initial}.plyr__menu__container .plyr__control--back{font-weight:400;font-weight:var(--plyr-font-weight-regular,400);margin:7px;margin:calc(var(--plyr-control-spacing, 10px)*.7);margin-bottom:3.5px;margin-bottom:calc(var(--plyr-control-spacing, 10px)*.7/2);padding-left:28px;padding-left:calc(var(--plyr-control-spacing, 10px)*.7*4);position:relative;width:calc(100% - 14px);width:calc(100% - var(--plyr-control-spacing, 10px)*.7*2)}.plyr__menu__container .plyr__control--back:after{border-right-color:#728197;border-right-color:var(--plyr-menu-arrow-color,#728197);left:6.5px;left:calc(var(--plyr-control-spacing, 10px)*.7*1.5 - var(--plyr-menu-item-arrow-size, 4px))}.plyr__menu__container .plyr__control--back:before{background:#dcdfe5;background:var(--plyr-menu-back-border-color,#dcdfe5);box-shadow:0 1px #fff;box-shadow:0 1px 0 var(--plyr-menu-back-border-shadow-color,#fff);content:"";height:1px;left:0;margin-top:3.5px;margin-top:calc(var(--plyr-control-spacing, 10px)*.7/2);overflow:hidden;position:absolute;right:0;top:100%}.plyr__menu__container .plyr__control--back:focus-visible:after,.plyr__menu__container .plyr__control--back:hover:after{border-right-color:initial}.plyr__menu__container .plyr__control[role=menuitemradio]{padding-left:7px;padding-left:calc(var(--plyr-control-spacing, 10px)*.7)}.plyr__menu__container .plyr__control[role=menuitemradio]:after,.plyr__menu__container .plyr__control[role=menuitemradio]:before{border-radius:100%}.plyr__menu__container .plyr__control[role=menuitemradio]:before{background:#0000001a;content:"";display:block;flex-shrink:0;height:16px;margin-right:10px;margin-right:var(--plyr-control-spacing,10px);transition:all .3s ease;width:16px}.plyr__menu__container .plyr__control[role=menuitemradio]:after{background:#fff;border:0;height:6px;left:12px;opacity:0;top:50%;transform:translateY(-50%) scale(0);transition:transform .3s ease,opacity .3s ease;width:6px}.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]:before{background:#00b2ff;background:var(--plyr-control-toggle-checked-background,var(--plyr-color-main,var(--plyr-color-main,#00b2ff)))}.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]:after{opacity:1;transform:translateY(-50%) scale(1)}.plyr__menu__container .plyr__control[role=menuitemradio]:focus-visible:before,.plyr__menu__container .plyr__control[role=menuitemradio]:hover:before{background:#23282f1a}.plyr__menu__container .plyr__menu__value{align-items:center;display:flex;margin-left:auto;margin-right:-5px;margin-right:calc(var(--plyr-control-spacing, 10px)*.7*-1 - -2px);overflow:hidden;padding-left:24.5px;padding-left:calc(var(--plyr-control-spacing, 10px)*.7*3.5);pointer-events:none}.plyr--full-ui input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#0000;border:0;border-radius:26px;border-radius:calc(var(--plyr-range-thumb-height, 13px)*2);color:#00b2ff;color:var(--plyr-range-fill-background,var(--plyr-color-main,var(--plyr-color-main,#00b2ff)));display:block;height:19px;height:calc(var(--plyr-range-thumb-active-shadow-width, 3px)*2 + var(--plyr-range-thumb-height, 13px));margin:0;min-width:0;padding:0;transition:box-shadow .3s ease;width:100%}.plyr--full-ui input[type=range]::-webkit-slider-runnable-track{background:#0000;background-image:linear-gradient(90deg,currentColor 0,#0000 0);background-image:linear-gradient(to right,currentColor var(--value,0),#0000 var(--value,0));border:0;border-radius:2.5px;border-radius:calc(var(--plyr-range-track-height, 5px)/2);height:5px;height:var(--plyr-range-track-height,5px);-webkit-transition:box-shadow .3s ease;transition:box-shadow .3s ease;-webkit-user-select:none;user-select:none}.plyr--full-ui input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;background:var(--plyr-range-thumb-background,#fff);border:0;border-radius:100%;box-shadow:0 1px 1px #23282f26,0 0 0 1px #23282f33;box-shadow:var(--plyr-range-thumb-shadow,0 1px 1px #23282f26,0 0 0 1px #23282f33);height:13px;height:var(--plyr-range-thumb-height,13px);margin-top:-4px;margin-top:calc((var(--plyr-range-thumb-height, 13px) - var(--plyr-range-track-height, 5px))/2*-1);position:relative;-webkit-transition:all .2s ease;transition:all .2s ease;width:13px;width:var(--plyr-range-thumb-height,13px)}.plyr--full-ui input[type=range]::-moz-range-track{background:#0000;border:0;border-radius:2.5px;border-radius:calc(var(--plyr-range-track-height, 5px)/2);height:5px;height:var(--plyr-range-track-height,5px);-moz-transition:box-shadow .3s ease;transition:box-shadow .3s ease;-webkit-user-select:none;user-select:none}.plyr--full-ui input[type=range]::-moz-range-thumb{background:#fff;background:var(--plyr-range-thumb-background,#fff);border:0;border-radius:100%;box-shadow:0 1px 1px #23282f26,0 0 0 1px #23282f33;box-shadow:var(--plyr-range-thumb-shadow,0 1px 1px #23282f26,0 0 0 1px #23282f33);height:13px;height:var(--plyr-range-thumb-height,13px);position:relative;-moz-transition:all .2s ease;transition:all .2s ease;width:13px;width:var(--plyr-range-thumb-height,13px)}.plyr--full-ui input[type=range]::-moz-range-progress{background:currentColor;border-radius:2.5px;border-radius:calc(var(--plyr-range-track-height, 5px)/2);height:5px;height:var(--plyr-range-track-height,5px)}.plyr--full-ui input[type=range]::-ms-track{color:#0000}.plyr--full-ui input[type=range]::-ms-fill-upper,.plyr--full-ui input[type=range]::-ms-track{background:#0000;border:0;border-radius:2.5px;border-radius:calc(var(--plyr-range-track-height, 5px)/2);height:5px;height:var(--plyr-range-track-height,5px);-ms-transition:box-shadow .3s ease;transition:box-shadow .3s ease;-webkit-user-select:none;user-select:none}.plyr--full-ui input[type=range]::-ms-fill-lower{background:#0000;background:currentColor;border:0;border-radius:2.5px;border-radius:calc(var(--plyr-range-track-height, 5px)/2);height:5px;height:var(--plyr-range-track-height,5px);-ms-transition:box-shadow .3s ease;transition:box-shadow .3s ease;-webkit-user-select:none;user-select:none}.plyr--full-ui input[type=range]::-ms-thumb{background:#fff;background:var(--plyr-range-thumb-background,#fff);border:0;border-radius:100%;box-shadow:0 1px 1px #23282f26,0 0 0 1px #23282f33;box-shadow:var(--plyr-range-thumb-shadow,0 1px 1px #23282f26,0 0 0 1px #23282f33);height:13px;height:var(--plyr-range-thumb-height,13px);margin-top:0;position:relative;-ms-transition:all .2s ease;transition:all .2s ease;width:13px;width:var(--plyr-range-thumb-height,13px)}.plyr--full-ui input[type=range]::-ms-tooltip{display:none}.plyr--full-ui input[type=range]::-moz-focus-outer{border:0}.plyr--full-ui input[type=range]:focus{outline:0}.plyr--full-ui input[type=range]:focus-visible::-webkit-slider-runnable-track{outline:2px dashed #00b2ff;outline:2px dashed var(--plyr-focus-visible-color,var(--plyr-color-main,var(--plyr-color-main,#00b2ff)));outline-offset:2px}.plyr--full-ui input[type=range]:focus-visible::-moz-range-track{outline:2px dashed #00b2ff;outline:2px dashed var(--plyr-focus-visible-color,var(--plyr-color-main,var(--plyr-color-main,#00b2ff)));outline-offset:2px}.plyr--full-ui input[type=range]:focus-visible::-ms-track{outline:2px dashed #00b2ff;outline:2px dashed var(--plyr-focus-visible-color,var(--plyr-color-main,var(--plyr-color-main,#00b2ff)));outline-offset:2px}.plyr__poster{background-color:#000;background-color:var(--plyr-video-background,var(--plyr-video-background,#000));background-position:50% 50%;background-repeat:no-repeat;background-size:contain;height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .2s ease;width:100%;z-index:1}.plyr--stopped.plyr__poster-enabled .plyr__poster{opacity:1}.plyr--youtube.plyr--paused.plyr__poster-enabled:not(.plyr--stopped) .plyr__poster{display:none}.plyr__time{font-size:13px;font-size:var(--plyr-font-size-time,var(--plyr-font-size-small,13px))}.plyr__time+.plyr__time:before{content:"⁄";margin-right:10px;margin-right:var(--plyr-control-spacing,10px)}@media(max-width:767px){.plyr__time+.plyr__time{display:none}}.plyr__tooltip{background:#fff;background:var(--plyr-tooltip-background,#fff);border-radius:5px;border-radius:var(--plyr-tooltip-radius,5px);bottom:100%;box-shadow:0 1px 2px #00000026;box-shadow:var(--plyr-tooltip-shadow,0 1px 2px #00000026);color:#4a5464;color:var(--plyr-tooltip-color,#4a5464);font-size:13px;font-size:var(--plyr-font-size-small,13px);font-weight:400;font-weight:var(--plyr-font-weight-regular,400);left:50%;line-height:1.3;margin-bottom:10px;margin-bottom:calc(var(--plyr-control-spacing, 10px)/2*2);opacity:0;padding:5px 7.5px;padding:calc(var(--plyr-control-spacing, 10px)/2) calc(var(--plyr-control-spacing, 10px)/2*1.5);pointer-events:none;position:absolute;transform:translate(-50%,10px) scale(.8);transform-origin:50% 100%;transition:transform .2s ease .1s,opacity .2s ease .1s;white-space:nowrap;z-index:2}.plyr__tooltip:before{border-left:4px solid #0000;border-left:var(--plyr-tooltip-arrow-size,4px) solid #0000;border-right:4px solid #0000;border-right:var(--plyr-tooltip-arrow-size,4px) solid #0000;border-top:4px solid #fff;border-top:var(--plyr-tooltip-arrow-size,4px) solid var(--plyr-tooltip-background,#fff);bottom:-4px;bottom:calc(var(--plyr-tooltip-arrow-size, 4px)*-1);content:"";height:0;left:50%;position:absolute;transform:translate(-50%);width:0;z-index:2}.plyr .plyr__control:focus-visible .plyr__tooltip,.plyr .plyr__control:hover .plyr__tooltip,.plyr__tooltip--visible{opacity:1;transform:translate(-50%) scale(1)}.plyr .plyr__control:hover .plyr__tooltip{z-index:3}.plyr__controls>.plyr__control:first-child .plyr__tooltip,.plyr__controls>.plyr__control:first-child+.plyr__control .plyr__tooltip{left:0;transform:translateY(10px) scale(.8);transform-origin:0 100%}.plyr__controls>.plyr__control:first-child .plyr__tooltip:before,.plyr__controls>.plyr__control:first-child+.plyr__control .plyr__tooltip:before{left:16px;left:calc(var(--plyr-control-icon-size, 18px)/2 + var(--plyr-control-spacing, 10px)*.7)}.plyr__controls>.plyr__control:last-child .plyr__tooltip{left:auto;right:0;transform:translateY(10px) scale(.8);transform-origin:100% 100%}.plyr__controls>.plyr__control:last-child .plyr__tooltip:before{left:auto;right:16px;right:calc(var(--plyr-control-icon-size, 18px)/2 + var(--plyr-control-spacing, 10px)*.7);transform:translate(50%)}.plyr__controls>.plyr__control:first-child .plyr__tooltip--visible,.plyr__controls>.plyr__control:first-child+.plyr__control .plyr__tooltip--visible,.plyr__controls>.plyr__control:first-child+.plyr__control:focus-visible .plyr__tooltip,.plyr__controls>.plyr__control:first-child+.plyr__control:hover .plyr__tooltip,.plyr__controls>.plyr__control:first-child:focus-visible .plyr__tooltip,.plyr__controls>.plyr__control:first-child:hover .plyr__tooltip,.plyr__controls>.plyr__control:last-child .plyr__tooltip--visible,.plyr__controls>.plyr__control:last-child:focus-visible .plyr__tooltip,.plyr__controls>.plyr__control:last-child:hover .plyr__tooltip{transform:translate(0) scale(1)}.plyr__progress{left:6.5px;left:calc(var(--plyr-range-thumb-height, 13px)*.5);margin-right:13px;margin-right:var(--plyr-range-thumb-height,13px);position:relative}.plyr__progress input[type=range],.plyr__progress__buffer{margin-left:-6.5px;margin-left:calc(var(--plyr-range-thumb-height, 13px)*-.5);margin-right:-6.5px;margin-right:calc(var(--plyr-range-thumb-height, 13px)*-.5);width:calc(100% + 13px);width:calc(100% + var(--plyr-range-thumb-height, 13px))}.plyr__progress input[type=range]{position:relative;z-index:2}.plyr__progress .plyr__tooltip{left:0;max-width:120px;overflow-wrap:break-word}.plyr__progress__buffer{-webkit-appearance:none;background:#0000;border:0;border-radius:100px;height:5px;height:var(--plyr-range-track-height,5px);left:0;margin-top:-2.5px;margin-top:calc(var(--plyr-range-track-height, 5px)/2*-1);padding:0;position:absolute;top:50%}.plyr__progress__buffer::-webkit-progress-bar{background:#0000}.plyr__progress__buffer::-webkit-progress-value{background:currentColor;border-radius:100px;min-width:5px;min-width:var(--plyr-range-track-height,5px);-webkit-transition:width .2s ease;transition:width .2s ease}.plyr__progress__buffer::-moz-progress-bar{background:currentColor;border-radius:100px;min-width:5px;min-width:var(--plyr-range-track-height,5px);-moz-transition:width .2s ease;transition:width .2s ease}.plyr__progress__buffer::-ms-fill{border-radius:100px;-ms-transition:width .2s ease;transition:width .2s ease}.plyr--loading .plyr__progress__buffer{animation:plyr-progress 1s linear infinite;background-image:linear-gradient(-45deg,#23282f99 25%,#0000 0,#0000 50%,#23282f99 0,#23282f99 75%,#0000 0,#0000);background-image:linear-gradient(-45deg,var(--plyr-progress-loading-background,#23282f99) 25%,#0000 25%,#0000 50%,var(--plyr-progress-loading-background,#23282f99) 50%,var(--plyr-progress-loading-background,#23282f99) 75%,#0000 75%,#0000);background-repeat:repeat-x;background-size:25px 25px;background-size:var(--plyr-progress-loading-size,25px) var(--plyr-progress-loading-size,25px);color:#0000}.plyr--video.plyr--loading .plyr__progress__buffer{background-color:#ffffff40;background-color:var(--plyr-video-progress-buffered-background,#ffffff40)}.plyr--audio.plyr--loading .plyr__progress__buffer{background-color:#c1c8d199;background-color:var(--plyr-audio-progress-buffered-background,#c1c8d199)}.plyr__progress__marker{background-color:#fff;background-color:var(--plyr-progress-marker-background,#fff);border-radius:1px;height:5px;height:var(--plyr-range-track-height,5px);position:absolute;top:50%;transform:translate(-50%,-50%);width:3px;width:var(--plyr-progress-marker-width,3px);z-index:3}.plyr__volume{align-items:center;display:flex;position:relative}.plyr__volume input[type=range]{margin-left:5px;margin-left:calc(var(--plyr-control-spacing, 10px)/2);margin-right:5px;margin-right:calc(var(--plyr-control-spacing, 10px)/2);max-width:90px;min-width:60px;position:relative;z-index:2}.plyr--audio{display:block}.plyr--audio .plyr__controls{background:#fff;background:var(--plyr-audio-controls-background,#fff);border-radius:inherit;color:#4a5464;color:var(--plyr-audio-control-color,#4a5464);padding:10px;padding:var(--plyr-control-spacing,10px)}.plyr--audio .plyr__control:focus-visible,.plyr--audio .plyr__control:hover,.plyr--audio .plyr__control[aria-expanded=true]{background:#00b2ff;background:var(--plyr-audio-control-background-hover,var(--plyr-color-main,var(--plyr-color-main,#00b2ff)));color:#fff;color:var(--plyr-audio-control-color-hover,#fff)}.plyr--full-ui.plyr--audio input[type=range]::-webkit-slider-runnable-track{background-color:#c1c8d199;background-color:var(--plyr-audio-range-track-background,var(--plyr-audio-progress-buffered-background,#c1c8d199))}.plyr--full-ui.plyr--audio input[type=range]::-moz-range-track{background-color:#c1c8d199;background-color:var(--plyr-audio-range-track-background,var(--plyr-audio-progress-buffered-background,#c1c8d199))}.plyr--full-ui.plyr--audio input[type=range]::-ms-track{background-color:#c1c8d199;background-color:var(--plyr-audio-range-track-background,var(--plyr-audio-progress-buffered-background,#c1c8d199))}.plyr--full-ui.plyr--audio input[type=range]:active::-webkit-slider-thumb{box-shadow:0 1px 1px #23282f26,0 0 0 1px #23282f33,0 0 0 3px #23282f1a;box-shadow:var(--plyr-range-thumb-shadow,0 1px 1px #23282f26,0 0 0 1px #23282f33),0 0 0 var(--plyr-range-thumb-active-shadow-width,3px) var(--plyr-audio-range-thumb-active-shadow-color,#23282f1a)}.plyr--full-ui.plyr--audio input[type=range]:active::-moz-range-thumb{box-shadow:0 1px 1px #23282f26,0 0 0 1px #23282f33,0 0 0 3px #23282f1a;box-shadow:var(--plyr-range-thumb-shadow,0 1px 1px #23282f26,0 0 0 1px #23282f33),0 0 0 var(--plyr-range-thumb-active-shadow-width,3px) var(--plyr-audio-range-thumb-active-shadow-color,#23282f1a)}.plyr--full-ui.plyr--audio input[type=range]:active::-ms-thumb{box-shadow:0 1px 1px #23282f26,0 0 0 1px #23282f33,0 0 0 3px #23282f1a;box-shadow:var(--plyr-range-thumb-shadow,0 1px 1px #23282f26,0 0 0 1px #23282f33),0 0 0 var(--plyr-range-thumb-active-shadow-width,3px) var(--plyr-audio-range-thumb-active-shadow-color,#23282f1a)}.plyr--audio .plyr__progress__buffer{color:#c1c8d199;color:var(--plyr-audio-progress-buffered-background,#c1c8d199)}.plyr--video{overflow:hidden}.plyr--video.plyr--menu-open{overflow:visible}.plyr__video-wrapper{background:#000;background:var(--plyr-video-background,var(--plyr-video-background,#000));border-radius:inherit;height:100%;margin:auto;overflow:hidden;position:relative;width:100%}.plyr__video-embed,.plyr__video-wrapper--fixed-ratio{aspect-ratio:16/9}@supports not (aspect-ratio:16/9){.plyr__video-embed,.plyr__video-wrapper--fixed-ratio{height:0;padding-bottom:56.25%;position:relative}}.plyr__video-embed iframe,.plyr__video-wrapper--fixed-ratio video{border:0;height:100%;left:0;position:absolute;top:0;width:100%}.plyr--full-ui .plyr__video-embed>.plyr__video-embed__container{padding-bottom:240%;position:relative;transform:translateY(-38.28125%)}.plyr--video .plyr__controls{background:linear-gradient(#0000,#000000bf);background:var(--plyr-video-controls-background,linear-gradient(#0000,#000000bf));border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;bottom:0;color:#fff;color:var(--plyr-video-control-color,#fff);left:0;padding:5px;padding:calc(var(--plyr-control-spacing, 10px)/2);padding-top:20px;padding-top:calc(var(--plyr-control-spacing, 10px)*2);position:absolute;right:0;transition:opacity .4s ease-in-out,transform .4s ease-in-out;z-index:3}@media(min-width:480px){.plyr--video .plyr__controls{padding:10px;padding:var(--plyr-control-spacing,10px);padding-top:35px;padding-top:calc(var(--plyr-control-spacing, 10px)*3.5)}}.plyr--video.plyr--hide-controls .plyr__controls{opacity:0;pointer-events:none;transform:translateY(100%)}.plyr--video .plyr__control:focus-visible,.plyr--video .plyr__control:hover,.plyr--video .plyr__control[aria-expanded=true]{background:#00b2ff;background:var(--plyr-video-control-background-hover,var(--plyr-color-main,var(--plyr-color-main,#00b2ff)));color:#fff;color:var(--plyr-video-control-color-hover,#fff)}.plyr__control--overlaid{background:#00b2ff;background:var(--plyr-video-control-background-hover,var(--plyr-color-main,var(--plyr-color-main,#00b2ff)));border:0;border-radius:100%;color:#fff;color:var(--plyr-video-control-color,#fff);display:none;left:50%;opacity:.9;padding:15px;padding:calc(var(--plyr-control-spacing, 10px)*1.5);position:absolute;top:50%;transform:translate(-50%,-50%);transition:.3s;z-index:2}.plyr__control--overlaid svg{left:2px;position:relative}.plyr__control--overlaid:focus,.plyr__control--overlaid:hover{opacity:1}.plyr--playing .plyr__control--overlaid{opacity:0;visibility:hidden}.plyr--full-ui.plyr--video .plyr__control--overlaid{display:block}.plyr--full-ui.plyr--video input[type=range]::-webkit-slider-runnable-track{background-color:#ffffff40;background-color:var(--plyr-video-range-track-background,var(--plyr-video-progress-buffered-background,#ffffff40))}.plyr--full-ui.plyr--video input[type=range]::-moz-range-track{background-color:#ffffff40;background-color:var(--plyr-video-range-track-background,var(--plyr-video-progress-buffered-background,#ffffff40))}.plyr--full-ui.plyr--video input[type=range]::-ms-track{background-color:#ffffff40;background-color:var(--plyr-video-range-track-background,var(--plyr-video-progress-buffered-background,#ffffff40))}.plyr--full-ui.plyr--video input[type=range]:active::-webkit-slider-thumb{box-shadow:0 1px 1px #23282f26,0 0 0 1px #23282f33,0 0 0 3px #ffffff80;box-shadow:var(--plyr-range-thumb-shadow,0 1px 1px #23282f26,0 0 0 1px #23282f33),0 0 0 var(--plyr-range-thumb-active-shadow-width,3px) var(--plyr-audio-range-thumb-active-shadow-color,#ffffff80)}.plyr--full-ui.plyr--video input[type=range]:active::-moz-range-thumb{box-shadow:0 1px 1px #23282f26,0 0 0 1px #23282f33,0 0 0 3px #ffffff80;box-shadow:var(--plyr-range-thumb-shadow,0 1px 1px #23282f26,0 0 0 1px #23282f33),0 0 0 var(--plyr-range-thumb-active-shadow-width,3px) var(--plyr-audio-range-thumb-active-shadow-color,#ffffff80)}.plyr--full-ui.plyr--video input[type=range]:active::-ms-thumb{box-shadow:0 1px 1px #23282f26,0 0 0 1px #23282f33,0 0 0 3px #ffffff80;box-shadow:var(--plyr-range-thumb-shadow,0 1px 1px #23282f26,0 0 0 1px #23282f33),0 0 0 var(--plyr-range-thumb-active-shadow-width,3px) var(--plyr-audio-range-thumb-active-shadow-color,#ffffff80)}.plyr--video .plyr__progress__buffer{color:#ffffff40;color:var(--plyr-video-progress-buffered-background,#ffffff40)}.plyr:fullscreen{background:#000;border-radius:0!important;height:100%;margin:0;width:100%}.plyr:fullscreen video{height:100%}.plyr:fullscreen .plyr__control .icon--exit-fullscreen{display:block}.plyr:fullscreen .plyr__control .icon--exit-fullscreen+svg{display:none}.plyr:fullscreen.plyr--hide-controls{cursor:none}@media(min-width:1024px){.plyr:fullscreen .plyr__captions{font-size:21px;font-size:var(--plyr-font-size-xlarge,21px)}}.plyr--fullscreen-fallback{background:#000;border-radius:0!important;height:100%;top:0;right:0;bottom:0;left:0;margin:0;position:fixed;width:100%;z-index:10000000}.plyr--fullscreen-fallback video{height:100%}.plyr--fullscreen-fallback .plyr__control .icon--exit-fullscreen{display:block}.plyr--fullscreen-fallback .plyr__control .icon--exit-fullscreen+svg{display:none}.plyr--fullscreen-fallback.plyr--hide-controls{cursor:none}@media(min-width:1024px){.plyr--fullscreen-fallback .plyr__captions{font-size:21px;font-size:var(--plyr-font-size-xlarge,21px)}}.plyr__ads{border-radius:inherit;cursor:pointer;top:0;right:0;bottom:0;left:0;overflow:hidden;position:absolute;z-index:-1}.plyr__ads>div,.plyr__ads>div iframe{height:100%;position:absolute;width:100%}.plyr__ads:after{background:#23282f;border-radius:2px;bottom:10px;bottom:var(--plyr-control-spacing,10px);color:#fff;content:attr(data-badge-text);font-size:11px;padding:2px 6px;pointer-events:none;position:absolute;right:10px;right:var(--plyr-control-spacing,10px);z-index:3}.plyr__ads:empty:after{display:none}.plyr__cues{background:currentColor;display:block;height:5px;height:var(--plyr-range-track-height,5px);left:0;opacity:.8;position:absolute;top:50%;transform:translateY(-50%);width:3px;z-index:3}.plyr__preview-thumb{background-color:#fff;background-color:var(--plyr-tooltip-background,#fff);border-radius:8px;border-radius:var(--plyr-menu-radius,8px);bottom:100%;box-shadow:0 1px 2px #00000026;box-shadow:var(--plyr-tooltip-shadow,0 1px 2px #00000026);margin-bottom:10px;margin-bottom:calc(var(--plyr-control-spacing, 10px)/2*2);opacity:0;padding:3px;pointer-events:none;position:absolute;transform:translateY(10px) scale(.8);transform-origin:50% 100%;transition:transform .2s ease .1s,opacity .2s ease .1s;z-index:2}.plyr__preview-thumb--is-shown{opacity:1;transform:translate(0) scale(1)}.plyr__preview-thumb:before{border-left:4px solid #0000;border-left:var(--plyr-tooltip-arrow-size,4px) solid #0000;border-right:4px solid #0000;border-right:var(--plyr-tooltip-arrow-size,4px) solid #0000;border-top:4px solid #fff;border-top:var(--plyr-tooltip-arrow-size,4px) solid var(--plyr-tooltip-background,#fff);bottom:-4px;bottom:calc(var(--plyr-tooltip-arrow-size, 4px)*-1);content:"";height:0;left:calc(50% + var(--preview-arrow-offset));position:absolute;transform:translate(-50%);width:0;z-index:2}.plyr__preview-thumb__image-container{background:#c1c8d1;border-radius:7px;border-radius:calc(var(--plyr-menu-radius, 8px) - 1px);overflow:hidden;position:relative;z-index:0}.plyr__preview-thumb__image-container img,.plyr__preview-thumb__image-container:after{height:100%;left:0;position:absolute;top:0;width:100%}.plyr__preview-thumb__image-container:after{border-radius:inherit;box-shadow:inset 0 0 0 1px #00000026;content:"";pointer-events:none}.plyr__preview-thumb__image-container img{max-height:none;max-width:none}.plyr__preview-thumb__time-container{background:linear-gradient(#0000,#000000bf);background:var(--plyr-video-controls-background,linear-gradient(#0000,#000000bf));border-bottom-left-radius:7px;border-bottom-left-radius:calc(var(--plyr-menu-radius, 8px) - 1px);border-bottom-right-radius:7px;border-bottom-right-radius:calc(var(--plyr-menu-radius, 8px) - 1px);bottom:0;left:0;line-height:1.1;padding:20px 6px 6px;position:absolute;right:0;z-index:3}.plyr__preview-thumb__time-container span{color:#fff;font-size:13px;font-size:var(--plyr-font-size-time,var(--plyr-font-size-small,13px))}.plyr__preview-scrubbing{filter:blur(1px);height:100%;top:0;right:0;bottom:0;left:0;margin:auto;opacity:0;overflow:hidden;pointer-events:none;position:absolute;transition:opacity .3s ease;width:100%;z-index:1}.plyr__preview-scrubbing--is-shown{opacity:1}.plyr__preview-scrubbing img{height:100%;left:0;max-height:none;max-width:none;object-fit:contain;position:absolute;top:0;width:100%}.plyr--no-transition{transition:none!important}.plyr__sr-only{clip:rect(1px,1px,1px,1px);border:0!important;height:1px!important;overflow:hidden;padding:0!important;position:absolute!important;width:1px!important}.plyr [hidden]{display:none!important}
