/* KCVERSE v0.9.90 source-level drawer */

html.kc-drawer-open,
html.kc-drawer-open body {
  overflow: hidden !important;
}

.site-header {
  align-items: center !important;
}

.site-header .header-actions {
  margin-left: auto !important;
}

.site-header #menuButton {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;
  color: #174d3a !important;

  font-family: "Prompt", sans-serif !important;
  font-size: 30px !important;
  font-weight: 600 !important;
  line-height: 1 !important;

  cursor: pointer !important;
  position: relative !important;
  z-index: 1202 !important;
}

.kc-drawer-overlay {
  position: fixed;
  inset: 0;
  z-index: 1199;

  background: rgba(6, 22, 16, 0.38);

  opacity: 0;
  visibility: hidden;
  pointer-events: none;

  transition:
    opacity 220ms ease,
    visibility 220ms ease;
}

.kc-drawer-overlay.open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#mobileNav.kc-drawer {
  display: flex !important;
  flex-direction: column !important;

  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;

  width: min(420px, 86vw) !important;
  height: 100dvh !important;

  z-index: 1200 !important;

  padding: 76px 24px 22px !important;

  background: #ffffff !important;
  color: #14271f !important;

  box-shadow: -24px 0 60px rgba(9, 30, 22, 0.18) !important;

  overflow-y: auto !important;

  transform: translateX(105%) !important;
  visibility: visible !important;
  opacity: 1 !important;

  transition: transform 260ms ease !important;
}

#mobileNav.kc-drawer.open {
  transform: translateX(0) !important;
}

.kc-drawer-links {
  display: grid;
  border-top: 1px solid #e1e8e3;
}

.kc-drawer-links a {
  display: flex !important;
  align-items: center !important;

  min-height: 56px !important;
  padding: 0 4px !important;

  border-bottom: 1px solid #e1e8e3 !important;

  color: #14271f !important;
  background: transparent !important;

  font-family: "Prompt", sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;

  text-decoration: none !important;
}

.kc-drawer-account {
  margin-top: auto;
  padding-top: 20px;
}

.kc-drawer-account > button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  min-height: 44px !important;
  padding: 10px 16px !important;

  border: 1px solid #174d3a !important;
  border-radius: 999px !important;

  color: #ffffff !important;
  background: #174d3a !important;

  font-family: "Prompt", sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;

  cursor: pointer !important;
}

@media (max-width: 620px) {
  #mobileNav.kc-drawer {
    width: min(360px, 90vw) !important;
    padding: 70px 18px 18px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #mobileNav.kc-drawer,
  .kc-drawer-overlay {
    transition: none !important;
  }
}


/* KCVERSE v0.9.95 no-JS drawer control */
#mobileNav.kc-drawer:target {
  transform: translateX(0) !important;
}

.kc-drawer-close {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  position: absolute !important;
  top: 12px !important;
  right: 20px !important;

  width: 44px !important;
  height: 44px !important;

  color: #174d3a !important;
  background: transparent !important;
  border: 0 !important;

  font-family: "Prompt", sans-serif !important;
  font-size: 32px !important;
  line-height: 1 !important;
  text-decoration: none !important;

  z-index: 1203 !important;
}

#mobileNav.kc-drawer:target + .kc-drawer-overlay {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

.kc-drawer-overlay {
  display: block !important;
  text-decoration: none !important;
}


/* KCVERSE v0.9.96 canonical menu button */
.site-header #menuButton {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;

  align-items: center !important;
  justify-content: center !important;

  width: 44px !important;
  height: 44px !important;
  margin-left: auto !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;
  color: #174d3a !important;

  font: 600 30px/1 "Prompt", sans-serif !important;
  cursor: pointer !important;

  position: relative !important;
  z-index: 1202 !important;
}


/* KCVERSE v0.9.99 drawer account state */
.kc-drawer-profile {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  padding: 12px;
  border: 1px solid #e1e8e3;
  border-radius: 16px;
  background: #f7f9f7;
}

.kc-drawer-profile[hidden],
.kc-drawer-logout[hidden] {
  display: none !important;
}

.kc-drawer-avatar {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  border-radius: 50%;
  background: #174d3a;
  color: #ffffff;
  font: 700 19px/1 "Prompt", sans-serif;
}

.kc-drawer-profile-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.kc-drawer-profile-copy strong {
  overflow: hidden;
  color: #14271f;
  font: 700 16px/1.3 "Prompt", sans-serif;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.kc-drawer-profile-copy span {
  color: #607269;
  font: 500 13px/1.3 "Prompt", sans-serif;
}

.kc-drawer-logout {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  margin-top: 12px;
  padding: 10px 16px;
  border: 1px solid #d7dfda;
  border-radius: 999px;
  background: #ffffff;
  color: #8f2929;
  font: 700 15px/1.2 "Prompt", sans-serif;
  cursor: pointer;
}

/* KCVERSE v0.9.100 profile card layout */
#mobileNav.kc-drawer .kc-drawer-account {
  display: contents !important;
}

#mobileNav.kc-drawer .kc-drawer-profile {
  order: -1 !important;
  margin: 0 0 18px !important;
  cursor: pointer !important;
}

#mobileNav.kc-drawer .kc-drawer-links {
  order: 0 !important;
}

#mobileNav.kc-drawer #accountButton,
#mobileNav.kc-drawer #libAccount {
  order: 1 !important;
  margin-top: auto !important;
}

#mobileNav.kc-drawer .kc-drawer-logout {
  order: 2 !important;
  margin-top: auto !important;
}

#mobileNav.kc-drawer #accountButton[hidden],
#mobileNav.kc-drawer #libAccount[hidden] {
  display: none !important;
}

#mobileNav.kc-drawer .kc-drawer-profile:focus-visible {
  outline: 3px solid rgba(185, 152, 78, 0.42);
  outline-offset: 2px;
}

/* KCVERSE v0.9.101 remove duplicate account button */
#mobileNav .kc-drawer-profile:not([hidden]) ~ #accountButton,
#mobileNav .kc-drawer-profile:not([hidden]) ~ #libAccount,
#mobileNav #accountButton[hidden],
#mobileNav #libAccount[hidden] {
  display: none !important;
}


/* KCVERSE v0.9.137 adaptive menu color */
.site-header #menuButton{color:#fff!important;text-shadow:0 1px 5px rgba(0,0,0,.48)!important;transition:color .28s ease,text-shadow .28s ease!important}
.site-header.is-scrolled #menuButton{color:#174d3a!important;text-shadow:none!important}
