.search-console {
  width: 216px;
  height: fit-content;
  min-width: 216px;
  position: -webkit-sticky;
  position: sticky; 
  top: 132px;
}

.search-console__header {
  font-family: ExtraBold;
  font-style: normal;
  font-weight: 800;
  font-size: 18px;
  line-height: 28px;
  color: #222222;
  letter-spacing: -0.5px;
  margin-bottom: 16px;
}

.search-console__body {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #EBEBEB;
  border-left: 1px solid #EBEBEB;
  text-decoration: none;
}

.search-console__body > div, 
.search-console__body > a {
  display: flex;
  width: 43px;
  height: 43px;
  align-items: center;
  justify-content: center;
  border-top: 1px solid #EBEBEB;
  border-right: 1px solid #EBEBEB;
  font-size: 14px;
  line-height: 20px;
  color: #040505;
  cursor: pointer;
  transition: color .2s linear, background-color .2s linear;
  text-decoration: none;
}

.search-console__body > .search-console__letter:not(.is-disabled):hover {
  color: #0006FF;
}

.search-console__body > .search-console__letter.is-active {
  background-color: #FFD400;
}

.search-console__body > .search-console__letter.is-disabled {
  color: #ADADAD;
  pointer-events: none;
}

.search-console__body > .search-button {
  flex: auto;
  background-color: #040505;
  color: #FFFFFF;
}

.search-console__body > .search-button .is-inactive {
  display: none;
}

@media screen and (max-width: 1250px) {
  .search-console {
    display: none;
  }
}  
html {
  scroll-behavior: smooth;
}

.page {
  overflow: visible;
  background-color: #FFFFFF;
  scroll-behavior: smooth;
}

.glossary-wrapper {
  margin-top: 64px;
  margin-bottom: 110px;
  height: fit-content;
  display: flex;
}

.glossary {
  margin-left: 96px;
}

/* glossary-header */

.glossary-header {
  margin-bottom: 40px;
  width: 660px;
}

.glossary-header h1 {
  font-family: ExtraBold;
  font-weight: 800;
  font-size: 56px;
  line-height: 56px;
  letter-spacing: -2px;
  font-feature-settings: 'liga' off;
  color: #040505;
  margin-bottom: 24px;
}

.glossary-header p {
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
  margin-bottom: 72px;
  color: #222222;
  width: 532px;
}  

.glossary-header__input {
  position: relative;
}

.glossary-header__input-icon {
  position: absolute;
  top: 12px;
  left: 12px; 
}

.glossary-header__input input {
  width: 100%;
  height: 48px;
  font-family: Bold;
  font-weight: 800;
  padding: 0 12px 0 48px;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.5px;
  transition: .2s;
  border: 1px solid #E5E5E5;
  box-sizing: border-box;
  border-radius: 6px;
}

.glossary-header__input input::placeholder { 
  color: #ADADAD; 
}

/* glossary-body -> letter-block */

.glossary-body {
  width: 660px;
}

.glossary-body .letter-block:not(:first-of-type) {
  margin-top: 72px;
}

.letter-block {
  position: relative;
}

.letter-block__anchor {
  position: absolute;
  z-index: -999;
  visibility: hidden;
  width: 0;
  height: 0;
  top: -132px;
}

.letter-block__letter {
  font-family: ExtraBold;
  font-weight: 800;
  font-size: 48px;
  line-height: 48px;
  letter-spacing: -1.5px;
  color: #040505;
  position: sticky; 
  top: 68px;
  bottom: 84px;
  z-index: 1;
}

.letter-block__letter div:first-child {
  background-color: #FFFFFF;
}

.letter-block__letter .blur {
  height: 24px;
  background-image: linear-gradient(#ffffff, #ffffffd9, #ffffff82);
}

.letter-block__article:not(.letter-block__letter + .letter-block__article) {
  margin-top: 24px;
}

div.letter-block__article:not(:last-of-type) {
  border-bottom: 1px solid #F0F0F0;
}

.letter-block__article-title {
  font-family: ExtraBold;
  font-weight: 800;
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
  color: #0006FF;
  cursor: pointer;
  transition: color .2s linear;
}

.letter-block__article-title:hover {
  color: #010864;
}

.letter-block__article-description {
  margin: 8px 0 24px 0;
  font-family: Medium;
  font-weight: 400;
  font-size: 16px;
  line-height: 28px;
  letter-spacing: -0.2px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -moz-box;
  -moz-box-orient: vertical;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  line-clamp: 3;
  box-orient: vertical;
}

.found-text {
  background-color: #FFD400; 
}

@media screen and (max-width: 1250px) {
  .glossary {
    margin-left: 0;
  }

  .glossary-header__input {
    display: none;
  }

  .glossary-wrapper {
    margin-top: 48px;
    margin-bottom: 50px;
  }

  .letter-block__anchor {
    display: none;
  }

  .glossary-header{
    margin-bottom: 32px;
  }

  .glossary-header h1{
    font-size: 32px;
    line-height: 36px;
    letter-spacing: -1px;
  }

  .glossary-header p{
    margin-bottom: 32px;
  }
  
  .glossary-header__input input {
    font-size: 14px;
  }

  .glossary-header, 
  .glossary-header p,  
  .glossary-body {
    width: 100%;
  }

  .glossary-body .letter-block:not(:first-of-type) {
    margin-top: 44px;
  }

  .letter-block__letter {
    font-size: 28px;
    line-height: 32px;
    letter-spacing: -1px;
  }

  .letter-block__letter .blur {
    height: 16px;
    background-image: linear-gradient(#ffffff, #ffffffd9, #ffffff82);
  }

  .letter-block__article-description {
    margin-bottom: 20px;
  }
}  
