.navbar{left:auto;right:50%;transform:translateX(50%) translateY(0) scale(1);transform-origin:center top;opacity:1;visibility:visible;transition:opacity 220ms cubic-bezier(.23,1,.32,1) 90ms,transform 300ms cubic-bezier(.23,1,.32,1) 90ms,visibility 0s linear 0s;gap:18px;will-change:transform,opacity}
.navbar.is-scrolled{right:50%;transform:translateX(50%) translateY(-12px) scale(.975);opacity:0;visibility:hidden;pointer-events:none;transition-delay:0s,0s,220ms}
.nav-avatar{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;padding:11px 16px;border-radius:999px;background:#59458c;color:#fff;font-size:13px;font-weight:600;border:1px solid #ffffff90;box-shadow:inset 0 1px 1px #ffffff45,0 4px 14px #59458c20}
.nav-avatar svg{width:14px;height:14px}
.nav-avatar:hover{background:#6a54a0}
@media(max-width:900px){.navbar{gap:12px}.navbar nav{gap:14px}.nav-avatar{font-size:12px;padding:10px 12px}.navbar .nav-contact{display:none}}
@media(max-width:650px){.navbar nav,.navbar .nav-divider{display:none}.navbar .mobile-menu{display:block}.navbar{gap:12px;padding:8px 12px}.navbar .pressure{width:66px;font-size:26px}}
@media(prefers-reduced-motion:reduce){.navbar{transition:none}}
.section-sidebar{position:fixed;z-index:20;right:20px;top:50%;transform:translateY(-50%) translateX(20px) scale(.96);transform-origin:right center;display:flex;flex-direction:column;justify-content:space-between;gap:0;width:62px;height:390px;padding:8px;border-radius:26px;opacity:0;visibility:hidden;pointer-events:none;overflow:hidden;filter:blur(3px);transition:width 280ms cubic-bezier(.32,.72,0,1),opacity 200ms cubic-bezier(.23,1,.32,1),transform 320ms cubic-bezier(.32,.72,0,1),filter 220ms ease,visibility 0s linear 320ms;background:rgba(245,245,255,.85);will-change:transform,opacity,width}
.section-sidebar.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(-50%) translateX(0) scale(1);filter:blur(0);transition-delay:0s,90ms,90ms,90ms,0s}
.section-sidebar:is(:hover,:focus-within){width:196px}
.section-sidebar a{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;border-radius:18px;padding:11px;color:#55506b;overflow:hidden;white-space:nowrap;flex-shrink:0;transition:background 160ms ease,color 160ms ease}
.section-sidebar:is(:hover,:focus-within) a{justify-content:flex-start}
.section-sidebar:not(:hover):not(:focus-within){align-items:center}
.section-sidebar:not(:hover):not(:focus-within) a{width:44px;height:44px;padding:11px;margin:0;justify-content:center}
.section-sidebar:not(:hover):not(:focus-within) a svg{position:absolute;left:50%;top:50%;margin:0;transform:translate(-50%,-50%);display:block}
.section-sidebar a svg{width:22px;height:22px;flex-shrink:0}
.section-sidebar a span{opacity:0;transform:translateX(7px);transition:opacity 140ms ease,transform 180ms cubic-bezier(.23,1,.32,1);font-size:13px}
.section-sidebar:is(:hover,:focus-within) a span{opacity:1;transform:translateX(0);transition-delay:70ms}
.section-sidebar a:hover{background:#e5ddf3;color:#463465}
.section-sidebar .sidebar-contact{background:#59458c;color:white}
.section-sidebar .sidebar-contact:hover{background:#6a54a0;color:white}
.section-sidebar .sidebar-contact svg{display:block;visibility:visible;opacity:1;color:#fff;stroke:#fff;z-index:1}
.section-sidebar:not(:hover):not(:focus-within) .sidebar-contact{width:44px;align-self:center;justify-content:center;padding-inline:11px}
@media(max-width:650px){.section-sidebar{right:8px;height:350px}}
@media(prefers-reduced-motion:reduce){.section-sidebar,.section-sidebar a,.section-sidebar a span{transition:none;filter:none}}
.navbar .pressure span{transition:transform 120ms ease-out;transform-origin:center bottom;will-change:transform}
.navbar .pressure{width:84px;justify-content:space-between;letter-spacing:-.025em;font-weight:400}

.navbar .nav-avatar{background:none;border:0;box-shadow:none;color:#555c6c;padding:0;font-weight:400;font-size:13px}
.navbar .nav-avatar svg{display:none}
.navbar .nav-avatar:hover{background:none;color:#6555a6}
.navbar .nav-contact{background:#59458c;color:#fff;border-color:#ffffff90;white-space:nowrap}
.navbar .nav-contact:hover{background:#6a54a0;color:#fff}
.mobile-nav-glyph{display:none;font-style:normal}
.mobile-wordmark-glyph{display:none;font-style:normal}
.mobile-work{display:none}
.mobile-about{display:none}
.desktop-nav-arrow{display:inline-flex;font-style:normal}
.desktop-nav-arrow svg{width:14px;height:14px}
@media(max-width:900px){.navbar .nav-contact{display:flex}.navbar nav{gap:10px}.navbar{gap:12px}}
@media(max-width:650px){.navbar .nav-avatar{font-size:11px}.navbar .nav-contact{font-size:11px;padding:9px 11px}.navbar{gap:9px}}

/* Mobile navigation: one clear primary action, with the remaining links in the drawer. */
@media(max-width:650px){
 .navbar{top:12px;right:12px;left:12px;width:auto;max-width:none;transform:none;justify-content:space-between;gap:0;padding:6px 7px;border-radius:27px;transform-origin:center top}
 .navbar.is-scrolled{right:12px;transform:translateY(0) scale(1);opacity:1;visibility:visible;pointer-events:auto;transition:background 180ms ease-out,box-shadow 180ms ease-out}
 .navbar nav,.navbar .nav-divider{display:none}
 .navbar .pressure{display:grid;width:40px;height:40px;place-items:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.76);border-radius:50%;background:rgba(255,255,255,.34);color:#625b78;box-shadow:inset 0 1px 1px rgba(255,255,255,.7)}
 .navbar .pressure>span{display:none}
 .navbar .mobile-wordmark-glyph{display:grid;place-items:center}
 .navbar .mobile-wordmark-glyph svg{display:block;width:19px;height:19px}
 .navbar .mobile-about,.navbar .mobile-work,.navbar .nav-avatar,.navbar .nav-contact{display:grid;width:40px;height:40px;min-height:0;margin:0;padding:0;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.76);background:rgba(255,255,255,.34);color:#625b78;box-shadow:inset 0 1px 1px rgba(255,255,255,.7);transition:transform 140ms cubic-bezier(.23,1,.32,1),background 180ms ease-out}
 .navbar .mobile-about{margin-left:0}
 .navbar .mobile-about svg,.navbar .mobile-work svg{display:block;width:19px;height:19px}
 .navbar .nav-contact{background:#59458c;color:#fff;border-color:rgba(255,255,255,.58)}
 .navbar .nav-avatar>span,.navbar .nav-contact>span,.navbar .desktop-nav-arrow{display:none}
 .navbar .mobile-nav-glyph{display:grid;place-items:center}
 .navbar .mobile-nav-glyph svg{display:block;width:19px;height:19px;stroke-width:1.55}
 .navbar .nav-avatar:hover{background:rgba(255,255,255,.58);color:#59458c}
 .navbar .nav-contact:active{transform:scale(.96)}
 .navbar .mobile-menu{display:grid;width:40px;height:40px;margin:0;padding:0;place-items:center;border:1px solid rgba(255,255,255,.84);border-radius:50%;background:rgba(255,255,255,.42);color:#55546c;box-shadow:inset 0 1px 1px rgba(255,255,255,.72);cursor:pointer;transition:transform 140ms cubic-bezier(.23,1,.32,1),background 180ms ease-out}
 .navbar .mobile-menu svg{display:block;width:21px;height:21px;stroke-width:1.65}
 .navbar .mobile-menu:active{transform:scale(.95)}
 .navbar .mobile-menu:focus-visible{outline:2px solid #6955a0;outline-offset:3px}
 .section-sidebar{display:none!important}
}
@media(max-width:360px){
 .navbar{gap:0;padding:5px}
 .navbar .pressure,.navbar .mobile-about,.navbar .mobile-work,.navbar .nav-avatar,.navbar .nav-contact,.navbar .mobile-menu{width:38px;height:38px}
}
