a:link, a.swd_link:link, a:visited, a.swd_link:visited {
    outline: 0;
    text-decoration: none;
}

a:focus-visible, a.swd_button:focus-visible, a:link:focus-visible {
  outline: 2px solid -webkit-focus-ring-color;
  outline: 2px solid highlight;
}

.swd_text_button {
    font-size: 1.5rem;
    font-weight: 400;
    display: inline-block;
    cursor: pointer;
}

nav {
    display: block;
    unicode-bidi: isolate;
}

.icon {
  display: inline-block;
  width: 24px;
  aspect-ratio: 1 / 1;
  transition: transform 0.3s ease-in-out;
}

.icon--menu-arrow {
  background-image: url(https://5044869.fs1.hubspotusercontent-na1.net/hubfs/5044869/icon-arrow-dark.svg);
  background-size: contain;
  background-position: center;
}

/* Top Navbar */
div:has( > header) {
  position: sticky;
  top: 0;
  z-index: 999;
  background-color: white;
}

/* Sub Navbar */
.row-fluid-wrapper.row-depth-1.row-number-1.dnd_area-row-0-force-full-width-section.dnd-section.dnd_area-row-0-padding {
  position: sticky;
  top: 62px;
  z-index: 999;
}

#SWD_Header .header-bottom {
    height: var(--subnav-h);
    padding: 0;
    top: var(--nav-h);
    background-color: var(--mrb-lightblue);
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: none;
    transition: box-shadow ease 300ms;
    z-index: 99999999999999;
}

#SWD_Header .header-bottom .menu-container .sub-menu-background {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: transparent;
    transition: background-color 400ms ease-out;
    pointer-events: none;
    z-index: 99;
}

#SWD_Header .header-bottom .menu-container .sub-menu-items a.sub-menu-link {
  padding: 0 8px;
  
  &:not(.lnkResources, .lnkSolutions)::after {
    display: block;
    padding-top: 0;
    content: '';
    border-bottom: solid 2px var(--mrb-blue);
    
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: -webkit-transform 250ms ease-out;
    transition: -webkit-transform 250ms ease-out;
    -o-transition: transform 250ms ease-out;
    transition: transform 250ms ease-out;
    transition: transform 250ms ease-out,-webkit-transform 250ms ease-out;
  }
  
  @media (hover: hover) and (pointer: fine) {
    &:hover {
      color: var(--mrb-blue);  

      &::after {
        transform: scaleX(1);
      }
    }
  }
}

#SWD_Header .header-bottom .menu-container a, #SWD_Header .header-bottom .menu-lang a {
    display: block;
    padding: 3px 14px;
    text-decoration: none;
}

#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper .sub-menu-link-dropdown {
    background-color: #fff;
    position: absolute;
    top: 32px;
    left: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all ease-in 300ms;
    border-radius: 8px;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, .15), 0 0 4px 0 rgba(0, 0, 0, .25);
    padding: 8px 0;
    min-width: 366px;
}

#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper .sub-menu-link-dropdown .solutions-sub-menu-link:hover,
#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper .sub-menu-link-dropdown .resources-sub-menu-link:hover {
  background-color: #f7fbff;
  
  .link-label-top {
      color: var(--mrb-blue);
  }
}

#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper .sub-menu-link-dropdown .solutions-sub-menu-link span.link-label-top, 
#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper .sub-menu-link-dropdown .resources-sub-menu-link span.link-label-top {
  display: block;
  font-weight: 500;
  color: #141414;
  transition: all ease 300ms;
  
  font-size: 1rem;
  line-height: 1.55;
  color: #141414;
}

#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper .sub-menu-link-dropdown .solutions-sub-menu-link span.link-label-bottom, 
#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper .sub-menu-link-dropdown .resources-sub-menu-link span.link-label-bottom {
  display: block;
  font-weight: 500;
  color: #414141;
  transition: all ease 300ms;
  
  font-size: 0.875rem;
  line-height: 1.5;
  color: #414141;
}

#SWD_Header {
    --mrb-blue: #043686;
    --mrb-blue-hover: #021349;
    --mrb-lightblue: #e8f3ff;
    --nav-h: 80px;
    --subnav-h: 58px;
}

#SWD_Header .header-bottom .menu-container .sub-menu-items a.sub-menu-link {
    padding: 0 8px;
}

#SWD_Header .header-bottom .menu-container a, #SWD_Header .header-bottom .menu-lang a {
    display: block;
    padding: 3px 14px;
    text-decoration: none;
}

#SWD_Header .swd_text_button.mrb {
    color: #141414;
    font-size: 1.125rem;
    line-height: 1.6;
    font-weight: 500;
}

#SWD_Header .header-bottom .menu-container .sub-menu-items a.sub-menu-link.lnkSolutions, #SWD_Header .header-bottom .menu-container .sub-menu-items a.sub-menu-link.lnkResources {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    font-size: 1.25rem;
    line-height: 1.6;
    color: #141414;
    font-weight: 500;`
    padding: 0;
}

#SWD_Header .header-bottom .menu-container .sub-menu-items a.sub-menu-link.open {
  color: var(--mrb-blue);
  
  .icon--menu-arrow {
    transform: rotate(180deg);
    background-image: url(https://5044869.fs1.hubspotusercontent-na1.net/hubfs/5044869/icon-menu-arrow-blue.svg);
  }
  
  & + .sub-menu-link-dropdown {
    pointer-events: all;
    opacity: 1;
    visibility: visible;
    transform: translateY(10px);
  }
}

#SWD_Header .header-bottom .menu-container .sub-menu-mobile {
    display: none;
}

#SWD_Header .header-bottom .menu-container .sub-menu-items {
    display: flex;
    gap: 40px;
    justify-content: center;
    align-items: center;
}

#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper .sub-menu-link-dropdown {
    background-color: #fff;
    position: absolute;
    top: 32px;
    left: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all ease-in 300ms;
    border-radius: 8px;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, .15), 0 0 4px 0 rgba(0, 0, 0, .25);
    padding: 8px 0;
    min-width: 366px;
}

#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper .sub-menu-link-dropdown .solutions-sub-menu-link, 
#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper .sub-menu-link-dropdown .resources-sub-menu-link {
    display: block;
    padding: 12px 16px;
    border-bottom: 1px solid rgba(112, 120, 126, .5);
    background-color: transparent;
    transition: background ease 300ms;
  
  &:last-of-type {
    border-bottom: none;
  }
}

#SWD_Header .header-bottom .menu-container .sub-menu-items .sub-menu-link-wrapper {
    position: relative;
}

@media only screen and (max-width: 1536px) {
    #SWD_Header .header-bottom .menu-container .sub-menu-items {
        gap: 32px;
    }
}

@media only screen and (max-width: 1536px) {
    #SWD_Header {
        --nav-h: 76px;
        --subnav-h: 54px;
    }
}

@media only screen and (max-width: 767px) {
  #SWD_Header {
    --nav-h: 62px;
    --subnav-h: 0px;
  }
  
  #SWD_Header .header-bottom .menu-container {
    -webkit-user-select: none;
    user-select: none;
  }
  
  #SWD_Header .header-bottom .menu-container .sub-menu-mobile {
    display: block;
    background: #fff;
    padding: 16px 0;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: 504px;
    transform: translateX(-100%);
    transition: transform ease-out 400ms;
  }
  
  #SWD_Header .header-bottom .menu-container .sub-menu-items {
    display: none;
  }
  
  #SWD_Header .header-bottom .menu-container .sub-menu-mobile .btnCloseMobileMenu {
    display: block;
    position: relative;
    width: 24px;
    height: 24px;
    margin-left: 16px;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center center;
    background-image: url("https://www.myregistry.com/RegistryWidget/v2/Images/content/icon-close-x-mrb.svg");
    padding: 0;
  }
  
  #SWD_Header.merchant-header.show-mobile-menu .header-bottom .menu-container .sub-menu-mobile {
    transform: translateX(0);
  }
  
  /* Style the menu link items and dropdowns */
  
  
}





@media only screen and (max-width: 1536px) {
    #SWD_Header {
        --nav-h: 76px;
        --subnav-h: 54px;

        .header-top {
            .swd_button, .swd_text_button {
                font-size: 1.125rem;
                line-height: 1.55;
            }

            .box-left {
                .content-logo {
                    width: 164px;
                    height: 33px;
                }

                .sub_logo {
                    height: 16px;
                    min-width: 152px;
                    background-size: 152px 16px;
                }
            }
        }

        .header-bottom {
            .menu-container {
                .sub-menu-items {
                    gap: 32px;
                }
            }
        }
    }
}

@media only screen and (min-width: 1025px) {
    .mr-culture-es-US {
        #SWD_Header {
            .header-top {
                .box-right {
                    width: auto;
                }

                .box-middle {
                    width: calc(100% - 615px);
                }
            }
        }
    }
}

@media only screen and (max-width: 1100px) and (min-width: 641px) {
    html.mr-culture-es-US #SWD_Header .header-top .box-right .content-action .swd_button.small {
        padding: 4px 40px;
        font-size: 1.125rem;
    }
}

@media only screen and (max-width: 1024px) {
    #SWD_Header {
        --nav-h: 62px;
     

        .header-top {
            overflow: visible;
            box-shadow: 0 2px 8px 0 rgba(0,0,0,.2);
            padding: 5px 16px;
            align-items: center;
            gap: 16px;

            #btnMobileMenu {
                display: block;
                flex: 0 0 24px;
                width: 24px;
                height: 24px;
                position: relative;
                top: initial;
                left: initial;
                background-repeat: no-repeat;
                background-position: center center;
                background-size: 100%;
                background-image: url("https://www.myregistry.com/RegistryWidget/v2/Images/content/icon-menu-mrb.svg");
            }

            .box-left {
                padding: 0;

                .content-logo {
                    width: 142px;
                    height: 30px;
                }

                .sub_logo {
                    height: 15px;
                    min-width: 133px;
                    background-size: 133px 15px;
                }
            }

            .box-right {
                display: none;
            }
        }

        .header-bottom {
            .menu-container {
                .sub-menu-background {
                    display: block;
                }

                .sub-menu-items {
                    /*display: none;*/
                }

                .sub-menu-mobile {
                    display: block;
                    background: #fff;
                    padding: 16px 0;
                    position: fixed;
                    z-index: 99;
                    top: 0;
                    bottom: 0;
                    left: 0;
                    width: 100%;
                    max-width: 504px;
                    transform: translateX(-100%);
                    transition: transform ease-out 400ms;

                    .btnCloseMobileMenu {
                        display: block;
                        position: relative;
                        width: 24px;
                        height: 24px;
                        margin-left: 16px;
                        background-repeat: no-repeat;
                        background-size: 100%;
                        background-position: center center;
                        background-image: url("https://www.myregistry.com/RegistryWidget/v2/Images/content/icon-close-x-mrb.svg");
                        padding: 0;
                    }

                    .sub-menu-mobile-items {
                        margin: 16px 0;
                        overflow: auto;
                        max-height: calc(100dvh - 190px);

                        .sub-menu-mobile-link {
                            display: block;
                            padding: 16px;
                            text-align: left;
                            color: #141414;
                            font-weight: 500;
                            font-size: 1.125rem;
                            line-height: 1.6;
                            border-top: 1px solid rgba(112, 120, 126, 0.50);
                            transition: color ease 400ms;

                            &:first-child {
                                border-top: 0;
                            }

                            &.lnkSolutions, &.lnkResources {
                                display: flex;
                                align-items: center;
                                justify-content: flex-start;
                                gap: 4px;

                                .menu-arrow {
                                    width: 24px;
                                    height: 24px;
                                    flex: 0 0 24px;
                                    transition: all ease-out 400ms;
                                    background-repeat: no-repeat;
                                    background-size: 100%;
                                    background-position: center center;
                                    background-image: url("https://www.myregistry.com/RegistryWidget/v2/Images/content/icon-menu-arrow.svg");
                                    position: relative;
                                    top: 2px;
                                }

                                &.open {
                                    color: var(--mrb-blue);

                                    .menu-arrow {
                                        transform: rotate(180deg);
                                        background-image: url("https://www.myregistry.com/RegistryWidget/v2/Images/content/icon-menu-arrow-mrb.svg");
                                    }
                                }
                            }
                          
                          &.lnkSolutions {
                            &.open {
                              & + .solutions-sub-menu{
                                max-height: 360px;
                              }
                            }
                          }
                          
                          &.lnkResources {
                            &.open {
                              & + .resources-sub-menu{
                                max-height: 360px;
                              }
                            }
                          }
                          
                        }

                        .solutions-sub-menu, .resources-sub-menu {
                            overflow: hidden;
                            height: 100%;
                            max-height: 0;
                            transition: max-height ease-out 400ms;

                            .solutions-sub-menu-link, .resources-sub-menu-link {
                                padding: 12px 16px;
                                display: block;

                                span {
                                    display: block;
                                    font-weight: 500;

                                    &.link-label-top {
                                        font-size: 1rem;
                                        line-height: 1.55;
                                        color: #141414;
                                        letter-spacing: 0.15px;
                                    }

                                    &.link-label-bottom {
                                        font-size: 0.875rem;
                                        line-height: 1.42857;
                                        color: #414141;
                                        letter-spacing: 0.5px;
                                    }
                                }
                            }
                        }
                    }

                    .sub-menu-mobile-actions {
                        display: flex;
                        flex-wrap: wrap;
                        gap: 16px;
                        padding: 0 16px;
                        max-width: 392px;
                        box-sizing: border-box;
                        margin: 0 auto;

                        .action-item {
                            flex: 1 1 100%;
                            padding: 8px 24px;
                            font-size: 1rem;
                            line-height: 1.5;
                        }
                    }
                }
            }
        }

        &.merchant-header.show-mobile-menu {
            .header-bottom {
                .menu-container {
                    .sub-menu-background {
                        background: rgba(0, 0, 0, 0.50);
                        pointer-events: all;
                    }

                    .sub-menu-mobile {
                        transform: translateX(0);
                    }
                }
            }
        }
    }
}

@media only screen and (max-width: 767px) {
  #SWD_Header {
    --subnav-h: 0;
  }
  
  .sub-menu-items {
    display: none;
  }
}

@media only screen and (max-width: 640px) {
    #SWD_Header {
        &.header-visitor {
            .header-top {
                height: var(--nav-h);

                .box-left {
                    padding: 0;

                    .content-logo {
                        margin: 0;
                    }
                }
            }
        }

        .header-bottom {
            .menu-container {
                .sub-menu-mobile {
                    max-width: 290px;
                }
            }
        }
    }
}

