.hm-hero:is(.is-left,.is-detail,.is-works){--sub-cut:clamp(2.5rem,7dvh,5rem);border-radius:0;background:none}.hm-hero.is-left{place-items:center start;min-height:calc(100dvh - var(--header-h) - var(--sub-cut));padding-inline:clamp(1.5rem,8vw,8.75rem)}.hm-hero.is-left .hm-hero-copy{max-width:min(41.25rem,54%);text-align:left}.hm-hero.is-left .hm-actions{justify-content:flex-start}.hm-hero.is-left .hm-hero-lead{margin-inline:0}.hm-hero.is-left .hm-display{font-size:clamp(2.25rem,5vw,4.5rem)}.hm-hero.is-left .hm-display .hm-line{display:block}.hm-hero.is-about .hm-display{font-size:clamp(2rem,4.3vw,3.875rem)}.hm-hero.is-about .hm-hero-lead{font-size:clamp(.9375rem,1.25vw,1.0625rem)}.hm-hero.is-works .hm-display{font-size:clamp(2.125rem,4.6vw,4.125rem)}.hm-hero.is-works .hm-hero-lead{font-size:clamp(.9375rem,1.25vw,1.0625rem)}.ab-s1{--r:8deg;width:clamp(6.875rem,13vw,11.875rem);right:8%;top:12%}.ab-s2{--r:-9deg;width:clamp(6.25rem,11vw,10rem);right:28%;top:30%}.ab-s3{--r:-8deg;width:clamp(9.375rem,18vw,16.25rem);right:6%;top:52%}.ab-s4{--r:12deg;width:clamp(3.75rem,7vw,6.25rem);right:30%;bottom:10%}.ab-s5{--r:-12deg;width:clamp(1.75rem,3vw,2.75rem);right:4%;top:40%}.ab-s6{--r:-9deg;width:clamp(3.5rem,6vw,5.5rem);right:20%;top:8%}.wk-s1{--r:-9deg;width:clamp(6.25rem,11vw,10rem);right:9%;top:10%}.wk-s2{--r:10deg;width:clamp(3.5rem,6vw,5.5rem);right:26%;top:14%}.wk-s3{--r:-8deg;width:clamp(9.375rem,18vw,16.25rem);right:8%;top:50%}.wk-s4{--r:14deg;width:clamp(7.5rem,13vw,11.875rem);right:30%;bottom:8%}.wk-s5{--r:-12deg;width:clamp(1.75rem,3vw,2.75rem);right:5%;bottom:14%}.wk-s6{--r:12deg;width:clamp(3.5rem,6.4vw,5.75rem);right:22%;top:42%}.ab-n1{--r:9deg;width:clamp(5.625rem,10vw,8.75rem);right:4%;top:6%}.ab-n2{--r:-9deg;width:clamp(3.125rem,5.4vw,4.75rem);right:16%;top:2%}.ab-qa-list{display:grid;grid-gap:clamp(3.5rem,8vw,7rem);gap:clamp(3.5rem,8vw,7rem)}.ab-qa{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-gap:clamp(1.5rem,4vw,4rem);gap:clamp(1.5rem,4vw,4rem);align-items:start}.ab-qa:nth-child(2n){grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.ab-qa:nth-child(2n) .ab-q{order:2}.ab-qa:nth-child(2n) .ab-a{order:1}.ab-q{position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + 2rem)}.ab-qnum{display:block;color:transparent;font:700 clamp(3.5rem,8vw,6.75rem) /.9 var(--font-display);letter-spacing:-.04em;-webkit-text-stroke:1.5px color-mix(in srgb,var(--color-accent) 50%,var(--color-line));transition:color .4s,-webkit-text-stroke-color .4s}.ab-qa:hover .ab-qnum{color:color-mix(in srgb,var(--color-accent) 18%,transparent);-webkit-text-stroke-color:var(--color-accent)}.ab-qtext{margin-top:.875rem;font:700 clamp(1.25rem,2.1vw,1.75rem) /1.4 var(--font-display);letter-spacing:-.02em}.ab-a{position:relative;padding:clamp(1.625rem,3.2vw,2.75rem);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:0 1.5rem 2.5rem -1.875rem rgba(30,16,90,.4)}.ab-a:before{content:"";position:absolute;top:-.625rem;left:2.25rem;width:4rem;height:1.25rem;rotate:-3deg;background:rgba(124,92,255,.24)}.ab-qa:nth-child(2n) .ab-a:before{left:auto;right:2.25rem;rotate:3deg}.ab-a p{font-size:clamp(1rem,1.5vw,1.1875rem);line-height:1.75;word-break:keep-all}.ab-list{display:grid;grid-gap:.875rem;gap:.875rem}.ab-list li{display:flex;align-items:flex-start;gap:.75rem;font-size:clamp(1rem,1.5vw,1.1875rem);font-weight:700;line-height:1.5}.ab-list .ui-icon{flex:none;margin-top:.25rem;padding:.1875rem;border-radius:50%;background:var(--color-accent);color:var(--color-on-accent);width:1.4em;height:1.4em}.ab-props{display:grid;grid-gap:clamp(1.5rem,3vw,2.5rem);gap:clamp(1.5rem,3vw,2.5rem)}.ab-prop{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);grid-gap:1.5rem clamp(1.5rem,4vw,3.5rem);gap:1.5rem clamp(1.5rem,4vw,3.5rem);padding:clamp(1.5rem,3vw,2.5rem);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-card);transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s}.ab-prop:nth-child(odd){margin-right:clamp(0px,6vw,6rem)}.ab-prop:nth-child(2n){margin-left:clamp(0px,6vw,6rem)}.ab-prop:hover{transform:translateY(-.25rem);border-color:color-mix(in srgb,var(--color-accent) 45%,var(--color-line))}.ab-prop-num{color:var(--color-accent);font:500 .8125rem/1 var(--font-geist-mono),ui-monospace,monospace}.ab-prop h3{margin-top:.75rem;font-size:clamp(1.1875rem,2vw,1.5rem);letter-spacing:-.02em;line-height:1.35}.ab-prop-project{margin-top:.375rem;color:var(--color-muted);font-size:.875rem}.ab-ba{display:grid;grid-gap:.875rem;gap:.875rem}.ab-ba p{display:grid;grid-template-columns:4rem minmax(0,1fr);grid-gap:1rem;gap:1rem;align-items:baseline}.ab-ba .lbl{font:500 .75rem/1 var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase}.ab-ba .lbl,.ab-before{color:var(--color-muted)}.ab-before{text-decoration:line-through;-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);text-decoration-thickness:.125rem}.ab-after{font-size:clamp(1.0625rem,1.8vw,1.375rem);font-weight:700;letter-spacing:-.015em;line-height:1.45}.ab-notes{display:grid;grid-gap:.625rem;gap:.625rem;grid-column:2;padding-top:1rem;border-top:1px dashed var(--color-line);font-size:.9375rem}.ab-notes div{display:grid;grid-template-columns:4rem minmax(0,1fr);grid-gap:1rem;gap:1rem}.ab-notes dt{color:var(--color-accent);font:700 .75rem/1.7 var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase}.ab-notes dd{color:var(--color-muted)}.ab-domains{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:clamp(1.5rem,3vw,2.5rem) clamp(1.5rem,4vw,3.5rem);gap:clamp(1.5rem,3vw,2.5rem) clamp(1.5rem,4vw,3.5rem);align-items:start}.ab-domain{position:relative;padding:clamp(1.5rem,3vw,2.25rem) 0 0;border-top:1.5px dashed var(--color-line);transition:border-color .3s}.ab-domain:nth-child(2n){margin-top:clamp(2rem,5vw,4.5rem)}.ab-domain:hover{border-top-color:var(--color-accent)}.ab-domain-num{color:transparent;font:700 clamp(3rem,6vw,5.25rem) /.9 var(--font-display);letter-spacing:-.04em;-webkit-text-stroke:1.5px color-mix(in srgb,var(--color-accent) 50%,var(--color-line))}.ab-domain h3{margin-top:.875rem;font-size:clamp(1.375rem,2.4vw,1.875rem);letter-spacing:-.02em}.ab-domain-focus{margin-top:.375rem;color:var(--color-accent);font-weight:700}.ab-domain-desc{margin-top:.625rem;max-width:46ch;color:var(--color-muted);font-size:.9375rem}.ab-growth{border-top:1px solid var(--color-line)}.ab-growth li{display:grid;grid-template-columns:clamp(6.875rem,16vw,13.75rem) minmax(0,1fr);grid-gap:clamp(1.25rem,4vw,3.5rem);gap:clamp(1.25rem,4vw,3.5rem);align-items:baseline;padding:clamp(1.5rem,3vw,2.5rem) 0;border-bottom:1px solid var(--color-line);transition:padding .3s cubic-bezier(.16,1,.3,1)}.ab-growth li:hover{padding-left:1.25rem}.ab-year{color:transparent;font:700 clamp(2.5rem,6vw,5.25rem) /.9 var(--font-display);letter-spacing:-.04em;-webkit-text-stroke:1.5px color-mix(in srgb,var(--color-accent) 50%,var(--color-line));transition:color .3s,-webkit-text-stroke-color .3s}.ab-growth li:hover .ab-year{color:color-mix(in srgb,var(--color-accent) 18%,transparent);-webkit-text-stroke-color:var(--color-accent)}.ab-growth h3{font-size:clamp(1.1875rem,2vw,1.625rem);letter-spacing:-.02em}.ab-growth p{margin-top:.5rem;max-width:60ch;color:var(--color-muted);font-size:.9375rem}.ab-toolkit{display:grid;grid-gap:0;gap:0;border-top:1px solid var(--color-line)}.ab-toolkit>div{display:grid;grid-template-columns:clamp(8.125rem,18vw,15rem) minmax(0,1fr);grid-gap:1.5rem;gap:1.5rem;align-items:center;padding:1.375rem 0;border-bottom:1px solid var(--color-line)}.ab-toolkit dt{font:700 clamp(1.0625rem,1.8vw,1.375rem) /1.3 var(--font-display);letter-spacing:-.02em}.ab-toolkit ul{display:flex;flex-wrap:wrap;gap:.625rem}.ab-toolkit li{display:inline-flex;align-items:center;gap:.5rem;padding:.5625rem 1rem;border:1px solid var(--color-line);border-radius:62.4375rem;background:var(--color-card);font-size:.875rem;font-weight:500;transition:transform .25s cubic-bezier(.34,1.56,.64,1),border-color .2s}.ab-toolkit li:hover{transform:translateY(-.1875rem);border-color:var(--color-accent)}.ab-toolkit .skill-logo{width:1rem;height:1rem}.ab-next{position:relative}.ab-next .hm-display{margin-top:1.25rem;max-width:14ch;font-size:clamp(2.5rem,6.4vw,5.75rem)}.ab-next .hm-lead{margin-top:1.5rem;max-width:54ch;font-size:clamp(1rem,1.5vw,1.1875rem)}.wk-feature,.wk-slider{position:relative}.wk-feature{--gap:clamp(1rem,2.4vw,2.25rem);grid-column-gap:var(--gap);column-gap:var(--gap);display:grid;justify-items:center;padding:.5rem 0 1.25rem;cursor:-webkit-grab;cursor:grab;touch-action:pan-y;-moz-user-select:none;user-select:none;-webkit-user-select:none;transition:opacity .8s ease}.wk-feature :is(a,img){-webkit-user-drag:none}.wk-slider.is-waiting .wk-feature{opacity:0}.wk-slider.is-drag .wk-feature{cursor:-webkit-grabbing;cursor:grabbing}.wk-slider.is-drag .wk-feature a{pointer-events:none}.wk-row{grid-area:1/1;width:86%;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);grid-gap:clamp(1.25rem,3vw,2.75rem);gap:clamp(1.25rem,3vw,2.75rem);align-items:stretch;padding:clamp(.875rem,1.6vw,1.375rem);border:1px solid var(--color-line);border-radius:calc(var(--radius-lg) + .375rem);background:var(--color-card);cursor:pointer;will-change:transform;transition:box-shadow .6s ease}.wk-row.is-active{cursor:inherit;box-shadow:0 2.75rem 5rem -2.25rem rgba(60,40,170,.5),0 .625rem 1.5rem -.875rem rgba(60,40,170,.22)}.wk-media{position:relative;align-self:center;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-card);text-decoration:none;box-shadow:0 1.125rem 2.25rem -1.5rem rgba(60,40,170,.45)}.wk-media:before{content:"";flex:none;height:2.375rem;border-bottom:1px solid var(--color-line);background:radial-gradient(circle at 1.25rem 50%,#FF5F57 0 .3125rem,transparent .35rem),radial-gradient(circle at 2.375rem 50%,#FEBC2E 0 .3125rem,transparent .35rem),radial-gradient(circle at 3.5rem 50%,#28C840 0 .3125rem,transparent .35rem),var(--color-surface)}.wk-media:after{content:"";position:absolute;top:.5625rem;left:5.125rem;width:min(46%,16.25rem);height:1.25rem;border:1px solid var(--color-line);border-radius:62.4375rem;background:var(--color-card)}.wk-media>.hm-work-empty,.wk-media>.mockup{position:relative;flex:none;aspect-ratio:16/10;height:auto;border-radius:0}.wk-media>.mockup img{position:absolute;inset:0}.wk-media .mockup{border:0;transform:scale(1.2);transform-origin:50% 0;transition:transform 1.3s cubic-bezier(.16,1,.3,1)}.wk-row.is-active .wk-media .mockup{transform:none}.wk-row.is-active:hover .wk-media .mockup{transform:scale(1.05);transition-duration:.7s}.wk-info>*{transition:opacity .5s ease,transform .6s cubic-bezier(.16,1,.3,1)}.wk-row:not(.is-active) .wk-info>*{transform:translateY(.625rem)}.wk-row.is-active .wk-info>:nth-child(2){transition-delay:.05s}.wk-row.is-active .wk-info>:nth-child(3){transition-delay:.1s}.wk-row.is-active .wk-info>:nth-child(n+4){transition-delay:.15s}.wk-slider-bar{display:flex;align-items:center;gap:1.125rem;margin-top:.75rem}.wk-slider-count{margin:0;white-space:nowrap;color:var(--color-muted);font:500 .875rem/1 var(--font-geist-mono),ui-monospace,monospace}.wk-slider-count b{color:var(--color-text);font-weight:600}.wk-slider-dots{display:flex;flex:1 1;gap:.5rem}.wk-slider-dots button{position:relative;overflow:hidden;width:1.75rem;height:.375rem;padding:0;border:0;border-radius:62.4375rem;background:var(--color-line);cursor:pointer;transition:width .35s cubic-bezier(.16,1,.3,1),background-color .25s}.wk-slider-dots button:hover{background:var(--color-muted)}.wk-slider-dots button.is-on{width:3.5rem;background:var(--color-accent)}.wk-slider-dots button i{position:absolute;inset:0;border-radius:inherit;background:var(--color-accent);transform-origin:left}.wk-slider.is-playing .wk-slider-dots button.is-on{background:color-mix(in srgb,var(--color-accent) 28%,var(--color-line))}.wk-slider.is-playing .wk-slider-dots button i{animation:wk-fill var(--auto,5s) linear both}@keyframes wk-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.wk-slider-btns{display:flex;gap:.5rem}.wk-slider-btns button{display:grid;place-items:center;width:2.75rem;height:2.75rem;padding:0;border:1.5px solid var(--color-line);border-radius:50%;background:var(--color-card);color:var(--color-text);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .25s cubic-bezier(.34,1.56,.64,1)}.wk-slider-btns button:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent);transform:translateY(-.125rem)}.wk-slider-btns button:disabled{opacity:.35;cursor:default}.wk-slider-btns svg{width:1.125rem;height:1.125rem}.wk-slider-prev svg{transform:scaleX(-1)}.wk-slider-toggle{margin-right:.375rem}.wk-info{display:grid;grid-gap:1rem;gap:1rem;align-content:center;padding-block:clamp(.75rem,1.6vw,1.5rem)}.wk-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.625rem;color:var(--color-muted);font-size:.875rem}.wk-num{color:var(--color-accent);font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.8125rem}.wk-title{font:700 clamp(1.5rem,2.8vw,2.5rem) /1.25 var(--font-display);letter-spacing:-.03em}.wk-sum{color:var(--color-muted);font-size:clamp(.9375rem,1.4vw,1.0625rem)}.wk-chips{display:flex;flex-wrap:wrap;gap:.5rem}.wk-chips li{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:1px solid var(--color-line);border-radius:62.4375rem;background:var(--color-card);font-size:.8125rem;font-weight:500}.wk-chips .skill-logo{width:.875rem;height:.875rem}.wk-result{font-weight:700}.wk-info .hm-actions{margin-top:.75rem}.wk-listhead{display:grid;grid-gap:1.75rem;gap:1.75rem;margin-bottom:clamp(2.5rem,5vw,4rem)}.hm-grid-works.wk-grid{gap:clamp(2.25rem,4vw,3.5rem) 1.5rem}.hm-grid-works.wk-grid>li:nth-child(n){margin-top:0}.wk-count{margin-left:.625rem;color:var(--color-accent);font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.5em;vertical-align:super}.wk-filters{display:grid;grid-gap:.75rem;gap:.75rem}.wk-filter{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.wk-filter-label{min-width:3.25rem;color:var(--color-muted);font:500 .75rem/1 var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase}.wk-chip{display:inline-flex;align-items:center;padding:.5625rem 1.125rem;border:1.5px solid var(--color-line);border-radius:62.4375rem;background:var(--color-card);color:var(--color-text);font-size:.875rem;font-weight:600;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s,transform .25s cubic-bezier(.34,1.56,.64,1)}.wk-chip:hover{border-color:var(--color-text);transform:translateY(-.125rem)}.wk-chip[aria-current=page]{border-color:var(--color-text);background:var(--color-text);color:var(--color-bg)}.wk-reset{display:inline-flex;align-items:center;gap:.375rem;margin-left:.375rem;padding:.5625rem 1rem .5625rem .75rem;border:1.5px solid transparent;border-radius:62.4375rem;background:var(--color-accent-soft);color:var(--color-accent);font-size:.875rem;font-weight:700;text-decoration:none;transition:background-color .2s,color .2s,transform .25s cubic-bezier(.34,1.56,.64,1)}.wk-reset:before{content:"";width:1rem;height:1rem;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center /contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center /contain no-repeat}.wk-reset:hover{background:var(--color-accent);color:var(--color-on-accent);transform:translateY(-.125rem)}.wk-sum-line{margin-top:.375rem;color:var(--color-muted);font-size:.875rem;grid-column:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.wk-stack-line{grid-column:1;display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.5rem}.wk-stack-line li{display:inline-flex;align-items:center;gap:.3125rem;padding:.1875rem .625rem;border:1px solid var(--color-line);border-radius:62.4375rem;font-size:.75rem;color:var(--color-muted)}.wk-stack-line .skill-logo{width:.75rem;height:.75rem}.wk-badge{display:inline-block;padding:.125rem .5rem;border-radius:.375rem;background:var(--color-accent-soft);color:var(--color-accent);font-size:.6875rem;font-weight:700}@media (max-width:1023px){.hm-hero.is-left .hm-hero-copy{max-width:min(40rem,100%)}.ab-qa,.ab-qa:nth-child(2n){grid-template-columns:1fr}.ab-qa:nth-child(2n) .ab-a,.ab-qa:nth-child(2n) .ab-q{order:0}.ab-q{position:static}.ab-prop{grid-template-columns:1fr}.ab-notes{grid-column:1}.ab-prop:nth-child(2n),.ab-prop:nth-child(odd){margin-inline:0}.ab-domains{grid-template-columns:1fr}.ab-domain:nth-child(2n){margin-top:0}}@media (max-width:760px){.wk-row{width:90%;grid-template-columns:1fr;gap:.875rem}.wk-info{gap:.75rem;padding-block:.625rem .875rem}.wk-sum{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.wk-info .hm-actions{flex-wrap:nowrap;gap:.5rem;margin-top:.25rem}.wk-info .hm-btn{flex:1 1;justify-content:center;padding-inline:.75rem;font-size:.875rem;white-space:nowrap}.wk-slider-dots button{width:1.125rem}.wk-slider-dots button.is-on{width:2.25rem}.wk-filter{flex-wrap:nowrap;margin-inline:calc(var(--space) * -1);padding:.125rem var(--space);overflow-x:auto;scrollbar-width:none}.wk-filter::-webkit-scrollbar{display:none}.wk-filter>*{flex:none}.wk-filter-label{min-width:2.75rem}.wk-chip{padding:.5rem .875rem}}@media (max-width:900px){.hm-hero.is-left{min-height:max(35rem,calc(100svh - var(--header-h) - var(--sub-cut)));padding-top:9.375rem;padding-bottom:6.875rem;place-items:center start}.ab-s1{width:5.5rem;right:3%;top:2%}.ab-s2,.ab-s4,.ab-s5,.ab-s6,.wk-s2,.wk-s5,.wk-s6{display:none}.ab-s3{width:9.375rem;right:3%;bottom:3%;top:auto}.wk-s1{width:5.5rem;right:3%;top:2%}.wk-s3{width:9.375rem;right:3%;bottom:3%;top:auto}.wk-s4{width:6.875rem;left:3%;bottom:2%;right:auto}.ab-toolkit>div{grid-template-columns:1fr;gap:.75rem}.ab-growth li{grid-template-columns:1fr;gap:.375rem}.ab-growth li:hover{padding-left:0}.hm-stickers[data-zone=aboutNext]{display:none}}@media (max-width:640px){.ab-ba p,.ab-notes div{grid-template-columns:1fr;gap:.25rem}}@media (prefers-reduced-motion:reduce){.wk-slider-dots button i{animation:none}.ab-growth li,.ab-prop,.ab-toolkit li,.wk-chip,.wk-info>*,.wk-media .mockup,.wk-reset,.wk-row,.wk-slider-btns button,.wk-slider-dots button{transition:none}}.hm-hero.is-detail{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(1.75rem,4vw,4.5rem);min-height:calc(100dvh - var(--header-h) - var(--sub-cut));padding:clamp(7.5rem,12vw,10.5rem) clamp(1.5rem,8vw,8.75rem) clamp(5.5rem,9vw,8rem)}.hm-hero.is-detail .hm-hero-copy{max-width:none;text-align:left}.hm-hero.is-detail .hm-hero-lead{margin-inline:0}.hm-hero.is-detail .hm-actions{justify-content:flex-start}.wd-title{margin-top:1.25rem;font:700 clamp(1.75rem,3.6vw,3.25rem) /1.2 var(--font-display);letter-spacing:-.03em}.wd-shot{position:relative;z-index:2;margin:0}.wd-shot .mockup{aspect-ratio:16/10;height:auto;border-radius:1.125rem;background:var(--color-card);box-shadow:0 3.125rem 5rem -2.125rem rgba(30,16,90,.6);rotate:-1.4deg;transition:rotate .4s cubic-bezier(.34,1.56,.64,1)}.wd-shot:hover .mockup{rotate:0deg}.wd-empty{display:grid;aspect-ratio:16/10;place-items:center;border:.125rem dashed color-mix(in srgb,var(--color-accent) 45%,var(--color-line));border-radius:1.125rem;background:rgba(255,255,255,.55);color:var(--color-accent);font:700 clamp(1.25rem,2.4vw,2rem) /1 var(--font-display);rotate:-1.4deg}.wd-s1{--r:8deg;width:clamp(8.125rem,14vw,13.125rem);right:6%;top:12%}.wd-s2{--r:-9deg;width:clamp(5.5rem,9vw,8.125rem);right:3%;bottom:10%}.wd-s3{--r:12deg;width:clamp(3.375rem,6vw,5.25rem);left:47%;bottom:8%}.wd-s4{--r:-12deg;width:clamp(1.625rem,2.8vw,2.5rem);left:46%;top:14%}.wd-s3.wd-app{--r:-8deg;width:clamp(3.75rem,6.4vw,5.75rem);bottom:7%}.wd-s4.wd-app{--r:10deg;width:clamp(3rem,5vw,4.5rem);left:44.5%;top:9%}.wd-overview .hm-spec{margin-top:0}.wd-overview .wk-chips{margin-top:.125rem}.wd-overview .hm-spec dd .hm-mark{font-weight:700}.wd-body{max-width:47.5rem;font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.9;word-break:keep-all}.wd-body>:first-child{margin-top:0}.wd-body :is(h1,h2,h3,h4){margin:2.2em 0 .6em;font-family:var(--font-display);letter-spacing:-.02em;line-height:1.3}.wd-body h2{font-size:clamp(1.375rem,2.4vw,1.875rem)}.wd-body h3{font-size:clamp(1.125rem,1.9vw,1.5rem)}.wd-body p{margin:0 0 1.2em}.wd-body :is(ul,ol){margin:0 0 1.2em;padding-left:1.4em;list-style:revert}.wd-body li{margin-bottom:.4em}.wd-body a{color:var(--color-accent);text-decoration:underline;text-underline-offset:.1875rem}.wd-body blockquote{margin:1.6em 0;padding:.25rem 0 .25rem 1.125rem;border-left:.1875rem solid var(--color-accent);color:var(--color-muted)}.wd-body img{max-width:100%;height:auto;border-radius:1rem}.wd-body .wd-result-title{display:flex;align-items:center;gap:.75rem;margin-top:2.6em;padding-bottom:.75rem;border-bottom:.125rem solid var(--color-accent);font-size:clamp(1.5rem,2.8vw,2.125rem)}.wd-result-icon{display:grid;place-items:center;flex:none;width:2.75rem;height:2.75rem;border-radius:.875rem;background:var(--color-accent);color:var(--color-on-accent)}.wd-result-icon .ui-icon{width:1.5rem;height:1.5rem}.wd-media{margin:0 0 1.6em;padding:0;border:0;border-radius:1rem;background:none;cursor:zoom-in;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s}.wd-media,.wd-media img{display:block;width:100%}.wd-media:hover{transform:translateY(-.1875rem);box-shadow:0 1rem 2.5rem -1.25rem rgb(14 15 19/.45)}.wd-media:focus-visible{outline:.1875rem solid var(--color-accent);outline-offset:.1875rem}.wd-lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:rgb(14 15 19/.94);color:#F4F4F6;overscroll-behavior:contain}.wd-lightbox::-webkit-backdrop{background:rgb(14 15 19/.6)}.wd-lightbox::backdrop{background:rgb(14 15 19/.6)}.wd-lightbox[open]{animation:wd-lightbox-in .25s ease-out}@keyframes wd-lightbox-in{0%{opacity:0}}.wd-lightbox-inner{display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-gap:.75rem;gap:.75rem;height:100%;padding:1rem clamp(.75rem,3vw,2.5rem) clamp(1rem,3vh,2rem)}.wd-lightbox-bar{display:flex;align-items:center;justify-content:space-between}.wd-lightbox-count{margin:0;font-family:var(--font-geist-mono),monospace;font-size:.875rem;color:#A3A6B3}.wd-lightbox-stage{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:clamp(.5rem,2vw,1.5rem);gap:clamp(.5rem,2vw,1.5rem);min-height:0}.wd-lightbox-stage img{grid-column:2;justify-self:center;max-width:100%;max-height:100%;min-height:0;object-fit:contain;border-radius:.75rem}.wd-lightbox-btn{display:grid;place-items:center;flex:none;width:2.75rem;height:2.75rem;padding:0;border:1px solid rgb(255 255 255/.18);border-radius:50%;background:rgb(255 255 255/.08);color:inherit;cursor:pointer;transition:background .2s,border-color .2s}.wd-lightbox-btn:hover{background:rgb(255 255 255/.18);border-color:rgb(255 255 255/.4)}.wd-lightbox-btn:focus-visible{outline:.125rem solid #A5A8FF;outline-offset:.125rem}.wd-lightbox-btn svg{width:1.375rem;height:1.375rem}.wd-lightbox-btn.is-prev{grid-column:1}.wd-lightbox-btn.is-next{grid-column:3}.wd-lightbox-caption{box-sizing:border-box;width:100%;max-width:52rem;height:8.5rem;margin-inline:auto;overflow-y:auto;overscroll-behavior:contain;text-align:center;word-break:keep-all}.wd-lightbox-caption strong{display:block;margin-bottom:.25rem;font-family:var(--font-display);font-size:clamp(1rem,1.6vw,1.25rem)}.wd-lightbox-caption p{margin:0;font-size:clamp(.875rem,1.2vw,1rem);line-height:1.7;color:#C9CBD6}@media (max-width:640px){.wd-lightbox-stage{grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr) auto}.wd-lightbox-stage img{grid-column:1/-1;grid-row:1}.wd-lightbox-btn.is-prev{grid-column:1;grid-row:2;justify-self:end}.wd-lightbox-btn.is-next{grid-column:2;grid-row:2;justify-self:start}.wd-lightbox-caption{height:9.75rem}}@media (prefers-reduced-motion:reduce){.wd-media{transition:none}.wd-media:hover{transform:none}.wd-lightbox[open]{animation:none}}.wd-body pre{margin:1.4em 0;padding:1.125rem;overflow-x:auto;border-radius:.875rem;background:#0E0F13;color:#E6E8F2;font-size:.8125rem;line-height:1.7}.wd-body :not(pre)>code{padding:.125rem .4375rem;border-radius:.375rem;background:var(--color-accent-soft);color:var(--color-accent);font-size:.9em}.wd-points{display:grid;grid-gap:clamp(1.75rem,4vw,3rem);gap:clamp(1.75rem,4vw,3rem)}.wd-point{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);grid-gap:1.25rem clamp(1.5rem,4vw,3.5rem);gap:1.25rem clamp(1.5rem,4vw,3.5rem);padding:clamp(1.5rem,3vw,2.5rem);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-card)}.wd-point:nth-child(odd){margin-right:clamp(0px,5vw,5rem)}.wd-point:nth-child(2n){margin-left:clamp(0px,5vw,5rem)}.wd-point-num{display:block;color:transparent;font:700 clamp(2.75rem,5vw,4.5rem) /.9 var(--font-display);letter-spacing:-.04em;-webkit-text-stroke:1.5px color-mix(in srgb,var(--color-accent) 50%,var(--color-line))}.wd-point h3{margin-top:.75rem;font-size:clamp(1.1875rem,2vw,1.5rem);letter-spacing:-.02em;line-height:1.35}.wd-rows{grid-gap:1rem;align-content:start}.wd-rows,.wd-rows p{display:grid;gap:1rem}.wd-rows p{grid-template-columns:5.25rem minmax(0,1fr);grid-gap:1rem;white-space:pre-line}.wd-rows .lbl{color:var(--color-accent);font:700 .75rem/1.9 var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase}.wd-codes{grid-column:1/-1;display:grid;grid-gap:.875rem;gap:.875rem;min-width:0}.wd-codes .code-block{margin:0}.wd-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:clamp(1.25rem,3vw,2.5rem);gap:clamp(1.25rem,3vw,2.5rem);align-items:start}.wd-neighbor{display:grid;grid-gap:.875rem;gap:.875rem;padding:1rem 1rem 1.5rem;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-card);color:inherit;text-decoration:none;transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .3s}.wd-neighbor:hover{transform:translateY(-.375rem);border-color:color-mix(in srgb,var(--color-accent) 45%,var(--color-line));box-shadow:0 1.375rem 2.75rem -1.75rem color-mix(in srgb,var(--color-accent) 55%,transparent)}.wd-neighbor .hm-work-media{border-radius:.875rem}.wd-neighbor:hover .hm-work-media .mockup{transform:scale(1.05)}.wd-neighbor-label{padding-inline:.5rem;color:var(--color-accent);font:700 .8125rem/1 var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.04em}.wd-neighbor strong{padding-inline:.5rem;font-size:clamp(1.0625rem,1.8vw,1.3125rem);line-height:1.4;letter-spacing:-.02em}.wd-neighbor-meta{padding-inline:.5rem;color:var(--color-muted);font-size:.875rem}.wd-nav>:nth-child(2){margin-top:clamp(1.5rem,4vw,3.5rem)}.wd-nav>:nth-child(2) .wd-neighbor-label{text-align:right}.wd-back{display:flex;justify-content:center;margin-top:clamp(2.5rem,5vw,4rem)}.wd-back .hm-link{margin-top:0}@media (max-width:1023px){.hm-hero.is-detail{grid-template-columns:1fr}.wd-s3,.wd-s4{display:none}.wd-s3.wd-app{display:block;width:3.5rem;left:4%;bottom:2%}.wd-point{grid-template-columns:1fr}.wd-point:nth-child(2n),.wd-point:nth-child(odd){margin-inline:0}}@media (max-width:640px){.hm-hero.is-detail{padding-top:6.875rem;padding-bottom:6rem}.wd-s1{width:7.5rem;right:3%;top:2%}.wd-s2{width:5.25rem;right:3%;bottom:2%}.wd-rows p{gap:.125rem}.wd-nav,.wd-rows p{grid-template-columns:1fr}.wd-nav>:nth-child(2){margin-top:0}}.hm-hero:is(.is-about,.is-works,.is-detail):before{background:none}.hm-hero:is(.is-about,.is-works):after{z-index:-1;background:none}.hm-hero.is-about:after{background-image:linear-gradient(rgba(91,61,216,.09) 1px,transparent 0),linear-gradient(90deg,rgba(91,61,216,.09) 1px,transparent 0);background-size:2.75rem 2.75rem;-webkit-mask-image:radial-gradient(ellipse 70% 80% at 30% 50%,#000 20%,transparent 78%);mask-image:radial-gradient(ellipse 70% 80% at 30% 50%,#000 20%,transparent 78%)}.hm-hero.is-works:after{background-image:linear-gradient(90deg,rgba(91,61,216,.11) 1px,transparent 0);background-size:calc(100% / 12) 100%;-webkit-mask-image:linear-gradient(180deg,transparent,#000 18%,#000 55%,transparent 92%);mask-image:linear-gradient(180deg,transparent,#000 18%,#000 55%,transparent 92%)}.hm-hero.is-about{background:radial-gradient(ellipse 46% 58% at 14% 24%,rgba(167,139,250,.22),transparent 72%),radial-gradient(ellipse 34% 44% at 52% 96%,rgba(196,181,253,.2),transparent 72%)}.hm-hero.is-works{background:radial-gradient(ellipse 44% 50% at 50% 30%,rgba(167,139,250,.24),transparent 72%),radial-gradient(ellipse 30% 40% at 6% 78%,rgba(196,181,253,.18),transparent 72%),radial-gradient(ellipse 30% 40% at 95% 70%,rgba(196,181,253,.18),transparent 72%)}.hm-hero.is-about:before{inset:auto;right:clamp(1.5rem,8vw,8.5rem);top:50%;width:min(34vw,30rem);aspect-ratio:1/1.06;translate:0 -50%;rotate:-3deg;border:.625rem solid #2a1f80;border-radius:1.875rem;background:linear-gradient(rgba(255,255,255,.2) 1px,transparent 0) 0 0 /7.5rem 7.5rem,linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 0) 0 0 /7.5rem 7.5rem,linear-gradient(rgba(255,255,255,.07) 1px,transparent 0) 0 0 /1.5rem 1.5rem,linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 0) 0 0 /1.5rem 1.5rem,linear-gradient(160deg,#4336B8,#2A1F80);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.28),0 2.75rem 4.375rem -2.375rem rgba(40,20,120,.65)}.hm-hero.is-works{grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto;min-height:calc(100dvh - var(--header-h) - var(--sub-cut));padding:clamp(3rem,7vw,6rem) 0 0}.hm-hero.is-works:before{content:none}.hm-hero.is-works .hm-hero-copy{padding-inline:var(--space)}.is-works .wk-s1{--r:9deg;width:clamp(4.75rem,7.6vw,6.75rem);right:7%;top:8%}.is-works .wk-s4{--r:-10deg;width:clamp(6rem,9.4vw,8.5rem);left:6%;top:12%;right:auto;bottom:auto}.is-works .wk-s3{--r:6deg;width:clamp(7rem,11vw,10rem);left:4%;top:43%;right:auto}.is-works .wk-s6{--r:-12deg;width:clamp(2.75rem,4.8vw,4.25rem);right:8%;top:40%}.is-works .wk-s5{--r:14deg;width:clamp(1.625rem,2.8vw,2.5rem);right:19%;top:30%;bottom:auto}.is-works .wk-s2{display:none}.wk-strip{position:relative;z-index:1;width:100%;min-width:0;overflow:clip;padding:clamp(2.25rem,5vw,4.5rem) 0 clamp(1.75rem,4vw,3rem)}.wk-strip-track{display:flex;width:max-content;will-change:transform}.wk-strip-track ul{display:flex;flex:none;align-items:center}.wk-strip-track li{flex:none;width:clamp(11rem,18vw,16.25rem);aspect-ratio:16/10;margin-right:clamp(.875rem,1.6vw,1.5rem);overflow:hidden;border:1px solid var(--color-line);border-radius:.875rem;background:var(--color-surface);box-shadow:0 1.125rem 2rem -1.375rem rgba(30,16,90,.5)}.wk-strip-track li:nth-child(odd){rotate:-1.6deg;translate:0 .5rem}.wk-strip-track li:nth-child(2n){rotate:1.4deg;translate:0 -.375rem}.wk-strip .mockup{border:0}.hm-hero.is-detail{--sub-gap:clamp(0.75rem,1.6vw,1.5rem);--sub-w:calc(100vw - var(--sbw, 0px));width:calc(var(--sub-w) - var(--sub-gap) * 2);margin:.5rem 0 0 calc(50% - var(--sub-w) / 2 + var(--sub-gap));border-radius:clamp(1.75rem,3vw,2.75rem);background:repeating-linear-gradient(135deg,rgba(91,61,216,.055) 0 1px,transparent 1px 1rem),#F2EFFF}.hm-hero.is-detail:after,.hm-hero.is-detail:before{content:none}@media (max-width:900px){.hm-hero.is-about:before{right:-6vw;top:.5rem;width:38vw;translate:none;rotate:5deg;border-width:.4375rem;border-radius:1.375rem}.hm-hero.is-works{padding-top:6rem}.is-works .wk-s1{width:4.5rem;right:3%;top:.625rem}.is-works .wk-s4{width:6.5rem;left:-2%;top:.875rem}.is-works .wk-s3{display:none}}@media (min-width:901px){.is-about .ab-s1{width:clamp(6rem,10vw,9rem);right:10%;top:17%}.is-about .ab-s6{width:clamp(3rem,4.8vw,4.25rem);right:23%;top:14%}.is-about .ab-s2{width:clamp(5.5rem,9vw,8rem);right:27%;top:33%}.is-about .ab-s3{width:clamp(8rem,14vw,12.5rem);right:9%;top:53%}.is-about .ab-s4{width:clamp(3.25rem,5.6vw,5rem);right:29%;bottom:17%}.is-about .ab-s5{right:6%;top:41%}}