/* custom.css - interactive helpers & small overrides */

/* mobile opened menu */
.menu-opened .main-navigation .menu-items{
  display:flex !important;
  flex-direction:column;
  position:absolute;
  right:28px;
  top:72px;
  background:rgba(0,0,0,0.6);
  padding:16px 18px;
  border-radius:10px;
  gap:12px;
  box-shadow:0 12px 40px rgba(0,0,0,0.6);
}

/* small focus outline */
.menu-items a:focus{ outline:2px solid rgba(255,255,255,0.06); outline-offset:6px; }

/* chars spans (JS will wrap) */
.hero-title .char{ display:inline-block; transform-origin: left top; will-change: transform, opacity; }

/* subtle breathing */
.hero-title .char.breathe{
  transform-origin:center;
}

/* tiny helper for muted text */
.muted{ color:var(--muted); }

/* ensure footer icons align */
.footer-social img{ opacity:0.95; filter:grayscale(1) brightness(.9); }