:root{--paper:#faf9f6;--paper-2:#f3f0e9;--ink:#14130f;--ink-soft:#3d3a34;--muted:#837d73;--line:#e5e0d7;--line-strong:#cec8bd;--olive:#4a5a41;--max:1320px;--pad:clamp(20px, 4.2vw, 64px);--head-indent:64px;--head-gap:clamp(12px, 2vw, 32px);--ease:cubic-bezier(.22, .61, .36, 1);--sans:"Helvetica Neue", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{min-height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:16px;line-height:1.6}::selection{background:var(--ink);color:var(--paper)}a{color:inherit}img{max-width:100%}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.shell{width:100%;max-width:var(--max);padding-inline:var(--pad);margin-inline-start:auto;margin-inline-end:auto}.micro{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-size:10.5px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:100;background:var(--ink);color:var(--paper);padding:10px 16px;font-size:12px;text-decoration:none;position:absolute;top:0;left:-9999px}.skip:focus{top:12px;left:12px}.hdr{z-index:50;-webkit-backdrop-filter:blur(14px)saturate(1.1);backdrop-filter:blur(14px)saturate(1.1);border-bottom:1px solid var(--line);background:#faf9f6e0;position:sticky;top:0}.hdr__inner{align-items:center;gap:clamp(16px,3vw,40px);height:64px;display:flex}.hdr__brand{flex:none;align-items:center;gap:10px;text-decoration:none;display:flex}.hdr__mark{background:var(--ink);width:24px;height:24px;color:var(--paper);border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid}.hdr__word{letter-spacing:.26em;text-transform:uppercase;font-size:11px;font-weight:600}.hdr__nav{flex:1;justify-content:center;align-items:center;gap:clamp(12px,1.8vw,26px);display:flex}.hdr__link{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap;cursor:pointer;transition:color .25s var(--ease);background:0 0;border:0;padding:6px 0;font-family:inherit;font-size:11px;text-decoration:none;position:relative}.hdr__link:after{content:"";background:var(--ink);transform-origin:0;height:1px;transition:transform .35s var(--ease);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.hdr__link:hover,.hdr__link.is-active{color:var(--ink)}.hdr__link.is-active:after{transform:scaleX(1)}.hdr__actions{flex:none;align-items:center;gap:clamp(12px,1.6vw,20px);display:flex}.lang{align-items:center;gap:5px;display:flex}.lang button{font:inherit;letter-spacing:.08em;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px;font-size:11px}.lang button.is-on{color:var(--ink);font-weight:600}.lang__sep{color:var(--line-strong);font-size:10px}.btn{border:1px solid var(--ink);height:44px;color:var(--ink);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .25s var(--ease), color .25s var(--ease);background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:0 22px;font-family:inherit;font-size:11px;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--ink);color:var(--paper)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn--sm{height:34px;padding:0 15px;font-size:10.5px}.btn--solid{background:var(--ink);color:var(--paper)}.hero{border-bottom:1px solid var(--line);scroll-margin-top:88px}.hero>.shell.hero__inner{grid-template-columns:minmax(230px,330px) minmax(0,1fr);align-items:center;gap:clamp(36px,7vw,120px);min-height:calc(100svh - 66px);padding-block-start:clamp(36px,6vw,88px);padding-block-end:clamp(36px,6vw,88px);display:grid}.hero__cluster{flex-direction:column;align-items:flex-start;gap:18px;max-width:760px;display:flex}.hero__name{letter-spacing:-.035em;flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin:0;font-size:clamp(28px,3.6vw,46px);font-weight:500;line-height:1.05;display:flex}.hero__name-en{letter-spacing:.24em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:500}.hero__hint{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:6px 0 0;font-size:10.5px}.portrait{border:1px solid var(--line-strong);background:var(--paper-2);margin:0;overflow:hidden}.portrait img{aspect-ratio:3/4;object-fit:cover;object-position:50% 32%;width:100%;display:block}.bubbles{flex-wrap:wrap;align-items:center;gap:12px 14px;max-width:720px;margin:0;display:flex}.bubble{border:1px solid var(--line-strong);color:var(--ink);text-align:left;cursor:pointer;transition:transform .35s var(--ease), background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);background:0 0;border-radius:999px;flex-direction:column;gap:4px;padding:15px 24px;font-family:inherit;text-decoration:none;display:inline-flex}.bubble--md{padding:19px 30px}.bubble--lg{padding:24px 38px}.bubble__tag{letter-spacing:-.01em;white-space:nowrap;font-size:15px;line-height:1.2}.bubble--md .bubble__tag{font-size:18px}.bubble--lg .bubble__tag{font-size:22px;font-weight:500}.bubble__meta{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap;transition:color .3s var(--ease);font-size:10px}.bubble--solid{background:var(--ink);border-color:var(--ink);color:var(--paper)}.bubble--solid .bubble__meta{color:#faf9f69e}.bubble:hover{background:var(--ink);border-color:var(--ink);color:var(--paper);transform:translateY(-2px)}.bubble:hover .bubble__meta{color:#faf9f69e}.section{border-bottom:1px solid var(--line);padding-block-start:clamp(56px,7.5vw,112px);padding-block-end:clamp(56px,7.5vw,112px);scroll-margin-top:88px}.section__head{grid-template-columns:var(--head-indent) 1fr;gap:var(--head-gap);align-items:start;padding-bottom:clamp(26px,4vw,46px);display:grid}.section__num{letter-spacing:.16em;color:var(--muted);padding-top:.6em;font-size:11px}.section__title{letter-spacing:-.035em;margin:0;font-size:clamp(26px,3.2vw,42px);font-weight:500;line-height:1.1}.section__sub{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:10px;font-size:11px;display:block}.section__body{padding-left:calc(var(--head-indent) + var(--head-gap))}.about{grid-template-columns:minmax(0,1.5fr) minmax(200px,.7fr);gap:clamp(32px,6vw,96px);display:grid}.about__lead{letter-spacing:-.01em;max-width:30em;color:var(--ink-soft);margin:0 0 clamp(24px,3vw,36px);font-size:clamp(16px,1.6vw,19px);line-height:1.75}.about__points{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(24px,4vw,56px);margin:0;padding:0;list-style:none;display:grid}.about__point{border-top:1px solid var(--line-strong);color:var(--ink-soft);grid-template-columns:28px minmax(0,1fr);gap:10px;padding:18px 0;font-size:13.5px;line-height:1.8;display:grid}.about__index{letter-spacing:.14em;color:var(--muted);padding-top:3px;font-size:10px}.about__aside{border-top:1px solid var(--line-strong);padding-top:16px}.about__facts{gap:13px;margin:16px 0 0;display:grid}.about__facts>div{grid-template-columns:54px minmax(0,1fr);gap:12px;font-size:13px;line-height:1.5;display:grid}.about__facts dt{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding-top:2px;font-size:10px}.about__facts dd{margin:0}.about__facts a{border-bottom:1px solid var(--line-strong);word-break:break-word;padding-bottom:1px;text-decoration:none}.about__facts a:hover{border-color:var(--ink)}.about__links{gap:10px;margin:14px 0 0;padding:0;font-size:14px;list-style:none;display:grid}.about__links a{border-bottom:1px solid var(--line-strong);padding-bottom:2px;text-decoration:none}.about__links a:hover{border-color:var(--ink)}.about__pending{color:var(--muted);margin:14px 0 0;font-size:13px;line-height:1.7}.edu{border-top:1px solid var(--line-strong);margin:0;padding:0;list-style:none}.edu__row{border-bottom:1px solid var(--line);grid-template-columns:130px minmax(0,1fr);gap:clamp(16px,3vw,44px);padding:clamp(20px,2.6vw,30px) 0;display:grid}.edu__period{letter-spacing:.06em;color:var(--muted);padding-top:4px;font-size:12px}.edu__school{letter-spacing:-.015em;margin:0 0 6px;font-size:clamp(17px,1.9vw,21px);font-weight:500}.edu__meta{color:var(--ink-soft);margin:0;font-size:13px}.edu__chips{flex-wrap:wrap;gap:6px;margin:14px 0 0;padding:0;list-style:none;display:flex}.edu__chips li{border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:3px 10px;font-size:11px;line-height:1.55}.xp{border-top:1px solid var(--line-strong)}.xp-group+.xp-group{margin-top:clamp(36px,5vw,64px)}.xp-group__title{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;font-size:11px;font-weight:500}.xp__item{border-bottom:1px solid var(--line)}.xp__head{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:140px minmax(0,1.2fr) minmax(0,.8fr) 90px 20px;align-items:baseline;gap:clamp(10px,2.2vw,32px);padding:24px 0;display:grid}.xp__period{letter-spacing:.05em;color:var(--muted);font-size:12px}.xp__company{letter-spacing:-.02em;transition:opacity .3s var(--ease);font-size:clamp(17px,1.9vw,22px);font-weight:500}.xp__head:hover .xp__company{opacity:.55}.xp__role{color:var(--ink-soft);font-size:13.5px}.xp__loc{color:var(--muted);text-align:right;font-size:12px}.xp__toggle{color:var(--muted);justify-self:end;font-size:16px;line-height:1}.xp__panel{transition:grid-template-rows .45s var(--ease);grid-template-rows:0fr;display:grid}.xp__panel[data-open=true]{grid-template-rows:1fr}.xp__inner{overflow:hidden}.xp__list{max-width:74ch;color:var(--ink-soft);gap:10px;margin:0;padding:0 0 26px calc(140px + clamp(10px,2.2vw,32px));font-size:14px;line-height:1.8;list-style:none;display:grid}.xp__list li{padding-left:18px;position:relative}.xp__list li:before{content:"";background:var(--line-strong);width:8px;height:1px;position:absolute;top:.85em;left:0}.xp__media{margin:0 0 20px;padding-left:calc(140px + clamp(10px,2.2vw,32px))}.xp__note{color:var(--muted);margin:10px 0 0;font-size:11px;line-height:1.7}.work{border-top:1px solid var(--line-strong);margin:0;padding:0;list-style:none}.work__row{border-bottom:1px solid var(--line);grid-template-columns:52px minmax(0,1.35fr) minmax(0,.62fr) minmax(0,.85fr);gap:clamp(14px,2.6vw,40px);padding:clamp(24px,3vw,36px) 0;display:grid}.work__num{letter-spacing:.14em;color:var(--muted);padding-top:6px;font-size:11px}.work__name{letter-spacing:-.025em;margin:0 0 10px;font-size:clamp(18px,2.1vw,26px);font-weight:500;line-height:1.2}.work__name a{transition:border-color .3s var(--ease);border-bottom:1px solid #0000;text-decoration:none}.work__name a:hover{border-color:var(--ink)}.work__summary{max-width:34em;color:var(--ink-soft);margin:0;font-size:13.5px;line-height:1.75}.work__points{max-width:46em;color:var(--ink-soft);gap:7px;margin:12px 0 0;padding:0;font-size:13px;line-height:1.75;list-style:none;display:grid}.work__points li{padding-left:16px;position:relative}.work__points li:before{content:"";background:var(--line-strong);width:7px;height:1px;position:absolute;top:.82em;left:0}.work__media{max-width:440px;margin:18px 0 0}.work__media .gallery--award{grid-template-columns:repeat(auto-fit,minmax(130px,180px))}.gallery{gap:12px;margin:0;padding:0;list-style:none;display:grid}.gallery--grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gallery--award{grid-template-columns:repeat(auto-fit,minmax(112px,140px));align-items:start}.gallery__btn{width:100%;font:inherit;color:inherit;text-align:left;cursor:zoom-in;background:0 0;border:0;flex-direction:column;gap:7px;padding:0;display:flex}.gallery__frame{border:1px solid var(--line);background:#fff;display:block;overflow:hidden}.gallery--grid .gallery__frame{aspect-ratio:4/3}.gallery__frame img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease);display:block}.gallery--award .gallery__frame img{object-fit:cover;height:auto}.gallery__btn:hover .gallery__frame img{transform:scale(1.03)}.gallery__cap{color:var(--muted);font-size:10.5px;line-height:1.5}.lightbox{border:1px solid var(--line-strong);background:var(--paper);width:min(1040px,100vw - 40px);max-height:calc(100vh - 40px);color:var(--ink);padding:0;overflow:hidden}.lightbox::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#14130fbd}.lightbox__panel{flex-direction:column;max-height:calc(100vh - 40px);display:flex;position:relative}.lightbox__stage{background:#fff;justify-content:center;align-items:center;padding:24px;display:flex;position:relative;overflow:auto}.lightbox__stage img{object-fit:contain;max-width:100%;max-height:calc(100vh - 190px);display:block}.lightbox__close{z-index:2;border:1px solid var(--line-strong);background:var(--paper);width:34px;height:34px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;font-size:20px;line-height:1;display:grid;position:absolute;top:10px;right:12px}.lightbox__nav{z-index:2;border:1px solid var(--line-strong);width:40px;height:40px;color:var(--ink);cursor:pointer;background:#faf9f6f0;border-radius:50%;place-items:center;font-size:20px;line-height:1;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.lightbox__nav--prev{left:14px}.lightbox__nav--next{right:14px}.lightbox__foot{border-top:1px solid var(--line);color:var(--ink-soft);justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;font-size:12px;display:flex}.work__meta{color:var(--muted);flex-direction:column;gap:6px;padding-top:4px;font-size:12px;display:flex}.work__label{color:var(--muted);margin:0 0 6px}.work__outcome{color:var(--ink);margin:0 0 14px;font-size:13px;line-height:1.75}.tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tags li{border:1px solid var(--line-strong);letter-spacing:.08em;color:var(--muted);border-radius:999px;padding:4px 10px;font-size:10px}.skills{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3.5vw,56px);display:grid}.skill{border-top:1px solid var(--line-strong);padding-top:16px}.skill__title{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 18px;font-size:11px;font-weight:500}.skill ul{gap:13px;margin:0;padding:0;list-style:none;display:grid}.skill li{justify-content:space-between;align-items:center;gap:12px;font-size:13.5px;display:flex}.dots{flex:none;gap:4px;display:inline-flex}.dots i{background:var(--line-strong);border-radius:50%;width:5px;height:5px;display:block}.dots i.on{background:var(--ink)}.life{max-width:none}.life__cloud{flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:clamp(8px,1vw,14px) clamp(10px,1.2vw,18px);margin:0;padding:0;list-style:none;display:flex}.life__word{letter-spacing:.005em;color:var(--ink);transform-origin:50%;transition:transform .4s var(--ease), color .25s var(--ease);cursor:default;border-radius:2px;margin:0;padding:2px 6px;font-weight:500;line-height:1.15;display:inline-block;position:relative}.life__word:hover{color:var(--ink);transform:rotate(0)scale(1.12)!important}.life__word--w4{font-weight:500}.life__word--w1{color:var(--muted);font-weight:400}.life__word--w2{color:var(--ink-soft)}.life__word--w3{color:var(--ink)}.life__carousel{margin-top:clamp(40px,5vw,72px)}.life__stage{perspective:1600px;justify-content:center;align-items:center;height:clamp(320px,48vw,520px);display:flex;position:relative}.life__cards{flex:none;width:clamp(260px,34vw,380px);height:100%;position:relative}.life__card{aspect-ratio:4/5;background:var(--paper-2);will-change:transform, opacity;border-radius:2px;width:clamp(260px,34vw,380px);margin:0;transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .45s,z-index 0s linear .3s;position:absolute;top:50%;left:50%;overflow:hidden}.life__card img{object-fit:cover;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.life__card--pos-0{opacity:1;z-index:4;transform:translate(-50%,-50%)scale(1)translateZ(0);box-shadow:0 30px 60px -20px #14130f59,0 10px 20px -10px #14130f33}.life__card--pos-1{opacity:.55;z-index:3;transform:translate(-50%,-50%)translate(78%)scale(.72)rotate(6deg)translateZ(-160px)}.life__card--pos--1{opacity:.55;z-index:3;transform:translate(-50%,-50%)translate(-78%)scale(.72)rotate(-6deg)translateZ(-160px)}.life__card--pos-2{opacity:0;z-index:2;transition-delay:0s;transform:translate(-50%,-50%)translate(130%)scale(.55)rotate(10deg)translateZ(-300px)}.life__card--pos--2{opacity:0;z-index:2;transition-delay:0s;transform:translate(-50%,-50%)translate(-130%)scale(.55)rotate(-10deg)translateZ(-300px)}.life__card--pos-3,.life__card--pos--3,.life__card--pos-4,.life__card--pos--4{opacity:0;pointer-events:none;z-index:1;transition-delay:0s;transform:translate(-50%,-50%)translate(160%)scale(.4)translateZ(-420px)}.life__nav{border:1px solid var(--line-strong);background:var(--paper);width:44px;height:44px;color:var(--ink);cursor:pointer;transition:background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);z-index:6;border-radius:50%;place-items:center;font-size:24px;line-height:1;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.life__nav:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.life__nav--prev{left:clamp(4px,3vw,32px)}.life__nav--next{right:clamp(4px,3vw,32px)}.life__dots{justify-content:center;gap:8px;margin-top:22px;display:flex}.life__dot{background:var(--line-strong);cursor:pointer;width:8px;height:8px;transition:background .25s var(--ease), transform .25s var(--ease);border:0;border-radius:50%;padding:0}.life__dot.is-on{background:var(--ink);transform:scale(1.35)}.contact{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:clamp(32px,5vw,80px);display:grid}.contact__mail{letter-spacing:-.04em;color:var(--ink);border-bottom:1px solid var(--ink);word-break:break-word;margin:12px 0 28px;padding-bottom:6px;font-size:clamp(22px,3.6vw,48px);text-decoration:none;display:inline-block}.contact__mail.is-pending{color:var(--muted);border-color:var(--line-strong);cursor:default}.contact__actions{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.contact__links{flex-wrap:wrap;gap:16px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.contact__links a{color:var(--muted);border-bottom:1px solid var(--line-strong);padding-bottom:2px;text-decoration:none}.contact__links a:hover{color:var(--ink);border-color:var(--ink)}.contact__qr{flex-direction:column;align-items:flex-start;gap:10px;margin:0;display:flex}.contact__qr img{object-fit:cover;border:1px solid var(--line);background:#fff;width:168px;height:168px;display:block}.ftr{padding-block-start:28px;padding-block-end:36px}.ftr__inner{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;font-size:10.5px;display:flex}.ftr a{color:inherit;border-bottom:1px solid var(--line-strong);padding-bottom:2px;text-decoration:none}.ftr a:hover{color:var(--ink)}.detail{border:1px solid var(--line-strong);background:var(--paper);width:min(1120px,100vw - 32px);height:min(900px,100svh - 40px);max-height:calc(100svh - 40px);color:var(--ink);padding:0;overflow:hidden}.detail::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#14130f99}.detail__panel{flex-direction:column;height:100%;display:flex}.detail__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:clamp(18px,2.6vw,30px) clamp(20px,4vw,48px) clamp(14px,2vw,20px);display:flex}.detail__title{letter-spacing:-.03em;margin:8px 0 6px;font-size:clamp(22px,2.6vw,34px);font-weight:500;line-height:1.1}.detail__sub{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:10.5px;display:block}.detail__close{border:1px solid var(--line-strong);width:38px;height:38px;color:var(--ink);cursor:pointer;transition:background .25s var(--ease), color .25s var(--ease);background:0 0;border-radius:50%;flex:none;place-items:center;font-size:22px;line-height:1;display:grid}.detail__close:hover{background:var(--ink);color:var(--paper)}.detail__body{overscroll-behavior:contain;flex:1;padding:clamp(22px,3.4vw,44px) clamp(20px,4vw,48px) clamp(32px,5vw,64px);overflow-y:auto}.detail .section{border:0;padding:0}.detail .shell{max-width:none;padding-inline-start:0;padding-inline-end:0}.detail .section__head{display:none}.detail .section__body{padding-left:0}.dlg{border:1px solid var(--line-strong);background:var(--paper);width:min(960px,100vw - 32px);max-height:min(88vh,900px);color:var(--ink);padding:0}.dlg::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14130f73}.dlg__panel{max-height:inherit;flex-direction:column;display:flex}.dlg__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px;display:flex}.dlg__head h2{letter-spacing:-.02em;margin:6px 0 0;font-size:20px;font-weight:500}.dlg__close{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:24px;line-height:1}.dlg__close:hover{color:var(--ink)}.dlg__body{flex-direction:column;gap:16px;padding:20px 24px 24px;display:flex;overflow:auto}.dlg__frame{border:1px solid var(--line);background:#fff;width:100%;height:min(62vh,720px)}.dlg__empty{border:1px dashed var(--line-strong);color:var(--muted);text-align:center;margin:0;padding:48px 24px;font-size:14px;line-height:1.8}body:has(dialog[open]){overflow:hidden}.dev-note{z-index:60;background:var(--ink);color:var(--paper);letter-spacing:.12em;opacity:.72;pointer-events:none;border-radius:999px;padding:8px 12px;font-size:10px;position:fixed;bottom:16px;left:16px}@media (max-width:1100px){.work__row{grid-template-columns:44px minmax(0,1fr);gap:12px clamp(14px,2.6vw,32px)}.work__main,.work__meta,.work__end{grid-column:2}.work__meta{flex-direction:row;gap:16px}}@media (max-width:900px){.hdr__inner{flex-wrap:wrap;row-gap:2px;height:auto;padding-block-start:10px;padding-block-end:0}.hdr__nav{scrollbar-width:none;flex:none;order:3;justify-content:flex-start;gap:18px;width:100%;padding-bottom:8px;overflow-x:auto}.hdr__nav::-webkit-scrollbar{display:none}.hdr__actions{margin-left:auto}.section,.hero{scroll-margin-top:108px}.section__head{grid-template-columns:32px 1fr}.section__body{padding-left:0}.hero>.shell.hero__inner{grid-template-columns:1fr;gap:clamp(24px,4vw,36px);min-height:0;padding-block-start:clamp(32px,5vw,56px);padding-block-end:clamp(32px,5vw,56px)}.hero__cluster{text-align:center;align-items:center}.hero__name{justify-content:center}.about__points{grid-template-columns:1fr}.detail{width:calc(100vw - 20px);height:calc(100svh - 20px);max-height:calc(100svh - 20px)}.portrait{width:100%;max-width:300px;margin-inline-start:auto;margin-inline-end:auto}.bubbles{justify-content:center}.gallery--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about{grid-template-columns:1fr}.edu__row{grid-template-columns:110px minmax(0,1fr)}.xp__head{grid-template-columns:1fr 20px;row-gap:4px}.xp__period{grid-area:1/1}.xp__company{grid-area:2/1}.xp__role{grid-area:3/1}.xp__loc{display:none}.xp__toggle{grid-area:1/2/span 3;place-self:center end}.xp__list,.xp__media{padding-left:0}.skills{grid-template-columns:repeat(2,minmax(0,1fr))}.life,.contact{grid-template-columns:1fr}}@media (max-width:760px){.portrait{max-width:240px}.bubbles{gap:8px 10px}.bubble{padding:9px 15px}.bubble--md{padding:11px 19px}.bubble--lg{padding:13px 22px}.bubble__tag{font-size:13px}.bubble--md .bubble__tag{font-size:14.5px}.bubble--lg .bubble__tag{font-size:16px}.bubble__meta{font-size:9px}.lightbox{width:calc(100vw - 16px);max-height:94vh}.lightbox__panel{max-height:94vh}.lightbox__stage{padding:14px}.lightbox__stage img{max-height:72vh}.lightbox__nav{width:34px;height:34px}.work__row{grid-template-columns:1fr}.work__main,.work__meta,.work__end{grid-column:auto}.work__num{padding-top:0}.skills{grid-template-columns:1fr}.edu__row{grid-template-columns:1fr;gap:8px}.life__stage{height:clamp(300px,72vw,420px)}.life__cards,.life__card{width:clamp(220px,62vw,300px)}.life__card--pos-1{transform:translate(-50%,-50%)translate(62%)scale(.68)rotate(6deg)translateZ(-160px)}.life__card--pos--1{transform:translate(-50%,-50%)translate(-62%)scale(.68)rotate(-6deg)translateZ(-160px)}.dlg{width:calc(100vw - 20px);max-height:92vh}.dlg__frame{height:58vh}.ftr__inner{flex-direction:column;align-items:flex-start;gap:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
