.case .photo .svc-img,.work-card .svc-img{transition:transform var(--dur-slow) var(--ease-out);transform-origin:50% 50%}@media (hover:hover) and (pointer:fine){.case:hover .photo .svc-img,.work-card:hover .svc-img{transform:scale(1.05)}.case:hover a.go svg{transform:translateX(4px)}}.case:has(:focus-visible) .photo .svc-img,.work-card:has(.work-link:focus-visible) .svc-img{transform:scale(1.05)}.case a.go svg{transition:transform var(--dur-fast) var(--ease-out)}.case a.go:focus-visible svg{transform:translateX(4px)}.work-card{cursor:zoom-in}.work-link{position:absolute;inset:0;display:block;color:inherit;-webkit-tap-highlight-color:transparent}.work-card figcaption{pointer-events:none}.work-link:focus-visible{outline:none}.work-card:has(.work-link:focus-visible){outline:3px solid var(--blue);outline-offset:3px}.work-card:has(.work-link:focus-visible):after{animation:glint-hover var(--dur-glint) var(--ease-std) 1}.work-zoom{position:absolute;top:18px;right:18px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.94);color:var(--navy);box-shadow:var(--glass-light);opacity:0;transform:scale(.9);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);pointer-events:none}.work-zoom svg{width:16px;height:16px}@media (hover:hover) and (pointer:fine){.work-card:hover .work-zoom{opacity:1;transform:none}}.work-card:has(.work-link:focus-visible) .work-zoom{opacity:1;transform:none}@media (pointer:coarse){.work-zoom{opacity:.92;transform:none}}.case-row{-webkit-mask-image:linear-gradient(90deg,transparent,#000 16px,#000 calc(100% - 16px),transparent);mask-image:linear-gradient(90deg,transparent,#000 16px,#000 calc(100% - 16px),transparent)}@media (prefers-reduced-motion:reduce){.case .photo .svc-img,.case a.go svg,.work-card .svc-img{transform:none!important}}html.lb-open{overflow:hidden;scrollbar-gutter:stable}dialog.lb{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#fff;overflow:hidden}dialog.lb::backdrop{background:transparent}.lb-bg{position:absolute;inset:0;background:#02101F;opacity:0;transition:opacity .26s var(--ease-std)}dialog.lb[data-open=true] .lb-bg{opacity:.96}.lb-stage{position:absolute;inset:0;display:grid;place-items:center;padding:68px 16px 96px;touch-action:pan-y;cursor:zoom-out}.lb-fig{--ar:1.2;--w:576;margin:0;cursor:default;aspect-ratio:var(--ar);width:min(100%,calc((100svh - 180px) * var(--ar)),calc(var(--w) * 1.5px));clip-path:inset(0 round 10px);transform-origin:50% 50%;transition:transform var(--dur-lightbox) var(--ease-out),clip-path var(--dur-lightbox) var(--ease-out)}.lb-img{object-fit:cover}.lb-swap{animation:lb-in .22s var(--ease-out) both}@keyframes lb-in{0%{opacity:0}to{opacity:1}}.lb-ui{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .26s var(--ease-std)}dialog.lb[data-open=true] .lb-ui{opacity:1}.lb-btn{pointer-events:auto;width:48px;height:48px;flex:none;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:var(--r-ctl);background:rgba(2,16,31,.55);color:#fff;box-shadow:var(--hl-dark);cursor:pointer}.lb-btn:hover{background:rgba(255,255,255,.14)}.lb-btn:focus-visible{outline-color:#fff}.lb-btn svg{width:22px;height:22px}.lb-close{position:absolute;top:calc(12px + env(safe-area-inset-top));right:16px}.lb-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px calc(14px + env(safe-area-inset-bottom))}.lb-cap{margin:0;flex:1;min-width:0;text-align:center;font-size:calc(15px*var(--fs,1));line-height:1.3;display:grid;gap:2px}.lb-cap b{font-weight:700}.lb-cap span{color:#C9D3E1;font-size:calc(13px*var(--fs,1));font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){.lb-fig{transition:none!important;opacity:0}dialog.lb[data-open=true] .lb-fig{opacity:1}html .lb-bg,html .lb-fig,html .lb-ui{transition-property:opacity!important;transition-duration:.15s!important}.lb-swap{animation:none}}.tick{display:flex;align-items:center;gap:10px;margin:6px 0 0;border-top:1px solid rgba(5,28,57,.14);border-bottom:1px solid rgba(5,28,57,.14)}.tick-view{flex:1;min-width:0;overflow:hidden}.tick-list{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:6px 0}.tick-list li{display:flex;align-items:center;white-space:nowrap;padding:8px 0;font-weight:600;font-size:calc(15px*var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}.tick-list li:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue);margin:0 18px;flex:none}.tick--deco,.tick-btn,.tick-copy,.tick-list li:last-child:after{display:none}.tick-btn{width:44px;height:44px;flex:none;place-items:center;padding:0;border:1px solid var(--line);border-radius:var(--r-ctl);background:#fff;color:var(--navy);box-shadow:var(--glass-light);cursor:pointer}.tick-btn svg{width:18px;height:18px}.tick-btn .i-play,.tick-btn[aria-pressed=true] .i-pause{display:none}.tick-btn[aria-pressed=true] .i-play{display:block}.tick-btn:hover{background:var(--soft)}@keyframes tick-run{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media (prefers-reduced-motion:no-preference){html.js:not(.a11y-calm) .tick--deco{display:flex}html.js:not(.a11y-calm) .tick-btn{display:grid}html.js:not(.a11y-calm) .tick-view{-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}html.js:not(.a11y-calm) .tick-track{display:flex;width:max-content;animation:tick-run var(--ticker) linear infinite}html.js:not(.a11y-calm) .tick-list{flex:none;flex-wrap:nowrap;padding:6px 0}html.js:not(.a11y-calm) .tick-copy{display:flex}html.js:not(.a11y-calm) .tick-list li:after,html.js:not(.a11y-calm) .tick-list li:last-child:after{display:block}html.js:not(.a11y-calm) .tick[data-paused=true] .tick-track{animation-play-state:paused}html.js:not(.a11y-calm) .tick:has(:focus-visible) .tick-track{animation-play-state:paused}}@media (hover:hover) and (prefers-reduced-motion:no-preference){html.js:not(.a11y-calm) .tick-view:hover .tick-track{animation-play-state:paused}}html .acc-btn{gap:12px}html .acc-num{position:relative;flex:none;display:grid;place-items:center;min-width:30px;height:30px;padding:0 6px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--mute);font:700 12.5px/1 var(--font);font-size:calc(12.5px*var(--fs,1));font-variant-numeric:tabular-nums;isolation:isolate;transition:color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}html .acc-num:before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;background:var(--navy);opacity:0;transition:opacity var(--dur-base) var(--ease-out)}html .acc-item.open .acc-num{color:#fff;border-color:var(--navy)}html .acc-item.open .acc-num:before{opacity:1}html .acc-ico{position:relative;flex:none;width:18px;height:18px;color:var(--navy);transition:transform var(--dur-base) var(--ease-out)}html .acc-ico:after,html .acc-ico:before{content:"";position:absolute;left:1px;right:1px;top:8px;height:2px;border-radius:2px;background:currentColor}html .acc-ico:after{transform:rotate(90deg)}html .acc-item.open .acc-ico{transform:rotate(45deg)}html .acc-item.open .acc-title{color:var(--navy)}html .acc-panel{transition:grid-template-rows var(--dur-base) var(--ease-out)}html .acc .acc-panel-inner p{padding:14px 18px 16px;border-top:1px solid var(--line);opacity:0;transform:translateY(-4px);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-base) var(--ease-out)}html .acc .acc-item.open .acc-panel-inner p{opacity:1;transform:none;transition-delay:80ms}html .acc--faq .acc-btn{font-size:calc(18px*var(--fs,1))}html .acc--faq .acc-panel-inner p{padding-right:max(18px,calc(100% - 66ch))}@media (max-width:480px){html .acc--faq .acc-btn{font-size:calc(16.5px*var(--fs,1));align-items:flex-start;padding-top:15px;padding-bottom:15px}html .acc-num{min-width:28px;height:28px}}html:not(.js) .acc-panel{grid-template-rows:1fr}html:not(.js) .acc .acc-panel-inner p{opacity:1;transform:none}html:not(.js) .acc-ico{display:none}@media (prefers-reduced-motion:reduce){html .acc .acc-panel-inner p{transform:none}}