.website-navigation-container a:hover,
.footer a:hover,
.auth-shared a:hover {
    opacity: 1;
}

.website-navigation__logo-link {
    line-height: 1;
}

[data-submenu="product"] div.nav-button,
.mobile-nav__submenu-column div.nav-button {
    cursor: default;
}

@media(min-width: 768px) {
    .desktop-nav__menu-item-container .desktop-nav__submenu {
        opacity: 0;
        transition: opacity .2s ease-in-out, visibility .2s ease-in-out, transform .2s ease-in-out
    }

    .desktop-nav__menu-item-container:hover .desktop-nav__submenu {
        opacity: 1;
        pointer-events: all;
        transform: translateY(0);
        transition: opacity .2s ease-in-out, visibility .2s ease-in-out, transform .2s ease-in-out;
        visibility: visible;
    }

    .website-navigation__top-row {
        margin-bottom: 12px;
    }
}

@media (min-width: 888px) {
    .website-navigation--wide-layout [data-submenu="product"] {
        --submenu-left-offset: -10vw;
    }
}

@media (min-width: 808px) {
    .website-navigation--wide-layout [data-submenu="developers"] {
        --submenu-left-offset: -200px;
    }

    .website-navigation__compact-layout [data-submenu="solutions"] {
        --submenu-left-offset: -10vw;
    }

    .website-navigation__compact-layout [data-submenu="developers"] {
        --submenu-left-offset: -30vw;
    }
}

@media (min-width: 768px) and (max-width: 999px) {
    .website-navigation__compact-layout [data-submenu="resources"] {
        --submenu-left-offset: -15vw;
    }
}

[data-submenu] .desktop-nav__submenu {
    left: var(--submenu-left-offset, 0);
    right: auto;
}

@media (max-width: 1399px) {
    [data-submenu="product"] .desktop-nav__submenu-group-columns--multi {
        flex-direction: column;
        gap: var(--website-navigation-submenu-item-gap);
    }
}

@media (min-width: 1400px) {
    [data-submenu="product"] .desktop-nav__submenu-last-item {
        width: calc(400px * 2 + var(--desktop-nav-submenu-column-gap)) !important;
    }
}

/* Product submenu: stack the two groups into one column, flip the divider to horizontal */
@media (min-width: 768px) and (max-width: 887px) {
    [data-submenu="product"] .desktop-nav__submenu-content {
        flex-direction: column;
        gap: var(--website-navigation-items-group-gap-vertical);
        max-width: 600px;
        width: auto;
    }

    .desktop-nav--separator [data-submenu="product"] .desktop-nav__submenu-group:not(:first-child):before {
        border-left: none;
        border-top: var(--website-navigation-submenu-panel-border);
        height: auto;
        left: auto;
        top: calc(var(--website-navigation-items-group-gap-vertical) * -.5);
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 807px) {
    [data-submenu="solutions"] .desktop-nav__submenu-content,
    [data-submenu="developers"] .desktop-nav__submenu-content {
        flex-direction: column;
        gap: var(--website-navigation-items-group-gap-vertical);
        max-width: 600px;
        width: auto;
    }

    .desktop-nav--separator [data-submenu="solutions"] .desktop-nav__submenu-group:not(:first-child):before,
    .desktop-nav--separator [data-submenu="developers"] .desktop-nav__submenu-group:not(:first-child):before {
        border-left: none;
        border-top: var(--website-navigation-submenu-panel-border);
        height: auto;
        left: auto;
        top: calc(var(--website-navigation-items-group-gap-vertical) * -.5);
        width: 100%;
    }
}

.mobile-menu-checkbox {
    display: none
}

.mobile-nav__submenu-content {
    width: 100%;
}

.mobile-nav__menu>div {
    margin-bottom: -4px;
}

.mobile-nav__menu-item::-webkit-details-marker {
    display: none;
}

@media(max-width: 767px) {
    .mobile-nav {
        display: none;
        opacity: 0;
        transform: translateY(-10px);
        transition: opacity .3s ease-in-out, transform .3s ease-in-out
    }

    .mobile-menu-checkbox:checked~.website-navigation-container .mobile-nav {
        display: block;
        opacity: 1;
        transform: translateY(0)
    }

    .website-navigation__mobile-menu-button span {
        display: inline-block;
        font-size: 16px;
        height: 1em;
        position: relative;
        width: 1em;
    }

    .website-navigation__mobile-menu-button i {
        align-items: center;
        display: flex;
        height: 100%;
        justify-content: center;
        left: -5px;
        position: absolute;
        top: 5px;
        transform-origin: center;
        transition: transform .4s cubic-bezier(0.4, 0, 0.2, 1), opacity .3s ease-in-out;
        width: 100%;
    }

    .mobile-menu-checkbox+.website-navigation-container .website-navigation__mobile-menu-button .pi-bars {
        opacity: 1;
        transform: rotate(0deg)
    }

    .mobile-menu-checkbox+.website-navigation-container .website-navigation__mobile-menu-button .pi-times {
        opacity: 0;
        transform: rotate(180deg)
    }

    .mobile-menu-checkbox:checked+.website-navigation-container .website-navigation__mobile-menu-button .pi-bars {
        opacity: 0;
        transform: rotate(180deg)
    }

    .mobile-menu-checkbox:checked+.website-navigation-container .website-navigation__mobile-menu-button .pi-times {
        opacity: 1;
        transform: rotate(0deg)
    }

    .website-navigation__page-overlay {
        display: none;
    }

    .mobile-menu-checkbox:checked~.website-navigation-container .website-navigation__page-overlay {
        display: flex;
    }

    .page-content-container.website-navigation {
        --website-navigation-padding-y: 13.5px;
        --page-content-spacing-x: 16px;
    }

    .mobile-nav__menu-item+.mobile-nav__submenu {
        display: flex;
        max-height: 0;
        opacity: 0;
        overflow: hidden;
        transition: opacity .3s ease-in-out, max-height .3s ease-in-out, visibility .3s ease-in-out;
        visibility: hidden;
    }

    .mobile-nav__dropdown-icon {
        transition: transform .3s ease-in-out
    }

    details[open]>.mobile-nav__submenu {
        max-height: 2000px;
        opacity: 1;
        visibility: visible
    }

    details[open]>.mobile-nav__menu-item .mobile-nav__dropdown-icon {
        transform: rotate(180deg)
    }
}

/* Footer Styles Adjustments  */
.footer-columns-desktop__column-item {
    font-size: 16px;
    margin-bottom: 0px;
}

.footer-columns-desktop__column-title {
    margin: 0px;
}

.footer__brand--desktop.footer-brand {
    align-items: flex-start;
}

.footer-brand__social .button {
    height: auto;
}

.footer-columns-desktop__column-item.nav-button--align-to-left {
    margin-left: calc(var(--spacing-sm) * -1);
}

.footer-columns-desktop__column-item.nav-button--extended {
    padding: var(--spacing-xs) var(--spacing-sm);
}

.footer-legal__links .palette-plain-link {
    font-size: 16px;
}

.footer-columns-mobile__menu-item::-webkit-details-marker {
    display: none;
}

@media (max-width: 767px) {
    .footer-columns-mobile__section>.footer-columns-mobile__submenu {
        display: flex;
        max-height: 0;
        opacity: 0;
        overflow: hidden;
        transition: opacity 0.3s ease-in-out, max-height 0.3s ease-in-out, visibility 0.3s ease-in-out;
        visibility: hidden;
    }

    .footer-columns-mobile__section[open]>.footer-columns-mobile__submenu {
        max-height: 2000px;
        opacity: 1;
        visibility: visible;
    }

    .footer-columns-mobile__section[open]>.footer-columns-mobile__menu-item .footer-columns-mobile__dropdown-icon {
        transform: rotate(180deg);
    }

    .footer-columns-mobile__dropdown-icon {
        transition: transform 0.3s ease-in-out;
    }
}

.button {
    height: 49px;
}

.website-navigation__mobile-menu-button.button {
    height: auto;
}

.nav-button {
    font-weight: 480;
}

.nav-button:not(.nav-button--extended) {
    height: 35px;
}

a.nav-button--extended-mobile {
    width: 100%;
}

.nav-button--extended-mobile {
    font-size: 16px;
    font-weight: 740;
}

.footer-columns-mobile__submenu-content {
    width: 100%;
}

.footer__desktop-columns-container {
    flex-grow:1
}

.marketing-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
}

.nav-button__label--bold {
    font-size: 16px;
    font-weight: 740;
}

.masthead {
    margin-bottom: 140px;
}

@media (max-width: 767px) {
    .masthead {
        margin-bottom: 57px;
    }
}

.marketing-page-stick {
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 100;
}

.mobile-nav__menu-item {
    font-size: 16px;
    margin-bottom: 0px;
}

.mobile-nav__submenu-group-title {
    font-size: 16px;
}

.footer-columns-mobile__menu-item {
    border-bottom: 3px solid transparent;
    font-size: 16px;
}

.nav-button__extended-content {
    width: auto;
    font-size: 14px;
}

.nav-button__label--small {
    font-size: 14px;
}
