@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}*{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;color-scheme:dark;scroll-behavior:auto}[data-theme=light]{color-scheme:light}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{background:var(--bg);color:var(--fg);font:400 16px/1.6 var(--ui);-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}:focus-visible{outline:2px solid var(--a2);outline-offset:3px;border-radius:6px}::selection{background:var(--sel)}.sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}#gl{z-index:0;pointer-events:none;opacity:0;width:100%;height:100lvh;transition:opacity 1.2s;display:block;position:fixed;inset:0}#gl.on{opacity:1}.fallback{z-index:0;pointer-events:none;background:radial-gradient(22% 60% at 50% 0,var(--glow),transparent 72%),radial-gradient(34% 9% at 50% 86%,var(--glow),transparent 70%);height:100svh;display:none;position:absolute;inset:0 0 auto}.fallback:before,.no-gl .tile:before,.rm .tile:before{content:"";aspect-ratio:1;background:linear-gradient(var(--bg),var(--bg)) padding-box,conic-gradient(var(--a1),var(--a2),var(--a3),var(--a4),var(--a1)) border-box;width:min(170px,34vw);box-shadow:0 0 60px var(--glow);border:1.5px solid #0000;border-radius:22%;position:absolute;top:70%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.no-gl .tile:before,.rm .tile:before{width:min(130px,30%);top:50%}.no-gl #gl{display:none}.no-gl .fallback{display:block}.no-gl .stage.r,.rm .stage.r{display:none}.no-gl .contact .stage,.rm .contact .stage{height:64px}header,main,footer{z-index:1;position:relative}#shore,.olive{pointer-events:none;width:100%;height:100lvh;display:none;position:fixed;inset:0}[data-theme=light] #shore{z-index:0;opacity:0;transition:opacity 1.2s;display:block}[data-theme=light] #shore.on{opacity:1}[data-theme=light] .olive{z-index:15;mix-blend-mode:multiply;opacity:0;display:block}.olive.far{filter:blur(7px)}.olive.near{filter:blur(2px)}[data-theme=light] #gl{visibility:hidden}[data-theme=light] .fallback,[data-theme=light] .tile:before{display:none}[data-theme=light] .tile{border-color:#0000}[data-theme=light] .btn-p{background:var(--solid);color:var(--solid-fg);border-color:#0000;animation:none}[data-theme=light] .btn-p:after{display:none}[data-theme=light] .btn-p:hover{background:var(--solid);filter:brightness(1.08)}[data-theme=light] .chain-fill{background:linear-gradient(var(--a1),var(--a3))}[data-theme=light] :is(.panel,.blk,.act,.cg a,.card a,.frame,.box,.mail,.th){box-shadow:0 14px 28px -20px var(--shade)}@media (width<=860px){[data-theme=light] .tile,[data-theme=light] .rhead .stage.r{display:none}[data-theme=light] .bento{grid-template-areas:"teach res""cur learn""cli lang""team team"}}@media (width<=560px){[data-theme=light] .bento{grid-template-areas:"teach""res""cur""learn""cli""team""lang"}}.btn{height:48px;font:500 15px var(--ui);white-space:nowrap;transition:transform .6s var(--ease),color .2s;will-change:transform;border-radius:13px;align-items:center;gap:10px;padding:0 24px;display:inline-flex;position:relative}.btn-p{color:var(--btn-fg);isolation:isolate;background:linear-gradient(var(--btn),var(--btn)) padding-box,conic-gradient(from var(--ang),var(--rim) 0 55%,var(--a1) 66%,var(--a2) 76%,var(--a3) 86%,var(--rim) 96%) border-box;border:1px solid #0000;animation:5s linear infinite spin}.btn-p:after{content:"";border-radius:inherit;z-index:-1;background:conic-gradient(from var(--ang),transparent 0 55%,var(--a1) 66%,var(--a2) 76%,var(--a3) 86%,transparent 96%);filter:blur(16px);opacity:.4;animation:5s linear infinite spin;position:absolute;inset:-1px}.btn-p:hover{background:linear-gradient(var(--btn-h),var(--btn-h)) padding-box,conic-gradient(from var(--ang),var(--rim) 0 50%,var(--a1) 62%,var(--a2) 74%,var(--a3) 86%,var(--rim) 98%) border-box}.btn-s{color:var(--fg-2)}.btn-s:hover{color:var(--fg)}.btn .ar{transition:transform .4s var(--ease)}.btn:hover .ar{transform:translate(3px)}@keyframes spin{to{--ang:360deg}}.hero{text-align:center;min-height:100svh;padding:clamp(92px,12vh,118px) var(--pad) 0;flex-direction:column;align-items:center;display:flex;position:relative}.stage{pointer-events:none;width:100%}.hero .stage{flex:1 0 300px}.note{max-width:54ch;color:var(--fg-2);text-wrap:balance;margin:0 auto 22px;font-size:15px;line-height:1.55}.note a{color:var(--fg);text-underline-offset:.22em;white-space:nowrap;text-decoration:underline}.latest{color:var(--fg-2);border-bottom:1px solid var(--line-2);align-items:center;gap:8px;padding:4px 0;font-size:14px;transition:color .2s,border-color .3s;display:inline-flex}.latest:hover{color:var(--fg);border-color:var(--a2)}.latest .ar{transition:transform .3s var(--ease)}.latest:hover .ar{transform:translate(3px)}.h1{font:600 clamp(56px,10vw,156px)/.9 var(--display);letter-spacing:-.055em;overflow-wrap:break-word;margin:20px 0 0}.h1 .w{margin:0 -.06em -.22em;padding:0 .06em .22em;display:inline-block;overflow:hidden}.h1 .w>span{background:linear-gradient(180deg,var(--h1a) 35%,var(--h1b) 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 -.06em -.22em;padding:0 .06em .22em;display:inline-block}.lede{max-width:40em;color:var(--fg-2);text-wrap:balance;margin:20px auto 0;font-size:clamp(17px,1.45vw,20px);line-height:1.5}.ctas{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:26px;display:flex}.sec{padding:clamp(72px,11vh,124px) var(--pad);outline:none;position:relative}.wrap{max-width:var(--max);margin:0 auto}.eyebrow{color:var(--fg-2);align-items:center;gap:12px;margin:0 0 18px;font-size:14px;font-weight:500;display:flex}.eyebrow:before{content:"";background:var(--acc);width:22px;height:1px}.h2{font:600 clamp(34px,4vw,56px)/1.03 var(--display);letter-spacing:-.042em;text-wrap:balance;margin:0}.h2 .dim{color:var(--dim)}.body{color:var(--fg-2);max-width:60ch;margin:22px 0 0;font-size:17px}.spot{position:relative}.spot:before{content:"";border-radius:inherit;pointer-events:none;background:radial-gradient(380px circle at var(--mx,-999px) var(--my,-999px),var(--spot),transparent 60%);position:absolute;inset:0}.spot:after{content:"";border-radius:inherit;pointer-events:none;background:radial-gradient(260px circle at var(--mx,-999px) var(--my,-999px),var(--fg-3),transparent 70%) border-box;opacity:0;border:1px solid #0000;transition:opacity .3s;position:absolute;inset:-1px;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) padding-box exclude,linear-gradient(#000 0 0)}@media (hover:hover) and (pointer:fine){.spot:hover:after{opacity:1}}.lnk{color:var(--fg);border-bottom:1px solid var(--line-2);align-items:center;gap:6px;padding-bottom:2px;transition:border-color .3s;display:inline-flex}.lnk:hover{border-color:var(--a2)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px}.about-g{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:48px 72px;display:grid}.def{color:var(--fg)}.quotes{gap:34px;padding-bottom:4px;display:grid}.q,.q blockquote{margin:0}.q p{font:500 clamp(25px,2.4vw,34px)/1.16 var(--display);letter-spacing:-.03em;text-wrap:balance;margin:0}.q p b{font-weight:inherit;background:var(--acc);color:#0000;-webkit-background-clip:text;background-clip:text}.q figcaption{color:var(--fg-3);margin-top:10px;font-size:14px}.q+.q{margin-left:14%}.bento{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-areas:"teach res cube cube""cur learn cube cube""cli team team lang";gap:12px;margin-top:40px;display:grid}.sk{padding:22px 22px 24px}.sk h3{font:600 19px/1.25 var(--display);letter-spacing:-.02em;margin:0 0 8px}.sk p{color:var(--fg-2);margin:0;font-size:14.5px;line-height:1.55}.tile{border:1px solid var(--line);border-radius:16px;grid-area:cube;min-height:360px;position:relative}.work-g{grid-template-columns:minmax(0,8fr) minmax(0,4fr);align-items:start;gap:40px 64px;display:grid}.work-g>.h2{grid-column:1/-1}.chain{margin:0;padding:0;list-style:none;position:relative}.chain:before,.chain-fill{content:"";background:var(--line-2);width:1px;position:absolute;top:26px;bottom:34px;left:30px}.chain-fill{background:linear-gradient(var(--a1),var(--a2) 50%,var(--a3));transform-origin:top;transform:scaleY(0)}.chain>li{padding-bottom:30px;position:relative}.chain>li:after{content:"prev";font:500 11.5px/1 var(--mono);color:var(--fg-3);position:absolute;bottom:8px;left:42px}.chain>li:last-of-type:after{content:"genesis"}.blk{background:var(--panel);border:1px solid var(--line);transition:border-color .5s var(--ease);border-radius:14px;grid-template-columns:106px minmax(0,1fr);gap:4px 18px;padding:18px 22px;display:grid}.blk.on{background:linear-gradient(var(--panel),var(--panel)) padding-box,var(--acc) border-box;border-color:#0000}.when{font:500 13px/1.9 var(--mono);color:var(--fg-3);font-variant-numeric:tabular-nums;margin:0}.blk h3{font:600 19px/1.3 var(--display);letter-spacing:-.02em;margin:0}.co{margin:2px 0 6px;font-size:15px}.co span{color:var(--fg-3)}.blk .d{color:var(--fg-2);margin:0;font-size:15px}.side{gap:30px;display:grid;position:sticky;top:88px}.mini{font:600 15px var(--display);color:var(--fg-2);letter-spacing:-.01em;margin:0 0 12px}.plain{gap:13px;margin:0;padding:0;font-size:14.5px;line-height:1.45;list-style:none;display:grid}.plain b{font-weight:500;display:block}.plain span{color:var(--fg-3);font-size:13.5px}.res-g{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:40px 64px;display:grid}.res-l{position:sticky;top:88px}.res-l .h2{font-size:clamp(30px,3vw,44px)}.note{color:var(--fg-3);max-width:44ch;margin:18px 0 0;font-size:14.5px}.stage.r{height:clamp(240px,34vh,360px);margin-top:12px}.papers{gap:4px;margin:0;padding:0;list-style:none;display:grid}.paper{border-radius:12px;grid-template-columns:minmax(0,1fr) auto;gap:4px 28px;padding:16px 18px;display:grid}.paper h3{font:500 16.5px/1.42 var(--ui);letter-spacing:-.005em;text-wrap:pretty;margin:0}.venue{color:var(--fg-3);margin:0;font-size:13.5px}.pm{text-align:right;font:500 13px/1.75 var(--mono);color:var(--fg-3);font-variant-numeric:tabular-nums;grid-area:1/2/3;margin:0}.pm b{color:var(--fg);font-weight:500;display:block}.paper h3 a{transition:background-size .4s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat}.paper h3 a:hover{background-size:100% 1px}.fa{border-left:1px solid var(--line-2);color:var(--fg-2);margin-left:10px;padding-left:10px}.also{max-width:62ch;margin:22px 18px 0}.pm b.hi{background:var(--acc);color:#0000;-webkit-background-clip:text;background-clip:text}[data-theme=light] .pm b.hi{color:var(--a2);background:0 0}.certs{padding-left:0;padding-right:0}.certs .head{padding:0 var(--pad);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.certs .head>div:first-child{max-width:640px}.ctrl{align-items:center;gap:8px;display:flex}.ibtn{border:1px solid var(--line-2);background:var(--panel);width:44px;height:44px;color:var(--fg);cursor:pointer;transition:border-color .3s,opacity .3s,transform .16s var(--ease);border-radius:12px;place-items:center;display:grid}.ibtn:hover{border-color:var(--fg-3)}.ibtn:active{transform:scale(.96)}.ibtn:disabled{opacity:.35;cursor:default}.tbtn{border:1px solid var(--line-2);background:var(--panel);height:44px;color:var(--fg);font:500 14px var(--ui);cursor:pointer;transition:border-color .3s,transform .16s var(--ease);border-radius:12px;margin-left:8px;padding:0 16px}.tbtn:hover{border-color:var(--fg-3)}.tbtn:active{transform:scale(.97)}.rail{scroll-snap-type:x mandatory;scroll-padding-inline:var(--rail-pad);padding:6px var(--rail-pad) 10px;scrollbar-width:none;cursor:grab;overscroll-behavior-x:contain;-webkit-user-select:none;user-select:none;margin-top:36px;overflow-x:auto}.rail::-webkit-scrollbar{display:none}.rail.drag{scroll-snap-type:none;cursor:grabbing}.rail.drag a{pointer-events:none}.track{gap:16px;width:max-content;margin:0;padding:0;list-style:none;display:flex}.card{scroll-snap-align:start;width:clamp(220px,21vw,290px)}.card a{aspect-ratio:4/3;background:var(--panel);border:1px solid var(--line);transition:border-color .35s,transform .6s var(--ease);border-radius:16px;padding:16px;display:block}.card img{object-fit:contain;-webkit-user-drag:none;width:100%;height:100%;display:block}.card:hover a{border-color:var(--line-2);transform:translateY(-4px)}.card p{margin:12px 2px 0;font-size:14.5px;line-height:1.4}.card small{color:var(--fg-3);margin-bottom:3px;font-size:12.5px;display:block}.rbar{margin:22px var(--rail-pad) 0;background:var(--line);height:1px;position:relative;overflow:hidden}.rbar i{background:var(--acc);transform-origin:0;position:absolute;inset:0;transform:scaleX(.1)}.pgrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 16px;margin:34px 0 0;padding:0;list-style:none;display:grid}.pj{margin:0}.pj-f{grid-column:span 2}.th{border:1px solid var(--line-2);height:clamp(130px,11.5vw,168px);box-shadow:0 24px 50px -30px var(--shade);background:#fff;border-radius:10px;overflow:hidden}.th img,.th canvas{object-fit:cover;object-position:50% 0;width:100%;height:100%;transition:transform .8s var(--ease);display:block}.pj:hover .th img,.pj:hover .th canvas{transform:scale(1.035)}.pj figcaption{margin-top:12px}.pt{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0;display:flex}.pt b{font:600 16px/1.3 var(--display);letter-spacing:-.015em}.host{font:12px var(--mono);color:var(--fg-3)}.pd{color:var(--fg-2);margin:4px 0 0;font-size:14px;line-height:1.5}.tag{font:500 12px var(--mono);color:var(--fg-3);margin:6px 0 0}.shelf{grid-template-columns:repeat(8,minmax(0,1fr));gap:34px 0;margin:38px 0 0;padding:0;list-style:none;display:grid}.act{padding:0 10px}.act h3{font:600 16px/1.25 var(--display);letter-spacing:-.015em;margin:40px 0 4px}.act p{color:var(--fg-2);margin:0;font-size:13.5px;line-height:1.45}.li-g{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:start;gap:40px 64px;display:grid}.li-t .pill{height:44px;margin-top:26px;padding:0 18px;font-size:14.5px}.fine{color:var(--fg-3);max-width:34ch;margin:18px 0 0;font-size:13.5px}.frame{background:var(--panel);border:1px solid var(--line-2);box-shadow:0 40px 90px -40px var(--shade);border-radius:14px;margin:0;overflow:hidden}.bar{border-bottom:1px solid var(--line);justify-content:center;align-items:center;height:34px;display:flex;position:relative}.bar:before{content:"";background:var(--line-2);width:6px;height:6px;box-shadow:11px 0 var(--line-2),22px 0 var(--line-2);border-radius:50%;position:absolute;top:14px;left:14px}.url{background:var(--line);max-width:70%;font:12px var(--mono);color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:2px 12px;overflow:hidden}.feed{color:#30333c;background:#f3f4f6;height:clamp(460px,62vh,600px);position:relative}.feed iframe{opacity:0;background:#fff;border:0;width:100%;height:100%;transition:opacity .5s;position:absolute;inset:0}.feed[data-state=ready] iframe{opacity:1}.fb{text-align:center;place-content:center;justify-items:center;gap:12px;padding:24px;font-size:15px;display:grid;position:absolute;inset:0}.fb p{max-width:34ch;margin:0}.fb a{color:#1f3bb3;border-bottom:1px solid;padding-bottom:1px}.feed .ld{display:none}.feed[data-state=loading] .ld{display:block}.feed[data-state=loading] .fb>:not(.ld){display:none}.feed[data-state=ready] .fb{visibility:hidden}.contact{text-align:center;padding-top:clamp(84px,13vh,140px);padding-bottom:0}.contact .stage{height:clamp(260px,40vh,420px)}.contact .eyebrow{justify-content:center}.contact .h2{max-width:15ch;margin:0 auto;font-size:clamp(38px,5.2vw,76px)}.mail{border:1px solid var(--line-2);background:var(--panel);border-radius:18px;align-items:center;gap:14px;margin-top:36px;padding:8px 8px 8px 24px;font-style:normal;display:inline-flex}.mail a{font:500 clamp(18px,2vw,24px) var(--ui);letter-spacing:-.01em}.copy{background:var(--solid);height:44px;color:var(--solid-fg);font:500 14px var(--ui);cursor:pointer;transition:transform .16s var(--ease),opacity .2s;border:0;border-radius:12px;align-items:center;gap:8px;padding:0 18px;display:inline-flex}.copy:hover{opacity:.9}.copy:active{transform:scale(.97)}.socials{flex-wrap:wrap;justify-content:center;gap:6px 26px;margin:28px 0 0;padding:0;font-size:15px;list-style:none;display:flex}.socials a{color:var(--fg-2);transition:color .2s}.socials a:hover{color:var(--fg)}footer{padding:0 var(--pad) 28px;color:var(--fg-3);flex-wrap:wrap;justify-content:space-between;gap:10px 24px;font-size:13.5px;display:flex}footer nav{gap:22px;display:flex}footer a:hover{color:var(--fg)}dialog{border:1px solid var(--line-2);background:var(--pop);width:min(1100px,100vw - 24px);max-height:88vh;color:var(--fg);overscroll-behavior:contain;border-radius:18px;margin:auto;padding:0}dialog::backdrop{backdrop-filter:blur(6px);background:#050506b8}.dh{z-index:1;background:var(--pop);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 22px;display:flex;position:sticky;top:0}.dh h2{font:600 22px var(--display);letter-spacing:-.02em;margin:0}.all{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:18px;margin:0;padding:22px;list-style:none;display:grid}.all a{aspect-ratio:4/3;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px;display:block}.all img{object-fit:contain;width:100%;height:100%;display:block}.all p{color:var(--fg);margin:8px 0 0;font-size:13px;line-height:1.35}.all small{color:var(--fg-3);display:block}@media (width<=860px){.h1{font-size:19.5vw;line-height:.92}.h1 .w{display:block}.lede{font-size:17px}.about-g,.work-g,.res-g,.li-g{grid-template-columns:minmax(0,1fr)}.q+.q{margin-left:0}.bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"cube cube""teach res""cur learn""cli lang""team team"}.tile{min-height:clamp(260px,42vh,340px)}.side,.res-l{position:static}.stage.r{height:220px;margin:4px 0 -8px}.blk{grid-template-columns:minmax(0,1fr);gap:2px;padding:16px 18px}.chain:before,.chain-fill{left:24px}.chain>li:after{left:36px}.paper{padding:14px 6px}.pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.th{height:clamp(110px,27vw,190px)}.shelf{grid-template-columns:repeat(4,minmax(0,1fr))}.mail{flex-wrap:wrap;justify-content:center;gap:12px;padding:14px}}@media (width<=560px){.bento{grid-template-columns:minmax(0,1fr);grid-template-areas:"cube""teach""res""cur""learn""cli""team""lang"}.shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 0}.act h3{margin-top:30px}.paper{grid-template-columns:minmax(0,1fr)}.pm{text-align:left;grid-area:auto/1;gap:12px;display:flex}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation:none!important}#gl{height:100vh;position:absolute}}.read-progress{background:var(--acc);transform-origin:0;z-index:40;width:100%;height:3px;display:none;position:fixed;top:0;left:0;transform:scaleX(0)}@supports (animation-timeline:scroll()){.read-progress{animation:linear both read-grow scroll(root);display:block}@keyframes read-grow{to{transform:scaleX(1)}}}body{word-spacing:.04em;letter-spacing:.01em;font-size:17px;line-height:1.7}.body{font-size:18px;line-height:1.7}.hero .note{font-size:16px;line-height:1.65}.lede{line-height:1.6}.sk p,.blk .d,.pd,.card p,.act p,.plain{font-size:16px;line-height:1.65}.co{font-size:16px}.paper h3{font-size:17.5px;line-height:1.5}.venue,.plain span,.fine,.q figcaption,.socials{font-size:15px}.host,.tag,.card small{font-size:14px}.body.one{color:var(--fg);max-width:52ch}.body b,.sk p b{color:var(--fg);font-weight:700}.work-g{grid-template-columns:minmax(0,1fr);gap:28px;max-width:920px}.box{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:28px 32px}.box .big{font:600 24px/1.2 var(--display);letter-spacing:-.02em;color:var(--fg);margin:0 0 20px}.box .plain{gap:18px;font-size:16px;line-height:1.6}.box .plain b{color:var(--fg);font-weight:600}.box .plain span{color:var(--fg-2);font-size:15px;display:block}@media (width<=560px){.box{padding:22px 20px}}.chain>li.chain-fill:after{content:none}.chain>li:nth-last-child(2):after{content:"genesis"}.chain{margin-bottom:8px}.chead{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.chead .h2{max-width:720px}.cbig,.cgrid{gap:18px;margin:32px 0 0;padding:0;list-style:none;display:grid}.cbig{grid-template-columns:repeat(2,minmax(0,1fr))}.cgrid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}.cg a{background:var(--panel);border:1px solid var(--line);aspect-ratio:4/3;transition:border-color .35s,transform .6s var(--ease);border-radius:16px;padding:14px;display:block}.cbig .cg a{aspect-ratio:5/4;padding:22px}.cg img{object-fit:contain;width:100%;height:100%;display:block}.cg:hover a{border-color:var(--line-2);transform:translateY(-3px)}.cg p{margin:12px 2px 0;font-size:16px;line-height:1.45}.cg small{color:var(--fg-3);margin-bottom:2px;font-size:14px;display:block}.cbig .cg p{font-size:18px}@media (width<=860px){.cgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}.call button{aspect-ratio:4/3;border:1px solid var(--line-2);width:100%;color:var(--fg);font:600 clamp(18px,1.6vw,22px)/1.25 var(--display);letter-spacing:-.015em;text-align:left;cursor:pointer;transition:border-color .35s,transform .6s var(--ease);background:0 0;border-radius:16px;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:20px;display:flex}.call button:hover{border-color:var(--fg-3);transform:translateY(-3px)}.call button:focus-visible{outline:2px solid var(--a2);outline-offset:3px}.call .ar{color:var(--a2);transition:transform .4s var(--ease);font-size:clamp(34px,3.4vw,48px);line-height:1}.call button:hover .ar{transform:translate(6px)}@media (width<=560px){.cbig{grid-template-columns:minmax(0,1fr)}}.projects.slide{padding-left:0;padding-right:0}.projects .head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:28px;padding:0;display:flex}.pcard{width:clamp(240px,22vw,300px)}.pcard .th{height:150px}.shelf{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.act{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px}.act h3{margin:0 0 4px}@media (width<=860px){.shelf{grid-template-columns:repeat(2,minmax(0,1fr))}}.res-one{max-width:920px}.rhead{grid-template-columns:minmax(0,1fr) 300px;align-items:center;gap:32px;margin-bottom:24px;display:grid}.rhead .stage.r{height:240px;margin:0;display:block}.rm .rhead .stage.r{display:none}.more{margin-top:18px}.more>summary{cursor:pointer;list-style:none;display:inline-flex}.more>summary::-webkit-details-marker{display:none}.more[open]>summary{margin-bottom:12px}@media (width<=760px){.rhead{grid-template-columns:minmax(0,1fr)}.rhead .stage.r{height:180px}}.pd b{color:var(--fg);font-weight:700}.projects .more{margin-top:26px}.prest{gap:16px;font-size:16px;line-height:1.6}.prest b{color:var(--fg);font-weight:600}.prest span{color:var(--fg-2);font-size:15px;display:block}.more>summary.tbtn{align-items:center;height:40px;margin:0;line-height:1}.act p b{color:var(--fg);font-weight:700}.more[open]>summary.tbtn{margin-bottom:18px}.li-one{max-width:920px}.li-one .frame{margin-top:28px}.li-one .fine{max-width:none;margin-top:12px}.plain span b{color:var(--fg);font-weight:700;display:inline}.chead .pill[target=_blank]:after,.fb a:after,.socials a:after,.note .lnk:after{content:"↗";margin-left:.3em}
