.dot-field-container{position:relative;width:100%;height:100%}:root{--paper: #eee;--ink: #111;--muted: #6b6b6b;--control-active: #111;--accent: #cc0026;--gap: 24px;--weight-hover: 700;--weight-motion: .22s ease;--font-sans: Roboto, Arial, sans-serif;--font-jp: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;--font-body: var(--font-sans), var(--font-jp), sans-serif;--rail-width: 184px;--content-gutter: 96px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--paper);font-family:var(--font-body);line-height:1.6;letter-spacing:.02em;font-size:14px}p{text-align:justify}a{color:inherit;text-decoration:none;overflow-wrap:anywhere;word-break:break-word}.page{width:100%;min-width:0;margin:0 auto}.hero,.works,.strength,.workflow,.contact,footer{padding:120px var(--content-gutter) 120px calc(var(--content-gutter) + var(--rail-width))}.about{padding:80px var(--content-gutter) 120px calc(var(--content-gutter) + var(--rail-width))}.site-header{position:fixed;inset:0 auto 0 0;z-index:50;display:flex;flex-direction:column;width:var(--rail-width);height:100vh;margin:0;padding:24px 26px;background:var(--paper);font-family:var(--font-sans);justify-content:space-between;border-right:2px solid var(--muted);color:var(--ink)}.logo{position:fixed;top:24px;left:26px;z-index:60;display:block;width:42px;height:42px;line-height:0;pointer-events:auto;mix-blend-mode:difference}.logo-mark{display:block;width:100%;height:100%}.logo-mark__base{fill:var(--paper)}.logo-mark__accent{fill:#7b7b7b}.site-header:before{display:block;width:42px;height:42px;content:""}.site-header:after{display:block;width:20px;height:20px;content:""}.nav{display:flex;flex-direction:column;gap:32px;font-weight:500}.nav a{position:relative;display:block;width:fit-content;margin:-8px -12px;padding:8px 12px;transition:font-weight var(--weight-motion)}.nav a:after{position:absolute;right:12px;bottom:4px;left:12px;height:1px;background:currentColor;content:"";transform:scaleX(0);transform-origin:left center;transition:transform .22s ease}.nav a:hover:after{transform:scaleX(1)}.nav a:hover{font-weight:700}.nav a:focus,.nav a:focus-visible{outline:none}.menu-toggle{position:fixed;bottom:24px;left:26px;z-index:60;display:block;width:20px;height:20px;padding:0;border:0;background:transparent;color:var(--paper);opacity:0;pointer-events:none;cursor:pointer;mix-blend-mode:normal;transition:left .12s ease,bottom .12s ease,opacity .12s ease}@media(min-width:1121px){.site-header{background:var(--ink);color:var(--paper);transition:border-color .24s ease}}main{position:relative;overflow:hidden}.hero,.about{position:relative}.about{z-index:3}.about .section-body{max-width:none}.about:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-mask-image:linear-gradient(to bottom,transparent 0,rgb(0 0 0 / .4) 3rem,black 17rem);mask-image:linear-gradient(to bottom,transparent 0,rgb(0 0 0 / .4) 3rem,black 17rem);content:"";pointer-events:none}.hero{z-index:3;min-height:574px;align-content:start;border-top:0;padding-top:168px;pointer-events:none;border-top:none!important}.hero>*{pointer-events:auto}.hero h2{grid-column:1 / 13;margin:0;font-family:var(--font-sans);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.8);font-size:clamp(64px,8vw,96px);font-weight:700;letter-spacing:0}.hero h1{grid-column:1 / 13;margin:-.8em 0 1em;font-size:28px;font-weight:700;letter-spacing:.02em}.hero h1 span{letter-spacing:.08em}.hero-copy{grid-column:1 / 13;margin:0;font-size:14px}.tag-list{grid-column:1 / 5;display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0;padding:0;list-style:none}.tag-list li{min-height:26px;padding:5px 13px 4px;border:1px solid var(--paper);border-radius:12px;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:12px;font-weight:500}.section-title{grid-column:1 / 4}.section-title h2{margin:.5em 0 1em;font-family:var(--font-sans);font-size:clamp(64px,7.35vw,128px);font-weight:700;color:transparent;-webkit-text-stroke:.5px var(--paper)}.section-body{max-width:640px}.section-body p{margin:0;font-size:14px}.section-body .lead{margin-bottom:.5em;font-size:24px;font-weight:700}.works{z-index:3;position:relative}.works .section-title{grid-column:1 / 13;margin-bottom:48px}.work-modal figcaption{display:none}.work-grid{grid-column:4 / 13;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--gap);row-gap:16px}.work-card{display:block;width:100%;min-height:368px;padding:0;border:2px solid var(--muted);background:var(--paper);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .16s ease}.work-card:hover,.work-card:focus-visible{border-color:var(--ink);outline:none}.work-card--short{min-height:234px}.work-thumb{display:flex;align-items:center;justify-content:center;height:282px;background:var(--paper);color:#9a9a9a;overflow:hidden;font-family:var(--font-sans);font-weight:500;contain:paint}.work-thumb img{display:block;width:calc(100% + 2px);max-width:none;margin-left:-1px;height:100%;object-fit:cover;object-position:top center;filter:saturate(.92);transform:translateZ(0) scale(1.004);transform-origin:center top;backface-visibility:hidden;transition:transform .24s ease,filter .24s ease}.work-card:hover .work-thumb img,.work-card:focus-visible .work-thumb img{filter:saturate(1)}.work-card--short .work-thumb{height:234px}.work-card h4,.work-title{display:block;margin:0;padding:12px 8px 8px;font-weight:500;line-height:1.2;transition:font-weight var(--weight-motion)}.work-card:hover h4,.work-card:focus-visible h4,.work-card:hover .work-title,.work-card:focus-visible .work-title{font-weight:700}.work-card--short .work-title{display:none}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px}.info-card{border:2px solid var(--muted);background:#222;padding:0 24px 24px}.info-card span{display:block;font-family:var(--font-sans);font-size:clamp(32px,3.35vw,56px);font-weight:700;color:#ffffff1a}.strength .info-card:nth-child(3) span{color:var(--accent)}.info-card h3{margin:-.2em 0 .7em;font-size:20px;font-weight:700}.info-card p{margin:0;font-size:14px}.text-link{display:inline-block;margin-top:16px;border-bottom:1px solid currentColor;font-family:var(--font-sans);font-weight:700}.workflow{padding-bottom:160px}.contact{position:relative;overflow:hidden;padding-top:240px;padding-bottom:240px}.contact-dot-field{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;opacity:1;pointer-events:none;mix-blend-mode:normal}.contact-dot-field .dot-field-container{position:absolute;top:0;right:0;bottom:0;left:0}.contact .section-title,.contact-copy,.contact-actions{position:relative;z-index:1}.contact .section-title{grid-column:1 / 4}.contact-copy{grid-column:4 / 13}.contact-actions{grid-column:4 / 10;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px;margin-top:5em}.contact-email,.contact-tel{margin:0;font-family:var(--font-sans);font-size:20px;font-weight:700}.contact .contact-email{font-size:clamp(20px,2.5vw,32px)}.contact-tel{position:relative;display:inline-flex;align-items:center;gap:48px;isolation:isolate;overflow:hidden;width:fit-content;padding:.1em .8em;border-radius:8px;background:var(--accent);transition:color .22s ease;font-size:clamp(20px,2.5vw,32px)}.contact-tel:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--paper);content:"";transform:scaleX(0);transform-origin:left center;transition:transform .26s ease}.contact-tel.is-link:after{flex:0 0 auto;display:block;width:16px;height:16px;border-top:2px solid currentColor;border-right:2px solid currentColor;content:"";transform:rotate(45deg);transition:transform .18s ease,border-color .18s ease}.contact-tel.is-link{cursor:pointer}.contact-tel.is-link:hover,.contact-tel.is-link:focus-visible{color:var(--ink);outline:none}.contact-tel.is-link:hover:before,.contact-tel.is-link:focus-visible:before{transform:scaleX(1)}.contact-tel.is-link:hover:after,.contact-tel.is-link:focus-visible:after{transform:translate(4px) rotate(45deg)}.site-footer{min-height:160px;align-items:start;padding-top:80px;padding-bottom:160px;color:var(--paper);font-family:var(--font-sans);transition:border-color .24s ease}.site-footer p{grid-column:1 / 5;margin:0;font-size:24px;font-weight:700}.site-footer nav{grid-column:7 / 13;display:flex;gap:22px;justify-content:flex-start;font-size:14px}.site-footer a{position:relative;width:fit-content;transition:font-weight var(--weight-motion)}.site-footer a:after{position:absolute;right:0;bottom:-4px;left:0;height:1px;background:currentColor;content:"";transform:scaleX(0);transform-origin:left center;transition:transform .22s ease}.site-footer a:hover:after,.site-footer a:focus-visible:after{transform:scaleX(1)}.site-footer a:hover,.site-footer a:focus-visible{font-weight:700}.site-footer small{grid-column:1 / 4;margin-top:16px;color:var(--muted);font-size:12px}.work-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:none;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.work-modal.is-open{display:grid;place-items:center}.work-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:block;width:100%;height:100%;padding:0;border:0;cursor:default}.work-modal__dialog{position:relative;z-index:1;display:grid;grid-template-columns:96px minmax(520px,1.12fr) minmax(360px,.88fr) 96px;grid-template-rows:96px minmax(0,1fr);grid-template-areas:"prev media content close" "prev media content next";gap:0;width:96vw;height:96dvh;padding:0;color:var(--paper);background:transparent;overflow:hidden;transform:translateZ(0)}.work-modal__close{grid-area:close;display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;border-radius:12px;background:transparent;color:var(--paper);cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}.work-modal__close:before,.work-modal__close:after{grid-area:1 / 1;display:block;width:48px;height:2px;background:var(--paper);content:"";transition:background .18s ease}.work-modal__close:hover:before,.work-modal__close:hover:after,.work-modal__close:focus-visible:before,.work-modal__close:focus-visible:after{background:var(--control-active)}.work-modal__close:before{transform:rotate(45deg)}.work-modal__close:after{transform:rotate(-45deg)}.work-modal__nav{display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;background:transparent;color:var(--paper);cursor:pointer;transition:opacity .16s ease,background .18s ease,color .18s ease,border-color .18s ease}.work-modal__nav:before,.work-modal__nav:after{grid-area:1 / 1;display:block;width:28px;height:2px;background:currentColor;content:"";transition:background .18s ease}.work-modal__nav--prev:before{transform:translateY(28px) rotate(-45deg);transform-origin:left center}.work-modal__nav--prev:after{transform:translateY(28px) rotate(45deg);transform-origin:left center}.work-modal__nav--next:before{transform:translateY(0) rotate(45deg);transform-origin:right center}.work-modal__nav--next:after{transform:translateY(0) rotate(-45deg);transform-origin:right center}.work-modal__close:hover,.work-modal__close:focus-visible,.work-modal__nav:hover,.work-modal__nav:focus-visible{background:#ffffffa6;color:var(--ink);border-color:var(--paper);opacity:1;outline:none}.work-modal__nav:active{opacity:.56}.work-modal__text-toggle{display:none}.work-modal__nav--prev{grid-area:prev}.work-modal__nav--next{grid-area:next}.work-modal__media{grid-area:media;display:grid;grid-template-columns:108px 1fr;gap:24px;min-width:0;margin:32px 32px 32px auto;max-width:760px}.work-modal.is-banner .work-modal__media{align-self:center;grid-template-columns:minmax(0,1fr)}.work-modal.is-banner .modal-shot--narrow{display:none}.work-modal.is-banner .modal-shot--scroll{justify-self:center;width:auto;height:min(640px,calc(100dvh - 64px));max-width:640px}.work-modal.is-banner .modal-scroll{height:100%;overflow:hidden}.work-modal.is-banner .modal-shot--scroll img{width:auto;height:100%;max-width:100%;object-fit:contain}.work-modal.is-square .work-modal__media{align-self:center;height:auto;margin-top:0}.work-modal.is-square .modal-shot--scroll,.work-modal.is-square .modal-scroll{height:auto}.modal-shot{position:relative;margin:0;min-width:0;overflow:hidden;max-width:640px}.modal-shot img{display:block;width:100%;height:auto}.modal-shot--narrow{height:100%;overflow:hidden}.modal-shot--narrow img{height:auto;cursor:pointer}.modal-shot--scroll{height:100%}.modal-scroll{height:100%;overflow-y:auto;scrollbar-width:none;scrollbar-gutter:stable;-ms-overflow-style:none}.modal-scroll::-webkit-scrollbar{display:none;width:12px}.modal-scroll.is-scrollable{scrollbar-color:rgba(17,17,17,.82) rgba(238,238,238,.72);scrollbar-width:thin;-ms-overflow-style:auto}.modal-scroll.is-scrollable::-webkit-scrollbar{display:block}.modal-scroll::-webkit-scrollbar-track{background:#eeeeeeb8}.modal-scroll::-webkit-scrollbar-thumb{min-height:48px;border:2px solid rgba(238,238,238,.72);border-radius:12px;background-color:#111111d1;box-shadow:inset 0 0 0 1px #eeeeee42}.modal-scroll::-webkit-scrollbar-thumb:hover{background-color:#111111f5}.modal-scroll--preview{scrollbar-width:none;-ms-overflow-style:none}.modal-scroll--preview::-webkit-scrollbar{display:none}.modal-scroll--preview img{object-fit:cover;object-position:top center}.work-modal__content{grid-area:content;align-self:center;max-width:580px;padding:52px 40px}.work-modal__content .modal-count{margin:0 0 16px;color:#ffffffb3;font-family:var(--font-sans);font-weight:700}.modal-tags{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px;padding:0;list-style:none}.modal-tags li{min-height:26px;padding:4px 13px 3px;border-radius:16px;font-size:12px;font-weight:700}.work-modal__content h2{margin:0 0 28px;font-family:var(--font-sans);font-size:24px;font-weight:700}.work-modal__content p{margin:0 0 1em}.work-modal__content .modal-affiliation{margin-top:-8px;font-size:12px;color:#ffffffad}.wire-modal__dialog{grid-template-columns:minmax(560px,.95fr) minmax(420px,.8fr) 96px;grid-template-rows:90px minmax(0,1fr);grid-template-areas:"media content close" "media content ."}.wire-modal__media{grid-template-columns:minmax(0,1fr);height:calc(100vh - 68px);margin:34px 32px;max-width:none}.wire-modal__shot{grid-column:1 / -1;justify-self:center;width:min(520px,100%);height:100%;max-width:none}.wire-modal__shot img{width:100%;max-width:none}.modal-url{font-family:var(--font-sans);font-size:14px;font-weight:700;text-align:left}.modal-url a{border-bottom:1px solid currentColor;font-weight:500;transition:font-weight var(--weight-motion)}.modal-url a:hover,.modal-url a:focus-visible{font-weight:700}.site-footer>p{margin-bottom:1em}.site-footer>nav{margin-bottom:4em}@media(max-width:1743px){.contact-actions{grid-column:4 / 13}}@media(max-width:1679px){.work-modal__media{margin:32px auto 32px 32px}}@media(max-width:1320px){:root{--content-gutter: 48px}}@media(max-width:1120px){.modal-tags{margin:0 0 12px}.about{padding-top:120px}.work-modal__dialog:not(.wire-modal__dialog){display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:minmax(0,1fr) 72px;grid-template-areas:none;gap:0;height:98dvh;padding:0;overflow:hidden}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__media{grid-column:1 / 7;grid-row:1 / 3}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__content{grid-column:7 / 11;grid-row:1}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav--prev{grid-column:7 / 9;grid-row:2;width:100%}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav--next{grid-column:9 / 11;grid-row:2;width:100%}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close{position:fixed;top:16px;right:16px;z-index:110;grid-area:auto;grid-column:auto;grid-row:auto;width:44px;height:44px;border:0;background:transparent;color:var(--paper)}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:before,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:after{width:56px;height:3px}.work-modal__dialog{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(260px,.86fr);grid-template-rows:minmax(0,1fr) 72px;grid-template-areas:"media media content" "prev close next";gap:0;height:100dvh;padding:0;overflow:hidden}.work-modal__media{grid-template-columns:84px 1fr;height:auto;min-height:0;margin:24px;align-self:stretch}.work-modal.is-banner .work-modal__media{grid-template-columns:minmax(0,1fr)}.work-modal.is-banner .modal-shot--scroll{grid-column:1 / -1;justify-self:center;width:auto;height:min(640px,calc(100dvh - 120px));max-width:100%}.work-modal__content{max-width:none;align-self:center;overflow-y:auto;padding:48px 24px 48px 20px}.work-modal__content h2{font-size:28px;line-height:1.3}.work-modal__close{border-top:2px solid var(--muted);border-bottom:0;border-left:0}.work-modal__close:before,.work-modal__close:after{width:40px}.work-modal__nav{border-top:2px solid var(--muted)}.work-modal__nav:before,.work-modal__nav:after{width:20px}.work-modal__nav--prev{border-right:2px solid var(--muted)}.work-modal__nav--next{border-left:none}.work-modal__nav--prev:after{transform:translateY(0) rotate(45deg)}.work-modal__nav--prev:before{transform:translateY(0) rotate(-45deg)}.wire-modal__dialog{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:minmax(0,1fr);grid-template-areas:none;gap:0;height:100dvh;padding:0;overflow:hidden}.wire-modal__media{grid-column:1 / 7;grid-row:1;grid-template-columns:minmax(0,1fr);height:auto;min-height:0;margin:24px;max-width:none}.wire-modal__shot{width:min(460px,100%)}.wire-modal__dialog .work-modal__content{grid-column:7 / 11;grid-row:1}.wire-modal__dialog .work-modal__close{position:fixed;top:16px;right:16px;z-index:110;grid-area:auto;grid-column:auto;grid-row:auto;width:44px;height:44px;border:0;background:transparent;color:var(--paper)}.wire-modal__dialog .work-modal__close:before,.wire-modal__dialog .work-modal__close:after{width:56px;height:3px}}@media(max-width:1120px){:root{--rail-width: 62px;--content-gutter: 36px}.page{min-width:0}.page.is-menu-open{--rail-width: 128px}.section-grid,.site-footer{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:16px}.site-header{width:var(--rail-width);height:100vh;margin:0;padding:18px 12px;border-color:var(--muted);background:var(--ink);color:var(--paper);cursor:pointer;transition:width .12s ease,padding .12s ease,background .12s ease,color .12s ease,border-color .12s ease}.logo,.section-title,.works .section-title,.card-grid,.contact-copy,.contact-actions,.site-footer p,.site-footer nav,.site-footer small{grid-column:1 / -1}.logo{top:18px;left:12px;width:36px;height:36px}.site-header:before{width:36px;height:36px}.site-header:after{width:20px;height:20px}.nav{display:grid;place-items:center;margin:auto 0;writing-mode:vertical-rl;transform:rotate(180deg);transition:margin .12s ease}.nav:before{content:"Menu"}.nav a{display:none}.work-card{grid-column:auto;min-height:0}.work-thumb,.work-card--short .work-thumb{height:auto;aspect-ratio:auto}.work-thumb img{width:100%;margin-left:0;height:auto;object-fit:contain;transform:none}.contact-copy,.contact-actions{grid-column:1 / 4}.menu-toggle{opacity:1;bottom:24px;left:12px;width:20px;height:20px;pointer-events:auto}.menu-toggle span,.menu-toggle:before,.menu-toggle:after{position:absolute;left:0;display:block;width:36px;height:3px;background:var(--paper);content:"";transition:transform .18s ease,opacity .18s ease}.menu-toggle:before{top:3px}.menu-toggle span{top:9px}.menu-toggle:after{top:15px}.page.is-menu-open .site-header{border-color:var(--paper);background:var(--paper);color:var(--ink)}.page.is-menu-open .logo{width:42px;height:42px}.page.is-menu-open .site-header:before{width:42px;height:42px}.page.is-menu-open .site-header:after{width:20px;height:20px}.page.is-menu-open .nav{display:flex;place-items:stretch;align-items:flex-start;gap:20px;writing-mode:horizontal-tb;transform:none}.page.is-menu-open .nav:before{content:none}.page.is-menu-open .nav a{display:block}.page.is-menu-transitioning .nav a{pointer-events:none}.page.is-menu-open .menu-toggle{color:var(--paper)}.page.is-menu-open .menu-toggle:before{top:9px;transform:rotate(45deg)}.page.is-menu-open .menu-toggle span{opacity:0}.page.is-menu-open .menu-toggle:after{top:9px;transform:rotate(-45deg)}.hero h2{font-size:clamp(48px,8vw,72px);line-height:1.2;margin-bottom:.5em}.site-footer nav{flex-wrap:wrap}}@media(max-width:720px){.work-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{margin-top:-.4em}.work-modal__dialog:not(.wire-modal__dialog){grid-template-columns:minmax(0,1fr) minmax(0,1fr) 64px 64px;grid-template-rows:minmax(0,1fr) auto 64px}.wire-modal__dialog{grid-template-columns:minmax(0,1fr) 64px 64px;grid-template-rows:minmax(0,1fr) auto 64px}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__media{grid-column:1 / -1;grid-row:1;grid-template-columns:minmax(56px,.2fr) minmax(0,1fr);gap:12px;min-height:0;margin:16px 16px 12px}.wire-modal__media{grid-column:1 / -1;grid-row:1;grid-template-columns:minmax(0,1fr);min-height:0;margin:16px 16px 12px}.wire-modal__shot{width:100%}.work-modal.is-banner .work-modal__dialog:not(.wire-modal__dialog) .work-modal__media{grid-template-columns:minmax(0,1fr)}.work-modal.is-square .work-modal__dialog:not(.wire-modal__dialog) .work-modal__media{grid-template-columns:minmax(0,1fr)}.work-modal.is-banner .work-modal__dialog:not(.wire-modal__dialog) .modal-shot--scroll{grid-column:1 / -1;justify-self:center;width:auto;height:calc(100dvh - 108px);max-width:100%}.work-modal.is-banner:not(.is-text-open) .work-modal__dialog:not(.wire-modal__dialog) .work-modal__media{align-content:center;place-items:center}.work-modal.is-banner:not(.is-text-open) .work-modal__dialog:not(.wire-modal__dialog) .modal-shot--scroll{align-self:center}.work-modal.is-square:not(.is-text-open) .work-modal__dialog:not(.wire-modal__dialog) .work-modal__media{align-content:center;place-items:center}.work-modal.is-square:not(.is-text-open) .work-modal__dialog:not(.wire-modal__dialog) .modal-shot--scroll{align-self:center;justify-self:center;width:min(100%,calc(100dvh - 108px));height:auto;max-height:calc(100dvh - 108px)}.work-modal.is-square:not(.is-text-open) .work-modal__dialog:not(.wire-modal__dialog) .modal-shot--scroll img{width:100%;height:auto;object-fit:contain}.work-modal.is-banner.is-text-open .work-modal__dialog:not(.wire-modal__dialog) .work-modal__media{align-self:stretch;overflow:hidden}.work-modal.is-banner.is-text-open .work-modal__dialog:not(.wire-modal__dialog) .modal-shot--scroll{height:100%;max-height:100%}.work-modal.is-banner.is-text-open .work-modal__dialog:not(.wire-modal__dialog) .modal-scroll{overflow-y:auto}.work-modal.is-banner.is-text-open .work-modal__dialog:not(.wire-modal__dialog) .modal-shot--scroll img{width:100%;height:auto;object-fit:contain}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__content{display:none}.wire-modal__dialog .work-modal__content{display:none}.work-modal.is-text-open .work-modal__dialog:not(.wire-modal__dialog) .work-modal__content{display:block;grid-column:1 / -1;grid-row:2;align-self:end;overflow-y:auto;padding:16px}.wire-modal.is-text-open .wire-modal__dialog .work-modal__content{display:block;grid-column:1 / -1;grid-row:2;max-height:38dvh;align-self:end;overflow-y:auto;padding:16px}.work-modal.is-text-open .work-modal__content .modal-count{display:none}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close{position:static;display:grid;grid-row:3;width:100%;height:64px;border-top:2px solid var(--muted);border-right:0;border-bottom:0;border-left:2px solid var(--muted);background:transparent;color:var(--paper)}.wire-modal__dialog .work-modal__text-toggle,.wire-modal__dialog .work-modal__close{position:static;display:grid;grid-row:3;width:100%;height:64px;border-top:2px solid var(--muted);border-right:0;border-bottom:0;border-left:2px solid var(--muted);background:transparent;color:var(--paper)}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav--prev{grid-column:1;border-left:0}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav--next{grid-column:2}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav:hover,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav:focus-visible{background:var(--paper);color:var(--control-active);border-color:var(--paper);opacity:1}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle{grid-column:3;place-items:center;padding:0;cursor:pointer}.wire-modal__dialog .work-modal__text-toggle{grid-column:2;place-items:center;padding:0;cursor:pointer}.work-modal__text-toggle img{display:block;width:32px;height:32px;transform:translate(3px);object-fit:contain;transition:filter .18s ease}.work-modal.is-text-open .work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle:hover,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle:focus-visible{border-color:var(--paper);background:var(--paper);color:var(--control-active);outline:none}.wire-modal.is-text-open .wire-modal__dialog .work-modal__text-toggle,.wire-modal__dialog .work-modal__text-toggle:hover,.wire-modal__dialog .work-modal__text-toggle:focus-visible{border-color:var(--paper);background:var(--paper);color:var(--control-active);outline:none}.work-modal.is-text-open .work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle img,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle:hover img,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle:focus-visible img{filter:invert(1)}.wire-modal.is-text-open .wire-modal__dialog .work-modal__text-toggle img,.wire-modal__dialog .work-modal__text-toggle:hover img,.wire-modal__dialog .work-modal__text-toggle:focus-visible img{filter:invert(1)}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close{grid-column:4}.wire-modal__dialog .work-modal__close{grid-column:3}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:hover,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:focus-visible{background:var(--paper);color:var(--control-active);border-color:var(--paper)}.wire-modal__dialog .work-modal__close:hover,.wire-modal__dialog .work-modal__close:focus-visible{background:var(--paper);color:var(--control-active);border-color:var(--paper)}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:before,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:after{width:40px;height:2px}.wire-modal__dialog .work-modal__close:before,.wire-modal__dialog .work-modal__close:after{width:40px;height:2px}.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:hover:before,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:hover:after,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:focus-visible:before,.work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:focus-visible:after{background:var(--control-active)}.wire-modal__dialog .work-modal__close:hover:before,.wire-modal__dialog .work-modal__close:hover:after,.wire-modal__dialog .work-modal__close:focus-visible:before,.wire-modal__dialog .work-modal__close:focus-visible:after{background:var(--control-active)}}@media(max-width:499px){:root{--rail-width: 0px;--content-gutter: 16px}html,body,.page{overflow-x:hidden;overflow-x:clip}.page main,.page .site-footer{width:100%;transition:transform .12s ease}.page.is-menu-open main,.page.is-menu-open .site-footer{transform:translate(var(--rail-width))}.page:not(.is-menu-open) .site-header{width:0;padding:0;border:0;background:transparent;cursor:default;pointer-events:none}.page:not(.is-menu-open) .nav{display:none}.page:not(.is-menu-open) .logo{top:12px;left:12px;display:grid;place-items:center;width:44px;height:44px}.page:not(.is-menu-open) .menu-toggle{bottom:24px;left:12px;width:44px;height:44px;color:var(--paper);mix-blend-mode:difference}.page.is-menu-open .logo{top:12px;left:12px;width:44px;height:44px}.page.is-menu-open .menu-toggle{bottom:8px;left:8px;width:52px;height:52px}.page.is-menu-open .menu-toggle:before,.page.is-menu-open .menu-toggle:after{top:22px;left:4px;width:36px}.page:not(.is-menu-open) .menu-toggle span,.page:not(.is-menu-open) .menu-toggle:before,.page:not(.is-menu-open) .menu-toggle:after{width:100%}.page:not(.is-menu-open) .menu-toggle:before{top:13px}.page:not(.is-menu-open) .menu-toggle span{top:21px}.page:not(.is-menu-open) .menu-toggle:after{top:29px}}@media print{*,*:before,*:after{background:#fff!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}html,body,.page,main,section,article,.site-header,.site-footer{background:#fff!important;color:#000!important}a{color:#000!important;text-decoration:underline}img,svg{print-color-adjust:exact;-webkit-print-color-adjust:exact}}.gradual-blur{isolation:isolate;pointer-events:none}.gradual-blur-inner{position:relative;width:100%;height:100%;pointer-events:none}.gradual-blur-inner>div{-webkit-backdrop-filter:inherit;backdrop-filter:inherit}@supports not (backdrop-filter: blur(1px)){.gradual-blur-inner>div{background:#0000003d;opacity:.5}}.grid-motion{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.grid-motion__intro{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden}.grid-motion__intro:before,.grid-motion__intro:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";pointer-events:none}.grid-motion__intro:before{z-index:3}.grid-motion__intro:after{z-index:4;background:linear-gradient(rgb(255 255 255 / .025) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / .02) 1px,transparent 1px);background-size:96px 96px;-webkit-mask-image:linear-gradient(to bottom,transparent,black 18%,black 80%,transparent);mask-image:linear-gradient(to bottom,transparent,black 18%,black 80%,transparent);opacity:.72}.grid-motion__container{position:relative;z-index:2;display:grid;grid-template-rows:repeat(4,1fr);grid-template-columns:100%;gap:16px;flex:none;width:150vw;height:145vh;transform:rotate(-14deg) translate3d(2%,-2%,0);transform-origin:center center}.grid-motion.hero-grid-motion{overflow:visible;pointer-events:auto}.grid-motion.hero-grid-motion .grid-motion__intro{overflow:visible}.grid-motion.hero-grid-motion .grid-motion__container{height:170vh}.grid-motion__row{display:grid;grid-template-columns:repeat(7,1fr);gap:16px;min-width:0;will-change:transform}.grid-motion.is-motion-disabled{pointer-events:none}.grid-motion.is-motion-disabled .grid-motion__container{transform:none}.grid-motion.is-motion-disabled .grid-motion__row,.grid-motion.is-motion-disabled .grid-motion__tilt,.grid-motion.is-motion-disabled .grid-motion__tilt-surface{transform:none!important;will-change:auto}.grid-motion__item{position:relative;min-width:220px}.grid-motion__item--hidden{display:none}.grid-motion__item--interactive{pointer-events:auto}.grid-motion__item--hero-title-wide{grid-column:span 2}.grid-motion__item-inner{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;border:1px solid rgb(255 255 255 / .18);border-radius:12px;background:linear-gradient(135deg,#ffffff1f,#ffffff09),#111111d1;color:#ffffffc2;box-shadow:0 18px 52px #0000005c}button.grid-motion__item-inner{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;cursor:pointer}.grid-motion__tilt,.grid-motion__tilt-surface{width:100%;height:100%}.grid-motion__tilt-surface{display:block;overflow:hidden;border-radius:12px}.grid-motion__item-img{position:absolute;top:0;right:0;bottom:0;left:0;background-position:top center;background-size:cover}.grid-motion__item-content{position:relative;z-index:1;text-align:center;font-size:14px;font-weight:700}.grid-motion__item--hero-kicker .grid-motion__item-inner,.grid-motion__item--hero-title .grid-motion__item-inner,.grid-motion__item--hero-copy .grid-motion__item-inner,.grid-motion__item--hero-tags .grid-motion__item-inner{border-color:transparent;background:transparent;box-shadow:none}.grid-motion__item--hero-kicker .grid-motion__item-content,.grid-motion__item--hero-title .grid-motion__item-content,.grid-motion__item--hero-copy .grid-motion__item-content,.grid-motion__item--hero-tags .grid-motion__item-content{display:flex;width:100%;height:100%;align-items:center;padding:0 .5vw;color:var(--paper);text-align:left}.grid-motion__item--hero-kicker p,.grid-motion__item--hero-copy p,.grid-motion__item--hero-tags ul,.grid-motion__item--hero-title h1{margin:0}.grid-motion__item--hero-kicker p{width:100%;font-size:clamp(11px,1.05vw,15px);letter-spacing:.02em;line-height:1.1}.grid-motion__item--hero-title h1{width:100%;font-size:clamp(21px,2.9vw,44px);font-weight:700;letter-spacing:0;line-height:1.18}.grid-motion__item--hero-copy p{width:100%;color:var(--paper);font-weight:700;line-height:1.6}.grid-motion__item--hero-tags ul,.hero-copy-tags ul,.hero-title-stack ul{display:flex;flex-wrap:wrap;gap:10px;width:100%;margin:0;padding:0;list-style:none}.grid-motion__item--hero-tags li,.hero-copy-tags li{border:1px solid var(--glass-border);border-radius:2em;padding:5px 13px 4px;background:radial-gradient(circle at 20% 0%,rgb(255 255 255 / .1),transparent 56%),linear-gradient(145deg,#ffffff21,#fff0),#08080852;color:var(--paper);font-size:clamp(11px,.9vw,13px);font-weight:700;line-height:1.2;box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #ffffff14,0 14px 30px #00000038}.hero-copy-tags li:nth-child(2){background:var(--accent)}.hero-title-stack li{min-height:26px;border:1px solid var(--glass-border);border-radius:16px;padding:5px 13px 4px;background:radial-gradient(circle at 20% 0%,rgb(255 255 255 / .06),transparent 56%),linear-gradient(145deg,#ffffff21,#ffffff0b),#08080852;color:var(--paper);font-size:clamp(11px,.9vw,13px);font-weight:700;line-height:1.2;box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #ffffff14,0 14px 30px #00000038;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.grid-motion__item--hero-copy-tags .grid-motion__item-content{align-items:center}.hero-copy-tags{display:grid;gap:2em;width:100%}.grid-motion__item--hero-title-wide .grid-motion__item-content{justify-content:flex-start}.hero-title-stack p{margin:0 0 .2em;color:var(--paper);font-size:clamp(16px,1.55vw,24px);font-weight:400}.hero-title-stack h1{margin:0;font-size:clamp(28px,2.35vw,48px);font-weight:700;letter-spacing:0;line-height:1.4}@media(max-width:720px){.grid-motion__container{width:220vw;height:118vh;gap:12px;transform:rotate(-14deg) translate3d(15%,-7%,0)}.grid-motion__row{gap:12px}}.grid-motion.hero-grid-motion .grid-motion__row:nth-child(2){margin-left:160px}@media(max-width:640px){.grid-motion.hero-grid-motion .grid-motion__row:nth-child(2){margin-left:-100px}}@media(max-width:720px){.grid-motion.hero-grid-motion{min-height:760px}.grid-motion.hero-grid-motion .grid-motion__container{height:1220px}}@media(max-width:499px){.grid-motion.hero-grid-motion .grid-motion__container{height:1029px;transform:rotate(-14deg) translate3d(12%,-7%,0)}.grid-motion.hero-grid-motion .grid-motion__row:nth-child(2){margin-left:-200px}.grid-motion.hero-grid-motion .grid-motion__row:nth-child(3){margin-left:-64px}}@media(prefers-reduced-motion:reduce){.grid-motion__container{transform:rotate(-10deg) translate3d(0,-2%,0)}}.soft-aurora-container{width:100%;height:100%}.soft-aurora-container canvas{display:block;width:100%;height:100%}.tilted-card-figure{position:relative;display:flex;width:100%;height:100%;align-items:center;justify-content:center;margin:0;perspective:800px}.tilted-card-mobile-alert{position:absolute;top:1rem;display:none;text-align:center;font-size:.875rem}.tilted-card-inner{position:relative;overflow:hidden;border-radius:12px;border:0;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:inherit;cursor:pointer;text-align:inherit;transform-style:preserve-3d}.tilted-card-img{position:absolute;top:0;left:0;display:block;object-fit:cover;object-position:top center;border-radius:12px;will-change:transform;transform:translateZ(0)}.tilted-card-overlay{position:absolute;top:0;left:0;z-index:2;will-change:transform;transform:translateZ(30px)}.tilted-card-caption{position:absolute;top:0;left:0;z-index:3;border-radius:12px;padding:4px 10px;background-color:#fff;color:#2d2d2d;font-size:10px;opacity:0;pointer-events:none}@media(max-width:640px){.tilted-card-mobile-alert{display:block}.tilted-card-caption{display:none}}#root{min-height:100dvh}:root{--glass-bg: rgb(255 255 255 / 0);--glass-bg-strong: rgb(255 255 255 / .18);--glass-border: rgb(255 255 255 / .26);--glass-border-soft: rgb(255 255 255 / .13);--glass-shadow: 0 32px 80px rgb(0 0 0 / .42);--glass-blur: blur(16px) saturate(160%);--accent: #cc0026;--accent-soft: rgb(204 0 38 / .42)}body{background:#000}html{scrollbar-gutter:stable}body:before{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;background-size:72px 72px;-webkit-mask-image:linear-gradient(to bottom,rgb(0 0 0 / .8),transparent 78%);mask-image:linear-gradient(to bottom,rgb(0 0 0 / .8),transparent 78%);content:""}.glass-page{position:relative;overflow:clip;background:transparent}.aurora-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none}.glass-page main,.glass-page .site-footer{position:relative;z-index:1}.aurora-backdrop .soft-aurora-container{opacity:var(--aurora-opacity, .62);filter:blur(1px) saturate(130%);transition:opacity .9s ease}.aurora-backdrop:after{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 24% 14%,rgb(255 255 255 / .1),transparent 30%),linear-gradient(180deg,#07070757,#070707b3 64%,#070707e6);content:""}main{min-height:100dvh}.glass-surface,.glass-nav,.glass-info-card,.glass-work-card,.glass-contact-actions,.glass-footer,.glass-section-title{position:relative;isolation:isolate;border:1px solid var(--glass-border);background:linear-gradient(135deg,#fff0,#fff0),var(--glass-bg);box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #ffffff14,var(--glass-shadow);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.glass-surface:before,.glass-info-card:before,.glass-work-card:before,.glass-contact-actions:before,.glass-footer:before,.glass-section-title:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:12px;background:radial-gradient(circle at 16% 0%,rgb(255 255 255 / .16),transparent 30%),linear-gradient(90deg,rgb(255 255 255 / .1),transparent 42%,rgb(255 255 255 / .08));content:"";pointer-events:none}.glass-nav{--edge-proximity: 0;--cursor-angle: 45deg;--edge-sensitivity: 24;--color-sensitivity: 42;--cone-spread: 18;--fill-opacity: .12;--glow-padding: 28px;--gradient-two: radial-gradient(at 69% 34%, rgb(255 255 255) 0, transparent 50%);--gradient-three: radial-gradient(at 8% 6%, rgb(140 140 140) 0, transparent 50%);--gradient-five: radial-gradient(at 86% 85%, rgb(255 255 255) 0, transparent 50%);--gradient-six: radial-gradient(at 82% 18%, rgb(92 92 92) 0, transparent 50%);position:fixed;inset:0 auto 0 0;z-index:50;margin:24px 0 24px 24px;width:160px;height:calc(100dvh - 48px);border-radius:12px;color:var(--paper);isolation:auto;overflow:visible;transform:translateZ(.01px)}.nav-border-gradient,.nav-border-fill,.nav-edge-light,.nav-glass-layer{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;pointer-events:none;transition:opacity .25s ease-out}.nav-border-gradient,.nav-border-fill,.nav-edge-light{z-index:0}.glass-nav:not(:hover):not(:focus-within) .nav-border-gradient,.glass-nav:not(:hover):not(:focus-within) .nav-border-fill,.glass-nav:not(:hover):not(:focus-within) .nav-edge-light{opacity:0;transition:opacity .75s ease-in-out}.nav-border-gradient{border:1px solid transparent;background:linear-gradient(#080808b8 0,#080808b8) padding-box,linear-gradient(#fff0 0,#fff0) border-box,var(--gradient-one) border-box,var(--gradient-two) border-box,var(--gradient-three) border-box,var(--gradient-four) border-box,var(--gradient-five) border-box,var(--gradient-six) border-box,var(--gradient-seven) border-box,linear-gradient(#cc0026,#fff) border-box;opacity:calc((var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center,black calc(var(--cone-spread) * 1%),transparent calc((var(--cone-spread) + 15) * 1%),transparent calc((100 - var(--cone-spread) - 15) * 1%),black calc((100 - var(--cone-spread)) * 1%));mask-image:conic-gradient(from var(--cursor-angle) at center,black calc(var(--cone-spread) * 1%),transparent calc((var(--cone-spread) + 15) * 1%),transparent calc((100 - var(--cone-spread) - 15) * 1%),black calc((100 - var(--cone-spread)) * 1%))}.nav-border-fill{border:1px solid transparent;background:var(--gradient-one) padding-box,var(--gradient-two) padding-box,var(--gradient-three) padding-box,var(--gradient-four) padding-box,var(--gradient-five) padding-box,var(--gradient-six) padding-box,var(--gradient-seven) padding-box;-webkit-mask-image:linear-gradient(to bottom,#000,#000),radial-gradient(ellipse at 50% 50%,black 40%,transparent 65%),conic-gradient(from var(--cursor-angle) at center,transparent 5%,black 15%,black 85%,transparent 95%);mask-image:linear-gradient(to bottom,#000,#000),radial-gradient(ellipse at 50% 50%,black 40%,transparent 65%),conic-gradient(from var(--cursor-angle) at center,transparent 5%,black 15%,black 85%,transparent 95%);-webkit-mask-composite:source-out,source-over;mask-composite:subtract,add;opacity:calc(var(--fill-opacity) * (var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));mix-blend-mode:soft-light}.nav-edge-light{inset:calc(var(--glow-padding) * -1);z-index:2;opacity:calc((var(--edge-proximity) - var(--edge-sensitivity)) / (100 - var(--edge-sensitivity)));mix-blend-mode:plus-lighter;-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center,black 2.5%,transparent 10%,transparent 90%,black 97.5%);mask-image:conic-gradient(from var(--cursor-angle) at center,black 2.5%,transparent 10%,transparent 90%,black 97.5%)}.nav-edge-light:before{position:absolute;inset:var(--glow-padding);border-radius:12px;box-shadow:inset 0 0 0 1px #ffffffeb,inset 0 0 6px #cc00268f,inset 0 0 18px #cc002652,inset 0 0 36px 2px #ffffff24,0 0 3px #ffffff80,0 0 12px #cc00266b,0 0 28px 2px #cc00263d;content:""}.nav-glass-layer{z-index:3;border:1px solid rgb(255 255 255 / 0);background:radial-gradient(circle at 6% 0%,rgb(255 255 255 / .16),transparent 21%),linear-gradient(103deg,rgb(255 255 255 / 0),transparent 42%,rgb(255 255 255 / .08));box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #ffffff14}.nav-blend{position:fixed;top:50%;left:50px;z-index:70;width:108px;color:var(--paper);mix-blend-mode:difference;transform:translateY(-50%);transition:color .22s ease,text-shadow .22s ease}.nav-blend a{color:var(--paper);transition:color .22s ease,text-shadow .22s ease,font-weight var(--weight-motion)}.glass-nav:hover+.nav-blend,.nav-blend:hover{color:var(--paper);mix-blend-mode:normal}.glass-nav:hover+.nav-blend a,.nav-blend:hover a{color:var(--paper)}@media(min-width:1121px){.site-header.glass-nav:hover .nav-glass-layer,.site-header.glass-nav:focus-within .nav-glass-layer{border-color:inherit}}.logo{top:48px;left:48px}.nav{gap:24px}.nav a{border-radius:12px}.nav a:hover,.nav a:focus-visible{outline:none}.nav a:hover{background:transparent;font-weight:700}.glass-hero{position:relative;z-index:3;min-height:100dvh;margin-top:0;align-items:center;align-content:center;padding-top:128px;padding-bottom:96px;overflow:visible}.hero-glass-panel{position:relative;z-index:5;grid-column:2 / span 6;max-width:700px;padding:clamp(32px,5vw,56px);border-radius:12px;display:none}.hero-card-swap{position:relative;z-index:5;grid-column:8 / span 5;align-self:end;min-height:600px;pointer-events:auto}.hero-card-swap:before{position:absolute;right:16%;bottom:12%;width:min(34vw,420px);aspect-ratio:1;border-radius:12px;background:radial-gradient(circle,rgb(204 0 38 / .34),transparent 68%);filter:blur(32px);content:"";pointer-events:none}.card-swap-container{position:absolute;right:0;bottom:0;overflow:visible;perspective:900px;transform:translate(4%,12%);transform-origin:bottom right}.card-swap-card{position:absolute;top:50%;left:50%;overflow:hidden;border:1px solid rgb(255 255 255 / .3);border-radius:12px;background:linear-gradient(135deg,#ffffff2e,#ffffff0d),#070707b8;box-shadow:inset 0 1px #ffffff57,0 28px 72px #00000075;transform-style:preserve-3d;will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.hero-swap-card{display:flex;flex-direction:column;color:var(--paper)}.hero-swap-card__bar{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;min-height:48px;padding:0 16px;border-bottom:1px solid rgb(255 255 255 / .22);background:linear-gradient(180deg,#181818eb,#060606c7),#0a0a0acc;font-size:13px;font-weight:700}.hero-swap-card__bar span,.hero-swap-card__bar strong{display:block;line-height:1}.hero-swap-card__bar strong{color:#ffffff94;font-size:12px}.hero-swap-card__media{position:relative;flex:1 1 auto;min-height:0}.hero-swap-card__media img{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;object-fit:cover;object-position:top center}.glass-hero h1{margin:0;letter-spacing:0;text-wrap:balance}.hero-copy{max-width:46ch;margin:1.45em 0 0}.section-kicker{margin:.5em 0 0;font-size:18px;font-weight:700}.hero .tag-list{margin-top:1.75em}.tag-list li{border:1px solid rgb(255 255 255 / .18);background:radial-gradient(circle at 20% 0%,rgb(255 255 255 / .24),transparent 56%),linear-gradient(145deg,#ffffff21,#ffffff0b),#08080852;color:var(--paper);box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #ffffff14,0 14px 30px #00000038;backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%)}.glass-section{position:relative}.glass-section>.section-title,.glass-section>.section-body,.glass-section>.section-feature-layout,.glass-section>.contact-copy,.glass-section>.contact-actions{position:relative;z-index:1;margin-right:auto;margin-left:0}.glass-section>.section-title{margin-bottom:3em}.glass-section>.section-title h2{margin-bottom:0}.glass-section>.contact-actions{margin-top:4em}.glass-section>.contact-copy,.glass-section>.contact-actions{grid-column:auto}.section-title h2{line-height:.9}.section-title p{text-align:left}.section-note{max-width:30ch;margin:1.25em 0 0;color:#ffffffa8}.about.section-grid.glass-section>div{margin-right:0;margin-left:auto}.about.section-grid.glass-section>.section-title h2,.about.section-grid.glass-section>.section-title p,.about.section-grid.glass-section .section-body p{text-align:right}.glass-works{align-items:start}.glass-work-block{margin-bottom:72px}.work-block__head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:.75em;color:#ffffffb8}.work-block__head h3{margin:0;color:var(--paper);font-size:24px;line-height:1.4}.works-masonry-shell{grid-column:1 / -1}.works-category{margin-bottom:clamp(64px,8vw,120px)}.works-category:last-child{margin-bottom:0}.works-category .work-block__head{margin-bottom:24px}.reactbits-masonry{--work-columns: 5;--work-card-aspect: 1 / 1;display:grid;grid-template-columns:repeat(var(--work-columns),minmax(0,1fr));gap:16px;align-items:start}.works-category[data-work-category=lp] .reactbits-masonry,.works-category[data-work-category=site] .reactbits-masonry{--work-card-aspect: 1 / 2.6}.reactbits-masonry .glass-work-card{min-height:0;background:linear-gradient(135deg,#ffffff1f,#ffffff09),#ffffff0e}.reactbits-masonry .glass-work-card .work-thumb,.reactbits-masonry .glass-work-card.work-card--short .work-thumb{aspect-ratio:var(--work-card-aspect);height:auto;background:transparent}.reactbits-masonry .glass-work-card.work-card--short .work-thumb{height:auto;aspect-ratio:1 / 1}.reactbits-masonry .glass-work-card .work-thumb img{width:100%;height:100%;object-fit:cover;object-position:top center}.reactbits-masonry .glass-work-card .work-title{display:none}.work-card-tilt{--edge-proximity: 0;--cursor-angle: 45deg;--edge-sensitivity: 24;--color-sensitivity: 42;--cone-spread: 18;--fill-opacity: .12;--glow-padding: 18px;--gradient-one: radial-gradient(at 80% 55%, rgb(204 0 38) 0, transparent 50%);--gradient-two: radial-gradient(at 69% 34%, rgb(255 255 255) 0, transparent 50%);--gradient-three: radial-gradient(at 8% 6%, rgb(140 140 140) 0, transparent 50%);--gradient-four: radial-gradient(at 41% 38%, rgb(204 0 38) 0, transparent 50%);--gradient-five: radial-gradient(at 86% 85%, rgb(255 255 255) 0, transparent 50%);--gradient-six: radial-gradient(at 82% 18%, rgb(92 92 92) 0, transparent 50%);--gradient-seven: radial-gradient(at 51% 4%, rgb(204 0 38) 0, transparent 50%);display:inline-block;width:100%;margin:0;break-inside:avoid;perspective:1000px}.work-card-tilt .glass-work-card{margin:0}.work-card-tilt>button.glass-work-card{border:1px solid rgb(255 255 255 / .26);padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;font:inherit;text-align:inherit;cursor:pointer}.work-card-tilt .nav-border-gradient,.work-card-tilt .nav-border-fill,.work-card-tilt .nav-edge-light{border-radius:12px}.work-card-tilt:not(:hover):not(:focus-within) .nav-border-gradient,.work-card-tilt:not(:hover):not(:focus-within) .nav-border-fill,.work-card-tilt:not(:hover):not(:focus-within) .nav-edge-light{opacity:0;transition:opacity .75s ease-in-out}.glass-work-card{display:inline-block;width:100%;margin:0 0 24px;overflow:hidden;break-inside:avoid;border-radius:12px;transition:border-color .22s ease,box-shadow .22s ease}.glass-work-card:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;background:radial-gradient(260px circle at var(--spotlight-x, 50%) var(--spotlight-y, 50%),rgb(255 255 255 / .24),transparent 48%);content:"";opacity:0;pointer-events:none;transition:opacity .22s ease}.glass-work-card:hover,.glass-work-card:focus-visible{border-color:#ffffff7a;box-shadow:inset 0 1px #ffffff5c,0 30px 90px #0000008a,0 0 0 1px #cc002633}.glass-work-card:hover:after,.glass-work-card:focus-visible:after{opacity:1}.glass-work-card .work-thumb{position:relative;z-index:1;display:block;aspect-ratio:auto;height:auto;min-height:0;border-radius:12px}.glass-work-card .work-thumb img{display:block;width:100%;height:auto;min-height:0;object-fit:contain}.glass-work-card .work-title{position:absolute;right:16px;bottom:16px;left:16px;z-index:4;width:auto;border:1px solid rgb(255 255 255 / .22);border-radius:12px;padding:16px;background:linear-gradient(135deg,#ffffff2e,#ffffff0e),#0808087a;color:var(--paper);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}@keyframes masonry-reveal{0%{opacity:0;filter:blur(10px);transform:translateY(40px) perspective(1000px) rotateX(0) rotateY(0)}to{opacity:1;filter:blur(0);transform:translateY(0) perspective(1000px) rotateX(0) rotateY(0)}}.glass-bento{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.section-feature-layout{grid-column:4 / 13;display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:24px;align-items:stretch}.section-feature-layout .glass-bento{align-content:stretch;height:100%}.glass-info-card{display:flex;flex-direction:column;border-radius:12px;padding:16px 24px 40px}.section-feature-layout .glass-info-card{min-height:280px}.glass-info-card h3{color:var(--paper)}.feature-image-panel{position:relative;isolation:isolate;align-self:stretch;min-height:clamp(520px,48vw,760px);border:1px solid var(--glass-border);border-radius:12px;margin:0;box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #ffffff14,var(--glass-shadow);overflow:hidden}.feature-image-panel:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border-radius:inherit;background:radial-gradient(circle at 16% 0%,rgb(255 255 255 / .02),transparent 30%),linear-gradient(138deg,rgb(255 255 255 / 0),transparent 72%,rgb(255 255 255 / .08));content:"";pointer-events:none}.feature-image-panel img{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}.glass-inline-button{display:inline-flex;width:fit-content;margin-top:1.25em;border:1px solid rgb(255 255 255 / .28);border-radius:12px;padding:8px 16px;background:#ffffff1f;color:var(--paper)}.glass-contact .contact-copy{border-radius:12px}.glass-contact-actions{align-self:auto;display:flex;flex-direction:column;justify-content:end;gap:16px;border-radius:12px;margin-top:2em;max-width:480px}.glass-contact-actions .contact-email,.glass-contact-actions .contact-tel{overflow-wrap:anywhere}.contact.glass-section>.section-title{margin-bottom:1em}.about .glass-section-title,.about .glass-copy-panel,.glass-contact .glass-section-title,.glass-contact .contact-copy,.glass-contact-actions{border-color:transparent;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.about .glass-section-title:before,.about .glass-copy-panel:before,.glass-contact .glass-section-title:before,.glass-contact .contact-copy:before,.glass-contact-actions:before{content:none}.glass-footer{border-radius:12px;margin-right:24px;margin-bottom:24px}.glass-modal .work-modal__backdrop{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.glass-modal .work-modal__dialog{--edge-proximity: 0;--cursor-angle: 45deg;--edge-sensitivity: 24;--color-sensitivity: 42;--cone-spread: 18;--fill-opacity: .1;--glow-padding: 28px;--gradient-two: radial-gradient(at 69% 34%, rgb(255 255 255) 0, transparent 50%);--gradient-three: radial-gradient(at 8% 6%, rgb(140 140 140) 0, transparent 50%);--gradient-five: radial-gradient(at 86% 85%, rgb(255 255 255) 0, transparent 50%);--gradient-six: radial-gradient(at 82% 18%, rgb(92 92 92) 0, transparent 50%);border-top:1px solid rgba(255 255 255 / .4);border-radius:12px;background:radial-gradient(circle at 18% 0%,rgb(255 255 255 / .18),transparent 32%),linear-gradient(145deg,#0003,#00000057),#0808082e;box-shadow:0 40px 120px #00000094;backdrop-filter:blur(24px) saturate(120%);-webkit-backdrop-filter:blur(24px) saturate(120%);overflow:visible}.glass-modal .work-modal__dialog>:not(.nav-border-gradient):not(.nav-border-fill):not(.nav-edge-light){position:relative;z-index:1}.glass-modal .work-modal__dialog .nav-border-gradient,.glass-modal .work-modal__dialog .nav-border-fill,.glass-modal .work-modal__dialog .nav-edge-light{border-radius:12px}.glass-modal .work-modal__dialog .nav-border-gradient,.glass-modal .work-modal__dialog .nav-border-fill{clip-path:inset(0 round 16px);overflow:hidden}.glass-modal .work-modal__dialog .work-modal__nav,.glass-modal .work-modal__dialog .work-modal__close,.glass-modal .work-modal__dialog .work-modal__text-toggle{border-radius:0}.glass-modal .work-modal__dialog .work-modal__nav--prev{border-radius:12px 0 0 12px}.glass-modal .work-modal__dialog .work-modal__close{border-radius:0 12px 0 0}.glass-modal .work-modal__dialog .work-modal__nav--next{border-radius:0 0 12px}.glass-modal .work-modal__dialog:not(:hover):not(:focus-within) .nav-border-gradient,.glass-modal .work-modal__dialog:not(:hover):not(:focus-within) .nav-border-fill,.glass-modal .work-modal__dialog:not(:hover):not(:focus-within) .nav-edge-light{opacity:0;transition:opacity .75s ease-in-out}.glass-modal .work-modal__content .modal-count,.glass-modal .modal-tags{margin:0 0 1em}.glass-modal .modal-tags{gap:8px}.glass-modal .modal-tags li{min-height:24px;padding:4px 16px 2px;border:1px solid rgb(255 255 255 / .18);background:radial-gradient(circle at 20% 0%,rgb(255 255 255 / .1),transparent 56%),linear-gradient(145deg,#0000,#0000),#08080852;color:var(--paper);box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #ffffff14,0 14px 30px #00000038}.glass-modal .work-modal__content h2{margin:0 0 .875em}.glass-modal .work-modal__content p{margin:0 0 1em}.glass-modal .work-modal__content .modal-affiliation{margin-top:-.5em}.glass-footer nav{gap:24px}.glass-footer small{margin-top:1.15em}.text-link--button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;padding:0;text-align:left}.work-modal__text-toggle img{display:block;width:32px;height:32px}@media(prefers-reduced-motion:reduce){.nav-border-gradient,.nav-border-fill,.nav-edge-light{transition:none}.glass-work-card,.glass-work-card:hover,.glass-work-card:focus-visible{animation:none;filter:none;transform:none}}@media(max-width:1680px){.reactbits-masonry{--work-columns: 4}}@media(prefers-reduced-transparency:reduce){.glass-surface,.glass-nav,.glass-info-card,.glass-work-card,.glass-contact-actions,.glass-footer,.glass-section-title,.glass-modal .work-modal__dialog,.glass-modal .work-modal__content{background:#121212f5;backdrop-filter:none;-webkit-backdrop-filter:none}}@media(max-width:1320px){.reactbits-masonry{--work-columns: 3}}@media(max-width:1120px){.glass-nav{position:fixed;inset:0 0 auto 0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin:0;width:100%;height:auto;min-height:72px;padding:16px 24px;border-radius:12px}.nav-edge-light{opacity:.48}.logo{top:24px;left:24px}.nav-blend{top:36px;right:88px;left:88px;display:flex;justify-content:center;width:auto;mix-blend-mode:normal;transform:none}.nav-blend a{color:var(--paper)}.page.is-menu-open .nav-blend{justify-content:flex-start;gap:18px}.glass-hero,.glass-section{min-width:0;padding-right:32px;padding-left:32px}.hero-glass-panel,.hero-card-swap,.glass-section-title,.glass-copy-panel,.glass-work-block,.works-masonry-shell,.section-feature-layout,.glass-bento,.glass-contact .contact-copy,.glass-contact-actions{grid-column:1 / -1}.section-feature-layout{grid-template-columns:1fr;gap:24px}.feature-image-panel{min-height:min(800px,80vw)}.reactbits-masonry{--work-columns: 3}.hero-card-swap{min-height:440px;margin-top:48px}.card-swap-container{right:50%;transform:translate(50%,14%) scale(.78);transform-origin:bottom center}.glass-section-title{margin-bottom:1.35em}}@media(max-width:720px){.reactbits-masonry{--work-columns: 2}.glass-hero{min-height:760px;padding-top:112px;padding-bottom:64px}.glass-section{padding:88px 20px}.glass-nav{min-height:64px;padding:12px 16px;border-radius:0 0 12px 12px}.nav-blend{top:22px;right:64px;left:64px;font-size:12px}.page.is-menu-open .nav-blend{flex-wrap:wrap;row-gap:8px}.hero-glass-panel{padding:24px;border-radius:12px}.section-title h2{font-size:clamp(40px,15vw,64px);line-height:.95}.section-title p{font-size:18px}.hero-card-swap{min-height:344px;margin-top:32px}.card-swap-container{transform:translate(50%,12%) scale(.58)}.reactbits-masonry{--work-columns: 2;gap:12px}.glass-bento{grid-template-columns:1fr}.section-feature-layout .glass-info-card{min-height:0}.feature-image-panel img{object-position:center top}.glass-contact-actions{width:100%}.glass-contact-actions .contact-email{font-size:clamp(18px,5.6vw,24px)}.glass-contact-actions .contact-tel{min-height:52px;padding-right:16px;padding-left:16px;font-size:clamp(16px,5vw,20px)}.glass-footer{width:auto;margin-right:0;margin-bottom:0;border-radius:12px}}@media(max-width:1120px){:root{--rail-width: 62px}.page.is-menu-open{--rail-width: 62px}.glass-hero,.glass-section{padding-left:calc(var(--rail-width) + 36px)}.glass-nav{inset:0 auto 0 0;display:flex;flex-direction:column;align-items:stretch;gap:0;width:var(--rail-width);height:100dvh;min-height:0;margin:0;padding:18px 12px;border-radius:0 12px 12px 0}.nav-glass-layer,.nav-border-gradient,.nav-border-fill,.nav-edge-light:before{border-radius:0 12px 12px 0}.logo{top:18px;left:12px;width:36px;height:36px}.nav-blend{position:fixed;top:50%;right:auto;left:12px;display:grid;place-items:center;width:calc(var(--rail-width) - 24px);margin:0;color:var(--paper);font-size:14px;mix-blend-mode:difference;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);cursor:pointer}.nav-blend:before{content:"Menu"}.nav-blend a{display:none}.menu-toggle{bottom:24px;left:12px}.page.is-menu-open .site-header.glass-nav{width:128px!important;min-width:128px!important;padding:18px 12px!important;border:1px solid rgb(255 255 255 / .26)!important;background:linear-gradient(135deg,#fff0,#fff0),var(--glass-bg)!important;color:var(--paper)!important;box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #ffffff14,var(--glass-shadow)!important;backdrop-filter:var(--glass-blur)!important;-webkit-backdrop-filter:var(--glass-blur)!important;pointer-events:auto!important;cursor:default!important}.page.is-menu-open .nav-blend{top:50%;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:20px;width:auto;color:var(--paper);mix-blend-mode:normal;writing-mode:horizontal-tb;transform:translateY(-50%);cursor:default}.page.is-menu-open .nav-blend:before{content:none}.page.is-menu-open .nav-blend a{display:block;color:var(--paper);cursor:pointer}}@media(max-width:1120px){.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav,.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle{border:0}.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__close{position:absolute!important;top:0!important;right:0!important;z-index:12;grid-column:auto!important;grid-row:auto!important;width:72px;height:72px;border:0!important;border-radius:0 12px 0 0;background:transparent}.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav:hover,.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav:focus-visible,.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle:hover,.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle:focus-visible,.glass-modal.is-text-open .work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle,.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:hover,.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:focus-visible{border:0}.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:hover,.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:focus-visible{background:var(--paper)!important;background-color:var(--paper)!important;color:var(--control-active)!important}.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:hover:before,.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:hover:after,.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:focus-visible:before,.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__close:focus-visible:after{background:var(--control-active)!important;background-color:var(--control-active)!important}}@media(max-width:860px){.about.section-grid.glass-section>.section-title h2,.about.section-grid.glass-section>.section-title p,.about.section-grid.glass-section .section-body p{text-align:left}.about .section-body p br{display:none}}@media(max-width:720px){.glass-modal .work-modal__dialog:not(.wire-modal__dialog){grid-template-columns:minmax(0,1fr) minmax(0,1fr) 64px 64px}.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__close{position:relative!important;top:auto!important;right:auto!important;grid-column:4!important;grid-row:3!important;width:64px;height:64px;border-radius:0 0 12px}.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav--prev{grid-column:1;width:100%;border-radius:0 0 0 12px}.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__nav--next{grid-column:2;width:100%;border-radius:0}.glass-modal .work-modal__dialog:not(.wire-modal__dialog) .work-modal__text-toggle{grid-column:3;width:64px;height:64px;border-radius:0}}@media(max-width:499px){:root{--rail-width: 0px}.aurora-backdrop .soft-aurora-container{position:absolute;top:0;left:50%;width:max(920px,220vw);height:100%;transform:translate(-50%)}.glass-hero,.glass-section{padding-left:20px}.page.is-menu-open{--rail-width: 0px}.page.is-menu-open main,.page.is-menu-open .site-footer{transform:none}.page.is-menu-open .site-header.glass-nav{width:128px!important;min-width:128px!important;padding:18px 12px!important;border:1px solid rgb(255 255 255 / .26)!important;background:linear-gradient(135deg,#fff0,#fff0),var(--glass-bg)!important;color:var(--paper)!important;box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #ffffff14,var(--glass-shadow)!important;backdrop-filter:var(--glass-blur)!important;-webkit-backdrop-filter:var(--glass-blur)!important;pointer-events:auto!important}.page:not(.is-menu-open) .site-header.glass-nav{width:0!important;min-width:0!important;padding:0!important;border:0!important;pointer-events:none}.page:not(.is-menu-open) .nav-blend{display:none}.page:not(.is-menu-open) .logo{top:12px;left:12px;width:44px;height:44px}.page.is-menu-open .logo{top:12px;left:12px;width:44px;height:44px}.page.is-menu-open .menu-toggle{bottom:14px;left:8px;width:52px;height:52px}.page:not(.is-menu-open) .menu-toggle{bottom:24px;left:12px;width:44px;height:44px;mix-blend-mode:difference}}.work-modal.circular-modal.is-open{place-items:center;padding:32px}.work-modal.circular-modal .work-modal__dialog:not(.wire-modal__dialog){position:relative;display:block;width:min(1440px,calc(100vw - 64px));height:min(880px,calc(100dvh - 64px));border-radius:12px;overflow:hidden}.circular-modal .work-modal__media,.circular-modal .work-modal__content,.circular-modal .work-modal__text-toggle{display:none!important}.circular-modal__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(304px,392px);gap:24px;height:100%;padding:32px 96px 32px 32px}.circular-gallery{position:relative;min-width:0;height:100%}.circular-gallery__stage{position:relative;display:grid;height:100%;align-items:center;overflow:hidden;border:1px solid rgb(255 255 255 / .14);border-radius:12px;background:radial-gradient(circle at 50% 8%,rgb(255 255 255 / .16),transparent 36%),radial-gradient(circle at 50% 100%,rgb(204 0 38 / .2),transparent 48%),#ffffff0e}.circular-gallery__stage:before{position:absolute;right:8%;bottom:9%;left:8%;height:28%;border-radius:12px;background:radial-gradient(ellipse,rgb(204 0 38 / .22),transparent 66%);filter:blur(24px);content:"";pointer-events:none}.circular-gallery__stage:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgb(10 10 10 / .82),transparent 18%,transparent 82%,rgb(10 10 10 / .82)),linear-gradient(180deg,rgb(255 255 255 / .08),transparent 22%,rgb(0 0 0 / .28));content:"";pointer-events:none}.circular-gallery__track{position:relative;z-index:2;display:flex;gap:24px;align-items:center;min-height:min(680px,68dvh);padding:56px max(104px,23vw);overflow-x:auto;overflow-y:hidden;cursor:grab;perspective:1100px;scroll-padding-inline:max(104px,23vw);scroll-snap-type:x mandatory;scrollbar-width:none;transform-style:preserve-3d}.circular-gallery__track::-webkit-scrollbar{display:none}.circular-gallery__track.is-dragging{cursor:grabbing;scroll-snap-type:none}.circular-gallery__item{position:relative;flex:0 0 clamp(216px,26vw,408px);display:block;min-width:0;border:0;border-radius:12px;padding:0;background:transparent;color:var(--paper);cursor:pointer;opacity:var(--gallery-opacity);scroll-snap-align:center;transform:translateY(var(--gallery-lift)) rotateY(var(--gallery-rotate)) scale(var(--gallery-scale));transform-origin:center bottom;transition:opacity .24s ease,transform .3s ease,filter .24s ease}.circular-gallery__item:hover,.circular-gallery__item:focus-visible{opacity:1;outline:none}.circular-gallery__image{position:relative;display:block;aspect-ratio:4 / 5;overflow:hidden;border:1px solid rgb(255 255 255 / .2);border-radius:12px;background:#ffffff14;box-shadow:inset 0 1px #fff3,0 32px 80px #00000075}.circular-gallery__image:after{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:linear-gradient(180deg,rgb(255 255 255 / .12),transparent 28%,rgb(0 0 0 / .24)),linear-gradient(90deg,rgb(255 255 255 / .12),transparent 40%,rgb(255 255 255 / .08));content:"";pointer-events:none}.circular-gallery__image img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.circular-gallery__caption{position:absolute;right:16px;bottom:16px;left:16px;display:flex;gap:8px;align-items:center;min-height:48px;border:1px solid rgb(255 255 255 / .22);border-radius:12px;padding:8px 16px;background:linear-gradient(135deg,#ffffff29,#ffffff0e),#08080885;color:var(--paper);font-size:13px;font-weight:700;line-height:1.25;text-align:left;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.circular-gallery__caption span{flex:none;color:#ffffff9e;font-size:11px}.circular-gallery__item.is-active .circular-gallery__image{border-color:#ffffff70;box-shadow:inset 0 1px #ffffff52,0 40px 104px #0000008f,0 0 0 1px #cc002657}.circular-gallery-detail{align-self:stretch;min-width:0;overflow-y:auto;border:1px solid rgb(255 255 255 / .18);border-radius:12px;padding:24px;background:linear-gradient(135deg,#ffffff29,#ffffff0b),#0a0a0a94;color:#ffffffc7;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.circular-gallery-detail .modal-count,.circular-gallery-detail .modal-tags{margin:0 0 1em}.circular-gallery-detail .modal-tags{gap:8px}.circular-gallery-detail .modal-tags li{min-height:24px;padding:4px 16px}.circular-gallery-detail h2{margin:0 0 .875em;color:var(--paper);font-size:clamp(28px,3vw,48px);line-height:.98;letter-spacing:0}.circular-gallery-detail p{margin:0 0 1em}.circular-gallery-detail .modal-affiliation{margin-top:-.5em}.circular-gallery-detail .modal-url{overflow-wrap:anywhere}.circular-gallery-detail a{color:var(--paper);text-decoration-color:#cc0026b8;text-underline-offset:.18em}.work-modal.circular-modal .work-modal__close,.work-modal.circular-modal .work-modal__nav{position:absolute!important;z-index:12;display:grid!important;place-items:center;border:1px solid rgb(255 255 255 / .18)!important;background:linear-gradient(135deg,#ffffff29,#ffffff0a),#08080885!important;color:#fff!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.work-modal.circular-modal .work-modal__close{top:24px!important;right:24px!important;width:48px!important;height:48px!important;border-radius:12px!important}.work-modal.circular-modal .work-modal__close:before,.work-modal.circular-modal .work-modal__close:after{width:24px!important}.work-modal.circular-modal .work-modal__nav{top:50%!important;width:56px!important;height:104px!important;border-radius:12px!important;transform:translateY(-50%)}.work-modal.circular-modal .work-modal__nav--prev{left:24px!important}.work-modal.circular-modal .work-modal__nav--next{right:24px!important}@media(prefers-reduced-motion:reduce){.circular-gallery__item{transition:none;transform:none}}@media(prefers-reduced-transparency:reduce){.circular-gallery__stage,.circular-gallery-detail,.work-modal.circular-modal .work-modal__close,.work-modal.circular-modal .work-modal__nav{background:#121212f5!important;backdrop-filter:none;-webkit-backdrop-filter:none}}@media(max-width:1040px){.circular-modal__body{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;padding:24px 80px 24px 24px}.circular-gallery-detail{max-height:32dvh}}@media(max-width:720px){.work-modal.circular-modal.is-open{padding:0}.work-modal.circular-modal .work-modal__dialog:not(.wire-modal__dialog){width:100%;height:95dvh;border-radius:12px}.circular-modal__body{gap:16px;grid-template-rows:minmax(0,1fr) auto;padding:72px 16px 88px}.circular-gallery__stage{border-radius:12px}.circular-gallery__track{gap:16px;min-height:100%;padding:40px 20vw;scroll-padding-inline:20vw}.circular-gallery__item{flex-basis:68vw}.circular-gallery-detail{max-height:28dvh;border-radius:12px;padding:16px}.circular-gallery-detail h2{font-size:clamp(24px,8vw,34px)}.work-modal.circular-modal .work-modal__close{top:16px!important;right:16px!important;width:48px!important;height:48px!important}.work-modal.circular-modal .work-modal__nav{top:auto!important;bottom:16px!important;width:calc(50% - 24px)!important;height:56px!important;border-radius:12px!important;transform:none}.work-modal.circular-modal .work-modal__nav--prev{left:16px!important}.work-modal.circular-modal .work-modal__nav--next{right:16px!important}}
