  .main-header {
position: sticky;
top: 0;
z-index: 12;
}
.main-header a {
text-decoration: none;
}

/* main header - top nav start */

.main-header .top-nav {
background-color: var(--light-gray);
color: var(--primary-color);
padding: 14px 48px;
transition: all 450ms ease-in-out;
height: 54px;
}

.main-header .top-nav.height-zero {
transform: translateY(-100%);
/* display: none !important; */
}

.main-header .top-nav a {
color: var(--primary-color);
padding: 0 10px;
font-size: 1rem;
/* border-right: 2px solid var(--black); */
}

.main-header .top-nav a:first-of-type {
padding-left: 0;
}

.main-header .top-nav a:last-of-type {
border-right: none;
}

.main-header .top-nav .audience a,
.main-header .navbar .audience a {
font-size: 0.9rem;
font-weight: 700;
text-transform: uppercase;
border-right: none;
padding: 3px 0;
margin-right: 13px;

/*underline-effect*/
background-image: linear-gradient(
    to right,
    var(--primary-alt),
    var(--primary-alt)
);
background-repeat: no-repeat;
background-size: 0% 2px;
background-position: 0 100%;
transition: background-size 450ms;
}

.main-header .top-nav .audience a:hover,
.main-header .top-nav .audience a:focus,
.main-header .navbar .audience a:hover,
.main-header .navbar .audience a:focus {
background-size: 100% 2px;
}

.main-header .search-container {
display: inline-block;
overflow: hidden;
}

.main-header .search-container form input {
color: var(--primary-color);
font-family: "Montserrat", sans-serif;
font-weight: 700;
font-size: 1.8rem;
padding: 16px !important;
width: 75%;
height: 75px;
margin-right: 0;
}
.main-header .search-container form input::placeholder {
color: var(--primary-color);
font-family: "Montserrat", sans-serif;
font-weight: 700;
font-size: 1.8rem;
}

.main-header .search-container input[type="text"] {
padding: 4px 8px;
font-size: 14px;
border: none;
box-shadow: none;
border-radius: 0px;
}

.main-header .search-container button {
float: right;
padding: 4px 8px;
margin-right: 16px;
font-size: 14px;
border: none;
cursor: pointer;
border-radius: 0 3px 3px 0;
background-color: var(--primary-color);
color: white;
}

.main-header .aux a {
color: black;
}

.main-header .aux a:hover,
.main-header .aux a:focus {
color: var(--primary-alt);
}

/* main header - top nav end */

/* main header - navbar start */

.main-header nav.navbar {
background-color: var(--white);
/* color: var(--dark-gray); */
padding: 0 0 0 40px;
display: block;
transition: all 450ms ease-in-out;
box-shadow: 0 6px 6px rgba(0, 0, 0, 0.15);
}

.main-header .navbar .navbar-toggler {
border: none;
border-radius: 0;
box-shadow: none;
aspect-ratio: 1/1;
background-color: var(--primary-color);
color: white;
font-size: 28px;
}

.main-header .navbar .navbar-toggler:hover,
.main-header .navbar .navbar-toggler:focus {
background-color: var(--dark-gray);
}

.main-header .navbar .navbar-nav {
align-items: center;
justify-content: flex-end;
width: 100%;
}

.main-header .navbar-brand img {
height: 80px;
width: auto;
padding-top: 5px;
}

.main-header .navbar .dropdown-menu {
border-radius: 0;
border-top: 4px solid var(--dark-gray);
background-color: var(--dark-gray-alt);
color: white;
padding: 36px 30px;
}

.main-header .navbar .dropdown-menu a.dropdown-menu-heading {
color: white;
font-weight: 700;
font-size: 1.4rem;

/*underline-effect*/
background-image: linear-gradient(to right, var(--white), var(--white));
background-repeat: no-repeat;
background-size: 0% 2px;
background-position: 0 100%;
transition: background-size 450ms;
padding-bottom: 8px;
margin-bottom: 16px;
}

.main-header .navbar .dropdown-menu a.dropdown-menu-heading:hover,
.main-header .navbar .dropdown-menu a.dropdown-menu-heading:focus {
background-size: 100% 2px;
}

a:hover span.fa-arrow-right-long,
a:focus span.fa-arrow-right-long,
a:hover span.fa-circle-arrow-right,
a:focus span.fa-circle-arrow-right {
transform: translateX(5px);
transition: 450ms;
}

.main-header .navbar .dropdown-menu a {
color: white;
font-weight: 700;
}

.main-header .navbar .dropdown-menu .row {
margin-left: 0;
}

.main-header .navbar .nav-link,
.main-header .navbar .dropdown-toggle {
display: revert;
padding: 0;
margin-right: 1.2rem;
font-size: 1.4rem;
font-weight: 700;
color: var(--primary-color);

/*underline-effect*/
background-image: linear-gradient(
    to right,
    var(--primary-alt),
    var(--primary-alt)
);
background-repeat: no-repeat;
background-size: 0% 2px;
background-position: 0 100%;
transition: background-size 450ms;
padding-bottom: 6px;
}

.main-header .navbar .nav-link:hover,
.main-header .navbar .nav-link:focus,
.main-header .navbar .dropdown-toggle:hover,
.main-header .navbar .dropdown-toggle:focus {
background-size: 100% 2px;
}

.main-header .navbar .dropdown-toggle::after {
font-size: 22px;
vertical-align: 0.12em;
margin-left: 0px;
}

.main-header .navbar .dropdown-toggle[aria-expanded="true"] {
/* font-weight: 700; */
}

.main-header .navbar .dropdown-toggle[aria-expanded="true"]::after {
rotate: 180deg;
}

.main-header .navbar .dropdown-menu img {
display: flex;
align-self: center;
}

.main-header .navbar .dropdown-menu .dropdown-item {
padding: 10px 2px;

/*underline-effect*/
background-image: linear-gradient(
    to right,
    var(--primary-alt),
    var(--primary-alt)
);
background-repeat: no-repeat;
background-size: 0% 2px;
background-position: 0 100%;
transition: background-size 450ms;
padding-bottom: 6px;
}

.main-header .navbar .dropdown-menu a {
color: white;
font-weight: 700;
}
.main-header .navbar .dropdown-menu .dropdown-item {
padding: 10px 2px;
background-image: linear-gradient(to right, var(--white), var(--white));
background-repeat: no-repeat;
background-size: 0% 2px;
background-position: 0 100%;
transition: background-size 450ms;
padding-bottom: 8px;
text-wrap: wrap;
}

.main-header .navbar .dropdown-menu .dropdown-item:focus,
.main-header .navbar .dropdown-menu .dropdown-item:hover {
background-size: 100% 2px;
background-color: unset;
}

.main-header .navbar .dropdown-menu ul {
margin: 0;
padding-left: 0;
padding-right: 30px;
list-style: none;
}

.main-header .navbar .navbar-collapse {
height: 100%;
}

/* main header - navbar end */

@media only screen and (min-width: 1200px) {
.main-header .navbar .nav-link,
.main-header .navbar .dropdown-toggle {
    margin-right: 2.8rem;
}
}

@media only screen and (min-width: 992px) {
.main-header .navbar {
    height: 90px;
}

.main-header .navbar .nav-dropdown-div {
    height: 90px;
    display: flex;
    align-items: center;
}

.main-header .nav-dropdown-div .search-toggler {
    background-color: var(--primary-color);
    height: 90px;
    width: 90px;
    color: white;
    padding: 30px 0 0 34px;
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main-header .nav-dropdown-div .search-toggler:hover,
.main-header .nav-dropdown-div .search-toggler:focus {
    background-color: var(--dark-gray);
}

.main-header .navbar .dropdown-menu {
    margin-top: 0;
    min-width: 450px;
}

.main-header .search-toggler + .dropdown-menu {
    width: 600px;
    height: 160px;
    padding: 20px 20px;
}

.main-header .search-container {
    width: 96%;
    margin: 0 auto;
}

.main-header .search-container form {
    width: 100%;
}
.main-header .search-container form label {
    display: block;
    font-weight: 600;
    margin-bottom: 4px;
}

.main-header .search-toggler + .dropdown-menu form button {
    background-color: var(--white);
    color: var(--primary-color);
    width: 25%;
    height: 75px;
    margin: 0 !important;
    border-radius: 0;
    font-size: 1.2rem;
}

.main-header .navbar .nav-dropdown-div:hover .dropdown-toggle {
    /* color: var(--secondary-color); */
}

.main-header .navbar .nav-dropdown-div.open .dropdown-toggle::after {
    rotate: 180deg;
    /* color: var(--hilite-color); */
}
}

@media only screen and (max-width: 991px) {
.main-header {
    position: sticky;
    z-index: 12;
}

.main-header .navbar-brand img {
    padding-top: 0;
}
.main-header .navbar.navbar-expand-lg {
    padding: 0;
}

.main-header .top-nav-mobile {
    background-color: var(--primary-color);
    color: var(--white);
    padding: 12px 0;
    box-shadow: 0 6px 6px rgba(0, 0, 0, 0.15);
}

.main-header .top-nav-mobile a {
    color: var(--white);
    display: block;
    /* border-bottom: 1px solid lightgray; */
    padding: 12px 8px;
}

.main-header .top-nav-mobile a:last-of-type {
    border-bottom: none;
}

.main-header .search-container {
    display: block;
    margin-bottom: 12px;
    padding: 24px;
    background-color: var(--primary-color);
}

.main-header .search-container form {
    display: flex;
    justify-content: flex-start;
    align-items: top;
}

.main-header .search-container input[type="text"] {
    padding: 12px 16px;
    font-size: 1.2rem;
    border: none;
    box-shadow: none;
    border-radius: 0;
    width: 70%;
    height: 48px;
    margin: 0;
    margin-right: -3px;
    background-color: var(--white);
}

.main-header .top-nav-mobile .search-container button {
    display: inline;
    padding: 12px 12px;
    color: var(--primary-color);
    background-color: var(--white);
    height: 48px;
    width: 28%;
    font-size: 1.2rem;
    border: none;
    cursor: pointer;
    border-radius: 0;
    margin: 0;
}

.main-header .navbar .navbar-nav {
    padding: 0;
}

.main-header .navbar .nav-dropdown-div {
    width: 100%;
}

.main-header .navbar .dropdown-toggle,
.main-header .navbar .nav-link {
    display: block;
    padding: 8px 18px;
}

.main-header .dropdown-toggle::after {
    float: right;
    margin-top: 10px;
}

/* ticket #221684 fix body to scroll menu on mobile. */
.main-header .navbar {
    padding: 10px 0 0 0;
    max-height: 100vh;
}
.main-header .navbar .navbar-collapse {
    background-color: var(--light-gray);
    overflow: hidden;
}
.main-header .navbar:has(.navbar-collapse.show) {
    overflow-y: scroll;
}
body:has(.navbar-collapse.show) {
    position: fixed !important;
}
body:has(.navbar-collapse:not(.show)) {
    position: unset !important;
}
/*  */

.main-header .navbar .navbar-nav {
    z-index: 2;
}
.main-header .navbar .nav-dropdown-div {
    padding: 12px 8px;
}
.main-header .top-nav-mobile {
    z-index: 3;
}
.main-header .navbar .nav-dropdown-div:last-of-type {
    border-bottom: none;
}
.main-header .navbar .dropdown-toggle,
.main-header .navbar .nav-link {
    margin-right: 0;
}
.main-header .navbar .dropdown-menu {
    margin-top: 0px;
    padding: 20px 8px;
    border: none;
    border-top: 3px solid var(--white);
}
.main-header .navbar .audience {
    width: 100%;
    flex-flow: column nowrap !important;
    align-items: center !important;
}
.main-header .navbar .audience a {
    padding-top: 12px;
}
.main-header .navbar .aux {
    margin-right: -10%;
    margin-left: -10%;
}
.main-header .navbar .aux a:hover {
    color: var(--hilite-color);
}

.navbar-nav {
    background-color: var(--dark-gray-alt);
}

.main-header .navbar .nav-link,
.main-header .navbar .dropdown-toggle {
    color: var(--white);
    font-weight: 800;
    font-size: 2rem;
    padding: 4px 8px;

    /*underline-effect*/
    background-image: linear-gradient(to right, var(--white), var(--white));
    background-repeat: no-repeat;
    background-size: 0% 2px;
    background-position: 0 100%;
    transition: background-size 450ms;
    padding-bottom: 6px;
}

.main-header .navbar .dropdown-menu img {
    display: none;
}
}

@media (max-width: 450px) {
.main-header .search-container input[type="text"] {
    width: 88%;
}

.main-header .top-nav-mobile .search-container button {
    width: 12%;
}
}
