@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url("../fonts/ib-home/manrope-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* Final header interaction: menu hover changes text colour only. */
.nix_header .menu_pc .navbar-nav > li > a,
.nix_header .menu_pc .navbar-nav > li > a:hover,
.nix_header .menu_pc .navbar-nav > li > a:focus,
#top-fixed .navbar-nav > li > a,
#top-fixed .navbar-nav > li > a:hover,
#top-fixed .navbar-nav > li > a:focus {
  background: transparent !important;
  background-color: transparent !important;
  font-weight: 400 !important;
  transition: color .25s ease !important;
}

.ib-language-switcher { position: relative; display: inline-flex; align-items: center; font-family: "Manrope", Arial, sans-serif; }
.ib-language-switcher__toggle {
  display: inline-flex; align-items: center; gap: 7px; min-width: 38px; height: 32px;
  padding: 0; border: 0; outline: 0; color: #1a1a1a; background: transparent;
  font: inherit; font-size: 16px; font-weight: 400; line-height: 1; cursor: pointer;
}
.ib-language-switcher__toggle::after {
  width: 7px; height: 7px; margin-top: -4px; border-right: 1.5px solid #015971;
  border-bottom: 1.5px solid #015971; content: ""; transform: rotate(45deg);
  transition: transform .22s ease, margin-top .22s ease;
}
.ib-language-switcher.is-open .ib-language-switcher__toggle::after { margin-top: 3px; transform: rotate(225deg); }
.ib-language-switcher__menu {
  position: absolute; top: calc(100% + 9px); left: 50%; z-index: 20050; display: none;
  min-width: 68px; padding: 8px 0; border: 1px solid rgba(1, 89, 113, .14);
  background: #fff5e5; box-shadow: 0 8px 22px rgba(0, 0, 0, .14); transform: translateX(-50%);
}
.ib-language-switcher.is-open .ib-language-switcher__menu { display: block; }
.ib-language-switcher__menu a {
  display: block; padding: 8px 16px; color: #1a1a1a !important; background: transparent !important;
  font-size: 14px; font-weight: 400; line-height: 1; text-align: center; text-decoration: none !important;
  white-space: nowrap; transition: color .2s ease !important;
}
.ib-language-switcher__menu a:hover,
.ib-language-switcher__menu a:focus { color: #015971 !important; }
@media (max-width: 991px) {
  .ib-mobile-languages .ib-language-switcher { display: inline-flex; }
  .ib-mobile-languages .ib-language-switcher__menu { right: auto; left: 0; transform: none; }
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url("../fonts/ib-home/manrope-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "IB Cormorant";
  src: url("../fonts/ib-home/cormorant-normal-cyrillic.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "IB Playfair";
  src: url("../fonts/ib-home/playfair-italic-cyrillic.woff2") format("woff2");
  font-style: italic;
  font-weight: 400;
  font-display: swap;
}

.nix_header {
  font-family: "Manrope", Arial, sans-serif;
  color: #1a1a1a;
  background: #fffbf5;
}

.nix_header #top {
  display: none !important;
}

.ib-utility-bar {
  min-height: 52px;
  color: #fff;
  background: #015971;
}

.ib-utility-bar__inner {
  display: flex;
  justify-content: center;
  gap: 43px;
  align-items: center;
  width: min(100% - 48px, 1300px);
  min-height: 52px;
  margin: 0 auto;
  font-size: 13px;
}

.ib-utility-bar__shipping {
  grid-column: 2;
  font-size: 14px;
}

.ib-utility-bar__phone {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  grid-column: 3;
  justify-self: end;
  color: #fff !important;
  font-size: 18px;
  font-weight: 500;
  transition: color .25s ease;
}

/* Figma: 20px outline handset, not the 28px preview default. */
.ib-utility-bar__phone i,
.ib-utility-bar__phone svg {
  display: block;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  margin: 0;
  font-size: 18px;
  line-height: 1;
  text-align: center;
}

.ib-utility-bar svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ib-utility-bar__actions {
  display: none;
}

.nix_header > .container-fluid {
  background: #fffbf5;
  box-shadow: 0 5px 18px rgba(26, 26, 26, .06);
}

.nix_header > .container-fluid > .for_search {
  width: min(100%, 1300px);
  min-height: 74px;
  margin: 0 auto;
}

.nix_header .header-tel {
  display: none !important;
}

.nix_header #logo img {
  max-height: 48px;
  margin: 0 auto;
}

.nix_header .menu_pc {
  flex: 1 1 auto;
}

.nix_header .menu_pc .navbar-nav > li > a,
.nix_header .menu_pc .btn-link,
.preview-nav__links a {
  color: #1a1a1a;
  /* Figma Home_1440: Manrope 16px, 100% line height, no tracking. */
  font-size: 16px;
  letter-spacing: 0;
  text-transform: uppercase;
  transition: color .25s ease;
}

/* Seven items at 16px crowd the row between the tablet and full desktop widths. */
@media (min-width: 992px) and (max-width: 1279px) {
  .nix_header .menu_pc .navbar-nav > li > a,
  .nix_header .menu_pc .btn-link,
  .preview-nav__links a {
    font-size: 14px;
  }
}

.nix_header .menu_pc .navbar-nav > li > a:focus-visible,
.nix_header .menu_pc .navbar-nav > li.active > a,
.preview-nav__links a:focus-visible {
  color: #015971;
}

.nix_header .box-header-lang,
.nix_header .box-header {
  flex: 0 0 auto;
}

/* The legacy header sits inside a centred wrapper. Paint the navigation band
 * full width so no white gutters appear beside it. */
.nix_header {
  position: relative;
  z-index: 1;
}

/* The legacy theme styles `header.nix_header` more specifically and restores
 * a white background on ultra-wide screens. Keep the Figma navigation band
 * full width instead of leaving white side gutters. */
.common-home header.nix_header {
  background: #fff5e5;
}

.nix_header::before {
  position: absolute;
  z-index: -1;
  top: 52px;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  content: "";
  background: #fffbf5;
  box-shadow: 0 5px 18px rgba(26, 26, 26, .06);
}

.nix_header > .container-fluid {
  min-height: 72px;
  background: #fff5e5;
  box-shadow: 0 3px 3px rgba(0, 0, 0, .2) !important;
}

.nix_header::before {
  box-shadow: none;
}

/* Desktop header geometry follows the preview: centred menu and compact tools. */
@media (min-width: 992px) {
  .nix_header > .container-fluid > .for_search { display: flex; align-items: center; }
  .nix_header .menu_pc { display: flex; justify-content: center; }
  .nix_header .menu_pc ul.navbar-nav { justify-content: center; gap: 34px; }
  .nix_header .menu_pc ul.navbar-nav > li { margin: 0 !important; }
  .nix_header .menu_pc .navbar-nav > li > a,
  .nix_header .menu_pc .btn-link { font-size: 16px !important; padding-right: 0; padding-left: 0; }
  .nix_header .box-header-lang .lang_er { order: 2; }
  .nix_header .box-header-lang .box-account { order: 1; }
  .nix_header .box-header-lang > div:last-child { display: none !important; }
  /* The visible desktop account/search tools are rendered by menu_h.tpl.
   * Keep its language label directly before the account icon and suppress the
   * legacy duplicate block rendered after the menu. */
  .nix_header > .container-fluid > .for_search > .box-header-lang { display: none !important; }
  .nix_header .menu_pc .box-header-lang.fix_mob_r {
    display: flex !important;
    align-items: center;
    gap: 18px;
  }
  .nix_header .menu_pc .box-header-lang.fix_mob_r .box-account,
  .nix_header .menu_pc .box-header-lang.fix_mob_r > div:last-child { display: none !important; }
  .nix_header .menu_pc .box-header-lang.fix_mob_r .lang_er {
    display: block !important;
    position: static !important;
    order: 0 !important;
  }
  .nix_header .menu_pc .box-header-lang.fix_mob_r,
  .nix_header > .container-fluid > .for_search > .box-header-lang,
  .nix_header .for_search > .box-header-lang.hidden-xs { display: none !important; }
  .nix_header .menu_pc .ib-desktop-language {
    display: flex !important;
    align-items: center;
    margin-right: 18px;
  }
  .nix_header .menu_pc .ib-desktop-language .lang_hetr {
    position: static !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }
}

.nix_header .menu_pc .ib-desktop-language { display: none; }

.nix_header .box-header-lang {
  display: flex;
  align-items: center;
  gap: 18px;
}

.nix_header .box-header-lang .lang_er { order: -1; }
.nix_header .box-header-lang .lang_er { position: static !important; right: auto !important; top: auto !important; order: -1 !important; }

/* `menu_h.tpl` also contains a sticky-header-only language block. The generic
 * flex rule above was reviving it and adding a second UA in the centre. */
.nix_header .menu_pc .box-header-lang.fix_mob_r {
  display: none !important;
}

/* Final desktop order: language label before the visible profile control. */
@media (min-width: 992px) {
  .nix_header .menu_pc .box-header-lang.fix_mob_r {
    display: flex !important;
    align-items: center;
    gap: 18px;
  }
  .nix_header .menu_pc .box-header-lang.fix_mob_r .box-account,
  .nix_header .menu_pc .box-header-lang.fix_mob_r > div:last-child { display: none !important; }
  .nix_header .menu_pc .box-header-lang.fix_mob_r .lang_er {
    display: block !important;
    position: static !important;
    order: 0 !important;
  }
}

/* Keep the account control compact like the approved header. The legacy theme
 * exposes its dropdown links inline until the first interaction. */
.nix_header .box-header-lang .box-account .setting-button {
  display: block !important;
  position: relative;
  width: 30px;
  height: 32px;
  padding: 0;
  background: transparent !important;
  cursor: pointer;
}

.nix_header .box-header-lang .box-account .setting-button::before {
  position: absolute;
  inset: 0;
  content: "";
  background: url("../image/ib-home/header-user.svg") center / 27px 27px no-repeat;
}

.nix_header .box-header-lang .box-account .setting-button::after {
  content: none !important;
}

.nix_header .box-header-lang .box-account .setting_info_head {
  display: none !important;
}

.nix_header .box-header-lang .box-account.open .setting_info_head {
  display: block !important;
}

.nix_header .box-header-lang .setting_info_head {
  top: calc(100% + 12px) !important;
  right: 0 !important;
  z-index: 10060 !important;
  margin-top: 0 !important;
}

#login-form-popup { z-index: 10060 !important; }
.modal-backdrop { z-index: 10050 !important; }

.nix_header .header_serch .search-button {
  width: 32px;
  height: 32px;
  background: url("../image/ib-home/header-search.svg") center / 28px 28px no-repeat !important;
}

.nix_header .header_serch .search-button::before,
.nix_header .header_serch .search-button::after {
  content: none !important;
}

.nix_header #cart > .btn > .shop-bag {
  display: block;
  width: 32px;
  height: 32px;
  float: none;
  font-size: 0 !important;
  line-height: 0 !important;
  text-shadow: none !important;
  color: transparent !important;
  background: url("../image/ib-home/header-bag.svg") center / 30px 30px no-repeat;
}

.nix_header #cart > .btn > .shop-bag::before {
  content: none !important;
}

.ib-mobile-brand-row,
.ib-mobile-languages {
  display: none;
}

footer,
footer .footer-top {
  font-family: "Manrope", Arial, sans-serif;
  color: #1a1a1a !important;
  background: #fff5e5 !important;
}

footer .banner-footer,
footer .footer-ribbon,
footer .ib-footer-account-column,
footer .newsletter {
  display: none !important;
}

footer .footer-top > .container:nth-of-type(2) {
  width: min(100% - 48px, 1300px);
  padding: 70px 0 30px;
}

footer .footer-top > .container:nth-of-type(2) > .row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin: 0;
}

/* The legacy footer retains a hidden account column in this row. Explicit
 * placement keeps the four visible design columns on one line. */
footer .ib-footer-brand { grid-column: 1; grid-row: 1; }
footer .ib-footer-links--about { grid-column: 2; grid-row: 1; }
footer .ib-footer-links--additional { grid-column: 3; grid-row: 1; }
footer .ib-footer-contacts { grid-column: 4; grid-row: 1; }

footer .ib-footer-brand,
footer .ib-footer-links,
footer .ib-footer-contacts {
  width: auto;
  padding: 0;
}

footer .ib-footer-brand__logo {
  display: inline-block;
  margin-bottom: 25px;
  color: #015971;
  font-family: "Manrope", Arial, sans-serif;
  font-size: 33px;
  line-height: 1;
  letter-spacing: -.04em;
}

footer .ib-footer-brand p {
  max-width: 245px;
  color: #4d4d4d;
  font-size: 14px;
  line-height: 1.7;
}

footer h3 {
  margin: 0 0 16px !important;
  color: #1a1a1a !important;
  font-family: "Cormorant Garamond", "IB Cormorant", Georgia, serif !important;
  font-size: 24px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

footer h3 i {
  display: none;
}

footer .ib-footer-contacts .fa-width { display: inline-block; width: 24px; margin-right: 10px; font-size: 22px; }
footer .ib-footer-contact-row { display: flex !important; align-items: flex-start; gap: 10px; }
footer .ib-footer-icon { display: block; flex: 0 0 24px; width: 24px; height: 24px; margin: 0; object-fit: contain; }
footer .ib-footer-contact-row > :last-child { min-width: 0; }
footer .ib-footer-contact-heading { margin: 0 0 16px; font-family: "Cormorant Garamond", "IB Cormorant", Georgia, serif; font-size: 18px; line-height: 1.4; }
footer .ib-footer-phones { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px 16px; }
footer .ib-footer-support { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; }
footer .ib-footer-support > a { margin: 0; white-space: nowrap; }
footer .ib-footer-support { font-size: 14px; }
footer .ib-footer-messengers { display: inline-flex; align-items: center; gap: 16px; }
footer .ib-footer-messengers a { display: inline-flex !important; align-items: center; justify-content: center; width: 22px; height: 22px; margin: 0 !important; border-radius: 50%; }
footer .ib-footer-messengers img { display: block; width: 22px; height: 22px; margin: 0; }
footer .ib-footer-messengers a,
footer .ib-footer-messengers a:hover,
footer .ib-footer-messengers a:focus { opacity: 1; transform: none !important; transition: opacity .35s ease !important; }
footer a:focus-visible { outline: 2px solid #015971; outline-offset: 4px; }

/*
 * Underline that grows from the left on enter and retreats to the right on
 * leave. Only background-size is animated; the position flips instantly so the
 * growth always starts from the correct edge.
 */
footer .ib-footer-contacts a,
footer .ib-footer-bottom a,
footer.preview-footer .preview-footer__contacts a,
footer.preview-footer .preview-footer__bottom a {
  background-image: linear-gradient(currentColor, currentColor);
  background-repeat: no-repeat;
  background-size: 0 1px;
  background-position: 100% calc(100% - 1px);
  transition: background-size .38s ease, color .25s ease, font-variation-settings .28s ease;
}

/* Navigation columns answer hover with weight only, no underline. */
footer .ib-footer-links a,
footer.preview-footer .preview-footer__links a {
  font-weight: 300;
  font-variation-settings: "wght" 300;
  transition: color .25s ease, font-variation-settings .28s ease;
}

footer .ib-footer-bottom a { text-decoration: none; }

footer .ib-footer-links .list-unstyled li,
footer .ib-footer-links .list-unstyled li a {
  color: #3f3f3f !important;
  font-size: 18px;
  font-weight: 300;
  line-height: 34px;
}

footer .ib-footer-links .list-unstyled li {
  margin-bottom: 8px;
}

footer .ib-footer-links .list-unstyled li:last-child { margin-bottom: 0; }

footer .ib-footer-contact-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin: 0;
  padding: 0;
}

footer .ib-footer-contact-list > * {
  margin: 0 !important;
}

footer .ib-footer-contacts .ib-footer-contact-list > *,
footer .ib-footer-contacts .ib-footer-contact-list a {
  font-size: 14px;
  line-height: 1.5;
}

footer .ib-footer-links > h3:nth-of-type(n+2) {
  margin-top: 28px !important;
}

footer .ib-footer-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 54px;
  margin-top: 58px;
  padding: 46px 0 0;
  border-top: 1px solid rgba(26, 26, 26, .2);
  color: #666;
  font-size: 14px;
}

footer .ib-footer-bottom a {
  color: #666;
  padding-bottom: 3px;
  background-position: 100% 100%;
}

footer.preview-footer .preview-footer__bottom a {
  padding-bottom: 3px;
  background-position: 100% 100%;
}

footer .footer-top > .container:last-child {
  display: none;
}

@media (max-width: 991px) {
  footer .footer-top > .container:nth-of-type(2) > .row {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 991px) {
  /* The legacy mobile wrapper reserves 70px for its old fixed header. The
   * redesigned header is in normal flow, so that reservation becomes a white
   * strip above the beige/teal bands. */
  .mm-page { padding-top: 0 !important; }
  header.nix_header.pad-top { padding-top: 0 !important; }

  .ib-utility-bar {
    min-height: 52px;
  }

  .ib-utility-bar__inner {
    display: flex;
    justify-content: space-between;
    width: 100%;
    min-height: 52px;
    padding: 0 20px;
    gap: 16px;
  }

  .ib-utility-bar__shipping {
    display: none;
  }

  .ib-utility-bar__phone {
    justify-self: auto;
  }

  .ib-utility-bar__actions {
    display: flex;
    align-items: center;
    gap: 32px;
  }

  .ib-utility-bar__actions svg {
    display: block;
    width: 24px;
    height: 24px;
  }

  .ib-utility-bar__actions a,
  .ib-utility-bar__actions button {
    position: relative;
    display: inline-flex;
    padding: 0;
    color: #fff;
    border: 0;
    background: transparent;
    font-size: 20px;
    cursor: pointer;
  }

  /* Figma Home_390: 22px circle hanging off the bag's lower right corner. */
  .ib-utility-bar__cart span {
    position: absolute;
    right: -13px;
    bottom: -8px;
    min-width: 22px;
    height: 22px;
    padding: 0 4px;
    border-radius: 11px;
    color: #fff;
    background: #a90006;
    font-size: 12px;
    line-height: 22px;
    text-align: center;
  }

  .ib-mobile-brand-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 56px;
    padding: 0 20px;
    background: #fff5e5;
    box-shadow: 0 5px 18px rgba(26, 26, 26, .06);
  }

  .ib-mobile-brand-row__logo img {
    display: block;
    width: auto;
    max-width: 160px;
    max-height: 42px;
  }

  .ib-mobile-brand-row__logo span {
    color: #015971;
    font-family: "Manrope", Arial, sans-serif;
    font-size: 28px;
    letter-spacing: -.045em;
  }

  .ib-mobile-menu-button {
    display: grid;
    gap: 8px;
    width: 42px;
    padding: 4px 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }

  .ib-mobile-menu-button span {
    display: block;
    width: 42px;
    height: 2px;
    background: #015971;
    transition: transform .25s ease, opacity .25s ease, width .25s ease;
  }

  .ib-mobile-menu-button span:nth-child(3) {
    width: 22px;
  }

  .ib-mobile-menu-button[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(10px) rotate(45deg);
  }

  .ib-mobile-menu-button[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }

  .ib-mobile-menu-button[aria-expanded="true"] span:nth-child(3) {
    width: 42px;
    transform: translateY(-10px) rotate(-45deg);
  }

  .nix_header > .container-fluid {
    min-height: 0;
    box-shadow: none;
  }

  .nix_header > .container-fluid > .for_search {
    min-height: 0;
  }

  .nix_header > .container-fluid > .for_search > :not(#b_serch) {
    display: none !important;
  }

  .nix_header #b_serch {
    position: absolute;
    z-index: 1005;
    top: 52px;
    right: 0;
    left: 0;
    padding: 14px 18px;
    background: #fffbf5;
    box-shadow: 0 8px 16px rgba(26, 26, 26, .12);
  }

  #menu-mobile-ns.ib-open {
    display: block !important;
    visibility: visible;
  }

  #menu-mobile-ns.ib-open .navbar-type2-collapse,
  #menu-mobile-ns.ib-open .navbar-nav,
  #menu-mobile-ns.ib-open .navbar-nav > li,
  #menu-mobile-ns.ib-open .navbar-nav > li > a {
    display: block !important;
    visibility: visible !important;
  }

  .nix_header.ib-menu-open > .container-fluid > .for_search > .menu_pc {
    display: block !important;
    width: 100%;
  }
  .nix_header .menu_pc .navbar-collapse.ib-open { display: block !important; height: auto !important; }
  /* The burger turns into the cross, so the theme's own close button goes. */
  #menu-mobile-ns .close-menu { display: none !important; }
  #menu-mobile-ns.menu-collapse-down,
  #menu-mobile-ns.navmenu { right: 0; left: 0; width: 100%; }
  .nix_header.ib-menu-open .ib-mobile-languages {
    display: flex;
    gap: 24px;
    padding: 24px 20px 32px;
    font-size: 22px;
  }
  .ib-mobile-languages > div,
  .ib-mobile-languages form { display: flex; gap: 24px; }
  .ib-mobile-languages a { color: #1a1a1a; }
  .ib-mobile-languages .lang_hetr_activ { color: #015971; }
  .nix_header.ib-menu-open .ib-mobile-languages .lang_hetr_none {
    display: inline !important;
  }
  .nix_header.ib-menu-open .menu_pc .navbar-header,
  .nix_header.ib-menu-open .menu_pc #logo { display: none !important; }

  /* Figma Footer_390: 50px top and bottom, 50px between blocks, 16px steps inside them. */
  footer .footer-top > .container:nth-of-type(2) {
    width: 100%;
    padding: 50px 20px;
  }

  footer .footer-top > .container:nth-of-type(2) > .row {
    grid-template-columns: 1fr 1fr;
    gap: 50px 24px;
  }

  footer .ib-footer-brand__logo { margin-bottom: 20px; }
  footer .ib-footer-links .list-unstyled li { margin-bottom: 16px; }
  footer .ib-footer-links .list-unstyled li,
  footer .ib-footer-links .list-unstyled li a { font-size: 14px; line-height: 1.4; }
  footer .ib-footer-contact-list { gap: 16px; }
  footer .ib-footer-contact-list > * { margin-bottom: 0 !important; }

  footer .ib-footer-brand {
    display: block;
    grid-column: 1 / -1;
    text-align: center;
  }

  footer .ib-footer-brand p {
    margin: 0 auto;
  }

  footer .ib-footer-contacts {
    grid-column: 1 / -1;
  }

  footer h3 {
    margin-bottom: 16px !important;
    font-size: 18px !important;
  }

  /* Figma mobile: one centred line, full-bleed rule above it. */
  footer .ib-footer-bottom {
    gap: 4px 8px;
    margin-top: 53px;
    margin-right: -20px;
    margin-left: -20px;
    padding: 20px 20px 0;
    font-size: 12px;
  }

  footer .ib-footer-bottom a { font-size: 12px; }
}

/*
 * Pointer-only interaction. Touch browsers emulate :hover on tap and leave the
 * state stuck on the last tapped element, so every hover effect is gated here.
 */
@media (hover: hover) and (pointer: fine) {
  .ib-utility-bar__phone:hover {
    color: rgba(255, 255, 255, .72) !important;
  }

  /* Figma shows the hovered menu item in the brand teal. */
  .nix_header .menu_pc .navbar-nav > li > a:hover,
  .nix_header .menu_pc .btn-link:hover,
  .preview-nav__links a:hover {
    color: #015971;
  }

  .ib-utility-bar__actions a:hover,
  .ib-utility-bar__actions button:hover,
  .preview-nav__tools a:hover,
  .preview-nav__tools button:hover {
    opacity: .75;
  }

  footer .ib-footer-links a:hover,
  footer.preview-footer .preview-footer__links a:hover {
    color: #1a1a1a !important;
    font-variation-settings: "wght" 600;
  }

  footer .ib-footer-contacts a:hover,
  footer.preview-footer .preview-footer__contacts a:hover {
    background-size: 100% 1px;
    background-position: 0 calc(100% - 1px);
  }

  footer .ib-footer-bottom a:hover,
  footer.preview-footer .preview-footer__bottom a:hover {
    background-size: 100% 1px;
    background-position: 0 100%;
  }

  /* Stays in place and fades; the theme's own a:hover had no transition. */
  footer .ib-footer-messengers a:hover {
    opacity: .7;
  }

  footer .ib-footer-brand__logo:hover,
  footer.preview-footer .preview-footer__brand .preview-nav__logo:hover {
    opacity: .82;
  }
}

/* Keyboard focus must stay visible on touch devices too. */
footer .ib-footer-contacts a:focus-visible,
footer.preview-footer .preview-footer__contacts a:focus-visible {
  background-size: 100% 1px;
  background-position: 0 calc(100% - 1px);
}

footer .ib-footer-bottom a:focus-visible,
footer.preview-footer .preview-footer__bottom a:focus-visible {
  background-size: 100% 1px;
  background-position: 0 100%;
}

footer .ib-footer-brand__logo,
footer.preview-footer .preview-footer__brand .preview-nav__logo {
  transition: opacity .25s ease;
}

@media (prefers-reduced-motion: reduce) {
  .ib-utility-bar__phone,
  footer .ib-footer-links a,
  footer .ib-footer-contacts a,
  footer .ib-footer-bottom a,
  footer .ib-footer-messengers a,
  footer .ib-footer-brand__logo {
    transition: none !important;
  }
}

/* Footer parity with the approved preview. */
footer .ib-footer-social { display: none !important; }
footer .ib-footer-links a,
footer .ib-footer-links a:hover,
footer .ib-footer-links a:focus {
  transform: none !important;
  text-decoration: none !important;
  font-weight: 300 !important;
  font-variation-settings: normal !important;
}

/* Language switcher: plain UA label, immediately before the account icon. */
.nix_header #ocd_multilang .lang_hetr,
#top-fixed #ocd_multilang .lang_hetr {
  position: static !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  font-family: "Manrope", Arial, sans-serif;
  font-size: 16px;
  line-height: 1;
}
.nix_header #ocd_multilang .lang_hetr a,
#top-fixed #ocd_multilang .lang_hetr a,
.nix_header #ocd_multilang .lang_hetr a:hover,
#top-fixed #ocd_multilang .lang_hetr a:hover {
  color: #015971 !important;
  text-decoration: none !important;
}

/* Sticky desktop header mirrors the primary header and keeps dropdowns under items. */
#top-fixed {
  z-index: 10000 !important;
  background: #fff5e5 !important;
  box-shadow: 0 3px 3px rgba(0, 0, 0, .2) !important;
}
#top-fixed #horizontal-menu > .flex-center { min-height: 72px; align-items: center; }
#top-fixed #horizontal-menu .navbar-nav { display: flex; align-items: center; gap: 34px; }
#top-fixed #horizontal-menu .navbar-nav > li { margin: 0 !important; }
#top-fixed #horizontal-menu .navbar-nav > li > a { padding: 0 !important; font-size: 16px !important; transition: color .25s ease; }
#top-fixed #horizontal-menu .dropdown-menu { top: 100% !important; margin-top: 0 !important; z-index: 10020 !important; }
#top-fixed .box-header-lang .box-account { display: block !important; }
#top-fixed .box-header-lang .lang_er { position: static !important; right: auto; top: auto; }
#top-fixed .box-header-lang.fix_mob_r .box-account,
#top-fixed .box-header-lang.fix_mob_r > div:last-child { display: none !important; }

/* Final production header parity. The language control is rendered exactly
 * once by menu_h.tpl, immediately before the profile icon. */
@media (min-width: 992px) {
  .common-home header.nix_header,
  .nix_header::before,
  .nix_header > .container-fluid,
  .nix_header > .container-fluid > .for_search,
  .nix_header .menu_pc,
  .nix_header #horizontal-menu,
  .nix_header #horizontal-menu > .flex-center { background: #fff5e5 !important; }

  .nix_header .ib-header-tools-legacy,
  .nix_header .menu_pc .box-header-lang.fix_mob_r { display: none !important; }

  .nix_header .menu_pc .ib-desktop-language {
    display: flex !important;
    align-items: center;
    margin-right: 18px;
  }
  .nix_header .menu_pc .ib-desktop-language .lang_hetr {
    position: static !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  .nix_header .menu_pc .navbar-nav > li > a,
  .nix_header .menu_pc .navbar-nav > li > a:hover,
  .nix_header .menu_pc .navbar-nav > li > a:focus {
    font-weight: 400 !important;
    font-variation-settings: normal !important;
    transition: color .25s ease, background-color .25s ease !important;
  }
  .nix_header .menu_pc .navbar-nav > li > a:hover,
  .nix_header .menu_pc .navbar-nav > li > a:focus {
    color: #015971 !important;
    background-color: rgba(1, 89, 113, .04) !important;
  }
}

/* Bootstrap's legacy stacking order is too low for the fixed redesigned header. */
#login-form-popup.modal { z-index: 20020 !important; pointer-events: auto !important; }
#login-form-popup .modal-dialog,
#login-form-popup .modal-content { position: relative; z-index: 20021 !important; pointer-events: auto !important; }
.modal-backdrop { z-index: 20010 !important; }

/* Mobile footer: reset desktop grid tracks before assigning the Figma layout. */
@media (max-width: 991px) {
  footer .footer-top > .container:nth-of-type(2) > .row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 50px 20px !important;
  }
  footer .ib-footer-brand,
  footer .ib-footer-links--about,
  footer .ib-footer-links--additional,
  footer .ib-footer-contacts { min-width: 0; grid-row: auto !important; }
  footer .ib-footer-brand { grid-column: 1 / -1 !important; text-align: center; }
  footer .ib-footer-links--about { grid-column: 1 !important; }
  footer .ib-footer-links--additional { grid-column: 2 !important; }
  footer .ib-footer-contacts { grid-column: 1 / -1 !important; }
  footer .ib-footer-phones { grid-template-columns: 1fr 1fr; gap: 2px 12px; }
}

/* Footer links gain weight smoothly, without resizing or underlining. */
footer .ib-footer-links a,
footer .ib-footer-links a:hover,
footer .ib-footer-links a:focus {
  transform: none !important;
  text-decoration: none !important;
  font-weight: 400 !important;
  font-variation-settings: "wght" 400 !important;
  transition: color .25s ease, font-variation-settings .28s ease !important;
}
@media (hover: hover) and (pointer: fine) {
  footer .ib-footer-links a:hover,
  footer .ib-footer-links a:focus {
    font-weight: 600 !important;
    font-variation-settings: "wght" 600 !important;
  }
}

/* One language control and one account control in both regular and sticky
 * desktop headers. The old theme copies the whole menu into #top-fixed. */
@media (min-width: 992px) {
  .nix_header .menu_pc .box-header-lang.fix_mob_r,
  #top-fixed .box-header-lang.fix_mob_r {
    display: none !important;
  }

  .nix_header .menu_pc .ib-desktop-language,
  #top-fixed .ib-desktop-language {
    display: flex !important;
    align-items: center;
    order: 20;
    margin: 0 18px 0 0 !important;
  }

  .nix_header .menu_pc .ib-desktop-account,
  #top-fixed .ib-desktop-account {
    display: block !important;
    float: none !important;
    position: relative !important;
    order: 21;
    width: 30px;
    height: 32px;
    margin: 0 18px 0 0;
    overflow: visible !important;
    z-index: 20030;
  }

  .nix_header .menu_pc .ib-desktop-account .setting-button,
  #top-fixed .ib-desktop-account .setting-button {
    display: block !important;
    width: 30px;
    height: 32px;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  .nix_header .menu_pc .ib-desktop-account .setting-button img,
  #top-fixed .ib-desktop-account .setting-button img {
    display: block !important;
    width: 27px !important;
    height: 27px !important;
    max-width: none !important;
  }

  .nix_header .menu_pc .ib-desktop-account .setting-button i,
  #top-fixed .ib-desktop-account .setting-button i {
    display: none !important;
  }

  .nix_header .menu_pc .ib-desktop-account .dropdown-menu,
  #top-fixed .ib-desktop-account .dropdown-menu {
    top: calc(100% + 12px) !important;
    right: 0 !important;
    left: auto !important;
    z-index: 20040 !important;
  }

  .nix_header .pull-right.box-header .ib-header-account {
    display: inline-block !important;
    position: relative;
    width: 30px;
    height: 32px;
    margin: 0 18px 0 0;
    padding: 0;
    vertical-align: top;
    z-index: 20030;
  }
  .nix_header .ib-header-account .setting-button {
    display: block !important;
    width: 30px;
    height: 32px;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }
  .nix_header .ib-header-account .setting-button img {
    display: block !important;
    width: 27px !important;
    height: 27px !important;
    max-width: none !important;
  }
  .nix_header .ib-header-account .dropdown-menu {
    top: calc(100% + 12px) !important;
    right: 0 !important;
    left: auto !important;
    z-index: 20040 !important;
  }
}

/* Keep the final cascade aligned with the design: text-only hover. */
.nix_header .menu_pc .navbar-nav > li > a:hover,
.nix_header .menu_pc .navbar-nav > li > a:focus,
#top-fixed .navbar-nav > li > a:hover,
#top-fixed .navbar-nav > li > a:focus {
  background: transparent !important;
  background-color: transparent !important;
  font-weight: 400 !important;
}

/* Header tools match the approved preview: plain 20px language label and
 * equal 26px spacing between language, account, search and cart. */
@media (min-width: 992px) {
  .nix_header > .container-fluid > .for_search > .menu_pc {
    justify-content: flex-end;
  }

  .nix_header .menu_pc .ib-desktop-language,
  #top-fixed .ib-desktop-language {
    margin: 0 26px 0 0 !important;
  }

  .nix_header .ib-language-switcher__toggle,
  #top-fixed .ib-language-switcher__toggle {
    min-width: 0;
    width: auto;
    height: 32px;
    gap: 0;
    color: #015971;
    font-size: 20px;
    line-height: 32px;
  }

  .nix_header .ib-language-switcher__toggle::after,
  #top-fixed .ib-language-switcher__toggle::after {
    content: none !important;
  }

  .nix_header .pull-right.box-header,
  #top-fixed .box-header.fix-set {
    display: flex !important;
    float: none !important;
    align-items: center;
    gap: 26px;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .nix_header .pull-right.box-header .ib-header-account,
  .nix_header .pull-right.box-header .header_serch,
  .nix_header .pull-right.box-header .box-cart,
  #top-fixed .box-header.fix-set .ib-desktop-account,
  #top-fixed .box-header.fix-set .header_serch,
  #top-fixed .box-header.fix-set .box-cart {
    flex: 0 0 28px;
    width: 28px !important;
    height: 32px;
    margin: 0 !important;
    padding: 0 !important;
  }

  .nix_header .pull-right.box-header .ib-header-account .setting-button,
  .nix_header .pull-right.box-header .header_serch .search-button,
  .nix_header .pull-right.box-header #cart,
  .nix_header .pull-right.box-header #cart > .btn,
  .nix_header .pull-right.box-header #cart .shop-bag,
  #top-fixed .box-header.fix-set .ib-desktop-account .setting-button,
  #top-fixed .box-header.fix-set .header_serch .search-button,
  #top-fixed .box-header.fix-set #cart,
  #top-fixed .box-header.fix-set #cart > .btn,
  #top-fixed .box-header.fix-set #cart .shop-bag {
    width: 28px !important;
    height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .nix_header .pull-right.box-header .ib-header-account .setting-button img,
  #top-fixed .box-header.fix-set .ib-desktop-account .setting-button img {
    width: 28px !important;
    height: 28px !important;
  }

  .nix_header .pull-right.box-header .header_serch .search-button,
  #top-fixed .box-header.fix-set .header_serch .search-button {
    background-size: 28px 28px !important;
  }

  .nix_header .pull-right.box-header #cart .shop-bag,
  #top-fixed .box-header.fix-set #cart .shop-bag {
    background-size: 28px 28px !important;
  }
}

/* ==========================================================================
 * Header geometry, regular and sticky (>= 992px).
 * The regular header (.for_search: logo, menu_pc, tools) and the sticky copy
 * that menu_h.tpl clones into #top-fixed (.flex-center: logo, menu, language,
 * tools) share one layout: logo left, menu centred, controls right. Type and
 * gaps step down with the viewport, so the seven items never wrap.
 * ========================================================================== */
@media (min-width: 992px) {
  .nix_header {
    --ib-nav-font: 16px;
    --ib-nav-gap: 34px;
    --ib-tools-gap: 26px;
    --ib-logo-width: 198px;
  }

  .nix_header > .container-fluid,
  #top-fixed > .container-fluid {
    padding: 0 !important;
  }

  #top-fixed > .container-fluid > .row { margin: 0 !important; }

  #top-fixed .menu_fix,
  #top-fixed .menu-fixed,
  #top-fixed #horizontal-menu,
  .nix_header .for_search > .menu_pc > .menu-fixed,
  .nix_header .for_search > .menu_pc #horizontal-menu {
    width: 100%;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .nix_header > .container-fluid > .for_search,
  #top-fixed #horizontal-menu > .flex-center {
    display: flex !important;
    position: static !important;
    flex-wrap: nowrap !important;
    align-items: center;
    justify-content: space-between;
    gap: var(--ib-tools-gap);
    width: min(100% - 48px, 1300px);
    min-height: 72px;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  /* Bootstrap's .row clearfix pseudo-elements would become flex items and add gaps. */
  .nix_header > .container-fluid > .for_search::before,
  .nix_header > .container-fluid > .for_search::after {
    content: none;
  }

  .nix_header .for_search > .logo-top,
  #top-fixed #logo {
    flex: 0 0 auto;
    order: 0;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .nix_header .for_search > .logo-top #logo { margin: 0; padding: 0; }

  .nix_header .for_search > .logo-top #logo img,
  #top-fixed #logo img {
    display: block;
    width: var(--ib-logo-width);
    max-width: none;
    height: auto;
    max-height: none;
    margin: 0;
  }

  .nix_header .for_search > .menu_pc {
    display: flex !important;
    flex: 1 1 auto;
    min-width: 0;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .nix_header .for_search > .menu_pc #horizontal-menu > .flex-center {
    display: flex !important;
    align-items: center;
    gap: var(--ib-tools-gap);
    width: 100%;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Mobile toggler of the legacy menu: zero-sized, but it would still take a gap. */
  .nix_header #horizontal-menu .navbar-header { display: none !important; }

  .nix_header #horizontal-menu .navbar-ex1-collapse {
    display: flex !important;
    flex: 1 1 auto;
    order: 1;
    justify-content: center;
    min-width: 0;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .nix_header #horizontal-menu .navbar-ex1-collapse > .navbar-nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center;
    justify-content: center;
    gap: var(--ib-nav-gap) !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .nix_header #horizontal-menu .navbar-ex1-collapse > .navbar-nav > li {
    flex: 0 0 auto;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* The tall hit area keeps the mega menu reachable directly under the band. */
  .nix_header #horizontal-menu .navbar-ex1-collapse > .navbar-nav > li > a,
  #top-fixed #horizontal-menu .navbar-ex1-collapse > .navbar-nav > li > a {
    display: block;
    padding: 26px 0 !important;
    font-size: var(--ib-nav-font) !important;
    line-height: 20px !important;
    white-space: nowrap;
  }

  /* NewStore centres the mega menu on #horizontal-menu at a fixed 1300px.
   * Anchor it to the whole header (or the sticky bar) instead and keep it
   * inside the viewport on narrower desktops. */
  .nix_header #horizontal-menu { position: static !important; }

  .nix_header #horizontal-menu .nsmenu-bigblock,
  .nix_header #horizontal-menu .nsmenu-type-category-simple {
    top: 100% !important;
    width: min(1300px, 100% - 48px) !important;
  }

  .nix_header .menu_pc .ib-desktop-language,
  #top-fixed .ib-desktop-language {
    display: flex !important;
    flex: 0 0 auto;
    order: 2;
    margin: 0 !important;
  }

  /* Figma Home_1440: the current language is plain dark text, like the menu. */
  .nix_header .ib-language-switcher__toggle,
  #top-fixed .ib-language-switcher__toggle {
    color: #1a1a1a;
    transition: color .25s ease;
  }

  .nix_header .for_search > .pull-right.box-header,
  #top-fixed .box-header.fix-set {
    display: flex !important;
    position: static !important;
    flex: 0 0 auto;
    order: 3;
    align-items: center;
    gap: var(--ib-tools-gap);
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    top: auto !important;
    right: auto !important;
  }

  #top-fixed .box-header.fix-set .header_acc {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (min-width: 992px) and (max-width: 1279px) {
  .nix_header {
    --ib-nav-font: 14px;
    --ib-nav-gap: 22px;
    --ib-tools-gap: 20px;
    --ib-logo-width: 170px;
  }
}

@media (min-width: 992px) and (max-width: 1119px) {
  .nix_header {
    --ib-nav-font: 13px;
    --ib-nav-gap: 16px;
    --ib-tools-gap: 16px;
    --ib-logo-width: 150px;
  }
}

@media (hover: hover) and (pointer: fine) {
  .nix_header .ib-language-switcher__toggle:hover,
  #top-fixed .ib-language-switcher__toggle:hover {
    color: #015971;
  }
}

/* Search panel drops out directly under the header band. While the sticky
 * header is showing, ib-global.js pins it under that bar instead. */
.nix_header > .container-fluid > .for_search { position: static !important; }

.nix_header #b_serch {
  position: absolute !important;
  top: 100% !important;
  right: 0 !important;
  left: 0 !important;
  z-index: 10010 !important;
  width: auto !important;
  margin: 0 !important;
  padding: 16px 24px !important;
  border-top: 1px solid rgba(1, 89, 113, .12);
  background: #fff5e5 !important;
  box-shadow: 0 8px 16px rgba(26, 26, 26, .12);
}

.nix_header #b_serch.ib-search--sticky {
  position: fixed !important;
  top: var(--ib-search-top, 72px) !important;
}

.nix_header #b_serch #searchtop {
  width: min(100%, 640px);
  margin: 0 auto;
}

.nix_header #b_serch #search {
  display: flex;
  width: 100%;
  margin: 0;
}

.nix_header #b_serch #search input[name="search"] {
  flex: 1 1 auto;
  height: 44px;
  padding: 0 16px;
  border: 1px solid rgba(1, 89, 113, .35);
  border-right: 0;
  border-radius: 0 !important;
  color: #1a1a1a;
  background: #fff;
  box-shadow: none;
  font-family: "Manrope", Arial, sans-serif;
  font-size: 16px;
}

.nix_header #b_serch #search input[name="search"]:focus {
  border-color: #015971;
  outline: 0;
}

.nix_header #b_serch #search .button_search { display: flex; width: auto; }

.nix_header #b_serch #search .btn-search {
  width: 52px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0 !important;
  color: #fff;
  background: #015971;
  font-size: 18px;
}

/* The header is its own stacking context. Lift it above the page sections so
 * the sticky bar, mega menu and search panel are never painted underneath. */
.nix_header { z-index: 1000; }

/* Mobile header: the desktop row stays empty on phones, so it must not add
 * its padding as a pale strip under the brand row. */
@media (max-width: 991px) {
  .nix_header > .container-fluid {
    padding: 0 !important;
    background: transparent !important;
  }

  .nix_header > .container-fluid > .for_search {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  .nix_header #b_serch { padding: 14px 20px !important; }
}

/* Language row in the mobile menu: every language as a link, no dropdown. */
.ib-language-list { display: none; }

@media (max-width: 991px) {
  .ib-mobile-languages .ib-language-switcher { display: block; }

  .ib-mobile-languages .ib-language-switcher__toggle,
  .ib-mobile-languages .ib-language-switcher__menu { display: none !important; }

  .ib-mobile-languages .ib-language-list {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    font-family: "Manrope", Arial, sans-serif;
    font-size: 22px;
    line-height: 1.2;
  }

  .ib-mobile-languages .ib-language-list a {
    color: #1a1a1a !important;
    text-decoration: none !important;
  }

  .ib-mobile-languages .ib-language-list [aria-current] { color: #015971; }
}

/* ==========================================================================
 * Footer: brand copy, design menus and link hovers.
 * ========================================================================== */
footer .ib-footer-brand p {
  max-width: none;
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
}

footer .ib-footer-links a {
  display: inline-grid;
  justify-items: start;
  color: #1a1a1a !important;
}

/* Hover makes the label bolder. A hidden bold copy reserves that width up
 * front, so neither the label nor the column moves when the weight changes. */
footer .ib-footer-links a::after {
  display: block;
  height: 0;
  overflow: hidden;
  visibility: hidden;
  content: attr(data-ib-label);
  font-weight: 600;
  font-variation-settings: "wght" 600;
  pointer-events: none;
  user-select: none;
}

footer .ib-footer-link__short { display: none; }

@media (min-width: 992px) and (max-width: 1279px) {
  footer .ib-footer-links .list-unstyled li,
  footer .ib-footer-links .list-unstyled li a {
    font-size: 16px;
    line-height: 30px;
  }
}

/* Figma Footer_390 uses shorter labels in the two narrow columns. */
@media (max-width: 767px) {
  footer .ib-footer-link__full { display: none; }
  footer .ib-footer-link__short { display: inline; }
  footer .ib-footer-links a::after { content: none; }
}

/* Contacts: a single 1px line grows under the link. The theme's own a:hover
 * underline used to stack on top of it and made the line look heavy. */
footer .ib-footer-contacts a,
footer .ib-footer-contacts a:hover,
footer .ib-footer-contacts a:focus,
footer .ib-footer-bottom a,
footer .ib-footer-bottom a:hover,
footer .ib-footer-bottom a:focus {
  border-bottom: 0 !important;
  text-decoration: none !important;
}

/* Icon-only links (messengers) fade instead of drawing a line under the icon. */
footer .ib-footer-messengers a,
footer .ib-footer-contacts a:has(img) {
  background-image: none !important;
}

/* Figma drop shadow (0 4 4, black 25%) under the header band, the sticky bar
 * and the mobile brand row. */
.nix_header > .container-fluid,
#top-fixed {
  box-shadow: 0 4px 4px rgba(0, 0, 0, .25) !important;
}

@media (max-width: 991px) {
  /* The desktop row is empty here, so its shadow would draw a stray line. */
  .nix_header > .container-fluid { box-shadow: none !important; }
  .ib-mobile-brand-row { box-shadow: 0 4px 4px rgba(0, 0, 0, .25); }
}

/* Sticky bar: NewStore slides it from top: -100% over 1.2s, so it stays out
 * of view for most of that time. Slide it in quickly instead. menu_h.tpl
 * switches it on as soon as the regular band has scrolled away. */
@media (min-width: 992px) {
  #top-fixed,
  #top-fixed.sticky-header-2 {
    top: 0 !important;
  }

  #top-fixed {
    visibility: hidden;
    transform: translateY(calc(-100% - 10px));
    transition: transform .3s ease, visibility 0s linear .3s !important;
  }

  #top-fixed.sticky-header-2 {
    visibility: visible;
    transform: none;
    transition: transform .3s ease, visibility 0s !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #top-fixed,
  #top-fixed.sticky-header-2 {
    transition: none !important;
  }
}

/* Account menu (regular and sticky header) looks like the language menu:
 * beige panel centred under its icon, plain centred items. */
.nix_header .ib-header-account .dropdown-menu,
.nix_header .ib-desktop-account .dropdown-menu {
  top: calc(100% + 9px) !important;
  right: auto !important;
  left: 50% !important;
  min-width: 132px;
  margin: 0 !important;
  padding: 8px 0;
  border: 1px solid rgba(1, 89, 113, .14);
  border-radius: 0;
  background: #fff5e5;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .14);
  transform: translateX(-50%);
}

.nix_header .ib-header-account .dropdown-menu > li > a,
.nix_header .ib-desktop-account .dropdown-menu > li > a {
  display: block;
  padding: 8px 16px;
  color: #1a1a1a !important;
  background: transparent !important;
  font-family: "Manrope", Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  text-decoration: none !important;
  white-space: nowrap;
  transition: color .2s ease !important;
}

.nix_header .ib-header-account .dropdown-menu > li > a:hover,
.nix_header .ib-header-account .dropdown-menu > li > a:focus,
.nix_header .ib-desktop-account .dropdown-menu > li > a:hover,
.nix_header .ib-desktop-account .dropdown-menu > li > a:focus {
  color: #015971 !important;
}

/* The footer logo only fades on hover; the theme's underline stays off. */
footer .ib-footer-brand__logo,
footer .ib-footer-brand__logo:hover,
footer .ib-footer-brand__logo:focus {
  text-decoration: none !important;
}

/* Header layers: the search panel sits under every header popup (the cart
 * button is its own z-index 999 layer, the mega menu opens at 6), but still
 * above the page. */
.nix_header #b_serch { z-index: 990 !important; }

@media (min-width: 992px) {
  .nix_header #horizontal-menu .nsmenu-bigblock,
  .nix_header #horizontal-menu .nsmenu-type-category-simple {
    z-index: 1000 !important;
  }
}

/* Header dropdowns (language and account) share one look: beige panel,
 * centred items of equal height divided by hairlines. */
.nix_header .ib-language-switcher__menu,
.nix_header .ib-header-account .dropdown-menu,
.nix_header .ib-desktop-account .dropdown-menu {
  padding: 4px 0 !important;
}

.nix_header .ib-language-switcher__menu { min-width: 84px; }

.nix_header .ib-header-account .dropdown-menu,
.nix_header .ib-desktop-account .dropdown-menu {
  min-width: 164px;
}

.nix_header .ib-language-switcher__menu a,
.nix_header .ib-header-account .dropdown-menu > li > a,
.nix_header .ib-desktop-account .dropdown-menu > li > a {
  margin: 0 14px;
  padding: 12px 4px !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
}

.nix_header .ib-language-switcher__menu a + a,
.nix_header .ib-header-account .dropdown-menu > li + li > a,
.nix_header .ib-desktop-account .dropdown-menu > li + li > a {
  border-top: 1px solid rgba(1, 89, 113, .14);
}

/* Footer contacts (Figma Footer / preview): icons only on the headings,
 * values start at the column edge, 20px between groups (16px on phones). */
footer .ib-footer-contacts .ib-footer-contact-list { gap: 20px; }

footer .ib-footer-contacts .ib-footer-contact-heading {
  align-items: center;
  margin: 0 0 20px !important;
  font-family: "Cormorant Garamond", "IB Cormorant", Georgia, serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
}

footer .ib-footer-contacts .ib-footer-contact-text { margin: 0; }

footer .ib-footer-contacts .ib-footer-contact-email { align-items: center; }
footer .ib-footer-contacts .ib-footer-contact-email a { font-size: 16px; }

/* Figma: the second column starts 20px after the widest number. */
footer .ib-footer-contacts .ib-footer-phones {
  display: grid;
  grid-template-columns: repeat(2, max-content);
  gap: 0 20px;
}

footer .ib-footer-contacts .ib-footer-phones a {
  justify-self: start;
  white-space: nowrap;
}

footer .ib-footer-contacts .ib-footer-international { font-size: 11px; }
footer .ib-footer-contacts .ib-footer-international a { font-size: 14px; white-space: nowrap; }

footer .ib-footer-contacts .ib-footer-representative {
  max-width: 310px;
  font-size: 13px;
  font-weight: 300;
}

@media (max-width: 991px) {
  footer .ib-footer-contacts .ib-footer-contact-list { gap: 16px; }
  footer .ib-footer-contacts .ib-footer-contact-heading { margin-bottom: 16px !important; }
}

/* Figma Footer_390: the copyright row stays on one line. */
@media (max-width: 767px) {
  footer .ib-footer-bottom,
  footer .ib-footer-bottom a {
    font-size: 10.5px;
  }
}

/* Mobile menu: a panel that drops over the page from the bottom of the
 * header (the content underneath stays put), with the header's 20px gutters,
 * a shadow along its lower edge and a short slide-in. */
@media (max-width: 991px) {
  .nix_header #menu-mobile-ns.ib-open {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    z-index: 995;
    max-height: calc(100vh - 108px);
    max-height: calc(100dvh - 108px);
    overflow-y: auto;
    overscroll-behavior: contain;
    border-top: 1px solid rgba(1, 89, 113, .12);
    background: #fffbf5;
    box-shadow: 0 14px 24px -6px rgba(26, 26, 26, .22);
    animation: ib-menu-in .32s cubic-bezier(.22, .61, .36, 1);
  }

  .nix_header #menu-mobile-ns .navbar-type2-collapse > .navbar-nav {
    margin: 0;
  }

  .nix_header #menu-mobile-ns .navbar-type2-collapse > .navbar-nav > li {
    margin: 0 20px;
  }

  .nix_header #menu-mobile-ns .navbar-type2-collapse > .navbar-nav > li > a {
    padding: 12px 40px 12px 0 !important;
  }

  .nix_header #menu-mobile-ns .show-sc-mobile {
    right: 0;
    width: 40px;
    height: 44px;
    border-left: 0 !important;
    line-height: 20px;
    text-align: right;
  }

  .nix_header #menu-mobile-ns .mob-submenu-list a {
    padding: 10px 40px 10px 16px !important;
  }
}

@keyframes ib-menu-in {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .nix_header #menu-mobile-ns.ib-open { animation: none; }
}

/* Bootstrap dialogs (sign in): the theme's slide-in rule for its own promo
 * modal also hits .modal-content and lifted the form off the top edge. */
.modal-dialog > .modal-content {
  position: relative;
  top: auto;
  display: block;
  max-width: none;
  transform: none !important;
}

@media (min-width: 768px) {
  #login-form-popup .modal-dialog { margin: max(60px, 14vh) auto 30px; }
}

/* Footer grid: Bootstrap's .row clearfix pseudo-elements became grid items.
 * On phones the ::before took a whole row and added 50px above the logo. */
footer .footer-top > .container:nth-of-type(2) > .row::before,
footer .footer-top > .container:nth-of-type(2) > .row::after {
  content: none;
}

/* Phones: the same 60px above the logo as below the copyright line. */
@media (max-width: 991px) {
  footer .footer-top { padding-top: 10px !important; }
}

/* The footer logo keeps its colour on hover. */
footer .ib-footer-brand__logo:hover,
footer .ib-footer-brand__logo:focus {
  color: #015971 !important;
  opacity: 1 !important;
}
