<header class="site-header">
    <div class="site-header__top">
        <a href="https://www.iastate.edu/" class="site-header__logo">
      <img class="site-header__logo-mobile" src="https://cdn.theme.iastate.edu/img/iastate22/iowa-state-university-logo-no-tagline-red.svg" alt="Iowa State University" loading="lazy" width="224" height="17">
      <img class="site-header__logo-desktop" src="https://cdn.theme.iastate.edu/img/iastate22/iowa-state-university-logo-with-tagline-red.svg" alt="Iowa State University of Science and Technology" loading="lazy" width="346" height="46">
    </a>
        <nav class="site-header__utility" aria-label="Utility">
            <ul>
                <li>
                    <a href="https://www.iastate.edu/">My Admissions Account</a>
                </li>
                <li>
                    <a href="https://www.iastate.edu/">Request Info</a>
                </li>
                <li>
                    <a href="https://www.iastate.edu/">Apply</a>
                </li>
                <li>
                    <a href="https://www.iastate.edu/">Give</a>
                </li>
                <li>
                    <button class="site-header__utility-dropdown-trigger">Info For...</button>
                    <ul class="site-header__utility-dropdown-menu">
                        <li>
                            <a href="https://www.iastate.edu/">Current Students</a>
                        </li>
                        <li>
                            <a href="https://www.iastate.edu/">Faculty and Staff</a>
                        </li>
                    </ul>
                </li>
                <li>
                    <a href="https://www.iastate.edu/">Sign Ons and Tools</a>
                </li>
            </ul>
        </nav>
        <div class="site-header__search">
            <a href="#site-search" class="site-header__search-toggle">
        <span class="visible-for-screen-readers">Search</span>
        <span class="fak fa-iastate22-magnifying-glass" aria-hidden="true"></span>
      </a>
            <a href="#" class="site-header__search-close">
        <span class="visible-for-screen-readers">Close Search</span>
        <span class="fa-light fa-xmark"></span>
      </a>
            <form class="site-header__search-form-desktop">
                <label class="visible-for-screen-readers" for="searchDesktop">Search</label>
                <input type="search" id="searchDesktop" name="search" placeholder="Search">
                <button type="submit"><span class="fak fa-iastate22-magnifying-glass" aria-hidden="true"></span><span class="visible-for-screen-readers">Submit Search</span></button>
            </form>
        </div>
    </div>
    <div class="site-header__main">
        <a href="#site-header-mega-menu" class="site-header__mega-menu-open" role="button" aria-controls="site-header-mega-menu">
      <span class="visible-for-screen-readers">Toggle Menu</span>
      <span class="site-header__mega-menu-open-line-wrap">
        <span></span>
        <span></span>
        <span></span>
      </span>
    </a>
        <div class="site-header__mega-menu" id="site-header-mega-menu">
            <div class="site-header__mega-menu-inner">
                <div class="site-header__mega-menu-scroller">
                    <noscript>
            <a href="#" role="button" class="nojs-close-menu">Close Main Menu</a>
          </noscript>
                    <div>
                        <div class="site-header__mega-menu-main">
                            <div class="site-header__mega-menu-max-bound">
                                <nav class="site-header__mega-menu-main-nav" aria-label="Main">
                                    <ul>
                                        <li>
                                            <a href="https://www.iastate.edu/">Academics</a>
                                            <ul>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Majors, Minors and Certificates<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Pre-Professional Programs<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Graduate Programs<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Veterinary Medicine<span class="arrow"></span></a>
                                                </li>
                                            </ul>
                                        </li>
                                        <li>
                                            <a href="https://www.iastate.edu/">Admission and Aid</a>
                                            <ul class="two-column-dropdown">
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Admissions<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Tuition and Fees<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Affording College<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">New Student Programs<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Apply<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Request Info<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Visit<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Meet Your Admissions Counselor<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Chat with Students and Staff<span class="arrow"></span></a>
                                                </li>
                                            </ul>
                                        </li>
                                        <li>
                                            <a href="https://www.iastate.edu/">Learn By Doing</a>
                                            <ul class="two-column-dropdown">
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Research<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Innovation and Entrepreneurship<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Study Abroad<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Honors Program<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Career Preparation<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Industry Partnerships<span class="arrow"></span></a>
                                                </li>
                                            </ul>
                                        </li>
                                        <li>
                                            <a href="https://www.iastate.edu/">Life at Iowa State</a>
                                            <ul class="two-column-dropdown">
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Student Learning Communities<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Faculty Mentorship<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Campus and Location<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Housing and Dining<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Health and Safety<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Athletics and Recreation<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Academic Support<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">4-Year Graduation Guarantee<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">History and Traditions<span class="arrow"></span></a>
                                                </li>
                                            </ul>
                                        </li>
                                        <li>
                                            <a href="https://www.iastate.edu/">Diversity and Inclusion</a>
                                            <ul>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Principles of Community<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Programs and Initiatives<span class="arrow"></span></a>
                                                </li>
                                                <li>
                                                    <a class="link-tertiary" href="https://www.iastate.edu/">Student Resources<span class="arrow"></span></a>
                                                </li>
                                            </ul>
                                        </li>
                                    </ul>
                                </nav>
                            </div>
                        </div>
                        <div class="site-header__mega-menu-secondary">
                            <div class="site-header__mega-menu-max-bound">
                                <nav class="site-header__mega-menu-utility" aria-label="Utility">
                                    <ul>
                                        <li>
                                            <a href="https://www.iastate.edu/">My Admissions Account</a>
                                        </li>
                                        <li>
                                            <a href="https://www.iastate.edu/">Request Info</a>
                                        </li>
                                        <li>
                                            <a href="https://www.iastate.edu/">Apply</a>
                                        </li>
                                        <li>
                                            <a href="https://www.iastate.edu/">Give</a>
                                        </li>
                                        <li>
                                            <a href="https://www.iastate.edu/">Current Students</a>
                                        </li>
                                        <li>
                                            <a href="https://www.iastate.edu/">Faculty and Staff</a>
                                        </li>
                                        <li>
                                            <a href="https://www.iastate.edu/">Sign Ons and Tools</a>
                                        </li>
                                    </ul>
                                    <form class="site-header__search-form-mobile">
                                        <label class="visible-for-screen-readers" for="searchMobile">Search</label>
                                        <input type="search" id="searchMobile" name="search" placeholder="Search">
                                        <button type="submit"><span class="fak fa-iastate22-magnifying-glass" aria-hidden="true"></span><span class="visible-for-screen-readers">Submit Search</span></button>
                                    </form>
                                </nav>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</header>
<header class="site-header">
  <div class="site-header__top">
    <a href="https://www.iastate.edu/" class="site-header__logo">
      <img class="site-header__logo-mobile" src="{{ "https://cdn.theme.iastate.edu/img/iastate22/iowa-state-university-logo-no-tagline-red.svg"|path }}" alt="Iowa State University" loading="lazy" width="224" height="17">
      <img class="site-header__logo-desktop" src="{{ "https://cdn.theme.iastate.edu/img/iastate22/iowa-state-university-logo-with-tagline-red.svg"|path }}" alt="Iowa State University of Science and Technology" loading="lazy" width="346" height="46">
    </a>
    <nav class="site-header__utility" aria-label="Utility">
      <ul>
        {% for link in utility_nav %}
          <li>
            {% if not link.info_for_dropdown %}
            <a href="{{ link.url }}">{{ link.title }}</a>  
            {% else %}
            <button class="site-header__utility-dropdown-trigger">{{ link.title }}</button>
            <ul class="site-header__utility-dropdown-menu">
              {% for child in link.info_for_dropdown %}
              <li>
                <a href="{{ child.url }}">{{ child.title }}</a>
              </li>
              {% endfor %}
            </ul>
            {% endif %}
          </li>
        {% endfor %}
      </ul>
    </nav>
    <div class="site-header__search">
      <a href="#site-search" class="site-header__search-toggle">
        <span class="visible-for-screen-readers">Search</span>
        <span class="fak fa-iastate22-magnifying-glass" aria-hidden="true"></span>
      </a>
      <a href="#" class="site-header__search-close">
        <span class="visible-for-screen-readers">Close Search</span>
        <span class="fa-light fa-xmark"></span>
      </a>
      <form class="site-header__search-form-desktop">
        <label class="visible-for-screen-readers" for="searchDesktop">Search</label>
        <input type="search" id="searchDesktop" name="search" placeholder="Search">
        <button type="submit"><span class="fak fa-iastate22-magnifying-glass" aria-hidden="true"></span><span class="visible-for-screen-readers">Submit Search</span></button>
      </form>
    </div>
  </div>
  <div class="site-header__main">
    <a href="#site-header-mega-menu" class="site-header__mega-menu-open" role="button" aria-controls="site-header-mega-menu">
      <span class="visible-for-screen-readers">Toggle Menu</span>
      <span class="site-header__mega-menu-open-line-wrap">
        <span></span>
        <span></span>
        <span></span>
      </span>
    </a>
    <div class="site-header__mega-menu" id="site-header-mega-menu">
      <div class="site-header__mega-menu-inner">
        <div class="site-header__mega-menu-scroller">
          <noscript>
            <a href="#" role="button" class="nojs-close-menu">Close Main Menu</a>
          </noscript>
          <div>
            <div class="site-header__mega-menu-main">
              <div class="site-header__mega-menu-max-bound">
                <nav class="site-header__mega-menu-main-nav" aria-label="Main">
                  <ul>
                    {% for link in full_nav %}
                      <li {% if not link.children %}class="site-header__parent-link-no-subnav-wrap" {% endif %}>
                        <a {% if not link.children %}class="site-header__parent-link-no-subnav" {% endif %}href="{{ link.url }}" {% if link.newtab %}target="_blank"{% endif %}>{{ link.title }}</a>
                        {% if link.children|length %}
                          <ul{% if link.children|length > 5 %} class="two-column-dropdown"{% endif %}>
                            {% for child in link.children %}
                              <li>
                                <a class="link-tertiary" href="{{ child.url }}">{{ child.title }}<span class="arrow"></span></a>
                              </li>
                            {% endfor %}
                          </ul>
                        {% endif %}
                      </li>
                    {% endfor %}
                  </ul>
                </nav>
              </div>
            </div>
            <div class="site-header__mega-menu-secondary">
              <div class="site-header__mega-menu-max-bound">
                <nav class="site-header__mega-menu-utility" aria-label="Utility">
                  <ul>
                    {% for link in utility_nav %}
                      {% if not link.info_for_dropdown %}
                        <li>
                          <a href="{{ link.url }}">{{ link.title }}</a>
                        </li>
                        {% else %}
                          {% for child in link.info_for_dropdown %}
                          <li>
                            <a href="{{ child.url }}">{{ child.title }}</a>
                          </li>
                          {% endfor %}
                      {% endif %}
                    {% endfor %}
                  </ul>
                  <form class="site-header__search-form-mobile">
                    <label class="visible-for-screen-readers" for="searchMobile">Search</label>
                    <input type="search" id="searchMobile" name="search" placeholder="Search">
                    <button type="submit"><span class="fak fa-iastate22-magnifying-glass" aria-hidden="true"></span><span class="visible-for-screen-readers">Submit Search</span></button>
                  </form>
                </nav>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
</header>
{
  "utility_nav": [
    {
      "title": "My Admissions Account",
      "url": "https://www.iastate.edu/"
    },
    {
      "title": "Request Info",
      "url": "https://www.iastate.edu/"
    },
    {
      "title": "Apply",
      "url": "https://www.iastate.edu/"
    },
    {
      "title": "Give",
      "url": "https://www.iastate.edu/"
    },
    {
      "title": "Info For...",
      "url": "https://www.iastate.edu/",
      "info_for_dropdown": [
        {
          "title": "Current Students",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Faculty and Staff",
          "url": "https://www.iastate.edu/"
        }
      ]
    },
    {
      "title": "Sign Ons and Tools",
      "url": "https://www.iastate.edu/"
    }
  ],
  "full_nav": [
    {
      "title": "Academics",
      "url": "https://www.iastate.edu/",
      "children": [
        {
          "title": "Majors, Minors and Certificates",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Pre-Professional Programs",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Graduate Programs",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Veterinary Medicine",
          "url": "https://www.iastate.edu/"
        }
      ]
    },
    {
      "title": "Admission and Aid",
      "url": "https://www.iastate.edu/",
      "children": [
        {
          "title": "Admissions",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Tuition and Fees",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Affording College",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "New Student Programs",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Apply",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Request Info",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Visit",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Meet Your Admissions Counselor",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Chat with Students and Staff",
          "url": "https://www.iastate.edu/"
        }
      ]
    },
    {
      "title": "Learn By Doing",
      "url": "https://www.iastate.edu/",
      "children": [
        {
          "title": "Research",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Innovation and Entrepreneurship",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Study Abroad",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Honors Program",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Career Preparation",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Industry Partnerships",
          "url": "https://www.iastate.edu/"
        }
      ]
    },
    {
      "title": "Life at Iowa State",
      "url": "https://www.iastate.edu/",
      "children": [
        {
          "title": "Student Learning Communities",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Faculty Mentorship",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Campus and Location",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Housing and Dining",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Health and Safety",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Athletics and Recreation",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Academic Support",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "4-Year Graduation Guarantee",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "History and Traditions",
          "url": "https://www.iastate.edu/"
        }
      ]
    },
    {
      "title": "Diversity and Inclusion",
      "url": "https://www.iastate.edu/",
      "children": [
        {
          "title": "Principles of Community",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Programs and Initiatives",
          "url": "https://www.iastate.edu/"
        },
        {
          "title": "Student Resources",
          "url": "https://www.iastate.edu/"
        }
      ]
    }
  ]
}
  • Content:
    .site-header {
      pointer-events: none;
      position: fixed;
      top: 0;
      right: 0;
      left: 0;
      z-index: 11;
      width: 100vw;
      max-width: rem(1600);
      margin: 0 auto;
      @include media-breakpoint-up(xl) {
        width: auto;
      }
      > * {
        pointer-events: initial;
      }
      // headroom styles
      &.headroom--unpinned,
      &.headroom--pinned {
        position: fixed;
      }
    }
    
    .site-header__logo {
      display: block;
      max-width: rem(224);
      width: 100%;
      position: absolute;
      left: rem(36);
      top: rem(18);
      text-decoration: none;
      z-index: 1;
      transition: 0.2s top ease-in-out, 0.2s filter ease-in-out;
      @include media-breakpoint-up(lg) {
        width: 25%;
        max-width: rem(293);
      }
      @include media-breakpoint-up(xl) {
        top: rem(37);
        left: rem(32);
      }
      @include media-breakpoint-up(xxl) {
        max-width: rem(346);
        left: rem(82);
      }
      .headroom--unpinned & {
        @include media-breakpoint-up(xl) {
          top: rem(27);
        }
      }
      .home & {
        filter: brightness(0) invert(1);
      }
      .site-header-open & {
        .home & {
          filter: none;
        }
      }
      .headroom--not-top & {
        .home & {
          filter: none;
        }
      }
      .site-header--ecosystem & {
        @include media-breakpoint-up(lg) {
          max-width: rem(224);
        }
        @include media-breakpoint-up(xl) {
          position: static;
          width: 100%;
        }
      }
    
      img {
        display: block;
        width: 100%;
      }
    
      .site-header__logo-mobile {
        @include media-breakpoint-up(xl) {
          display: none;
        }
      }
    
      .site-header__logo-desktop {
        display: none;
        @include media-breakpoint-up(xl) {
          display: block;
        }
      }
      &.site-header__logo-no-parent-unit {
        transition: 0.2s top ease-in-out, 0.2s filter ease-in-out, 0.2s transform ease-in-out;
        .site-header--ecosystem.headroom--unpinned & {
          @include media-breakpoint-up(xl) {
            transform: translateY(-100%);
          }
        }
      }
    }
    
    .site-header__top {
      align-items: center;
      background-color: rgba($white, 0.95);
      display: flex;
      height: rem(38);
      padding-right: rem(58);
      padding-bottom: rem(54);
      justify-content: flex-end;
      border-bottom: rem(1) solid $grey4;
      transition: 0.2s height ease-in-out;
      @include media-breakpoint-up(xl) {
        padding: 0 rem(32) 0;
        height: rem(117);
        align-items: flex-start;
      }
      @include media-breakpoint-up(xxl) {
        padding: 0 rem(60) 0;
        position: relative;
        background-color: transparent;
      }
      .headroom--unpinned & {
        @include media-breakpoint-up(xl) {
          height: rem(93);
        }
      }
      .site-header--ecosystem & {
        @include media-breakpoint-up(xl) {
          justify-content: space-between;
          align-items: center;
          transition: 0.2s height ease-in-out, 0.2s opacity ease-in-out;
        }
        @include media-breakpoint-up(xxl) {
          padding: 0 rem(64) 0 rem(83);
        }
      }
      .site-header--ecosystem.site-header-open & {
        &:before {
          content: "";
          background-color: rgba($white, 0.95);
          position: absolute;
          top: rem(54);
          bottom: 0;
          left: 0;
          right: 0;
          z-index: -1;
          @include media-breakpoint-up(xl) {
            display: none;
          }
        }
      }
    
      // different background for homepage
      .home & {
        background-color: transparent;
        border-bottom: none;
        transition: 0.2s height ease-in-out, 0.2s background-color ease-in-out;
        &:after {
          content: "";
          position: absolute;
          top: 0;
          left: rem(-200);
          right: rem(-200);
          background: transparent linear-gradient(180deg, #000000 0%, #00000000 100%) 0% 0% no-repeat padding-box;
          height: rem(165);
          opacity: 1;
          transition: 0.2s opacity ease-in-out;
          visibility: visible;
          pointer-events: none;
        }
      }
      .headroom--not-top & {
        .home & {
          background-color: rgba($white, 0.95);
          border-bottom: rem(1) solid $grey4;
          @include media-breakpoint-up(xxl) {
            background-color: transparent;
          }
          &:after {
            display: none;
            @include media-breakpoint-up(xxl) {
              content: "";
              display: block;
              position: absolute;
              top: 0;
              bottom: rem(-1);
              left: -50vw;
              width: 150vw;
              height: auto;
              left: 50%;
              transform: translateX(-50%);
              z-index: -1;
              background: rgba($white, 0.95);
              border-bottom: rem(1) solid $grey4;
              pointer-events: none;
            }
          }
        }
      }
      .site-header-open & {
        .home & {
          background-color: rgba($white, 0.95);
          border-bottom: rem(1) solid $grey4;
          &:after {
            opacity: 0;
            visibility: hidden;
          }
        }
      }
      .site-header--ecosystem & {
        flex-wrap: wrap;
        border-bottom: none;
      }
      // extend header background-color on wider monitors
      &:before {
        @include media-breakpoint-up(xxl) {
          content: "";
          position: absolute;
          top: 0;
          bottom: rem(-1);
          left: -50vw;
          width: 150vw;
          left: 50%;
          transform: translateX(-50%);
          z-index: -1;
          background-color: rgba($white, 0.95);
          border-bottom: rem(1) solid $grey4;
          pointer-events: none;
        }
        .home & {
          background-color: transparent;
          border-bottom: none;
        }
        .headroom--not-top & {
          .home & {
            border-bottom: rem(1) solid $grey4;
          }
        }
      }
      ul {
        display: flex;
      }
      li {
        padding-top: rem(2);
        @include media-breakpoint-up(lg) {
          padding-top: 0;
          padding-right: rem(18);
        }
        @include media-breakpoint-up(xl) {
          padding-right: rem(18);
        }
        @include media-breakpoint-up(xxl) {
          padding-right: rem(24);
        }
        &:last-child {
          @include media-breakpoint-up(xl) {
            padding-right: 0;
          }
        }
      }
    }
    
    .site-header__utility {
      position: relative;
      display: none;
      transition: 0.2s opacity ease-in-out;
      z-index: 1;
      @include media-breakpoint-up(xl) {
        display: block;
        margin-top: rem(27);
        margin-right: rem(16);
      }
      @include media-breakpoint-up(xxl) {
        margin-right: rem(53);
      }
      &.site-header__utility-search-open {
        @include media-breakpoint-up(xl) {
          transition: 0.2s margin-right ease-in-out;
          margin-right: rem(240);
        }
      }
      html:not(.js) & {
        @include media-breakpoint-up(xl) {
          margin-right: rem(240);
        }
      }
      .headroom--unpinned & {
        @include media-breakpoint-up(xl) {
          opacity: 0;
          visibility: hidden;
        }
      }
      .site-header--ecosystem & {
        @include media-breakpoint-up(xl) {
          margin-top: 0;
          margin-right: rem(5);
        }
      }
      .site-header--ecosystem & {
        + .site-header__utility-button {
          @include media-breakpoint-up(xl) {
            margin-left: rem(30);
          }
        }
      }
      a,
      .site-header__utility-dropdown-trigger {
        @include media-breakpoint-up(xl) {
          text-transform: none;
          color: $iastate-maroon;
          font-family: $typeface-sans-serif;
          font-weight: 400;
          font-size: rem(14);
          line-height: (24 / 14);
          text-decoration: none;
          transition: 0.2s color ease-in-out;
          background-color: transparent;
          border: none;
          cursor: pointer;
        }
        @include media-breakpoint-up(xxl) {
          font-size: rem(16);
          line-height: (26 / 16);
        }
        .home & {
          @include media-breakpoint-up(xl) {
            color: $white;
          }
        }
        .headroom--not-top & {
          .home & {
            @include media-breakpoint-up(xl) {
              color: $iastate-red;
            }
          }
        }
        &:hover {
          @include media-breakpoint-up(xl) {
            color: $iastate-red;
          }
          .home & {
            @include media-breakpoint-up(xl) {
              color: $iastate-gold;
            }
          }
          .headroom--not-top & {
            .home & {
              @include media-breakpoint-up(xl) {
                color: $iastate-maroon;
              }
            }
          }
        }
      }
    
      .site-header__utility-dropdown-trigger {
        @include media-breakpoint-up(xl) {
          position: relative;
          padding: 0;
          margin: 0;
        }
        &[aria-expanded="true"] {
          &:after {
            @include media-breakpoint-up(xl) {
              transform: rotate(225deg);
              top: rem(1);
            }
          }
        }
        &:hover {
          &:after {
            @include media-breakpoint-up(xl) {
              border-color: $iastate-red;
              .home & {
                border-color: $iastate-gold;
              }
              .headroom--not-top & {
                .home & {
                  border-color: $iastate-maroon;
                }
              }
            }
          }
        }
        &:after {
          @include media-breakpoint-up(xl) {
            content: "";
            display: inline-block;
            position: relative;
            margin-left: rem(7);
            top: rem(-4);
            width: rem(8);
            height: rem(8);
            border-right: rem(2) solid $iastate-maroon;
            border-bottom: rem(2) solid $iastate-maroon;
            transform: rotate(45deg);
            transition: 0.2s transform ease-in-out, 0.2s top ease-in-out, 0.2s border-color ease-in-out;
            transform-origin: center;
            .home & {
              border-color: $white;
            }
            .headroom--not-top & {
              .home & {
                border-color: $iastate-red;
              }
            }
          }
        }
      }
    }
    
    .site-header__utility-dropdown-menu {
      @include media-breakpoint-up(xl) {
        position: absolute;
        display: flex;
        flex-direction: column;
        box-shadow: rem(9) rem(9) rem(20) rgba($black, 0.2);
        padding: rem(20) rem(30);
        background-color: $white;
        transform: translateX(-25%);
        transition: 0.3s transform ease-in-out, 0.3s opacity ease-in-out;
        top: rem(33);
      }
      &[aria-hidden="true"] {
        @include media-breakpoint-up(xl) {
          visibility: hidden;
          transform: translate3d(-25%, #{rem(30)}, 0);
          opacity: 0;
        }
      }
      &[aria-hidden="false"] {
        @include media-breakpoint-up(xl) {
          opacity: 1;
        }
      }
      li {
        @include media-breakpoint-up(xl) {
          margin: 0 0 rem(10);
          padding: 0;
        }
        &:last-child {
          @include media-breakpoint-up(xl) {
            margin-bottom: 0;
          }
        }
        a {
          @include media-breakpoint-up(xl) {
            white-space: nowrap;
            .home & {
              color: $iastate-maroon;
              &:hover {
                color: $iastate-red;
              }
            }
            .headroom--not-top & {
              .home & {
                color: $iastate-maroon;
                &:hover {
                  color: $iastate-red;
                }
              }
            }
          }
        }
      }
    }
    
    .site-header__search {
      align-self: stretch;
      height: rem(54);
      width: rem(54);
      margin-right: rem(31);
      transition: 0.2s opacity ease-in-out;
      z-index: 1;
      @include media-breakpoint-up(xl) {
        position: relative;
        top: rem(14);
        margin-right: rem(-16);
        display: flex;
        justify-content: center;
      }
      @include media-breakpoint-up(xxl) {
        margin-right: 0;
      }
      .headroom--unpinned & {
        @include media-breakpoint-up(xl) {
          opacity: 0;
        }
      }
      .site-header--ecosystem & {
        @include media-breakpoint-up(xl) {
          top: rem(2);
          height: auto;
        }
      }
    }
    
    .site-header__search-toggle {
      display: none;
      @include media-breakpoint-up(xl) {
        align-items: center;
        display: flex;
        height: 100%;
        justify-content: center;
        padding: 0 rem(16);
        font-size: rem(20);
        border: none;
        background-color: transparent;
        color: $iastate-maroon;
        display: block;
        font-size: rem(20);
        text-decoration: none;
        transition: 0.2s color ease-in-out;
        cursor: pointer;
      }
      &[aria-expanded="true"] {
        opacity: 0;
        visibility: hidden;
      }
      .home & {
        color: $white;
      }
      .headroom--not-top & {
        .home & {
          color: $iastate-red;
        }
      }
      &:hover {
        @include media-breakpoint-up(xl) {
          color: $iastate-red;
        }
        .home & {
          @include media-breakpoint-up(xl) {
            color: $iastate-gold;
          }
        }
        .headroom--not-top & {
          .home & {
            @include media-breakpoint-up(xl) {
              color: $iastate-maroon;
            }
          }
        }
      }
    }
    
    .site-header__main {
      align-items: center;
      display: flex;
      justify-content: flex-end;
      pointer-events: none;
      @include media-breakpoint-up(lg) {
        background-color: transparent;
      }
      @include media-breakpoint-up(xl) {
        pointer-events: initial;
      }
      * {
        pointer-events: initial;
      }
      .site-header--ecosystem & {
        @include media-breakpoint-up(xl) {
          pointer-events: none;
        }
      }
    }
    
    .site-header__mega-menu {
      background-color: $white;
      pointer-events: none;
      position: absolute;
      top: rem(55);
      right: 0;
      bottom: 0;
      left: 0;
      transition: 0.2s transform ease-in-out;
      height: 100vh;
      @include media-breakpoint-up(lg) {
        background-color: transparent;
      }
      @include media-breakpoint-up(xl) {
        bottom: auto;
      }
      .headroom--unpinned & {
        @include media-breakpoint-up(xl) {
          transform: translateY(#{rem(-35)});
        }
      }
      html:not(.js) & {
        display: none;
        @include media-breakpoint-up(xl) {
          display: block;
        }
        &:target {
          display: block;
        }
      }
      .js & {
        opacity: 0;
        visibility: hidden;
        &[aria-hidden="false"] {
          opacity: 1;
          visibility: visible;
        }
        @include media-breakpoint-up(xl) {
          opacity: 1;
          visibility: visible;
        }
        &.transitioning {
          transition: 0.3s opacity ease-in-out, 0.3s visibility ease-in-out;
        }
      }
      .site-header--ecosystem & {
        top: rem(90);
        @include media-breakpoint-up(xl) {
          height: auto;
          position: relative;
          top: 0;
          width: 100%;
        }
      }
    }
    
    .site-header__mega-menu-inner {
      background-color: $iastate-red;
      height: 100%;
      overflow: hidden;
      pointer-events: none;
      position: relative;
      @include media-breakpoint-up(xl) {
        background-color: transparent;
      }
      .site-header--ecosystem & {
        @include media-breakpoint-up(xl) {
          overflow: visible;
        }
      }
    }
    
    .site-header__mega-menu-scroller {
      height: 100%;
      overflow-y: auto;
      overflow-x: hidden;
      @include media-breakpoint-up(xl) {
        overflow: initial;
        pointer-events: none;
      }
    }
    
    .site-header__mega-menu-max-bound {
      margin: 0 auto;
      max-width: rem(1660);
    
      .site-header--ecosystem & {
        @include media-breakpoint-up(xl) {
          display: flex;
          align-items: center;
          justify-content: space-between;
          padding: 0 rem(46) 0 rem(32);
        }
        @include media-breakpoint-up(xxl) {
          padding: 0 rem(83) 0 rem(83);
        }
      }
    }
    
    .site-header__mega-menu-open {
      height: rem(55);
      width: rem(58);
      top: rem(-55);
      right: rem(28);
      transition: 0.3s background-color ease-in-out;
      display: flex;
      align-items: center;
      font-size: rem(16);
      font-weight: 700;
      flex: 0 0 auto;
      letter-spacing: em(0.25, 16);
      line-height: 1;
      cursor: pointer;
      position: relative;
      text-decoration: none;
      background-color: transparent;
      border: none;
      @include media-breakpoint-up(xl) {
        display: none;
      }
      .site-header__mega-menu-open-line-wrap {
        width: rem(30);
        span {
          display: block;
          width: 100%;
          border-bottom: rem(2) solid $iastate-red;
          margin-bottom: rem(7);
          transform-origin: center center;
          transition: 0.2s transform ease-in-out, 0.2s opacity ease-in-out, 0.2s border-color ease-in-out;
          position: relative;
          &:last-child {
            margin-bottom: 0;
          }
          .home & {
            border-bottom-color: $white;
          }
          .site-header-open & {
            .home & {
              border-bottom-color: $iastate-red;
            }
          }
          .headroom--not-top & {
            .home & {
              border-bottom-color: $iastate-red;
            }
          }
        }
        &:hover {
          span {
            border-color: $iastate-maroon;
          }
          .home & {
            span {
              border-bottom-color: $white;
            }
          }
          .site-header-open & {
            .home & {
              span {
                border-bottom-color: $iastate-maroon;
              }
            }
          }
          .headroom--not-top & {
            .home & {
              span {
                border-bottom-color: $iastate-maroon;
              }
            }
          }
        }
      }
      &:hover {
        background-color: transparent;
      }
      &[aria-expanded="true"] {
        .site-header__mega-menu-open-line-wrap {
          span {
            &:nth-child(1) {
              transform: rotate(-45deg) translate(#{rem(-6)}, #{rem(6)});
            }
            &:nth-child(2) {
              opacity: 0;
            }
            &:nth-child(3) {
              transform: rotate(45deg) translate(#{rem(-6)}, #{rem(-7)});
            }
          }
        }
      }
    }
    
    .site-header__mega-menu-main {
      background-color: $iastate-red;
      padding: rem(60) rem(36);
      position: relative;
      @include media-breakpoint-up(xl) {
        background-color: transparent;
        padding: 0 rem(51) 0 0;
        margin-top: rem(13);
      }
      @include media-breakpoint-up(xxl) {
        padding: 0 rem(92) 0 0;
      }
      html:not(.js) & {
        @include media-breakpoint-up(xl) {
          margin-top: rem(-23);
        }
      }
      .site-header--ecosystem & {
        padding-top: rem(30);
        @include media-breakpoint-up(xl) {
          margin-top: rem(-5);
          padding: rem(20) 0;
          background-color: $off-white;
          &:before {
            content: "";
            position: absolute;
            background-color: $off-white;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            width: 150vw;
            left: -50vw;
            z-index: -1;
          }
        }
      }
    }
    
    .site-header__mega-menu-main-nav {
      @include media-breakpoint-up(xl) {
        flex: 1 0 auto;
      }
      > ul {
        @include media-breakpoint-up(xl) {
          display: flex;
          justify-content: flex-end;
          width: 65%;
          margin: 0 0 0 auto;
        }
        .site-header--ecosystem & {
          @include media-breakpoint-up(xl) {
            width: 100%;
            flex-wrap: wrap;
            margin-right: rem(-40);
          }
        }
        > li {
          margin-bottom: rem(22);
          @include media-breakpoint-up(xl) {
            padding-right: rem(40);
            margin-bottom: 0;
            transition: 0.3s opacity ease-in-out;
            position: relative;
          }
          html:not(.js) & {
            &:hover {
              & > ul {
                @include media-breakpoint-up(xl) {
                  display: block;
                }
              }
              & > .two-column-dropdown {
                @include media-breakpoint-up(xl) {
                  display: flex;
                }
              }
            }
          }
          &.site-header__parent-link-no-subnav-wrap {
            @include media-breakpoint-up(xl) {
              padding-right: rem(30);
            }
          }
          .site-header--ecosystem & {
            @include media-breakpoint-up(xl) {
              padding: rem(7) rem(40) rem(7) 0;
            }
          }
    
          > a,
          > button {
            @extend %iastate22-button;
            @extend %iastate22-button--reverse;
            width: 100%;
            @include media-breakpoint-up(md) {
              display: block;
              max-width: rem(676);
            }
            @include media-breakpoint-up(xl) {
              max-width: none;
              padding: 0;
              background-color: transparent;
              border: none;
              color: $iastate-red;
              font-size: rem(14);
              line-height: (26 / 14);
              margin: 0;
              border-radius: 0;
              @include media-breakpoint-up(xxl) {
                font-size: rem(16);
                line-height: (26 / 16);
              }
            }
            &.site-header__parent-link-no-subnav {
              &:after {
                display: none;
              }
            }
    
            .home & {
              @include media-breakpoint-up(xl) {
                color: $white;
              }
            }
            .headroom--not-top & {
              .home & {
                @include media-breakpoint-up(xl) {
                  color: $iastate-red;
                }
              }
            }
    
            &:after {
              content: "";
              position: absolute;
              border-right: rem(2) solid $iastate-maroon;
              border-bottom: rem(2) solid $iastate-maroon;
              width: rem(12);
              height: rem(12);
              right: rem(16);
              top: rem(14);
              transform: rotate(315deg);
              transform-origin: center;
              @include media-breakpoint-up(xl) {
                right: rem(-13);
                top: rem(7);
                width: rem(7);
                height: rem(7);
                border-right: rem(2) solid $iastate-red;
                border-bottom: rem(2) solid $iastate-red;
                transform: rotate(45deg);
                transition: 0.2s transform ease-in-out, 0.2s top ease-in-out, 0.2s border-color ease-in-out;
              }
              @include media-breakpoint-up(xxl) {
                right: rem(-16);
                top: rem(5);
                width: rem(10);
                height: rem(10);
              }
              .home & {
                @include media-breakpoint-up(xl) {
                  border-color: $white;
                }
              }
              .headroom--not-top & {
                .home & {
                  @include media-breakpoint-up(xl) {
                    border-color: $iastate-red;
                  }
                }
              }
            }
    
            &:hover {
              @include media-breakpoint-up(xl) {
                background-color: transparent;
                padding-right: 0;
              }
              .home & {
                @include media-breakpoint-up(xl) {
                  color: $iastate-gold;
                }
              }
              .headroom--not-top & {
                .home & {
                  @include media-breakpoint-up(xl) {
                    color: $iastate-maroon;
                  }
                }
              }
              &:after {
                @include media-breakpoint-up(xl) {
                  border-color: $iastate-maroon;
                }
                .home & {
                  @include media-breakpoint-up(xl) {
                    border-color: $iastate-gold;
                  }
                }
                .headroom--not-top & {
                  .home & {
                    @include media-breakpoint-up(xl) {
                      border-color: $iastate-maroon;
                    }
                  }
                }
              }
            }
            &[aria-expanded="true"] {
              @include media-breakpoint-up(xl) {
                border-bottom: rem(7) solid $iastate-gold;
                margin-bottom: rem(-7);
              }
              &:after {
                @include media-breakpoint-up(xl) {
                  transform: rotate(225deg);
                  top: rem(10);
                  border-color: $iastate-maroon;
                }
                .home & {
                  @include media-breakpoint-up(xl) {
                    border-color: $iastate-gold;
                  }
                }
                .headroom--not-top & {
                  .home & {
                    @include media-breakpoint-up(xl) {
                      border-color: $iastate-maroon;
                    }
                  }
                }
              }
            }
          }
          ul {
            background-color: $iastate-red;
            overflow-y: auto;
            padding: rem(20) rem(40);
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            transition: 0.3s opacity ease-in-out, 0.3s transform ease-in-out, 0.3s visibility ease-in-out;
            z-index: 1;
            @include media-breakpoint-up(xl) {
              background-color: $white;
              margin-top: rem(22);
              padding: rem(40) rem(52);
              top: rem(11);
              right: initial;
              left: initial;
              bottom: initial;
              box-shadow: rem(9) rem(9) rem(20) rgba($black, 0.2);
              min-width: rem(405);
              left: rem(-120);
              display: flex;
              flex-wrap: wrap;
              opacity: 0;
            }
            .site-header--ecosystem & {
              @include media-breakpoint-up(xl) {
                background-color: $off-white;
                margin-top: rem(29);
              }
            }
            &[aria-hidden="true"] {
              // opacity: 0;
              transform: translate3d(100%, 0, 0);
              visibility: hidden;
              @include media-breakpoint-up(xl) {
                transform: translate3d(0, #{rem(30)}, 0);
              }
            }
            &[aria-hidden="false"] {
              opacity: 1;
              transform: none;
              visibility: visible;
              height: 100vh;
              z-index: 2;
              @include media-breakpoint-up(xl) {
                height: auto;
              }
            }
            &.two-column-dropdown {
              @include media-breakpoint-up(xl) {
                min-width: rem(727);
                left: rem(-243);
                gap: 0 rem(40);
              }
              li {
                @include media-breakpoint-up(xl) {
                  width: calc(50% - #{rem(20)});
                }
              }
            }
            html:not(.js) & {
              z-index: -1;
              @include media-breakpoint-up(xl) {
                display: none;
                padding-bottom: rem(30);
                margin-top: rem(14);
                z-index: 1;
              }
            }
            li {
              margin-bottom: rem(10);
              padding-left: rem(14);
              @include media-breakpoint-up(xl) {
                flex: 0 1 auto;
                width: 100%;
                padding-left: 0;
                margin-bottom: rem(13);
              }
    
              &.site-header__mega-menu-main-nav-dropdown-back-wrap {
                margin-bottom: rem(8);
              }
              &.site-header__mega-menu-main-nav-dropdown-parent-wrap {
                margin-bottom: rem(20);
                @include media-breakpoint-up(xl) {
                  order: 1;
                  width: 100% !important;
                  border-top: rem(2) solid $iastate-gold;
                  margin-top: rem(45);
                  margin-bottom: rem(-15);
                  padding-top: rem(25);
                }
                &.site-header__mega-menu-main-nav-dropdown-parent-wrap-no-href {
                  display: none;
                }
              }
              &:last-child {
                margin-bottom: 0;
              }
            }
          }
          &:last-child {
            margin-bottom: 0;
            padding-right: 0;
            &.site-header__parent-link-no-subnav-wrap {
              @include media-breakpoint-up(xl) {
                margin-right: rem(-20);
              }
              .site-header--ecosystem & {
                @include media-breakpoint-up(xl) {
                  margin-right: 0;
                }
              }
            }
            .site-header--ecosystem & {
              @include media-breakpoint-up(xl) {
                padding-right: rem(40);
              }
            }
          }
          &:hover {
            opacity: 1;
          }
          .user-tabbing &:focus-within {
            opacity: 1;
          }
    
          &:last-child,
          &:nth-last-child(2) {
            > ul {
              @include media-breakpoint-up(xl) {
                right: 0;
                left: initial;
              }
            }
          }
        }
      }
      a {
        color: $white;
        transition: 0.3s color ease-in-out, 0.3s text-decoration-color ease-in-out;
        text-decoration-color: transparent;
        font-family: $typeface-sans-serif;
        font-weight: 700;
        font-size: rem(18);
        line-height: (26 / 18);
        text-decoration: underline;
        text-decoration-color: $white;
        text-decoration-thickness: rem(1);
        text-underline-offset: rem(1);
        margin: 0;
        @include media-breakpoint-up(xl) {
          color: $iastate-maroon;
          line-height: (34 / 18);
          text-decoration-color: $iastate-maroon;
          font-size: rem(16);
          line-height: (24 / 16);
        }
        @include media-breakpoint-up(xxl) {
          font-size: rem(18);
          line-height: (26 / 18);
        }
        &.link-tertiary {
          &:hover {
            color: $white;
            @include media-breakpoint-up(xl) {
              color: $iastate-maroon;
            }
          }
        }
        .arrow {
          background-color: $white;
          @include media-breakpoint-up(xl) {
            background-color: $iastate-maroon;
          }
          &:before,
          &:after {
            background-color: $white;
            @include media-breakpoint-up(xl) {
              background-color: $iastate-maroon;
            }
          }
        }
      }
    }
    
    .site-header__mega-menu-main-nav-dropdown-back-wrap {
      @include media-breakpoint-up(xl) {
        display: none;
      }
    }
    
    .site-header__mega-menu-main-nav-dropdown-back {
      color: $white;
      border: none;
      background-color: transparent;
      display: inline-block;
      font-weight: 700;
      font-size: rem(18);
      height: rem(44);
      padding: 0 0 0 rem(16);
      position: relative;
      transition: 0.3s color ease-in-out;
      margin-left: rem(-14);
      .site-header__mega-menu-main-nav-dropdown-back-label {
        font-family: $typeface-sans-serif;
        font-weight: 700;
        font-size: rem(16);
        line-height: (26 / 16);
        letter-spacing: em(0.96, 16);
        position: relative;
        left: rem(-4);
        cursor: pointer;
      }
      &:hover,
      .user-tabbing &:focus {
        color: $white;
        .site-header__mega-menu-main-nav-dropdown-back-icon {
          color: $white;
          transform: translate3d(#{rem(-4)}, -55%, 0);
        }
      }
    }
    
    .site-header__mega-menu-main-nav-dropdown-back-icon {
      color: $white;
      font-family: $typeface-sans-serif;
      font-weight: 700;
      font-size: rem(16);
      line-height: (26 / 16);
      letter-spacing: em(0.96, 16);
      position: absolute;
      top: rem(22);
      left: 0;
      transform: translate3d(0, -55%, 0);
      transition: 0.3s transform ease-in-out;
    }
    
    a.site-header__mega-menu-main-nav-dropdown-parent {
      font-family: $typeface-sans-serif;
      font-size: rem(21);
      line-height: (37 / 21);
      font-weight: 700;
      color: $white;
      text-decoration: none;
      margin-left: rem(-14);
      position: relative;
      @include media-breakpoint-up(xl) {
        color: $iastate-maroon;
        font-size: rem(16);
        line-height: (27 / 16);
        margin-left: 0;
      }
      @include media-breakpoint-up(xxl) {
        font-size: rem(18);
        line-height: (31 / 18);
      }
      &:hover {
        color: $white;
        @include media-breakpoint-up(xl) {
          color: $iastate-maroon;
        }
      }
      .arrow {
        background-color: $white;
        top: rem(17);
        @include media-breakpoint-up(xl) {
          background-color: $iastate-maroon;
          top: rem(14);
        }
        &:before,
        &:after {
          background-color: $white;
          @include media-breakpoint-up(xl) {
            background-color: $iastate-maroon;
          }
        }
      }
    }
    
    .site-header__mega-menu-secondary {
      background-color: $iastate-red;
      padding: 0 rem(36) rem(60);
      position: relative;
      &:before {
        content: "";
        background-color: $iastate-red;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1;
        opacity: 0;
        pointer-events: none;
        transition: 0.3s opacity ease-in-out, 0.3s transform ease-in-out, 0.3s visibility ease-in-out;
        transform: translateX(100%);
      }
      @include media-breakpoint-up(xl) {
        display: none;
      }
      &[aria-hidden="true"] {
        &:before {
          transform: none;
          opacity: 1;
        }
      }
    }
    
    .site-header__mega-menu-utility {
      max-width: rem(676);
      margin-bottom: rem(150);
      @include media-breakpoint-up(xl) {
        max-width: none;
        margin-bottom: 0;
      }
      ul {
        column-count: 2;
        li {
          margin-bottom: rem(10);
          line-height: (26 / 18);
          &:last-child {
            margin-bottom: 0;
          }
        }
        a {
          color: $white;
          font-family: $typeface-sans-serif;
          font-size: rem(18);
          font-weight: 700;
          text-decoration: underline;
          transition: 0.3s color ease-in-out;
          &:hover,
          .user-tabbing &:focus {
            color: $white;
          }
        }
      }
    }
    
    .site-header__search-form-desktop,
    .site-header__search-form-mobile {
      margin: rem(40) 0;
      position: relative;
      input {
        width: 100%;
        height: rem(48);
        border: none;
        background-color: $white;
        &::placeholder {
          color: transparent;
        }
        html:not(.js) & {
          &::placeholder {
            color: currentColor;
          }
        }
        // hide ios search icons from input
        &[type="search"]::-webkit-search-decoration,
        &[type="search"]::-webkit-search-cancel-button,
        &[type="search"]::-webkit-search-results-button,
        &[type="search"]::-webkit-search-results-decoration {
          display: none;
        }
      }
    
      button[type="submit"] {
        border: none;
        font-size: rem(25);
        position: absolute;
        right: rem(6);
        top: rem(8);
        color: $iastate-red;
        transition: 0.2s color ease-in-out;
        cursor: pointer;
        border-radius: 0;
        margin: 0;
        padding: 0 rem(7);
        line-height: 1.3;
        background-color: transparent;
        &:hover {
          color: $iastate-maroon;
          background-color: transparent;
          padding: 0 rem(7);
        }
      }
    }
    
    .site-header__search-form-desktop {
      display: none;
      @include media-breakpoint-up(xl) {
        display: block;
        position: absolute;
        right: 0;
        top: rem(2);
        margin: 0;
        width: 0;
        transition: 0.2s width ease-in-out;
        visibility: hidden;
      }
      .site-header--ecosystem & {
        @include media-breakpoint-up(xl) {
          top: rem(-7);
        }
      }
      &[aria-hidden="false"] {
        width: rem(270);
        visibility: visible;
        button[type="submit"] {
          display: block;
          height: rem(44);
          min-width: rem(44);
          right: rem(44);
          top: rem(2);
        }
        input {
          border: rem(2) solid $iastate-maroon;
          pointer-events: all;
          padding: rem(8) rem(15);
        }
      }
      button[type="submit"] {
        @include media-breakpoint-up(xl) {
          display: none;
          font-size: rem(20);
          top: rem(13);
          right: rem(40);
        }
      }
      input {
        border: rem(2) solid transparent;
        width: 100%;
        padding: 0;
        transition: 0.2s border-color ease-in-out;
        pointer-events: none;
    
        html:not(.js) & {
          @include media-breakpoint-up(xl) {
            pointer-events: all;
            border: rem(2) solid $iastate-maroon;
            padding: rem(8) rem(15);
          }
        }
      }
      html:not(.js) & {
        @include media-breakpoint-up(xl) {
          width: rem(270);
          visibility: visible;
        }
      }
    }
    .site-header__search-close {
      z-index: 11;
      position: relative;
      background-color: transparent;
      border: none;
      cursor: pointer;
      font-size: rem(26);
      color: $iastate-red;
      opacity: 0;
      visibility: hidden;
      transition: 0.2s opacity ease-in-out;
      height: rem(44);
      min-width: rem(44);
      top: rem(4);
      left: rem(-27);
      display: none;
      &[aria-hidden="false"] {
        display: block;
        position: absolute;
        left: initial;
        opacity: 1;
        visibility: visible;
        .site-header--ecosystem & {
          top: rem(-5);
        }
      }
    }
    
    // close button for when js is disabled
    .nojs-close-menu {
      html:not(.js) & {
        text-align: right;
        padding-right: 40px;
        margin-top: 10px;
        color: $white;
        display: block;
      }
    }
    
    // Styles for ecosystem site header variant only
    .site-header__parent-unit-name {
      position: absolute;
      top: rem(52);
      left: rem(35);
      font-family: $typeface-sans-serif;
      font-size: rem(18);
      line-height: (23 / 18);
      color: $iastate-red;
      opacity: 0;
      transition: 0.2s opacity ease-in-out, 0.2s color ease-in-out;
      max-width: rem(275);
      display: inline-block;
      text-decoration: none;
      pointer-events: none;
    
      @include media-breakpoint-up(xl) {
        position: static;
        opacity: 1;
        font-size: rem(16);
        line-height: (23 / 16);
        font-weight: 700;
        margin-top: rem(6);
        pointer-events: all;
      }
    
      .headroom--unpinned & {
        @include media-breakpoint-up(xl) {
          opacity: 0;
        }
      }
    
      &:hover {
        color: $iastate-maroon;
      }
    
      .site-header-open & {
        opacity: 1;
        z-index: 1;
        pointer-events: all;
      }
    }
    .site-header__website-title {
      background-color: $off-white;
      flex: 0 1 auto;
      width: 100vw;
      margin-top: rem(54);
      margin-right: rem(-58);
      padding: rem(10) rem(38);
      font-family: $typeface-sans-serif;
      font-weight: 700;
      font-size: rem(18);
      line-height: (23 / 18);
      color: $iastate-maroon;
      transition: 0.2s opacity ease-in-out;
      @include media-breakpoint-up(xl) {
        display: none;
      }
      .site-header-open & {
        opacity: 0;
      }
      .site-header__mega-menu-main & {
        opacity: 1;
        margin: 0 0 rem(28) 0;
        background: transparent;
        width: auto;
        padding: 0;
        color: $white;
        @include media-breakpoint-up(xl) {
          max-width: rem(250);
          color: $iastate-maroon;
          display: block;
          margin: 0;
        }
        a {
          .site-header-open & {
            pointer-events: all;
          }
        }
      }
      a {
        color: currentColor;
        text-decoration: none;
        transition: 0.3s color ease-in-out;
        &:hover {
          text-decoration: underline;
          @include media-breakpoint-up(xl) {
            color: $iastate-red;
            text-decoration: none;
          }
        }
        .site-header-open & {
          pointer-events: none;
        }
      }
    }
    
    .site-header__utility-button {
      background-color: $iastate-red;
      color: $white;
      padding: rem(2) rem(30) rem(2) rem(15);
      top: rem(3);
      position: relative;
      text-decoration: none;
      font-weight: 700;
      transition: 0.2s background-color ease-in-out, 0.2s opacity ease-in-out;
      display: none;
      @include media-breakpoint-up(xl) {
        margin-left: rem(20);
        display: block;
      }
      @include media-breakpoint-up(xxl) {
        margin-left: rem(5);
      }
    
      .headroom--unpinned & {
        @include media-breakpoint-up(xl) {
          opacity: 0;
        }
      }
      &:hover {
        background-color: $iastate-maroon;
        color: $white;
      }
      span {
        position: relative;
        &:after {
          content: "";
          position: absolute;
          border-right: rem(2) solid $iastate-gold;
          border-bottom: rem(2) solid $iastate-gold;
          width: rem(10);
          height: rem(10);
          margin-left: rem(4);
          top: rem(7);
          transform: rotate(-45deg);
        }
      }
      .site-header__mega-menu-utility & {
        background-color: $white;
        color: $iastate-maroon;
        margin-top: rem(30);
        display: inline-block;
        position: static;
        transition: 0.2s background-color ease-in-out, 0.2s color ease-in-out;
        &:hover {
          color: $iastate-red;
          background-color: $off-white;
          span {
            &:after {
              border-color: $iastate-red;
            }
          }
        }
        span {
          &:after {
            transition: 0.2s border-color ease-in-out;
            border-color: $iastate-maroon;
          }
        }
      }
    }
    
    .site-header__utility-search-wrap {
      @include media-breakpoint-up(xl) {
        display: flex;
        align-items: flex-end;
      }
    }
    
  • URL: /components/raw/site-header/_site-header.scss
  • Filesystem Path: src/components/site-header/_site-header.scss
  • Size: 37.8 KB

Site Header

This is a custom component (no class prefix in place as it does not conflict with bootstrap)

  • The header is setup to use :target when a user has javascript disabled, to allow the hamburger menu to open on mobile and the navs to use hover states on desktop. When javascript is enabled - these actions are initiated by a click (or touch)
  • Contains areas for utility nav as well as full navigation (with sections for subpages)
  • The search form has been duplicated to get the positioning correct between mobile and desktop
  • The site-header should be placed in the code directly after <div class="max-bound">
  • The custom styles are imported into the index.scss file as @import "../components/site-header/site-header";
  • The .ts file for the javascript is imported into the index.ts file as import siteHeaderInit from "./components/site-header"; and called as siteHeaderInit();
  • The site-header--ecosystem variant is set up differntly to the default site-header. A section for a parent unit name appears close to the logo (on mobile it’s visible when the nav is open, on desktop it’s always visible. The “Of Science And Technology” tagline is removed from the logo to allow for this to be in it’s place. A button can be output in the utility navigation to the right of the search button (on mobile it appears above the search field). The primary navigation on deskton is moved down and has a background color - the website title appears in the left portion of this navigation. The primary navigation is set to wrap when the website title or number of links is long enough to warrant two lines.
  • The site-header--ecosystem variant contains several optional elements: the Parent Unit Name, Utility Navigation, Search Option, Button in the Utility Navigation and the Main Navigation are all optional