:root{--bg:#0f0a0c;--surface:#121218;--line:#ffffff14;--text:#f2f2f5;--muted:#8e8e9a;--blue:#2f6bff;--blue-soft:#5b8cff;--amber:#ffb020;--coral:#ff6b4a;--ink:#2a0f07;--r:40px;--gap:20px;--pad:36px}*,:before,:after{box-sizing:border-box}html{background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{color:var(--text);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;margin:0;font:400 16px/1.5 Archivo,system-ui,sans-serif;overflow-x:clip}h1,h2,p,dl,dd,ul{margin:0}h1,h2{letter-spacing:-.03em;font-weight:500;line-height:1.08}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit;letter-spacing:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--blue-soft);outline-offset:3px;border-radius:6px}.muted{color:var(--muted)}.starfield{z-index:-1;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.site-header,main,.site-footer{width:min(1200px,100% - 32px);margin-inline:auto}.site-header{justify-content:space-between;align-items:center;gap:16px;padding:28px 0;display:flex}.brand{font-weight:500}.site-header nav{color:var(--muted);align-items:center;gap:28px;display:flex}.site-header nav a:hover{color:var(--text)}.lang{color:var(--text);background:0 0;border:0;padding:4px 0}.bento{gap:var(--gap);grid-template-columns:repeat(12,1fr);display:grid}.s4{grid-column:span 4}.s5{grid-column:span 5}.s7{grid-column:span 7}.s8{grid-column:span 8}.s6{grid-column:span 6}.s12{grid-column:span 12}.card{padding:var(--pad);border-radius:var(--r);background:var(--surface);border:1px solid var(--line);transition:filter .3s;position:relative;overflow:hidden}.card:hover{filter:brightness(1.06)}.card h2{font-size:clamp(28px,2.8vw,38px)}:root{--glass-base:linear-gradient(135deg, #161418f2 0%, #161418bf 55%, #16141873 100%)}.glassy{border:0}.glassy:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;z-index:4;background:linear-gradient(45deg,#ffffff38,#0000 35% 65%,#ffffff38);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.intro{background:radial-gradient(60% 70% at 100% 85%, #a0965073, transparent 70%), radial-gradient(50% 50% at 45% 110%, #6e7da059, transparent 70%), var(--glass-base);border-bottom-left-radius:24px;flex-direction:column;gap:28px;min-height:420px;display:flex}.intro-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.who{align-items:center;gap:14px;line-height:1.35;display:flex}.avatar{background:linear-gradient(160deg,#ffc94d,#ffa51f);border-radius:50%;flex:none;width:56px;height:56px;overflow:hidden}.avatar img{transform:scale(1.3)translateY(6%)}.socials{gap:8px;display:flex}.socials a{color:#fff;background:#ffffff0f;border-radius:10px;place-items:center;width:44px;height:44px;transition:background .2s;display:grid}.socials a:hover{background:#ffffff1f}.intro h1{letter-spacing:-.02em;max-width:16ch;margin-top:auto;font-size:clamp(34px,4vw,54px);font-weight:400;line-height:1.12}.lead{max-width:46ch;font-size:18px;line-height:1.8}.hero{color:#fff4d6;background:radial-gradient(circle at 50% 78%,#ffffff4d 0 20%,#ffffff2e 20% 36%,#ffffff17 36% 54%,#0000 54%),linear-gradient(160deg,#ffc94d,#ffa51f);border:0;border-top-right-radius:72px;min-height:420px}.hero .memoji{position:absolute;bottom:-26%;left:-10%;right:-10%}.spark{opacity:.85;position:absolute}.now{background:linear-gradient(165deg, #3a74ff 0%, var(--blue) 45%, #1f4fd8 100%);border:0;min-height:440px}.now-text{letter-spacing:-.03em;max-width:16ch;font-size:clamp(28px,2.7vw,36px);font-weight:500;line-height:1.12}.now-text .soft{color:#ffffffb8}.now-body{color:#fff;max-width:30ch;margin-top:20px}.glass{width:180px;height:170px;position:absolute;bottom:0;right:20px}.layer{position:absolute;left:0}.layer.l0{z-index:3;top:0}.layer.l1{z-index:2;top:28px}.layer.l2{z-index:1;top:56px}.pane{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff24;border:1px solid #ffffff73;border-radius:24px;width:150px;height:106px;transform:rotateX(58deg)rotate(-40deg);box-shadow:0 20px 40px #0a1e6e40}.l0 .pane{background:linear-gradient(#ffffffbf,#ffffffbf) 22px 26px/70px 8px no-repeat,linear-gradient(#fff6,#fff6) 22px 44px/110px 8px no-repeat,#fff3}.project{background:radial-gradient(70% 60% at 50% 0%, #2f6bff59, transparent 70%), var(--glass-base);border-top-left-radius:24px;flex-direction:column;gap:14px;padding-bottom:0;display:flex}.project-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.project h2{font-size:clamp(26px,2.6vw,36px)}.project p{max-width:46ch}.stretch:after{content:"";z-index:1;border-radius:inherit;position:absolute;inset:0}.stretch:focus-visible{outline:none}.stretch:focus-visible:after{outline:2px solid var(--blue-soft);outline-offset:-4px}.round{z-index:2;background:var(--blue);color:#fff;border-radius:50%;flex:none;place-items:center;width:48px;height:48px;display:grid;position:relative}.shot{border:1px solid var(--line);border-bottom:0;border-radius:16px 16px 0 0;flex:1;min-height:240px;margin-top:14px;position:relative;overflow:hidden}.shot img,.shot video{object-fit:cover;object-position:top;width:100%;height:100%;position:absolute;inset:0}.project.wide{grid-template-columns:5fr 7fr;gap:40px;min-height:440px;padding-right:0;display:grid}.wide .project-text{padding-bottom:var(--pad);flex-direction:column;justify-content:center;gap:16px;display:flex}.wide .shot{margin:var(--pad) 0 0;border-right:0;border-radius:16px 0 0;min-height:360px}.project.soon{background:radial-gradient(70% 60% at 50% 0%, #2f6bff1f, transparent 70%), var(--glass-base);min-height:360px}.shot.empty{background:#ffffff05;border:1px dashed #ffffff24;border-bottom:0}.project-detail{background:radial-gradient(60% 80% at 100% 0%, #2f6bff4d, transparent 70%), var(--glass-base);padding:48px}.back{font-size:15px;display:inline-block}.back:hover{color:var(--text)}.detail-body{grid-template-columns:1fr 1fr;align-items:start;gap:48px;display:grid}.detail-body .points{margin-top:20px}.logo-tile{background:#fff;border-radius:16px;place-items:center;width:fit-content;height:64px;margin-top:40px;padding:0 18px;display:grid}.logo-tile img{width:auto;height:36px}.project-detail .logo-tile+h1{margin-top:24px}.points{max-width:60ch;margin:28px 0 0;padding:0;list-style:none}.points li{border-top:1px solid var(--line);padding:14px 0}.points li:last-child{border-bottom:1px solid var(--line)}.status{color:var(--blue-soft);font-size:14px}.project-detail h1{letter-spacing:-.02em;margin-top:40px;font-size:clamp(44px,6vw,80px);font-weight:400}.project-detail .lead{max-width:52ch;color:var(--muted);margin-top:20px}.project-detail h1+.muted{margin-top:10px}.detail-actions{flex-wrap:wrap;gap:10px;margin-top:36px;display:flex}.pill{color:#fff;background:#ffffff14;border-radius:999px;align-items:center;gap:8px;height:48px;padding:0 20px;transition:background .2s;display:inline-flex}.pill:hover{background:#ffffff24}.pill.primary{background:var(--blue)}.pill.primary:hover{background:var(--blue-soft)}.detail-shot{padding:16px}.detail-shot img,.detail-shot video{border-radius:26px;width:100%;height:auto;display:block}.skills{background:radial-gradient(75% 95% at 100% 0%, #b4563e38 0%, #b4563e1f 30%, #b4563e0d 55%, transparent 80%), var(--glass-base);grid-template-columns:.95fr 1.05fr;gap:24px;min-height:420px;display:grid}.skills-text{flex-direction:column;justify-content:center;display:flex}.skills .label{font-size:14px}.skills h2{color:#ffffffd9;margin-top:14px;font-size:clamp(30px,3vw,42px);font-weight:400}.skills .body{max-width:40ch;margin-top:20px;line-height:1.7}.orbit-wrap{min-height:340px;margin:calc(var(--pad) * -1) calc(var(--pad) * -1) calc(var(--pad) * -1) 0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64'%3E%3Cpath d='M0 0L64 64M64 0L0 64' stroke='white' stroke-opacity='.05'/%3E%3Cg fill='none' stroke='white' stroke-opacity='.08'%3E%3Ccircle cx='32' cy='32' r='3'/%3E%3Ccircle cx='0' cy='0' r='3'/%3E%3Ccircle cx='64' cy='0' r='3'/%3E%3Ccircle cx='0' cy='64' r='3'/%3E%3Ccircle cx='64' cy='64' r='3'/%3E%3C/g%3E%3C/svg%3E") 50%/64px 64px;position:relative;-webkit-mask-image:linear-gradient(90deg,#0000,#000 35%);mask-image:linear-gradient(90deg,#0000,#000 35%)}.orbit{position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 22% 78%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 22% 78%,#0000 100%)}.orbit-item{offset-rotate:0deg;background:#ffffff0a;border-radius:50%;place-items:center;width:88px;height:88px;display:grid;position:absolute;top:0;left:0}.tile{color:#000;background:#fff;border-radius:12px;place-items:center;width:52px;height:52px;display:grid;box-shadow:0 12px 28px #0006}.contact{color:#fff;background:linear-gradient(160deg,#ff7a59,#f2553c);border:0;border-bottom-right-radius:72px;min-height:420px}.contact-text{z-index:1;position:relative}.contact p{color:#fffc;max-width:30ch;margin-top:12px}.contact :focus-visible{outline-color:#fff}.contact-box{z-index:2;background:#ffffff1f;border:1px solid #ffffff40;border-radius:14px;width:80px;margin-top:24px;padding:0;list-style:none;position:relative;overflow:hidden}.contact-box li+li{border-top:1px solid #ffffff40}.contact-box a,.contact-box button{color:#fff;background:0 0;border:0;place-items:center;width:100%;height:60px;transition:background .2s;display:grid}.contact-box a:hover,.contact-box button:hover{background:#ffffff1a}.contact-box :focus-visible{outline-offset:-4px}.copied{font-size:13px}.contact .memoji{z-index:3;pointer-events:none;width:84%;position:absolute;bottom:-3%;left:18%}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.memoji img{-webkit-user-select:none;user-select:none;width:100%;height:auto}.memoji-placeholder{aspect-ratio:1;color:#0000008c;background:#ffffff2e;border-radius:50%;place-items:center;width:70%;margin:0 auto;font-size:14px;display:grid}.avatar .memoji-placeholder{width:100%;font-size:9px}.site-footer{padding:96px 0 64px}.bye{letter-spacing:-.03em;color:var(--muted);margin-top:8px;font-size:clamp(36px,5vw,64px);font-weight:500}@media (width<=1024px){.s4,.s5,.s7,.s8{grid-column:span 6}.skills{grid-template-columns:1fr}.detail-body{grid-template-columns:1fr;gap:0}.detail-body .points{margin-top:28px}.orbit-wrap{min-height:300px;margin:0 calc(var(--pad) * -1) calc(var(--pad) * -1);-webkit-mask-image:linear-gradient(#0000,#000 35%);mask-image:linear-gradient(#0000,#000 35%)}.intro-top{flex-wrap:wrap}.who p{white-space:nowrap}}@media (width<=720px){:root{--pad:28px;--r:32px}.s4,.s5,.s6,.s7,.s8{grid-column:span 12}.project.wide{padding-right:var(--pad);gap:14px;display:flex}.wide .project-text{padding-bottom:0}.wide .shot{border-right:1px solid var(--line);border-radius:16px 16px 0 0;min-height:240px;margin-top:14px}.project-detail{padding:var(--pad)}.detail-shot{padding:10px}.detail-shot img,.detail-shot video{border-radius:22px}.site-header{flex-direction:column;align-items:flex-start;padding:20px 0 24px}.site-header nav{gap:20px}.hero{min-height:400px}.contact{min-height:420px}.glass{transform-origin:100% 100%;transform:scale(.85)}.site-footer{padding:72px 0 48px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
