:root {
  /* Typography - Size */

  /* Typography - Weight */

  /* Colors */

  /* Colors - Neutral */

  /* CTA */

  /* Font Family */

  /* Spaces */

  /* Border Size */

  /* Border style */

}


/* for external sites - maintain grid - START */
header.main-menu__container,
header.main-menu__container *,
header *::after,
header *::before {
  box-sizing: border-box;
}

.main-menu__container .osicon-link-out::before {
  content: "\e920";
}

.main-menu__container .osicon-search::before {
  content: "\e908";
}

.main-menu__container .osicon-close::before {
  content: "\e92b";
}

.main-menu__container .osicon-deck::before {
  content: "\e956";
}

.main-menu__container .osicon-user::before {
  content: "\e948";
}

.main-menu__container .osicon-message::before {
  content: "\e947";
}

.main-menu__container .osicon-arrow-link-thin::before {
  content: "\e921";
}

.main-menu__container a,
.main-menu__container a:link {
  text-decoration: none;
}

.main-menu__container ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.main-menu__container__container-os {
  padding-right: 15px;
  padding-left: 15px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

@media (min-width: 992px) {
  .main-menu__container__container-os {
    max-width: 960px;
  }
  
}

@media (min-width: 1200px) {
  .main-menu__container__container-os {
    max-width: 1140px;
    padding-right: 23px;
    padding-left: 7px;
  }

  .main-menu__container__background--transparent .main-menu__container__container-os {
    padding-left: 15px;
  }

  .refresh__main-menu-navigation .tab-content .tab-pane > .container {
    padding-right: 23px;
  }

  .main-menu__search button.main-menu__search__btn i.osicon-search {
    font-size: 18px;
  }

  .refresh__main-menu-navigation + .main-menu__search .main-menu__search__btn {
    height: 93%;
  }
}

/* for external sites - maintain grid - END */
.main-menu__container {
  box-shadow: inset 0 -1px 0 #DEE0DB;
  display: block
    /* prevent scroll header off screen on mobile open menu*/
  ;
  font-family: 'NotoSans'
,
Helvetica
,
Arial
,
sans-serif;
  font-size: 18px;
  font-weight: 500;
  left: 0;
  line-height: 1.558;
  margin: 0;
  position: fixed;
  top: 0;
  transform: translate3d(0, 0, 0);
  width: 100vw;
  z-index: 1000;
  /* override footer z-index and slider  */
}

.main-menu__container--transparent {
  box-sizing: border-box;
  margin: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 10;
}

.main-menu__container__background {
  box-shadow: inset 0 -1px 0 #DEE0DB;
  position: relative;
  width: 100%;
  /* for only-log version */
  z-index: 2;
}

.main-menu__container__background-mobile {
  display: flex;
  min-height: 61px;
}

.main-menu__container__background--transparent {
  position: relative;
  width: 100%;
  /* for only-log version */
  z-index: 2;
}

.main-menu__overlay {
  background: rgba(81, 88, 96, .5);
  content: "";
  cursor: pointer;
  height: 0;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  visibility: hidden;
  width: 100vw;
  z-index: 1;
}

.main-menu__container__second-nav {
  display: none;
}

.main-menu__container .main-menu__container__community-try,
.main-menu__container .main-menu__container__community-try:link,
.main-menu__container .main-menu__container__community-try:visited {
  font-size: 0.977em;
  line-height: 1.479;
  padding: 9px 18px;
  text-align: center;
}

/* MENU BURGUER START */
.main-menu__container .menu-burger {
  align-items: center;
  background-color: transparent;
  border: 1px solid transparent;
  color: #4D4D49;
  display: inline-flex;
  font-family: 'NotoSans'
,
Helvetica
,
Arial
,
sans-serif;
  font-size: 13px;
  /* in px because of other files css */
  font-weight: 700;
  height: 60px;
  line-height: 22px;
  position: absolute;
  right: 0;
  text-transform: uppercase;
  top: 0;
}

.main-menu__container .menu-burger__text {
  line-height: 14px;
  /* to align to the icon in ipad */
}

.main-menu__container .menu-burger .nav-icon1 {
  cursor: pointer;
  display: block;
  height: 14px;
  margin-left: 6px;
  position: relative;
  transform: rotate(0deg);
  transition: 0.5s ease-in-out;
  width: 21px;
}

.main-menu__container .menu-burger .nav-icon1 span {
  background: #4D4D49;
  display: block;
  height: 2px;
  left: 0;
  opacity: 1;
  position: absolute;
  transform: rotate(0deg);
  transition: 0.25s ease-in-out;
  width: 12px;
}

.main-menu__container .menu-burger .nav-icon1 span:nth-child(1) {
  top: 2px;
}

.main-menu__container .menu-burger .nav-icon1 span:nth-child(2) {
  top: 6px;
}

.main-menu__container .menu-burger .nav-icon1 span:nth-child(3) {
  top: 10px;
}

/* LOGIN AREA */
.main-menu__container__login {
  font-size: 16px;
  width: 100%;
}

.main-menu__container__login__link {
  align-items: center;
  background-color: transparent;
  display: flex;
  margin-right: 18px;
  position: relative;
}

.main-menu__container__login__link {
  margin-right: 0;
}

.main-menu__container__login__link__name {
  color: #4D4D49;
  display: -webkit-box;
  font-family: 'NotoSans'
,
Helvetica
,
Arial
,
sans-serif;
  font-size: 1.03em;
  font-weight: 700;
  line-height: 1.477;
  margin-left: 8px;
  overflow: hidden;
  padding-right: 15px;
  word-break: break-all;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.main-menu__container__login__link .osicon-arrow-right {
  bottom: 18px;
  color: #4D4D49;
  font-size: 1.03em;
  line-height: 1.477;
  position: absolute;
  right: 15px;
}

.main-menu__container__login__link__img-container {
  align-items: center;
  display: inline-flex;
  height: 24px;
  justify-content: center;
  margin-left: 7px;
  position: relative;
  width: 24px;
}

.main-menu__container__login__link__img-container:before {
  content: '';
  border: 2px solid transparent;
  border-radius: 100%;
  height: 24px;
  position: absolute;
  left: 0;
  top: 0;
  width: 24px;
}

.main-menu__container__login__link__img {
  border-radius: 100%;
  flex-shrink: 0;
  height: 24px;
  object-fit: cover;
  width: 24px;
}

.main-menu__container--logged-in .osicon-deck {
  background-color: #F2F5F0;
  bottom: 10px;
  color: #4D4D49;
  font-size: 0.8226em;
  left: 13px;
  line-height: 1;
  padding: 2px;
  position: absolute;
  transition: 150ms ease all;
  z-index: 1;
}

.main-menu__container__community-try {
  flex-shrink: 0;
  font-size: 0.889em;
  margin-left: 18px;
}

@media (min-width: 768px) {
  .main-menu__container__logo {
    padding-right: 24px;
  }
}

@media (min-width: 992px) {

  .main-menu__container__background {
    background-color: #fff;
  }

  .main-menu__container .main-menu__container__container-os {
    display: flex;
    position: relative;
    z-index: 2;
  }

  .main-menu__container__second-nav {
    background-color: #F2F5F0;
    display: block;
    font-family: 'NotoSans'
,
Helvetica
,
Arial
,
sans-serif;
    position: relative;
    z-index: 3;
  }

  .main-menu__container__second-nav .main-menu__container__container-os {
    align-items: center;
    height: 28px;
    justify-content: flex-end;
  }

  .main-menu__container__second-nav__list,
  .main-menu__container__second-nav__list .component-content {
    display: flex;
  }

  .main-menu__container__second-nav__list li {
    align-items: center;
    display: inline-flex;
  }

  a.main-menu__container__second-nav__link,
  /* the a is to prevent browser color styling */
  a.main-menu__container__second-nav__link:link {
    color: #4D4D49;
    font-size: 0.625em;
    line-height: 1.742;
    margin-left: 18px;
  }

  .main-menu__container__second-nav__link .osicon-user {
    margin-right: 6px;
  }

  a.main-menu__container__second-nav__link:hover,
  a.main-menu__container__second-nav__link:link:hover {
    text-decoration: underline;
  }

  .main-menu__container__logo {
    align-items: center;
    display: flex;
    flex-grow: 1;
    padding-right: 46px;
  }

  .main-menu__container__logo img {
    font-size: 0.667em;
    /* in case the image doesn't load */
    height: 32px;
    width: 165px;
  }

  .main-menu__container__nav-content {
    display: flex;
    flex-grow: 2;
    justify-content: space-between;
  }

  .main-menu__container__center ul#main_menu__list {
    display: flex;
    flex-flow: row wrap;
  }

  .main-menu__container__right {
    align-items: center;
    display: flex;
  }

  .main-menu__container .main-menu__container__community-try,
  .main-menu__container .main-menu__container__community-try:link,
  .main-menu__container .main-menu__container__community-try:visited {
    font-size: 0.8999em;
    line-height: 1.6049;
    padding: 8px 16px;
  }

  .main-menu__container a:hover,
  .main-menu__container a:active {
    outline: 0;
  }

  .main-menu__container .menu-burger {
    display: none;
  }

  /* LOGIN */
  .main-menu__container__login {
    font-size: 18px;
    position: relative;
  }

  .main-menu__container__login__link {
    margin-left: 18px;
    padding: 14px;
    transition: 150ms ease all;
  }

  .main-menu__container--logged-in .main-menu__item.main-menu__container__login__link,
  .main-menu__container--logged-in .main-menu__item.main-menu__container__login__link:hover {
    padding: 0;
  }

  .main-menu__container__login__link__img-container {
    margin-left: 0;
  }

  .main-menu__container__login__link__img-container,
  .main-menu__container__login__link__img-container:before,
  .main-menu__container__login__link__img {
    height: 36px;
    /* prevent problems with mvp border */
    width: 36px;
  }

  .main-menu__container--logged-in .osicon-deck {
    background-color: #fff;
    bottom: 2px;
    font-size: 0.864em;
    left: -3px;
  }

  .main-menu__container__login__link:hover .osicon-deck {
    color: #FA173D;
  }

  .main-menu__container__login__link .osicon-arrow-right,
  .main-menu__item[aria-expanded="false"]~.main-menu__submenu-content.main-menu__container__login__dropdown {
    display: none;
  }

  .main-menu__container__login__dropdown,
  .main-menu__item[aria-expanded="true"]~.main-menu__submenu-content.main-menu__container__login__dropdown {
    /* override css */
    box-shadow: 0px 4px 10px rgba(10, 20, 30, 0.1);
    display: inline-block;
    left: auto;
    overflow: hidden;
    right: 10px;
    top: 58px;
    transform: none;
    width: 360px;
  }

  .main-menu__container--logged-in .main-menu__container__login__dropdown,
  .main-menu__container--logged-in .main-menu__item[aria-expanded="true"]~.main-menu__submenu-content.main-menu__container__login__dropdown {
    right: 0;
  }

  .main-menu__container__login__link__name {
    display: none;
  }
}

/* START IE ONLY */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
  .main-menu__container--logged-in .osicon-deck {
    bottom: -4px;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {

  html[lang=ja-JP] .main-menu__container__nav-content {
    font-size: 0.7em;
  }

  .main-menu__container__logo {
    padding-right: 27px;
  }
}

@media (max-width: 991.98px) {

  /* fix for drift */
  .main-menu__container__background-mobile {
    background-color: #fff;
    box-shadow: inset 0 -1px 0 #DEE0DB;
  }

  .main-menu__container__background--transparent .main-menu__container__background-mobile {
    background-color: transparent;
    box-shadow: none;
  }

  .main-menu__container {
    box-shadow: none;
  }

  .main-menu__container--transparent .main-menu__container__container-os {
    padding: 0;
  }

  .main-menu__container .main-menu__container__container-os {
    flex-flow: column;
    padding: 0;
  }

  .main-menu__container__logo__img {
    height: 27px;
    width: 139px;
  }

  .main-menu__container__nav-content {
    flex-flow: column;
    height: 0;
    overflow: hidden;
  }

  .main-menu__container__logo {
    height: 60px;
    max-width: 190px;
    padding: 15px;
  }

  .main-menu__container ul#main_menu__list {
    flex-flow: column;
    padding-bottom: 18px;
    width: 100%;
  }

  ul#main_menu__list>li {
    border-bottom: none;
    display: block;
    width: 100%;
  }

  .main-menu__container__right {
    align-items: center;
    background-color: #F2F5F0;
    bottom: 0;
    display: flex;
    justify-content: space-between;
    padding: 16px 15px 24px 15px;
    position: absolute;
    width: 100%;
    z-index: 4;
  }

  .main-menu__container__center li {
    height: auto;
    border-bottom: 1px solid #C9CBC6;
    padding: 1rem 0;
  }

  .main-menu__container__center li:last-of-type {
    border-bottom: 0;
  }

  .main-menu__container__center li.language-switcher__dropdown__options {
    padding: 0;
  }

  .main-menu__container__center li.main-menu__1lvl__entry--mobile {
    border-bottom: 0;
    padding: 1.5rem 0 0;
    margin-top: 0 !important;
  }

  .main-menu__container__center li.main-menu__1lvl__entry--mobile:first-of-type a::before {
    content: "\e96d";
  }

  .main-menu__container__center li.main-menu__1lvl__entry--mobile:nth-child(2) a::before {
    content: "\e928";
  }

  .mobile__menu__logo {
    display: block;
    padding: 14px 15px;
  }

  .mobile__menu__container {
    background-color: #fff;
    display: flex;
    height: 0;
    position: relative;
    width: 100%;
  }

  /* LOGIN */
  .main-menu__container--logged-in .mobile__menu__container__center,
  .main-menu__container--logged-in .mobile__content__card {
    height: calc(100% - 135px);
  }

  .main-menu__container--logged-in .main-menu__container__right {
    padding: 0;
    position: static;
  }
}

.main-footer {
  background-color: #0F0E0B;
  box-shadow: none;
  border-top: 1px solid #62625F;
  font-family: 'NotoSans'
,
Helvetica
,
Arial
,
sans-serif;
  font-size: 18px;
  font-weight: 500;
  left: 0;
  line-height: 1.558;
  overflow-x: hidden;
  overflow-y: hidden;
  padding-top: 72px;
  position: static;
  top: 0;
  transition: transform 200ms ease-out;
  width: 100%;
  z-index: 100;
}