/* ThreeUI Dark Glass source ff30e28c2781; original motion and layers, portfolio navigation adaptation. */
header .glass-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 52px;
  padding: 0 32px;
  overflow: hidden;
  border: 0;
  border-radius: 32px;
  color: rgba(255, 255, 255, 0.7);
  background: transparent;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  cursor: pointer;
}

header .glass-button::before,
header .glass-button::after {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  content: "";
}

header .glass-button::before {
  background: rgba(23, 23, 23, 0.7);
  box-shadow: inset 2px 4px 16px rgba(255, 255, 255, 0.06);
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
}

header .glass-button::after {
  z-index: 2;
  border: 1px solid rgba(255, 255, 255, 0.25);
  opacity: 0.25;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(170deg, #000, transparent 50%);
  mask-image: linear-gradient(170deg, #000, transparent 50%);
}

 .glass-button__title {
  position: relative;
  z-index: 4;
}

 .glass-button__circle {
  position: absolute;
  z-index: 3;
  top: calc(50% - 100px);
  left: calc(50% - 100px);
  width: 200px;
  height: 200px;
}

 .glass-button__circle::before,
 .glass-button__circle::after {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  content: "";
}

 .glass-button__circle::before {
  background: conic-gradient(from 180deg, rgba(255, 255, 255, 0.012) 180deg, rgba(255, 255, 255, 0.05) 360deg);
  filter: blur(15px);
  animation: section-button-circle 3.6s linear infinite;
  transition: opacity 0.5s;
}

 .glass-button__circle::after {
  inset: 30px;
  background: rgba(255, 255, 255, 0.12);
  opacity: 0;
  filter: blur(5px);
  transform: scale(0.5);
  transition: opacity 0.5s, transform 0.7s;
  -webkit-mask-image: radial-gradient(50% 50%, #000, rgba(23, 23, 23, 0));
  mask-image: radial-gradient(50% 50%, #000, rgba(23, 23, 23, 0));
}

header .glass-button:hover  .glass-button__circle::before {
  opacity: 0;
}

header .glass-button:hover  .glass-button__circle::after {
  opacity: 1;
  transform: scale(1);
}

header .glass-button:active {
  transform: scale(0.98);
}

@keyframes section-button-circle {
  0% { transform: translate(0) rotate(0); }
  25% { transform: translateX(-30px) rotate(90deg); }
  50% { transform: translate(0) rotate(180deg); }
  75% { transform: translateX(30px) rotate(270deg); }
  100% { transform: translate(0) rotate(360deg); }
}


header>nav{gap:7px}
header .glass-button{height:44px;padding:0 19px;border-radius:999px;box-sizing:border-box;white-space:nowrap;letter-spacing:0;font-family:inherit;font-size:13px;font-weight:500;color:#bfc8cc;flex-shrink:0;text-decoration:none;transition:color .25s,transform .2s;isolation:isolate}
header .glass-button::before{background:rgba(39,46,50,.62);box-shadow:inset 2px 4px 16px rgba(204,221,230,.045)}
header .glass-button::after{width:auto;height:auto;bottom:0;background:transparent;transform:none;border-color:rgba(194,211,220,.35);transition:opacity .25s}
header .glass-button:hover,header .glass-button[aria-current=page]{color:#edf2f4}
header .glass-button[aria-current=page]::before{background:rgba(74,91,101,.4);box-shadow:inset 0 1px 0 #c5d9e51c}
header .glass-button[aria-current=page]::after{opacity:.7}
header .glass-button:focus-visible{outline:2px solid #b9c9d2;outline-offset:4px}
header .glass-button__title{display:block;width:auto;height:auto;background:none;transform:none;margin:0}
header .glass-button__circle{display:block;margin:0;background:none;pointer-events:none;transform:none}
header .contact-link.glass-button{display:inline-flex;padding:0 22px;font-size:12px}
header .menu-toggle.glass-button{width:44px;height:44px;padding:0;border:0;border-radius:50%;display:inline-flex;gap:0}
header .menu-toggle .glass-menu-icon{display:flex;flex-direction:column;gap:5px;width:18px;height:auto;background:none;transform:none}
header .menu-toggle .glass-menu-icon i{display:block;width:18px;height:1px;background:currentColor;transition:transform .25s}
header .menu-toggle[aria-expanded=true] .glass-menu-icon i:first-child{transform:translateY(3px) rotate(45deg)}
header .menu-toggle[aria-expanded=true] .glass-menu-icon i:last-child{transform:translateY(-3px) rotate(-45deg)}
header .header-actions{gap:10px}
@media(max-width:1150px){header .glass-button{padding:0 13px}header>nav{gap:4px}}
@media(max-width:850px){header>nav{display:none}}
@media(max-width:420px){header .contact-link.glass-button{padding:0 14px;font-size:11px;height:40px}header .header-actions{gap:7px}}
@media(prefers-reduced-motion:reduce){header .glass-button__circle::before{animation:none}}
header .contact-link.glass-button .glass-button__title{font-size:12px;font-weight:500;line-height:1.4}

/* Let the animated menu surface reveal the page rather than an instant opaque backdrop. */
#full-menu::backdrop{background:transparent;backdrop-filter:none}
#full-menu{overscroll-behavior:contain}
#full-menu .large-nav a{will-change:auto}
