*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{letter-spacing:-.01em;color:#f5f5f7;background:#000;font-family:-apple-system,blinkmacsystemfont,SF Pro Text,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:17px;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}a,button{touch-action:manipulation}button{-webkit-user-select:none;user-select:none}img,video{max-width:100%;display:block}:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #d2d2d7}::selection{color:#fff;background:#ffffff40}section[id]{scroll-margin-top:48px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.navbar{z-index:20;width:100%;height:calc(48px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 22px 0;padding-left:max(22px, env(safe-area-inset-left));padding-right:max(22px, env(safe-area-inset-right));color:#f5f5f7;-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);background:#161617b8;grid-template-columns:1fr auto 1fr;align-items:center;transition:background .32s cubic-bezier(.25,1,.5,1);display:grid;position:fixed;top:0;left:0}.navbar:after{content:"";opacity:0;background:#ffffff1a;height:1px;transition:opacity .32s cubic-bezier(.25,1,.5,1);position:absolute;bottom:0;left:0;right:0}.navbar--scrolled:after{opacity:1}.navbar--open{background:#161617f5}.navbar__logo{z-index:2;letter-spacing:-.01em;align-items:center;min-height:44px;font-size:15px;font-weight:600;display:inline-flex}.navbar__links{gap:32px;display:flex}.navbar__links a{color:#f5f5f7cc;align-items:center;min-height:44px;font-size:12px;transition:color .16s cubic-bezier(.25,1,.5,1);display:inline-flex}@media (hover:hover) and (pointer:fine){.navbar__links a:hover{color:#f5f5f7}}.navbar__end{z-index:2;justify-content:center;justify-self:end;align-items:center;gap:8px;display:flex}.navbar__langs{gap:2px;display:flex}.navbar__langs button{color:#f5f5f78f;min-width:32px;min-height:44px;font-size:12px;transition:color .16s cubic-bezier(.25,1,.5,1)}@media (hover:hover) and (pointer:fine){.navbar__langs button:hover{color:#f5f5f7}}.navbar__langs button.is-active{color:#f5f5f7}.navbar__toggle{flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;margin-right:-12px;display:none;position:relative}.navbar__toggle span{background:#f5f5f7;border-radius:1px;width:17px;height:1.5px;transition:transform .32s cubic-bezier(.25,1,.5,1);display:block}.navbar--open .navbar__toggle span:first-child{transform:translateY(3.75px)rotate(45deg)}.navbar--open .navbar__toggle span:last-child{transform:translateY(-3.75px)rotate(-45deg)}.navbar__panel{display:none}@media (width<=768px){.navbar{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right));grid-template-columns:1fr auto}.navbar__links,.navbar__langs{display:none}.navbar__toggle{display:flex}.navbar__panel{top:calc(48px + env(safe-area-inset-top));z-index:1;max-height:calc(100dvh - 48px - env(safe-area-inset-top));padding:12px 40px 32px;padding-left:max(40px, env(safe-area-inset-left));padding-right:max(40px, env(safe-area-inset-right));padding-bottom:max(32px, env(safe-area-inset-bottom));-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);overscroll-behavior:contain;opacity:0;visibility:hidden;pointer-events:none;background:#161617f5;border-bottom:1px solid #ffffff1a;flex-direction:column;transition:opacity .32s cubic-bezier(.25,1,.5,1),visibility .32s cubic-bezier(.25,1,.5,1);display:flex;position:fixed;left:0;right:0;overflow-y:auto}.navbar--open .navbar__panel{opacity:1;visibility:visible;pointer-events:auto}}.navbar__panel-links{flex-direction:column;display:flex}.navbar__panel-links a{letter-spacing:-.015em;opacity:0;align-items:center;min-height:52px;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:28px;font-weight:600;transition:opacity .32s cubic-bezier(.25,1,.5,1),transform .32s cubic-bezier(.25,1,.5,1),color .16s cubic-bezier(.25,1,.5,1);display:flex;transform:translateY(-6px)}.navbar__panel-links a:active{color:#86868b}.navbar__panel-links a:first-child{transition-delay:30ms}.navbar__panel-links a:nth-child(2){transition-delay:60ms}.navbar__panel-links a:nth-child(3){transition-delay:90ms}.navbar__panel-links a:nth-child(4){transition-delay:.12s}.navbar__panel-links a:nth-child(5){transition-delay:.15s}.navbar__panel-links a:nth-child(6){transition-delay:.18s}.navbar--open .navbar__panel-links a{opacity:1;transform:none}.navbar__panel-langs{gap:8px;margin-top:20px;display:flex}.navbar__panel-langs button{color:#86868b;background:#ffffff14;border-radius:980px;min-width:52px;min-height:36px;padding:0 14px;font-size:14px}.navbar__panel-langs button.is-active{color:#000;background:#f5f5f7}.hero{min-height:100svh;padding:calc(48px + env(safe-area-inset-top)) 40px 56px;padding-left:max(40px, env(safe-area-inset-left));padding-right:max(40px, env(safe-area-inset-right));display:flex;position:relative;overflow:hidden}.hero__media{z-index:0;background:#000;position:absolute;inset:0}.hero__image{object-fit:cover;object-position:center;filter:saturate(.8)brightness(.72);width:100%;height:100%;position:absolute;inset:0}.hero__vignette{pointer-events:none;background:linear-gradient(#0003 0%,#0000 35%,#000000d9 100%),linear-gradient(90deg,#00000073 0%,#0000 55%);position:absolute;inset:0}.hero__content{z-index:1;flex-direction:column;justify-content:flex-end;width:100%;max-width:1120px;margin:0 auto;display:flex;position:relative}.hero__kicker{letter-spacing:-.01em;color:#f5f5f7b8;margin-bottom:14px;font-size:17px;font-weight:600}.hero__title{letter-spacing:-.025em;text-wrap:balance;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(40px,6.4vw,80px);font-weight:700;line-height:1.05}.hero__footer{border-top:1px solid #ffffff38;justify-content:flex-end;margin-top:40px;padding-top:28px;display:flex}.hero__cta{color:#1d1d1f;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:#f5f5f7;border-radius:980px;justify-content:center;align-items:center;min-height:44px;padding:11px 22px;font-size:17px;font-weight:500;line-height:1;transition:background .16s cubic-bezier(.25,1,.5,1),transform .16s cubic-bezier(.25,1,.5,1);display:inline-flex}@media (hover:hover) and (pointer:fine){.hero__cta:hover{background:#fff}}.hero__cta:active{transform:scale(.97)}.hero__scroll{top:50%;right:max(40px, env(safe-area-inset-right));z-index:1;color:#f5f5f78f;writing-mode:vertical-rl;font-size:12px;transition:color .16s cubic-bezier(.25,1,.5,1);position:absolute}@media (hover:hover) and (pointer:fine){.hero__scroll:hover{color:#f5f5f7}}@media (width<=768px){.hero{padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right));padding-bottom:max(32px, env(safe-area-inset-bottom))}.hero__image{object-position:68% center;filter:saturate(.75)brightness(.6)}.hero__vignette{background:linear-gradient(#00000040 0%,#0000 28%,#000000b3 62%,#000000eb 100%)}.hero__kicker{margin-bottom:10px;font-size:14px}.hero__title{font-size:clamp(36px,10vw,48px);line-height:1.1}.hero__footer{margin-top:28px;padding-top:24px}.hero__cta{border-radius:14px;width:100%;min-height:50px}.hero__scroll{display:none}}@media (width<=640px){.hero{padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}}.about{padding:140px 40px;padding-left:max(40px, env(safe-area-inset-left));padding-right:max(40px, env(safe-area-inset-right))}@media (width<=768px){.about{padding:88px 24px;padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right))}}@media (width<=640px){.about{padding:72px 20px;padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}}.about__inner{width:100%;max-width:1120px;margin:0 auto}.about__header{flex-direction:column;gap:8px;margin-bottom:48px;display:flex}.about__header>span:first-child{font-variant-numeric:tabular-nums;color:#86868b;font-size:14px;font-weight:600}.about__header>span:last-child{letter-spacing:-.02em;color:#f5f5f7;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(40px,5.6vw,64px);font-weight:700;line-height:1.06}@media (width<=768px){.about__header{margin-bottom:32px}.about__header>span:first-child{font-size:12px}}.about__grid{grid-template-columns:minmax(240px,400px) 1fr;align-items:center;gap:72px;display:grid}.about__frame{aspect-ratio:4/5;background:#161617;border-radius:28px;position:relative;overflow:hidden}.about__photo{object-fit:cover;object-position:center 18%;width:100%;height:100%;position:absolute;inset:0}.about__role{letter-spacing:0;color:#86868b;font-size:14px;font-weight:600}@media (width<=768px){.about__role{font-size:12px}}.about__name{letter-spacing:-.015em;text-wrap:balance;margin:8px 0 20px;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(32px,4vw,48px);font-weight:700;line-height:1.1}.about__bio{letter-spacing:-.01em;color:#86868b;font-size:17px;line-height:1.6}@media (width<=768px){.about__bio{font-size:16px}}.about__bio{max-width:36em}.about__contacts{border-top:1px solid #ffffff1a;margin-top:36px}.about__contacts div{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:baseline;gap:24px;padding:14px 0;display:flex}.about__contacts dt{color:#86868b;flex-shrink:0;font-size:15px}.about__contacts dd{text-align:right;overflow-wrap:anywhere;font-size:15px}.about__contacts a{color:#d2d2d7}@media (hover:hover) and (pointer:fine){.about__contacts a:hover{text-decoration:underline}}.about__copyrights{margin-top:96px}.about__copyrights-heading{margin-bottom:20px}.about__copyrights-heading>span{letter-spacing:0;color:#86868b;font-size:14px;font-weight:600}@media (width<=768px){.about__copyrights-heading>span{font-size:12px}}.about__copyrights-heading h3{letter-spacing:-.015em;text-wrap:balance;margin-top:6px;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(24px,4vw,32px);font-weight:700;line-height:1.1}.about__copyright-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;list-style:none;display:grid}.about__copyright-list li{background:#161617;border-radius:28px;overflow:hidden}@media (width<=768px){.about__copyright-list li{border-radius:18px}}.about__copyright-list li{flex-direction:column;gap:20px;min-height:200px;padding:32px;display:flex}.about__copyright-list h4{letter-spacing:-.01em;margin-top:auto;font-size:19px;font-weight:600;line-height:1.4}.about__copyright-list p{color:#86868b;margin-top:8px;font-size:14px}.about__copyright-index{font-variant-numeric:tabular-nums;color:#86868b;font-size:14px;font-weight:600}.about__stats{background:#161617;border-radius:28px;overflow:hidden}@media (width<=768px){.about__stats{border-radius:18px}}.about__stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px;list-style:none;display:grid}.about__stats li{flex-direction:column;padding:36px 32px;display:flex}.about__stats li+li{border-left:1px solid #ffffff1a}.about__stats strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:#f5f5f7;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(24px,3vw,36px);font-weight:700;line-height:1.05}.about__stats span{color:#86868b;margin-top:8px;font-size:14px;line-height:1.4}@media (width<=1024px){.about__grid{grid-template-columns:1fr 1.4fr;gap:40px}}@media (width<=768px){.about__grid{grid-template-columns:1fr;gap:32px}.about__portrait{width:100%;max-width:320px;margin-inline:auto}.about__frame{border-radius:18px}.about__copyrights{margin-top:64px}.about__copyright-list{grid-template-columns:1fr;gap:12px}.about__copyright-list li{min-height:0;padding:24px}.about__copyright-list h4{font-size:17px}.about__stats{grid-template-columns:1fr;margin-top:12px}.about__stats li{padding:24px}.about__stats li+li{border-top:1px solid #ffffff1a;border-left:0}}@media (width<=640px){.about__portrait{max-width:260px}.about__contacts div{flex-direction:column;gap:2px}.about__contacts dd{text-align:left}}.web-experience{padding:140px 40px;padding-left:max(40px, env(safe-area-inset-left));padding-right:max(40px, env(safe-area-inset-right))}@media (width<=768px){.web-experience{padding:88px 24px;padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right))}}@media (width<=640px){.web-experience{padding:72px 20px;padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}}.web-experience__inner{width:100%;max-width:1120px;margin:0 auto}.web-experience__header{flex-direction:column;gap:8px;margin-bottom:48px;display:flex}.web-experience__header>span:first-child{font-variant-numeric:tabular-nums;color:#86868b;font-size:14px;font-weight:600}.web-experience__header>span:last-child{letter-spacing:-.02em;color:#f5f5f7;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(40px,5.6vw,64px);font-weight:700;line-height:1.06}@media (width<=768px){.web-experience__header{margin-bottom:32px}.web-experience__header>span:first-child{font-size:12px}}.web-experience__card{background:#161617;border-radius:28px;overflow:hidden}@media (width<=768px){.web-experience__card{border-radius:18px}}.web-experience__content{padding:48px 48px 40px}.web-experience__eyebrow{letter-spacing:0;color:#86868b;font-size:14px;font-weight:600}@media (width<=768px){.web-experience__eyebrow{font-size:12px}}.web-experience__eyebrow{margin-bottom:8px}.web-experience h2{letter-spacing:-.015em;text-wrap:balance;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1.1}.web-experience__description{letter-spacing:-.01em;color:#86868b;font-size:17px;line-height:1.6}@media (width<=768px){.web-experience__description{font-size:16px}}.web-experience__description{max-width:42em;margin-top:20px}.web-experience__platforms{flex-wrap:wrap;gap:8px;margin-top:28px;list-style:none;display:flex}.web-experience__platforms li{color:#f5f5f7;background:#ffffff14;border-radius:980px;align-items:center;min-height:32px;padding:6px 14px;font-size:14px;line-height:1.3;display:inline-flex}.web-experience__metrics{border-top:1px solid #ffffff1a;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 48px;display:grid}.web-experience__metrics div{flex-direction:column-reverse;justify-content:flex-end;padding:36px 0 44px;display:flex}.web-experience__metrics div+div{border-left:1px solid #ffffff1a;padding-left:32px}.web-experience__metrics dt{color:#86868b;margin-top:8px;font-size:14px;line-height:1.4}.web-experience__metrics dd{font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:#f5f5f7;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(36px,5vw,56px);font-weight:700;line-height:1.05}@media (width<=768px){.web-experience__content{padding:28px 24px 24px}.web-experience__platforms{margin-top:24px}.web-experience__metrics{grid-template-columns:1fr;margin:0 24px}.web-experience__metrics div{padding:22px 0}.web-experience__metrics div+div{border-top:1px solid #ffffff1a;border-left:0;padding-left:0}.web-experience__metrics dd{font-size:40px}}.internship{padding:140px 40px;padding-left:max(40px, env(safe-area-inset-left));padding-right:max(40px, env(safe-area-inset-right))}@media (width<=768px){.internship{padding:88px 24px;padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right))}}@media (width<=640px){.internship{padding:72px 20px;padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}}.internship__inner{width:100%;max-width:1120px;margin:0 auto}.internship__header{flex-direction:column;gap:8px;margin-bottom:48px;display:flex}.internship__header>span:first-child{font-variant-numeric:tabular-nums;color:#86868b;font-size:14px;font-weight:600}.internship__header>span:last-child{letter-spacing:-.02em;color:#f5f5f7;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(40px,5.6vw,64px);font-weight:700;line-height:1.06}@media (width<=768px){.internship__header{margin-bottom:32px}.internship__header>span:first-child{font-size:12px}}.internship__card{background:#161617;border-radius:28px;overflow:hidden}@media (width<=768px){.internship__card{border-radius:18px}}.internship__card{grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);display:grid}.internship__content{padding:48px}.internship__company{letter-spacing:0;color:#86868b;font-size:14px;font-weight:600}@media (width<=768px){.internship__company{font-size:12px}}.internship__company{margin-bottom:8px}.internship h2{letter-spacing:-.015em;text-wrap:balance;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1.1}.internship__description{letter-spacing:-.01em;color:#86868b;font-size:17px;line-height:1.6}@media (width<=768px){.internship__description{font-size:16px}}.internship__description{max-width:40em;margin-top:20px}.internship__tags{flex-wrap:wrap;gap:8px;margin-top:32px;list-style:none;display:flex}.internship__tags li{color:#f5f5f7;background:#ffffff14;border-radius:980px;align-items:center;min-height:32px;padding:6px 14px;font-size:14px;line-height:1.3;display:inline-flex}.internship__meta{background:#1d1d1f;flex-direction:column;justify-content:center;padding:24px 40px;display:flex}.internship__meta div{flex-direction:column-reverse;padding:24px 0;display:flex}.internship__meta div+div{border-top:1px solid #ffffff1a}.internship__meta dt{color:#86868b;margin-top:8px;font-size:14px;line-height:1.4}.internship__meta dd{font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:#f5f5f7;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(22px,2.4vw,28px);font-weight:700;line-height:1.05}@media (width<=1024px){.internship__card{grid-template-columns:1fr}.internship__meta{flex-direction:row;padding:0 40px}.internship__meta div{flex:1}.internship__meta div+div{border-top:0;border-left:1px solid #ffffff1a;padding-left:32px}}@media (width<=768px){.internship__content{padding:28px 24px}.internship__tags{margin-top:24px}.internship__meta{flex-direction:column;padding:4px 24px}.internship__meta div+div{border-top:1px solid #ffffff1a;border-left:0;padding-left:0}.internship__meta div{padding:20px 0}}.projects{padding:140px 40px;padding-left:max(40px, env(safe-area-inset-left));padding-right:max(40px, env(safe-area-inset-right))}@media (width<=768px){.projects{padding:88px 24px;padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right))}}@media (width<=640px){.projects{padding:72px 20px;padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}}.projects__inner{width:100%;max-width:1120px;margin:0 auto}.projects__header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:48px;display:flex}.projects__header div{flex-direction:column;gap:8px;margin-bottom:48px;display:flex}.projects__header div>span:first-child{font-variant-numeric:tabular-nums;color:#86868b;font-size:14px;font-weight:600}.projects__header div>span:last-child{letter-spacing:-.02em;color:#f5f5f7;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(40px,5.6vw,64px);font-weight:700;line-height:1.06}@media (width<=768px){.projects__header div{margin-bottom:32px}.projects__header div>span:first-child{font-size:12px}}.projects__header div{margin-bottom:0}.projects__header p{letter-spacing:0;color:#86868b;font-size:14px;font-weight:600}@media (width<=768px){.projects__header p{font-size:12px}}.projects__header p{padding-bottom:10px}.projects__list{gap:16px;list-style:none;display:grid}.projects__card{background:#161617;border-radius:28px;overflow:hidden}@media (width<=768px){.projects__card{border-radius:18px}}.projects__card{grid-template-columns:1.45fr 1fr;min-height:420px;display:grid}.projects__visual{background:#1d1d1f;min-height:280px;position:relative;overflow:hidden}.projects__visual img{object-fit:cover;width:100%;height:100%;transition:transform .9s cubic-bezier(.25,1,.5,1)}.projects__visual span{z-index:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-variant-numeric:tabular-nums;color:#f5f5f7;background:#00000080;border-radius:980px;align-items:center;min-height:28px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;top:20px;left:20px}@media (hover:hover) and (pointer:fine){.projects__card:hover .projects__visual img{transform:scale(1.03)}}.projects__meta{flex-direction:column;justify-content:center;padding:40px;display:flex}.projects__tag{letter-spacing:0;color:#86868b;font-size:14px;font-weight:600}@media (width<=768px){.projects__tag{font-size:12px}}.projects__tag{color:#d2d2d7}.projects h3{letter-spacing:-.015em;text-wrap:balance;margin:8px 0 14px;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(26px,4vw,36px);font-weight:700;line-height:1.1}.projects__desc{letter-spacing:-.01em;color:#86868b;font-size:17px;line-height:1.6}@media (width<=768px){.projects__desc{font-size:16px}}.projects__desc{margin-bottom:24px}.projects__year{font-variant-numeric:tabular-nums;color:#86868b;font-size:14px}@media (width<=1024px){.projects__card{grid-template-columns:1fr;min-height:0}.projects__visual{aspect-ratio:16/9;min-height:0}}@media (width<=768px){.projects__header{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:32px}.projects__header p{padding-bottom:0}.projects__list{gap:12px}.projects__meta{padding:24px 24px 28px}.projects__visual span{top:14px;left:14px}}.strengths{padding:140px 40px;padding-left:max(40px, env(safe-area-inset-left));padding-right:max(40px, env(safe-area-inset-right))}@media (width<=768px){.strengths{padding:88px 24px;padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right))}}@media (width<=640px){.strengths{padding:72px 20px;padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}}.strengths__inner{width:100%;max-width:1120px;margin:0 auto}.strengths__header{flex-direction:column;gap:8px;margin-bottom:48px;display:flex}.strengths__header>span:first-child{font-variant-numeric:tabular-nums;color:#86868b;font-size:14px;font-weight:600}.strengths__header>span:last-child{letter-spacing:-.02em;color:#f5f5f7;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(40px,5.6vw,64px);font-weight:700;line-height:1.06}@media (width<=768px){.strengths__header{margin-bottom:32px}.strengths__header>span:first-child{font-size:12px}}.strengths__header{margin-bottom:16px}.strengths__title{letter-spacing:-.01em;color:#86868b;font-size:17px;line-height:1.6}@media (width<=768px){.strengths__title{font-size:16px}}.strengths__title{color:#f5f5f7;text-wrap:balance;max-width:30em;margin-bottom:48px;font-size:21px;font-weight:600}.strengths__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;list-style:none;display:grid}.strengths__card{background:#161617;border-radius:28px;overflow:hidden}@media (width<=768px){.strengths__card{border-radius:18px}}.strengths__card{flex-direction:column;min-height:300px;padding:36px 40px 40px;display:flex}.strengths__card h3{letter-spacing:-.015em;text-wrap:balance;margin-top:auto;margin-bottom:12px;padding-top:48px;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(26px,4vw,32px);font-weight:700;line-height:1.1}.strengths__card p{letter-spacing:-.01em;color:#86868b;font-size:17px;line-height:1.6}@media (width<=768px){.strengths__card p{font-size:16px}}.strengths__card p{max-width:32em}.strengths__meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.strengths__meta>span:first-child{font-variant-numeric:tabular-nums;color:#86868b;font-size:14px;font-weight:600}.strengths__tag{color:#f5f5f7;background:#ffffff14;border-radius:980px;align-items:center;min-height:28px;padding:4px 12px;font-size:13px;font-weight:600;line-height:1.3;display:inline-flex}@media (width<=768px){.strengths__title{margin-bottom:32px;font-size:19px}.strengths__grid{grid-template-columns:1fr;gap:12px}.strengths__card{min-height:0;padding:24px}.strengths__card h3{padding-top:32px}}.toolkit{padding:140px 40px;padding-left:max(40px, env(safe-area-inset-left));padding-right:max(40px, env(safe-area-inset-right))}@media (width<=768px){.toolkit{padding:88px 24px;padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right))}}@media (width<=640px){.toolkit{padding:72px 20px;padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}}.toolkit__inner{width:100%;max-width:1120px;margin:0 auto}.toolkit__header{flex-direction:column;gap:8px;margin-bottom:48px;display:flex}.toolkit__header>span:first-child{font-variant-numeric:tabular-nums;color:#86868b;font-size:14px;font-weight:600}.toolkit__header>span:last-child{letter-spacing:-.02em;color:#f5f5f7;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(40px,5.6vw,64px);font-weight:700;line-height:1.06}@media (width<=768px){.toolkit__header{margin-bottom:32px}.toolkit__header>span:first-child{font-size:12px}}.toolkit__header{margin-bottom:16px}.toolkit__title{letter-spacing:-.01em;color:#86868b;font-size:17px;line-height:1.6}@media (width<=768px){.toolkit__title{font-size:16px}}.toolkit__title{color:#f5f5f7;text-wrap:balance;max-width:30em;margin-bottom:48px;font-size:21px;font-weight:600}.toolkit__lanes{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.toolkit__lane{background:#161617;border-radius:28px;overflow:hidden}@media (width<=768px){.toolkit__lane{border-radius:18px}}.toolkit__lane{flex-direction:column;padding:44px 40px 40px;display:flex}.toolkit__lane h3{letter-spacing:-.015em;text-wrap:balance;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(28px,4vw,36px);font-weight:700;line-height:1.1}.toolkit__eyebrow{letter-spacing:0;color:#86868b;font-size:14px;font-weight:600}@media (width<=768px){.toolkit__eyebrow{font-size:12px}}.toolkit__eyebrow{margin-bottom:8px}.toolkit__desc{letter-spacing:-.01em;color:#86868b;font-size:17px;line-height:1.6}@media (width<=768px){.toolkit__desc{font-size:16px}}.toolkit__desc{margin-top:14px}.toolkit__tools{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:32px;list-style:none;display:flex}.toolkit__tools li{color:#f5f5f7;background:#ffffff14;border-radius:980px;align-items:center;min-height:32px;padding:6px 14px;font-size:14px;line-height:1.3;display:inline-flex}@media (width<=768px){.toolkit__title{margin-bottom:32px;font-size:19px}.toolkit__lanes{grid-template-columns:1fr;gap:12px}.toolkit__lane{padding:28px 24px}.toolkit__tools{padding-top:24px}}.contact{min-height:100svh;padding:140px 40px 32px;padding-left:max(40px, env(safe-area-inset-left));padding-right:max(40px, env(safe-area-inset-right));padding-bottom:max(32px, env(safe-area-inset-bottom));display:flex}.contact__inner{text-align:center;flex-direction:column;flex:1;align-items:center;width:100%;max-width:1120px;margin:0 auto;display:flex}.contact__header{flex-direction:column;gap:8px;margin-bottom:48px;display:flex}.contact__header>span:first-child{font-variant-numeric:tabular-nums;color:#86868b;font-size:14px;font-weight:600}.contact__header>span:last-child{letter-spacing:-.02em;color:#f5f5f7;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(40px,5.6vw,64px);font-weight:700;line-height:1.06}@media (width<=768px){.contact__header{margin-bottom:32px}.contact__header>span:first-child{font-size:12px}}.contact__header{align-items:center;margin-top:auto;margin-bottom:20px}.contact__header>span:last-child{letter-spacing:-.01em;color:#86868b;font-size:17px;font-weight:600}.contact h2{letter-spacing:-.015em;text-wrap:balance;letter-spacing:-.025em;max-width:14em;font-family:-apple-system,blinkmacsystemfont,SF Pro Display,Inter,PingFang SC,Hiragino Sans,Microsoft YaHei,sans-serif;font-size:clamp(40px,4vw,72px);font-weight:700;line-height:1.1}.contact__email{color:#1d1d1f;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:#f5f5f7;border-radius:980px;justify-content:center;align-items:center;min-height:44px;padding:11px 22px;font-size:17px;font-weight:500;line-height:1;transition:background .16s cubic-bezier(.25,1,.5,1),transform .16s cubic-bezier(.25,1,.5,1);display:inline-flex}@media (hover:hover) and (pointer:fine){.contact__email:hover{background:#fff}}.contact__email:active{transform:scale(.97)}.contact__email{overflow-wrap:anywhere;max-width:100%;margin-top:40px}.contact__note{letter-spacing:-.01em;color:#86868b;font-size:17px;line-height:1.6}@media (width<=768px){.contact__note{font-size:16px}}.contact__note{max-width:30em;margin-top:20px;margin-bottom:auto}.contact__foot{color:#86868b;border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:16px;width:100%;margin-top:96px;padding-top:20px;font-size:12px;display:flex}.contact__foot a{align-items:center;min-height:32px;transition:color .16s cubic-bezier(.25,1,.5,1);display:inline-flex}@media (hover:hover) and (pointer:fine){.contact__foot a:hover{color:#f5f5f7}}@media (width<=768px){.contact{padding:88px 24px 24px;padding-left:max(24px, env(safe-area-inset-left));padding-right:max(24px, env(safe-area-inset-right));padding-bottom:max(24px, env(safe-area-inset-bottom))}.contact h2{font-size:clamp(32px,9vw,44px)}.contact__email{border-radius:14px;width:100%;min-height:50px;font-size:16px}.contact__foot{flex-direction:column;gap:4px;margin-top:64px}}.app{color:#f5f5f7;background:#000;min-height:100svh;position:relative;overflow-x:hidden}.app main{z-index:1;position:relative}
