/* Craft pass guided by dannyjpwilliams/design-engineer-skill. */
footer.site-footer .footer-email{display:inline-flex;justify-content:flex-start;align-items:center;gap:16px;width:fit-content;max-width:100%}
footer.site-footer .footer-email svg{margin-left:0;flex-shrink:0}
footer.site-footer,footer.site-footer>h2,footer.site-footer>.footer-copy,footer.site-footer .footer-meta,footer.site-footer .footer-meta p{text-align:left!important}
footer.site-footer>h2,footer.site-footer>.footer-copy{margin-left:0!important;margin-right:0!important}
.work-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;grid-column:1/-1;margin-top:24px}
.work-filters button{border:0;border-radius:999px;padding:14px 23px;min-height:48px;background:#f3f3f5;color:#555560;font:500 15px/1.3 var(--display);cursor:pointer;transition:background .2s,color .2s,transform .25s ease-out}
.work-filters button:hover{transform:translateY(-2px);background:#e9e8ef}
.work-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
html[data-theme=dark] .work-filters button:not([aria-pressed=true]){background:#242429;color:#d2d2da}
.project[hidden]{display:none!important}
.hero .hero-sticker.has-liquid-surface{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.hero-sticker.has-liquid-surface::before{opacity:0}
.badge-glass{position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(165deg,rgba(148,141,255,.65),rgba(80,71,248,.78) 60%,rgba(66,56,225,.84));backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);box-shadow:inset 0 1px 1px rgba(255,255,255,.55),inset 0 -1px 2px rgba(33,21,148,.15),0 4px 12px rgba(80,71,248,.1)}
html[data-theme=dark] .badge-glass{background:linear-gradient(165deg,rgba(167,161,255,.75),rgba(108,100,250,.85) 60%,rgba(96,87,236,.9))}
.badge-liquid{position:absolute;inset:0;pointer-events:none}
.badge-liquid svg{overflow:visible;stroke:none}
.hero-sticker.has-liquid-surface>span{position:relative;z-index:1}
.hero-identity{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:24px}
.home-page .hero .hero-identity{position:absolute;top:28px;left:var(--gutter);right:var(--gutter);z-index:3;justify-content:space-between;margin:0}
.hero-identity .hero-logo{width:165px!important;height:48px!important;min-width:48px!important;background:var(--paper);color:var(--ink);border-color:var(--ink)}
.hero-identity .hero-logo .vinny-logo-full{opacity:1;transform:none}
.hero-identity .hero-logo .vinny-logo-short{opacity:0;transform:translateX(-9px)}
.hero-identity .hero-logo:hover,.hero-identity .hero-logo:focus-visible{width:48px!important}
.hero-identity .hero-logo:hover .vinny-logo-full,.hero-identity .hero-logo:focus-visible .vinny-logo-full{opacity:0;transform:translateX(9px);transition-delay:0s}
.hero-identity .hero-logo:hover .vinny-logo-short,.hero-identity .hero-logo:focus-visible .vinny-logo-short{opacity:1;transform:none;transition-delay:.1s}
.hero-identity .hero-role-pill{height:48px}
.hero-brand,.hero-top-nav{display:flex;align-items:center;gap:10px}
.hero .hero-top-nav{gap:14px}
.hero .hero-brand{padding:6px;border-radius:999px;background:#f5f5f6;gap:8px}
.hero .hero-brand .hero-role-pill{background:transparent;padding-right:18px}
html[data-theme=dark] .hero .hero-brand{background:#202024}
.hero-top-nav>a,.hero-top-contact summary{color:var(--muted);transition:background .25s ease,color .25s ease,transform .35s cubic-bezier(.22,1.12,.35,1),box-shadow .25s ease}
.hero-top-nav>a:hover,.hero-top-contact summary:hover{color:var(--ink);transform:translateY(-2px);box-shadow:0 0 0 1px rgba(0,0,0,.025),0 2px 4px rgba(0,0,0,.03),0 6px 12px rgba(0,0,0,.03)}
.hero-top-nav>a:active,.hero-top-contact summary:active{transform:translateY(0) scale(.98)}
.hero-top-nav>a,.hero-top-contact summary{display:flex;align-items:center;gap:8px;padding:0 16px;height:48px;border-radius:999px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}
.hero-top-nav>a:hover,.hero-top-contact summary:hover{background:var(--panel)}
.hero-top-nav svg{width:20px;height:20px}
.hero-top-nav>a svg,.hero-top-contact summary>span{display:none}
.hero-top-nav>a,.hero-top-contact summary{height:42px;padding:0 18px;background:var(--panel);font-size:14px;line-height:1;font-weight:500;white-space:nowrap}
.hero-top-nav>a:hover,.hero-top-contact summary:hover{background:color-mix(in srgb,var(--ink) 10%,var(--paper))}
.hero-brand .hero-role-pill{transition:transform .45s cubic-bezier(.22,.8,.25,1)}
.hero-brand:has(.hero-logo-hover:hover) .hero-role-pill,.hero-brand:has(.hero-logo-hover:focus-within) .hero-role-pill{transform:translateX(-117px)}
.hero-top-contact{position:relative}
.hero-top-contact{isolation:isolate}
.top-email-confirmation{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .28s ease,opacity .2s ease;pointer-events:none}
.top-email-confirmation.is-showing{grid-template-rows:1fr;opacity:1}
.top-email-confirmation>div{overflow:hidden;min-height:0}
.top-email-confirmation p{display:flex;align-items:center;gap:8px;margin:4px 0 0;padding:10px 12px;border-radius:10px;background:linear-gradient(160deg,#756dff,#5047f8);color:white;font-size:13px;line-height:20px;font-weight:500}
.top-email-confirmation p>span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(255,255,255,.18)}
@media(prefers-reduced-motion:reduce){.top-email-confirmation{transition:none}}
.hero-top-contact summary{list-style:none;background:var(--panel)}
.hero-top-contact summary::-webkit-details-marker{display:none}
.hero-top-contact>.top-contact-options{position:absolute;right:0;top:calc(100% + 8px);box-sizing:border-box;width:184px;padding:6px;border-radius:16px;background:var(--paper);box-shadow:0 0 0 1px var(--line),0 8px 24px rgba(0,0,0,.08);transform-origin:85% 0;animation:none}
.top-contact-options a{display:flex;align-items:center;min-height:40px;padding:10px 12px;box-sizing:border-box;border-radius:10px;font-size:14px;line-height:20px}
.top-contact-options a:hover{background:var(--panel)}
@keyframes top-contact-in{from{transform:translateY(-8px) scale(.97)}to{transform:none}}
@media(max-width:850px){.hero-top-nav>a{padding:0 10px}.hero-top-nav>a span{display:none}.hero-top-contact summary{font-size:12px;padding:0 12px}.hero-brand{gap:6px}.hero-identity .hero-role-pill{padding:0 10px;font-size:12px}}
@media(max-width:540px){.home-page .hero .hero-identity{flex-wrap:wrap;gap:14px}.hero-brand{width:100%;justify-content:space-between}.hero-top-nav{width:100%;justify-content:flex-end}.hero-top-nav>a span{display:inline}}
@media(max-width:850px){.hero-top-nav>a span{display:inline}.hero-top-nav>a,.hero-top-contact summary{padding:0 16px;font-size:13px}}
@media(max-width:540px){.hero-brand{justify-content:flex-start}.hero-top-nav{justify-content:space-between;gap:6px}.hero-top-nav>a,.hero-top-contact summary{padding:0 12px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero-brand .hero-role-pill{transition:none}}
.hero-logo-hover{width:165px;height:48px;flex:0 0 165px}
.hero-logo-hover{position:relative;z-index:2}
.hero-brand .hero-role-pill{pointer-events:none;flex-shrink:0}
.hero .hero-brand{position:relative;isolation:isolate;background:transparent!important}
.hero-brand::before{content:"";position:absolute;z-index:-1;inset:0;border-radius:999px;background:#f5f5f6;transform-origin:left center;transition:right .45s cubic-bezier(.22,.8,.25,1)}
.hero-brand:has(.hero-logo-hover:hover)::before,.hero-brand:has(.hero-logo-hover:focus-within)::before{right:117px}
html[data-theme=dark] .hero-brand::before{background:#202024}
.hero-top-nav>a,.hero-top-contact summary{background:#f5f5f6;transition:background .25s ease,color .25s ease,transform .35s cubic-bezier(.22,1.12,.35,1),box-shadow .25s ease}
html[data-theme=dark] .hero-top-nav>a,html[data-theme=dark] .hero-top-contact summary{background:#202024}
.hero-logo-hover .hero-logo{display:block;transition:width .45s cubic-bezier(.22,.8,.25,1)}
.hero-identity .hero-logo-hover:hover .hero-logo,.hero-identity .hero-logo-hover:focus-within .hero-logo{width:48px!important}
.hero-identity .hero-logo-hover:hover .vinny-logo-full,.hero-identity .hero-logo-hover:focus-within .vinny-logo-full{opacity:0;transform:translateX(9px);transition-delay:0s}
.hero-identity .hero-logo-hover:hover .vinny-logo-short,.hero-identity .hero-logo-hover:focus-within .vinny-logo-short{opacity:1;transform:none;transition-delay:.1s}
.hero-name-pill,.hero-role-pill{height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:14px;font-weight:500;white-space:nowrap}
.hero-name-pill{padding:0 19px;border:3px solid var(--ink);background:var(--paper);color:var(--ink);cursor:pointer;letter-spacing:-.025em}
.hero-name-window{display:block;height:20px;overflow:hidden}
.hero-name-track{display:flex;flex-direction:column;transition:transform .65s cubic-bezier(.22,1.15,.32,1)}
.hero-name-track>span{display:block;height:20px;line-height:20px;text-align:center}
.hero-name-pill:hover .hero-name-track,.hero-name-pill:focus-visible .hero-name-track{transform:translateY(-20px)}
.hero-role-pill{padding:0 18px;background:var(--panel);color:var(--muted)}
@media(max-width:480px){.hero-identity{gap:8px}.hero-name-pill,.hero-role-pill{font-size:12px;height:40px;padding-left:13px;padding-right:13px}}
@media(prefers-reduced-motion:reduce){.hero-name-track{transition:none}}
.case-body .case-hero>.eyebrow{display:none!important}
.case-body .case-hero .case-header-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px!important}
.case-body .case-hero .case-header-tags>span{display:inline-flex;align-items:center;min-height:40px;padding:10px 16px!important;border-radius:999px;background:#f2f2f4!important;color:#454550!important;font-size:14px!important;font-weight:500;line-height:1.35;letter-spacing:0;text-transform:none;white-space:normal;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
html[data-theme=dark] .case-body .case-hero .case-header-tags>span{background:#29292e!important;color:#ececf1!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.case-body .case-hero>.eyebrow{ text-transform:none!important;letter-spacing:0!important;font-size:14px;font-weight:500;line-height:1.4 }
.home-page #work-title{position:relative;width:max-content;max-width:100%;margin-left:auto;margin-right:auto}
.work-scroll-motif{display:inline-block;width:.85em;height:.85em;margin:0 .18em;vertical-align:-.04em}
.work-scroll-motif svg{display:block;width:100%;height:100%;fill:currentColor;stroke:none}
.work-heading-shape{position:absolute;width:32px;height:32px;pointer-events:none;opacity:0;transform:translateY(18px) rotate(-25deg) scale(.3);transition:transform .7s cubic-bezier(.2,1.5,.35,1),opacity .25s;transition-delay:var(--delay)}
.work-heading-shape svg{width:100%;height:100%;fill:currentColor;stroke:none}
.shapes-visible .work-heading-shape{opacity:1;transform:translateY(0) rotate(var(--turn)) scale(1)}
@media(prefers-reduced-motion:reduce){.work-heading-shape{transition:none}}
/* Clip animated offscreen cards at the viewport without creating a horizontal scroll container. */
html{overflow-x:clip}
body{overflow-x:clip}
.home-page .hero h1{font-size:clamp(46px,6vw,86px)!important;text-align:center!important;line-height:1.1!important;font-weight:500!important;letter-spacing:-.035em!important;font-kerning:normal}
.hero .hero-label{text-align:center!important;text-transform:none;letter-spacing:0;font-size:14px;font-weight:500}
.hero-bolt{display:none}
.home-page.nav-before-reel[data-nav-mode=bottom] .app-nav{translate:var(--toast-shift,0px) calc(100% + 60px)!important;pointer-events:none}
.home-page .work-reel{margin-top:-64px}
.home-page .work-reel,.home-page .work-reel-sticky{border-radius:64px 64px 0 0!important;corner-shape:squircle;box-shadow:none!important}
@media(max-width:760px){.home-page .work-reel,.home-page .work-reel-sticky{border-radius:40px 40px 0 0!important}}
.reel-scroll-notch{position:absolute;z-index:6;top:-1px;left:calc(50% - 4.5px);translate:-50% 0;display:grid;place-items:center;width:153px;height:31.5px;background:transparent;color:#272735;pointer-events:none}
.reel-scroll-notch::before{content:"";display:block;position:absolute;top:0;left:0;width:34px;height:7px;transform:scale(4.5);transform-origin:top left;background:#fff;clip-path:path('M0 0H2.44365C5.36103 0 8.15893 1.15893 10.2218 3.22182C14.5176 7.51759 21.4824 7.51759 25.7782 3.22182C27.8411 1.15893 30.639 0 33.5563 0H34H0Z')}
.reel-scroll-notch::after{display:none}
html[data-theme=dark] .reel-scroll-notch{color:#fff}
html[data-theme=dark] .reel-scroll-notch::before{background:var(--paper,#111114)}
.reel-scroll-notch svg{position:absolute;left:81px;translate:-50% 0;bottom:27.5px;width:28px;height:28px;animation:reel-arrow-nudge 2.4s cubic-bezier(.45,0,.25,1) infinite}
@keyframes reel-arrow-nudge{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}
@media(prefers-reduced-motion:reduce){.reel-scroll-notch svg{animation:none}}
.hero-letter{display:inline;position:relative;cursor:default}
.hero-letter.is-shape{color:transparent}
.hero-hover-shape{position:absolute;left:50%;top:50%;width:max(112%,.63em);max-width:1.05em;height:.95em;transform:translate(-50%,-50%);pointer-events:none}
.hero-hover-shape svg{width:100%;height:100%;fill:currentColor;stroke:none}
.hero .hero-title-wrap{position:relative;max-width:1120px!important}
.hero .hero-label{text-align:left}
.hero h1{position:relative;z-index:1;max-width:none!important;text-align:left!important;font-size:clamp(54px,8.3vw,120px)!important;line-height:.98!important;font-weight:600!important;letter-spacing:-.055em!important}
.hero h1 br{display:initial}
.hero-bolt{position:absolute;right:12%;top:0;width:clamp(120px,19vw,260px);height:auto;fill:#5047f8;stroke:none;transform:rotate(8deg);pointer-events:none}
.hero-sticker{position:absolute;z-index:2;bottom:-24px;left:48%;padding:12px 20px;border-radius:999px;background:#756dff;color:#fff;font-size:clamp(14px,1.6vw,22px);font-weight:500;transform:rotate(-10deg);white-space:nowrap}
.home-page .hero{justify-content:center!important;gap:0!important;padding-top:clamp(80px,10vh,120px)!important;padding-bottom:calc(clamp(80px,10vh,120px) + 64px)!important}
.hero .hero-foot{margin-top:20px!important;align-items:center!important}
.hero .hero-foot p{margin:0 auto;text-align:center!important}
@media(max-width:760px){.hero-bolt{right:3%;top:28px;width:125px}.hero-sticker{left:auto;right:0;bottom:-35px;padding:10px 16px}.hero h1{font-size:clamp(44px,10vw,72px)!important}}
.hero .hero-sticker{display:block;position:relative;left:auto;right:auto;bottom:auto;width:max-content;margin:-9px auto 0;padding:12px 22px;font-size:clamp(15px,1.4vw,18px);line-height:1.3;border-radius:999px;border:1px solid rgba(255,255,255,.45);background:linear-gradient(165deg,rgba(148,141,255,.65),rgba(80,71,248,.78) 60%,rgba(66,56,225,.84));backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);box-shadow:inset 0 1px 1px rgba(255,255,255,.55),inset 0 -1px 2px rgba(33,21,148,.15),0 4px 12px rgba(80,71,248,.1);color:#fff;animation:hero-badge-float 4s ease-in-out infinite}
@keyframes hero-badge-float{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-6px) rotate(-4deg)}}
.hero .hero-sticker{left:auto;margin-top:-19px}
.hero .hero-sticker,html[data-theme=dark] .hero .hero-sticker{border-color:transparent!important}
.hero .hero-sticker::before,.badge-glass::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(to bottom,rgba(255,255,255,.65),rgba(255,255,255,0) 55%);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none}
html[data-theme=dark] .hero .hero-sticker{background:linear-gradient(165deg,rgba(167,161,255,.75),rgba(108,100,250,.85) 60%,rgba(96,87,236,.9));color:#fff;border-color:rgba(255,255,255,.45);box-shadow:inset 0 1px 1px rgba(255,255,255,.55),inset 0 -1px 2px rgba(33,21,148,.15),0 4px 12px rgba(80,71,248,.1)}
@media(prefers-reduced-motion:reduce){.hero .hero-sticker{animation:none;transform:rotate(-6deg)}}
.project .project-tags{gap:8px}
.project .project-tags>span{display:inline-flex;align-items:center;min-height:36px;padding:9px 15px;font-size:13px;font-weight:600;line-height:1.2;letter-spacing:-.01em;border-radius:999px;box-shadow:0 0 0 1px rgba(0,0,0,.035),0 2px 4px rgba(0,0,0,.025)}
.case-header-tags>span{min-height:36px;padding:9px 15px;font-size:13px;font-weight:600;line-height:1.2}
@media(max-width:760px){.project .project-tags{gap:6px}.project .project-tags>span{min-height:32px;padding:8px 12px;font-size:12px}}
.hero-line-mask{display:block;overflow:clip;padding-bottom:.12em;margin-bottom:-.12em}
.hero-line{display:block}
.home-page .timeline li+li,.client-list li+li{border-top:1px solid rgba(39,39,53,.09)!important}
html[data-theme=dark] .home-page .timeline li+li,html[data-theme=dark] .client-list li+li{border-top-color:rgba(255,255,255,.1)!important}
.case-drawer-panel{grid-template-rows:1fr!important}
.case-drawer-panel>header{position:absolute!important;right:40px;top:32px;z-index:5;padding:0!important;background:none;border-radius:0!important}
.case-drawer-panel>header .drawer-identity,.case-drawer-panel>header a{display:none!important}
.case-drawer-panel>header button{background:var(--paper)!important;color:var(--ink);box-shadow:0 0 0 1px rgba(120,120,130,.15),0 4px 14px rgba(0,0,0,.08);transition:background-color .2s ease,color .2s ease,scale .125s ease-out}
.case-drawer-panel>header button:hover{background:var(--ink)!important;color:var(--paper)}
.case-drawer-panel>header button svg{pointer-events:none}
.case-drawer-panel iframe{grid-row:1;min-height:0}
.case-header-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.project .project-tags>.award-pill,.case-header-tags>.award-pill{display:inline-flex;align-items:center;flex:0 0 auto;width:max-content;white-space:nowrap;background:#eceaff;color:#5047c8;line-height:1.25;letter-spacing:0;text-transform:none}
html[data-theme=dark] .project .project-tags>.award-pill,html[data-theme=dark] .case-header-tags>.award-pill{background:#35304e;color:#d3cbff}
.case-header-tags>span{padding:8px 12px;border-radius:999px;background:var(--panel);font-size:12px;font-weight:500;line-height:1.25}
.hero .type-reveal,.hero .hero-title-wrap,.hero .hero-foot{filter:none!important;opacity:1!important;translate:none!important;transform:none!important;text-shadow:none!important}
.project>a{position:static!important}
.project .project-info{position:static!important;padding-right:76px!important;padding-bottom:24px!important}
.project .project-info>svg{position:absolute!important;right:22px!important;bottom:22px!important;top:auto!important;left:auto!important;margin:0!important;z-index:2;width:68px!important;height:68px!important;padding:19px!important;stroke-width:2.2;box-shadow:0 2px 4px rgba(0,0,0,.04),0 8px 20px rgba(0,0,0,.06);transition:transform .5s cubic-bezier(.2,1.2,.3,1)!important}
.project .project-info{padding-right:100px!important}
.project:hover .project-info>svg{transform:rotate(-45deg) scale(1.08)}
@media(max-width:760px){.project .project-info>svg{right:18px!important;bottom:18px!important;width:60px!important;height:60px!important;padding:17px!important}.project .project-info{padding-right:86px!important}}
.type-reveal{opacity:0;filter:blur(7px);translate:0 12px;transition:opacity .8s ease-out,filter .8s ease-out,translate .8s cubic-bezier(.2,.7,.2,1)}
.type-reveal.type-is-visible{opacity:1;filter:blur(0);translate:0 0}
body::after{display:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:none!important}
.type-reveal.type-is-visible{filter:none;text-shadow:none}
html[data-theme=dark] h1,html[data-theme=dark] h2,html[data-theme=dark] h3,html[data-theme=dark] p{text-shadow:none}
body::after{content:"";position:fixed;z-index:65;pointer-events:none;inset:auto 0 0;height:140px;background:linear-gradient(to top,rgba(255,255,255,.5),rgba(255,255,255,0));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);mask-image:linear-gradient(to top,#000 10%,transparent 100%);-webkit-mask-image:linear-gradient(to top,#000 10%,transparent 100%)}
body::after{background:transparent}
body.drawer-open::after,.case-body.is-drawer-view::after,body.reel-in-view::after{display:none}
@media(prefers-reduced-motion:reduce){.type-reveal{opacity:1;filter:none;translate:none;transition:none}}
:root{--focus-ring:#5047f8;--surface-shadow:0 0 0 1px rgba(0,0,0,.04),0 2px 4px -1px rgba(0,0,0,.04),0 16px 44px rgba(0,0,0,.04)}
svg{flex-shrink:0}
:where(a,button,input,textarea):focus-visible{outline:3px solid var(--focus-ring);outline-offset:5px}
.project{--card-padding:14px;--media-radius:18px;border:0!important;border-radius:32px!important;padding:var(--card-padding)!important;box-shadow:var(--surface-shadow)}
.project.is-deck-active{box-shadow:0 0 0 1px rgba(0,0,0,.04),0 3px 8px -2px rgba(0,0,0,.04),0 24px 64px rgba(0,0,0,.04)}
.project .project-media{border-radius:var(--media-radius)!important}
.project-info h3,.hero h1{ text-wrap:balance }
.project-result,.hero-foot p{ text-wrap:pretty }
.project .project-info{padding-bottom:14px!important}
body[data-nav-mode=bottom] .app-nav{box-shadow:0 0 0 1px rgba(0,0,0,.04),0 2px 4px -1px rgba(0,0,0,.04),0 12px 32px rgba(0,0,0,.06);border:0}
.hero-actions .hero-action,.hero-contact{padding-left:32px!important;padding-right:26px!important;transition:transform .25s ease-out,box-shadow .25s ease-out,background-color .2s ease-out!important}
.hero-actions .hero-action:active,.hero-contact:active{transform:translateY(1px) scale(.97)!important;box-shadow:none!important}
.nav-primary a:active,.nav-contact:active,.case-drawer-panel header button:active{scale:.97}
.nav-primary a,.nav-contact,.case-drawer-panel header button{transition:background-color .2s ease-out,scale .125s ease-out}
.case-drawer{transition:visibility 0s linear 1.32s}
.case-drawer.is-open{transition-delay:0s}
.timeline li{backface-visibility:hidden}
@media(max-width:760px){.project{--card-padding:12px;--media-radius:20px}.hero-actions{gap:12px}.hero-actions .hero-action,.hero-contact{min-height:60px;padding:18px 24px!important;font-size:16px}}
@media(hover:none){.project:hover .project-media,.project:hover .project-media img{transform:none}.project.is-deck-active:hover{translate:-50% -50%}}
@media(prefers-reduced-motion:reduce){.project.is-launching,.case-drawer-panel{transition-duration:.01ms!important}.case-drawer{transition-delay:0s}.photo-rail-track{animation:none!important}.hero-particle-orb{opacity:.3}.hero-action:hover,.hero-contact:hover{transform:none!important}}
