.ig-legal-hero {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  min-height: 250px;
  padding-block: clamp(2rem, 5vw, 3.5rem);
  background-image: linear-gradient(to left, #ffd600, #ffd500);
}

.ig-legal-hero > .container {
  position: relative;
  z-index: 1;
}

.ig-legal-hero__oval {
  position: absolute;
  right: 0;
  bottom: -28px;
  width: 520px;
  height: 215px;
  max-width: 55%;
  background-image: linear-gradient(261deg, #ffd600, #ffc302);
  border-radius: 250px 0 0 0;
  pointer-events: none;
}

.ig-legal-hero__title {
  font-size: clamp(1.75rem, 3vw + 1rem, 46px);
  color: var(--black, #323232);
}

.ig-legal-hero__meta {
  font-size: .9375rem;
  color: var(--black, #323232);
}

.ig-legal {
  padding-block: clamp(2rem, 5vw, 4rem);
}

.ig-legal__toc-toggle {
  width: 100%;
  padding: .75rem 1rem;
  font-weight: 700;
  text-align: left;
  color: var(--black, #323232);
  background-color: var(--lightGray, #f8f8f8);
  border: 1px solid var(--very-light-gray, #e8e8e8);
  border-radius: 6px;
}

.ig-legal__toc-title {
  font-size: clamp(1.25rem, 1vw + 1rem, 34px);
  color: var(--fontGray, #808080);
}

.ig-legal__search {
  position: relative;
  margin-bottom: 1rem;
}

.ig-legal__search-input {
  width: 100%;
  padding: .5rem 4.25rem .5rem .875rem;
  font-size: .9375rem;
  color: var(--black, #323232);
  background-color: #fff;
  border: 1px solid var(--very-light-gray, #e8e8e8);
  border-radius: 6px;
}

.ig-legal__search-input:focus {
  outline: none;
  border-color: var(--gold, #f9c51f);
}

.ig-legal__search-input::-webkit-search-cancel-button {
  cursor: pointer;
}

.ig-legal__search-icon {
  position: absolute;
  top: 50%;
  right: .75rem;
  transform: translateY(-50%);
  color: var(--fontGray, #808080);
  pointer-events: none;
}

.ig-legal__search-empty {
  margin: 0 0 1rem;
  font-size: .875rem;
  color: var(--fontGray, #808080);
}

.ig-legal__toc-list {
  margin: 0;
  padding-left: 2.25rem;
}

.ig-legal__toc-list li {
  margin-bottom: .5rem;
}

.ig-legal__toc-list a {
  font-family: Roboto, Arial, sans-serif;
  font-size: 18px;
  line-height: 1.5;
  color: #808080;
  text-decoration: none;
}

.ig-legal__toc-list a:hover,
.ig-legal__toc-list a:focus-visible {
  color: var(--black, #323232);
}

.ig-legal__toc-list li.is-active > a {
  font-weight: 700;
  color: #323232;
}

.ig-legal__intro {
  margin-bottom: 2rem;
  color: #323232;
  font-family: 'Roboto Light', Arial, sans-serif;
  font-weight: 300;
  font-size: 16px;
  line-height: 200%;
  text-align: justify;
  text-justify: inter-word;
}

.ig-legal__sections {
  margin: 0;
  padding-left: 1.25rem;
}

.ig-legal__section {
  margin-bottom: 2.5rem;
  scroll-margin-top: calc(var(--ig-nav-height, 70px) + 1.5rem);
}

.ig-legal__section-title {
  font-size: clamp(1.125rem, 1vw + .75rem, 24px);
  font-weight: 700;
  margin-bottom: 1rem;
  color: var(--black, #323232);
}

.ig-legal__section-body {
  color: #323232;
  font-family: 'Roboto Light', Arial, sans-serif;
  font-weight: 300;
  font-size: 16px;
  line-height: 200%;
  text-align: justify;
  text-justify: inter-word;
}

.ig-legal__section-body ol,
.ig-legal__section-body ul {
  padding-left: 1.25rem;
}

.ig-legal__section-body li {
  margin-bottom: .625rem;
}

.ig-legal__section-body .pg-sub {
  padding-left: 1.25rem;
}

.ig-legal__section-body p.pg-indent {
  padding-left: 2.5rem;
}

.ig-legal__section-body ol.pg-indent,
.ig-legal__section-body ul.pg-indent {
  margin-bottom: 0;
  padding-left: 3.75rem;
}

.ig-legal__section-body .pg-plain {
  list-style: none;
}

.ig-legal__section-body a {
  color: var(--water-blue, #1886de);
}

.ig-legal__section-body .font-waterblue {
  font-weight: 700;
  color: #1886de;
}

.ig-legal__section-body .font-gold {
  color: #ffc500;
}

.ig-legal__note {
  margin-bottom: 2rem;
  font-size: 16px;
  font-weight: 300;
  color: #323232;
}

.ig-legal__contact {
  padding-top: 1.5rem;
  border-top: 1px solid var(--very-light-gray, #e8e8e8);
  color: #323232;
  font-family: 'Roboto Light', Arial, sans-serif;
  font-weight: 300;
  font-size: 16px;
  line-height: 200%;
}

@media (min-width: 992px) {
  .ig-legal__toc {
    position: sticky;
    top: calc(var(--ig-nav-height, 70px) + 1.5rem);
    max-height: calc(100vh - var(--ig-nav-height, 70px) - 3rem);
    overflow-y: auto;
    padding-right: .5rem;
    scrollbar-width: thin;
    scrollbar-color: #c4c4c4 transparent;
  }

  .ig-legal__toc::-webkit-scrollbar {
    width: 6px;
  }

  .ig-legal__toc::-webkit-scrollbar-track {
    background: var(--lightGray, #f8f8f8);
    border-radius: 3px;
  }

  .ig-legal__toc::-webkit-scrollbar-thumb {
    background-color: #c4c4c4;
    border-radius: 3px;
  }

  .ig-legal__toc::-webkit-scrollbar-thumb:hover {
    background-color: var(--gray, #aaa);
  }
}
