Skip to content
Snippets Groups Projects
accordion-item.scss 4.32 KiB
Newer Older
  • Learn to ignore specific revisions
  • Tuukka Turu's avatar
    Tuukka Turu committed
    :host {
      display: block;
    }
    
    .hy-accordion__item {
      margin-bottom: 1rem;
    
      &__is-open {
    
    Tuukka Turu's avatar
    Tuukka Turu committed
        border-bottom: 2px solid var(--grayscale-medium);
        border-left: 1px solid var(--grayscale-medium);
        border-right: 1px solid var(--grayscale-medium);
        border-top: 2px solid var(--grayscale-medium);
        box-shadow: 0px 2px 12px 1px rgba(#000000, 10%);
    
    Tuukka Turu's avatar
    Tuukka Turu committed
    
    
    Tuukka Turu's avatar
    Tuukka Turu committed
        .hy-accordion--heading {
          margin: 0 auto;
    
    Tuukka Turu's avatar
    Tuukka Turu committed
    
    
    Tuukka Turu's avatar
    Tuukka Turu committed
          .hy-accordion--heading__icon {
            transform: rotateX(180deg);
          }
    
    .hy-accordion__item.mini {
      margin-bottom: 1rem;
      margin-top: 1rem;
    }
    .hy-accordion__item__is-open.mini {
      margin-bottom: 0;
      margin-top: 0;
    
      .hy-accordion__item--container {
        border-bottom: 1px solid var(--grayscale-medium-dark);
        border-top: 1px solid var(--grayscale-medium-dark);
        padding-top: 16px;
        padding-bottom: 32px;
        margin-top: -1px;
        transition: padding 0.5s ease-in-out;
    
        @include breakpoint($narrow) {
          padding-top: 28px;
          padding-bottom: 30px;
        }
        @include breakpoint($wide) {
          padding-top: 32px;
          padding-bottom: 40px;
        }
      }
    }
    
    .hy-accordion__item.hy-accordion__item__is-open.mini {
      background-color: var(--grayscale-white);
      border: none;
      box-shadow: 0 -10px 10px -10px rgba(0, 49, 70, 0.05);
    }
    
    
    Tuukka Turu's avatar
    Tuukka Turu committed
    .hy-accordion--heading {
      justify-content: flex-start;
    
    Tuukka Turu's avatar
    Tuukka Turu committed
      letter-spacing: -0.69px;
      line-height: 28px;
    
    Tuukka Turu's avatar
    Tuukka Turu committed
      margin: 0 auto;
    
      transition: all 0.25s ease-in-out;
    
    Tuukka Turu's avatar
    Tuukka Turu committed
      width: 100%;
    
      .hy-accordion__link {
        text-decoration: none;
    
        &:hover {
          text-decoration: none;
        }
    
    Tuukka Turu's avatar
    Tuukka Turu committed
      .hy-accordion__button {
    
        align-items: flex-start;
    
        border: none;
    
        background-color: var(--grayscale-background-box);
    
    Tuukka Turu's avatar
    Tuukka Turu committed
        color: var(--brand-main-nearly-black);
    
        display: flex;
    
    Tuukka Turu's avatar
    Tuukka Turu committed
        flex-direction: row;
        font-family: var(--main-font-family);
    
    Tuukka Turu's avatar
    Tuukka Turu committed
        height: 100%;
        justify-content: flex-start;
    
        letter-spacing: -0.7px;
        padding: 1.125rem 1rem 1.125rem 1rem;
    
        transition: all 0.35s ease-in;
    
        width: 100%;
    
    Tuukka Turu's avatar
    Tuukka Turu committed
    
    
        @include breakpoint($narrow) {
          @include font-size(26px, 32px);
          letter-spacing: -0.8px;
          padding: 1rem 2rem 1rem 1.25rem;
    
    Tuukka Turu's avatar
    Tuukka Turu committed
        }
    
        &[aria-expanded='true'] {
    
    Tuukka Turu's avatar
    Tuukka Turu committed
          background: none;
    
    
        span {
          text-align: left;
        }
    
    
        // When accordion item is open.
        &[aria-expanded='true'] {
          position: relative;
    
          &:after {
            background: linear-gradient(to right, var(--grayscale-medium), var(--grayscale-white));
            bottom: 0;
            content: '';
            height: 2px;
            left: 0;
            position: absolute;
            width: 100%;
          }
        }
    
    Tuukka Turu's avatar
    Tuukka Turu committed
      }
    
      .hy-accordion--heading__icon {
    
        margin-top: 4px;
    
    Tuukka Turu's avatar
    Tuukka Turu committed
        z-index: 0;
    
        @include breakpoint($narrow) {
          margin-right: 1rem;
    
          margin-top: 6px;
    
    Tuukka Turu's avatar
    Tuukka Turu committed
        svg {
          fill: var(--brand-main);
    
    .hy-accordion--heading.mini {
      // accordion clickable header
      .hy-accordion__button {
        @include font-size(18px, 22px);
        background-color: var(--grayscale-white);
        color: var(--link-blue);
        letter-spacing: -0.56px;
        padding: 0;
    
        @include breakpoint($narrow) {
          @include font-size(22px, 28px);
          letter-spacing: -0.69px;
          padding: 0;
        }
    
        &[aria-expanded='true'] {
          color: var(--grayscale-black);
    
          margin-bottom: 20px;
          @include breakpoint($narrow) {
            margin-bottom: 28px;
          }
          @include breakpoint($wide) {
            margin-bottom: 32px;
          }
        }
      }
    
      //accordion arrow
      .hy-accordion--heading__icon {
        margin-right: 0.5rem;
        z-index: 0;
    
        @include breakpoint($narrow) {
          margin-right: 10px;
        }
    
        svg {
          fill: var(--brand-main-light);
          height: 14px;
          width: 14px;
          @include breakpoint($narrow) {
            height: 16px;
            width: 16px;
          }
        }
      }
    }
    
    
    Tuukka Turu's avatar
    Tuukka Turu committed
    .hy-accordion__content {
    
    Tuukka Turu's avatar
    Tuukka Turu committed
      display: block;
      height: 0;
      overflow: hidden;
    
      padding: 0;
    
      transition: all 0.25s ease-in-out;
    
    Tuukka Turu's avatar
    Tuukka Turu committed
    
      &--inner-wrapper {
        display: block;
    
      > hy-box {
        padding: 20px 16px 0;
    
    
          padding: 20px 24px 0;
        }
    
        @include breakpoint($extrawide) {
          padding: 24px 32px 0;
    
    
    .hy-accordion__content.mini {
      hy-box {
        padding: 0;
      }
    }