/* Company signature and portal/contact actions. The sidebar can scroll on short screens. */
.sidebar {
  overflow-y: auto;
  overscroll-behavior: contain;
  max-height: 100dvh;
  padding-bottom: calc(20px + env(safe-area-inset-bottom));
}
.sidebar > * { flex-shrink: 0; }
.sidebar .brand { margin-bottom: 24px; }
.sidebar nav { margin-top: 16px; }
.sidebar-note { margin: 24px 12px 12px; padding-top: 18px; }
.sidebar-company {
  display: block;
  color: #bdbdbd;
  font: 700 15px/1.3 var(--display-font);
  letter-spacing: .065em;
  text-transform: uppercase;
}
.sound-lines { margin-top: 14px; height: 42px; }
.gigwell-credit {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  margin-top: 7px;
  color: #aaa;
  font: 9px/1.5 Arial, Helvetica, sans-serif;
}
.gigwell-credit > span { white-space: nowrap; flex-shrink: 0; }
.gigwell-credit img { width: 80px; height: auto; flex-shrink: 0; }
.gigwell-credit:hover { color: #fff; }
.gigwell-credit:hover > span { text-decoration: underline; text-underline-offset: 3px; }
.sidebar-bottom { margin-top: auto; padding-top: 14px; }
.portal-link { padding: 16px 0; gap: 9px; }
.portal-link > span:nth-child(2) { min-width: 0; }
.portal-link strong {
  display: block;
  font: 700 16px/1.2 var(--display-font);
  letter-spacing: .025em;
  text-transform: uppercase;
}
.portal-link small { font-size: 10px; line-height: 1.5; margin-top: 5px; }
.portal-icon { flex-shrink: 0; }
.portal-arrow { flex-shrink: 0; color: #aaa; }
.sidebar-contact {
  display: flex;
  width: 152px;
  max-width: 100%;
  margin-inline: auto;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 44px;
  margin-top: 5px;
  padding: 11px 12px;
  border: 1px solid #484848;
  border-radius: 6px;
  background: #2b2b2b;
  color: #e4e4e4;
  font: 700 16px/1.25 var(--display-font);
  letter-spacing: .04em;
  text-transform: uppercase;
}
.sidebar-contact:hover { background: #3a3a3a; border-color: #666; color: #fff; }
.contact-icon { font: 18px/1 Arial, sans-serif; }
.sidebar-socials {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 12px;
}
.sidebar-socials > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid #484848;
  border-radius: 6px;
  background: #2b2b2b;
  color: #d8d8d8;
}
.sidebar-socials > a:hover { background: #3a3a3a; border-color: #777; color: #fff; }
.sidebar-socials > a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.sidebar-socials svg, .sidebar-socials img { display: block; flex-shrink: 0; }
@media (max-height: 800px) {
  .sidebar { padding-top: 24px; }
  .sidebar .brand { margin-bottom: 16px; }
  .sidebar .brand-logo { width: 138px; }
  .sidebar nav { margin-top: 12px; }
  .sidebar-note { margin-top: 20px; margin-bottom: 10px; padding-top: 16px; }
  .sound-lines { margin-top: 8px; height: 35px; }
  .sidebar-bottom { padding-top: 12px; }
}
