:root{--ink:#111;--muted:#737373;--pink:#ed2497}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:#c5dfed;color:var(--ink);font-family:Arial,'Helvetica Neue','PingFang SC','Microsoft YaHei',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--pink);outline-offset:6px}.sidebar{width:48%;height:100dvh;position:fixed;top:0;left:0;border-right:1px solid #111;padding:35px 35px 25px;display:flex;flex-direction:column;background:#fff;z-index:3}.name-art{display:flex;flex-direction:column;justify-content:center;position:relative;width:100%;height:clamp(300px,30vw,470px);margin:5px 0 20px;padding:0}.airplane-scene{width:100%;height:75%;display:flex;align-items:center;justify-content:center}.airplane{display:block;width:100%;height:100%;object-fit:contain;animation:sky-float 7s ease-in-out infinite;filter:drop-shadow(0 12px 18px #4b789215);transition:filter .4s}.name-art:hover .airplane{filter:drop-shadow(0 16px 20px #4b789230)}.sky-motto{margin:8px 0 0 8%;color:#3d5e74;font-size:clamp(15px,1.5vw,23px);font-weight:400;line-height:1.8;letter-spacing:1px}.sky-motto>span{display:block}@keyframes sky-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-9px) rotate(1deg)}}.left-lower{margin-top:auto}.nav-heading{font-size:14px;font-weight:600;margin:0 0 20px}.nav-heading span{font-size:10px;font-weight:400;margin-left:15px;color:#929292;letter-spacing:.7px}.work-link{display:flex;align-items:baseline;font-size:clamp(22px,2.35vw,39px);font-weight:600;letter-spacing:-1px;line-height:1.6;color:#ababab;transition:color .2s,transform .25s;gap:10px;width:100%}.work-link>span:first-child{font-size:.8em}.link-arrow{margin-left:auto;font-size:.7em;opacity:0;transition:opacity .2s}.work-link:hover,.work-link:focus-visible{color:#111}.work-link:hover{transform:translateX(5px)}.work-link:hover .link-arrow{opacity:1}.sidebar-footer{display:flex;justify-content:space-between;align-items:center;margin-top:65px;font-size:12px}.sidebar-footer>div{display:flex;gap:23px}.sidebar-footer>span{font-size:10px;color:#999}.sidebar-footer a:hover{text-decoration:underline}main{margin-left:48%;padding:0 34px}.hello{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:65px 20px 30px}.hello-label{font-size:18px;color:#888;margin:0 0 20px}.hello h1{font-size:clamp(56px,5.7vw,100px);font-weight:650;letter-spacing:-4px;line-height:1.15;margin:0 0 25px}.hello h1 span{display:block;font-size:11px;font-weight:400;letter-spacing:5px;color:#888;margin-top:17px}.roles{display:flex;gap:10px;margin:0 0 35px}.roles span{border:1px solid #e2e2e2;border-radius:30px;padding:8px 15px;font-size:12px}.biography{max-width:620px}.biography p{color:#686868;font-size:clamp(15px,1.15vw,19px);font-weight:400;line-height:1.95;margin:0 0 19px}.contact{align-self:flex-start;display:flex;gap:55px;justify-content:space-between;padding:14px 0 10px;border-bottom:1px solid #111;font-size:13px;margin-top:15px}.contact span{font-size:18px}.scroll-prompt{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e8e8e8;padding-top:20px;color:#8e8e8e;font-size:10px;letter-spacing:1px;margin-top:65px}.scroll-prompt>span:last-child{font-size:20px;color:#111}.works{padding-top:50px}.section-heading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #111;padding-top:22px;margin-bottom:40px}.section-heading h2{font-size:18px;font-weight:500;margin:0}.section-heading>span{font-size:10px;color:#999}.project{margin-bottom:75px;scroll-margin-top:25px}.project-image{display:block;overflow:hidden}.project-image:empty{display:none}.cover{height:clamp(290px,28vw,460px);position:relative;overflow:hidden;transition:filter .3s}.project-image:hover .cover{filter:brightness(.97)}.cover-top{position:absolute;top:22px;left:23px;right:23px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;z-index:2}.inside-cover{background:#e9eddf;color:#314b3d;display:flex;align-items:center;flex-direction:column;justify-content:center;padding-bottom:60px}.inside-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(65px,8vw,140px);letter-spacing:-6px;line-height:1}.inside-sub{font-size:11px;letter-spacing:3px;margin-top:12px}.characters{position:absolute;display:flex;bottom:-16px;left:-10px;right:-10px;justify-content:center;height:47%}.characters img{width:25%;object-fit:contain;transition:transform .5s}.characters img:nth-child(even){transform:translateY(15px) rotate(-7deg)}.inside-cover:hover .characters img{transform:translateY(-5px) rotate(5deg)}.film-cover{background:#191b22;color:#e2bd7d;text-align:center;padding-top:65px}.film-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,6.2vw,110px);letter-spacing:-3px;position:relative;z-index:1}.film-title>span{font-size:.45em;margin-left:4px}.film-sub{font-size:10px;letter-spacing:4px;margin-top:8px}.posters{display:flex;gap:11px;position:absolute;bottom:-60px;left:-22px;right:-22px;justify-content:center;transform:rotate(-7deg)}.posters img{width:22%;height:220px;object-fit:cover;box-shadow:0 6px 20px #0004;transition:transform .5s}.posters img:nth-child(even){transform:translateY(20px)}.film-cover:hover .posters img{transform:translateY(-8px)}.pet-cover{background:#edf1ee;color:#4d5b50;text-align:center;padding-top:65px}.pet-title{font-family:Georgia,serif;font-size:clamp(28px,3.7vw,65px);letter-spacing:-2px}.pet-sub{font-size:11px;margin-top:12px}.pet-touch{position:absolute;bottom:4%;left:50%;transform:translateX(-50%);width:200px;height:180px;background:none;border:0;cursor:pointer}.pet-touch img{width:100%;height:100%;object-fit:contain}.bubble{position:absolute;bottom:34%;right:10%;font-size:10px;padding:11px 15px;background:#fff;border-radius:20px;z-index:2}.pet-hint{position:absolute;right:18px;bottom:18px;font-size:9px;color:#849084}.project-info{padding-top:25px}.project-number{font-size:9px;letter-spacing:1.4px;color:#999;margin:0 0 14px}.project-title{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}.project-title h3{font-size:30px;letter-spacing:-1px;font-weight:500;margin:0}.project-title>span{font-size:12px;color:#858585}.description{font-size:14px;color:#727272;line-height:1.9;max-width:600px;margin:18px 0 22px}.project-bottom{display:flex;align-items:center;gap:25px}.project-visit{font-size:12px;display:flex;gap:50px;border-bottom:1px solid #aaa;padding-bottom:8px}.project-visit span{font-size:16px}.project-visit:hover{border-color:var(--pink);color:#b91670}.skill-text{font-size:10px;color:#777}.note{font-size:10px;line-height:1.8;color:#999;margin-top:18px}.main-footer{border-top:1px solid #111;padding:25px 0 30px;position:relative}.main-footer p{font-size:15px;margin:0 0 20px}.main-footer>a{font-size:11px;color:#666}.main-footer .back-top{float:right}.reveal{opacity:1}.reveal.visible{animation:reveal .7s ease-out}@keyframes reveal{from{opacity:.4;transform:translateY(24px)}to{opacity:1;transform:none}}@media(min-height:1000px){.sidebar-footer{margin-top:90px}.hello{padding-top:90px}.biography p{margin-bottom:26px}.roles{margin-bottom:45px}.scroll-prompt{margin-top:80px}}@media(max-height:760px) and (min-width:761px){.sidebar{padding:22px}.name-art{height:250px;margin-top:0}.black-sticker{padding:10px 20px}.sticker-name{font-size:70px}.sticker-english{font-size:10px}.paper-sticker{font-size:18px;padding:10px 15px}.sidebar-footer{margin-top:30px}.work-link{font-size:25px}.hello{padding-top:40px}.hello h1{font-size:58px}.biography p{font-size:14px;margin-bottom:13px}.roles{margin-bottom:22px}.scroll-prompt{margin-top:35px}}@media(max-width:1000px){.sidebar{padding:26px}.paper-sticker{font-size:18px}.hello{padding-left:0;padding-right:0}.hello h1{font-size:60px}.biography p{font-size:15px}.sidebar-footer>div{gap:15px}.cover{height:320px}.film-cover{padding-top:70px}.posters{bottom:-65px}.posters img{height:180px}.inside-title{font-size:72px}.cover-top{font-size:7px;left:15px;right:15px}.bubble{right:4%;bottom:29%;font-size:9px}.pet-touch{width:160px;height:155px;bottom:0}.pet-title{font-size:35px}.pet-cover{padding-top:65px}}@media(max-width:760px){html{scroll-padding-top:10px}.sidebar{position:relative;width:100%;height:auto;min-height:620px;padding:24px;border-right:0;border-bottom:1px solid #111}.name-art{height:auto;max-width:540px;padding:15px 7px 35px;margin:15px auto 40px}.sticker-name{font-size:clamp(70px,17vw,115px);letter-spacing:-4px}.sticker-english{font-size:11px}.paper-sticker{font-size:clamp(19px,4.3vw,28px);padding:12px 15px}.work-link{font-size:27px;line-height:1.7;gap:12px}.link-arrow{opacity:1;font-size:17px}.nav-heading{margin-bottom:17px}.sidebar-footer{margin-top:40px;padding-bottom:3px}.left-lower{width:100%}main{margin:0;padding:0 24px}.hello{min-height:0;padding:65px 0 35px}.hello-label{font-size:16px}.hello h1{font-size:64px;letter-spacing:-3px}.roles{margin:0 0 30px}.biography p{font-size:15px;line-height:2;margin-bottom:20px}.scroll-prompt{margin-top:50px}.works{padding-top:30px}.section-heading h2{font-size:17px}.cover{height:340px}.inside-title{font-size:84px}.film-title{font-size:65px}.film-cover{padding-top:65px}.posters img{height:220px;width:24%}.pet-title{font-size:37px}.pet-cover{padding-top:70px}.pet-touch{width:185px;height:175px;bottom:3px}.bubble{bottom:31%;right:6%}.cover-top{font-size:7px}.project-title h3{font-size:27px}.project-title{gap:12px}.description{font-size:14px}.project{margin-bottom:55px}.main-footer .back-top{float:none;display:block;margin-top:24px}.project-info{padding-top:22px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* One continuous sky behind both columns. */
:root{--ink:#193344;--muted:#4b6577;--pink:#3d7393}body{background-image:linear-gradient(90deg,#eff8fc38 0%,#f6fbfd80 48%,#f9fcffe0 100%),url('assets/sky-grain.png');background-size:cover;background-position:center;background-attachment:fixed}body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 12% 58%,#ffffffa1,transparent 37%),radial-gradient(ellipse at 62% 9%,#ffffffb3,transparent 42%),linear-gradient(0deg,#f6fbff88,transparent 70%)}.sidebar{background:transparent;border-right-color:#4d748638}.work-link{color:#81909a}.work-link:hover,.work-link:focus-visible{color:#193344}.nav-heading span,.sidebar-footer>span,.hello-label,.hello h1 span{color:#587386}.biography p,.description{color:#425d70}.roles span{background:#ffffff45;border-color:#718d9e40}.contact,.section-heading,.main-footer{border-color:#476b8055}.scroll-prompt{color:#557487;border-color:#6d8b9b40}.scroll-prompt>span:last-child{color:#193344}.section-heading>span,.project-number,.project-title>span,.note{color:#5c7889}.skill-text,.main-footer>a{color:#425d70}.project-visit{border-color:#68899c}.project-visit:hover{color:#244f6b}.project-image{border:1px solid #ffffff6b}.pet-cover{border:1px solid #ffffff6b}.project-info{padding-bottom:12px}@media(max-height:760px) and (min-width:761px){.name-art{height:250px;margin:0 0 12px}.sky-motto{font-size:17px;line-height:1.6;margin-top:0}}@media(max-width:760px){body{background-attachment:scroll;background-size:auto 100vh;background-repeat:repeat-y}.sidebar{min-height:650px;border-bottom-color:#4d748638}.name-art{height:340px;max-width:540px;margin:0 auto 30px;padding:0}.sky-motto{font-size:18px;margin-top:0}.airplane-scene{height:78%}}@media(prefers-reduced-motion:reduce){.airplane{animation:none}}

/* Contact details stay on the page in an accessible modal. */
.contact-trigger{background:none;border:0;padding:0;color:inherit;cursor:pointer;font-size:inherit}.contact-trigger:hover{text-decoration:underline}button.contact{background:none;border-width:0 0 1px;border-style:solid;border-color:#476b8055;color:inherit;cursor:pointer}.contact-dialog{width:min(460px,calc(100vw - 40px));max-height:calc(100dvh - 48px);overflow:auto;border:1px solid #d3e1e9;border-radius:20px;padding:36px;background:#f5fbff;color:#193344;box-shadow:0 24px 80px #19334426}.contact-dialog::backdrop{background:#19334455;backdrop-filter:blur(7px)}.contact-close{position:absolute;right:16px;top:12px;border:0;background:none;color:#587386;cursor:pointer;font-size:28px;line-height:1.2;padding:5px}.contact-eyebrow{font-size:10px;letter-spacing:3px;color:#587386;margin:0 0 16px}.contact-dialog h2{font-size:30px;font-weight:500;margin:0 0 12px}.contact-intro{font-size:13px;color:#587386;margin:0 0 28px;line-height:1.8}.contact-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 0;border-top:1px solid #d3e1e9}.contact-row>div{min-width:0}.contact-label{display:block;font-size:11px;color:#587386;margin-bottom:8px}.contact-row a{font-size:18px;overflow-wrap:anywhere}.contact-row>button{flex-shrink:0;border:1px solid #c9dce7;border-radius:8px;background:#fff8;color:#3d5e74;padding:8px 12px;cursor:pointer;font-size:12px}.contact-row>button:hover{background:#e2eff7}.copy-status{font-size:12px;min-height:18px;color:#3d5e74;margin:8px 0 0}@media(max-width:420px){.contact-dialog{padding:30px 22px}.contact-row a{font-size:16px}}
