:root{--sage-1:#c0c78c;--sage-2:#a6b37d;--cream:#fefae0;--warm:#b99470;--grass:#6f8f54;--leaf:#526f43;--ink:#2f3a27;--muted:#667256;--white:#fffdf1;--line:#526f432e;--soft-line:#fefae08f;--dark-line:#526f4333;--glass:#fffdf19e;--glass-strong:#fffdf1c7;--glass-border:#fffdf1a8;--green-glass:#c0c78c38;--shadow-soft:0 24px 70px #526f4321;--shadow-lift:0 32px 90px #526f432e;--max:1700px;--radius:28px;--card-radius:24px;--card-bg:linear-gradient(180deg, #fffdf1d6, #fffdf194);--card-border:#fffdf1c7;--card-shadow:0 24px 70px #526f431f;--font-title-cn:"汇文明朝体", "Noto Serif SC", "Songti SC", serif;--font-title-en:"Fraunces", "汇文明朝体", "Noto Serif SC", "Songti SC", Georgia, serif;--font-hand:"Caveat", "Comic Sans MS", cursive;--font-mono:"Fira Code", Consolas, "Courier New", monospace;--font-body:"Microsoft YaHei", "Noto Sans SC", "Source Han Sans SC", system-ui, sans-serif;--font-body-sans:"Microsoft YaHei", "Noto Sans SC", "Source Han Sans SC", system-ui, sans-serif;color:var(--ink);font-family:var(--font-body)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-snap-type:y proximity}body{background:var(--cream);margin:0;overflow-x:hidden}main>section,.portfolio-content-gradient>section{scroll-snap-align:start;scroll-snap-stop:always}a{color:inherit;text-decoration:none}::selection{background:#ff7fa261}.portfolio-shell{background:radial-gradient(circle at 12% 16%, #c0c78c57, transparent 26%), linear-gradient(180deg, var(--cream), #f6f0cf 54%, var(--sage-1));min-height:100vh;overflow-x:clip}.container{width:min(calc(100% - 80px), var(--max));margin:0 auto}.nav-bar{z-index:30;width:min(calc(100% - 80px), var(--max));color:#2f3a27e6;-webkit-backdrop-filter:blur(28px)saturate(1.34);backdrop-filter:blur(28px)saturate(1.34);background:#e5f5f84d;border:1px solid #ffffff9e;border-radius:999px;grid-template-columns:auto 1fr auto auto auto;align-items:center;min-height:66px;padding:9px 10px 9px 18px;transition:opacity .36s,visibility .36s,transform .36s;display:grid;position:fixed;top:22px;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #ffffffb8,inset 0 -1px #ffffff38,0 18px 58px #2c5b652e}.is-intro-playing .nav-bar{visibility:hidden;opacity:0;pointer-events:none;transform:translate(-50%)translateY(-8px)}.nav-bar.is-hero-collapsed{-webkit-backdrop-filter:blur(18px)saturate(1.28);backdrop-filter:blur(18px)saturate(1.28);background:#edf7f95c;border-color:#ffffff9e;grid-template-columns:1fr;width:54px;min-height:54px;padding:4px;display:grid;top:28px;left:auto;right:clamp(20px,3vw,48px);transform:none;box-shadow:inset 0 1px #ffffffb8,0 14px 38px #22404729}.nav-bar.is-hero-collapsed .brand,.nav-bar.is-hero-collapsed nav,.nav-bar.is-hero-collapsed .nav-contact,.nav-bar.is-hero-collapsed .nav-editor-button{display:none}.nav-bar.is-hero-collapsed .nav-menu-button{color:#fff;background:#fff3;border-color:#ffffff80;justify-self:center;width:44px;height:44px;display:grid;box-shadow:inset 0 1px #fff6}.nav-bar.is-hero-collapsed .nav-menu-button:hover{background:#ffffff5c}.brand,.nav-contact,.nav-bar nav{align-items:center;display:flex}.brand{gap:12px;font-weight:800}.brand span{width:38px;height:38px;color:var(--leaf);background:#ffffff38;border:1px solid #526f432e;border-radius:50%;place-items:center;font-family:Noto Serif SC,serif;font-size:12px;display:grid}.nav-bar nav{-webkit-backdrop-filter:blur(14px)saturate(1.24);backdrop-filter:blur(14px)saturate(1.24);background:#ffffff24;border:1px solid #ffffff75;border-radius:999px;justify-content:center;justify-self:center;gap:2px;padding:4px;box-shadow:inset 0 1px #ffffff94}.nav-bar nav a,.nav-contact,.nav-editor-button{color:#2f3a27ad;border-radius:999px;min-height:44px;padding:10px 15px;font-size:15px;transition:background .18s,color .18s,transform .18s}.nav-bar nav a:hover,.nav-bar nav a:focus-visible,.nav-contact:hover,.nav-editor-button:hover,.nav-editor-button.is-active{color:var(--ink);background:#b2d6e494;transform:translateY(-1px)scale(1.08)}.nav-editor-button{cursor:pointer;background:#fffdf1c2;border:1px solid #526f4324;align-items:center;gap:8px;font-family:inherit;font-weight:900;display:inline-flex}.nav-editor-button.is-active{color:var(--leaf);background:#f6ffe1d1}.nav-contact{color:var(--cream);background:#1f2a1deb;border:1px solid #526f4329;gap:8px;font-weight:800}.nav-contact:hover{background:var(--ink);color:var(--cream)}.nav-menu-button{width:44px;height:44px;color:var(--ink);cursor:pointer;background:#fffdf1bd;border:1px solid #526f4324;border-radius:50%;place-items:center;transition:background .18s,transform .18s;display:none;position:relative}.nav-bar:has(.nav-menu-button[aria-expanded=true]){z-index:36}.nav-menu-button:hover{background:#fffdf1f0;transform:translateY(-1px)}.nav-menu-button svg{transition:opacity .26s,transform .26s;position:absolute}.nav-menu-button svg.is-hidden{opacity:0;transform:rotate(90deg)scale(.5)}.mobile-menu-backdrop{z-index:31;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#23373a33;transition:opacity .26s;display:block;position:fixed;inset:0}.mobile-menu-backdrop.is-open{opacity:1;pointer-events:auto}.mobile-menu-panel{z-index:32;opacity:0;visibility:hidden;pointer-events:none;-webkit-backdrop-filter:blur(22px)saturate(1.1);backdrop-filter:blur(22px)saturate(1.1);transform-origin:100% 0;background:#fffdf1db;border:1px solid #ffffffb8;border-radius:20px;width:min(350px,100vw - 40px);transition:opacity .22s,visibility .22s,transform .28s cubic-bezier(.22,1,.36,1);display:block;position:fixed;top:94px;right:clamp(20px,3vw,48px);overflow:hidden;transform:translateY(-10px)scale(.97);box-shadow:0 22px 64px #2f3a2733}.mobile-menu-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)scale(1)}.mobile-menu-inner{gap:4px;padding:24px;display:grid}.mobile-menu-eyebrow{color:var(--leaf);letter-spacing:.05em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:900}.mobile-menu-inner a{min-height:48px;color:var(--ink);font-family:var(--font-title-cn);border-bottom:1px solid #526f431f;align-items:center;font-size:19px;font-weight:800;text-decoration:none;transition:color .18s,padding-left .18s;display:flex}.mobile-menu-inner a:hover{color:var(--leaf);padding-left:8px}.mobile-menu-note{color:var(--ink);background:#c0c78c29;border:1px solid #526f4324;border-radius:8px;gap:6px;margin-top:16px;padding:14px;display:grid}.mobile-menu-note strong{color:var(--leaf);font-size:14px}.mobile-menu-note span{color:#2f3a27ad;font-size:12px;line-height:1.5}.mobile-menu-inner .mobile-menu-contact{background:var(--ink);min-height:46px;color:var(--cream);font-family:var(--font-body);border:0;border-radius:999px;justify-content:center;margin-top:12px;font-size:14px}.mobile-menu-inner .mobile-menu-contact:hover{color:var(--cream);padding-left:0}.site-editor-panel{z-index:42;background:linear-gradient(180deg, #fffdf1eb, #fffdf1d1), var(--cream);-webkit-backdrop-filter:blur(22px)saturate(1.1);backdrop-filter:blur(22px)saturate(1.1);border:1px solid #fffdf1b8;border-radius:24px;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(430px,100vw - 32px);max-height:min(78vh,760px);display:grid;position:fixed;bottom:22px;right:22px;overflow:hidden;box-shadow:0 28px 90px #2f3a2738}.site-editor-head,.site-editor-foot{justify-content:space-between;align-items:center;gap:14px;padding:16px;display:flex}.site-editor-head{border-bottom:1px dashed #526f4329}.site-editor-head div{gap:5px;display:grid}.site-editor-head span{color:var(--leaf);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:900}.site-editor-head strong{color:var(--ink);font-family:var(--font-title-cn);font-size:24px;line-height:1.1}.site-editor-head button{width:38px;height:38px;color:var(--ink);cursor:pointer;background:#fffdf1c7;border:1px solid #526f4324;border-radius:50%;place-items:center;display:grid}.site-editor-tabs{border-bottom:1px dashed #526f431f;gap:7px;padding:12px 14px;display:flex;overflow-x:auto}.site-editor-tabs button{color:#2f3a27a8;min-height:36px;font:900 13px/1 var(--font-body);white-space:nowrap;cursor:pointer;background:#fffdf1b3;border:1px solid #526f431f;border-radius:999px;padding:7px 12px}.site-editor-tabs button.is-active{background:var(--ink);color:var(--cream);border-color:#526f4333}.site-editor-inline-tip{color:#2f3a27ad;background:#fff4bd6b;border-bottom:1px dashed #526f431f;margin:0 14px;padding:10px 12px;font-size:13px;font-weight:800;line-height:1.5}.site-editor-body{min-height:0;padding:16px;overflow-y:auto}.site-editor-section,.site-editor-group{gap:14px;display:grid}.site-editor-group{border-top:1px dashed #526f4324;margin-top:4px;padding-top:14px}.site-editor-group>strong{color:var(--leaf);letter-spacing:.08em;text-transform:uppercase;font-size:13px;font-weight:950}.site-editor-field{gap:7px;display:grid}.site-editor-field span{color:#2f3a27b8;font-size:13px;font-weight:900}.site-editor-field input,.site-editor-field textarea{width:100%;color:var(--ink);font:400 14px/1.62 var(--font-body);resize:vertical;background:#fffdf1b8;border:1px solid #526f4326;border-radius:12px;outline:none;padding:10px 12px;transition:border-color .18s,box-shadow .18s,background .18s}.site-editor-field input:focus,.site-editor-field textarea:focus{background:#fffdf1f0;border-color:#526f4361;box-shadow:0 0 0 4px #c0c78c29}.site-editor-field em{color:#2f3a2785;font-size:12px;font-style:normal}.site-editor-pair{grid-template-columns:minmax(0,.58fr) minmax(0,1fr);gap:10px;display:grid}.site-editor-details{background:#fffdf185;border:1px solid #526f431f;border-radius:14px;display:grid}.site-editor-details summary{min-height:42px;color:var(--ink);cursor:pointer;align-items:center;padding:10px 12px;font-weight:900;display:flex}.site-editor-details>.site-editor-field,.site-editor-details>.site-editor-pair,.site-editor-details>.site-editor-details{margin:0 12px 12px}.site-editor-details.is-nested{background:#c0c78c1f}.site-editor-warning{color:#2f3a27b8;background:#fff4bd85;border:1px solid #b9947038;border-radius:14px;margin-bottom:14px;padding:12px;font-size:13px;font-weight:800;line-height:1.55}.site-editor-foot{border-top:1px dashed #526f4329}.site-editor-state{color:#2f3a2794;font-size:13px;font-weight:900}.site-editor-state.is-dirty{color:var(--warm)}.site-editor-state.is-saved{color:var(--leaf)}.site-editor-state.is-error{color:#9f4237}.site-editor-save{background:var(--ink);min-height:40px;color:var(--cream);font:900 14px/1 var(--font-body);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:8px;padding:9px 14px;display:inline-flex}.site-editor-save:disabled{cursor:wait;opacity:.72}.inline-editable{outline-offset:4px;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:6px;outline:0 solid #0000;min-width:1ch;transition:background .16s,box-shadow .16s,outline-color .16s}.portfolio-shell.is-site-editing .inline-editable,.li-skill-page.is-case-editing .inline-editable{cursor:text;background:#fff4bd57;outline:1px dashed #526f4338;box-shadow:0 0 0 3px #fff4bd2e}.portfolio-shell.is-site-editing .inline-editable:hover,.portfolio-shell.is-site-editing .inline-editable:focus,.portfolio-shell.is-site-editing .inline-editable.is-focused,.portfolio-shell.is-site-editing .inline-editable:focus-visible,.li-skill-page.is-case-editing .inline-editable:hover,.li-skill-page.is-case-editing .inline-editable:focus,.li-skill-page.is-case-editing .inline-editable.is-focused,.li-skill-page.is-case-editing .inline-editable:focus-visible{background:#fff4bd9e;outline-color:#526f437a;box-shadow:0 0 0 5px #fff4bd3d}.portfolio-shell.is-site-editing .inline-editable:focus-visible,.li-skill-page.is-case-editing .inline-editable:focus-visible{outline-style:solid}.inline-editable[data-empty=true]:before{color:#2f3a276b;content:attr(data-placeholder)}.inline-image-editable{min-width:44px;min-height:44px;display:block;position:relative}.inline-image-editable>img{display:block}.inline-image-editable input[type=file]{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.inline-image-edit-button{z-index:12;min-height:42px;color:var(--cream);font:900 13px/1 var(--font-body);opacity:0;pointer-events:none;cursor:pointer;background:#2f3a27eb;border:1px solid #fffdf1c7;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:9px 14px;transition:opacity .18s,transform .18s,background .18s;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)translateY(6px);box-shadow:0 16px 38px #2f3a2738}.inline-image-edit-button:hover{background:var(--ink)}.portfolio-shell.is-site-editing .inline-image-editable.is-enabled,.li-skill-page.is-case-editing .inline-image-editable.is-enabled{outline-offset:4px;outline:1px dashed #526f4347}.portfolio-shell.is-site-editing .inline-image-editable.is-enabled:hover .inline-image-edit-button,.portfolio-shell.is-site-editing .inline-image-editable.is-enabled:focus-within .inline-image-edit-button,.li-skill-page.is-case-editing .inline-image-editable.is-enabled:hover .inline-image-edit-button,.li-skill-page.is-case-editing .inline-image-editable.is-enabled:focus-within .inline-image-edit-button{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)translateY(0)}.inline-image-edit-error{z-index:13;color:#fffdf1;background:#9f4237eb;border-radius:12px;max-width:min(240px,100% - 20px);padding:8px 10px;font-size:12px;font-style:normal;font-weight:800;line-height:1.35;position:absolute;bottom:10px;right:10px}.hero-section{--hero-copy-width:min(860px, calc(100vw - 320px));height:100svh;min-height:100vh;color:var(--ink);isolation:isolate;background:#fff;display:grid;position:relative;overflow:hidden}.portfolio-main{isolation:isolate;position:relative}@keyframes botanical-star-twinkle{0%,to{opacity:.44}50%{opacity:1}}@keyframes botanical-star-sway{0%,to{transform:rotate(-7deg)translate(-1px)}50%{transform:rotate(7deg)translate(1px,-3px)}}.portfolio-main>:not(.botanical-background){z-index:1;position:relative}.is-intro-playing .hero-section{height:100svh;min-height:100svh}@keyframes hero-sound-hint-float{50%{transform:translateY(-4px)}}@keyframes ip-soft-nudge{0%{transform:translate(0,0)rotate(0)}36%{transform:translateY(-5px)rotate(-1.6deg)}72%{transform:translateY(1px)rotate(.8deg)}to{transform:translate(0,0)rotate(0)}}.section-kicker{color:var(--leaf);letter-spacing:.03em;text-transform:uppercase;margin:0 0 18px;font-size:14px;font-weight:800}.interactive-studio-hero{color:#2f3a27;isolation:isolate;background:#f4e5b8;min-height:max(720px,100svh);display:block;position:relative;overflow:hidden}.interactive-studio-hero:after{z-index:2;content:"";pointer-events:none;background:#fffdf1b3;position:absolute;inset:0 52% 0 0;box-shadow:40px 0 72px #fffdf18f}.studio-scene{--studio-pointer-x:0;--studio-pointer-y:0;z-index:1;aspect-ratio:16/9;width:max(100vw,177.778svh);position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.studio-copy{z-index:4;width:min(520px,39vw);margin:0;position:absolute;top:50%;left:clamp(28px,5vw,84px);transform:translateY(-47%)}.studio-title{color:#2f3a27;font-family:var(--font-title-cn);letter-spacing:0;gap:4px;margin:0;font-size:54px;font-weight:900;line-height:1.08;display:grid}.studio-title span,.studio-title strong{font:inherit;display:block}.studio-title strong{color:#5c7245}.studio-role{color:#4e5a42;margin:20px 0 0;font-size:17px;font-weight:900;line-height:1.4}.studio-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.studio-primary-action,.studio-secondary-action{border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:0 17px;font-size:14px;font-weight:900;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.studio-primary-action{color:#fff;background:#566d41;box-shadow:0 10px 24px #46593533}.studio-secondary-action{color:#35402f;background:#fffdf1c7;border-color:#4a583c47}.studio-primary-action:hover,.studio-secondary-action:hover{transform:translateY(-2px)}.studio-primary-action:hover{background:#475d35;box-shadow:0 14px 30px #46593540}.studio-secondary-action:hover{background:#fff}.studio-primary-action:focus-visible,.studio-secondary-action:focus-visible,.studio-style-switcher button:focus-visible{outline-offset:3px;outline:3px solid #566d4161}.interactive-studio-hero.is-revealed .studio-primary-action svg:last-child{animation:1.5s ease-in-out 2 studio-arrow-nudge}.studio-editing-note{z-index:8;color:#4b5b3e;background:#fffdf1e0;border:1px solid #45553633;border-radius:4px;padding:8px 10px;font-size:12px;font-weight:800;position:absolute;bottom:24px;right:24px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@keyframes studio-girl-breathe{0%,to{translate:0}50%{translate:0 -4px}}@keyframes studio-laifu-hop{0%,to{transform:translate(0,0)rotate(0)}38%{transform:translate(8px,-24px)rotate(6deg)}70%{transform:translate(-2px,2px)rotate(-2deg)}}@keyframes studio-duanwu-look{0%,to{transform:rotate(0)translateY(0)}44%{transform:rotate(-5deg)translateY(-3px)}72%{transform:rotate(2deg)translateY(0)}}@keyframes studio-spark-pulse{0%,to{opacity:.38;transform:scale(.78)}50%{opacity:.95;transform:scale(1.08)}}@keyframes studio-arrow-nudge{0%,to{transform:translate(0)}50%{transform:translate(5px)}}@media (width<=1180px){.interactive-studio-hero:after{right:45%}.studio-copy{width:47vw;left:36px}.studio-title{font-size:46px}}@media (width<=900px){.interactive-studio-hero{background:#fff8dd;min-height:100svh}.interactive-studio-hero:after{background:#fffdf1e6;inset:0 0 48%;box-shadow:0 36px 54px #fffdf1ad}.studio-copy{width:min(100% - 48px,660px);top:104px;left:50%;transform:translate(-50%)}.studio-title{font-size:43px}.studio-role{margin-top:14px;font-size:15px}.studio-actions{margin-top:18px}.studio-scene{width:max(940px,116vw);top:auto;bottom:-2%;left:50%;transform:translate(-50%)}}@media (width<=620px){.interactive-studio-hero:after{bottom:43%}.studio-copy{width:calc(100% - 32px);top:86px}.studio-title{gap:2px;font-size:34px;line-height:1.1}.studio-role{margin-top:12px;font-size:13px}.studio-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;display:grid}.studio-primary-action,.studio-secondary-action{gap:6px;min-height:44px;padding:0 10px;font-size:12px}.studio-primary-action svg:last-child{display:none}.studio-scene{width:900px;bottom:0}}@media (prefers-reduced-motion:reduce){.studio-room,.studio-monitor,.studio-girl,.studio-cat,.studio-cat img,.studio-cursor-spark,.interactive-studio-hero.is-revealed .studio-primary-action svg:last-child{transition:none;animation:none;transform:none}}.interactive-studio-hero{color:#2f3829;background:#d8bd91;min-height:max(720px,100svh)}.interactive-studio-hero:after{z-index:3;box-shadow:none;background:linear-gradient(90deg,#fff8e800,#fff8e8d1 30%,#fffaeff5 100%);inset:0 0 0 52%}.interactive-studio-hero .studio-scene{--studio-pointer-x:0;--studio-pointer-y:0;--studio-toy-x:31%;--studio-toy-y:78%;aspect-ratio:auto;cursor:default;width:100%;height:100%;position:absolute;inset:0;transform:none}.studio-room-interactive,.studio-intro-video{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.studio-intro-video{z-index:7;opacity:1;background:#d8bd91;transition:opacity .62s,visibility 0s linear .64s}.interactive-studio-hero.is-interactive .studio-intro-video{visibility:hidden;opacity:0}.interactive-studio-hero.is-video-ready .studio-copy,.interactive-studio-hero.is-interactive .studio-copy{opacity:1;transform:translateY(-46%)translate(0)}.interactive-studio-hero .studio-title{color:#2f3829;gap:3px;font-size:clamp(42px,4.2vw,64px);line-height:1.04}.interactive-studio-hero .studio-role{color:#3e4938;margin-top:18px;font-size:15px}.studio-capability-signals{flex-wrap:wrap;gap:7px;margin-top:16px;display:flex}.studio-capability-signals span{color:#4a5940;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf48f;border:1px solid #45533933;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;line-height:1}.interactive-studio-hero .studio-primary-action{background:#50673f;box-shadow:0 12px 28px #3e4d3033}.interactive-studio-hero .studio-secondary-action{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf4b3;border-color:#4553393d}.interactive-studio-hero.is-interactive .studio-primary-action svg:last-child{animation:1.5s ease-in-out 2 studio-arrow-nudge}@keyframes studio-laifu-pounce{0%,to{transform:translate(0,0)rotate(0)}40%{transform:translate(8px,-18px)rotate(4deg)}72%{transform:translate(-2px,2px)rotate(-1deg)}}@keyframes studio-duanwu-attention{0%,to{transform:rotate(0)translateY(0)}46%{transform:rotate(-4deg)translateY(-3px)}72%{transform:rotate(1.5deg)translateY(0)}}@keyframes studio-toy-bob{0%{transform:translateY(-2px)rotate(-4deg)}to{transform:translate(2px,3px)rotate(5deg)}}@keyframes studio-click-ripple{0%{opacity:.8;transform:translate(-50%,-50%)scale(.55)}to{opacity:0;transform:translate(-50%,-50%)scale(2.4)}}@media (width<=1180px){.interactive-studio-hero:after{inset:0 0 0 46%}.interactive-studio-hero .studio-copy{width:39vw;right:32px}.interactive-studio-hero .studio-title{font-size:clamp(38px,4vw,50px)}}@media (width<=900px){.nav-bar.is-home-nav{-webkit-backdrop-filter:blur(16px)saturate(1.18);backdrop-filter:blur(16px)saturate(1.18);background:#f7f1deb8;border-color:#ffffff9e;grid-template-columns:1fr;width:54px;min-height:54px;padding:4px;display:grid;top:20px;left:auto;right:20px;transform:none;box-shadow:0 14px 36px #2f2a1f24}.nav-bar.is-home-nav .brand,.nav-bar.is-home-nav>.dock-outer,.nav-bar.is-home-nav .nav-contact,.nav-bar.is-home-nav .nav-editor-button{display:none}.nav-bar.is-home-nav .nav-menu-button{justify-self:center;width:44px;height:44px;display:grid}.interactive-studio-hero{min-height:100svh}.interactive-studio-hero:after{background:linear-gradient(#fffaeff5 0%,#fff8e8d1 72%,#fff8e800 100%);inset:0 0 44%}.studio-room-interactive,.studio-intro-video{object-position:46% center}.interactive-studio-hero .studio-copy{width:min(100% - 48px,650px);top:96px;left:50%;right:auto;transform:translate(-50%)translateY(10px)}.interactive-studio-hero.is-video-ready .studio-copy,.interactive-studio-hero.is-interactive .studio-copy{transform:translate(-50%)translateY(0)}.interactive-studio-hero .studio-title{font-size:clamp(37px,6.2vw,48px)}}@media (width<=620px){.interactive-studio-hero:after{bottom:43%}.interactive-studio-hero .studio-copy{width:calc(100% - 32px);top:82px}.interactive-studio-hero .studio-title{font-size:31px;line-height:1.08}.interactive-studio-hero .studio-role{margin-top:10px;font-size:12px}.studio-capability-signals{display:none}.interactive-studio-hero .studio-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.interactive-studio-hero .studio-primary-action,.interactive-studio-hero .studio-secondary-action{gap:5px;min-height:44px;padding:0 9px;font-size:11px}.interactive-studio-hero .studio-primary-action svg:last-child,.studio-cursor-toy,.studio-click-ripple{display:none}}@media (prefers-reduced-motion:reduce){.interactive-studio-hero .studio-copy,.interactive-studio-hero .studio-cat,.interactive-studio-hero .studio-cat img,.interactive-studio-hero .studio-primary-action svg:last-child,.studio-cursor-toy i,.studio-click-ripple{transition:none;animation:none}}.interactive-studio-hero{background:#75654d;min-height:max(720px,100svh)}.interactive-studio-hero:after{z-index:5;opacity:0;background:radial-gradient(62% 100% at 0 100%,#f2f7ebe0 0%,#f2f7ebad 58%,#f2f7eb42 78%,#f2f7eb00 100%);transition:opacity .7s;inset:0}.interactive-studio-hero.is-copy-settled:after{opacity:1}.interactive-studio-hero .studio-scene{background:#75654d;width:100%;height:100%;position:absolute;inset:0;overflow:hidden;transform:none}.studio-static-frame,.interactive-studio-hero .studio-intro-video{object-fit:cover;object-position:center;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.studio-static-frame{z-index:1}.interactive-studio-hero .studio-intro-video{z-index:2;visibility:visible;opacity:0;background:#75654d;transition:opacity .18s,visibility 0s linear .2s}.interactive-studio-hero.is-video-ready .studio-intro-video{opacity:1}.interactive-studio-hero.is-intro-complete .studio-intro-video{visibility:hidden;opacity:0}.interactive-studio-hero.is-video-failed .studio-intro-video{display:none}.interactive-studio-hero .studio-copy{z-index:8;opacity:0;width:min(720px,47vw);margin:0;transition:opacity .52s,transform .72s cubic-bezier(.16,1,.3,1);top:50%;left:clamp(28px,5vw,84px);right:auto;transform:translateY(-45%)translate(-14px)}.interactive-studio-hero.is-video-ready:not(.is-copy-visible) .studio-copy{opacity:0;transform:translateY(-45%)translate(-14px)}.interactive-studio-hero.is-copy-visible .studio-copy{opacity:1;transform:translateY(-45%)translate(0)}.interactive-studio-hero .studio-title{color:#293225;gap:3px;width:100%;max-width:none;font-size:clamp(56px,4.8vw,76px);line-height:1.04}.interactive-studio-hero .studio-title strong{color:#536b41}.interactive-studio-hero .studio-role{color:#364132;max-width:36ch;margin-top:18px;font-size:15px}.interactive-studio-hero .studio-capability-signals span{color:#45543b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf4a3;border-color:#45533933}.interactive-studio-hero .studio-primary-action,.interactive-studio-hero .studio-secondary-action{border-radius:6px;min-height:48px}.studio-intro-control{z-index:10;color:#fffaf0;cursor:pointer;min-height:44px;font:800 12px/1 var(--font-sans);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#272f23b8;border:1px solid #fffaee8f;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 14px;transition:background .18s,transform .18s;display:inline-flex;position:absolute;bottom:clamp(20px,3vw,38px);right:clamp(20px,3vw,44px);box-shadow:0 10px 26px #271f1629}.studio-intro-control:hover{background:#272f23e0;transform:translateY(-2px)}.studio-intro-control:focus-visible{outline-offset:3px;outline:3px solid #fff4bdc7}.interactive-studio-hero .studio-editing-note{z-index:11}@media (width<=1180px){.interactive-studio-hero:after{right:0}.interactive-studio-hero .studio-copy{width:48vw;left:32px}.interactive-studio-hero .studio-title{font-size:clamp(42px,4.6vw,56px)}}@media (width>=901px){.nav-bar.is-home-nav{left:clamp(28px,5vw,84px);right:auto;transform:none}}@media (width<=900px){.interactive-studio-hero{min-height:100svh}.studio-static-frame,.interactive-studio-hero .studio-intro-video{object-position:62% center}.interactive-studio-hero:after{background:linear-gradient(#f2f7eb00 0%,#f2f7eba8 28%,#f2f7ebeb 100%);inset:45% 0 0}.interactive-studio-hero .studio-copy{width:min(100% - 48px,660px);inset:auto auto 24px 50%;transform:translate(-50%)translateY(14px)}.interactive-studio-hero.is-video-ready:not(.is-copy-visible) .studio-copy{transform:translate(-50%)translateY(14px)}.interactive-studio-hero.is-copy-visible .studio-copy{transform:translate(-50%)translateY(0)}.interactive-studio-hero .studio-title{max-width:none;font-size:clamp(36px,6vw,48px)}.studio-intro-control{inset:84px auto auto 20px}}@media (width<=620px){.studio-static-frame,.interactive-studio-hero .studio-intro-video{object-position:56% center}.interactive-studio-hero:after{inset:43% 0 0}.studio-intro-control{min-width:44px;padding:0 11px;font-size:0;top:76px;left:14px}.studio-intro-control svg{width:18px;height:18px}.interactive-studio-hero .studio-copy{width:calc(100% - 32px);bottom:16px}.interactive-studio-hero .studio-title{max-width:none;font-size:clamp(29px,8.6vw,36px);line-height:1.06}.interactive-studio-hero .studio-role{margin-top:9px;font-size:12px}.interactive-studio-hero .studio-capability-signals{display:none}.interactive-studio-hero .studio-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.interactive-studio-hero .studio-primary-action,.interactive-studio-hero .studio-secondary-action{gap:5px;min-height:44px;padding:0 9px;font-size:11px}.interactive-studio-hero .studio-primary-action svg:last-child{display:none}}@media (prefers-reduced-motion:reduce){.interactive-studio-hero:after,.interactive-studio-hero .studio-copy,.studio-intro-badge,.studio-intro-control{transition:none}}.hero-role-pill,.hero-title-stack strong,.hero-title-stack em,.section-kicker,.section h2,.contact-layout h2,.portrait-card,.portrait-card img,.profile-info-card,.metric-grid div,.workflow-card,.project-card,.project-visual,.strength-card,.timeline-item,.contact-card,.skill-cloud span,.contact-row span{will-change:transform, opacity, clip-path}.primary-button,.secondary-button{border-radius:999px;justify-content:center;align-items:center;min-height:54px;padding:14px 20px;font-weight:800;transition:transform .18s,background .18s,border-color .18s;display:inline-flex}.primary-button{background:var(--ink);color:var(--cream);gap:10px;box-shadow:0 16px 38px #526f432e}.primary-button:hover,.secondary-button:hover{transform:translateY(-2px)}.section{grid-template-columns:minmax(0,1fr);place-items:center stretch;min-height:100svh;padding:clamp(104px,11vh,136px) 0 clamp(64px,8vh,104px);scroll-margin-top:0;display:grid;position:relative;overflow-x:hidden}.section h2,.contact-layout h2{letter-spacing:0;text-wrap:balance;margin:0;font-family:Noto Serif SC,Songti SC,serif;line-height:1.12}.section h2{color:var(--ink);font-size:clamp(42px,4.2vw,78px)}.portrait-card{border:1px solid var(--card-border);border-radius:var(--card-radius);-webkit-backdrop-filter:blur(24px)saturate(1.24);backdrop-filter:blur(24px)saturate(1.24);background:#edf9fa42;min-height:650px;padding:16px;position:relative;box-shadow:inset 0 1px #ffffffc7,0 24px 70px #355f6724}.portrait-card:before{color:var(--sage-1);opacity:.18;content:"✦";font-family:Georgia,serif;font-size:110px;position:absolute;top:-34px;right:-28px}.portrait-card img{object-fit:cover;object-position:50% 0%;filter:saturate(.9)contrast(1.04);border-radius:18px;width:100%;height:530px;display:block}.profile-info-card{border-radius:var(--card-radius);-webkit-backdrop-filter:blur(24px)saturate(1.24);backdrop-filter:blur(24px)saturate(1.24);background:#edf9fa42;border:1px solid #ffffffb8;gap:18px;padding:clamp(22px,1.8vw,30px);display:grid;position:relative;box-shadow:inset 0 1px #ffffffc7,0 24px 70px #355f6724}.profile-info-card:before,.profile-info-card:after{display:none}.profile-info-card:before{border-top:1px solid;border-left:1px solid;top:-1px;left:-1px}.profile-info-card:after{border-bottom:1px solid;border-right:1px solid;bottom:-1px;right:-1px}.profile-info-card dl{margin:0;display:grid}.profile-info-card dl div{border-top:1px dashed #2f3a2729;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:18px;min-height:50px;display:grid}.profile-info-card dt,.profile-info-card dd{margin:0}.profile-info-card dt{color:#2f3a277a;letter-spacing:.12em;font-size:14px}.profile-info-card dd{color:var(--ink);text-align:right;font-size:16px;font-weight:800}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:0;display:grid}.metric-grid div,.strength-card,.workflow-card,.project-card{border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08)}.metric-grid div{min-height:118px;padding:20px 22px}.metric-grid strong{color:var(--leaf);margin-bottom:8px;font-family:Noto Serif SC,serif;font-size:38px;display:block}.metric-grid span{color:var(--muted)}.section-head{gap:16px;max-width:1120px;margin-bottom:clamp(28px,4vh,56px);display:grid}.section-head.split{grid-template-columns:minmax(0,1fr) minmax(420px,.42fr);align-items:end;gap:56px;max-width:none}.project-workflow{gap:22px;margin:0 0 clamp(34px,4.8vh,68px);display:grid}.project-workflow-meta{color:#2f3a2794;letter-spacing:.08em;border-top:1px solid #2f3a2729;border-bottom:1px dashed #2f3a272e;justify-content:space-between;align-items:center;gap:18px;padding:15px 0;font-size:13px;font-weight:900;display:flex}.project-workflow-meta span{align-items:center;gap:12px;display:inline-flex}.project-workflow-meta i{background:var(--leaf);border-radius:50%;width:9px;height:9px;box-shadow:0 0 20px #526f4342}.project-workflow-meta strong{color:var(--leaf)}.workflow-card{background:linear-gradient(#fffdf1cc,#fffdf185),#fefae09e;align-content:start;height:200px;min-height:200px;padding:46px clamp(20px,1.8vw,26px) 22px;transition:transform .22s,box-shadow .22s,border-color .22s;display:grid;position:relative;overflow:hidden}.workflow-card:before{content:"";background:linear-gradient(90deg,#0000,#fffdf1eb,#0000);height:1px;position:absolute;inset:0 0 auto}.workflow-card:hover{box-shadow:var(--shadow-lift);border-color:#fefae0f0;transform:translateY(-4px)}.workflow-card h4{z-index:1;color:var(--ink);letter-spacing:0;margin:0 0 10px;font-family:Noto Serif SC,Songti SC,serif;font-size:clamp(21px,1.7vw,27px);line-height:1.16;position:relative}.workflow-card p{z-index:1;color:#2f3a27b8;margin:0;font-size:14px;line-height:1.5;position:relative}.project-card{background:var(--card-bg);border-color:var(--card-border);grid-template-rows:minmax(300px,.9fr) minmax(0,1fr);min-height:clamp(640px,64vh,760px);transition:transform .22s,box-shadow .22s,border-color .22s;display:grid;position:relative;overflow:hidden}.project-card:before,.strength-card:before,.contact-card:before{content:"";background:linear-gradient(90deg,#0000,#fffdf1db,#0000);height:1px;position:absolute;inset:0 0 auto}.project-card:hover,.strength-card:hover{box-shadow:var(--shadow-lift);border-color:#fefae0eb;transform:translateY(-4px)}.project-body h3,.strength-card h3,.timeline-item h3{margin:0 0 12px;font-size:28px;line-height:1.24}.project-body p,.timeline-item p{color:#2f3a27b8;margin:0;font-size:17px;line-height:1.72}.strength-card{height:200px;min-height:200px;color:var(--ink);background:linear-gradient(#fffdf1bd,#fffdf180),#fefae094;align-content:start;padding:20px 24px;transition:transform .22s,box-shadow .22s,border-color .22s;display:grid;position:relative;overflow:hidden}.strength-card svg{box-sizing:content-box;background:var(--green-glass);color:var(--leaf);border:1px solid #526f4321;border-radius:18px;margin-bottom:10px;padding:7px;box-shadow:inset 0 1px #fffdf17a}.strength-card h3{margin-bottom:8px;font-size:22px}.strength-card p{color:#2f3a27b8;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}@keyframes toolstack-scroll{0%{transform:translate(0,0)}to{transform:translate(calc(-50% - clamp(18px,2.5vw,39px)))}}.experience-tab{min-height:78px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #2f3a271f;grid-template-columns:18px 48px minmax(0,1fr) 20px;align-items:center;gap:14px;padding:14px 20px;transition:background .24s,border-color .24s,box-shadow .24s,transform .24s;display:grid;position:relative}.experience-tab:last-child{border-bottom:0}.experience-tab:focus-visible{outline:none}.experience-tab.is-active{z-index:1;background:radial-gradient(circle at 13%,#2f3a2721,#0000 28%),linear-gradient(90deg,#fffdf1e6,#fffdf19e);transform:translate(4px);box-shadow:0 18px 42px #2f3a271f}.experience-detail{border-radius:var(--card-radius);-webkit-backdrop-filter:blur(26px)saturate(1.24);backdrop-filter:blur(26px)saturate(1.24);background:#edf9fa42;border:1px solid #ffffffb8;align-content:start;min-height:100%;padding:clamp(28px,3vw,46px);animation:.52s cubic-bezier(.16,1,.3,1) experience-detail-reveal;display:grid;position:relative;box-shadow:0 32px 90px #355f6724,inset 0 1px #ffffffc7}.experience-detail:before,.experience-detail:after{display:none}.experience-detail:before{border-top:1px solid;border-left:1px solid;top:-1px;left:-1px}.experience-detail:after{border-bottom:1px solid;border-right:1px solid;bottom:-1px;right:-1px}.experience-detail h3{color:var(--ink);letter-spacing:0;margin:0 0 22px;font-family:Noto Serif SC,Songti SC,serif;font-size:clamp(30px,2.9vw,35px);line-height:1.08}.experience-detail>p:not(.experience-detail-date){color:#2f3a27b8;max-width:900px;margin:0;font-size:clamp(17px,1.15vw,20px);line-height:1.75}.timeline{gap:0;display:grid}.timeline-item{border-left:1px solid #2f3a2742;grid-template-columns:180px minmax(0,1fr);gap:32px;padding:0 0 38px;display:grid}.timeline-item:last-child{padding-bottom:0}.timeline-item>span{color:#2f3a279e;margin-left:-1px;padding-left:28px;font-size:18px;font-weight:800;position:relative}.timeline-item>span:before{background:var(--ink);content:"";border-radius:50%;width:13px;height:13px;position:absolute;top:8px;left:-7px}.contact-card{border-radius:var(--radius);-webkit-backdrop-filter:blur(28px)saturate(1.38);backdrop-filter:blur(28px)saturate(1.38);background:#e5f5f842;border:1px solid #ffffff9e;gap:12px;padding:28px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffc2,inset 0 -1px #ffffff42,0 28px 80px #2c5b6533}.contact-card:before{border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff47,#0000 42%);height:auto;inset:0}.contact-card>a{z-index:1;color:#2f3a27e0;-webkit-backdrop-filter:blur(16px)saturate(1.24);backdrop-filter:blur(16px)saturate(1.24);background:#ffffff29;border:1px solid #ffffff7a;border-radius:999px;align-items:center;gap:12px;min-height:58px;padding:14px;font-weight:700;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s;display:flex;position:relative;box-shadow:inset 0 1px #ffffff8a,0 10px 26px #355f6714}.contact-card>a>.inline-editable{overflow-wrap:anywhere;min-width:0}.contact-card svg{color:var(--leaf)}.contact-card a:hover{color:var(--ink);background:#ffffff4d;border-color:#ffffffc7;transform:translateY(-2px);box-shadow:inset 0 1px #ffffffb3,0 14px 30px #355f6724}.workflow-case-card,.content-work-card{border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);color:var(--ink);font:inherit;text-align:left;cursor:pointer;box-shadow:var(--card-shadow);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);padding:0;transition:transform .26s cubic-bezier(.16,1,.3,1),box-shadow .26s,border-color .26s;display:grid;position:relative;overflow:hidden}.workflow-case-card:before,.content-work-card:before{content:"";background:linear-gradient(90deg,#0000,#fffdf1e6,#0000);height:1px;position:absolute;inset:0 0 auto}.workflow-case-card:hover,.content-work-card:hover{box-shadow:var(--shadow-lift);border-color:#fffdf1f5;transform:translateY(-6px)}.workflow-case-card.is-inline-editing,.content-work-card.is-inline-editing{cursor:default}.workflow-case-card:focus-visible,.content-work-card:focus-visible,.content-filter-button:focus-visible,.workflow-back-button:focus-visible,.media-close-button:focus-visible,.media-nav-button:focus-visible{outline-offset:4px;outline:3px solid #83c90052}.workflow-case-card{grid-template-rows:201px minmax(270px,1fr);min-height:471px}.workflow-visual-pet{background:linear-gradient(135deg, #fefae0bd, #c0c78c94 54%, #526f4347), var(--sage-1)}.workflow-visual-market{background:linear-gradient(90deg,#fefae04d 1px,#0000 1px) 0 0/46px 46px,linear-gradient(#fefae047 1px,#0000 1px) 0 0/46px 46px,linear-gradient(145deg,#b9947047,#a6b37dbd)}.workflow-visual-video{background:linear-gradient(#fefae029,#526f4361),url(/optimized-media/meadow-hero-dc13aa35e88b.jpg) 50%/cover}.workflow-visual-tool{background:radial-gradient(circle at 32% 28%,#fffdf19e,#0000 28%),linear-gradient(145deg,#fefae0ad,#b994703d 42%,#a6b37d8f)}.workflow-case-tags,.content-work-tags,.workflow-detail-tags,.media-caption-tags{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.workflow-case-tags span,.content-work-tags span,.workflow-detail-tags em,.media-caption-tags em{min-height:32px;color:var(--leaf);background:#fffdf18a;border:1px solid #526f4324;border-radius:999px;align-items:center;padding:7px 10px;font-size:13px;font-style:normal;font-weight:800;display:inline-flex}.content-work-card{grid-template-rows:190px minmax(200px,1fr);min-height:390px}.skill-case-summary-card{-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);background:linear-gradient(#fffdf1d6,#fffdf194),#fefae094;border:1px solid #fffdf1c7;border-radius:26px;gap:18px;padding:clamp(22px,2.2vw,34px);display:grid;box-shadow:0 28px 82px #526f4324}.skill-case-summary-card>span{color:#2f3a2780;letter-spacing:.14em;font-family:Consolas,Courier New,monospace;font-size:13px;font-weight:950}.skill-case-summary-card dl{gap:18px;margin:0;display:grid}.skill-case-summary-card div{gap:6px;display:grid}.skill-case-summary-card dt{color:var(--leaf);font-size:13px;font-weight:950}.skill-case-summary-card dd{color:#2f3a27b8;margin:0;font-size:15px;font-weight:760;line-height:1.6}.skill-problem-card,.skill-output-card,.skill-workflow-step,.skill-empty-evidence{-webkit-backdrop-filter:blur(16px)saturate(1.08);backdrop-filter:blur(16px)saturate(1.08);background:linear-gradient(#fffdf1d1,#fffdf18f),#fefae09e;border:1px solid #fffdf1c7;border-radius:22px;box-shadow:0 20px 58px #526f431c}.skill-problem-card{align-content:space-between;min-height:190px;padding:22px;display:grid}.skill-problem-card span,.skill-output-card>span,.skill-workflow-step span,.skill-evidence-card span{color:var(--leaf);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:950}.skill-problem-card p{color:#2f3a27c2;margin:28px 0 0;font-size:17px;font-weight:780;line-height:1.62}.skill-workflow-step h3,.skill-output-card h3{color:var(--ink);font-family:var(--font-title-cn);margin:8px 0 0;font-size:clamp(26px,2.2vw,42px);line-height:1.14}.skill-workflow-step p,.skill-output-card p{color:#2f3a27b8;margin:12px 0 0;font-size:16px;font-weight:700;line-height:1.72}.skill-evidence-card{background:#fffdf19e;border:1px solid #fffdf1c7;border-radius:24px;gap:11px;padding:10px;transition:transform .22s,box-shadow .22s;display:grid;overflow:hidden;box-shadow:0 22px 60px #526f431f}.skill-evidence-card:hover{transform:translateY(-4px);box-shadow:0 30px 76px #526f4329}.skill-evidence-card img{aspect-ratio:4/3;object-fit:cover;border-radius:18px;width:100%;display:block}.skill-evidence-card span,.skill-evidence-card strong{padding:0 8px}.skill-evidence-card strong{color:#2f3a27c7;padding:0 8px;font-size:15px;font-weight:850;line-height:1.42}.skill-evidence-card p{color:#2f3a27ad;margin:0;padding:0 8px 8px;font-size:13.5px;line-height:1.6}.skill-output-card{align-content:start;min-height:260px;padding:clamp(22px,2.6vw,34px);display:grid}.skill-output-card.is-reuse{background:linear-gradient(#f6ffe1db,#fffdf19e),#c0c78c2e;grid-column:span 2}.skill-row-card{min-height:96px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-bottom:1px solid #526f4314;border-radius:0;grid-template-columns:76px minmax(0,1fr);align-items:center;padding:0 clamp(22px,3vw,38px);display:grid}.skill-row-card:last-child{border-bottom:0}.skill-row-card span{color:var(--leaf);font-family:var(--font-mono);letter-spacing:.08em;font-size:14px;font-weight:950}.skill-row-card p{color:#2f3a27c7;margin:0;font-size:clamp(17px,1.25vw,22px);font-weight:800;line-height:1.58}.workflow-page{height:100vh;min-height:100vh;color:var(--ink);background:radial-gradient(circle at 12% 10%,#fefae0c7,#0000 28%),radial-gradient(circle at 86% 16%,#c0c78c52,#0000 30%),linear-gradient(#fffdf1 0%,#f7f1d2 48%,#c0c78ca3 100%);overflow:hidden}.workflow-topbar{z-index:20;width:min(calc(100% - 80px), var(--max));-webkit-backdrop-filter:blur(22px)saturate(1.12);backdrop-filter:blur(22px)saturate(1.12);background:#fffdf1c7;border:1px solid #fffdf1b8;border-radius:999px;justify-content:space-between;align-items:center;min-height:64px;padding:8px 10px;display:flex;position:fixed;top:22px;left:50%;transform:translate(-50%);box-shadow:0 18px 58px #526f4321}.workflow-back-button{min-height:46px;color:var(--cream);font:inherit;cursor:pointer;background:#2f3a27e6;border:1px solid #526f4324;border-radius:999px;align-items:center;gap:9px;padding:10px 16px;font-weight:900;transition:transform .18s,background .18s;display:inline-flex}.workflow-back-button:hover{background:var(--ink);transform:translateY(-1px)}.workflow-detail-card{border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg);box-shadow:var(--card-shadow);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);gap:18px;padding:24px;display:grid}.workflow-detail-card>span{color:#2f3a2794;letter-spacing:.12em;font-family:Consolas,Courier New,monospace;font-size:13px;font-weight:900}.workflow-evidence-panel,.workflow-canvas-card{border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);background:linear-gradient(#fffdf1cc,#fffdf18a),#fefae09e;overflow:hidden}.workflow-canvas-card{height:min(76vh,820px);min-height:620px}.workflow-layer-item:focus-visible,.workflow-back-button:focus-visible{outline-offset:3px;outline:3px solid #83c90061}.workflow-empty-state{place-content:center;gap:18px;width:min(100% - 80px,880px);min-height:100vh;margin:0 auto;display:grid}.workflow-empty-state h1{margin:0;font-family:Noto Serif SC,Songti SC,serif;font-size:clamp(44px,5vw,82px);line-height:1.08}.workflow-empty-state p:not(.section-kicker){color:#2f3a27b8;margin:0;font-size:18px;line-height:1.7}.media-lightbox{z-index:60;place-items:center;padding:clamp(18px,3vw,44px);display:grid;position:fixed;inset:0}.media-lightbox-backdrop{cursor:zoom-out;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1f2a1d94;border:0;position:absolute;inset:0}.media-lightbox-panel{z-index:1;border-radius:var(--radius);-webkit-backdrop-filter:blur(22px)saturate(1.08);backdrop-filter:blur(22px)saturate(1.08);background:linear-gradient(#fffdf1e0,#fffdf1b3),#fefae0d1;border:1px solid #fffdf1b8;grid-template-columns:minmax(0,1fr) minmax(360px,.3fr);width:min(1500px,100%);max-height:min(88vh,880px);display:grid;position:relative;overflow:hidden;box-shadow:0 40px 110px #1f2a1d57}.media-close-button{z-index:4;width:46px;height:46px;color:var(--ink);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf1c7;border:1px solid #526f4324;border-radius:50%;place-items:center;display:grid;position:absolute;top:16px;right:16px}.media-viewer{background:linear-gradient(90deg,#fffdf129 1px,#0000 1px) 0 0/46px 46px,linear-gradient(#fffdf124 1px,#0000 1px) 0 0/46px 46px,#c0c78c33;place-items:center;min-height:min(76vh,760px);display:grid;position:relative;overflow:hidden}.media-viewer img,.media-viewer video{object-fit:contain;width:100%;height:100%;max-height:min(76vh,760px);display:block}.media-placeholder{color:#2f3a27b3;text-align:center;background:#fffdf194;border:1px dashed #526f4347;border-radius:24px;place-items:center;gap:10px;width:min(520px,78%);padding:42px;display:grid}.media-placeholder span{color:var(--ink);font-family:Noto Serif SC,Songti SC,serif;font-size:30px;font-weight:900}.media-placeholder p{margin:0;line-height:1.6}.media-nav-button{z-index:3;width:54px;height:54px;color:var(--ink);cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf1ad;border:1px solid #fffdf1c2;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 18px 42px #2f3a272e}.media-nav-prev{left:18px}.media-nav-next{right:18px}.media-caption{align-content:end;gap:20px;padding:clamp(24px,3vw,42px);display:grid}.media-caption span{color:var(--leaf);letter-spacing:.1em;font-size:13px;font-weight:900}.media-caption h3{color:var(--ink);margin:12px 0;font-family:Noto Serif SC,Songti SC,serif;font-size:clamp(30px,2.6vw,52px);line-height:1.12}.media-caption p{color:#2f3a27b8;margin:0;font-size:16px;line-height:1.72}.media-lightbox-panel.is-video-gallery{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fbf8f0;border:1px solid #17191470;border-radius:2px;grid-template-columns:minmax(0,1fr) minmax(390px,.4fr);width:min(1500px,100%);height:min(92vh,940px);max-height:min(92vh,940px);box-shadow:0 32px 80px #17191447}.media-lightbox-panel.is-video-gallery .media-caption{scrollbar-color:#526f4357 transparent;scrollbar-width:thin;background:#fbf8f0;border-left:1px solid #1719143d;align-content:start;gap:0;min-height:0;padding:32px clamp(24px,2.6vw,38px) 28px;overflow-y:auto}.media-lightbox-panel.is-video-gallery .media-close-button{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fbf8f0;border-color:#1719144d;border-radius:0;width:38px;height:38px;top:22px;right:22px}.media-lightbox-panel.is-video-gallery .media-viewer{background:linear-gradient(90deg,#1719140e 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#1719140e 1px,#0000 1px) 0 0/28px 28px,#ddd6c8;min-height:0;padding:clamp(22px,3vw,42px) clamp(58px,6vw,96px)}.video-gallery-stage{background:#171914;border:1px solid #fbf8f04d;grid-template-rows:auto minmax(0,1fr) auto;width:min(100%,560px);height:100%;min-height:0;margin:0;padding:12px;display:grid;box-shadow:0 24px 52px #17191442}.video-gallery-stage header,.video-gallery-stage figcaption{color:#fbf8f0;justify-content:space-between;align-items:center;gap:18px;min-height:34px;display:flex}.video-gallery-stage header{border-bottom:1px solid #fbf8f033;padding-bottom:10px}.video-gallery-stage figcaption{border-top:1px solid #fbf8f033;padding-top:10px}.video-gallery-stage header span,.video-gallery-stage header b,.video-gallery-stage figcaption span,.video-gallery-stage figcaption b{color:inherit;font-family:var(--ly-body);letter-spacing:0;font-size:9px;font-weight:800}.video-gallery-stage figcaption span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.media-lightbox-panel.is-video-gallery .video-gallery-stage video{object-fit:contain;background:#050605;width:100%;height:100%;min-height:0;max-height:none}.media-lightbox-panel.is-video-gallery .media-nav-button{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fbf8f0;border-color:#17191452;border-radius:0;width:44px;height:44px;box-shadow:0 8px 20px #1719141f}.video-gallery-film-index{border-top:1px solid #1719143d;margin-top:22px;display:grid}.video-gallery-film-index button{color:#1719149e;cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #17191433;border-radius:0;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:40px;padding:0;display:grid}.video-gallery-film-index button>span{color:#7a3031;font:700 10px/1 var(--ly-en);letter-spacing:0}.video-gallery-film-index button>strong{font:700 12px/1.3 var(--ly-title);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.video-gallery-film-index button>small{color:#1719147a;font:700 8px/1 var(--ly-body);margin:0}.video-gallery-film-index button.is-active{color:#171914;background:#68664f1a}.video-gallery-film-index button:hover:not(.is-active){color:#171914;background:#68664f0f}.video-gallery-film-index button:focus-visible,.video-gallery-script-section summary:focus-visible{outline-offset:-2px;outline:2px solid #7a30318f}.media-lightbox-panel.is-video-gallery .media-caption-story{padding:28px 0 24px}.media-lightbox-panel.is-video-gallery .media-caption h3{color:#171914;max-width:10ch;font-family:var(--ly-title);margin:15px 0 18px;font-size:clamp(31px,2.3vw,43px);font-weight:700;line-height:1.08}.media-lightbox-panel.is-video-gallery .media-caption p{color:#171914ad;font-size:14px;line-height:1.78}.media-lightbox-panel.is-video-gallery .media-caption small{color:#17191485;margin-top:18px;font-size:10px;font-weight:700}.video-gallery-case-details{gap:0;display:grid}.video-gallery-reference-section{border-bottom:1px solid #1719143d;padding:24px 0}.video-gallery-detail-heading{justify-content:space-between;align-items:baseline;gap:18px;display:flex}.video-gallery-detail-heading span{color:#7a3031;letter-spacing:0;font-size:9px;font-weight:800}.video-gallery-detail-heading strong{color:#171914;font:700 15px/1.2 var(--ly-title)}.video-gallery-reference-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.video-gallery-reference-grid figure{min-width:0;margin:0;position:relative}.video-gallery-reference-grid figure>b{z-index:1;color:#fbf8f0;width:24px;height:22px;font:700 9px/1 var(--ly-en);background:#7a3031;place-items:center;display:grid;position:absolute;top:6px;left:6px}.video-gallery-reference-grid img{aspect-ratio:1;object-fit:cover;background:#e6dfcf;border:1px solid #17191438;border-radius:0;width:100%;display:block}.video-gallery-reference-grid figcaption{color:#17191494;text-align:left;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:9px;font-weight:800;overflow:hidden}.video-gallery-script-status{margin:0;font-weight:700;color:#2f3a2794!important;font-size:13px!important}.video-gallery-script-status.is-error{color:#a04b45!important}.video-gallery-script-section{border-bottom:1px solid #1719143d}.video-gallery-script-section summary{color:#171914;cursor:pointer;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:50px;list-style:none;display:grid}.video-gallery-script-section summary::-webkit-details-marker{display:none}.video-gallery-script-section summary span{color:#7a3031;font:700 10px/1 var(--ly-en);letter-spacing:0}.video-gallery-script-section summary strong{font:700 14px/1.25 var(--ly-title)}.video-gallery-script-section summary b{color:#17191475;font:800 8px/1 var(--ly-body)}.video-gallery-script-section[open] summary b{color:#7a3031}.video-gallery-script-copy{color:#171914b3;font-family:var(--ly-body);white-space:pre-wrap;word-break:break-word;margin:0;padding:4px 0 22px 42px;font-size:12px;font-weight:400;line-height:1.78}.media-lightbox-panel.is-video-gallery .media-caption-tags{border-top:1px solid #1719143d;gap:0;margin-top:22px;display:grid}.media-lightbox-panel.is-video-gallery .media-caption-tags em{color:#171914a8;background:0 0;border:0;border-bottom:1px solid #1719142e;border-radius:0;justify-content:flex-start;min-height:38px;padding:0;font-size:10px;font-weight:700}@media (width<=900px){.media-lightbox-panel.is-video-gallery{flex-direction:column;height:auto;max-height:94vh;display:flex;overflow-y:auto}.media-lightbox-panel.is-video-gallery .media-caption{border-top:1px solid #1719143d;border-left:0;flex:none;overflow:visible}.media-lightbox-panel.is-video-gallery .media-viewer{flex:none;height:min(68svh,680px);min-height:520px}.video-gallery-stage{width:min(100%,460px)}}@media (width<=720px){.media-lightbox{padding:10px}.media-lightbox-panel.is-video-gallery .media-viewer{height:62svh;min-height:470px;padding:16px 52px}.media-lightbox-panel.is-video-gallery .media-close-button{top:10px;right:10px}.media-lightbox-panel.is-video-gallery .media-caption{padding:24px 20px}.video-gallery-stage{padding:8px}.video-gallery-film-index button{grid-template-columns:24px minmax(0,1fr)}.video-gallery-film-index button>small{display:none}.video-gallery-reference-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.video-gallery-script-copy{padding-left:36px;font-size:12px;line-height:1.65}}@keyframes meadow-drift{0%{transform:scale(1.02)translate(-1%,-.5%)}to{transform:scale(1.06)translate(1%,.5%)}}@keyframes hero-ripple{0%{opacity:.72;transform:translate(-50%,-50%)scale(.38)}to{opacity:0;transform:translate(-50%,-50%)scale(1.7)}}@keyframes hero-wallpaper-pulse{0%{filter:saturate()contrast();transform:scale(1)translate(0,0)}34%{filter:saturate(1.05)contrast(1.03);transform:scale(1.014)translateY(.42%)}to{filter:saturate()contrast();transform:scale(1)translate(0,0)}}@keyframes experience-detail-reveal{0%{clip-path:inset(0 0 100%);opacity:0;transform:translateY(22px)}to{clip-path:inset(0);opacity:1;transform:translate(0,0)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.experience-detail{animation:none}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1180px){html{scroll-snap-type:none}.skill-case-summary-card{max-width:720px}.skill-output-card.is-reuse{grid-column:span 2}.section{align-items:start;min-height:auto;padding:108px 0}.hero-section{--hero-copy-width:min(560px, calc(100vw - 64px))}.container,.nav-bar{width:min(calc(100% - 44px), var(--max))}.nav-bar nav,.nav-contact{display:none}.nav-menu-button{display:grid}.mobile-menu-backdrop{z-index:31;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2f3a2752;transition:opacity .28s;display:block;position:fixed;inset:0}.mobile-menu-backdrop.is-open{opacity:1;pointer-events:auto}.mobile-menu-panel{z-index:32;-webkit-backdrop-filter:blur(20px)saturate(1.1);backdrop-filter:blur(20px)saturate(1.1);background:#fffdf1f0;width:min(84vw,380px);transition:transform .48s cubic-bezier(.22,1,.36,1);display:block;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-26px 0 70px #2f3a272e}.mobile-menu-panel.is-open{transform:translate(0)}.mobile-menu-inner{align-content:start;gap:4px;min-height:100%;padding:104px 30px 30px;display:grid}.mobile-menu-eyebrow{color:var(--leaf);letter-spacing:.05em;text-transform:uppercase;margin-bottom:16px;font-size:13px;font-weight:900}.mobile-menu-inner a{min-height:58px;color:var(--ink);opacity:0;border-bottom:1px solid #526f431f;align-items:center;font-family:Noto Serif SC,Songti SC,serif;font-size:28px;font-weight:800;transition:opacity .42s,transform .42s;display:flex;transform:translate(26px)}.mobile-menu-panel.is-open .mobile-menu-inner a{opacity:1;transition-delay:var(--item-delay);transform:translate(0)}.mobile-menu-inner .mobile-menu-contact{background:var(--ink);min-height:48px;color:var(--cream);border:0;border-radius:999px;justify-content:center;margin-top:26px;font-family:inherit;font-size:16px}.mobile-menu-note{color:var(--ink);opacity:0;background:#c0c78c29;border:1px solid #526f4324;border-radius:20px;gap:6px;margin-top:24px;padding:16px;transition:opacity .42s,transform .42s;display:grid;transform:translate(26px)}.mobile-menu-panel.is-open .mobile-menu-note{opacity:1;transition-delay:.44s;transform:translate(0)}.mobile-menu-note strong{color:var(--leaf);font-size:15px}.mobile-menu-note span{color:#2f3a27ad;font-size:13px;line-height:1.5}.profile-top,.profile-experience,.project-workflow-intro,.project-category-heading,.section-head.split,.experience-grid,.experience-board,.workflow-detail-hero,.workflow-canvas-layout,.media-lightbox-panel,.contact-layout{grid-template-columns:1fr}.profile-info-card{max-width:720px}.experience-detail{min-height:360px}.project-workflow-grid,.workflow-case-grid,.content-works-grid,.projects-grid,.strength-grid,.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-detail-card{max-width:720px}.workflow-canvas-card{order:1;height:70vh;min-height:70vh}.workflow-page{height:auto;min-height:100svh;overflow:auto}.media-lightbox-panel{overflow-y:auto}.media-viewer{min-height:min(58vh,620px)}}@media (width<=720px){.skill-case-summary-card,.skill-case-definition{border-radius:22px}.skill-row-card{grid-template-columns:48px minmax(0,1fr);min-height:92px;padding:0 18px}.skill-row-card p{font-size:16px}.skill-problem-card{min-height:168px}.skill-workflow-step h3,.skill-output-card h3{font-size:27px}.skill-output-card,.skill-output-card.is-reuse{grid-column:auto;min-height:auto}.hero-section{--hero-copy-width:100%;min-height:100svh}.container,.nav-bar{width:min(calc(100% - 32px), var(--max))}.nav-bar{grid-template-columns:1fr auto;min-height:58px;padding:7px 8px 7px 12px;top:12px}.brand strong{display:none}.brand span{width:36px;height:36px;font-size:14px}.nav-contact{font-size:0}.mobile-menu-panel{width:min(88vw,360px)}.mobile-menu-inner{padding:92px 22px 24px}.mobile-menu-eyebrow{margin-bottom:10px}.mobile-menu-inner a{min-height:54px;font-size:24px}.mobile-menu-note{border-radius:18px;margin-top:18px;padding:14px}.mobile-menu-inner .mobile-menu-contact{margin-top:18px}.primary-button,.secondary-button{width:auto;min-height:48px;padding:12px 16px;font-size:14px}.projects-grid,.project-workflow-grid,.workflow-case-grid,.content-works-grid,.strength-grid,.metric-grid{grid-template-columns:1fr}.project-workflow{gap:18px}.project-workflow-meta{flex-direction:column;align-items:flex-start;gap:8px}.workflow-card{min-height:200px}.workflow-case-card,.content-work-card{min-height:0}.workflow-case-card{grid-template-rows:240px auto}.workflow-topbar,.workflow-detail-shell{width:min(calc(100% - 32px), var(--max))}.workflow-topbar{min-height:58px;top:12px}.workflow-back-button{min-height:42px;padding:9px 13px;font-size:14px}.workflow-canvas-card{height:70svh;min-height:70svh}.media-lightbox{padding:12px}.media-lightbox-panel{border-radius:24px;width:100%;max-height:92vh}.media-viewer{min-height:54vh}.media-caption{padding:22px}.media-nav-button{width:46px;height:46px}.experience-tab{grid-template-columns:16px 42px minmax(0,1fr) 18px;min-height:76px;padding:14px 16px}.experience-detail{min-height:0;padding:24px}.experience-detail h3{font-size:clamp(30px,8vw,35px)}.experience-detail>p:not(.experience-detail-date){font-size:16px}.project-card{grid-template-rows:340px auto;min-height:0}.timeline-item{grid-template-columns:1fr;gap:8px}}@media (width<=420px){.primary-button,.secondary-button{padding-left:14px;padding-right:14px}}.project-studio-card,.project-workflow,.workflow-case-card,.content-work-card{border-radius:18px}@keyframes portfolio-evidence-enter{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes ecom-evidence-enter{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.experience-tab:hover{background:#ffeeb294}.experience-tab.is-active{background:radial-gradient(circle at 13%,#f7d84a47,#0000 28%),linear-gradient(90deg,#fff4bdeb,#fffce8a8);box-shadow:0 18px 42px #c29d2729}.profile-metric-grid div,.strength-card,.workflow-card,.projects-section>.container:not(.project-studio) .workflow-case-card,.projects-section>.container:not(.project-studio) .content-work-card{-webkit-backdrop-filter:blur(24px)saturate(1.2);backdrop-filter:blur(24px)saturate(1.2);background:#edf9fa4d;border-color:#ffffffc2;box-shadow:inset 0 1px #ffffffd6,0 22px 54px #355f671f}.strength-card{height:220px;min-height:220px}.workflow-card:hover,.projects-section>.container:not(.project-studio) .workflow-case-card:hover,.projects-section>.container:not(.project-studio) .content-work-card:hover{border-color:#fffffff5;box-shadow:inset 0 1px #ffffffeb,0 28px 64px #355f672e}.profile-metric-grid>div,.strength-card,.projects-section>.container:not(.project-studio) .workflow-card{background:#fcedc5;border-color:#ffffffdb;box-shadow:inset 0 1px #ffffffdb,0 22px 54px #8b683521}.ecom-evidence-stack{gap:18px;padding:clamp(18px,3vw,40px);display:grid}.nav-bar nav a.is-active{color:var(--ink);background:#fff4bdd1;box-shadow:inset 0 0 0 1px #526f431a}.nav-bar>.dock-outer{justify-self:center;min-width:0}.nav-bar .site-navigation-dock{background:#edf9fa57}@media (width>=901px){.nav-bar{width:max-content;min-height:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0;display:block}.nav-bar .brand,.nav-bar .nav-contact,.nav-bar .nav-editor-button,.nav-bar .nav-menu-button{display:none}.nav-bar>.dock-outer{display:flex}}.page-overview{background:#fffdf157;border-bottom:1px solid #526f4324;align-items:end;min-height:min(78svh,820px);padding:clamp(154px,19vh,224px) 0 clamp(64px,10vh,120px);display:grid}.page-overview-layout{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:end;gap:clamp(42px,8vw,130px);display:grid}@media (width<=1100px) and (width>=901px){.page-overview-signals{grid-area:1/2/span 2}}.page-overview h1{max-width:12ch;color:var(--ink);font-family:var(--font-title-cn);letter-spacing:0;margin:18px 0;font-size:clamp(46px,5.5vw,82px);line-height:1.08}.page-overview p:not(.section-kicker){color:#2f3a27c2;max-width:42em;margin:0;font-size:clamp(16px,1.35vw,20px);line-height:1.78}.page-overview-signals{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.page-overview-signals span{color:#2f3a27b8;background:#fcedc5b3;border:1px solid #ffffffd1;border-radius:8px;align-content:center;gap:8px;min-height:118px;padding:18px 20px;font-size:14px;line-height:1.5;display:grid;box-shadow:inset 0 1px #ffffffc2,0 16px 38px #526f4317}.page-overview-signals strong{color:var(--ink);font-family:var(--font-title-en);font-size:clamp(30px,3vw,46px);line-height:1}.page-overview-project-signals{grid-template-columns:repeat(3,minmax(0,1fr))}.page-overview-project-signals span{min-height:144px}.media-lightbox-panel.is-product-gallery{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fbf8f0;border:1px solid #17191470;border-radius:2px;grid-template-columns:minmax(0,1fr) minmax(340px,.36fr);width:min(1500px,100%);height:min(92vh,940px);box-shadow:0 32px 80px #17191447}.media-lightbox-panel.is-product-gallery .media-caption{scrollbar-color:#526f4357 transparent;scrollbar-width:thin;background:#fbf8f0;border-left:1px solid #1719143d;align-content:start;gap:0;min-height:0;padding:32px clamp(24px,2.6vw,38px) 28px;overflow-y:auto}.media-lightbox-panel.is-product-gallery .media-close-button{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fbf8f0;border-color:#1719144d;border-radius:0;width:38px;height:38px;top:22px;right:22px}.media-lightbox-panel.is-product-gallery .media-viewer{background:linear-gradient(90deg,#1719140e 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#1719140e 1px,#0000 1px) 0 0/28px 28px,#e6dfcf;place-items:stretch stretch;min-height:0;overflow:hidden}.media-caption-editorial-head{border-bottom:1px solid #1719143d;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;min-height:74px;padding-right:48px;display:grid}.media-caption-editorial-head>span{font-family:var(--ly-body);padding-top:4px;font-weight:800;color:#7a3031!important;letter-spacing:0!important;font-size:9px!important}.media-caption-editorial-head>strong{color:#7a303161;font:600 48px/.82 var(--ly-en)}.product-gallery-comic-scroll{overscroll-behavior:contain;scrollbar-color:#30362a75 transparent;scrollbar-width:thin;scroll-behavior:smooth;width:100%;height:100%;overflow-y:auto}.product-gallery-comic-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:dense;gap:18px;width:94%;min-height:100%;margin:0 auto;padding:clamp(22px,2.6vw,38px);display:grid}.product-gallery-comic-panel{color:#171914;text-align:left;cursor:zoom-in;background:#fbf8f0;border:1px solid #17191447;border-radius:0;min-width:0;padding:7px;transition:border-color .18s,box-shadow .22s,transform .22s;position:relative;overflow:hidden;box-shadow:0 8px 18px #1f1c1614}.product-gallery-comic-panel:after{content:"";pointer-events:none;border:1px solid #ffffff80;position:absolute;inset:8px}.product-gallery-comic-panel.is-wide{grid-column:1/-1}.product-gallery-comic-panel:hover,.product-gallery-comic-panel:focus-visible,.product-gallery-comic-panel.is-current{z-index:1;border-color:#7a3031;transform:translateY(-1px);box-shadow:0 14px 28px #1f1c1624}.product-gallery-comic-panel:focus-visible{outline-offset:2px;outline:3px solid #7a303133}.product-gallery-comic-panel img{object-fit:contain;background:#f4f0e7;border:1px solid #1719141f;width:100%;height:100%;max-height:none;display:block}.product-gallery-comic-panel.is-wide img{aspect-ratio:16/10}.product-gallery-comic-panel.is-tall img{aspect-ratio:4/5}.product-gallery-comic-panel.is-square img{aspect-ratio:1}.product-gallery-comic-number{z-index:2;color:#fbf8f0;min-width:32px;height:28px;font:800 11px/1 var(--ly-en);background:#7a3031;place-items:center;padding:0 7px;display:grid;position:absolute;top:16px;left:16px}.product-gallery-comic-caption{z-index:2;border-top:1px solid #1719142e;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 14px;min-height:62px;padding:12px 8px 6px;display:grid;position:relative}.product-gallery-comic-caption strong{overflow-wrap:anywhere;font:800 clamp(16px, 1.45vw, 23px)/1.2 var(--ly-title)}.product-gallery-comic-caption small{color:#1719149e;font:800 10px/1.35 var(--ly-body);text-align:right;margin:0}.product-gallery-focus-view{z-index:6;place-items:center;padding:clamp(18px,3vw,42px);display:grid;position:absolute;inset:0}.product-gallery-focus-backdrop{cursor:zoom-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#171914d6;border:0;border-radius:0;position:absolute;inset:0}.product-gallery-focus-figure{z-index:1;background:#171914;border:1px solid #fbf8f06b;grid-template-rows:minmax(0,1fr) auto;width:min(1180px,100%);height:min(82vh,820px);margin:0;padding:12px;display:grid;position:relative;box-shadow:0 32px 70px #00000061}.product-gallery-focus-figure img{object-fit:contain;background:#f4f0e7;width:100%;height:100%;min-height:0;max-height:none;display:block}.product-gallery-focus-figure figcaption{color:#fbf8f0;justify-content:space-between;align-items:center;gap:16px;min-height:54px;padding:10px 8px 0;display:flex}.product-gallery-focus-figure figcaption strong{font:800 18px/1.25 var(--ly-title)}.product-gallery-focus-figure figcaption span{color:#fbf8f0a8;font:800 11px/1.35 var(--ly-body)}.product-gallery-focus-close{z-index:2;color:#fbf8f0;cursor:pointer;background:#171914c7;border:1px solid #fbf8f080;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:20px;right:20px}.product-gallery-series-tabs{border-top:1px solid #1719143d;grid-template-columns:1fr;gap:0;margin-top:22px;display:grid}.product-gallery-series-tabs button{color:#171914a3;cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #1719143d;border-radius:0;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:12px;min-height:46px;padding:0;display:grid}.product-gallery-series-tabs button span{font:700 11px/1 var(--ly-en);color:#7a3031!important;letter-spacing:0!important}.product-gallery-series-tabs button strong{font:700 14px/1.25 var(--ly-title)}.product-gallery-series-tabs button.is-active{color:#171914;background:#68664f1a}.product-gallery-series-tabs button:hover:not(.is-active){color:#171914;background:#68664f0f}.media-caption-progress{min-height:0;font-family:var(--ly-body);background:0 0;border:0;border-radius:0;padding:0;font-weight:800;display:block;color:#7a3031!important;letter-spacing:0!important;font-size:9px!important}.media-caption-story{border-bottom:1px solid #1719143d;padding:28px 0 24px}.media-lightbox-panel.is-product-gallery .media-caption h3{color:#171914;max-width:9ch;font-family:var(--ly-title);margin:15px 0 18px;font-size:clamp(31px,2.45vw,45px);font-weight:700;line-height:1.08}.media-lightbox-panel.is-product-gallery .media-caption p{color:#171914ad;font-size:14px;line-height:1.78}.media-caption small{color:#2f3a2799;margin-top:16px;font-size:12px;font-weight:700;line-height:1.55;display:block}.media-lightbox-panel.is-product-gallery .media-caption small{color:#17191485;margin-top:18px;font-size:10px;font-weight:700}.media-lightbox-panel.is-product-gallery .media-caption-tags{border-top:1px solid #1719143d;gap:0;margin-top:22px;display:grid}.media-lightbox-panel.is-product-gallery .media-caption-tags em{color:#171914a8;background:0 0;border:0;border-bottom:1px solid #1719142e;border-radius:0;justify-content:flex-start;min-height:38px;padding:0;font-size:10px;font-weight:700}.media-caption-folio{border-top:2px solid #171914;justify-content:space-between;gap:18px;margin-top:34px;padding-top:12px;display:flex}.media-caption-folio span,.media-caption-folio b{font-family:var(--ly-body);font-weight:800;color:#171914!important;letter-spacing:0!important;font-size:8px!important}@media (width<=900px){.media-lightbox-panel.is-product-gallery{height:min(92vh,940px)}.media-lightbox-panel.is-product-gallery .media-caption{padding-top:28px;overflow:visible}.media-lightbox-panel.is-product-gallery .media-viewer{height:68svh;min-height:0}}@media (width<=760px){.media-lightbox-panel.is-product-gallery{flex-direction:column;height:auto;max-height:92vh;display:flex}.media-lightbox-panel.is-product-gallery .media-caption{border-bottom:1px solid #1719143d;border-left:0;flex:none;order:-1;height:auto;min-height:0}.media-lightbox-panel.is-product-gallery .media-viewer{flex:none;height:auto;min-height:0;overflow:visible}.media-lightbox-panel.is-product-gallery .product-gallery-comic-scroll{height:auto;overflow:visible}}@media (width<=620px){.media-lightbox-panel.is-product-gallery .media-viewer{height:auto}.product-gallery-comic-grid{grid-template-columns:1fr;gap:12px;padding:14px}.media-caption-editorial-head{min-height:62px}.media-lightbox-panel.is-product-gallery .media-caption h3{max-width:none;font-size:32px}.product-gallery-comic-panel,.product-gallery-comic-panel.is-wide{grid-column:1}.product-gallery-comic-caption{min-height:54px;padding-top:10px}.product-gallery-comic-caption strong{font-size:17px}.product-gallery-focus-view{padding:10px}.product-gallery-focus-figure{height:min(86vh,780px);padding:8px}.product-gallery-focus-figure figcaption{flex-direction:column;align-items:flex-start;gap:4px}.product-gallery-series-tabs{gap:6px}.product-gallery-series-tabs button{min-height:40px;padding-inline:6px;font-size:11px}}@media (width<=900px){.nav-bar>.dock-outer{display:none}.page-overview{min-height:auto;padding:142px 0 72px}.page-overview-layout{grid-template-columns:1fr;gap:34px}.about-overview-speech,.page-overview-signals{grid-area:auto}.page-overview h1{max-width:14ch}}@media (width<=640px){.page-overview{padding:122px 0 56px}.page-overview h1{font-size:clamp(38px,11vw,50px)}.page-overview-signals,.page-overview-project-signals{grid-template-columns:repeat(2,minmax(0,1fr))}.page-overview-project-signals span:last-child{grid-column:span 2}.page-overview-signals span,.page-overview-project-signals span{min-height:98px;padding:15px}}@media (width<=760px){.ecom-evidence-stack{padding:20px 12px}}.portfolio-shell.is-home-page,.portfolio-shell.is-content-page,.li-skill-page{--content-bg:#d7cebd;--content-bg-deep:#b9aa94;--content-surface:#eee7da;--content-surface-strong:#f4eee3;--content-ink:#293126;--content-muted:#293126b3;--content-line:#34372b2e;--content-accent:#58684a;--content-warm:#866d58;--content-shadow:0 18px 48px #3e312421;color:var(--content-ink)}.portfolio-shell.is-content-page{background:linear-gradient(180deg, #f3ede2b8, #d7cebde0), var(--content-bg)}.portfolio-shell.is-content-page .portfolio-main{background:linear-gradient(#37352a09 1px,#0000 1px) 0 0/88px 88px,linear-gradient(90deg,#37352a08 1px,#0000 1px) 0 0/88px 88px,linear-gradient(#e5ddcf 0%,#d8cebd 58%,#c4b6a0 100%);min-height:100svh}.portfolio-shell.is-content-page .nav-bar:not(.is-home-nav){box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000}.portfolio-shell.is-content-page .section-kicker,.li-skill-page .section-kicker{color:var(--content-accent);letter-spacing:.08em}.portfolio-shell.is-content-page .portfolio-main,.portfolio-shell.is-content-page .portfolio-main :not(.studio-copy):not(.studio-copy *),.li-skill-page,.li-skill-page *{letter-spacing:0}.portfolio-shell.is-content-page,.li-skill-page{--content-bg:#eef4f2;--content-bg-deep:#d7e6e2;--content-surface:#f7faf8;--content-surface-strong:#fffefd;--content-ink:#263735;--content-muted:#263735ad;--content-line:#315f5926;--content-line-strong:#315f5945;--content-accent:#527d74;--content-warm:#d56f5d;--content-dark:#315f59;--content-paper:#f4f8f5;--content-shadow:0 20px 48px #30534e1f;--card-radius:8px;--radius:8px;color:var(--content-ink)}.portfolio-shell.is-content-page .portfolio-main,.li-skill-page{background:linear-gradient(90deg,#315f5906 1px,#0000 1px) 0 0/96px 96px,linear-gradient(#315f5906 1px,#0000 1px) 0 0/96px 96px,linear-gradient(#f7faf8 0%,#edf5f2 52%,#e1eeeb 100%)}.portfolio-shell.is-content-page .nav-bar:not(.is-home-nav) .dock-panel{-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);background:#fafdfbd1;border:1px solid #527d7438;box-shadow:0 12px 34px #2d5a531f}.portfolio-shell.is-content-page .nav-bar:not(.is-home-nav) .dock-item{color:#263735c7}.portfolio-shell.is-content-page .nav-bar:not(.is-home-nav) .dock-item.is-active{color:#244b46;background:#dcebe7}.portfolio-shell.is-content-page .page-overview{border-bottom:1px solid var(--content-line-strong);background:linear-gradient(90deg,#d6ebe5eb 0 29%,#0000 29%),linear-gradient(132deg,#f9fcfa 0%,#edf6f3 58%,#dceae7 100%);min-height:min(76svh,760px);padding-block:clamp(126px,15vh,176px) clamp(70px,9vh,104px)}.portfolio-shell.is-content-page .section-kicker,.li-skill-page .section-kicker{color:var(--content-warm);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;font-size:11px;font-weight:900}.portfolio-shell.is-content-page .section{border-top:1px solid var(--content-line);background:0 0;padding-block:clamp(88px,10vw,144px);position:relative}.portfolio-shell.is-content-page .section:before,.portfolio-shell.is-content-page .section:after{display:none}.portfolio-shell.is-content-page .page-overview-signals{border-top:1px solid var(--content-line-strong);border-left:1px solid var(--content-line-strong);grid-area:2/3;grid-template-columns:repeat(2,minmax(0,1fr));align-self:end;gap:0}.portfolio-shell.is-content-page .page-overview-signals span{border:0;border-right:1px solid var(--content-line-strong);border-bottom:1px solid var(--content-line-strong);background:#ffffff6b;border-radius:0;min-height:118px;padding:18px}.portfolio-shell.is-content-page .page-overview-signals strong{font-family:var(--font-body);font-weight:900}.portfolio-shell.is-content-page .profile-copy h2,.portfolio-shell.is-content-page .section-head h2,.portfolio-shell.is-content-page .project-section-head h2{max-width:13ch;color:var(--content-ink);font-family:var(--font-body);white-space:normal;font-size:clamp(42px,4.8vw,70px);font-weight:900;line-height:1.06}.portfolio-shell.is-content-page .profile-info-card,.portfolio-shell.is-content-page .strength-card,.portfolio-shell.is-content-page .workflow-card,.portfolio-shell.is-content-page .experience-detail,.portfolio-shell.is-content-page .toolstack-panel,.portfolio-shell.is-content-page .project-workflow{box-shadow:none;background:0 0;border-radius:0}.portfolio-shell.is-content-page .profile-info-card{border-width:1px 0 0;padding:0}.portfolio-shell.is-content-page .section-head.split{grid-template-columns:minmax(0,1fr);gap:34px}.portfolio-shell.is-content-page .strength-card{border:0;border-right:1px solid var(--content-line-strong);border-bottom:1px solid var(--content-line-strong);grid-column:span 4;min-height:280px;padding:30px;transform:none}.portfolio-shell.is-content-page .strength-card:nth-child(4),.portfolio-shell.is-content-page .strength-card:nth-child(5){grid-column:span 6}.portfolio-shell.is-content-page .strength-card:hover{box-shadow:none;background:#ffffff94;transform:none}.portfolio-shell.is-content-page .strength-card svg{color:var(--content-warm);background:0 0;border:0}.portfolio-shell.is-content-page .project-workflow{border:0;grid-template-columns:minmax(220px,.34fr) minmax(0,1fr);gap:34px 64px;padding:0;display:grid}.portfolio-shell.is-content-page .workflow-card{border:0;border-bottom:1px solid var(--content-line);grid-template-columns:68px minmax(170px,.42fr) minmax(0,1fr);align-items:center;gap:24px;min-height:0;padding:22px 0}.portfolio-shell.is-content-page .workflow-card h4,.portfolio-shell.is-content-page .workflow-card p{margin:0}.portfolio-shell.is-content-page .contact-card{max-width:500px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-top:1px solid #315f594d;border-radius:0;padding:0}.portfolio-shell.is-content-page .contact-card>a{color:#315f59;background:0 0;border:0;border-bottom:1px solid #315f5933;border-radius:0;min-height:64px;padding-inline:4px}.portfolio-shell.is-content-page .contact-card>a:hover{color:#244b46;background:#ffffff75;padding-left:12px}@media (width<=1100px){.portfolio-shell.is-content-page .page-overview{background:linear-gradient(132deg,#f8fbfa,#dcebe7)}.portfolio-shell.is-content-page .about-overview-speech,.portfolio-shell.is-content-page .page-overview-signals{grid-area:auto/1/auto/-1}}@media (width<=760px){.portfolio-shell.is-content-page .portfolio-main,.li-skill-page{background:linear-gradient(90deg,#315f5906 1px,#0000 1px) 0 0/56px 56px,linear-gradient(#315f5905 1px,#0000 1px) 0 0/56px 56px,linear-gradient(#f8fbfa 0%,#edf5f2 58%,#dfece8 100%)}.portfolio-shell.is-content-page .page-overview{padding-block:112px 52px}.portfolio-shell.is-content-page .about-page-overview .page-overview-layout,.portfolio-shell.is-content-page .projects-overview-showcase,.portfolio-shell.is-content-page .profile-top,.portfolio-shell.is-content-page .project-workflow,.li-skill-page .skill-case-hero-copy,.li-skill-page .skill-case-spread{grid-template-columns:1fr}.portfolio-shell.is-content-page .about-overview-speech,.portfolio-shell.is-content-page .page-overview-signals{grid-column:1}.portfolio-shell.is-content-page .strength-card,.portfolio-shell.is-content-page .strength-card:nth-child(4),.portfolio-shell.is-content-page .strength-card:nth-child(5){grid-column:span 12;min-height:0}.portfolio-shell.is-content-page .workflow-card{grid-template-columns:52px minmax(0,1fr)}.portfolio-shell.is-content-page .workflow-card p{grid-column:2}}@media (prefers-reduced-motion:reduce){.portfolio-shell.is-content-page .projects-section .workflow-case-card,.portfolio-shell.is-content-page .projects-section .content-work-card,.portfolio-shell.is-content-page .contact-card>a{transition:none}}.portfolio-shell.is-content-page .portfolio-main,.portfolio-shell.is-content-page .portfolio-main *,.li-skill-page,.li-skill-page *{letter-spacing:0}.portfolio-shell.is-content-page .page-overview{border-bottom-color:var(--content-line);background:linear-gradient(125deg,#f5efe4bd,#c5b8a375),0 0;min-height:min(68svh,700px);padding-block:clamp(136px,16vh,190px) clamp(56px,8vh,88px)}.portfolio-shell.is-content-page .page-overview h1,.portfolio-shell.is-content-page .section h2,.portfolio-shell.is-content-page .project-category-heading h3,.portfolio-shell.is-content-page .project-workflow-intro h3,.portfolio-shell.is-content-page .about-problem-heading h3,.portfolio-shell.is-content-page .about-experience-heading h3{color:var(--content-ink);text-shadow:0 1px #f8f3e961}.portfolio-shell.is-content-page .page-overview p:not(.section-kicker),.portfolio-shell.is-content-page .profile-paragraphs p,.portfolio-shell.is-content-page .about-problem-list p,.portfolio-shell.is-content-page .project-workflow-note,.portfolio-shell.is-content-page .workflow-card p,.portfolio-shell.is-content-page .strength-card p{color:var(--content-muted)}.portfolio-shell.is-content-page .page-overview-signals span{border-color:var(--content-line);min-height:108px;box-shadow:none;color:var(--content-muted);background:#e1d4bec2;border-radius:8px}.portfolio-shell.is-content-page .page-overview-signals strong{color:var(--content-ink)}.portfolio-shell.is-content-page .profile-info-card,.portfolio-shell.is-content-page .metric-grid div,.portfolio-shell.is-content-page .strength-card,.portfolio-shell.is-content-page .workflow-card,.portfolio-shell.is-content-page .workflow-case-card,.portfolio-shell.is-content-page .content-work-card,.portfolio-shell.is-content-page .experience-detail,.portfolio-shell.is-content-page .toolstack-panel,.portfolio-shell.is-content-page .project-workflow,.portfolio-shell.is-content-page .contact-card{border-color:var(--content-line);box-shadow:var(--content-shadow);-webkit-backdrop-filter:none;backdrop-filter:none;background:#eee7dadb;border-radius:8px}.portfolio-shell.is-content-page .profile-info-card,.portfolio-shell.is-content-page .strength-card,.portfolio-shell.is-content-page .workflow-card,.portfolio-shell.is-content-page .experience-detail,.portfolio-shell.is-content-page .toolstack-panel{box-shadow:0 12px 32px #3e312417}.portfolio-shell.is-content-page .profile-info-card dl div,.portfolio-shell.is-content-page .about-problem-board,.portfolio-shell.is-content-page .about-problem-list li,.portfolio-shell.is-content-page .about-experience-heading,.portfolio-shell.is-content-page .project-workflow-meta{border-color:var(--content-line)}.portfolio-shell.is-content-page .strength-card svg{border-color:var(--content-line);box-shadow:none;color:var(--content-accent);background:#d5ccb9a3;border-radius:6px}.portfolio-shell.is-content-page .workflow-case-card,.portfolio-shell.is-content-page .content-work-card{border-radius:8px;overflow:hidden}.portfolio-shell.is-content-page .workflow-case-card:hover,.portfolio-shell.is-content-page .content-work-card:hover,.portfolio-shell.is-content-page .strength-card:hover{border-color:#58684a6b;transform:translateY(-3px);box-shadow:0 20px 52px #392e2229}.portfolio-shell.is-content-page .contact-card{-webkit-backdrop-filter:blur(18px)saturate(.82);backdrop-filter:blur(18px)saturate(.82);background:#2d2d24ad;border-color:#f6f0e442;box-shadow:0 24px 64px #251f183d}.portfolio-shell.is-content-page .contact-card:before{display:none}.portfolio-shell.is-content-page .contact-card>a{min-height:54px;box-shadow:none;color:#f6f0e4;background:#f6f0e414;border-color:#f6f0e438;border-radius:6px}.portfolio-shell.is-content-page .contact-card>a:hover{color:#fffaf0;background:#f6f0e429;border-color:#f6f0e47a}@media (width<=900px){.portfolio-shell.is-content-page .page-overview{min-height:auto;padding-block:140px 64px}}@media (width<=720px){.portfolio-shell.is-content-page .portfolio-main,.li-skill-page{background:linear-gradient(#37352a06 1px,#0000 1px) 0 0/56px 56px,linear-gradient(90deg,#37352a06 1px,#0000 1px) 0 0/56px 56px,linear-gradient(#e5ddcf 0%,#d7cebd 64%,#c4b6a0 100%)}.portfolio-shell.is-content-page .page-overview{padding-block:116px 48px}.portfolio-shell.is-content-page .about-overview-speech,.portfolio-shell.is-content-page .page-overview-signals{grid-area:auto/1;width:100%;max-width:none;margin-left:0}}.portfolio-shell.is-content-page,.li-skill-page{--visual-canvas:#f2e8d3;--visual-paper:#fbf8f0;--visual-sky:#e2e2d5;--visual-sky-strong:#c7cbbd;--visual-mint:#d7dacb;--visual-ink:#171914;--visual-muted:#68685f;--visual-line:#1719142e;--visual-line-strong:#17191457;--visual-accent:#7a3031;--visual-accent-dark:#542225;--visual-forest:#30362a;--visual-moss:#68664f;--visual-mist:#92998b;--visual-display:"Noto Serif SC", "Songti SC", serif;--visual-display-en:"Cormorant Garamond", Georgia, serif;--visual-body:"Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--visual-mono:"Fira Code", Consolas, monospace;color:var(--visual-ink);font-family:var(--visual-body)}.portfolio-shell.is-content-page .portfolio-main,.portfolio-shell.is-content-page .portfolio-content-gradient,.li-skill-page{background:var(--visual-canvas)}.portfolio-shell.is-content-page .page-overview{border-bottom:1px solid var(--visual-line-strong);background:var(--visual-paper);min-height:100dvh;padding:clamp(132px,16vh,188px) 0 clamp(72px,8vh,112px)}.portfolio-shell.is-content-page .page-overview-layout{position:relative}.portfolio-shell.is-content-page .section-kicker,.li-skill-page .section-kicker,.about-overview-discipline,.projects-overview-count{color:var(--visual-accent);font-family:var(--visual-mono);text-transform:uppercase;font-size:11px;font-weight:900}.portfolio-shell.is-content-page h1,.portfolio-shell.is-content-page h2,.portfolio-shell.is-content-page h3,.portfolio-shell.is-content-page h4,.li-skill-page h1,.li-skill-page h2,.li-skill-page h3,.li-skill-page h4{font-family:var(--visual-display);letter-spacing:0}.portfolio-shell.is-content-page .page-overview-signals{border:0;border-top:1px solid var(--visual-line-strong);grid-area:2/8/auto/-1;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.portfolio-shell.is-content-page .page-overview-signals span{border:0;border-right:1px solid var(--visual-line-strong);min-height:120px;color:var(--visual-muted);background:0 0;padding:18px 14px;font-size:11px}.portfolio-shell.is-content-page .page-overview-signals span:last-child{border-right:0}.portfolio-shell.is-content-page .page-overview-signals strong{color:var(--visual-ink);font-family:var(--visual-display-en);font-size:clamp(32px,3vw,50px)}.portfolio-shell.is-content-page .section{border-top:0;border-bottom:1px solid var(--visual-line-strong);padding-block:clamp(104px,11vw,176px)}.portfolio-shell.is-content-page .profile-info-card{border:0;border-top:4px solid var(--visual-accent);background:0 0;grid-column:10/-1;padding:0}.portfolio-shell.is-content-page .profile-copy h2,.portfolio-shell.is-content-page .section-head h2,.portfolio-shell.is-content-page .project-section-head h2{max-width:12ch;color:var(--visual-ink);font-size:clamp(54px,6.4vw,96px);line-height:.98}.portfolio-shell.is-content-page .profile-info-card dl div{border-bottom:1px solid var(--visual-line-strong);padding:18px 0}.portfolio-shell.is-content-page .section-head.split{grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);align-items:end;gap:8vw;display:grid}.portfolio-shell.is-content-page .strength-card{border-right:1px solid var(--visual-line-strong);border-bottom:1px solid var(--visual-line-strong);background:0 0;min-height:310px;padding:30px 28px 36px}.portfolio-shell.is-content-page .strength-card:hover{background:var(--visual-paper);transform:translateY(-8px)}.portfolio-shell.is-content-page .strength-card svg{color:var(--visual-accent)}.portfolio-shell.is-content-page .experience-tab{background:0 0;border-radius:0}.portfolio-shell.is-content-page .experience-tab.is-active{background:var(--visual-forest);color:var(--visual-paper)}.portfolio-shell.is-content-page .experience-detail{border:0;border-left:8px solid var(--visual-accent);background:var(--visual-paper);border-radius:0;padding:clamp(32px,5vw,72px);box-shadow:0 24px 64px #1719141a}.portfolio-shell.is-content-page .project-workflow{background:0 0;border:0;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;margin-top:72px;padding:0}.portfolio-shell.is-content-page .workflow-card{border-bottom:1px solid var(--visual-line-strong);background:0 0;grid-template-columns:72px minmax(170px,.48fr) minmax(0,1fr);padding:24px 0}.portfolio-shell.is-content-page .workflow-card:hover{background:#68664f1a;padding-inline:18px}.portfolio-shell.is-content-page.page-contact .portfolio-main{background:var(--visual-paper)}.portfolio-shell.is-content-page .contact-card{border:1px solid var(--visual-line-strong);border-top:3px solid var(--visual-accent);box-shadow:none;background:#fbf8f0c7;border-radius:0;gap:0;overflow:hidden}.portfolio-shell.is-content-page .contact-card>a{border:0;border-bottom:1px solid var(--visual-line);min-height:64px;color:var(--visual-ink);-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-radius:0;padding-inline:18px;font-weight:900}.portfolio-shell.is-content-page .contact-card>a:last-child{border-bottom:0}.portfolio-shell.is-content-page .contact-card>a:hover{background:var(--visual-paper);color:var(--visual-ink)}.portfolio-shell.is-content-page .contact-card svg{color:var(--visual-accent)}@media (prefers-reduced-motion:no-preference){.portfolio-shell.is-content-page .page-overview-signals,.portfolio-shell.is-content-page .about-overview-speech{animation:.72s cubic-bezier(.16,1,.3,1) .22s both visual-copy-enter}}@keyframes visual-copy-enter{0%{opacity:0;transform:translateY(36px)}to{opacity:1;transform:translateY(0)}}@keyframes visual-image-enter{0%{opacity:0;clip-path:inset(0 0 100%);transform:translateY(48px)rotate(0)}to{opacity:1;clip-path:inset(0)}}@media (width<=1100px){.portfolio-shell.is-content-page .page-overview-signals{grid-column:5/-1;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.portfolio-shell.is-content-page .page-overview{min-height:auto;padding:118px 0 72px}.portfolio-shell.is-content-page .about-page-overview .page-overview-layout,.portfolio-shell.is-content-page .projects-overview-showcase,.portfolio-shell.is-content-page .profile-top,.portfolio-shell.is-content-page .project-workflow,.portfolio-shell.is-content-page .section-head.split,.portfolio-shell.is-content-page .about-problem-board,.portfolio-shell.is-content-page .about-experience-heading,.portfolio-shell.is-content-page .profile-experience,.li-skill-page .skill-case-hero-copy,.li-skill-page .skill-case-spread{grid-template-columns:1fr}.portfolio-shell.is-content-page .about-overview-copy,.portfolio-shell.is-content-page .about-overview-portrait,.portfolio-shell.is-content-page .about-overview-speech,.portfolio-shell.is-content-page .page-overview-signals,.portfolio-shell.is-content-page .projects-overview-copy,.portfolio-shell.is-content-page .projects-overview-gallery,.portfolio-shell.is-content-page .profile-copy,.portfolio-shell.is-content-page .profile-info-card,.portfolio-shell.is-content-page .project-workflow-intro,.portfolio-shell.is-content-page .project-workflow-note,.portfolio-shell.is-content-page .project-workflow-grid{grid-area:auto/1}.portfolio-shell.is-content-page .page-overview-signals{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px}.portfolio-shell.is-content-page .profile-copy h2,.portfolio-shell.is-content-page .section-head h2,.portfolio-shell.is-content-page .project-section-head h2,.portfolio-shell.is-content-page .project-category-heading h3{font-size:clamp(44px,12vw,62px)}.portfolio-shell.is-content-page .profile-info-card{margin-top:48px}.portfolio-shell.is-content-page .workflow-card{grid-template-columns:52px minmax(0,1fr)}.portfolio-shell.is-content-page .workflow-card p{grid-column:2}.portfolio-shell.is-content-page .contact-card>a{border-radius:0;padding-inline:4px}}@media (prefers-reduced-motion:reduce){.portfolio-shell.is-content-page .page-overview *,.portfolio-shell.is-content-page .projects-section .workflow-case-card,.portfolio-shell.is-content-page .projects-section .content-work-card{transition:none;animation:none}}.ly-eyebrow,.ly-section-heading>p,.ly-feature-case-copy>p:first-child,.ly-feature-work>div>p:first-child,.ly-contact-directory span{color:var(--ly-oxblood);text-transform:uppercase;align-items:center;gap:10px;margin:0;font-size:11px;font-weight:700;line-height:1.2;display:flex}.ly-eyebrow:before,.ly-section-heading>p:before{content:"";background:currentColor;width:28px;height:1px}.ly-signal-strip{grid-template-columns:repeat(var(--ly-signal-count,4), minmax(0, 1fr));border-block:1px solid var(--ly-line);display:grid}.ly-signal-item{border-right:1px solid var(--ly-line);min-height:126px;padding:20px 22px;position:relative}.ly-signal-item:last-child{border-right:0}.ly-signal-item>span{color:var(--ly-oxblood);font-family:var(--ly-en);font-size:15px;font-weight:700;position:absolute;top:20px;right:18px}.ly-signal-item strong{color:var(--ly-ink);font-family:var(--ly-en);font-size:clamp(38px,4vw,58px);font-weight:600;line-height:.9;display:block}.ly-signal-item p{max-width:15ch;color:var(--ly-muted);margin:14px 0 0;font-size:12px;line-height:1.5}.ly-section{border-bottom:1px solid var(--ly-line);padding:clamp(96px,10vw,148px) 0}.ly-section-heading{grid-template-columns:190px minmax(0,1fr);gap:34px;margin-bottom:clamp(48px,6vw,78px);display:grid}.ly-section-heading>div{min-width:0}.ly-section-heading h2{max-width:14ch;color:var(--ly-ink);font-family:var(--ly-title);letter-spacing:0;text-wrap:balance;margin:0;font-size:clamp(46px,5.5vw,82px);font-weight:900;line-height:1.02}.ly-section-heading>div>span{max-width:52ch;color:var(--ly-muted);margin-top:20px;font-size:16px;line-height:1.8;display:block}.ly-section-heading.is-invert>p{color:#c7b59b}.ly-section-heading.is-invert h2{color:var(--ly-paper-bright)}.ly-section-heading.is-invert>div>span{color:#fbf8f0ad}@media (width<=820px){.ly-signal-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.ly-signal-item:nth-child(2n){border-right:0}.ly-signal-item:nth-child(n+3){border-top:1px solid var(--ly-line)}.ly-section-heading,.ly-profile-spread{grid-template-columns:1fr}.ly-section-heading{gap:18px}.ly-section-heading h2{font-size:clamp(42px,10vw,62px)}}@media (width<=560px){.ly-signal-strip,.ly-projects-page .ly-signal-strip{grid-template-columns:1fr}.ly-signal-item,.ly-signal-item:nth-child(2n){border-right:0;border-top:1px solid var(--ly-line);min-height:106px}.ly-signal-item:first-child{border-top:0}.ly-section{padding:76px 0}.ly-section-heading{margin-bottom:40px}.ly-section-heading h2{font-size:clamp(38px,11vw,50px)}}.portfolio-shell.is-home-page .nav-bar.is-home-nav .site-navigation-dock.is-editorial,.portfolio-shell.is-content-page .nav-bar:not(.is-home-nav) .site-navigation-dock.is-editorial{-webkit-backdrop-filter:blur(22px)saturate(1.15);backdrop-filter:blur(22px)saturate(1.15);background:linear-gradient(135deg,#fbf8f0c7,#e2e2d58a);border-color:#ffffffb8;box-shadow:inset 0 1px #ffffffeb,inset 0 -1px #68664f17,0 14px 34px #17191421}.portfolio-shell.is-home-page .nav-bar.is-home-nav .site-navigation-dock.is-editorial .dock-item,.portfolio-shell.is-content-page .nav-bar:not(.is-home-nav) .site-navigation-dock.is-editorial .dock-item{color:#30362ab8;background:#fbf8f0a8;border-color:#30362a21;box-shadow:inset 0 1px #ffffffd1,0 5px 13px #17191412}.portfolio-shell.is-home-page .nav-bar.is-home-nav .site-navigation-dock.is-editorial .dock-item:hover,.portfolio-shell.is-content-page .nav-bar:not(.is-home-nav) .site-navigation-dock.is-editorial .dock-item:hover{color:var(--visual-forest)}.portfolio-shell.is-home-page .nav-bar.is-home-nav .site-navigation-dock.is-editorial .dock-item.is-active,.portfolio-shell.is-content-page .nav-bar:not(.is-home-nav) .site-navigation-dock.is-editorial .dock-item.is-active{color:var(--visual-paper,#fbf8f0);background:#7a3031eb;border-color:#7a303159;box-shadow:inset 0 1px #ffffff3d,0 9px 20px #54222533}.portfolio-shell.is-home-page .nav-bar.is-home-nav .site-navigation-dock.is-editorial .dock-label,.portfolio-shell.is-content-page .nav-bar:not(.is-home-nav) .site-navigation-dock.is-editorial .dock-label{color:var(--visual-paper,#fbf8f0);background:#30362af5;border-color:#fbf8f02e}@keyframes ly-tool-scroll{to{transform:translate(-50%)}}@media (width>=1081px){.portfolio-shell.page-works,.page-works .portfolio-main,.page-works .ly-works-page{height:100svh;min-height:100svh;overflow:hidden}}.nav-bar .nav-editor-button{z-index:60;display:inline-flex;position:fixed;top:24px;right:24px}:root{--collection-body:"MuziJiaYouYaWeb", "Noto Sans SC", "Microsoft YaHei", sans-serif;--collection-title:"MuziHaltWeb", "MuziMarkerWeb", "MuziJiaYouYaWeb", "Noto Sans SC", sans-serif;--collection-display:"MuziSpriteWeb", "MuziMarkerWeb", "MuziJiaYouYaWeb", "Noto Sans SC", sans-serif;--collection-english-title:"MuziHaltWeb", "MuziJiaYouYaWeb", "Noto Sans SC", sans-serif;--font-body:var(--collection-body);--font-body-sans:var(--collection-body);--font-title-cn:var(--collection-title);--font-title-en:var(--collection-english-title);--font-hand:"MuziSpriteWeb", "MuziJiaYouYaWeb", cursive}.portfolio-shell,.ly-page,.li-skill-page{--ly-body:var(--collection-body);--ly-title:var(--collection-title);--ly-en:var(--collection-english-title);--visual-body:var(--collection-body);--visual-display:var(--collection-title);--visual-display-en:var(--collection-english-title);font-family:var(--collection-body);font-synthesis:none;font-weight:400}p,li,td,dd,blockquote,figcaption{font-family:var(--collection-body);font-weight:400!important}p strong,p b,p span,li strong,li b,td strong,td b,dd strong,dd b,blockquote strong,blockquote b,figcaption strong,figcaption b{font-weight:inherit!important}h1,.interactive-studio-hero .studio-title{font-family:var(--collection-display)!important;font-weight:400!important}h2,h3,h4{font-family:var(--collection-title)!important;font-weight:400!important}.interactive-studio-hero .studio-title strong{font-weight:400}.studio-eyebrow,.ly-eyebrow,.ly-section-heading>p,.ly-case-section-head>p,.ly-case-section-head>span,.ly-project-method-copy>p,.ly-case-hero-copy>p:first-child,.ly-contact-directory span,.ly-hero-figure figcaption,.ly-project-collage figcaption,.ly-contact-figure figcaption{font-family:var(--collection-english-title);font-weight:400}.ly-signal-item strong,.ly-case-logic-index>article>strong,.ly-section-number,.ly-case-section-number{font-family:var(--collection-display);font-weight:400}p,li,td,dd,blockquote,.ly-section-heading>div>span,.ly-case-rail>span,.ly-project-method-copy>span{-webkit-text-stroke:.3px currentColor;overflow-wrap:anywhere;color:inherit!important;white-space:pre-line!important;font-size:22px!important;line-height:1.8!important}.studio-eyebrow,.ly-eyebrow,.ly-section-heading p,.ly-case-rail>p,.ly-project-method-copy>p,.ly-feature-case-copy>p:first-child,.ly-feature-work>div>p:first-child,.ly-profile-index>p,.ly-experience-group>p,.ly-editorial-cta>.ly-wrap>p,.ly-case-next p,figcaption{-webkit-text-stroke:0;font-size:14px!important;line-height:1.6!important}.ly-section-heading>div>span,.ly-case-rail>span,.ly-project-method-copy>span{font-family:var(--collection-body)}.ly-inline-tags em,.ly-experience-tab em,.ly-profile-index dt,.studio-capability-signals span{color:inherit;-webkit-text-stroke:.3px currentColor;font-size:16px}.interactive-studio-hero .studio-lede,.interactive-studio-hero .studio-role{color:#202a1c!important;font-size:19px!important;line-height:1.7!important}h1,h2,h3,h4,p svg,li svg,dd svg{-webkit-text-stroke:0}.interactive-studio-hero .studio-copy,.interactive-studio-hero.is-copy-visible .studio-copy,.interactive-studio-hero.is-video-ready:not(.is-copy-visible) .studio-copy{--studio-copy-left:clamp(28px, 5vw, 84px);--studio-copy-bottom:clamp(32px, 5.5vh, 80px);top:auto;right:auto;bottom:var(--studio-copy-bottom);left:var(--studio-copy-left);isolation:isolate;width:min(760px,46vw);transform:none;container-type:inline-size}.interactive-studio-hero:after{background:0 0}.interactive-studio-hero .studio-copy:before{top:-112px;right:calc(-1*clamp(72px,12vw,180px));bottom:calc(-1 * var(--studio-copy-bottom));left:calc(-1 * var(--studio-copy-left));z-index:-1;content:"";pointer-events:none;opacity:0;background:radial-gradient(100% 115% at 0 100%,#f8faf3f7 0%,#f3f7edeb 48%,#f3f7edb3 72%,#f3f7ed00 100%);transition:opacity .7s;position:absolute;-webkit-mask-image:linear-gradient(#0000 0,#000 72px);mask-image:linear-gradient(#0000 0,#000 72px)}.interactive-studio-hero.is-copy-settled .studio-copy:before{opacity:1}.interactive-studio-hero .studio-title{letter-spacing:-.025em;color:#253125;white-space:nowrap;gap:4px;font-size:clamp(36px,16cqi,116px);line-height:1.02}.interactive-studio-hero .studio-title strong{color:#4c6341;font-size:.8em}.interactive-studio-hero .studio-title-line>span:not(.inline-editable){align-items:baseline;gap:.14em;display:inline-flex}.interactive-studio-hero .studio-title .studio-title-prefix,.interactive-studio-hero .studio-title .studio-title-main{text-shadow:0 1px #fffdf559;display:inline-block}.interactive-studio-hero .studio-title .studio-title-prefix{color:#974c42;font-size:1.18em}.interactive-studio-hero .studio-title .studio-title-main{color:#294836}.interactive-studio-hero .studio-title-cn{letter-spacing:0;color:#28352a;white-space:nowrap;margin:20px 0 0;font-size:min(clamp(26px,2.2vw,40px),5.8cqi);line-height:1.2;display:block}.interactive-studio-hero .studio-title-cn span,.interactive-studio-hero .studio-title-cn strong{font:inherit;display:inline}.interactive-studio-hero .studio-title-cn>span,.interactive-studio-hero .studio-title-cn>strong{display:block}.interactive-studio-hero .studio-role{flex-wrap:wrap;align-items:baseline;gap:6px 12px;max-width:none;margin-top:16px;display:flex}.interactive-studio-hero .studio-name{color:#18281b;white-space:nowrap;-webkit-text-stroke:.55px currentColor;font-size:25px}.interactive-studio-hero .studio-capability-signals{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.interactive-studio-hero .studio-capability-signals>span:first-child{color:#934a43;background:#f5ddd4e6;border-color:#934a4333}.interactive-studio-hero .studio-capability-signals>span:nth-child(2){color:#4e603d;background:#e1e8d5e6;border-color:#4e603d33}.interactive-studio-hero .studio-capability-signals>span:nth-child(3){color:#705231;background:#ede1c9e6;border-color:#70523133}.interactive-studio-hero .studio-actions{margin-top:20px}@media (width<=1180px){.interactive-studio-hero .studio-copy,.interactive-studio-hero.is-copy-visible .studio-copy,.interactive-studio-hero.is-video-ready:not(.is-copy-visible) .studio-copy{--studio-copy-left:32px;width:49vw}}@media (width<=900px){.interactive-studio-hero .studio-copy,.interactive-studio-hero.is-copy-visible .studio-copy,.interactive-studio-hero.is-video-ready:not(.is-copy-visible) .studio-copy{--studio-copy-left:24px;--studio-copy-bottom:32px;width:min(620px,100% - 48px)}.interactive-studio-hero .studio-title-cn{margin-top:16px;font-size:min(30px,5.8cqi)}}@media (width<=620px){.interactive-studio-hero .studio-copy:before{top:-84px;right:-60px}.interactive-studio-hero .studio-copy,.interactive-studio-hero.is-copy-visible .studio-copy,.interactive-studio-hero.is-video-ready:not(.is-copy-visible) .studio-copy{--studio-copy-left:20px;--studio-copy-bottom:24px;width:calc(100% - 40px)}.interactive-studio-hero .studio-title-cn{margin-top:16px;font-size:min(clamp(23px,6vw,28px),5.8cqi)}.interactive-studio-hero .studio-role{gap:4px 8px;margin-top:12px}.interactive-studio-hero .studio-name{font-size:23px}.interactive-studio-hero .studio-capability-signals span{padding:5px 10px;font-size:14px}.interactive-studio-hero .studio-actions{margin-top:16px}}@media (prefers-reduced-motion:reduce){.interactive-studio-hero .studio-copy:before{opacity:1;transition:none}}@keyframes visual-work-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.media-lightbox-panel.is-visual-portfolio .media-caption-story h3{text-wrap:balance;max-width:none}.cf-cat-bowl{--cf-blue:#845337;--cf-green:#46523e}.interactive-studio-hero.is-typewriter-hero:before,.interactive-studio-hero.is-typewriter-hero:after,.interactive-studio-hero.is-typewriter-hero .studio-copy:before,.interactive-studio-hero.is-typewriter-hero .studio-copy:after{content:none;background:0 0;display:none;-webkit-mask-image:none;mask-image:none}.interactive-studio-hero.is-typewriter-hero .studio-copy{opacity:1;text-shadow:0 1px 2px #191b14a6,0 3px 14px #191b1459;transition:none;transform:none}.is-typewriter-hero .studio-copy :is(.studio-title,.studio-title-line,.studio-title-cn,.studio-role,.studio-capability-signals,.studio-actions>a){opacity:1;animation:none;transform:none}.is-typewriter-hero .studio-title-cn,.is-typewriter-hero .studio-name{color:#fff7e8;text-shadow:inherit}.interactive-studio-hero.is-typewriter-hero .studio-title .studio-title-prefix{color:#b7c9a3;text-shadow:0 1px 3px #191b14cc,0 4px 18px #191b146b;font-size:1.36em}.interactive-studio-hero.is-typewriter-hero .studio-title .studio-title-main{color:#fff7e8;text-shadow:0 1px 3px #191b14cc,0 4px 18px #191b146b}.interactive-studio-hero.is-typewriter-hero .studio-copy .studio-role{opacity:1;color:#f9f2e2!important}.is-typewriter-hero .studio-copy .studio-type-run,.is-typewriter-hero .studio-copy .studio-type-visual,.is-typewriter-hero .studio-copy .studio-type-glyph{font:inherit;color:inherit;letter-spacing:inherit;text-shadow:inherit;display:inline}.is-typewriter-hero .studio-type-glyph{white-space:pre;position:relative}.is-typewriter-hero .studio-type-glyph[data-revealed=false]{visibility:hidden}.is-typewriter-hero .studio-type-caret{opacity:.8;pointer-events:none;background:currentColor;width:2px;height:.8em;position:absolute;top:.12em;right:-.08em}.is-typewriter-hero :is(.studio-capability-signals,.studio-actions){text-shadow:none}.interactive-studio-hero.is-typewriter-hero .studio-copy :is(.studio-capability-signals,.studio-actions){opacity:1;transition:opacity .38s,transform .38s;transform:translateY(0)}.interactive-studio-hero.is-typewriter-hero[data-supporting-ready=false] .studio-copy :is(.studio-capability-signals,.studio-actions){opacity:0;pointer-events:none;transition:none;transform:translateY(6px)}.interactive-studio-hero.is-typewriter-hero .studio-copy:focus-within :is(.studio-capability-signals,.studio-actions){opacity:1;pointer-events:auto;transition:none;transform:none}.is-typewriter-hero .studio-primary-action{border:1px solid #fff7e873}.is-typewriter-hero .studio-playback-controls{z-index:5;align-items:center;gap:8px;display:flex;position:absolute;bottom:28px;right:28px}.is-typewriter-hero .studio-playback-controls :is(.studio-intro-control,.studio-sound-control){color:#fff7e8;min-height:44px;font:inherit;cursor:pointer;text-shadow:none;background:#20261ca3;border:1px solid #fff7e86b;border-radius:24px;justify-content:center;align-items:center;gap:7px;padding:8px 14px;font-size:16px;display:inline-flex;position:static}.is-typewriter-hero .studio-sound-control[aria-pressed=true]{color:#f5c5b8;border-color:#edb1a2}.is-typewriter-hero .studio-playback-controls button:focus-visible{outline-offset:4px;outline:2px solid #fff7e8}@media (hover:hover) and (pointer:fine){.is-typewriter-hero .studio-playback-controls button:hover{background:#20261cdb}}@media (width<=620px){.interactive-studio-hero.is-typewriter-hero .studio-copy{--studio-copy-bottom:84px}.is-typewriter-hero .studio-playback-controls{bottom:18px;right:20px}.is-typewriter-hero .studio-playback-controls :is(.studio-intro-control,.studio-sound-control){padding:7px 12px;font-size:15px}}@media (prefers-reduced-motion:reduce){.is-typewriter-hero .studio-type-caret{display:none}.interactive-studio-hero.is-typewriter-hero .studio-copy :is(.studio-capability-signals,.studio-actions){transition:none}}.page-loading{color:#4a5a42;text-align:center;background:#f9f7ef;place-content:center;min-height:45vh;padding:48px 24px;display:grid}.page-loading-overlay{z-index:1000;background:#f9f7eff0;position:fixed;inset:0}.page-loading button{color:inherit;cursor:pointer;background:#fffdf7;border:1px solid #aab59d;border-radius:6px;padding:10px 18px}.route-progress{z-index:2000;pointer-events:none;background:#d5dfc7;width:100%;height:3px;position:fixed;top:0;left:0}.route-error{z-index:2000;color:#3b4b30;background:#fffdf7;border:1px solid #b4bea6;border-radius:8px;padding:16px 20px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #25321a20}.route-error a,.route-error button{color:inherit;margin-left:12px}
