/*
0-600px: phone
600 - 900px: Tablet portrait
900 - 1200px: Tablet landscape
1200 - 1800 is where our normal styles apply
1800px +: Big desktop
*/
/*
$breakpoint argument choices:

- phone
- tab-port
- tab-land
- big-desktop

//  1 rem = 10px; 10px/16px = 62.5%

ORDER: Base + typography > general layout + grid > page layout > components

*/
*,
*::after,
*::before {
  margin: 0;
  padding: 0;
  box-sizing: inherit;
}

/* blog/article action and product-family pill correction */
body.page-blog .z-style-article > .z-share.z-social-actions,
body.page-blog .z-style-article > .z-share.z-social-actions--article {
  position:static !important;
  inset:auto !important;
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:.32rem !important;
  width:100% !important;
  max-width:none !important;
  margin:.25rem 0 1.1rem !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  clear:none !important;
}

body.page-blog .z-style-article > .z-share.z-social-actions .z-social-btn,
body.page-blog .z-style-article > .z-share.z-social-actions .z-social-like {
  flex:0 0 auto !important;
  align-self:center !important;
  height:2.35rem !important;
  min-height:2.35rem !important;
  max-height:2.35rem !important;
  margin:0 !important;
  line-height:1 !important;
}

body.page-blog .z-style-article > .z-share.z-social-actions .z-social-btn:not([data-z-share="native"]) {
  width:2.35rem !important;
  min-width:2.35rem !important;
  max-width:2.35rem !important;
  padding:.2rem !important;
}

body.page-blog .z-style-article > .z-share.z-social-actions .z-social-btn[data-z-share="native"] {
  width:auto !important;
  min-width:auto !important;
  max-width:none !important;
  padding:.2rem .42rem !important;
  font-size:.9rem !important;
  line-height:1 !important;
}

body.page-blog .z-style-article > .z-share.z-social-actions .z-social-btn::before {
  width:1.62rem !important;
  height:1.62rem !important;
  font-size:1rem !important;
  line-height:1.62rem !important;
}

body.page-blog .z-style-article > .z-share.z-social-actions .z-social-like {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:4.9rem !important;
  max-width:none !important;
  padding:.2rem .46rem !important;
  border:0 !important;
  border-radius:0 !important;
  background:
    radial-gradient(ellipse 70% 40% at 30% 0%, rgb(255 255 255 / .36) 0, rgb(255 255 255 / .08) 60%, transparent 100%),
    linear-gradient(180deg, #3f86d0 0%, var(--color-primary) 30%, #1e5f9b 100%) !important;
  color:#fff !important;
  font-size:.86rem !important;
  font-weight:800 !important;
  text-shadow:0 1px 0 rgb(0 0 0 / .18) !important;
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / .58),
    inset 0 -2px 0 rgb(0 0 0 / .16),
    0 .28rem .04rem rgb(21 82 132 / .34),
    0 .54rem .95rem rgb(var(--color-primary-rgb) / .22) !important;
}

body.page-blog .z-style-article > .z-share.z-social-actions .z-social-like.is-liked {
  background:
    radial-gradient(circle at 30% 18%, rgb(255 255 255 / .4) 0, rgb(255 255 255 / .16) 24%, transparent 48%),
    linear-gradient(180deg, #f2555d 0%, #cf2330 54%, #a81724 100%) !important;
  color:#fff !important;
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / .52),
    inset 0 -2px 0 rgb(0 0 0 / .16),
    0 .28rem .04rem rgb(150 20 32 / .34),
    0 .54rem .95rem rgb(207 35 48 / .22) !important;
}

body.page-blog .z-blog-card__thumb-link,
body.page-blog .z-featured-guide__thumb-link {
  display:block !important;
  color:inherit !important;
  text-decoration:none !important;
}

body.page-blog .z-blog-card__text-link,
body.page-blog .z-featured-guide__title-link,
body.page-blog .z-featured-guide__text-link {
  display:block !important;
  color:inherit !important;
  text-decoration:none !important;
}

body.page-blog .z-blog-card__text-link:hover,
body.page-blog .z-blog-card__text-link:focus-visible,
body.page-blog .z-featured-guide__title-link:hover,
body.page-blog .z-featured-guide__title-link:focus-visible,
body.page-blog .z-featured-guide__text-link:hover,
body.page-blog .z-featured-guide__text-link:focus-visible {
  color:var(--color-primary-hover) !important;
  text-decoration:none !important;
}

body.page-products .product-family-nav {
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  justify-content:center !important;
  align-items:center !important;
  gap:.7rem .82rem !important;
  max-width:68rem !important;
  margin:1.2rem auto 2.4rem !important;
}

body.page-products .product-family-nav a,
body.page-products .product-family-nav a:visited,
body.page-products .product-family-nav a:not(:hover) {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:3.18rem !important;
  padding:.52rem .96rem !important;
  border:1px solid var(--z-product-border, rgb(var(--color-primary-rgb) / .30)) !important;
  border-radius:999px !important;
  background:linear-gradient(180deg, rgb(255 255 255 / .82) 0%, var(--z-product-bg, #eef7ff) 100%) !important;
  color:var(--color-primary) !important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .9), 0 .45rem 1.25rem var(--z-product-shadow, rgb(var(--color-primary-rgb) / .12)) !important;
  font-size:clamp(.98rem, .9rem + .16vw, 1.12rem) !important;
  font-weight:800 !important;
  line-height:1.12 !important;
  letter-spacing:0 !important;
  text-align:center !important;
  text-shadow:none !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
  text-wrap:balance !important;
}

body.page-products .product-family-nav a:nth-child(1) {
  --z-product-bg:#eaf3ff;
  --z-product-border:rgb(var(--color-primary-rgb) / .32);
  --z-product-shadow:rgb(var(--color-primary-rgb) / .13);
}

body.page-products .product-family-nav a:nth-child(2) {
  --z-product-bg:#eef9f5;
  --z-product-border:rgb(72 150 129 / .28);
  --z-product-shadow:rgb(72 150 129 / .12);
}

body.page-products .product-family-nav a:nth-child(3) {
  --z-product-bg:#fff8e5;
  --z-product-border:rgb(191 156 57 / .30);
  --z-product-shadow:rgb(191 156 57 / .12);
}

body.page-products .product-family-nav a:nth-child(4) {
  --z-product-bg:#f5f1ff;
  --z-product-border:rgb(129 101 190 / .24);
  --z-product-shadow:rgb(129 101 190 / .11);
}

body.page-products .product-family-nav a:nth-child(5) {
  --z-product-bg:#fff1f4;
  --z-product-border:rgb(190 101 126 / .28);
  --z-product-shadow:rgb(190 101 126 / .12);
}

body.page-products .product-family-nav a:nth-child(6) {
  --z-product-bg:#f4fae8;
  --z-product-border:rgb(130 160 68 / .30);
  --z-product-shadow:rgb(130 160 68 / .12);
}

body.page-products .product-family-nav a:nth-child(7) {
  --z-product-bg:#fff4e8;
  --z-product-border:rgb(194 134 70 / .26);
  --z-product-shadow:rgb(194 134 70 / .11);
}

body.page-products .product-family-nav a:nth-child(8) {
  --z-product-bg:#eef7ff;
  --z-product-border:rgb(82 152 198 / .30);
  --z-product-shadow:rgb(82 152 198 / .12);
}

body.page-products .product-family-nav a:nth-child(9) {
  --z-product-bg:#f0fbfb;
  --z-product-border:rgb(72 161 166 / .28);
  --z-product-shadow:rgb(72 161 166 / .12);
}

body.page-products .product-family-nav a:hover,
body.page-products .product-family-nav a:focus-visible {
  border-color:rgb(var(--color-primary-rgb) / .36) !important;
  background:linear-gradient(180deg, #fff 0%, var(--z-product-bg, #eef7ff) 100%) !important;
  color:var(--color-primary) !important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .95), 0 .7rem 1.55rem var(--z-product-shadow, rgb(var(--color-primary-rgb) / .14)) !important;
  transform:translateY(-1px) !important;
}

body.page-products .product-compliance-route {
  text-align:center !important;
}

body.page-products .product-compliance-route h2,
body.page-products .product-compliance-route p {
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.page-products .product-compliance-route p {
  max-width:68rem !important;
}

body.page-products .product-compliance-route p:has(.z-cta-link) {
  display:flex !important;
  justify-content:center !important;
}

@media (max-width:700px) {
  body.page-blog .z-style-article > .z-share.z-social-actions,
  body.page-blog .z-style-article > .z-share.z-social-actions--article {
    justify-content:flex-start !important;
    margin-top:.4rem !important;
  }

  body.page-products .product-family-nav {
    gap:.6rem !important;
    max-width:100% !important;
  }

  body.page-products .product-family-nav a,
  body.page-products .product-family-nav a:visited {
    min-width:0 !important;
    max-width:none !important;
    min-height:3.05rem !important;
    padding:.5rem .74rem !important;
    font-size:clamp(.84rem, 2.72vw, .98rem) !important;
  }
}

body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed,
body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed,
body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed.tg-button--on-blue,
body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed.tg-button--on-blue,
html.z-flight-v77 body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed,
html.z-flight-v77 body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed,
html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed,
html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed,
html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed,
html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed {
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  z-index:1 !important;
  transform:none !important;
  box-shadow:none !important;
}

body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed:hover,
body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed:focus-visible,
body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed:hover,
body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed:focus-visible {
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:none !important;
  box-shadow:none !important;
}

/* final mobile primary-menu row centering */
@media (max-width:700px) {
  #primary-menu.top-menu,
  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:stretch !important;
    align-content:center !important;
    gap:.24rem !important;
    grid-template-columns:none !important;
    grid-auto-columns:auto !important;
    grid-auto-rows:auto !important;
  }

  #primary-menu.top-menu > .top-menu__item,
  .header #primary-menu.top-menu > .top-menu__item,
  .header.active #primary-menu.top-menu > .top-menu__item,
  html.z-flight-v77 #primary-menu.top-menu > .top-menu__item,
  html.z-flight-v77 .header #primary-menu.top-menu > .top-menu__item,
  html.z-flight-v77 .header.active #primary-menu.top-menu > .top-menu__item,
  html.z-scroll-stable-no-flight #primary-menu.top-menu > .top-menu__item,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu > .top-menu__item,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu > .top-menu__item {
    flex:0 0 calc((100% - .72rem) / 4) !important;
    width:calc((100% - .72rem) / 4) !important;
    min-width:0 !important;
    max-width:calc((100% - .72rem) / 4) !important;
    grid-column:auto !important;
    grid-row:auto !important;
    box-sizing:border-box !important;
  }

  #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  .header #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  .header.active #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-flight-v77 #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-flight-v77 .header #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-flight-v77 .header.active #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-scroll-stable-no-flight #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu > .top-menu__item > .top-menu__link {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
}

body:not(.legal-notice-open) #cookie-notice[data-legal-gate="notice-preferences"] ~ .tg-button.tg-button--body-fixed.tg-button--menu-suppressed,
body:not(.legal-notice-open) #cookie-notice[data-legal-gate="notice-preferences"] ~ .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed {
  pointer-events:none !important;
}

/* centered lower row for 7-item mobile navigation */
@media (max-width:700px) {
  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    grid-template-columns:repeat(8, minmax(0, 1fr)) !important;
    column-gap:.24rem !important;
    row-gap:.24rem !important;
  }

  .header #primary-menu.top-menu .top-menu__item,
  .header.active #primary-menu.top-menu .top-menu__item,
  html.z-flight-v77 .header #primary-menu.top-menu .top-menu__item,
  html.z-flight-v77 .header.active #primary-menu.top-menu .top-menu__item,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu .top-menu__item,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu .top-menu__item {
    min-width:0 !important;
    width:auto !important;
  }

  .header #primary-menu.top-menu .top-menu__item:nth-child(1),
  .header.active #primary-menu.top-menu .top-menu__item:nth-child(1) {
    grid-column:1 / span 2 !important;
  }

  .header #primary-menu.top-menu .top-menu__item:nth-child(2),
  .header.active #primary-menu.top-menu .top-menu__item:nth-child(2) {
    grid-column:3 / span 2 !important;
  }

  .header #primary-menu.top-menu .top-menu__item:nth-child(3),
  .header.active #primary-menu.top-menu .top-menu__item:nth-child(3) {
    grid-column:5 / span 2 !important;
  }

  .header #primary-menu.top-menu .top-menu__item:nth-child(4),
  .header.active #primary-menu.top-menu .top-menu__item:nth-child(4) {
    grid-column:7 / span 2 !important;
  }

  .header #primary-menu.top-menu .top-menu__item:nth-child(5),
  .header.active #primary-menu.top-menu .top-menu__item:nth-child(5) {
    grid-column:2 / span 2 !important;
  }

  .header #primary-menu.top-menu .top-menu__item:nth-child(6),
  .header.active #primary-menu.top-menu .top-menu__item:nth-child(6) {
    grid-column:4 / span 2 !important;
  }

  .header #primary-menu.top-menu .top-menu__item:nth-child(7),
  .header.active #primary-menu.top-menu .top-menu__item:nth-child(7) {
    grid-column:6 / span 2 !important;
  }
}

/* In-page image preview for galleries and article media. */
body.z-image-lightbox-open {
  overflow:hidden !important;
}

.team-frame,
.article-topic-visual img,
.technique-card img,
.product-detail-figure img,
.product-detail-thumb img,
.product-miniatures img {
  cursor:zoom-in;
}

.z-image-lightbox {
  position:fixed;
  inset:0;
  z-index:2147482600;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(1.2rem, 3vw, 3.2rem);
  background:rgba(4, 15, 28, .72);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease, visibility .18s ease;
}

.z-image-lightbox[hidden] {
  display:none !important;
}

.z-image-lightbox.is-open {
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.z-image-lightbox__stage {
  width:min(82vw, 96rem);
  max-height:82vh;
  display:flex;
  align-items:center;
  justify-content:center;
}

.z-image-lightbox__img {
  display:block;
  width:auto;
  height:auto;
  max-width:min(82vw, 96rem);
  max-height:78vh;
  object-fit:contain;
  border-radius:.8rem;
  background:#fff;
  box-shadow:0 2.4rem 6rem rgba(0, 0, 0, .34);
  transform:scale(.985);
  transition:transform .18s ease;
}

.z-image-lightbox.is-open .z-image-lightbox__img {
  transform:scale(1);
}

.z-image-lightbox__close {
  position:fixed;
  top:clamp(1.2rem, 3vw, 2.6rem);
  right:clamp(1.2rem, 3vw, 2.6rem);
  width:5.8rem;
  height:5.8rem;
  display:grid;
  place-items:center;
  border:.2rem solid rgba(44, 97, 150, .24);
  border-radius:50%;
  background:#fff;
  color:var(--color-primary);
  font-size:3.2rem;
  line-height:1;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 1.2rem 3rem rgba(0, 0, 0, .25);
  transition:transform .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.z-image-lightbox__close:hover,
.z-image-lightbox__close:focus-visible {
  transform:scale(1.06);
  background:var(--color-background);
  outline:.3rem solid rgba(43, 174, 226, .32);
  outline-offset:.25rem;
  box-shadow:0 1.6rem 3.6rem rgba(0, 0, 0, .3);
}

.z-image-lightbox__nav {
  position:fixed;
  top:50%;
  width:5.8rem;
  height:7.2rem;
  display:grid;
  place-items:center;
  border:.2rem solid rgba(44, 97, 150, .24);
  border-radius:.8rem;
  background:#fff;
  color:var(--color-primary);
  font-size:5rem;
  line-height:1;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 1.2rem 3rem rgba(0, 0, 0, .25);
  transform:translateY(-50%);
  transition:transform .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.z-image-lightbox__nav[hidden],
.z-image-lightbox__status[hidden] {
  display:none !important;
}

.z-image-lightbox__nav--prev {
  left:clamp(1.2rem, 3vw, 2.6rem);
}

.z-image-lightbox__nav--next {
  right:clamp(1.2rem, 3vw, 2.6rem);
}

.z-image-lightbox__nav:hover,
.z-image-lightbox__nav:focus-visible {
  transform:translateY(-50%) scale(1.06);
  background:var(--color-background);
  outline:.3rem solid rgba(43, 174, 226, .32);
  outline-offset:.25rem;
  box-shadow:0 1.6rem 3.6rem rgba(0, 0, 0, .3);
}

.z-image-lightbox__status {
  position:fixed;
  left:50%;
  bottom:clamp(1.2rem, 3vw, 2.6rem);
  transform:translateX(-50%);
  min-width:7.2rem;
  padding:.55rem 1.2rem;
  border-radius:999px;
  background:#fff;
  color:var(--color-primary);
  font-size:1.35rem;
  line-height:1;
  font-weight:800;
  text-align:center;
  box-shadow:0 .8rem 2rem rgba(0, 0, 0, .2);
}

@media (max-width:700px) {
  .z-image-lightbox {
    padding:1rem;
  }

  .z-image-lightbox__stage,
  .z-image-lightbox__img {
    max-width:92vw;
  }

  .z-image-lightbox__img {
    max-height:74vh;
    border-radius:.7rem;
  }

  .z-image-lightbox__close {
    width:5rem;
    height:5rem;
    font-size:2.7rem;
  }

  .z-image-lightbox__nav {
    width:4.6rem;
    height:6rem;
    font-size:4rem;
  }

  .z-image-lightbox__nav--prev {
    left:.8rem;
  }

  .z-image-lightbox__nav--next {
    right:.8rem;
  }

  .z-image-lightbox__status {
    font-size:1.2rem;
    bottom:1rem;
  }
}

html {
  font-size: 62.5%;
}
@media only screen and (max-width: 75em) {
  html {
    font-size: 62.5%;
  }
}
@media only screen and (min-width: 112.5em) {
  html {
    font-size: 62.5%;
  }
}

body {
  box-sizing: border-box;
  top: 0 !important;
}

body.active {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}

.modal-backdrop.white {
  background-color: #fff;
  opacity: 0.01;
}
.go-up {
  background-color: var(--color-primary);
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 5rem;
  background: linear-gradient(
    0deg,
    var(--color-primary) 53.65%,
    rgb(var(--color-primary-rgb) / 0.53) 82.81%,
    var(--color-primary) 95.83%
  );
  position: fixed;
  bottom: -6rem;
  right: 8.5rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 0.5rem;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: bottom 0.3s ease, opacity 0.2s ease, transform 0.2s ease;
  z-index: 99;
}
.go-up.active {
  bottom: 3rem;
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
@media (max-width: 600px) {
  .go-up {
    left: 3rem;
  }
}
.go-up:hover {
  transform: translateY(-3px);
}
.arrow-up {
  border: solid #fff;
  border-top-width: medium;
  border-right-width: medium;
  border-bottom-width: medium;
  border-left-width: medium;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 5px;
  transition: 0.3s;
  transform-origin: center center;
  transform: rotate(-135deg);
}
#cookie-notice {
  font-weight: 900;

  display: none;
  position: fixed;
  bottom: 0;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  justify-content: center;
  align-items: center;
  background: rgba(0, 0, 0, 0.7);
  z-index: 9000;
}
.disclaimer__wrap {
  background: #fff;
  max-width: 60rem;
  padding: 2rem;
  border-radius: 1rem;
  max-height: 90vh;
  overflow: scroll;
  width: 90%;
}

.modal-logo {
  max-width: 20rem;
  margin: 0 auto;
  margin-bottom: 1.6rem;
}
.modal-title {
  text-align: center;
  font-size: 22px;
  color: var(--color-primary);
  font-weight: bold;
}
.modal__h1,
.modal__h1-subtitle {
  text-align: center;
}
.modal__h3-subtitle {
  text-align: center;
  font-size: 12px;
  max-width: 85%;
  margin: 0 auto;
}
.modal-body-wrap {
  border-radius: 5px;
  background-color: #fafcff;
  padding: 16px 8px;
  margin-bottom: 16px;
}

.modal-body-txt {
  max-height: 25rem;
  overflow: scroll;
}
.modal__subdivider {
  text-align: center;
  font-weight: 500;
  font-size: 1.3rem;
  margin-bottom: 0.4rem;
}

.modal__list {
  font-size: 1.2rem;
  font-style: italic;
  list-style-type: upper-roman;
  font-weight: 300;
}
.modal__listli {
  margin: 0 0 1rem 4rem;
}
.modal__p {
  font-weight: 300;
  font-size: 12px;
  width: calc(100% - 24px);
  margin: 0 auto 8px;
}
.modal__p.-mod {
  color: var(--color-primary);
  text-align: center;
  font-weight: bold;
  margin: 0 auto;
  max-width: 85%;
  line-height: 1.2;
  margin-bottom: 8px;
}

.modal-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

@media (max-width: 590px) {
  .modal-btn {
    flex-wrap: nowrap;
    justify-content: center;
  }
  .modal-choice-txt {
    min-height: 13rem;
    display: flex;
    align-items: center;
  }
}
.modal-choice-txt {
  color: #ccc;
  font-family: serif;
  text-transform: uppercase;
  font-weight: 300;
  text-align: center;
  margin: 1rem 0;
}

#cookie-notice a {
  cursor: pointer;
}

.btn-pill {
  text-align: center;
  /* H-13 was reversed by his ruling of 2026-08-28: the accept button goes back
     to the red it has always been. .btn-pill is used nowhere but inside
     #cookie-notice. */
  background: linear-gradient(
      0deg,
      rgba(6, 0, 0, 0.5) 8.85%,
      rgba(233, 7, 13, 0.105) 46.88%,
      rgba(51, 7, 8, 0.5) 100%
    ),
    #bf0001;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
  border-radius: 50px;
  width: -moz-fit-content;
  width: fit-content;
  padding: 1rem 2rem;
  min-width: 150px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  font-weight: 300;
  transition: 0.3s;
  transform: translateY(0);
}

.btn-pill:hover {
  transform: translateY(-2px);
}

.btn-pill:before {
  content: '';
  width: 2px;
  height: 200px;
  background: #fff;
  position: absolute;
  top: -20px;
  left: -50%;
  transform: rotate(30deg);
  filter: blur(2px);
  z-index: 3;

  animation: pillReflect 5s ease infinite;
}
@media (max-width: 600px) {
  .btn-pill {
    transform: translateY(0) rotate(-90deg);
  }
  .btn-pill:hover {
    transform: translateY(-2px) rotate(-90deg);
  }
}
@keyframes pillReflect {
  0% {
    left: -50%;
    width: 2px;
    opacity: 0.1;
    filter: blur(2px);
  }
  50% {
    left: 100%;
    opacity: 0.6;
    filter: blur(4px);
    width: 10px;
  }
  100% {
    left: 100%;
    opacity: 0.5;
    filter: blur(4px);

    width: 10px;
  }
}
.btn-pill.blue {
  background: linear-gradient(
      0deg,
      rgba(6, 0, 0, 0.5) 8.85%,
      rgb(var(--color-primary-rgb) / 0.5) 46.88%,
      rgba(51, 7, 8, 0.5) 100%
    ),
    var(--color-secondary);
}
.btn-pill span {
  position: relative;
  z-index: 2;
  color: #fff;
  text-decoration: none;
}
.half-bg {
  position: absolute;
  background: linear-gradient(
      180deg,
      rgba(0, 0, 0, 0) 65.62%,
      rgba(0, 0, 0, 0.5) 100%
    ),
    rgba(39, 1, 4, 0.09);
  border-radius: 50px 0px 0px 50px;
  width: 50%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
}
.half-bg.blue {
  background: linear-gradient(
      180deg,
      rgba(0, 0, 0, 0) 65.62%,
      rgba(0, 0, 0, 0.5) 100%
    ),
    rgba(39, 1, 4, 0.09);
}
.line-1 {
  position: absolute;
  height: 4px;
  width: 90%;
  right: 0px;
  top: 10px;
  background: #fd0c0d;
  filter: blur(3px);
  border-radius: 3px 50px 50px 3px;
  z-index: 1;
}
.line-1.blue {
  background: rgb(var(--color-secondary-rgb) / 0.8);
}
.line-2 {
  position: absolute;
  height: 6px;
  width: 90%;

  background: rgba(252, 19, 20, 1);
  filter: blur(3px);
  border-radius: 3px 50px 50px 3px;
  left: 0px;
  top: 40%;
  z-index: 1;
}
.line-2.blue {
  background: rgb(var(--color-accent-rgb) / 0.6);
}
.line-3 {
  position: absolute;
  height: 12px;
  bottom: 10%;
  width: 90%;

  left: 0px;
  background: rgba(244, 7, 15, 0.8);
  box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.19);
  filter: blur(4px);
  border-radius: 50px;
  z-index: 1;
}
.line-3.blue {
  background: rgb(var(--color-secondary-rgb) / 0.6);
}
.line-4 {
  position: absolute;
  height: 6px;
  bottom: 7px;
  width: 90%;
  left: 0px;
  background: rgba(186, 30, 35, 1);
  filter: blur(1px);
  border-radius: 50px;
  z-index: 1;
}
.line-4.blue {
  background: rgb(var(--color-secondary-rgb) / 0.72);
}
.circle {
  position: absolute;
  top: 5px;
  left: -32px;
  width: 50px;
  height: 50px;
  border-radius: 500px;
  border: 3px solid #ff6667;
  filter: blur(2px);
  z-index: 1;
  opacity: 0.7;
  transform: skewX(-13deg);
}
.circle.blue {
  border: 3px solid var(--color-accent);
}
.btn-pill a,
#cookie-notice-accept {
  text-decoration: none;
  color: #fff;
  position: relative;
  z-index: 3;
}
section {
  padding: 5rem 0;
}

/**
 * Basic styles for links
 */
a {
  color: var(--color-primary);
}
a:hover {
  text-decoration: none;
  color: var(--color-primary);
}

::selection {
  background-color: var(--color-primary);
  color: #fff;
}

body {
  font-family: sans-serif;
  font-weight: 400;
  line-height: 1.7;
  color: #313131;
  font-size: 1.6rem;
}

h1 {
  font-size: 3.2rem;
}

h2 {
  font-size: 3rem;
  font-weight: 300;
}

h3 {
  font-size: 2.2rem;
  font-weight: 300;
}

h4 {
  font-size: 2rem;
}

p {
  font-size: 1.6rem;
}

.u-center-text {
  text-align: center;
}

.u-margin-bottom-big {
  margin-bottom: 8rem;
}

.u-margin-bottom-medium {
  margin-bottom: 4rem;
}

.u-margin-bottom-small {
  margin-bottom: 1.5rem;
}

.red-border {
  border: 1px solid red;
}

/**
 * Main content containers
 * 1. Make the container full-width with a maximum width
 * 2. Center it in the viewport
 * 3. Leave some space on the edges, especially valuable on small screens
 */
.container {
  max-width: 1200px;
  /* 1 */
  margin-left: auto;
  /* 2 */
  margin-right: auto;
  /* 2 */
  padding-left: 2rem;
  /* 3 */
  padding-right: 2rem;
  /* 3 */
  width: 100%;
  /* 1 */
}

.light-bg {
  background: linear-gradient(270deg, var(--color-background) 0%, #fafcff 100%);
  text-align: center;
  border: 1px solid var(--color-background);
  padding: 7rem 0;
}

.btn {
  display: inline-block;
  border: 1px solid transparent;
  padding: 0.8rem 1.6rem;
  text-decoration: none;
  border-radius: 2px;
}
.btn.light {
  background-color: #f5f7fa;
  border: 1px solid var(--color-secondary);
}
.btn.dark {
  background-color: var(--color-secondary);
}

.default-btn {
  background: linear-gradient(
    0deg,
    var(--color-primary) 53.65%,
    rgb(var(--color-primary-rgb) / 0.53) 82.81%,
    var(--color-primary) 95.83%
  );
  border: 1px solid var(--color-primary);
  text-decoration: none;
  color: #fff;
  padding: 0.8rem 2rem;
  border-radius: 50rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 300;
  font-size: 1.4rem;
  transition: 0.2s;
  min-width: 15rem;
  width: fit-content;
  width: -moz-fit-content;
  margin: 0 auto;
  text-align: center;
  z-index: 3;
  position: relative;
}
.default-btn__icon {
  margin-right: 0.5rem;
}
.default-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
  color: #fff;
}

.agents {
  padding-top: 0;
}
.agents__wrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
  gap: 1.5rem;
  grid-auto-flow: row;
}
@media only screen and (max-width: 56.25em) {
  .agents__wrap {
    grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
  }
}
.agents__item {
  background: #fff;
  border: 1px solid var(--color-background);
  padding: 3rem 2rem;
  transition: 0.3s;
  border-radius: 1rem;
  text-align: center;
}
.agents__item:hover {
  border: none;
  transition: 0.3s;
  text-decoration: none;
  background: var(--color-background);
  box-shadow: inset 3px 3px 5px 0 rgba(255, 255, 255, 0.9),
    inset -3px -3px 5px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  transform: scale(1.03) translateY(-5px);
}
.agents__item .divider.card {
  width: 5rem;
  margin: 2rem auto;
  transition: 0.3s;
}
.agents__item:hover .divider.card {
  background-color: var(--color-primary);
  width: 6rem;
}
.agents__item:hover .agents__link {
  color: var(--color-primary);
}
.agents__item:hover .agents__flag {
  transform: scale(1.1);
}
.agents__flag {
  transition: 0.3s;
  font-size: 5rem;
  line-height: 1;
  margin-bottom: 1rem;
  min-height: 5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.agents__flag.small {
  font-size: 3.5rem;
  letter-spacing: 2px;
}
.agents__country {
  font-weight: bold;
  margin-bottom: 1rem;
  color: var(--color-primary);
}
.agents__desc {
  text-transform: uppercase;
  font-size: 1.3rem;
  line-height: 1.2;
  margin-bottom: 0.5rem;
  color: #777a80;
  font-weight: 300;
  min-height: 3rem;
}
.agents__link {
  text-decoration: none;
  color: #313131;
  margin: 0;
}
.agents__link:hover {
  text-decoration: underline;
}

.breadcrumb__container {
  padding: 3rem 0;
}

.page-title {
  background: linear-gradient(270deg, var(--color-background) 0%, #fafcff 100%);
  border-radius: 0px 58px 62px 0px;
  font-size: 3rem;
  padding: 3rem 4rem;
  font-weight: 300;
  line-height: 1;
  color: var(--color-primary);
  display: inline-block;
  margin-bottom: 1rem;
  position: relative;
}
.page-title:before {
  content: '';
  background: #fafcff;
  top: 0;
  left: 0;
  width: 100vw;
  transform: translateX(-100%);
  height: 100%;
  position: absolute;
}
@media only screen and (max-width: 56.25em) {
  .page-title {
    font-size: 2rem;
  }
}

.breadcrumb {
  display: block;
  font-size: 1.4rem;
  margin-left: 4rem;
  padding: 0;
  font-weight: 300;
  color: #9b9b9b;
  background: none;
}
.breadcrumb__link {
  color: #9b9b9b;
  text-decoration: none;
  transition: 0.3s;
}
.breadcrumb__link:hover {
  color: var(--color-primary);
  text-decoration: underline;
}
.breadcrumb__active {
  color: #4f4f4f;
}

.category-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
  gap: 3rem;
  grid-auto-flow: row;
  margin-bottom: 5rem;
}

.pagination {
  background: linear-gradient(
    0deg,
    #f5f5f5 53.65%,
    #ffffff 82.81%,
    #f3f4f5 95.83%
  );
  border: 1px solid #ececec;
  box-shadow: 0px 7px 10px rgba(0, 0, 0, 0.05);
  border-radius: 50px;
  list-style: none;
  display: inline-flex;
  overflow: hidden;
}
.pagination__item:not(:last-child) {
  border-right: 1px solid #ececec;
  height: fit-content;
}
.pagination__item:first-child .pagination__link {
  padding-right: 1.5rem;
  padding-left: 2.5rem;
}
.pagination__item:last-child .pagination__link {
  padding-left: 1.5rem;
  padding-right: 2.5rem;
}
.pagination__link {
  text-decoration: none;
  color: #cfcfcf;
  padding: 1.4rem 2rem;
  line-height: 1;
  display: block;
  transition: 0.3s;
}
.pagination__link:hover,
.pagination__link.active {
  background: linear-gradient(
    0deg,
    #fafafa 53.65%,
    #fafafa 82.81%,
    #f8f9fa 95.83%
  );
  color: var(--color-primary);
}
.pagination__link:hover .arrow.right,
.pagination__link:hover .arrow.left {
  border: solid var(--color-primary);
  border-width: 0 2px 2px 0;
}

.pagination__nav {
  margin: 0 auto;
  display: block;
  width: fit-content;
}

.arrow {
  border: solid #e3e3e3;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 5px;
  transition: 0.3s;
  transform-origin: center center;
}

.arrow.right {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

.arrow.left {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}

@media only screen and (max-width: 56.25em) {
  .pagination__link {
    padding: 1.4rem 1.5rem;
    font-size: 1.4rem;
  }
  .pagination__link.dots {
    padding: 1.4rem 1rem;
  }
  li.pagination__item:last-child .pagination__link {
    padding-left: 1rem;
    padding-right: 2rem;
  }
  li.pagination__item:first-child .pagination__link {
    padding-left: 2rem;
    padding-right: 1rem;
  }
}

.header {
  background: #ffffff;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.15);
  border-top: 4px solid var(--color-primary);
  padding: 3rem 0;
  overflow: hidden;
  z-index: 10;
}
.header-logo {
  z-index: 20;
  width: 20rem;
}
.header-logo__img {
  display: block;
  width: 20rem;
}
.header-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.header .container {
  max-width: 1300px;
}

.google-translate {
  min-width: 20rem;
  height: 5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.top-menu {
  display: inline-flex;
  list-style: none;
  width: fit-content;
  background: linear-gradient(
    0deg,
    var(--color-primary) 53.65%,
    rgb(var(--color-primary-rgb) / 0.53) 82.81%,
    var(--color-primary) 95.83%
  );
  border: 1px solid var(--color-primary);
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
  border-radius: 50px;
  padding: 0rem 2rem;
  height: 4rem;
  margin: 0;
}
.top-menu__item {
  font-size: 1.4rem;
  display: flex;
  align-items: center;
}
.top-menu__item:not(:last-child) {
  border-right: 1px solid var(--color-primary);
}
.top-menu__link {
  text-decoration: none;
  color: #fff;
  height: calc(100% + 2px);
  line-height: 1;
  border: 1px solid transparent;
  display: flex;
  align-items: center;
  transition: color 0.3s;
  padding: 0 1.5rem;
}
.top-menu__link:hover {
  background: linear-gradient(
    0deg,
    #f5f5f5 53.65%,
    #ffffff 82.81%,
    #f3f4f5 95.83%
  );
  border: 1px solid #ececec;
  color: var(--color-primary);
}

.tg-button {
  background: linear-gradient(
    0deg,
    var(--color-primary) 53.65%,
    rgb(var(--color-primary-rgb) / 0.53) 82.81%,
    var(--color-primary) 95.83%
  );
  border: 1px solid var(--color-primary);
  text-decoration: none;
  color: #fff;
  padding: 0.8rem 2rem;
  border-radius: 50rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 300;
  font-size: 1.4rem;
  transition: 0.2s;
  min-width: 15rem;
}
.tg-button__icon {
  margin-right: 0.5rem;
}
.tg-button:hover {
  transform: translateY(-2px);
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.15);
  color: #fff;
}

.header__mob,
.header__modal,
.header__modal-white {
  display: none;
}

@media only screen and (max-width: 75em) {
  .header.active .tg-button {
    transform: translateX(-30%);
    left: 30%;
    transition: 0.3s;
  }
  .tg-button {
    display: block;
    position: absolute;
    z-index: 13;
    left: 0%;
    transform: translateX(-100%);
    top: calc(100vh - 12rem);
  }
}

.header__modal {
  position: fixed;
  z-index: 11;
  top: 0;
  right: 0;
  width: 100vw;
  height: 100vh;
  transform: translateX(-100%);
  transition: 0.3s;
  background: rgb(var(--color-primary-rgb) / 0.6);
}

.header.active .header__modal {
  transform: translateX(0);
  transition: 0.4s;
}

.header__modal-white {
  position: absolute;
  z-index: 12;
  top: 0;
  left: 0;
  width: 80%;
  height: 100vh;
  transform: translateX(-100%);
  transition: 0.3s;
  background: #fff;
  border-top: 4px solid var(--color-primary);
}

.header.active .header__modal-white {
  transform: translateX(0);
}

@media (max-width: 950px) {
  .header.active .google-translate {
    transform: translateX(-30%);
    left: 30%;
    transition: 0.3s;
  }
  .google-translate {
    display: block;
    position: absolute;
    z-index: 13;
    left: 0%;
    transform: translateX(-100%);
    bottom: 17rem;
    max-width: 20rem;
  }
  .header__mob,
  .header__modal,
  .header__modal-white {
    display: block;
  }
  #open-modal {
    height: 4rem;
    cursor: pointer;
    border: none;
    background: none;
  }
  .header__mob {
    display: flex;
    align-items: center;
  }
  .header__mob-main {
    padding: 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .header__mob-main-menu-btn {
    display: block;
    position: relative;
    z-index: 11;
    width: 4rem;
    height: 2px;
    font-size: 0;
    line-height: 0;
    color: transparent;
    background-color: var(--color-primary);
  }
  .header__mob-main-menu-btn:before {
    content: '';
    position: absolute;
    top: -8px;
    left: 0;
    width: 80%;
    height: 2px;
    background-color: var(--color-primary);
    transition: 0.3s;
  }
  .header__mob-main-menu-btn:after {
    content: '';
    position: absolute;
    bottom: -8px;
    right: 0;
    width: 80%;
    height: 2px;
    background-color: var(--color-primary);
    transition: 0.3s;
  }
  .header.active .header__mob-main-menu-btn {
    background-color: transparent;
  }
  .header.active .header__mob-main-menu-btn:before {
    transform-origin: center;
    transform: rotate(-135deg);
    background-color: #fff;
    top: 0;
    width: 100%;
  }
  .header.active .header__mob-main-menu-btn:after {
    transform-origin: center;
    transform: rotate(135deg);
    background-color: #fff;
    top: 0;
    width: 100%;
  }
  .header.active .top-menu {
    z-index: 13;
    position: absolute;
    top: 15rem;
    left: 0%;
    transform: translateX(-100%);
    display: flex;
    flex-direction: column;
    list-style: none;
    background: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
    height: fit-content;
    transition: 0.3s;
  }
  .header.active .top-menu__item {
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.8rem;
    border: none !important;
    flex: 1;
  }
  .header.active .top-menu__link {
    text-decoration: none;
    color: #fff;
    height: calc(100% + 2px);
    line-height: 1;
    border: 1px solid transparent;
    display: flex;
    align-items: center;
    transition: color 0.3s;
    background: linear-gradient(
      0deg,
      var(--color-primary) 53.65%,
      rgb(var(--color-primary-rgb) / 0.53) 82.81%,
      var(--color-primary) 95.83%
    );
    border-radius: 50px;
    padding: 1rem 5rem;
    width: 20rem;
    justify-content: center;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.1);
  }
  .header.active .top-menu__link:hover {
    background: linear-gradient(
      0deg,
      #f5f5f5 53.65%,
      #ffffff 82.81%,
      #f3f4f5 95.83%
    );
    border: 1px solid #ececec;
    color: var(--color-primary);
  }
  .header.active .top-menu {
    top: 11rem;
  }
  .header.active .top-menu {
    transform: translateX(-30%);
    left: 30%;
  }
}

@media (max-width: 800px) {
  .google-translate,
  .header.active .google-translate {
    display: block;
    position: relative;
    z-index: 1;
    top: 0;
    transform: translateX(0);
    left: 0%;
  }
  .header.active .top-menu {
    transform: translateX(-30%);
    left: 30%;
  }
  .top-menu {
    z-index: 13;
    position: absolute;
    top: 11rem;
    left: 0%;
    transform: translateX(-100%);
    display: flex;
    flex-direction: column;
    list-style: none;
    background: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
    height: fit-content;
    transition: 0.3s;
  }
  .top-menu__item {
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.8rem;
    border: none !important;
    flex: 1;
  }
  .top-menu__link {
    text-decoration: none;
    color: #fff;
    height: calc(100% + 2px);
    line-height: 1;
    border: 1px solid transparent;
    display: flex;
    align-items: center;
    transition: color 0.3s;
    background: linear-gradient(
      0deg,
      var(--color-primary) 53.65%,
      rgb(var(--color-primary-rgb) / 0.53) 82.81%,
      var(--color-primary) 95.83%
    );
    border-radius: 50px;
    padding: 1rem 5rem;
    width: 20rem;
    justify-content: center;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.1);
  }
  .top-menu__link:hover {
    background: linear-gradient(
      0deg,
      #f5f5f5 53.65%,
      #ffffff 82.81%,
      #f3f4f5 95.83%
    );
    border: 1px solid #ececec;
    color: var(--color-primary);
  }
  .top-menu {
    top: 11rem;
  }
}

@media (max-width: 500px) {
  .google-translate {
    display: flex;
    position: absolute;
    left: 0%;
    transform: translateX(-100%);
    transition: 0.3s;
    top: auto;
    bottom: 17rem;
  }
  .header.active .google-translate {
    display: flex;
    position: absolute;
    transform: translateX(-30%);
    left: 30%;
    width: fit-content;
    transition: 0.3s;
    z-index: 13;
    top: auto;
    top: calc(100vh - 18rem);
  }
}

@media (max-width: 321px) {
  .header.active .top-menu {
    top: 10rem;
  }
  .top-menu {
    top: 10rem;
  }
  .header.active .top-menu__link {
    padding: 0.8rem 4rem;
  }
  .top-menu__link {
    padding: 0.8rem 4rem;
  }
  .header.active .top-menu__item {
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.2rem;
    border: none !important;
    flex: 1;
  }
  .top-menu__item {
    margin-bottom: 1.2rem;
  }
  .header.active .google-translate {
    display: flex;
    position: absolute;
    transform: translateX(-30%);
    left: 30%;
    width: fit-content;
    transition: 0.3s;
    z-index: 13;
    top: auto;
    top: calc(100vh - 13rem);
  }
  .tg-button {
    display: block;
    position: absolute;
    z-index: 13;
    left: 0%;
    transform: translateX(-100%);
    top: calc(100vh - 7rem);
  }
}

.footer {
  background: linear-gradient(92.04deg, var(--color-primary) 0%, var(--color-primary) 100%);
  padding: 5rem 0;
  color: #fff;
  text-align: center;
}
.footer-nav {
  margin-bottom: 1rem;
}
.footer-nav__col {
  width: 100%;
}
.footer-nav__logo {
  margin: 0rem auto 2rem;
  display: block;
}
.footer-nav__about {
  font-size: 1.4rem;
  font-weight: 300;
  margin-bottom: 1rem;
}
.footer-nav__copyright {
  font-size: 1rem;
  font-weight: 300;
}
.footer-nav__title {
  font-weight: 300;
  line-height: 1;
  margin-bottom: 2rem;
}
.footer-nav__ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.footer-nav__item {
  margin-bottom: 0.4rem;
}
.footer-nav__link {
  margin: 1rem;
  color: #fff;
  text-decoration: none;
  font-weight: 300;
  font-size: 1.4rem;
}
.footer-nav__link:hover {
  text-decoration: underline;
  color: #fff;
}

.translate,
.footer-contacts {
  margin-bottom: 2rem;
}

.footer__disclaimer {
  border-top: 1px solid var(--color-secondary);
  padding: 2rem 0;
  margin: 0 auto;
  max-width: 75rem;
}

.disclaimer-p {
  font-size: 1rem;
  color: var(--color-surface-blue);
  font-weight: 300;
}

.social-icon {
  width: 3.5rem;
  height: 3.5rem;
  transition: 0.2s ease-in-out;
  border-radius: 50rem;
  padding: 0.4rem;
}
.social-icon__link {
  margin: 1.5rem 0.8rem;
}
.social-icon:hover {
  text-decoration: none;
  transform: scale(1.25);
  box-shadow: 0px 0px 10px rgba(255, 255, 255, 0.3);
}

.privacy__link {
  font-size: 1.4rem;
  color: #fff;
  font-weight: 300;
  margin: 1rem;
}
.privacy__link:hover {
  text-decoration: underline;
  color: #fff;
}

form label {
  font-size: 1.4rem;
}

form input {
  border-radius: 3px;
  border: 1px solid #ccc;
  padding: 0.8rem 1.6rem;
  font-family: inherit;
}
form input:focus {
  outline: none;
  box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.1);
}

.hero {
  position: relative;
  height: 65vh;
  max-width: 126rem;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 0 0 2rem 2rem;
}
.hero:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  background: linear-gradient(180deg, var(--color-primary-hover), var(--color-primary));
  background-size: 400% 400%;
  /* His ruling, 2026-08-28: "the blue must be very, very gentle — just a hint".
     The veil was .85, which turned every hero photo into a flat blue field. It
     is now .08, and the white hero words keep their contrast from the scrim
     that sits behind the text block alone (.hero__container::before) rather
     than from a wash over the whole picture. */
  opacity: 0.08;
  -webkit-animation: gradientAnimation 10s ease infinite;
  -moz-animation: gradientAnimation 10s ease infinite;
  animation: gradientAnimation 10s ease infinite;
  transition: 0.3s;
}
/* The readable ground for the hero words: dark only behind the text, fading to
   nothing well before the edges, so the photograph stays visible around it. */
.hero__container::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(
    ellipse 70% 62% at 50% 50%,
    rgba(12, 28, 48, 0.62) 0%,
    rgba(12, 28, 48, 0.44) 45%,
    rgba(12, 28, 48, 0) 78%
  );
}
.hero__container {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 1;
  height: 100%;
  max-width: 70rem;
  position: relative;
}
.hero__title {
  text-align: center;
  color: #fff;
  font-size: 3.4rem;
  transition: 0.3s;
  text-shadow: 0px 2px 3px rgba(0, 0, 0, 0.6);
  line-height: 1.2;
}
.hero__welcome {
  color: #fff;
  font-size: 2rem;
  font-weight: 300;
  opacity: 0.8;
  text-transform: uppercase;
  letter-spacing: 5px;
}
@media (max-width: 1200px) {
  .hero {
    border-radius: 0;
  }
}
@media (max-width: 800px) {
  .hero {
    height: 50vh;
    border-radius: 0;
  }
  .hero__title {
    text-align: center;
    color: #fff;
    font-size: 2rem;
    line-height: 1.5;
  }
  .hero__welcome {
    color: #fff;
    font-size: 1.4rem;
  }
}

.play-btn {
  display: none;
}

.play-btn svg {
  width: 5rem;
  height: 5rem;
  margin: 2rem 0;
  border-radius: 50rem;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  animation: pulse 1s linear infinite alternate-reverse;
}

@keyframes pulse {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.05);
  }
}

.hero-video {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
}
.hero-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

@media (min-aspect-ratio: 16 / 9) {
  .hero-video {
    height: 300%;
    top: -100%;
  }
}

@media (max-aspect-ratio: 16 / 9) {
  .hero-video {
    width: 300%;
    left: -100%;
  }
}

.hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  z-index: 0;
  filter: saturate(0);
  top: 0;
  left: 0;
}

.subtitle {
  text-align: center;
  font-size: 2rem;
  line-height: 1.2;
  color: var(--color-primary-hover);
  margin-bottom: 3rem;
  transition: 0.3s;
}
.subtitle span {
  font-style: italic;
  font-weight: 300;
  display: block;
  font-size: 1.6rem;
}

.intro__description {
  background: var(--color-background);
  padding: 3rem;
  border-radius: 3px;
  text-align: justify;
  color: var(--color-primary-hover);
  margin-bottom: 2rem;
}
.intro__description .divider {
  max-width: 5rem;
  height: 2px;
}

.logo-panda {
  max-width: 30rem;
  margin: 0 auto;
}
.logo-panda img {
  width: 100%;
}
.logo-panda p {
  font-size: 1.4rem;
  font-style: italic;
  margin-bottom: 2rem;
}

.container__intro {
  max-width: 75rem;
  text-align: center;
}

.logo {
  max-width: 20rem;
  margin: 0 auto;
  text-align: center;
}
.logo img {
  width: 80%;
}

.modal-title {
  text-align: center;
  font-size: 22px;
  line-height: 1.2;
  color: var(--color-primary);
  font-weight: bold;
}

.modal-header {
  border: 0;
}

.modal-body {
  padding: 0 24px 24px;
}

.modal-body .logo {
  max-width: 20rem;
  margin-bottom: 1.6rem;
}

.divider {
  width: 100%;
  height: 1px;
  background-color: var(--color-background);
  margin: 16px 0;
}

.modal__h3 {
  font-size: 18px;
  text-align: center;
  font-weight: bold;
}

.modal__h3-subtitle {
  text-align: center;
  font-size: 12px;
  max-width: 85%;
  margin: 0 auto;
}

.modal__h4 {
  font-size: 14px;
  /* font-weight: bold; */
  color: var(--color-primary);
  margin-top: 16px;
  background-color: var(--color-primary);
  color: #fff;
  width: fit-content;
  padding: 5px;
  border-radius: 3px;
  line-height: 1;
  text-transform: uppercase;
}
.h4_anti_doping {
  margin-left: 1rem;
}
.modal__h4.is-contact,
.modal__p.is-contact {
  text-align: center;
}
.modal__h {
  font-size: 16px;
}
.title-is-contact {
  text-align: center;
  text-transform: uppercase;
  color: var(--color-primary);
  font-size: 20px;
}

.modal__p {
  font-size: 14px;
  width: calc(100% - 24px);
  margin: 0 auto 8px;
}

.modal__list {
  font-size: 12px;
  padding-left: 32px;
}

.modal__list li {
  margin-bottom: 4px;
}

.modal-body strong {
  color: var(--color-primary);
}

.modal-dialog {
  font-size: 12px !important;
  max-width: 60rem;
}

.modal__subdivider {
  text-align: center;
  font-size: 12px;
}

.modal__p.-mod {
  color: var(--color-primary);
  text-align: center;
  font-weight: bold;
  margin: 0 auto;
  max-width: 85%;
  margin-bottom: 8px;
}

.modal-content {
  border-radius: 10px;
  margin: 0 auto;
}

.modal-footer {
  padding: 1rem 1rem 2rem;
}

.modal__list.-mod {
  font-style: italic;
  list-style-type: upper-roman;
}

.modal-body-txt {
  max-height: 200px;
  overflow: scroll;
}

.modal-body-wrap {
  border-radius: 5px;
  background-color: #fafcff;
  padding: 16px 8px;
  margin-bottom: 16px;
}

.alert {
  font-size: 1.4rem;
  padding: 3rem;
  border-radius: 5px;
  display: none;
  text-align: center;
}
.alert svg {
  width: 7.5rem;
}

.alert-danger svg {
  width: 4rem;
}

.form-feedback {
  font-size: 1rem;
  text-transform: uppercase;
  margin-left: 1rem;
  margin-top: 0.6rem;
  color: #ff005c;
}

.feedback-msg-title {
  text-align: center;
  font-size: 3rem;
  font-weight: 500;
  margin-bottom: 1rem;
}

.feedback-msg-subtitle {
  text-align: center;
  line-height: 1.2;
  font-size: 1.8rem;
  font-weight: 500;
}

.feedback-msg-p {
  font-size: 1.4rem;
  margin-bottom: 0.5rem;
  line-height: 1.2;
  text-align: center;
  font-family: 'Courier New', Courier, monospace;
  font-weight: bold;
  margin-bottom: 1rem;
  text-align: start;
}

.feedback-msg-p-last {
  font-size: 1.4rem;
  line-height: 1.2;
  text-align: center;
  max-width: 80%;
  margin: 0 auto;
}

.feedback-msg-list {
  padding-left: 2rem;
  margin: 0;
  font-family: 'Courier New', Courier, monospace;
  font-weight: bold;
}

.feedback-msg-item {
  font-size: 1.3rem;
  line-height: 1.2;
  text-align: start;
}
.feedback-msg-item:not(:last-of-type) {
  margin-bottom: 0.8rem;
}

.nb {
  background-color: #c3e6cb;
  padding: 1.5rem;
  border-radius: 5px;
  margin: 2rem 0;
}

#bs-gdpr-cookies-modal-accept-btn,
#bs-gdpr-cookies-modal-decline-btn {
  border-radius: 50px;
  padding: 10px 32px;
  font-size: 1.4rem;
}

#bs-gdpr-cookies-modal-accept-btn:hover {
  box-shadow: 0 0 0 0.2rem rgb(var(--color-secondary-rgb) / 0.5);
}

#bs-gdpr-cookies-modal-decline-btn:hover {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.custom-container {
  max-width: 90rem;
}

.custom-h2 {
  font-weight: bold;
  color: var(--color-primary);
  font-size: 2.6rem;
  line-height: 1.1;
  margin-bottom: 3rem;
}
.custom-h2.center {
  text-align: center;
  margin-bottom: 3rem;
}

.custom-h3 {
  font-weight: bold;
  color: var(--color-primary);
  font-size: 2.2rem;
  line-height: 1.2;
  margin-bottom: 3rem;
}

.custom-p {
  margin-bottom: 1rem;
  text-indent: 1rem;
  color: var(--color-primary-hover);
}

.custom-p.bold {
  font-weight: bold;
  color: var(--color-primary);
}

.divider {
  height: 1px;
  background-color: var(--color-background);
  margin: 1.6rem auto 2rem;
}

.form {
  max-width: 55rem;
  margin: 0 auto;
}

.input__row {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}

.input__label {
  text-align: start;
  color: #fff;
  font-size: 10px;
  text-transform: uppercase;
  background-color: var(--color-primary);
  display: inline-block;
  padding: 4px 5px;
  border-radius: 3px;
  margin-bottom: 8px;
  line-height: 1.2;
  width: fit-content;
  width: -moz-fit-content;
}

.input__data,
.textarea {
  border-radius: 3px;
  border: 1px solid var(--color-surface-blue);
  border-radius: 10px;
  padding: 12px 16px;
  font-family: inherit;
  font-size: 16px;
}
.input__data::placeholder,
.textarea::placeholder {
  color: var(--color-surface-blue);
  font-size: 12px;
}
.input__data:focus,
.textarea:focus {
  border: 1px solid var(--color-primary);
  outline: none;
  box-shadow: 1px 5px 7px rgba(0, 0, 0, 0.1);
}
.input__data-check,
.textarea-check {
  margin-right: 4px;
}
/* the consent boxes had no size rule at all and rendered 13 x 13px */
.contact-form .input__data-check {
  width: 2.4rem;
  height: 2.4rem;
  min-width: 2.4rem;
  min-height: 2.4rem;
  margin-right: .8rem;
  vertical-align: -.5rem;
  flex: none;
}

.input-checkbox__row {
  font-size: 1.4rem;
  margin-bottom: 0.4rem;
  color: var(--color-primary);
}

.textarea {
  border-radius: 1rem;
  padding: 16px;
  width: 100%;
}

.submit {
  cursor: pointer;
}
.submit:focus {
  outline: none;
}

.loader {
  position: fixed;
  z-index: 10;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: 50% 50%;
  background-color: rgba(255, 255, 255, 0.8);
  background-repeat: no-repeat;
}

.loader-wrap {
  width: 131px;
  height: 25px;
  margin: 0 auto;
  top: 50%;
  position: relative;
  z-index: 9;
  overflow: hidden;
  clip-path: url(#myClip);
}

.loader-wrap:before {
  content: '';
  background: #fff;
  position: absolute;
  height: 100%;
  z-index: 10;
  left: 0;
  width: 100%;
}

.loader-wrap:after {
  content: '';
  background: linear-gradient(
    0deg,
    var(--color-primary) 53.65%,
    rgb(var(--color-primary-rgb) / 0.53) 82.81%,
    var(--color-primary) 95.83%
  );
  position: absolute;
  height: 100%;
  z-index: 10;
  left: 0;
  animation: loader 1.5s infinite alternate-reverse;
}

@keyframes loader {
  from {
    width: 100%;
  }
  to {
    width: 0;
  }
}

.team {
  padding-top: 0;
}

.gal {
  -webkit-column-count: 7;
  /* Chrome, Safari, Opera */
  -moz-column-count: 7;
  /* Firefox */
  column-count: 7;
  position: relative;
  margin-bottom: -2rem;
  column-gap: 0px;
}
.gal:after {
  content: '';
  width: 100%;
  height: 30rem;
  bottom: 0;
  left: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 80%);
  position: absolute;
  z-index: 2;
  transition: 0.3s;
}

.gal a {
  position: relative;
  padding: 0;
  transition: 0.3s;
  display: block;
}
.gal a:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: linear-gradient(180deg, var(--color-primary), var(--color-secondary));
  background-size: 400% 400%;
  opacity: 0.3;
  -webkit-animation: gradientAnimation 3s ease infinite;
  -moz-animation: gradientAnimation 3s ease infinite;
  animation: gradientAnimation 3s ease infinite;
  transition: 0.3s;
}
.gal a:hover:before {
  opacity: 0;
  transition: 0.3s;
  border: 1px dashed #fff;
}

.gal a:hover img {
  filter: saturate(1);
}

.gal img {
  width: 100%;
  padding: 0;
  filter: saturate(0.7);
  transition: 0.3s;
  position: relative;
}

@media only screen and (max-width: 56.25em) {
  .gal {
    -webkit-column-count: 4;
    /* Chrome, Safari, Opera */
    -moz-column-count: 4;
    /* Firefox */
    column-count: 4;
  }
}

@media only screen and (max-width: 37.5em) {
  .gal {
    -webkit-column-count: 3;
    /* Chrome, Safari, Opera */
    -moz-column-count: 3;
    /* Firefox */
    column-count: 3;
  }
}

@-webkit-keyframes gradientAnimation {
  0% {
    background-position: 71% 0%;
  }
  50% {
    background-position: 30% 100%;
  }
  100% {
    background-position: 71% 0%;
  }
}

@-moz-keyframes gradientAnimation {
  0% {
    background-position: 71% 0%;
  }
  50% {
    background-position: 30% 100%;
  }
  100% {
    background-position: 71% 0%;
  }
}

@keyframes gradientAnimation {
  0% {
    background-position: 71% 0%;
  }
  50% {
    background-position: 30% 100%;
  }
  100% {
    background-position: 71% 0%;
  }
}

.gal-video {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(5, 1fr);
  overflow: hidden;
  grid-auto-flow: row;
  margin-bottom: 2rem;
}
@media (max-width: 800px) {
  .gal-video {
    grid-template-rows: repeat(6, 1fr);
  }
}

.video__item {
  position: relative;
}
.video__item:nth-of-type(1) {
  grid-column-start: 1;
  grid-column-end: 7;
  grid-row-start: 1;
  grid-row-end: 4;
  height: 35rem;
}
.video__item:nth-of-type(2) {
  grid-column-start: 7;
  grid-column-end: 10;
  grid-row-start: 1;
  grid-row-end: 4;
}
.video__item:nth-of-type(3) {
  grid-column-start: 10;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 4;
}
.video__item:nth-of-type(4) {
  grid-column-start: 1;
  grid-column-end: 5;
  grid-row-start: 4;
  grid-row-end: 6;
}
.video__item:nth-of-type(5) {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 4;
  grid-row-end: 6;
}
.video__item:nth-of-type(6) {
  grid-column-start: 9;
  grid-column-end: 13;
  grid-row-start: 4;
  grid-row-end: 6;
}
@media (max-width: 800px) {
  .video__item {
    height: 15rem !important;
  }
  .video__item:nth-of-type(1) {
    grid-column-start: 1;
    grid-column-end: 7;
    grid-row-start: 1;
    grid-row-end: 3;
  }
  .video__item:nth-of-type(2) {
    grid-column-start: 7;
    grid-column-end: 13;
    grid-row-start: 1;
    grid-row-end: 3;
  }
  .video__item:nth-of-type(3) {
    grid-column-start: 1;
    grid-column-end: 7;
    grid-row-start: 3;
    grid-row-end: 5;
  }
  .video__item:nth-of-type(4) {
    grid-column-start: 7;
    grid-column-end: 13;
    grid-row-start: 3;
    grid-row-end: 5;
  }
  .video__item:nth-of-type(5) {
    grid-column-start: 1;
    grid-column-end: 7;
    grid-row-start: 5;
    grid-row-end: 7;
  }
  .video__item:nth-of-type(6) {
    grid-column-start: 7;
    grid-column-end: 13;
    grid-row-start: 5;
    grid-row-end: 7;
  }
}

.privacy-policy-terms,
.contact-form,
.products {
  padding-top: 0;
}

.not-found {
  font-size: 12rem;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  color: var(--color-primary);
}

.not-found-title {
  text-align: center;
  font-size: 3rem;
}

.not-found-text {
  text-align: center;
  margin-bottom: 3rem;
}

.products {
  padding: 0;
}
.products__wrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
  gap: 0rem;
  grid-auto-flow: row;
}
@media only screen and (max-width: 37.5em) {
  .products__wrap {
    grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  }
}
.products__item {
  perspective: 150rem;
  -moz-perspective: 150rem;
  position: relative;
  margin: 0;
  width: 100%;
  height: 25rem;
}
@media only screen and (max-width: 37.5em) {
  .products__item {
    height: 15rem;
  }
}
.products__item--link {
  height: 100%;
  transition: all 0.5s ease;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}
.products__item--back {
  transform: rotateY(180deg);
}
.products__item:hover .products__item--front {
  transform: rotateY(-180deg);
}
.products__item:hover .products__item--back {
  transform: rotateY(0);
}
.products__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.2s;
}

.products-contact {
  text-align: center;
  margin: 2rem 0;
}
.products-contact__title {
  font-size: 3rem;
  color: var(--color-primary);
  font-weight: 500;
  margin-bottom: 1rem;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type='checkbox'],
[type='radio'] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type='search'] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}
input:invalid,
textarea:invalid {
  border: 2px solid #e74c3c;
}

/* === CLUB ZPHC® professional rebuild corrections === */
:root { --zphc-blue:var(--color-primary); --zphc-dark:var(--color-primary); --parallax-progress:0; }
body { overflow-x:hidden; background:#fff; }
body.legal-notice-open { width:100vw; height:100vh; overflow:hidden; }
header.header, main.tmpl-home, footer.footer { position:relative; z-index:2; }
#cookie-notice.active, #cookie-notice.is-visible { display:flex; }
#cookie-notice { z-index:9000; }
.loader { z-index:8999; transition:opacity .18s ease; }
.footer-nav__copyright, .footer-nav__copyright a { color:#ffffff !important; opacity:1 !important; text-decoration:none; font-size:1.2rem; }
.footer-nav__copyright a:hover { text-decoration:underline; }
.header { position:relative; }
.header-nav { gap:1.2rem; }
.tg-button { position:fixed !important; top:1.4rem; right:2.4rem; z-index:80; min-width:14rem; box-shadow:0 6px 14px rgb(var(--color-primary-rgb) / .18); }
.tg-button:hover { transform:translateY(-2px); }
.google-translate { min-width:18rem; }
@media (min-width: 951px) { .header-nav { padding-right:16rem; } }
@media (max-width: 950px) { .tg-button { top:1.1rem; right:1rem; min-width:11.5rem; padding:.7rem 1.2rem; font-size:1.2rem; } .header-logo, .header-logo__img { width:17rem; } .header.active .top-menu { display:flex; transform:translateX(-30%); left:30%; z-index:13; } .top-menu { display:flex; } .header.active .google-translate { z-index:13; } }
@media (max-width: 500px) { .tg-button { min-width:auto; padding:.65rem 1rem; } .header { padding:2.4rem 0 1.8rem; } .header-logo, .header-logo__img { width:15rem; } .header.active .top-menu__link, .top-menu__link { width:20rem; } }
.hero { height:65vh; min-height:48rem; }
.hero-video, .hero-video iframe { pointer-events:none; }
@media (max-width:800px) { .hero { height:50vh; min-height:36rem; } }
.welcome-main { padding-top:4rem; }
.container__intro { max-width:75rem; }
.intro__description p { font-size:1.55rem; line-height:1.75; margin-bottom:1.2rem; }
.product-container { max-width:112rem; }
.products-intro { padding:2rem 0 3rem; }
.products-intro p, .team-intro p { font-size:1.6rem; line-height:1.75; color:var(--color-primary-hover); margin-bottom:1.4rem; }
.product-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(26rem,1fr)); gap:2.2rem; align-items:stretch; }
.product-card { background:#fff; border:1px solid var(--color-background); border-radius:1.4rem; overflow:hidden; box-shadow:0 8px 22px rgb(var(--color-primary-rgb) / .08); display:flex; flex-direction:column; transition:transform .25s ease, box-shadow .25s ease; }
.product-card:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgb(var(--color-primary-rgb) / .13); }
.product-frame, .team-frame { width:100%; aspect-ratio:4/3; border-radius:1.2rem; overflow:hidden; background:var(--color-background); position:relative; cursor:pointer; perspective:120rem; -moz-perspective:120rem; }
.product-card .product-frame { border-radius:1.4rem 1.4rem 0 0; }
.flip-face { position:absolute; inset:0; backface-visibility:hidden; -webkit-backface-visibility:hidden; transition:transform .55s ease, filter .35s ease; overflow:hidden; }
.flip-front { transform:rotateY(0); }
.flip-back { transform:rotateY(180deg); }
.flip-media:hover .flip-front, .flip-media.is-flipped .flip-front { transform:rotateY(-180deg); }
.flip-media:hover .flip-back, .flip-media.is-flipped .flip-back { transform:rotateY(0); }
.flip-media:hover img { filter:saturate(1.05) contrast(1.03); }
.products__img, .team__img { width:100%; height:100%; object-fit:cover; display:block; }
.product-copy { padding:1.6rem 1.8rem 1.8rem; }
.product-copy h2 { color:var(--zphc-dark); font-size:1.75rem; line-height:1.25; margin-bottom:.8rem; font-weight:700; }
.product-copy p { color:var(--color-primary); font-size:1.2rem; line-height:1.55; margin-bottom:.55rem; }
.team-intro { padding:1rem 0 3rem; }
.team-gallery-wrap { max-width:128rem; }
.team-gallery { display:grid; grid-template-columns:repeat(auto-fit,minmax(20rem,1fr)); gap:1.4rem; }
.team-card { border:1px solid rgb(var(--color-accent-rgb) / .28); border-radius:1.2rem; overflow:hidden; background:rgba(255,255,255,.92); box-shadow:0 8px 20px rgb(var(--color-primary-rgb) / .08); display:flex; flex-direction:column; }
.team-card .team-frame { border-radius:1.2rem 1.2rem 0 0; }
.team__img { filter:saturate(.82); transition:filter .3s ease, transform .3s ease; }
.team-card:hover .team__img { filter:saturate(1.05); transform:scale(1.02); }
.team-card[hidden], .team-card.is-gallery-hidden { display:none !important; }
.team-caption { padding:1rem 1.1rem 1.15rem; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem .8rem; color:var(--color-primary); font-size:1.08rem; line-height:1.35; background:linear-gradient(180deg,rgba(255,255,255,.98),rgb(var(--color-background-rgb) / .94)); }
.team-caption span { min-width:0; overflow-wrap:break-word; }
.team-caption strong { display:block; color:var(--color-primary); font-size:.86rem; line-height:1.1; text-transform:uppercase; letter-spacing:.02em; }
.team-caption__context { grid-column:1 / -1; }
.team-gallery-controls { width:100%; display:flex; align-items:center; justify-content:center; gap:1.2rem; flex-wrap:wrap; padding:2.2rem 0 .4rem; }
.team-gallery-status { color:var(--color-primary); font-size:1.25rem; font-weight:700; }
.team-gallery-load { border:1px solid rgb(var(--color-accent-rgb) / .72); border-radius:999px; min-width:18rem; min-height:4.4rem; padding:1rem 2rem; color:#fff; font-weight:800; font-size:1.28rem; cursor:pointer; background:linear-gradient(180deg,var(--color-accent) 0%,var(--color-secondary) 44%,var(--color-primary) 100%); box-shadow:inset 0 1px 0 rgba(255,255,255,.48), 0 10px 22px rgb(var(--color-primary-rgb) / .22); transition:transform .25s ease, box-shadow .25s ease, filter .25s ease; }
.team-gallery-load:hover, .team-gallery-load:focus-visible { transform:translateY(-2px) scale(1.04); box-shadow:inset 0 1px 0 rgba(255,255,255,.62), 0 14px 28px rgb(var(--color-primary-rgb) / .28); filter:saturate(1.08); outline:none; }
.team-gallery-load[hidden] { display:none !important; }
.anti-wrap { padding-bottom:5rem; }
.anti_doping { max-width:92rem; }
.anti_doping .modal__h1 { color:var(--zphc-dark); font-size:3.4rem; font-weight:700; margin-bottom:1rem; }
.anti_doping .modal__h1-subtitle { color:var(--color-primary); font-size:1.2rem; margin-bottom:2rem; }
.anti-section-title, .anti_doping .modal__h4, .anti_doping .modal__h { color:var(--zphc-dark); font-size:2.6rem; line-height:1.2; margin:2.8rem 0 1.2rem; font-weight:600; }
.anti_doping .modal__p { width:100%; font-size:1.58rem; line-height:1.85; color:var(--color-primary); margin-bottom:1.35rem; font-weight:400; text-align:start; }
.anti_doping .modal__p.-mod { font-size:1.6rem; line-height:1.75; max-width:100%; }
.anti_doping .modal__list { font-size:1.48rem; line-height:1.8; color:var(--color-primary); font-style:normal; font-weight:400; margin:1.2rem 0 2rem 3rem; }
.anti_doping .modal__list li { margin-bottom:.7rem; }
.blog-container { max-width:96rem; }
.blog-index { padding:1rem 0 5rem; }
.blog-intro { font-size:1.55rem; line-height:1.7; color:var(--color-primary); margin-bottom:2.4rem; }
.blog-list { display:flex; flex-direction:column; gap:1.4rem; }
.blog-list-item { display:flex; align-items:center; justify-content:space-between; gap:2rem; background:#fff; border:1px solid var(--color-background); border-radius:1.6rem; box-shadow:0 8px 24px rgb(var(--color-primary-rgb) / .08); padding:1.8rem 2rem; }
.blog-list-copy time, .article-date { color:var(--color-primary); font-weight:700; font-size:1.25rem; }
.blog-list-copy h2 { font-size:2rem; line-height:1.25; margin:.5rem 0 .8rem; }
.blog-list-copy h2 a { color:var(--color-primary); text-decoration:none; }
.blog-list-copy h2 a:hover { color:var(--color-primary); text-decoration:underline; }
.blog-list-copy p { font-size:1.45rem; line-height:1.6; color:var(--color-primary); margin:0; }
.blog-list-icon { flex:0 0 11rem; display:block; }
.blog-list-icon img { width:11rem; height:8rem; object-fit:contain; display:block; }
.article-body { max-width:86rem; padding-bottom:5rem; }
.article-body h1 { font-size:3.2rem; color:var(--color-primary); margin:1rem 0 1.8rem; line-height:1.15; }
.article-body h2 { font-size:2.35rem; color:var(--color-primary); margin:3rem 0 1.2rem; line-height:1.2; }
.article-body h3 { font-size:1.9rem; color:var(--color-primary); margin-bottom:.8rem; }
.article-body p, .article-body li { font-size:1.58rem; line-height:1.82; color:var(--color-primary); }
.article-body ul, .article-body ol { margin:1rem 0 2rem 2.4rem; }
.article-lead { font-size:1.85rem !important; line-height:1.75 !important; color:var(--color-primary-hover) !important; }
.article-note { background:var(--color-background); border-left:4px solid var(--color-primary); padding:1.6rem 1.8rem; border-radius:.8rem; color:var(--color-primary); font-size:1.5rem; line-height:1.7; margin:2rem 0; }
.technique-card { display:grid; grid-template-columns:minmax(24rem, 32rem) 1fr; gap:2rem; border:1px solid var(--color-background); background:#fff; border-radius:1.4rem; padding:1.6rem; margin:2rem 0; box-shadow:0 8px 22px rgb(var(--color-primary-rgb) / .07); }
.technique-card img { width:100%; height:auto; border-radius:1rem; background:var(--color-background); }
.policy-text { font-size:1.55rem; line-height:1.8; color:var(--color-primary); padding-bottom:5rem; }
.policy-text h1 { font-size:3rem; color:var(--color-primary); margin-bottom:1.8rem; }
.policy-text h2 { font-size:2.1rem; color:var(--color-primary); margin:2.4rem 0 1rem; }
.policy-text p { margin-bottom:1.2rem; }
.contact-form input, .contact-form textarea, .contact-form label, .contact-form a { user-select:text !important; }
.parallax-gym { position:fixed; inset:0; overflow:hidden; pointer-events:none; z-index:0; opacity:.18; }
.pg-bar { position:absolute; width:42vw; height:12px; border-radius:999px; background:linear-gradient(90deg,var(--color-primary),var(--color-primary)); right:-8vw; top:34vh; transform:translateY(calc(var(--parallax-progress) * 90px)) rotate(-12deg); }
.pg-plate { position:absolute; border:12px solid var(--color-primary); border-radius:50%; opacity:.28; transform:scale(calc(.78 + var(--parallax-progress) * .22)); }
.pg-plate-a { width:140px; height:140px; right:4vw; top:24vh; }
.pg-plate-b { width:100px; height:100px; right:15vw; top:42vh; transform:translateY(calc(var(--parallax-progress) * -80px)); }
.pg-plate-c { width:70px; height:70px; left:5vw; bottom:18vh; transform:translateY(calc(var(--parallax-progress) * 70px)); }
.pg-dumbbell { position:absolute; left:3vw; top:30vh; width:220px; height:80px; transform:translateY(calc(var(--parallax-progress) * -50px)) rotate(10deg); opacity:.35; }
.pg-dumbbell span:nth-child(1), .pg-dumbbell span:nth-child(3) { position:absolute; top:12px; width:46px; height:56px; border-radius:8px; background:var(--color-primary); }
.pg-dumbbell span:nth-child(1) { left:0; } .pg-dumbbell span:nth-child(3) { right:0; }
.pg-dumbbell span:nth-child(2) { position:absolute; top:36px; left:26px; right:26px; height:8px; border-radius:999px; background:var(--color-primary); }
.pg-label { position:absolute; right:8vw; bottom:12vh; font-size:6rem; line-height:1; font-weight:900; color:var(--color-primary); opacity:.12; transform:translateY(calc(var(--parallax-progress) * -120px)); }
.page-products .pg-plate-a, .page-products .pg-plate-b { border-width:18px; }
.page-team .pg-dumbbell { left:auto; right:8vw; transform:translateY(calc(var(--parallax-progress) * -60px)) rotate(-18deg); }
.page-anti .pg-bar { top:52vh; transform:translateY(calc(var(--parallax-progress) * -100px)) rotate(8deg); }
.page-blog .pg-label { content:'BLOG'; }
@media (max-width: 700px) { .blog-list-item { align-items:flex-start; } .blog-list-icon { flex:0 0 7.5rem; } .blog-list-icon img { width:7.5rem; height:6rem; } .technique-card { grid-template-columns:1fr; } .product-grid { grid-template-columns:1fr; } .team-gallery { grid-template-columns:repeat(2, minmax(0,1fr)); } .anti_doping .modal__h1 { font-size:2.5rem; } .anti-section-title { font-size:2.1rem; } .article-body h1 { font-size:2.55rem; } }
@media (max-width: 700px) { .team-caption { grid-template-columns:1fr; padding:.85rem .9rem 1rem; font-size:.96rem; } .team-caption strong { font-size:.78rem; } .team-gallery-controls { padding-top:1.6rem; } .team-gallery-load { min-width:15.5rem; min-height:4rem; font-size:1.18rem; } }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior:auto !important; animation-duration:.001ms !important; transition-duration:.001ms !important; } .parallax-gym { display:none; } }

/* === CLUB ZPHC® user QA correction pass: 2026-05-31 === */
/* Team image stability: keep frames clean even before high-resolution upgrade finishes. */
.team-card, .product-card { position:relative; }
.team-frame::before, .product-frame::before {
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(135deg,var(--color-background) 0%,#ffffff 45%,var(--color-background) 100%);
  z-index:0;
}
.team-frame .flip-face, .product-frame .flip-face { z-index:1; }
.team__img, .products__img { background:var(--color-background); }
.team__img[alt], .products__img[alt] { color:transparent; font-size:0; }
.team-card img, .product-card img { text-indent:-9999px; }
.team-card:hover { box-shadow:0 12px 30px rgb(var(--color-primary-rgb) / .14); }

/* Anti-doping visual system: restored close to the original page rhythm. */
.anti-wrap { padding:1rem 0 5rem; }
.anti_doping {
  max-width:96rem;
  color:#4b4f55;
  font-size:1.2rem;
  line-height:1.72;
  position:relative;
}
.anti_doping::before {
  content:'';
  display:block;
  width:100%;
  height:1px;
  background:var(--color-background);
  margin:0 auto 2.2rem;
}
.anti_doping .modal__h1 {
  color:var(--color-primary);
  font-size:1.85rem;
  line-height:1.35;
  text-align:center;
  font-weight:700;
  margin:0 auto 1rem;
  text-transform:none;
}
.anti_doping .modal__h1-subtitle {
  max-width:82rem;
  margin:0 auto 2rem;
  color:#4b4f55;
  text-align:center;
  font-size:1.2rem;
  line-height:1.65;
  font-style:italic;
}
.anti-section-title, .anti_doping .modal__h4, .anti_doping .modal__h {
  display:inline-block;
  width:auto;
  max-width:100%;
  background:var(--color-primary);
  color:#fff !important;
  border-radius:3px;
  padding:.45rem .65rem;
  margin:2.4rem 0 1.2rem;
  font-size:1.2rem;
  line-height:1.15;
  font-weight:700;
  letter-spacing:.01em;
  text-transform:uppercase;
}
.anti_doping .modal__p {
  width:100%;
  max-width:100%;
  margin:0 0 1.05rem;
  color:#4b4f55;
  font-size:1.2rem;
  line-height:1.75;
  text-align:start;
  font-weight:400;
  text-indent:0;
}
.anti_doping .modal__p strong, .anti_doping strong { color:var(--color-primary); font-weight:700; }
.anti_doping .modal__p.-mod, .anti_doping .anti-emphasis {
  color:var(--color-primary);
  text-align:center;
  font-weight:700;
  font-size:1.2rem;
  line-height:1.65;
  margin:1rem auto;
}
.anti_doping .modal__list, .anti_doping .anti-list {
  color:#4b4f55;
  font-size:1.25rem;
  line-height:1.72;
  margin:1rem 0 2rem 2.6rem;
  padding-left:1.6rem;
  font-style:italic;
  font-weight:400;
}
.anti_doping .modal__list li, .anti_doping .anti-list li { margin-bottom:.65rem; }
.anti_doping .divider {
  width:100%;
  height:1px;
  background:var(--color-background);
  margin:2rem auto;
}
.anti_doping .anti-note {
  background:var(--color-background);
  border:1px solid var(--color-background);
  border-left:4px solid var(--color-primary);
  border-radius:4px;
  padding:1.6rem 1.8rem;
  margin:1.6rem 0 2rem;
}
.anti_doping .anti-note p:last-child { margin-bottom:0; }

/* Contact success result: centered modal, timer, close action and attention highlights. */
body.contact-result-open { overflow:hidden; }
.alert.contact-response-modal {
  display:flex !important;
  position:fixed;
  z-index:9200;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:min(68rem, calc(100vw - 3rem));
  max-height:calc(100vh - 4rem);
  overflow:auto;
  background:#d4edda;
  color:#155724;
  border:1px solid #b7e2c3;
  box-shadow:0 24px 80px rgba(0,0,0,.35);
  border-radius:1.2rem;
  padding:4rem 4rem 3rem;
  text-align:center;
}
.alert.contact-response-modal::before {
  content:'';
  position:fixed;
  inset:-200vh;
  background:rgb(var(--color-primary-hover-rgb) / .62);
  z-index:-1;
}
.contact-response-close {
  position:absolute;
  right:1.4rem;
  top:1.2rem;
  width:3.6rem;
  height:3.6rem;
  border-radius:50%;
  border:1px solid rgb(var(--color-primary-rgb) / .2);
  background:#fff;
  color:var(--color-primary);
  font-size:2.4rem;
  line-height:3.2rem;
  cursor:pointer;
  box-shadow:0 6px 14px rgb(var(--color-primary-rgb) / .12);
}
.contact-response-close:hover { transform:scale(1.06); }
.contact-response-timer {
  position:absolute;
  left:1.6rem;
  top:1.4rem;
  color:var(--color-primary);
  background:rgba(255,255,255,.78);
  border:1px solid rgb(var(--color-primary-rgb) / .12);
  border-radius:999px;
  padding:.45rem 1rem;
  font-size:1.15rem;
  font-weight:700;
}
.alert.contact-response-modal .feedback-msg-title { font-size:3rem; color:#155724; margin-top:.6rem; }
.alert.contact-response-modal .feedback-msg-subtitle { font-size:1.9rem; line-height:1.35; color:#155724; }
.alert.contact-response-modal .nb {
  background:rgba(255,255,255,.42);
  border:1px solid rgba(21,87,36,.16);
  margin:2rem auto;
  text-align:start;
}
.alert.contact-response-modal .feedback-msg-p,
.alert.contact-response-modal .feedback-msg-list,
.alert.contact-response-modal .feedback-msg-item { font-family:inherit; }
.alert.contact-response-modal .feedback-msg-p { font-size:1.45rem; line-height:1.45; color:#155724; }
.alert.contact-response-modal .feedback-msg-list { padding-left:2.2rem; }
.alert.contact-response-modal .feedback-msg-item {
  position:relative;
  font-size:1.2rem;
  line-height:1.35;
  border-radius:.6rem;
  padding:.25rem .5rem;
  transition:background .35s ease, box-shadow .35s ease, transform .35s ease;
}
.alert.contact-response-modal .feedback-msg-item.is-glowing,
.alert.contact-response-modal .feedback-msg-p.is-glowing,
.alert.contact-response-modal .feedback-msg-subtitle.is-glowing {
  background:rgba(255,255,255,.76);
  box-shadow:0 0 0 .25rem rgb(var(--color-primary-rgb) / .13), 0 0 2.5rem rgb(var(--color-primary-rgb) / .25);
  transform:translateX(.3rem);
}
.alert.contact-response-modal .feedback-msg-p-last { font-size:1.45rem; color:#155724; line-height:1.45; }
@media (max-width: 600px) {
  .alert.contact-response-modal { padding:4.6rem 1.8rem 2.2rem; width:calc(100vw - 2rem); }
  .alert.contact-response-modal .feedback-msg-title { font-size:2.35rem; }
}

/* Blog index: distinct icon card treatment and stronger hover feedback. */
.blog-list-item {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  cursor:default;
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease;
}
.blog-list-item::before {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgb(var(--color-primary-rgb) / .045), rgba(255,255,255,0) 42%);
  opacity:0;
  transition:opacity .24s ease;
  z-index:-1;
}
.blog-list-item:hover,
.blog-list-item:focus-within {
  transform:translateY(-4px);
  border-color:var(--color-surface-blue);
  box-shadow:0 16px 34px rgb(var(--color-primary-rgb) / .16);
}
.blog-list-item:hover::before,
.blog-list-item:focus-within::before { opacity:1; }
.blog-list-item:hover h2 a,
.blog-list-item:focus-within h2 a { color:var(--color-primary); text-decoration:none; }
.blog-list-icon {
  border-radius:1.2rem;
  overflow:hidden;
  background:var(--color-background);
  transition:transform .24s ease, box-shadow .24s ease;
}
.blog-list-icon img { transition:transform .35s ease, filter .35s ease; }
.blog-list-item:hover .blog-list-icon,
.blog-list-item:focus-within .blog-list-icon { transform:scale(1.04) rotate(-1deg); box-shadow:0 8px 18px rgb(var(--color-primary-rgb) / .13); }
.blog-list-item:hover .blog-list-icon img,
.blog-list-item:focus-within .blog-list-icon img { transform:scale(1.08); filter:saturate(1.14) contrast(1.04); }
@media (max-width:700px){
  .anti_doping .modal__h1 { font-size:1.2rem; }
  .anti-section-title, .anti_doping .modal__h4, .anti_doping .modal__h { font-size:1.25rem; }
  .anti_doping .modal__p { font-size:1.28rem; }
  .anti_doping .modal__list { font-size:1.2rem; }
  .blog-list-item { gap:1.2rem; padding:1.4rem; }
}

/* === CLUB ZPHC® final professional correction pass: 2026-05-30 === */
.reg-mark { font-size:.54em; vertical-align:super; line-height:0; margin-left:.04em; font-weight:inherit; }
/* Strict visible text protection. Form controls remain usable. */
html, body, body * { -webkit-user-select:none !important; -moz-user-select:none !important; -ms-user-select:none !important; user-select:none !important; -webkit-touch-callout:none !important; }
input, textarea, select, option, button { -webkit-user-select:text !important; -moz-user-select:text !important; -ms-user-select:text !important; user-select:text !important; }
img { -webkit-user-drag:none !important; user-drag:none !important; }

/* Replace heavy/awkward parallax shapes with a progressive ZPHC® logo build. */
.parallax-gym { display:none !important; }
.parallax-logo-build { position:fixed; inset:0; overflow:hidden; pointer-events:none; z-index:0; opacity:.92; }
.parallax-logo-build .plb-track { position:absolute; right:4vw; bottom:9vh; display:flex; align-items:flex-end; gap:.05em; font-weight:800; letter-spacing:-.08em; font-size:clamp(7rem, 16vw, 22rem); line-height:.75; color:var(--color-primary); opacity:.075; filter:drop-shadow(0 10px 35px rgb(var(--color-primary-rgb) / .18)); transform:translateY(calc((1 - var(--parallax-progress, 0)) * 90px)); }
.plb-letter, .plb-reg { display:inline-block; transition:opacity .2s linear, transform .2s linear; }
.plb-z { opacity:1; transform:translateY(calc((1 - var(--parallax-progress, 0)) * 18px)); }
.plb-p { opacity:clamp(0, calc((var(--parallax-progress, 0) - .22) * 5), 1); transform:translateY(calc((1 - clamp(0, calc((var(--parallax-progress, 0) - .22) * 5), 1)) * 38px)); }
.plb-h { opacity:clamp(0, calc((var(--parallax-progress, 0) - .48) * 5), 1); transform:translateY(calc((1 - clamp(0, calc((var(--parallax-progress, 0) - .48) * 5), 1)) * 52px)); }
.plb-c { opacity:clamp(0, calc((var(--parallax-progress, 0) - .72) * 5), 1); transform:translateY(calc((1 - clamp(0, calc((var(--parallax-progress, 0) - .72) * 5), 1)) * 68px)); }
.plb-reg { opacity:clamp(0, calc((var(--parallax-progress, 0) - .88) * 8), 1); font-size:.22em; vertical-align:super; margin-left:.12em; transform:translateY(-.65em); }
.page-products .plb-track { color:var(--color-primary); }
.page-team .plb-track { right:auto; left:3vw; }
.page-anti .plb-track { opacity:.06; }
.page-blog .plb-track { bottom:5vh; }
@media (max-width:700px){ .parallax-logo-build .plb-track{ font-size:clamp(5rem, 23vw, 11rem); right:1rem; bottom:7vh; opacity:.055; } }

/* Hero gallery slider replacing the embedded YouTube video. Only one linked image is loaded at a time. */
.hero-image-slider { width:100%; height:100%; position:absolute; z-index:-1; top:0; left:0; overflow:hidden; cursor:pointer; background:var(--color-primary-hover); }
.hero-image-slider::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgb(var(--color-primary-rgb) / .12), rgb(var(--color-primary-hover-rgb) / .16)); box-shadow:inset 0 0 0 0 rgba(255,255,255,0); transition:box-shadow .35s ease, background .35s ease; }
.hero-image-slider img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(.85) contrast(1.04); transform:scale(1.01); transition:opacity .22s ease, transform .6s ease, filter .35s ease; }
.hero-image-slider.is-changing img { opacity:1; }
.hero-image-slider:hover img, .hero-image-slider.is-hovered img { transform:scale(1.045); filter:saturate(1.08) contrast(1.06); }
.hero-image-slider:hover::after, .hero-image-slider.is-hovered::after { box-shadow:inset 0 0 0 .2rem rgba(255,255,255,.25), inset 0 0 5rem rgb(var(--color-primary-rgb) / .35); background:linear-gradient(180deg, rgb(var(--color-primary-rgb) / .09), rgb(var(--color-primary-hover-rgb) / .13)); }
.hero::before { z-index:0; pointer-events:none; }
.hero__container { pointer-events:none; }

/* Prevent broken alt-text blocks in product/team galleries; keep frames stable before image upgrade. */
.team-frame, .product-frame { background:linear-gradient(135deg,var(--color-background),#fff 55%,var(--color-background)); }
.team__img, .products__img { background:var(--color-background); color:transparent !important; font-size:0 !important; }
.team-card img, .product-card img { text-indent:-9999px; }
.team-frame .flip-face, .product-frame .flip-face { z-index:1; }
.team-frame::before, .product-frame::before { content:''; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(135deg,var(--color-background) 0%,#fff 55%,var(--color-background) 100%); z-index:0; }

/* Anti-doping document styling closer to the original sophisticated legal/manual appearance. */
.anti-wrap { padding:1rem 0 5.5rem; }
.anti_doping { max-width:98rem; color:#4a4f55; font-size:1.2rem; line-height:1.72; position:relative; background:rgba(255,255,255,.92); }
.anti_doping::before { content:''; display:block; height:1px; background:var(--color-background); margin:0 0 2rem; }
.anti_doping .modal__h1 { color:var(--color-primary); font-size:1.95rem; line-height:1.35; text-align:center; font-weight:700; margin:0 auto 1rem; text-transform:none; }
.anti_doping .modal__h1-subtitle { max-width:84rem; margin:0 auto 2rem; color:#4b4f55; text-align:center; font-size:1.2rem; line-height:1.65; font-style:italic; }
.anti-section-title, .anti_doping .modal__h4, .anti_doping .modal__h { display:inline-block; width:auto; max-width:100%; background:var(--color-primary); color:#fff !important; border-radius:3px; padding:.45rem .65rem; margin:2.35rem 0 1.15rem; font-size:1.32rem; line-height:1.1; font-weight:700; letter-spacing:.01em; text-transform:uppercase; }
.anti_doping .modal__p { width:100%; max-width:100%; margin:0 0 1.05rem; color:#4b4f55; font-size:1.2rem; line-height:1.75; text-align:start; font-weight:400; }
.anti_doping .modal__p.-mod, .anti_doping .anti-emphasis { color:var(--color-primary); text-align:center; font-weight:700; font-size:1.2rem; line-height:1.65; margin:1rem auto; }
.anti_doping .modal__list, .anti_doping .anti-list { color:#4b4f55; font-size:1.25rem; line-height:1.7; margin:1rem 0 2rem 2.8rem; padding-left:1.6rem; font-style:italic; font-weight:400; }
.anti_doping .divider { width:100%; height:1px; background:var(--color-background); margin:2rem auto; }

/* Blog list polish and distinct icon behavior. */
.blog-list-item { position:relative; isolation:isolate; overflow:hidden; transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease; }
.blog-list-item::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg, rgb(var(--color-primary-rgb) / .055), rgba(255,255,255,0) 45%); opacity:0; z-index:-1; transition:opacity .24s ease; }
.blog-list-item:hover, .blog-list-item:focus-within { transform:translateY(-4px); border-color:var(--color-surface-blue); box-shadow:0 16px 34px rgb(var(--color-primary-rgb) / .16); }
.blog-list-item:hover::before, .blog-list-item:focus-within::before { opacity:1; }
.blog-list-icon { border-radius:1.2rem; overflow:hidden; background:var(--color-background); transition:transform .24s ease, box-shadow .24s ease; }
.blog-list-icon img { transition:transform .35s ease, filter .35s ease; }
.blog-list-item:hover .blog-list-icon, .blog-list-item:focus-within .blog-list-icon { transform:scale(1.04) rotate(-1deg); box-shadow:0 8px 18px rgb(var(--color-primary-rgb) / .13); }
.blog-list-item:hover .blog-list-icon img, .blog-list-item:focus-within .blog-list-icon img { transform:scale(1.08); filter:saturate(1.15) contrast(1.04); }

/* Blog article tables and visuals. */
.article-table { width:100%; border-collapse:collapse; margin:2rem 0 2.6rem; background:#fff; border:1px solid var(--color-background); box-shadow:0 8px 22px rgb(var(--color-primary-rgb) / .06); font-size:1.2rem; }
.article-table th, .article-table td { border:1px solid var(--color-background); padding:1rem 1.1rem; vertical-align:top; color:var(--color-primary); }
.article-table th { background:var(--color-background); color:var(--color-primary); font-weight:700; }
.article-visual { margin:2.4rem auto; text-align:center; }
.article-visual picture, .article-visual img { display:block; max-width:100%; height:auto; margin:0 auto; border-radius:1rem; }
.article-visual img { box-shadow:0 10px 30px rgb(var(--color-primary-rgb) / .13); background:var(--color-background); }
.article-visual figcaption { font-size:1.25rem; line-height:1.5; color:var(--color-primary); margin-top:.9rem; }
.rotator-article .article-note { border-left-color:var(--color-primary); }
@media (max-width:700px){ .article-table { display:block; overflow-x:auto; white-space:normal; font-size:1.2rem; } .article-table th, .article-table td { min-width:13rem; } }

/* Valid CSS-variable driven parallax-logo movement for broad browser support. */
.parallax-logo-build .plb-track { transform:translateY(var(--plb-y, 90px)) !important; }
.plb-z { transform:translateY(var(--plb-z-y, 18px)) !important; }
.plb-p { opacity:var(--plb-p-opacity, 0) !important; transform:translateY(var(--plb-p-y, 38px)) !important; }
.plb-h { opacity:var(--plb-h-opacity, 0) !important; transform:translateY(var(--plb-h-y, 52px)) !important; }
.plb-c { opacity:var(--plb-c-opacity, 0) !important; transform:translateY(var(--plb-c-y, 68px)) !important; }
.plb-reg { opacity:var(--plb-r-opacity, 0) !important; }

/* ========================================================================== */
/* Final careful pass: mobile menu, hero slider, products, policies, parallax. */
/* ========================================================================== */

/* Hero slider: high-resolution linked images, one active image only. */
.hero-image-slider {
  z-index: -1 !important;
  background:var(--color-primary-hover);
  border-radius:0 0 2rem 2rem;
}
.hero-image-slider::after {
  z-index:3;
  pointer-events:none;
}
.hero-image-slider img {
  position:relative;
  z-index:1;
  object-fit:cover;
  object-position:center center;
}
.hero-image-slider > img:not(.hero-image-slider__next) {
  transition:transform 1.05s cubic-bezier(.16,.84,.24,1), filter 1.05s cubic-bezier(.16,.84,.24,1), opacity .75s ease;
}
.hero-image-slider__next {
  position:absolute !important;
  inset:0;
  z-index:2 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  object-position:center center;
  opacity:0;
  will-change:opacity, transform, clip-path, filter;
  transition:
    opacity .92s cubic-bezier(.16,.84,.24,1),
    transform 1.05s cubic-bezier(.16,.84,.24,1),
    filter 1.05s cubic-bezier(.16,.84,.24,1),
    clip-path 1.05s cubic-bezier(.16,.84,.24,1);
}
.hero-image-slider.z-hero-zooming > img:not(.hero-image-slider__next) {
  transform-origin:var(--z-hero-origin, 50% 50%);
  animation:zHeroOrganicZoom var(--z-hero-zoom-duration, 5200ms) cubic-bezier(.18,.74,.22,1) forwards;
}
.hero-image-slider__next.z-hero-organic-enter {
  transform-origin:var(--z-hero-origin, 50% 50%);
  animation:zHeroOrganicEnter 6100ms cubic-bezier(.18,.74,.22,1) forwards;
}
.hero-image-slider.is-changing::before {
  content:"";
  position:absolute;
  inset:-1px;
  z-index:4;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(115deg, transparent 0 38%, rgba(255,255,255,.22) 48%, transparent 58% 100%);
  mix-blend-mode:screen;
  animation:zHeroSheen 1.02s cubic-bezier(.16,.84,.24,1) forwards;
}
.hero-image-slider.z-hero-effect-depth > img:not(.hero-image-slider__next) {
  transform:scale(1.045);
  filter:saturate(.78) contrast(1.04) blur(.08rem);
}
.hero-image-slider.z-hero-effect-depth .hero-image-slider__next {
  transform:scale(1.075);
  filter:saturate(.95) contrast(1.06) blur(.18rem);
}
.hero-image-slider.z-hero-effect-depth .hero-image-slider__next.is-visible {
  opacity:1;
  transform:scale(1.015);
  filter:saturate(.9) contrast(1.04) blur(0);
}
.hero-image-slider.z-hero-effect-glass .hero-image-slider__next {
  clip-path:inset(0 44% 0 44% round 1.4rem);
  transform:scale(1.035);
  filter:saturate(1.04) contrast(1.08);
}
.hero-image-slider.z-hero-effect-glass .hero-image-slider__next.is-visible {
  opacity:1;
  clip-path:inset(0 0 0 0 round 0);
  transform:scale(1.012);
}
.hero-image-slider.z-hero-effect-drift > img:not(.hero-image-slider__next) {
  transform:scale(1.035) translate3d(-1.2%, 0, 0);
}
.hero-image-slider.z-hero-effect-drift .hero-image-slider__next {
  transform:scale(1.055) translate3d(2.2%, 0, 0);
  filter:saturate(.96) contrast(1.08);
}
.hero-image-slider.z-hero-effect-drift .hero-image-slider__next.is-visible {
  opacity:1;
  transform:scale(1.012) translate3d(0, 0, 0);
}
.hero-image-slider.z-hero-effect-focus > img:not(.hero-image-slider__next) {
  filter:saturate(.7) contrast(1.02) blur(.12rem);
}
.hero-image-slider.z-hero-effect-focus .hero-image-slider__next {
  transform:scale(1.02);
  filter:saturate(.84) contrast(1.02) blur(.3rem);
}
.hero-image-slider.z-hero-effect-focus .hero-image-slider__next.is-visible {
  opacity:1;
  transform:scale(1.01);
  filter:saturate(.94) contrast(1.05) blur(0);
}
.hero-image-slider.z-hero-effect-lift > img:not(.hero-image-slider__next) {
  transform:scale(1.035) translate3d(0, .8%, 0);
}
.hero-image-slider.z-hero-effect-lift .hero-image-slider__next {
  transform:scale(1.05) translate3d(0, -1.6%, 0);
  filter:saturate(.98) contrast(1.06);
}
.hero-image-slider.z-hero-effect-lift .hero-image-slider__next.is-visible {
  opacity:1;
  transform:scale(1.012) translate3d(0, 0, 0);
}
@keyframes zHeroSheen {
  0% { opacity:0; transform:translateX(-42%); }
  28% { opacity:.32; }
  100% { opacity:0; transform:translateX(42%); }
}
@keyframes zHeroOrganicZoom {
  0% {
    transform:scale(1.006) translate3d(0, 0, 0);
    filter:saturate(.86) contrast(1.035);
  }
  38% {
    transform:scale(1.025) translate3d(.18%, -.12%, 0);
    filter:saturate(.91) contrast(1.045);
  }
  100% {
    transform:scale(1.058) translate3d(.42%, -.28%, 0);
    filter:saturate(.96) contrast(1.055);
  }
}
@keyframes zHeroOrganicEnter {
  0% {
    transform:scale(1.004) translate3d(0, 0, 0);
    filter:saturate(.84) contrast(1.035) blur(.05rem);
  }
  22% {
    transform:scale(1.018) translate3d(.12%, -.08%, 0);
    filter:saturate(.9) contrast(1.045) blur(0);
  }
  100% {
    transform:scale(1.058) translate3d(.42%, -.28%, 0);
    filter:saturate(.96) contrast(1.055) blur(0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero-image-slider__next,
  .hero-image-slider > img:not(.hero-image-slider__next) {
    animation:none !important;
    transition:opacity .28s ease !important;
    transform:none !important;
    filter:saturate(.9) contrast(1.04) !important;
    clip-path:none !important;
  }
  .hero-image-slider.is-changing::before {
    display:none !important;
  }
}

/* === V84 performance budget: reserve runtime UI slots to prevent CLS === */
@media (min-width:951px) {
  .header-nav::after {
    content:"" !important;
    grid-column:3 !important;
    grid-row:2 / span 2 !important;
    align-self:start !important;
    justify-self:start !important;
    width:var(--z-header-clock-width, 18rem) !important;
    min-height:12.5rem !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
}

.blog-index-wrap:not([data-blog-ux-ready="1"]) .blog-list {
  margin-top:34rem !important;
}

.blog-index-wrap[data-blog-ux-ready="1"] .blog-list {
  margin-top:0 !important;
}

.page-tools-index .tools-main .container {
  position:relative !important;
  padding-top:0 !important;
}

.page-tools-index .tools-popular,
.page-tools-index .tools-filter {
  position:static !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  z-index:auto !important;
  clear:both !important;
}

.page-tools-index .tools-popular {
  margin:0 0 1.5rem !important;
}

.page-tools-index .tools-filter {
  margin:0 0 2rem !important;
}

.page-tools-index .tools-grid {
  margin-top:0 !important;
}

@media (max-width:700px) {
  .blog-index-wrap:not([data-blog-ux-ready="1"]) .blog-list {
    margin-top:46rem !important;
  }

  .page-tools-index .tools-main .container {
    padding-top:0 !important;
  }

  .page-tools-index .tools-popular,
  .page-tools-index .tools-filter {
    left:auto !important;
    right:auto !important;
  }

  .page-tools-index .tools-filter {
    top:auto !important;
    margin-bottom:2.1rem !important;
  }
}
.hero-image-slider:hover::after,
.hero-image-slider.is-hovered::after {
  box-shadow:inset 0 0 0 .25rem rgba(255,255,255,.28), inset 0 0 6rem rgb(var(--color-primary-rgb) / .48), 0 0 2.4rem rgb(var(--color-primary-rgb) / .25);
}

/* Product cards: no flip. Grouped products cycle images on click and glow on hover. */
.product-static-slider {
  cursor:pointer;
  perspective:none !important;
  overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
}
.product-static-slider:hover,
.product-static-slider.is-hovered {
  box-shadow:0 0 0 .18rem rgb(var(--color-primary-rgb) / .32), 0 0 2.6rem rgb(var(--color-primary-rgb) / .32);
  transform:translateY(-2px);
}
.product-static-slider.is-clicked {
  transform:scale(1.025);
  box-shadow:0 0 0 .22rem rgb(var(--color-primary-rgb) / .45), 0 0 3rem rgb(var(--color-primary-rgb) / .45);
}
.product-static-slider img { transition:opacity .22s ease, transform .28s ease, filter .28s ease; }
.product-static-slider:hover img,
.product-static-slider.is-hovered img { transform:scale(1.035); filter:saturate(1.08) contrast(1.04); }
.product-slider-badge {
  position:absolute;
  right:1rem;
  bottom:1rem;
  z-index:2;
  background:rgb(var(--color-primary-rgb) / .82);
  color:#fff;
  border-radius:99rem;
  padding:.35rem .75rem;
  font-size:1.15rem;
  line-height:1;
  box-shadow:0 4px 12px rgba(0,0,0,.18);
}
.product-slider-card .product-copy h2 { min-height:auto; }
.product-grid { align-items:start; }

/* Blog index miniatures: use article visuals rather than generic icons. */
.blog-list-icon {
  flex:0 0 12rem;
  width:12rem;
  height:8.4rem;
  border:1px solid var(--color-background);
  background:var(--color-background);
}
.blog-list-icon img,
.blog-miniature-img {
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center;
  padding:0 !important;
  background:var(--color-background);
}
.blog-list-icon img[src$='.svg'] {
  object-fit:contain !important;
  padding:.7rem !important;
}

/* Legal/policy pages: same visual document style as Anti-Doping. */
.page-policy .privacy-policy-terms {
  padding:1rem 0 5.5rem;
}
.page-policy .policy-text {
  max-width:98rem;
  color:#4b4f55;
  font-size:1.2rem;
  line-height:1.75;
  background:rgba(255,255,255,.92);
  padding-bottom:5rem;
}
.page-policy .policy-text::before {
  content:'';
  display:block;
  height:1px;
  background:var(--color-background);
  margin:0 0 2rem;
}
.page-policy .policy-text h1 {
  color:var(--color-primary);
  font-size:1.95rem;
  line-height:1.35;
  text-align:center;
  font-weight:700;
  margin:0 auto 2rem;
}
.page-policy .policy-text h2 {
  display:inline-block;
  width:auto;
  max-width:100%;
  background:var(--color-primary);
  color:#fff !important;
  border-radius:3px;
  padding:.45rem .65rem;
  margin:2.35rem 0 1.15rem;
  font-size:1.32rem;
  line-height:1.1;
  font-weight:700;
  letter-spacing:.01em;
  text-transform:uppercase;
}
.page-policy .policy-text p,
.page-policy .policy-text li {
  color:#4b4f55;
  font-size:1.2rem;
  line-height:1.75;
  text-align:start;
  font-weight:400;
}
.page-policy .policy-text p { margin:0 0 1.05rem; }
.page-policy .policy-text ul,
.page-policy .policy-text ol { margin:1rem 0 2rem 2.8rem; padding-left:1.6rem; }

/* Parallax logo: keep complete ZPHC® visible above footer and more rewarding at page bottom. */
.parallax-logo-build .plb-track {
  bottom:calc(8vh + var(--plb-footer-lift, 0px)) !important;
  opacity:calc(.055 + (var(--parallax-progress, 0) * .09)) !important;
  color:var(--color-primary);
  filter:drop-shadow(0 12px 38px rgb(var(--color-primary-rgb) / .28));
}
@media (max-width:700px) {
  .parallax-logo-build .plb-track {
    bottom:calc(9vh + var(--plb-footer-lift, 0px)) !important;
    right:1rem !important;
    opacity:calc(.055 + (var(--parallax-progress, 0) * .12)) !important;
  }
}

/* Reliable mobile menu. Overrides earlier conflicting off-canvas rules. */
@media (max-width:950px) {
  body.active { overflow:hidden; }
  .header { z-index:5000; }
  .header-nav {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding-right:0 !important;
  }
  .header__mob,
  .header__modal,
  .header__modal-white { display:block; }
  .header__mob { position:relative; z-index:5004; display:flex; align-items:center; margin-left:auto; }
  #open-modal {
    width:4.6rem;
    height:4.6rem;
    padding:0;
    border:0;
    background:transparent;
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .header__mob-main-menu-btn,
  .header__mob-main-menu-btn:before,
  .header__mob-main-menu-btn:after { background-color:var(--color-primary); }
  .header.active .header__mob-main-menu-btn:before,
  .header.active .header__mob-main-menu-btn:after { background-color:var(--color-primary); }
  .header__modal {
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:100vh !important;
    background:rgb(var(--color-primary-hover-rgb) / .56) !important;
    opacity:0;
    visibility:hidden;
    transform:none !important;
    transition:opacity .22s ease, visibility .22s ease;
    z-index:5001;
  }
  .header.active .header__modal { opacity:1; visibility:visible; transform:none !important; }
  .header__modal-white {
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    width:min(86vw, 34rem) !important;
    height:100vh !important;
    transform:translateX(-105%) !important;
    background:#fff !important;
    border-top:4px solid var(--color-primary);
    box-shadow:12px 0 30px rgb(var(--color-primary-hover-rgb) / .18);
    z-index:5002;
    transition:transform .24s ease;
  }
  .header.active .header__modal-white { transform:translateX(0) !important; }
  .top-menu,
  .header.active .top-menu {
    position:fixed !important;
    top:9rem !important;
    left:1.8rem !important;
    z-index:5003 !important;
    width:min(78vw, 29rem) !important;
    max-height:calc(100vh - 23rem);
    overflow-y:auto;
    display:flex !important;
    flex-direction:column !important;
    gap:1.05rem;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    padding:0 !important;
    margin:0 !important;
    height:auto !important;
    transform:translateX(-120%) !important;
    opacity:0;
    visibility:hidden;
    transition:transform .24s ease, opacity .24s ease, visibility .24s ease;
  }
  .header.active .top-menu {
    transform:translateX(0) !important;
    opacity:1;
    visibility:visible;
  }
  .top-menu__item,
  .header.active .top-menu__item {
    display:block !important;
    margin:0 !important;
    border:0 !important;
    font-size:1.42rem;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    width:100% !important;
    min-height:4.1rem;
    display:flex !important;
    align-items:center;
    justify-content:center;
    padding:1rem 1.4rem !important;
    color:#fff !important;
    background:linear-gradient(0deg,var(--color-primary) 53.65%,rgb(var(--color-primary-rgb) / .53) 82.81%,var(--color-primary) 95.83%) !important;
    border:1px solid var(--color-primary) !important;
    border-radius:50rem !important;
    box-shadow:0 4px 10px rgb(var(--color-primary-rgb) / .16);
    text-decoration:none;
  }
  .google-translate,
  .header.active .google-translate {
    position:fixed !important;
    top:auto !important;
    bottom:6.2rem !important;
    left:1.8rem !important;
    z-index:5003 !important;
    width:min(78vw, 29rem) !important;
    max-width:min(78vw, 29rem) !important;
    min-width:0 !important;
    height:4.6rem;
    display:flex !important;
    align-items:center;
    justify-content:center;
    transform:translateX(-120%) !important;
    opacity:0;
    visibility:hidden;
    transition:transform .24s ease, opacity .24s ease, visibility .24s ease;
  }
  .header.active .google-translate {
    transform:translateX(0) !important;
    opacity:1;
    visibility:visible;
  }
  .tg-button {
    position:fixed !important;
    top:6.4rem !important;
    right:1rem !important;
    left:auto !important;
    z-index:4500 !important;
    transform:none !important;
    min-width:auto !important;
    padding:.65rem 1rem !important;
    font-size:1.18rem !important;
  }
  .header.active .tg-button { transform:none !important; left:auto !important; }
}
@media (max-width:500px) {
  .header-logo, .header-logo__img { width:15rem !important; }
  .top-menu, .header.active .top-menu { top:8.2rem !important; }
  .google-translate, .header.active .google-translate { bottom:5.2rem !important; }
  .tg-button { top:6rem !important; }
}

/* === Final mobile and visitor-readiness corrections === */
.go-up {
  position: fixed !important;
  right: 2rem !important;
  left: auto !important;
  bottom: -6rem !important;
  display:flex !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  z-index: 7000 !important;
}
.go-up.active {
  bottom: 2rem !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
body.active .go-up {
  bottom:-6rem !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

@media (max-width: 950px) {
  html, body { max-width:100%; overflow-x:hidden; }
  body.active { overflow:hidden !important; width:100vw; height:100vh; }
  .header {
    position:relative !important;
    z-index:6000 !important;
    min-height:7.2rem !important;
    padding:1.1rem 0 !important;
    overflow:visible !important;
    border-top:3px solid var(--color-primary) !important;
  }
  .header .container { width:100% !important; max-width:100% !important; padding-left:1.6rem !important; padding-right:1.6rem !important; }
  .header-nav { display:flex !important; align-items:center !important; justify-content:space-between !important; flex-wrap:nowrap !important; gap:1rem !important; }
  .header-logo { width:16rem !important; max-width:55vw !important; flex:0 0 auto !important; z-index:6005 !important; }
  .header-logo__img { display:block !important; width:100% !important; height:auto !important; max-height:4.5rem !important; object-fit:contain !important; }
  .header__mob { margin-left:auto !important; display:flex !important; align-items:center !important; justify-content:center !important; z-index:6010 !important; }
  #open-modal {
    position:relative !important;
    width:5rem !important;
    height:5rem !important;
    border:0 !important;
    background:transparent !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    z-index:6011 !important;
  }
  .header__mob-main-menu-btn,
  .header__mob-main-menu-btn:before,
  .header__mob-main-menu-btn:after {
    background:var(--color-primary) !important;
  }
  .header.active .header__mob-main-menu-btn { background:transparent !important; }
  .header.active .header__mob-main-menu-btn:before,
  .header.active .header__mob-main-menu-btn:after {
    background:var(--color-primary) !important;
  }
  .header__modal {
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:100vh !important;
    background:rgb(var(--color-primary-hover-rgb) / .38) !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:none !important;
    transition:opacity .24s ease, visibility .24s ease !important;
    z-index:6001 !important;
    display:block !important;
  }
  .header.active .header__modal { opacity:1 !important; visibility:visible !important; }
  .header__modal-white {
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:100vh !important;
    background:linear-gradient(180deg,#ffffff 0%,var(--color-background) 100%) !important;
    box-shadow:none !important;
    border-top:3px solid var(--color-primary) !important;
    transform:translateX(100%) !important;
    transition:transform .25s ease !important;
    z-index:6002 !important;
    display:block !important;
  }
  .header.active .header__modal-white { transform:translateX(0) !important; }
  .top-menu,
  .header.active .top-menu {
    position:fixed !important;
    top:9.3rem !important;
    left:50% !important;
    right:auto !important;
    width:min(82vw, 32rem) !important;
    max-height:calc(100vh - 21rem) !important;
    overflow-y:auto !important;
    display:flex !important;
    flex-direction:column !important;
    gap:1rem !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    padding:0 !important;
    margin:0 !important;
    height:auto !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translate(-50%, -1rem) !important;
    transition:opacity .24s ease, transform .24s ease, visibility .24s ease !important;
    z-index:6004 !important;
  }
  .header.active .top-menu {
    opacity:1 !important;
    visibility:visible !important;
    transform:translate(-50%, 0) !important;
  }
  .top-menu__item,
  .header.active .top-menu__item { display:block !important; width:100% !important; border:0 !important; margin:0 !important; font-size:1.45rem !important; }
  .top-menu__link,
  .header.active .top-menu__link {
    width:100% !important;
    min-height:4.4rem !important;
    padding:1rem 1.4rem !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:#fff !important;
    background:linear-gradient(0deg,var(--color-primary) 53.65%,rgb(var(--color-primary-rgb) / .58) 82.81%,var(--color-primary) 95.83%) !important;
    border:1px solid var(--color-primary) !important;
    border-radius:999px !important;
    box-shadow:0 4px 10px rgb(var(--color-primary-rgb) / .18) !important;
    text-decoration:none !important;
  }
  .google-translate,
  .header.active .google-translate {
    position:fixed !important;
    left:50% !important;
    right:auto !important;
    bottom:calc(2.4rem + env(safe-area-inset-bottom, 0px)) !important;
    width:min(82vw, 32rem) !important;
    min-width:0 !important;
    max-width:min(82vw, 32rem) !important;
    height:4.8rem !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translate(-50%, 1rem) !important;
    z-index:6004 !important;
    transition:opacity .24s ease, transform .24s ease, visibility .24s ease !important;
  }
  .header.active .google-translate { opacity:1 !important; visibility:visible !important; transform:translate(-50%, 0) !important; }
  .tg-button {
    position:fixed !important;
    top:7.8rem !important;
    right:1.4rem !important;
    left:auto !important;
    transform:none !important;
    z-index:5500 !important;
    min-width:auto !important;
    padding:.65rem 1rem !important;
    font-size:1.18rem !important;
  }
  .header.active .tg-button { display:none !important; }
  .page-title { font-size:3rem !important; padding:2.8rem 3rem !important; }
  .breadcrumb__container { padding-top:3rem !important; }
}

@media (max-width: 600px) {
  .blog-index .blog-list-item { display:grid !important; grid-template-columns:1fr 9.2rem !important; gap:1.2rem !important; align-items:start !important; padding:2rem !important; }
  .blog-list-copy h2 { font-size:2rem !important; line-height:1.28 !important; }
  .blog-list-copy p { font-size:1.55rem !important; line-height:1.55 !important; }
  .blog-list-icon { width:9.2rem !important; height:7rem !important; flex:0 0 9.2rem !important; }
  .blog-container { padding-left:1.6rem !important; padding-right:1.6rem !important; }
  .hero-image-slider { min-height:34rem !important; }
  .go-up { right:1.4rem !important; left:auto !important; }
}

@media (max-width: 380px) {
  .header-logo { width:14rem !important; }
  .blog-index .blog-list-item { grid-template-columns:1fr 8rem !important; padding:1.6rem !important; }
  .blog-list-icon { width:8rem !important; height:6.4rem !important; }
}
.article-topic-visual {
  margin:2rem 0 3rem;
  border-radius:1.6rem;
  overflow:hidden;
  border:1px solid var(--color-background);
  background:var(--color-background);
  box-shadow:0 1.2rem 3rem rgb(var(--color-primary-rgb) / .08);
}
.article-topic-visual img {
  display:block;
  width:100%;
  height:auto;
  max-height:42rem;
  object-fit:cover;
  object-position:center;
}
.article-topic-visual figcaption {
  padding:1rem 1.4rem;
  font-size:1.25rem;
  color:var(--color-primary);
  line-height:1.55;
}

/* === Final professional correction pass: compact layout, hero slider, product gallery, end-brand and document pages === */
.hero { height:clamp(34rem, 36vw, 54rem) !important; max-width:min(118rem, 88vw) !important; margin:3.2rem auto 2.8rem !important; border-radius:0 0 2.2rem 2.2rem !important; overflow:hidden !important; }
.hero-image-slider { border-radius:inherit !important; }
.hero-image-slider img { object-fit:cover !important; }
@media (max-width:700px){ .hero { height:32rem !important; max-width:100% !important; width:100% !important; margin:0 auto 0 !important; border-radius:0 !important; } }
.footer { padding:4.4rem 0 3.4rem !important; }
.footer-logo { margin-bottom:2rem !important; }
.footer-nav__logo { max-width:18rem !important; }
.footer-nav__ul { gap:1.4rem 2.2rem !important; margin-bottom:2.2rem !important; }
.footer-contacts { margin:2rem auto 2.4rem !important; gap:1.2rem 2rem !important; }
.footer__disclaimer { padding-top:2rem !important; margin-top:1.8rem !important; }
.footer__disclaimer .disclaimer-p { max-width:92rem !important; font-size:1.15rem !important; line-height:1.65 !important; }
.footer-nav__copyright { margin-top:2rem !important; }
@media (max-width:700px){ .footer{padding:3.4rem 1.6rem 2.8rem !important;} .footer-nav__logo{max-width:15rem !important;} .footer-nav__ul{gap:1rem 1.4rem !important;} .footer__disclaimer .disclaimer-p{font-size:1.15rem !important;} }
.zphc-products-modern .products-lead { max-width:96rem; margin:0 auto 3.2rem; font-size:1.65rem; line-height:1.75; color:var(--color-primary); text-align:center; }
.new-product-grid { display:grid !important; grid-template-columns:repeat(auto-fit,minmax(28rem,1fr)) !important; gap:3rem !important; align-items:start !important; }
.product-family-card { overflow:hidden; border:1px solid var(--color-background) !important; border-radius:1.7rem !important; background:#fff !important; box-shadow:0 1.5rem 4rem rgb(var(--color-primary-rgb) / .08) !important; transition:box-shadow .25s ease, transform .25s ease, border-color .25s ease !important; }
.product-family-card:hover, .product-family-card.is-active { transform:translateY(-.4rem) scale(1.012) !important; border-color:var(--color-secondary) !important; box-shadow:0 0 0 .3rem rgb(var(--color-secondary-rgb) / .14), 0 2rem 5rem rgb(var(--color-primary-rgb) / .18), 0 0 3.2rem rgb(var(--color-secondary-rgb) / .25) !important; }
.product-family-frame { height:28rem !important; min-height:28rem !important; display:block !important; position:relative !important; cursor:pointer !important; background:var(--color-background) !important; border-radius:1.7rem 1.7rem 0 0 !important; overflow:hidden !important; }
.product-family-frame::before { display:none !important; }
.product-family-frame img.products__img { display:block !important; width:100% !important; height:100% !important; object-fit:cover !important; opacity:1 !important; visibility:visible !important; position:relative !important; z-index:2 !important; filter:saturate(1.02) contrast(1.02) !important; transition:transform .28s ease, filter .28s ease !important; background:transparent !important; }
.product-family-card:hover .product-family-frame img { transform:scale(1.035) !important; filter:saturate(1.12) contrast(1.06) !important; }
.product-copy { padding:2.4rem 2.4rem 2.6rem !important; }
.product-copy h2 { font-size:2.1rem !important; line-height:1.25 !important; color:var(--color-primary) !important; margin-bottom:1.2rem !important; }
.product-copy p { font-size:1.5rem !important; line-height:1.65 !important; color:var(--color-primary) !important; margin-bottom:1rem !important; }
.product-slider-badge { position:absolute; right:1.2rem; bottom:1.2rem; z-index:4; color:#fff; background:rgb(var(--color-primary-rgb) / .82); border-radius:99rem; padding:.35rem .8rem; font-weight:700; font-size:1.2rem; box-shadow:0 .4rem 1rem rgba(0,0,0,.18); }
.product-miniatures { display:none; grid-template-columns:repeat(auto-fill,minmax(7.2rem,1fr)); gap:.8rem; padding:0 2.4rem 2.4rem; }
.product-family-card.is-open .product-miniatures { display:grid; }
.product-miniatures img { width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:.9rem; border:1px solid var(--color-background); cursor:pointer; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.product-miniatures img:hover { transform:scale(1.08); border-color:var(--color-secondary); box-shadow:0 0 1.6rem rgb(var(--color-secondary-rgb) / .42); }
@media (max-width:700px){ .product-family-frame{height:23rem !important; min-height:23rem !important;} .product-copy{padding:2rem !important;} .product-copy h2{font-size:1.9rem !important;} }
.document-style.article-body, .legal-document, .team-welcome-expanded { max-width:98rem; margin:0 auto 5rem; background:rgba(255,255,255,.96); color:#4a4f55; font-size:1.2rem; line-height:1.76; padding:2rem; }
.document-style.article-body h1, .document-style.article-body .modal__h1, .legal-document .modal__h1, .team-welcome-expanded h1 { color:var(--color-primary); font-size:2.6rem; line-height:1.25; text-align:center; font-weight:700; margin:0 auto 2rem; }
.document-style.article-body .article-lead, .document-style.article-body > p:first-of-type:not(.article-date), .legal-document .modal__h1-subtitle { max-width:84rem; margin:0 auto 2.6rem; color:#4b4f55; text-align:center; font-size:1.45rem; line-height:1.7; font-style:italic; }
.document-style.article-body h2, .legal-document .anti-section-title, .team-welcome-expanded h2 { display:inline-block; width:auto; max-width:100%; background:var(--color-primary); color:#fff !important; border-radius:3px; padding:.45rem .72rem; margin:2.6rem 0 1.25rem; font-size:1.32rem; line-height:1.1; font-weight:700; letter-spacing:.01em; text-transform:uppercase; }
.document-style.article-body p, .legal-document .modal__p, .team-welcome-expanded p { width:100%; margin:0 0 1.15rem; color:#4b4f55; font-size:1.38rem; line-height:1.78; text-align:start; font-weight:400; }
.document-style.article-body ul, .document-style.article-body ol, .legal-document ol, .legal-document ul { color:#4b4f55; font-size:1.27rem; line-height:1.72; margin:1rem 0 2rem 2.8rem; padding-left:1.6rem; font-style:italic; }
.article-date { display:block !important; text-align:center !important; color:var(--color-primary) !important; font-weight:700 !important; letter-spacing:.05em; margin-bottom:1rem !important; }
.references { border-top:1px solid var(--color-background); margin-top:3rem; padding-top:1rem; }
.references ol { font-style:normal !important; }
.article-topic-visual img, .blog-list-icon img { display:block !important; width:100% !important; height:100% !important; object-fit:cover !important; }
.blog-list-icon { overflow:hidden !important; }
.blog-list-icon img { border-radius:1rem; }
.page-end-brand { position:relative; z-index:1; min-height:22rem; display:flex; align-items:center; justify-content:center; overflow:hidden; background:radial-gradient(circle at 50% 50%, rgb(var(--color-primary-rgb) / .11), rgba(255,255,255,0) 62%); }
.page-end-brand-inner { text-align:center; transform:translateY(1rem); transition:transform .45s ease; }
.page-end-brand-logo { font-size:clamp(5rem, 11vw, 14rem); line-height:.9; letter-spacing:-.08em; font-weight:800; color:var(--color-background); text-shadow:0 0 0 rgb(var(--color-primary-rgb) / 0); transition:color .45s ease, text-shadow .45s ease, transform .45s ease; }
.page-end-brand-logo sup { font-size:.22em; letter-spacing:0; margin-left:.12em; vertical-align:super; }
.page-end-brand-slogan { margin-top:1.4rem; color:var(--color-primary); font-size:clamp(1.45rem, 2vw, 2.2rem); font-style:italic; opacity:.78; transition:opacity .45s ease, text-shadow .45s ease; }
.page-end-brand.is-active .page-end-brand-inner { transform:translateY(0); }
.page-end-brand.is-active .page-end-brand-logo { color:var(--color-primary); transform:scale(1.02); text-shadow:0 0 1rem rgb(var(--color-primary-rgb) / .5), 0 0 4rem rgb(var(--color-primary-rgb) / .38), 0 0 8rem rgb(var(--color-primary-rgb) / .22); }
.page-end-brand.is-active .page-end-brand-slogan { opacity:1; text-shadow:0 0 1.4rem rgb(var(--color-primary-rgb) / .32); }
.page-end-brand.super-glow .page-end-brand-logo { text-shadow:0 0 1.2rem rgb(var(--color-primary-rgb) / .8),0 0 4rem rgb(var(--color-primary-rgb) / .75),0 0 9rem rgb(var(--color-primary-rgb) / .55),0 0 14rem rgba(255,255,255,.9); }
.bottom-pull-easter { position:fixed; left:0; right:0; bottom:0; height:24rem; z-index:6500; pointer-events:none; display:flex; align-items:center; justify-content:center; transform:translateY(105%); opacity:0; transition:transform .2s ease, opacity .2s ease; background:linear-gradient(180deg, rgba(255,255,255,0), rgb(var(--color-background-rgb) / .96) 35%, rgba(255,255,255,.98)); }
.bottom-pull-easter.is-visible { transform:translateY(0); opacity:1; }
.bottom-pull-easter .egg-logo { font-size:clamp(4rem,18vw,9rem); font-weight:800; color:var(--color-primary); letter-spacing:-.08em; text-shadow:0 0 1.2rem rgb(var(--color-primary-rgb) / .75),0 0 5rem rgb(var(--color-primary-rgb) / .45); }
.bottom-pull-easter .egg-slogan { color:var(--color-primary); font-style:italic; font-size:1.55rem; margin-top:.8rem; text-align:center; }
.spark { position:absolute; width:.45rem; height:.45rem; border-radius:50%; background:var(--color-accent); box-shadow:0 0 1rem var(--color-accent); animation:sparkle .8s ease-out forwards; }
@keyframes sparkle { 0%{transform:translate(0,0) scale(.4); opacity:1;} 100%{transform:translate(var(--x),var(--y)) scale(0); opacity:0;} }
@media (max-width:700px){ .page-end-brand{min-height:18rem;} .document-style.article-body,.legal-document,.team-welcome-expanded{padding:1.4rem;} }

/* ===== FINAL VERIFICATION OVERRIDES: Z style, trademark sizing, parallax and product behavior ===== */
.reg-mark, .brand-reg { font-size:.42em !important; line-height:0 !important; vertical-align:super !important; position:relative !important; top:-.18em !important; margin-left:.045em !important; letter-spacing:0 !important; font-weight:inherit !important; }
.hero { height:clamp(28rem, 30vw, 43rem) !important; max-width:min(110rem, 86vw) !important; margin:2.8rem auto 2.4rem !important; }
@media (max-width:700px){ .hero { height:27rem !important; max-width:100% !important; margin:0 auto 0 !important; } }
.products-intro { display:none !important; }
.product-family-frame { height:30rem !important; min-height:30rem !important; background:var(--color-background) !important; }
.product-family-frame img.products__img { opacity:1 !important; visibility:visible !important; display:block !important; position:relative !important; width:100% !important; height:100% !important; object-fit:cover !important; }
.product-family-card:hover .product-family-frame img { transform:scale(1.035) !important; }
.product-action-note { color:var(--color-secondary) !important; font-size:1.24rem !important; }
.product-miniatures { background:#fff; border-top:1px solid var(--color-background); padding-top:1.6rem !important; }
.product-miniatures img { pointer-events:auto !important; }
@media (max-width:700px){ .product-family-frame{height:24rem !important; min-height:24rem !important;} }
.team-intro .intro__description { display:none !important; }
.team-intro.z-style-section .team-welcome-expanded { margin-bottom:3rem; }
.team-gallery-wrap { padding-top:0 !important; }
.z-style-article, .document-style.article-body, .legal-document, .policy-text, .team-welcome-expanded, .legal-extension { max-width:98rem !important; margin:0 auto 5rem !important; background:rgba(255,255,255,.96) !important; border-top:1px solid var(--color-background) !important; padding:2.6rem 2.8rem 4rem !important; color:#4b4f55 !important; box-shadow:none !important; }
.z-style-article h1, .document-style.article-body h1, .legal-document h1, .policy-text h1, .team-welcome-expanded h1 { color:var(--color-primary) !important; text-align:center !important; font-weight:700 !important; font-size:2.2rem !important; line-height:1.32 !important; margin:0 auto 2rem !important; }
.z-style-article h2, .document-style.article-body h2, .legal-document h2, .policy-text h2, .team-welcome-expanded h2, .legal-extension h2 { display:inline-block !important; background:var(--color-primary) !important; color:#fff !important; border-radius:3px !important; padding:.45rem .7rem !important; margin:2.4rem 0 1.2rem !important; font-size:1.35rem !important; line-height:1.1 !important; font-weight:700 !important; letter-spacing:.01em !important; text-transform:uppercase !important; }
.z-style-article p, .document-style.article-body p, .legal-document p, .policy-text p, .team-welcome-expanded p, .legal-extension p { color:#4b4f55 !important; font-size:1.36rem !important; line-height:1.78 !important; text-align:start !important; margin:0 0 1.12rem !important; }
.z-style-article .article-lead { max-width:84rem !important; margin:0 auto 2.5rem !important; text-align:center !important; font-style:italic !important; color:#4b4f55 !important; }
.z-style-article ul, .z-style-article ol, .document-style.article-body ul, .document-style.article-body ol { margin:1rem 0 2rem 2.8rem !important; padding-left:1.4rem !important; color:#4b4f55 !important; font-size:1.28rem !important; line-height:1.72 !important; }
.z-style-article li { margin-bottom:.45rem; }
.z-text-table { white-space:pre-wrap; overflow:auto; background:var(--color-background); border:1px solid var(--color-background); border-left:.45rem solid var(--color-primary); padding:1.4rem; color:var(--color-primary); font-size:1.16rem; line-height:1.5; margin:1.4rem 0 2rem; }
.article-note { background:var(--color-background); border-left:.45rem solid var(--color-primary); padding:1.4rem 1.6rem; margin:1.6rem 0; color:var(--color-primary); font-size:1.32rem; line-height:1.65; }
.article-topic-visual { max-width:88rem; margin:2.2rem auto; border:1px solid var(--color-background); border-radius:1.2rem; background:#fff; overflow:hidden; box-shadow:0 1.2rem 3rem rgb(var(--color-primary-rgb) / .08); }
.article-topic-visual img { width:100%; height:auto; display:block; object-fit:contain; }
.article-topic-visual figcaption { color:var(--color-secondary); font-size:1.2rem; line-height:1.55; padding:1rem 1.3rem; text-align:center; }
.pdf-download-box { margin:3rem 0 0; padding:1.8rem; border:1px solid var(--color-surface-blue); border-left:.55rem solid var(--color-primary); background:var(--color-background); border-radius:.6rem; }
.pdf-download-box a { color:var(--color-primary); font-weight:700; font-size:1.5rem; text-decoration:underline; }
.references, .references-list { font-style:normal !important; }
@media(max-width:700px){ .z-style-article, .document-style.article-body, .legal-document, .policy-text, .team-welcome-expanded,.legal-extension{padding:1.6rem !important;} .z-style-article h1{font-size:1.9rem !important;} }
.parallax-logo-build { position:fixed !important; inset:0 !important; pointer-events:none !important; z-index:0 !important; opacity:1 !important; overflow:hidden !important; }
.parallax-logo-build .plb-track { right:3vw !important; bottom:8vh !important; font-size:clamp(7rem,15vw,22rem) !important; color:var(--color-primary) !important; opacity:calc(.035 + var(--parallax-progress,0) * .075) !important; text-shadow:0 0 1.5rem rgb(var(--color-primary-rgb) / .2), 0 0 calc(var(--parallax-progress,0) * 5rem) rgb(var(--color-primary-rgb) / .22) !important; filter:drop-shadow(0 10px 32px rgb(var(--color-primary-rgb) / .2)) !important; transition:opacity .25s ease !important; }
html.z-end-visible .parallax-logo-build { opacity:0 !important; }
.plb-reg { font-size:.18em !important; transform:translate(.12em,-.9em) !important; margin-left:.02em !important; }
@media(max-width:700px){ .parallax-logo-build .plb-track{font-size:clamp(5rem,23vw,11rem) !important; right:.8rem !important; bottom:7vh !important;} }
.page-end-brand { min-height:30rem !important; margin-top:3rem !important; background:radial-gradient(circle at 50% 46%, rgb(var(--color-primary-rgb) / .12), rgba(255,255,255,0) 58%) !important; overflow:hidden !important; position:relative !important; z-index:2 !important; }
.page-end-brand-logo { display:inline-flex !important; align-items:flex-start !important; justify-content:center !important; gap:0 !important; letter-spacing:-.02em !important; font-family:Arial, Helvetica, sans-serif !important; font-size:clamp(4.2rem, 8.5vw, 11rem) !important; font-weight:800 !important; line-height:.9 !important; color:var(--color-primary) !important; text-shadow:none !important; position:relative !important; }
.page-end-brand-logo .brand-letter { display:inline-block; opacity:0; transform:translateY(1rem) scale(.95); transition:opacity .32s ease, transform .32s ease, text-shadow .32s ease; }
.page-end-brand-logo .brand-reg { opacity:0; transform:translate(.05em,-.75em) scale(.9); transition:opacity .32s ease, transform .32s ease; }
.page-end-brand.is-active .brand-z { opacity:1; transform:translateY(0) scale(1); transition-delay:.02s; }
.page-end-brand.is-active .brand-p { opacity:1; transform:translateY(0) scale(1); transition-delay:.14s; }
.page-end-brand.is-active .brand-h { opacity:1; transform:translateY(0) scale(1); transition-delay:.26s; }
.page-end-brand.is-active .brand-c { opacity:1; transform:translateY(0) scale(1); transition-delay:.38s; }
.page-end-brand.is-active .brand-reg { opacity:1; transform:translate(.05em,-.75em) scale(1); transition-delay:.5s; }
.page-end-brand.is-complete .page-end-brand-logo { text-shadow:0 0 .9rem rgb(var(--color-primary-rgb) / .52),0 0 3rem rgb(var(--color-primary-rgb) / .35),0 0 7rem rgb(var(--color-primary-rgb) / .22) !important; }
.page-end-brand-slogan { margin-top:1.4rem !important; color:var(--color-primary) !important; font-size:clamp(1.35rem,1.8vw,2rem) !important; font-style:italic !important; text-align:center !important; opacity:0 !important; transform:translateY(.6rem); transition:opacity .35s ease .7s, transform .35s ease .7s, text-shadow .35s ease !important; }
.page-end-brand.is-complete .page-end-brand-slogan { opacity:1 !important; transform:translateY(0); }
.page-end-brand-endnote { opacity:0; margin-top:1rem !important; text-align:center !important; color:var(--color-primary) !important; font-size:1.25rem !important; transition:opacity .25s ease; }
.page-end-brand.super-glow .page-end-brand-logo { text-shadow:0 0 1rem rgb(var(--color-primary-rgb) / .9),0 0 4rem rgb(var(--color-primary-rgb) / .8),0 0 9rem rgb(var(--color-primary-rgb) / .6),0 0 14rem rgba(255,255,255,1) !important; }
.page-end-brand.super-glow .page-end-brand-slogan, .page-end-brand.show-end-message .page-end-brand-endnote { opacity:1 !important; text-shadow:0 0 2rem rgb(var(--color-primary-rgb) / .55); }
@media(max-width:700px){ .page-end-brand{min-height:24rem !important;} .page-end-brand-logo{font-size:clamp(4.6rem,20vw,8.8rem) !important;} }
.bottom-pull-easter .egg-logo sup { font-size:.18em !important; transform:translate(.05em,-.8em); display:inline-block; }
.bottom-pull-easter .egg-end-msg { margin-top:1rem; color:var(--color-primary); font-weight:700; text-align:center; opacity:0; transition:opacity .2s ease; }
.bottom-pull-easter.show-message .egg-end-msg { opacity:1; }

/* === V9 corrections: product alignment, loading, compact footer, trademark and end brand === */
.zphc-products-modern .product-container,
.page-products .product-container {
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  max-width:112rem !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.zphc-products-modern .custom-h2.center,
.zphc-products-modern .products-lead,
.zphc-products-modern .new-product-grid {
  width:100% !important;
  max-width:100% !important;
  flex:0 0 auto !important;
  clear:both !important;
}
.zphc-products-modern .products-lead {
  max-width:92rem !important;
  margin:0 auto 4rem !important;
  text-align:center !important;
}
.zphc-products-modern .new-product-grid {
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(30rem,1fr)) !important;
  gap:3.2rem !important;
  align-items:start !important;
}
.page-products .product-family-card { align-self:start !important; }
.page-products .product-family-frame { height:28rem !important; min-height:28rem !important; }
.page-products .product-family-frame img.products__img { display:block !important; opacity:1 !important; visibility:visible !important; width:100% !important; height:100% !important; object-fit:cover !important; }
@media (max-width: 700px) {
  .zphc-products-modern .new-product-grid { grid-template-columns:1fr !important; gap:2.4rem !important; }
  .page-products .product-family-frame { height:23rem !important; min-height:23rem !important; }
}
.footer { padding:3rem 0 2.6rem !important; }
.footer-logo { margin-bottom:1.4rem !important; }
.footer-nav__logo { max-width:15.5rem !important; }
.footer-nav__ul { gap:.9rem 1.7rem !important; margin-bottom:1.5rem !important; }
.footer-nav__link { font-size:1.32rem !important; }
.footer-contacts { margin:1.35rem auto 1.6rem !important; gap:.8rem 1.4rem !important; }
.footer-contacts .social-icon { width:2.5rem !important; height:2.5rem !important; }
.footer__disclaimer { padding-top:1.5rem !important; margin-top:1.2rem !important; }
.footer__disclaimer .disclaimer-p { font-size:1.08rem !important; line-height:1.55 !important; max-width:86rem !important; }
.footer-nav__copyright { margin-top:1.4rem !important; }
@media (max-width:700px){ .footer{padding:2.6rem 1.4rem 2.4rem !important;} .footer-nav__ul{gap:.7rem 1.15rem !important;} .footer-nav__link{font-size:1.18rem !important;} .footer__disclaimer .disclaimer-p{font-size:1.02rem !important;} }
.reg-mark, .brand-reg { font-size:.34em !important; line-height:0 !important; vertical-align:super !important; position:relative !important; top:-.28em !important; margin-left:.035em !important; letter-spacing:0 !important; }
.page-end-brand-logo .brand-reg { font-size:.18em !important; top:0 !important; transform:translate(.08em,-.58em) scale(.95) !important; margin-left:.035em !important; }
.page-end-brand.is-active .brand-reg { transform:translate(.08em,-.58em) scale(1) !important; }
.page-end-brand { min-height:24rem !important; margin-top:2.6rem !important; background:radial-gradient(circle at 50% 48%, rgb(var(--color-primary-rgb) / .14), rgba(255,255,255,0) 62%) !important; }
.page-end-brand-logo { letter-spacing:-.055em !important; }
html.z-end-visible .parallax-logo-build .plb-track { opacity:0 !important; visibility:hidden !important; }
.z-style-article p, .z-style-article li { font-size:1.36rem !important; line-height:1.74 !important; }
.z-style-article .article-lead { font-size:1.45rem !important; }
.references-list li { margin-bottom:.75rem !important; }

/* === V10 final correction: bottom-pull-only ZPHC® reveal, product alignment and stable image cycling === */
.page-end-brand { display:none !important; height:0 !important; min-height:0 !important; margin:0 !important; padding:0 !important; overflow:hidden !important; }

/* Product page must read top-to-bottom, never side-by-side with first card */
section.zphc-products-modern > .container.product-container,
.zphc-products-modern .product-container,
.page-products .product-container {
  display:block !important;
  max-width:112rem !important;
  width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.zphc-products-modern .custom-h2.center {
  display:block !important;
  width:100% !important;
  max-width:92rem !important;
  margin:0 auto 1.6rem !important;
  text-align:center !important;
  float:none !important;
  clear:both !important;
}
.zphc-products-modern .products-lead {
  display:block !important;
  width:100% !important;
  max-width:92rem !important;
  margin:0 auto 4.2rem !important;
  text-align:center !important;
  float:none !important;
  clear:both !important;
}
.zphc-products-modern .new-product-grid {
  display:grid !important;
  width:100% !important;
  clear:both !important;
  grid-template-columns:repeat(auto-fit,minmax(30rem,1fr)) !important;
  gap:3.2rem !important;
  align-items:start !important;
  justify-content:center !important;
}
.product-family-frame img.products__img,
.product-family-frame .products__img {
  opacity:1 !important;
  visibility:visible !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  transition:opacity .28s ease, transform .35s ease !important;
}
.product-family-frame.is-loading img.products__img { opacity:.72 !important; }
.product-family-card.is-active .product-family-frame,
.product-family-card:hover .product-family-frame {
  box-shadow:0 0 0 .25rem rgb(var(--color-primary-rgb) / .18), 0 0 3.4rem rgb(var(--color-primary-rgb) / .24) !important;
}
@media (max-width: 700px){
  .zphc-products-modern .custom-h2.center { font-size:2.8rem !important; line-height:1.16 !important; }
  .zphc-products-modern .products-lead { font-size:1.55rem !important; line-height:1.75 !important; padding:0 .8rem !important; }
  .zphc-products-modern .new-product-grid { grid-template-columns:1fr !important; gap:2.4rem !important; }
}

/* The end brand should never appear as a normal page section. It reveals only when the visitor pulls beyond the footer. */
.bottom-pull-easter.v10-pull-brand {
  position:fixed !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  height:min(46vh,34rem) !important;
  z-index:1 !important; /* footer stays visually in front, reveal feels like it comes from behind */
  pointer-events:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:var(--pull-opacity,0) !important;
  transform:translateY(calc(108% - var(--pull-distance, 0px))) !important;
  transition:opacity .12s linear, transform .12s linear !important;
  background:radial-gradient(circle at 50% 58%, rgb(var(--color-primary-rgb) / .18), rgba(255,255,255,.98) 42%, rgba(255,255,255,0) 72%) !important;
  overflow:hidden !important;
}
.bottom-pull-easter.v10-pull-brand .egg-logo {
  font-size:clamp(4.5rem,18vw,11rem) !important;
  line-height:.9 !important;
  letter-spacing:-.055em !important;
  font-weight:800 !important;
  color:var(--color-primary) !important;
  text-align:center !important;
  text-shadow:0 0 1rem rgb(var(--color-primary-rgb) / .22),0 0 3.5rem rgb(var(--color-primary-rgb) / .18) !important;
  transform:scale(calc(.86 + var(--pull-ratio,0) * .14)) !important;
  filter:drop-shadow(0 1.5rem 2.4rem rgb(var(--color-primary-rgb) / .2)) !important;
}
.bottom-pull-easter.v10-pull-brand .egg-logo sup {
  font-size:.18em !important;
  line-height:0 !important;
  vertical-align:super !important;
  display:inline-block !important;
  transform:translate(.08em,-.65em) !important;
  letter-spacing:0 !important;
  margin-left:.05em !important;
}
.bottom-pull-easter.v10-pull-brand .egg-slogan {
  margin-top:1.2rem !important;
  text-align:center !important;
  color:var(--color-primary) !important;
  font-style:italic !important;
  font-size:clamp(1.35rem,3.2vw,2.15rem) !important;
  opacity:calc(.35 + var(--pull-ratio,0) * .65) !important;
  text-shadow:0 0 1.6rem rgb(var(--color-primary-rgb) / .18) !important;
}
.bottom-pull-easter.v10-pull-brand .egg-end-msg {
  margin-top:1.1rem !important;
  color:var(--color-primary) !important;
  font-size:clamp(1.15rem,2.8vw,1.6rem) !important;
  font-weight:700 !important;
  text-align:center !important;
  opacity:0 !important;
  transform:translateY(.8rem) !important;
  transition:opacity .18s ease, transform .18s ease !important;
}
.bottom-pull-easter.v10-pull-brand.show-message .egg-end-msg {
  opacity:1 !important;
  transform:translateY(0) !important;
}
.bottom-pull-easter.v10-pull-brand.super-glow .egg-logo {
  text-shadow:0 0 .8rem rgba(255,255,255,.95),0 0 2.2rem rgb(var(--color-primary-rgb) / .95),0 0 6rem rgb(var(--color-primary-rgb) / .7),0 0 12rem rgb(var(--color-primary-rgb) / .55) !important;
}
.bottom-pull-easter.v10-pull-brand .spark {
  position:absolute !important;
  width:.45rem !important;
  height:.45rem !important;
  border-radius:50% !important;
  background:var(--color-accent) !important;
  box-shadow:0 0 1rem var(--color-accent),0 0 2rem #fff !important;
  animation:sparkle .85s ease-out forwards !important;
}

/* === V11 final visual corrections: Z-style end mark, registered mark, top pull effect === */
.reg-mark, .brand-reg, .plb-reg, .egg-logo sup, .page-end-brand-v11__reg {
  font-size: .32em !important;
  line-height: 0 !important;
  vertical-align: baseline !important;
  position: relative !important;
  top: -.62em !important;
  margin-left: .04em !important;
  letter-spacing: 0 !important;
  font-weight: 700 !important;
}
.parallax-logo-build .plb-track {
  bottom: calc(12vh + var(--plb-footer-lift, 0px)) !important;
  opacity: calc(.045 + var(--parallax-progress,0) * .11) !important;
  text-shadow: 0 0 1.2rem rgb(var(--color-primary-rgb) / .18), 0 0 calc(var(--parallax-progress,0) * 6rem) rgb(var(--color-primary-rgb) / .32) !important;
}
.plb-p { opacity: clamp(0, calc((var(--parallax-progress, 0) - .12) * 6), 1) !important; }
.plb-h { opacity: clamp(0, calc((var(--parallax-progress, 0) - .28) * 6), 1) !important; }
.plb-c { opacity: clamp(0, calc((var(--parallax-progress, 0) - .44) * 6), 1) !important; }
.plb-reg { opacity: clamp(0, calc((var(--parallax-progress, 0) - .56) * 6), 1) !important; }
html.z-end-visible .parallax-logo-build { opacity:0 !important; visibility:hidden !important; }
.page-end-brand { display:none !important; }
.page-end-brand-v11 {
  position: relative !important;
  z-index: 2 !important;
  min-height: 25rem !important;
  margin: 3.2rem auto 0 !important;
  padding: 4.2rem 1.6rem 4.4rem !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  overflow:hidden !important;
  background: radial-gradient(circle at 50% 52%, rgb(var(--color-primary-rgb) / .16), rgba(255,255,255,0) 60%) !important;
}
.page-end-brand-v11__inner { text-align:center; transform:translateY(1.2rem); opacity:.96; transition:transform .6s ease, opacity .6s ease; }
.page-end-brand-v11__logo-wrap { position:relative; display:inline-block; max-width:min(55rem,82vw); filter:drop-shadow(0 0 0 rgb(var(--color-primary-rgb) / 0)); transition:filter .8s ease, transform .8s ease; }
.page-end-brand-v11__logo { display:block; width:min(52rem,80vw); height:auto; opacity:.2; transform:translateY(2.2rem) scale(.98); transition:opacity .4s ease, transform .55s ease; }
.page-end-brand-v11__reg { position:absolute !important; right:-1.4rem !important; top:30% !important; color:var(--color-primary) !important; font-size:2.2rem !important; opacity:0; transition:opacity .35s ease .55s, transform .35s ease .55s; transform:translateY(.4rem); }
.page-end-brand-v11__slogan { margin:1.3rem auto 0 !important; color:var(--color-primary) !important; font-size:clamp(1.45rem,2.1vw,2.15rem) !important; font-style:italic !important; line-height:1.45 !important; opacity:0; transform:translateY(.8rem); transition:opacity .45s ease .7s, transform .45s ease .7s, text-shadow .45s ease; }
.page-end-brand-v11.is-visible .page-end-brand-v11__inner { transform:translateY(0); opacity:1; }
.page-end-brand-v11.is-visible .page-end-brand-v11__logo { opacity:1; transform:translateY(0) scale(1); }
.page-end-brand-v11.is-visible .page-end-brand-v11__reg { opacity:1; transform:translateY(0); }
.page-end-brand-v11.is-visible .page-end-brand-v11__slogan { opacity:1; transform:translateY(0); }
.page-end-brand-v11.is-complete .page-end-brand-v11__logo-wrap { filter:drop-shadow(0 0 1.2rem rgb(var(--color-primary-rgb) / .45)) drop-shadow(0 0 4.5rem rgb(var(--color-primary-rgb) / .25)); transform:scale(1.01); }
.page-end-brand-v11.is-complete .page-end-brand-v11__slogan { text-shadow:0 0 1.5rem rgb(var(--color-primary-rgb) / .28); }
@media(max-width:700px){ .page-end-brand-v11{min-height:19rem !important; padding:3rem 1rem 3.4rem !important;} .page-end-brand-v11__logo{width:min(31rem,83vw);} .page-end-brand-v11__reg{font-size:1.45rem !important; right:-.8rem !important;} }

.top-pull-easter {
  position: fixed; left:0; right:0; top:0; height:24rem; z-index:6501; pointer-events:none;
  transform: translateY(-105%); opacity:0; transition: transform .18s ease, opacity .18s ease;
  background: linear-gradient(180deg, rgba(255,255,255,.99), rgb(var(--color-background-rgb) / .94) 65%, rgba(255,255,255,0));
  overflow:hidden; display:flex; align-items:center; justify-content:center;
}
.top-pull-easter::before { content:''; position:absolute; inset:-10% -20%; opacity:.09; background-image:url('/images/zz-logo.png'); background-size:26rem auto; background-repeat:repeat; transform:rotate(-10deg) scale(1.1); }
.top-pull-easter::after { content:'FACTORY QUALITY  •  QUALITY ASSURANCE  •  QUALITY CONTROL  •  WWW.ZPHC.COM'; position:absolute; left:0; right:0; bottom:2.6rem; text-align:center; font-size:clamp(1.2rem,3.4vw,2rem); color:var(--color-primary); font-weight:800; letter-spacing:.14em; opacity:.9; text-shadow:0 0 1.3rem rgb(var(--color-primary-rgb) / .2); }
.top-pull-easter.is-visible { transform:translateY(calc(-105% + var(--top-pull,0px))); opacity:var(--top-pull-opacity,0); }
.top-pull-easter__center { position:relative; text-align:center; z-index:1; transform:translateY(.5rem); }
.top-pull-easter__logo { width:min(34rem,70vw); height:auto; filter:drop-shadow(0 0 1.2rem rgb(var(--color-primary-rgb) / .4)); }
.top-pull-easter__title { margin-top:.6rem; font-weight:800; color:var(--color-primary); letter-spacing:.09em; font-size:clamp(1.5rem,4vw,2.4rem); }
.top-pull-easter__sub { color:var(--color-primary); font-weight:700; font-size:clamp(1.1rem,2.8vw,1.7rem); margin-top:.2rem; }
.top-pull-easter.super-glow .top-pull-easter__logo { filter:drop-shadow(0 0 1.5rem rgb(var(--color-primary-rgb) / .8)) drop-shadow(0 0 5rem rgb(var(--color-primary-rgb) / .45)); }

.z-article-visual-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(20rem,1fr)); gap:1.5rem; margin:2.2rem 0; }
.z-article-visual-card { border:1px solid var(--color-background); border-radius:1.4rem; background:var(--color-background); padding:1.2rem; box-shadow:0 1rem 2.4rem rgb(var(--color-primary-rgb) / .06); }
.z-article-visual-card img { width:100%; height:18rem; object-fit:cover; border-radius:1rem; display:block; }
.z-article-visual-card p { margin:.9rem 0 0 !important; font-size:1.25rem !important; line-height:1.5 !important; color:var(--color-primary); text-align:center; }
.z-info-strip { display:grid; grid-template-columns:repeat(auto-fit,minmax(18rem,1fr)); gap:1rem; margin:2rem 0; }
.z-info-strip div { padding:1.2rem; background:var(--color-background); border-left:.45rem solid var(--color-primary); border-radius:.8rem; color:var(--color-primary); }
.z-table { width:100%; border-collapse:collapse; margin:1.8rem 0; font-size:1.2rem; }
.z-table th { background:var(--color-primary); color:#fff; padding:.9rem; text-align:start; }
.z-table td { border:1px solid var(--color-background); padding:.85rem; vertical-align:top; }
.z-disclaimer-box { border:1px solid var(--color-surface-blue); border-left:.55rem solid var(--color-primary); background:var(--color-background); color:var(--color-primary); padding:1.4rem 1.6rem; border-radius:.8rem; margin:1.8rem 0 2.2rem; font-size:1.42rem; line-height:1.7; }
@media(max-width:700px){ .z-table{font-size:1.15rem;} .z-table th,.z-table td{padding:.65rem;} .z-article-visual-card img{height:14rem;} }

/* === V12 corrections: lightweight parallax, stable top backstage, registered mark and modern contact response === */
html {
  background-color:#fff;
}
body::before {
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.95;
  background:
    repeating-linear-gradient(155deg, transparent 0 140px, rgb(var(--color-primary-rgb) / .03) 141px 143px, transparent 144px 250px),
    radial-gradient(circle at 28% 18%, rgb(var(--color-primary-rgb) / .08), transparent 28%),
    #ffffff;
}
.header, main, footer, #cookie-notice, .loader { position:relative; z-index:2; }
.parallax-logo-build, .page-end-brand, .page-end-brand-v11 { display:none !important; }

.top-backstage-v12 {
  position:fixed;
  inset:-20vh 0 auto 0;
  height:55vh;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
  background:#fff;
}
.top-backstage-v12::before,
.top-backstage-v12::after {
  content:"ZPHC  WWW.ZPHC.COM  FACTORY QUALITY  QUALITY ASSURANCE  QUALITY CONTROL";
  position:absolute;
  left:-12vw;
  top:8vh;
  width:140vw;
  color:var(--color-primary);
  font:900 clamp(2.4rem, 7vw, 9rem)/1 Arial, Helvetica, sans-serif;
  letter-spacing:.02em;
  opacity:.95;
  transform:rotate(-18deg);
  white-space:pre;
  text-shadow:0 0 1rem rgba(255,255,255,.95);
}
.top-backstage-v12::after {
  top:29vh;
  left:-4vw;
  opacity:.75;
  transform:rotate(15deg);
  font-size:clamp(2rem, 5vw, 7rem);
}
.top-backstage-stamp {
  position:absolute;
  color:var(--color-primary);
  font-weight:800;
  border:3px solid rgb(var(--color-primary-rgb) / .18);
  border-radius:1.2rem;
  padding:.7rem 1.1rem;
  transform:rotate(-18deg);
  opacity:.7;
  font-size:clamp(1.1rem,2vw,2.2rem);
}
.top-backstage-stamp.s1{left:8%;top:12%;}.top-backstage-stamp.s2{right:18%;top:34%;transform:rotate(12deg)}.top-backstage-stamp.s3{left:45%;top:10%;transform:rotate(-6deg)}

.z-parallax-finale {
  --z-progress:0;
  position:relative;
  z-index:1;
  min-height:clamp(24rem, 26vw, 37rem);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  overflow:hidden;
  margin:2rem auto 0;
  background:radial-gradient(circle at 50% 48%, rgb(var(--color-primary-rgb) / calc(.06 + var(--z-progress) * .12)), rgba(255,255,255,0) 62%);
  isolation:isolate;
}
.z-parallax-word {
  position:relative;
  display:inline-flex;
  align-items:flex-start;
  justify-content:center;
  font-family:Arial, Helvetica, sans-serif;
  font-size:clamp(5.5rem, 12vw, 16rem);
  font-weight:900;
  letter-spacing:-.075em;
  color:var(--color-secondary);
  line-height:.82;
  opacity:.9;
  filter:drop-shadow(0 0 calc(0.2rem + var(--z-progress) * 1.5rem) rgb(var(--color-secondary-rgb) / .35));
  transition:filter .15s linear;
  z-index:2;
}
.z-letter { display:inline-block; will-change:transform, opacity; transform:translate(0,0); opacity:calc(.22 + var(--z-progress) * .78); }
.z-l1 { transform:translateX(calc((1 - var(--z-progress)) * -30vw)) translateY(calc((1 - var(--z-progress)) * -3rem)) rotate(calc((1 - var(--z-progress)) * -9deg)); }
.z-l2 { transform:translateX(calc((1 - var(--z-progress)) * -11vw)) translateY(calc((1 - var(--z-progress)) * 5rem)) rotate(calc((1 - var(--z-progress)) * 8deg)); }
.z-l3 { transform:translateX(calc((1 - var(--z-progress)) * 11vw)) translateY(calc((1 - var(--z-progress)) * -5rem)) rotate(calc((1 - var(--z-progress)) * -6deg)); }
.z-l4 { transform:translateX(calc((1 - var(--z-progress)) * 30vw)) translateY(calc((1 - var(--z-progress)) * 3rem)) rotate(calc((1 - var(--z-progress)) * 9deg)); }
.z-reg {
  position:relative;
  font-size:.16em;
  line-height:1;
  letter-spacing:0;
  margin-left:.11em;
  top:.12em;
  color:var(--color-secondary);
  opacity:calc(.25 + var(--z-progress) * .75);
  transform:translate(calc((1 - var(--z-progress)) * 10vw), calc((1 - var(--z-progress)) * -2rem));
}
.z-parallax-finale.is-complete .z-parallax-word {
  filter:drop-shadow(0 0 1.3rem rgb(var(--color-secondary-rgb) / .75)) drop-shadow(0 0 5rem rgb(var(--color-secondary-rgb) / .38));
}
.z-parallax-slogan {
  position:relative;
  z-index:2;
  margin-top:1.5rem;
  color:var(--color-primary);
  font-size:clamp(1.35rem, 2vw, 2.3rem);
  font-style:italic;
  opacity:calc(var(--z-progress) * 1.05);
  transform:translateY(calc((1 - var(--z-progress)) * 1.8rem));
  text-align:center;
  text-shadow:0 0 calc(var(--z-progress) * 1.4rem) rgb(var(--color-secondary-rgb) / .35);
}
.z-sport-orbit { position:absolute; inset:0; pointer-events:none; z-index:1; opacity:calc(.08 + var(--z-progress) * .33); }
.z-sport-orbit span { position:absolute; display:block; border-color:var(--color-secondary); color:var(--color-secondary); }
.z-left .z-dumbbell { left:9%; top:42%; width:10rem; height:1.4rem; border-top:.9rem solid var(--color-secondary); transform:translateY(calc((1 - var(--z-progress)) * 5rem)) rotate(-14deg); }
.z-right .z-barbell { right:8%; top:34%; width:13rem; height:1.2rem; border-top:.8rem solid var(--color-secondary); transform:translateY(calc((1 - var(--z-progress)) * -5rem)) rotate(12deg); }
.z-dumbbell::before,.z-dumbbell::after,.z-barbell::before,.z-barbell::after{content:""; position:absolute; top:-2.2rem; width:1.8rem; height:3.5rem; border-radius:.5rem; background:var(--color-secondary);}
.z-dumbbell::before,.z-barbell::before{left:-.9rem}.z-dumbbell::after,.z-barbell::after{right:-.9rem}
.z-plate { width:6.5rem; height:6.5rem; border:.8rem solid var(--color-secondary); border-radius:50%; opacity:.55; }
.z-left .z-plate { left:19%; top:16%; transform:translateX(calc((1 - var(--z-progress)) * -7rem)); }
.z-right .z-plate { right:20%; top:63%; transform:translateX(calc((1 - var(--z-progress)) * 7rem)); }
.z-kettlebell { left:13%; bottom:18%; width:5rem; height:4.8rem; border:.75rem solid var(--color-secondary); border-radius:45% 45% 50% 50%; opacity:.55; transform:translateY(calc((1 - var(--z-progress)) * 4rem)); }
.z-kettlebell::before{content:""; position:absolute; left:1rem; right:1rem; top:-2rem; height:2rem; border:.6rem solid var(--color-secondary); border-bottom:0; border-radius:2rem 2rem 0 0;}
@media(max-width:700px){.z-parallax-finale{min-height:19rem}.z-parallax-word{font-size:clamp(4.7rem,22vw,8.5rem)}.z-sport-orbit{opacity:calc(.04 + var(--z-progress) * .18)}.z-parallax-slogan{font-size:1.2rem; padding:0 1.6rem}}

/* Keep spark pull effect from previous version but avoid top pull audio/drop layer */
.top-pull-easter { display:none !important; }

/* Proper registered trademark mark in all normal text */
.reg-mark, .brand-reg, sup.reg-mark {
  display:inline-block !important;
  font-size:.38em !important;
  line-height:1 !important;
  vertical-align:baseline !important;
  position:relative !important;
  top:-.58em !important;
  margin-left:.035em !important;
  letter-spacing:0 !important;
  font-weight:inherit !important;
  text-transform:none !important;
}
.footer .reg-mark { top:-.48em !important; font-size:.42em !important; }
.article-body .reg-mark, .legal-document .reg-mark, .document-style .reg-mark { top:-.52em !important; font-size:.4em !important; }

/* Contact success response rebuilt */
body.contact-result-open { overflow:hidden; }
#alert.contact-response-modal {
  position:fixed !important;
  inset:0 !important;
  width:auto !important;
  height:auto !important;
  max-width:none !important;
  min-height:100vh !important;
  padding:2rem !important;
  margin:0 !important;
  z-index:9200 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:auto !important;
  background:rgb(var(--color-primary-hover-rgb) / .56) !important;
  border:0 !important;
  color:var(--color-primary-hover) !important;
}
.contact-response-card-v12 {
  position:relative;
  width:min(92vw, 72rem);
  background:#fff;
  border:1px solid var(--color-background);
  border-radius:2.2rem;
  box-shadow:0 3rem 8rem rgb(var(--color-primary-hover-rgb) / .26);
  padding:3rem 3rem 2.4rem;
  text-align:center;
  overflow:hidden;
}
.contact-response-card-v12::before { content:""; position:absolute; inset:-20% -20% auto -20%; height:45%; background:radial-gradient(circle at 50% 0, rgb(var(--color-secondary-rgb) / .18), transparent 65%); }
.contact-response-close { position:absolute !important; top:1.4rem !important; right:1.4rem !important; width:4.4rem !important; height:4.4rem !important; border-radius:50% !important; border:1px solid var(--color-background) !important; background:#fff !important; color:var(--color-primary) !important; font-size:2.2rem !important; cursor:pointer !important; z-index:2; }
.contact-response-timer { position:absolute !important; top:1.7rem !important; left:1.7rem !important; z-index:2; padding:.6rem 1rem !important; background:var(--color-background) !important; border-radius:999px !important; color:var(--color-primary) !important; font-weight:700 !important; font-size:1.25rem !important; }
.contact-response-icon { width:7rem; height:7rem; margin:1.4rem auto 1.2rem; border-radius:50%; background:linear-gradient(135deg,var(--color-secondary),var(--color-accent)); display:flex; align-items:center; justify-content:center; color:#fff; font-size:3.6rem; box-shadow:0 0 3rem rgb(var(--color-secondary-rgb) / .38); }
.contact-response-title { font-size:clamp(2.4rem,4vw,3.7rem); color:var(--color-primary); margin:.8rem 0 1rem; line-height:1.16; }
.contact-response-lead { font-size:1.65rem; line-height:1.65; color:var(--color-primary); max-width:58rem; margin:0 auto 1.8rem; }
.contact-response-rules { display:grid; grid-template-columns:repeat(auto-fit,minmax(18rem,1fr)); gap:1rem; margin:1.6rem auto 2rem; text-align:start; }
.contact-response-rules div { background:var(--color-background); border:1px solid var(--color-background); border-radius:1.3rem; padding:1.1rem 1.2rem; font-size:1.36rem; line-height:1.45; color:var(--color-primary); }
.contact-response-rules div.is-glowing { border-color:var(--color-secondary); box-shadow:0 0 0 .25rem rgb(var(--color-secondary-rgb) / .12), 0 0 2rem rgb(var(--color-secondary-rgb) / .25); }
.contact-response-progress { height:.55rem; border-radius:999px; background:var(--color-background); overflow:hidden; margin-top:1rem; }
.contact-response-progress span { display:block; width:100%; height:100%; background:linear-gradient(90deg,var(--color-secondary),var(--color-accent)); animation:contactBar 30s linear forwards; transform-origin:left center; }
@keyframes contactBar { from{transform:scaleX(1)} to{transform:scaleX(0)} }
@media(max-width:700px){.contact-response-card-v12{padding:2.4rem 1.6rem 2rem}.contact-response-title{font-size:2.4rem}.contact-response-rules{grid-template-columns:1fr}.contact-response-timer{font-size:1.1rem}}

/* Social sharing */
.z-share { display:flex; flex-wrap:wrap; gap:.8rem; align-items:center; margin:1.6rem 0 2.4rem; padding:1rem; border:1px solid var(--color-background); border-radius:1.2rem; background:var(--color-background); }
.z-share a, .z-share button { appearance:none; border:1px solid var(--color-secondary); color:var(--color-primary); background:#fff; border-radius:999px; padding:.75rem 1.15rem; font-weight:700; font-size:1.25rem; text-decoration:none; cursor:pointer; transition:transform .2s ease, box-shadow .2s ease; }
.z-share a:hover, .z-share button:hover { transform:translateY(-2px); box-shadow:0 .8rem 2rem rgb(var(--color-secondary-rgb) / .18); }

/* Z-style article refinements */
.article-body { position:relative; z-index:2; }
.article-body h2 { margin-top:3.2rem; }
.article-body .article-note { border-left:5px solid var(--color-secondary); background:var(--color-background); padding:1.4rem 1.6rem; border-radius:.9rem; }
.article-visual img { max-width:100%; border-radius:1.4rem; }

/* === V13 final corrections: stable top backstage, full exercise media, active Telegram, refined registered mark === */

/* Keep the backstage layer outside the normal viewport. It is a static layer behind the page, visible only during browser pull-down overscroll. */
body { position:relative !important; background:#fff !important; }
.top-backstage-v12 {
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:-62vh !important;
  height:62vh !important;
  z-index:0 !important;
  pointer-events:none !important;
  overflow:hidden !important;
  background:
    linear-gradient(180deg, #ffffff 0%, #ffffff 100%),
    radial-gradient(circle at 20% 35%, rgb(var(--color-primary-rgb) / .05), transparent 30%),
    radial-gradient(circle at 78% 55%, rgb(var(--color-primary-rgb) / .05), transparent 28%) !important;
  transform:none !important;
  opacity:1 !important;
}
.top-backstage-v12::before {
  content:"ZPHC   WWW.ZPHC.COM   FACTORY QUALITY   QUALITY ASSURANCE   QUALITY CONTROL" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:13vh !important;
  width:100% !important;
  text-align:center !important;
  color:var(--color-primary) !important;
  font:900 clamp(2.6rem, 7vw, 8.6rem)/1 Arial, Helvetica, sans-serif !important;
  letter-spacing:.08em !important;
  white-space:nowrap !important;
  opacity:.12 !important;
  transform:none !important;
  text-shadow:none !important;
}
.top-backstage-v12::after {
  content:"QUALITY CONTROL   •   FACTORY QUALITY   •   QUALITY ASSURANCE   •   WWW.ZPHC.COM" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:34vh !important;
  width:100% !important;
  text-align:center !important;
  color:var(--color-primary) !important;
  font:800 clamp(1.5rem, 4vw, 4.4rem)/1.2 Arial, Helvetica, sans-serif !important;
  letter-spacing:.14em !important;
  white-space:nowrap !important;
  opacity:.14 !important;
  transform:none !important;
  text-shadow:none !important;
}
.top-backstage-stamp {
  transform:none !important;
  border-color:rgb(var(--color-primary-rgb) / .12) !important;
  color:var(--color-primary) !important;
  opacity:.16 !important;
  background:rgba(255,255,255,.38) !important;
}
.top-backstage-stamp.s1{left:6% !important; top:45% !important;}
.top-backstage-stamp.s2{right:7% !important; top:48% !important;}
.top-backstage-stamp.s3{left:42% !important; top:52% !important;}
.top-pull-easter { display:none !important; }

/* Telegram contact pill must remain usable above galleries, parallax layers and decorative backgrounds. */
.tg-button {
  position:fixed !important;
  top:1.4rem !important;
  right:2.4rem !important;
  z-index:100000 !important;
  pointer-events:auto !important;
  touch-action:manipulation !important;
  visibility:visible !important;
  opacity:1 !important;
}
@media(max-width:700px){
  .tg-button { top:1rem !important; right:1rem !important; z-index:100000 !important; }
}

/* Article illustration cards: show full exercise/photo content instead of cropped fragments. */
.z-article-visual-grid {
  grid-template-columns:repeat(auto-fit,minmax(28rem,1fr)) !important;
  gap:2rem !important;
  align-items:stretch !important;
}
.z-article-visual-card {
  padding:1.4rem !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
}
.z-article-visual-card img {
  height:clamp(28rem, 28vw, 42rem) !important;
  width:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#fff !important;
  border-radius:1.2rem !important;
  padding:.4rem !important;
}
.article-visual img,
.article-topic-visual img {
  object-fit:contain !important;
  object-position:center center !important;
  max-height:none !important;
}
@media(max-width:700px){
  .z-article-visual-grid { grid-template-columns:1fr !important; }
  .z-article-visual-card img { height:clamp(24rem, 68vw, 36rem) !important; }
}

/* ZPHC® parallax assembly: code-built letters, centered before footer, not hidden behind footer. */
.z-parallax-finale {
  position:relative !important;
  z-index:1 !important;
  min-height:clamp(24rem, 28vw, 40rem) !important;
  margin:0 auto !important;
  padding:3rem 1rem 4rem !important;
  background:radial-gradient(circle at 50% 48%, rgb(var(--color-primary-rgb) / calc(.04 + var(--z-progress) * .13)), rgba(255,255,255,0) 64%) !important;
  overflow:hidden !important;
  pointer-events:none !important;
}
.z-parallax-word {
  color:var(--color-primary) !important;
  opacity:calc(.14 + var(--z-progress) * .86) !important;
  filter:drop-shadow(0 0 calc(var(--z-progress) * 1.6rem) rgb(var(--color-primary-rgb) / .62)) !important;
}
.z-reg {
  font-size:.18em !important;
  top:-.34em !important;
  margin-left:.055em !important;
  line-height:1 !important;
  color:var(--color-primary) !important;
}
.z-parallax-slogan {
  opacity:calc(var(--z-progress) * 1.1) !important;
}
.z-parallax-finale.is-complete .z-parallax-word {
  filter:drop-shadow(0 0 1.3rem rgb(var(--color-primary-rgb) / .78)) drop-shadow(0 0 5rem rgb(var(--color-primary-rgb) / .38)) !important;
}

/* Registered trademark mark in regular text: render like typed ZPHC® */
.reg-mark, .brand-reg, sup.reg-mark {
  display:inline !important;
  font-size:.46em !important;
  line-height:0 !important;
  vertical-align:super !important;
  position:relative !important;
  top:-.03em !important;
  margin-left:.035em !important;
  letter-spacing:0 !important;
  font-weight:inherit !important;
}
.footer .reg-mark,
.article-body .reg-mark,
.legal-document .reg-mark,
.document-style .reg-mark,
.blog-list-item .reg-mark,
.product-family-card .reg-mark {
  font-size:.46em !important;
  top:-.03em !important;
  vertical-align:super !important;
}

/* Decorative layers should never block interaction. */
.z-parallax-finale *,
.top-backstage-v12,
.top-backstage-v12 *,
body::before {
  pointer-events:none !important;
}

/* === Backend/SEO/static language layer V14 === */
.localized-page .localized-doc,.z-document{max-width:96rem;margin:3rem auto 5rem;padding:3.2rem;background:var(--color-background);border:1px solid var(--color-background);border-radius:1.4rem;box-shadow:0 1.4rem 4rem rgb(var(--color-primary-rgb) / .07)}
.localized-page .localized-doc h1{color:var(--color-primary);font-size:clamp(2.5rem,4vw,4rem);text-align:center;margin-bottom:1.6rem}.localized-page .localized-doc .lead{font-size:1.8rem;line-height:1.75;color:var(--color-primary);text-align:center}.z-section-label{display:inline-block;background:var(--color-primary);color:#fff;text-transform:uppercase;font-weight:800;border-radius:.35rem;padding:.45rem .9rem;margin:2rem 0 1rem;font-size:1.2rem;letter-spacing:.02em}.z-doc-button{display:inline-flex;align-items:center;border:1px solid var(--color-secondary);border-radius:999px;padding:.75rem 1.5rem;color:var(--color-primary);text-decoration:none;background:#fff;font-weight:700}.z-doc-button:hover{box-shadow:0 0 1.5rem rgb(var(--color-secondary-rgb) / .25);text-decoration:none}.language-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.4rem;margin-top:2.5rem}.lang-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem 1.6rem;background:#fff;border:1px solid var(--color-background);border-radius:1.2rem;text-decoration:none;color:var(--color-primary);box-shadow:0 .8rem 2rem rgb(var(--color-primary-rgb) / .06)}.lang-card:hover{border-color:var(--color-secondary);box-shadow:0 1rem 2.8rem rgb(var(--color-secondary-rgb) / .18);text-decoration:none}.localized-blog-list{display:grid;gap:1.2rem;margin-top:2rem}.localized-blog-list a{display:grid;gap:.35rem;padding:1.3rem 1.5rem;border:1px solid var(--color-background);border-radius:1rem;background:#fff;text-decoration:none}.localized-blog-list time{color:var(--color-secondary);font-weight:700}.localized-blog-list strong{font-size:1.55rem;color:var(--color-primary)}.localized-blog-list span{color:var(--color-primary);line-height:1.55}.localized-page[dir="rtl"] .localized-doc{text-align:right}.localized-page[dir="rtl"] .localized-doc .lead{text-align:right}.site-search-wrap{max-width:96rem;margin:4rem auto}.site-search-box{display:flex;gap:1rem;align-items:center;margin:2rem 0}.site-search-box input{flex:1;padding:1.2rem 1.4rem;border:1px solid var(--color-background);border-radius:999px;font-size:1.6rem}.search-results{display:grid;gap:1.2rem}.search-result{display:block;padding:1.4rem 1.6rem;border:1px solid var(--color-background);border-radius:1.1rem;background:#fff;text-decoration:none}.search-result strong{display:block;color:var(--color-primary);font-size:1.7rem}.search-result small{color:var(--color-primary)}.search-result p{margin:.7rem 0 0;color:var(--color-primary)}.visually-hidden-focusable:not(:focus):not(:active){position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reg-mark, .brand-reg, sup.reg-mark, .localized-page sup{font-size:.44em!important;line-height:0!important;vertical-align:super!important;position:relative!important;top:-.22em!important;margin-left:.035em!important;letter-spacing:0!important}.factory-backstage{z-index:0!important}.tg-button{z-index:99999!important;pointer-events:auto!important}
@media(max-width:700px){.localized-page .localized-doc{padding:2rem 1.4rem;margin:2rem auto 3rem}.site-search-box{flex-direction:column;align-items:stretch}.localized-blog-list strong{font-size:1.35rem}}

/* === V36 registered mark placement in generated navigation text === */
.top-menu__link .reg-mark,
.footer-nav__link .reg-mark,
.hero__title .reg-mark,
.tools-kicker .reg-mark,
.tool-page-hero .reg-mark,
.tool-card .reg-mark {
  font-size:.38em !important;
  top:-.34em !important;
  margin-left:.03em !important;
}
.brand-inline[dir="ltr"] {
  unicode-bidi:isolate !important;
  direction:ltr !important;
  white-space:nowrap !important;
}

/* === V15 mobile usability correction: menu, Telegram pill and Matrix disclaimer buttons === */
@media (max-width: 950px) {
  html, body { width:100%; max-width:100%; overflow-x:hidden !important; }
  .header { min-height:7.2rem !important; overflow:visible !important; }
  .header .container { padding-left:1.4rem !important; padding-right:1.4rem !important; }
  .header-logo { width:15.6rem !important; max-width:52vw !important; }
  .header__mob { position:relative !important; z-index:100006 !important; }
  #open-modal { width:4.8rem !important; height:4.8rem !important; }

  .header__modal { z-index:100000 !important; background:rgb(var(--color-primary-hover-rgb) / .46) !important; }
  .header__modal-white {
    z-index:100001 !important;
    width:100vw !important;
    height:100dvh !important;
    background:linear-gradient(180deg,#ffffff 0%,var(--color-background) 64%,var(--color-background) 100%) !important;
  }
  .header.active .header__modal-white { transform:translateX(0) !important; }

  .top-menu, .header.active .top-menu {
    z-index:100003 !important;
    top:8.8rem !important;
    left:50% !important;
    width:min(84vw, 32rem) !important;
    max-height:calc(100dvh - 24rem) !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch;
  }
  .header.active .top-menu { transform:translate(-50%,0) !important; }
  .top-menu__link, .header.active .top-menu__link {
    min-height:4.2rem !important;
    font-size:1.42rem !important;
    padding:.9rem 1.2rem !important;
  }

  /* Telegram button must not cover menu links. In menu-open state it becomes a normal CTA inside lower menu zone. */
  .tg-button {
    z-index:100004 !important;
    pointer-events:auto !important;
    top:7.6rem !important;
    right:1.2rem !important;
    left:auto !important;
    bottom:auto !important;
    transform:none !important;
    box-shadow:0 .7rem 1.8rem rgb(var(--color-primary-rgb) / .25) !important;
  }
  .header.active .tg-button {
    display:flex !important;
    position:fixed !important;
    top:auto !important;
    right:auto !important;
    left:50% !important;
    bottom:calc(7.4rem + env(safe-area-inset-bottom, 0px)) !important;
    width:min(84vw, 32rem) !important;
    min-width:0 !important;
    justify-content:center !important;
    transform:translateX(-50%) !important;
    z-index:100004 !important;
    padding:.9rem 1.4rem !important;
    font-size:1.35rem !important;
  }
  .google-translate, .header.active .google-translate {
    z-index:100003 !important;
    bottom:calc(2rem + env(safe-area-inset-bottom, 0px)) !important;
    width:min(84vw, 32rem) !important;
  }
  .page-title { font-size:2.8rem !important; padding:2.6rem 2.4rem !important; }
  .breadcrumb__container { padding-top:2.4rem !important; }
  main.tmpl-home { overflow:hidden; }
}

@media (max-width: 600px) {
  .header { padding:1rem 0 !important; }
  .header-logo { width:14.6rem !important; }
  .top-menu, .header.active .top-menu { top:8.1rem !important; max-height:calc(100dvh - 23rem) !important; }
  .tg-button { top:6.9rem !important; right:1rem !important; padding:.6rem .95rem !important; font-size:1.1rem !important; }
  .header.active .tg-button { bottom:calc(7.1rem + env(safe-area-inset-bottom, 0px)) !important; }
  .top-menu__link, .header.active .top-menu__link { min-height:4rem !important; }
}

/* Disclaimer modal: keep actions visible on every viewport */
#cookie-notice {
  position:fixed !important;
  inset:0 !important;
  z-index:9100 !important;
  width:100vw !important;
  height:100dvh !important;
  min-height:100vh !important;
  padding:max(1rem, env(safe-area-inset-top, 0px)) max(1rem, env(safe-area-inset-right, 0px)) max(1rem, env(safe-area-inset-bottom, 0px)) max(1rem, env(safe-area-inset-left, 0px)) !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}
#cookie-notice .disclaimer__wrap {
  width:min(94vw, 64rem) !important;
  max-height:calc(100dvh - 2rem) !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  padding:clamp(1.2rem, 2dvh, 2rem) !important;
  -webkit-overflow-scrolling:touch;
  border-radius:1.2rem !important;
}
#cookie-notice .logo {
  flex:0 0 auto !important;
  max-width:clamp(9rem, 15dvh, 16rem) !important;
  margin-bottom:clamp(.3rem, .8dvh, .8rem) !important;
}
#cookie-notice .logo img {
  width:100% !important;
  max-height:clamp(5rem, 15dvh, 11rem) !important;
  object-fit:contain !important;
}
#cookie-notice .modal-title {
  flex:0 0 auto !important;
  font-size:clamp(1.7rem, 3.1dvh, 2.4rem) !important;
  line-height:1.15 !important;
}
#cookie-notice .modal__h3-subtitle {
  flex:0 0 auto !important;
  font-size:clamp(1.05rem, 1.8dvh, 1.25rem) !important;
  line-height:1.35 !important;
  max-width:min(85%, 44rem) !important;
}
#cookie-notice .divider {
  flex:0 0 auto !important;
  margin:clamp(.6rem, 1.1dvh, 1.2rem) 0 !important;
}
#cookie-notice .modal-body-wrap {
  flex:1 1 auto !important;
  min-height:0 !important;
  display:flex !important;
  overflow:hidden !important;
  padding:clamp(.8rem, 1.5dvh, 1.6rem) .8rem !important;
  margin:0 0 clamp(.6rem, 1dvh, 1rem) !important;
}
#cookie-notice .modal-body-txt {
  flex:1 1 auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:auto !important;
  padding-right:.8rem !important;
  -webkit-overflow-scrolling:touch;
}
#cookie-notice .modal__p.-mod {
  flex:0 0 auto !important;
  font-size:clamp(1.15rem, 2dvh, 1.45rem) !important;
  line-height:1.18 !important;
}
#cookie-notice .modal-btn {
  display:grid !important;
  flex:0 0 auto !important;
  grid-template-columns:auto minmax(4.8rem, 1fr) auto !important;
  align-items:center !important;
  justify-items:center !important;
  column-gap:1rem !important;
  row-gap:.4rem !important;
  flex-wrap:nowrap !important;
  width:100% !important;
}
#cookie-notice #cookie-notice-accept { grid-column:1 !important; justify-self:start !important; }
#cookie-notice #cookie-notice-dismiss { grid-column:3 !important; justify-self:end !important; }
#cookie-notice .modal-choice-txt {
  grid-column:2 !important;
  min-height:0 !important;
  margin:0 !important;
  display:block !important;
  white-space:nowrap !important;
  font-size:1.05rem !important;
  line-height:1.1 !important;
}
#cookie-notice .btn-pill,
#cookie-notice .btn-pill:hover {
  transform:none !important;
  min-width:0 !important;
  width:clamp(9rem, 25vw, 12.2rem) !important;
  height:4.9rem !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
}
#cookie-notice .btn-pill span { font-size:1.35rem !important; }
#cookie-notice .modal__list { padding-left:1.8rem !important; }
@supports not (height: 100dvh) {
  #cookie-notice { height:100vh !important; }
  #cookie-notice .disclaimer__wrap { max-height:calc(100vh - 2rem) !important; }
}
@media (max-height: 620px) {
  #cookie-notice .disclaimer__wrap { padding:1rem !important; }
  #cookie-notice .logo { max-width:9rem !important; margin-bottom:.2rem !important; }
  #cookie-notice .logo img { max-height:5.2rem !important; }
  #cookie-notice .modal-title { font-size:1.65rem !important; }
  #cookie-notice .modal__h3-subtitle { font-size:1rem !important; line-height:1.25 !important; }
  #cookie-notice .divider { margin:.55rem 0 !important; }
  #cookie-notice .modal-body-wrap { padding:.7rem .6rem !important; margin-bottom:.55rem !important; }
  #cookie-notice .modal__p.-mod { font-size:1.05rem !important; line-height:1.15 !important; margin-bottom:.45rem !important; }
  #cookie-notice .btn-pill,
  #cookie-notice .btn-pill:hover { height:4.1rem !important; }
}
@media (max-width: 430px) {
  #cookie-notice .disclaimer__wrap { width:96vw !important; padding:1.2rem !important; }
  #cookie-notice .modal-btn { column-gap:.35rem !important; }
  #cookie-notice .btn-pill,
  #cookie-notice .btn-pill:hover { width:clamp(8.6rem, 29vw, 10.2rem) !important; height:4.4rem !important; }
  #cookie-notice .modal-choice-txt { font-size:.85rem !important; max-width:7.2rem !important; white-space:normal !important; }
  #cookie-notice .btn-pill span { font-size:1.2rem !important; }
  #cookie-notice .modal-title { font-size:1.8rem !important; }
  #cookie-notice .modal-logo,
  #cookie-notice .logo { max-width:13rem !important; }
}

/* Mobile content tightening */
@media (max-width: 700px) {
  .container { width:100% !important; max-width:100% !important; padding-left:1.6rem !important; padding-right:1.6rem !important; }
  .custom-h2, h1.custom-h2, .blog-index-title, .localized-doc h1 { font-size:2.45rem !important; line-height:1.2 !important; }
  p, .custom-p, .document-style p, .legal-document p, .article-body p { font-size:1.48rem !important; line-height:1.68 !important; }
  .document-style, .legal-document, .localized-doc, .team-welcome-expanded { padding:1.6rem !important; border-radius:1rem !important; }
  .new-product-grid, .product-grid, .team-grid { grid-template-columns:1fr !important; gap:1.6rem !important; }
  .product-family-frame { height:24rem !important; min-height:24rem !important; }
  .footer-nav__ul { row-gap:1rem !important; column-gap:1.2rem !important; }
}

/* === V16 contact response: return to original green success window, centered and readable === */
#alert.contact-response-modal {
  position: fixed !important;
  left: 50% !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  display: block !important;
  width: min(72rem, calc(100vw - 2rem)) !important;
  max-width: min(72rem, calc(100vw - 2rem)) !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: min(86vh, 82rem) !important;
  margin: 0 !important;
  padding: 4.8rem 3rem 2.8rem !important;
  overflow: auto !important;
  z-index: 100200 !important;
  text-align: center !important;
  color: #155724 !important;
  background: linear-gradient(145deg, #d6f7df 0%, #eafeef 55%, #d2f2dd 100%) !important;
  border: 1px solid rgba(21, 87, 36, .22) !important;
  border-radius: 2rem !important;
  box-shadow: 0 2rem 7rem rgba(0, 45, 20, .25), 0 0 0 9999px rgba(0, 28, 18, .38) !important;
}
#alert.contact-response-modal::before { content:none !important; }
#alert.contact-response-modal svg {
  width: 6.8rem !important;
  height: 6.8rem !important;
  display: block !important;
  margin: 0 auto 1.2rem !important;
}
#alert.contact-response-modal .contact-response-close {
  position: absolute !important;
  top: 1.2rem !important;
  right: 1.2rem !important;
  width: 4rem !important;
  height: 4rem !important;
  border-radius: 50% !important;
  border: 1px solid rgba(21,87,36,.18) !important;
  background: rgba(255,255,255,.9) !important;
  color: #155724 !important;
  font-size: 2.5rem !important;
  line-height: 3.4rem !important;
  box-shadow: 0 .6rem 1.6rem rgba(21,87,36,.14) !important;
}
#alert.contact-response-modal .contact-response-timer {
  position: absolute !important;
  top: 1.35rem !important;
  left: 1.4rem !important;
  color: #155724 !important;
  background: rgba(255,255,255,.78) !important;
  border: 1px solid rgba(21,87,36,.18) !important;
  border-radius: 999px !important;
  padding: .55rem 1.05rem !important;
  font-size: 1.15rem !important;
  font-weight: 800 !important;
}
#alert.contact-response-modal .feedback-msg-title {
  margin: .4rem auto .8rem !important;
  color: #155724 !important;
  font-size: clamp(2.3rem, 4vw, 3.6rem) !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
  text-shadow: 0 0 1.2rem rgba(86, 190, 108, .24) !important;
}
#alert.contact-response-modal .feedback-msg-subtitle,
#alert.contact-response-modal .feedback-msg-p,
#alert.contact-response-modal .feedback-msg-p-last,
#alert.contact-response-modal .feedback-msg-item {
  color: #155724 !important;
  font-family: inherit !important;
}
#alert.contact-response-modal .feedback-msg-subtitle {
  font-size: 1.72rem !important;
  line-height: 1.45 !important;
  max-width: 50rem !important;
  margin: 0 auto 1.4rem !important;
}
#alert.contact-response-modal .nb {
  max-width: 56rem !important;
  margin: 1.6rem auto 1.7rem !important;
  padding: 1.55rem 1.75rem !important;
  text-align: start !important;
  background: rgba(255,255,255,.48) !important;
  border: 1px solid rgba(21,87,36,.14) !important;
  border-radius: 1.4rem !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.35) !important;
}
#alert.contact-response-modal .feedback-msg-p {
  margin: 0 0 .9rem !important;
  font-size: 1.42rem !important;
  line-height: 1.48 !important;
  font-weight: 700 !important;
}
#alert.contact-response-modal .feedback-msg-list {
  margin: .4rem 0 0 !important;
  padding-left: 2rem !important;
}
#alert.contact-response-modal .feedback-msg-item {
  margin: .55rem 0 !important;
  padding: .35rem .55rem !important;
  font-size: 1.32rem !important;
  line-height: 1.45 !important;
  border-radius: .75rem !important;
}
#alert.contact-response-modal .feedback-msg-p-last {
  font-size: 1.45rem !important;
  line-height: 1.48 !important;
  margin: 1.2rem auto 0 !important;
  max-width: 52rem !important;
}
#alert.contact-response-modal .is-glowing {
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 0 0 .22rem rgba(46, 174, 78, .16), 0 0 2.4rem rgba(46, 174, 78, .30) !important;
  text-shadow: 0 0 1.2rem rgba(46,174,78,.35) !important;
  transform: none !important;
}
@media (max-width: 700px) {
  #alert.contact-response-modal {
    width: calc(100vw - 2rem) !important;
    max-height: calc(100dvh - 2rem) !important;
    padding: 4.6rem 1.5rem 2rem !important;
    border-radius: 1.5rem !important;
  }
  #alert.contact-response-modal .feedback-msg-title { font-size: 2.3rem !important; }
  #alert.contact-response-modal .feedback-msg-subtitle { font-size: 1.45rem !important; }
  #alert.contact-response-modal .nb { padding: 1.25rem 1.25rem !important; }
}

/* === V17 static language selector: local translated pages === */
.header { overflow:visible !important; }
.header-nav { position:relative !important; align-items:flex-start !important; }
.site-language-flags {
  width:20rem;
  max-width:20rem;
  display:grid;
  grid-template-columns:repeat(7, 1fr);
  gap:.32rem;
  align-items:center;
  justify-items:center;
  margin-top:.7rem;
  margin-left:0;
  z-index:9000;
  order:2;
}
.header-logo { order:1; }
.top-menu { order:3; }
.site-language-flags .flag-lang {
  width:2.55rem;
  height:2.25rem;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgb(var(--color-primary-rgb) / .18);
  border-radius:.7rem;
  background:rgba(255,255,255,.88);
  text-decoration:none;
  box-shadow:0 .35rem 1rem rgb(var(--color-primary-rgb) / .06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.site-language-flags .flag-lang:hover,
.site-language-flags .flag-lang:focus,
.site-language-flags .flag-lang.is-active {
  transform:translateY(-1px);
  border-color:var(--color-primary);
  box-shadow:0 .55rem 1.35rem rgb(var(--color-primary-rgb) / .20), 0 0 1.2rem rgb(var(--color-primary-rgb) / .16);
  outline:none;
}
.site-language-flags .flag-icon { font-size:1.2rem; line-height:1; }
@media (min-width:951px){
  .header .container { max-width:1300px; }
  .header-nav { display:grid !important; grid-template-columns:20rem 1fr 14rem; grid-template-rows:auto auto; gap:.4rem 2rem; align-items:start !important; }
  .header-logo { grid-column:1; grid-row:1; }
  .site-language-flags { grid-column:1; grid-row:2; }
  .top-menu { grid-column:2; grid-row:1 / span 2; align-self:center; justify-self:center; }
  .tg-button { grid-column:3; grid-row:1; justify-self:end; }
}
@media (max-width:950px){
  .header { min-height:10.5rem !important; padding-bottom:1.1rem !important; }
  .header-nav { display:grid !important; grid-template-columns:minmax(13rem, 1fr) auto; grid-template-rows:auto auto; gap:.2rem 1rem !important; align-items:start !important; }
  .header-logo { grid-column:1; grid-row:1; width:15.6rem !important; }
  .site-language-flags { grid-column:1; grid-row:2; width:15.6rem; max-width:52vw; grid-template-columns:repeat(7, 1fr); gap:.24rem; margin-top:.25rem; }
  .site-language-flags .flag-lang { width:2.05rem; height:1.95rem; border-radius:.55rem; }
  .site-language-flags .flag-icon { font-size:1.2rem; }
  .header__mob { grid-column:2; grid-row:1; align-self:center; }
  .top-menu, .header.active .top-menu { top:10.8rem !important; }
  .tg-button { top:6.6rem !important; right:1.1rem !important; }
  .header.active .tg-button { bottom:calc(7.1rem + env(safe-area-inset-bottom,0px)) !important; top:auto !important; }
}
@media (max-width:420px){
  .header-logo { width:14.4rem !important; }
  .site-language-flags { width:14.4rem; max-width:58vw; }
  .site-language-flags .flag-lang { width:2.55rem; height:2.1rem; }
  .site-language-flags .flag-icon { font-size:1.22rem; }
}

/* === V18 desktop navigation fit correction === */
@media (min-width:951px){
  .header-nav {
    grid-template-columns:20rem minmax(0, 1fr) 14rem !important;
  }
  .top-menu {
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    justify-content:center !important;
    width:max-content !important;
    max-width:none !important;
    min-width:0 !important;
    height:4.2rem !important;
    padding:0 1.45rem !important;
  }
  .top-menu__item {
    flex:0 0 auto !important;
    min-width:0 !important;
    display:flex !important;
    align-items:stretch !important;
    margin:0 !important;
    font-size:1.4rem !important;
  }
  .top-menu__link {
    white-space:nowrap !important;
    min-width:max-content !important;
    text-align:center !important;
    justify-content:center !important;
    line-height:1 !important;
    padding:0 1.25rem !important;
  }
}
@media (min-width:1200px){
  .top-menu {
    height:4.4rem !important;
    padding:0 1.6rem !important;
  }
  .top-menu__item {
    font-size:1.4rem !important;
  }
  .top-menu__link {
    padding:0 1.35rem !important;
  }
}
@media (min-width:951px) and (max-width:1100px){
  .header .container {
    max-width:100% !important;
    padding-left:1.4rem !important;
    padding-right:1.4rem !important;
  }
  .header-nav {
    grid-template-columns:18rem minmax(0, 1fr) 12rem !important;
    gap:.4rem 1.2rem !important;
  }
  .header-logo,
  .header-logo__img {
    width:18rem !important;
  }
  .site-language-flags {
    width:18rem !important;
    max-width:18rem !important;
    gap:.22rem !important;
  }
  .site-language-flags .flag-lang {
    width:2.28rem !important;
    height:2.05rem !important;
  }
  .tg-button {
    min-width:12rem !important;
    padding:.8rem 1.1rem !important;
    font-size:1.2rem !important;
  }
  .top-menu {
    height:4rem !important;
    padding:0 1rem !important;
  }
  .top-menu__item {
    font-size:1.3rem !important;
  }
  .top-menu__link {
    padding:0 .8rem !important;
  }
}

/* === V20 persistent floating Telegram control === */
.header {
  z-index:100008 !important;
  overflow:visible !important;
}
.tg-button,
.header.active .tg-button {
  position:fixed !important;
  top:auto !important;
  right:2rem !important;
  bottom:7.2rem !important;
  left:auto !important;
  z-index:100010 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:13.6rem !important;
  min-height:4.4rem !important;
  padding:.8rem 1.55rem !important;
  font-size:1.35rem !important;
  line-height:1 !important;
  transform:none !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  touch-action:manipulation !important;
}
.go-up {
  right:2rem !important;
  left:auto !important;
  bottom:-6rem !important;
  position:fixed !important;
  display:flex !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  z-index:100009 !important;
}
.go-up.active {
  bottom:2rem !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
body.active .go-up {
  bottom:-6rem !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
@media (max-width:700px){
  .tg-button,
  .header.active .tg-button {
    right:1.4rem !important;
    bottom:6.9rem !important;
    min-width:11.8rem !important;
    min-height:4.1rem !important;
    padding:.7rem 1.15rem !important;
    font-size:1.18rem !important;
  }
  .go-up {
    right:1.4rem !important;
  }
  .go-up.active {
    bottom:1.6rem !important;
  }
}

/* === V22 lightweight designer parallax signature === */
.z-parallax-finale {
  --z-progress:0;
  position:relative !important;
  z-index:1 !important;
  min-height:38rem !important;
  margin:2.4rem 0 0 !important;
  padding:5.2rem 1.6rem 5.8rem !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-direction:column !important;
  overflow:hidden !important;
  isolation:isolate !important;
  contain:layout paint !important;
  background:
    repeating-linear-gradient(148deg, transparent 0 6.8rem, rgb(var(--color-primary-rgb) / .055) 6.86rem 6.96rem, transparent 7.04rem 13.6rem),
    linear-gradient(180deg, #ffffff 0%, var(--color-background) 46%, #ffffff 100%) !important;
  border-top:1px solid rgb(var(--color-primary-rgb) / .08) !important;
  border-bottom:1px solid rgb(var(--color-primary-rgb) / .08) !important;
  pointer-events:none !important;
}
.z-parallax-finale::before,
.z-parallax-finale::after {
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:50%;
  height:1px;
  pointer-events:none;
  background:linear-gradient(90deg, transparent, rgb(var(--color-primary-rgb) / .32), transparent);
  opacity:calc(.12 + var(--z-progress) * .42);
  transform:translate3d(calc((1 - var(--z-progress)) * -5rem), -50%, 0);
  z-index:0;
}
.z-parallax-finale::after {
  top:auto;
  bottom:24%;
  left:18%;
  right:18%;
  opacity:calc(.06 + var(--z-progress) * .22);
  transform:translate3d(calc((1 - var(--z-progress)) * 5rem), 0, 0);
}
.z-parallax-word {
  position:relative !important;
  z-index:2 !important;
  display:inline-flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:0 !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:12rem !important;
  font-weight:900 !important;
  letter-spacing:0 !important;
  line-height:.82 !important;
  color:var(--color-primary) !important;
  background:linear-gradient(180deg, var(--color-accent) 0%, var(--color-primary) 48%, var(--color-primary) 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  opacity:calc(.28 + var(--z-progress) * .72) !important;
  filter:drop-shadow(0 .55rem calc(.9rem + var(--z-progress) * 1.7rem) rgb(var(--color-primary-rgb) / .24)) !important;
}
.z-letter {
  display:inline-block !important;
  opacity:calc(.2 + var(--z-progress) * .8) !important;
  transform-origin:center bottom !important;
  will-change:transform, opacity !important;
}
.z-l1 { transform:translate3d(calc((1 - var(--z-progress)) * -8rem), calc((1 - var(--z-progress)) * -2.4rem), 0) rotate(calc((1 - var(--z-progress)) * -5deg)) !important; }
.z-l2 { transform:translate3d(calc((1 - var(--z-progress)) * -3rem), calc((1 - var(--z-progress)) * 2.8rem), 0) rotate(calc((1 - var(--z-progress)) * 4deg)) !important; }
.z-l3 { transform:translate3d(calc((1 - var(--z-progress)) * 3rem), calc((1 - var(--z-progress)) * -2.8rem), 0) rotate(calc((1 - var(--z-progress)) * -4deg)) !important; }
.z-l4 { transform:translate3d(calc((1 - var(--z-progress)) * 8rem), calc((1 - var(--z-progress)) * 2.4rem), 0) rotate(calc((1 - var(--z-progress)) * 5deg)) !important; }
.z-reg {
  position:relative !important;
  font-size:.17em !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  margin-left:.08em !important;
  top:-.32em !important;
  color:var(--color-primary) !important;
  -webkit-text-fill-color:var(--color-primary) !important;
  opacity:calc(.16 + var(--z-progress) * .84) !important;
  transform:translate3d(calc((1 - var(--z-progress)) * 2.6rem), calc((1 - var(--z-progress)) * -1.8rem), 0) !important;
}
.z-parallax-slogan {
  position:relative !important;
  z-index:2 !important;
  max-width:70rem !important;
  margin:1.6rem auto 0 !important;
  padding-top:1.1rem !important;
  color:var(--color-primary) !important;
  font-size:1.9rem !important;
  line-height:1.45 !important;
  font-style:italic !important;
  text-align:center !important;
  opacity:calc(var(--z-progress) * .98) !important;
  transform:translate3d(0, calc((1 - var(--z-progress)) * 1.5rem), 0) !important;
  text-shadow:0 .4rem 1.6rem rgb(var(--color-primary-rgb) / .16) !important;
}
.z-sport-orbit {
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  opacity:calc(.07 + var(--z-progress) * .24) !important;
}
.z-sport-orbit span {
  position:absolute !important;
  display:block !important;
  color:rgb(var(--color-primary-rgb) / .42) !important;
  border-color:rgb(var(--color-primary-rgb) / .36) !important;
  background:transparent !important;
}
.z-left .z-dumbbell,
.z-right .z-barbell {
  width:12rem !important;
  height:0 !important;
  border-top:.35rem solid rgb(var(--color-primary-rgb) / .44) !important;
  border-radius:0 !important;
  box-shadow:0 0 1.4rem rgb(var(--color-primary-rgb) / .16) !important;
}
.z-left .z-dumbbell {
  left:8% !important;
  top:39% !important;
  transform:translate3d(0, calc((1 - var(--z-progress)) * 4rem), 0) rotate(-13deg) !important;
}
.z-right .z-barbell {
  right:8% !important;
  top:34% !important;
  transform:translate3d(0, calc((1 - var(--z-progress)) * -4rem), 0) rotate(13deg) !important;
}
.z-dumbbell::before,
.z-dumbbell::after,
.z-barbell::before,
.z-barbell::after {
  content:"" !important;
  position:absolute !important;
  top:-1.35rem !important;
  width:1.3rem !important;
  height:2.35rem !important;
  border-radius:.25rem !important;
  background:rgb(var(--color-primary-rgb) / .42) !important;
}
.z-dumbbell::before,
.z-barbell::before { left:-.65rem !important; }
.z-dumbbell::after,
.z-barbell::after { right:-.65rem !important; }
.z-plate {
  width:5.7rem !important;
  height:5.7rem !important;
  border:.42rem solid rgb(var(--color-primary-rgb) / .32) !important;
  border-radius:50% !important;
  opacity:1 !important;
}
.z-left .z-plate {
  left:20% !important;
  top:18% !important;
  transform:translate3d(calc((1 - var(--z-progress)) * -4.5rem), 0, 0) !important;
}
.z-right .z-plate {
  right:20% !important;
  top:64% !important;
  transform:translate3d(calc((1 - var(--z-progress)) * 4.5rem), 0, 0) !important;
}
.z-kettlebell {
  left:12% !important;
  bottom:19% !important;
  width:4.6rem !important;
  height:4.3rem !important;
  border:.42rem solid rgb(var(--color-primary-rgb) / .34) !important;
  border-radius:45% 45% 50% 50% !important;
  opacity:1 !important;
  transform:translate3d(0, calc((1 - var(--z-progress)) * 3.4rem), 0) !important;
}
.z-kettlebell::before {
  content:"" !important;
  position:absolute !important;
  left:.85rem !important;
  right:.85rem !important;
  top:-1.55rem !important;
  height:1.5rem !important;
  border:.38rem solid rgb(var(--color-primary-rgb) / .34) !important;
  border-bottom:0 !important;
  border-radius:1.5rem 1.5rem 0 0 !important;
}
.z-parallax-finale.is-complete .z-parallax-word {
  filter:drop-shadow(0 .75rem 2.1rem rgb(var(--color-primary-rgb) / .28)) drop-shadow(0 0 3.6rem rgb(var(--color-primary-rgb) / .22)) !important;
}
@media (min-width:1300px){
  .z-parallax-word { font-size:14rem !important; }
  .z-parallax-finale { min-height:42rem !important; }
}
@media (max-width:1100px){
  .z-parallax-word { font-size:10rem !important; }
  .z-parallax-finale { min-height:34rem !important; }
}
@media (max-width:700px){
  .z-parallax-finale {
    min-height:24rem !important;
    padding:3.8rem 1rem 4.2rem !important;
    margin-top:1.4rem !important;
  }
  .z-parallax-word {
    font-size:6.4rem !important;
  }
  .z-parallax-slogan {
    font-size:1.25rem !important;
    max-width:31rem !important;
    padding-top:.75rem !important;
  }
  .z-sport-orbit {
    display:none !important;
  }
  .z-l1 { transform:translate3d(calc((1 - var(--z-progress)) * -3.4rem), calc((1 - var(--z-progress)) * -1rem), 0) rotate(calc((1 - var(--z-progress)) * -4deg)) !important; }
  .z-l2 { transform:translate3d(calc((1 - var(--z-progress)) * -1.4rem), calc((1 - var(--z-progress)) * 1.2rem), 0) rotate(calc((1 - var(--z-progress)) * 3deg)) !important; }
  .z-l3 { transform:translate3d(calc((1 - var(--z-progress)) * 1.4rem), calc((1 - var(--z-progress)) * -1.2rem), 0) rotate(calc((1 - var(--z-progress)) * -3deg)) !important; }
  .z-l4 { transform:translate3d(calc((1 - var(--z-progress)) * 3.4rem), calc((1 - var(--z-progress)) * 1rem), 0) rotate(calc((1 - var(--z-progress)) * 4deg)) !important; }
}
@media (prefers-reduced-motion: reduce){
  .z-letter,
  .z-reg,
  .z-parallax-slogan {
    transform:none !important;
  }
}

@supports (animation-timeline: view()){
  .z-parallax-word,
  .z-letter,
  .z-reg,
  .z-parallax-slogan,
  .z-sport-orbit,
  .z-left .z-dumbbell,
  .z-right .z-barbell,
  .z-left .z-plate,
  .z-right .z-plate,
  .z-kettlebell {
    animation-duration:1s;
    animation-timing-function:linear;
    animation-fill-mode:both;
    animation-timeline:view(block);
    animation-range:entry 0% exit 100%;
  }
  .z-parallax-word { animation-name:zphcWordView; }
  .z-l1 { animation-name:zphcLetterOne; }
  .z-l2 { animation-name:zphcLetterTwo; }
  .z-l3 { animation-name:zphcLetterThree; }
  .z-l4 { animation-name:zphcLetterFour; }
  .z-reg { animation-name:zphcRegView; }
  .z-parallax-slogan { animation-name:zphcSloganView; }
  .z-sport-orbit { animation-name:zphcOrbitView; }
  .z-left .z-dumbbell { animation-name:zphcDumbbellLeft; }
  .z-right .z-barbell { animation-name:zphcBarbellRight; }
  .z-left .z-plate { animation-name:zphcPlateLeft; }
  .z-right .z-plate { animation-name:zphcPlateRight; }
  .z-kettlebell { animation-name:zphcKettlebellView; }
  @keyframes zphcWordView {
    from { opacity:.28; filter:drop-shadow(0 .55rem .9rem rgb(var(--color-primary-rgb) / .24)); }
    to { opacity:1; filter:drop-shadow(0 .75rem 2.1rem rgb(var(--color-primary-rgb) / .28)) drop-shadow(0 0 3.6rem rgb(var(--color-primary-rgb) / .22)); }
  }
  @keyframes zphcLetterOne { from { opacity:.2; transform:translate3d(-8rem,-2.4rem,0) rotate(-5deg); } to { opacity:1; transform:translate3d(0,0,0) rotate(0); } }
  @keyframes zphcLetterTwo { from { opacity:.2; transform:translate3d(-3rem,2.8rem,0) rotate(4deg); } to { opacity:1; transform:translate3d(0,0,0) rotate(0); } }
  @keyframes zphcLetterThree { from { opacity:.2; transform:translate3d(3rem,-2.8rem,0) rotate(-4deg); } to { opacity:1; transform:translate3d(0,0,0) rotate(0); } }
  @keyframes zphcLetterFour { from { opacity:.2; transform:translate3d(8rem,2.4rem,0) rotate(5deg); } to { opacity:1; transform:translate3d(0,0,0) rotate(0); } }
  @keyframes zphcRegView { from { opacity:.16; transform:translate3d(2.6rem,-1.8rem,0); } to { opacity:1; transform:translate3d(0,0,0); } }
  @keyframes zphcSloganView { from { opacity:0; transform:translate3d(0,1.5rem,0); } to { opacity:.98; transform:translate3d(0,0,0); } }
  @keyframes zphcOrbitView { from { opacity:.07; } to { opacity:.31; } }
  @keyframes zphcDumbbellLeft { from { transform:translate3d(0,4rem,0) rotate(-13deg); } to { transform:translate3d(0,0,0) rotate(-13deg); } }
  @keyframes zphcBarbellRight { from { transform:translate3d(0,-4rem,0) rotate(13deg); } to { transform:translate3d(0,0,0) rotate(13deg); } }
  @keyframes zphcPlateLeft { from { transform:translate3d(-4.5rem,0,0); } to { transform:translate3d(0,0,0); } }
  @keyframes zphcPlateRight { from { transform:translate3d(4.5rem,0,0); } to { transform:translate3d(0,0,0); } }
  @keyframes zphcKettlebellView { from { transform:translate3d(0,3.4rem,0); } to { transform:translate3d(0,0,0); } }
}

/* === V29 seamless parallax blend === */
.z-parallax-finale {
  border:0 !important;
  background:
    repeating-linear-gradient(148deg, transparent 0 6.8rem, rgb(var(--color-primary-rgb) / .045) 6.86rem 6.96rem, transparent 7.04rem 13.6rem),
    linear-gradient(180deg, rgba(255,255,255,0) 0%, rgb(var(--color-background-rgb) / .52) 22%, var(--color-background) 50%, rgb(var(--color-background-rgb) / .52) 78%, rgba(255,255,255,0) 100%) !important;
  box-shadow:inset 0 7rem 7rem -7rem #fff, inset 0 -7rem 7rem -7rem #fff !important;
}

/* === V30 floating controls contrast on footer === */
@keyframes zphc-floating-footer-pulse {
  0%, 100% {
    box-shadow:
      0 0 0 .28rem rgba(255,255,255,.72),
      0 0 1.7rem rgba(255,255,255,.9),
      0 1.2rem 2.8rem rgb(var(--color-primary-hover-rgb) / .34);
  }
  50% {
    box-shadow:
      0 0 0 .42rem rgba(255,255,255,.92),
      0 0 2.6rem rgba(255,255,255,1),
      0 1.6rem 3.4rem rgb(var(--color-primary-hover-rgb) / .42);
  }
}

.tg-button.tg-button--on-blue,
.header.active .tg-button.tg-button--on-blue,
html.floating-controls-on-footer .tg-button.tg-button--on-blue,
html.floating-controls-on-footer .header.active .tg-button.tg-button--on-blue {
  background:
    linear-gradient(180deg, #ffffff 0%, var(--color-background) 48%, #ffffff 100%) !important;
  border:1px solid rgba(255,255,255,.95) !important;
  color:var(--color-primary) !important;
  text-shadow:none !important;
  animation:zphc-floating-footer-pulse 1.85s ease-in-out infinite !important;
}

.tg-button.tg-button--on-blue .tg-button__icon,
html.floating-controls-on-footer .tg-button.tg-button--on-blue .tg-button__icon {
  filter:brightness(0) saturate(100%) invert(31%) sepia(98%) saturate(1517%) hue-rotate(181deg) brightness(89%) contrast(104%) !important;
}

.go-up.go-up--on-blue,
html.floating-controls-on-footer .go-up.go-up--on-blue {
  background:
    linear-gradient(180deg, #ffffff 0%, var(--color-background) 48%, #ffffff 100%) !important;
  border:1px solid rgba(255,255,255,.95) !important;
  animation:zphc-floating-footer-pulse 1.85s ease-in-out infinite !important;
}

.go-up.go-up--on-blue .arrow-up,
html.floating-controls-on-footer .go-up.go-up--on-blue .arrow-up {
  border-color:var(--color-primary) !important;
}

@media (prefers-reduced-motion: reduce) {
  .tg-button.tg-button--on-blue,
  .header.active .tg-button.tg-button--on-blue,
  html.floating-controls-on-footer .tg-button.tg-button--on-blue,
  html.floating-controls-on-footer .header.active .tg-button.tg-button--on-blue,
  .go-up.go-up--on-blue,
  html.floating-controls-on-footer .go-up.go-up--on-blue {
    animation:none !important;
    box-shadow:
      0 0 0 .34rem rgba(255,255,255,.82),
      0 0 2.2rem rgba(255,255,255,.95),
      0 1.2rem 2.8rem rgb(var(--color-primary-hover-rgb) / .36) !important;
  }
}

/* === V31 header language/menu separation === */
@media (min-width:951px) {
  .header-nav {
    grid-template-columns:minmax(18rem, 20rem) minmax(0, 1fr) 17rem !important;
    column-gap:1.2rem !important;
    width:100% !important;
    justify-content:stretch !important;
    padding-right:0 !important;
  }
  .header-logo,
  .site-language-flags {
    grid-column:1 !important;
  }
  .top-menu {
    grid-column:2 !important;
    justify-self:start !important;
    max-width:100% !important;
  }
  .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:start !important;
    justify-self:end !important;
  }
}

@media (min-width:951px) and (max-width:1100px) {
  .header-nav {
    grid-template-columns:18rem minmax(0, 1fr) 15rem !important;
    column-gap:.8rem !important;
    width:100% !important;
    justify-content:stretch !important;
    padding-right:0 !important;
  }
  .top-menu {
    grid-column:2 !important;
    justify-self:start !important;
  }
  .top-menu__item {
    font-size:1.18rem !important;
  }
  .top-menu__link {
    padding:0 .55rem !important;
  }
  .world-clocks {
    width:15rem !important;
  }
}

/* === V32 world clocks === */
.world-clocks {
  width:17rem;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:.28rem;
  padding:.38rem;
  border:1px solid rgb(var(--color-primary-rgb) / .22);
  border-radius:1.15rem;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgb(var(--color-background-rgb) / .92) 100%);
  box-shadow:0 .7rem 1.8rem rgb(var(--color-primary-rgb) / .09), inset 0 1px 0 rgba(255,255,255,.95);
  z-index:25;
}
.world-clock {
  min-width:0;
  min-height:2.18rem;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid rgb(var(--color-primary-rgb) / .15);
  border-radius:.72rem;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgb(var(--color-background-rgb) / .88) 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
  overflow:hidden;
}
.world-clock__label {
  color:var(--color-primary);
  font-size:.66rem;
  line-height:1;
  font-weight:800;
}
.world-clock__time {
  color:var(--color-primary);
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size:.98rem;
  line-height:1.05;
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.visitor-metric {
  position:absolute;
  left:50%;
  top:.52rem;
  z-index:55;
  max-width:min(68rem, calc(100vw - 2rem));
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.34rem;
  padding:.34rem;
  border:1px solid rgb(var(--color-primary-rgb) / .2);
  border-radius:1.1rem;
  background:linear-gradient(180deg, rgba(255,255,255,.97) 0%, rgb(var(--color-background-rgb) / .94) 100%);
  box-shadow:0 .72rem 1.8rem rgb(var(--color-primary-rgb) / .1), inset 0 1px 0 rgba(255,255,255,.95);
  pointer-events:none;
  opacity:0;
  transform:translate3d(-50%, -.45rem, 0) scale(.98);
  transition:opacity .32s ease, transform .32s ease;
}
.visitor-metric.is-visible {
  opacity:1;
  transform:translate3d(-50%, 0, 0) scale(1);
}
.visitor-metric.is-hiding {
  opacity:0;
  transform:translate3d(-50%, -.38rem, 0) scale(.98);
}
.visitor-metric__chip {
  min-height:2.08rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.22rem .7rem;
  border:1px solid rgb(var(--color-primary-rgb) / .14);
  border-radius:.76rem;
  background:linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgb(var(--color-background-rgb) / .9) 100%);
  color:var(--color-primary);
  font-size:1.1rem;
  line-height:1.12;
  font-weight:800;
  white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.visitor-metric__chip--lead {
  color:var(--color-primary);
  text-transform:uppercase;
  letter-spacing:.035em;
}
.visitor-metric__chip--time {
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-variant-numeric:tabular-nums;
}

@media (max-width:950px) {
  .header-nav {
    display:grid !important;
    grid-template-columns:minmax(13rem, 1fr) auto !important;
    grid-template-rows:auto auto auto !important;
    align-items:start !important;
  }
  .world-clocks {
    grid-column:1 / -1 !important;
    grid-row:3 !important;
    width:min(100%, 34rem) !important;
    justify-self:start !important;
    margin-top:.45rem !important;
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
  .world-clock {
    min-height:2.05rem;
  }
}

@media (max-width:420px) {
  .world-clocks {
    width:100% !important;
    gap:.22rem;
    padding:.3rem;
  }
  .world-clock__label {
    font-size:.62rem;
  }
  .world-clock__time {
    font-size:.92rem;
  }
  .visitor-metric {
    top:.42rem;
    max-width:calc(100vw - 1rem);
    flex-wrap:wrap;
    gap:.24rem;
    padding:.28rem;
  }
  .visitor-metric__chip {
    min-height:1.9rem;
    padding:.18rem .46rem;
    font-size:1.1rem;
  }
}

/* === V33 balanced header: logo/languages | menu | clocks === */
@media (min-width:951px) {
  .header-nav {
    grid-template-columns:20rem minmax(0, 1fr) 20rem !important;
    grid-template-rows:auto auto !important;
    column-gap:1.6rem !important;
    width:100% !important;
    align-items:start !important;
    justify-content:stretch !important;
    padding-right:0 !important;
  }
  .header-logo,
  .header-logo__img {
    width:20rem !important;
  }
  .site-language-flags {
    width:20rem !important;
    max-width:20rem !important;
  }
  .top-menu {
    grid-column:2 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    max-width:100% !important;
  }
  .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:start !important;
    justify-self:end !important;
    width:20rem !important;
    gap:.34rem !important;
    padding:.5rem !important;
    border-radius:1.25rem !important;
  }
  .world-clock {
    min-height:3.24rem !important;
    border-radius:.82rem !important;
  }
  .world-clock__label {
    font-size:.72rem !important;
  }
  .world-clock__time {
    font-size:1.08rem !important;
  }
}

@media (min-width:951px) and (max-width:1180px) {
  .header-nav {
    grid-template-columns:18rem minmax(0, 1fr) 18rem !important;
    column-gap:.8rem !important;
  }
  .header-logo,
  .header-logo__img,
  .site-language-flags {
    width:18rem !important;
    max-width:18rem !important;
  }
  .world-clocks {
    width:18rem !important;
    gap:.28rem !important;
    padding:.44rem !important;
  }
  .world-clock {
    min-height:3.12rem !important;
  }
  .top-menu {
    padding:0 .65rem !important;
  }
  .top-menu__item {
    font-size:1.12rem !important;
  }
  .top-menu__link {
    padding:0 .42rem !important;
  }
}

/* === V34 tools navigation and welcome preview === */
@media (min-width:1181px) {
  .top-menu {
    padding:0 .72rem !important;
  }
  .top-menu__item {
    font-size:1.12rem !important;
  }
  .top-menu__link {
    padding:0 .48rem !important;
    white-space:nowrap !important;
  }
}

@media (min-width:951px) and (max-width:1180px) {
  .top-menu {
    padding:0 .44rem !important;
  }
  .top-menu__item {
    font-size:.94rem !important;
  }
  .top-menu__link {
    padding:0 .24rem !important;
    white-space:nowrap !important;
  }
}

.tool-link-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:2.8rem;
  padding:.68rem 1.08rem;
  border-radius:999px;
  background:linear-gradient(180deg, var(--color-secondary) 0%, var(--color-primary) 100%);
  color:#fff !important;
  font-weight:800;
  text-decoration:none !important;
  box-shadow:0 .7rem 1.7rem rgb(var(--color-primary-rgb) / .2), inset 0 1px 0 rgba(255,255,255,.32);
}

/* === V35 restored borderless ZPHC assembly finale === */
.z-parallax-finale {
  --z-progress:0;
  min-height:clamp(30rem, 40vw, 48rem) !important;
  margin:2.2rem 0 0 !important;
  padding:clamp(4.2rem, 7vw, 7.2rem) 1.6rem clamp(4.8rem, 7vw, 7.8rem) !important;
  border:0 !important;
  box-shadow:none !important;
  background:
    radial-gradient(ellipse at 50% 54%, rgb(var(--color-primary-rgb) / .13) 0%, rgb(var(--color-background-rgb) / .34) 34%, rgba(255,255,255,0) 73%),
    repeating-linear-gradient(148deg, transparent 0 6.8rem, rgb(var(--color-primary-rgb) / .038) 6.86rem 6.96rem, transparent 7.04rem 13.6rem),
    linear-gradient(180deg, rgba(255,255,255,0) 0%, rgb(var(--color-background-rgb) / .68) 26%, rgb(var(--color-background-rgb) / .78) 52%, rgba(251,253,255,.5) 76%, rgba(255,255,255,0) 100%) !important;
}
.z-parallax-finale::before,
.z-parallax-finale::after {
  border:0 !important;
  animation:none !important;
}
.z-parallax-word,
.z-letter,
.z-reg,
.z-parallax-slogan,
.z-sport-orbit,
.z-left .z-dumbbell,
.z-right .z-barbell,
.z-left .z-plate,
.z-right .z-plate,
.z-kettlebell {
  animation:none !important;
}
.z-parallax-word {
  font-size:clamp(7.4rem, 10.8vw, 15.2rem) !important;
  opacity:calc(.82 + var(--z-progress, 0) * .18) !important;
  transform:translate3d(0, calc((1 - var(--z-progress, 0)) * 1.2rem), 0) scale(calc(.985 + var(--z-progress, 0) * .015)) !important;
  filter:
    drop-shadow(0 .75rem 1.7rem rgb(var(--color-primary-rgb) / .24))
    drop-shadow(0 0 calc(1.2rem + var(--z-progress, 0) * 2.8rem) rgb(var(--color-primary-rgb) / .18)) !important;
}
.z-letter {
  opacity:calc(.34 + var(--z-progress, 0) * .66) !important;
}
.z-l1 { transform:translate3d(calc((1 - var(--z-progress, 0)) * -9rem), calc((1 - var(--z-progress, 0)) * -1.6rem), 0) rotate(calc((1 - var(--z-progress, 0)) * -5deg)) !important; }
.z-l2 { transform:translate3d(calc((1 - var(--z-progress, 0)) * -4.2rem), calc((1 - var(--z-progress, 0)) * 2rem), 0) rotate(calc((1 - var(--z-progress, 0)) * 4deg)) !important; }
.z-l3 { transform:translate3d(calc((1 - var(--z-progress, 0)) * 4.2rem), calc((1 - var(--z-progress, 0)) * -2rem), 0) rotate(calc((1 - var(--z-progress, 0)) * -4deg)) !important; }
.z-l4 { transform:translate3d(calc((1 - var(--z-progress, 0)) * 9rem), calc((1 - var(--z-progress, 0)) * 1.6rem), 0) rotate(calc((1 - var(--z-progress, 0)) * 5deg)) !important; }
.z-reg {
  opacity:calc(.32 + var(--z-progress, 0) * .68) !important;
  transform:translate3d(calc((1 - var(--z-progress, 0)) * 2.3rem), calc((1 - var(--z-progress, 0)) * -1.4rem), 0) !important;
}
.z-parallax-slogan {
  opacity:calc(.58 + var(--z-progress, 0) * .42) !important;
  transform:translate3d(0, calc((1 - var(--z-progress, 0)) * .9rem), 0) !important;
}
.z-parallax-finale.is-complete .z-parallax-word {
  filter:
    drop-shadow(0 .8rem 2rem rgb(var(--color-primary-rgb) / .28))
    drop-shadow(0 0 4.4rem rgb(var(--color-primary-rgb) / .26)) !important;
}
@media (max-width:700px) {
  .z-parallax-finale {
    min-height:24rem !important;
    padding:3.6rem 1rem 4rem !important;
  }
  .z-parallax-word {
    font-size:clamp(5.8rem, 22vw, 8.7rem) !important;
  }
  .z-l1 { transform:translate3d(calc((1 - var(--z-progress, 0)) * -3.8rem), calc((1 - var(--z-progress, 0)) * -.7rem), 0) rotate(calc((1 - var(--z-progress, 0)) * -4deg)) !important; }
  .z-l2 { transform:translate3d(calc((1 - var(--z-progress, 0)) * -1.8rem), calc((1 - var(--z-progress, 0)) * .9rem), 0) rotate(calc((1 - var(--z-progress, 0)) * 3deg)) !important; }
  .z-l3 { transform:translate3d(calc((1 - var(--z-progress, 0)) * 1.8rem), calc((1 - var(--z-progress, 0)) * -.9rem), 0) rotate(calc((1 - var(--z-progress, 0)) * -3deg)) !important; }
  .z-l4 { transform:translate3d(calc((1 - var(--z-progress, 0)) * 3.8rem), calc((1 - var(--z-progress, 0)) * .7rem), 0) rotate(calc((1 - var(--z-progress, 0)) * 4deg)) !important; }
}

/* === V41 responsive header balance: scaled menu, tappable flags, no hamburger === */
.header {
  overflow:visible !important;
}
html,
body {
  max-width:100% !important;
  overflow-x:hidden !important;
}
.header .container {
  width:100% !important;
  max-width:min(148rem, calc(100% - 3.2rem)) !important;
  padding:0 !important;
}
.header-nav,
.top-menu,
.top-menu__item,
.top-menu__link,
.site-language-flags,
.site-language-flags .flag-lang,
.world-clocks,
.world-clock {
  box-sizing:border-box !important;
}
.header-nav,
.site-language-flags,
.world-clocks {
  direction:ltr !important;
}
html[dir="rtl"] .top-menu__link,
body[dir="rtl"] .top-menu__link {
  direction:rtl !important;
  unicode-bidi:isolate !important;
}
.site-language-flags {
  justify-items:stretch !important;
  align-items:stretch !important;
}
.top-menu,
.header.active .top-menu {
  display:flex !important;
  align-items:stretch !important;
  justify-content:center !important;
  gap:0 !important;
  height:auto !important;
  background:
    linear-gradient(180deg, rgb(var(--color-secondary-rgb) / .8) 0%, rgb(var(--color-primary-rgb) / .98) 31%, var(--color-primary) 100%) !important;
  border:1px solid var(--color-primary) !important;
  box-shadow:0 .9rem 2.2rem rgb(var(--color-primary-rgb) / .2), inset 0 1px 0 rgba(255,255,255,.58) !important;
}
.top-menu__item,
.header.active .top-menu__item {
  min-width:0 !important;
  flex:1 1 auto !important;
  justify-content:center !important;
  text-align:center !important;
}
.top-menu__link,
.header.active .top-menu__link {
  width:100% !important;
  min-width:0 !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1.08 !important;
  white-space:normal !important;
  text-wrap:balance;
}

@media (min-width:1201px) {
  .header {
    padding:3.2rem 0 3rem !important;
  }
  .header-nav {
    display:grid !important;
    grid-template-columns:minmax(27rem, 30rem) minmax(58rem, 72rem) minmax(27rem, 30rem) !important;
    grid-template-rows:auto auto !important;
    column-gap:clamp(1.6rem, 2vw, 3rem) !important;
    align-items:start !important;
    justify-content:center !important;
    width:100% !important;
    padding:0 !important;
  }
  .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    width:28rem !important;
    max-width:100% !important;
  }
  .header-logo__img {
    width:28rem !important;
    max-width:100% !important;
    height:auto !important;
  }
  .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    width:28rem !important;
    max-width:28rem !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    gap:.48rem !important;
    margin-top:1rem !important;
  }
  .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    height:3.15rem !important;
    min-height:3.15rem !important;
    border-radius:.85rem !important;
  }
  .site-language-flags .flag-icon {
    font-size:1.48rem !important;
  }
  .top-menu {
    grid-column:2 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:stretch !important;
    width:100% !important;
    max-width:72rem !important;
    min-height:6.2rem !important;
    padding:0 1.2rem !important;
    border-radius:999px !important;
    overflow:hidden !important;
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    transform:none !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  .top-menu__item {
    font-size:1.36rem !important;
  }
  .top-menu__link {
    min-height:6.2rem !important;
    padding:.2rem .74rem !important;
    white-space:nowrap !important;
  }
  .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:start !important;
    justify-self:end !important;
    width:28rem !important;
    max-width:28rem !important;
    gap:.44rem !important;
    padding:.58rem !important;
    border-radius:1.5rem !important;
  }
  .world-clock {
    min-height:3.52rem !important;
    border-radius:.92rem !important;
  }
  .world-clock__label {
    font-size:.78rem !important;
  }
  .world-clock__time {
    font-size:1.18rem !important;
  }
}

@media (min-width:951px) and (max-width:1200px) {
  .header {
    padding:3rem 0 2.8rem !important;
  }
  .header .container {
    max-width:calc(100% - 2.4rem) !important;
  }
  .header-nav {
    display:grid !important;
    grid-template-columns:minmax(20.5rem, 22rem) minmax(0, 1fr) minmax(20.5rem, 22rem) !important;
    grid-template-rows:auto auto !important;
    column-gap:.9rem !important;
    align-items:start !important;
    justify-content:stretch !important;
    width:100% !important;
    padding:0 !important;
  }
  .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    width:22rem !important;
    max-width:100% !important;
  }
  .header-logo__img {
    width:22rem !important;
    max-width:100% !important;
    height:auto !important;
  }
  .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    width:22rem !important;
    max-width:22rem !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    gap:.38rem !important;
    margin-top:.85rem !important;
  }
  .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    height:2.72rem !important;
    min-height:2.72rem !important;
    border-radius:.76rem !important;
  }
  .site-language-flags .flag-icon {
    font-size:1.34rem !important;
  }
  .top-menu {
    grid-column:2 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:stretch !important;
    width:100% !important;
    max-width:100% !important;
    min-height:5.8rem !important;
    padding:0 .62rem !important;
    border-radius:999px !important;
    overflow:hidden !important;
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    transform:none !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  .top-menu__item {
    font-size:clamp(.92rem, 1.05vw, 1.08rem) !important;
  }
  .top-menu__link {
    min-height:5.8rem !important;
    padding:.16rem .26rem !important;
  }
  .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:start !important;
    justify-self:end !important;
    width:22rem !important;
    max-width:22rem !important;
    gap:.34rem !important;
    padding:.5rem !important;
    border-radius:1.35rem !important;
  }
  .world-clock {
    min-height:3.35rem !important;
    border-radius:.86rem !important;
  }
  .world-clock__label {
    font-size:.73rem !important;
  }
  .world-clock__time {
    font-size:1.1rem !important;
  }
}

@media (max-width:950px) {
  .header {
    padding:2rem 0 2.4rem !important;
  }
  .header .container {
    max-width:100% !important;
    padding:0 clamp(1.2rem, 3vw, 2rem) !important;
  }
  .header-nav {
    --header-left-size:clamp(30rem, 61vw, 36rem);
    --header-menu-size:clamp(15rem, 27vw, 19rem);
    display:grid !important;
    grid-template-columns:minmax(0, var(--header-left-size)) var(--header-menu-size) !important;
    grid-template-rows:auto auto auto !important;
    gap:.9rem clamp(1.1rem, 2vw, 1.6rem) !important;
    align-items:start !important;
    justify-content:start !important;
    width:100% !important;
    padding:0 !important;
  }
  .header__mob,
  #open-modal,
  .header__modal,
  .header__modal-white {
    display:none !important;
  }
  .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    width:var(--header-left-size) !important;
    max-width:100% !important;
  }
  .header-logo__img {
    width:var(--header-left-size) !important;
    max-width:100% !important;
    height:auto !important;
  }
  .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    width:var(--header-left-size) !important;
    max-width:100% !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    gap:.55rem !important;
    margin-top:.15rem !important;
  }
  .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    height:3.32rem !important;
    min-height:3.32rem !important;
    border-radius:.92rem !important;
  }
  .site-language-flags .flag-icon {
    font-size:1.55rem !important;
  }
  .world-clocks {
    grid-column:1 !important;
    grid-row:3 !important;
    justify-self:start !important;
    width:var(--header-left-size) !important;
    max-width:100% !important;
    margin-top:.15rem !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:.44rem !important;
    padding:.55rem !important;
    border-radius:1.45rem !important;
  }
  .world-clock {
    min-height:3.28rem !important;
    border-radius:.9rem !important;
  }
  .world-clock__label {
    font-size:.72rem !important;
  }
  .world-clock__time {
    font-size:1.08rem !important;
  }
  .top-menu,
  .header.active .top-menu {
    grid-column:2 !important;
    grid-row:1 / span 3 !important;
    align-self:stretch !important;
    justify-self:stretch !important;
    flex-direction:column !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    min-height:0 !important;
    max-height:none !important;
    padding:.55rem !important;
    margin:0 !important;
    border-radius:2rem !important;
    overflow:hidden !important;
    position:relative !important;
    inset:auto !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    transform:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    z-index:30 !important;
  }
  .top-menu__item,
  .header.active .top-menu__item {
    width:100% !important;
    flex:0 0 auto !important;
    min-height:0 !important;
    border-right:0 !important;
    border-bottom:1px solid rgb(var(--color-primary-rgb) / .72) !important;
    font-size:clamp(1.08rem, 2.2vw, 1.34rem) !important;
  }
  .top-menu__item:last-child,
  .header.active .top-menu__item:last-child {
    border-bottom:0 !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:4.32rem !important;
    padding:.42rem .68rem !important;
    white-space:nowrap !important;
    text-wrap:balance;
  }
}

@media (max-width:520px) {
  .header {
    padding:1.6rem 0 2rem !important;
  }
  .header .container {
    padding:0 1.2rem !important;
  }
  .header-nav {
    --header-left-size:100%;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:.9rem !important;
  }
  .header-logo {
    width:min(32rem, 100%) !important;
  }
  .header-logo__img {
    width:min(32rem, 100%) !important;
  }
  .site-language-flags {
    width:100% !important;
    gap:.5rem !important;
  }
  .site-language-flags .flag-lang {
    height:3.36rem !important;
    min-height:3.36rem !important;
  }
  .world-clocks {
    width:100% !important;
  }
  .top-menu,
  .header.active .top-menu {
    grid-column:1 !important;
    grid-row:4 !important;
    width:100% !important;
    border-radius:1.8rem !important;
  }
  .top-menu__item,
  .header.active .top-menu__item {
    font-size:1.24rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:3.86rem !important;
  }
}

/* === V42 code-only cinematic ZPHC assembly finale === */
.z-parallax-finale {
  --z-progress:0;
  --z-assemble:var(--z-ease, var(--z-progress, 0));
  --z-flight:calc(1 - var(--z-assemble));
  position:relative !important;
  z-index:1 !important;
  min-height:clamp(38rem, 48vw, 62rem) !important;
  margin:2.4rem 0 0 !important;
  padding:clamp(6rem, 8.5vw, 9.8rem) 1.6rem clamp(6.4rem, 9vw, 10.8rem) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-direction:column !important;
  overflow:hidden !important;
  isolation:isolate !important;
  contain:layout paint !important;
  perspective:110rem !important;
  perspective-origin:50% 48% !important;
  border:0 !important;
  box-shadow:
    inset 0 8rem 8rem -8rem #fff,
    inset 0 -8rem 8rem -8rem #fff !important;
  background:
    radial-gradient(ellipse at 50% 51%, rgb(var(--color-primary-rgb) / .2) 0%, rgb(var(--color-background-rgb) / .3) 31%, rgba(255,255,255,0) 70%),
    radial-gradient(ellipse at 18% 70%, rgb(var(--color-primary-rgb) / .09) 0%, rgba(255,255,255,0) 44%),
    radial-gradient(ellipse at 82% 35%, rgb(var(--color-primary-rgb) / .08) 0%, rgba(255,255,255,0) 45%),
    repeating-linear-gradient(148deg, transparent 0 6.8rem, rgb(var(--color-primary-rgb) / .04) 6.86rem 6.96rem, transparent 7.04rem 13.6rem),
    linear-gradient(180deg, rgba(255,255,255,0) 0%, rgb(var(--color-background-rgb) / .72) 22%, rgb(var(--color-background-rgb) / .76) 51%, rgba(250,253,255,.55) 78%, rgba(255,255,255,0) 100%) !important;
  pointer-events:none !important;
}
.z-parallax-finale::before,
.z-parallax-finale::after {
  content:"" !important;
  position:absolute !important;
  pointer-events:none !important;
  border:0 !important;
  animation:none !important;
}
.z-parallax-finale::before {
  left:-12% !important;
  right:-12% !important;
  top:47% !important;
  height:18rem !important;
  z-index:0 !important;
  opacity:calc(.16 + var(--z-assemble) * .3) !important;
  background:
    linear-gradient(90deg, transparent 0%, rgb(var(--color-primary-rgb) / .18) 42%, rgba(255,255,255,.72) 50%, rgb(var(--color-primary-rgb) / .16) 58%, transparent 100%) !important;
  filter:blur(1.2rem) !important;
  transform:translate3d(calc(var(--z-flight) * -20rem), -50%, 0) rotate(-12deg) !important;
}
.z-parallax-finale::after {
  width:clamp(26rem, 42vw, 56rem) !important;
  height:clamp(13rem, 22vw, 27rem) !important;
  left:50% !important;
  top:50% !important;
  z-index:0 !important;
  border-radius:50% !important;
  opacity:calc(.18 + var(--z-assemble) * .32) !important;
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .26), rgb(var(--color-primary-rgb) / .09) 43%, rgba(255,255,255,0) 72%) !important;
  filter:blur(.45rem) !important;
  transform:translate3d(-50%, -52%, 0) scale(calc(.72 + var(--z-assemble) * .28)) !important;
}
.z-parallax-word,
.z-letter,
.z-reg,
.z-parallax-slogan,
.z-sport-orbit,
.z-left .z-dumbbell,
.z-right .z-barbell,
.z-left .z-plate,
.z-right .z-plate,
.z-kettlebell {
  animation:none !important;
}
.z-parallax-word {
  position:relative !important;
  z-index:3 !important;
  display:inline-flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:0 !important;
  margin:0 !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:clamp(8.2rem, 14.2vw, 18rem) !important;
  font-weight:900 !important;
  letter-spacing:0 !important;
  line-height:.78 !important;
  color:var(--color-primary) !important;
  -webkit-text-fill-color:initial !important;
  opacity:1 !important;
  transform-style:preserve-3d !important;
  transform:
    translate3d(0, calc(var(--z-flight) * 1.4rem), 0)
    rotateX(calc(var(--z-flight) * 5deg))
    scale(calc(.96 + var(--z-assemble) * .04)) !important;
  filter:
    drop-shadow(0 .9rem 1.4rem rgb(var(--color-primary-hover-rgb) / .2))
    drop-shadow(0 0 calc(1rem + var(--z-assemble) * 3.8rem) rgb(var(--color-primary-rgb) / .22)) !important;
  will-change:transform, filter !important;
}
.z-parallax-word::before {
  content:"ZPHC" !important;
  position:absolute !important;
  inset:0 auto auto 50% !important;
  z-index:-1 !important;
  color:rgb(var(--color-primary-rgb) / .13) !important;
  -webkit-text-fill-color:rgb(var(--color-primary-rgb) / .13) !important;
  opacity:calc(var(--z-flight) * .45) !important;
  transform:
    translate3d(calc(-50% + var(--z-flight) * -5rem), calc(var(--z-flight) * 1.4rem), -18rem)
    rotateY(calc(var(--z-flight) * 18deg))
    scale(1.08) !important;
  filter:blur(calc(.2rem + var(--z-flight) * .45rem)) !important;
  letter-spacing:0 !important;
  pointer-events:none !important;
}
.z-letter,
.z-reg {
  position:relative !important;
  display:inline-block !important;
  flex:0 0 auto !important;
  background:linear-gradient(180deg, var(--color-surface-blue) 0%, var(--color-secondary) 31%, var(--color-primary) 58%, var(--color-primary) 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:var(--color-primary) !important;
  opacity:calc(.08 + var(--z-assemble) * .92) !important;
  transform-style:preserve-3d !important;
  transform-origin:50% 66% !important;
  filter:
    blur(calc(var(--z-flight) * .08rem))
    drop-shadow(0 .55rem .7rem rgb(var(--color-primary-rgb) / .26))
    drop-shadow(0 0 calc(.35rem + var(--z-assemble) * 1.1rem) rgb(var(--color-primary-rgb) / .24)) !important;
  will-change:transform, opacity, filter !important;
}
.z-letter::after {
  position:absolute !important;
  inset:0 !important;
  z-index:-1 !important;
  opacity:calc(var(--z-flight) * .22) !important;
  color:rgb(var(--color-primary-rgb) / .24) !important;
  -webkit-text-fill-color:rgb(var(--color-primary-rgb) / .24) !important;
  transform:
    translate3d(calc(var(--z-flight) * -1.8rem), calc(var(--z-flight) * .7rem), -7rem)
    scale(1.04) !important;
  filter:blur(.18rem) !important;
}
.z-l1::after { content:"Z" !important; }
.z-l2::after { content:"P" !important; }
.z-l3::after { content:"H" !important; }
.z-l4::after { content:"C" !important; }
.z-l1 {
  transform:
    translate3d(calc(var(--z-flight) * -46vw), calc(var(--z-flight) * -6.4rem), calc(var(--z-flight) * -32rem))
    rotateX(calc(var(--z-flight) * 18deg))
    rotateY(calc(var(--z-flight) * -62deg))
    rotateZ(calc(var(--z-flight) * -18deg))
    scale(calc(.56 + var(--z-assemble) * .44)) !important;
}
.z-l2 {
  transform:
    translate3d(calc(var(--z-flight) * -24vw), calc(var(--z-flight) * 6.2rem), calc(var(--z-flight) * -21rem))
    rotateX(calc(var(--z-flight) * -20deg))
    rotateY(calc(var(--z-flight) * 44deg))
    rotateZ(calc(var(--z-flight) * 15deg))
    scale(calc(.62 + var(--z-assemble) * .38)) !important;
}
.z-l3 {
  transform:
    translate3d(calc(var(--z-flight) * 24vw), calc(var(--z-flight) * -6.2rem), calc(var(--z-flight) * -21rem))
    rotateX(calc(var(--z-flight) * 20deg))
    rotateY(calc(var(--z-flight) * -44deg))
    rotateZ(calc(var(--z-flight) * -15deg))
    scale(calc(.62 + var(--z-assemble) * .38)) !important;
}
.z-l4 {
  transform:
    translate3d(calc(var(--z-flight) * 46vw), calc(var(--z-flight) * 6.4rem), calc(var(--z-flight) * -32rem))
    rotateX(calc(var(--z-flight) * -18deg))
    rotateY(calc(var(--z-flight) * 62deg))
    rotateZ(calc(var(--z-flight) * 18deg))
    scale(calc(.56 + var(--z-assemble) * .44)) !important;
}
.z-reg {
  font-size:.17em !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  margin-left:.08em !important;
  top:-.42em !important;
  transform:
    translate3d(calc(var(--z-flight) * 18vw), calc(var(--z-flight) * -7rem), calc(var(--z-flight) * -16rem))
    rotateX(calc(var(--z-flight) * 24deg))
    rotateY(calc(var(--z-flight) * 38deg))
    rotateZ(calc(var(--z-flight) * 22deg))
    scale(calc(.62 + var(--z-assemble) * .38)) !important;
}
.z-parallax-slogan {
  position:relative !important;
  z-index:3 !important;
  max-width:min(76rem, calc(100% - 2rem)) !important;
  margin:1.4rem auto 0 !important;
  padding:.85rem 0 0 !important;
  color:var(--color-primary) !important;
  font-size:clamp(1.45rem, 2.2vw, 2.45rem) !important;
  line-height:1.35 !important;
  font-style:italic !important;
  text-align:center !important;
  opacity:calc(var(--z-assemble) * 1.05) !important;
  transform:
    translate3d(0, calc(var(--z-flight) * 2.1rem), calc(var(--z-flight) * -4rem))
    rotateX(calc(var(--z-flight) * 4deg)) !important;
  text-shadow:
    0 .45rem 1.6rem rgb(var(--color-primary-rgb) / .18),
    0 0 calc(var(--z-assemble) * 1.8rem) rgb(var(--color-primary-rgb) / .24) !important;
}
.z-sport-orbit {
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  display:block !important;
  pointer-events:none !important;
  opacity:calc(.1 + var(--z-assemble) * .28) !important;
  transform-style:preserve-3d !important;
}
.z-sport-orbit span {
  position:absolute !important;
  display:block !important;
  color:rgb(var(--color-primary-rgb) / .36) !important;
  border-color:rgb(var(--color-primary-rgb) / .3) !important;
  background:transparent !important;
  filter:drop-shadow(0 0 1.3rem rgb(var(--color-primary-rgb) / .12)) !important;
}
.z-left .z-dumbbell,
.z-right .z-barbell {
  width:clamp(11rem, 14vw, 17rem) !important;
  height:0 !important;
  border-top:.42rem solid rgb(var(--color-primary-rgb) / .28) !important;
  border-radius:0 !important;
  box-shadow:0 0 2rem rgb(var(--color-primary-rgb) / .1) !important;
}
.z-left .z-dumbbell {
  left:5% !important;
  top:43% !important;
  transform:
    translate3d(calc(var(--z-flight) * -8rem), calc(var(--z-flight) * 6rem), calc(var(--z-flight) * -11rem))
    rotate(-14deg) !important;
}
.z-right .z-barbell {
  right:4% !important;
  top:36% !important;
  transform:
    translate3d(calc(var(--z-flight) * 8rem), calc(var(--z-flight) * -6rem), calc(var(--z-flight) * -11rem))
    rotate(13deg) !important;
}
.z-dumbbell::before,
.z-dumbbell::after,
.z-barbell::before,
.z-barbell::after {
  content:"" !important;
  position:absolute !important;
  top:-1.55rem !important;
  width:1.35rem !important;
  height:2.7rem !important;
  border-radius:.32rem !important;
  background:rgb(var(--color-primary-rgb) / .28) !important;
}
.z-dumbbell::before,
.z-barbell::before { left:-.7rem !important; }
.z-dumbbell::after,
.z-barbell::after { right:-.7rem !important; }
.z-plate {
  width:clamp(5.8rem, 7vw, 8.5rem) !important;
  height:clamp(5.8rem, 7vw, 8.5rem) !important;
  border:.55rem solid rgb(var(--color-primary-rgb) / .22) !important;
  border-radius:50% !important;
  opacity:1 !important;
}
.z-left .z-plate {
  left:17% !important;
  top:20% !important;
  transform:
    translate3d(calc(var(--z-flight) * -7rem), calc(var(--z-flight) * -1rem), calc(var(--z-flight) * -8rem))
    rotate(calc(var(--z-flight) * -24deg)) !important;
}
.z-right .z-plate {
  right:16% !important;
  top:66% !important;
  transform:
    translate3d(calc(var(--z-flight) * 7rem), calc(var(--z-flight) * 1rem), calc(var(--z-flight) * -8rem))
    rotate(calc(var(--z-flight) * 24deg)) !important;
}
.z-kettlebell {
  left:9% !important;
  bottom:18% !important;
  width:clamp(4.6rem, 5.5vw, 6.6rem) !important;
  height:clamp(4.3rem, 5.2vw, 6.2rem) !important;
  border:.5rem solid rgb(var(--color-primary-rgb) / .24) !important;
  border-radius:45% 45% 50% 50% !important;
  opacity:1 !important;
  transform:
    translate3d(calc(var(--z-flight) * -5rem), calc(var(--z-flight) * 4.2rem), calc(var(--z-flight) * -9rem))
    rotate(calc(var(--z-flight) * -12deg)) !important;
}
.z-kettlebell::before {
  content:"" !important;
  position:absolute !important;
  left:.85rem !important;
  right:.85rem !important;
  top:-1.65rem !important;
  height:1.6rem !important;
  border:.42rem solid rgb(var(--color-primary-rgb) / .24) !important;
  border-bottom:0 !important;
  border-radius:1.6rem 1.6rem 0 0 !important;
}
.z-parallax-finale.is-complete .z-parallax-word {
  filter:
    drop-shadow(0 1rem 1.7rem rgb(var(--color-primary-hover-rgb) / .22))
    drop-shadow(0 0 4.9rem rgb(var(--color-primary-rgb) / .3))
    drop-shadow(0 0 1rem rgba(255,255,255,.68)) !important;
}
@media (max-width:900px) {
  .z-parallax-finale {
    min-height:clamp(30rem, 58vw, 44rem) !important;
    padding:5rem 1rem 5.6rem !important;
  }
  .z-parallax-word {
    font-size:clamp(6.8rem, 17vw, 11rem) !important;
  }
  .z-parallax-slogan {
    font-size:clamp(1.28rem, 3vw, 1.75rem) !important;
  }
  .z-left .z-dumbbell,
  .z-right .z-barbell {
    opacity:.78 !important;
  }
}
@media (max-width:560px) {
  .z-parallax-finale {
    min-height:28rem !important;
    padding:4.2rem .8rem 4.8rem !important;
  }
  .z-parallax-word {
    font-size:clamp(5.4rem, 22vw, 8rem) !important;
  }
  .z-parallax-slogan {
    max-width:32rem !important;
    font-size:1.2rem !important;
  }
  .z-sport-orbit {
    opacity:calc(.04 + var(--z-assemble) * .14) !important;
  }
  .z-left .z-dumbbell,
  .z-right .z-barbell,
  .z-left .z-plate,
  .z-right .z-plate,
  .z-kettlebell {
    transform:scale(.72) !important;
  }
  .z-l1 {
    transform:
      translate3d(calc(var(--z-flight) * -34vw), calc(var(--z-flight) * -3.2rem), calc(var(--z-flight) * -18rem))
      rotateY(calc(var(--z-flight) * -42deg))
      rotateZ(calc(var(--z-flight) * -12deg))
      scale(calc(.64 + var(--z-assemble) * .36)) !important;
  }
  .z-l2 {
    transform:
      translate3d(calc(var(--z-flight) * -18vw), calc(var(--z-flight) * 3rem), calc(var(--z-flight) * -13rem))
      rotateY(calc(var(--z-flight) * 28deg))
      rotateZ(calc(var(--z-flight) * 10deg))
      scale(calc(.68 + var(--z-assemble) * .32)) !important;
  }
  .z-l3 {
    transform:
      translate3d(calc(var(--z-flight) * 18vw), calc(var(--z-flight) * -3rem), calc(var(--z-flight) * -13rem))
      rotateY(calc(var(--z-flight) * -28deg))
      rotateZ(calc(var(--z-flight) * -10deg))
      scale(calc(.68 + var(--z-assemble) * .32)) !important;
  }
  .z-l4 {
    transform:
      translate3d(calc(var(--z-flight) * 34vw), calc(var(--z-flight) * 3.2rem), calc(var(--z-flight) * -18rem))
      rotateY(calc(var(--z-flight) * 42deg))
      rotateZ(calc(var(--z-flight) * 12deg))
      scale(calc(.64 + var(--z-assemble) * .36)) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .z-parallax-finale {
    --z-progress:1 !important;
    --z-ease:1 !important;
  }
  .z-letter,
  .z-reg,
  .z-parallax-word,
  .z-parallax-slogan {
    transform:none !important;
    opacity:1 !important;
    filter:none !important;
  }
}

/* === V43 lightweight precision parallax system === */
.parallax-logo-build {
  opacity:.82 !important;
  background:
    radial-gradient(circle at 78% 78%, rgb(var(--color-primary-rgb) / .08), transparent 28rem),
    radial-gradient(circle at 12% 32%, rgb(var(--color-primary-rgb) / .045), transparent 24rem),
    linear-gradient(145deg, transparent 0 56%, rgb(var(--color-primary-rgb) / .026) 56.08% 56.22%, transparent 56.3% 100%) !important;
}
.parallax-logo-build::before,
.parallax-logo-build::after {
  content:"" !important;
  position:absolute !important;
  pointer-events:none !important;
  opacity:calc(.045 + var(--parallax-progress, 0) * .08) !important;
}
.parallax-logo-build::before {
  width:min(42vw, 34rem) !important;
  aspect-ratio:1 !important;
  right:7vw !important;
  bottom:9vh !important;
  border-radius:50% !important;
  background:
    conic-gradient(from calc(var(--parallax-progress, 0) * 80deg), transparent 0 15deg, rgb(var(--color-primary-rgb) / .32) 16deg 19deg, transparent 20deg 70deg, rgb(var(--color-primary-rgb) / .18) 72deg 75deg, transparent 76deg 360deg) !important;
  -webkit-mask:radial-gradient(farthest-side, transparent calc(100% - .32rem), #000 calc(100% - .26rem), #000 calc(100% - .02rem), transparent 100%) !important;
  mask:radial-gradient(farthest-side, transparent calc(100% - .32rem), #000 calc(100% - .26rem), #000 calc(100% - .02rem), transparent 100%) !important;
  transform:translate3d(0, var(--plb-z-y, 18px), 0) rotate(-10deg) !important;
}
.parallax-logo-build::after {
  left:8vw !important;
  top:30vh !important;
  width:min(48vw, 42rem) !important;
  height:1px !important;
  background:linear-gradient(90deg, transparent, rgb(var(--color-primary-rgb) / .24), rgba(255,255,255,.8), rgb(var(--color-primary-rgb) / .18), transparent) !important;
  box-shadow:
    0 4.4rem 0 rgb(var(--color-primary-rgb) / .07),
    0 8.8rem 0 rgb(var(--color-primary-rgb) / .045) !important;
  transform:translate3d(0, calc(var(--plb-y, 90px) * -.28), 0) rotate(-16deg) !important;
}
.parallax-logo-build .plb-track {
  color:var(--color-primary) !important;
  opacity:calc(.026 + var(--parallax-progress, 0) * .052) !important;
  filter:
    drop-shadow(0 .8rem 2.4rem rgb(var(--color-primary-rgb) / .12))
    drop-shadow(0 0 3.4rem rgb(var(--color-primary-rgb) / .12)) !important;
  transform:
    translate3d(0, var(--plb-y, 90px), 0)
    rotateX(calc((1 - var(--parallax-progress, 0)) * 4deg))
    rotateZ(-1.5deg) !important;
  transform-style:preserve-3d !important;
}
.parallax-logo-build .plb-letter {
  display:inline-block !important;
  transform:
    translate3d(0, calc((1 - var(--parallax-progress, 0)) * .16em), calc((1 - var(--parallax-progress, 0)) * -2rem))
    rotateY(calc((1 - var(--parallax-progress, 0)) * 10deg)) !important;
}

.z-parallax-finale {
  --z-grid:calc(.12 + var(--z-assemble) * .22);
  min-height:clamp(40rem, 49vw, 64rem) !important;
  background:
    radial-gradient(ellipse at 50% 48%, rgb(var(--color-primary-rgb) / .18) 0%, rgb(var(--color-background-rgb) / .22) 30%, transparent 68%),
    radial-gradient(ellipse at 24% 68%, rgb(var(--color-primary-rgb) / .075), transparent 42%),
    radial-gradient(ellipse at 78% 32%, rgb(var(--color-primary-rgb) / .07), transparent 44%),
    linear-gradient(126deg, transparent 0 41%, rgb(var(--color-primary-rgb) / .035) 41.08% 41.18%, transparent 41.26% 100%),
    linear-gradient(151deg, transparent 0 58%, rgb(var(--color-primary-rgb) / .04) 58.08% 58.2%, transparent 58.28% 100%),
    linear-gradient(180deg, rgba(255,255,255,0), rgb(var(--color-background-rgb) / .66) 24%, rgb(var(--color-background-rgb) / .74) 50%, rgba(250,253,255,.52) 78%, rgba(255,255,255,0)) !important;
}
.z-parallax-finale::before {
  left:50% !important;
  right:auto !important;
  top:55% !important;
  width:min(118rem, 124vw) !important;
  height:min(38rem, 42vw) !important;
  z-index:0 !important;
  opacity:var(--z-grid) !important;
  background:
    linear-gradient(90deg, rgb(var(--color-primary-rgb) / .13) 1px, transparent 1px),
    linear-gradient(0deg, rgb(var(--color-primary-rgb) / .1) 1px, transparent 1px),
    radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .18), transparent 62%) !important;
  background-size:7.4rem 7.4rem, 7.4rem 7.4rem, 100% 100% !important;
  filter:blur(.08rem) !important;
  transform:
    translate3d(-50%, -50%, -11rem)
    rotateX(66deg)
    rotateZ(-15deg)
    translateY(calc(var(--z-flight) * 5rem)) !important;
  transform-origin:50% 50% !important;
  -webkit-mask:radial-gradient(ellipse at center, #000 0 39%, rgba(0,0,0,.55) 56%, transparent 78%) !important;
  mask:radial-gradient(ellipse at center, #000 0 39%, rgba(0,0,0,.55) 56%, transparent 78%) !important;
}
.z-parallax-finale::after {
  width:min(64rem, 58vw) !important;
  height:min(28rem, 27vw) !important;
  opacity:calc(.14 + var(--z-assemble) * .28) !important;
  background:
    conic-gradient(from calc(-35deg + var(--z-assemble) * 90deg), transparent 0 28deg, rgb(var(--color-primary-rgb) / .22) 32deg 38deg, transparent 42deg 155deg, rgba(255,255,255,.8) 162deg 167deg, transparent 174deg 360deg),
    radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .18), rgb(var(--color-primary-rgb) / .06) 44%, transparent 72%) !important;
  filter:blur(.22rem) !important;
  transform:
    translate3d(-50%, -53%, -3rem)
    rotateX(58deg)
    scale(calc(.78 + var(--z-assemble) * .24)) !important;
  -webkit-mask:radial-gradient(ellipse at center, transparent 0 35%, #000 36% 54%, transparent 72%) !important;
  mask:radial-gradient(ellipse at center, transparent 0 35%, #000 36% 54%, transparent 72%) !important;
}
.z-parallax-word {
  filter:
    drop-shadow(0 1rem 1.35rem rgb(var(--color-primary-hover-rgb) / .2))
    drop-shadow(0 0 calc(1.1rem + var(--z-assemble) * 3.2rem) rgb(var(--color-primary-rgb) / .2)) !important;
}
.z-letter,
.z-reg {
  background:
    linear-gradient(180deg, var(--color-background) 0%, var(--color-secondary) 27%, var(--color-primary) 58%, var(--color-primary) 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  text-shadow:none !important;
}
.z-letter::before {
  content:"" !important;
  position:absolute !important;
  left:12% !important;
  right:12% !important;
  bottom:-.12em !important;
  height:.035em !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.9), rgb(var(--color-primary-rgb) / .28), transparent) !important;
  opacity:calc(var(--z-assemble) * .68) !important;
  transform:translateZ(-.8rem) !important;
}
.z-parallax-slogan {
  margin-top:1.25rem !important;
  letter-spacing:0 !important;
  color:var(--color-primary) !important;
}
.z-parallax-slogan::before {
  content:"" !important;
  display:block !important;
  width:min(28rem, 56vw) !important;
  height:1px !important;
  margin:0 auto .95rem !important;
  background:linear-gradient(90deg, transparent, rgb(var(--color-primary-rgb) / .24), rgba(255,255,255,.9), rgb(var(--color-primary-rgb) / .2), transparent) !important;
  opacity:calc(.25 + var(--z-assemble) * .38) !important;
}
.z-sport-orbit {
  opacity:calc(.2 + var(--z-assemble) * .32) !important;
  transform:
    translate3d(0, calc(var(--z-flight) * 1.6rem), -4rem)
    rotateX(calc(var(--z-flight) * 4deg)) !important;
}
.z-sport-orbit::before,
.z-sport-orbit::after {
  content:"" !important;
  position:absolute !important;
  border-radius:50% !important;
  pointer-events:none !important;
  background:
    conic-gradient(from calc(var(--z-assemble) * 95deg), transparent 0 26deg, rgb(var(--color-primary-rgb) / .28) 28deg 36deg, transparent 40deg 142deg, rgba(255,255,255,.8) 148deg 153deg, transparent 160deg 360deg) !important;
  -webkit-mask:radial-gradient(farthest-side, transparent calc(100% - .34rem), #000 calc(100% - .28rem), #000 calc(100% - .04rem), transparent 100%) !important;
  mask:radial-gradient(farthest-side, transparent calc(100% - .34rem), #000 calc(100% - .28rem), #000 calc(100% - .04rem), transparent 100%) !important;
  filter:drop-shadow(0 0 1.5rem rgb(var(--color-primary-rgb) / .12)) !important;
}
.z-sport-orbit.z-left::before {
  left:12% !important;
  top:19% !important;
  width:clamp(8rem, 10vw, 13rem) !important;
  height:clamp(8rem, 10vw, 13rem) !important;
  transform:
    translate3d(calc(var(--z-flight) * -7rem), calc(var(--z-flight) * -2rem), -7rem)
    rotate(-12deg) !important;
}
.z-sport-orbit.z-left::after {
  left:5% !important;
  bottom:15% !important;
  width:clamp(6rem, 7vw, 9rem) !important;
  height:clamp(6rem, 7vw, 9rem) !important;
  transform:
    translate3d(calc(var(--z-flight) * -5rem), calc(var(--z-flight) * 3rem), -8rem)
    rotate(18deg) !important;
}
.z-sport-orbit.z-right::before {
  right:8% !important;
  top:28% !important;
  width:clamp(9rem, 11vw, 14rem) !important;
  height:clamp(9rem, 11vw, 14rem) !important;
  transform:
    translate3d(calc(var(--z-flight) * 7rem), calc(var(--z-flight) * -3rem), -8rem)
    rotate(16deg) !important;
}
.z-sport-orbit.z-right::after {
  right:12% !important;
  bottom:18% !important;
  width:clamp(7rem, 8vw, 10rem) !important;
  height:clamp(7rem, 8vw, 10rem) !important;
  transform:
    translate3d(calc(var(--z-flight) * 5rem), calc(var(--z-flight) * 3rem), -9rem)
    rotate(-18deg) !important;
}
.z-sport-orbit span {
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:drop-shadow(0 0 1.4rem rgb(var(--color-primary-rgb) / .11)) !important;
}
.z-left .z-dumbbell,
.z-right .z-barbell,
.z-right .z-dumbbell {
  height:1px !important;
  width:clamp(14rem, 18vw, 24rem) !important;
  border:0 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, transparent 0%, rgb(var(--color-primary-rgb) / .32) 24%, rgba(255,255,255,.9) 50%, rgb(var(--color-primary-rgb) / .24) 74%, transparent 100%) !important;
  opacity:calc(.46 + var(--z-assemble) * .34) !important;
}
.z-left .z-dumbbell {
  left:3.8% !important;
  top:42% !important;
  transform:
    translate3d(calc(var(--z-flight) * -10rem), calc(var(--z-flight) * 4.8rem), calc(var(--z-flight) * -12rem))
    rotate(-13deg) !important;
}
.z-right .z-barbell {
  right:3.4% !important;
  top:36% !important;
  transform:
    translate3d(calc(var(--z-flight) * 10rem), calc(var(--z-flight) * -4.8rem), calc(var(--z-flight) * -12rem))
    rotate(13deg) !important;
}
.z-right .z-dumbbell {
  right:9% !important;
  top:67% !important;
  transform:
    translate3d(calc(var(--z-flight) * 7rem), calc(var(--z-flight) * 3rem), calc(var(--z-flight) * -10rem))
    rotate(-19deg) !important;
}
.z-dumbbell::before,
.z-dumbbell::after,
.z-barbell::before,
.z-barbell::after {
  content:"" !important;
  position:absolute !important;
  top:-.32rem !important;
  width:.64rem !important;
  height:.64rem !important;
  border-radius:50% !important;
  background:radial-gradient(circle, #fff 0 18%, rgb(var(--color-primary-rgb) / .5) 22%, rgb(var(--color-primary-rgb) / .16) 64%, transparent 68%) !important;
  box-shadow:0 0 1.2rem rgb(var(--color-primary-rgb) / .25) !important;
}
.z-dumbbell::before,
.z-barbell::before { left:18% !important; }
.z-dumbbell::after,
.z-barbell::after { right:18% !important; }
.z-plate,
.z-kettlebell {
  border:0 !important;
  border-radius:50% !important;
  background:
    conic-gradient(from calc(var(--z-assemble) * 110deg), transparent 0 22deg, rgb(var(--color-primary-rgb) / .28) 24deg 34deg, transparent 36deg 124deg, rgba(255,255,255,.74) 132deg 137deg, transparent 145deg 360deg) !important;
  -webkit-mask:radial-gradient(farthest-side, transparent calc(100% - .5rem), #000 calc(100% - .44rem), #000 calc(100% - .05rem), transparent 100%) !important;
  mask:radial-gradient(farthest-side, transparent calc(100% - .5rem), #000 calc(100% - .44rem), #000 calc(100% - .05rem), transparent 100%) !important;
  opacity:calc(.48 + var(--z-assemble) * .28) !important;
}
.z-left .z-plate {
  left:18% !important;
  top:23% !important;
  transform:
    translate3d(calc(var(--z-flight) * -8rem), calc(var(--z-flight) * -1.4rem), calc(var(--z-flight) * -9rem))
    rotate(calc(-20deg + var(--z-assemble) * 36deg)) !important;
}
.z-right .z-plate {
  right:15% !important;
  top:66% !important;
  transform:
    translate3d(calc(var(--z-flight) * 8rem), calc(var(--z-flight) * 1.4rem), calc(var(--z-flight) * -9rem))
    rotate(calc(18deg + var(--z-assemble) * -32deg)) !important;
}
.z-kettlebell {
  left:8% !important;
  bottom:17% !important;
  width:clamp(5.4rem, 6vw, 7.6rem) !important;
  height:clamp(5.4rem, 6vw, 7.6rem) !important;
  transform:
    translate3d(calc(var(--z-flight) * -5rem), calc(var(--z-flight) * 3.8rem), calc(var(--z-flight) * -10rem))
    rotate(calc(var(--z-flight) * -18deg)) !important;
}
.z-kettlebell::before {
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:.72rem !important;
  height:.72rem !important;
  border:0 !important;
  border-radius:50% !important;
  background:radial-gradient(circle, #fff 0 20%, rgb(var(--color-primary-rgb) / .42) 24%, transparent 72%) !important;
  transform:translate(-50%, -50%) !important;
}
@media (max-width:900px) {
  .parallax-logo-build::before {
    right:2vw !important;
    width:min(52vw, 22rem) !important;
  }
  .z-parallax-finale::before {
    width:132vw !important;
    height:36rem !important;
    background-size:5.8rem 5.8rem, 5.8rem 5.8rem, 100% 100% !important;
  }
  .z-left .z-dumbbell,
  .z-right .z-barbell,
  .z-right .z-dumbbell {
    width:clamp(10rem, 24vw, 16rem) !important;
  }
}
@media (max-width:560px) {
  .z-parallax-finale {
    min-height:30rem !important;
  }
  .z-parallax-finale::before {
    opacity:calc(.06 + var(--z-assemble) * .13) !important;
    background-size:4.8rem 4.8rem, 4.8rem 4.8rem, 100% 100% !important;
  }
  .z-parallax-finale::after {
    width:92vw !important;
    height:34vw !important;
  }
  .z-sport-orbit {
    opacity:calc(.08 + var(--z-assemble) * .14) !important;
  }
  .z-left .z-dumbbell,
  .z-right .z-barbell,
  .z-right .z-dumbbell {
    height:1px !important;
    transform:scale(.7) !important;
  }
  .z-plate,
  .z-kettlebell {
    transform:scale(.62) !important;
  }
}

/* === V19 editorial trust, references and related-link blocks === */
.z-style-block,
.z-style-references,
.z-style-notice,
.authority-link-box {
  border:1px solid rgb(var(--color-primary-rgb) / .16);
  border-radius:8px;
  background:linear-gradient(180deg, rgb(var(--color-background-rgb) / .96), rgba(255,255,255,.98));
  box-shadow:0 1.2rem 3.4rem rgb(var(--color-primary-hover-rgb) / .07);
}
.z-style-block,
.z-style-references,
.authority-link-box {
  margin:2.4rem 0;
  padding:clamp(1.4rem, 2.2vw, 2.2rem);
}
.z-style-block h2,
.z-style-references h2,
.authority-link-box h2 {
  margin-top:0;
  color:var(--color-primary);
  font-size:clamp(1.7rem, 2vw, 2.4rem);
  line-height:1.25;
}
.z-style-block ul,
.z-style-references ol {
  margin:1rem 0 0;
  padding-left:1.4em;
}
[dir="rtl"] .z-style-block ul,
[dir="rtl"] .z-style-references ol {
  padding-left:0;
  padding-right:1.4em;
}
.z-style-block li,
.z-style-references li {
  margin:.62rem 0;
}
.z-style-block a,
.z-style-references a,
.authority-link-box a,
.editorial-link a {
  color:var(--color-primary);
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid rgb(var(--color-primary-rgb) / .22);
}
.z-style-block a:hover,
.z-style-references a:hover,
.authority-link-box a:hover,
.editorial-link a:hover {
  border-bottom-color:var(--color-primary);
}
.z-style-notice {
  margin:1.4rem 0 2rem;
  padding:1.15rem 1.3rem;
  color:var(--color-primary-hover);
  background:linear-gradient(135deg, rgb(var(--color-background-rgb) / .94), rgba(255,255,255,.98));
}
.z-style-notice strong {
  color:var(--color-primary);
}
.editorial-standard-page {
  max-width:980px;
}
.editorial-standard-page .article-lead {
  color:var(--color-primary);
}
.editorial-link {
  margin:1.2rem 0 0;
  color:var(--color-primary);
}
.tool-info-box.z-style-references,
.tool-info-box.z-style-block {
  background:linear-gradient(180deg, rgb(var(--color-background-rgb) / .98), rgba(255,255,255,.98));
}
@media (max-width:640px) {
  .z-style-block,
  .z-style-references,
  .authority-link-box {
    margin:1.6rem 0;
    padding:1.15rem;
  }
}

/* === V45 bottom overscroll reveal: after-footer only, not behind the footer === */
footer.footer,
footer {
  position:relative;
  z-index:5;
}
.bottom-pull-easter,
.bottom-pull-easter.v10-pull-brand {
  display:none !important;
}
.z-bottom-overscroll {
  --z-bottom-pull:0px;
  --z-bottom-ratio:0;
  height:var(--z-bottom-pull, 0px) !important;
  min-height:0;
  width:100%;
  position:relative;
  z-index:1;
  overflow:hidden;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(ellipse at 50% 32%, rgba(255,255,255,.92), rgba(255,255,255,0) 44%),
    radial-gradient(ellipse at 50% 82%, rgb(var(--color-primary-rgb) / .2), rgba(255,255,255,0) 62%),
    linear-gradient(138deg, transparent 0 44%, rgb(var(--color-primary-rgb) / .06) 44.1% 44.24%, transparent 44.32% 100%),
    linear-gradient(180deg, #fff 0%, var(--color-background) 46%, var(--color-background) 100%);
  transition:height .24s cubic-bezier(.2,.72,.22,1), opacity .16s linear;
  contain:paint;
}
.z-bottom-overscroll.is-active {
  opacity:1;
}
.z-bottom-overscroll__scene {
  height:min(46vh, 34rem);
  min-height:18rem;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  transform:translate3d(0, calc((1 - var(--z-bottom-ratio)) * 5.2rem), 0);
  opacity:calc(.18 + var(--z-bottom-ratio) * .82);
  transition:transform .12s linear, opacity .12s linear;
}
.z-bottom-overscroll__scene::before,
.z-bottom-overscroll__scene::after {
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  pointer-events:none;
  transform:translate(-50%,-50%) scale(calc(.7 + var(--z-bottom-ratio) * .3));
}
.z-bottom-overscroll__scene::before {
  width:min(72rem, 96vw);
  height:min(24rem, 38vw);
  border-radius:50%;
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .19), rgb(var(--color-primary-rgb) / .07) 42%, transparent 72%);
  filter:blur(.3rem);
}
.z-bottom-overscroll__scene::after {
  width:min(92rem, 122vw);
  height:1px;
  background:linear-gradient(90deg, transparent, rgb(var(--color-primary-rgb) / .28), rgba(255,255,255,.9), rgb(var(--color-primary-rgb) / .22), transparent);
  box-shadow:
    0 3.7rem 0 rgb(var(--color-primary-rgb) / .08),
    0 -3.7rem 0 rgb(var(--color-primary-rgb) / .05);
  rotate:-13deg;
}
.z-bottom-overscroll__inner {
  position:relative;
  z-index:2;
  padding:2.4rem 1.4rem;
}
.z-bottom-overscroll__logo {
  font:900 clamp(4.8rem, 17vw, 11.4rem)/.82 Arial, Helvetica, sans-serif;
  letter-spacing:-.055em;
  color:var(--color-primary);
  opacity:.5;
  text-shadow:
    0 .85rem 1.9rem rgb(var(--color-primary-hover-rgb) / .08),
    0 0 calc(.7rem + var(--z-bottom-ratio) * 3.2rem) rgb(var(--color-primary-rgb) / .21);
  transform:scale(calc(.88 + var(--z-bottom-ratio) * .12));
}
.z-bottom-overscroll__logo sup {
  display:inline-block;
  font-size:.17em;
  line-height:0;
  vertical-align:super;
  letter-spacing:0;
  margin-left:.055em;
  transform:translateY(-.62em);
}
.z-bottom-overscroll__slogan {
  margin-top:1.2rem;
  color:var(--color-primary);
  font-size:clamp(1.35rem, 3vw, 2.1rem);
  line-height:1.35;
  font-style:italic;
  opacity:.5;
  text-shadow:0 0 1.7rem rgb(var(--color-primary-rgb) / .09);
}
.z-bottom-overscroll__hint {
  margin-top:.9rem;
  color:var(--color-primary);
  font-size:clamp(1.08rem, 2.4vw, 1.45rem);
  font-weight:700;
  opacity:0;
  transform:translateY(.5rem);
  transition:opacity .16s ease, transform .16s ease;
}
.z-bottom-overscroll.is-hint .z-bottom-overscroll__hint {
  opacity:.5;
  transform:translateY(0);
}
.z-bottom-overscroll__message {
  max-width:min(42rem, calc(100vw - 2rem));
  margin:.55rem auto 0;
  color:rgb(var(--color-primary-rgb) / .54);
  font-size:clamp(.82rem, 1.55vw, 1.02rem);
  line-height:1.35;
  font-weight:700;
  opacity:.5;
}
.z-bottom-overscroll__quantum {
  display:flex;
  justify-content:center;
  gap:.42rem;
  margin:1.05rem auto 0;
  opacity:0;
  transform:translateY(.45rem) scale(.92);
  transition:opacity .16s ease, transform .16s ease;
}
.z-bottom-overscroll__quantum span {
  width:.42rem;
  height:.42rem;
  border-radius:50%;
  background:rgb(var(--color-primary-rgb) / .5);
  box-shadow:0 0 .8rem rgb(var(--color-primary-rgb) / .38), 0 0 1.5rem rgba(255,255,255,.75);
  animation:zQuantumDot 1s ease-in-out infinite;
}
.z-bottom-overscroll__quantum span:nth-child(2) { animation-delay:.14s; }
.z-bottom-overscroll__quantum span:nth-child(3) { animation-delay:.28s; }
.z-bottom-overscroll.is-quantum-ready .z-bottom-overscroll__quantum {
  opacity:1;
  transform:translateY(0) scale(1);
}
.z-bottom-overscroll.is-glowing .z-bottom-overscroll__logo {
  text-shadow:
    0 0 .9rem rgba(255,255,255,.55),
    0 0 2.2rem rgb(var(--color-primary-rgb) / .42),
    0 0 6rem rgb(var(--color-primary-rgb) / .28);
}
.z-bottom-overscroll.is-boom .z-bottom-overscroll__logo {
  animation:zBottomBoomPulse 1.15s cubic-bezier(.16,.84,.32,1) both;
}
.z-bottom-overscroll .spark {
  position:absolute;
  width:.46rem;
  height:.46rem;
  border-radius:50%;
  background:var(--color-accent);
  box-shadow:0 0 1rem var(--color-accent), 0 0 2rem rgba(255,255,255,.9);
  animation:sparkle .85s ease-out forwards;
}
@keyframes zBottomBoomPulse {
  0% { transform:scale(calc(.88 + var(--z-bottom-ratio) * .12)); filter:none; }
  22% { transform:scale(1.12); filter:brightness(1.8); }
  100% { transform:scale(.94); filter:brightness(1); }
}
@keyframes zQuantumDot {
  0%, 100% { transform:translateY(0) scale(.72); opacity:.42; }
  46% { transform:translateY(-.26rem) scale(1.16); opacity:1; }
}
.z-boom-overlay {
  position:fixed;
  inset:0;
  z-index:2147483000;
  pointer-events:none;
  overflow:hidden;
  background:radial-gradient(circle at 50% 52%, rgba(255,255,255,.9), rgb(var(--color-surface-blue-rgb) / .32) 22%, rgb(var(--color-primary-rgb) / .1) 44%, rgba(255,255,255,0) 72%);
  animation:zBoomOverlayFade 1.45s cubic-bezier(.16,.84,.24,1) forwards;
}
.z-quantum-overlay {
  background:
    radial-gradient(circle at 50% 52%, rgba(255,255,255,.98), rgb(var(--color-surface-blue-rgb) / .62) 16%, rgb(var(--color-primary-rgb) / .22) 34%, rgba(255,255,255,0) 65%),
    linear-gradient(135deg, rgba(255,255,255,.76), rgb(var(--color-background-rgb) / .25));
  animation:zQuantumOverlayFade 1.12s cubic-bezier(.16,.84,.24,1) forwards;
}
.z-boom-overlay__flash,
.z-boom-overlay__ring,
.z-boom-overlay__core,
.z-boom-overlay__particles,
.z-quantum-overlay__field,
.z-quantum-overlay__ring,
.z-quantum-overlay__label {
  position:absolute;
  left:50%;
  top:52%;
  transform:translate(-50%,-50%);
}
.z-quantum-overlay__field {
  width:120vmax;
  height:120vmax;
  opacity:.56;
  background:
    linear-gradient(90deg, transparent 0 49.68%, rgb(var(--color-primary-rgb) / .13) 49.86% 50.14%, transparent 50.32% 100%),
    linear-gradient(0deg, transparent 0 49.68%, rgb(var(--color-primary-rgb) / .13) 49.86% 50.14%, transparent 50.32% 100%),
    radial-gradient(circle at center, rgba(255,255,255,.86), rgb(var(--color-accent-rgb) / .16) 23%, transparent 46%);
  background-size:6.2rem 6.2rem, 6.2rem 6.2rem, 100% 100%;
  border-radius:50%;
  filter:blur(.08rem);
  animation:zQuantumField 1.02s cubic-bezier(.16,.84,.24,1) forwards;
}
.z-boom-overlay__flash {
  width:32rem;
  height:32rem;
  max-width:86vw;
  max-height:86vw;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,1), rgb(var(--color-surface-blue-rgb) / .64) 34%, rgb(var(--color-primary-rgb) / .08) 68%, transparent 72%);
  animation:zBoomFlash 1.15s ease-out forwards;
}
.z-quantum-overlay .z-boom-overlay__flash {
  width:24rem;
  height:24rem;
  background:radial-gradient(circle, rgba(255,255,255,1), rgb(var(--color-accent-rgb) / .82) 28%, rgb(var(--color-primary-rgb) / .16) 62%, transparent 76%);
  animation:zQuantumFlash 1.08s ease-out forwards;
}
.z-boom-overlay__ring {
  width:7rem;
  height:7rem;
  border:.32rem solid rgb(var(--color-primary-rgb) / .28);
  border-radius:50%;
  box-shadow:0 0 2rem rgb(var(--color-primary-rgb) / .28), inset 0 0 2rem rgba(255,255,255,.72);
  animation:zBoomRing 1.25s cubic-bezier(.12,.78,.22,1) forwards;
}
.z-quantum-overlay .z-boom-overlay__ring,
.z-quantum-overlay__ring {
  width:6.6rem;
  height:6.6rem;
  border:.13rem solid rgb(var(--color-primary-rgb) / .42);
  border-radius:50%;
  box-shadow:0 0 2.4rem rgb(var(--color-primary-rgb) / .32), inset 0 0 2.2rem rgba(255,255,255,.9);
  animation:zQuantumRing 1.08s cubic-bezier(.12,.78,.22,1) forwards;
}
.z-quantum-overlay__ring--two {
  width:9.4rem;
  height:9.4rem;
  animation-delay:.06s;
  rotate:20deg;
}
.z-quantum-overlay__ring--three {
  width:12.2rem;
  height:12.2rem;
  animation-delay:.12s;
  rotate:-18deg;
}
.z-boom-overlay__core {
  color:rgb(var(--color-primary-rgb) / .34);
  font:900 clamp(4rem, 13vw, 12rem)/.82 Arial, Helvetica, sans-serif;
  letter-spacing:-.055em;
  text-shadow:0 0 2.4rem rgb(var(--color-primary-rgb) / .3);
  animation:zBoomCore 1.2s ease-out forwards;
}
.z-quantum-overlay .z-boom-overlay__core {
  color:rgb(var(--color-primary-rgb) / .46);
  font-size:clamp(3.8rem, 10.5vw, 8.5rem);
  text-shadow:0 0 1.9rem rgb(var(--color-primary-rgb) / .42), 0 0 4.6rem rgba(255,255,255,.9);
  animation:zQuantumCore 1.08s cubic-bezier(.16,.84,.24,1) forwards;
}
.z-boom-overlay__core sup {
  font-size:.18em;
  vertical-align:super;
  letter-spacing:0;
  margin-left:.05em;
}
.z-boom-overlay__particles span {
  position:absolute;
  left:0;
  top:0;
  width:.42rem;
  height:.42rem;
  border-radius:50%;
  background:var(--color-secondary);
  opacity:.75;
  transform:rotate(var(--a)) translateX(0) scale(var(--s));
  box-shadow:0 0 .8rem rgb(var(--color-secondary-rgb) / .8), 0 0 1.6rem rgba(255,255,255,.72);
  animation:zBoomParticle .92s cubic-bezier(.08,.76,.24,1) var(--delay) forwards;
}
.z-quantum-overlay .z-boom-overlay__particles span {
  width:.4rem;
  height:.4rem;
  border-radius:.06rem;
  background:var(--color-primary);
  opacity:.78;
  transform:rotate(var(--a)) translateX(0) scale(var(--s));
  box-shadow:0 0 .82rem rgb(var(--color-primary-rgb) / .86), 0 0 1.7rem rgba(255,255,255,.9);
  animation:zQuantumParticle .9s cubic-bezier(.08,.76,.24,1) var(--delay) forwards;
}
.z-quantum-overlay__label {
  top:calc(52% + 7rem);
  color:rgb(var(--color-primary-rgb) / .66);
  font:700 clamp(.86rem, 1.7vw, 1.18rem)/1.1 "Avenir Next", Arial, sans-serif;
  letter-spacing:.28em;
  text-transform:uppercase;
  text-shadow:0 0 1.3rem rgba(255,255,255,1), 0 0 1.9rem rgb(var(--color-primary-rgb) / .28);
  animation:zQuantumLabel 1s ease-out forwards;
}
html.z-boom-active body {
  animation:zQuantumPageBend .34s cubic-bezier(.2,.7,.25,1) 1;
}
@keyframes zQuantumOverlayFade {
  0% { opacity:0; }
  10% { opacity:1; }
  72% { opacity:.96; }
  100% { opacity:0; }
}
@keyframes zQuantumField {
  0% { transform:translate(-50%,-50%) scale(.22) rotate(0deg); opacity:0; }
  24% { opacity:.58; }
  100% { transform:translate(-50%,-50%) scale(1.12) rotate(20deg); opacity:0; }
}
@keyframes zBoomOverlayFade {
  0% { opacity:0; }
  8% { opacity:1; }
  100% { opacity:0; }
}
@keyframes zQuantumFlash {
  0% { transform:translate(-50%,-50%) scale(.08); opacity:0; }
  15% { opacity:1; }
  56% { opacity:.74; }
  100% { transform:translate(-50%,-50%) scale(2.15); opacity:0; }
}
@keyframes zBoomFlash {
  0% { transform:translate(-50%,-50%) scale(.14); opacity:0; }
  18% { opacity:1; }
  100% { transform:translate(-50%,-50%) scale(2.5); opacity:0; }
}
@keyframes zQuantumRing {
  0% { transform:translate(-50%,-50%) scale(.24) rotateX(58deg); opacity:.9; }
  100% { transform:translate(-50%,-50%) scale(7.4) rotateX(0deg); opacity:0; }
}
@keyframes zBoomRing {
  0% { transform:translate(-50%,-50%) scale(.2); opacity:.9; }
  100% { transform:translate(-50%,-50%) scale(7.2); opacity:0; }
}
@keyframes zQuantumCore {
  0% { transform:translate(-50%,-50%) scale(.72) rotateY(28deg); opacity:0; filter:blur(.3rem); }
  18% { opacity:.74; filter:blur(.04rem); }
  62% { transform:translate(-50%,-50%) scale(1) rotateY(0deg); opacity:.62; }
  100% { transform:translate(-50%,-50%) scale(1.2) rotateY(0deg); opacity:0; filter:blur(.42rem); }
}
@keyframes zBoomCore {
  0% { transform:translate(-50%,-50%) scale(.8) rotateX(18deg); opacity:.38; }
  45% { opacity:.3; }
  100% { transform:translate(-50%,-50%) scale(1.42) rotateX(0); opacity:0; }
}
@keyframes zQuantumParticle {
  0% { transform:rotate(var(--a)) translateX(0) scale(var(--s)) rotate(0deg); opacity:0; }
  14% { opacity:.86; }
  58% { opacity:.82; }
  100% { transform:rotate(var(--a)) translateX(var(--d)) scale(.08) rotate(160deg); opacity:0; }
}
@keyframes zBoomParticle {
  0% { transform:rotate(var(--a)) translateX(0) scale(var(--s)); opacity:.82; }
  100% { transform:rotate(var(--a)) translateX(var(--d)) scale(.15); opacity:0; }
}
@keyframes zQuantumLabel {
  0% { opacity:0; transform:translate(-50%,-50%) translateY(.6rem) scale(.9); filter:blur(.24rem); }
  28%, 66% { opacity:.72; transform:translate(-50%,-50%) translateY(0) scale(1); filter:blur(0); }
  100% { opacity:0; transform:translate(-50%,-50%) translateY(-.2rem) scale(1.04); filter:blur(.28rem); }
}
@keyframes zQuantumPageBend {
  0%,100% { transform:translate3d(0,0,0) scale(1); filter:none; }
  42% { transform:translate3d(0,-.06rem,0) scale(1.003); filter:brightness(1.04); }
}
@keyframes zBoomPageShake {
  0%,100% { transform:translate3d(0,0,0); }
  20% { transform:translate3d(.28rem,-.16rem,0); }
  45% { transform:translate3d(-.22rem,.12rem,0); }
  68% { transform:translate3d(.12rem,.08rem,0); }
}
@media (max-width:700px) {
  .z-bottom-overscroll__scene {
    min-height:16rem;
  }
  .z-bottom-overscroll__slogan {
    max-width:30rem;
    margin-left:auto;
    margin-right:auto;
  }
}

/* === V49 compact in-page parallax signature: slow pale background assembly === */
.z-parallax-finale {
  --z-grid:calc(.018 + var(--z-assemble, var(--z-progress, 0)) * .045);
  min-height:clamp(13.5rem, 16vw, 22rem) !important;
  margin:clamp(.8rem, 1.2vw, 1.6rem) 0 0 !important;
  padding:clamp(2rem, 2.8vw, 3.2rem) 1.4rem clamp(2.2rem, 3vw, 3.6rem) !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgb(var(--color-primary-rgb) / .052) 0%, rgb(var(--color-background-rgb) / .09) 34%, transparent 68%),
    linear-gradient(126deg, transparent 0 41%, rgb(var(--color-primary-rgb) / .018) 41.08% 41.18%, transparent 41.26% 100%),
    linear-gradient(151deg, transparent 0 58%, rgb(var(--color-primary-rgb) / .02) 58.08% 58.2%, transparent 58.28% 100%),
    linear-gradient(180deg, rgba(255,255,255,0), rgb(var(--color-background-rgb) / .2) 44%, rgba(255,255,255,0)) !important;
  box-shadow:
    inset 0 4rem 4rem -4rem #fff,
    inset 0 -4rem 4rem -4rem #fff !important;
}
.z-parallax-finale::before {
  width:min(88rem, 112vw) !important;
  height:clamp(11rem, 18vw, 19rem) !important;
  opacity:var(--z-grid) !important;
  background:
    linear-gradient(90deg, rgb(var(--color-primary-rgb) / .04) 1px, transparent 1px),
    linear-gradient(0deg, rgb(var(--color-primary-rgb) / .032) 1px, transparent 1px),
    radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .045), transparent 64%) !important;
  background-size:6.2rem 6.2rem, 6.2rem 6.2rem, 100% 100% !important;
  filter:blur(.08rem) !important;
}
.z-parallax-finale::after {
  width:min(38rem, 46vw) !important;
  height:min(14rem, 16vw) !important;
  opacity:calc(.025 + var(--z-assemble, var(--z-progress, 0)) * .045) !important;
  filter:blur(.16rem) !important;
}
.z-parallax-word {
  font-size:clamp(4.8rem, 8vw, 9rem) !important;
  opacity:calc(.045 + var(--z-assemble, var(--z-progress, 0)) * .115) !important;
  filter:drop-shadow(0 .25rem .7rem rgb(var(--color-primary-hover-rgb) / .035)) !important;
  transform:
    translate3d(0, calc(var(--z-flight, 0) * .45rem), 0)
    rotateX(calc(var(--z-flight, 0) * 2deg))
    scale(calc(.98 + var(--z-assemble, var(--z-progress, 0)) * .02)) !important;
}
.z-letter,
.z-reg {
  background:linear-gradient(180deg, rgb(var(--color-surface-blue-rgb) / .34), rgb(var(--color-primary-rgb) / .28) 58%, rgb(var(--color-primary-rgb) / .24)) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  filter:none !important;
}
.z-letter::before,
.z-letter::after,
.z-parallax-word::before {
  display:none !important;
}
.z-l1,
.z-l2,
.z-l3,
.z-l4,
.z-reg {
  transform:
    translate3d(0, calc(var(--z-flight, 0) * .2rem), 0)
    rotateZ(calc(var(--z-flight, 0) * .8deg)) !important;
}
.z-l1 {
  transform:
    translate3d(calc(var(--z-flight, 0) * -5.6rem), calc(var(--z-flight, 0) * -.55rem), 0)
    rotateZ(calc(var(--z-flight, 0) * -2.6deg)) !important;
}
.z-l2 {
  transform:
    translate3d(calc(var(--z-flight, 0) * -2.1rem), calc(var(--z-flight, 0) * .42rem), 0)
    rotateZ(calc(var(--z-flight, 0) * 1.7deg)) !important;
}
.z-l3 {
  transform:
    translate3d(calc(var(--z-flight, 0) * 2.1rem), calc(var(--z-flight, 0) * -.42rem), 0)
    rotateZ(calc(var(--z-flight, 0) * -1.7deg)) !important;
}
.z-l4 {
  transform:
    translate3d(calc(var(--z-flight, 0) * 5.6rem), calc(var(--z-flight, 0) * .55rem), 0)
    rotateZ(calc(var(--z-flight, 0) * 2.6deg)) !important;
}
.z-reg {
  transform:
    translate3d(calc(var(--z-flight, 0) * 2.4rem), calc(var(--z-flight, 0) * -1rem), 0)
    rotateZ(calc(var(--z-flight, 0) * 2deg)) !important;
}
.z-parallax-slogan {
  max-width:min(62rem, calc(100% - 2rem)) !important;
  margin:.7rem auto 0 !important;
  padding:0 !important;
  color:rgb(var(--color-primary-rgb) / .44) !important;
  font-size:clamp(1.1rem, 1.6vw, 1.55rem) !important;
  line-height:1.34 !important;
  opacity:calc(.09 + var(--z-assemble, var(--z-progress, 0)) * .2) !important;
  text-shadow:none !important;
  transform:translate3d(0, calc(var(--z-flight, 0) * .35rem), 0) !important;
}
.z-parallax-slogan::before {
  width:min(18rem, 42vw) !important;
  margin:0 auto .45rem !important;
  opacity:calc(.055 + var(--z-assemble, var(--z-progress, 0)) * .09) !important;
}
.z-sport-orbit {
  opacity:calc(.02 + var(--z-assemble, var(--z-progress, 0)) * .04) !important;
}
.z-sport-orbit span,
.z-sport-orbit::before,
.z-sport-orbit::after {
  filter:none !important;
}
.z-left .z-dumbbell,
.z-right .z-barbell,
.z-right .z-dumbbell {
  width:clamp(8rem, 11vw, 14rem) !important;
  opacity:calc(.06 + var(--z-assemble, var(--z-progress, 0)) * .06) !important;
}
.z-plate,
.z-kettlebell {
  opacity:calc(.055 + var(--z-assemble, var(--z-progress, 0)) * .05) !important;
}
@media (max-width:700px) {
  .z-parallax-finale {
    min-height:13rem !important;
    padding:2rem 1.2rem 2.3rem !important;
  }
  .z-parallax-word {
    font-size:clamp(4.2rem, 18vw, 6.6rem) !important;
  }
  .z-parallax-slogan {
    font-size:1.05rem !important;
  }
  .z-sport-orbit {
    display:none !important;
  }
}

/* === V50 footer-background ZPHC assembly: 3% to 15%, slow and reversible === */
.z-parallax-finale {
  --z-assemble:var(--z-ease, var(--z-progress, 0));
  --z-flight:calc(1 - var(--z-assemble));
  min-height:clamp(11.6rem, 13.2vw, 17.2rem) !important;
  margin:0 !important;
  padding:clamp(1.3rem, 2vw, 2.2rem) 1rem clamp(1.4rem, 2.2vw, 2.6rem) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:
    radial-gradient(ellipse at 50% 56%, rgb(var(--color-primary-rgb) / .035), rgba(255,255,255,0) 62%),
    linear-gradient(135deg, transparent 0 48%, rgb(var(--color-primary-rgb) / .022) 48.08% 48.18%, transparent 48.28% 100%),
    linear-gradient(180deg, rgba(255,255,255,0), rgb(var(--color-background-rgb) / .16) 52%, rgba(255,255,255,0)) !important;
  box-shadow:
    inset 0 3rem 3rem -3rem #fff,
    inset 0 -3rem 3rem -3rem #fff !important;
  border:0 !important;
  overflow:hidden !important;
}
.z-parallax-finale::before {
  width:min(92rem, 116vw) !important;
  height:clamp(10rem, 16vw, 18rem) !important;
  opacity:calc(.012 + var(--z-assemble) * .04) !important;
  background:
    linear-gradient(90deg, rgb(var(--color-primary-rgb) / .036) 1px, transparent 1px),
    linear-gradient(0deg, rgb(var(--color-primary-rgb) / .026) 1px, transparent 1px),
    radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .04), transparent 68%) !important;
  background-size:7rem 7rem, 7rem 7rem, 100% 100% !important;
  transform:
    translate3d(-50%, -54%, -10rem)
    rotateX(66deg)
    rotateZ(-15deg)
    translateY(calc(var(--z-flight) * -6rem)) !important;
}
.z-parallax-finale::after {
  width:min(44rem, 52vw) !important;
  height:min(15rem, 17vw) !important;
  opacity:calc(.018 + var(--z-assemble) * .05) !important;
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .08), rgb(var(--color-primary-rgb) / .025) 46%, transparent 74%) !important;
  filter:blur(.22rem) !important;
}
.z-parallax-word {
  position:relative !important;
  z-index:2 !important;
  font-size:clamp(7rem, 8.8vw, 10.8rem) !important;
  line-height:.8 !important;
  opacity:calc(.03 + var(--z-assemble) * .12) !important;
  filter:
    drop-shadow(0 .32rem .8rem rgb(var(--color-primary-hover-rgb) / .035))
    drop-shadow(0 0 calc(var(--z-assemble) * 2.2rem) rgb(var(--color-accent-rgb) / .42)) !important;
  transform:
    translate3d(0, calc(var(--z-flight) * -5.2rem), calc(var(--z-flight) * -2rem))
    rotateX(calc(var(--z-flight) * 10deg))
    scale(calc(.95 + var(--z-assemble) * .05)) !important;
}
.z-letter,
.z-reg {
  background:linear-gradient(180deg, rgb(var(--color-surface-blue-rgb) / .88), rgb(var(--color-primary-rgb) / .82) 58%, rgb(var(--color-primary-rgb) / .76)) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:var(--color-primary) !important;
  opacity:1 !important;
  transition:none !important;
  will-change:transform !important;
}
.z-l1 {
  transform:
    translate3d(calc(var(--z-flight) * -28vw), calc(var(--z-flight) * -8.4rem), calc(var(--z-flight) * -14rem))
    rotateX(calc(var(--z-flight) * 24deg))
    rotateY(calc(var(--z-flight) * -56deg))
    rotateZ(calc(var(--z-flight) * -18deg)) !important;
}
.z-l2 {
  transform:
    translate3d(calc(var(--z-flight) * -10vw), calc(var(--z-flight) * -12rem), calc(var(--z-flight) * -10rem))
    rotateX(calc(var(--z-flight) * -20deg))
    rotateY(calc(var(--z-flight) * 40deg))
    rotateZ(calc(var(--z-flight) * 13deg)) !important;
}
.z-l3 {
  transform:
    translate3d(calc(var(--z-flight) * 10vw), calc(var(--z-flight) * -11rem), calc(var(--z-flight) * -10rem))
    rotateX(calc(var(--z-flight) * 20deg))
    rotateY(calc(var(--z-flight) * -40deg))
    rotateZ(calc(var(--z-flight) * -13deg)) !important;
}
.z-l4 {
  transform:
    translate3d(calc(var(--z-flight) * 28vw), calc(var(--z-flight) * -8.4rem), calc(var(--z-flight) * -14rem))
    rotateX(calc(var(--z-flight) * -24deg))
    rotateY(calc(var(--z-flight) * 56deg))
    rotateZ(calc(var(--z-flight) * 18deg)) !important;
}
.z-reg {
  transform:
    translate3d(calc(var(--z-flight) * 16vw), calc(var(--z-flight) * -13rem), calc(var(--z-flight) * -8rem))
    rotateX(calc(var(--z-flight) * 22deg))
    rotateY(calc(var(--z-flight) * 42deg))
    rotateZ(calc(var(--z-flight) * 22deg)) !important;
}
.z-parallax-slogan {
  display:none !important;
}
.z-sport-orbit {
  opacity:calc(.012 + var(--z-assemble) * .035) !important;
}
.z-sport-orbit span,
.z-sport-orbit::before,
.z-sport-orbit::after {
  opacity:.45 !important;
  filter:none !important;
}
@media (max-width:700px) {
  .z-parallax-finale {
    min-height:10.5rem !important;
    padding:1.2rem .8rem 1.5rem !important;
  }
  .z-parallax-word {
    font-size:clamp(5rem, 20vw, 7.2rem) !important;
    opacity:calc(.035 + var(--z-assemble) * .11) !important;
  }
  .z-l1,
  .z-l4 {
    transform:
      translate3d(calc(var(--z-flight) * 20vw), calc(var(--z-flight) * -6rem), 0)
      rotateZ(calc(var(--z-flight) * 12deg)) !important;
  }
  .z-l2,
  .z-l3,
  .z-reg {
    transform:
      translate3d(calc(var(--z-flight) * -12vw), calc(var(--z-flight) * -7rem), 0)
    rotateZ(calc(var(--z-flight) * -9deg)) !important;
  }
}

/* === V51 full-page background letter flight layer === */
body {
  position:relative;
}
.header,
main,
.z-parallax-finale,
footer.footer,
footer {
  position:relative;
  z-index:1;
}
.z-page-flight {
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:0;
  perspective:90rem;
  perspective-origin:50% 42%;
  contain:layout paint style;
  transition:opacity .18s linear;
}
.z-page-flight__letter {
  position:absolute;
  left:0;
  top:0;
  display:block;
  font-family:Arial, Helvetica, sans-serif;
  font-weight:900;
  font-size:clamp(6rem, 8.8vw, 10.8rem);
  line-height:.8;
  letter-spacing:0;
  color:var(--color-primary);
  background:linear-gradient(180deg, rgb(var(--color-surface-blue-rgb) / .9), rgb(var(--color-primary-rgb) / .84) 58%, rgb(var(--color-primary-rgb) / .74));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:none;
  filter:
    drop-shadow(0 .35rem .8rem rgb(var(--color-primary-hover-rgb) / .035))
    drop-shadow(0 0 calc(var(--z-page-flight-progress, 0) * 2.2rem) rgb(var(--color-accent-rgb) / .38));
  opacity:.03;
  transform:translate3d(-100vw,-100vh,0);
  transform-style:preserve-3d;
  will-change:transform, opacity;
}
.z-page-flight__letter::before,
.z-page-flight__letter::after {
  content:"";
  position:absolute;
  left:52%;
  top:52%;
  width:.34rem;
  height:.34rem;
  border-radius:.08rem;
  pointer-events:none;
  opacity:var(--z-pixel-alpha, 0);
  background:rgb(var(--color-accent-rgb) / .62);
  -webkit-text-fill-color:initial;
  transform:
    translate3d(var(--z-pixel-dx, 0), var(--z-pixel-dy, 0), -3rem)
    rotateZ(calc(var(--z-page-flight-progress, 0) * 180deg));
  filter:blur(.02rem);
  box-shadow:
    -1.15rem -.55rem 0 rgb(var(--color-primary-rgb) / .34),
    -.62rem .95rem 0 rgb(var(--color-surface-blue-rgb) / .4),
    .82rem -.95rem 0 rgb(var(--color-primary-rgb) / .24),
    1.42rem .48rem 0 rgb(var(--color-secondary-rgb) / .34),
    -.2rem 1.58rem 0 rgba(255,255,255,.34);
}
.z-page-flight__letter::after {
  width:.22rem;
  height:.22rem;
  left:47%;
  top:45%;
  opacity:calc(var(--z-pixel-alpha, 0) * .74);
  background:rgba(255,255,255,.62);
  transform:
    translate3d(calc(var(--z-pixel-dx, 0) * -1.15), calc(var(--z-pixel-dy, 0) * -.92), -5rem)
    rotateZ(calc(var(--z-page-flight-progress, 0) * -220deg));
  box-shadow:
    -1.45rem .18rem 0 rgb(var(--color-accent-rgb) / .32),
    -.72rem -.88rem 0 rgb(var(--color-primary-rgb) / .28),
    .72rem .76rem 0 rgba(255,255,255,.38),
    1.52rem -.34rem 0 rgb(var(--color-primary-rgb) / .27);
}
.z-page-flight__letter.zf-r {
  font-size:clamp(1.6rem, 2.2vw, 2.8rem);
  font-weight:800;
}
@media (max-width:700px) {
  .z-page-flight__letter {
    font-size:clamp(4.2rem, 19vw, 7rem);
  }
  .z-page-flight__letter.zf-r {
    font-size:clamp(1.2rem, 6vw, 2rem);
  }
}
@media (prefers-reduced-motion: reduce) {
  .z-page-flight {
    display:none !important;
  }
}

/* === V53 tablet menu: independent floating pills, no outer frame === */
@media (max-width:950px) {
  .top-menu,
  .header.active .top-menu {
    gap:.62rem !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    overflow:visible !important;
  }
  .top-menu__item,
  .header.active .top-menu__item,
  .top-menu__item:not(:last-child),
  .header.active .top-menu__item:not(:last-child) {
    border:0 !important;
    background:transparent !important;
    overflow:visible !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:4.55rem !important;
    border-radius:999px !important;
    border:1px solid rgb(var(--color-primary-rgb) / .9) !important;
    background:
      linear-gradient(180deg, rgb(var(--color-accent-rgb) / .78) 0%, rgb(var(--color-primary-rgb) / .98) 31%, var(--color-primary) 100%) !important;
    color:#fff !important;
    box-shadow:
      0 .55rem 1.25rem rgb(var(--color-primary-rgb) / .16),
      inset 0 .12rem 0 rgba(255,255,255,.42),
      inset 0 -.12rem .24rem rgb(var(--color-primary-rgb) / .35) !important;
    transform:translateZ(0) scale(1) !important;
    transform-origin:center !important;
    transition:
      transform .18s cubic-bezier(.18,.84,.32,1),
      box-shadow .18s ease,
      border-color .18s ease,
      filter .18s ease !important;
    will-change:transform !important;
  }
  .top-menu__item.active .top-menu__link,
  .header.active .top-menu__item.active .top-menu__link {
    border-color:rgba(255,255,255,.76) !important;
    box-shadow:
      0 .7rem 1.55rem rgb(var(--color-primary-rgb) / .2),
      0 0 1.35rem rgb(var(--color-accent-rgb) / .22),
      inset 0 .12rem 0 rgba(255,255,255,.52),
      inset 0 -.12rem .24rem rgb(var(--color-primary-rgb) / .32) !important;
  }
  .top-menu__item:hover,
  .top-menu__item:focus-within,
  .header.active .top-menu__item:hover,
  .header.active .top-menu__item:focus-within {
    z-index:4 !important;
  }
  .top-menu__link:hover,
  .top-menu__link:focus-visible,
  .header.active .top-menu__link:hover,
  .header.active .top-menu__link:focus-visible {
    transform:translateZ(0) scale(1.1) !important;
    border-color:rgba(255,255,255,.86) !important;
    color:#fff !important;
    filter:saturate(1.08) brightness(1.04) !important;
    box-shadow:
      0 .95rem 2.15rem rgb(var(--color-primary-rgb) / .28),
      0 0 2.2rem rgb(var(--color-accent-rgb) / .38),
      0 0 .5rem rgba(255,255,255,.54),
      inset 0 .15rem 0 rgba(255,255,255,.62),
      inset 0 -.12rem .28rem rgb(var(--color-primary-rgb) / .28) !important;
    outline:none !important;
  }
}

@media (min-width:560px) and (max-width:950px) {
  .header-nav {
    --header-left-size:clamp(34rem, 58vw, 43rem) !important;
    --header-menu-size:clamp(17rem, 24vw, 21rem) !important;
    grid-template-columns:minmax(0, var(--header-left-size)) var(--header-menu-size) !important;
    column-gap:clamp(1.2rem, 2vw, 1.8rem) !important;
    justify-content:center !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:4.7rem !important;
    padding:.45rem .82rem !important;
  }
}

@media (max-width:559px) {
  .top-menu,
  .header.active .top-menu {
    gap:.52rem !important;
  }
}

/* === V54 footer globe placement and parallax slogan restore === */
.logo-panda {
  display:none !important;
}
.footer-globe-brand {
  display:flex;
  justify-content:center;
  align-items:center;
  position:relative;
  margin:1.05rem auto .25rem !important;
  padding:.15rem 0 0 !important;
}
.footer-globe-brand a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  position:relative;
  isolation:isolate;
  line-height:0;
  text-decoration:none;
}
.footer-globe-brand a::before {
  content:"";
  position:absolute;
  left:50%;
  top:55%;
  z-index:0;
  width:142%;
  height:122%;
  transform:translate(-50%, -50%);
  border-radius:50%;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 72%, rgba(255,255,255,.96) 0 17%, rgba(255,255,255,.76) 29%, rgba(255,255,255,.34) 47%, rgba(255,255,255,0) 72%),
    radial-gradient(ellipse at 50% 50%, rgba(255,255,255,.58) 0 24%, rgba(255,255,255,.26) 43%, rgba(255,255,255,0) 68%);
  filter:blur(.28rem);
}
.footer-globe-brand a::after {
  content:"";
  position:absolute;
  left:50%;
  bottom:2%;
  z-index:0;
  width:72%;
  height:24%;
  transform:translateX(-50%);
  border-radius:999px;
  pointer-events:none;
  background:radial-gradient(ellipse at 50% 50%, rgba(255,255,255,.94) 0 28%, rgba(255,255,255,.48) 56%, rgba(255,255,255,0) 78%);
  filter:blur(.18rem);
}
.footer-globe-brand img {
  display:block;
  position:relative;
  z-index:1;
  width:clamp(9rem, 9vw, 11.5rem);
  max-width:32vw;
  height:auto;
  opacity:.88;
  filter:drop-shadow(0 .4rem 1.15rem rgba(255,255,255,.18));
}
.footer-nav__copyright {
  margin-top:.95rem !important;
}
.z-parallax-finale .z-parallax-slogan {
  display:block !important;
  max-width:min(62rem, calc(100% - 2rem)) !important;
  margin:.7rem auto 0 !important;
  padding:0 !important;
  color:rgb(var(--color-primary-rgb) / .52) !important;
  font-size:clamp(1.02rem, 1.45vw, 1.38rem) !important;
  line-height:1.34 !important;
  font-style:italic !important;
  text-align:center !important;
  opacity:calc(.02 + var(--z-assemble, var(--z-progress, 0)) * .26) !important;
  text-shadow:0 0 1.35rem rgb(var(--color-accent-rgb) / .18) !important;
  transform:translate3d(0, calc(var(--z-flight, 0) * .32rem), 0) !important;
}
.z-parallax-finale .z-parallax-slogan::before {
  display:none !important;
}
@media (max-width:700px) {
  .footer-globe-brand img {
    width:9rem;
    max-width:38vw;
  }
  .z-parallax-finale .z-parallax-slogan {
    font-size:1rem !important;
    max-width:calc(100% - 2.6rem) !important;
  }
}

/* === V66 tighter footer spacing and compact globe cloud === */
.footer {
  padding:2.35rem 0 2rem !important;
}
.footer .footer__container {
  max-width:min(132rem, calc(100% - 4rem)) !important;
}
.footer-logo {
  margin-bottom:.85rem !important;
}
.footer-nav__logo {
  max-width:13.8rem !important;
  margin:0 auto 1rem !important;
}
.footer-nav,
.footer-nav__col {
  margin-bottom:.35rem !important;
}
.footer-nav__ul {
  max-width:min(126rem, calc(100% - 2rem)) !important;
  gap:.48rem 1.18rem !important;
  margin:0 auto 1rem !important;
}
.footer-nav__item {
  margin-bottom:0 !important;
}
.footer-nav__link {
  display:inline-block !important;
  margin:.18rem .24rem !important;
  font-size:1.23rem !important;
  line-height:1.25 !important;
}
.footer-contacts {
  margin:.85rem auto 1rem !important;
  gap:.55rem 1.08rem !important;
}
.footer-contacts .social-icon {
  width:2.35rem !important;
  height:2.35rem !important;
}
.footer__disclaimer {
  max-width:min(118rem, calc(100% - 4rem)) !important;
  padding:1rem 0 .82rem !important;
  margin:.55rem auto .48rem !important;
}
.footer__disclaimer .disclaimer-p {
  max-width:min(112rem, calc(100% - 2rem)) !important;
  margin:0 auto !important;
  font-size:1.05rem !important;
  line-height:1.46 !important;
}
.footer-globe-brand {
  margin:.58rem auto .58rem !important;
  padding:0 !important;
}
.footer-globe-brand a::before {
  left:61%;
  top:80%;
  width:66%;
  height:36%;
  background:
    radial-gradient(ellipse at 58% 58%, rgba(255,255,255,.98) 0 22%, rgba(255,255,255,.82) 38%, rgba(255,255,255,.34) 58%, rgba(255,255,255,0) 76%);
  filter:blur(.13rem);
}
.footer-globe-brand a::after {
  left:62%;
  bottom:0;
  width:58%;
  height:15%;
  background:radial-gradient(ellipse at 50% 50%, rgba(255,255,255,.96) 0 26%, rgba(255,255,255,.56) 52%, rgba(255,255,255,0) 76%);
  filter:blur(.09rem);
}
.footer-globe-brand img {
  width:clamp(8.8rem, 7.4vw, 10.2rem) !important;
  max-width:28vw !important;
}
.footer-nav__copyright {
  margin-top:.58rem !important;
  margin-bottom:0 !important;
}
.footer-nav__copyright,
.footer-nav__copyright a {
  font-size:1.16rem !important;
  line-height:1.3 !important;
}
@media (min-width:1200px) {
  .footer__disclaimer .disclaimer-p {
    max-width:124rem !important;
    font-size:1.08rem !important;
  }
  .footer-nav__ul {
    max-width:132rem !important;
  }
}
@media (max-width:700px) {
  .footer {
    padding:2.1rem 1.25rem 1.85rem !important;
  }
  .footer .footer__container,
  .footer__disclaimer {
    max-width:100% !important;
  }
  .footer-nav__ul {
    gap:.58rem .9rem !important;
    margin-bottom:.85rem !important;
  }
  .footer-nav__link {
    font-size:1.12rem !important;
  }
  .footer__disclaimer {
    padding:.88rem 0 .72rem !important;
  }
  .footer__disclaimer .disclaimer-p {
    font-size:.98rem !important;
    line-height:1.42 !important;
  }
  .footer-globe-brand {
    margin:.52rem auto .55rem !important;
  }
  .footer-globe-brand img {
    width:8.35rem !important;
    max-width:36vw !important;
  }
  .footer-globe-brand a::before {
    left:61%;
    top:80%;
    width:67%;
    height:36%;
  }
}

/* === V56 contact form: optional contact channels and clearer request guidance === */
.contact-form .form {
  max-width:min(92rem, calc(100% - 2rem)) !important;
}
.contact-optional-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:1.4rem 1.8rem;
  margin:.2rem 0 2.2rem;
}
.contact-optional-field {
  margin-bottom:0 !important;
}
.contact-form .input__data,
.contact-form .textarea {
  border:2px solid var(--color-background);
  box-shadow:0 .4rem 1.2rem rgb(var(--color-primary-rgb) / .035);
  transition:border-color .2s ease, box-shadow .2s ease;
}
.contact-form .input__data:focus,
.contact-form .textarea:focus {
  border-color:var(--color-secondary) !important;
  box-shadow:0 0 0 .32rem rgb(var(--color-secondary-rgb) / .16), 0 .8rem 1.8rem rgb(var(--color-primary-rgb) / .08) !important;
}
/* a keyboard visitor gets the site's ring here too — the :focus glow above used to win */
.contact-form .input__data:focus-visible,
.contact-form .textarea:focus-visible {
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.24rem !important;
  box-shadow:0 0 0 .57rem rgba(255,255,255,.9), 0 0 0 .87rem var(--color-primary) !important;
}
.contact-form .input__data::placeholder,
.contact-form .textarea::placeholder {
  color:var(--color-primary);
  font-size:clamp(.95rem, 3.2vw, 1.42rem); /* the hint has to fit the field on a phone in every language */
  line-height:1.42;
  opacity:1;
}
.contact-form .textarea {
  min-height:32rem;
  resize:vertical;
}
.contact-message-help {
  margin:0 0 1.2rem;
  padding:1.55rem 1.75rem 1.55rem 1.95rem;
  border:2px solid var(--color-surface-blue);
  border-left:.8rem solid var(--color-primary);
  border-radius:1rem;
  background:linear-gradient(180deg, var(--color-background), #fbfdff);
  color:var(--color-primary-hover);
  font-size:1.42rem;
  line-height:1.48;
  box-shadow:0 .9rem 2.5rem rgb(var(--color-primary-rgb) / .11);
}
.contact-message-help p {
  margin:0 0 .65rem;
}
.contact-message-help p:first-child {
  color:var(--color-primary);
  font-weight:800;
}
.contact-message-help ul {
  margin:0 0 .7rem;
  padding-left:1.65rem;
}
.contact-message-help li {
  margin:.22rem 0;
}
.contact-message-note {
  color:var(--color-primary);
  font-size:1.22rem;
}
.message-rule {
  margin:.9rem 0 0;
  padding:1rem 1.2rem;
  border-radius:.9rem;
  font-size:1.34rem;
  line-height:1.35;
  font-weight:800;
  border:2px solid var(--color-background);
  background:var(--color-background);
  color:var(--color-primary);
}
.message-rule.is-warning {
  border-color:#c91535;
  background:#fff1f3;
  color:#8d0f24;
  box-shadow:0 0 0 .28rem rgba(201,21,53,.1);
}
.message-rule.is-ok {
  border-color:#2e8b57;
  background:#f0fff6;
  color:#145c34;
}
.contact-form .input__data.is-invalid,
.contact-form .textarea.is-invalid {
  border-color:#c91535 !important;
  background:#fff7f8;
  box-shadow:0 0 0 .35rem rgba(201,21,53,.14), 0 .8rem 2rem rgba(201,21,53,.08) !important;
}
.contact-form .input__data.is-valid,
.contact-form .textarea.is-valid {
  border:2px solid #2e8b57 !important;
  background:#fbfffd;
  box-shadow:0 0 0 .24rem rgba(46,139,87,.1), 0 .6rem 1.6rem rgb(var(--color-primary-rgb) / .055) !important;
}
.contact-form .input__data:invalid:not(.is-invalid),
.contact-form .textarea:invalid:not(.is-invalid) {
  border-color:var(--color-background) !important;
}
.input-checkbox__row.is-invalid {
  margin:.35rem 0 .55rem;
  padding:.7rem .9rem;
  border:2px solid #c91535 !important;
  border-radius:.8rem;
  background:#fff1f3;
  color:#731225;
  box-shadow:0 0 0 .22rem rgba(201,21,53,.09);
}
#alert.contact-validation-alert {
  display:block !important;
  margin:2rem 0 1.6rem;
  padding:2.1rem 2.3rem !important;
  border:3px solid #c91535 !important;
  border-left-width:.9rem !important;
  border-radius:1.1rem !important;
  background:#fff0f2 !important;
  color:#731225 !important;
  text-align:start !important;
  box-shadow:0 1rem 3rem rgba(201,21,53,.18), 0 0 0 .32rem rgba(201,21,53,.08);
}
#alert.contact-validation-alert .feedback-msg-subtitle {
  margin:0 0 1rem;
  color:#731225 !important;
  font-size:1.85rem !important;
  line-height:1.25;
  text-align:start;
  font-weight:900;
}
.contact-validation-list {
  margin:0;
  padding-left:2.2rem;
  font-size:1.45rem;
  line-height:1.55;
  font-weight:700;
}
.contact-validation-list li:not(:last-child) {
  margin-bottom:.35rem;
}
[dir="rtl"] .contact-message-help {
  border-left:2px solid var(--color-surface-blue);
  border-right:.8rem solid var(--color-primary);
  text-align:right;
}
[dir="rtl"] .contact-message-help ul {
  padding-left:0;
  padding-right:1.65rem;
}
@media (max-width:700px) {
  .contact-optional-grid {
    grid-template-columns:1fr;
    gap:1.2rem;
  }
  .contact-form .textarea {
    min-height:26rem;
  }
  .contact-message-help {
    font-size:1.24rem;
    padding:1.2rem 1.3rem;
  }
  #alert.contact-validation-alert {
    padding:1.6rem 1.5rem !important;
  }
  .contact-validation-list {
    font-size:1.3rem;
  }
}

/* Homepage talent phrases: one visible line group, slow designer transitions. */
.hero .hero__container {
  max-width:min(98rem, 92vw) !important;
}
.hero-phrase-rotator {
  position:relative;
  display:block;
  width:min(84rem, 84vw);
  min-height:clamp(9.2rem, 11vw, 14.8rem);
  margin:.6rem auto 0;
  overflow:hidden;
  font-family:"Avenir Next", "Helvetica Neue", "Segoe UI", Arial, sans-serif;
  font-size:clamp(1.75rem, 1.9vw, 2.45rem) !important;
  font-weight:400;
  line-height:1.22 !important;
  letter-spacing:.02em;
  text-align:center;
  white-space:normal !important;
}
.hero-phrase {
  --hero-x:0rem;
  --hero-y:1.4rem;
  --hero-rotate:0deg;
  --hero-scale:.985;
  --hero-leave-x:0rem;
  --hero-leave-y:-1rem;
  --hero-leave-rotate:0deg;
  --hero-leave-scale:1.01;
  position:absolute;
  top:50%;
  left:50%;
  display:block;
  width:100%;
  max-width:100%;
  padding:0 clamp(1rem, 2vw, 2.4rem);
  color:#fff;
  white-space:normal !important;
  overflow-wrap:normal;
  word-break:normal;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate3d(calc(-50% + var(--hero-x)), calc(-50% + var(--hero-y)), 0) rotate(var(--hero-rotate)) scale(var(--hero-scale));
  filter:blur(.35rem);
  text-wrap:balance;
  text-shadow:0 .12rem .28rem rgba(0,0,0,.46), 0 0 1.2rem rgba(255,255,255,.13);
  transition:
    opacity 1.8s ease,
    transform 1.8s cubic-bezier(.16, 1, .3, 1),
    filter 1.8s ease,
    text-shadow 1.8s ease,
    visibility 0s linear 1.8s;
}
.hero-phrase.is-active {
  opacity:1;
  visibility:visible;
  transform:translate3d(-50%, -50%, 0) rotate(0deg) scale(1);
  filter:blur(0);
  text-shadow:0 .12rem .28rem rgba(0,0,0,.46), 0 0 1.6rem rgba(255,255,255,.18);
  transition-delay:0s;
}
.hero-phrase.is-leaving {
  opacity:0;
  visibility:visible;
  transform:translate3d(calc(-50% + var(--hero-leave-x)), calc(-50% + var(--hero-leave-y)), 0) rotate(var(--hero-leave-rotate)) scale(var(--hero-leave-scale));
  filter:blur(.45rem);
  transition-duration:1.7s;
}
.hero-phrase.effect-rise { --hero-y:1.6rem; --hero-leave-y:-1.2rem; }
.hero-phrase.effect-drift { --hero-x:-2.2rem; --hero-y:.4rem; --hero-leave-x:2rem; --hero-leave-y:-.5rem; }
.hero-phrase.effect-zoom { --hero-scale:.94; --hero-leave-scale:1.035; }
.hero-phrase.effect-tilt { --hero-y:1rem; --hero-rotate:-1.4deg; --hero-leave-y:-1rem; --hero-leave-rotate:1.2deg; }
.hero-phrase.effect-focus { --hero-y:0rem; --hero-scale:1.025; --hero-leave-y:0rem; --hero-leave-scale:.975; }
.hero-phrase.effect-wave { --hero-x:1.7rem; --hero-y:1rem; --hero-rotate:-.8deg; --hero-leave-x:-1.6rem; --hero-leave-y:-.8rem; --hero-leave-rotate:.6deg; }
.hero-phrase.effect-lift { --hero-y:2rem; --hero-scale:.985; --hero-leave-y:-1.6rem; --hero-leave-scale:.99; }
.hero-phrase.effect-glow { --hero-y:.8rem; --hero-scale:.98; --hero-leave-y:-.8rem; --hero-leave-scale:1.02; }
.hero-phrase.effect-slide { --hero-x:2.4rem; --hero-y:0rem; --hero-leave-x:-2.2rem; --hero-leave-y:0rem; }
.hero-phrase.effect-depth { --hero-y:.8rem; --hero-scale:.97; --hero-leave-y:-.6rem; --hero-leave-scale:1.02; }
.hero-phrase.effect-soft-spin { --hero-y:0rem; --hero-rotate:-1.4deg; --hero-scale:.98; --hero-leave-y:0rem; --hero-leave-rotate:1.2deg; --hero-leave-scale:1.02; }
.hero-phrase.effect-pixel { --hero-y:1rem; --hero-scale:.985; --hero-leave-y:-1rem; --hero-leave-scale:1.015; }
.hero-phrase .brand-inline {
  display:inline !important;
  white-space:nowrap !important;
  font:inherit !important;
}
.hero-phrase .reg-mark {
  font-size:.36em !important;
  top:-.38em !important;
}
@media (prefers-reduced-motion: reduce) {
  .hero-phrase,
  .hero-phrase.is-leaving {
    transition:none;
    transform:none;
    filter:none;
  }
}
@media (max-width:700px) {
  .hero-phrase-rotator {
    width:94vw;
    min-height:13rem;
    font-size:clamp(1.45rem, 4.2vw, 1.95rem) !important;
    line-height:1.24 !important;
    margin:.4rem auto 0;
  }
  .hero-phrase {
    padding:0 1.2rem;
  }
}

/* === V69 code-only diagonal ZPHC watermark matrix === */
.z-watermark-matrix {
  position:fixed;
  inset:-30vh -42vw;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
  opacity:var(--z-wm-opacity, .005);
  mix-blend-mode:multiply;
  contain:layout paint style;
  transform:translateZ(0);
  transition:opacity .12s linear;
}
.z-watermark-matrix::before {
  content:"";
  position:absolute;
  inset:0;
  opacity:.2;
  background:
    repeating-linear-gradient(90deg, rgb(var(--color-primary-rgb) / .16) 0 1px, transparent 1px 1.2rem),
    repeating-linear-gradient(0deg, rgb(var(--color-primary-rgb) / .11) 0 1px, transparent 1px 1.5rem);
  transform:
    translate3d(calc(var(--z-wm-shift, 0px) * -.06), calc(var(--z-wm-shift, 0px) * .035), 0)
    rotate(-45deg);
}
.z-wm-row {
  position:absolute;
  left:-24vw;
  top:var(--z-wm-row-top);
  display:flex;
  width:190vw;
  align-items:flex-start;
  justify-content:space-around;
  gap:clamp(7rem, 15vw, 22rem);
  transform:
    translate3d(
      calc((var(--z-wm-shift, 0px) + var(--z-wm-row-phase, 0rem)) * var(--z-wm-row-dir) * var(--z-wm-row-speed)),
      calc(var(--z-wm-depth, 0) * var(--z-wm-row-lift) * .12px),
      0
    )
    rotate(var(--z-wm-row-angle));
  transform-origin:50% 50%;
  will-change:transform;
}
.z-wm-stamp {
  display:inline-flex;
  flex:0 0 auto;
  flex-direction:column;
  align-items:flex-start;
  color:var(--color-primary);
  font-family:Arial, Helvetica, sans-serif;
  line-height:1;
  text-transform:uppercase;
  white-space:nowrap;
  filter:
    drop-shadow(0 .12rem .22rem rgb(var(--color-primary-rgb) / .18))
    drop-shadow(0 0 .95rem rgb(var(--color-accent-rgb) / .18));
}
.z-wm-brand {
  display:inline-flex;
  align-items:flex-end;
  font-size:clamp(4.8rem, 8vw, 10.8rem);
  font-weight:500;
  letter-spacing:-.075em;
  line-height:.72;
}
.z-wm-cap {
  display:inline-block;
  width:.42em;
  height:.42em;
  margin-left:.035em;
  margin-bottom:.055em;
  border-radius:0 .28em .28em 0;
  background:
    linear-gradient(164deg, rgba(255,255,255,.72) 0 11%, rgba(255,255,255,0) 31%),
    linear-gradient(180deg, var(--color-secondary) 0%, var(--color-primary) 54%, var(--color-primary) 100%);
  box-shadow:inset .08em .08em .16em rgba(255,255,255,.38), inset -.06em -.08em .14em rgb(var(--color-primary-hover-rgb) / .28);
}
.z-wm-meta {
  display:block;
  margin-top:.18em;
  padding-left:.08em;
  font-size:clamp(1.05rem, 1.65vw, 2.1rem);
  font-weight:700;
  letter-spacing:.035em;
  line-height:1.05;
}
.z-watermark-matrix.is-ready .z-wm-stamp:nth-child(2n) {
  transform:translate3d(0, calc(var(--z-wm-depth, 0) * -.045px), 0);
}
.z-watermark-matrix.is-ready .z-wm-stamp:nth-child(3n) {
  transform:translate3d(0, calc(var(--z-wm-depth, 0) * .035px), 0);
}
.hero {
  border-radius:2.2rem !important;
}
.hero-image-slider {
  border-radius:inherit !important;
}
.hero-image-slider > img:not(.hero-image-slider__next) {
  opacity:1 !important;
}
@media (max-width:700px) {
  .z-watermark-matrix {
    inset:-24vh -72vw;
  }
  .z-wm-row {
    width:240vw;
    gap:clamp(5rem, 22vw, 13rem);
  }
  .z-wm-brand {
    font-size:clamp(3.8rem, 18vw, 7rem);
  }
  .z-wm-meta {
    font-size:clamp(.9rem, 4.2vw, 1.35rem);
  }
  .hero {
    border-radius:0 !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .z-wm-row,
  .z-watermark-matrix::before {
    transform:rotate(var(--z-wm-row-angle, -45deg)) !important;
  }
}

/* === V70 responsive tool button readability === */
.tool-link-button {
  min-height:clamp(3.2rem, 2.7vw, 4.05rem) !important;
  padding:clamp(.78rem, .78vw, 1.02rem) clamp(1.24rem, 1.22vw, 1.72rem) !important;
  font-size:clamp(1.2rem, 1.02vw, 1.48rem) !important;
}

/* === V72 organic hero image zoom === */
.hero-image-slider {
  --z-hero-origin:50% 50%;
  --z-hero-zoom-duration:5200ms;
}
.hero-image-slider.z-hero-zooming > img:not(.hero-image-slider__next) {
  transform-origin:var(--z-hero-origin);
  animation:zHeroOrganicZoom var(--z-hero-zoom-duration) cubic-bezier(.18,.76,.2,1) forwards;
}
.hero-image-slider__next.z-hero-organic-enter {
  transform-origin:var(--z-hero-origin);
  animation:zHeroOrganicEnter calc(var(--z-hero-zoom-duration) + 900ms) cubic-bezier(.18,.76,.2,1) forwards;
}
.hero-image-slider.z-hero-zooming:hover > img:not(.hero-image-slider__next),
.hero-image-slider.is-hovered.z-hero-zooming > img:not(.hero-image-slider__next) {
  filter:saturate(1.04) contrast(1.06);
}
@keyframes zHeroOrganicZoom {
  0% {
    transform:scale(1.006) translate3d(0,0,0);
    filter:saturate(.88) contrast(1.035);
  }
  55% {
    transform:scale(1.035) translate3d(.25%, -.18%, 0);
    filter:saturate(.95) contrast(1.045);
  }
  100% {
    transform:scale(1.058) translate3d(.45%, -.32%, 0);
    filter:saturate(1.02) contrast(1.055);
  }
}
@keyframes zHeroOrganicEnter {
  0% {
    transform:scale(1.006) translate3d(0,0,0);
    filter:saturate(.86) contrast(1.02) blur(.08rem);
  }
  18% {
    transform:scale(1.018) translate3d(.08%, -.06%, 0);
    filter:saturate(.9) contrast(1.035) blur(0);
  }
  100% {
    transform:scale(1.058) translate3d(.45%, -.32%, 0);
    filter:saturate(1.02) contrast(1.055) blur(0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero-image-slider.z-hero-zooming > img:not(.hero-image-slider__next),
  .hero-image-slider__next.z-hero-organic-enter {
    animation:none !important;
    transform:none !important;
  }
}

/* === V73 symmetrical desktop header side panels === */
@media (min-width:951px) {
  .world-clocks {
    align-self:stretch !important;
    height:100% !important;
    min-height:100% !important;
    align-content:stretch !important;
  }
  .world-clock {
    height:100% !important;
    min-height:0 !important;
  }
}

/* Final legal-notice guard: generated header layers appear later in this file. */
#cookie-notice.active,
#cookie-notice.is-visible {
  position:fixed !important;
  inset:0 !important;
  z-index:2147483000 !important;
  width:100vw !important;
  height:100dvh !important;
  min-height:100vh !important;
  display:flex !important;
  background:rgba(0, 0, 0, .72) !important;
  isolation:isolate !important;
}
#cookie-notice.active .disclaimer__wrap,
#cookie-notice.is-visible .disclaimer__wrap {
  position:relative !important;
  z-index:1 !important;
}
body.legal-notice-open .tg-button,
body.legal-notice-open .site-language-flags,
body.legal-notice-open .world-clocks {
  pointer-events:none !important;
}
/* The pill is moved to be a body child and pinned by later, more specific rules,
   so the suppression above has to match that shape to win while the gate is open. */
html body.legal-notice-open > .tg-button.tg-button--body-fixed,
html.z-flight-v77.z-scroll-stable-no-flight body.legal-notice-open > .tg-button.tg-button--body-fixed {
  pointer-events:none !important;
}

/* Final contact success response: animated 30-second green confirmation window. */
body.contact-result-open {
  overflow:hidden !important;
}
#alert.contact-response-modal {
  position:fixed !important;
  left:50% !important;
  top:50% !important;
  right:auto !important;
  bottom:auto !important;
  transform:translate(-50%, -50%) !important;
  display:block !important;
  width:min(132rem, calc(100vw - 5rem)) !important;
  max-width:min(132rem, calc(100vw - 5rem)) !important;
  max-height:min(92dvh, 96rem) !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:clamp(4.4rem, 4.4vw, 6.4rem) clamp(3rem, 6vw, 8rem) 4rem !important;
  overflow:auto !important;
  z-index:2147482000 !important;
  text-align:center !important;
  color:#155724 !important;
  background:linear-gradient(145deg, #d9f9e4 0%, #edfff3 54%, #d3f5de 100%) !important;
  border:1px solid rgba(21, 87, 36, .22) !important;
  border-radius:2.8rem !important;
  box-shadow:0 3rem 9rem rgba(0, 34, 20, .32), 0 0 0 9999px rgba(4, 22, 18, .42) !important;
  animation:contactSuccessEnter .42s cubic-bezier(.18,.84,.26,1) both !important;
}
#alert.contact-response-modal::before,
#alert.contact-response-modal::after {
  content:none !important;
}
#alert.contact-response-modal .contact-response-close {
  position:absolute !important;
  top:2rem !important;
  right:2rem !important;
  width:6.1rem !important;
  height:6.1rem !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  border:1px solid rgba(21,87,36,.17) !important;
  background:rgba(255,255,255,.94) !important;
  color:#155724 !important;
  font-size:4.2rem !important;
  line-height:1 !important;
  font-weight:700 !important;
  cursor:pointer !important;
  box-shadow:0 1rem 2.5rem rgba(21,87,36,.16) !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}
#alert.contact-response-modal .contact-response-close:hover {
  transform:scale(1.06) !important;
  box-shadow:0 1.3rem 3rem rgba(21,87,36,.2) !important;
}
#alert.contact-response-modal .contact-response-timer {
  position:absolute !important;
  top:2.6rem !important;
  left:2.8rem !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:4.4rem !important;
  padding:.75rem 1.7rem !important;
  color:#155724 !important;
  background:rgba(255,255,255,.8) !important;
  border:1px solid rgba(21,87,36,.17) !important;
  border-radius:999px !important;
  font-size:1.85rem !important;
  line-height:1 !important;
  font-weight:900 !important;
  box-shadow:0 .8rem 1.9rem rgba(21,87,36,.1) !important;
}
#alert.contact-response-modal .contact-response-timer span {
  margin-left:.28em !important;
}
#alert.contact-response-modal .contact-response-check {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:9rem !important;
  height:8.3rem !important;
  margin:0 auto 1.4rem !important;
  color:#a8ea6d !important;
  font-size:8rem !important;
  line-height:1 !important;
  font-weight:950 !important;
  -webkit-text-stroke:.42rem #071408 !important;
  paint-order:stroke fill !important;
  text-shadow:0 .55rem .85rem rgba(21,87,36,.18) !important;
  filter:drop-shadow(0 .7rem 1rem rgba(21,87,36,.12)) !important;
  transform:rotate(-6deg) !important;
  animation:contactCheckPop .55s cubic-bezier(.18,.84,.26,1) .08s both, contactCheckPulse 2.4s ease-in-out .8s infinite !important;
}
#alert.contact-response-modal .contact-response-check-outline,
#alert.contact-response-modal .contact-response-check-path {
  fill:none !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  stroke-dasharray:76 !important;
  stroke-dashoffset:76 !important;
  animation:contactCheckDraw .55s ease-out .18s forwards !important;
}
#alert.contact-response-modal .contact-response-check-outline {
  stroke:#071408 !important;
  stroke-width:8 !important;
}
#alert.contact-response-modal .contact-response-check-path {
  stroke:#a8ea6d !important;
  stroke-width:5.1 !important;
}
#alert.contact-response-modal .feedback-msg-title {
  margin:0 auto 1.35rem !important;
  color:#155724 !important;
  font-size:clamp(3.8rem, 4.4vw, 6.8rem) !important;
  line-height:1.08 !important;
  font-weight:900 !important;
  letter-spacing:0 !important;
  text-align:center !important;
  text-shadow:0 0 1.5rem rgba(76, 189, 98, .2) !important;
}
#alert.contact-response-modal .feedback-msg-subtitle {
  max-width:82rem !important;
  margin:0 auto 2.8rem !important;
  color:#155724 !important;
  font-size:clamp(2rem, 2.2vw, 3.1rem) !important;
  line-height:1.35 !important;
  font-weight:500 !important;
  text-align:center !important;
}
#alert.contact-response-modal .nb {
  width:min(96rem, 100%) !important;
  max-width:min(96rem, 100%) !important;
  margin:0 auto 3.8rem !important;
  padding:3.2rem 4rem !important;
  text-align:start !important;
  background:rgba(255,255,255,.42) !important;
  border:1px solid rgba(21,87,36,.14) !important;
  border-radius:2rem !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.32) !important;
}
#alert.contact-response-modal .feedback-msg-p {
  margin:0 0 1.4rem !important;
  color:#155724 !important;
  font-size:clamp(1.65rem, 1.55vw, 2.55rem) !important;
  line-height:1.35 !important;
  font-weight:900 !important;
}
#alert.contact-response-modal .feedback-msg-list {
  margin:0 !important;
  padding-left:2.6rem !important;
}
#alert.contact-response-modal .feedback-msg-item {
  margin:.85rem 0 !important;
  padding:.7rem 1.2rem !important;
  color:#155724 !important;
  font-size:clamp(1.55rem, 1.45vw, 2.35rem) !important;
  line-height:1.35 !important;
  font-weight:850 !important;
  border:2px solid transparent !important;
  border-radius:1.1rem !important;
  transition:background .28s ease, border-color .28s ease, box-shadow .28s ease, transform .28s ease !important;
}
#alert.contact-response-modal .feedback-msg-p-last {
  max-width:90rem !important;
  margin:0 auto !important;
  color:#155724 !important;
  font-size:clamp(1.8rem, 1.75vw, 2.75rem) !important;
  line-height:1.4 !important;
  font-weight:500 !important;
  text-align:center !important;
}
#alert.contact-response-modal .feedback-msg-subtitle.is-glowing,
#alert.contact-response-modal .feedback-msg-p.is-glowing,
#alert.contact-response-modal .feedback-msg-item.is-glowing,
#alert.contact-response-modal .feedback-msg-p-last.is-glowing {
  background:rgba(255,255,255,.84) !important;
  border-color:rgba(91, 198, 112, .42) !important;
  box-shadow:0 0 0 .25rem rgba(46, 174, 78, .15), 0 0 2.6rem rgba(46, 174, 78, .32) !important;
  text-shadow:0 0 1.2rem rgba(46,174,78,.28) !important;
}
#alert.contact-response-modal .feedback-msg-subtitle.is-glowing,
#alert.contact-response-modal .feedback-msg-p.is-glowing,
#alert.contact-response-modal .feedback-msg-p-last.is-glowing {
  border-radius:1.1rem !important;
  padding:.5rem 1rem !important;
}
@keyframes contactSuccessEnter {
  from { opacity:0; transform:translate(-50%, -47%) scale(.985); }
  to { opacity:1; transform:translate(-50%, -50%) scale(1); }
}
@keyframes contactCheckPop {
  from { opacity:0; transform:scale(.78) rotate(-12deg); }
  to { opacity:1; transform:scale(1) rotate(-6deg); }
}
@keyframes contactCheckDraw {
  to { stroke-dashoffset:0; }
}
@keyframes contactCheckPulse {
  0%, 100% { filter:drop-shadow(0 .7rem 1rem rgba(21,87,36,.12)); }
  50% { filter:drop-shadow(0 .95rem 1.35rem rgba(21,87,36,.26)); }
}
@media (max-width:700px) {
  #alert.contact-response-modal {
    width:calc(100vw - 2rem) !important;
    max-width:calc(100vw - 2rem) !important;
    max-height:calc(100dvh - 2rem) !important;
    padding:5.8rem 1.6rem 2.4rem !important;
    border-radius:1.8rem !important;
  }
  #alert.contact-response-modal .contact-response-close {
    top:1.2rem !important;
    right:1.2rem !important;
    width:4.7rem !important;
    height:4.7rem !important;
    font-size:3.2rem !important;
  }
  #alert.contact-response-modal .contact-response-timer {
    top:1.55rem !important;
    left:1.25rem !important;
    min-height:3.8rem !important;
    padding:.6rem 1.15rem !important;
    font-size:1.35rem !important;
  }
  #alert.contact-response-modal .contact-response-check {
    width:7.5rem !important;
    height:7.5rem !important;
  }
  #alert.contact-response-modal .nb {
    padding:1.7rem 1.5rem !important;
    margin-bottom:2.2rem !important;
  }
  #alert.contact-response-modal .feedback-msg-list {
    padding-left:2rem !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  #alert.contact-response-modal,
  #alert.contact-response-modal .contact-response-check,
  #alert.contact-response-modal .contact-response-check-outline,
  #alert.contact-response-modal .contact-response-check-path {
    animation:none !important;
  }
  #alert.contact-response-modal .contact-response-check-outline,
  #alert.contact-response-modal .contact-response-check-path {
    stroke-dashoffset:0 !important;
  }
}

/* Final visitor message: temporary overlay above the logo for 10 seconds. */
.header-nav {
  position:relative !important;
}
.visitor-metric {
  z-index:9005 !important;
  top:.9rem !important;
  max-width:min(88rem, calc(100vw - 2rem)) !important;
  border:2px solid rgb(var(--color-primary-rgb) / .22) !important;
  background:rgba(255, 255, 255, .84) !important;
  -webkit-backdrop-filter:blur(.7rem) saturate(1.15) !important;
  backdrop-filter:blur(.7rem) saturate(1.15) !important;
  box-shadow:0 1.1rem 3rem rgb(var(--color-primary-rgb) / .18), inset 0 1px 0 rgba(255,255,255,.96) !important;
}
.visitor-metric__chip {
  background:rgba(255,255,255,.72) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 .35rem .9rem rgb(var(--color-primary-rgb) / .05) !important;
}
.header-logo {
  position:relative !important;
  z-index:7000 !important;
}
@media (max-width:950px) {
  .visitor-metric {
    left:1rem !important;
    right:auto !important;
    top:.75rem !important;
    width:min(48rem, max(34rem, calc(100vw - 28rem))) !important;
    max-width:min(48rem, max(34rem, calc(100vw - 28rem))) !important;
    display:grid !important;
    grid-template-columns:auto minmax(0, 1fr) !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    justify-content:start !important;
    gap:.26rem .34rem !important;
    padding:.38rem .44rem !important;
    overflow:visible !important;
  }
  .visitor-metric.is-visible {
    transform:translate3d(0, 0, 0) scale(1) !important;
  }
  .visitor-metric.is-hiding {
    transform:translate3d(0, -.38rem, 0) scale(.98) !important;
  }
  .visitor-metric__chip {
    min-width:0 !important;
    max-width:100% !important;
    padding:.26rem .58rem !important;
    font-size:1.1rem !important;
    line-height:1.12 !important;
    white-space:normal !important;
    text-overflow:clip !important;
    overflow:visible !important;
  }
  .visitor-metric__chip--lead {
    grid-column:1 !important;
    grid-row:1 !important;
  }
  .visitor-metric__chip--time {
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    width:100% !important;
    font-size:1.1rem !important;
    white-space:nowrap !important;
    justify-content:flex-start !important;
  }
}
@media (max-width:500px) {
  .visitor-metric {
    left:.2rem !important;
    width:calc(100vw - 2.4rem) !important;
    max-width:calc(100vw - 2.4rem) !important;
    top:.58rem !important;
  }
  .visitor-metric__chip {
    min-height:1.95rem !important;
    padding:.22rem .42rem !important;
    font-size:1.1rem !important;
  }
  .visitor-metric__chip--time {
    font-size:1.1rem !important;
  }
}

/* Final QA pass: keep header/menu paint stable above animated page layers. */
.header {
  position:relative !important;
  z-index:5000 !important;
  isolation:isolate !important;
  overflow:visible !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
}
.header .container,
.header-nav {
  position:relative !important;
  z-index:3 !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
}
.top-menu,
.header.active .top-menu {
  position:relative !important;
  z-index:3 !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
}
@media (min-width:951px) {
  .top-menu,
  .header.active .top-menu {
    overflow:hidden !important;
  }
}
.team-frame.flip-media,
.product-frame.flip-media {
  transform-style:preserve-3d;
  -webkit-transform-style:preserve-3d;
}
.team-frame.flip-media .flip-face,
.product-frame.flip-media .flip-face {
  will-change:transform;
}

/* V31 responsive QA: phones, narrow tablets and wide article tables. */
@media (max-width: 500px) {
  .header {
    padding-top:1.1rem !important;
  }
  .header-nav {
    align-items:start !important;
  }
  .header-logo,
  .header-logo__img {
    width:13.2rem !important;
    max-width:48vw !important;
  }
  .header-logo {
    order:-1 !important;
    grid-column:1 / -1 !important;
    justify-self:center !important;
    margin:.2rem auto .55rem !important;
  }
  .visitor-metric {
    position:relative !important;
    order:-2 !important;
    grid-column:1 / -1 !important;
    justify-self:stretch !important;
    top:auto !important;
    left:auto !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 .55rem !important;
    transform:none !important;
  }
  .visitor-metric.is-visible,
  .visitor-metric.is-hiding {
    transform:none !important;
  }
  .hero {
    overflow:hidden !important;
  }
  .hero-image-slider img {
    width:100% !important;
    max-width:100% !important;
    transform:none !important;
  }
  .hero-phrase-rotator {
    width:calc(100vw - 4rem) !important;
    max-width:calc(100vw - 4rem) !important;
    font-size:clamp(1.32rem, 4vw, 1.72rem) !important;
  }
  .hero-phrase {
    width:100% !important;
    padding:0 .7rem !important;
  }
}
@media (max-width: 380px) {
  .blog-index .blog-list-item {
    grid-template-columns:minmax(0, 1fr) 7.2rem !important;
    gap:.9rem !important;
    padding:1.3rem !important;
  }
  .blog-list-icon {
    width:7.2rem !important;
    height:5.8rem !important;
    flex-basis:7.2rem !important;
  }
  .blog-list-icon img {
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
}
@media (max-width: 700px) {
  .article-body,
  .article-content,
  .blog-article,
  .rotator-article {
    overflow-x:hidden !important;
  }
  .article-table {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
    contain:inline-size !important;
  }
  .article-table th,
  .article-table td {
    min-width:11rem !important;
  }
}
@media (max-width: 950px) {
  .visitor-metric {
    display:none !important;
  }
  .header-logo {
    grid-column:1 / -1 !important;
    justify-self:center !important;
    align-self:center !important;
    width:clamp(13.2rem, 30vw, 16rem) !important;
    max-width:55vw !important;
    margin:0 auto .8rem !important;
  }
  .header-logo__img {
    width:100% !important;
    max-height:none !important;
    object-fit:contain !important;
  }
}

/* V33 navigation and contact-response polish. */
@media (min-width:951px) {
  .header-nav {
    grid-template-columns:minmax(22rem, 28rem) minmax(58rem, 88rem) minmax(24rem, 31rem) !important;
    column-gap:clamp(1.1rem, 1.35vw, 2.4rem) !important;
    align-items:center !important;
  }
  .top-menu,
  .header.active .top-menu {
    width:100% !important;
    max-width:88rem !important;
    gap:.34rem !important;
    padding:.52rem !important;
    border:1px solid rgba(255,255,255,.28) !important;
    border-radius:999px !important;
    background:linear-gradient(180deg, var(--color-secondary) 0%, var(--color-secondary) 52%, var(--color-primary) 100%) !important;
    box-shadow:0 1.3rem 3.3rem rgb(var(--color-primary-rgb) / .24), inset 0 1px 0 rgba(255,255,255,.34) !important;
    overflow:hidden !important;
  }
  .top-menu__item,
  .header.active .top-menu__item {
    position:relative !important;
    flex:1 1 0 !important;
    min-width:0 !important;
    margin:0 !important;
    border:0 !important;
    border-radius:999px !important;
    overflow:visible !important;
  }
  .top-menu__item + .top-menu__item::before,
  .header.active .top-menu__item + .top-menu__item::before {
    content:"" !important;
    position:absolute !important;
    left:-.18rem !important;
    top:.55rem !important;
    bottom:.55rem !important;
    width:1px !important;
    background:rgba(255,255,255,.42) !important;
    box-shadow:-1px 0 0 rgb(var(--color-primary-rgb) / .2) !important;
    pointer-events:none !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:4.8rem !important;
    height:auto !important;
    width:100% !important;
    padding:.62rem .72rem !important;
    border:1px solid rgba(255,255,255,.18) !important;
    border-radius:999px !important;
    color:#fff !important;
    background:linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,.05) 45%, rgb(var(--color-primary-rgb) / .13) 100%) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.24), inset 0 -1px 0 rgb(var(--color-primary-rgb) / .18) !important;
    font-size:clamp(1.03rem, .78vw, 1.24rem) !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    letter-spacing:0 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    transform:none !important;
  }
  .top-menu__item:nth-child(even) .top-menu__link,
  .header.active .top-menu__item:nth-child(even) .top-menu__link {
    background:linear-gradient(180deg, rgba(255,255,255,.1) 0%, rgb(var(--color-primary-rgb) / .14) 100%) !important;
  }
  .top-menu__item.active .top-menu__link,
  .header.active .top-menu__item.active .top-menu__link,
  .top-menu__link:hover,
  .top-menu__link:focus-visible {
    background:linear-gradient(180deg, var(--color-accent) 0%, var(--color-secondary) 52%, var(--color-primary) 100%) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.36), 0 .6rem 1.5rem rgb(var(--color-primary-rgb) / .18) !important;
    outline:2px solid rgba(255,255,255,.42) !important;
    outline-offset:-3px !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .header-nav {
    grid-template-columns:minmax(17rem, 23rem) minmax(46rem, 1fr) minmax(18rem, 24rem) !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:4.45rem !important;
    padding:.55rem .5rem !important;
    font-size:clamp(.92rem, .98vw, 1.08rem) !important;
  }
}

#submit-button[disabled],
#submit-button.is-disabled {
  cursor:not-allowed !important;
  opacity:.74 !important;
  filter:saturate(.75) !important;
  transform:none !important;
  pointer-events:none !important;
}
#alert.contact-info-alert,
#alert.contact-validation-alert {
  width:100% !important;
  margin:1.35rem auto 1.2rem !important;
  padding:1.15rem 1.35rem !important;
  border-radius:.7rem !important;
  text-align:start !important;
  font-size:1.45rem !important;
  line-height:1.45 !important;
}
#alert.contact-info-alert {
  color:var(--color-primary) !important;
  background:var(--color-background) !important;
  border:1px solid rgb(var(--color-primary-rgb) / .28) !important;
}
#alert.contact-info-alert .feedback-msg-subtitle,
#alert.contact-validation-alert .feedback-msg-subtitle {
  margin:0 0 .45rem !important;
  font-size:1.52rem !important;
  line-height:1.3 !important;
  font-weight:800 !important;
}
#alert.contact-info-alert .feedback-msg-p,
#alert.contact-validation-alert .feedback-msg-p {
  margin:0 !important;
  font-size:1.35rem !important;
  line-height:1.45 !important;
}

#alert.contact-response-modal {
  width:min(84rem, calc(100vw - 3rem)) !important;
  max-width:min(84rem, calc(100vw - 3rem)) !important;
  max-height:calc(100dvh - 3rem) !important;
  padding:clamp(3.8rem, 4vw, 5rem) clamp(1.8rem, 4vw, 4.4rem) 2.8rem !important;
  border-radius:1.8rem !important;
}
#alert.contact-response-modal .contact-response-close {
  top:1.25rem !important;
  right:1.25rem !important;
  width:4.3rem !important;
  height:4.3rem !important;
  font-size:2.9rem !important;
}
#alert.contact-response-modal .contact-response-timer {
  top:1.55rem !important;
  left:1.35rem !important;
  min-height:3.2rem !important;
  padding:.52rem 1rem !important;
  font-size:1.2rem !important;
}
#alert.contact-response-modal .contact-response-check {
  width:5.4rem !important;
  height:5rem !important;
  margin-bottom:.85rem !important;
  font-size:5rem !important;
  -webkit-text-stroke:.26rem #071408 !important;
}
#alert.contact-response-modal .feedback-msg-title {
  max-width:70rem !important;
  margin-bottom:.85rem !important;
  font-size:clamp(2.35rem, 2.75vw, 3.7rem) !important;
  line-height:1.12 !important;
}
#alert.contact-response-modal .feedback-msg-subtitle {
  max-width:68rem !important;
  margin-bottom:1.4rem !important;
  font-size:clamp(1.55rem, 1.45vw, 2.15rem) !important;
  line-height:1.3 !important;
}
#alert.contact-response-modal .nb {
  width:min(68rem, 100%) !important;
  margin-bottom:1.8rem !important;
  padding:1.55rem 1.85rem !important;
  border-radius:1.2rem !important;
}
#alert.contact-response-modal .feedback-msg-p {
  margin-bottom:.85rem !important;
  font-size:clamp(1.35rem, 1.08vw, 1.72rem) !important;
  line-height:1.35 !important;
}
#alert.contact-response-modal .feedback-msg-list {
  padding-left:1.7rem !important;
}
#alert.contact-response-modal .feedback-msg-item {
  margin:.36rem 0 !important;
  padding:.34rem .55rem !important;
  font-size:clamp(1.22rem, 1vw, 1.56rem) !important;
  line-height:1.35 !important;
}
#alert.contact-response-modal .feedback-msg-p-last {
  max-width:68rem !important;
  font-size:clamp(1.35rem, 1.15vw, 1.72rem) !important;
  line-height:1.36 !important;
}
@media (max-width:700px) {
  #alert.contact-response-modal {
    width:calc(100vw - 1.2rem) !important;
    max-width:calc(100vw - 1.2rem) !important;
    max-height:calc(100dvh - 1.2rem) !important;
    padding:5rem 1.2rem 1.7rem !important;
    border-radius:1.2rem !important;
  }
  #alert.contact-response-modal .contact-response-timer {
    max-width:calc(100vw - 7rem) !important;
    white-space:normal !important;
    line-height:1.15 !important;
  }
  #alert.contact-response-modal .feedback-msg-title {
    font-size:2.05rem !important;
  }
  #alert.contact-response-modal .feedback-msg-subtitle {
    font-size:1.42rem !important;
  }
  #alert.contact-response-modal .nb {
    padding:1.15rem 1rem !important;
  }
}

/* V35 desktop navigation: logo-matched blue bar with natural word wrapping. */
@media (min-width:951px) {
  .header-nav {
    grid-template-columns:minmax(22rem, 28rem) minmax(72rem, 108rem) minmax(24rem, 31rem) !important;
  }
  .top-menu,
  .header.active .top-menu {
    isolation:isolate !important;
    width:100% !important;
    max-width:108rem !important;
    min-height:7.1rem !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:.42rem !important;
    padding:.76rem .82rem !important;
    border:1px solid rgb(var(--color-primary-rgb) / .34) !important;
    border-radius:999px !important;
    background:
      radial-gradient(120% 170% at 92% 12%, rgb(var(--color-surface-blue-rgb) / .48) 0%, rgb(var(--color-accent-rgb) / .18) 25%, rgb(var(--color-primary-rgb) / 0) 48%),
      linear-gradient(180deg, var(--color-accent) 0%, var(--color-secondary) 22%, var(--color-primary) 56%, var(--color-primary) 100%) !important;
    box-shadow:
      inset 0 .22rem .12rem rgba(255,255,255,.5),
      inset 0 -.22rem .55rem rgb(var(--color-primary-rgb) / .3),
      0 1.15rem 2.9rem rgb(var(--color-primary-rgb) / .26) !important;
    overflow:hidden !important;
  }
  .top-menu::after,
  .header.active .top-menu::after {
    content:"" !important;
    position:absolute !important;
    right:.8rem !important;
    top:.88rem !important;
    bottom:.88rem !important;
    width:4.6rem !important;
    border-radius:0 999px 999px 0 !important;
    background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgb(var(--color-surface-blue-rgb) / .22) 52%, rgba(255,255,255,.42) 100%) !important;
    pointer-events:none !important;
    z-index:0 !important;
  }
  .top-menu__item,
  .header.active .top-menu__item {
    position:relative !important;
    z-index:1 !important;
    flex:1 1 auto !important;
    min-width:8rem !important;
    max-width:17.6rem !important;
    margin:0 !important;
    border:0 !important;
    border-radius:999px !important;
  }
  .top-menu__item:nth-child(1),
  .header.active .top-menu__item:nth-child(1) { flex-grow:1.28 !important; flex-basis:13.6rem !important; }
  .top-menu__item:nth-child(2),
  .header.active .top-menu__item:nth-child(2) { flex-grow:.92 !important; flex-basis:9.6rem !important; }
  .top-menu__item:nth-child(3),
  .header.active .top-menu__item:nth-child(3) { flex-grow:1.12 !important; flex-basis:12.3rem !important; }
  .top-menu__item:nth-child(4),
  .header.active .top-menu__item:nth-child(4) { flex-grow:1.02 !important; flex-basis:11.3rem !important; }
  .top-menu__item:nth-child(5),
  .header.active .top-menu__item:nth-child(5) { flex-grow:1.3 !important; flex-basis:14.6rem !important; }
  .top-menu__item:nth-child(6),
  .header.active .top-menu__item:nth-child(6) { flex-grow:.72 !important; flex-basis:8.4rem !important; }
  .top-menu__item:nth-child(7),
  .header.active .top-menu__item:nth-child(7) { flex-grow:1.34 !important; flex-basis:15.2rem !important; }
  .top-menu__item + .top-menu__item::before,
  .header.active .top-menu__item + .top-menu__item::before {
    left:-.24rem !important;
    top:.58rem !important;
    bottom:.58rem !important;
    background:linear-gradient(180deg, rgba(255,255,255,.16), rgb(var(--color-background-rgb) / .6), rgb(var(--color-primary-rgb) / .18)) !important;
    box-shadow:1px 0 0 rgb(var(--color-primary-rgb) / .28) !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:5.35rem !important;
    height:100% !important;
    width:100% !important;
    padding:.58rem .94rem !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid rgb(var(--color-surface-blue-rgb) / .32) !important;
    border-radius:999px !important;
    color:#fff !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,.24) 0%, rgba(255,255,255,.08) 36%, rgb(var(--color-primary-rgb) / .22) 100%) !important;
    box-shadow:
      inset 0 .18rem .08rem rgba(255,255,255,.45),
      inset 0 -.18rem .34rem rgb(var(--color-primary-rgb) / .2),
      0 .22rem .7rem rgb(var(--color-primary-rgb) / .12) !important;
    font-size:clamp(.9rem, .6vw, 1.16rem) !important;
    font-weight:850 !important;
    line-height:1.08 !important;
    letter-spacing:0 !important;
    text-align:center !important;
    white-space:nowrap !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
    text-wrap:balance !important;
    transform:none !important;
  }
  .top-menu__item:nth-child(even) .top-menu__link,
  .header.active .top-menu__item:nth-child(even) .top-menu__link {
    background:linear-gradient(180deg, rgba(255,255,255,.2) 0%, rgba(255,255,255,.07) 40%, rgb(var(--color-primary-rgb) / .2) 100%) !important;
  }
  .top-menu__item.active .top-menu__link,
  .header.active .top-menu__item.active .top-menu__link,
  .top-menu__link:hover,
  .top-menu__link:focus-visible {
    background:
      radial-gradient(110% 160% at 88% 8%, rgba(255,255,255,.38) 0%, rgb(var(--color-accent-rgb) / .18) 34%, rgb(var(--color-primary-rgb) / 0) 62%),
      linear-gradient(180deg, var(--color-accent) 0%, var(--color-secondary) 28%, var(--color-primary) 64%, var(--color-primary) 100%) !important;
    box-shadow:
      inset 0 .2rem .1rem rgba(255,255,255,.56),
      inset 0 -.22rem .48rem rgb(var(--color-primary-rgb) / .24),
      0 .52rem 1.35rem rgb(var(--color-primary-rgb) / .22) !important;
    outline:2px solid rgb(var(--color-background-rgb) / .46) !important;
    outline-offset:-4px !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link {
    font-size:clamp(.84rem, .56vw, 1.08rem) !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .world-clocks,
  .header.active .world-clocks {
    position:relative !important;
    right:auto !important;
    top:auto !important;
    width:clamp(12.8rem, 15.6vw, 16rem) !important;
    align-self:start !important;
    justify-self:end !important;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:.2rem !important;
    padding:.3rem !important;
    border-color:rgb(var(--color-primary-rgb) / .18) !important;
    border-radius:.95rem !important;
    background:linear-gradient(180deg, rgba(255,255,255,.94) 0%, rgb(var(--color-background-rgb) / .9) 100%) !important;
    box-shadow:0 .7rem 1.8rem rgb(var(--color-primary-rgb) / .1), inset 0 1px 0 rgba(255,255,255,.96) !important;
    z-index:6 !important;
    transform:none !important;
  }
  .world-clock,
  .header.active .world-clock {
    min-height:1.75rem !important;
    border-radius:.5rem !important;
  }
  .world-clock__label,
  .header.active .world-clock__label {
    font-size:.5rem !important;
  }
  .world-clock__time,
  .header.active .world-clock__time {
    font-size:.72rem !important;
  }
  .header-nav {
    grid-template-columns:minmax(16rem, 21rem) minmax(48rem, 1fr) clamp(12.8rem, 15.6vw, 16rem) !important;
    column-gap:clamp(.8rem, 1.1vw, 1.4rem) !important;
  }
  .top-menu,
  .header.active .top-menu {
    max-width:100% !important;
    min-height:6.5rem !important;
    gap:.3rem !important;
    padding:.6rem .68rem !important;
  }
  .top-menu__item,
  .header.active .top-menu__item {
    min-width:7.6rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:5.05rem !important;
    padding:.46rem .64rem !important;
    font-size:clamp(.92rem, .82vw, 1.06rem) !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link {
    font-size:clamp(.88rem, .78vw, 1rem) !important;
  }
}

/* V36 desktop navigation: two-line menu with clocks preserved. */
@media (min-width:951px) {
  .header-nav {
    grid-template-columns:minmax(18rem, 28rem) minmax(50rem, 86rem) minmax(14rem, 26rem) !important;
    column-gap:clamp(.8rem, 1.1vw, 1.8rem) !important;
    align-items:start !important;
  }
  .top-menu,
  .header.active .top-menu {
    width:100% !important;
    max-width:86rem !important;
    min-height:10.6rem !important;
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    grid-auto-rows:minmax(4.05rem, auto) !important;
    align-items:stretch !important;
    gap:.48rem !important;
    padding:.8rem .9rem !important;
    border-radius:2.7rem !important;
    background:
      radial-gradient(120% 170% at 92% 12%, rgb(var(--color-surface-blue-rgb) / .5) 0%, rgb(var(--color-accent-rgb) / .2) 25%, rgb(var(--color-primary-rgb) / 0) 48%),
      linear-gradient(180deg, var(--color-accent) 0%, var(--color-secondary) 22%, var(--color-primary) 56%, var(--color-primary) 100%) !important;
    box-shadow:
      inset 0 .22rem .12rem rgba(255,255,255,.5),
      inset 0 -.22rem .55rem rgb(var(--color-primary-rgb) / .3),
      0 1.15rem 2.9rem rgb(var(--color-primary-rgb) / .24) !important;
  }
  .top-menu::after,
  .header.active .top-menu::after {
    right:.9rem !important;
    top:.85rem !important;
    bottom:.85rem !important;
    width:5.5rem !important;
    border-radius:0 2rem 2rem 0 !important;
  }
  .top-menu__item,
  .header.active .top-menu__item {
    min-width:0 !important;
    max-width:none !important;
    width:auto !important;
    flex:none !important;
    border-radius:999px !important;
  }
  .top-menu__item:nth-child(1),
  .header.active .top-menu__item:nth-child(1),
  .top-menu__item:nth-child(2),
  .header.active .top-menu__item:nth-child(2),
  .top-menu__item:nth-child(3),
  .header.active .top-menu__item:nth-child(3),
  .top-menu__item:nth-child(4),
  .header.active .top-menu__item:nth-child(4),
  .top-menu__item:nth-child(6),
  .header.active .top-menu__item:nth-child(6),
  .top-menu__item:nth-child(7),
  .header.active .top-menu__item:nth-child(7) {
    grid-column:auto !important;
    flex-basis:auto !important;
    flex-grow:0 !important;
  }
  .top-menu__item:nth-child(5),
  .header.active .top-menu__item:nth-child(5) {
    grid-column:1 / span 2 !important;
    flex-basis:auto !important;
    flex-grow:0 !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:4.05rem !important;
    height:100% !important;
    padding:.5rem .86rem !important;
    font-size:clamp(.98rem, .72vw, 1.2rem) !important;
    line-height:1.08 !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
    text-wrap:balance !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link {
    font-size:clamp(.92rem, .68vw, 1.08rem) !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .header-nav {
    grid-template-columns:minmax(16rem, 21rem) minmax(48rem, 1fr) clamp(12.8rem, 15.6vw, 16rem) !important;
    column-gap:clamp(.72rem, 1vw, 1.2rem) !important;
  }
  .top-menu,
  .header.active .top-menu {
    min-height:9.7rem !important;
    gap:.34rem !important;
    padding:.66rem .72rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:3.8rem !important;
    padding:.4rem .56rem !important;
    font-size:clamp(.88rem, .76vw, 1rem) !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link {
    font-size:clamp(.82rem, .7vw, .94rem) !important;
  }
}

/* V37 desktop navigation: equal-size two-row pills in every language. */
@media (min-width:951px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-columns:repeat(8, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(2, 4.18rem) !important;
    grid-auto-rows:4.18rem !important;
    gap:.46rem !important;
    align-items:stretch !important;
    justify-content:center !important;
    min-height:10.2rem !important;
    padding:.84rem .94rem !important;
  }
  .top-menu__item,
  .header.active .top-menu__item {
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    justify-self:stretch !important;
    align-self:stretch !important;
    grid-row:auto !important;
    grid-column:auto !important;
  }
  .top-menu__item:nth-child(1),
  .header.active .top-menu__item:nth-child(1) {
    grid-column:1 / span 2 !important;
    grid-row:1 !important;
  }
  .top-menu__item:nth-child(2),
  .header.active .top-menu__item:nth-child(2) {
    grid-column:3 / span 2 !important;
    grid-row:1 !important;
  }
  .top-menu__item:nth-child(3),
  .header.active .top-menu__item:nth-child(3) {
    grid-column:5 / span 2 !important;
    grid-row:1 !important;
  }
  .top-menu__item:nth-child(4),
  .header.active .top-menu__item:nth-child(4) {
    grid-column:7 / span 2 !important;
    grid-row:1 !important;
  }
  .top-menu__item:nth-child(5),
  .header.active .top-menu__item:nth-child(5) {
    grid-column:2 / span 2 !important;
    grid-row:2 !important;
  }
  .top-menu__item:nth-child(6),
  .header.active .top-menu__item:nth-child(6) {
    grid-column:4 / span 2 !important;
    grid-row:2 !important;
  }
  .top-menu__item:nth-child(7),
  .header.active .top-menu__item:nth-child(7) {
    grid-column:6 / span 2 !important;
    grid-row:2 !important;
  }
  .top-menu__item + .top-menu__item::before,
  .header.active .top-menu__item + .top-menu__item::before {
    display:none !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:0 !important;
    height:100% !important;
    width:100% !important;
    padding:.42rem .72rem !important;
    font-size:clamp(.84rem, .64vw, 1.02rem) !important;
    line-height:1.06 !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
    text-wrap:balance !important;
    overflow:hidden !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link {
    font-size:clamp(.78rem, .6vw, .96rem) !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 3.9rem) !important;
    grid-auto-rows:3.9rem !important;
    min-height:9.25rem !important;
    gap:.34rem !important;
    padding:.66rem .72rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    padding:.34rem .5rem !important;
    font-size:clamp(.74rem, .68vw, .9rem) !important;
    line-height:1.05 !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link {
    font-size:clamp(.68rem, .62vw, .82rem) !important;
  }
}

/* V38 desktop navigation readability: larger text with script-specific font stacks. */
@media (min-width:951px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 4.8rem) !important;
    grid-auto-rows:4.8rem !important;
    min-height:11.45rem !important;
    gap:.5rem !important;
    padding:.9rem 1rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    padding:.5rem .82rem !important;
    font-family:Inter, "Segoe UI", Arial, Helvetica, sans-serif !important;
    font-size:clamp(1rem, .74vw, 1.18rem) !important;
    font-weight:850 !important;
    line-height:1.08 !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
    text-wrap:balance !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-family:Inter, "Segoe UI", Arial, Helvetica, sans-serif !important;
    font-size:clamp(.94rem, .68vw, 1.08rem) !important;
  }
  :lang(ar) .top-menu__link,
  :lang(fa) .top-menu__link,
  :lang(ur) .top-menu__link {
    font-family:"Noto Naskh Arabic", "Geeza Pro", Tahoma, Arial, sans-serif !important;
    font-size:clamp(1rem, .72vw, 1.12rem) !important;
    font-weight:800 !important;
    line-height:1.12 !important;
  }
  :lang(he) .top-menu__link {
    font-family:"Arial Hebrew", "Noto Sans Hebrew", Arial, sans-serif !important;
    font-size:clamp(.98rem, .7vw, 1.1rem) !important;
    line-height:1.1 !important;
  }
  :lang(hi) .top-menu__link {
    font-family:"Noto Sans Devanagari", "Kohinoor Devanagari", Mangal, Arial, sans-serif !important;
    font-size:clamp(.96rem, .68vw, 1.06rem) !important;
    font-weight:800 !important;
    line-height:1.12 !important;
  }
  :lang(ja) .top-menu__link {
    font-family:"Hiragino Sans", "Yu Gothic", "Noto Sans JP", Arial, sans-serif !important;
    font-size:clamp(.96rem, .68vw, 1.08rem) !important;
    font-weight:800 !important;
    line-height:1.12 !important;
  }
  :lang(ko) .top-menu__link {
    font-family:"Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", Arial, sans-serif !important;
    font-size:clamp(.96rem, .68vw, 1.08rem) !important;
    font-weight:800 !important;
    line-height:1.12 !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 4.45rem) !important;
    grid-auto-rows:4.45rem !important;
    min-height:10.35rem !important;
    gap:.38rem !important;
    padding:.72rem .78rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    padding:.42rem .62rem !important;
    font-size:clamp(.92rem, .82vw, 1.04rem) !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:clamp(.86rem, .76vw, .98rem) !important;
  }
  :lang(ar) .top-menu__link,
  :lang(fa) .top-menu__link,
  :lang(ur) .top-menu__link {
    font-size:clamp(.92rem, .8vw, 1.02rem) !important;
  }
  :lang(he) .top-menu__link,
  :lang(hi) .top-menu__link,
  :lang(ja) .top-menu__link,
  :lang(ko) .top-menu__link {
    font-size:clamp(.88rem, .76vw, 1rem) !important;
  }
}

/* V39 navigation readability floor: keep equal pills, but make labels easier to read. */
@media (min-width:951px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 5.05rem) !important;
    grid-auto-rows:5.05rem !important;
    min-height:11.95rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    font-size:clamp(1.08rem, .82vw, 1.26rem) !important;
    line-height:1.1 !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:clamp(1rem, .76vw, 1.14rem) !important;
  }
  :lang(ar) .top-menu__link,
  :lang(fa) .top-menu__link,
  :lang(ur) .top-menu__link {
    font-size:clamp(1.06rem, .8vw, 1.18rem) !important;
  }
  :lang(he) .top-menu__link,
  :lang(hi) .top-menu__link,
  :lang(ja) .top-menu__link,
  :lang(ko) .top-menu__link {
    font-size:clamp(1.02rem, .76vw, 1.12rem) !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 4.75rem) !important;
    grid-auto-rows:4.75rem !important;
    min-height:10.95rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    font-size:clamp(1rem, .88vw, 1.1rem) !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:clamp(.96rem, .84vw, 1.04rem) !important;
  }
  :lang(ar) .top-menu__link,
  :lang(fa) .top-menu__link,
  :lang(ur) .top-menu__link {
    font-size:clamp(1rem, .86vw, 1.08rem) !important;
  }
  :lang(he) .top-menu__link,
  :lang(hi) .top-menu__link,
  :lang(ja) .top-menu__link,
  :lang(ko) .top-menu__link {
    font-size:clamp(.98rem, .84vw, 1.06rem) !important;
  }
}

/* V43 navigation hover sheen: move the logo-like white gloss across each pill. */
@media (min-width:951px) {
  .top-menu__link,
  .header.active .top-menu__link {
    position:relative !important;
    isolation:isolate !important;
    overflow:hidden !important;
  }
  .top-menu__link::before,
  .header.active .top-menu__link::before {
    content:"" !important;
    position:absolute !important;
    inset:-42% auto -30% -78% !important;
    width:78% !important;
    border-radius:999px !important;
    background:
      linear-gradient(115deg,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,.08) 24%,
        rgba(255,255,255,.52) 46%,
        rgb(var(--color-background-rgb) / .25) 58%,
        rgba(255,255,255,0) 76%) !important;
    opacity:.72 !important;
    filter:blur(.02rem) !important;
    transform:translate3d(0,0,0) skewX(-16deg) !important;
    transition:transform .62s cubic-bezier(.18,.84,.26,1), opacity .24s ease !important;
    pointer-events:none !important;
    z-index:0 !important;
  }
  .top-menu__link:hover::before,
  .top-menu__link:focus-visible::before,
  .header.active .top-menu__link:hover::before,
  .header.active .top-menu__link:focus-visible::before {
    opacity:.96 !important;
    transform:translate3d(238%,0,0) skewX(-16deg) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .top-menu__link::before,
  .header.active .top-menu__link::before {
    transition:none !important;
  }
}

/* V40 GLP-1 article diagrams: coded, localized, responsive blocks. */
.glp1-code-figure {
  margin:3.4rem 0 3.1rem !important;
}
.glp1-code-figure figcaption {
  max-width:92rem !important;
  margin:1.25rem auto 0 !important;
}
.glp1-code-diagram {
  --glp1-blue:var(--color-secondary);
  --glp1-ink:var(--color-primary);
  --glp1-soft:var(--color-background);
  position:relative;
  overflow:hidden;
  width:100%;
  min-height:32rem;
  padding:clamp(2.2rem, 3.2vw, 4.6rem);
  border:1px solid rgb(var(--color-secondary-rgb) / .1);
  border-radius:2.8rem;
  color:var(--glp1-ink);
  background:
    radial-gradient(circle at 86% 10%, rgb(var(--color-accent-rgb) / .18), rgb(var(--color-accent-rgb) / 0) 32%),
    linear-gradient(180deg, var(--color-background) 0%, var(--color-background) 100%);
  box-shadow:0 1.3rem 3rem rgb(var(--color-primary-rgb) / .08);
  font-family:Inter, "Segoe UI", Arial, Helvetica, sans-serif;
  direction:ltr;
}
.glp1-code-diagram[dir="rtl"] {
  direction:rtl;
}
.glp1-code-diagram[lang="ar"],
.glp1-code-diagram[lang="fa"],
.glp1-code-diagram[lang="ur"] {
  font-family:"Noto Naskh Arabic", "Geeza Pro", Tahoma, Arial, sans-serif;
}
.glp1-code-diagram[lang="he"] {
  font-family:"Arial Hebrew", "Noto Sans Hebrew", Arial, sans-serif;
}
.glp1-code-diagram[lang="hi"] {
  font-family:"Noto Sans Devanagari", "Kohinoor Devanagari", Mangal, Arial, sans-serif;
}
.glp1-code-diagram[lang="ja"] {
  font-family:"Hiragino Sans", "Yu Gothic", "Noto Sans JP", Arial, sans-serif;
}
.glp1-code-diagram[lang="ko"] {
  font-family:"Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", Arial, sans-serif;
}
.glp1-code-title {
  position:relative;
  z-index:2;
  margin:0 0 clamp(1.8rem, 2vw, 2.8rem);
  color:var(--glp1-ink);
  font-size:clamp(2.2rem, 2.7vw, 3.55rem);
  font-weight:850;
  line-height:1.12;
  letter-spacing:0;
}
.glp1-code-summary {
  max-width:86rem;
  margin:clamp(1.8rem, 2.4vw, 3rem) auto 0;
  color:var(--glp1-ink);
  font-size:clamp(1.55rem, 1.65vw, 2.45rem);
  font-weight:750;
  line-height:1.32;
  text-align:center;
}
.glp1-code-gut-map {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:clamp(1.4rem, 2vw, 2.8rem);
  align-items:center;
  min-height:21rem;
  padding:2.4rem 1rem .6rem;
}
.glp1-code-flow {
  position:absolute;
  left:18%;
  right:18%;
  height:.55rem;
  border-radius:999px;
  background:var(--glp1-blue);
  opacity:.95;
  pointer-events:none;
}
.glp1-code-flow::after {
  content:"";
  position:absolute;
  top:50%;
  right:-.35rem;
  width:0;
  height:0;
  border-top:.85rem solid transparent;
  border-bottom:.85rem solid transparent;
  border-left:1.25rem solid var(--glp1-blue);
  transform:translateY(-50%);
}
.glp1-code-flow--main {
  top:53%;
}
.glp1-code-flow--upper {
  top:22%;
  height:.42rem;
  background:repeating-linear-gradient(90deg, var(--glp1-blue) 0 1.2rem, transparent 1.2rem 2rem);
}
.glp1-code-flow--upper::after {
  display:none;
}
.glp1-code-organ {
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:13.8rem;
  padding:1.5rem;
  border:.55rem solid var(--glp1-blue);
  color:var(--glp1-ink);
  background:var(--glp1-soft);
  box-shadow:inset 0 .2rem .6rem rgba(255,255,255,.85);
  text-align:center;
  font-size:clamp(1.55rem, 1.6vw, 2.25rem);
  font-weight:800;
  line-height:1.12;
}
.glp1-code-organ--stomach {
  border-radius:46% 54% 56% 44%;
}
.glp1-code-organ--intestine {
  min-height:11.4rem;
  border-radius:3rem 3rem 5.8rem 5.8rem;
}
.glp1-code-organ--brain {
  border-radius:50%;
}
.glp1-code-organ--brain::before {
  content:"";
  position:absolute;
  inset:2.4rem;
  border:.55rem solid var(--glp1-blue);
  border-left-color:transparent;
  border-radius:50%;
}
.glp1-code-badge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:3.7rem;
  padding:.55rem 1.35rem;
  border:.35rem solid var(--glp1-blue);
  border-radius:1.3rem;
  color:var(--glp1-ink);
  background:#fff;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
.glp1-code-organ--stomach .glp1-code-badge {
  position:absolute;
  top:-2.2rem;
  left:50%;
  transform:translateX(-50%);
}
.glp1-code-badge--insulin {
  position:absolute;
  z-index:3;
  top:.7rem;
  left:50%;
  transform:translateX(-50%);
  font-size:clamp(1.35rem, 1.3vw, 1.9rem);
}
.glp1-code-body-grid {
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:1.15rem;
  margin-top:1.6rem;
}
.glp1-code-card,
.glp1-code-flow-node {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:8.8rem;
  padding:1.2rem;
  border:.35rem solid var(--glp1-blue);
  border-radius:1.8rem;
  background:#fff;
  color:var(--glp1-ink);
  box-shadow:0 .7rem 1.8rem rgb(var(--color-primary-rgb) / .06);
  text-align:center;
  font-size:clamp(1.35rem, 1.28vw, 1.9rem);
  font-weight:800;
  line-height:1.18;
}
.glp1-code-card:nth-child(2) {
  border-radius:50%;
  background:var(--color-background);
}
.glp1-code-compare {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(1.4rem, 2vw, 2.4rem);
}
.glp1-code-panel {
  padding:clamp(1.7rem, 2vw, 2.6rem);
  border:.3rem solid;
  border-radius:2.2rem;
}
.glp1-code-panel--wrong {
  border-color:#cc4050;
  background:#fff5f5;
}
.glp1-code-panel--right {
  border-color:#2f8b57;
  background:#f1fff6;
}
.glp1-code-panel-title {
  margin-bottom:1.1rem;
  color:var(--glp1-ink);
  font-size:clamp(1.65rem, 1.7vw, 2.45rem);
  font-weight:850;
  line-height:1.15;
  text-align:center;
}
.glp1-code-panel ul {
  display:grid;
  gap:.8rem;
  margin:0;
  padding-left:1.8rem;
  color:var(--glp1-ink);
  font-size:clamp(1.35rem, 1.25vw, 1.8rem);
  font-weight:750;
  line-height:1.25;
}
.glp1-code-diagram[dir="rtl"] .glp1-code-panel ul {
  padding-right:1.8rem;
  padding-left:0;
}
.glp1-code-skin-map {
  display:grid;
  grid-template-columns:minmax(13rem, .55fr) 1fr;
  gap:clamp(1.6rem, 2.4vw, 3rem);
  align-items:center;
}
.glp1-code-skin-core {
  width:min(18rem, 100%);
  aspect-ratio:1;
  justify-self:center;
  border:.55rem solid var(--glp1-blue);
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 45%, #fff 0 34%, transparent 35%),
    linear-gradient(180deg, var(--color-background), var(--color-background));
}
.glp1-code-chip-cloud {
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
  align-items:center;
}
.glp1-code-chip-cloud span {
  display:inline-flex;
  align-items:center;
  min-height:4.6rem;
  padding:.8rem 1.25rem;
  border:.25rem solid rgb(var(--color-secondary-rgb) / .45);
  border-radius:999px;
  background:#fff;
  color:var(--glp1-ink);
  font-size:clamp(1.3rem, 1.2vw, 1.75rem);
  font-weight:800;
  line-height:1.12;
}
.glp1-code-risk-flow {
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:1.15rem;
}
.glp1-code-flow-node {
  position:relative;
  min-height:9.4rem;
}
.glp1-code-flow-node:not(:last-child)::after {
  content:"";
  position:absolute;
  top:50%;
  right:-1.15rem;
  width:1.15rem;
  height:.38rem;
  background:var(--glp1-blue);
  transform:translateY(-50%);
}
.glp1-code-diagram[dir="rtl"] .glp1-code-flow-node:not(:last-child)::after {
  right:auto;
  left:-1.15rem;
}
@media (max-width:760px) {
  .glp1-code-diagram {
    min-height:0;
    padding:2rem 1.35rem;
    border-radius:1.8rem;
  }
  .glp1-code-title {
    font-size:2rem;
    text-align:center;
  }
  .glp1-code-gut-map,
  .glp1-code-body-grid,
  .glp1-code-compare,
  .glp1-code-skin-map,
  .glp1-code-risk-flow {
    grid-template-columns:1fr;
  }
  .glp1-code-gut-map {
    padding-top:1.4rem;
  }
  .glp1-code-flow,
  .glp1-code-badge--insulin,
  .glp1-code-flow-node::after {
    display:none !important;
  }
  .glp1-code-organ {
    min-height:8.8rem;
  }
  .glp1-code-organ--stomach .glp1-code-badge {
    position:static;
    margin-right:.75rem;
    transform:none;
  }
  .glp1-code-organ--brain::before {
    inset:1.6rem;
  }
  .glp1-code-body-grid,
  .glp1-code-risk-flow {
    gap:.85rem;
  }
  .glp1-code-card,
  .glp1-code-flow-node {
    min-height:6.4rem;
  }
  .glp1-code-panel ul {
    font-size:1.32rem;
  }
  .glp1-code-summary {
    font-size:1.36rem;
  }
}

/* V41 centered welcome and intro messaging across locales and screens. */
.header-nav {
  position:relative !important;
}
.visitor-metric {
  left:50% !important;
  right:auto !important;
  top:clamp(.42rem, .72vw, .9rem) !important;
  width:max-content !important;
  max-width:min(88rem, calc(100vw - 2rem)) !important;
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.34rem !important;
  text-align:center !important;
  direction:inherit !important;
  transform:translate3d(-50%, -.45rem, 0) scale(.98) !important;
}
.visitor-metric.is-visible {
  transform:translate3d(-50%, 0, 0) scale(1) !important;
}
.visitor-metric.is-hiding {
  transform:translate3d(-50%, -.38rem, 0) scale(.98) !important;
}
.visitor-metric__chip {
  min-width:0 !important;
  max-width:100% !important;
  text-align:center !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}
.visitor-metric__chip--time {
  white-space:normal !important;
}
.hero__content,
.hero__welcome,
.hero__title,
.container__intro,
.zphc-products-modern .custom-h2.center,
.zphc-products-modern .products-lead {
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}
.hero__welcome {
  display:block !important;
  width:100% !important;
  max-width:min(70rem, 100%) !important;
  margin-bottom:.75rem !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
  text-wrap:balance !important;
}
.container__intro,
.zphc-products-modern .custom-h2.center,
.zphc-products-modern .products-lead {
  max-width:min(92rem, calc(100% - 3.2rem)) !important;
  float:none !important;
  clear:both !important;
}
.zphc-products-modern .custom-h2.center {
  display:block !important;
  width:100% !important;
  line-height:1.18 !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
  text-wrap:balance !important;
}
.zphc-products-modern .products-lead {
  line-height:1.72 !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
  text-wrap:pretty !important;
}
@media (max-width:950px) {
  .visitor-metric {
    position:relative !important;
    left:auto !important;
    top:auto !important;
    order:-2 !important;
    grid-column:1 / -1 !important;
    justify-self:center !important;
    width:min(100%, calc(100vw - 2.4rem)) !important;
    max-width:min(54rem, calc(100vw - 2.4rem)) !important;
    margin:0 auto .72rem !important;
    padding:.42rem .5rem !important;
    display:flex !important;
    transform:none !important;
  }
  .visitor-metric.is-visible,
  .visitor-metric.is-hiding {
    transform:none !important;
  }
  .visitor-metric__chip {
    flex:1 1 auto !important;
    min-height:2rem !important;
    padding:.28rem .52rem !important;
    font-size:1.1rem !important;
    line-height:1.16 !important;
  }
  .visitor-metric__chip--lead {
    flex:0 1 100% !important;
  }
  .zphc-products-modern .custom-h2.center {
    font-size:clamp(2.05rem, 4.6vw, 2.8rem) !important;
  }
  .zphc-products-modern .products-lead {
    max-width:calc(100% - 2rem) !important;
    font-size:clamp(1.32rem, 3.3vw, 1.55rem) !important;
  }
}
@media (max-width:500px) {
  .visitor-metric {
    width:calc(100vw - 1.6rem) !important;
    max-width:calc(100vw - 1.6rem) !important;
    margin-bottom:.6rem !important;
  }
  .visitor-metric__chip {
    flex-basis:100% !important;
  }
  .hero__welcome {
    letter-spacing:.12rem !important;
  }
}

/* V42 contact form: immediate confirmation visibility and permanent success lock. */
#form.is-submitting #submit-button,
#form.is-success-locked #submit-button,
#submit-button.is-sending,
#submit-button.is-sent {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  pointer-events:none !important;
  cursor:not-allowed !important;
  opacity:.78 !important;
  filter:saturate(.86) !important;
}
#form.is-success-locked #submit-button,
#submit-button.is-sent {
  opacity:.9 !important;
  box-shadow:inset 0 .18rem .22rem rgba(255,255,255,.34), 0 .7rem 1.8rem rgb(var(--color-primary-rgb) / .14) !important;
}
#alert.contact-response-modal.contact-response-modal--instant {
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  animation:contactSuccessEnter .12s cubic-bezier(.18,.84,.26,1) both !important;
}
#alert.contact-response-modal.contact-response-modal--instant .contact-response-check {
  animation:contactCheckPop .16s cubic-bezier(.18,.84,.26,1) both, contactCheckPulse 2.4s ease-in-out .42s infinite !important;
}

/* V54 blog media and visitor banner corrections. */
.article-body .article-topic-visual,
.z-style-article .article-topic-visual,
.document-style.article-body .article-topic-visual {
  width:min(100%, 44rem) !important;
  max-width:44rem !important;
  margin:2rem auto 2.6rem !important;
}
.article-body .article-topic-visual img,
.z-style-article .article-topic-visual img,
.document-style.article-body .article-topic-visual img {
  width:100% !important;
  height:auto !important;
  max-height:32rem !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#fff !important;
}
.article-body .article-topic-visual figcaption,
.z-style-article .article-topic-visual figcaption,
.document-style.article-body .article-topic-visual figcaption {
  font-size:1.1rem !important;
  line-height:1.45 !important;
  padding:.8rem 1rem !important;
}
@media (max-width:700px) {
  .article-body .article-topic-visual,
  .z-style-article .article-topic-visual,
  .document-style.article-body .article-topic-visual {
    width:100% !important;
    max-width:min(100%, 34rem) !important;
  }
  .article-body .article-topic-visual img,
  .z-style-article .article-topic-visual img,
  .document-style.article-body .article-topic-visual img {
    max-height:24rem !important;
  }
}
@media (min-width:951px) {
  .header-nav {
    grid-template-rows:auto auto auto !important;
  }
  .visitor-metric {
    position:relative !important;
    grid-column:2 !important;
    grid-row:1 !important;
    justify-self:center !important;
    align-self:end !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    width:max-content !important;
    max-width:min(88rem, 100%) !important;
    margin:0 auto .85rem !important;
    z-index:20 !important;
    transform:translate3d(0, -.45rem, 0) scale(.98) !important;
  }
  .visitor-metric.is-visible {
    transform:translate3d(0, 0, 0) scale(1) !important;
  }
  .visitor-metric.is-hiding {
    transform:translate3d(0, -.38rem, 0) scale(.98) !important;
  }
  .header-logo {
    grid-row:2 !important;
  }
  .site-language-flags {
    grid-row:3 !important;
  }
  .top-menu,
  .header.active .top-menu,
  .world-clocks {
    grid-row:2 / span 2 !important;
  }
}
@media (max-width:950px) {
  .header-nav {
    position:relative !important;
  }
  .visitor-metric {
    position:absolute !important;
    left:50% !important;
    right:auto !important;
    top:.55rem !important;
    width:min(54rem, calc(100vw - 1.6rem)) !important;
    max-width:min(54rem, calc(100vw - 1.6rem)) !important;
    margin:0 !important;
    z-index:9005 !important;
    transform:translate3d(-50%, -.45rem, 0) scale(.98) !important;
  }
  .visitor-metric.is-visible {
    transform:translate3d(-50%, 0, 0) scale(1) !important;
  }
  .visitor-metric.is-hiding {
    transform:translate3d(-50%, -.38rem, 0) scale(.98) !important;
  }
}

/* V56 navigation label readability: larger text, contained labels, natural word breaks. */
@media (min-width:951px) {
  .header-nav {
    grid-template-columns:minmax(16rem, 25rem) minmax(56rem, 92rem) minmax(12.8rem, 22rem) !important;
    column-gap:clamp(.7rem, 1vw, 1.6rem) !important;
  }
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 5.55rem) !important;
    grid-auto-rows:5.55rem !important;
    min-height:12.85rem !important;
    gap:.56rem !important;
    padding:1rem 1.08rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:0 !important;
    height:100% !important;
    width:100% !important;
    padding:.62rem .82rem !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:1.42rem !important;
    font-weight:850 !important;
    line-height:1.1 !important;
    letter-spacing:0 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
    text-wrap:normal !important;
  }
  .top-menu__link .reg-mark,
  .header.active .top-menu__link .reg-mark {
    display:inline !important;
    white-space:nowrap !important;
    font-size:.42em !important;
    line-height:0 !important;
    top:-.2em !important;
    margin-left:.03em !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:1.34rem !important;
  }
  :lang(ar) .top-menu__link,
  :lang(fa) .top-menu__link,
  :lang(ur) .top-menu__link {
    font-size:1.38rem !important;
    line-height:1.14 !important;
  }
  :lang(he) .top-menu__link,
  :lang(hi) .top-menu__link,
  :lang(ja) .top-menu__link,
  :lang(ko) .top-menu__link {
    font-size:1.34rem !important;
    line-height:1.14 !important;
  }
  :lang(ja) .top-menu__link,
  :lang(ko) .top-menu__link {
    word-break:keep-all !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 5.25rem) !important;
    grid-auto-rows:5.25rem !important;
    min-height:12.1rem !important;
    gap:.46rem !important;
    padding:.84rem .88rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    padding:.54rem .58rem !important;
    font-size:1.32rem !important;
    line-height:1.08 !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:1.24rem !important;
  }
  :lang(ar) .top-menu__link,
  :lang(fa) .top-menu__link,
  :lang(ur) .top-menu__link,
  :lang(he) .top-menu__link,
  :lang(hi) .top-menu__link,
  :lang(ja) .top-menu__link,
  :lang(ko) .top-menu__link {
    font-size:1.28rem !important;
  }
}

@media (min-width:951px) and (max-width:1020px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 5.15rem) !important;
    grid-auto-rows:5.15rem !important;
    min-height:11.85rem !important;
    gap:.42rem !important;
    padding:.78rem .78rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    padding:.5rem .5rem !important;
    font-size:1.26rem !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:1.18rem !important;
  }
  :lang(ar) .top-menu__link,
  :lang(fa) .top-menu__link,
  :lang(ur) .top-menu__link,
  :lang(he) .top-menu__link,
  :lang(hi) .top-menu__link,
  :lang(ja) .top-menu__link,
  :lang(ko) .top-menu__link {
    font-size:1.22rem !important;
  }
}

/* === V58 product inquiry copy === */
.zphc-products-modern .products-lead--inquiry {
  margin-top:-1.85rem !important;
  margin-bottom:3.6rem !important;
  color:var(--color-primary) !important;
}
.zphc-products-modern .products-lead--inquiry a {
  color:var(--color-primary) !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-decoration-thickness:.12em !important;
  text-underline-offset:.18em !important;
}
.zphc-products-modern .products-lead--inquiry a:hover,
.zphc-products-modern .products-lead--inquiry a:focus-visible {
  color:var(--color-primary) !important;
}
@media (max-width:700px) {
  .zphc-products-modern .products-lead--inquiry {
    margin-top:-1.2rem !important;
    margin-bottom:3rem !important;
  }
}

/* === V59 team talent inquiry copy === */
.team-welcome-expanded .team-join-inquiry {
  color:var(--color-primary) !important;
  font-weight:500 !important;
}
.team-welcome-expanded .team-join-inquiry a {
  color:var(--color-primary) !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-decoration-thickness:.12em !important;
  text-underline-offset:.18em !important;
}
.team-welcome-expanded .team-join-inquiry a:hover,
.team-welcome-expanded .team-join-inquiry a:focus-visible {
  color:var(--color-primary) !important;
}

/* V57 navigation capsules: remove the blue panel, keep separate hover-lit pills. */
@media (min-width:951px) {
  .header-nav {
    grid-template-columns:minmax(16rem, 25rem) minmax(58rem, 92rem) minmax(12.8rem, 22rem) !important;
  }
  .top-menu,
  .header.active .top-menu {
    width:100% !important;
    max-width:92rem !important;
    min-height:11.9rem !important;
    display:grid !important;
    grid-template-columns:repeat(8, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(2, 5.15rem) !important;
    grid-auto-rows:5.15rem !important;
    gap:.68rem !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow:visible !important;
    isolation:isolate !important;
  }
  .top-menu::after,
  .header.active .top-menu::after {
    display:none !important;
    content:none !important;
  }
  .top-menu__item,
  .header.active .top-menu__item {
    min-width:0 !important;
    max-width:none !important;
    width:100% !important;
    height:100% !important;
    border-radius:999px !important;
    overflow:visible !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:0 !important;
    height:100% !important;
    width:100% !important;
    padding:.58rem .74rem !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid rgb(var(--color-surface-blue-rgb) / .64) !important;
    border-radius:999px !important;
    color:#fff !important;
    background:
      radial-gradient(120% 160% at 86% 8%, rgba(255,255,255,.28) 0%, rgb(var(--color-accent-rgb) / .16) 36%, rgb(var(--color-primary-rgb) / 0) 62%),
      linear-gradient(180deg, var(--color-accent) 0%, var(--color-secondary) 28%, var(--color-primary) 65%, var(--color-primary) 100%) !important;
    box-shadow:
      inset 0 .2rem .11rem rgba(255,255,255,.5),
      inset 0 -.22rem .45rem rgb(var(--color-primary-rgb) / .24),
      0 .48rem 1.35rem rgb(var(--color-primary-rgb) / .18) !important;
    font-family:Inter, "Segoe UI", Arial, Helvetica, sans-serif !important;
    font-size:1.42rem !important;
    font-weight:850 !important;
    line-height:1.1 !important;
    letter-spacing:0 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow:hidden !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
    text-wrap:normal !important;
    text-shadow:0 .1rem .16rem rgb(var(--color-primary-rgb) / .26) !important;
  }
  .top-menu__item:nth-child(even) .top-menu__link,
  .header.active .top-menu__item:nth-child(even) .top-menu__link {
    background:
      radial-gradient(120% 160% at 86% 8%, rgba(255,255,255,.24) 0%, rgb(var(--color-accent-rgb) / .14) 36%, rgb(var(--color-primary-rgb) / 0) 62%),
      linear-gradient(180deg, var(--color-accent) 0%, var(--color-secondary) 34%, var(--color-primary) 68%, var(--color-primary) 100%) !important;
  }
  .top-menu__item.active .top-menu__link,
  .header.active .top-menu__item.active .top-menu__link,
  .top-menu__link:hover,
  .top-menu__link:focus-visible {
    background:
      radial-gradient(112% 152% at 82% 4%, rgba(255,255,255,.54) 0%, rgb(var(--color-surface-blue-rgb) / .24) 35%, rgb(var(--color-primary-rgb) / 0) 64%),
      linear-gradient(180deg, var(--color-surface-blue) 0%, var(--color-secondary) 31%, var(--color-primary) 67%, var(--color-primary) 100%) !important;
    box-shadow:
      inset 0 .24rem .12rem rgba(255,255,255,.62),
      inset 0 -.24rem .5rem rgb(var(--color-primary-rgb) / .28),
      0 .74rem 1.8rem rgb(var(--color-primary-rgb) / .26) !important;
    outline:2px solid rgb(var(--color-background-rgb) / .68) !important;
    outline-offset:-4px !important;
  }
  .top-menu__link .reg-mark,
  .header.active .top-menu__link .reg-mark {
    display:inline !important;
    white-space:nowrap !important;
    font-size:.42em !important;
    line-height:0 !important;
    top:-.2em !important;
    margin-left:.03em !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:1.32rem !important;
  }
  :lang(ar) .top-menu__link,
  :lang(fa) .top-menu__link,
  :lang(ur) .top-menu__link {
    font-family:"Noto Naskh Arabic", "Geeza Pro", Tahoma, Arial, sans-serif !important;
    font-size:1.38rem !important;
    line-height:1.14 !important;
  }
  :lang(he) .top-menu__link {
    font-family:"Arial Hebrew", "Noto Sans Hebrew", Arial, sans-serif !important;
    font-size:1.34rem !important;
    line-height:1.14 !important;
  }
  :lang(hi) .top-menu__link {
    font-family:"Noto Sans Devanagari", "Kohinoor Devanagari", Mangal, Arial, sans-serif !important;
    font-size:1.32rem !important;
    line-height:1.14 !important;
  }
  :lang(ja) .top-menu__link,
  :lang(ko) .top-menu__link {
    font-size:1.32rem !important;
    line-height:1.14 !important;
    word-break:keep-all !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 4.95rem) !important;
    grid-auto-rows:4.95rem !important;
    min-height:11.4rem !important;
    gap:.56rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    padding:.52rem .56rem !important;
    font-size:1.32rem !important;
    line-height:1.08 !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:1.22rem !important;
  }
  :lang(ar) .top-menu__link,
  :lang(fa) .top-menu__link,
  :lang(ur) .top-menu__link,
  :lang(he) .top-menu__link,
  :lang(hi) .top-menu__link,
  :lang(ja) .top-menu__link,
  :lang(ko) .top-menu__link {
    font-size:1.26rem !important;
  }
}

@media (min-width:951px) and (max-width:1020px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 4.8rem) !important;
    grid-auto-rows:4.8rem !important;
    min-height:11rem !important;
    gap:.48rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    padding:.48rem .46rem !important;
    font-size:1.24rem !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:1.2rem !important;
  }
  :lang(ar) .top-menu__link,
  :lang(fa) .top-menu__link,
  :lang(ur) .top-menu__link,
  :lang(he) .top-menu__link,
  :lang(hi) .top-menu__link,
  :lang(ja) .top-menu__link,
  :lang(ko) .top-menu__link {
    font-size:1.22rem !important;
  }
}

/* === V60 final desktop header symmetry override === */
@media (min-width:951px) {
  .header-nav {
    --z-header-side:24rem;
    --z-header-clock-width:18rem;
    --z-header-gap:2rem;
    display:grid !important;
    grid-template-columns:var(--z-header-side) minmax(0, 1fr) var(--z-header-side) !important;
    grid-template-rows:auto auto auto !important;
    column-gap:var(--z-header-gap) !important;
    align-items:start !important;
    justify-content:center !important;
    width:100% !important;
    padding:0 !important;
  }
  .header-logo,
  .header-logo__img,
  .site-language-flags {
    width:var(--z-header-side) !important;
    max-width:var(--z-header-side) !important;
  }
  .header-logo {
    grid-column:1 !important;
    grid-row:2 !important;
    justify-self:start !important;
  }
  .site-language-flags {
    grid-column:1 !important;
    grid-row:3 !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    gap:.38rem !important;
    margin-top:.65rem !important;
    justify-self:start !important;
  }
  .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    height:2.72rem !important;
    min-height:2.72rem !important;
    border-radius:.76rem !important;
  }
  .site-language-flags .flag-icon {
    font-size:1.34rem !important;
  }
  .top-menu,
  .header.active .top-menu {
    grid-column:2 !important;
    grid-row:2 / span 2 !important;
    align-self:center !important;
    justify-self:stretch !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    transform:none !important;
  }
  .world-clocks {
    grid-column:3 !important;
    grid-row:2 / span 2 !important;
    align-self:start !important;
    justify-self:end !important;
    width:var(--z-header-clock-width) !important;
    max-width:var(--z-header-clock-width) !important;
  }
}

@media (min-width:951px) and (max-width:1100px) {
  .header-nav {
    --z-header-side:22rem;
    --z-header-clock-width:16rem;
    --z-header-gap:1.6rem;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    font-size:1.18rem !important;
    padding:.46rem .44rem !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:1.14rem !important;
  }
}

@media (min-width:1281px) {
  .header-nav {
    --z-header-side:28rem;
    --z-header-clock-width:20rem;
    --z-header-gap:2.4rem;
  }
  .site-language-flags {
    gap:.48rem !important;
    margin-top:.85rem !important;
  }
  .site-language-flags .flag-lang {
    height:3.05rem !important;
    min-height:3.05rem !important;
    border-radius:.84rem !important;
  }
  .site-language-flags .flag-icon {
    font-size:1.46rem !important;
  }
}

/* === V60 final desktop navigation text containment === */
@media (min-width:951px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 5.95rem) !important;
    grid-auto-rows:5.95rem !important;
    min-height:12.5rem !important;
    gap:.62rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    min-height:0 !important;
    height:100% !important;
    padding:.5rem .52rem !important;
    font-size:1.28rem !important;
    line-height:1.08 !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:1.22rem !important;
  }
}

@media (min-width:951px) and (max-width:1100px) {
  .top-menu,
  .header.active .top-menu {
    grid-template-rows:repeat(2, 5.9rem) !important;
    grid-auto-rows:5.9rem !important;
    min-height:12.38rem !important;
    gap:.58rem !important;
  }
  .top-menu__link,
  .header.active .top-menu__link {
    padding:.48rem .4rem !important;
    font-size:1.22rem !important;
  }
  :lang(ru) .top-menu__link,
  :lang(uz) .top-menu__link,
  :lang(pl) .top-menu__link,
  :lang(de) .top-menu__link,
  :lang(fr) .top-menu__link,
  :lang(es) .top-menu__link,
  :lang(pt-BR) .top-menu__link,
  :lang(tr) .top-menu__link,
  :lang(it) .top-menu__link,
  :lang(id) .top-menu__link,
  :lang(ms) .top-menu__link,
  :lang(sw) .top-menu__link {
    font-size:1.2rem !important;
  }
}

/* === V61 site-wide copy and media protection === */
html.z-copy-guard-active,
html.z-copy-guard-active body,
html.z-copy-guard-active body * {
  -webkit-user-select:none !important;
  -moz-user-select:none !important;
  -ms-user-select:none !important;
  user-select:none !important;
  -webkit-touch-callout:none !important;
}

html.z-copy-guard-active input,
html.z-copy-guard-active textarea,
html.z-copy-guard-active [contenteditable=""],
html.z-copy-guard-active [contenteditable="true"],
html.z-copy-guard-active [data-allow-copy="true"],
html.z-copy-guard-active .allow-copy {
  -webkit-user-select:text !important;
  -moz-user-select:text !important;
  -ms-user-select:text !important;
  user-select:text !important;
  -webkit-touch-callout:default !important;
}

html.z-copy-guard-active img,
html.z-copy-guard-active picture,
html.z-copy-guard-active svg,
html.z-copy-guard-active canvas,
html.z-copy-guard-active video {
  -webkit-user-drag:none !important;
  user-drag:none !important;
  -webkit-touch-callout:none !important;
}

@media print {
  body * {
    visibility:hidden !important;
  }
  body::before {
    content:"ZPHC protected website content. Printing and copying are not permitted.";
    display:block !important;
    visibility:visible !important;
    color:var(--color-primary) !important;
    font:700 18pt/1.45 Arial, sans-serif !important;
    margin:4rem auto !important;
    max-width:720px !important;
    text-align:center !important;
  }
}

/* === V62 final desktop header visual symmetry === */
@media (min-width:951px) {
  .header-nav {
    --z-header-left-width:24rem;
    --z-header-clock-width:18rem;
    --z-header-gap:2rem;
    grid-template-columns:var(--z-header-left-width) minmax(0, 1fr) var(--z-header-clock-width) !important;
    column-gap:var(--z-header-gap) !important;
  }
  .header-logo,
  .header-logo__img,
  .site-language-flags {
    width:var(--z-header-left-width) !important;
    max-width:var(--z-header-left-width) !important;
  }
  .top-menu,
  .header.active .top-menu {
    grid-column:2 !important;
    width:100% !important;
    max-width:100% !important;
    justify-self:stretch !important;
  }
  .world-clocks {
    grid-column:3 !important;
    width:var(--z-header-clock-width) !important;
    max-width:var(--z-header-clock-width) !important;
    justify-self:start !important;
  }
}

@media (min-width:951px) and (max-width:1100px) {
  .header-nav {
    --z-header-left-width:22rem;
    --z-header-clock-width:16rem;
    --z-header-gap:1.6rem;
  }
}

@media (min-width:1281px) {
  .header-nav {
    --z-header-left-width:28rem;
    --z-header-clock-width:20rem;
    --z-header-gap:2.4rem;
  }
}

/* === V64 remove parallax line overlays, keep ZPHC branding text === */
body::before {
  background:
    radial-gradient(circle at 28% 18%, rgb(var(--color-primary-rgb) / .08), transparent 28%),
    #ffffff !important;
}

.z-watermark-matrix::before {
  content:none !important;
  display:none !important;
  background:none !important;
}

.z-parallax-finale {
  background:
    radial-gradient(at 50% 56%, rgb(var(--color-primary-rgb) / .035), rgba(255,255,255,0) 62%),
    linear-gradient(180deg, rgba(255,255,255,0), rgb(var(--color-background-rgb) / .16) 52%, rgba(255,255,255,0)) !important;
}

.z-parallax-finale::before {
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .045), transparent 64%) !important;
  background-size:100% 100% !important;
}

.z-parallax-finale::after {
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .055), rgb(var(--color-primary-rgb) / .018) 45%, transparent 72%) !important;
}

/* === V65 Telegram team image row === */
.telegram-team-strip[hidden] {
  display:none !important;
}

.telegram-team-strip {
  margin:0 0 1.4rem;
}

.telegram-team-strip__grid {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:1.4rem;
  transition:opacity .28s ease, filter .28s ease;
}

.telegram-team-strip__grid.is-changing {
  opacity:.42;
  filter:saturate(.9) blur(.08rem);
}

.telegram-team-strip__card {
  position:relative;
  display:block;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:1.2rem;
  background:var(--color-background);
  box-shadow:0 8px 20px rgb(var(--color-primary-rgb) / .08);
  isolation:isolate;
  opacity:0;
  transform:translate3d(0, 1.2rem, 0) scale(.985);
  animation:telegramTeamCineIn .82s cubic-bezier(.2,.78,.22,1) forwards;
  animation-delay:var(--z-delay, 0ms);
}

.telegram-team-strip__card::before,
.telegram-team-strip__card::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
}

.telegram-team-strip__card::before {
  background:linear-gradient(105deg, transparent 24%, rgba(255,255,255,.36) 48%, transparent 68%);
  transform:translateX(-130%);
  transition:transform .82s ease;
  mix-blend-mode:screen;
}

.telegram-team-strip__card::after {
  background:
    linear-gradient(180deg, rgb(var(--color-primary-hover-rgb) / .08), rgb(var(--color-primary-hover-rgb) / 0) 36%, rgb(var(--color-primary-hover-rgb) / .18)),
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.26), transparent 34%);
  opacity:.72;
}

.telegram-team-strip__card img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.86) contrast(1.03);
  transform:scale(1.045);
  transition:transform .7s ease, filter .45s ease;
  animation:telegramTeamPanLeft 9s ease-in-out infinite alternate;
}

.telegram-team-strip__card--fx2 img {
  animation-name:telegramTeamPanRight;
  animation-duration:10.5s;
}

.telegram-team-strip__card--fx3 img {
  animation-name:telegramTeamPanUp;
  animation-duration:9.8s;
}

.telegram-team-strip__card--fx4 img {
  animation-name:telegramTeamPanDown;
  animation-duration:11s;
}

.telegram-team-strip__card:hover::before {
  transform:translateX(130%);
}

.telegram-team-strip__card:hover img {
  filter:saturate(1.07) contrast(1.06);
  transform:scale(1.085);
}

@keyframes telegramTeamCineIn {
  to {
    opacity:1;
    transform:translate3d(0, 0, 0) scale(1);
  }
}

@keyframes telegramTeamPanLeft {
  from { transform:scale(1.045) translate3d(-1.1%, 0, 0); }
  to { transform:scale(1.085) translate3d(1.1%, -.7%, 0); }
}

@keyframes telegramTeamPanRight {
  from { transform:scale(1.05) translate3d(1.2%, -.4%, 0); }
  to { transform:scale(1.085) translate3d(-1%, .6%, 0); }
}

@keyframes telegramTeamPanUp {
  from { transform:scale(1.045) translate3d(0, 1.1%, 0); }
  to { transform:scale(1.08) translate3d(.7%, -1%, 0); }
}

@keyframes telegramTeamPanDown {
  from { transform:scale(1.045) translate3d(.7%, -1%, 0); }
  to { transform:scale(1.08) translate3d(-.8%, 1%, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .telegram-team-strip__grid,
  .telegram-team-strip__card,
  .telegram-team-strip__card img,
  .telegram-team-strip__card::before {
    animation:none !important;
    transition:none !important;
  }
  .telegram-team-strip__card {
    opacity:1;
    transform:none;
  }
  .telegram-team-strip__card img {
    transform:none;
  }
}

@media (max-width:900px) {
  .telegram-team-strip__grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:430px) {
  .telegram-team-strip {
    margin-bottom:1rem;
  }
  .telegram-team-strip__grid {
    gap:1rem;
  }
}

/* === V66 header-to-footer ZPHC flight and completed footer assembly === */
.z-page-flight {
  z-index:1 !important;
  opacity:1 !important;
  visibility:visible !important;
}

.z-page-flight__letter {
  filter:
    drop-shadow(0 .38rem .86rem rgb(var(--color-primary-hover-rgb) / .05))
    drop-shadow(0 0 calc(.35rem + var(--z-page-flight-progress, 0) * 2.6rem) rgb(var(--color-accent-rgb) / .42)) !important;
}

.z-page-flight__letter::before,
.z-page-flight__letter::after {
  opacity:var(--z-pixel-alpha, 0) !important;
}

.z-parallax-finale.is-complete {
  --z-progress:1 !important;
  --z-ease:1 !important;
}

.z-parallax-finale.is-complete .z-parallax-word {
  opacity:.32 !important;
  filter:
    drop-shadow(0 .35rem .9rem rgb(var(--color-primary-hover-rgb) / .05))
    drop-shadow(0 0 2.8rem rgb(var(--color-accent-rgb) / .34)) !important;
}

.z-parallax-finale.is-complete .z-letter,
.z-parallax-finale.is-complete .z-reg {
  opacity:1 !important;
  filter:
    drop-shadow(0 .25rem .52rem rgb(var(--color-primary-hover-rgb) / .06))
    drop-shadow(0 0 .9rem rgb(var(--color-accent-rgb) / .2)) !important;
}

@media (max-width:700px) {
  .z-page-flight__letter {
    filter:
      drop-shadow(0 .25rem .55rem rgb(var(--color-primary-hover-rgb) / .045))
      drop-shadow(0 0 calc(.24rem + var(--z-page-flight-progress, 0) * 1.5rem) rgb(var(--color-accent-rgb) / .34)) !important;
  }
  .z-parallax-finale.is-complete .z-parallax-word {
    opacity:.26 !important;
  }
}

/* === V67 article sharing and daily-growing likes === */
.z-social-actions {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:.72rem !important;
  margin:1.5rem 0 2.2rem !important;
  padding:1rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .16) !important;
  border-radius:1.2rem !important;
  background:linear-gradient(180deg, rgb(var(--color-background-rgb) / .96), rgb(var(--color-background-rgb) / .9)) !important;
  box-shadow:0 .8rem 2.2rem rgb(var(--color-primary-rgb) / .055) !important;
}

.z-social-actions .z-social-btn {
  appearance:none !important;
  -webkit-appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:3.4rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .52) !important;
  border-radius:999px !important;
  padding:.72rem 1.08rem !important;
  color:var(--color-primary) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgb(var(--color-background-rgb) / .96)) !important;
  box-shadow:
    inset 0 .1rem 0 rgba(255,255,255,.84),
    0 .42rem 1.1rem rgb(var(--color-primary-rgb) / .07) !important;
  font:700 1.18rem/1.1 Arial, Helvetica, sans-serif !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease !important;
}

.z-social-actions .z-social-btn:hover,
.z-social-actions .z-social-btn:focus-visible {
  transform:translateY(-2px) !important;
  border-color:rgb(var(--color-primary-rgb) / .82) !important;
  filter:saturate(1.05) brightness(1.02) !important;
  box-shadow:
    inset 0 .1rem 0 rgba(255,255,255,.88),
    0 .8rem 1.8rem rgb(var(--color-primary-rgb) / .14),
    0 0 1.4rem rgb(var(--color-accent-rgb) / .16) !important;
  outline:none !important;
}

.z-social-actions .z-social-btn--share {
  color:#fff !important;
  border-color:var(--color-primary) !important;
  background:linear-gradient(180deg, var(--color-accent) 0%, var(--color-primary) 58%, var(--color-primary) 100%) !important;
  box-shadow:
    inset 0 .12rem 0 rgba(255,255,255,.44),
    0 .55rem 1.35rem rgb(var(--color-primary-rgb) / .16) !important;
}

.z-social-actions .z-social-like {
  min-width:10.2rem !important;
  color:var(--color-primary) !important;
  border-color:rgb(var(--color-primary-rgb) / .62) !important;
  background:
    radial-gradient(circle at 18% 22%, rgba(255,255,255,.95), transparent 38%),
    linear-gradient(180deg, rgb(var(--color-background-rgb) / .98), rgb(var(--color-background-rgb) / .92)) !important;
}

.z-social-actions .z-social-like.is-liked {
  color:#fff !important;
  border-color:var(--color-primary) !important;
  background:linear-gradient(180deg, var(--color-accent) 0%, var(--color-primary) 58%, var(--color-primary) 100%) !important;
  box-shadow:
    inset 0 .12rem 0 rgba(255,255,255,.44),
    0 .7rem 1.5rem rgb(var(--color-primary-rgb) / .2),
    0 0 1.5rem rgb(var(--color-accent-rgb) / .24) !important;
}

.z-social-actions--index {
  margin:1.05rem 0 0 !important;
  padding:.75rem 0 0 !important;
  border:0 !important;
  border-top:1px solid rgb(var(--color-primary-rgb) / .12) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.z-social-actions--index .z-social-btn {
  min-height:2.7rem !important;
  padding:.52rem .78rem !important;
  font-size:1.05rem !important;
  box-shadow:0 .28rem .82rem rgb(var(--color-primary-rgb) / .055) !important;
}

.z-social-actions--index .z-social-like {
  min-width:8.8rem !important;
}

.blog-list-item .z-social-actions {
  position:relative !important;
  z-index:3 !important;
}

@media (max-width:700px) {
  .z-social-actions {
    gap:.56rem !important;
    padding:.82rem !important;
  }
  .z-social-actions .z-social-btn {
    min-height:3rem !important;
    padding:.62rem .82rem !important;
    font-size:1.08rem !important;
  }
  .z-social-actions--index .z-social-btn {
    min-height:2.55rem !important;
    padding:.48rem .62rem !important;
    font-size:.98rem !important;
  }
}

/* === V68 consistent 110% button hover magnification === */
.top-menu__link,
.header.active .top-menu__link,
.btn,
.default-btn,
.btn-pill,
.tg-button,
.z-doc-button,
.z-share a,
.z-share button,
.z-social-actions .z-social-btn,
.contact-response-close,
.go-up,
button {
  transform-origin:center center !important;
  will-change:transform !important;
}

.top-menu__link:hover,
.top-menu__link:focus-visible,
.header.active .top-menu__link:hover,
.header.active .top-menu__link:focus-visible {
  transform:translateZ(0) scale(1.1) !important;
}

.btn:hover,
.btn:focus-visible,
button:hover,
button:focus-visible,
.z-doc-button:hover,
.z-doc-button:focus-visible,
.contact-response-close:hover,
.contact-response-close:focus-visible,
.go-up:hover,
.go-up:focus-visible {
  transform:scale(1.1) !important;
}

.default-btn:hover,
.default-btn:focus-visible,
.tg-button:hover,
.tg-button:focus-visible,
.z-share a:hover,
.z-share a:focus-visible,
.z-share button:hover,
.z-share button:focus-visible,
.z-social-actions .z-social-btn:hover,
.z-social-actions .z-social-btn:focus-visible {
  transform:translateY(-2px) scale(1.1) !important;
}

.btn-pill:hover,
.btn-pill:focus-visible {
  transform:translateY(-2px) scale(1.1) !important;
}

@media (max-width:600px) {
  .btn-pill:hover,
  .btn-pill:focus-visible {
    transform:translateY(-2px) rotate(-90deg) scale(1.1) !important;
  }
}

/* === V82 blog index cards, filters, start-here guides and sticky article contents === */
.blog-index-wrap {
  max-width:118rem !important;
}
.blog-index-wrap .blog-intro {
  max-width:88rem;
  margin:0 auto 2.4rem;
  text-align:center;
}
.blog-section-heading {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1rem;
  margin:0 0 1rem;
}
.blog-section-heading h2 {
  margin:0;
  color:var(--color-primary);
  font-size:clamp(1.75rem, 1.55vw, 2.25rem);
  line-height:1.15;
  font-weight:850;
}
.blog-start-here,
.blog-controls,
.blog-tool-strip {
  margin:0 0 2rem;
}
.blog-start-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
}
.blog-start-grid a,
.blog-tool-strip__links a {
  text-decoration:none !important;
}
.blog-start-grid a {
  min-height:10rem;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:.8rem;
  padding:1.25rem 1.35rem;
  border:1px solid rgb(var(--color-primary-rgb) / .2);
  border-radius:1rem;
  background:linear-gradient(135deg,rgb(var(--color-background-rgb) / .96),rgba(255,255,255,.98) 62%,rgb(var(--color-background-rgb) / .96));
  box-shadow:0 .85rem 2.1rem rgb(var(--color-primary-rgb) / .08), inset 0 1px 0 rgba(255,255,255,.92);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.blog-start-grid a:hover,
.blog-start-grid a:focus-visible {
  transform:translateY(-2px);
  border-color:rgb(var(--color-primary-rgb) / .38);
  box-shadow:0 1.1rem 2.6rem rgb(var(--color-primary-rgb) / .13), inset 0 1px 0 rgba(255,255,255,.96);
  outline:none;
}
.blog-start-grid span {
  align-self:flex-start;
  padding:.32rem .68rem;
  border-radius:999px;
  color:var(--color-primary);
  background:var(--color-background);
  font-weight:850;
  font-size:.92rem;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.blog-start-grid strong {
  color:var(--color-primary);
  font-size:1.35rem;
  line-height:1.22;
}
.blog-controls {
  display:grid;
  grid-template-columns:minmax(24rem, .8fr) minmax(0, 1.2fr);
  gap:1rem;
  align-items:end;
  padding:1.1rem;
  border:1px solid rgb(var(--color-primary-rgb) / .16);
  border-radius:1.2rem;
  background:rgba(255,255,255,.9);
  box-shadow:0 .75rem 1.8rem rgb(var(--color-primary-rgb) / .06);
}
.blog-search {
  display:grid;
  gap:.45rem;
  margin:0;
}
.blog-search span {
  color:var(--color-primary);
  font-weight:850;
  font-size:1.05rem;
}
.blog-search input {
  width:100%;
  min-height:3.7rem;
  border:1px solid rgb(var(--color-primary-rgb) / .24);
  border-radius:999px;
  padding:.75rem 1.15rem;
  color:var(--color-primary);
  background:#fff;
  font-size:1.22rem;
  font-weight:700;
}
.blog-search input:focus {
  outline:3px solid rgb(var(--color-primary-rgb) / .22);
  outline-offset:2px;
}
.blog-filter {
  display:flex;
  flex-wrap:wrap;
  gap:.6rem;
}
.blog-filter__button {
  min-height:3rem;
  border:1px solid rgb(var(--color-primary-rgb) / .22);
  border-radius:999px;
  padding:.58rem .95rem;
  color:var(--color-primary);
  background:#fff;
  font-weight:850;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}
.blog-filter__button:hover,
.blog-filter__button:focus-visible {
  transform:translateY(-1px);
  box-shadow:0 .55rem 1.25rem rgb(var(--color-primary-rgb) / .1);
  outline:none;
}
.blog-filter__button.is-active {
  color:#fff;
  border-color:rgb(var(--color-primary-rgb) / .45);
  background:linear-gradient(180deg,var(--color-secondary) 0%,var(--color-primary) 100%);
  box-shadow:0 .7rem 1.6rem rgb(var(--color-primary-rgb) / .18);
}
.blog-tool-strip {
  padding:1.15rem;
  border:1px solid rgb(var(--color-primary-rgb) / .16);
  border-radius:1.2rem;
  background:linear-gradient(135deg,rgb(var(--color-background-rgb) / .96),rgba(255,255,255,.98));
}
.blog-tool-strip__links {
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
}
.blog-tool-strip__links a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:3.2rem;
  padding:.65rem 1rem;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(180deg,var(--color-secondary) 0%,var(--color-primary) 100%);
  box-shadow:0 .55rem 1.25rem rgb(var(--color-primary-rgb) / .16), inset 0 1px 0 rgba(255,255,255,.28);
  font-weight:850;
}
.blog-empty {
  padding:1.3rem 1.5rem;
  border:1px solid rgb(var(--color-primary-rgb) / .18);
  border-radius:1rem;
  color:var(--color-primary);
  background:var(--color-background);
  font-weight:800;
  text-align:center;
}
.blog-index-wrap .blog-list {
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(28rem,1fr)) !important;
  gap:1.35rem !important;
}
.blog-index-wrap .blog-list-item {
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  gap:0 !important;
  min-height:100%;
  padding:0 !important;
  border-radius:1.25rem !important;
  overflow:hidden !important;
  background:rgba(255,255,255,.96) !important;
}
.blog-index-wrap .blog-list-item[hidden] {
  display:none !important;
}
.blog-index-wrap .blog-list-icon {
  order:-1;
  flex:none !important;
  width:100% !important;
  height:14rem !important;
  border-radius:0 !important;
  background:var(--color-background) !important;
}
.blog-index-wrap .blog-list-icon img {
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:0 !important;
}
.blog-index-wrap .blog-list-content {
  display:flex;
  flex-direction:column;
  gap:.65rem;
  padding:1.25rem 1.35rem 1.35rem;
  flex:1 1 auto;
}
.blog-index-wrap .blog-list-content time {
  color:var(--color-primary);
  font-size:1.06rem;
  font-weight:850;
}
.blog-card-meta {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.45rem;
}
.blog-card-category,
.blog-reading-time {
  display:inline-flex;
  align-items:center;
  min-height:2rem;
  padding:.28rem .62rem;
  border-radius:999px;
  font-size:.86rem;
  line-height:1.1;
  font-weight:850;
}
.blog-card-category {
  color:var(--color-primary);
  background:var(--color-background);
}
.blog-reading-time {
  color:var(--color-primary);
  background:var(--color-background);
}
.blog-index-wrap .blog-list-content h2 {
  color:var(--color-primary);
  font-size:1.48rem !important;
  line-height:1.22 !important;
  margin:.15rem 0 .1rem !important;
  font-weight:850;
}
.blog-index-wrap .blog-list-content p {
  color:var(--color-primary);
  font-size:1.16rem !important;
  line-height:1.55 !important;
  margin:0 !important;
}
.blog-index-wrap .z-social-actions--index {
  margin-top:auto !important;
  padding-top:.85rem !important;
}
.article-toc {
  position:sticky;
  top:1rem;
  z-index:9;
  margin:1.6rem 0 2rem;
  padding:1rem;
  border:1px solid rgb(var(--color-primary-rgb) / .18);
  border-radius:1.1rem;
  background:rgb(var(--color-background-rgb) / .96);
  box-shadow:0 .75rem 1.8rem rgb(var(--color-primary-rgb) / .08);
  backdrop-filter:blur(10px);
}
.article-toc__toggle {
  width:100%;
  min-height:3rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border:0;
  border-radius:.8rem;
  padding:.65rem .85rem;
  color:#fff;
  background:linear-gradient(180deg,var(--color-secondary) 0%,var(--color-primary) 100%);
  font-weight:850;
  cursor:pointer;
}
.article-toc__toggle::after {
  content:'';
  width:.65rem;
  height:.65rem;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  transition:transform .2s ease;
}
.article-toc.is-collapsed .article-toc__toggle::after {
  transform:rotate(-45deg);
}
.article-toc ol {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.45rem .75rem;
  margin:.85rem 0 0 !important;
  padding:0 !important;
  list-style:none;
  max-height:18rem;
  overflow:auto;
}
.article-toc.is-collapsed ol {
  display:none;
}
.article-toc li {
  margin:0 !important;
  font-size:1rem !important;
  line-height:1.32 !important;
}
.article-toc a {
  display:block;
  padding:.52rem .65rem;
  border-radius:.7rem;
  color:var(--color-primary);
  background:#fff;
  border:1px solid rgb(var(--color-primary-rgb) / .1);
  text-decoration:none !important;
  font-weight:750;
}
.article-toc a:hover,
.article-toc a:focus-visible,
.article-toc a.is-active {
  color:#fff;
  background:var(--color-primary);
  outline:none;
}
@media (max-width:980px) {
  .blog-start-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .blog-controls {
    grid-template-columns:1fr;
  }
}
@media (max-width:700px) {
  .blog-start-grid,
  .blog-index-wrap .blog-list {
    grid-template-columns:1fr !important;
  }
  .blog-index-wrap .blog-list-icon {
    height:13rem !important;
  }
  .blog-filter__button,
  .blog-tool-strip__links a {
    flex:1 1 auto;
  }
  .article-toc {
    top:.4rem;
    margin:1.1rem -0.4rem 1.5rem;
    padding:.75rem;
  }
  .article-toc ol {
    grid-template-columns:1fr;
    max-height:42vh;
  }
}

/* === V69 logo heartbeat hover === */
.header-logo {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
}

.header-logo__img {
  transform-origin:center center !important;
  backface-visibility:hidden !important;
  will-change:transform, filter !important;
}

.header-logo:hover .header-logo__img,
.header-logo:focus-visible .header-logo__img {
  animation:zLogoHeartbeat .92s cubic-bezier(.22, .72, .24, 1.18) infinite !important;
  filter:
    drop-shadow(0 .22rem .58rem rgb(var(--color-primary-rgb) / .2))
    drop-shadow(0 0 1.2rem rgb(var(--color-accent-rgb) / .18))
    brightness(1.04) !important;
}

@keyframes zLogoHeartbeat {
  0%, 100% {
    transform:translateZ(0) scale(1);
  }
  12% {
    transform:translateZ(0) scale(1.075);
  }
  24% {
    transform:translateZ(0) scale(.985);
  }
  38% {
    transform:translateZ(0) scale(1.13);
  }
  54% {
    transform:translateZ(0) scale(1);
  }
  72% {
    transform:translateZ(0) scale(1.045);
  }
}

@media (prefers-reduced-motion:reduce) {
  .header-logo:hover .header-logo__img,
  .header-logo:focus-visible .header-logo__img {
    animation:none !important;
    transform:translateZ(0) scale(1.06) !important;
  }
}

/* === V70 footer edition marker === */
.footer-edition {
  display:block !important;
  width:100% !important;
  margin:1rem auto 0 !important;
  color:rgba(255,255,255,.94) !important;
  font-family:Inter, "Segoe UI", Arial, Helvetica, sans-serif !important;
  font-size:1.05rem !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  letter-spacing:.04em !important;
  text-align:center !important;
  text-transform:none !important;
}

.footer-edition::before {
  content:'' !important;
  display:block !important;
  width:min(18rem, 48vw) !important;
  height:1px !important;
  margin:0 auto .85rem !important;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.42), transparent) !important;
}

/* === V71 logo-origin page-flight parallax and clean footer assembly === */
html.z-flight-v71 .z-page-flight {
  z-index:0 !important;
  opacity:1 !important;
  visibility:visible !important;
  mix-blend-mode:multiply !important;
  filter:saturate(.94) contrast(1.02) !important;
}

html.z-flight-v71 .z-page-flight__letter {
  font-size:clamp(5.2rem, 8.4vw, 10.4rem) !important;
  color:var(--color-primary) !important;
  background:linear-gradient(180deg, rgb(var(--color-surface-blue-rgb) / .72), rgb(var(--color-primary-rgb) / .58) 58%, rgb(var(--color-primary-rgb) / .48)) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  text-shadow:none !important;
  filter:
    drop-shadow(0 .28rem .74rem rgb(var(--color-primary-hover-rgb) / .04))
    drop-shadow(0 0 calc(.4rem + var(--z-page-flight-progress, 0) * 2.2rem) rgb(var(--color-accent-rgb) / .34)) !important;
}

html.z-flight-v71 .z-page-flight__letter.zf-r {
  font-size:clamp(1.35rem, 2.05vw, 2.5rem) !important;
}

html.z-flight-v71 .z-page-flight__letter::before,
html.z-flight-v71 .z-page-flight__letter::after {
  opacity:calc(var(--z-pixel-alpha, 0) * .72) !important;
}

html.z-flight-v71 .z-parallax-finale {
  --z-assemble:var(--z-ease, var(--z-progress, 0)) !important;
  --z-flight:calc(1 - var(--z-assemble)) !important;
  background:
    radial-gradient(at 50% 54%, rgb(var(--color-primary-rgb) / .05), rgba(255,255,255,0) 62%),
    linear-gradient(180deg, rgba(255,255,255,0), rgb(var(--color-background-rgb) / .2) 52%, rgba(255,255,255,0)) !important;
}

html.z-flight-v71 .z-parallax-finale::before {
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .045), transparent 66%) !important;
  filter:blur(.38rem) !important;
  opacity:calc(.025 + var(--z-assemble, 0) * .08) !important;
  transform:translate3d(-50%, -50%, 0) scale(calc(.88 + var(--z-assemble, 0) * .12)) !important;
}

html.z-flight-v71 .z-parallax-finale::after {
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .055), rgb(var(--color-primary-rgb) / .016) 45%, transparent 72%) !important;
  opacity:calc(.028 + var(--z-assemble, 0) * .075) !important;
  transform:translate3d(-50%, -52%, 0) scale(calc(.84 + var(--z-assemble, 0) * .16)) !important;
}

html.z-flight-v71 .z-parallax-word {
  opacity:calc(var(--z-assemble, 0) * .78) !important;
  transform:
    translate3d(0, calc((1 - var(--z-assemble, 0)) * 1.8rem), 0)
    scale(calc(.96 + var(--z-assemble, 0) * .04)) !important;
  filter:
    drop-shadow(0 .45rem .95rem rgb(var(--color-primary-hover-rgb) / .055))
    drop-shadow(0 0 calc(.35rem + var(--z-assemble, 0) * 2.4rem) rgb(var(--color-accent-rgb) / .28)) !important;
}

html.z-flight-v71 .z-letter,
html.z-flight-v71 .z-reg {
  opacity:calc(.04 + var(--z-assemble, 0) * .96) !important;
  transform:none !important;
  filter:
    drop-shadow(0 .25rem .52rem rgb(var(--color-primary-hover-rgb) / .055))
    drop-shadow(0 0 calc(.2rem + var(--z-assemble, 0) * .85rem) rgb(var(--color-accent-rgb) / .18)) !important;
}

html.z-flight-v71 .z-reg {
  transform:translateY(-.42em) !important;
}

html.z-flight-v71 .z-parallax-slogan {
  opacity:calc(var(--z-assemble, 0) * .82) !important;
  transform:translate3d(0, calc((1 - var(--z-assemble, 0)) * 1.2rem), 0) !important;
}

html.z-flight-v71 .z-parallax-finale.is-complete .z-parallax-word {
  opacity:.86 !important;
  filter:
    drop-shadow(0 .5rem 1rem rgb(var(--color-primary-hover-rgb) / .06))
    drop-shadow(0 0 3.1rem rgb(var(--color-accent-rgb) / .32)) !important;
}

html.z-flight-v71 .z-parallax-finale.is-complete .z-letter,
html.z-flight-v71 .z-parallax-finale.is-complete .z-reg {
  opacity:1 !important;
}

@media (max-width:700px) {
  html.z-flight-v71 .z-page-flight__letter {
    font-size:clamp(3.9rem, 17vw, 6.6rem) !important;
  }
  html.z-flight-v71 .z-page-flight__letter.zf-r {
    font-size:clamp(1.05rem, 5.4vw, 1.85rem) !important;
  }
  html.z-flight-v71 .z-parallax-word {
    opacity:calc(var(--z-assemble, 0) * .7) !important;
  }
}

/* === V72 public-style low-opacity ZPHC watermark from header logo to footer === */
html.z-flight-v72 .z-page-flight {
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
}

html.z-flight-v72 .parallax-logo-build {
  display:block !important;
  position:fixed !important;
  inset:0 !important;
  z-index:3 !important;
  pointer-events:none !important;
  overflow:hidden !important;
  opacity:1 !important;
  visibility:visible !important;
  mix-blend-mode:multiply !important;
  contain:layout paint style !important;
}

html.z-flight-v72 .parallax-logo-build::after {
  content:none !important;
  display:none !important;
}

html.z-flight-v72 .parallax-logo-build::before {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:var(--plb-x, 50vw) !important;
  top:var(--plb-y, 54vh) !important;
  right:auto !important;
  bottom:auto !important;
  width:clamp(7rem, 11vw, 15rem) !important;
  aspect-ratio:1 !important;
  border-radius:50% !important;
  opacity:calc(var(--plb-opacity, .055) * .55) !important;
  background:radial-gradient(circle at 72% 50%, rgb(var(--color-primary-rgb) / .18), transparent 61%) !important;
  box-shadow:0 0 2.6rem rgb(var(--color-primary-rgb) / .08) !important;
  transform:
    translate3d(-50%, -50%, 0)
    translate3d(clamp(-9rem, -7vw, -3rem), clamp(-2rem, -1.2vw, -.6rem), 0)
    scale(calc(var(--plb-scale, .45) * 1.05)) !important;
  filter:blur(.04rem) !important;
}

html.z-flight-v72 .parallax-logo-build .plb-track {
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  right:auto !important;
  bottom:auto !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  gap:.045em !important;
  color:var(--color-primary) !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:clamp(10rem, 23vw, 27rem) !important;
  font-weight:900 !important;
  letter-spacing:-.075em !important;
  line-height:.78 !important;
  opacity:var(--plb-opacity, .055) !important;
  text-shadow:none !important;
  filter:
    drop-shadow(0 .26rem .7rem rgb(var(--color-primary-hover-rgb) / .022))
    drop-shadow(0 0 1.2rem rgb(var(--color-accent-rgb) / .12)) !important;
  transform:
    translate3d(var(--plb-x, 50vw), var(--plb-y, 54vh), 0)
    translate(-50%, -50%)
    scale(var(--plb-scale, .45))
    rotate(var(--plb-rot, 0deg)) !important;
  transform-origin:50% 50% !important;
  transform-style:flat !important;
  transition:none !important;
  will-change:transform, opacity !important;
}

html.z-flight-v72 .parallax-logo-build .plb-letter,
html.z-flight-v72 .parallax-logo-build .plb-reg {
  display:inline-block !important;
  opacity:1 !important;
  color:var(--color-primary) !important;
  background:linear-gradient(180deg, rgb(var(--color-surface-blue-rgb) / .82), rgb(var(--color-primary-rgb) / .7) 58%, rgb(var(--color-primary-rgb) / .56)) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  transform:none !important;
  filter:none !important;
}

html.z-flight-v72 .parallax-logo-build .plb-reg {
  font-size:.22em !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  margin-left:.12em !important;
  transform:translateY(-.64em) !important;
}

html.z-flight-v72 .z-parallax-finale {
  --z-assemble:var(--z-ease, var(--z-progress, 0)) !important;
  --z-flight:calc(1 - var(--z-assemble)) !important;
  background:
    radial-gradient(at 50% 56%, rgb(var(--color-primary-rgb) / .026), rgba(255,255,255,0) 64%),
    linear-gradient(180deg, rgba(255,255,255,0), rgb(var(--color-background-rgb) / .12) 52%, rgba(255,255,255,0)) !important;
}

html.z-flight-v72 .z-parallax-finale::before {
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .03), transparent 66%) !important;
  opacity:calc(.01 + var(--z-assemble, 0) * .032) !important;
  filter:blur(.1rem) !important;
}

html.z-flight-v72 .z-parallax-finale::after {
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .04), rgb(var(--color-primary-rgb) / .014) 45%, transparent 72%) !important;
  opacity:calc(.012 + var(--z-assemble, 0) * .032) !important;
}

html.z-flight-v72 .z-parallax-word {
  opacity:calc(.025 + var(--z-assemble, 0) * .075) !important;
  filter:
    drop-shadow(0 .2rem .55rem rgb(var(--color-primary-hover-rgb) / .025))
    drop-shadow(0 0 calc(.25rem + var(--z-assemble, 0) * 1.2rem) rgb(var(--color-accent-rgb) / .14)) !important;
  transform:
    translate3d(0, calc((1 - var(--z-assemble, 0)) * .65rem), 0)
    scale(calc(.985 + var(--z-assemble, 0) * .015)) !important;
}

html.z-flight-v72 .z-letter,
html.z-flight-v72 .z-reg {
  opacity:1 !important;
  background:linear-gradient(180deg, rgb(var(--color-surface-blue-rgb) / .7), rgb(var(--color-primary-rgb) / .62) 58%, rgb(var(--color-primary-rgb) / .48)) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  filter:none !important;
}

html.z-flight-v72 .z-l1 {
  transform:translate3d(calc(var(--z-flight, 0) * -3.2rem), calc(var(--z-flight, 0) * -.24rem), 0) rotateZ(calc(var(--z-flight, 0) * -1.2deg)) !important;
}

html.z-flight-v72 .z-l2 {
  transform:translate3d(calc(var(--z-flight, 0) * -1.25rem), calc(var(--z-flight, 0) * .18rem), 0) rotateZ(calc(var(--z-flight, 0) * .8deg)) !important;
}

html.z-flight-v72 .z-l3 {
  transform:translate3d(calc(var(--z-flight, 0) * 1.25rem), calc(var(--z-flight, 0) * -.18rem), 0) rotateZ(calc(var(--z-flight, 0) * -.8deg)) !important;
}

html.z-flight-v72 .z-l4 {
  transform:translate3d(calc(var(--z-flight, 0) * 3.2rem), calc(var(--z-flight, 0) * .24rem), 0) rotateZ(calc(var(--z-flight, 0) * 1.2deg)) !important;
}

html.z-flight-v72 .z-reg {
  transform:translate3d(calc(var(--z-flight, 0) * 1.55rem), calc(-.42em + var(--z-flight, 0) * -.28rem), 0) rotateZ(calc(var(--z-flight, 0) * .8deg)) !important;
}

html.z-flight-v72 .z-parallax-slogan {
  display:block !important;
  opacity:calc(var(--z-assemble, 0) * .075) !important;
  color:rgb(var(--color-primary-rgb) / .32) !important;
  text-shadow:none !important;
  transform:translate3d(0, calc((1 - var(--z-assemble, 0)) * .42rem), 0) !important;
}

html.z-flight-v72 .z-parallax-slogan::before {
  display:none !important;
}

html.z-flight-v72 .z-parallax-finale.is-complete .z-parallax-word {
  opacity:.1 !important;
  filter:
    drop-shadow(0 .22rem .58rem rgb(var(--color-primary-hover-rgb) / .028))
    drop-shadow(0 0 1.45rem rgb(var(--color-accent-rgb) / .15)) !important;
}

html.z-flight-v72 .z-parallax-finale.is-complete .z-parallax-slogan {
  opacity:.075 !important;
}

@media (max-width:700px) {
  html.z-flight-v72 .parallax-logo-build .plb-track {
    font-size:clamp(8rem, 35vw, 13rem) !important;
  }
  html.z-flight-v72 .parallax-logo-build::before {
    width:clamp(5.5rem, 20vw, 8.5rem) !important;
  }
  html.z-flight-v72 .z-parallax-word {
    opacity:calc(.028 + var(--z-assemble, 0) * .072) !important;
  }
}

/* === V73 original-style low-opacity flying letters from header logo to footer logo === */
html.z-flight-v73 .parallax-logo-build {
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
}

html.z-flight-v73 .z-page-flight {
  display:block !important;
  position:fixed !important;
  inset:0 !important;
  z-index:3 !important;
  pointer-events:none !important;
  visibility:visible !important;
  opacity:var(--z-flight-layer-opacity, 1) !important;
  perspective:90rem !important;
  perspective-origin:50% 42% !important;
  mix-blend-mode:multiply !important;
  contain:layout paint style !important;
}

html.z-flight-v73 .z-page-flight__letter {
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  display:block !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-weight:900 !important;
  font-size:clamp(6rem, 8.8vw, 10.8rem) !important;
  line-height:.8 !important;
  letter-spacing:0 !important;
  color:var(--color-primary) !important;
  background:linear-gradient(180deg, rgb(var(--color-surface-blue-rgb) / .84), rgb(var(--color-primary-rgb) / .72) 58%, rgb(var(--color-primary-rgb) / .58)) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  text-shadow:none !important;
  filter:
    drop-shadow(0 .26rem .72rem rgb(var(--color-primary-hover-rgb) / .025))
    drop-shadow(0 0 calc(.18rem + var(--z-page-flight-progress, 0) * 1.2rem) rgb(var(--color-accent-rgb) / .16)) !important;
  opacity:.05;
  transform:translate3d(-100vw,-100vh,0);
  transform-style:preserve-3d !important;
  will-change:transform, opacity !important;
}

html.z-flight-v73 .z-page-flight__letter::before,
html.z-flight-v73 .z-page-flight__letter::after {
  opacity:var(--z-pixel-alpha, 0) !important;
}

html.z-flight-v73 .z-page-flight__letter.zf-r {
  font-size:clamp(1.6rem, 2.2vw, 2.8rem) !important;
  font-weight:800 !important;
}

html.z-flight-v73 .z-parallax-finale {
  --z-assemble:var(--z-ease, var(--z-progress, 0)) !important;
  --z-flight:calc(1 - var(--z-assemble)) !important;
  min-height:clamp(11.6rem, 13.2vw, 17.2rem) !important;
  margin:0 !important;
  padding:clamp(1.3rem, 2vw, 2.2rem) 1rem clamp(1.4rem, 2.2vw, 2.6rem) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:
    radial-gradient(ellipse at 50% 56%, rgb(var(--color-primary-rgb) / .032), rgba(255,255,255,0) 62%),
    linear-gradient(180deg, rgba(255,255,255,0), rgb(var(--color-background-rgb) / .13) 52%, rgba(255,255,255,0)) !important;
  box-shadow:
    inset 0 3rem 3rem -3rem #fff,
    inset 0 -3rem 3rem -3rem #fff !important;
  border:0 !important;
  overflow:hidden !important;
}

html.z-flight-v73 .z-parallax-finale::before {
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .032), transparent 68%) !important;
  background-size:100% 100% !important;
  opacity:calc(.008 + var(--z-assemble) * .024) !important;
  filter:blur(.08rem) !important;
}

html.z-flight-v73 .z-parallax-finale::after {
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .045), rgb(var(--color-primary-rgb) / .014) 46%, transparent 74%) !important;
  opacity:calc(.01 + var(--z-assemble) * .03) !important;
  filter:blur(.18rem) !important;
}

html.z-flight-v73 .z-parallax-word {
  position:relative !important;
  z-index:2 !important;
  font-size:clamp(7rem, 8.8vw, 10.8rem) !important;
  line-height:.8 !important;
  opacity:calc(.05 + var(--z-assemble) * .05) !important;
  filter:
    drop-shadow(0 .24rem .68rem rgb(var(--color-primary-hover-rgb) / .026))
    drop-shadow(0 0 calc(var(--z-assemble) * 1.4rem) rgb(var(--color-accent-rgb) / .16)) !important;
  transform:
    translate3d(0, calc(var(--z-flight) * -5.2rem), calc(var(--z-flight) * -2rem))
    rotateX(calc(var(--z-flight) * 10deg))
    scale(calc(.95 + var(--z-assemble) * .05)) !important;
}

html.z-flight-v73 .z-letter,
html.z-flight-v73 .z-reg {
  background:linear-gradient(180deg, rgb(var(--color-surface-blue-rgb) / .74), rgb(var(--color-primary-rgb) / .66) 58%, rgb(var(--color-primary-rgb) / .52)) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:var(--color-primary) !important;
  opacity:1 !important;
  transition:none !important;
  will-change:transform !important;
}

html.z-flight-v73 .z-l1 {
  transform:
    translate3d(calc(var(--z-flight) * -28vw), calc(var(--z-flight) * -8.4rem), calc(var(--z-flight) * -14rem))
    rotateX(calc(var(--z-flight) * 24deg))
    rotateY(calc(var(--z-flight) * -56deg))
    rotateZ(calc(var(--z-flight) * -18deg)) !important;
}

html.z-flight-v73 .z-l2 {
  transform:
    translate3d(calc(var(--z-flight) * -10vw), calc(var(--z-flight) * -12rem), calc(var(--z-flight) * -10rem))
    rotateX(calc(var(--z-flight) * -20deg))
    rotateY(calc(var(--z-flight) * 40deg))
    rotateZ(calc(var(--z-flight) * 13deg)) !important;
}

html.z-flight-v73 .z-l3 {
  transform:
    translate3d(calc(var(--z-flight) * 10vw), calc(var(--z-flight) * -11rem), calc(var(--z-flight) * -10rem))
    rotateX(calc(var(--z-flight) * 20deg))
    rotateY(calc(var(--z-flight) * -40deg))
    rotateZ(calc(var(--z-flight) * -13deg)) !important;
}

html.z-flight-v73 .z-l4 {
  transform:
    translate3d(calc(var(--z-flight) * 28vw), calc(var(--z-flight) * -8.4rem), calc(var(--z-flight) * -14rem))
    rotateX(calc(var(--z-flight) * -24deg))
    rotateY(calc(var(--z-flight) * 56deg))
    rotateZ(calc(var(--z-flight) * 18deg)) !important;
}

html.z-flight-v73 .z-reg {
  transform:
    translate3d(calc(var(--z-flight) * 16vw), calc(var(--z-flight) * -13rem), calc(var(--z-flight) * -8rem))
    rotateX(calc(var(--z-flight) * 22deg))
    rotateY(calc(var(--z-flight) * 42deg))
    rotateZ(calc(var(--z-flight) * 22deg)) !important;
}

html.z-flight-v73 .z-parallax-finale.is-complete .z-parallax-word {
  opacity:.1 !important;
}

html.z-flight-v73 .z-parallax-slogan {
  display:none !important;
}

html.z-flight-v73 .z-sport-orbit {
  opacity:calc(.008 + var(--z-assemble) * .024) !important;
}

@media (max-width:700px) {
  html.z-flight-v73 .z-page-flight__letter {
    font-size:clamp(4.2rem, 19vw, 7rem) !important;
  }
  html.z-flight-v73 .z-page-flight__letter.zf-r {
    font-size:clamp(1.2rem, 6vw, 2rem) !important;
  }
  html.z-flight-v73 .z-parallax-word {
    font-size:clamp(5rem, 20vw, 7.2rem) !important;
    opacity:calc(.05 + var(--z-assemble) * .05) !important;
  }
}

/* === V77 cinematic low-opacity logo flight: smooth from header logo to footer === */
html.z-flight-v77 .parallax-logo-build {
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
}

html.z-flight-v77 .z-page-flight {
  display:block !important;
  position:fixed !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  visibility:visible !important;
  opacity:1 !important;
  perspective:120rem !important;
  perspective-origin:50% 42% !important;
  mix-blend-mode:normal !important;
  contain:layout style !important;
}

html.z-flight-v77 .z-page-flight__letter {
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  display:block !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-weight:900 !important;
  font-size:clamp(7.2rem, 9.6vw, 12.4rem) !important;
  line-height:.78 !important;
  letter-spacing:0 !important;
  color:var(--color-primary) !important;
  background:linear-gradient(180deg, rgb(var(--color-accent-rgb) / .9), rgb(var(--color-primary-rgb) / .76) 58%, rgb(var(--color-primary-rgb) / .62)) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  text-shadow:none !important;
  filter:none !important;
  opacity:.05;
  transform:translate3d(-100vw,-100vh,0);
  transform-style:preserve-3d !important;
  backface-visibility:hidden !important;
  will-change:transform, opacity !important;
}

html.z-flight-v77 .z-page-flight__letter::before,
html.z-flight-v77 .z-page-flight__letter::after {
  display:none !important;
  content:none !important;
}

html.z-flight-v77 .z-page-flight__letter.zf-r {
  font-size:clamp(1.55rem, 2.15vw, 2.9rem) !important;
  font-weight:800 !important;
}

html.z-flight-v77 .z-parallax-finale {
  min-height:clamp(11.6rem, 13.2vw, 17.2rem) !important;
  margin:0 !important;
  padding:clamp(1.3rem, 2vw, 2.2rem) 1rem clamp(1.4rem, 2.2vw, 2.6rem) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:
    radial-gradient(ellipse at 50% 56%, rgb(var(--color-primary-rgb) / .026), rgba(255,255,255,0) 64%),
    linear-gradient(180deg, rgba(255,255,255,0), rgb(var(--color-background-rgb) / .11) 52%, rgba(255,255,255,0)) !important;
  box-shadow:
    inset 0 3rem 3rem -3rem #fff,
    inset 0 -3rem 3rem -3rem #fff !important;
  border:0 !important;
  overflow:visible !important;
}

html.z-flight-v77 .z-parallax-finale::before {
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .025), transparent 68%) !important;
  opacity:calc(.006 + var(--z-v77-assemble, 0) * .02) !important;
  filter:blur(.08rem) !important;
}

html.z-flight-v77 .z-parallax-finale::after {
  background:radial-gradient(ellipse at center, rgb(var(--color-primary-rgb) / .038), rgb(var(--color-primary-rgb) / .012) 46%, transparent 74%) !important;
  opacity:calc(.008 + var(--z-v77-assemble, 0) * .024) !important;
  filter:blur(.18rem) !important;
}

html.z-flight-v77 .z-parallax-word,
html.z-flight-v77 .z-parallax-finale .z-parallax-word,
html.z-flight-v77 .z-parallax-finale.is-complete .z-parallax-word,
html.z-flight-v77 .z-parallax-finale.is-v77-complete .z-parallax-word {
  position:relative !important;
  z-index:2 !important;
  font-size:clamp(7.2rem, 9.6vw, 12.4rem) !important;
  line-height:.78 !important;
  opacity:0 !important;
  filter:none !important;
  transform:none !important;
}

html.z-flight-v77 .z-letter,
html.z-flight-v77 .z-reg {
  opacity:1 !important;
  transition:none !important;
  will-change:auto !important;
}

html.z-flight-v77 .z-parallax-slogan {
  display:none !important;
}

html.z-flight-v77 .z-sport-orbit {
  opacity:calc(.006 + var(--z-v77-assemble, 0) * .018) !important;
}

@media (max-width:700px) {
  html.z-flight-v77 .z-page-flight__letter {
    font-size:clamp(4.8rem, 21vw, 7.8rem) !important;
  }
html.z-flight-v77 .z-page-flight__letter.zf-r {
    font-size:clamp(1.1rem, 5.8vw, 2rem) !important;
  }
  html.z-flight-v77 .z-parallax-word {
    font-size:clamp(4.8rem, 21vw, 7.8rem) !important;
  }
}

/* === V83 practical WCAG 2.2 accessibility hardening === */
.skip-link {
  position:fixed !important;
  left:1rem !important;
  top:1rem !important;
  z-index:1000000 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:4.4rem !important;
  min-height:4.4rem !important;
  max-width:calc(100vw - 2rem) !important;
  padding:.9rem 1.35rem !important;
  border:.2rem solid var(--color-primary) !important;
  border-radius:.8rem !important;
  color:var(--color-primary) !important;
  background:#fff !important;
  box-shadow:0 .8rem 2.2rem rgb(var(--color-primary-rgb) / .22) !important;
  font:800 1.35rem/1.2 Arial, Helvetica, sans-serif !important;
  text-decoration:none !important;
  transform:translateY(-160%) !important;
  transition:transform .18s ease !important;
}

.skip-link:focus,
.skip-link:focus-visible {
  transform:translateY(0) !important;
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.25rem !important;
  box-shadow:0 0 0 .58rem rgba(255,255,255,.9), 0 0 0 .88rem var(--color-primary),
             0 .8rem 2.2rem rgb(var(--color-primary-rgb) / .22) !important;
}

:where(a, button, input, textarea, select, [role="button"], [tabindex]):focus-visible {
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.22rem !important;
  /* the yellow alone is 1.48:1 on a light page — a solid blue ring wraps it so the
     indicator reads on white and on the blue surfaces alike */
  box-shadow:0 0 0 .55rem rgba(255,255,255,.9), 0 0 0 .85rem var(--color-primary) !important;
}

.top-menu__link:focus-visible,
.header.active .top-menu__link:focus-visible,
.btn-pill:focus-visible,
.tg-button:focus-visible,
.default-btn:focus-visible,
.team-gallery-load:focus-visible,
.product-family-frame:focus-visible,
.team-frame:focus-visible,
.blog-filter__button:focus-visible,
.article-toc__toggle:focus-visible,
.z-social-actions .z-social-btn:focus-visible {
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.25rem !important;
  box-shadow:
    0 0 0 .58rem rgba(255,255,255,.9),
    0 0 0 .88rem var(--color-primary),
    0 1rem 2.4rem rgb(var(--color-primary-rgb) / .18) !important;
}

.site-language-flags .flag-lang,
.footer-contacts .social-icon__link,
.z-share a,
.z-share button,
.z-social-actions .z-social-btn,
.blog-filter__button,
.article-toc__toggle,
.team-gallery-load,
.contact-response-close,
.go-up,
#open-modal,
#cookie-notice-accept,
#cookie-notice-dismiss {
  min-width:4.4rem !important;
  min-height:4.4rem !important;
}

.footer-contacts .social-icon__link,
.site-language-flags .flag-lang {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.footer-contacts .social-icon__link {
  border-radius:999px !important;
  padding:.45rem !important;
}

.footer-contacts .social-icon__link:hover,
.footer-contacts .social-icon__link:focus-visible {
  background:rgba(255,255,255,.14) !important;
}

.input__data:focus-visible,
.textarea:focus-visible,
.input__data-check:focus-visible {
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.24rem !important;
  box-shadow:0 0 0 .57rem rgba(255,255,255,.9), 0 0 0 .87rem var(--color-primary) !important;
}

.input__data[aria-invalid="true"],
.textarea[aria-invalid="true"],
.input__data-check[aria-invalid="true"] {
  border-color:#b00020 !important;
  box-shadow:0 0 0 .35rem rgba(176,0,32,.12) !important;
}

.message-rule,
.form-feedback,
.contact-validation-alert {
  color:var(--color-primary) !important;
}

.team-frame,
.product-family-frame {
  touch-action:manipulation !important;
}

.team-card:focus-within,
.product-family-card:focus-within {
  border-color:rgb(var(--color-primary-rgb) / .62) !important;
  box-shadow:0 1.2rem 3rem rgb(var(--color-primary-rgb) / .16), 0 0 0 .35rem rgba(255,207,51,.32) !important;
}

@media (max-width:700px) {
  .top-menu__link,
  .header.active .top-menu__link,
  .tg-button,
  .default-btn,
  .btn,
  .z-doc-button,
  .blog-tool-strip__links a,
  .blog-start-grid a {
    min-height:4.4rem !important;
  }

  .z-social-actions .z-social-btn,
  .z-share a,
  .z-share button,
  .blog-filter__button {
    min-height:4.4rem !important;
    padding:.75rem 1rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior:auto !important;
  }

  *,
  *::before,
  *::after {
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }

  .z-page-flight,
  .parallax-logo-build,
  .telegram-team-strip,
  .z-sport-orbit,
  .hero-image-slider__next {
    display:none !important;
    opacity:0 !important;
    visibility:hidden !important;
  }

  .z-parallax-finale,
  .z-parallax-word,
  .z-letter,
  .z-reg,
  .products__img,
  .team__img,
  .top-menu__link,
  .header-logo__img {
    transform:none !important;
    filter:none !important;
  }

  .z-parallax-finale .z-parallax-word {
    opacity:.08 !important;
  }

  .header-logo:hover .header-logo__img,
  .header-logo:focus-visible .header-logo__img,
  .top-menu__link:hover,
  .top-menu__link:focus-visible,
  .btn:hover,
  .btn:focus-visible,
  button:hover,
  button:focus-visible {
    transform:none !important;
  }
}

/* Lightweight legal entry gate */
#cookie-notice[data-legal-gate="compact"] .disclaimer__wrap {
  width:min(92vw, 56rem) !important;
  max-height:calc(100dvh - 3rem) !important;
  overflow:auto !important;
  padding:clamp(1.6rem, 3vw, 2.6rem) !important;
  border:.1rem solid rgb(var(--color-primary-rgb) / .18) !important;
  box-shadow:0 2.4rem 7rem rgb(var(--color-primary-rgb) / .28), inset 0 .2rem 0 rgba(255,255,255,.95) !important;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgb(var(--color-background-rgb) / .97)) !important;
}

#cookie-notice[data-legal-gate="compact"] .logo {
  max-width:clamp(9rem, 22vw, 14rem) !important;
  margin:0 auto 1rem !important;
}

#cookie-notice[data-legal-gate="compact"] .logo img {
  max-height:8rem !important;
}

.legal-gate-intro {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:1rem;
  text-align:center;
}

#cookie-notice .legal-gate-title {
  font-size:clamp(2rem, 3vw, 2.8rem) !important;
  line-height:1.12 !important;
  margin:0 !important;
}

.legal-gate-summary {
  width:min(100%, 48rem);
  margin:0 auto;
  color:var(--color-primary);
  font-size:clamp(1.35rem, 1.8vw, 1.62rem);
  line-height:1.62;
  font-weight:600;
}

.legal-gate-links {
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:.75rem;
  margin:.15rem auto .2rem;
}

.legal-gate-links a,
.legal-gate-readmore summary {
  min-height:4.4rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:.1rem solid rgb(var(--color-primary-rgb) / .25);
  border-radius:999px;
  padding:.75rem 1.25rem;
  color:var(--color-primary);
  background:rgb(var(--color-background-rgb) / .72);
  box-shadow:0 .6rem 1.6rem rgb(var(--color-primary-rgb) / .08);
  font-size:1.25rem;
  font-weight:800;
  text-decoration:none;
}

.legal-gate-links a:hover,
.legal-gate-links a:focus-visible,
.legal-gate-readmore summary:hover,
.legal-gate-readmore summary:focus-visible {
  background:rgb(var(--color-primary-rgb) / .12);
  color:var(--color-primary);
}

.legal-gate-readmore {
  width:100%;
  margin:.35rem auto 0;
}

.legal-gate-readmore summary {
  width:max-content;
  max-width:100%;
  margin:0 auto;
  cursor:pointer;
  list-style:none;
}

.legal-gate-readmore summary::-webkit-details-marker {
  display:none;
}

.legal-gate-readmore summary::after {
  content:"+";
  margin-left:.7rem;
  font-size:1.6rem;
  line-height:1;
}

.legal-gate-readmore[open] summary::after {
  content:"-";
}

.legal-gate-full {
  width:100%;
  max-height:min(34vh, 26rem);
  overflow:auto;
  margin:1rem auto 0;
  padding:1rem;
  border:.1rem solid rgb(var(--color-primary-rgb) / .14);
  border-radius:.8rem;
  background:rgba(255,255,255,.86);
  text-align:start;
  -webkit-overflow-scrolling:touch;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-full .modal-body-wrap {
  display:block !important;
  margin:.8rem 0 !important;
  padding:1rem !important;
  overflow:visible !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-full .modal-body-txt {
  max-height:none !important;
  overflow:visible !important;
  padding-right:0 !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-full .modal-title {
  font-size:1.55rem !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-full .modal__h3-subtitle,
#cookie-notice[data-legal-gate="compact"] .legal-gate-full .modal__p,
#cookie-notice[data-legal-gate="compact"] .legal-gate-full .modal__subdivider,
#cookie-notice[data-legal-gate="compact"] .legal-gate-full .modal__list {
  color:var(--color-primary) !important;
  font-size:1.15rem !important;
  line-height:1.55 !important;
}

#cookie-notice[data-legal-gate="compact"] .modal-btn {
  margin-top:1.35rem !important;
  position:sticky !important;
  bottom:0 !important;
  z-index:3 !important;
  padding-top:.85rem !important;
  background:linear-gradient(180deg, rgb(var(--color-background-rgb) / 0), rgb(var(--color-background-rgb) / .96) 28%, rgb(var(--color-background-rgb) / .98)) !important;
}

#cookie-notice[data-legal-gate="compact"] .modal-choice-txt {
  color:var(--color-secondary) !important;
  font-family:Arial, sans-serif !important;
  text-transform:none !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  white-space:normal !important;
}

#cookie-notice[data-legal-gate="compact"] #cookie-notice-accept .btn-pill {
  background:linear-gradient(180deg, var(--color-accent) 0%, var(--color-primary) 52%, var(--color-primary) 100%) !important;
}

#cookie-notice[data-legal-gate="compact"] #cookie-notice-dismiss .btn-pill {
  background:linear-gradient(180deg, var(--color-accent) 0%, var(--color-primary) 55%, var(--color-primary) 100%) !important;
}

@media (max-width: 520px) {
  #cookie-notice[data-legal-gate="compact"] .disclaimer__wrap {
    width:96vw !important;
    padding:1.35rem !important;
  }

  .legal-gate-summary {
    font-size:1.22rem;
    line-height:1.52;
  }

  .legal-gate-links {
    gap:.55rem;
  }

  .legal-gate-links a,
  .legal-gate-readmore summary {
    width:100%;
    padding:.7rem 1rem;
  }

  #cookie-notice[data-legal-gate="compact"] .modal-btn {
    grid-template-columns:1fr !important;
    row-gap:.65rem !important;
  }

  #cookie-notice[data-legal-gate="compact"] #cookie-notice-accept,
  #cookie-notice[data-legal-gate="compact"] #cookie-notice-dismiss,
  #cookie-notice[data-legal-gate="compact"] .modal-choice-txt {
    grid-column:1 !important;
    justify-self:center !important;
  }

  #cookie-notice[data-legal-gate="compact"] .modal-choice-txt {
    order:3;
    max-width:100% !important;
    font-size:.98rem !important;
  }
}

/* Legal gate correction: keep the original ZPHC modal/button design. */
#cookie-notice[data-legal-gate="compact"] .disclaimer__wrap {
  background:#fff !important;
  width:min(90vw, 60rem) !important;
  max-height:90dvh !important;
  padding:2rem !important;
  border:0 !important;
  border-radius:1rem !important;
  box-shadow:0 1.8rem 5rem rgba(0,0,0,.24) !important;
}

#cookie-notice[data-legal-gate="compact"] .logo {
  max-width:20rem !important;
  margin:0 auto 1.2rem !important;
}

#cookie-notice[data-legal-gate="compact"] .logo img {
  max-height:10rem !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-intro {
  gap:.75rem !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-title {
  color:var(--color-primary) !important;
  font-size:2.2rem !important;
  line-height:1.18 !important;
  margin:0 !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-summary {
  width:calc(100% - 2.4rem) !important;
  max-width:52rem !important;
  color:var(--color-primary) !important;
  font-size:1.28rem !important;
  line-height:1.55 !important;
  font-weight:600 !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-links {
  display:flex !important;
  justify-content:center !important;
  flex-wrap:wrap !important;
  gap:.45rem 1.4rem !important;
  margin:.2rem auto .1rem !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-links a {
  display:inline-flex !important;
  min-width:0 !important;
  min-height:4.4rem !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 .2rem !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--color-primary) !important;
  font-size:1.2rem !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-underline-offset:.25rem !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-links a:hover,
#cookie-notice[data-legal-gate="compact"] .legal-gate-links a:focus-visible {
  color:var(--color-primary) !important;
  background:transparent !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-readmore {
  margin:.2rem auto 0 !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-readmore summary {
  min-width:0 !important;
  min-height:4.4rem !important;
  width:auto !important;
  padding:0 .4rem !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--color-primary) !important;
  font-size:1.2rem !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-underline-offset:.25rem !important;
}

#cookie-notice[data-legal-gate="compact"] .legal-gate-full {
  max-height:min(32dvh, 24rem) !important;
  border:.1rem solid var(--color-background) !important;
  background:#fafcff !important;
  border-radius:.5rem !important;
}

#cookie-notice[data-legal-gate="compact"] .modal-btn {
  margin-top:1rem !important;
  position:sticky !important;
  bottom:0 !important;
  padding-top:.8rem !important;
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.96) 32%, #fff 100%) !important;
}

#cookie-notice[data-legal-gate="compact"] .modal-choice-txt {
  color:#ccc !important;
  font-family:serif !important;
  text-transform:uppercase !important;
  font-weight:300 !important;
  letter-spacing:0 !important;
}

#cookie-notice[data-legal-gate="compact"] #cookie-notice-accept .btn-pill {
  background:linear-gradient(0deg, rgba(6,0,0,.5) 8.85%, rgba(233,7,13,.105) 46.88%, rgba(51,7,8,.5) 100%), #bf0001 !important;
}

#cookie-notice[data-legal-gate="compact"] #cookie-notice-dismiss .btn-pill {
  background:linear-gradient(0deg, rgba(6,0,0,.5) 8.85%, rgb(var(--color-primary-rgb) / .5) 46.88%, rgba(51,7,8,.5) 100%), var(--color-secondary) !important;
}

@media (max-width: 520px) {
  #cookie-notice[data-legal-gate="compact"] .disclaimer__wrap {
    width:96vw !important;
    padding:1.2rem !important;
  }

  #cookie-notice[data-legal-gate="compact"] .legal-gate-links {
    flex-direction:row !important;
  }

  #cookie-notice[data-legal-gate="compact"] .legal-gate-links a,
  #cookie-notice[data-legal-gate="compact"] .legal-gate-readmore summary {
    width:auto !important;
  }
}

/* Non-blocking legal-page decision controls */
.legal-page-choice {
  position:sticky;
  bottom:1.2rem;
  z-index:12;
  width:min(92vw, 76rem);
  margin:3rem auto 2rem;
  padding:1.4rem 1.6rem;
  border:.1rem solid rgb(var(--color-primary-rgb) / .18);
  border-radius:1rem;
  background:rgba(255,255,255,.96);
  box-shadow:0 1.6rem 4rem rgb(var(--color-primary-rgb) / .18), inset 0 .2rem 0 rgba(255,255,255,.9);
  text-align:center;
  backdrop-filter:blur(.8rem);
}

.legal-page-choice__text {
  width:min(100%, 62rem);
  margin:0 auto 1rem;
  color:var(--color-primary);
  font-size:1.22rem;
  line-height:1.55;
  font-weight:700;
}

.legal-page-choice__actions {
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:1rem;
}

.legal-page-choice__action {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:4.4rem;
  min-height:4.4rem;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  text-decoration:none;
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none;
}

.legal-page-choice__action .btn-pill,
.legal-page-choice__action .btn-pill:hover {
  transform:none !important;
}

.legal-page-choice__action:focus-visible {
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.25rem !important;
  box-shadow:0 0 0 .58rem rgba(255,255,255,.9), 0 0 0 .88rem var(--color-primary) !important;
  border-radius:999px;
}

@media (max-width: 600px) {
  .legal-page-choice {
    bottom:.8rem;
    width:96vw;
    padding:1rem;
  }

  .legal-page-choice__text {
    font-size:1.06rem;
    line-height:1.42;
  }

  .legal-page-choice__actions {
    gap:.65rem;
  }

  .legal-page-choice__action .btn-pill,
  .legal-page-choice__action .btn-pill:hover {
    width:clamp(10rem, 38vw, 13rem) !important;
    height:4.4rem !important;
  }
}

/* === V88 readable Apple-style analog world clocks === */
.world-clocks,
.header.active .world-clocks {
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:.42rem !important;
  padding:.56rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .16) !important;
  border-radius:1.8rem !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.86), rgb(var(--color-background-rgb) / .66)),
    rgb(var(--color-background-rgb) / .72) !important;
  box-shadow:
    0 1.6rem 3.8rem rgb(var(--color-primary-rgb) / .12),
    inset 0 .1rem 0 rgba(255,255,255,.9),
    inset 0 0 0 .1rem rgba(255,255,255,.38) !important;
  backdrop-filter:blur(1.4rem) saturate(1.24) !important;
  -webkit-backdrop-filter:blur(1.4rem) saturate(1.24) !important;
}

.world-clock,
.header.active .world-clock {
  position:relative !important;
  min-width:0 !important;
  min-height:5.55rem !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-template-rows:1.45rem minmax(0, 1fr) !important;
  align-items:center !important;
  justify-items:center !important;
  gap:0 !important;
  padding:.54rem .42rem .44rem !important;
  overflow:hidden !important;
  border:1px solid rgb(var(--color-primary-rgb) / .13) !important;
  border-radius:1.25rem !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgb(var(--color-background-rgb) / .84)),
    rgba(255,255,255,.72) !important;
  box-shadow:
    0 .5rem 1.25rem rgb(var(--color-primary-rgb) / .055),
    inset 0 .1rem 0 rgba(255,255,255,.96) !important;
  isolation:isolate !important;
}

.world-clock::before,
.header.active .world-clock::before {
  content:attr(data-clock-code);
  position:absolute;
  inset:auto -.22rem -.38rem auto;
  z-index:-1;
  color:var(--color-primary);
  opacity:.10;
  font:900 clamp(2.7rem, 3.7vw, 4.25rem)/.8 Arial, Helvetica, sans-serif;
  letter-spacing:-.035em;
  white-space:nowrap;
  pointer-events:none;
}

.world-clock__face,
.header.active .world-clock__face {
  grid-column:auto !important;
  grid-row:auto !important;
  position:absolute !important;
  left:.42rem !important;
  top:.42rem !important;
  width:1.58rem !important;
  height:1.58rem !important;
  border:.13rem solid rgb(var(--color-primary-rgb) / .72) !important;
  border-radius:50% !important;
  background:
    radial-gradient(circle at center, rgba(255,255,255,.98) 0 .18rem, transparent .19rem),
    conic-gradient(from 0deg, rgb(var(--color-primary-rgb) / .42) 0 1.2deg, transparent 1.2deg 30deg),
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.94), rgb(var(--color-background-rgb) / .72)) !important;
  box-shadow:
    inset 0 .08rem .18rem rgb(var(--color-primary-rgb) / .1),
    0 .12rem .35rem rgb(var(--color-primary-rgb) / .08) !important;
}

.world-clock__hand,
.header.active .world-clock__hand {
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:.12rem !important;
  border-radius:999px !important;
  background:var(--color-primary) !important;
  transform-origin:50% 100% !important;
  transform:translate(-50%, -100%) rotate(var(--clock-minute-angle, 0deg)) !important;
}

.world-clock__hand--hour,
.header.active .world-clock__hand--hour {
  height:.42rem !important;
  width:.15rem !important;
  opacity:.95 !important;
  transform:translate(-50%, -100%) rotate(var(--clock-hour-angle, 0deg)) !important;
}

.world-clock__hand--minute,
.header.active .world-clock__hand--minute {
  height:.56rem !important;
  background:var(--color-primary) !important;
}

.world-clock__pin,
.header.active .world-clock__pin {
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:.28rem !important;
  height:.28rem !important;
  border-radius:50% !important;
  background:var(--color-primary) !important;
  border:.07rem solid #fff !important;
  box-shadow:0 .08rem .18rem rgb(var(--color-primary-rgb) / .22) !important;
  transform:translate(-50%, -50%) !important;
}

.world-clock__label,
.header.active .world-clock__label {
  grid-column:auto !important;
  grid-row:auto !important;
  position:absolute !important;
  right:.48rem !important;
  top:.56rem !important;
  max-width:100% !important;
  color:rgb(var(--color-primary-rgb) / .64) !important;
  font:800 .72rem/1 Arial, Helvetica, sans-serif !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
  text-align:center !important;
  white-space:nowrap !important;
}

.world-clock__time,
.header.active .world-clock__time {
  grid-column:1 !important;
  grid-row:2 !important;
  align-self:center !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  color:var(--color-primary) !important;
  font-family:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", Arial, sans-serif !important;
  font-size:clamp(1.34rem, 1.32vw, 1.74rem) !important;
  line-height:.98 !important;
  font-weight:800 !important;
  font-variant-numeric:tabular-nums !important;
  letter-spacing:-.025em !important;
  text-align:center !important;
  white-space:nowrap !important;
  text-wrap:nowrap !important;
}

@media (min-width:1281px) {
  .world-clocks,
  .header.active .world-clocks {
    width:20rem !important;
    max-width:20rem !important;
  }
  .world-clock,
  .header.active .world-clock {
    min-height:5.8rem !important;
  }
  .world-clock__time,
  .header.active .world-clock__time {
    font-size:1.58rem !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .world-clocks,
  .header.active .world-clocks {
    width:clamp(16rem, 16.4vw, 18rem) !important;
    max-width:clamp(16rem, 16.4vw, 18rem) !important;
    gap:.32rem !important;
    padding:.42rem !important;
    border-radius:1.45rem !important;
  }
  .world-clock,
  .header.active .world-clock {
    min-height:4.9rem !important;
    grid-template-columns:1fr !important;
    grid-template-rows:1.22rem minmax(0, 1fr) !important;
    padding:.43rem .31rem .36rem !important;
    border-radius:1rem !important;
  }
  .world-clock__face,
  .header.active .world-clock__face {
    left:.34rem !important;
    top:.34rem !important;
    width:1.34rem !important;
    height:1.34rem !important;
  }
  .world-clock__hand--hour,
  .header.active .world-clock__hand--hour {
    height:.34rem !important;
  }
  .world-clock__hand--minute,
  .header.active .world-clock__hand--minute {
    height:.48rem !important;
  }
  .world-clock__time,
  .header.active .world-clock__time {
    font-size:clamp(1.24rem, 1.16vw, 1.48rem) !important;
  }
  .world-clock__label,
  .header.active .world-clock__label {
    top:.45rem !important;
    right:.34rem !important;
    font-size:.58rem !important;
  }
  .world-clock::before,
  .header.active .world-clock::before {
    font-size:clamp(2.2rem, 3vw, 3.2rem) !important;
  }
}

@media (max-width:950px) {
  .world-clocks,
  .header.active .world-clocks {
    width:min(100%, 34rem) !important;
    max-width:min(100%, 34rem) !important;
    gap:.42rem !important;
    padding:.52rem !important;
  }
  .world-clock,
  .header.active .world-clock {
    min-height:5.25rem !important;
  }
  .world-clock__time,
  .header.active .world-clock__time {
    font-size:clamp(1.18rem, 4vw, 1.52rem) !important;
  }
}

@media (max-width:420px) {
  .world-clocks,
  .header.active .world-clocks {
    gap:.32rem !important;
    padding:.4rem !important;
    border-radius:1.3rem !important;
  }
  .world-clock,
  .header.active .world-clock {
    min-height:4.8rem !important;
    grid-template-columns:1fr !important;
    grid-template-rows:1.12rem minmax(0, 1fr) !important;
    padding:.38rem .28rem .34rem !important;
    border-radius:.98rem !important;
  }
  .world-clock__face,
  .header.active .world-clock__face {
    left:.3rem !important;
    top:.32rem !important;
    width:1.22rem !important;
    height:1.22rem !important;
  }
  .world-clock__time,
  .header.active .world-clock__time {
    font-size:clamp(1.17rem, 4.1vw, 1.45rem) !important;
  }
  .world-clock__label,
  .header.active .world-clock__label {
    top:.42rem !important;
    right:.32rem !important;
    font-size:.54rem !important;
  }
}

/* === V89 readable nav label fitting fallback === */
.top-menu__link,
.header.active .top-menu__link {
  font-size:clamp(1.72rem, 1.46vw, 2.4rem) !important;
  line-height:1.05 !important;
  font-weight:900 !important;
  letter-spacing:0 !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  hyphens:manual !important;
  text-wrap:balance !important;
  overflow:hidden !important;
}

.top-menu__link[data-nav-fitted="true"],
.header.active .top-menu__link[data-nav-fitted="true"] {
  max-width:100% !important;
}

.top-menu__label-fit {
  display:inline-block !important;
  max-width:calc(100% - 10px) !important;
  text-align:center !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  hyphens:manual !important;
  text-wrap:balance !important;
}

@media (min-width:1281px) {
  .top-menu__link,
  .header.active .top-menu__link {
    font-size:2.4rem !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .top-menu__link,
  .header.active .top-menu__link {
    font-size:2.2rem !important;
  }
}

@media (max-width:950px) {
  .top-menu__link,
  .header.active .top-menu__link {
    font-size:2.1rem !important;
  }
}

@media (max-width:520px) {
  .top-menu__link,
  .header.active .top-menu__link {
    font-size:2rem !important;
  }
}

/* === V90 scroll-stability, clock watermark, and product image paint fixes === */
.reveal,
.content-block,
.product-card,
.product-family-card,
.team-card,
.blog-list-item,
.z-blog-item,
.tool-card,
.products,
.team-gallery,
.blog-list,
.new-product-grid {
  content-visibility:visible !important;
  opacity:1 !important;
  visibility:visible !important;
}

.product-frame,
.product-family-frame,
.team-frame,
.blog-list-icon {
  contain:layout paint !important;
  background:linear-gradient(135deg,var(--color-background),#fff 55%,var(--color-background)) !important;
}

.product-family-frame,
.product-frame {
  aspect-ratio:4 / 3 !important;
  min-height:0 !important;
}

.product-family-frame img.products__img,
.product-family-frame .products__img,
.product-frame img.products__img,
.products__img,
.team__img,
.blog-list-icon img {
  opacity:1 !important;
  visibility:visible !important;
  display:block !important;
  transform:translateZ(0);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

.product-family-frame.is-loading img.products__img,
.product-frame.is-loading img.products__img {
  opacity:1 !important;
}

html.js .reveal:not(.is-visible),
html.js .content-block.reveal:not(.is-visible),
html.js .product-card.reveal:not(.is-visible),
html.js .product-family-card.reveal:not(.is-visible),
html.js .team-card.reveal:not(.is-visible),
html.js .blog-list-item.reveal:not(.is-visible) {
  opacity:1 !important;
  transform:none !important;
  visibility:visible !important;
}

.world-clock::before,
.header.active .world-clock::before {
  inset:auto .08rem .12rem auto !important;
  max-width:calc(100% - .55rem) !important;
  overflow:hidden !important;
  font-size:clamp(1.62rem, 2.05vw, 2.35rem) !important;
  line-height:.82 !important;
  letter-spacing:-.025em !important;
}

@media (min-width:951px) and (max-width:1280px) {
  .world-clock::before,
  .header.active .world-clock::before {
    font-size:clamp(1.38rem, 1.95vw, 1.88rem) !important;
    inset:auto .06rem .1rem auto !important;
  }
}

@media (max-width:950px) {
  .world-clock::before,
  .header.active .world-clock::before {
    font-size:clamp(1.42rem, 5vw, 2.2rem) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .reveal,
  .product-card,
  .product-family-card,
  .team-card,
  .blog-list-item,
  .content-block,
  .products__img,
  .team__img {
    transition:none !important;
    animation:none !important;
    opacity:1 !important;
    transform:none !important;
    visibility:visible !important;
  }
}

/* === V91 compact footer stack and readable legal notice === */
.footer {
  padding:1.55rem 0 1.25rem !important;
}

.footer > .container {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:.42rem !important;
}

.footer-logo {
  order:1 !important;
  margin:0 !important;
}

.footer-nav {
  order:2 !important;
}

.footer .translate {
  order:3 !important;
  height:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

.footer-contacts {
  order:4 !important;
}

.footer__disclaimer {
  order:5 !important;
}

.footer-globe-brand {
  order:6 !important;
}

.footer-nav__copyright {
  order:7 !important;
}

.footer-edition {
  order:8 !important;
}

.footer-nav__logo {
  max-width:12.8rem !important;
  margin:0 auto .28rem !important;
}

.footer-nav,
.footer-nav__col {
  margin:0 !important;
}

.footer-nav__ul {
  gap:.26rem 1.05rem !important;
  margin:0 auto !important;
  max-width:min(128rem, calc(100% - 2rem)) !important;
}

.footer-nav__link {
  margin:.08rem .12rem !important;
  font-size:1.2rem !important;
  line-height:1.2 !important;
}

.footer-contacts {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.1rem 1.35rem !important;
  width:100% !important;
  margin:.12rem auto .08rem !important;
}

.footer-contacts .social-icon__link {
  margin:0 !important;
}

.footer-contacts .social-icon {
  width:2rem !important;
  height:2rem !important;
}

.footer__disclaimer {
  width:min(118rem, calc(100% - 4rem)) !important;
  max-width:min(118rem, calc(100% - 4rem)) !important;
  margin:.18rem auto 0 !important;
  padding:.65rem 0 .16rem !important;
  border-top:1px solid rgba(255,255,255,.28) !important;
}

.footer__disclaimer .disclaimer-p {
  max-width:min(108rem, calc(100% - 2rem)) !important;
  color:rgba(255,255,255,.9) !important;
  font-size:1.02rem !important;
  line-height:1.35 !important;
}

.footer__disclaimer .disclaimer-p a,
.footer__disclaimer .disclaimer-p a:visited {
  color:#fff !important;
  opacity:1 !important;
  font-weight:700 !important;
  text-decoration:underline !important;
  text-underline-offset:.18em !important;
}

.footer-globe-brand {
  margin:.05rem auto 0 !important;
  padding:0 !important;
}

.footer-globe-brand img {
  width:clamp(6.7rem, 5.4vw, 8rem) !important;
  max-width:22vw !important;
}

.footer-nav__copyright {
  margin:.08rem auto 0 !important;
}

.footer-nav__copyright,
.footer-nav__copyright a {
  font-size:1.08rem !important;
  line-height:1.22 !important;
}

.footer-edition {
  margin:.22rem auto 0 !important;
  font-size:.96rem !important;
  line-height:1.2 !important;
}

.footer-edition::before {
  width:min(14rem, 42vw) !important;
  margin:0 auto .38rem !important;
}

@media (max-width:700px) {
  .footer {
    padding:1.35rem 1.1rem 1.15rem !important;
  }

  .footer > .container {
    gap:.34rem !important;
  }

  .footer-nav__logo {
    max-width:11.4rem !important;
  }

  .footer-nav__ul {
    gap:.22rem .78rem !important;
  }

  .footer-nav__link {
    font-size:1.06rem !important;
  }

  .footer-contacts {
    gap:.05rem .85rem !important;
  }

  .footer__disclaimer {
    width:100% !important;
    max-width:100% !important;
    padding:.58rem 0 .12rem !important;
  }

  .footer__disclaimer .disclaimer-p {
    font-size:.94rem !important;
    line-height:1.34 !important;
  }

  .footer-globe-brand img {
    width:6.7rem !important;
    max-width:30vw !important;
  }
}

/* === V92 brand-blue normalization for nav and legal gate buttons === */
:root {
  --zphc-brand-blue:var(--color-primary);
  --zphc-brand-blue-mid:var(--color-primary);
  --zphc-brand-blue-deep:var(--color-primary);
  --zphc-brand-blue-dark:var(--color-primary);
  --zphc-brand-blue-light:var(--color-secondary);
}

.top-menu__link,
.header.active .top-menu__link {
  border-color:rgb(var(--color-primary-rgb) / .78) !important;
  color:#fff !important;
  background:
    radial-gradient(135% 150% at 78% 8%, rgba(255,255,255,.34) 0%, rgb(var(--color-secondary-rgb) / .18) 34%, rgb(var(--color-primary-rgb) / 0) 60%),
    linear-gradient(180deg, var(--zphc-brand-blue-light) 0%, var(--zphc-brand-blue-mid) 34%, var(--zphc-brand-blue) 64%, var(--zphc-brand-blue-deep) 100%) !important;
  box-shadow:
    inset 0 .22rem .12rem rgba(255,255,255,.44),
    inset 0 -.22rem .44rem rgb(var(--color-primary-rgb) / .3),
    0 .5rem 1.35rem rgb(var(--color-primary-rgb) / .2) !important;
  text-shadow:0 .1rem .16rem rgb(var(--color-primary-rgb) / .28) !important;
}

.top-menu__item:nth-child(even) .top-menu__link,
.header.active .top-menu__item:nth-child(even) .top-menu__link {
  background:
    radial-gradient(135% 150% at 78% 8%, rgba(255,255,255,.3) 0%, rgb(var(--color-secondary-rgb) / .16) 34%, rgb(var(--color-primary-rgb) / 0) 60%),
    linear-gradient(180deg, var(--color-secondary) 0%, var(--zphc-brand-blue-mid) 36%, var(--zphc-brand-blue) 66%, var(--zphc-brand-blue-deep) 100%) !important;
}

.top-menu__item.active .top-menu__link,
.header.active .top-menu__item.active .top-menu__link,
.top-menu__link:hover,
.top-menu__link:focus-visible,
.header.active .top-menu__link:hover,
.header.active .top-menu__link:focus-visible {
  background:
    radial-gradient(120% 145% at 78% 2%, rgba(255,255,255,.52) 0%, rgb(var(--color-accent-rgb) / .22) 36%, rgb(var(--color-primary-rgb) / 0) 64%),
    linear-gradient(180deg, var(--color-secondary) 0%, var(--color-secondary) 35%, var(--zphc-brand-blue) 68%, var(--color-primary) 100%) !important;
  border-color:rgb(var(--color-primary-rgb) / .86) !important;
  box-shadow:
    inset 0 .24rem .13rem rgba(255,255,255,.58),
    inset 0 -.24rem .5rem rgb(var(--color-primary-rgb) / .32),
    0 .72rem 1.8rem rgb(var(--color-primary-rgb) / .28) !important;
}

#cookie-notice #cookie-notice-dismiss .btn-pill,
#cookie-notice #cookie-notice-dismiss .btn-pill.blue,
#cookie-notice[data-legal-gate="compact"] #cookie-notice-dismiss .btn-pill,
.legal-page-choice__action #cookie-notice-dismiss .btn-pill {
  background:
    radial-gradient(145% 150% at 76% 10%, rgba(255,255,255,.3) 0%, rgb(var(--color-secondary-rgb) / .18) 34%, rgb(var(--color-primary-rgb) / 0) 60%),
    linear-gradient(180deg, var(--zphc-brand-blue-light) 0%, var(--zphc-brand-blue-mid) 36%, var(--zphc-brand-blue) 68%, var(--zphc-brand-blue-deep) 100%) !important;
  border:1px solid rgb(var(--color-primary-rgb) / .86) !important;
  box-shadow:
    inset 0 .2rem .12rem rgba(255,255,255,.44),
    inset 0 -.22rem .46rem rgb(var(--color-primary-rgb) / .3),
    0 .48rem 1.2rem rgb(var(--color-primary-rgb) / .22) !important;
}

#cookie-notice #cookie-notice-dismiss .half-bg.blue {
  background:
    linear-gradient(180deg, rgba(255,255,255,.08) 0%, rgb(var(--color-primary-rgb) / .08) 54%, rgb(var(--color-primary-rgb) / .32) 100%) !important;
}

#cookie-notice #cookie-notice-dismiss .line-1.blue {
  background:rgb(var(--color-secondary-rgb) / .85) !important;
}

#cookie-notice #cookie-notice-dismiss .line-2.blue {
  background:rgb(var(--color-primary-rgb) / .48) !important;
}

#cookie-notice #cookie-notice-dismiss .line-3.blue {
  background:rgb(var(--color-primary-rgb) / .5) !important;
}

#cookie-notice #cookie-notice-dismiss .line-4.blue {
  background:rgb(var(--color-primary-rgb) / .52) !important;
}

#cookie-notice #cookie-notice-dismiss .circle.blue {
  border-color:rgb(var(--color-accent-rgb) / .72) !important;
}

/* === V93 visitor technical information disclosure block === */
.z-visitor-disclosure {
  width:min(98rem, calc(100% - 3.2rem)) !important;
  margin:0 auto 4.4rem !important;
  padding:2.6rem 2.8rem 3rem !important;
  background:rgba(255,255,255,.96) !important;
  border-top:1px solid var(--color-background) !important;
  border-radius:.8rem !important;
  color:#4b4f55 !important;
  box-shadow:0 1.4rem 3.4rem rgb(var(--color-primary-rgb) / .07) !important;
  position:relative !important;
  z-index:2 !important;
}

.z-visitor-disclosure h2 {
  color:var(--color-primary) !important;
  text-align:center !important;
  font-size:2.2rem !important;
  line-height:1.28 !important;
  font-weight:800 !important;
  margin:0 auto 1.4rem !important;
}

.z-visitor-lead,
.z-visitor-legal,
.z-visitor-note {
  max-width:88rem !important;
  margin:0 auto 1.05rem !important;
  color:#4b4f55 !important;
  font-size:1.36rem !important;
  line-height:1.72 !important;
  text-align:start !important;
}

.z-visitor-lead {
  color:var(--color-primary) !important;
  font-weight:650 !important;
  text-align:center !important;
}

.z-visitor-note {
  margin-top:1.55rem !important;
  padding:.92rem 1.15rem !important;
  border-left:.35rem solid var(--color-primary) !important;
  background:linear-gradient(90deg, rgb(var(--color-primary-rgb) / .08), rgb(var(--color-primary-rgb) / .025)) !important;
  border-radius:.45rem !important;
  color:var(--color-primary) !important;
}

.z-visitor-grid {
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:1.15rem !important;
  margin-top:1.7rem !important;
}

.z-visitor-card {
  min-width:0 !important;
  padding:1.3rem 1.35rem 1.2rem !important;
  border:1px solid var(--color-background) !important;
  border-radius:.8rem !important;
  background:linear-gradient(145deg, rgb(var(--color-background-rgb) / .96), rgba(255,255,255,.98)) !important;
  box-shadow:0 .8rem 2rem rgb(var(--color-primary-rgb) / .055) !important;
}

.z-visitor-card h3 {
  display:inline-block !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 0 1rem !important;
  padding:.45rem .7rem !important;
  border-radius:.35rem !important;
  background:var(--color-primary) !important;
  color:#fff !important;
  font-size:1.2rem !important;
  line-height:1.1 !important;
  font-weight:800 !important;
  letter-spacing:.01em !important;
  text-transform:uppercase !important;
}

.z-visitor-card ul {
  display:grid !important;
  gap:.58rem !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.z-visitor-card li {
  display:grid !important;
  grid-template-columns:minmax(12rem, .68fr) minmax(0, 1fr) !important;
  align-items:start !important;
  gap:.85rem !important;
  padding:.58rem 0 !important;
  border-top:1px solid rgb(var(--color-background-rgb) / .86) !important;
}

.z-visitor-card li:first-child {
  border-top:0 !important;
}

.z-visitor-card span {
  color:var(--color-primary) !important;
  font-size:1.12rem !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}

.z-visitor-card strong {
  min-width:0 !important;
  color:#4b4f55 !important;
  font-size:1.12rem !important;
  line-height:1.35 !important;
  font-weight:600 !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}

[dir="rtl"] .z-visitor-lead,
[dir="rtl"] .z-visitor-legal,
[dir="rtl"] .z-visitor-note {
  text-align:right !important;
}

[dir="rtl"] .z-visitor-note {
  border-left:0 !important;
  border-right:.35rem solid var(--color-primary) !important;
}

@media (max-width:800px) {
  .z-visitor-disclosure {
    width:calc(100% - 2rem) !important;
    padding:1.7rem 1.35rem 2rem !important;
    margin-bottom:3rem !important;
  }

  .z-visitor-grid {
    grid-template-columns:1fr !important;
  }

  .z-visitor-card li {
    grid-template-columns:1fr !important;
    gap:.18rem !important;
  }

  .z-visitor-disclosure h2 {
    font-size:1.85rem !important;
  }

  .z-visitor-lead,
  .z-visitor-legal,
  .z-visitor-note {
    font-size:1.22rem !important;
    line-height:1.62 !important;
  }
}

/* === V94 header clock and logo-side symmetry === */
@media (min-width:951px) {
  .header-nav {
    grid-template-columns:var(--z-header-left-width) minmax(0, 1fr) var(--z-header-left-width) !important;
  }

  .world-clocks,
  .header.active .world-clocks {
    width:var(--z-header-left-width) !important;
    max-width:var(--z-header-left-width) !important;
    height:20.6rem !important;
    min-height:20.6rem !important;
    grid-template-rows:repeat(3, minmax(0, 1fr)) !important;
    align-self:start !important;
    justify-self:end !important;
  }

  .world-clock,
  .header.active .world-clock {
    min-height:0 !important;
    height:100% !important;
  }

  .world-clock::before,
  .header.active .world-clock::before,
  .world-clock__time,
  .header.active .world-clock__time {
    letter-spacing:0 !important;
  }
}

@media (min-width:1101px) and (max-width:1280px) {
  .world-clocks,
  .header.active .world-clocks {
    height:19.5rem !important;
    min-height:19.5rem !important;
  }
}

@media (min-width:951px) and (max-width:1100px) {
  .world-clocks,
  .header.active .world-clocks {
    height:19.1rem !important;
    min-height:19.1rem !important;
  }
}

@media (max-width:950px) {
  .world-clocks,
  .header.active .world-clocks {
    width:100% !important;
    max-width:100% !important;
    height:19.1rem !important;
    min-height:19.1rem !important;
    grid-template-rows:repeat(3, minmax(0, 1fr)) !important;
    justify-self:start !important;
  }

  .world-clock,
  .header.active .world-clock {
    min-height:0 !important;
    height:100% !important;
  }

  .world-clock::before,
  .header.active .world-clock::before,
  .world-clock__time,
  .header.active .world-clock__time {
    letter-spacing:0 !important;
  }
}

@media (max-width:500px) {
  .world-clocks,
  .header.active .world-clocks {
    height:18.5rem !important;
    min-height:18.5rem !important;
  }
}

@media (max-width:950px) {
  .visitor-metric,
  .visitor-metric.is-visible,
  .visitor-metric.is-hiding {
    display:none !important;
    visibility:hidden !important;
  }
}

/* === V95 world clock face refinement === */
.world-clock,
.header.active .world-clock {
  grid-template-rows:1.22rem minmax(0, 1fr) !important;
}

.world-clock::before,
.header.active .world-clock::before {
  inset:.18rem .18rem auto auto !important;
  z-index:0 !important;
  max-width:calc(100% - .36rem) !important;
  color:var(--color-primary) !important;
  opacity:.09 !important;
  overflow:hidden !important;
  font-size:clamp(1.95rem, 2.46vw, 2.82rem) !important;
  line-height:.78 !important;
  letter-spacing:0 !important;
  text-align:right !important;
}

.world-clock__face,
.header.active .world-clock__face {
  z-index:3 !important;
}

.world-clock__label,
.header.active .world-clock__label {
  display:none !important;
  visibility:hidden !important;
}

.world-clock__time,
.header.active .world-clock__time {
  position:relative !important;
  z-index:2 !important;
  align-self:end !important;
  max-width:calc(100% - .32rem) !important;
  overflow:hidden !important;
  font-size:clamp(1.74rem, 1.72vw, 2.06rem) !important;
  line-height:1 !important;
  font-weight:850 !important;
  letter-spacing:0 !important;
  transform:translateY(-.08rem) !important;
}

@media (min-width:1281px) {
  .world-clock__time,
  .header.active .world-clock__time {
    font-size:2.05rem !important;
  }
}

@media (min-width:951px) and (max-width:1280px) {
  .world-clock::before,
  .header.active .world-clock::before {
    inset:.18rem .14rem auto auto !important;
    font-size:clamp(1.66rem, 2.34vw, 2.26rem) !important;
  }

  .world-clock__time,
  .header.active .world-clock__time {
    font-size:clamp(1.74rem, 1.7vw, 1.9rem) !important;
  }
}

@media (max-width:950px) {
  .world-clock::before,
  .header.active .world-clock::before {
    inset:.18rem .16rem auto auto !important;
    font-size:clamp(1.7rem, 6vw, 2.64rem) !important;
  }

  .world-clock__time,
  .header.active .world-clock__time {
    font-size:clamp(1.7rem, 5.2vw, 1.98rem) !important;
    transform:translateY(-.06rem) !important;
  }
}

@media (max-width:420px) {
  .world-clock::before,
  .header.active .world-clock::before {
    font-size:clamp(1.55rem, 6.8vw, 2.28rem) !important;
  }

  .world-clock__time,
  .header.active .world-clock__time {
    font-size:clamp(1.55rem, 5vw, 1.82rem) !important;
  }
}

/* === V96 scroll paint stability: keep page content above the logo-flight layer === */
html.z-flight-v77 body {
  isolation:isolate !important;
}

html.z-flight-v77 .z-page-flight {
  z-index:0 !important;
  contain:layout style !important;
  pointer-events:none !important;
}

html.z-flight-v77 .parallax-logo-build,
html.z-flight-v77 .z-watermark-matrix {
  z-index:0 !important;
  pointer-events:none !important;
}

html.z-flight-v77 .header,
html.z-flight-v77 header.header,
html.z-flight-v77 main,
html.z-flight-v77 .tmpl-home,
html.z-flight-v77 .tools-main-wrap,
html.z-flight-v77 .tool-main-wrap,
html.z-flight-v77 .content-block,
html.z-flight-v77 .products,
html.z-flight-v77 .team-gallery,
html.z-flight-v77 .blog-list,
html.z-flight-v77 .new-product-grid,
html.z-flight-v77 .tools-grid,
html.z-flight-v77 .z-tools-diagnostics,
html.z-flight-v77 footer.footer,
html.z-flight-v77 footer {
  position:relative !important;
  z-index:6 !important;
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
  transform:translateZ(0);
}

html.z-flight-v77 .header,
html.z-flight-v77 header.header {
  z-index:5000 !important;
}

html.z-flight-v77 .go-up,
html.z-flight-v77 .tg-button {
  z-index:100000 !important;
  opacity:1;
  visibility:visible;
}

html.z-flight-v77 #cookie-notice,
html.z-flight-v77 .loader {
  opacity:1;
  visibility:visible;
}

/* === V97 persistent visitor identity metric above the main menu === */
.visitor-metric--persistent,
.header.active .visitor-metric--persistent,
.visitor-metric.visitor-metric--persistent.is-visible,
.visitor-metric.visitor-metric--persistent.is-hiding {
  display:flex !important;
  pointer-events:none !important;
  opacity:1 !important;
  visibility:visible !important;
}

.visitor-metric--persistent .visitor-metric__chip {
  min-height:2.34rem !important;
  padding:.34rem .72rem !important;
  border-color:rgb(var(--color-primary-rgb) / .18) !important;
  color:var(--color-primary) !important;
  font-size:1.1rem !important;
  line-height:1.16 !important;
  font-weight:820 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92) !important;
}

.visitor-metric--persistent .visitor-metric__chip--lead {
  color:var(--color-primary) !important;
  background:linear-gradient(180deg, #fff, var(--color-background)) !important;
}

.visitor-metric--persistent .visitor-metric__chip--ip {
  border-color:rgb(var(--color-primary-rgb) / .28) !important;
  background:linear-gradient(180deg, var(--color-background), #fff 58%, var(--color-background)) !important;
}

.visitor-metric--persistent .visitor-metric__chip--device,
.visitor-metric--persistent .visitor-metric__chip--time,
.visitor-metric--persistent .visitor-metric__chip--last {
  background:linear-gradient(180deg, rgba(255,255,255,.99), rgb(var(--color-background-rgb) / .94)) !important;
}

@media (min-width:951px) {
  .visitor-metric--persistent,
  .header.active .visitor-metric--persistent {
    position:relative !important;
    grid-column:2 !important;
    grid-row:1 !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    justify-self:center !important;
    align-self:start !important;
    width:min(100%, 76rem) !important;
    max-width:100% !important;
    margin:0 auto .82rem !important;
    padding:.42rem .52rem !important;
    transform:none !important;
    border-radius:1.18rem !important;
    z-index:70 !important;
  }

  .visitor-metric--persistent.is-visible,
  .visitor-metric--persistent.is-hiding {
    transform:none !important;
  }

  .top-menu,
  .header.active .top-menu {
    grid-row:2 !important;
    align-self:center !important;
  }

  .world-clocks,
  .header.active .world-clocks {
    grid-row:1 / span 2 !important;
  }
}

@media (min-width:951px) and (max-width:1200px) {
  .visitor-metric--persistent,
  .header.active .visitor-metric--persistent {
    width:min(100%, 58rem) !important;
    gap:.28rem !important;
  }

  .visitor-metric--persistent .visitor-metric__chip {
    font-size:1.1rem !important;
    padding:.3rem .5rem !important;
  }
}

@media (max-width:950px) {
  .visitor-metric--persistent,
  .header.active .visitor-metric--persistent {
    position:relative !important;
    left:auto !important;
    top:auto !important;
    grid-column:1 / -1 !important;
    grid-row:4 !important;
    justify-self:stretch !important;
    width:100% !important;
    max-width:100% !important;
    margin:.2rem 0 0 !important;
    padding:.5rem !important;
    display:flex !important;
    flex-wrap:wrap !important;
    gap:.36rem !important;
    transform:none !important;
    z-index:70 !important;
  }

  .visitor-metric--persistent.is-visible,
  .visitor-metric--persistent.is-hiding {
    transform:none !important;
  }

  .visitor-metric--persistent .visitor-metric__chip {
    flex:1 1 calc(50% - .4rem) !important;
    min-height:2.42rem !important;
    white-space:normal !important;
    font-size:1.1rem !important;
  }
}

@media (max-width:520px) {
  .visitor-metric--persistent,
  .header.active .visitor-metric--persistent {
    grid-row:4 !important;
  }

  .top-menu,
  .header.active .top-menu {
    grid-row:5 !important;
  }

  .visitor-metric--persistent .visitor-metric__chip {
    flex-basis:100% !important;
    justify-content:center !important;
  }
}

/* === V149 permanent 120% action-button sizing === */
.btn,
.default-btn,
.z-doc-button,
.site-search-box button,
.blog-tool-strip__links a,
.blog-start-grid a,
.z-share a,
.z-share button,
.z-social-actions .z-social-btn,
.team-gallery-load,
.contact-response-close,
#submit-button,
.legal-page-choice__action .btn-pill {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:5.28rem !important;
  padding:1rem 1.8rem !important;
  font-size:clamp(1.36rem, 1.2em, 1.82rem) !important;
  line-height:1.15 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  text-align:center !important;
}

.blog-filter__button {
  min-height:3.6rem !important;
  padding:.7rem 1.14rem !important;
  font-size:clamp(1.15rem, 1.2em, 1.55rem) !important;
  line-height:1.12 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  text-align:center !important;
}

.btn-pill {
  min-width:18rem !important;
  padding:1.2rem 2.4rem !important;
}

.btn-pill span {
  font-size:1.2em !important;
  line-height:1.15 !important;
}

.site-search-box .z-doc-button,
.site-search-box button {
  flex:0 0 auto !important;
}

@media (max-width:700px) {
  .blog-filter__button {
    flex:1 1 calc(50% - .45rem) !important;
    min-width:0 !important;
  }
}

@media (max-width:520px) {
  .site-search-box {
    flex-wrap:wrap !important;
  }

  .site-search-box input,
  .site-search-box .z-doc-button,
  .site-search-box button {
    width:100% !important;
  }

  .btn,
  .default-btn,
  .z-doc-button,
  .site-search-box button,
  .blog-tool-strip__links a,
  .blog-start-grid a,
  .z-share a,
  .z-share button,
  .z-social-actions .z-social-btn,
  .team-gallery-load,
  .contact-response-close,
  #submit-button {
    max-width:100% !important;
  }
}

/* === V150 header scroll paint stability across all pages === */
html.z-flight-v77 .header,
html.z-flight-v77 header.header,
html.z-flight-v77 .header-nav {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  contain:none !important;
  isolation:isolate !important;
  -webkit-transform:translateZ(0) !important;
  transform:translateZ(0) !important;
  -webkit-backface-visibility:hidden !important;
  backface-visibility:hidden !important;
}

html.z-flight-v77 .header-logo,
html.z-flight-v77 .header-logo__img,
html.z-flight-v77 .site-language-flags,
html.z-flight-v77 .site-language-flags .flag-lang,
html.z-flight-v77 .site-language-flags .flag-icon,
html.z-flight-v77 .top-menu,
html.z-flight-v77 .top-menu__item,
html.z-flight-v77 .top-menu__link,
html.z-flight-v77 .top-menu__label-fit,
html.z-flight-v77 .world-clocks,
html.z-flight-v77 .visitor-metric--persistent {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  contain:none !important;
  -webkit-backface-visibility:hidden !important;
  backface-visibility:hidden !important;
}

html.z-flight-v77 .header-logo,
html.z-flight-v77 .site-language-flags,
html.z-flight-v77 .top-menu,
html.z-flight-v77 .world-clocks,
html.z-flight-v77 .visitor-metric--persistent {
  position:relative !important;
}

html.z-flight-v77 .header-logo {
  z-index:7200 !important;
}

html.z-flight-v77 .site-language-flags {
  z-index:7100 !important;
}

html.z-flight-v77 .top-menu,
html.z-flight-v77 .header.active .top-menu {
  z-index:7000 !important;
}

html.z-flight-v77 .world-clocks {
  z-index:7050 !important;
}

html.z-flight-v77 .visitor-metric--persistent {
  z-index:7060 !important;
}

@media (min-width:951px) {
  html.z-flight-v77 .header-logo,
  html.z-flight-v77 .site-language-flags,
  html.z-flight-v77 .top-menu,
  html.z-flight-v77 .header.active .top-menu,
  html.z-flight-v77 .world-clocks,
  html.z-flight-v77 .visitor-metric--persistent {
    -webkit-transform:translate3d(0,0,0) !important;
    transform:translate3d(0,0,0) !important;
    will-change:auto !important;
  }
}

@media (max-width:950px) {
  html.z-flight-v77 .header-logo,
  html.z-flight-v77 .site-language-flags,
  html.z-flight-v77 .world-clocks,
  html.z-flight-v77 .visitor-metric--persistent {
    -webkit-transform:translate3d(0,0,0) !important;
    transform:translate3d(0,0,0) !important;
  }
}

/* === V151 loaded body content stays visible during scroll === */
html.z-flight-v77 main,
html.z-flight-v77 main > .container,
html.z-flight-v77 .breadcrumb__container,
html.z-flight-v77 .page-title,
html.z-flight-v77 .breadcrumb,
html.z-flight-v77 .intro__description,
html.z-flight-v77 .products-lead,
html.z-flight-v77 .localized-doc,
html.z-flight-v77 .article-body,
html.z-flight-v77 .legal-document,
html.z-flight-v77 .team-welcome-expanded,
html.z-flight-v77 .products,
html.z-flight-v77 .new-product-grid,
html.z-flight-v77 .product-family-card:not([hidden]),
html.z-flight-v77 .product-copy,
html.z-flight-v77 .team-gallery,
html.z-flight-v77 .team-card:not([hidden]):not(.is-gallery-hidden),
html.z-flight-v77 .blog-list,
html.z-flight-v77 .blog-list-item:not([hidden]),
html.z-flight-v77 .tools-main,
html.z-flight-v77 .tools-grid,
html.z-flight-v77 .tool-card:not([hidden]),
html.z-flight-v77 .tool-shell,
html.z-flight-v77 .tool-panel,
html.z-flight-v77 .z-tools-privacy-suite,
html.z-flight-v77 .z-tools-panels,
html.z-flight-v77 .content-block:not([hidden]),
html.z-flight-v77 .document-style {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  contain:none !important;
  position:relative !important;
  z-index:8 !important;
  -webkit-backface-visibility:hidden !important;
  backface-visibility:hidden !important;
}

html.z-flight-v77 main h1,
html.z-flight-v77 main h2,
html.z-flight-v77 main h3,
html.z-flight-v77 main h4,
html.z-flight-v77 main p,
html.z-flight-v77 main li,
html.z-flight-v77 main a,
html.z-flight-v77 main span,
html.z-flight-v77 main strong,
html.z-flight-v77 main em,
html.z-flight-v77 main small,
html.z-flight-v77 main label,
html.z-flight-v77 main table,
html.z-flight-v77 main form {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
}

html.z-flight-v77 main img,
html.z-flight-v77 main picture,
html.z-flight-v77 .products__img,
html.z-flight-v77 .team__img,
html.z-flight-v77 .blog-list-icon img,
html.z-flight-v77 .article-topic-visual img,
html.z-flight-v77 .product-family-frame img,
html.z-flight-v77 .product-frame img {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  -webkit-backface-visibility:hidden !important;
  backface-visibility:hidden !important;
}

html.z-flight-v77 .product-family-frame,
html.z-flight-v77 .product-frame,
html.z-flight-v77 .team-frame,
html.z-flight-v77 .blog-list-icon,
html.z-flight-v77 .article-topic-visual {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  contain:layout paint !important;
  position:relative !important;
  z-index:1 !important;
}

html.z-flight-v77 .product-family-frame.is-loading img.products__img,
html.z-flight-v77 .product-frame.is-loading img.products__img {
  opacity:1 !important;
  visibility:visible !important;
}

html.z-flight-v77 .z-page-flight,
html.z-flight-v77 .parallax-logo-build,
html.z-flight-v77 .z-watermark-matrix {
  z-index:0 !important;
}

/* === V152 home hero phrase clarity: no fog, no blur, readable in all languages === */
.page-home .hero-phrase-rotator {
  overflow:visible !important;
  color:#fff !important;
  letter-spacing:0 !important;
  text-shadow:none !important;
}

.page-home .hero-phrase-rotator::before,
.page-home .hero-phrase-rotator::after,
.page-home .hero-phrase::before,
.page-home .hero-phrase::after {
  content:none !important;
  display:none !important;
}

.page-home .hero-phrase {
  color:#fff !important;
  opacity:0 !important;
  visibility:hidden !important;
  filter:none !important;
  -webkit-filter:none !important;
  transform:translate3d(-50%, -50%, 0) !important;
  text-shadow:
    0 .18rem .38rem rgba(0,0,0,.92),
    0 .02rem .08rem rgba(0,0,0,1) !important;
  transition:opacity .42s ease, visibility 0s linear .42s !important;
}

.page-home .hero-phrase.is-active {
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  -webkit-filter:none !important;
  transform:translate3d(-50%, -50%, 0) !important;
  text-shadow:
    0 .18rem .38rem rgba(0,0,0,.94),
    0 .02rem .08rem rgba(0,0,0,1) !important;
  transition:opacity .42s ease, visibility 0s linear 0s !important;
}

.page-home .hero-phrase.is-leaving {
  opacity:0 !important;
  visibility:hidden !important;
  filter:none !important;
  -webkit-filter:none !important;
  transform:translate3d(-50%, -50%, 0) !important;
}

.page-home .hero__main-title,
.page-home .hero__title:not(.hero-phrase-rotator),
.page-home .hero__welcome {
  text-shadow:
    0 .18rem .36rem rgba(0,0,0,.86),
    0 .02rem .08rem rgba(0,0,0,.95) !important;
}

/* === V153 fast-scroll top stability: remove logo-flight repaint layer === */
html.z-scroll-stable-no-flight .z-page-flight,
html.z-scroll-stable-no-flight .parallax-logo-build {
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

html.z-scroll-stable-no-flight .header,
html.z-scroll-stable-no-flight .header-nav,
html.z-scroll-stable-no-flight .header-logo,
html.z-scroll-stable-no-flight .site-language-flags,
html.z-scroll-stable-no-flight .top-menu,
html.z-scroll-stable-no-flight .world-clocks,
html.z-scroll-stable-no-flight .visitor-metric--persistent,
html.z-scroll-stable-no-flight .hero,
html.z-scroll-stable-no-flight .hero__container,
html.z-scroll-stable-no-flight .hero-image-slider,
html.z-scroll-stable-no-flight .hero-image-slider img {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  contain:none !important;
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
  will-change:auto !important;
}

html.z-scroll-stable-no-flight .header,
html.z-scroll-stable-no-flight .header-nav,
html.z-scroll-stable-no-flight .hero,
html.z-scroll-stable-no-flight .hero__container {
  transform:none !important;
  -webkit-transform:none !important;
}

html.z-scroll-stable-no-flight .hero {
  isolation:isolate !important;
  z-index:10 !important;
}

html.z-scroll-stable-no-flight .hero-image-slider {
  z-index:0 !important;
}

html.z-scroll-stable-no-flight .hero::before {
  z-index:1 !important;
}

html.z-scroll-stable-no-flight .hero__container {
  z-index:2 !important;
}

html.z-scroll-stable-no-flight .hero-image-slider > img,
html.z-scroll-stable-no-flight .hero-image-slider__next {
  animation:none !important;
  transform:none !important;
  -webkit-transform:none !important;
  transition:opacity .18s ease !important;
  filter:saturate(.9) contrast(1.04) !important;
}

html.z-scroll-stable-no-flight .z-watermark-matrix {
  z-index:-1 !important;
  opacity:.018 !important;
}

/* === V154 restore header symmetry and permanent Telegram float === */
html.z-scroll-stable-no-flight .tg-button,
html.z-scroll-stable-no-flight .header.active .tg-button {
  position:fixed !important;
  right:2.4rem !important;
  bottom:3rem !important;
  top:auto !important;
  left:auto !important;
  display:flex !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  z-index:100000 !important;
  transform:none !important;
}

@media (min-width:951px) {
  html.z-scroll-stable-no-flight .header-nav {
    --z-header-side:28rem;
    display:grid !important;
    grid-template-columns:var(--z-header-side) minmax(0, 1fr) var(--z-header-side) !important;
    grid-template-rows:auto auto !important;
    column-gap:2.4rem !important;
    row-gap:1.1rem !important;
    align-items:start !important;
    justify-content:center !important;
    width:100% !important;
    min-height:0 !important;
    padding:0 !important;
  }

  html.z-scroll-stable-no-flight .header-logo,
  html.z-scroll-stable-no-flight .header-logo__img,
  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .world-clocks {
    width:var(--z-header-side) !important;
    max-width:var(--z-header-side) !important;
  }

  html.z-scroll-stable-no-flight .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    align-self:start !important;
    justify-self:start !important;
    margin:0 !important;
  }

  html.z-scroll-stable-no-flight .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    align-self:start !important;
    justify-self:start !important;
    margin:0 !important;
  }

  html.z-scroll-stable-no-flight .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:start !important;
    justify-self:center !important;
    width:min(100%, 76rem) !important;
    margin:0 auto !important;
  }

  html.z-scroll-stable-no-flight .top-menu,
  html.z-scroll-stable-no-flight .header.active .top-menu {
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:start !important;
    justify-self:stretch !important;
    width:100% !important;
    max-width:100% !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    margin:0 !important;
    transform:none !important;
  }

  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:start !important;
    justify-self:end !important;
    margin:0 !important;
  }
}

@media (min-width:951px) and (max-width:1200px) {
  html.z-scroll-stable-no-flight .header-nav {
    --z-header-side:22rem;
    column-gap:1.8rem !important;
  }
}

@media (max-width:950px) {
  html.z-scroll-stable-no-flight .tg-button,
  html.z-scroll-stable-no-flight .header.active .tg-button {
    right:1rem !important;
    bottom:calc(1rem + env(safe-area-inset-bottom, 0px)) !important;
    top:auto !important;
    left:auto !important;
  }
}

/* === V155 fixed Telegram anchor below clocks/header line === */
.tg-button.tg-button--body-fixed,
html.z-scroll-stable-no-flight .tg-button.tg-button--body-fixed,
html.z-scroll-stable-no-flight .header.active .tg-button.tg-button--body-fixed {
  position:fixed !important;
  top:auto !important;
  right:var(--tg-fixed-right, 2.4rem) !important;
  bottom:var(--tg-fixed-bottom, 7.4rem) !important;
  left:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  z-index:100000 !important;
  transform:none !important;
}

.tg-button.tg-button--body-fixed:hover,
.tg-button.tg-button--body-fixed:focus-visible {
  transform:translateY(-2px) !important;
}

@media (max-width:950px) {
  .tg-button.tg-button--body-fixed,
  html.z-scroll-stable-no-flight .tg-button.tg-button--body-fixed,
  html.z-scroll-stable-no-flight .header.active .tg-button.tg-button--body-fixed {
    top:auto !important;
    right:var(--tg-fixed-right, 1rem) !important;
    bottom:var(--tg-fixed-bottom, 6.7rem) !important;
    left:auto !important;
  }
}

/* === V156 keep menu sheen inside button bounds so text controls never report clipping === */
@media (min-width:951px) {
  .top-menu__link::before,
  .header.active .top-menu__link::before {
    inset:0 auto 0 -78% !important;
    height:100% !important;
  }
}

/* === V157 low-quality-first image loading === */
img.z-progressive-img {
  background:linear-gradient(135deg, rgb(var(--color-background-rgb) / .95), rgba(255,255,255,.9)) !important;
  transition:opacity .24s ease, filter .42s ease !important;
  filter:saturate(.9) contrast(.98) !important;
}

img.z-progressive-img.is-full-loaded {
  filter:none !important;
}

/* === V158 final Telegram fixed-position fallback === */
body > .tg-button,
body > .tg-button.tg-button--body-fixed {
  position:fixed !important;
  top:auto !important;
  right:var(--tg-fixed-right, 1rem) !important;
  bottom:var(--tg-fixed-bottom, 7.4rem) !important;
  left:auto !important;
  display:flex !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  z-index:100000 !important;
}

/* === V159 animated speed-test dial === */
.z-tools-speed-card {
  display:grid !important;
  grid-template-columns:minmax(28rem, .9fr) minmax(24rem, 1fr) !important;
  gap:1.6rem !important;
  align-items:start !important;
  padding:1.6rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .2) !important;
  border-radius:1.2rem !important;
  background:
    radial-gradient(circle at 50% 12%, rgb(var(--color-secondary-rgb) / .16), transparent 44%),
    linear-gradient(135deg, rgb(var(--color-background-rgb) / .98), rgba(255,255,255,.96) 62%, rgb(var(--color-background-rgb) / .95)) !important;
  box-shadow:0 1rem 2.8rem rgb(var(--color-primary-rgb) / .1), inset 0 1px 0 rgba(255,255,255,.96) !important;
}

.z-speedtest-shell {
  display:grid !important;
  gap:.9rem !important;
  justify-items:center !important;
  align-self:start !important;
}

.z-speedtest-gauge {
  --z-speed-score:0;
  --z-speed-angle:-118deg;
  position:relative !important;
  width:min(42rem, 100%) !important;
  max-width:100% !important;
  aspect-ratio:1.53 / 1 !important;
  min-height:18rem !important;
  border-radius:1.1rem !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 50% 79%, rgba(255,255,255,.98) 0 12%, rgb(var(--color-background-rgb) / .86) 13% 18%, transparent 19%),
    radial-gradient(circle at 50% 76%, rgb(var(--color-primary-rgb) / .09), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.88), rgb(var(--color-background-rgb) / .72)) !important;
}

.z-speedtest-gauge::before {
  content:'' !important;
  position:absolute !important;
  left:50% !important;
  bottom:10% !important;
  width:13rem !important;
  height:13rem !important;
  border-radius:50% !important;
  transform:translateX(-50%) !important;
  background:radial-gradient(circle, rgb(var(--color-primary-rgb) / .2), rgb(var(--color-primary-rgb) / .08) 42%, transparent 68%) !important;
  opacity:.8 !important;
}

.z-speedtest-gauge::after {
  content:'' !important;
  position:absolute !important;
  inset:1rem 1.4rem 2.2rem !important;
  border-radius:999px 999px 1.2rem 1.2rem !important;
  background:linear-gradient(100deg, transparent 0 28%, rgba(255,255,255,.68) 43%, transparent 58% 100%) !important;
  opacity:0 !important;
  transform:translateX(-55%) !important;
  pointer-events:none !important;
}

.z-tools-speed-card[data-z-speed-state="running"] .z-speedtest-gauge::after {
  animation:zSpeedSweep 1.45s ease-in-out infinite !important;
}

.z-speedtest-svg {
  position:absolute !important;
  inset:.8rem 0 0 !important;
  width:100% !important;
  height:100% !important;
  overflow:visible !important;
}

.z-speedtest-track,
.z-speedtest-fill {
  fill:none !important;
  stroke-linecap:round !important;
  stroke-width:15 !important;
}

.z-speedtest-track {
  stroke:rgb(var(--color-primary-rgb) / .14) !important;
}

.z-speedtest-fill {
  stroke:var(--z-speed-color, #20b862) !important;
  stroke-dasharray:100 !important;
  stroke-dashoffset:calc(100 - var(--z-speed-score, 0)) !important;
  filter:drop-shadow(0 .2rem .45rem rgb(var(--color-primary-rgb) / .2)) !important;
  transition:stroke-dashoffset .58s cubic-bezier(.2,.8,.2,1), stroke .24s ease !important;
}

.z-speedtest-ticks line {
  stroke:rgb(var(--color-primary-rgb) / .42) !important;
  stroke-width:3 !important;
  stroke-linecap:round !important;
}

.z-speedtest-labels {
  position:absolute !important;
  inset:auto 2.2rem 1.2rem !important;
  display:flex !important;
  justify-content:space-between !important;
  color:var(--color-secondary) !important;
  font-size:1rem !important;
  font-weight:850 !important;
  line-height:1 !important;
}

.z-speedtest-needle {
  position:absolute !important;
  left:50% !important;
  bottom:21% !important;
  width:.46rem !important;
  height:41% !important;
  border-radius:999px !important;
  transform-origin:50% 92% !important;
  transform:translateX(-50%) rotate(var(--z-speed-angle, -118deg)) !important;
  background:linear-gradient(180deg, var(--color-background) 0%, var(--color-primary) 28%, var(--color-primary) 100%) !important;
  box-shadow:0 0 .85rem rgb(var(--color-primary-rgb) / .42), 0 .24rem .42rem rgb(var(--color-primary-hover-rgb) / .22) !important;
  transition:transform .62s cubic-bezier(.17,.84,.32,1.12) !important;
  z-index:3 !important;
}

.z-tools-speed-card[data-z-speed-state="running"] .z-speedtest-needle {
  animation:zSpeedNeedleGlow .9s ease-in-out infinite alternate !important;
}

.z-speedtest-hub {
  position:absolute !important;
  left:50% !important;
  bottom:18.5% !important;
  width:2.6rem !important;
  height:2.6rem !important;
  border-radius:50% !important;
  transform:translateX(-50%) !important;
  background:radial-gradient(circle at 36% 32%, #fff, var(--color-background) 28%, var(--color-primary) 62%, var(--color-primary) 100%) !important;
  box-shadow:0 .3rem .8rem rgb(var(--color-primary-rgb) / .24), inset 0 1px 0 rgba(255,255,255,.76) !important;
  z-index:4 !important;
}

.z-speedtest-readout {
  position:absolute !important;
  left:50% !important;
  top:45% !important;
  min-width:13rem !important;
  transform:translate(-50%, -50%) !important;
  display:grid !important;
  justify-items:center !important;
  color:var(--color-primary) !important;
  text-align:center !important;
  z-index:5 !important;
}

.z-speedtest-readout strong {
  display:block !important;
  max-width:100% !important;
  font-size:clamp(2.6rem, 5vw, 4.8rem) !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
  text-shadow:0 .15rem .35rem rgb(var(--color-primary-rgb) / .12) !important;
}

.z-speedtest-readout span {
  margin-top:.32rem !important;
  color:var(--color-secondary) !important;
  font-size:1.05rem !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
}

.z-speedtest-phase {
  position:absolute !important;
  left:50% !important;
  bottom:9.5% !important;
  transform:translateX(-50%) !important;
  min-width:12rem !important;
  padding:.44rem .9rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .18) !important;
  border-radius:999px !important;
  color:var(--color-primary) !important;
  background:rgba(255,255,255,.82) !important;
  box-shadow:0 .4rem 1rem rgb(var(--color-primary-rgb) / .08) !important;
  font-size:1.08rem !important;
  font-weight:900 !important;
  text-align:center !important;
  z-index:5 !important;
}

.z-speedtest-status {
  width:100% !important;
  max-width:42rem !important;
  min-height:3.8rem !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:.7rem 1rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .14) !important;
  border-radius:.95rem !important;
  color:var(--color-primary) !important;
  background:rgba(255,255,255,.72) !important;
  text-align:center !important;
  font-weight:800 !important;
}

.z-speedtest-start {
  align-self:start !important;
  justify-self:stretch !important;
  min-height:4.8rem !important;
}

.z-speedtest-side {
  display:grid !important;
  gap:1rem !important;
  align-self:start !important;
}

.z-speedtest-live-grid {
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:.85rem !important;
}

.z-speedtest-live-tile {
  min-height:7.2rem !important;
  display:grid !important;
  align-content:center !important;
  gap:.35rem !important;
  padding:.9rem 1rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .13) !important;
  border-radius:.95rem !important;
  background:rgba(255,255,255,.82) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88), 0 .55rem 1.2rem rgb(var(--color-primary-rgb) / .07) !important;
  color:var(--color-primary) !important;
}

.z-speedtest-live-tile span {
  color:var(--color-secondary) !important;
  font-size:.82rem !important;
  font-weight:950 !important;
  letter-spacing:.08em !important;
  line-height:1 !important;
  text-transform:uppercase !important;
}

.z-speedtest-live-tile strong {
  color:var(--color-primary) !important;
  font-size:clamp(1.35rem, 2.1vw, 2rem) !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
}

.z-speedtest-live-tile small {
  color:var(--color-primary) !important;
  font-size:.78rem !important;
  line-height:1.25 !important;
  font-weight:760 !important;
  overflow-wrap:anywhere !important;
}

.z-speedtest-live-tile.is-active {
  box-shadow:0 0 0 .2rem rgba(45,140,255,.08), 0 .8rem 1.7rem rgb(var(--color-primary-rgb) / .11) !important;
}

.z-speedtest-live-tile[data-z-speed-tone="low"] {
  border-color:rgba(216,91,74,.36) !important;
  background:linear-gradient(180deg, rgba(255,247,245,.96), rgba(255,255,255,.86)) !important;
}

.z-speedtest-live-tile[data-z-speed-tone="low"] strong {
  color:#d85b4a !important;
}

.z-speedtest-live-tile[data-z-speed-tone="medium"] {
  border-color:rgba(230,161,47,.38) !important;
  background:linear-gradient(180deg, rgba(255,250,238,.96), rgba(255,255,255,.86)) !important;
}

.z-speedtest-live-tile[data-z-speed-tone="medium"] strong {
  color:#c98119 !important;
}

.z-speedtest-live-tile[data-z-speed-tone="good"] {
  border-color:rgba(32,184,98,.34) !important;
  background:linear-gradient(180deg, rgba(240,255,247,.96), rgba(255,255,255,.86)) !important;
}

.z-speedtest-live-tile[data-z-speed-tone="good"] strong {
  color:#149450 !important;
}

.z-speedtest-live-tile[data-z-speed-tone="fast"] {
  border-color:rgba(45,140,255,.36) !important;
  background:linear-gradient(180deg, rgba(241,247,255,.96), rgba(255,255,255,.86)) !important;
}

.z-speedtest-live-tile[data-z-speed-tone="fast"] strong {
  color:#2d6fe0 !important;
}

.z-speedtest-live-tile[data-z-speed-tone="unavailable"] {
  border-color:rgba(130,144,160,.28) !important;
  filter:saturate(.75) !important;
}

.z-speedtest-live-tile[data-z-speed-tone="unavailable"] strong {
  color:#718096 !important;
}

.z-tools-speed-card > .z-tools-data-list {
  grid-column:2 !important;
  align-self:start !important;
}

.z-tools-speed-card[data-z-speed-state="running"] .z-speedtest-start {
  box-shadow:0 0 0 .24rem rgba(32,184,98,.16), 0 .9rem 2.2rem rgb(var(--color-primary-rgb) / .18) !important;
}

.z-tools-speed-card[data-z-speed-state="error"] .z-speedtest-fill {
  stroke:#d9534f !important;
}

@keyframes zSpeedSweep {
  0% { opacity:0; transform:translateX(-55%); }
  24% { opacity:.65; }
  72% { opacity:.2; }
  100% { opacity:0; transform:translateX(55%); }
}

@keyframes zSpeedNeedleGlow {
  from { box-shadow:0 0 .65rem rgb(var(--color-primary-rgb) / .32), 0 .24rem .42rem rgb(var(--color-primary-hover-rgb) / .22); }
  to { box-shadow:0 0 1.25rem rgba(32,184,98,.42), 0 .24rem .42rem rgb(var(--color-primary-hover-rgb) / .22); }
}

@media (max-width:900px) {
  .z-tools-speed-card {
    grid-template-columns:1fr !important;
  }
  .z-tools-speed-card > .z-tools-data-list {
    grid-column:auto !important;
  }
  .z-speedtest-side {
    grid-column:auto !important;
  }
}

@media (max-width:520px) {
  .z-tools-speed-card {
    padding:1rem !important;
    gap:1.1rem !important;
  }
  .z-speedtest-gauge {
    min-height:15.5rem !important;
  }
  .z-speedtest-readout strong {
    font-size:clamp(2.3rem, 10vw, 3.7rem) !important;
  }
  .z-speedtest-labels {
    inset:auto 1.4rem .9rem !important;
    font-size:.9rem !important;
  }
  .z-speedtest-live-grid {
    grid-template-columns:1fr !important;
  }
}

@media (prefers-reduced-motion:reduce) {
  .z-tools-speed-card[data-z-speed-state="running"] .z-speedtest-gauge::after,
  .z-tools-speed-card[data-z-speed-state="running"] .z-speedtest-needle {
    animation:none !important;
  }
}

/* === V161 IP country and timezone flag chips === */
.z-tools-country-summary {
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:.85rem !important;
  margin:.95rem 0 1.15rem !important;
}

.z-tools-country-card {
  min-width:0 !important;
  padding:.82rem .9rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .18) !important;
  border-radius:1rem !important;
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.95), transparent 42%),
    linear-gradient(135deg, rgb(var(--color-background-rgb) / .98), rgba(255,255,255,.96)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92), 0 .42rem 1rem rgb(var(--color-primary-rgb) / .055) !important;
}

.z-tools-country-card-label {
  display:block !important;
  margin:0 0 .55rem !important;
  color:var(--color-secondary) !important;
  font-size:.86rem !important;
  line-height:1.1 !important;
  font-weight:900 !important;
  letter-spacing:.035em !important;
  text-transform:uppercase !important;
}

.z-tools-country-badge {
  display:inline-flex !important;
  align-items:center !important;
  min-width:0 !important;
  max-width:100% !important;
  gap:.62rem !important;
  color:var(--color-primary) !important;
  vertical-align:middle !important;
}

.z-tools-country-badge--card,
.z-tools-country-badge--inline {
  width:100% !important;
}

.z-tools-country-flag {
  flex:0 0 auto !important;
  width:2.7rem !important;
  height:2.7rem !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid rgb(var(--color-primary-rgb) / .2) !important;
  border-radius:.78rem !important;
  background:linear-gradient(180deg, #fff, var(--color-background)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 .28rem .7rem rgb(var(--color-primary-rgb) / .07) !important;
  font-family:"Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", Arial, Helvetica, sans-serif !important;
  font-size:1.45rem !important;
  line-height:1 !important;
}

.z-tools-country-text {
  min-width:0 !important;
  display:grid !important;
  gap:.18rem !important;
  text-align:start !important;
}

.z-tools-country-name,
.z-tools-country-detail {
  min-width:0 !important;
  max-width:100% !important;
  overflow-wrap:anywhere !important;
  letter-spacing:0 !important;
}

.z-tools-country-name {
  color:var(--color-primary) !important;
  font-size:1.12rem !important;
  line-height:1.12 !important;
  font-weight:950 !important;
}

.z-tools-country-detail {
  color:var(--color-secondary) !important;
  font-size:.9rem !important;
  line-height:1.22 !important;
  font-weight:820 !important;
}

.z-tools-status-row strong .z-tools-country-badge {
  justify-content:flex-end !important;
}

.z-tools-status-row strong .z-tools-country-flag {
  width:2.2rem !important;
  height:2.2rem !important;
  border-radius:.65rem !important;
  font-size:1.2rem !important;
}

.z-tools-status-row strong .z-tools-country-name {
  font-size:1rem !important;
}

.z-tools-status-row strong .z-tools-country-detail {
  display:none !important;
}

.z-tools-data-row strong .z-tools-country-badge {
  justify-content:flex-start !important;
}

@media (max-width:760px) {
  .z-tools-country-summary {
    grid-template-columns:1fr !important;
  }

  .z-tools-status-row strong .z-tools-country-badge {
    justify-content:flex-start !important;
  }
}

@media (max-width:480px) {
  .z-tools-country-card {
    padding:.72rem !important;
  }

  .z-tools-country-flag {
    width:2.35rem !important;
    height:2.35rem !important;
    border-radius:.68rem !important;
    font-size:1.22rem !important;
  }

  .z-tools-country-name {
    font-size:1rem !important;
  }

  .z-tools-country-detail {
    font-size:.82rem !important;
  }
}

/* === V162 fast-scroll text paint stability and strict floating-button contrast === */
.tg-button:not(.tg-button--on-blue),
.header.active .tg-button:not(.tg-button--on-blue),
body > .tg-button:not(.tg-button--on-blue),
body > .tg-button.tg-button--body-fixed:not(.tg-button--on-blue) {
  background:
    linear-gradient(
      0deg,
      var(--color-primary) 53.65%,
      rgb(var(--color-primary-rgb) / .53) 82.81%,
      var(--color-primary) 95.83%
    ) !important;
  border-color:var(--color-primary) !important;
  color:#fff !important;
  text-shadow:none !important;
  animation:none !important;
}

.tg-button:not(.tg-button--on-blue) .tg-button__icon,
body > .tg-button:not(.tg-button--on-blue) .tg-button__icon {
  filter:none !important;
}

html.z-flight-v77 main,
html.z-flight-v77 main > .container,
html.z-flight-v77 .tmpl-home,
html.z-flight-v77 .contact-form,
html.z-flight-v77 .form,
html.z-flight-v77 .input__row,
html.z-flight-v77 .input-checkbox__row,
html.z-flight-v77 .contact-message-help,
html.z-flight-v77 .message-rule,
html.z-flight-v77 .localized-doc,
html.z-flight-v77 .article-body,
html.z-flight-v77 .legal-document,
html.z-flight-v77 .modal-body-txt,
html.z-flight-v77 .anti_doping,
html.z-flight-v77 .products,
html.z-flight-v77 .new-product-grid,
html.z-flight-v77 .product-copy,
html.z-flight-v77 .team-gallery,
html.z-flight-v77 .blog-list,
html.z-flight-v77 .tools-main,
html.z-flight-v77 .tools-grid,
html.z-flight-v77 .tool-shell,
html.z-flight-v77 .tool-panel,
html.z-flight-v77 .content-block:not([hidden]),
html.z-flight-v77 .document-style,
html.z-flight-v77 footer.footer,
html.z-flight-v77 .footer__container {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  contain:none !important;
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
  will-change:auto !important;
}

html.z-flight-v77 main,
html.z-flight-v77 main > .container,
html.z-flight-v77 .tmpl-home,
html.z-flight-v77 .contact-form,
html.z-flight-v77 .localized-doc,
html.z-flight-v77 .article-body,
html.z-flight-v77 .legal-document,
html.z-flight-v77 .tools-main,
html.z-flight-v77 .tool-shell,
html.z-flight-v77 footer.footer,
html.z-flight-v77 .footer__container {
  -webkit-transform:none !important;
  transform:none !important;
}

html.z-flight-v77 main :where(h1,h2,h3,h4,h5,h6,p,li,label,legend,td,th,blockquote,figcaption,small,strong,em):not(.hero *):not(.hero-phrase):not(.hero-phrase *):not(.z-parallax-finale *),
html.z-flight-v77 footer :where(p,li,a,small,strong,em,span):not(.social-icon):not(.social-icon *) {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  contain:none !important;
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
  will-change:auto !important;
}

html.z-flight-v77 main :where(h1,h2,h3,h4,h5,h6,p,li,label,legend,td,th,blockquote,figcaption):not(.hero *):not(.z-parallax-finale *) {
  -webkit-transform:none !important;
  transform:none !important;
}

/* === V163 transparent footer globe badge on blue footer === */
.footer-globe-brand,
.footer-globe-brand a {
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.footer-globe-brand img,
.footer-globe-brand img.z-progressive-img,
.footer-globe-brand img.z-progressive-img.is-full-loaded {
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  opacity:.96 !important;
  filter:
    drop-shadow(0 .24rem .42rem rgb(var(--color-primary-hover-rgb) / .24))
    drop-shadow(0 0 1.1rem rgba(255,255,255,.2)) !important;
}

.footer-globe-brand a::before,
.footer-globe-brand a::after {
  opacity:.62 !important;
}

/* === V164 footer social icons at 140% visual size === */
.footer-contacts {
  gap:.18rem 1.55rem !important;
}

.footer-contacts .social-icon__link {
  min-width:4.4rem !important;
  min-height:4.4rem !important;
  padding:.36rem !important;
}

.footer-contacts .social-icon {
  width:2.8rem !important;
  height:2.8rem !important;
  padding:.28rem !important;
}

@media (max-width:700px) {
  .footer-contacts {
    gap:.14rem 1.1rem !important;
  }

  .footer-contacts .social-icon {
    width:2.8rem !important;
    height:2.8rem !important;
  }
}

/* === V165 Telegram float locked above return-up control === */
body > .tg-button,
body > .tg-button.tg-button--body-fixed,
.tg-button.tg-button--body-fixed,
html.z-scroll-stable-no-flight .tg-button.tg-button--body-fixed,
html.z-scroll-stable-no-flight .header.active .tg-button.tg-button--body-fixed {
  position:fixed !important;
  top:auto !important;
  right:var(--tg-fixed-right, 2rem) !important;
  bottom:var(--tg-fixed-bottom, 7.4rem) !important;
  left:auto !important;
  z-index:100000 !important;
  transition:
    background .2s ease,
    border-color .2s ease,
    color .2s ease,
    box-shadow .2s ease,
    filter .2s ease,
    transform .2s ease !important;
}

@media (max-width:700px) {
  body > .tg-button,
  body > .tg-button.tg-button--body-fixed,
  .tg-button.tg-button--body-fixed,
  html.z-scroll-stable-no-flight .tg-button.tg-button--body-fixed,
  html.z-scroll-stable-no-flight .header.active .tg-button.tg-button--body-fixed {
    right:var(--tg-fixed-right, 1.4rem) !important;
    bottom:var(--tg-fixed-bottom, 6.6rem) !important;
  }
}

/* === V166 legal notice and cookie preferences bottom-left panel === */
body.legal-notice-open {
  width:auto !important;
  height:auto !important;
  overflow:auto !important;
}

#cookie-notice[data-legal-gate="notice-preferences"],
#cookie-notice[data-legal-gate="notice-preferences"].active,
#cookie-notice[data-legal-gate="notice-preferences"].is-visible {
  position:fixed !important;
  left:2.4rem !important;
  right:auto !important;
  top:auto !important;
  bottom:2.4rem !important;
  inset:auto auto 2.4rem 2.4rem !important;
  width:min(52rem, calc(100vw - 4.8rem)) !important;
  height:auto !important;
  min-height:0 !important;
  /* H-14 - the card was capped at 70dvh while its own contents measured 634px,
     so at 1280x800 the third action was sheared by 6.19px and only reachable by
     scrolling inside the card. The cap is now the window less one gutter top and
     bottom, which is taller than the contents at every desktop height measured. */
  max-height:calc(100dvh - 4.8rem) !important;
  display:block !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  overflow:visible !important;
  padding:0 !important;
  background:transparent !important;
  isolation:isolate !important;
  z-index:2147483000 !important;
  font-weight:600 !important;
  pointer-events:none !important;
}

#cookie-notice[data-legal-gate="notice-preferences"][hidden] {
  display:none !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .disclaimer__wrap {
  position:relative !important;
  width:100% !important;
  max-width:none !important;
  max-height:calc(100dvh - 4.8rem) !important;
  overflow:auto !important;
  padding:1.55rem !important;
  border:.1rem solid rgb(var(--color-surface-blue-rgb) / .34) !important;
  border-radius:1.8rem !important;
  background:
    linear-gradient(145deg, rgb(var(--color-primary-rgb) / .98), rgb(var(--color-primary-rgb) / .95) 48%, rgb(var(--color-primary-rgb) / .98)),
    var(--color-primary) !important;
  color:#fff !important;
  box-shadow:
    0 2.2rem 6rem rgb(var(--color-primary-hover-rgb) / .34),
    inset 0 .1rem 0 rgba(255,255,255,.2) !important;
  -webkit-backdrop-filter:blur(1.3rem) saturate(1.12) !important;
  backdrop-filter:blur(1.3rem) saturate(1.12) !important;
  pointer-events:auto !important;
  scrollbar-width:thin;
}

#cookie-notice[data-legal-gate="notice-preferences"] .logo {
  display:none !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-panel {
  display:flex;
  flex-direction:column;
  gap:.95rem;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-title {
  margin:0 !important;
  color:#fff !important;
  font-size:1.82rem !important;
  line-height:1.16 !important;
  font-weight:900 !important;
  text-align:left !important;
  letter-spacing:0 !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-lead,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-optional-note {
  width:100% !important;
  margin:0 !important;
  color:rgba(255,255,255,.92) !important;
  font-size:1.12rem !important;
  line-height:1.48 !important;
  font-weight:650 !important;
  text-align:left !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-optional-note {
  color:rgb(var(--color-background-rgb) / .86) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-links {
  display:flex !important;
  flex-wrap:wrap !important;
  gap:.55rem .9rem !important;
  margin:.1rem 0 !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-links a {
  display:inline-flex !important;
  align-items:center !important;
  min-height:3.4rem !important;
  padding:.35rem .85rem !important;
  border:.1rem solid rgba(255,255,255,.18) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.1) !important;
  color:#fff !important;
  font-size:1.04rem !important;
  font-weight:800 !important;
  text-decoration:none !important;
  box-shadow:none !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-links a:hover,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-links a:focus-visible {
  background:rgba(255,255,255,.18) !important;
  color:#fff !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-confirm,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-row {
  display:grid !important;
  grid-template-columns:auto 1fr !important;
  align-items:flex-start !important;
  gap:.85rem !important;
  margin:0 !important;
  padding:.9rem !important;
  border:.1rem solid rgba(255,255,255,.18) !important;
  border-radius:1.2rem !important;
  background:rgb(var(--color-primary-hover-rgb) / .24) !important;
  color:#fff !important;
  font-size:1.05rem !important;
  line-height:1.42 !important;
  font-weight:800 !important;
  text-align:left !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] input[type="checkbox"] {
  width:1.75rem !important;
  height:1.75rem !important;
  margin:.1rem 0 0 !important;
  accent-color:#fff !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-actions,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-actions {
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:.68rem !important;
  margin:0 !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-action {
  min-height:4.2rem !important;
  width:100% !important;
  padding:.85rem 1.05rem !important;
  border:.12rem solid rgba(255,255,255,.26) !important;
  border-radius:999px !important;
  font-size:1.12rem !important;
  line-height:1.16 !important;
  font-weight:900 !important;
  letter-spacing:0 !important;
  text-align:center !important;
  cursor:pointer !important;
  box-shadow:0 .75rem 1.8rem rgb(var(--color-primary-hover-rgb) / .22) !important;
  transition:background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn--primary,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-action--primary {
  background:#fff !important;
  color:var(--color-primary) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn--secondary,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-action {
  background:rgba(255,255,255,.1) !important;
  color:#fff !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn:hover:not(:disabled),
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-action:hover,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn:focus-visible,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-action:focus-visible {
  transform:translateY(-.1rem) !important;
  border-color:rgba(255,255,255,.52) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn:focus-visible,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-action:focus-visible,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-links a:focus-visible,
#cookie-notice[data-legal-gate="notice-preferences"] input[type="checkbox"]:focus-visible {
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.22rem !important;
  box-shadow:0 0 0 .55rem rgba(255,255,255,.9), 0 0 0 .85rem var(--color-primary) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn:disabled,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn[aria-disabled="true"] {
  opacity:1 !important;
  cursor:not-allowed !important;
  transform:none !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-preferences,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice {
  margin:.15rem 0 0 !important;
  padding:1rem !important;
  border:.1rem solid rgba(255,255,255,.18) !important;
  border-radius:1.2rem !important;
  background:rgb(var(--color-primary-hover-rgb) / .24) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-preferences[hidden],
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice[hidden] {
  display:none !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-preferences h3 {
  margin:0 0 .8rem !important;
  color:#fff !important;
  font-size:1.35rem !important;
  line-height:1.2 !important;
  text-align:left !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-row {
  margin:.62rem 0 !important;
  background:rgba(255,255,255,.08) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-row strong,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-row span span {
  display:block !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-row strong {
  margin-bottom:.22rem !important;
  color:#fff !important;
  font-size:1.04rem !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-row span span {
  color:rgba(255,255,255,.82) !important;
  font-size:.98rem !important;
  font-weight:650 !important;
  line-height:1.38 !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-status {
  min-height:1.4rem !important;
  margin:.55rem 0 0 !important;
  color:var(--color-background) !important;
  font-size:1rem !important;
  font-weight:800 !important;
  text-align:left !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice {
  max-height:32dvh !important;
  overflow:auto !important;
  -webkit-overflow-scrolling:touch !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal-title,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal__h3-subtitle,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal__subdivider,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal__p,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal__list,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice li {
  color:rgba(255,255,255,.9) !important;
  font-size:1.02rem !important;
  line-height:1.48 !important;
  text-align:left !important;
  font-weight:650 !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal-title {
  margin-bottom:.65rem !important;
  color:#fff !important;
  font-size:1.35rem !important;
  font-weight:900 !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal-body-wrap,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal-body-txt {
  max-height:none !important;
  overflow:visible !important;
  margin:.55rem 0 !important;
  padding:0 !important;
  background:transparent !important;
}

body:not(.legal-notice-open) #cookie-notice[data-legal-gate="notice-preferences"] ~ .tg-button,
body:not(.legal-notice-open) #cookie-notice[data-legal-gate="notice-preferences"] ~ .site-language-flags,
body:not(.legal-notice-open) #cookie-notice[data-legal-gate="notice-preferences"] ~ .world-clocks {
  pointer-events:auto !important;
}

@media (max-width:700px) {
  #cookie-notice[data-legal-gate="notice-preferences"],
  #cookie-notice[data-legal-gate="notice-preferences"].active,
  #cookie-notice[data-legal-gate="notice-preferences"].is-visible {
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    inset:auto 0 0 0 !important;
    width:100vw !important;
    max-height:78dvh !important;
  }

  /* On a phone the gate is a full-width sheet over most of the screen, so the page
     behind it is dimmed and inert instead of half-lit and sliced through the header. */
  #cookie-notice[data-legal-gate="notice-preferences"].active::before,
  #cookie-notice[data-legal-gate="notice-preferences"].is-visible::before {
    content:"" !important;
    position:fixed !important;
    inset:0 !important;
    z-index:-1 !important;
    background:rgba(0,0,0,.72) !important;
    pointer-events:auto !important;
  }

  body.legal-notice-open {
    overflow:hidden !important;
  }

  #cookie-notice[data-legal-gate="notice-preferences"] .disclaimer__wrap {
    max-height:78dvh !important;
    padding:1.35rem !important;
    border-right:0 !important;
    border-bottom:0 !important;
    border-left:0 !important;
    border-radius:1.6rem 1.6rem 0 0 !important;
  }

  #cookie-notice[data-legal-gate="notice-preferences"] .z-legal-title {
    font-size:1.62rem !important;
  }

  #cookie-notice[data-legal-gate="notice-preferences"] .z-legal-lead,
  #cookie-notice[data-legal-gate="notice-preferences"] .z-legal-optional-note {
    font-size:1.04rem !important;
  }
}

/* === V167 original disclaimer visual style for legal notice controls === */
#cookie-notice[data-legal-gate="notice-preferences"] .disclaimer__wrap {
  padding:1.8rem !important;
  border:0 !important;
  border-radius:1rem !important;
  background:#fff !important;
  color:var(--color-primary) !important;
  box-shadow:0 1.8rem 5rem rgba(0,0,0,.24) !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .logo {
  display:block !important;
  max-width:13.5rem !important;
  margin:0 auto .75rem !important;
  text-align:center !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .logo img {
  max-width:100% !important;
  max-height:7rem !important;
  margin:0 auto !important;
  background:transparent !important;
  box-shadow:none !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-panel {
  gap:.78rem !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-title {
  color:var(--color-primary) !important;
  font-size:2.05rem !important;
  line-height:1.18 !important;
  text-align:center !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-lead,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-optional-note {
  color:var(--color-primary) !important;
  font-size:1.16rem !important;
  line-height:1.52 !important;
  font-weight:650 !important;
  text-align:center !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-links {
  justify-content:center !important;
  gap:.35rem 1.2rem !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-links a {
  min-height:3rem !important;
  padding:.2rem .1rem !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:var(--color-primary) !important;
  font-size:1.08rem !important;
  text-decoration:underline !important;
  text-underline-offset:.22rem !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-links a:hover,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-links a:focus-visible {
  color:var(--color-primary) !important;
  background:transparent !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-confirm,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-row {
  border:.1rem solid var(--color-background) !important;
  border-radius:.7rem !important;
  background:#fafcff !important;
  color:var(--color-primary) !important;
  font-size:1.08rem !important;
  font-weight:800 !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] input[type="checkbox"] {
  accent-color:var(--color-primary) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-action {
  min-height:4.6rem !important;
  border:0 !important;
  border-radius:50px !important;
  color:#fff !important;
  font-size:1.12rem !important;
  box-shadow:0 .4rem .8rem rgba(0,0,0,.15) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn--primary {
  background:
    linear-gradient(
      0deg,
      rgba(6,0,0,.5) 8.85%,
      rgba(233,7,13,.105) 46.88%,
      rgba(51,7,8,.5) 100%
    ),
    #bf0001 !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn--secondary,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-action {
  background:
    linear-gradient(
      0deg,
      rgba(6,0,0,.5) 8.85%,
      rgb(var(--color-primary-rgb) / .5) 46.88%,
      rgba(51,7,8,.5) 100%
    ),
    var(--color-secondary) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-action--primary {
  background:
    linear-gradient(
      0deg,
      rgba(6,0,0,.5) 8.85%,
      rgba(233,7,13,.105) 46.88%,
      rgba(51,7,8,.5) 100%
    ),
    #bf0001 !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn:disabled,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-btn[aria-disabled="true"] {
  /* T-19 - the state every first-time visitor sees first was 2.51:1.
     The old treatment faded the whole element (opacity .45 + grayscale), and a
     white label over a white card stays white while everything behind it goes
     pale. The button is now muted in its own fill instead: one flat tone of the
     site's primary blue, no gloss, no shadow, so the white label keeps its
     contrast and the control still reads as unavailable next to the two live
     buttons under it.
     His ruling, 2026-08-28: the accept button is red again, so the muted fill is
     a muted red rather than the site blue. White on #8f2b2c is 6.4:1, well past
     the 4.5:1 floor T-19 was raised to fix, and the control still reads as
     unavailable beside the two live buttons under it. */
  opacity:1 !important;
  background-image:none !important;
  background-color:#8f2b2c !important;
  box-shadow:none !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-preferences,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice {
  border:.1rem solid var(--color-background) !important;
  border-radius:.8rem !important;
  background:#fafcff !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-preferences h3,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-row strong {
  color:var(--color-primary) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-row span span,
#cookie-notice[data-legal-gate="notice-preferences"] .z-cookie-status {
  color:var(--color-primary) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal-title,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal__h3-subtitle,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal__subdivider,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal__p,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal__list,
#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice li {
  color:var(--color-primary) !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-full-notice .modal-title {
  color:var(--color-primary) !important;
}

@media (max-width:700px) {
  #cookie-notice[data-legal-gate="notice-preferences"] .disclaimer__wrap {
    padding:1.3rem !important;
  }

  #cookie-notice[data-legal-gate="notice-preferences"] .logo {
    max-width:10.5rem !important;
  }

  #cookie-notice[data-legal-gate="notice-preferences"] .logo img {
    max-height:5.6rem !important;
  }

  #cookie-notice[data-legal-gate="notice-preferences"] .z-legal-title {
    font-size:1.72rem !important;
  }

  #cookie-notice[data-legal-gate="notice-preferences"] .z-legal-lead,
  #cookie-notice[data-legal-gate="notice-preferences"] .z-legal-optional-note {
    font-size:1.04rem !important;
  }
}

/* V57 implementation brief surfaces */
.z-brief-panel,.z-tools-cta-panel,.z-featured-guide,.clean-sport-action-center,.article-meta-block,.sources-review-notes,.tool-result-next-steps,.tool-page-overview{border:1px solid var(--color-background);background:var(--color-background);border-radius:8px;padding:24px;margin:24px 0;box-shadow:0 10px 28px rgb(var(--color-primary-rgb) / .06)}
.z-anchor-strip{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 26px}.z-anchor-strip a,.z-cta-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 16px;border-radius:8px;border:1px solid var(--color-primary);background:var(--color-primary);color:#fff!important;font-weight:700;text-decoration:none}.z-cta-link--secondary,.z-anchor-strip a{background:#fff;color:var(--color-primary)!important}.z-anchor-strip a:focus-visible,.z-cta-link:focus-visible,.contact-intent-select:focus-visible{outline:3px solid #ffcf33;outline-offset:3px;box-shadow:0 0 0 7px rgba(255,255,255,.9),0 0 0 10px var(--color-primary)}
.product-card-actions,.product-detail-actions,.z-route-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.product-family-tag,.z-chip{display:inline-flex;font-size:12px;line-height:1.2;text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary);background:var(--color-background);border-radius:999px;padding:6px 10px;font-weight:800}
.product-detail-page{padding:42px 15px}.product-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,520px);gap:34px;align-items:center}.product-detail-hero h1{font-size:clamp(32px,5vw,56px);line-height:1.05;margin:10px 0 18px}.product-detail-figure{margin:0}.product-detail-figure img{width:100%;height:auto;border-radius:8px;border:1px solid var(--color-background);background:var(--color-background)}.product-detail-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px}.product-detail-thumb{display:block;border:1px solid var(--color-background);border-radius:8px;overflow:hidden;background:#fff}.product-detail-thumb img{display:block;width:100%;height:110px;object-fit:cover}.product-detail-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:28px 0}.product-detail-sections section,.product-detail-faq details,.product-detail-related{border:1px solid var(--color-background);border-radius:8px;background:#fff;padding:18px}.product-detail-faq details+details{margin-top:12px}.product-detail-faq summary{cursor:pointer;font-weight:800;color:var(--color-primary)}
.z-home-routes{padding:36px 0;background:var(--color-background)}.z-home-routes h2{text-align:center;margin:0 0 22px}.z-route-grid,.z-action-grid,.z-blog-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.z-route-grid a,.z-action-grid a,.z-blog-card{display:block;border:1px solid var(--color-background);border-radius:8px;background:#fff;padding:18px;text-decoration:none;color:var(--color-primary-hover)}.z-route-grid strong,.z-action-grid strong{display:block;color:var(--color-primary);margin-bottom:8px}.z-route-grid span,.z-action-grid span{display:block;color:var(--color-primary)}
.z-blog-hub .z-blog-card h2{font-size:22px;line-height:1.2}.z-related-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}.z-related-tools strong{width:100%;color:var(--color-primary)}.z-related-tools a,.tool-card__related{font-size:14px;border:1px solid var(--color-background);border-radius:999px;padding:7px 10px;text-decoration:none;background:#fff;color:var(--color-primary)}
.article-meta-block dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:0}.article-meta-block dt{font-weight:800;color:var(--color-primary)}.article-meta-block dd{margin:4px 0 0}.tool-privacy-note{border-left:4px solid var(--color-primary);background:var(--color-background);padding:12px 14px;color:var(--color-primary-hover)}.contact-intent-row select{min-height:48px}.social-icon__link[aria-label]{outline-offset:4px}
@media (max-width:700px){.product-detail-hero{grid-template-columns:1fr}.product-detail-hero h1{font-size:34px}.z-anchor-strip a,.z-cta-link{width:100%}.product-detail-actions,.product-card-actions,.z-route-actions{flex-direction:column}.z-brief-panel,.z-tools-cta-panel,.z-featured-guide,.clean-sport-action-center,.article-meta-block,.sources-review-notes,.tool-result-next-steps,.tool-page-overview{padding:18px}}

/* === V57 product repair after owner QA === */
.zphc-products-modern .products-lead{max-width:980px;margin:0 auto 20px;text-align:center;font-size:1.25rem!important;line-height:1.45!important}
.zphc-products-modern .product-copy{padding:1.35rem 1.45rem 1.55rem!important}
.zphc-products-modern .product-copy h2{font-size:1.48rem!important;line-height:1.22!important;margin-bottom:.65rem!important}
.zphc-products-modern .product-copy p{font-size:1.02rem!important;line-height:1.42!important;margin-bottom:.7rem!important}
.zphc-products-modern .product-count{display:inline-flex!important;width:auto;color:var(--color-primary)!important;background:var(--color-background);border:1px solid var(--color-background);border-radius:999px;padding:.28rem .7rem;font-weight:800}
.zphc-products-modern .product-action-note{display:none!important}
.product-detail-page .product-detail-hero h1{font-size:clamp(2.2rem,4vw,3.8rem)!important;line-height:1.08!important}
.product-detail-page .product-detail-lead{font-size:1.18rem!important;line-height:1.55!important;max-width:760px}
.product-detail-figure img{aspect-ratio:4/3;object-fit:cover}
.product-detail-gallery h2,.product-detail-note h2,.product-detail-related h2{font-size:2rem;line-height:1.2}
.product-detail-note{border:1px solid var(--color-background);border-radius:8px;background:var(--color-background);padding:20px;margin:26px 0}
.product-detail-related{margin-bottom:28px}

/* === V57 contact inquiry dropdown repair: anchored in-page control === */
.contact-intent-row {
  position:relative !important;
}

.contact-intent-row.is-select-open {
  z-index:5000 !important;
}

.z-contact-native-select {
  display:none !important;
}

.z-contact-select {
  position:relative !important;
  width:100% !important;
}

.z-contact-select__button {
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  width:100% !important;
  min-height:5.8rem !important;
  /* the wide side is the side the arrow is on, so it follows the reading
     direction: on a right-to-left page both move to the left together */
  padding-block:1.15rem !important;
  padding-inline:1.75rem 4.4rem !important;
  border:.2rem solid var(--color-surface-blue) !important;
  border-radius:1rem !important;
  background:#fff !important;
  color:#111 !important;
  box-shadow:0 .55rem 1.6rem rgb(var(--color-primary-rgb) / .12) !important;
  font:inherit !important;
  font-size:1.18rem !important;
  line-height:1.25 !important;
  text-align:start !important;
  transform:none !important;
  cursor:pointer !important;
}

.z-contact-select__button::after {
  content:"";
  position:absolute;
  inset-inline-end:1.6rem;
  top:50%;
  width:.72rem;
  height:.72rem;
  border-right:.14rem solid var(--color-primary);
  border-bottom:.14rem solid var(--color-primary);
  transform:translateY(-62%) rotate(45deg);
  transition:transform .18s ease;
}

.z-contact-select.is-open .z-contact-select__button {
  border-color:#ffc928 !important;
  box-shadow:0 0 0 .24rem rgba(255,201,40,.32), 0 .65rem 1.8rem rgb(var(--color-primary-rgb) / .16) !important;
}

.z-contact-select.is-open .z-contact-select__button::after {
  transform:translateY(-25%) rotate(225deg);
}

.z-contact-select__button:focus-visible,
.z-contact-select__option:focus-visible {
  outline:.24rem solid #ffc928 !important;
  outline-offset:.18rem !important;
  transform:none !important;
}

.z-contact-select__button:hover,
.z-contact-select__button:focus,
.z-contact-select__button:focus-visible,
.z-contact-select__option:hover,
.z-contact-select__option:focus,
.z-contact-select__option:focus-visible {
  transform:none !important;
}

.z-contact-select__button.is-invalid {
  border-color:#e73356 !important;
  box-shadow:0 0 0 .22rem rgba(231,51,86,.16), 0 .5rem 1.4rem rgba(231,51,86,.1) !important;
}

.z-contact-select__list {
  position:absolute !important;
  top:calc(100% + .55rem) !important;
  left:0 !important;
  right:0 !important;
  z-index:5100 !important;
  max-height:min(30rem, calc(100vh - 8rem)) !important;
  overflow:auto !important;
  padding:.55rem !important;
  border:.1rem solid var(--color-surface-blue) !important;
  border-radius:.8rem !important;
  background:#fff !important;
  box-shadow:0 1.2rem 3.2rem rgb(var(--color-primary-hover-rgb) / .22) !important;
}

.z-contact-select__list[hidden] {
  display:none !important;
}

.z-contact-select__option {
  display:block !important;
  width:100% !important;
  min-height:4.4rem !important;
  padding:.9rem 1.15rem !important;
  border:0 !important;
  border-radius:.55rem !important;
  background:#fff !important;
  color:#111 !important;
  font:inherit !important;
  font-size:1.12rem !important;
  line-height:1.24 !important;
  text-align:start !important;
  cursor:pointer !important;
}

.z-contact-select__option:hover,
.z-contact-select__option:focus,
.z-contact-select__option.is-selected {
  background:var(--color-background) !important;
  color:var(--color-primary) !important;
}

.z-contact-select__option.is-selected {
  font-weight:800 !important;
}

@media (max-width:700px) {
  .z-contact-select__button {
    min-height:5.2rem !important;
    padding-block:1rem !important;
    padding-inline:1.25rem 3.8rem !important;
    font-size:1.05rem !important;
  }

  .z-contact-select__list {
    max-height:min(24rem, calc(100vh - 6rem)) !important;
  }

  .z-contact-select__option {
    min-height:4rem !important;
    font-size:1.02rem !important;
  }
}

/* === V57 team fast-scroll paint stability === */
html.z-scroll-stable-no-flight body.page-team .header,
html.z-scroll-stable-no-flight body.page-team .header-nav,
html.z-scroll-stable-no-flight body.page-team .header-logo,
html.z-scroll-stable-no-flight body.page-team .header-logo__img,
html.z-scroll-stable-no-flight body.page-team .site-language-flags,
html.z-scroll-stable-no-flight body.page-team .top-menu,
html.z-scroll-stable-no-flight body.page-team .top-menu__item,
html.z-scroll-stable-no-flight body.page-team .top-menu__link,
html.z-scroll-stable-no-flight body.page-team .top-menu__label-fit,
html.z-scroll-stable-no-flight body.page-team .world-clocks,
html.z-scroll-stable-no-flight body.page-team .visitor-metric--persistent,
html.z-scroll-stable-no-flight body.page-team .page-title,
html.z-scroll-stable-no-flight body.page-team .breadcrumb,
html.z-scroll-stable-no-flight body.page-team .breadcrumb__container,
html.z-scroll-stable-no-flight body.page-team main,
html.z-scroll-stable-no-flight body.page-team main > .container,
html.z-scroll-stable-no-flight body.page-team .tmpl-home,
html.z-scroll-stable-no-flight body.page-team .team-intro,
html.z-scroll-stable-no-flight body.page-team .team-welcome-expanded,
html.z-scroll-stable-no-flight body.page-team .team-gallery-wrap,
html.z-scroll-stable-no-flight body.page-team .team-gallery,
html.z-scroll-stable-no-flight body.page-team .team-card:not([hidden]):not(.is-gallery-hidden),
html.z-scroll-stable-no-flight body.page-team .team-caption,
html.z-scroll-stable-no-flight body.page-team .team-caption * {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  contain:none !important;
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
  will-change:auto !important;
}

html.z-scroll-stable-no-flight body.page-team .header,
html.z-scroll-stable-no-flight body.page-team .header-nav,
html.z-scroll-stable-no-flight body.page-team .top-menu,
html.z-scroll-stable-no-flight body.page-team .top-menu__item,
html.z-scroll-stable-no-flight body.page-team .top-menu__link,
html.z-scroll-stable-no-flight body.page-team .top-menu__label-fit,
html.z-scroll-stable-no-flight body.page-team .page-title,
html.z-scroll-stable-no-flight body.page-team .breadcrumb,
html.z-scroll-stable-no-flight body.page-team .team-intro,
html.z-scroll-stable-no-flight body.page-team .team-welcome-expanded,
html.z-scroll-stable-no-flight body.page-team .team-welcome-expanded :where(h1,h2,h3,h4,p,span,strong,em,a),
html.z-scroll-stable-no-flight body.page-team .team-caption,
html.z-scroll-stable-no-flight body.page-team .team-caption * {
  -webkit-transform:none !important;
  transform:none !important;
  animation:none !important;
  transition:none !important;
}

html.z-scroll-stable-no-flight body.page-team .team-frame,
html.z-scroll-stable-no-flight body.page-team .team-frame .flip-face,
html.z-scroll-stable-no-flight body.page-team .team__img,
html.z-scroll-stable-no-flight body.page-team img.team__img.z-progressive-img,
html.z-scroll-stable-no-flight body.page-team img.team__img.z-progressive-img.is-full-loaded {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  will-change:auto !important;
}

html.z-scroll-stable-no-flight body.page-team .team-card[hidden],
html.z-scroll-stable-no-flight body.page-team .team-card.is-gallery-hidden,
html.z-scroll-stable-no-flight body.page-team .team-gallery-load[hidden],
html.z-scroll-stable-no-flight body.page-team .telegram-team-strip[hidden] {
  display:none !important;
}

/* === V57 blog lightweight fixed thumbnails === */
body.page-blog .z-featured-guide {
  display:grid !important;
  grid-template-columns:96px minmax(0, 1fr) !important;
  column-gap:18px !important;
  align-items:start !important;
}

body.page-blog .z-featured-guide__thumb,
body.page-blog .z-blog-card__thumb {
  display:block !important;
  margin:0 !important;
  overflow:hidden !important;
  border:1px solid var(--color-background) !important;
  border-radius:7px !important;
  background:var(--color-background) !important;
  box-shadow:none !important;
  transform:none !important;
  transition:none !important;
}

body.page-blog .z-featured-guide__thumb {
  width:96px !important;
  height:70px !important;
}

body.page-blog .z-featured-guide__thumb img {
  display:block !important;
  width:96px !important;
  height:70px !important;
  max-width:96px !important;
  max-height:70px !important;
  object-fit:cover !important;
  border-radius:0 !important;
  filter:none !important;
  transform:none !important;
  transition:none !important;
}

body.page-blog .z-featured-guide__body {
  min-width:0 !important;
}

body.page-blog .z-featured-guide__body > :first-child {
  margin-top:0 !important;
}

body.page-blog .z-featured-guide__body > :last-child {
  margin-bottom:0 !important;
}

body.page-blog .z-blog-card-grid {
  grid-template-columns:repeat(auto-fit, minmax(280px, 1fr)) !important;
  align-items:stretch !important;
}

body.page-blog .z-blog-card {
  display:grid !important;
  grid-template-columns:88px minmax(0, 1fr) !important;
  column-gap:14px !important;
  align-items:start !important;
  min-width:0 !important;
  padding:16px !important;
}

body.page-blog .z-blog-card__thumb {
  width:88px !important;
  height:64px !important;
}

body.page-blog .z-blog-card__thumb img {
  display:block !important;
  width:88px !important;
  height:64px !important;
  max-width:88px !important;
  max-height:64px !important;
  object-fit:cover !important;
  border-radius:0 !important;
  filter:none !important;
  transform:none !important;
  transition:none !important;
}

body.page-blog .z-blog-card__body {
  display:contents !important;
  min-width:0 !important;
}

body.page-blog .z-blog-card__body > :first-child {
  margin-top:0 !important;
}

body.page-blog .z-blog-card__body > :last-child {
  margin-bottom:0 !important;
}

body.page-blog .z-blog-card__body > p:first-of-type,
body.page-blog .z-blog-card__body > h2 {
  grid-column:2 !important;
  min-width:0 !important;
}

body.page-blog .z-blog-card__body > p:not(:first-of-type),
body.page-blog .z-blog-card__body > .z-related-tools {
  grid-column:1 / -1 !important;
}

body.page-blog .z-blog-card h2 {
  margin:.45rem 0 .55rem !important;
  font-size:20px !important;
  line-height:1.18 !important;
}

body.page-blog .z-blog-card p {
  margin:.5rem 0 !important;
}

body.page-blog .z-blog-card .z-related-tools {
  margin-top:.75rem !important;
}

@media (max-width:700px) {
  body.page-blog .z-featured-guide {
    grid-template-columns:76px minmax(0, 1fr) !important;
    column-gap:14px !important;
  }

  body.page-blog .z-featured-guide__thumb,
  body.page-blog .z-featured-guide__thumb img {
    width:76px !important;
    height:58px !important;
    max-width:76px !important;
    max-height:58px !important;
  }

  body.page-blog .z-blog-card-grid {
    grid-template-columns:1fr !important;
  }

  body.page-blog .z-blog-card {
    grid-template-columns:76px minmax(0, 1fr) !important;
    column-gap:12px !important;
    padding:14px !important;
  }

  body.page-blog .z-blog-card__thumb,
  body.page-blog .z-blog-card__thumb img {
    width:76px !important;
    height:58px !important;
    max-width:76px !important;
    max-height:58px !important;
  }
}

/* === V57 global fast-scroll stability: disable decorative scroll layers === */
html.z-scroll-effects-disabled .z-page-flight,
html.z-scroll-effects-disabled .parallax-logo-build,
html.z-scroll-effects-disabled .z-watermark-matrix,
html.z-scroll-effects-disabled .z-parallax-finale,
html.z-scroll-effects-disabled .z-bottom-overscroll,
html.z-scroll-effects-disabled .bottom-pull-easter,
html.z-scroll-effects-disabled .z-boom-overlay,
html.z-scroll-effects-disabled .z-quantum-overlay {
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  animation:none !important;
  transition:none !important;
  transform:none !important;
  filter:none !important;
}

html.z-scroll-effects-disabled,
html.z-scroll-effects-disabled body {
  --parallax-progress:0 !important;
  --plb-y:0px !important;
  --plb-z-y:0px !important;
  --plb-footer-lift:0px !important;
}

html.z-scroll-effects-disabled .header,
html.z-scroll-effects-disabled .header-nav,
html.z-scroll-effects-disabled .header-logo,
html.z-scroll-effects-disabled .header-logo__img,
html.z-scroll-effects-disabled .site-language-flags,
html.z-scroll-effects-disabled .top-menu,
html.z-scroll-effects-disabled .top-menu__item,
html.z-scroll-effects-disabled .top-menu__link,
html.z-scroll-effects-disabled .top-menu__label-fit,
html.z-scroll-effects-disabled .world-clocks,
html.z-scroll-effects-disabled .visitor-metric--persistent,
html.z-scroll-effects-disabled main,
html.z-scroll-effects-disabled main > .container,
html.z-scroll-effects-disabled .tmpl-home,
html.z-scroll-effects-disabled .breadcrumb__container,
html.z-scroll-effects-disabled .page-title,
html.z-scroll-effects-disabled .breadcrumb,
html.z-scroll-effects-disabled .contact-form,
html.z-scroll-effects-disabled .form,
html.z-scroll-effects-disabled .input__row,
html.z-scroll-effects-disabled .input-checkbox__row,
html.z-scroll-effects-disabled .contact-message-help,
html.z-scroll-effects-disabled .message-rule,
html.z-scroll-effects-disabled .localized-doc,
html.z-scroll-effects-disabled .article-body,
html.z-scroll-effects-disabled .legal-document,
html.z-scroll-effects-disabled .anti_doping,
html.z-scroll-effects-disabled .products,
html.z-scroll-effects-disabled .new-product-grid,
html.z-scroll-effects-disabled .product-copy,
html.z-scroll-effects-disabled .product-detail-hero,
html.z-scroll-effects-disabled .team-intro,
html.z-scroll-effects-disabled .team-welcome-expanded,
html.z-scroll-effects-disabled .team-gallery-wrap,
html.z-scroll-effects-disabled .team-gallery,
html.z-scroll-effects-disabled .team-caption,
html.z-scroll-effects-disabled .blog-index-section,
html.z-scroll-effects-disabled .z-blog-hub,
html.z-scroll-effects-disabled .z-blog-card-grid,
html.z-scroll-effects-disabled .tools-main,
html.z-scroll-effects-disabled .tools-grid,
html.z-scroll-effects-disabled .tool-shell,
html.z-scroll-effects-disabled footer.footer,
html.z-scroll-effects-disabled .footer__container {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  contain:none !important;
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
  will-change:auto !important;
}

html.z-scroll-effects-disabled .header,
html.z-scroll-effects-disabled .header-nav,
html.z-scroll-effects-disabled .top-menu,
html.z-scroll-effects-disabled .page-title,
html.z-scroll-effects-disabled .breadcrumb,
html.z-scroll-effects-disabled main,
html.z-scroll-effects-disabled .tmpl-home,
html.z-scroll-effects-disabled .contact-form,
html.z-scroll-effects-disabled .localized-doc,
html.z-scroll-effects-disabled .article-body,
html.z-scroll-effects-disabled .products,
html.z-scroll-effects-disabled .team-welcome-expanded,
html.z-scroll-effects-disabled .team-caption,
html.z-scroll-effects-disabled .z-blog-hub,
html.z-scroll-effects-disabled .tools-main {
  -webkit-transform:none !important;
  transform:none !important;
  animation:none !important;
  transition:none !important;
  filter:none !important;
}

html.z-scroll-effects-disabled main :where(h1,h2,h3,h4,h5,h6,p,li,label,legend,td,th,blockquote,figcaption,small,strong,em,a,span),
html.z-scroll-effects-disabled footer :where(p,li,a,small,strong,em,span) {
  opacity:1 !important;
  visibility:visible !important;
  content-visibility:visible !important;
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
}

html.z-scroll-effects-disabled .header,
html.z-scroll-effects-disabled .header-nav,
html.z-scroll-effects-disabled .top-menu,
html.z-scroll-effects-disabled .top-menu__item,
html.z-scroll-effects-disabled .top-menu__link {
  transition:none !important;
}

/* === V57 brand background parallax from supplied Illustrator artwork === */
.z-brand-background-parallax {
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  contain:layout paint style;
  will-change:transform, opacity;
}

.z-brand-background-parallax {
  opacity:.07;
  background-image:image-set(
    url("/images/background-parallax-7-tile.webp") type("image/webp"),
    url("/images/background-parallax-7-tile.png") type("image/png")
  );
  background-repeat:repeat;
  background-position:center 0;
  background-size:clamp(22rem, 46vw, 42rem) auto;
  transform:translate3d(0,0,0) scale(1.05);
}

html:not(.z-scroll-effects-disabled) body > .header,
html:not(.z-scroll-effects-disabled) body > header.header,
html:not(.z-scroll-effects-disabled) body > main,
html:not(.z-scroll-effects-disabled) body > footer,
html:not(.z-scroll-effects-disabled) body > .tg-button {
  position:relative;
  z-index:2;
}

html:not(.z-scroll-effects-disabled) body > .header,
html:not(.z-scroll-effects-disabled) body > header.header {
  z-index:5000;
}

html.z-scroll-effects-disabled .z-brand-background-parallax,
body.page-countryblock .z-brand-background-parallax {
  display:none !important;
}

@media (max-width:700px) {
  .z-brand-background-parallax {
    background-size:clamp(18rem, 88vw, 30rem) auto;
    background-position:center 0;
  }

}

/* === V57 homepage intro typography polish === */
body.page-home .welcome-main {
  padding:clamp(3rem, 4.4vw, 5.6rem) 0 clamp(4.2rem, 6vw, 7rem) !important;
}

body.page-home .welcome-main .container__intro {
  width:min(100%, 96rem) !important;
  max-width:min(96rem, calc(100% - 3.2rem)) !important;
  margin:0 auto !important;
  padding:clamp(2.2rem, 3.4vw, 3.8rem) clamp(1.8rem, 4vw, 4.2rem) !important;
  border-top:1px solid var(--color-background) !important;
  border-bottom:1px solid var(--color-background) !important;
  /* His ruling, 2026-08-28: the panel was .9 white and swallowed the page's own
     background of small ZPHC marks. It is now mostly transparent, with a light
     blur behind the words so the dark blue copy keeps its contrast. */
  background:rgba(255,255,255,.38) !important;
  -webkit-backdrop-filter:blur(2px) !important;
  backdrop-filter:blur(2px) !important;
  color:var(--color-primary) !important;
  font-family:Inter, "Segoe UI", Arial, Helvetica, sans-serif !important;
  text-align:start !important;
  box-shadow:none !important;
}

body.page-home .welcome-main .custom-h2.center {
  width:100% !important;
  max-width:76rem !important;
  margin:0 0 1.2rem !important;
  color:var(--color-primary) !important;
  font-size:clamp(2.1rem, 2.7vw, 2.85rem) !important;
  font-weight:800 !important;
  line-height:1.18 !important;
  letter-spacing:0 !important;
  text-align:start !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

body.page-home .welcome-main .subtitle {
  max-width:78rem !important;
  margin:0 0 1.35rem !important;
  color:var(--color-primary) !important;
  font-size:clamp(1.55rem, 1.55vw, 1.8rem) !important;
  font-weight:650 !important;
  line-height:1.55 !important;
  text-align:start !important;
  letter-spacing:0 !important;
  text-wrap:pretty !important;
}

body.page-home .welcome-main .subtitle span {
  display:block !important;
  margin-top:.38rem !important;
  color:var(--color-primary) !important;
  font-size:clamp(1.28rem, 1.25vw, 1.45rem) !important;
  font-style:normal !important;
  font-weight:400 !important;
  line-height:1.55 !important;
}

body.page-home .welcome-main .seo-content-brief {
  max-width:78rem !important;
  margin:0 0 2.2rem !important;
  padding:.95rem 1.15rem !important;
  border-left:4px solid var(--color-primary) !important;
  background:var(--color-background) !important;
  color:var(--color-primary) !important;
  font-size:1.48rem !important;
  font-weight:600 !important;
  line-height:1.65 !important;
  text-align:start !important;
}

body.page-home .welcome-main .intro__description {
  max-width:78rem !important;
  margin:0 0 2.2rem !important;
  padding:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:var(--color-primary) !important;
  text-align:start !important;
}

body.page-home .welcome-main .intro__description .divider {
  width:4.8rem !important;
  max-width:4.8rem !important;
  height:2px !important;
  margin:1.65rem 0 1.8rem !important;
  background:var(--color-surface-blue) !important;
}

body.page-home .welcome-main .intro__description p,
body.page-home .welcome-main .custom-p,
body.page-home .welcome-main .container__intro > p:not(.subtitle):not(.seo-content-brief) {
  max-width:78rem !important;
  margin:0 0 1.18rem !important;
  color:var(--color-primary) !important;
  font-size:clamp(1.5rem, 1.35vw, 1.62rem) !important;
  font-weight:400 !important;
  line-height:1.78 !important;
  letter-spacing:0 !important;
  word-spacing:normal !important;
  text-align:start !important;
  text-indent:0 !important;
  text-wrap:pretty !important;
}

body.page-home .welcome-main .intro__description strong {
  color:var(--color-primary) !important;
  font-weight:800 !important;
}

body.page-home .welcome-main .container__intro a {
  color:var(--color-primary) !important;
  font-weight:700 !important;
  text-decoration:underline !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:.18em !important;
}

body.page-home .welcome-main .logo-panda {
  max-width:10rem !important;
  margin:2.4rem 0 0 !important;
  text-align:start !important;
}

body.page-home .welcome-main .logo-panda img {
  width:8.4rem !important;
  max-width:8.4rem !important;
  height:auto !important;
}

body.page-home .welcome-main .logo-panda p {
  display:none !important;
}

@media (max-width:700px) {
  body.page-home .welcome-main {
    padding:2.4rem 0 4.4rem !important;
  }

  body.page-home .welcome-main .container__intro {
    max-width:calc(100% - 2rem) !important;
    padding:2rem 1.6rem 2.4rem !important;
  }

  body.page-home .welcome-main .custom-h2.center {
    font-size:clamp(1.95rem, 6vw, 2.35rem) !important;
  }

  body.page-home .welcome-main .subtitle,
  body.page-home .welcome-main .seo-content-brief,
  body.page-home .welcome-main .intro__description p,
  body.page-home .welcome-main .custom-p,
  body.page-home .welcome-main .container__intro > p:not(.subtitle):not(.seo-content-brief) {
    font-size:1.42rem !important;
    line-height:1.68 !important;
  }

  html body.page-home .tg-button,
  html body.page-home .header.active .tg-button,
  html body.page-home header.header .header-nav .tg-button,
  html.z-scroll-stable-no-flight body.page-home > .tg-button.tg-button--body-fixed,
  html.z-flight-v77.z-scroll-stable-no-flight body.page-home > .tg-button.tg-button--body-fixed,
  body.page-home > .go-up {
    display:none !important;
    pointer-events:none !important;
  }
}

/* === V94 professional footer information architecture === */
footer.footer {
  padding:2.8rem 0 2.2rem !important;
  background:
    linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary) 48%, var(--color-primary) 100%) !important;
  color:#fff !important;
}

footer.footer > .container,
footer.footer .footer__container {
  display:grid !important;
  grid-template-columns:minmax(13rem, 18rem) minmax(0, 1fr) minmax(15rem, 21rem) !important;
  grid-template-areas:
    "brand nav social"
    "legal legal legal"
    "globe copy edition" !important;
  align-items:start !important;
  gap:1.2rem 2.6rem !important;
  width:min(118rem, calc(100% - 4rem)) !important;
  max-width:118rem !important;
  margin:0 auto !important;
  padding:0 !important;
}

footer.footer .footer-logo {
  grid-area:brand !important;
  justify-self:start !important;
  align-self:start !important;
  width:100% !important;
  margin:.12rem 0 0 !important;
  text-align:start !important;
}

footer.footer .footer-logo a {
  display:inline-flex !important;
  align-items:center !important;
}

footer.footer .footer-nav__logo {
  display:block !important;
  width:min(13.8rem, 100%) !important;
  max-width:13.8rem !important;
  height:auto !important;
  margin:0 !important;
}

footer.footer .footer-nav {
  grid-area:nav !important;
  width:100% !important;
  margin:0 !important;
}

footer.footer > .container > .footer-nav__ul,
footer.footer .footer__container > .footer-nav__ul {
  grid-area:nav !important;
}

footer.footer .footer-nav__col {
  width:100% !important;
  margin:0 !important;
}

footer.footer .footer-nav__ul {
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  columns:3 12.5rem !important;
  column-gap:2.2rem !important;
  list-style:none !important;
  text-align:start !important;
}

footer.footer .footer-nav__item {
  display:block !important;
  width:auto !important;
  margin:0 0 .48rem !important;
  padding:0 !important;
  break-inside:avoid !important;
  page-break-inside:avoid !important;
}

footer.footer .footer-nav__link {
  display:inline-flex !important;
  align-items:baseline !important;
  min-height:2.2rem !important;
  margin:0 !important;
  padding:.16rem 0 !important;
  color:rgba(255,255,255,.93) !important;
  font-size:1.22rem !important;
  font-weight:650 !important;
  line-height:1.25 !important;
  letter-spacing:0 !important;
  text-decoration:none !important;
  text-underline-offset:.22em !important;
}

footer.footer .footer-nav__link:hover,
footer.footer .footer-nav__link:focus-visible {
  color:#fff !important;
  text-decoration:underline !important;
}

footer.footer .footer-nav__link:focus-visible,
footer.footer .social-icon__link:focus-visible,
footer.footer .footer__disclaimer a:focus-visible,
footer.footer .footer-nav__copyright a:focus-visible {
  outline:2px solid rgba(255,255,255,.9) !important;
  outline-offset:3px !important;
  border-radius:.35rem !important;
}

footer.footer .translate {
  display:none !important;
}

footer.footer .footer-contacts {
  grid-area:social !important;
  display:grid !important;
  grid-template-columns:repeat(3, 2.8rem) !important;
  justify-content:end !important;
  align-content:start !important;
  gap:.78rem .9rem !important;
  width:100% !important;
  margin:.02rem 0 0 !important;
  padding:0 !important;
}

footer.footer .footer-contacts .social-icon__link {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:2.8rem !important;
  height:2.8rem !important;
  margin:0 !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:.6rem !important;
  background:rgba(255,255,255,.08) !important;
  transition:background-color .16s ease, border-color .16s ease, transform .16s ease !important;
}

footer.footer .footer-contacts .social-icon__link:hover,
footer.footer .footer-contacts .social-icon__link:focus-visible {
  border-color:rgba(255,255,255,.42) !important;
  background:rgba(255,255,255,.14) !important;
  transform:translateY(-1px) !important;
}

footer.footer .footer-contacts .social-icon {
  width:1.75rem !important;
  height:1.75rem !important;
  max-width:1.75rem !important;
  max-height:1.75rem !important;
  object-fit:contain !important;
}

footer.footer .footer__disclaimer {
  grid-area:legal !important;
  width:100% !important;
  max-width:none !important;
  margin:.85rem 0 0 !important;
  padding:1rem 0 .35rem !important;
  border-top:1px solid rgba(255,255,255,.26) !important;
  text-align:center !important;
}

footer.footer .footer__disclaimer .disclaimer-p {
  max-width:90rem !important;
  margin:0 auto !important;
  color:rgba(255,255,255,.9) !important;
  font-size:1.08rem !important;
  font-weight:450 !important;
  line-height:1.5 !important;
  letter-spacing:0 !important;
}

footer.footer .footer__disclaimer .disclaimer-p a,
footer.footer .footer__disclaimer .disclaimer-p a:visited {
  color:#fff !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-underline-offset:.22em !important;
}

footer.footer .footer-globe-brand {
  grid-area:globe !important;
  justify-self:start !important;
  align-self:center !important;
  margin:.15rem 0 0 !important;
  padding:0 !important;
}

footer.footer .footer-globe-brand a {
  display:inline-flex !important;
}

footer.footer .footer-globe-brand img {
  width:5.8rem !important;
  max-width:5.8rem !important;
  height:auto !important;
}

footer.footer .footer-nav__copyright {
  grid-area:copy !important;
  justify-self:center !important;
  align-self:center !important;
  width:auto !important;
  margin:.35rem 0 0 !important;
  text-align:center !important;
}

footer.footer .footer-nav__copyright,
footer.footer .footer-nav__copyright a {
  color:rgba(255,255,255,.94) !important;
  font-size:1.08rem !important;
  font-weight:600 !important;
  line-height:1.35 !important;
  text-decoration:none !important;
}

footer.footer .footer-nav__copyright a:hover,
footer.footer .footer-nav__copyright a:focus-visible {
  color:#fff !important;
  text-decoration:underline !important;
}

footer.footer .footer-edition {
  grid-area:edition !important;
  justify-self:end !important;
  align-self:center !important;
  width:auto !important;
  margin:.35rem 0 0 !important;
  color:rgba(255,255,255,.94) !important;
  font-size:.98rem !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  letter-spacing:.02em !important;
  text-align:right !important;
}

footer.footer .footer-edition::before {
  display:none !important;
}

@media (max-width:900px) {
  footer.footer {
    padding:2.4rem 0 2rem !important;
  }

  footer.footer > .container,
  footer.footer .footer__container {
    grid-template-columns:1fr !important;
    grid-template-areas:
      "brand"
      "nav"
      "social"
      "legal"
      "globe"
      "copy"
      "edition" !important;
    gap:1rem !important;
    width:min(100% - 3rem, 68rem) !important;
    text-align:center !important;
  }

  footer.footer .footer-logo,
  footer.footer .footer-globe-brand,
  footer.footer .footer-nav__copyright,
  footer.footer .footer-edition {
    justify-self:center !important;
    text-align:center !important;
  }

  footer.footer .footer-nav__logo {
    width:12.6rem !important;
    max-width:12.6rem !important;
  }

  footer.footer .footer-nav__ul {
    columns:2 13rem !important;
    column-gap:2rem !important;
    text-align:start !important;
  }

  footer.footer .footer-contacts {
    grid-template-columns:repeat(9, 2.65rem) !important;
    justify-content:center !important;
    gap:.7rem !important;
  }
}

@media (max-width:560px) {
  footer.footer {
    padding:2.2rem 0 1.9rem !important;
  }

  footer.footer > .container,
  footer.footer .footer__container {
    width:calc(100% - 2.2rem) !important;
    gap:.9rem !important;
  }

  footer.footer .footer-nav__ul {
    columns:2 12rem !important;
    column-gap:1.35rem !important;
    text-align:start !important;
  }

  footer.footer .footer-nav__item {
    margin-bottom:.36rem !important;
  }

  footer.footer .footer-nav__link {
    justify-content:flex-start !important;
    min-height:2.5rem !important;
    font-size:1.2rem !important;
  }

  footer.footer .footer-contacts {
    grid-template-columns:repeat(5, 2.7rem) !important;
    gap:.62rem .72rem !important;
  }

  footer.footer .footer__disclaimer {
    margin:.35rem 0 0 !important;
    padding:.85rem 0 .2rem !important;
  }

  footer.footer .footer__disclaimer .disclaimer-p {
    font-size:1rem !important;
    line-height:1.48 !important;
  }

  footer.footer .footer-globe-brand img {
    width:5.4rem !important;
    max-width:5.4rem !important;
  }
}

@media (max-width:360px) {
  footer.footer .footer-nav__ul {
    columns:1 !important;
    text-align:center !important;
  }

  footer.footer .footer-nav__link {
    justify-content:center !important;
  }
}

/* === V95 team-information join route === */
.v19-team-links .team-join-route {
  max-width:82rem !important;
  margin:.65rem 0 1.25rem !important;
  padding:1.2rem 1.35rem !important;
  border-left:4px solid var(--color-primary) !important;
  border-radius:.7rem !important;
  background:rgba(255,255,255,.72) !important;
  color:var(--color-primary) !important;
}

.v19-team-links .team-join-route p {
  margin:0 0 .9rem !important;
  color:var(--color-primary) !important;
  font-size:clamp(1.34rem, 1.35vw, 1.55rem) !important;
  font-weight:500 !important;
  line-height:1.62 !important;
}

.v19-team-links .team-join-route strong {
  color:var(--color-primary) !important;
  font-weight:800 !important;
}

.v19-team-links .team-join-route__cta {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:3.9rem !important;
  padding:.78rem 1.35rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .82) !important;
  border-radius:.7rem !important;
  background:var(--color-primary) !important;
  color:#fff !important;
  font-size:1.28rem !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  box-shadow:0 .8rem 1.8rem rgb(var(--color-primary-rgb) / .14) !important;
}

.v19-team-links .team-join-route__cta:hover,
.v19-team-links .team-join-route__cta:focus-visible {
  background:var(--color-primary) !important;
  border-color:var(--color-primary) !important;
  color:#fff !important;
  text-decoration:none !important;
}

@media (max-width:700px) {
  .v19-team-links .team-join-route {
    padding:1.05rem 1.1rem !important;
  }

  .v19-team-links .team-join-route__cta {
    width:100% !important;
  }
}

/* === V96 compact blog rhythm and restored footer stack === */
body.page-blog .breadcrumb__container {
  padding:.85rem 0 .35rem !important;
}

body.page-blog .page-title {
  margin-bottom:.42rem !important;
  padding:1.45rem 3rem !important;
  font-size:2.45rem !important;
}

body.page-blog .breadcrumb {
  margin-left:3rem !important;
  font-size:1.28rem !important;
  line-height:1.25 !important;
}

body.page-blog .blog-index-section {
  padding:1.05rem 0 2.2rem !important;
}

body.page-blog .blog-index-wrap {
  max-width:116rem !important;
}

body.page-blog .blog-index-wrap .custom-h2.center {
  margin-bottom:.9rem !important;
  font-size:clamp(2.35rem, 2.9vw, 3.35rem) !important;
  line-height:1.08 !important;
}

body.page-blog .blog-index-wrap .blog-intro {
  max-width:104rem !important;
  margin:0 auto 1.25rem !important;
  font-size:1.55rem !important;
  line-height:1.48 !important;
}

body.page-blog .z-anchor-strip {
  gap:.65rem !important;
  margin:1rem 0 1.35rem !important;
}

body.page-blog .z-anchor-strip a {
  min-height:3.7rem !important;
  padding:.62rem 1.1rem !important;
  border-radius:.55rem !important;
  font-size:1.28rem !important;
  line-height:1.18 !important;
}

body.page-blog .z-featured-guide {
  margin:1.1rem 0 1.35rem !important;
  padding:1.35rem !important;
  grid-template-columns:86px minmax(0, 1fr) !important;
  column-gap:1.25rem !important;
}

body.page-blog .z-featured-guide__thumb,
body.page-blog .z-featured-guide__thumb img {
  width:86px !important;
  height:62px !important;
  max-width:86px !important;
  max-height:62px !important;
}

body.page-blog .z-featured-guide h2 {
  margin:.4rem 0 .55rem !important;
  font-size:clamp(1.85rem, 2vw, 2.55rem) !important;
  line-height:1.12 !important;
}

body.page-blog .z-featured-guide p {
  margin:.45rem 0 !important;
  font-size:1.36rem !important;
  line-height:1.45 !important;
}

body.page-blog .z-blog-card-grid {
  grid-template-columns:repeat(auto-fit, minmax(27rem, 1fr)) !important;
  gap:1.2rem !important;
}

body.page-blog .z-blog-card {
  grid-template-columns:76px minmax(0, 1fr) !important;
  column-gap:1.15rem !important;
  padding:1.25rem !important;
  border-radius:.75rem !important;
}

body.page-blog .z-blog-card__thumb,
body.page-blog .z-blog-card__thumb img {
  width:76px !important;
  height:55px !important;
  max-width:76px !important;
  max-height:55px !important;
}

body.page-blog .z-blog-card h2 {
  margin:.28rem 0 .42rem !important;
  font-size:1.72rem !important;
  line-height:1.13 !important;
  letter-spacing:0 !important;
}

body.page-blog .z-blog-card p {
  margin:.36rem 0 !important;
  font-size:1.25rem !important;
  line-height:1.43 !important;
}

body.page-blog .z-chip {
  padding:.36rem .68rem !important;
  font-size:1rem !important;
  line-height:1.1 !important;
}

body.page-blog .z-cta-link {
  min-height:3.55rem !important;
  padding:.72rem 1.2rem !important;
  border-radius:.55rem !important;
  font-size:1.18rem !important;
  line-height:1.15 !important;
}

body.page-blog .z-blog-card .z-related-tools {
  gap:.45rem !important;
  margin-top:.55rem !important;
}

body.page-blog .z-related-tools strong {
  margin-bottom:.15rem !important;
  font-size:1.22rem !important;
  line-height:1.2 !important;
}

body.page-blog .z-related-tools a {
  padding:.5rem .72rem !important;
  font-size:1.12rem !important;
  line-height:1.16 !important;
}

footer.footer {
  padding:1.45rem 0 1.2rem !important;
  background:linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary) 100%) !important;
}

footer.footer > .container,
footer.footer .footer__container {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:.42rem !important;
  width:min(122rem, calc(100% - 3.2rem)) !important;
  max-width:122rem !important;
  margin:0 auto !important;
  padding:0 !important;
  text-align:center !important;
}

footer.footer .footer-logo,
footer.footer .footer-nav,
footer.footer .footer-nav__col,
footer.footer .footer-contacts,
footer.footer .footer__disclaimer,
footer.footer .footer-globe-brand,
footer.footer .footer-nav__copyright,
footer.footer .footer-edition {
  grid-area:auto !important;
  justify-self:center !important;
  align-self:center !important;
  width:auto !important;
  margin:0 !important;
  text-align:center !important;
}

footer.footer .footer-logo {
  order:1 !important;
}

footer.footer .footer-nav {
  order:2 !important;
  width:100% !important;
}

footer.footer .translate {
  order:3 !important;
  display:none !important;
}

footer.footer .footer-contacts {
  order:4 !important;
}

footer.footer .footer__disclaimer {
  order:5 !important;
}

footer.footer .footer-globe-brand {
  order:6 !important;
}

footer.footer .footer-nav__copyright {
  order:7 !important;
}

footer.footer .footer-edition {
  order:8 !important;
}

footer.footer .footer-nav__logo {
  width:12.8rem !important;
  max-width:12.8rem !important;
  margin:0 auto .18rem !important;
}

footer.footer .footer-nav__ul {
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:.26rem 1.05rem !important;
  columns:auto !important;
  column-gap:normal !important;
  max-width:112rem !important;
  margin:0 auto !important;
  padding:0 !important;
  text-align:center !important;
}

footer.footer .footer-nav__item {
  display:block !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
}

footer.footer .footer-nav__link {
  min-height:0 !important;
  margin:.08rem .1rem !important;
  padding:.12rem 0 !important;
  font-size:1.14rem !important;
  line-height:1.18 !important;
  font-weight:650 !important;
}

footer.footer .footer-contacts {
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:.06rem 1.25rem !important;
  width:100% !important;
  padding:.05rem 0 0 !important;
}

footer.footer .footer-contacts .social-icon__link {
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

footer.footer .footer-contacts .social-icon {
  width:2rem !important;
  height:2rem !important;
  max-width:2rem !important;
  max-height:2rem !important;
}

footer.footer .footer__disclaimer {
  width:min(108rem, 100%) !important;
  max-width:min(108rem, 100%) !important;
  margin:.15rem auto 0 !important;
  padding:.55rem 0 .1rem !important;
  border-top:1px solid rgba(255,255,255,.28) !important;
}

footer.footer .footer__disclaimer .disclaimer-p {
  max-width:96rem !important;
  font-size:1rem !important;
  line-height:1.35 !important;
}

footer.footer .footer-globe-brand {
  margin:.02rem auto 0 !important;
  padding:0 !important;
}

footer.footer .footer-globe-brand img {
  width:6.6rem !important;
  max-width:6.6rem !important;
}

footer.footer .footer-nav__copyright,
footer.footer .footer-nav__copyright a {
  font-size:1.03rem !important;
  line-height:1.2 !important;
}

footer.footer .footer-edition {
  margin:.08rem auto 0 !important;
  font-size:.92rem !important;
  line-height:1.15 !important;
}

footer.footer .footer-edition::before {
  display:block !important;
  width:12rem !important;
  margin:0 auto .28rem !important;
}

@media (max-width:700px) {
  body.page-blog .breadcrumb__container {
    padding:.65rem 0 .2rem !important;
  }

  body.page-blog .page-title {
    padding:1.05rem 2rem !important;
    font-size:2rem !important;
  }

  body.page-blog .breadcrumb {
    margin-left:2rem !important;
  }

  body.page-blog .blog-index-section {
    padding:.8rem 0 1.7rem !important;
  }

  body.page-blog .blog-index-wrap .custom-h2.center {
    font-size:2.25rem !important;
  }

  body.page-blog .blog-index-wrap .blog-intro {
    font-size:1.28rem !important;
    line-height:1.42 !important;
  }

  body.page-blog .z-anchor-strip a,
  body.page-blog .z-cta-link {
    width:auto !important;
  }

  body.page-blog .z-blog-card {
    grid-template-columns:70px minmax(0, 1fr) !important;
    padding:1.1rem !important;
  }

  body.page-blog .z-blog-card__thumb,
  body.page-blog .z-blog-card__thumb img {
    width:70px !important;
    height:52px !important;
    max-width:70px !important;
    max-height:52px !important;
  }

  footer.footer {
    padding:1.25rem 1rem 1rem !important;
  }

  footer.footer > .container,
  footer.footer .footer__container {
    width:100% !important;
    gap:.34rem !important;
  }

  footer.footer .footer-nav__ul {
    gap:.22rem .78rem !important;
  }

  footer.footer .footer-nav__link {
    font-size:1.04rem !important;
  }

  footer.footer .footer-contacts {
    gap:.04rem .85rem !important;
  }

  footer.footer .footer__disclaimer .disclaimer-p {
    font-size:.92rem !important;
  }
}
/* === Brand blue palette from background parallax artwork === */
:root {
  --color-primary: #2C6196;
  --color-primary-hover: #2C6196;
  --color-primary-light: #678DB2;
  --color-secondary: #678DB2;
  --color-accent: #9EB5CA;
  --color-surface-blue: #B6C8D7;
  --color-surface: #B6C8D7;
  --color-background: #F7F9FA;
  --color-primary-rgb: 44 97 150;
  --color-primary-hover-rgb: 44 97 150;
  --color-secondary-rgb: 103 141 178;
  --color-accent-rgb: 158 181 202;
  --color-surface-blue-rgb: 182 200 215;
  --color-background-rgb: 247 249 250;
  --zphc-blue: var(--color-primary);
  --zphc-dark: var(--color-primary);
  --zphc-brand-blue: var(--color-primary);
  --zphc-brand-blue-mid: var(--color-primary);
  --zphc-brand-blue-deep: var(--color-primary-hover);
  --zphc-brand-blue-dark: var(--color-primary-hover);
  --zphc-brand-blue-light: var(--color-secondary);
  --blue: var(--color-primary);
  --primary: var(--color-primary);
  --cyan: var(--color-secondary);
  --info: var(--color-secondary);
}
/* === Brand palette enforcement: interactive blue family === */
body {
  background-color: var(--color-background);
}

a,
.breadcrumb__link,
.footer__disclaimer a,
.article-body a,
.policy-text a,
.localized-doc a,
.z-related-tools a,
.tool-link-list a {
  color: var(--color-primary);
}

a:hover,
a:focus,
.breadcrumb__link:hover,
.footer__disclaimer a:hover,
.article-body a:hover,
.policy-text a:hover,
.localized-doc a:hover,
.z-related-tools a:hover,
.tool-link-list a:hover {
  color: var(--color-primary-hover);
}

.go-up,
.tg-button:not(.tg-button--on-blue),
body > .tg-button:not(.tg-button--on-blue),
.top-menu__link,
.header.active .top-menu__link,
.top-menu__item.active .top-menu__link,
.top-menu__link:hover,
.top-menu__link:focus-visible,
.btn-pill,
.btn-pill.red,
.btn-pill.blue,
.z-cta-link,
.z-anchor-strip a,
.z-doc-button:hover,
.product-slider-badge,
.product-count,
.z-chip,
.glp1-code-badge,
.contact-submit,
.form button[type="submit"],
.site-search-box button {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: #fff !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.go-up:hover,
.tg-button:not(.tg-button--on-blue):hover,
body > .tg-button:not(.tg-button--on-blue):hover,
.top-menu__item.active .top-menu__link:hover,
.top-menu__link:hover,
.top-menu__link:focus-visible,
.btn-pill:hover,
.z-cta-link:hover,
.z-anchor-strip a:hover,
.contact-submit:hover,
.form button[type="submit"]:hover,
.site-search-box button:hover {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  color: #fff !important;
}

.z-cta-link--secondary,
.z-anchor-strip a,
.z-doc-button,
.tools-filter__button,
.lang-card,
.localized-blog-list a,
.search-result,
.tool-card,
.tool-panel,
.tool-info-box,
.z-brief-panel,
.z-tools-cta-panel,
.z-featured-guide,
.clean-sport-action-center,
.article-meta-block,
.sources-review-notes,
.tool-result-next-steps,
.tool-page-overview,
.product-detail-note {
  border-color: var(--color-accent) !important;
}

.z-cta-link--secondary,
.z-anchor-strip a:not(:hover),
.z-doc-button,
.product-family-tag,
.z-chip,
.tool-card__category,
.article-note,
.tool-privacy-note,
.z-home-routes,
.tool-result,
.tool-disclaimer,
.modal-body-wrap {
  background: var(--color-background) !important;
}

.custom-h2,
.modal-title,
.article-body h1,
.article-body h2,
.article-body h3,
.policy-text h1,
.policy-text h2,
.localized-page .localized-doc h1,
.z-section-label,
.z-route-grid strong,
.z-action-grid strong,
.z-related-tools strong,
.article-meta-block dt,
.product-copy h2,
.product-detail-faq summary,
.tools-section-heading h2,
.tool-result h2,
.tool-result h3,
.tool-next-steps h3 {
  color: var(--color-primary) !important;
}

/* His ruling, 2026-08-28: the cards in the route and action grids were bold blue
   12px throughout, title and body alike, so nothing in them read as text. The
   heading above keeps the brand blue; the line under it becomes ordinary copy. */
.z-route-grid a span,
.z-action-grid a span {
  color: #33404d !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

.z-route-grid,
.z-action-grid {
  grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
}

.z-section-label,
.document-style.article-body h2,
.legal-document h2,
.policy-text h2,
.team-welcome-expanded h2,
.legal-extension h2,
.anti-section-title {
  background: var(--color-primary) !important;
  color: #fff !important;
}

input:focus,
textarea:focus,
select:focus,
.contact-intent-select:focus-visible,
.site-search-box input:focus,
.tools-filter__button:focus-visible,
.tool-card:focus-within {
  border-color: var(--color-primary) !important;
  box-shadow: 0 0 0 .24rem rgb(var(--color-primary-rgb) / .18) !important;
  outline: none !important;
}

input[type="checkbox"],
input[type="radio"],
progress,
meter {
  accent-color: var(--color-primary);
}

.z-brand-background-parallax {
  background-color: transparent !important;
}

.tg-button,
.tg-button.tg-button--on-blue,
.header.active .tg-button,
.header.active .tg-button.tg-button--on-blue,
body > .tg-button,
body > .tg-button.tg-button--body-fixed {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: #fff !important;
  text-shadow: none !important;
}

.tg-button:hover,
.tg-button:focus-visible,
.tg-button.tg-button--on-blue:hover,
.tg-button.tg-button--on-blue:focus-visible,
body > .tg-button:hover,
body > .tg-button:focus-visible {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  color: #fff !important;
}

html body .tg-button.tg-button--body-fixed.tg-button--on-blue,
html body.page-home .tg-button.tg-button--body-fixed.tg-button--on-blue,
html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--on-blue {
  background: #2C6196 !important;
  background-color: #2C6196 !important;
  border-color: #2C6196 !important;
  color: #fff !important;
}

/* === Live-style footer typography and blue-background floating controls === */
footer.footer {
  padding:1.55rem 0 1.25rem !important;
  background:var(--color-primary) !important;
  color:#fff !important;
}

footer.footer > .container,
footer.footer .footer__container {
  gap:.42rem !important;
}

footer.footer .footer-nav__logo {
  width:12.8rem !important;
  max-width:12.8rem !important;
  margin:0 auto .18rem !important;
}

footer.footer .footer-nav__ul {
  gap:.26rem 1.05rem !important;
}

footer.footer .footer-nav__link {
  min-height:0 !important;
  margin:.08rem .12rem !important;
  padding:0 !important;
  color:#fff !important;
  font-size:1.2rem !important;
  font-weight:300 !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
  text-shadow:none !important;
}

footer.footer .footer-nav__link:hover,
footer.footer .footer-nav__link:focus-visible {
  color:#fff !important;
  text-decoration:underline !important;
  text-underline-offset:.22em !important;
}

footer.footer .footer-contacts {
  gap:.06rem 1.25rem !important;
  padding:.05rem 0 0 !important;
}

footer.footer .footer-contacts .social-icon__link {
  min-width:4.4rem !important;
  min-height:4.4rem !important;
  padding:.36rem !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

footer.footer .footer-contacts .social-icon {
  width:2.8rem !important;
  height:2.8rem !important;
  max-width:2.8rem !important;
  max-height:2.8rem !important;
  padding:.28rem !important;
}

footer.footer .footer__disclaimer {
  width:min(108rem, 100%) !important;
  max-width:min(108rem, 100%) !important;
  margin:.15rem auto 0 !important;
  padding:.55rem 0 .1rem !important;
  border-top:1px solid rgba(255,255,255,.28) !important;
}

footer.footer .footer__disclaimer .disclaimer-p {
  max-width:96rem !important;
  margin:0 auto !important;
  color:rgba(255,255,255,.9) !important;
  font-size:1.02rem !important;
  font-weight:300 !important;
  line-height:1.35 !important;
  letter-spacing:0 !important;
  text-shadow:none !important;
}

footer.footer .footer__disclaimer .disclaimer-p a,
footer.footer .footer__disclaimer .disclaimer-p a:visited {
  color:#fff !important;
  font-weight:600 !important;
  text-decoration:underline !important;
  text-underline-offset:.22em !important;
}

footer.footer .footer-nav__copyright,
footer.footer .footer-nav__copyright a {
  color:#fff !important;
  font-size:1.08rem !important;
  font-weight:300 !important;
  line-height:1.22 !important;
  text-shadow:none !important;
}

footer.footer .footer-edition {
  margin:.08rem auto 0 !important;
  color:rgba(255,255,255,.94) !important;
  font-size:.92rem !important;
  font-weight:300 !important;
  line-height:1.15 !important;
  letter-spacing:.02em !important;
}

.tg-button:not(.tg-button--on-blue),
.header.active .tg-button:not(.tg-button--on-blue),
body > .tg-button:not(.tg-button--on-blue),
body > .tg-button.tg-button--body-fixed:not(.tg-button--on-blue) {
  background:var(--color-primary) !important;
  border-color:var(--color-primary) !important;
  color:#fff !important;
}

.tg-button:not(.tg-button--on-blue) .tg-button__icon,
body > .tg-button:not(.tg-button--on-blue) .tg-button__icon {
  filter:brightness(0) invert(1) !important;
}

.tg-button.tg-button--on-blue,
.header.active .tg-button.tg-button--on-blue,
body > .tg-button.tg-button--on-blue,
body > .tg-button.tg-button--body-fixed.tg-button--on-blue,
html body .tg-button.tg-button--body-fixed.tg-button--on-blue,
html body.page-home .tg-button.tg-button--body-fixed.tg-button--on-blue,
html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--on-blue {
  background:linear-gradient(180deg, #fff 0%, var(--color-background) 100%) !important;
  background-color:var(--color-background) !important;
  border:1px solid rgba(255,255,255,.95) !important;
  color:var(--color-primary) !important;
  box-shadow:
    0 0 0 .28rem rgba(255,255,255,.72),
    0 0 1.7rem rgba(255,255,255,.88),
    0 .7rem 1.8rem rgb(var(--color-primary-rgb) / .25) !important;
  text-shadow:none !important;
  animation:none !important;
}

.tg-button.tg-button--on-blue:hover,
.tg-button.tg-button--on-blue:focus-visible,
body > .tg-button.tg-button--on-blue:hover,
body > .tg-button.tg-button--on-blue:focus-visible {
  background:linear-gradient(180deg, #fff 0%, var(--color-background) 100%) !important;
  border-color:#fff !important;
  color:var(--color-primary) !important;
  transform:translateY(-1px) !important;
}

.tg-button.tg-button--on-blue .tg-button__icon,
body > .tg-button.tg-button--on-blue .tg-button__icon {
  filter:none !important;
}

.go-up.go-up--on-blue,
html.floating-controls-on-footer .go-up.go-up--on-blue {
  background:linear-gradient(180deg, #fff 0%, var(--color-background) 100%) !important;
  background-color:var(--color-background) !important;
  border:1px solid rgba(255,255,255,.95) !important;
  color:var(--color-primary) !important;
  box-shadow:
    0 0 0 .28rem rgba(255,255,255,.72),
    0 0 1.7rem rgba(255,255,255,.88),
    0 .7rem 1.8rem rgb(var(--color-primary-rgb) / .22) !important;
  animation:none !important;
}

.go-up.go-up--on-blue:hover,
.go-up.go-up--on-blue:focus-visible {
  background:linear-gradient(180deg, #fff 0%, var(--color-background) 100%) !important;
  border-color:#fff !important;
}

.go-up.go-up--on-blue .arrow-up,
html.floating-controls-on-footer .go-up.go-up--on-blue .arrow-up {
  border-color:var(--color-primary) !important;
}

@media (max-width:700px) {
  footer.footer {
    padding:1.25rem 1rem 1rem !important;
  }

  footer.footer .footer-nav__link {
    font-size:1.04rem !important;
    font-weight:300 !important;
  }

  footer.footer .footer__disclaimer .disclaimer-p {
    font-size:.92rem !important;
  }
}

/* === Footer-style compact blog social controls === */
.z-social-actions,
.blog-list-item .z-social-actions,
.blog-index-wrap .z-social-actions--index {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:.46rem .58rem !important;
  margin:.9rem 0 0 !important;
  padding:.72rem 0 0 !important;
  border:0 !important;
  border-top:1px solid rgb(var(--color-primary-rgb) / .12) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.z-share .z-social-actions {
  margin:1.15rem 0 1.6rem !important;
  padding:.72rem 0 !important;
  border-top:1px solid rgb(var(--color-primary-rgb) / .12) !important;
  border-bottom:1px solid rgb(var(--color-primary-rgb) / .08) !important;
}

.z-social-actions .z-social-btn,
.z-social-actions--index .z-social-btn,
.z-social-actions .z-social-like,
.z-social-actions--index .z-social-like {
  appearance:none !important;
  -webkit-appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:3.25rem !important;
  min-width:3.25rem !important;
  max-width:3.25rem !important;
  height:3.25rem !important;
  min-height:3.25rem !important;
  max-height:3.25rem !important;
  margin:0 !important;
  padding:.34rem !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--color-primary) !important;
  font-size:0 !important;
  line-height:1 !important;
  text-decoration:none !important;
  text-shadow:none !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  overflow:hidden !important;
  transform:none !important;
  transition:opacity .16s ease, transform .16s ease, filter .16s ease !important;
}

.z-social-actions .z-social-btn::before {
  display:block !important;
  width:2.1rem !important;
  height:2.1rem !important;
  color:var(--color-primary) !important;
  background-color:var(--color-primary) !important;
  font:700 1.34rem/2.1rem Arial, Helvetica, sans-serif !important;
  text-align:center !important;
}

.z-social-actions .z-social-btn[data-z-share="facebook"]::before {
  content:"" !important;
  -webkit-mask:url("/images/icons/fb-icon.svg") center / contain no-repeat !important;
  mask:url("/images/icons/fb-icon.svg") center / contain no-repeat !important;
}

.z-social-actions .z-social-btn[data-z-share="x"]::before {
  content:"" !important;
  -webkit-mask:url("/images/icons/tw-icon.svg") center / contain no-repeat !important;
  mask:url("/images/icons/tw-icon.svg") center / contain no-repeat !important;
}

.z-social-actions .z-social-btn[data-z-share="telegram"]::before {
  content:"" !important;
  -webkit-mask:url("/images/icons/te-icon.svg") center / contain no-repeat !important;
  mask:url("/images/icons/te-icon.svg") center / contain no-repeat !important;
}

.z-social-actions .z-social-btn[data-z-share="native"]::before {
  content:none !important;
  display:none !important;
}

.z-social-actions .z-social-btn[data-z-share="native"] {
  width:auto !important;
  min-width:auto !important;
  max-width:none !important;
  padding:.34rem .42rem !important;
  font-size:1.02rem !important;
  font-weight:600 !important;
  line-height:1 !important;
  overflow:visible !important;
}

.z-social-actions .z-social-btn[data-z-share="linkedin"]::before {
  content:"in" !important;
  background:transparent !important;
  font-size:1.28rem !important;
  letter-spacing:0 !important;
}

.z-social-actions .z-social-btn[data-z-share="whatsapp"]::before {
  content:"WA" !important;
  background:transparent !important;
  font-size:1.08rem !important;
  letter-spacing:0 !important;
}

.z-social-actions .z-social-btn:hover,
.z-social-actions .z-social-btn:focus-visible,
.z-social-actions .z-social-like:hover,
.z-social-actions .z-social-like:focus-visible {
  opacity:.86 !important;
  filter:none !important;
  transform:translateY(-1px) !important;
  outline:2px solid rgb(var(--color-primary-rgb) / .24) !important;
  outline-offset:2px !important;
}

.z-social-actions .z-social-btn--share,
.z-social-actions .z-social-like.is-liked {
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:var(--color-primary) !important;
}

.z-social-actions .z-social-like,
.z-social-actions--index .z-social-like {
  width:auto !important;
  min-width:auto !important;
  max-width:none !important;
  height:3.25rem !important;
  min-height:3.25rem !important;
  max-height:3.25rem !important;
  padding:.34rem .42rem !important;
  font-size:1.02rem !important;
  font-weight:600 !important;
  line-height:1 !important;
  color:var(--color-primary) !important;
  overflow:visible !important;
}

@media (max-width:700px) {
  .z-social-actions,
  .blog-list-item .z-social-actions,
  .blog-index-wrap .z-social-actions--index {
    gap:.38rem .48rem !important;
  }

  .z-social-actions .z-social-btn,
  .z-social-actions--index .z-social-btn {
    width:3rem !important;
    min-width:3rem !important;
    max-width:3rem !important;
    height:3rem !important;
    min-height:3rem !important;
    max-height:3rem !important;
  }

  .z-social-actions .z-social-btn::before {
    width:1.95rem !important;
    height:1.95rem !important;
    line-height:1.95rem !important;
  }

  .z-social-actions .z-social-like,
  .z-social-actions--index .z-social-like {
    height:3rem !important;
    min-height:3rem !important;
    max-height:3rem !important;
    font-size:.96rem !important;
  }
}

/* === Centered homepage intro composition === */
body.page-home .welcome-main .container__intro {
  text-align:center !important;
}

body.page-home .welcome-main .custom-h2.center,
body.page-home .welcome-main .subtitle,
body.page-home .welcome-main .subtitle span,
body.page-home .welcome-main .seo-content-brief,
body.page-home .welcome-main .intro__description,
body.page-home .welcome-main .intro__description p,
body.page-home .welcome-main .custom-p,
body.page-home .welcome-main .container__intro > p:not(.subtitle):not(.seo-content-brief) {
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}

body.page-home .welcome-main .custom-h2.center {
  max-width:82rem !important;
}

body.page-home .welcome-main .subtitle,
body.page-home .welcome-main .seo-content-brief,
body.page-home .welcome-main .intro__description,
body.page-home .welcome-main .intro__description p,
body.page-home .welcome-main .custom-p,
body.page-home .welcome-main .container__intro > p:not(.subtitle):not(.seo-content-brief) {
  max-width:82rem !important;
}

body.page-home .welcome-main .seo-content-brief {
  padding:1rem 1.35rem !important;
  border-left:0 !important;
  border-top:1px solid rgb(var(--color-primary-rgb) / .18) !important;
  border-bottom:1px solid rgb(var(--color-primary-rgb) / .18) !important;
}

body.page-home .welcome-main .intro__description .divider {
  margin-left:auto !important;
  margin-right:auto !important;
}

body.page-home .welcome-main .logo-panda {
  margin:2.4rem auto 0 !important;
  text-align:center !important;
}

/* === Product family navigation readable labels === */
.product-family-nav {
  justify-content:center !important;
  align-items:center !important;
  gap:1.2rem !important;
}

.product-family-nav a,
.product-family-nav a:visited,
.product-family-nav a:not(:hover) {
  background:var(--color-background) !important;
  border:1px solid var(--color-primary) !important;
  border-radius:999px !important;
  color:var(--color-primary) !important;
  min-height:4.4rem !important;
  padding:.95rem 1.8rem !important;
  line-height:1.12 !important;
  text-shadow:none !important;
}

.product-family-nav a:hover,
.product-family-nav a:focus-visible {
  background:var(--color-primary) !important;
  border-color:var(--color-primary) !important;
  border-radius:999px !important;
  color:#fff !important;
}

/* === Tools category navigation readable labels === */
.tools-main .z-anchor-strip {
  justify-content:center !important;
}

.tools-main .z-anchor-strip a,
.tools-main .z-anchor-strip a:visited,
.tools-main .z-anchor-strip a:not(:hover) {
  background:var(--color-background) !important;
  border-color:var(--color-accent) !important;
  color:var(--color-primary) !important;
  text-shadow:none !important;
}

.tools-main .z-anchor-strip a:hover,
.tools-main .z-anchor-strip a:focus-visible {
  background:var(--color-primary) !important;
  border-color:var(--color-primary) !important;
  color:#fff !important;
}

/* === Footer disclaimer link matches surrounding text === */
footer.footer .footer__disclaimer .disclaimer-p a,
footer.footer .footer__disclaimer .disclaimer-p a:visited,
footer.footer .footer__disclaimer .disclaimer-p a:hover,
footer.footer .footer__disclaimer .disclaimer-p a:focus-visible {
  color:inherit !important;
  font-size:inherit !important;
  font-weight:inherit !important;
  line-height:inherit !important;
  text-decoration:none !important;
  text-underline-offset:initial !important;
}

/* === Product card readable secondary actions === */
.zphc-products-modern .product-copy .product-count {
  display:none !important;
}

.zphc-products-modern .product-card-actions .z-cta-link {
  width:auto !important;
  min-width:auto !important;
  min-height:5.1rem !important;
  padding:1.1rem 1.8rem !important;
  border-radius:999px !important;
  font-size:1.62rem !important;
  font-weight:700 !important;
  line-height:1.15 !important;
  box-shadow:none !important;
  text-shadow:none !important;
}

.zphc-products-modern .product-card-actions .z-cta-link--secondary,
.zphc-products-modern .product-card-actions .z-cta-link--secondary:visited,
.zphc-products-modern .product-card-actions .z-cta-link--secondary:not(:hover) {
  background:#fff !important;
  border:1px solid var(--color-primary) !important;
  color:var(--color-primary) !important;
  box-shadow:none !important;
}

.zphc-products-modern .product-card-actions .z-cta-link--secondary:hover,
.zphc-products-modern .product-card-actions .z-cta-link--secondary:focus-visible {
  background:var(--color-primary) !important;
  border-color:var(--color-primary) !important;
  color:#fff !important;
}

body.page-products .product-compliance-route .z-cta-link {
  border-radius:999px !important;
  box-shadow:none !important;
  text-shadow:none !important;
}

/* === Final floating controls and button consistency === */
body > .tg-button.tg-button--body-fixed,
html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed,
html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed {
  position:fixed !important;
  top:auto !important;
  right:2rem !important;
  bottom:7.2rem !important;
  left:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  z-index:2147483000 !important;
  transform:none !important;
}

/* Below 1536px some template's text always reaches into the floating pill's lane
   (measured: blog card titles and footer links at 1280 and 1366, the tools privacy note
   at 1152, and - once every block shares the 120rem frame of H-11 - a blog card link
   2.1px into the lane at 1440). That was true of the PILL, which is ~15rem wide; it was
   answered by docking the pill at the end of the page, and the result was a button
   stranded in white space below the footer - which he saw and rejected (R47).

   The width was the problem, not the floating. The back-to-top arrow floats at every
   width and has never landed on a word, because it is a small circle in the outer
   margin. So below 1536px the button becomes that same circle, in that same lane,
   directly above the arrow: reachable on every page, never over the text, and the
   footer ends where the page ends. Above 1536px nothing changes - the full pill still
   floats in the outer margin, exactly as it did. */
@media (max-width:1535px) {
  body > .tg-button.tg-button--body-fixed,
  html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed,
  html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed {
    position:fixed !important;
    top:auto !important;
    right:2rem !important;
    bottom:7.2rem !important;
    left:auto !important;
    width:5.6rem !important;
    height:5.6rem !important;
    min-width:0 !important;
    max-width:none !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:50% !important;
    font-size:0 !important;
    overflow:hidden !important;
  }

  body > .tg-button.tg-button--body-fixed .tg-button__icon {
    width:2.4rem !important;
    height:2.4rem !important;
    margin:0 !important;
  }
}

@media (max-width:700px) {
  body > .tg-button.tg-button--body-fixed,
  html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed,
  html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed {
    right:1.4rem !important;
    bottom:6.4rem !important;
  }
}

body > .go-up,
html.z-scroll-stable-no-flight body > .go-up,
html.z-flight-v77.z-scroll-stable-no-flight body > .go-up {
  position:fixed !important;
  top:auto !important;
  right:2rem !important;
  bottom:-6rem !important;
  left:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  z-index:2147483000 !important;
}

body > .go-up.active,
html.z-scroll-stable-no-flight body > .go-up.active,
html.z-flight-v77.z-scroll-stable-no-flight body > .go-up.active {
  bottom:2rem !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

body > .tg-button.tg-button--body-fixed:hover,
body > .tg-button.tg-button--body-fixed:focus-visible,
body > .go-up:hover,
body > .go-up:focus-visible {
  transform:translateY(-1px) !important;
}

.team-gallery-load,
.team-gallery-load:not(:disabled),
.team-gallery-load:not([hidden]) {
  background:var(--color-primary) !important;
  background-color:var(--color-primary) !important;
  border:1px solid var(--color-primary) !important;
  color:#fff !important;
  text-shadow:none !important;
  box-shadow:none !important;
}

.team-gallery-load:hover,
.team-gallery-load:focus-visible {
  background:var(--color-primary-hover) !important;
  border-color:var(--color-primary-hover) !important;
  color:#fff !important;
}

@media (max-width:700px) {
  body > .tg-button.tg-button--body-fixed,
  html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed {
    right:1.4rem !important;
    bottom:6.8rem !important;
  }

  body > .go-up,
  html.z-scroll-stable-no-flight body > .go-up {
    right:1.4rem !important;
    bottom:-6rem !important;
  }

  body > .go-up.active,
  html.z-scroll-stable-no-flight body > .go-up.active {
    bottom:1.4rem !important;
  }
}

/* === Product detail button shape and readable secondary links === */
.product-detail-page .z-cta-link {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:auto !important;
  max-width:100% !important;
  min-height:4.4rem !important;   /* was 3.2rem, under the site's own 44px minimum */
  padding:.58rem 1.28rem !important;
  border-radius:999px !important;
  border:1px solid var(--color-primary) !important;
  background:var(--color-primary) !important;
  color:#fff !important;
  font-size:1.22rem !important;
  font-weight:700 !important;
  line-height:1.12 !important;
  text-align:center !important;
  text-decoration:none !important;
  text-shadow:none !important;
  box-shadow:none !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

.product-detail-page .z-cta-link.z-cta-link--secondary,
.product-detail-page .z-cta-link.z-cta-link--secondary:visited,
.product-detail-page .z-cta-link.z-cta-link--secondary:not(:hover) {
  background:#fff !important;
  border:1px solid var(--color-primary) !important;
  color:var(--color-primary) !important;
}

.product-detail-page .z-cta-link:hover,
.product-detail-page .z-cta-link:focus-visible,
.product-detail-page .z-cta-link.z-cta-link--secondary:hover,
.product-detail-page .z-cta-link.z-cta-link--secondary:focus-visible {
  background:var(--color-primary-hover) !important;
  border-color:var(--color-primary-hover) !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
}

/* === Official domains page compact legal-document styling === */
.z-trust-page {
  max-width:98rem !important;
  margin:0 auto 3.2rem !important;
  padding:2rem 2.45rem 2.35rem !important;
  background:rgb(255 255 255 / .96) !important;
  color:#4b4f55 !important;
  box-shadow:none !important;
}

.z-trust-page h1 {
  color:var(--color-primary) !important;
  font-size:2.2rem !important;
  line-height:1.32 !important;
  font-weight:700 !important;
  text-align:center !important;
  margin:0 auto 1.35rem !important;
}

.z-trust-page section {
  margin:0 0 1rem !important;
  padding:0 !important;
  min-height:0 !important;
}

/* The two label photographs are different shapes on disk (784x396 and 477x208) and
   were drawn at their own natural widths, so the newer one filled the whole column
   and the pair never matched. One box, one size, both of them: `contain` fits each
   photo whole inside it, so neither the validation code nor the serial number can be
   cropped by the box it now shares. */
.z-trust-page .article-visual {
  margin:1.8rem auto !important;
}

.z-trust-page .article-visual img {
  width:42rem !important;
  max-width:100% !important;
  height:20rem !important;
  object-fit:contain !important;
  background:#fff !important;
  margin:0 auto !important;
}

@media (max-width:700px) {
  .z-trust-page .article-visual img {
    height:16rem !important;
  }
}

/* ── The validation page: the two doors side by side, the globe between them ──
   Scoped to body.page-verificationsystems on purpose: `.z-trust-page` is shared
   with the Official domains page, which is a single column of legal text and
   must not become a grid.

   R58: the globe is no longer drawn here. It was a pseudo-element with a
   background image, which carried no alt text and no words the panel could
   edit; his ruling was "Yes, and make it editable". It is now a real <img> and
   a real <p> in verificationsystems/index.html, the sentence is the text slot
   verify.globe.line, and the page's origin_sha256 was cleared and re-recorded
   for exactly that change. This block only places what the page now holds:
   the two <section>s are the outer columns and .verify-globe is the middle one.

   The globe keeps the size it had as a pseudo-element - the column is the same
   minmax(22rem,32rem), the image is 32rem tall with object-fit:contain, which
   paints the same pixels a `background: contain` did - and it keeps the same
   slow zoom, switched off outright under prefers-reduced-motion below. */
@media (min-width:901px) {
  body.page-verificationsystems .z-trust-page {
    display:grid !important;
    grid-template-columns:1fr minmax(22rem,32rem) 1fr !important;
    grid-template-areas:"title title title" "new globe old" !important;
    column-gap:2.4rem !important;
    row-gap:0 !important;
    align-items:stretch !important;
    max-width:132rem !important;
  }

  body.page-verificationsystems .z-trust-page > h1 {
    grid-area:title !important;
  }

  body.page-verificationsystems .z-trust-page > section:nth-of-type(1) {
    grid-area:new !important;
  }

  body.page-verificationsystems .z-trust-page > section:nth-of-type(2) {
    grid-area:old !important;
  }

  body.page-verificationsystems .z-trust-page > section {
    display:flex !important;
    flex-direction:column !important;
    margin:0 !important;
    padding:1.6rem 1.8rem 2rem !important;
    border:1px solid rgb(var(--color-primary-rgb) / .16) !important;
    border-radius:1.4rem !important;
    background:#fff !important;
  }

  /* The button lines up with its opposite number however long the wording above
     it runs, which is the whole reason the card is a column flex box. */
  body.page-verificationsystems .z-trust-page > section .product-detail-actions {
    margin-top:auto !important;
  }

  body.page-verificationsystems .z-trust-page > section .article-visual {
    margin:0 auto 1.4rem !important;
  }

  body.page-verificationsystems .z-trust-page > section .article-visual img {
    width:100% !important;
    height:15rem !important;
  }

  body.page-verificationsystems .z-trust-page > .verify-globe {
    grid-area:globe !important;
    align-self:center !important;
  }

  body.page-verificationsystems .z-trust-page > .verify-globe .verify-globe__img {
    height:32rem !important;
  }
}

/* The globe and the line under it, at every width. The <img> is the box the
   pseudo-element used to be: full column width, one fixed height, `contain`
   inside it, so the panda is never cropped and never stretched. Only the globe
   zooms - the sentence under it holds still, because words that breathe are
   words nobody can read. */
.verify-globe {
  margin:0 auto !important;
  text-align:center !important;
}

.verify-globe__img {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:22rem !important;
  margin:0 auto !important;
  object-fit:contain !important;
  animation:zVerifyGlobeBreath 7s ease-in-out infinite !important;
  will-change:transform !important;
}

.verify-globe__line {
  margin:.6rem auto 1.4rem !important;
  color:var(--color-primary) !important;
  font-size:1.36rem !important;
  line-height:1.5 !important;
  font-weight:600 !important;
  text-align:center !important;
}

@keyframes zVerifyGlobeBreath {
  0%, 100% { transform:scale(1); }
  50% { transform:scale(1.075); }
}

/* A constant slow zoom is exactly the motion a vestibular disorder reacts to, and
   it runs forever with nothing to stop it, so it is switched off outright rather
   than slowed down when the reader has asked for less motion. */
@media (prefers-reduced-motion:reduce) {
  .verify-globe__img {
    animation:none !important;
  }
}

.z-trust-page h2 {
  display:inline-block !important;
  width:auto !important;
  max-width:100% !important;
  margin:.85rem 0 .55rem !important;
  padding:.45rem .7rem !important;
  border-radius:3px !important;
  background:var(--color-primary) !important;
  color:#fff !important;
  font-size:1.35rem !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  letter-spacing:.01em !important;
  text-transform:uppercase !important;
}

.z-trust-page p {
  margin:0 0 .62rem !important;
  color:#4b4f55 !important;
  font-size:1.36rem !important;
  line-height:1.58 !important;
  text-align:start !important;
  font-weight:400 !important;
}

.z-trust-page section a {
  color:var(--color-primary) !important;
  font-weight:700 !important;
  text-decoration:underline !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:.16em !important;
}

.z-trust-page section a:hover,
.z-trust-page section a:focus-visible {
  color:var(--color-primary-hover) !important;
}

.z-trust-page .product-detail-actions {
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  gap:1rem !important;
  /* T-08 - the wrapper was fit-content, so each door was as wide as its own label */
  width:min(100%, 36rem) !important;
  max-width:100% !important;
  /* T-08 - 56px above and nothing below; the paragraph under the door sat on it */
  margin:5.6rem auto !important;
  padding:0 !important;
  text-align:center !important;
}

/* T-08 - these two rules were written for a wrapper holding both doors, but each
   door sits alone in its own wrapper, so a single anchor matched :first-child and
   :last-child at once and every one of them computed order:1. They never did
   anything and they are gone. */

.z-trust-page .product-detail-actions .z-cta-link {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:auto !important;
  max-width:100% !important;
  min-height:3.8rem !important;
  padding:.78rem 1.55rem !important;
  border:1px solid var(--color-primary) !important;
  border-radius:999px !important;
  background:var(--color-primary) !important;
  color:#fff !important;
  font-size:1.25rem !important;
  font-weight:700 !important;
  line-height:1.12 !important;
  text-align:center !important;
  text-decoration:none !important;
  text-shadow:none !important;
  box-shadow:none !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

/* T-08 - the same trap: the 36rem branch written for the long label could never
   apply, the 18rem branch always won, and the two doors rendered 180x45.59 and
   180x59.59 - a 14px height mismatch. Both doors now carry the wide measure and
   one shared height, so they are the same button twice. */
.z-trust-page .product-detail-actions .z-cta-link {
  width:min(100%, 36rem) !important;
  max-width:min(100%, 36rem) !important;
  min-height:4.6rem !important;
}

.z-trust-page .product-detail-actions .z-cta-link .reg-mark {
  display:inline !important;
  margin-left:0 !important;
  top:-.32em !important;
  font-size:.5em !important;
}

.z-trust-page .product-detail-actions .z-cta-link--secondary,
.z-trust-page .product-detail-actions .z-cta-link--secondary:visited,
.z-trust-page .product-detail-actions .z-cta-link--secondary:not(:hover) {
  background:#fff !important;
  border-color:var(--color-primary) !important;
  color:var(--color-primary) !important;
}

.z-trust-page .product-detail-actions .z-cta-link:hover,
.z-trust-page .product-detail-actions .z-cta-link:focus-visible,
.z-trust-page .product-detail-actions .z-cta-link--secondary:hover,
.z-trust-page .product-detail-actions .z-cta-link--secondary:focus-visible {
  background:var(--color-primary-hover) !important;
  border-color:var(--color-primary-hover) !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
}

@media (max-width:700px) {
  .z-trust-page {
    padding:1.6rem !important;
  }

  .z-trust-page h1 {
    font-size:1.9rem !important;
  }

  .z-trust-page .product-detail-actions {
    display:flex !important;
    flex-direction:column !important;
    /* T-08 - fit-content made each door as wide as its own label on a phone too */
    width:min(100%, 36rem) !important;
    align-items:center !important;
  }

  .z-trust-page .product-detail-actions .z-cta-link {
    width:100% !important;
  }
}

/* === V209 blog capsule controls === */
body.page-blog .z-blog-filters {
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:.75rem !important;
  width:100% !important;
  margin:1.15rem auto 1.55rem !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.page-blog .z-blog-filters a,
body.page-blog .z-blog-filters a:visited,
body.page-blog .z-blog-filters a:not(:hover) {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:auto !important;
  min-height:3.8rem !important;
  padding:.74rem 1.35rem !important;
  border:1px solid var(--color-primary) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:var(--color-primary) !important;
  font-size:1.24rem !important;
  font-weight:700 !important;
  line-height:1.12 !important;
  text-decoration:none !important;
  box-shadow:none !important;
  text-shadow:none !important;
}

body.page-blog .z-blog-filters a:hover,
body.page-blog .z-blog-filters a:focus-visible {
  background:var(--color-primary) !important;
  border-color:var(--color-primary) !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
}

body.page-blog .z-blog-filters a.is-active,
body.page-blog .z-blog-filters a[aria-current="true"],
body.page-blog .z-blog-filters a.z-topic-filter.is-active,
body.page-blog .z-blog-filters a.z-topic-filter[aria-current="true"] {
  background:var(--color-primary) !important;
  border-color:var(--color-primary) !important;
  color:#fff !important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .24), 0 .7rem 1.55rem rgb(var(--color-primary-rgb) / .22) !important;
  text-shadow:none !important;
}

body.page-blog .z-featured-guide[hidden],
body.page-blog .z-blog-card[hidden],
body.page-blog .z-blog-card.is-topic-hidden {
  display:none !important;
}

body.page-blog .z-featured-guide .z-cta-link,
body.page-blog .z-blog-card .z-cta-link {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:auto !important;
  min-height:3.85rem !important;
  padding:.82rem 1.45rem !important;
  border:1px solid var(--color-primary) !important;
  border-radius:999px !important;
  background:var(--color-primary) !important;
  color:#fff !important;
  font-size:1.24rem !important;
  font-weight:700 !important;
  line-height:1.12 !important;
  text-decoration:none !important;
  box-shadow:none !important;
  text-shadow:none !important;
}

body.page-blog .z-featured-guide .z-cta-link:hover,
body.page-blog .z-featured-guide .z-cta-link:focus-visible,
body.page-blog .z-blog-card .z-cta-link:hover,
body.page-blog .z-blog-card .z-cta-link:focus-visible {
  background:var(--color-primary-hover) !important;
  border-color:var(--color-primary-hover) !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
}

body.page-blog .z-related-tools a,
body.page-blog .z-related-tools a:visited,
body.page-blog .z-related-tools a:not(:hover) {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-height:2.55rem !important;
  padding:.45rem .95rem !important;
  border:1px solid var(--color-primary) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:var(--color-primary) !important;
  font-size:1.08rem !important;
  font-weight:500 !important;
  line-height:1.1 !important;
  text-decoration:none !important;
  box-shadow:none !important;
}

body.page-blog .z-related-tools a:hover,
body.page-blog .z-related-tools a:focus-visible {
  background:var(--color-primary) !important;
  border-color:var(--color-primary) !important;
  color:#fff !important;
}

/* === V162 localized legal-page spacing cleanup === */
.legal-main .legal-document {
  margin-bottom:1.15rem !important;
  padding-bottom:2.2rem !important;
}

.legal-main .legal-document + .legal-extension {
  margin-top:0 !important;
  padding-top:1.8rem !important;
}

.legal-main .legal-extension {
  margin-bottom:3rem !important;
}

@media (max-width:700px) {
  .legal-main .legal-document {
    margin-bottom:.9rem !important;
    padding-bottom:1.55rem !important;
  }

  .legal-main .legal-document + .legal-extension {
    padding-top:1.25rem !important;
  }
}

/* === V163 language flags 130 percent inside stable cells === */
.site-language-flags .flag-lang {
  overflow:hidden !important;
}

.site-language-flags .flag-icon {
  display:inline-block !important;
  max-width:100% !important;
  line-height:1 !important;
  transform:scale(1.3) !important;
  transform-origin:center center !important;
}

/* === V164 header symmetry correction: compact flags and aligned clocks === */
.site-language-flags,
.header.active .site-language-flags {
  align-items:center !important;
  justify-items:center !important;
}

.site-language-flags .flag-lang,
.header.active .site-language-flags .flag-lang {
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  min-height:0 !important;
  padding:.04rem !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
  line-height:1 !important;
}

.site-language-flags .flag-icon,
.header.active .site-language-flags .flag-icon {
  display:block !important;
  max-width:none !important;
  font-size:2.5rem !important;
  line-height:1 !important;
  transform:none !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 .08rem .12rem rgb(var(--color-primary-rgb) / .16)) !important;
}

.site-language-flags .flag-lang:hover,
.site-language-flags .flag-lang.is-active,
.header.active .site-language-flags .flag-lang:hover,
.header.active .site-language-flags .flag-lang.is-active {
  transform:none !important;
  border-color:transparent !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
}

/* the flags kept the hover treatment's outline:none, so keyboard focus drew nothing —
   on the flag you are already on it was invisible entirely. The ring itself is at the
   end of this file, where it also beats the phone-band block that clears box-shadow. */
.site-language-flags .flag-lang:focus-visible,
.header.active .site-language-flags .flag-lang:focus-visible {
  transform:none !important;
  border-color:transparent !important;
  background:transparent !important;
}

.site-language-flags .flag-lang:hover .flag-icon,
.site-language-flags .flag-lang:focus-visible .flag-icon,
.site-language-flags .flag-lang.is-active .flag-icon,
.header.active .site-language-flags .flag-lang:hover .flag-icon,
.header.active .site-language-flags .flag-lang:focus-visible .flag-icon,
.header.active .site-language-flags .flag-lang.is-active .flag-icon {
  transform:translateY(-.06rem) scale(1.08) !important;
  filter:drop-shadow(0 .12rem .18rem rgb(var(--color-primary-rgb) / .22)) !important;
}

@media (min-width:951px) {
  html.z-scroll-stable-no-flight .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    row-gap:.5rem !important;
  }

  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:repeat(7, auto) !important;
    justify-content:center !important;
    align-content:center !important;
    align-self:stretch !important;
    gap:1.08rem 1rem !important;
    margin:0 !important;
    padding:.2rem 0 .12rem !important;
    width:var(--z-header-side, var(--z-header-left-width, 28rem)) !important;
    max-width:var(--z-header-side, var(--z-header-left-width, 28rem)) !important;
    min-height:0 !important;
    height:100% !important;
  }

  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:stretch !important;
    justify-self:end !important;
    width:var(--z-header-side, var(--z-header-left-width, 28rem)) !important;
    max-width:var(--z-header-side, var(--z-header-left-width, 28rem)) !important;
    height:auto !important;
    min-height:0 !important;
    grid-template-rows:repeat(3, minmax(0, 1fr)) !important;
    gap:.34rem !important;
    padding:.46rem !important;
    border-radius:1.35rem !important;
  }

  html.z-scroll-stable-no-flight .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-height:0 !important;
    height:100% !important;
    padding:.4rem .32rem .36rem !important;
    border-radius:.92rem !important;
    grid-template-rows:1rem minmax(0, 1fr) !important;
  }

  html.z-scroll-stable-no-flight .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    inset:.14rem .12rem auto auto !important;
    font-size:clamp(1.58rem, 1.55vw, 2.08rem) !important;
    line-height:.78 !important;
  }

  html.z-scroll-stable-no-flight .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    left:.32rem !important;
    top:.32rem !important;
    width:1.22rem !important;
    height:1.22rem !important;
  }

  html.z-scroll-stable-no-flight .world-clock__hand--hour,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand--hour {
    height:.33rem !important;
  }

  html.z-scroll-stable-no-flight .world-clock__hand--minute,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand--minute {
    height:.45rem !important;
  }

  html.z-scroll-stable-no-flight .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    align-self:end !important;
    font-size:clamp(1.42rem, 1.3vw, 1.74rem) !important;
    line-height:1 !important;
    transform:translateY(-.02rem) !important;
  }
}

@media (max-width:950px) {
  .site-language-flags,
  .header.active .site-language-flags {
    grid-template-columns:repeat(7, auto) !important;
    justify-content:start !important;
    gap:.48rem .68rem !important;
    margin-top:0 !important;
  }

  .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon {
    font-size:2.25rem !important;
  }
}

@media (max-width:520px) {
  .site-language-flags,
  .header.active .site-language-flags {
    justify-content:center !important;
    gap:.46rem .72rem !important;
  }
}

/* === V166 header balance: no flag dead space, heavier plain flag block === */
@media (min-width:951px) {
  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    align-content:start !important;
    justify-content:center !important;
    gap:.62rem .45rem !important;
    padding:.18rem 0 0 !important;
  }

  html.z-scroll-stable-no-flight .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:3.25rem !important;
  }
}

/* === V167 header balance: keep flags inside the shared header box === */
@media (min-width:951px) {
  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    align-content:space-between !important;
    justify-content:start !important;
    gap:0 .36rem !important;
    padding:0 0 0 .7rem !important;
  }

  html.z-scroll-stable-no-flight .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:3.2rem !important;
  }
}

/* === V168 world clock internal scale: larger faces and city codes, same cells === */
@media (min-width:951px) {
  html.z-scroll-stable-no-flight .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    inset:.1rem .08rem auto auto !important;
    font-size:clamp(1.86rem, 1.82vw, 2.45rem) !important;
    line-height:.78 !important;
  }

  html.z-scroll-stable-no-flight .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    left:.28rem !important;
    top:.28rem !important;
    width:1.52rem !important;
    height:1.52rem !important;
    border-width:.15rem !important;
  }

  html.z-scroll-stable-no-flight .world-clock__hand,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand {
    width:.14rem !important;
  }

  html.z-scroll-stable-no-flight .world-clock__hand--hour,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand--hour {
    height:.42rem !important;
    width:.17rem !important;
  }

  html.z-scroll-stable-no-flight .world-clock__hand--minute,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand--minute {
    height:.57rem !important;
  }

  html.z-scroll-stable-no-flight .world-clock__pin,
  html.z-scroll-stable-no-flight .header.active .world-clock__pin {
    width:.34rem !important;
    height:.34rem !important;
  }
}

/* === V169 world clock block width matches visible flag rows === */
@media (min-width:951px) {
  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    width:25.15rem !important;
    max-width:25.15rem !important;
  }
}

/* === V170 mid-width header collision guard === */
@media (min-width:951px) and (max-width:1200px) {
  html.z-scroll-stable-no-flight .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    grid-template-columns:var(--z-header-side, 22rem) minmax(0, 1fr) 25.15rem !important;
  }
}

/* === V171 team join CTA matches site pill buttons === */
.v19-team-links .team-join-route__cta {
  min-width:min(100%, 28rem) !important;
  min-height:5.28rem !important;
  padding:1rem 2.2rem !important;
  border:1px solid rgb(var(--color-accent-rgb) / .72) !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,var(--color-accent) 0%,var(--color-secondary) 44%,var(--color-primary) 100%) !important;
  color:#fff !important;
  font-size:clamp(1.36rem, 1.2em, 1.82rem) !important;
  font-weight:800 !important;
  line-height:1.15 !important;
  text-align:center !important;
  text-decoration:none !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48), 0 10px 22px rgb(var(--color-primary-rgb) / .22) !important;
  transform-origin:center center !important;
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

.v19-team-links .team-join-route__cta:hover,
.v19-team-links .team-join-route__cta:focus-visible {
  background:linear-gradient(180deg,var(--color-accent) 0%,var(--color-secondary) 44%,var(--color-primary) 100%) !important;
  border-color:rgb(var(--color-accent-rgb) / .86) !important;
  color:#fff !important;
  text-decoration:none !important;
  transform:translateY(-2px) scale(1.04) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62), 0 14px 28px rgb(var(--color-primary-rgb) / .28) !important;
  filter:saturate(1.08) !important;
}

@media (max-width:700px) {
  .v19-team-links .team-join-route__cta {
    width:100% !important;
    min-width:0 !important;
  }
}

/* === V172 team join CTA color matches team gallery action button === */
.v19-team-links .team-join-route__cta,
.v19-team-links .team-join-route__cta:visited {
  background:var(--color-primary) !important;
  background-color:var(--color-primary) !important;
  background-image:none !important;
  border-color:var(--color-primary) !important;
  color:#fff !important;
  box-shadow:none !important;
  text-shadow:none !important;
}

.v19-team-links .team-join-route__cta:hover,
.v19-team-links .team-join-route__cta:focus-visible {
  background:var(--color-primary-hover) !important;
  background-color:var(--color-primary-hover) !important;
  background-image:none !important;
  border-color:var(--color-primary-hover) !important;
  color:#fff !important;
  box-shadow:none !important;
  filter:none !important;
}

/* === V175 primary menu typography and centered labels === */
.top-menu,
.header.active .top-menu,
.top-menu__link,
.header.active .top-menu__link,
.top-menu__label-fit,
.header.active .top-menu__label-fit {
  font-family:"Adobe Caslon Pro", "Adobe Caslon", Georgia, serif !important;
  font-style:normal !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

.top-menu__link,
.header.active .top-menu__link {
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

.top-menu__label-fit,
.header.active .top-menu__label-fit {
  display:block !important;
  width:calc(100% - 10px) !important;
  max-width:calc(100% - 10px) !important;
  margin:auto !important;
  line-height:.96 !important;
  text-align:center !important;
}

.top-menu__link .reg-mark,
.header.active .top-menu__link .reg-mark,
.top-menu__label-fit .reg-mark,
.header.active .top-menu__label-fit .reg-mark {
  font-size:.34em !important;
  top:-.34em !important;
  margin-left:.015em !important;
  margin-right:-.18em !important;
}

/* === V177 world clock face-only 140% scale, kept inside cells === */
html.z-scroll-stable-no-flight .world-clock__face,
html.z-scroll-stable-no-flight .header.active .world-clock__face,
.world-clock__face,
.header.active .world-clock__face {
  left:.52rem !important;
  top:.52rem !important;
  transform:scale(1.4) !important;
  transform-origin:center center !important;
}

/* === V179 global desktop hover heartbeat controls === */
body > .tg-button.tg-button--body-fixed,
html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed,
html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed,
body > .go-up,
html.z-scroll-stable-no-flight body > .go-up,
html.z-flight-v77.z-scroll-stable-no-flight body > .go-up,
header.header .header-logo,
header.header .header-logo__img,
footer.footer .footer-logo a,
footer.footer .footer-nav__logo,
#submit-button {
  transform-origin:center center !important;
  will-change:scale, filter !important;
}

#submit-button {
  position:relative !important;
  transition:transform .32s ease, filter .32s ease !important;
}

@media (hover:hover) and (pointer:fine) and (min-width:951px) and (prefers-reduced-motion:no-preference) {
  body > .tg-button.tg-button--body-fixed:hover,
  body > .tg-button.tg-button--body-fixed:focus-visible,
  html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed:hover,
  html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed:focus-visible,
  html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed:hover,
  html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed:focus-visible,
  body > .tg-button.tg-button--body-fixed.tg-button--desktop-heartbeat,
  html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--desktop-heartbeat,
  html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--desktop-heartbeat,
  body > .go-up:hover,
  body > .go-up:focus-visible,
  html.z-scroll-stable-no-flight body > .go-up:hover,
  html.z-scroll-stable-no-flight body > .go-up:focus-visible,
  html.z-flight-v77.z-scroll-stable-no-flight body > .go-up:hover,
  html.z-flight-v77.z-scroll-stable-no-flight body > .go-up:focus-visible,
  body > .go-up.go-up--desktop-heartbeat,
  html.z-scroll-stable-no-flight body > .go-up.go-up--desktop-heartbeat,
  html.z-flight-v77.z-scroll-stable-no-flight body > .go-up.go-up--desktop-heartbeat,
  header.header .header-logo:hover .header-logo__img,
  header.header .header-logo:focus-visible .header-logo__img,
  header.header .header-logo.header-logo--desktop-heartbeat .header-logo__img,
  footer.footer .footer-logo a:hover .footer-nav__logo,
  footer.footer .footer-logo a:focus-visible .footer-nav__logo,
  footer.footer .footer-logo a.footer-logo--desktop-heartbeat .footer-nav__logo {
    animation:zTelegramHeartbeat 1.85s cubic-bezier(.22, .72, .24, 1.08) infinite !important;
  }

  #submit-button:hover,
  #submit-button:focus-visible,
  #submit-button.submit-button--desktop-growbeat {
    animation:zSubmitHeartbeat200 1.05s cubic-bezier(.24, .72, .28, 1.08) infinite !important;
    filter:saturate(1.12) !important;
    transform:scale(2) !important;
    transform-origin:center center !important;
    transition:transform .32s ease, filter .32s ease !important;
    z-index:5 !important;
  }
}

@keyframes zTelegramHeartbeat {
  0%, 100% {
    scale:1;
    filter:saturate(1);
  }
  14% {
    scale:1.045;
    filter:saturate(1.08);
  }
  28% {
    scale:.995;
    filter:saturate(1.02);
  }
  44% {
    scale:1.075;
    filter:saturate(1.12);
  }
  62% {
    scale:1;
    filter:saturate(1.04);
  }
  80% {
    scale:1.025;
    filter:saturate(1.08);
  }
}

@keyframes zSubmitHeartbeat200 {
  0%, 100% {
    scale:1;
  }
  18% {
    scale:1.055;
  }
  36% {
    scale:.965;
  }
  56% {
    scale:1.04;
  }
  74% {
    scale:.99;
  }
}

@media (prefers-reduced-motion:reduce) {
  body > .tg-button.tg-button--body-fixed:hover,
  body > .tg-button.tg-button--body-fixed:focus-visible,
  body > .tg-button.tg-button--body-fixed.tg-button--desktop-heartbeat,
  body > .go-up:hover,
  body > .go-up:focus-visible,
  body > .go-up.go-up--desktop-heartbeat,
  header.header .header-logo:hover .header-logo__img,
  header.header .header-logo:focus-visible .header-logo__img,
  header.header .header-logo.header-logo--desktop-heartbeat .header-logo__img,
  footer.footer .footer-logo a:hover .footer-nav__logo,
  footer.footer .footer-logo a:focus-visible .footer-nav__logo,
  footer.footer .footer-logo a.footer-logo--desktop-heartbeat .footer-nav__logo,
  #submit-button:hover,
  #submit-button:focus-visible,
  #submit-button.submit-button--desktop-growbeat {
    animation:none !important;
    scale:1 !important;
    transform:none !important;
  }
}

/* === Article anchor capsule buttons V21388 === */
body.page-blog .article-body .z-anchor-strip {
  align-items:center !important;
  gap:.8rem !important;
}

body.page-blog .article-body .z-anchor-strip a,
body.page-blog .article-body .z-anchor-strip a:visited,
body.page-blog .article-body .z-anchor-strip a:not(:hover) {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:auto !important;
  max-width:100% !important;
  min-height:4.2rem !important;
  padding:.82rem 1.55rem !important;
  border:1px solid var(--color-primary) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:var(--color-primary) !important;
  box-shadow:0 .55rem 1.35rem rgb(var(--color-primary-rgb) / .08) !important;
  font-weight:700 !important;
  line-height:1.12 !important;
  text-align:center !important;
  text-decoration:none !important;
  text-shadow:none !important;
}

body.page-blog .article-body .z-anchor-strip a:hover,
body.page-blog .article-body .z-anchor-strip a:focus-visible {
  background:var(--color-background) !important;
  border-color:var(--color-primary) !important;
  color:var(--color-primary) !important;
  box-shadow:0 .8rem 1.8rem rgb(var(--color-primary-rgb) / .14) !important;
  transform:translateY(-1px) !important;
}

@media (max-width:700px) {
  body.page-blog .article-body .z-anchor-strip a {
    min-height:4rem !important;
    padding:.78rem 1.25rem !important;
  }
}

/* Creatine article compact WebP figures V21388 */
body.page-blog .creatine-article .article-visual {
  max-width:38rem !important;
  margin:2rem auto !important;
}

body.page-blog .creatine-article .article-visual:first-of-type {
  max-width:48rem !important;
}

body.page-blog .creatine-article .article-visual--sticker {
  max-width:32rem !important;
}

body.page-blog .creatine-article .article-visual--portrait {
  max-width:32rem !important;
}

body.page-blog .creatine-article .article-visual img {
  width:100% !important;
  height:auto !important;
}

@media (min-width:780px) {
  body.page-blog .creatine-article h2,
  body.page-blog .creatine-article h3,
  body.page-blog .creatine-article .article-table,
  body.page-blog .creatine-article .references,
  body.page-blog .creatine-article .z-anchor-strip {
    clear:both !important;
  }

  body.page-blog .creatine-article .article-visual:not(:first-of-type) {
    float:right !important;
    width:clamp(28rem, 34vw, 38rem) !important;
    max-width:42% !important;
    margin:.35rem 0 1.35rem 2.4rem !important;
    text-align:start !important;
  }

  body.page-blog .creatine-article .article-visual:nth-of-type(even):not(:first-of-type),
  body.page-blog .creatine-article .article-visual--sticker,
  body.page-blog .creatine-article .article-visual--portrait {
    float:left !important;
    margin:.35rem 2.4rem 1.35rem 0 !important;
  }

  body.page-blog .creatine-article .article-visual--sticker,
  body.page-blog .creatine-article .article-visual--portrait {
    width:clamp(22rem, 28vw, 32rem) !important;
    max-width:36% !important;
  }

  body.page-blog .creatine-article .article-visual figcaption {
    margin-top:.7rem !important;
    font-size:1.18rem !important;
    line-height:1.42 !important;
    text-align:center !important;
  }
}

@media (max-width:779px) {
  body.page-blog .creatine-article .article-visual {
    float:none !important;
    width:auto !important;
    max-width:min(100%, 38rem) !important;
    margin:2rem auto !important;
    text-align:center !important;
  }
}

/* Protein intake article compact high-resolution figures V21416 */
body.page-blog .protein-intake-article .article-visual {
  max-width:46rem !important;
  margin:1.9rem auto 2.2rem !important;
}

body.page-blog .protein-intake-article .article-visual img {
  width:100% !important;
  height:auto !important;
}

body.page-blog .protein-intake-article .article-visual figcaption {
  max-width:42rem !important;
  margin:.75rem auto 0 !important;
  font-size:1.16rem !important;
  line-height:1.42 !important;
}

@media (min-width:720px) {
  body.page-blog .protein-intake-article .article-table,
  body.page-blog .protein-intake-article .related-guides,
  body.page-blog .protein-intake-article .references,
  body.page-blog .protein-intake-article .sources-review-notes,
  body.page-blog .protein-intake-article .z-anchor-strip {
    clear:both !important;
  }

  body.page-blog .protein-intake-article .article-visual {
    float:right !important;
    width:clamp(34rem, 36vw, 46rem) !important;
    max-width:46% !important;
    margin:.35rem 0 1.45rem 2.4rem !important;
    text-align:center !important;
  }

  body.page-blog .protein-intake-article .article-visual:nth-of-type(even) {
    float:left !important;
    margin:.35rem 2.4rem 1.45rem 0 !important;
  }
}

@media (max-width:719px) {
  body.page-blog .protein-intake-article .article-visual {
    float:none !important;
    width:auto !important;
    max-width:min(100%, 34rem) !important;
    margin:1.9rem auto 2.2rem !important;
    text-align:center !important;
  }

  body.page-blog .protein-intake-article .article-visual:first-of-type {
    max-width:min(100%, 34rem) !important;
  }
}

/* Walking and heavy-duty articles: small pictures set inside the text V21440.
   The files stay full resolution; only the drawn size shrinks, so the pictures
   read as high-resolution on every screen. */
body.page-blog .walking-after-meals-article .article-visual,
body.page-blog .heavy-duty-vs-high-volume-article .article-visual {
  max-width:34rem !important;
  margin:1.8rem auto 2.1rem !important;
}

body.page-blog .walking-after-meals-article .article-visual:first-of-type,
body.page-blog .heavy-duty-vs-high-volume-article .article-visual:first-of-type {
  max-width:46rem !important;
}

body.page-blog .walking-after-meals-article .article-visual img,
body.page-blog .heavy-duty-vs-high-volume-article .article-visual img {
  width:100% !important;
  height:auto !important;
}

body.page-blog .walking-after-meals-article .article-visual figcaption,
body.page-blog .heavy-duty-vs-high-volume-article .article-visual figcaption {
  margin-top:.7rem !important;
  font-size:1.16rem !important;
  line-height:1.42 !important;
  text-align:center !important;
}

@media (min-width:780px) {
  /* headings are allowed to run beside a picture: clearing them left large
     empty bands under every floated figure */
  body.page-blog .walking-after-meals-article .article-table,
  body.page-blog .walking-after-meals-article .related-guides,
  body.page-blog .walking-after-meals-article .references,
  body.page-blog .walking-after-meals-article .sources-review-notes,
  body.page-blog .walking-after-meals-article .z-anchor-strip,
  body.page-blog .heavy-duty-vs-high-volume-article .article-table,
  body.page-blog .heavy-duty-vs-high-volume-article .related-guides,
  body.page-blog .heavy-duty-vs-high-volume-article .references,
  body.page-blog .heavy-duty-vs-high-volume-article .sources-review-notes,
  body.page-blog .heavy-duty-vs-high-volume-article .z-anchor-strip {
    clear:both !important;
  }

  body.page-blog .walking-after-meals-article .article-visual:not(:first-of-type),
  body.page-blog .heavy-duty-vs-high-volume-article .article-visual:not(:first-of-type) {
    float:right !important;
    width:clamp(24rem, 28vw, 34rem) !important;
    max-width:36% !important;
    margin:.4rem 0 1.4rem 2.4rem !important;
  }

  /* this article carries fifteen pictures, so each one is a little narrower
     and its headings run as blocks, which lets the text close around them */
  body.page-blog .heavy-duty-vs-high-volume-article .article-visual:not(:first-of-type) {
    width:clamp(20rem, 24vw, 28rem) !important;
    max-width:32% !important;
  }

  body.page-blog .heavy-duty-vs-high-volume-article h2 {
    display:block !important;
  }

  body.page-blog .walking-after-meals-article .article-visual:nth-of-type(even):not(:first-of-type),
  body.page-blog .heavy-duty-vs-high-volume-article .article-visual:nth-of-type(even):not(:first-of-type) {
    float:left !important;
    margin:.4rem 2.4rem 1.4rem 0 !important;
  }

  body.page-blog .walking-after-meals-article .article-visual:first-of-type,
  body.page-blog .heavy-duty-vs-high-volume-article .article-visual:first-of-type {
    float:none !important;
    margin:1.8rem auto 2.2rem !important;
  }
}

@media (max-width:779px) {
  body.page-blog .walking-after-meals-article .article-visual,
  body.page-blog .heavy-duty-vs-high-volume-article .article-visual {
    float:none !important;
    width:auto !important;
    max-width:min(100%, 32rem) !important;
    margin:1.8rem auto 2.1rem !important;
  }
}

/* Creatine article meta contrast V21388 */
body.page-blog .creatine-article .article-meta-block {
  background:#f7fbff !important;
  border-color:rgb(var(--color-primary-rgb) / .28) !important;
  color:#24384f !important;
  box-shadow:0 .9rem 2rem rgb(var(--color-primary-rgb) / .08) !important;
}

body.page-blog .creatine-article .article-meta-block p,
body.page-blog .creatine-article .article-meta-block time {
  color:#24384f !important;
  opacity:1 !important;
  text-shadow:none !important;
}

body.page-blog .creatine-article .article-meta-block .z-chip {
  background:#e9f4ff !important;
  border:1px solid rgb(var(--color-primary-rgb) / .18) !important;
  color:var(--color-primary) !important;
  opacity:1 !important;
  text-shadow:none !important;
}

body.page-blog .creatine-article .article-meta-block .article-tags {
  display:flex !important;
  flex-wrap:wrap !important;
  gap:.6rem !important;
}

/* Blog index category chip contrast V21388 */
body.page-blog .z-featured-guide .z-chip,
body.page-blog .z-blog-card .z-chip {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:0 !important;
  padding:.36rem .68rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .72) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:var(--color-primary) !important;
  opacity:1 !important;
  text-shadow:none !important;
  box-shadow:none !important;
  font-weight:800 !important;
  line-height:1.1 !important;
}

/* V21437 localized blog-card chip fitting */
body.page-blog .z-featured-guide__body > p:first-of-type,
body.page-blog .z-blog-card__body > p:first-of-type {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  gap:.22rem .45rem !important;
  min-width:0 !important;
}

body.page-blog .z-featured-guide .z-chip,
body.page-blog .z-blog-card .z-chip {
  box-sizing:border-box !important;
  flex:0 1 100% !important;
  max-inline-size:100% !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  text-align:center !important;
  letter-spacing:.025em !important;
  line-height:1.16 !important;
}

body.page-blog .z-blog-card .z-chip {
  padding:.3rem .54rem !important;
  font-size:clamp(.68rem, .58rem + .22vw, .88rem) !important;
}

body.page-blog .z-featured-guide .z-chip {
  padding:.34rem .62rem !important;
  font-size:clamp(.78rem, .68rem + .18vw, .98rem) !important;
}

/* Tools BMI card miniature V21388 */
body.page-tools-index .tool-card {
  position:relative !important;
}

body.page-tools-index .tool-card--has-miniature {
  padding-right:8.8rem !important;
}

body.page-tools-index .tool-card__miniature {
  position:absolute !important;
  top:1.05rem !important;
  right:1.05rem !important;
  z-index:2 !important;
  width:6.4rem !important;
  height:6.4rem !important;
  max-width:6.4rem !important;
  max-height:6.4rem !important;
  padding:.25rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .22) !important;
  border-radius:.7rem !important;
  background:#fff !important;
  box-shadow:none !important;
  object-fit:contain !important;
  object-position:center center !important;
}

@media (max-width:520px) {
  body.page-tools-index .tool-card--has-miniature {
    padding-right:7.4rem !important;
  }

  body.page-tools-index .tool-card__miniature {
    top:.9rem !important;
    right:.9rem !important;
    width:5.6rem !important;
    height:5.6rem !important;
    max-width:5.6rem !important;
    max-height:5.6rem !important;
  }
}

/* Tablet contact header compaction V21394 */
@media (min-width:701px) and (max-width:950px) {
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    min-height:36.4rem !important;
    padding-bottom:1.15rem !important;
  }

  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    max-width:100% !important;
    padding-left:2.4rem !important;
    padding-right:2.4rem !important;
  }

  html.z-scroll-stable-no-flight .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto auto auto !important;
    justify-items:center !important;
    align-items:start !important;
    gap:.72rem !important;
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    padding:1.65rem 0 0 !important;
  }

  html.z-scroll-stable-no-flight .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:center !important;
    width:min(20rem, 34vw) !important;
    max-width:min(20rem, 34vw) !important;
    margin:0 !important;
  }

  html.z-scroll-stable-no-flight .header-logo__img,
  html.z-scroll-stable-no-flight .header.active .header-logo__img {
    width:100% !important;
    height:auto !important;
  }

  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:repeat(21, minmax(0, 1fr)) !important;
    justify-content:center !important;
    justify-items:center !important;
    align-items:center !important;
    gap:.18rem !important;
    width:min(70rem, calc(100vw - 5.6rem)) !important;
    max-width:min(70rem, calc(100vw - 5.6rem)) !important;
    min-height:0 !important;
    margin:0 auto !important;
    padding:.05rem 0 .1rem !important;
  }

  html.z-scroll-stable-no-flight .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
  }

  html.z-scroll-stable-no-flight .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:2.02rem !important;
    line-height:1 !important;
  }

  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:1 !important;
    grid-row:3 !important;
    justify-self:center !important;
    width:min(70rem, calc(100vw - 6rem)) !important;
    max-width:min(70rem, calc(100vw - 6rem)) !important;
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(2, minmax(5.9rem, auto)) !important;
    gap:.42rem !important;
    min-height:0 !important;
    height:auto !important;
    margin:.05rem auto 0 !important;
    padding:.52rem !important;
    border-radius:1.28rem !important;
  }

  html.z-scroll-stable-no-flight .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-width:0 !important;
    min-height:5.9rem !important;
    height:auto !important;
    padding:.42rem .28rem .46rem !important;
    border-radius:.84rem !important;
    grid-template-rows:1rem minmax(0, 1fr) !important;
  }

  html.z-scroll-stable-no-flight .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    inset:.1rem .12rem auto auto !important;
    font-size:clamp(1.78rem, 3.2vw, 2.28rem) !important;
    line-height:.78 !important;
  }

  html.z-scroll-stable-no-flight .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    left:.28rem !important;
    top:.28rem !important;
    width:1.36rem !important;
    height:1.36rem !important;
  }

  html.z-scroll-stable-no-flight .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    align-self:end !important;
    font-size:clamp(1.58rem, 3.05vw, 2.08rem) !important;
    line-height:1 !important;
  }

  html.z-scroll-stable-no-flight .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    grid-column:1 !important;
    grid-row:4 !important;
    width:min(70rem, calc(100vw - 6rem)) !important;
    max-width:min(70rem, calc(100vw - 6rem)) !important;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:.42rem !important;
    margin:.05rem auto 0 !important;
    padding:.42rem !important;
  }

  html.z-scroll-stable-no-flight .visitor-metric--persistent .visitor-metric__chip {
    flex:none !important;
    min-width:0 !important;
    min-height:2.62rem !important;
    padding:.34rem .64rem !important;
    font-size:1.1rem !important;
    line-height:1.12 !important;
    white-space:normal !important;
  }

  body.page-contact .breadcrumb__container {
    padding-top:1.2rem !important;
    padding-bottom:1.75rem !important;
  }

  body.page-contact .page-title {
    padding:2.05rem 3rem !important;
    margin-bottom:.65rem !important;
  }

  body.page-contact .breadcrumb {
    margin-left:3rem !important;
  }
}

@media (min-width:701px) and (max-width:790px) {
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    min-height:35.2rem !important;
  }

  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    padding-left:1.8rem !important;
    padding-right:1.8rem !important;
  }

  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    width:calc(100vw - 4.2rem) !important;
    max-width:calc(100vw - 4.2rem) !important;
    gap:.08rem !important;
  }

  html.z-scroll-stable-no-flight .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:1.9rem !important;
  }

  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks,
  html.z-scroll-stable-no-flight .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    width:calc(100vw - 4.6rem) !important;
    max-width:calc(100vw - 4.6rem) !important;
  }

  html.z-scroll-stable-no-flight .world-clock {
    min-height:5.55rem !important;
  }
}

/* === V21401 unified ZPHC blue primary navigation pill === */
.header,
.header.active,
html.z-scroll-stable-no-flight .header,
html.z-scroll-stable-no-flight .header.active {
  min-height:0 !important;
}

.header .container,
.header.active .container,
html.z-scroll-stable-no-flight .header .container,
html.z-scroll-stable-no-flight .header.active .container {
  width:100% !important;
  max-width:100% !important;
  padding-left:clamp(1rem, 2.4vw, 2.4rem) !important;
  padding-right:clamp(1rem, 2.4vw, 2.4rem) !important;
  box-sizing:border-box !important;
}

.header__mob,
.header__modal,
.header__modal-white {
  display:none !important;
}

.header-nav::before,
.header-nav::after,
.header.active .header-nav::before,
.header.active .header-nav::after,
html.z-scroll-stable-no-flight .header-nav::before,
html.z-scroll-stable-no-flight .header-nav::after,
html.z-scroll-stable-no-flight .header.active .header-nav::before,
html.z-scroll-stable-no-flight .header.active .header-nav::after {
  content:none !important;
  display:none !important;
}

.header-nav,
.header.active .header-nav,
html.z-scroll-stable-no-flight .header-nav,
html.z-scroll-stable-no-flight .header.active .header-nav {
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) !important;
  grid-template-rows:auto auto auto auto auto !important;
  justify-items:center !important;
  align-items:start !important;
  gap:.86rem !important;
  width:100% !important;
  max-width:100% !important;
  min-height:0 !important;
  padding:1.8rem 0 0 !important;
  box-sizing:border-box !important;
}

.header-logo,
.header.active .header-logo,
html.z-scroll-stable-no-flight .header-logo,
html.z-scroll-stable-no-flight .header.active .header-logo {
  grid-column:1 !important;
  grid-row:1 !important;
  justify-self:center !important;
  margin:0 !important;
}

.site-language-flags,
.header.active .site-language-flags,
html.z-scroll-stable-no-flight .site-language-flags,
html.z-scroll-stable-no-flight .header.active .site-language-flags {
  grid-column:1 !important;
  grid-row:2 !important;
  justify-self:center !important;
  margin:0 auto !important;
}

#primary-menu.top-menu,
.header.active #primary-menu.top-menu,
html.z-flight-v77 #primary-menu.top-menu,
html.z-flight-v77 .header.active #primary-menu.top-menu,
html.z-scroll-stable-no-flight #primary-menu.top-menu,
html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
  position:relative !important;
  grid-column:1 !important;
  grid-row:3 !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:stretch !important;
  justify-content:center !important;
  justify-self:center !important;
  align-self:center !important;
  width:100% !important;
  max-width:96rem !important;
  min-width:0 !important;
  min-height:5.7rem !important;
  height:auto !important;
  max-height:none !important;
  gap:0 !important;
  padding:.36rem !important;
  margin:.06rem auto .16rem !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  overflow-x:hidden !important;
  overflow-y:hidden !important;
  list-style:none !important;
  border:1px solid rgb(var(--color-background-rgb) / .82) !important;
  border-radius:999px !important;
  background:
    radial-gradient(90% 150% at 50% -26%, rgba(255,255,255,.62) 0%, rgba(255,255,255,.22) 28%, rgb(var(--color-primary-rgb) / 0) 62%),
    linear-gradient(180deg, rgb(var(--color-primary-rgb) / .82) 0%, var(--color-primary) 48%, var(--color-primary-hover) 100%) !important;
  box-shadow:
    inset 0 .18rem .12rem rgba(255,255,255,.58),
    inset 0 -.24rem .58rem rgb(var(--color-primary-hover-rgb) / .24),
    0 .72rem 1.72rem rgb(var(--color-primary-rgb) / .24),
    0 .16rem .42rem rgba(0,0,0,.12) !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  z-index:7000 !important;
  direction:ltr !important;
}

#primary-menu.top-menu::before,
#primary-menu.top-menu::after {
  content:"" !important;
  display:none !important;
}

#primary-menu.top-menu .top-menu__item,
.header.active #primary-menu.top-menu .top-menu__item {
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  flex:1 1 auto !important;
  grid-column:auto !important;
  grid-row:auto !important;
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  overflow:visible !important;
}

#primary-menu.top-menu .top-menu__item + .top-menu__item::before,
.header.active #primary-menu.top-menu .top-menu__item + .top-menu__item::before {
  content:"" !important;
  position:absolute !important;
  inset:.68rem auto .68rem 0 !important;
  width:1px !important;
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.42), rgba(255,255,255,0)) !important;
  box-shadow:-1px 0 0 rgb(var(--color-primary-hover-rgb) / .2) !important;
  pointer-events:none !important;
}

#primary-menu.top-menu .top-menu__link,
.header.active #primary-menu.top-menu .top-menu__link {
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.28rem !important;
  width:100% !important;
  min-width:0 !important;
  height:100% !important;
  min-height:5rem !important;
  padding:.54rem .34rem .5rem !important;
  border:0 !important;
  border-radius:999px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff !important;
  font-family:Inter, "Segoe UI", Arial, Helvetica, sans-serif !important;
  font-size:1.18rem !important;
  font-weight:820 !important;
  line-height:1.02 !important;
  letter-spacing:0 !important;
  text-align:center !important;
  text-decoration:none !important;
  text-shadow:0 .1rem .18rem rgb(var(--color-primary-hover-rgb) / .34) !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  hyphens:manual !important;
  text-wrap:balance !important;
  overflow:hidden !important;
  opacity:1 !important;
  visibility:visible !important;
  transition:background .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

#primary-menu.top-menu .top-menu__link::before,
.header.active #primary-menu.top-menu .top-menu__link::before {
  content:"" !important;
  display:block !important;
  flex:0 0 auto !important;
  width:2.05rem !important;
  height:2.05rem !important;
  margin:0 auto .05rem !important;
  background:#fff !important;
  opacity:.98 !important;
  -webkit-mask:var(--zphc-menu-icon) center / contain no-repeat !important;
  mask:var(--zphc-menu-icon) center / contain no-repeat !important;
  filter:drop-shadow(0 .08rem .12rem rgb(var(--color-primary-hover-rgb) / .26)) !important;
}

#primary-menu.top-menu .top-menu__item:nth-child(1) .top-menu__link { --zphc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11L12 3l9 8'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3Cpath d='M9 20v-6h6v6'/%3E%3C/svg%3E"); }
#primary-menu.top-menu .top-menu__item:nth-child(2) .top-menu__link { --zphc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 8l-9-5-9 5 9 5 9-5z'/%3E%3Cpath d='M3 8v8l9 5 9-5V8'/%3E%3Cpath d='M12 13v8'/%3E%3C/svg%3E"); }
#primary-menu.top-menu .top-menu__item:nth-child(3) .top-menu__link { --zphc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H7a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9.5' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E"); }
#primary-menu.top-menu .top-menu__item:nth-child(4) .top-menu__link { --zphc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='M8.5 12.2l2.3 2.3 4.8-5'/%3E%3C/svg%3E"); }
#primary-menu.top-menu .top-menu__item:nth-child(5) .top-menu__link { --zphc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 0 0-5 5L3 18v3h3l6.7-6.7a4 4 0 0 0 5-5l-2.4 2.4-2.8-2.8 2.2-2.6z'/%3E%3Cpath d='M19 15l2 2'/%3E%3Cpath d='M17 17l2 2'/%3E%3C/svg%3E"); }
#primary-menu.top-menu .top-menu__item:nth-child(6) .top-menu__link { --zphc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/%3E%3Cpath d='M4 4.5A2.5 2.5 0 0 1 6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5z'/%3E%3C/svg%3E"); }
#primary-menu.top-menu .top-menu__item:nth-child(7) .top-menu__link { --zphc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 2L11 13'/%3E%3Cpath d='M22 2l-7 20-4-9-9-4 20-7z'/%3E%3C/svg%3E"); }
#primary-menu.top-menu .top-menu__item:nth-child(8) .top-menu__link { --zphc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12.4l2.6 2.6L16 9.6'/%3E%3C/svg%3E"); }

#primary-menu.top-menu .top-menu__label-fit,
.header.active #primary-menu.top-menu .top-menu__label-fit {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 auto !important;
  color:inherit !important;
  font:inherit !important;
  line-height:1.02 !important;
  text-align:center !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  hyphens:manual !important;
  text-wrap:balance !important;
}

#primary-menu.top-menu .top-menu__link .reg-mark,
.header.active #primary-menu.top-menu .top-menu__link .reg-mark,
#primary-menu.top-menu .top-menu__label-fit .reg-mark {
  color:inherit !important;
  font-size:.44em !important;
  line-height:0 !important;
  top:-.22em !important;
  margin-left:.02em !important;
  margin-right:0 !important;
}

#primary-menu.top-menu .top-menu__link:hover,
#primary-menu.top-menu .top-menu__link:focus-visible {
  background:linear-gradient(180deg, rgba(255,255,255,.22), rgb(var(--color-background-rgb) / .1) 48%, rgb(var(--color-primary-hover-rgb) / .2)) !important;
  box-shadow:
    inset 0 .16rem .18rem rgba(255,255,255,.36),
    inset 0 -.18rem .28rem rgb(var(--color-primary-hover-rgb) / .18) !important;
  color:#fff !important;
  outline:2px solid rgb(var(--color-background-rgb) / .9) !important;
  outline-offset:-4px !important;
  transform:translateY(-1px) !important;
}

#primary-menu.top-menu .top-menu__item.active .top-menu__link,
.header.active #primary-menu.top-menu .top-menu__item.active .top-menu__link {
  background:linear-gradient(180deg, #fff 0%, rgb(var(--color-background-rgb) / .97) 52%, rgb(var(--color-background-rgb) / .9) 100%) !important;
  box-shadow:
    inset 0 0 0 1px rgb(var(--color-primary-rgb) / .2),
    inset 0 -.16rem .34rem rgb(var(--color-primary-rgb) / .08),
    0 .12rem .34rem rgb(var(--color-primary-hover-rgb) / .2) !important;
  color:var(--color-primary) !important;
  outline:0 !important;
  text-shadow:none !important;
  transform:none !important;
}

#primary-menu.top-menu .top-menu__item.active .top-menu__link::before,
.header.active #primary-menu.top-menu .top-menu__item.active .top-menu__link::before {
  background:var(--color-primary) !important;
  filter:none !important;
}

#primary-menu.top-menu .top-menu__item.active .top-menu__link:hover {
  background:linear-gradient(180deg, #fff 0%, rgb(var(--color-background-rgb) / .98) 50%, rgb(var(--color-background-rgb) / .92) 100%) !important;
  color:var(--color-primary-hover) !important;
  outline:0 !important;
  transform:none !important;
}

/* the highlighted item drew nothing on focus either */
#primary-menu.top-menu .top-menu__item.active .top-menu__link:focus-visible {
  background:linear-gradient(180deg, #fff 0%, rgb(var(--color-background-rgb) / .98) 50%, rgb(var(--color-background-rgb) / .92) 100%) !important;
  color:var(--color-primary-hover) !important;
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.25rem !important;
  box-shadow:
    0 0 0 .58rem rgba(255,255,255,.9),
    0 0 0 .88rem var(--color-primary) !important;
  transform:none !important;
}

.world-clocks,
.header.active .world-clocks,
html.z-scroll-stable-no-flight .world-clocks,
html.z-scroll-stable-no-flight .header.active .world-clocks {
  grid-column:1 !important;
  grid-row:4 !important;
  justify-self:center !important;
  margin:.18rem auto 0 !important;
}

.visitor-metric--persistent,
.header.active .visitor-metric--persistent,
html.z-scroll-stable-no-flight .visitor-metric--persistent,
html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
  grid-column:1 !important;
  grid-row:5 !important;
  justify-self:center !important;
}

html[dir="rtl"] #primary-menu.top-menu,
body[dir="rtl"] #primary-menu.top-menu,
.localized-page[dir="rtl"] #primary-menu.top-menu {
  direction:rtl !important;
}

html[dir="rtl"] #primary-menu.top-menu .top-menu__link,
body[dir="rtl"] #primary-menu.top-menu .top-menu__link,
.localized-page[dir="rtl"] #primary-menu.top-menu .top-menu__link {
  font-family:"Arial Hebrew", "Noto Sans Hebrew", "Noto Naskh Arabic", Tahoma, Arial, sans-serif !important;
}

@media (min-width:951px) {
  .header .container,
  .header.active .container {
    max-width:100% !important;
    padding-left:clamp(2rem, 4vw, 4rem) !important;
    padding-right:clamp(2rem, 4vw, 4rem) !important;
  }

  #primary-menu.top-menu,
  .header.active #primary-menu.top-menu {
    width:100% !important;
    max-width:98rem !important;
    min-height:6.2rem !important;
    padding:.42rem !important;
  }

  #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:5.35rem !important;
    gap:.34rem !important;
    padding:.64rem .7rem .58rem !important;
    font-size:1.24rem !important;
  }

  #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:2.2rem !important;
    height:2.2rem !important;
  }
}

@media (max-width:950px) {
  .header,
  .header.active {
    padding:1.9rem 0 1.35rem !important;
  }

  .header .container,
  .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:100% !important;
    max-width:100% !important;
    padding-left:1.4rem !important;
    padding-right:1.4rem !important;
  }

  .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    gap:.7rem !important;
    padding-top:0 !important;
  }

  #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu {
    width:100% !important;
    max-width:70rem !important;
    min-height:5.55rem !important;
    padding:.3rem !important;
    margin:.08rem auto .12rem !important;
  }

  #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:4.95rem !important;
    padding:.48rem .2rem .42rem !important;
    gap:.22rem !important;
    font-size:.98rem !important;
    line-height:.98 !important;
  }

  #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:1.82rem !important;
    height:1.82rem !important;
  }
}

@media (max-width:520px) {
  .header .container,
  .header.active .container {
    padding-left:1rem !important;
    padding-right:1rem !important;
  }

  #primary-menu.top-menu,
  .header.active #primary-menu.top-menu {
    width:100% !important;
    max-width:100% !important;
    min-height:5.2rem !important;
    padding:.24rem !important;
  }

  #primary-menu.top-menu .top-menu__item + .top-menu__item::before,
  .header.active #primary-menu.top-menu .top-menu__item + .top-menu__item::before {
    inset:.62rem auto .62rem 0 !important;
  }

  #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:4.72rem !important;
    padding:.42rem .08rem .34rem !important;
    gap:.16rem !important;
    font-size:.84rem !important;
    line-height:.96 !important;
  }

  #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:1.56rem !important;
    height:1.56rem !important;
    margin-bottom:.02rem !important;
  }

  #primary-menu.top-menu .top-menu__label-fit,
  .header.active #primary-menu.top-menu .top-menu__label-fit {
    line-height:.95 !important;
  }
}

@media (max-width:390px) {
  #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    font-size:.78rem !important;
  }

  #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:1.44rem !important;
    height:1.44rem !important;
  }
}

/* === V21401 harmonious responsive header balance === */
#primary-menu.top-menu .top-menu__link::before,
.header.active #primary-menu.top-menu .top-menu__link::before {
  position:relative !important;
  inset:auto !important;
  transform:none !important;
}

#primary-menu.top-menu .top-menu__link:hover {
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgb(var(--color-background-rgb) / .06) 52%, rgb(var(--color-primary-hover-rgb) / .12)) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.58), inset 0 -.12rem .24rem rgb(var(--color-primary-hover-rgb) / .14) !important;
  outline:0 !important;
  transform:none !important;
}

/* keyboard focus used to share the block above and was wiped by its outline:0 —
   the sheen stays, the site's own ring comes back */
#primary-menu.top-menu .top-menu__link:focus-visible {
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgb(var(--color-background-rgb) / .06) 52%, rgb(var(--color-primary-hover-rgb) / .12)) !important;
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.25rem !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.58),
    inset 0 -.12rem .24rem rgb(var(--color-primary-hover-rgb) / .14),
    0 0 0 .58rem rgba(255,255,255,.9),
    0 0 0 .88rem var(--color-primary) !important;
  transform:none !important;
}

@media (min-width:951px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    padding:clamp(2.2rem, 2.2vw, 3.6rem) 0 clamp(1.8rem, 2vw, 3rem) !important;
  }

  .header .container,
  .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:min(160rem, calc(100% - clamp(2.4rem, 4vw, 6rem))) !important;
    max-width:160rem !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    display:grid !important;
    grid-template-columns:clamp(24rem, 22vw, 34rem) minmax(48rem, 86rem) clamp(24rem, 22vw, 34rem) !important;
    grid-template-rows:auto auto auto !important;
    justify-content:center !important;
    justify-items:center !important;
    align-items:center !important;
    column-gap:clamp(.8rem, 1.45vw, 2.2rem) !important;
    row-gap:.72rem !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }

  .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    align-self:end !important;
    justify-self:center !important;
    width:min(100%, 28rem) !important;
    max-width:min(100%, 28rem) !important;
    margin:0 !important;
  }

  .header-logo__img,
  .header.active .header-logo__img,
  html.z-scroll-stable-no-flight .header-logo__img,
  html.z-scroll-stable-no-flight .header.active .header-logo__img {
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
  }

  .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    justify-content:center !important;
    justify-items:center !important;
    align-items:center !important;
    gap:clamp(.16rem, .34vw, .44rem) !important;
    width:min(100%, 28rem) !important;
    max-width:min(100%, 28rem) !important;
    margin:.18rem auto 0 !important;
    padding:0 !important;
  }

  .site-language-flags .flag-lang,
  .header.active .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    padding:0 !important;
  }

  .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:clamp(1.55rem, 1.45vw, 2.1rem) !important;
    line-height:1 !important;
  }

  #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    grid-column:2 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:100% !important;
    max-width:86rem !important;
    min-height:5.5rem !important;
    padding:.32rem !important;
    margin:0 auto !important;
  }

  #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:4.88rem !important;
    padding:.46rem .28rem .4rem !important;
    gap:.22rem !important;
    font-size:clamp(.86rem, .78vw, 1.08rem) !important;
    line-height:.98 !important;
  }

  #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:clamp(1.42rem, 1.35vw, 1.82rem) !important;
    height:clamp(1.42rem, 1.35vw, 1.82rem) !important;
    margin:0 auto .02rem !important;
  }

  .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(3, minmax(4.9rem, auto)) !important;
    gap:.34rem !important;
    width:100% !important;
    max-width:34rem !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 auto !important;
    padding:.44rem !important;
    border-radius:1.18rem !important;
  }

  .world-clock,
  .header.active .world-clock,
  html.z-scroll-stable-no-flight .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-width:0 !important;
    min-height:4.9rem !important;
    height:auto !important;
    padding:.34rem .22rem .38rem !important;
    border-radius:.78rem !important;
    grid-template-rows:1.05rem minmax(0, 1fr) !important;
  }

  .world-clock::before,
  .header.active .world-clock::before,
  html.z-scroll-stable-no-flight .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    inset:.06rem .18rem auto auto !important;
    font-size:clamp(1.55rem, 1.78vw, 2.42rem) !important;
    line-height:.84 !important;
  }

  .world-clock__face,
  .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    left:.24rem !important;
    top:.22rem !important;
    width:1.28rem !important;
    height:1.28rem !important;
  }

  .world-clock__time,
  .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    align-self:end !important;
    font-size:clamp(1.24rem, 1.22vw, 1.72rem) !important;
    line-height:1 !important;
  }

  .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    grid-column:1 / -1 !important;
    grid-row:3 !important;
    justify-self:center !important;
    width:min(90rem, 100%) !important;
    max-width:90rem !important;
    margin:.3rem auto 0 !important;
    padding:.36rem !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.36rem !important;
  }

  .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .visitor-metric--persistent .visitor-metric__chip {
    flex:0 1 auto !important;
    min-width:0 !important;
    min-height:2.38rem !important;
    padding:.32rem .72rem !important;
    font-size:1.1rem !important;
    line-height:1.12 !important;
    white-space:normal !important;
  }
}

@media (min-width:951px) and (max-width:1100px) {
  .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    grid-template-columns:minmax(18rem, 22rem) minmax(42rem, 1fr) minmax(18rem, 22rem) !important;
    column-gap:.8rem !important;
  }

  #primary-menu.top-menu,
  .header.active #primary-menu.top-menu {
    min-height:5.05rem !important;
    padding:.26rem !important;
  }

  #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:4.48rem !important;
    padding:.38rem .16rem .34rem !important;
    font-size:.82rem !important;
  }

  #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:1.34rem !important;
    height:1.34rem !important;
  }
}

/* === V21402 intermediate responsive header refinement === */
@media (min-width:521px) and (max-width:700px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    padding:1.75rem 0 1.15rem !important;
  }

  .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    width:clamp(17.5rem, 38vw, 21rem) !important;
    max-width:clamp(17.5rem, 38vw, 21rem) !important;
  }

  .header-logo__img,
  .header.active .header-logo__img {
    width:100% !important;
    max-width:100% !important;
  }

  .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    width:min(42rem, calc(100vw - 4rem)) !important;
    max-width:min(42rem, calc(100vw - 4rem)) !important;
    display:grid !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    gap:.24rem .42rem !important;
    margin:.08rem auto 0 !important;
  }

  .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon {
    font-size:1.62rem !important;
  }

  #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    width:min(58rem, calc(100vw - 3.2rem)) !important;
    max-width:min(58rem, calc(100vw - 3.2rem)) !important;
    min-height:5.08rem !important;
    padding:.26rem !important;
    margin:.05rem auto .08rem !important;
  }

  #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:4.5rem !important;
    padding:.38rem .14rem .34rem !important;
    gap:.14rem !important;
    font-size:.82rem !important;
    line-height:.96 !important;
  }

  #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:1.42rem !important;
    height:1.42rem !important;
  }

  .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    width:min(58rem, calc(100vw - 3.2rem)) !important;
    max-width:min(58rem, calc(100vw - 3.2rem)) !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(3, minmax(5.1rem, auto)) !important;
    gap:.32rem !important;
    padding:.42rem !important;
    margin:.16rem auto 0 !important;
  }

  .world-clock,
  .header.active .world-clock {
    min-height:5.1rem !important;
    padding:.36rem .22rem .4rem !important;
  }

  .world-clock__time,
  .header.active .world-clock__time {
    font-size:1.72rem !important;
  }

  .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    width:min(58rem, calc(100vw - 3.2rem)) !important;
    max-width:min(58rem, calc(100vw - 3.2rem)) !important;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:.36rem !important;
    padding:.42rem !important;
    margin:.18rem auto 0 !important;
  }

  .visitor-metric--persistent .visitor-metric__chip:last-child {
    grid-column:1 / -1 !important;
  }
}

@media (min-width:951px) and (max-width:1199px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    padding:2.2rem 0 1.45rem !important;
  }

  .header .container,
  .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:100% !important;
    max-width:100% !important;
    padding-left:2.4rem !important;
    padding-right:2.4rem !important;
  }

  .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) !important;
    grid-template-rows:auto auto auto auto auto !important;
    justify-items:center !important;
    align-items:start !important;
    gap:.66rem !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }

  .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:center !important;
    width:clamp(20rem, 24vw, 26rem) !important;
    max-width:clamp(20rem, 24vw, 26rem) !important;
    margin:0 !important;
  }

  .header-logo__img,
  .header.active .header-logo__img {
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
  }

  .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:repeat(21, minmax(0, 1fr)) !important;
    width:min(78rem, calc(100vw - 5.6rem)) !important;
    max-width:min(78rem, calc(100vw - 5.6rem)) !important;
    gap:.16rem !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon {
    font-size:clamp(1.42rem, 1.65vw, 1.82rem) !important;
  }

  #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    grid-column:1 !important;
    grid-row:3 !important;
    width:min(82rem, calc(100vw - 5.6rem)) !important;
    max-width:min(82rem, calc(100vw - 5.6rem)) !important;
    min-height:5.35rem !important;
    padding:.3rem !important;
    margin:.04rem auto .1rem !important;
  }

  #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:4.75rem !important;
    padding:.42rem .28rem .36rem !important;
    gap:.18rem !important;
    font-size:.94rem !important;
    line-height:.98 !important;
  }

  #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:1.56rem !important;
    height:1.56rem !important;
  }

  .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:1 !important;
    grid-row:4 !important;
    width:min(82rem, calc(100vw - 5.6rem)) !important;
    max-width:min(82rem, calc(100vw - 5.6rem)) !important;
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(2, minmax(5.72rem, auto)) !important;
    gap:.4rem !important;
    min-height:0 !important;
    height:auto !important;
    margin:.08rem auto 0 !important;
    padding:.5rem !important;
    border-radius:1.18rem !important;
  }

  .world-clock,
  .header.active .world-clock {
    min-height:5.72rem !important;
    padding:.42rem .28rem .46rem !important;
    border-radius:.8rem !important;
  }

  .world-clock::before,
  .header.active .world-clock::before {
    inset:.08rem .16rem auto auto !important;
    font-size:1.8rem !important;
    line-height:.82 !important;
  }

  .world-clock__face,
  .header.active .world-clock__face {
    left:.42rem !important;
    top:.4rem !important;
    width:1.55rem !important;
    height:1.55rem !important;
  }

  .world-clock__time,
  .header.active .world-clock__time {
    font-size:1.72rem !important;
    line-height:1 !important;
  }

  .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    grid-column:1 !important;
    grid-row:5 !important;
    width:min(82rem, calc(100vw - 5.6rem)) !important;
    max-width:min(82rem, calc(100vw - 5.6rem)) !important;
    margin:.1rem auto 0 !important;
    padding:.42rem !important;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:.36rem !important;
  }

  .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip {
    min-height:2.42rem !important;
    padding:.32rem .66rem !important;
    font-size:1.1rem !important;
    line-height:1.12 !important;
  }

  .visitor-metric--persistent .visitor-metric__chip:last-child {
    grid-column:1 / -1 !important;
  }
}

/* V21437 - final iPad wrapper guard */
@media (min-width:700px) and (max-width:1366px) {
  .header .header-nav,
  .header.active .header-nav,
  html.z-flight-v77 .header .header-nav,
  html.z-flight-v77 .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav,
  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks,
  .header .visitor-metric--persistent,
  .header .visitor-metric.visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  .header.active .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric.visitor-metric--persistent {
    background:transparent !important;
    background-image:none !important;
    border:0 !important;
    box-shadow:none !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
  }

  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    padding:0 !important;
  }
}

@media (min-width:700px) and (max-width:950px) {
  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    height:auto !important;
    min-height:0 !important;
  }

  .header .visitor-metric--persistent,
  .header .visitor-metric.visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  .header.active .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric.visitor-metric--persistent {
    display:grid !important;
    grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
    grid-auto-rows:auto !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(1),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(1),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(1) {
    grid-column:1 / span 1 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(2),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(2),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(2) {
    grid-column:2 / span 2 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(3),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(3),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(3) {
    grid-column:4 / span 3 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(4),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(4),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(4) {
    grid-column:1 / span 3 !important;
    grid-row:2 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(5),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(5),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(5) {
    grid-column:4 / span 3 !important;
    grid-row:2 !important;
  }
}

/* V21437 - iPad header wrapper cleanup and two-line visitor strip */
@media (min-width:700px) and (max-width:1366px) {
  .header .header-nav,
  .header.active .header-nav,
  html.z-flight-v77 .header .header-nav,
  html.z-flight-v77 .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    background:transparent !important;
    background-image:none !important;
    border:0 !important;
    box-shadow:none !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
  }

  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    background:transparent !important;
    background-image:none !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    padding:0 !important;
  }

  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    border:1px solid rgb(var(--color-primary-rgb) / .15) !important;
    border-radius:.74rem !important;
    background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgb(var(--color-background-rgb) / .88) 100%) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.94), 0 .34rem .95rem rgb(var(--color-primary-rgb) / .06) !important;
  }
}

@media (min-width:700px) and (max-width:950px) {
  .header,
  .header.active,
  html.z-flight-v77 .header,
  html.z-flight-v77 .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    padding:1.1rem 0 1.35rem !important;
  }

  .header .container,
  .header.active .container,
  html.z-flight-v77 .header .container,
  html.z-flight-v77 .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:min(88rem, calc(100% - 3rem)) !important;
    max-width:88rem !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .header .header-nav,
  .header.active .header-nav,
  html.z-flight-v77 .header .header-nav,
  html.z-flight-v77 .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) !important;
    grid-template-rows:auto auto auto auto auto !important;
    justify-items:center !important;
    align-items:start !important;
    row-gap:.58rem !important;
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    transform:none !important;
  }

  .header .header-logo,
  .header.active .header-logo,
  html.z-flight-v77 .header .header-logo,
  html.z-flight-v77 .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    width:min(26rem, 62vw) !important;
    max-width:min(26rem, 62vw) !important;
    margin:0 auto !important;
    padding:0 !important;
    transform:none !important;
  }

  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-flight-v77 .header .site-language-flags,
  html.z-flight-v77 .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    width:min(70rem, 100%) !important;
    max-width:min(70rem, 100%) !important;
    margin:0 auto !important;
    transform:none !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    grid-column:1 !important;
    grid-row:3 !important;
    width:min(76rem, 100%) !important;
    max-width:min(76rem, 100%) !important;
    min-height:5.4rem !important;
    margin:.1rem auto .05rem !important;
    transform:none !important;
  }

  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:1 !important;
    grid-row:4 !important;
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
    grid-auto-rows:minmax(4.75rem, auto) !important;
    gap:.46rem !important;
    width:min(70rem, 100%) !important;
    max-width:min(70rem, 100%) !important;
    min-height:0 !important;
    height:auto !important;
    margin:.1rem auto 0 !important;
    transform:none !important;
  }

  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-height:4.75rem !important;
    height:auto !important;
    padding:.42rem .36rem !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-flight-v77 .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    font-size:1.48rem !important;
  }

  .header .visitor-metric--persistent,
  .header .visitor-metric.visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  .header.active .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric.visitor-metric--persistent {
    position:static !important;
    grid-column:1 !important;
    grid-row:5 !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.28rem .34rem !important;
    width:min(68rem, calc(100% - 4rem)) !important;
    max-width:min(68rem, calc(100% - 4rem)) !important;
    min-height:0 !important;
    height:auto !important;
    margin:.28rem auto 0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    overflow:visible !important;
    text-align:center !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }

  .header .visitor-metric--persistent.is-visible,
  .header .visitor-metric.visitor-metric--persistent.is-visible,
  .header.active .visitor-metric--persistent.is-visible,
  .header.active .visitor-metric.visitor-metric--persistent.is-visible,
  .header .visitor-metric--persistent.is-hiding,
  .header .visitor-metric.visitor-metric--persistent.is-hiding,
  .header.active .visitor-metric--persistent.is-hiding,
  .header.active .visitor-metric.visitor-metric--persistent.is-hiding {
    display:grid !important;
    visibility:visible !important;
    opacity:1 !important;
    transform:none !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip,
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric.visitor-metric--persistent .visitor-metric__chip,
  html.z-flight-v77 .header .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent .visitor-metric__chip {
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:1.92rem !important;
    padding:.2rem .36rem !important;
    font-size:1.1rem !important;
    line-height:1.08 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(1),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(1),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(1) {
    grid-column:1 / span 1 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(2),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(2),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(2) {
    grid-column:2 / span 2 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(3),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(3),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(3) {
    grid-column:4 / span 3 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(4),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(4),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(4) {
    grid-column:1 / span 3 !important;
    grid-row:2 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(5),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(5),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(5) {
    grid-column:4 / span 3 !important;
    grid-row:2 !important;
  }
}

/* V21437 - two-line welcome/status strip under nav */
@media (min-width:1200px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    padding:1.05rem 0 .85rem !important;
  }

  .header .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    row-gap:.28rem !important;
  }

  .header .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    min-height:11.35rem !important;
    grid-template-rows:repeat(3, minmax(3.58rem, auto)) !important;
  }

  .header .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    display:grid !important;
    grid-template-columns:auto auto minmax(0, 1fr) !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    justify-content:center !important;
    justify-items:center !important;
    gap:.22rem .3rem !important;
    width:64rem !important;
    max-width:64rem !important;
    padding:.24rem .3rem !important;
    margin:0 auto !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent .visitor-metric__chip {
    min-height:1.78rem !important;
    padding:.18rem .46rem !important;
    font-size:1.1rem !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip--lead,
  .header.active .visitor-metric--persistent .visitor-metric__chip--lead {
    grid-column:1 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip--ip,
  .header.active .visitor-metric--persistent .visitor-metric__chip--ip {
    grid-column:2 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip--device,
  .header.active .visitor-metric--persistent .visitor-metric__chip--device {
    grid-column:3 !important;
    grid-row:1 !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip--time,
  .header.active .visitor-metric--persistent .visitor-metric__chip--time {
    grid-column:1 / span 2 !important;
    grid-row:2 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip--last,
  .header.active .visitor-metric--persistent .visitor-metric__chip--last {
    grid-column:3 !important;
    grid-row:2 !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
}

@media (min-width:951px) and (max-width:1199px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    padding:.9rem 0 .75rem !important;
  }

  .header .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    grid-template-columns:minmax(17.8rem, 18.4rem) minmax(48rem, 50rem) minmax(17.8rem, 18.4rem) !important;
    row-gap:.24rem !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    width:50rem !important;
    max-width:50rem !important;
  }

  .header .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    display:grid !important;
    grid-template-columns:auto auto minmax(0, 1fr) !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    justify-content:center !important;
    justify-items:center !important;
    gap:.16rem .18rem !important;
    width:50rem !important;
    max-width:50rem !important;
    padding:.18rem .22rem !important;
    margin:0 auto !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent .visitor-metric__chip {
    min-height:1.5rem !important;
    padding:.14rem .3rem !important;
    font-size:1.1rem !important;
    line-height:1.04 !important;
    white-space:nowrap !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip--lead,
  .header.active .visitor-metric--persistent .visitor-metric__chip--lead {
    grid-column:1 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip--ip,
  .header.active .visitor-metric--persistent .visitor-metric__chip--ip {
    grid-column:2 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip--device,
  .header.active .visitor-metric--persistent .visitor-metric__chip--device {
    grid-column:3 !important;
    grid-row:1 !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip--time,
  .header.active .visitor-metric--persistent .visitor-metric__chip--time {
    grid-column:1 / span 2 !important;
    grid-row:2 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip--last,
  .header.active .visitor-metric--persistent .visitor-metric__chip--last {
    grid-column:3 !important;
    grid-row:2 !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
}

@media (min-width:1200px) {
  .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    grid-template-columns:clamp(24rem, 22vw, 34rem) minmax(52rem, 86rem) clamp(24rem, 22vw, 34rem) !important;
  }
}

/* === V21402 narrow mobile proportion correction === */
@media (max-width:520px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    padding:1.65rem 0 1.12rem !important;
  }

  .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    width:clamp(16.8rem, 46vw, 20rem) !important;
    max-width:clamp(16.8rem, 46vw, 20rem) !important;
  }

  .header-logo__img,
  .header.active .header-logo__img,
  html.z-scroll-stable-no-flight .header-logo__img,
  html.z-scroll-stable-no-flight .header.active .header-logo__img {
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
  }

  .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    margin:.06rem auto 0 !important;
    gap:.22rem .34rem !important;
  }

  #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    margin:.04rem auto .1rem !important;
  }
}

/* === V21406 laptop clock legibility refinement === */
@media (min-width:701px) and (max-width:950px) {
  .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:stretch !important;
    align-content:center !important;
    gap:.42rem !important;
    min-height:0 !important;
    height:auto !important;
  }

  .world-clock,
  .header.active .world-clock,
  html.z-scroll-stable-no-flight .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    flex:0 0 calc((100% - 1.68rem) / 5) !important;
    min-height:6.12rem !important;
    height:auto !important;
    padding:.54rem .66rem .48rem 5rem !important;
    align-items:start !important;
    justify-items:end !important;
  }

  .world-clock::before,
  .header.active .world-clock::before,
  html.z-scroll-stable-no-flight .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    inset:.48rem .62rem auto auto !important;
    font-size:clamp(1.86rem, 2.8vw, 2.12rem) !important;
    line-height:.82 !important;
  }

  .world-clock__face,
  .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    left:1.08rem !important;
    top:50% !important;
    width:4.05rem !important;
    height:4.05rem !important;
    transform:translateY(-50%) !important;
  }

  .world-clock__hand,
  .header.active .world-clock__hand,
  html.z-scroll-stable-no-flight .world-clock__hand,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand {
    width:.18rem !important;
  }

  .world-clock__hand--hour,
  .header.active .world-clock__hand--hour,
  html.z-scroll-stable-no-flight .world-clock__hand--hour,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand--hour {
    width:.22rem !important;
    height:1.1rem !important;
  }

  .world-clock__hand--minute,
  .header.active .world-clock__hand--minute,
  html.z-scroll-stable-no-flight .world-clock__hand--minute,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand--minute {
    height:1.48rem !important;
  }

  .world-clock__pin,
  .header.active .world-clock__pin,
  html.z-scroll-stable-no-flight .world-clock__pin,
  html.z-scroll-stable-no-flight .header.active .world-clock__pin {
    width:.48rem !important;
    height:.48rem !important;
    border-width:.09rem !important;
  }

  .world-clock__time,
  .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    position:absolute !important;
    left:.9rem !important;
    right:auto !important;
    top:2.18rem !important;
    width:6.2rem !important;
    max-width:none !important;
    place-self:auto !important;
    align-self:auto !important;
    justify-self:auto !important;
    transform:none !important;
    font-size:clamp(1.72rem, 2.55vw, 1.98rem) !important;
    line-height:1 !important;
    text-align:right !important;
  }
}

@media (min-width:951px) and (max-width:1199px) {
  .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:stretch !important;
    align-content:center !important;
    gap:.4rem !important;
    min-height:0 !important;
    height:auto !important;
  }

  .world-clock,
  .header.active .world-clock,
  html.z-scroll-stable-no-flight .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    flex:0 0 calc((100% - 1.6rem) / 5) !important;
    min-height:6.38rem !important;
    height:auto !important;
    padding:.56rem .72rem .5rem 5.7rem !important;
    align-items:start !important;
    justify-items:end !important;
  }

  .world-clock::before,
  .header.active .world-clock::before,
  html.z-scroll-stable-no-flight .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    inset:.54rem .7rem auto auto !important;
    font-size:2.04rem !important;
    line-height:.82 !important;
  }

  .world-clock__face,
  .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    left:1.52rem !important;
    top:50% !important;
    width:4.65rem !important;
    height:4.65rem !important;
    transform:translateY(-50%) !important;
  }

  .world-clock__hand,
  .header.active .world-clock__hand,
  html.z-scroll-stable-no-flight .world-clock__hand,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand {
    width:.2rem !important;
  }

  .world-clock__hand--hour,
  .header.active .world-clock__hand--hour,
  html.z-scroll-stable-no-flight .world-clock__hand--hour,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand--hour {
    width:.24rem !important;
    height:1.26rem !important;
  }

  .world-clock__hand--minute,
  .header.active .world-clock__hand--minute,
  html.z-scroll-stable-no-flight .world-clock__hand--minute,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand--minute {
    height:1.68rem !important;
  }

  .world-clock__pin,
  .header.active .world-clock__pin,
  html.z-scroll-stable-no-flight .world-clock__pin,
  html.z-scroll-stable-no-flight .header.active .world-clock__pin {
    width:.52rem !important;
    height:.52rem !important;
    border-width:.1rem !important;
  }

  .world-clock__time,
  .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    position:absolute !important;
    left:1.9rem !important;
    right:auto !important;
    top:2.26rem !important;
    width:6.4rem !important;
    max-width:none !important;
    place-self:auto !important;
    align-self:auto !important;
    justify-self:auto !important;
    transform:none !important;
    font-size:1.9rem !important;
    line-height:1 !important;
    text-align:right !important;
  }
}

@media (min-width:521px) and (max-width:700px) {
  .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    width:min(38rem, calc(100vw - 3.2rem)) !important;
    max-width:min(38rem, calc(100vw - 3.2rem)) !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:stretch !important;
    align-content:center !important;
    gap:.3rem !important;
    padding:.36rem !important;
    margin:.14rem auto 0 !important;
    border-radius:1rem !important;
    min-height:0 !important;
    height:auto !important;
  }

  .world-clock,
  .header.active .world-clock,
  html.z-scroll-stable-no-flight .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    flex:0 0 calc((100% - .6rem) / 3) !important;
    min-height:4.9rem !important;
    height:auto !important;
    padding:.34rem .5rem .34rem 3.68rem !important;
    border-radius:.68rem !important;
    align-items:start !important;
    justify-items:end !important;
  }

  .world-clock::before,
  .header.active .world-clock::before,
  html.z-scroll-stable-no-flight .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    inset:.36rem .5rem auto auto !important;
    font-size:1.58rem !important;
    line-height:.82 !important;
  }

  .world-clock__face,
  .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    left:.6rem !important;
    top:50% !important;
    width:3rem !important;
    height:3rem !important;
    transform:translateY(-50%) !important;
  }

  .world-clock__hand,
  .header.active .world-clock__hand,
  html.z-scroll-stable-no-flight .world-clock__hand,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand {
    width:.14rem !important;
  }

  .world-clock__hand--hour,
  .header.active .world-clock__hand--hour,
  html.z-scroll-stable-no-flight .world-clock__hand--hour,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand--hour {
    width:.18rem !important;
    height:.82rem !important;
  }

  .world-clock__hand--minute,
  .header.active .world-clock__hand--minute,
  html.z-scroll-stable-no-flight .world-clock__hand--minute,
  html.z-scroll-stable-no-flight .header.active .world-clock__hand--minute {
    height:1.08rem !important;
  }

  .world-clock__pin,
  .header.active .world-clock__pin,
  html.z-scroll-stable-no-flight .world-clock__pin,
  html.z-scroll-stable-no-flight .header.active .world-clock__pin {
    width:.36rem !important;
    height:.36rem !important;
    border-width:.07rem !important;
  }

  .world-clock__time,
  .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    position:absolute !important;
    left:.52rem !important;
    right:auto !important;
    top:1.48rem !important;
    width:4.9rem !important;
    max-width:none !important;
    place-self:auto !important;
    align-self:auto !important;
    justify-self:auto !important;
    transform:none !important;
    font-size:1.42rem !important;
    line-height:1 !important;
    text-align:right !important;
  }
}
/* V21417 - readable article meta panels and centered locale header stack */
body.page-blog .z-style-article .article-meta-block {
  background: #f7fbff !important;
  border: 1px solid rgb(var(--color-primary-rgb) / 0.28) !important;
  box-shadow: 0 0.9rem 2rem rgb(var(--color-primary-rgb) / 0.08) !important;
  color: #24384f !important;
  text-shadow: none !important;
}

body.page-blog .z-style-article .article-meta-block p,
body.page-blog .z-style-article .article-meta-block time,
body.page-blog .z-style-article .article-meta-block span {
  color: #24384f !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

body.page-blog .z-style-article .article-meta-block .z-chip,
body.page-blog .z-style-article .article-meta-block a.z-chip {
  background: #fff !important;
  border: 1px solid rgb(var(--color-primary-rgb) / 0.35) !important;
  color: var(--color-primary) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

body.page-blog .z-style-article .article-meta-block .article-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.6rem !important;
}

body.page-blog .z-style-article .article-meta-block .article-tags .z-chip {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 2.55rem !important;
  white-space: normal !important;
  text-align: center !important;
}

.header .header-nav,
.header.active .header-nav,
html.z-scroll-stable-no-flight .header .header-nav,
html.z-scroll-stable-no-flight .header.active .header-nav {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: auto auto auto auto auto !important;
  align-items: start !important;
  justify-items: center !important;
  gap: clamp(0.55rem, 1vw, 0.86rem) !important;
  width: 100% !important;
  max-width: 100% !important;
}

.header .header-logo,
.header .site-language-flags,
.header #primary-menu,
.header .world-clocks,
.header .visitor-metric--persistent {
  grid-column: 1 !important;
  justify-self: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.header .site-language-flags {
  max-width: min(78rem, calc(100vw - 3rem)) !important;
  justify-content: center !important;
}

.header #primary-menu.top-menu {
  max-width: min(98rem, calc(100vw - 3rem)) !important;
  justify-content: center !important;
}

.header .world-clocks,
.header .visitor-metric--persistent {
  max-width: min(98rem, calc(100vw - 3rem)) !important;
  text-align: center !important;
}

.header .visitor-metric--persistent .visitor-metric__row,
.header .visitor-metric--persistent .visitor-metric__chip {
  justify-content: center !important;
  text-align: center !important;
}

body.page-blog .z-featured-guide__thumb img,
body.page-blog .z-blog-card__thumb img,
body.page-blog .blog-list-icon img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* localization and index refresh */
body.page-blog .z-blog-card__body > .z-social-actions {
  grid-column: 1 / -1 !important;
}

body.page-blog .z-blog-card__thumb,
body.page-blog .z-blog-card__thumb img {
  width: 88px !important;
  height: 64px !important;
  max-width: 88px !important;
  max-height: 64px !important;
}

body.page-blog .z-social-actions .z-social-like,
body.page-blog .z-social-actions--index .z-social-like {
  border: 1px solid rgb(var(--color-primary-rgb) / .28) !important;
  border-radius: 999px !important;
  padding-left: .76rem !important;
  padding-right: .76rem !important;
  background: rgb(255 255 255 / .72) !important;
}

body.page-blog .z-social-actions .z-social-like.is-liked,
body.page-blog .z-social-actions--index .z-social-like.is-liked {
  color: #b20f2c !important;
  border-color: rgb(178 15 44 / .42) !important;
  background: rgb(178 15 44 / .07) !important;
}

/* V21437 blog-card social row alignment */
body.page-blog .z-blog-card__body > .z-social-actions--index {
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:.26rem !important;
  width:100% !important;
  min-width:0 !important;
  overflow:visible !important;
  white-space:nowrap !important;
}

body.page-blog .z-blog-card .z-social-actions--index .z-social-btn,
body.page-blog .z-blog-card .z-social-actions--index .z-social-like {
  flex:0 0 auto !important;
  align-self:center !important;
  height:2.35rem !important;
  min-height:2.35rem !important;
  max-height:2.35rem !important;
  margin:0 !important;
  line-height:1 !important;
}

body.page-blog .z-blog-card .z-social-actions--index .z-social-btn {
  width:2.35rem !important;
  min-width:2.35rem !important;
  max-width:2.35rem !important;
  padding:.2rem !important;
}

body.page-blog .z-blog-card .z-social-actions--index .z-social-btn::before {
  width:1.62rem !important;
  height:1.62rem !important;
  font-size:1rem !important;
  line-height:1.62rem !important;
}

body.page-blog .z-blog-card .z-social-actions--index .z-social-btn[data-z-share="native"] {
  width:auto !important;
  min-width:auto !important;
  max-width:none !important;
  padding:.2rem .28rem !important;
  font-size:.9rem !important;
  line-height:1 !important;
}

body.page-blog .z-blog-card .z-social-actions--index .z-social-btn[data-z-share="linkedin"]::before {
  font-size:.98rem !important;
}

body.page-blog .z-blog-card .z-social-actions--index .z-social-btn[data-z-share="whatsapp"]::before {
  font-size:.84rem !important;
}

body.page-blog .z-blog-card .z-social-actions--index .z-social-like {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:4.8rem !important;
  max-width:6.1rem !important;
  padding:.2rem .42rem !important;
  font-size:.86rem !important;
  white-space:nowrap !important;
}

body.page-blog .z-style-article {
  position: relative !important;
}

body.page-blog .z-style-article > .z-share.z-social-actions {
  clear: both !important;
}

@media (min-width: 760px) {
  body.page-blog .z-style-article > .z-share.z-social-actions {
    position: absolute !important;
    top: 2.15rem !important;
    right: 2.15rem !important;
    z-index: 4 !important;
    width: auto !important;
    max-width: min(42rem, calc(100% - 4.3rem)) !important;
    margin: 0 !important;
    padding: .58rem .72rem !important;
    border: 1px solid rgb(var(--color-primary-rgb) / .14) !important;
    border-radius: 999px !important;
    background: rgb(255 255 255 / .94) !important;
    box-shadow: 0 .9rem 2rem rgb(var(--color-primary-rgb) / .08) !important;
    justify-content: flex-end !important;
  }

  body.page-blog .z-style-article > .z-share.z-social-actions .z-social-btn,
  body.page-blog .z-style-article > .z-share.z-social-actions .z-social-like {
    height: 2.76rem !important;
    min-height: 2.76rem !important;
    max-height: 2.76rem !important;
  }

  body.page-blog .z-style-article > .z-share.z-social-actions .z-social-btn:not([data-z-share="native"]) {
    width: 2.76rem !important;
    min-width: 2.76rem !important;
    max-width: 2.76rem !important;
  }

  body.page-blog .z-style-article > .z-share.z-social-actions .z-social-btn::before {
    width: 1.82rem !important;
    height: 1.82rem !important;
    line-height: 1.82rem !important;
  }
}

@media (max-width: 700px) {
  body.page-blog .z-blog-card__thumb,
  body.page-blog .z-blog-card__thumb img,

}

/* protein article localization refresh */
[dir="rtl"] body.page-blog .protein-intake-article.z-style-article,
[dir="rtl"] body.page-blog .protein-intake-article.article-body,
[dir="rtl"] body.page-blog .protein-intake-article .article-body {
  direction: rtl !important;
  unicode-bidi: isolate !important;
}

[dir="rtl"] body.page-blog .protein-intake-article p,
[dir="rtl"] body.page-blog .protein-intake-article li,
[dir="rtl"] body.page-blog .protein-intake-article .article-kicker,
[dir="rtl"] body.page-blog .protein-intake-article .article-meta-block,
[dir="rtl"] body.page-blog .protein-intake-article .article-meta-block p,
[dir="rtl"] body.page-blog .protein-intake-article .article-note,
[dir="rtl"] body.page-blog .protein-intake-article .z-style-notice,
[dir="rtl"] body.page-blog .protein-intake-article .related-guides,
[dir="rtl"] body.page-blog .protein-intake-article .related-guides p,
[dir="rtl"] body.page-blog .protein-intake-article .related-guides li,
[dir="rtl"] body.page-blog .protein-intake-article .z-style-references,
[dir="rtl"] body.page-blog .protein-intake-article .z-style-references p,
[dir="rtl"] body.page-blog .protein-intake-article .z-style-references li {
  text-align: right !important;
}

[dir="rtl"] body.page-blog .protein-intake-article h1,
[dir="rtl"] body.page-blog .protein-intake-article .article-lead,
[dir="rtl"] body.page-blog .protein-intake-article .article-visual,
[dir="rtl"] body.page-blog .protein-intake-article .article-visual figcaption {
  text-align: center !important;
}

[dir="rtl"] body.page-blog .protein-intake-article ul,
[dir="rtl"] body.page-blog .protein-intake-article ol {
  margin: 1rem 2.8rem 2rem 0 !important;
  padding-left: 0 !important;
  padding-right: 1.4rem !important;
}

[dir="rtl"] body.page-blog .protein-intake-article .article-tags {
  justify-content: flex-start !important;
}

[dir="rtl"] body.page-blog .protein-intake-article .z-style-notice,
[dir="rtl"] body.page-blog .protein-intake-article .article-note {
  border-left: 1px solid rgb(var(--color-primary-rgb) / .18) !important;
  border-right: 5px solid var(--color-secondary) !important;
}

@media (min-width:720px) {
  [dir="rtl"] body.page-blog .protein-intake-article .article-visual {
    float: left !important;
    margin: .35rem 2.4rem 1.45rem 0 !important;
  }

  [dir="rtl"] body.page-blog .protein-intake-article .article-visual:nth-of-type(even) {
    float: right !important;
    margin: .35rem 0 1.45rem 2.4rem !important;
  }
}

@media (min-width:760px) {
  [dir="rtl"] body.page-blog .protein-intake-article.z-style-article > .z-share.z-social-actions {
    left: 2.15rem !important;
    right: auto !important;
    justify-content: flex-start !important;
  }
}

@media (max-width:719px) {
  [dir="rtl"] body.page-blog .protein-intake-article .article-visual {
    float: none !important;
    margin: 1.9rem auto 2.2rem !important;
  }
}

/* V21437 - Laptop L shared header and home hero repair */
@media (min-width:1200px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    min-height:0 !important;
    padding:1.6rem 0 1.25rem !important;
  }

  .header .container,
  .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:min(132rem, calc(100% - 4rem)) !important;
    max-width:132rem !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    display:grid !important;
    grid-template-columns:minmax(22rem, 25rem) minmax(56rem, 1fr) minmax(15.5rem, 17rem) !important;
    grid-template-rows:auto auto auto !important;
    align-items:center !important;
    justify-items:center !important;
    justify-content:center !important;
    column-gap:clamp(1rem, 1.4vw, 2rem) !important;
    row-gap:.42rem !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }

  .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    align-self:end !important;
    justify-self:center !important;
    width:min(100%, 23.5rem) !important;
    max-width:min(100%, 23.5rem) !important;
    margin:0 !important;
  }

  .header-logo__img,
  .header.active .header-logo__img,
  html.z-scroll-stable-no-flight .header-logo__img,
  html.z-scroll-stable-no-flight .header.active .header-logo__img {
    width:100% !important;
    max-width:100% !important;
    max-height:4.8rem !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    justify-content:center !important;
    justify-items:center !important;
    align-items:center !important;
    gap:.1rem .18rem !important;
    width:min(100%, 23.5rem) !important;
    max-width:min(100%, 23.5rem) !important;
    margin:.08rem auto 0 !important;
    padding:0 !important;
  }

  .site-language-flags .flag-lang,
  .header.active .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    height:1.72rem !important;
    padding:0 !important;
    border-radius:.42rem !important;
  }

  .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:1.34rem !important;
    line-height:1 !important;
  }

  #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    grid-column:2 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:min(100%, 60rem) !important;
    max-width:60rem !important;
    min-height:4.85rem !important;
    padding:.28rem !important;
    margin:0 auto !important;
  }

  #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:4.25rem !important;
    padding:.36rem .22rem .32rem !important;
    gap:.14rem !important;
    font-size:clamp(.78rem, .64vw, .94rem) !important;
    line-height:.98 !important;
  }

  #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:1.35rem !important;
    height:1.35rem !important;
    margin:0 auto 0 !important;
  }

  .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(3, minmax(4.2rem, auto)) !important;
    gap:.22rem !important;
    width:16.8rem !important;
    max-width:16.8rem !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 auto !important;
    padding:.32rem !important;
    border-radius:1.05rem !important;
  }

  .world-clock,
  .header.active .world-clock,
  html.z-scroll-stable-no-flight .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-width:0 !important;
    min-height:4.2rem !important;
    height:auto !important;
    padding:.3rem .2rem .34rem !important;
    border-radius:.68rem !important;
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) !important;
    grid-template-rows:1.05rem 1.45rem !important;
    align-items:center !important;
    justify-items:center !important;
    overflow:hidden !important;
  }

  .world-clock::before,
  .header.active .world-clock::before,
  html.z-scroll-stable-no-flight .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    content:attr(data-clock-code) !important;
    position:relative !important;
    inset:auto !important;
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    width:auto !important;
    height:auto !important;
    max-width:100% !important;
    overflow:hidden !important;
    color:var(--color-primary) !important;
    opacity:.42 !important;
    font-size:.78rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    letter-spacing:.04em !important;
    text-align:center !important;
    white-space:nowrap !important;
    z-index:1 !important;
  }

  .world-clock__face,
  .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    position:relative !important;
    left:auto !important;
    top:auto !important;
    display:none !important;
    grid-column:1 !important;
    grid-row:2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:0 !important;
    height:0 !important;
    transform:none !important;
    z-index:2 !important;
  }

  .world-clock__time,
  .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    grid-column:1 !important;
    grid-row:2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:auto !important;
    max-width:100% !important;
    transform:none !important;
    font-size:1.22rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-align:center !important;
    white-space:nowrap !important;
    z-index:2 !important;
  }

  .visitor-metric--persistent,
  .header .visitor-metric.visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  .header.active .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    grid-column:1 / -1 !important;
    grid-row:3 !important;
    justify-self:center !important;
    width:88rem !important;
    max-width:100% !important;
    margin:.24rem auto 0 !important;
    padding:.28rem !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.28rem !important;
    text-align:center !important;
  }

  .visitor-metric--persistent .visitor-metric__row,
  .header.active .visitor-metric--persistent .visitor-metric__row {
    justify-content:center !important;
  }

  .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .visitor-metric--persistent .visitor-metric__chip {
    min-height:2.16rem !important;
    padding:.26rem .56rem !important;
    font-size:1.1rem !important;
    line-height:1.08 !important;
    white-space:normal !important;
  }

  .hero,
  html.z-scroll-stable-no-flight .hero {
    height:clamp(34rem, 28vw, 40rem) !important;
    min-height:34rem !important;
    max-width:min(104rem, 84vw) !important;
    margin:1.6rem auto 2.2rem !important;
  }

  body.page-home .welcome-main {
    padding-top:3rem !important;
  }
}

/* V21437 - intermediate desktop/device-mode repair */
@media (min-width:951px) and (max-width:1199px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    min-height:0 !important;
    padding:1.35rem 0 1.15rem !important;
  }

  .header .container,
  .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:calc(100% - 2.4rem) !important;
    max-width:104rem !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    display:grid !important;
    grid-template-columns:minmax(16.5rem, 18rem) minmax(43rem, 1fr) minmax(13.5rem, 14.8rem) !important;
    grid-template-rows:auto auto auto !important;
    align-items:center !important;
    justify-items:center !important;
    justify-content:center !important;
    column-gap:.9rem !important;
    row-gap:.34rem !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }

  .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    align-self:end !important;
    justify-self:center !important;
    width:17.6rem !important;
    max-width:17.6rem !important;
    margin:0 !important;
  }

  .header-logo__img,
  .header.active .header-logo__img,
  html.z-scroll-stable-no-flight .header-logo__img,
  html.z-scroll-stable-no-flight .header.active .header-logo__img {
    width:100% !important;
    max-width:100% !important;
    max-height:3.8rem !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    width:17.6rem !important;
    max-width:17.6rem !important;
    gap:.08rem .14rem !important;
    margin:.06rem auto 0 !important;
    padding:0 !important;
  }

  .site-language-flags .flag-lang,
  .header.active .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    height:1.5rem !important;
    padding:0 !important;
    border-radius:.36rem !important;
  }

  .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:1.14rem !important;
    line-height:1 !important;
  }

  #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    grid-column:2 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:min(100%, 45rem) !important;
    max-width:45rem !important;
    min-height:4.35rem !important;
    padding:.24rem !important;
    margin:0 auto !important;
  }

  #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:3.82rem !important;
    padding:.3rem .16rem .28rem !important;
    gap:.1rem !important;
    font-size:.72rem !important;
    line-height:.96 !important;
  }

  #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:1.18rem !important;
    height:1.18rem !important;
    margin:0 auto 0 !important;
  }

  .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(3, minmax(3.75rem, auto)) !important;
    gap:.18rem !important;
    width:14.4rem !important;
    max-width:14.4rem !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 auto !important;
    padding:.28rem !important;
    border-radius:.95rem !important;
  }

  .world-clock,
  .header.active .world-clock,
  html.z-scroll-stable-no-flight .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-width:0 !important;
    min-height:3.75rem !important;
    height:auto !important;
    padding:.26rem .16rem .3rem !important;
    border-radius:.58rem !important;
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) !important;
    grid-template-rows:.9rem 1.28rem !important;
    align-items:center !important;
    justify-items:center !important;
    overflow:hidden !important;
  }

  .world-clock::before,
  .header.active .world-clock::before,
  html.z-scroll-stable-no-flight .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    content:attr(data-clock-code) !important;
    position:relative !important;
    inset:auto !important;
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    width:auto !important;
    height:auto !important;
    max-width:100% !important;
    overflow:hidden !important;
    color:var(--color-primary) !important;
    opacity:.42 !important;
    font-size:.68rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    letter-spacing:.03em !important;
    text-align:center !important;
    white-space:nowrap !important;
    z-index:1 !important;
  }

  .world-clock__face,
  .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    position:relative !important;
    left:auto !important;
    top:auto !important;
    display:none !important;
    grid-column:1 !important;
    grid-row:2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:0 !important;
    height:0 !important;
    transform:none !important;
    z-index:2 !important;
  }

  .world-clock__time,
  .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    grid-column:1 !important;
    grid-row:2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:auto !important;
    max-width:100% !important;
    transform:none !important;
    font-size:1.04rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-align:center !important;
    white-space:nowrap !important;
    z-index:2 !important;
  }

  .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    grid-column:1 / -1 !important;
    grid-row:3 !important;
    justify-self:center !important;
    width:auto !important;
    max-width:70rem !important;
    margin:.22rem auto 0 !important;
    padding:.26rem !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.24rem !important;
    text-align:center !important;
  }

  .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .visitor-metric--persistent .visitor-metric__chip {
    min-height:2rem !important;
    padding:.24rem .5rem !important;
    font-size:1.1rem !important;
    line-height:1.08 !important;
    white-space:normal !important;
  }

  .hero,
  html.z-scroll-stable-no-flight .hero {
    height:clamp(31rem, 34vw, 37rem) !important;
    min-height:31rem !important;
    max-width:min(92rem, 88vw) !important;
    margin:1.45rem auto 2rem !important;
  }
}

/* V21437 - Laptop L header scale and topic color system */
@media (min-width:1200px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    min-height:0 !important;
    padding:2rem 0 1.55rem !important;
  }

  .header .container,
  .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:min(136rem, calc(100% - 4rem)) !important;
    max-width:136rem !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .header .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    display:grid !important;
    grid-template-columns:30rem minmax(56rem, 64rem) 19.2rem !important;
    grid-template-rows:auto auto auto !important;
    align-items:center !important;
    justify-items:center !important;
    justify-content:center !important;
    column-gap:1.6rem !important;
    row-gap:.55rem !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }

  .header .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    align-self:end !important;
    justify-self:center !important;
    width:30rem !important;
    max-width:30rem !important;
    margin:0 !important;
  }

  .header .header-logo__img,
  .header.active .header-logo__img,
  html.z-scroll-stable-no-flight .header .header-logo__img,
  html.z-scroll-stable-no-flight .header.active .header-logo__img {
    width:100% !important;
    max-width:100% !important;
    max-height:6.7rem !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    justify-content:center !important;
    justify-items:center !important;
    align-items:center !important;
    gap:.16rem .24rem !important;
    width:30rem !important;
    max-width:30rem !important;
    margin:.1rem auto 0 !important;
    padding:0 !important;
  }

  .header .site-language-flags .flag-lang,
  .header.active .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    height:2.06rem !important;
    padding:0 !important;
    border-radius:.48rem !important;
  }

  .header .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:1.68rem !important;
    line-height:1 !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    grid-column:2 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:64rem !important;
    max-width:64rem !important;
    min-height:6rem !important;
    padding:.34rem !important;
    margin:0 auto !important;
  }

  .header #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:5.28rem !important;
    padding:.48rem .28rem .42rem !important;
    gap:.18rem !important;
    font-size:clamp(.94rem, .72vw, 1.08rem) !important;
    line-height:.98 !important;
  }

  .header #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:1.72rem !important;
    height:1.72rem !important;
    margin:0 auto 0 !important;
  }

  .header .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(3, minmax(4.75rem, auto)) !important;
    gap:.24rem !important;
    width:19.2rem !important;
    max-width:19.2rem !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 auto !important;
    padding:.38rem !important;
    border-radius:1.16rem !important;
  }

  .header .world-clock,
  .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-width:0 !important;
    min-height:4.75rem !important;
    height:auto !important;
    padding:.36rem .22rem .38rem !important;
    border-radius:.74rem !important;
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) !important;
    grid-template-rows:1.12rem 1.66rem !important;
    align-items:center !important;
    justify-items:center !important;
    overflow:hidden !important;
  }

  .header .world-clock::before,
  .header.active .world-clock::before,
  html.z-scroll-stable-no-flight .header .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    content:attr(data-clock-code) !important;
    position:relative !important;
    inset:auto !important;
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    width:auto !important;
    max-width:100% !important;
    overflow:hidden !important;
    color:var(--color-primary) !important;
    opacity:.44 !important;
    font-size:.84rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    letter-spacing:.04em !important;
    text-align:center !important;
    white-space:nowrap !important;
    z-index:1 !important;
  }

  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    display:none !important;
    width:0 !important;
    height:0 !important;
    transform:none !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    position:relative !important;
    grid-column:1 !important;
    grid-row:2 !important;
    align-self:center !important;
    justify-self:center !important;
    max-width:100% !important;
    transform:none !important;
    font-size:1.38rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-align:center !important;
    white-space:nowrap !important;
    z-index:2 !important;
  }

  .header .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    grid-column:1 / -1 !important;
    grid-row:3 !important;
    justify-self:center !important;
    width:94rem !important;
    max-width:100% !important;
    margin:.26rem auto 0 !important;
    padding:.34rem !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.32rem !important;
    text-align:center !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent .visitor-metric__chip {
    min-height:2.38rem !important;
    padding:.3rem .64rem !important;
    font-size:1.1rem !important;
    line-height:1.08 !important;
    white-space:normal !important;
  }
}

@media (min-width:1200px) and (max-width:1320px) {
  .header .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    grid-template-columns:27rem minmax(52rem, 58rem) 18.2rem !important;
    column-gap:1.2rem !important;
  }

  .header .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo,
  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    width:27rem !important;
    max-width:27rem !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    width:58rem !important;
    max-width:58rem !important;
  }

  .header .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    width:18.2rem !important;
    max-width:18.2rem !important;
  }
}

/* V21437 - symmetrical laptop header */
@media (min-width:951px) and (max-width:1199px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    padding:1.35rem 0 1.15rem !important;
    min-height:0 !important;
  }

  .header .container,
  .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:calc(100% - 2.4rem) !important;
    max-width:104rem !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .header .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    display:grid !important;
    grid-template-columns:minmax(17.8rem, 18.4rem) minmax(43rem, 45rem) minmax(17.8rem, 18.4rem) !important;
    grid-template-rows:auto auto !important;
    justify-content:center !important;
    align-items:center !important;
    justify-items:center !important;
    column-gap:.85rem !important;
    row-gap:.36rem !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }

  .header .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(3, minmax(3.35rem, auto)) !important;
    gap:.18rem !important;
    width:18.4rem !important;
    max-width:18.4rem !important;
    min-height:10.75rem !important;
    height:auto !important;
    margin:0 auto !important;
    padding:.3rem !important;
    border-radius:.98rem !important;
    box-sizing:border-box !important;
  }

  .header .world-clock,
  .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-width:0 !important;
    min-height:3.35rem !important;
    height:auto !important;
    padding:.24rem .14rem .28rem !important;
    border-radius:.58rem !important;
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) !important;
    grid-template-rows:.82rem 1.16rem !important;
    align-items:center !important;
    justify-items:center !important;
    overflow:hidden !important;
  }

  .header .world-clock::before,
  .header.active .world-clock::before,
  html.z-scroll-stable-no-flight .header .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    content:attr(data-clock-code) !important;
    position:relative !important;
    inset:auto !important;
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    width:auto !important;
    max-width:100% !important;
    color:var(--color-primary) !important;
    opacity:.45 !important;
    font-size:.62rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    letter-spacing:.03em !important;
    text-align:center !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    z-index:1 !important;
  }

  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    display:none !important;
    width:0 !important;
    height:0 !important;
    transform:none !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    position:relative !important;
    grid-column:1 !important;
    grid-row:2 !important;
    align-self:center !important;
    justify-self:center !important;
    max-width:100% !important;
    transform:none !important;
    font-size:.96rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-align:center !important;
    white-space:nowrap !important;
    z-index:2 !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:center !important;
    justify-self:center !important;
    width:45rem !important;
    max-width:45rem !important;
    min-height:4.2rem !important;
    margin:0 auto !important;
    padding:.24rem !important;
  }

  .header #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:3.72rem !important;
    padding:.28rem .14rem .26rem !important;
    gap:.1rem !important;
    font-size:.7rem !important;
    line-height:.95 !important;
  }

  .header #primary-menu.top-menu .top-menu__link::before,
  .header.active #primary-menu.top-menu .top-menu__link::before {
    width:1.12rem !important;
    height:1.12rem !important;
    margin:0 auto 0 !important;
  }

  .header .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    grid-column:2 !important;
    grid-row:2 !important;
    justify-self:center !important;
    width:45rem !important;
    max-width:45rem !important;
    margin:0 auto !important;
    padding:.24rem !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.18rem !important;
    text-align:center !important;
    box-sizing:border-box !important;
  }

  .header .visitor-metric--persistent .visitor-metric__row,
  .header.active .visitor-metric--persistent .visitor-metric__row {
    justify-content:center !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent .visitor-metric__chip {
    min-height:1.88rem !important;
    padding:.22rem .38rem !important;
    font-size:1.1rem !important;
    line-height:1.06 !important;
    white-space:normal !important;
  }

  .header .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    grid-column:3 !important;
    grid-row:1 !important;
    align-self:end !important;
    justify-self:center !important;
    width:18.4rem !important;
    max-width:18.4rem !important;
    margin:0 !important;
  }

  .header .header-logo__img,
  .header.active .header-logo__img,
  html.z-scroll-stable-no-flight .header .header-logo__img,
  html.z-scroll-stable-no-flight .header.active .header-logo__img {
    width:100% !important;
    max-width:100% !important;
    max-height:3.85rem !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:3 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    justify-content:center !important;
    justify-items:center !important;
    align-items:center !important;
    gap:.08rem .12rem !important;
    width:18.4rem !important;
    max-width:18.4rem !important;
    margin:0 auto !important;
    padding:0 !important;
    box-sizing:border-box !important;
  }

  .header .site-language-flags .flag-lang,
  .header.active .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    height:1.42rem !important;
    padding:0 !important;
    border-radius:.34rem !important;
  }

  .header .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:1.06rem !important;
    line-height:1 !important;
  }
}

.z-topic-token,
.z-topic-filter {
  --z-topic-bg:#f4f8ff;
  --z-topic-border:rgb(var(--color-primary-rgb) / .22);
  --z-topic-shadow:rgb(var(--color-primary-rgb) / .08);
}

.z-topic-token--nutrition,
.z-topic-filter--nutrition,
.z-tool-card--nutrition {
  --z-topic-bg:#edf8f1;
  --z-topic-border:rgb(84 148 113 / .34);
  --z-topic-shadow:rgb(84 148 113 / .13);
}

.z-topic-token--training,
.z-topic-filter--training,
.z-tool-card--training {
  --z-topic-bg:#edf7fc;
  --z-topic-border:rgb(72 147 184 / .34);
  --z-topic-shadow:rgb(72 147 184 / .13);
}

.z-topic-token--rehabilitation,
.z-topic-filter--rehabilitation,
.z-tool-card--rehabilitation {
  --z-topic-bg:#f4f1fb;
  --z-topic-border:rgb(129 111 178 / .30);
  --z-topic-shadow:rgb(129 111 178 / .12);
}

.z-topic-token--health-education,
.z-topic-filter--health-education,
.z-tool-card--health-education {
  --z-topic-bg:#fff4e8;
  --z-topic-border:rgb(191 134 70 / .30);
  --z-topic-shadow:rgb(191 134 70 / .12);
}

.z-topic-token--clean-sport,
.z-topic-filter--clean-sport,
.z-tool-card--clean-sport {
  --z-topic-bg:#edf9f8;
  --z-topic-border:rgb(65 151 145 / .32);
  --z-topic-shadow:rgb(65 151 145 / .13);
}

.z-topic-token--recovery,
.z-topic-filter--recovery,
.z-tool-card--recovery {
  --z-topic-bg:#f1f4ff;
  --z-topic-border:rgb(92 121 190 / .30);
  --z-topic-shadow:rgb(92 121 190 / .12);
}

.z-topic-token--cholesterol,
.z-topic-filter--cholesterol,
.z-tool-card--cholesterol {
  --z-topic-bg:#fff8e5;
  --z-topic-border:rgb(191 156 57 / .30);
  --z-topic-shadow:rgb(191 156 57 / .12);
}

.z-topic-token--body-composition,
.z-topic-filter--body-composition,
.z-tool-card--body-composition {
  --z-topic-bg:#fff1f4;
  --z-topic-border:rgb(190 101 126 / .28);
  --z-topic-shadow:rgb(190 101 126 / .12);
}

.z-topic-token--activity,
.z-topic-filter--activity,
.z-tool-card--activity {
  --z-topic-bg:#f4fae8;
  --z-topic-border:rgb(130 160 68 / .30);
  --z-topic-shadow:rgb(130 160 68 / .12);
}

body.page-blog .z-featured-guide .z-chip.z-chip--topic-list,
body.page-blog .z-blog-card .z-chip.z-chip--topic-list,
body.page-blog .article-meta-block > p:first-child .z-chip.z-chip--topic-list {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.28rem .34rem !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-align:center !important;
}

body.page-blog .z-topic-token,
body.page-tools-index .tool-card__category.z-topic-token {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:2.14rem !important;
  max-width:100% !important;
  padding:.32rem .72rem !important;
  border:1px solid var(--z-topic-border) !important;
  border-radius:999px !important;
  background:linear-gradient(180deg, rgb(255 255 255 / .76) 0%, var(--z-topic-bg) 100%) !important;
  color:var(--color-primary) !important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .88), 0 .4rem 1.15rem var(--z-topic-shadow) !important;
  font-weight:800 !important;
  line-height:1.08 !important;
  text-align:center !important;
  text-shadow:none !important;
  text-transform:uppercase !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

body.page-blog .z-featured-guide .z-topic-token {
  min-height:2.28rem !important;
  padding:.34rem .78rem !important;
  font-size:1.1rem !important;   /* was 7.95px in the card while the filter strip above ran 12.4px */
}

body.page-blog .z-blog-card .z-topic-token {
  min-height:2.12rem !important;
  padding:.3rem .66rem !important;
  font-size:1.1rem !important;   /* was 6.60-8.72px depending on width */
}

body.page-blog .article-meta-block > p:first-child .z-topic-token {
  min-height:2.34rem !important;
  padding:.36rem .82rem !important;
}

body.page-blog .z-topic-separator {
  align-self:center !important;
  color:rgb(var(--color-primary-rgb) / .36) !important;
  font-size:.9em !important;
  font-weight:800 !important;
  line-height:1 !important;
}

body.page-blog .z-blog-filters a.z-topic-filter,
body.page-blog .z-blog-filters a.z-topic-filter:visited,
body.page-blog .z-blog-filters a.z-topic-filter:not(:hover),
body.page-tools-index .tools-filter__button.z-topic-filter,
body.page-tools-index .z-anchor-strip[aria-label="Tool categories"] a.z-topic-filter,
body.page-tools-index .z-anchor-strip[aria-label="Tool categories"] a.z-topic-filter:visited {
  border-color:var(--z-topic-border) !important;
  background:linear-gradient(180deg, rgb(255 255 255 / .82) 0%, var(--z-topic-bg) 100%) !important;
  color:var(--color-primary) !important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .9), 0 .45rem 1.25rem var(--z-topic-shadow) !important;
  text-shadow:none !important;
}

body.page-blog .z-blog-filters a.z-topic-filter:hover,
body.page-blog .z-blog-filters a.z-topic-filter:focus-visible,
body.page-tools-index .tools-filter__button.z-topic-filter:hover,
body.page-tools-index .tools-filter__button.z-topic-filter:focus-visible,
body.page-tools-index .z-anchor-strip[aria-label="Tool categories"] a.z-topic-filter:hover,
body.page-tools-index .z-anchor-strip[aria-label="Tool categories"] a.z-topic-filter:focus-visible {
  border-color:rgb(var(--color-primary-rgb) / .36) !important;
  background:linear-gradient(180deg, #fff 0%, var(--z-topic-bg) 100%) !important;
  color:var(--color-primary) !important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .95), 0 .7rem 1.55rem var(--z-topic-shadow) !important;
  transform:translateY(-1px) !important;
}

body.page-blog .z-blog-filters a.z-topic-filter.is-active,
body.page-blog .z-blog-filters a.z-topic-filter[aria-current="true"],
body.page-blog .z-blog-filters a.z-topic-filter.is-active:hover,
body.page-blog .z-blog-filters a.z-topic-filter[aria-current="true"]:hover,
body.page-blog .z-blog-filters a.z-topic-filter.is-active:focus-visible,
body.page-blog .z-blog-filters a.z-topic-filter[aria-current="true"]:focus-visible {
  border-color:var(--color-primary) !important;
  background:var(--color-primary) !important;
  background-image:none !important;
  color:#fff !important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .24), 0 .7rem 1.55rem rgb(var(--color-primary-rgb) / .22) !important;
  transform:none !important;
}

body.page-tools-index .tools-filter__button.z-topic-filter--all,
body.page-tools-index .tools-filter__button.z-topic-filter--all.is-active {
  --z-topic-bg:#eaf3ff;
  --z-topic-border:rgb(var(--color-primary-rgb) / .34);
  --z-topic-shadow:rgb(var(--color-primary-rgb) / .14);
}

body.page-tools-index .tools-filter__button,
body.page-tools-index .tools-filter__button.z-topic-filter,
body.page-tools-index .tools-filter__button.z-topic-filter--all {
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}

body.page-tools-index .tools-popular__card {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

body.page-tools-index .tools-popular__card small {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:center !important;
  width:auto !important;
  min-width:6.3rem !important;
  min-height:2.8rem !important;
  margin:.34rem auto 0 !important;
  padding:.48rem 1.02rem !important;
  border:1px solid rgb(var(--color-primary-rgb) / .58) !important;
  border-radius:999px !important;
  background:linear-gradient(180deg, rgb(139 190 230) 0%, rgb(var(--color-primary-rgb) / .96) 58%, rgb(var(--color-primary-hover-rgb) / 1) 100%) !important;
  color:#fff !important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .55), inset 0 -.26rem 0 rgb(0 0 0 / .13), 0 .34rem 0 rgb(var(--color-primary-hover-rgb) / .7), 0 .72rem 1.2rem rgb(var(--color-primary-rgb) / .24) !important;
  font-size:1.08rem !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-shadow:0 1px 1px rgb(0 0 0 / .24) !important;
  white-space:nowrap !important;
}

body.page-tools-index .tool-card__category.z-topic-token {
  width:auto !important;
  min-width:0 !important;
  margin:0 0 .72rem !important;
  font-size:.88rem !important;
  letter-spacing:.04em !important;
}

body.page-tools-index .tool-card[data-topic-token] {
  border-color:var(--z-topic-border, rgb(var(--color-primary-rgb) / .18)) !important;
  box-shadow:0 .95rem 2.15rem var(--z-topic-shadow, rgb(var(--color-primary-rgb) / .08)) !important;
}

@media (min-width:951px) {
  body.page-tools-index .breadcrumb__container {
    padding-top:1.45rem !important;
    padding-bottom:1.2rem !important;
    min-height:0 !important;
  }

  body.page-tools-index .page-title {
    padding-top:0 !important;
    padding-bottom:.55rem !important;
    margin:0 !important;
    line-height:1.08 !important;
  }

  body.page-tools-index .breadcrumb {
    margin-top:.35rem !important;
  }

  body.page-tools-index .tools-main {
    padding-top:1.1rem !important;
  }

  body.page-tools-index .tools-popular {
    margin:0 0 1rem !important;
    padding:.95rem !important;
  }

  body.page-tools-index .tools-popular__grid {
    gap:.75rem !important;
  }

  body.page-tools-index .tools-filter {
    margin:0 0 1rem !important;
    padding:1.05rem 1rem !important;
  }

  body.page-tools-index .tools-filter__title {
    margin:0 0 .7rem !important;
    font-size:1.45rem !important;
    line-height:1.18 !important;
  }

  body.page-tools-index .tools-filter__buttons {
    gap:.48rem !important;
  }

  body.page-tools-index .tools-index-lead {
    max-width:100rem !important;
    margin:.8rem auto 1rem !important;
    font-size:1.45rem !important;
    line-height:1.38 !important;
  }

  body.page-tools-index .tools-main > .container > .tool-privacy-note,
  body.page-tools-index .tools-main > .container > .z-anchor-strip[aria-label="Tool categories"] {
    display:none !important;
  }

  body.page-tools-index .tools-grid {
    margin-top:1rem !important;
  }
}

/* V21437 - defensive wide-screen overflow guard */
@media (min-width:1200px) and (max-width:1500px) {
  .header .container,
  .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:min(100% - 2.4rem, 132rem) !important;
  }

  .header .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    grid-template-columns:minmax(22rem, 27rem) minmax(45rem, 1fr) minmax(15.8rem, 18.2rem) !important;
    column-gap:clamp(.75rem, 1.1vw, 1.25rem) !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    width:100% !important;
    max-width:58rem !important;
  }

  .header .header-logo,
  .header.active .header-logo,
  .header .site-language-flags,
  .header.active .site-language-flags {
    width:min(100%, 27rem) !important;
  }
}

@media (min-width:1200px) {
  body {
    overflow-x:hidden;
  }
}

/* V21437 - action button volume */
body.page-blog .z-featured-guide .z-cta-link,
body.page-blog .z-blog-card .z-cta-link,
.z-cta-link,
.tool-submit,
.tool-link-button,
.z-tools-action,
.contact-submit,
.default-btn,
.btn:not(.slick-arrow):not(.mfp-close),
.z-social-actions .z-social-btn,
.tg-button:not(.tg-button--on-blue),
body > .tg-button.tg-button--body-fixed:not(.tg-button--on-blue) {
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  border-color:rgb(var(--color-primary-rgb) / .9) !important;
  background:
    radial-gradient(ellipse 70% 40% at 30% 0%, rgb(255 255 255 / .36) 0, rgb(255 255 255 / .08) 60%, transparent 100%),
    linear-gradient(180deg, #3f86d0 0%, var(--color-primary) 30%, #1e5f9b 100%) !important;
  color:#fff !important;
  text-shadow:0 1px 0 rgb(0 0 0 / .18) !important;
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / .58),
    inset 0 -2px 0 rgb(0 0 0 / .16),
    0 .36rem .05rem rgb(21 82 132 / .42),
    0 .82rem 1.45rem rgb(var(--color-primary-rgb) / .28) !important;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease, background .18s ease !important;
}

body.page-blog .z-featured-guide .z-cta-link::before,
body.page-blog .z-blog-card .z-cta-link::before,
.z-cta-link::before,
.tool-submit::before,
.tool-link-button::before,
.z-tools-action::before,
.contact-submit::before,
.default-btn::before,
.btn:not(.slick-arrow):not(.mfp-close)::before,
.tg-button:not(.tg-button--on-blue)::before,
body > .tg-button.tg-button--body-fixed:not(.tg-button--on-blue)::before,
body > .go-up:not(.go-up--on-blue)::before {
  content:"" !important;
  position:absolute !important;
  inset:1px 1px auto !important;
  height:30% !important;   /* was 44%, which reached down into the label */
  border-radius:inherit !important;
  background:linear-gradient(180deg, rgb(255 255 255 / .46), rgb(255 255 255 / 0)) !important;
  pointer-events:none !important;
}

body.page-blog .z-featured-guide .z-cta-link:hover,
body.page-blog .z-featured-guide .z-cta-link:focus-visible,
body.page-blog .z-blog-card .z-cta-link:hover,
body.page-blog .z-blog-card .z-cta-link:focus-visible,
.z-cta-link:hover,
.z-cta-link:focus-visible,
.tool-submit:hover,
.tool-submit:focus-visible,
.tool-link-button:hover,
.tool-link-button:focus-visible,
.z-tools-action:hover,
.z-tools-action:focus-visible,
.contact-submit:hover,
.contact-submit:focus-visible,
.default-btn:hover,
.default-btn:focus-visible,
.btn:not(.slick-arrow):not(.mfp-close):hover,
.btn:not(.slick-arrow):not(.mfp-close):focus-visible,
.z-social-actions .z-social-btn:hover,
.z-social-actions .z-social-btn:focus-visible,
.tg-button:not(.tg-button--on-blue):hover,
.tg-button:not(.tg-button--on-blue):focus-visible,
body > .tg-button.tg-button--body-fixed:not(.tg-button--on-blue):hover,
body > .tg-button.tg-button--body-fixed:not(.tg-button--on-blue):focus-visible,
body > .go-up:not(.go-up--on-blue):hover,
body > .go-up:not(.go-up--on-blue):focus-visible {
  filter:saturate(1.05) brightness(1.03) !important;
  transform:translateY(-2px) scale(1.035) !important;
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / .68),
    inset 0 -2px 0 rgb(0 0 0 / .14),
    0 .48rem .08rem rgb(21 82 132 / .42),
    0 1rem 1.75rem rgb(var(--color-primary-rgb) / .32) !important;
}

.tg-button.tg-button--on-blue,
body > .tg-button.tg-button--body-fixed.tg-button--on-blue,
.go-up.go-up--on-blue {
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / .98),
    inset 0 -2px 0 rgb(var(--color-primary-rgb) / .12),
    0 0 0 .28rem rgba(255,255,255,.72),
    0 0 1.7rem rgba(255,255,255,.88),
    0 .7rem 1.8rem rgb(var(--color-primary-rgb) / .25) !important;
}

.tg-button.tg-button--on-blue:hover,
.tg-button.tg-button--on-blue:focus-visible,
body > .tg-button.tg-button--body-fixed.tg-button--on-blue:hover,
body > .tg-button.tg-button--body-fixed.tg-button--on-blue:focus-visible,
.go-up.go-up--on-blue:hover,
.go-up.go-up--on-blue:focus-visible {
  transform:translateY(-2px) scale(1.025) !important;
}

/* V21437 - contact submit and social icon polish */
#submit-button.default-btn,
#submit-button.submit {
  border-radius:999px !important;
  background:
    radial-gradient(ellipse 70% 40% at 30% 0%, rgb(255 255 255 / .36) 0, rgb(255 255 255 / .08) 60%, transparent 100%),
    linear-gradient(180deg, #3f86d0 0%, var(--color-primary) 30%, #1e5f9b 100%) !important;
  border:1px solid rgb(var(--color-primary-rgb) / .9) !important;
  color:#fff !important;
  text-shadow:0 1px 0 rgb(0 0 0 / .18) !important;
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / .58),
    inset 0 -2px 0 rgb(0 0 0 / .16),
    0 .36rem .05rem rgb(21 82 132 / .42),
    0 .82rem 1.45rem rgb(var(--color-primary-rgb) / .28) !important;
  transition:
    transform .58s cubic-bezier(.2, .78, .25, 1),
    box-shadow .58s cubic-bezier(.2, .78, .25, 1),
    filter .58s ease,
    background .58s ease !important;
}

@media (hover:hover) and (pointer:fine) and (min-width:951px) and (prefers-reduced-motion:no-preference) {
  #submit-button:hover,
  #submit-button:focus-visible,
  #submit-button.submit-button--desktop-growbeat {
    animation:zSubmitGentleGrow 2.8s cubic-bezier(.2, .78, .25, 1) infinite !important;
    filter:saturate(1.05) brightness(1.03) !important;
    transform:translateY(-2px) scale(1.035) !important;
    box-shadow:
      inset 0 1px 0 rgb(255 255 255 / .68),
      inset 0 -2px 0 rgb(0 0 0 / .14),
      0 .48rem .08rem rgb(21 82 132 / .42),
      0 1rem 1.75rem rgb(var(--color-primary-rgb) / .32) !important;
    transition:
      transform .58s cubic-bezier(.2, .78, .25, 1),
      box-shadow .58s cubic-bezier(.2, .78, .25, 1),
      filter .58s ease !important;
  }
}

@keyframes zSubmitGentleGrow {
  0%, 100% {
    scale:1;
  }
  46% {
    scale:1.022;
  }
  72% {
    scale:1.008;
  }
}

.z-social-actions .z-social-btn:not([data-z-share="native"])::before {
  background-color:#fff !important;
  color:#fff !important;
  text-shadow:0 1px 0 rgb(0 0 0 / .16) !important;
}

.z-social-actions .z-social-btn[data-z-share="linkedin"]::before,
.z-social-actions .z-social-btn[data-z-share="whatsapp"]::before {
  background:transparent !important;
  color:#fff !important;
}

body.page-blog .z-blog-card .z-social-actions--index .z-social-like,
.z-social-actions--tool .z-social-like {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:4.9rem !important;
  max-width:none !important;
  height:2.35rem !important;
  min-height:2.35rem !important;
  max-height:2.35rem !important;
  padding:.2rem .46rem !important;
  border:0 !important;
  border-radius:0 !important;
  background:
    radial-gradient(ellipse 70% 40% at 30% 0%, rgb(255 255 255 / .36) 0, rgb(255 255 255 / .08) 60%, transparent 100%),
    linear-gradient(180deg, #3f86d0 0%, var(--color-primary) 30%, #1e5f9b 100%) !important;
  color:#fff !important;
  font-size:.86rem !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-shadow:0 1px 0 rgb(0 0 0 / .18) !important;
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / .58),
    inset 0 -2px 0 rgb(0 0 0 / .16),
    0 .28rem .04rem rgb(21 82 132 / .34),
    0 .54rem .95rem rgb(var(--color-primary-rgb) / .22) !important;
}

body.page-blog .z-blog-card .z-social-actions--index .z-social-like.is-liked,
.z-social-actions--tool .z-social-like.is-liked {
  background:
    radial-gradient(circle at 30% 18%, rgb(255 255 255 / .4) 0, rgb(255 255 255 / .16) 24%, transparent 48%),
    linear-gradient(180deg, #f2555d 0%, #cf2330 54%, #a81724 100%) !important;
  color:#fff !important;
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / .52),
    inset 0 -2px 0 rgb(0 0 0 / .16),
    0 .28rem .04rem rgb(150 20 32 / .34),
    0 .54rem .95rem rgb(207 35 48 / .22) !important;
}

/* V21437 - symmetrical wide desktop header */
@media (min-width:1200px) {
  .header,
  .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    padding:1.85rem 0 1.45rem !important;
  }

  .header .container,
  .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:min(136rem, calc(100% - 4rem)) !important;
    max-width:136rem !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .header .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    display:grid !important;
    grid-template-columns:minmax(28rem, 30rem) minmax(58rem, 64rem) minmax(28rem, 30rem) !important;
    grid-template-rows:auto auto !important;
    justify-content:center !important;
    align-items:center !important;
    justify-items:center !important;
    column-gap:clamp(1.1rem, 1.4vw, 1.8rem) !important;
    row-gap:.55rem !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }

  .header .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(3, minmax(3.85rem, auto)) !important;
    gap:.28rem !important;
    width:30rem !important;
    max-width:30rem !important;
    min-height:12.2rem !important;
    height:auto !important;
    margin:0 auto !important;
    padding:.46rem !important;
    border-radius:1.15rem !important;
    box-sizing:border-box !important;
  }

  .header .world-clock,
  .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-width:0 !important;
    min-height:3.85rem !important;
    height:auto !important;
    padding:.32rem .24rem .36rem !important;
    border-radius:.72rem !important;
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) !important;
    grid-template-rows:1rem 1.42rem !important;
    align-items:center !important;
    justify-items:center !important;
    overflow:hidden !important;
  }

  .header .world-clock::before,
  .header.active .world-clock::before,
  html.z-scroll-stable-no-flight .header .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    content:attr(data-clock-code) !important;
    position:relative !important;
    inset:auto !important;
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    width:auto !important;
    max-width:100% !important;
    overflow:hidden !important;
    color:var(--color-primary) !important;
    opacity:.45 !important;
    font-size:.78rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    letter-spacing:.04em !important;
    text-align:center !important;
    white-space:nowrap !important;
    z-index:1 !important;
  }

  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    display:none !important;
    width:0 !important;
    height:0 !important;
    transform:none !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    position:relative !important;
    grid-column:1 !important;
    grid-row:2 !important;
    align-self:center !important;
    justify-self:center !important;
    max-width:100% !important;
    transform:none !important;
    font-size:1.22rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-align:center !important;
    white-space:nowrap !important;
    z-index:2 !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:center !important;
    justify-self:center !important;
    width:64rem !important;
    max-width:64rem !important;
    min-height:5.9rem !important;
    margin:0 auto !important;
    padding:.34rem !important;
  }

  .header #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link {
    min-height:5.18rem !important;
    padding:.48rem .28rem .42rem !important;
    gap:.18rem !important;
    font-size:clamp(.92rem, .72vw, 1.06rem) !important;
    line-height:.98 !important;
  }

  .header .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    grid-column:2 !important;
    grid-row:2 !important;
    justify-self:center !important;
    width:64rem !important;
    max-width:64rem !important;
    margin:0 auto !important;
    padding:.34rem !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.3rem !important;
    text-align:center !important;
    box-sizing:border-box !important;
  }

  .header .visitor-metric--persistent .visitor-metric__row,
  .header.active .visitor-metric--persistent .visitor-metric__row {
    justify-content:center !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent .visitor-metric__chip {
    min-height:2.24rem !important;
    padding:.28rem .58rem !important;
    font-size:1.1rem !important;
    line-height:1.08 !important;
    white-space:normal !important;
  }

  .header .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    grid-column:3 !important;
    grid-row:1 !important;
    align-self:end !important;
    justify-self:center !important;
    width:30rem !important;
    max-width:30rem !important;
    margin:0 !important;
  }

  .header .header-logo__img,
  .header.active .header-logo__img,
  html.z-scroll-stable-no-flight .header .header-logo__img,
  html.z-scroll-stable-no-flight .header.active .header-logo__img {
    width:100% !important;
    max-width:100% !important;
    max-height:6.35rem !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:3 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    justify-content:center !important;
    justify-items:center !important;
    align-items:center !important;
    gap:.14rem .22rem !important;
    width:30rem !important;
    max-width:30rem !important;
    margin:0 auto !important;
    padding:0 !important;
    box-sizing:border-box !important;
  }

  .header .site-language-flags .flag-lang,
  .header.active .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    height:1.92rem !important;
    padding:0 !important;
    border-radius:.46rem !important;
  }

  .header .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:1.54rem !important;
    line-height:1 !important;
  }
}

@media (min-width:1200px) and (max-width:1320px) {
  .header .header-nav,
  .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    grid-template-columns:25.5rem minmax(52rem, 58rem) 25.5rem !important;
    column-gap:1.1rem !important;
  }

  .header .world-clocks,
  .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks,
  .header .header-logo,
  .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo,
  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    width:25.5rem !important;
    max-width:25.5rem !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu,
  .header .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    width:58rem !important;
    max-width:58rem !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    font-size:1.08rem !important;
  }

  .header .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:1.35rem !important;
  }
}

/* V21437 - final visitor chips under menu, no wrapper panel */
.header .visitor-metric,
.header.active .visitor-metric,
html.z-flight-v77 .header .visitor-metric,
html.z-flight-v77 .header.active .visitor-metric,
html.z-scroll-stable-no-flight .header .visitor-metric,
html.z-scroll-stable-no-flight .header.active .visitor-metric,
.header .visitor-metric--persistent,
.header.active .visitor-metric--persistent,
html.z-flight-v77 .header .visitor-metric--persistent,
html.z-flight-v77 .header.active .visitor-metric--persistent,
html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  background-image:none !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
  box-shadow:none !important;
}

.header .visitor-metric__chip,
.header.active .visitor-metric__chip,
html.z-flight-v77 .header .visitor-metric__chip,
html.z-flight-v77 .header.active .visitor-metric__chip,
html.z-scroll-stable-no-flight .header .visitor-metric__chip,
html.z-scroll-stable-no-flight .header.active .visitor-metric__chip {
  border:1px solid rgb(var(--color-primary-rgb) / .18) !important;
  border-radius:.72rem !important;
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgb(var(--color-background-rgb) / .9) 100%) !important;
  color:var(--color-primary) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92), 0 .26rem .82rem rgb(var(--color-primary-rgb) / .05) !important;
}

@media (min-width:951px) {
  .header .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    position:static !important;
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:start !important;
    justify-self:center !important;
    display:grid !important;
    grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
    grid-auto-rows:auto !important;
    gap:.28rem .34rem !important;
    width:64rem !important;
    max-width:100% !important;
    min-height:0 !important;
    margin:0 auto !important;
    padding:0 !important;
    overflow:visible !important;
    text-align:center !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }

  .header .visitor-metric--persistent.is-visible,
  .header.active .visitor-metric--persistent.is-visible,
  .header .visitor-metric--persistent.is-hiding,
  .header.active .visitor-metric--persistent.is-hiding {
    transform:none !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent .visitor-metric__chip {
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:2.12rem !important;
    padding:.24rem .46rem !important;
    font-size:1.1rem !important;
    line-height:1.08 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(1),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(1) {
    grid-column:1 / span 1 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(2),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(2) {
    grid-column:2 / span 2 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(3),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(3) {
    grid-column:4 / span 3 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(4),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(4) {
    grid-column:1 / span 3 !important;
    grid-row:2 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(5),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(5) {
    grid-column:4 / span 3 !important;
    grid-row:2 !important;
  }
}

@media (min-width:951px) and (max-width:1199px) {
  .header .visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    width:100% !important;
    gap:.24rem .28rem !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent .visitor-metric__chip {
    min-height:1.94rem !important;
    padding:.2rem .36rem !important;
    font-size:1.1rem !important;
  }
}

/* V21437 - final desktop header order: logo left, menu center, clocks right */
@media (min-width:951px) {
  .header,
  .header.active,
  html.z-flight-v77 .header,
  html.z-flight-v77 .header.active,
  html.z-scroll-stable-no-flight .header,
  html.z-scroll-stable-no-flight .header.active {
    padding:1.55rem 0 1.25rem !important;
  }

  .header .container,
  .header.active .container,
  html.z-flight-v77 .header .container,
  html.z-flight-v77 .header.active .container,
  html.z-scroll-stable-no-flight .header .container,
  html.z-scroll-stable-no-flight .header.active .container {
    width:min(136rem, calc(100% - 4rem)) !important;
    max-width:136rem !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .header .header-nav,
  .header.active .header-nav,
  html.z-flight-v77 .header .header-nav,
  html.z-flight-v77 .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    display:grid !important;
    grid-template-columns:minmax(28rem, 30rem) minmax(58rem, 64rem) minmax(28rem, 30rem) !important;
    grid-template-rows:auto auto !important;
    justify-content:center !important;
    align-items:start !important;
    justify-items:center !important;
    column-gap:clamp(1.1rem, 1.4vw, 1.8rem) !important;
    row-gap:.44rem !important;
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    padding:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  .header .header-logo,
  .header.active .header-logo,
  html.z-flight-v77 .header .header-logo,
  html.z-flight-v77 .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    grid-column:1 !important;
    grid-row:1 !important;
    align-self:end !important;
    justify-self:center !important;
    width:30rem !important;
    max-width:30rem !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
  }

  .header .header-logo__img,
  .header.active .header-logo__img,
  html.z-flight-v77 .header .header-logo__img,
  html.z-flight-v77 .header.active .header-logo__img,
  html.z-scroll-stable-no-flight .header .header-logo__img,
  html.z-scroll-stable-no-flight .header.active .header-logo__img {
    width:100% !important;
    max-width:100% !important;
    max-height:6.35rem !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-flight-v77 .header .site-language-flags,
  html.z-flight-v77 .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    grid-column:1 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    align-self:start !important;
    justify-self:center !important;
    align-items:center !important;
    justify-items:center !important;
    gap:.14rem .22rem !important;
    width:30rem !important;
    max-width:30rem !important;
    margin:0 auto !important;
    padding:0 !important;
    box-sizing:border-box !important;
    transform:none !important;
  }

  .header .site-language-flags .flag-lang,
  .header.active .site-language-flags .flag-lang,
  html.z-flight-v77 .header .site-language-flags .flag-lang,
  html.z-flight-v77 .header.active .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    height:1.92rem !important;
    padding:0 !important;
    border-radius:.46rem !important;
  }

  .header .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon,
  html.z-flight-v77 .header .site-language-flags .flag-icon,
  html.z-flight-v77 .header.active .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    font-size:1.54rem !important;
    line-height:1 !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:center !important;
    justify-self:center !important;
    width:64rem !important;
    max-width:64rem !important;
    min-height:5.9rem !important;
    margin:0 auto !important;
    padding:.34rem !important;
    transform:none !important;
  }

  .header .visitor-metric--persistent,
  .header .visitor-metric.visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  .header.active .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric.visitor-metric--persistent {
    position:static !important;
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:start !important;
    justify-self:center !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:.28rem .34rem !important;
    width:64rem !important;
    max-width:64rem !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    background-image:none !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    box-shadow:none !important;
    overflow:visible !important;
    text-align:center !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }

  .header .visitor-metric--persistent.is-visible,
  .header .visitor-metric.visitor-metric--persistent.is-visible,
  .header.active .visitor-metric--persistent.is-visible,
  .header.active .visitor-metric.visitor-metric--persistent.is-visible,
  .header .visitor-metric--persistent.is-hiding,
  .header .visitor-metric.visitor-metric--persistent.is-hiding,
  .header.active .visitor-metric--persistent.is-hiding,
  .header.active .visitor-metric.visitor-metric--persistent.is-hiding {
    transform:none !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip,
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric.visitor-metric--persistent .visitor-metric__chip,
  html.z-flight-v77 .header .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent .visitor-metric__chip {
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:2.12rem !important;
    padding:.24rem .46rem !important;
    font-size:1.1rem !important;
    line-height:1.08 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(1),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(1),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(1) {
    grid-column:1 / span 1 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(2),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(2),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(2) {
    grid-column:2 / span 2 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(3),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(3),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(3) {
    grid-column:4 / span 3 !important;
    grid-row:1 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(4),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(4),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(4) {
    grid-column:1 / span 3 !important;
    grid-row:2 !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip:nth-child(5),
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip:nth-child(5),
  .header.active .visitor-metric--persistent .visitor-metric__chip:nth-child(5) {
    grid-column:4 / span 3 !important;
    grid-row:2 !important;
  }

  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:30rem !important;
    max-width:30rem !important;
    min-height:12.2rem !important;
    height:auto !important;
    margin:0 auto !important;
    transform:none !important;
  }
}

@media (min-width:1200px) and (max-width:1320px) {
  .header .header-nav,
  .header.active .header-nav,
  html.z-flight-v77 .header .header-nav,
  html.z-flight-v77 .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    grid-template-columns:25.5rem minmax(52rem, 56rem) 25.5rem !important;
    column-gap:clamp(.7rem, .8vw, 1rem) !important;
  }

  .header .header-logo,
  .header.active .header-logo,
  html.z-flight-v77 .header .header-logo,
  html.z-flight-v77 .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo,
  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-flight-v77 .header .site-language-flags,
  html.z-flight-v77 .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags,
  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    width:25.5rem !important;
    max-width:25.5rem !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu,
  .header .visitor-metric--persistent,
  .header .visitor-metric.visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  .header.active .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric.visitor-metric--persistent {
    width:56rem !important;
    max-width:56rem !important;
  }
}

@media (min-width:951px) and (max-width:1199px) {
  .header .header-nav,
  .header.active .header-nav,
  html.z-flight-v77 .header .header-nav,
  html.z-flight-v77 .header.active .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    grid-template-columns:18.4rem minmax(44rem, 45rem) 18.4rem !important;
    column-gap:.9rem !important;
  }

  .header .header-logo,
  .header.active .header-logo,
  html.z-flight-v77 .header .header-logo,
  html.z-flight-v77 .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo,
  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-flight-v77 .header .site-language-flags,
  html.z-flight-v77 .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags,
  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    width:18.4rem !important;
    max-width:18.4rem !important;
  }

  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu,
  .header .visitor-metric--persistent,
  .header .visitor-metric.visitor-metric--persistent,
  .header.active .visitor-metric--persistent,
  .header.active .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric.visitor-metric--persistent {
    width:45rem !important;
    max-width:45rem !important;
  }

  .header .visitor-metric--persistent .visitor-metric__chip,
  .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip,
  .header.active .visitor-metric--persistent .visitor-metric__chip,
  html.z-flight-v77 .header .visitor-metric--persistent .visitor-metric__chip,
  html.z-flight-v77 .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent .visitor-metric__chip,
  html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent .visitor-metric__chip {
    min-height:1.94rem !important;
    padding:.2rem .36rem !important;
    font-size:1.1rem !important;
  }
}

/* V21437 - final mobile and tablet world clock cell layout */
@media (max-width:950px) {
  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    display:grid !important;
    grid-template-columns:3.7rem minmax(0, 1fr) !important;
    grid-template-rows:auto auto !important;
    column-gap:.38rem !important;
    row-gap:.08rem !important;
    align-items:center !important;
    justify-items:start !important;
    min-height:6.05rem !important;
    height:auto !important;
    padding:.42rem .46rem !important;
    overflow:hidden !important;
  }

  .header .world-clock::before,
  .header.active .world-clock::before,
  html.z-flight-v77 .header .world-clock::before,
  html.z-flight-v77 .header.active .world-clock::before,
  html.z-scroll-stable-no-flight .header .world-clock::before,
  html.z-scroll-stable-no-flight .header.active .world-clock::before {
    content:none !important;
    display:none !important;
  }

  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-flight-v77 .header .world-clock__face,
  html.z-flight-v77 .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    display:block !important;
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:3.35rem !important;
    height:3.35rem !important;
    min-width:3.35rem !important;
    min-height:3.35rem !important;
    transform:none !important;
    z-index:2 !important;
  }

  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-flight-v77 .header.active .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label,
  html.z-scroll-stable-no-flight .header.active .world-clock__label {
    position:relative !important;
    display:block !important;
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:end !important;
    justify-self:start !important;
    width:auto !important;
    max-width:100% !important;
    color:var(--color-primary) !important;
    opacity:.58 !important;
    font-size:.78rem !important;
    font-weight:900 !important;
    line-height:1 !important;
    letter-spacing:.04em !important;
    text-align:start !important;
    white-space:nowrap !important;
    transform:none !important;
    z-index:2 !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-flight-v77 .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    display:block !important;
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:start !important;
    justify-self:start !important;
    width:auto !important;
    max-width:100% !important;
    color:var(--color-primary) !important;
    font-size:1.28rem !important;
    font-weight:900 !important;
    line-height:1 !important;
    text-align:start !important;
    white-space:nowrap !important;
    transform:none !important;
    z-index:2 !important;
  }
}

@media (min-width:700px) and (max-width:950px) {
  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows:minmax(6.35rem, auto) !important;
    gap:.46rem !important;
    height:auto !important;
    min-height:0 !important;
  }

  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-height:6.35rem !important;
    grid-template-columns:4rem minmax(0, 1fr) !important;
  }

  .header .world-clock:nth-child(1),
  .header.active .world-clock:nth-child(1) {
    grid-column:auto / span 1 !important;
  }

  .header .world-clock:nth-child(2),
  .header.active .world-clock:nth-child(2) {
    grid-column:auto / span 1 !important;
  }

  .header .world-clock:nth-child(3),
  .header.active .world-clock:nth-child(3) {
    grid-column:auto / span 1 !important;
  }

  .header .world-clock:nth-child(4),
  .header.active .world-clock:nth-child(4) {
    grid-column:auto / span 1 !important;
  }

  .header .world-clock:nth-child(5),
  .header.active .world-clock:nth-child(5) {
    grid-column:auto / span 1 !important;
  }

  .header .world-clock:nth-child(6),
  .header.active .world-clock:nth-child(6) {
    grid-column:auto / span 1 !important;
  }

  .header .world-clock:nth-child(7),
  .header.active .world-clock:nth-child(7) {
    grid-column:auto / span 1 !important;
  }

  .header .world-clock:nth-child(8),
  .header.active .world-clock:nth-child(8) {
    grid-column:auto / span 1 !important;
  }

  .header .world-clock:nth-child(9),
  .header.active .world-clock:nth-child(9) {
    grid-column:auto / span 1 !important;
  }

  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-flight-v77 .header .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face {
    width:3.75rem !important;
    height:3.75rem !important;
    min-width:3.75rem !important;
    min-height:3.75rem !important;
  }

  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label {
    font-size:.82rem !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time {
    font-size:1.36rem !important;
  }
}

@media (max-width:699px) {
  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows:minmax(6.35rem, auto) !important;
    gap:.34rem !important;
    height:auto !important;
    min-height:0 !important;
  }

  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    grid-template-columns:4.1rem minmax(0, 1fr) !important;
    min-height:6.35rem !important;
  }

  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-flight-v77 .header .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face {
    width:3.55rem !important;
    height:3.55rem !important;
    min-width:3.55rem !important;
    min-height:3.55rem !important;
  }
}

/* V21437 - final readable clock code above time */
@media (max-width:950px) {
  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-flight-v77 .header.active .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label,
  html.z-scroll-stable-no-flight .header.active .world-clock__label {
    top:.92rem !important;
    color:var(--color-primary) !important;
    opacity:.92 !important;
    font-size:1.04rem !important;
    font-weight:900 !important;
    letter-spacing:.035em !important;
    text-shadow:0 1px 0 rgba(255,255,255,.86) !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-flight-v77 .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    top:3rem !important;
  }
}

@media (max-width:699px) {
  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label {
    font-size:.98rem !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time {
    top:2.96rem !important;
  }
}

/* V21437 - final clock face/code/time placement */
@media (max-width:950px) {
  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    position:relative !important;
    display:block !important;
  }

  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-flight-v77 .header .world-clock__face,
  html.z-flight-v77 .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    position:absolute !important;
    left:.62rem !important;
    top:50% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
  }

  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-flight-v77 .header.active .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label,
  html.z-scroll-stable-no-flight .header.active .world-clock__label {
    position:absolute !important;
    left:5.05rem !important;
    top:1.08rem !important;
    right:auto !important;
    bottom:auto !important;
    opacity:.76 !important;
    font-size:.86rem !important;
    line-height:1 !important;
    transform:none !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-flight-v77 .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    position:absolute !important;
    left:5.05rem !important;
    top:2.62rem !important;
    right:auto !important;
    bottom:auto !important;
    transform:none !important;
  }
}

@media (max-width:699px) {
  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-flight-v77 .header .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face {
    left:.48rem !important;
  }

  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label {
    left:4.72rem !important;
    top:1.08rem !important;
    font-size:.82rem !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time {
    left:4.72rem !important;
    top:2.62rem !important;
    font-size:1.24rem !important;
  }
}

/* V21437 - final visible clock code labels */
@media (max-width:950px) {
  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-flight-v77 .header.active .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label,
  html.z-scroll-stable-no-flight .header.active .world-clock__label {
    visibility:visible !important;
    top:.92rem !important;
    color:var(--color-primary) !important;
    opacity:.94 !important;
    font-size:1.04rem !important;
    font-weight:900 !important;
    line-height:1 !important;
    letter-spacing:.035em !important;
    text-shadow:0 1px 0 rgba(255,255,255,.86) !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-flight-v77 .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    top:3rem !important;
  }
}

@media (max-width:699px) {
  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label {
    visibility:visible !important;
    font-size:.98rem !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time {
    top:2.96rem !important;
  }
}

/* V21437 - unified clock-card design all screens */
.header .world-clock,
.header.active .world-clock,
html.z-flight-v77 .header .world-clock,
html.z-flight-v77 .header.active .world-clock,
html.z-scroll-stable-no-flight .header .world-clock,
html.z-scroll-stable-no-flight .header.active .world-clock {
  position:relative !important;
  display:block !important;
  overflow:hidden !important;
}

.header .world-clock::before,
.header.active .world-clock::before,
html.z-flight-v77 .header .world-clock::before,
html.z-flight-v77 .header.active .world-clock::before,
html.z-scroll-stable-no-flight .header .world-clock::before,
html.z-scroll-stable-no-flight .header.active .world-clock::before {
  content:none !important;
  display:none !important;
}

.header .world-clock__face,
.header.active .world-clock__face,
html.z-flight-v77 .header .world-clock__face,
html.z-flight-v77 .header.active .world-clock__face,
html.z-scroll-stable-no-flight .header .world-clock__face,
html.z-scroll-stable-no-flight .header.active .world-clock__face {
  position:absolute !important;
  display:block !important;
  left:.62rem !important;
  top:50% !important;
  right:auto !important;
  bottom:auto !important;
  width:3.75rem !important;
  height:3.75rem !important;
  min-width:3.75rem !important;
  min-height:3.75rem !important;
  transform:translateY(-50%) !important;
  z-index:2 !important;
}

.header .world-clock__label,
.header.active .world-clock__label,
html.z-flight-v77 .header .world-clock__label,
html.z-flight-v77 .header.active .world-clock__label,
html.z-scroll-stable-no-flight .header .world-clock__label,
html.z-scroll-stable-no-flight .header.active .world-clock__label {
  position:absolute !important;
  display:block !important;
  visibility:visible !important;
  left:auto !important;
  right:.54rem !important;
  top:.28rem !important;
  bottom:auto !important;
  width:auto !important;
  max-width:calc(100% - 4.9rem) !important;
  color:var(--color-primary) !important;
  opacity:.92 !important;
  font-size:2.25rem !important;
  font-weight:900 !important;
  line-height:.9 !important;
  letter-spacing:.01em !important;
  text-align:right !important;
  white-space:nowrap !important;
  text-shadow:none !important;
  transform:none !important;
  z-index:1 !important;
}

.header .world-clock__time,
.header.active .world-clock__time,
html.z-flight-v77 .header .world-clock__time,
html.z-flight-v77 .header.active .world-clock__time,
html.z-scroll-stable-no-flight .header .world-clock__time,
html.z-scroll-stable-no-flight .header.active .world-clock__time {
  position:absolute !important;
  display:block !important;
  left:auto !important;
  right:.58rem !important;
  top:auto !important;
  bottom:.76rem !important;
  width:auto !important;
  max-width:calc(100% - 4.9rem) !important;
  color:var(--color-primary) !important;
  font-size:1.42rem !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:right !important;
  white-space:nowrap !important;
  overflow:visible !important;
  transform:none !important;
  z-index:2 !important;
}

@media (max-width:699px) {
  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-flight-v77 .header .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face {
    left:.48rem !important;
    width:3.55rem !important;
    height:3.55rem !important;
    min-width:3.55rem !important;
    min-height:3.55rem !important;
  }

  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label {
    right:.44rem !important;
    top:.3rem !important;
    max-width:calc(100% - 4.35rem) !important;
    font-size:1.72rem !important;
    opacity:.92 !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time {
    right:.48rem !important;
    bottom:.92rem !important;
    max-width:calc(100% - 4.35rem) !important;
    font-size:1.24rem !important;
  }
}

@media (min-width:951px) {
  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-height:4.9rem !important;
    height:auto !important;
  }

  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-flight-v77 .header .world-clock__face,
  html.z-flight-v77 .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    left:.36rem !important;
    width:2.5rem !important;
    height:2.5rem !important;
    min-width:2.5rem !important;
    min-height:2.5rem !important;
  }

  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-flight-v77 .header.active .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label,
  html.z-scroll-stable-no-flight .header.active .world-clock__label {
    right:.32rem !important;
    top:.22rem !important;
    max-width:calc(100% - 3.1rem) !important;
    font-size:1.4rem !important;
    opacity:.92 !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-flight-v77 .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    right:.34rem !important;
    bottom:.44rem !important;
    max-width:calc(100% - 3.1rem) !important;
    font-size:.98rem !important;
  }
}

@media (min-width:951px) and (max-width:1199px) {
  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    min-height:4.25rem !important;
  }

  .header .world-clock__face,
  .header.active .world-clock__face,
  html.z-flight-v77 .header .world-clock__face,
  html.z-flight-v77 .header.active .world-clock__face,
  html.z-scroll-stable-no-flight .header .world-clock__face,
  html.z-scroll-stable-no-flight .header.active .world-clock__face {
    left:.22rem !important;
    width:2rem !important;
    height:2rem !important;
    min-width:2rem !important;
    min-height:2rem !important;
  }

  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-flight-v77 .header.active .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label,
  html.z-scroll-stable-no-flight .header.active .world-clock__label {
    right:.22rem !important;
    max-width:calc(100% - 2.35rem) !important;
    font-size:1.04rem !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-flight-v77 .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    right:.24rem !important;
    bottom:.42rem !important;
    max-width:calc(100% - 2.35rem) !important;
    font-size:.76rem !important;
  }
}

/* V21437 - repaired proportional analogue clock faces */
.header .world-clock,
.header.active .world-clock,
html.z-flight-v77 .header .world-clock,
html.z-flight-v77 .header.active .world-clock,
html.z-scroll-stable-no-flight .header .world-clock,
html.z-scroll-stable-no-flight .header.active .world-clock {
  --z-clock-face:3.75rem;
  --z-clock-hour-hand:1.08rem;
  --z-clock-minute-hand:1.46rem;
  --z-clock-hand-width:.18rem;
  --z-clock-pin:.42rem;
  --z-clock-face-left:.62rem;
  --z-clock-face-border:.12rem;
  --z-clock-code-size:2.25rem;
  --z-clock-time-size:1.42rem;
  --z-clock-text-gap:5rem;
  position:relative !important;
  display:block !important;
  overflow:hidden !important;
  min-height:calc(var(--z-clock-face) + 1.22rem) !important;
}

.header .world-clock__face,
.header.active .world-clock__face,
html.z-flight-v77 .header .world-clock__face,
html.z-flight-v77 .header.active .world-clock__face,
html.z-scroll-stable-no-flight .header .world-clock__face,
html.z-scroll-stable-no-flight .header.active .world-clock__face {
  position:absolute !important;
  display:block !important;
  left:var(--z-clock-face-left) !important;
  top:50% !important;
  right:auto !important;
  bottom:auto !important;
  width:var(--z-clock-face) !important;
  height:var(--z-clock-face) !important;
  min-width:var(--z-clock-face) !important;
  min-height:var(--z-clock-face) !important;
  border:var(--z-clock-face-border) solid rgb(var(--color-primary-rgb) / .74) !important;
  border-radius:50% !important;
  transform:translateY(-50%) !important;
  background:
    radial-gradient(circle at center, rgba(255,255,255,.98) 0 .2rem, transparent .21rem),
    conic-gradient(from 0deg, rgb(var(--color-primary-rgb) / .28) 0 1.2deg, transparent 1.2deg 30deg),
    radial-gradient(circle at 50% 46%, rgba(255,255,255,.98), rgb(var(--color-background-rgb) / .72)) !important;
  box-shadow:
    inset 0 .08rem .22rem rgb(var(--color-primary-rgb) / .08),
    0 .12rem .38rem rgb(var(--color-primary-rgb) / .1) !important;
  z-index:2 !important;
}

.header .world-clock__hand,
.header.active .world-clock__hand,
html.z-flight-v77 .header .world-clock__hand,
html.z-flight-v77 .header.active .world-clock__hand,
html.z-scroll-stable-no-flight .header .world-clock__hand,
html.z-scroll-stable-no-flight .header.active .world-clock__hand {
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:var(--z-clock-hand-width) !important;
  border-radius:999px !important;
  background:var(--color-primary) !important;
  box-shadow:0 .03rem .04rem rgb(var(--color-primary-rgb) / .18) !important;
  transform-origin:50% 100% !important;
}

.header .world-clock__hand--hour,
.header.active .world-clock__hand--hour,
html.z-flight-v77 .header .world-clock__hand--hour,
html.z-flight-v77 .header.active .world-clock__hand--hour,
html.z-scroll-stable-no-flight .header .world-clock__hand--hour,
html.z-scroll-stable-no-flight .header.active .world-clock__hand--hour {
  height:var(--z-clock-hour-hand) !important;
  width:calc(var(--z-clock-hand-width) + .04rem) !important;
  transform:translate(-50%, -100%) rotate(var(--clock-hour-angle, 0deg)) !important;
}

.header .world-clock__hand--minute,
.header.active .world-clock__hand--minute,
html.z-flight-v77 .header .world-clock__hand--minute,
html.z-flight-v77 .header.active .world-clock__hand--minute,
html.z-scroll-stable-no-flight .header .world-clock__hand--minute,
html.z-scroll-stable-no-flight .header.active .world-clock__hand--minute {
  height:var(--z-clock-minute-hand) !important;
  width:var(--z-clock-hand-width) !important;
  transform:translate(-50%, -100%) rotate(var(--clock-minute-angle, 0deg)) !important;
}

.header .world-clock__pin,
.header.active .world-clock__pin,
html.z-flight-v77 .header .world-clock__pin,
html.z-flight-v77 .header.active .world-clock__pin,
html.z-scroll-stable-no-flight .header .world-clock__pin,
html.z-scroll-stable-no-flight .header.active .world-clock__pin {
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:var(--z-clock-pin) !important;
  height:var(--z-clock-pin) !important;
  border:.08rem solid #fff !important;
  border-radius:50% !important;
  background:var(--color-primary) !important;
  box-shadow:0 .08rem .2rem rgb(var(--color-primary-rgb) / .22) !important;
  transform:translate(-50%, -50%) !important;
}

.header .world-clock__label,
.header.active .world-clock__label,
html.z-flight-v77 .header .world-clock__label,
html.z-flight-v77 .header.active .world-clock__label,
html.z-scroll-stable-no-flight .header .world-clock__label,
html.z-scroll-stable-no-flight .header.active .world-clock__label {
  position:absolute !important;
  display:block !important;
  visibility:visible !important;
  left:auto !important;
  right:.54rem !important;
  top:.28rem !important;
  max-width:calc(100% - var(--z-clock-text-gap)) !important;
  color:var(--color-primary) !important;
  opacity:.92 !important;
  font-size:var(--z-clock-code-size) !important;
  font-weight:900 !important;
  line-height:.9 !important;
  letter-spacing:.01em !important;
  text-align:right !important;
  white-space:nowrap !important;
  text-shadow:none !important;
  transform:none !important;
  z-index:1 !important;
}

.header .world-clock__time,
.header.active .world-clock__time,
html.z-flight-v77 .header .world-clock__time,
html.z-flight-v77 .header.active .world-clock__time,
html.z-scroll-stable-no-flight .header .world-clock__time,
html.z-scroll-stable-no-flight .header.active .world-clock__time {
  position:absolute !important;
  display:block !important;
  left:auto !important;
  right:.58rem !important;
  top:auto !important;
  bottom:.76rem !important;
  max-width:calc(100% - var(--z-clock-text-gap)) !important;
  color:var(--color-primary) !important;
  font-size:var(--z-clock-time-size) !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:-.015em !important;
  text-align:right !important;
  white-space:nowrap !important;
  transform:none !important;
  z-index:2 !important;
}

@media (max-width:699px) {
  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    --z-clock-face:clamp(4rem, 12.5vw, 5.15rem);
    --z-clock-hour-hand:clamp(1.16rem, 3.8vw, 1.48rem);
    --z-clock-minute-hand:clamp(1.5rem, 5vw, 2rem);
    --z-clock-hand-width:.2rem;
    --z-clock-pin:.46rem;
    --z-clock-face-left:.48rem;
    --z-clock-code-size:clamp(1.46rem, 5.6vw, 2.08rem);
    --z-clock-time-size:clamp(1.02rem, 4.3vw, 1.42rem);
    --z-clock-text-gap:clamp(4.6rem, 14vw, 6rem);
    min-height:clamp(6.35rem, 18vw, 7.25rem) !important;
  }
}

@media (min-width:700px) and (max-width:950px) {
  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    --z-clock-face:4.8rem;
    --z-clock-hour-hand:1.38rem;
    --z-clock-minute-hand:1.85rem;
    --z-clock-hand-width:.19rem;
    --z-clock-pin:.46rem;
    --z-clock-face-left:.5rem;
    --z-clock-code-size:2.18rem;
    --z-clock-time-size:1.42rem;
    --z-clock-text-gap:5.75rem;
    min-height:6.75rem !important;
  }
}

@media (min-width:951px) {
  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    --z-clock-face:3.25rem;
    --z-clock-hour-hand:.94rem;
    --z-clock-minute-hand:1.26rem;
    --z-clock-hand-width:.14rem;
    --z-clock-pin:.34rem;
    --z-clock-face-left:.35rem;
    --z-clock-face-border:.1rem;
    --z-clock-code-size:1.6rem;
    --z-clock-time-size:1.08rem;
    --z-clock-text-gap:3.88rem;
    min-height:5.15rem !important;
  }
}

@media (min-width:951px) and (max-width:1199px) {
  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    --z-clock-face:2.55rem;
    --z-clock-hour-hand:.74rem;
    --z-clock-minute-hand:.99rem;
    --z-clock-hand-width:.12rem;
    --z-clock-pin:.3rem;
    --z-clock-face-left:.24rem;
    --z-clock-code-size:1.16rem;
    --z-clock-time-size:.78rem;
    --z-clock-text-gap:2.9rem;
    min-height:4.55rem !important;
  }
}

@media (max-width:340px) {
  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    --z-clock-face:3.72rem;
    --z-clock-hour-hand:1.08rem;
    --z-clock-minute-hand:1.45rem;
    --z-clock-hand-width:.17rem;
    --z-clock-pin:.42rem;
    --z-clock-code-size:1.34rem;
    --z-clock-time-size:.98rem;
    --z-clock-text-gap:4.34rem;
  }
}

/* V21437 - phone language flags locked to two rows */
@media (max-width:699px) {
  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-flight-v77 .header .site-language-flags,
  html.z-flight-v77 .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-content:center !important;
    align-items:center !important;
    column-gap:.12rem !important;
    row-gap:.16rem !important;
    width:min(100%, 33rem) !important;
    max-width:calc(100vw - 1.75rem) !important;
    min-width:0 !important;
    margin:.12rem auto 0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
  }

  .header .site-language-flags .flag-lang,
  .header.active .site-language-flags .flag-lang,
  html.z-flight-v77 .header .site-language-flags .flag-lang,
  html.z-flight-v77 .header.active .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    flex:0 0 calc((100% - .72rem) / 7) !important;
    width:calc((100% - .72rem) / 7) !important;
    max-width:calc((100% - .72rem) / 7) !important;
    min-width:0 !important;
    height:clamp(1.16rem, 3.6vw, 1.55rem) !important;
    min-height:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:.32rem !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  .header .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon,
  html.z-flight-v77 .header .site-language-flags .flag-icon,
  html.z-flight-v77 .header.active .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-icon {
    display:block !important;
    font-size:clamp(1rem, 3.2vw, 1.3rem) !important;
    line-height:1 !important;
  }
}

@media (max-width:340px) {
  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-flight-v77 .header .site-language-flags,
  html.z-flight-v77 .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    column-gap:.06rem !important;
    row-gap:.1rem !important;
    max-width:calc(100vw - 1.2rem) !important;
  }

  .header .site-language-flags .flag-lang,
  .header.active .site-language-flags .flag-lang,
  html.z-flight-v77 .header .site-language-flags .flag-lang,
  html.z-flight-v77 .header.active .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    flex-basis:calc((100% - .36rem) / 7) !important;
    width:calc((100% - .36rem) / 7) !important;
    max-width:calc((100% - .36rem) / 7) !important;
  }
}

/* V21437 - phone clocks compact two-row layout */
@media (max-width:699px) {
  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows:repeat(3, minmax(3.8rem, auto)) !important;
    grid-auto-rows:minmax(3.8rem, auto) !important;
    gap:.26rem !important;
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    height:auto !important;
    margin:.65rem auto .18rem !important;
    padding:.38rem !important;
    border-radius:1.25rem !important;
    box-sizing:border-box !important;
  }

  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    --z-clock-face:clamp(2.08rem, 7vw, 2.75rem);
    --z-clock-hour-hand:clamp(.6rem, 2vw, .8rem);
    --z-clock-minute-hand:clamp(.8rem, 2.65vw, 1.06rem);
    --z-clock-hand-width:.1rem;
    --z-clock-pin:.26rem;
    --z-clock-face-left:.28rem;
    --z-clock-face-border:.08rem;
    --z-clock-code-size:clamp(.92rem, 3vw, 1.16rem);
    --z-clock-time-size:clamp(.74rem, 2.38vw, .92rem);
    --z-clock-text-gap:clamp(2.58rem, 8.35vw, 3.28rem);
    min-height:3.8rem !important;
    height:auto !important;
    border-radius:.78rem !important;
  }

  .header .world-clock:nth-child(1),
  .header.active .world-clock:nth-child(1) {
    grid-column:auto / span 1 !important;
    grid-row:auto !important;
  }

  .header .world-clock:nth-child(2),
  .header.active .world-clock:nth-child(2) {
    grid-column:auto / span 1 !important;
    grid-row:auto !important;
  }

  .header .world-clock:nth-child(3),
  .header.active .world-clock:nth-child(3) {
    grid-column:auto / span 1 !important;
    grid-row:auto !important;
  }

  .header .world-clock:nth-child(4),
  .header.active .world-clock:nth-child(4) {
    grid-column:auto / span 1 !important;
    grid-row:auto !important;
  }

  .header .world-clock:nth-child(5),
  .header.active .world-clock:nth-child(5) {
    grid-column:auto / span 1 !important;
    grid-row:auto !important;
  }

  .header .world-clock:nth-child(6),
  .header.active .world-clock:nth-child(6) {
    grid-column:auto / span 1 !important;
    grid-row:auto !important;
  }

  .header .world-clock:nth-child(7),
  .header.active .world-clock:nth-child(7) {
    grid-column:auto / span 1 !important;
    grid-row:auto !important;
  }

  .header .world-clock:nth-child(8),
  .header.active .world-clock:nth-child(8) {
    grid-column:auto / span 1 !important;
    grid-row:auto !important;
  }

  .header .world-clock:nth-child(9),
  .header.active .world-clock:nth-child(9) {
    grid-column:auto / span 1 !important;
    grid-row:auto !important;
  }

  .header .world-clock__label,
  .header.active .world-clock__label,
  html.z-flight-v77 .header .world-clock__label,
  html.z-flight-v77 .header.active .world-clock__label,
  html.z-scroll-stable-no-flight .header .world-clock__label,
  html.z-scroll-stable-no-flight .header.active .world-clock__label {
    right:.32rem !important;
    top:.2rem !important;
  }

  .header .world-clock__time,
  .header.active .world-clock__time,
  html.z-flight-v77 .header .world-clock__time,
  html.z-flight-v77 .header.active .world-clock__time,
  html.z-scroll-stable-no-flight .header .world-clock__time,
  html.z-scroll-stable-no-flight .header.active .world-clock__time {
    right:.34rem !important;
    bottom:.42rem !important;
  }
}

@media (max-width:340px) {
  .header .world-clocks,
  .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    width:100% !important;
    max-width:100% !important;
    gap:.18rem !important;
    padding:.32rem !important;
  }

  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    --z-clock-face:1.92rem;
    --z-clock-hour-hand:.56rem;
    --z-clock-minute-hand:.74rem;
    --z-clock-code-size:.92rem;
    --z-clock-time-size:.74rem;
    --z-clock-text-gap:2.5rem;
    min-height:3.7rem !important;
  }
}

/* V21437 - remove world-clock group backdrop everywhere */
.header .world-clocks,
.header.active .world-clocks,
html.z-flight-v77 .header .world-clocks,
html.z-flight-v77 .header.active .world-clocks,
html.z-scroll-stable-no-flight .header .world-clocks,
html.z-scroll-stable-no-flight .header.active .world-clocks {
  border:0 !important;
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}

/* V21437 - auto-collapse visitor info panel after timer */
.header .visitor-metric--persistent.is-auto-collapsed,
.header .visitor-metric.visitor-metric--persistent.is-auto-collapsed,
.header.active .visitor-metric--persistent.is-auto-collapsed,
.header.active .visitor-metric.visitor-metric--persistent.is-auto-collapsed,
html.z-flight-v77 .header .visitor-metric--persistent.is-auto-collapsed,
html.z-flight-v77 .header .visitor-metric.visitor-metric--persistent.is-auto-collapsed,
html.z-flight-v77 .header.active .visitor-metric--persistent.is-auto-collapsed,
html.z-flight-v77 .header.active .visitor-metric.visitor-metric--persistent.is-auto-collapsed,
html.z-scroll-stable-no-flight .header .visitor-metric--persistent.is-auto-collapsed,
html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent.is-auto-collapsed,
html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent.is-auto-collapsed,
html.z-scroll-stable-no-flight .header.active .visitor-metric.visitor-metric--persistent.is-auto-collapsed,
.header .visitor-metric--persistent[hidden],
.header .visitor-metric.visitor-metric--persistent[hidden],
.header.active .visitor-metric--persistent[hidden],
.header.active .visitor-metric.visitor-metric--persistent[hidden] {
  display:block !important;
  grid-column:auto !important;
  grid-row:auto !important;
  width:0 !important;
  max-width:0 !important;
  min-width:0 !important;
  height:0 !important;
  min-height:0 !important;
  max-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  opacity:0 !important;
  visibility:hidden !important;
  overflow:hidden !important;
  pointer-events:none !important;
  transform:none !important;
}

.header .visitor-metric--persistent.is-auto-collapsed .visitor-metric__chip,
.header .visitor-metric.visitor-metric--persistent.is-auto-collapsed .visitor-metric__chip,
.header.active .visitor-metric--persistent.is-auto-collapsed .visitor-metric__chip,
.header.active .visitor-metric.visitor-metric--persistent.is-auto-collapsed .visitor-metric__chip {
  display:none !important;
}

.header .visitor-metric--persistent[hidden],
.header .visitor-metric.visitor-metric--persistent[hidden],
.header.active .visitor-metric--persistent[hidden],
.header.active .visitor-metric.visitor-metric--persistent[hidden],
html.z-flight-v77 .header .visitor-metric--persistent[hidden],
html.z-flight-v77 .header .visitor-metric.visitor-metric--persistent[hidden],
html.z-scroll-stable-no-flight .header .visitor-metric--persistent[hidden],
html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent[hidden] {
  display:none !important;
}

@media (min-width:951px) {
  .header .visitor-metric--persistent.is-auto-collapsed,
  .header .visitor-metric.visitor-metric--persistent.is-auto-collapsed,
  .header.active .visitor-metric--persistent.is-auto-collapsed,
  .header.active .visitor-metric.visitor-metric--persistent.is-auto-collapsed,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent.is-auto-collapsed,
  html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent.is-auto-collapsed,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent.is-auto-collapsed,
  html.z-scroll-stable-no-flight .header.active .visitor-metric.visitor-metric--persistent.is-auto-collapsed {
    grid-column:2 !important;
    grid-row:2 !important;
    justify-self:center !important;
  }
}

/* V21437 - compact phone tools controls */
@media (max-width:700px) {
  body.page-tools-index .tools-popular {
    width:min(calc(100% - 3.2rem), 37.8rem) !important;
    max-width:37.8rem !important;
    margin:.55rem auto .68rem !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
    overflow:visible !important;
  }

  body.page-tools-index .tools-section-heading--popular {
    display:flex !important;
    justify-content:center !important;
    margin:0 0 .24rem !important;
  }

  body.page-tools-index .tools-section-heading--popular h2 {
    margin:0 !important;
    padding:.22rem .62rem !important;
    border:1px solid rgb(var(--color-primary-rgb) / .28) !important;
    border-radius:.65rem !important;
    background:linear-gradient(180deg, rgba(255,255,255,.97), rgb(var(--color-surface-blue-rgb) / .36)) !important;
    color:var(--color-primary) !important;
    font-size:.76rem !important;
    line-height:1 !important;
    letter-spacing:0 !important;
  }

  body.page-tools-index .tools-popular__grid {
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:.18rem !important;
  }

  body.page-tools-index .tools-popular__card {
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    align-items:center !important;
    min-height:4.75rem !important;
    aspect-ratio:auto !important;
    padding:.24rem .16rem !important;
    border:1px solid rgb(var(--color-primary-rgb) / .24) !important;
    border-radius:.72rem !important;
    background:linear-gradient(180deg, rgba(255,255,255,.98), rgb(var(--color-surface-blue-rgb) / .46)) !important;
    color:var(--color-primary) !important;
    text-align:center !important;
    text-decoration:none !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.92), 0 .42rem .9rem rgb(var(--color-primary-rgb) / .08) !important;
    overflow:visible !important;
  }

  body.page-tools-index .tools-popular__card span {
    font-size:.58rem !important;
    line-height:1.05 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
  }

  body.page-tools-index .tools-popular__card strong {
    display:block !important;
    -webkit-line-clamp:unset !important;
    -webkit-box-orient:initial !important;
    width:100% !important;
    max-width:100% !important;
    margin:.12rem 0 .18rem !important;
    font-size:clamp(.66rem, 1.9vw, .78rem) !important;
    line-height:1.08 !important;
    overflow:visible !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }

  body.page-tools-index .tools-popular__card small {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:center !important;
    min-width:4.2rem !important;
    min-height:1.24rem !important;
    margin:0 auto !important;
    padding:.15rem .42rem !important;
    border:1px solid rgb(var(--color-primary-rgb) / .58) !important;
    border-radius:999px !important;
    background:linear-gradient(180deg, rgb(139 190 230) 0%, rgb(var(--color-primary-rgb) / .96) 58%, rgb(var(--color-primary-hover-rgb) / 1) 100%) !important;
    color:#fff !important;
    box-shadow:inset 0 1px 0 rgb(255 255 255 / .55), inset 0 -.16rem 0 rgb(0 0 0 / .13), 0 .18rem 0 rgb(var(--color-primary-hover-rgb) / .72), 0 .45rem .75rem rgb(var(--color-primary-rgb) / .24) !important;
    font-size:.62rem !important;
    font-weight:900 !important;
    line-height:1 !important;
    text-shadow:0 1px 1px rgb(0 0 0 / .24) !important;
    white-space:nowrap !important;
  }

  body.page-tools-index .tools-main > .container > .z-anchor-strip[aria-label="Tool categories"] {
    display:none !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:.22rem !important;
    width:min(calc(100% - 1.2rem), 24rem) !important;
    max-width:24rem !important;
    margin:.56rem auto .68rem !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
  }

  body.page-tools-index .tools-main > .container > .z-anchor-strip[aria-label="Tool categories"] a,
  body.page-tools-index .tools-main > .container > .z-anchor-strip[aria-label="Tool categories"] a:visited,
  body.page-tools-index .tools-main > .container > .z-anchor-strip[aria-label="Tool categories"] a:not(:hover) {
    width:100% !important;
    min-width:0 !important;
    min-height:1.9rem !important;
    max-height:2.2rem !important;
    aspect-ratio:auto !important;
    padding:.16rem .14rem !important;
    border:1px solid var(--z-topic-border, rgb(var(--color-primary-rgb) / .24)) !important;
    border-radius:.46rem !important;
    background:linear-gradient(180deg, rgba(255,255,255,.98), var(--z-topic-bg, rgb(var(--color-surface-blue-rgb) / .42))) !important;
    color:var(--color-primary) !important;
    font-size:clamp(.58rem, 2.25vw, .72rem) !important;
    font-weight:900 !important;
    line-height:1.04 !important;
    text-align:center !important;
    white-space:normal !important;
    text-wrap:balance !important;
    overflow:hidden !important;
    overflow-wrap:anywhere !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 .32rem .75rem var(--z-topic-shadow, rgb(var(--color-primary-rgb) / .06)) !important;
  }

  body.page-tools-index .tools-filter {
    width:min(calc(100% - 3.2rem), 37.8rem) !important;
    max-width:37.8rem !important;
    margin:.58rem auto .82rem !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
  }

  body.page-tools-index .tools-section-heading--inline {
    margin:0 0 .26rem !important;
    text-align:center !important;
  }

  body.page-tools-index .tools-section-heading--inline h2,
  body.page-tools-index .tools-filter__title {
    margin:0 !important;
    font-size:1.05rem !important;
    line-height:1.12 !important;
  }

  body.page-tools-index .tools-filter__buttons {
    display:grid !important;
    grid-template-columns:repeat(10, minmax(0, 1fr)) !important;
    gap:.42rem .34rem !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
  }

  body.page-tools-index .tools-filter__button,
  body.page-tools-index .tools-filter__button.z-topic-filter,
  body.page-tools-index .tools-filter__button.z-topic-filter--all {
    width:100% !important;
    min-width:0 !important;
    min-height:2.85rem !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    grid-column:span 2 !important;
    padding:.34rem .28rem !important;
    border:1px solid var(--z-topic-border, rgb(var(--color-primary-rgb) / .24)) !important;
    border-radius:999px !important;
    background:linear-gradient(180deg, rgb(255 255 255 / .84) 0%, var(--z-topic-bg, rgb(var(--color-surface-blue-rgb) / .42)) 100%) !important;
    color:var(--color-primary) !important;
    font-size:clamp(.62rem, 1.9vw, .84rem) !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    text-align:center !important;
    white-space:normal !important;
    text-wrap:balance !important;
    overflow:hidden !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
    box-shadow:inset 0 1px 0 rgb(255 255 255 / .9), 0 .45rem 1.25rem var(--z-topic-shadow, rgb(var(--color-primary-rgb) / .08)) !important;
  }

  body.page-tools-index .tools-filter__button:nth-child(6) {
    grid-column:2 / span 2 !important;
  }

  body.page-tools-index .tools-filter__button.is-active,
  body.page-tools-index .tools-filter__button.z-topic-filter.is-active,
  body.page-tools-index .tools-filter__button.z-topic-filter--all.is-active {
    border-color:var(--color-primary) !important;
    background:var(--color-primary) !important;
    background-image:none !important;
    color:#fff !important;
    box-shadow:inset 0 1px 0 rgb(255 255 255 / .24), 0 .7rem 1.55rem rgb(var(--color-primary-rgb) / .22) !important;
  }

  body.page-tools-index .tools-filter__buttons {
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:center !important;
    gap:.42rem .46rem !important;
  }

  body.page-tools-index .tools-filter__button,
  body.page-tools-index .tools-filter__button.z-topic-filter,
  body.page-tools-index .tools-filter__button.z-topic-filter--all {
    flex:0 1 auto !important;
    grid-column:auto !important;
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:.34rem .76rem !important;
    overflow:visible !important;
    white-space:normal !important;
  }

  body.page-tools-index .tools-index-lead,
  body.page-tools-index .tools-main > .container > .tool-privacy-note {
    width:min(calc(100% - 3.2rem), 37.8rem) !important;
    max-width:37.8rem !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.page-tools-index .tools-index-lead {
    margin-top:.65rem !important;
    margin-bottom:1.15rem !important;
    font-size:1.28rem !important;
    line-height:1.42 !important;
    font-weight:800 !important;
  }

  body.page-tools-index .z-tools-privacy-suite .z-tools-tabs {
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:.3rem !important;
    width:min(calc(100% - 1.2rem), 30rem) !important;
    max-width:30rem !important;
    margin:.75rem auto 1rem !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
  }

  body.page-tools-index .z-tools-privacy-suite .z-tools-tab {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-width:0 !important;
    min-height:3.2rem !important;
    aspect-ratio:1 / .78 !important;
    padding:.26rem .18rem !important;
    border:1px solid rgb(var(--color-primary-rgb) / .22) !important;
    border-radius:.62rem !important;
    background:linear-gradient(180deg, rgba(255,255,255,.98), rgb(var(--color-surface-blue-rgb) / .44)) !important;
    color:var(--color-primary) !important;
    font-size:clamp(.54rem, 2.05vw, .7rem) !important;
    font-weight:900 !important;
    line-height:1.04 !important;
    text-align:center !important;
    white-space:normal !important;
    text-wrap:balance !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 .32rem .75rem rgb(var(--color-primary-rgb) / .06) !important;
  }

  body.page-tools-index .z-tools-privacy-suite .z-tools-tab.is-active {
    background:linear-gradient(180deg, rgb(var(--color-primary-rgb) / .98), rgb(var(--color-primary-hover-rgb) / .96)) !important;
    color:#fff !important;
    border-color:rgb(var(--color-primary-rgb) / .62) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.32), 0 .36rem .85rem rgb(var(--color-primary-rgb) / .18) !important;
  }
}

@media (max-width:360px) {
  html[lang="en"] body.page-tools-index .tools-filter__button,
  html[lang="en"] body.page-tools-index .tools-filter__button.z-topic-filter,
  html[lang="en"] body.page-tools-index .tools-filter__button.z-topic-filter--all {
    padding:.34rem .08rem !important;
    font-size:.58rem !important;
  }

  body.page-tools-index .z-tools-privacy-suite .z-tools-tabs {
    width:calc(100% - .9rem) !important;
  }

  body.page-tools-index .tools-main > .container > .z-anchor-strip[aria-label="Tool categories"] {
    display:none !important;
  }

  body.page-tools-index .z-tools-privacy-suite .z-tools-tabs {
    gap:.22rem !important;
  }
}

/* V21437 late QA: compact mobile product CTAs and subtle required-field hints. */
body.page-products .product-compliance-route p:has(.z-cta-link[href*="counterfeit-report"]) {
  text-align:center !important;
}

body.page-products .product-compliance-route .z-cta-link[href*="counterfeit-report"] {
  width:auto !important;
  min-width:8rem !important;
  min-height:3.4rem !important;
  max-width:100% !important;
  margin:.35rem auto 0 !important;
  padding:.58rem 1.45rem !important;
  border-radius:999px !important;
  font-size:1.16rem !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

/* the rose only after the visitor has touched the field and left it wrong —
   an untouched form opens neutral, the asterisk in the label marks what is required */
body.page-contact .contact-form .input__data[required]:user-invalid:not(.is-invalid):not(.is-valid),
body.page-contact .contact-form .textarea[required]:user-invalid:not(.is-invalid):not(.is-valid) {
  border-color:rgba(224, 74, 96, .26) !important;
  box-shadow:
    0 0 0 1px rgba(224, 74, 96, .08),
    0 .4rem 1.2rem rgb(var(--color-primary-rgb) / .035) !important;
}

body.page-contact .contact-form .input__data[required]:focus,
body.page-contact .contact-form .textarea[required]:focus,
body.page-contact .contact-form .z-contact-select__button[aria-required="true"]:focus,
body.page-contact .contact-form .z-contact-select__button[aria-required="true"]:focus-visible,
body.page-contact .contact-form .z-contact-select__button[data-contact-select-button="inquiryType"]:focus,
body.page-contact .contact-form .z-contact-select__button[data-contact-select-button="inquiryType"]:focus-visible {
  border-color:var(--color-secondary) !important;
  box-shadow:0 0 0 .32rem rgb(var(--color-secondary-rgb) / .16), 0 .8rem 1.8rem rgb(var(--color-primary-rgb) / .08) !important;
}

/* a keyboard visitor keeps the site's ring on these fields — the pointer glow above wins otherwise */
body.page-contact .contact-form .input__data[required]:focus-visible,
body.page-contact .contact-form .textarea[required]:focus-visible,
body.page-contact .contact-form .z-contact-select__button[aria-required="true"]:focus-visible,
body.page-contact .contact-form .z-contact-select__button[data-contact-select-button="inquiryType"]:focus-visible {
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.24rem !important;
  box-shadow:0 0 0 .57rem rgba(255,255,255,.9), 0 0 0 .87rem var(--color-primary) !important;
}

@media (max-width:700px) {
  body.page-products .product-card-actions {
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    align-items:stretch !important;
    gap:.52rem !important;
    width:100% !important;
    margin-top:1rem !important;
  }

  body.page-products .product-card-actions .z-cta-link,
  body.page-products .product-card-actions .z-cta-link:visited {
    width:100% !important;
    min-width:0 !important;
    min-height:3.2rem !important;
    padding:.46rem .34rem !important;
    border-radius:999px !important;
    font-size:clamp(.82rem, 3.05vw, 1rem) !important;
    font-weight:800 !important;
    line-height:1.06 !important;
    text-align:center !important;
    white-space:normal !important;
    text-wrap:balance !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }

  body.page-products .product-compliance-route .z-cta-link[href*="counterfeit-report"] {
    min-width:7.2rem !important;
    min-height:3.15rem !important;
    padding:.48rem 1.25rem !important;
    font-size:1.04rem !important;
  }
}

@media (max-width:380px) {
  body.page-products .product-card-actions {
    gap:.38rem !important;
  }

  body.page-products .product-card-actions .z-cta-link,
  body.page-products .product-card-actions .z-cta-link:visited {
    min-height:2.9rem !important;
    padding:.38rem .22rem !important;
    font-size:.78rem !important;
  }
}

/* V21437 late QA: compact page header bands and footer-adjacent gaps. */
body:not(.page-home) .breadcrumb__container {
  padding-top:clamp(1.05rem, 1.9vw, 1.8rem) !important;
  padding-bottom:clamp(.7rem, 1.35vw, 1.25rem) !important;
}

body:not(.page-home) .page-title {
  margin-bottom:.55rem !important;
  padding:clamp(1.05rem, 1.8vw, 1.55rem) clamp(2rem, 3vw, 3.2rem) !important;
  line-height:1.04 !important;
}

body:not(.page-home) .breadcrumb {
  margin-left:clamp(2rem, 3.2vw, 4rem) !important;
}

main.tmpl-home > .breadcrumb__container + section {
  padding-top:clamp(.35rem, .9vw, 1rem) !important;
}

body.page-team .team-intro {
  padding-top:.35rem !important;
  padding-bottom:1.6rem !important;
}

body.page-team .team-welcome-expanded,
html.z-scroll-stable-no-flight body.page-team .team-welcome-expanded {
  margin-bottom:2rem !important;
  padding-top:1.55rem !important;
  padding-bottom:2.2rem !important;
}

body.page-team .team-welcome-expanded h1 {
  margin-bottom:1.15rem !important;
}

body.page-products .products {
  padding-top:.35rem !important;
}

body.page-products .zphc-products-modern .custom-h2.center {
  margin-top:0 !important;
  margin-bottom:.9rem !important;
}

body.page-products .zphc-products-modern .products-lead {
  margin-bottom:2.2rem !important;
}

body.page-home .welcome-main {
  padding-bottom:.65rem !important;
}

body.page-home .welcome-main .container__intro {
  padding-bottom:.9rem !important;
}

body.page-home .welcome-main .container__intro > p:last-of-type {
  margin-bottom:0 !important;
}

body.page-anti .anti_doping,
body.page-anti .legal-document,
body.page-anti .document-style,
body.page-anti main.document-main > .anti_doping {
  margin-bottom:1.35rem !important;
  padding-bottom:1.8rem !important;
}

body.page-anti .anti_doping > :last-child {
  margin-bottom:0 !important;
}

body.page-anti .anti-wrap {
  padding-bottom:1.35rem !important;
}

body.page-tools-index .tools-main {
  padding-bottom:1.4rem !important;
}

body.page-tools-index .z-tools-privacy-suite {
  margin-bottom:.9rem !important;
}

body.page-tools-index .z-tools-privacy-suite {
  padding-bottom:1.4rem !important;
}

@media (max-width:700px) {
  body:not(.page-home) .breadcrumb__container {
    padding-top:.78rem !important;
    padding-bottom:.62rem !important;
  }

  body:not(.page-home) .page-title {
    margin-bottom:.4rem !important;
    padding:.76rem 1.55rem !important;
    font-size:1.95rem !important;
  }

  body:not(.page-home) .breadcrumb {
    margin-left:1.55rem !important;
    font-size:1.24rem !important;
    line-height:1.25 !important;
  }

  main.tmpl-home > .breadcrumb__container + section {
    padding-top:.2rem !important;
  }

  body.page-team .team-intro,
  body.page-products .products {
    padding-top:.2rem !important;
  }

  body.page-team .team-welcome-expanded,
  html.z-scroll-stable-no-flight body.page-team .team-welcome-expanded {
    margin-bottom:1.35rem !important;
    padding-top:1.15rem !important;
    padding-bottom:1.65rem !important;
  }

  body.page-team .team-welcome-expanded h1 {
    margin-bottom:.82rem !important;
    font-size:1.95rem !important;
    line-height:1.22 !important;
  }

  body.page-products .zphc-products-modern .custom-h2.center {
    margin-bottom:.7rem !important;
  }

  body.page-products .zphc-products-modern .products-lead {
    margin-bottom:1.45rem !important;
  }

  body.page-home .welcome-main {
    padding-bottom:.5rem !important;
  }

  body.page-home .welcome-main .container__intro {
    padding-bottom:.75rem !important;
  }

  body.page-home .welcome-main .container__intro > p:last-of-type {
    margin-bottom:0 !important;
  }

  body.page-anti .anti_doping,
  body.page-anti .legal-document,
  body.page-anti .document-style,
  body.page-anti main.document-main > .anti_doping {
    margin-bottom:.9rem !important;
    padding-bottom:1.25rem !important;
  }

  body.page-tools-index .tools-main {
    padding-bottom:.9rem !important;
  }

  body.page-anti .anti-wrap {
    padding-bottom:.95rem !important;
  }

  body.page-tools-index .z-tools-privacy-suite {
    padding-bottom:1rem !important;
  }
}

/* final article share placement */
body.page-blog .z-style-article > .z-share.z-social-actions,
body.page-blog .z-style-article > .z-share.z-social-actions--article {
  position:static !important;
  inset:auto !important;
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  width:100% !important;
  max-width:none !important;
  margin:.35rem 0 1.15rem !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.page-blog .z-style-article > .z-share.z-social-actions .z-social-btn,
body.page-blog .z-style-article > .z-share.z-social-actions .z-social-like,
body.page-blog .z-style-article > .z-share.z-social-actions--article .z-social-btn,
body.page-blog .z-style-article > .z-share.z-social-actions--article .z-social-like {
  height:2.76rem !important;
  min-height:2.76rem !important;
  max-height:2.76rem !important;
}

body.page-blog .z-style-article > .z-share.z-social-actions .z-social-btn:not(.z-social-like):not([data-z-share="native"]),
body.page-blog .z-style-article > .z-share.z-social-actions--article .z-social-btn:not(.z-social-like):not([data-z-share="native"]) {
  width:2.76rem !important;
  min-width:2.76rem !important;
  max-width:2.76rem !important;
}

body.page-blog .z-style-article > .z-share.z-social-actions .z-social-btn.z-social-like,
body.page-blog .z-style-article > .z-share.z-social-actions--article .z-social-btn.z-social-like {
  width:auto !important;
  min-width:5.65rem !important;
  max-width:none !important;
  padding:.2rem .58rem !important;
  white-space:nowrap !important;
}

@media (max-width:700px) {
  body.page-blog .z-style-article > .z-share.z-social-actions,
  body.page-blog .z-style-article > .z-share.z-social-actions--article {
    justify-content:center !important;
  }
}

/* final desktop header symmetry */
@media (min-width:951px) {
  .header .header-logo,
  .header.active .header-logo,
  html.z-flight-v77 .header .header-logo,
  html.z-flight-v77 .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo,
  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-flight-v77 .header .site-language-flags,
  html.z-flight-v77 .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    transform:translateY(-14px) !important;
  }
}

@media (min-width:951px) and (max-width:1199px) {
  .header .header-logo,
  .header.active .header-logo,
  html.z-flight-v77 .header .header-logo,
  html.z-flight-v77 .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo,
  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-flight-v77 .header .site-language-flags,
  html.z-flight-v77 .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    transform:translateY(-18px) !important;
  }
}

@media (min-width:1200px) and (max-width:1320px) {
  .header .header-logo,
  .header.active .header-logo,
  html.z-flight-v77 .header .header-logo,
  html.z-flight-v77 .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo,
  .header .site-language-flags,
  .header.active .site-language-flags,
  html.z-flight-v77 .header .site-language-flags,
  html.z-flight-v77 .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    transform:translateY(-18px) !important;
  }
}

@media (min-width:1281px) and (max-width:1320px) {
  html[lang="ja"] .header .header-logo,
  html[lang="ja"] .header.active .header-logo,
  html[lang="ja"].z-flight-v77 .header .header-logo,
  html[lang="ja"].z-flight-v77 .header.active .header-logo,
  html[lang="ja"].z-scroll-stable-no-flight .header .header-logo,
  html[lang="ja"].z-scroll-stable-no-flight .header.active .header-logo,
  html[lang="ja"] .header .site-language-flags,
  html[lang="ja"] .header.active .site-language-flags,
  html[lang="ja"].z-flight-v77 .header .site-language-flags,
  html[lang="ja"].z-flight-v77 .header.active .site-language-flags,
  html[lang="ja"].z-scroll-stable-no-flight .header .site-language-flags,
  html[lang="ja"].z-scroll-stable-no-flight .header.active .site-language-flags {
    transform:translateY(-18px) !important;
  }
}

/* final multilingual menu label fit */
@media (min-width:951px) {
  .header #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link,
  html.z-flight-v77 .header #primary-menu.top-menu .top-menu__link,
  html.z-flight-v77 .header.active #primary-menu.top-menu .top-menu__link,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu .top-menu__link,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu .top-menu__link {
    min-width:0 !important;
    text-align:center !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:manual !important;
    letter-spacing:0 !important;
    overflow:visible !important;
  }

  .header #primary-menu.top-menu .top-menu__label-fit,
  .header.active #primary-menu.top-menu .top-menu__label-fit,
  html.z-flight-v77 .header #primary-menu.top-menu .top-menu__label-fit,
  html.z-flight-v77 .header.active #primary-menu.top-menu .top-menu__label-fit,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu .top-menu__label-fit,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu .top-menu__label-fit {
    display:block !important;
    width:calc(100% - 8px) !important;
    max-width:calc(100% - 8px) !important;
    margin:auto !important;
    text-align:center !important;
    line-height:1.04 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:manual !important;
    letter-spacing:0 !important;
  }
}

@media (max-width:700px) {
  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    grid-auto-rows:minmax(4.75rem, auto) !important;
    gap:.24rem !important;
    width:min(100%, 33rem) !important;
    max-width:calc(100vw - 1.2rem) !important;
    min-height:0 !important;
    height:auto !important;
    margin:.72rem auto .3rem !important;
    padding:.36rem !important;
    box-sizing:border-box !important;
  }

  .header #primary-menu.top-menu .top-menu__item,
  .header.active #primary-menu.top-menu .top-menu__item {
    width:100% !important;
    min-width:0 !important;
  }

  .header #primary-menu.top-menu .top-menu__link,
  .header.active #primary-menu.top-menu .top-menu__link,
  html.z-flight-v77 .header #primary-menu.top-menu .top-menu__link,
  html.z-flight-v77 .header.active #primary-menu.top-menu .top-menu__link,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu .top-menu__link,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu .top-menu__link {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    min-height:4.75rem !important;
    height:auto !important;
    padding:.42rem .18rem .36rem !important;
    text-align:center !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:manual !important;
    overflow:visible !important;
  }

  .header #primary-menu.top-menu .top-menu__label-fit,
  .header.active #primary-menu.top-menu .top-menu__label-fit {
    width:calc(100% - 4px) !important;
    max-width:calc(100% - 4px) !important;
    line-height:1.04 !important;
  }
}

.z-blog-card h2,
.z-blog-card h3,
.product-card h2,
.product-card h3,
.tool-card h2,
.tool-card h3 {
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  hyphens:auto !important;
}

html[lang="hi"] .z-blog-card h2,
html[lang="hi"] .z-blog-card h3,
html[lang="hi"] .product-card h2,
html[lang="hi"] .product-card h3,
html[lang="hi"] .tool-card h2,
html[lang="hi"] .tool-card h3,
html[lang="hi"] .zphc-products-modern .product-copy h2 {
  line-height:1.46 !important;
  padding-top:.08em !important;
  padding-bottom:.1em !important;
}

@media (max-width:700px) {
  .tools-filter__button,
  .tools-filter__button.z-topic-filter,
  body.page-tools-index .tools-filter__button,
  body.page-tools-index .tools-filter__button.z-topic-filter {
    flex:0 1 auto !important;
    width:auto !important;
    min-width:max-content !important;
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }
}

/* mobile menu floating-control isolation */
@media (max-width:950px) {
  body.active .tg-button,
  body.active > .tg-button,
  body.active > .tg-button.tg-button--body-fixed,
  .header.active .tg-button,
  .header.active .tg-button.tg-button--body-fixed,
  .tg-button.tg-button--menu-suppressed,
  .tg-button.tg-button--nav-press-suppressed,
  html.z-flight-v77 body.active .tg-button,
  html.z-flight-v77 .header.active .tg-button,
  html.z-scroll-stable-no-flight body.active .tg-button,
  html.z-scroll-stable-no-flight .header.active .tg-button,
  html.z-scroll-stable-no-flight .header.active .tg-button.tg-button--body-fixed {
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    z-index:1 !important;
    transform:none !important;
    transition:opacity .08s linear, visibility 0s linear .08s !important;
  }

  body.active .tg-button:hover,
  body.active .tg-button:focus-visible,
  .header.active .tg-button:hover,
  .header.active .tg-button:focus-visible,
  .tg-button.tg-button--menu-suppressed:hover,
  .tg-button.tg-button--menu-suppressed:focus-visible,
  .tg-button.tg-button--nav-press-suppressed:hover,
  .tg-button.tg-button--nav-press-suppressed:focus-visible {
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:none !important;
    box-shadow:none !important;
  }

  .header.active .header__modal,
  .header.active .header__modal-white,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    isolation:isolate !important;
  }
}

/* final floating-control suppression override */
body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed,
body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed,
body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed.tg-button--on-blue,
body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed.tg-button--on-blue,
html.z-flight-v77 body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed,
html.z-flight-v77 body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed,
html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed,
html.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed,
html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed,
html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed {
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  z-index:1 !important;
  transform:none !important;
  box-shadow:none !important;
}

body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed:hover,
body > .tg-button.tg-button--body-fixed.tg-button--menu-suppressed:focus-visible,
body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed:hover,
body > .tg-button.tg-button--body-fixed.tg-button--nav-press-suppressed:focus-visible {
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:none !important;
  box-shadow:none !important;
}

/* terminal mobile primary-menu row centering */
@media (max-width:700px) {
  #primary-menu.top-menu,
  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:stretch !important;
    align-content:center !important;
    gap:.24rem !important;
    grid-template-columns:none !important;
    grid-auto-columns:auto !important;
    grid-auto-rows:auto !important;
  }

  #primary-menu.top-menu > .top-menu__item,
  .header #primary-menu.top-menu > .top-menu__item,
  .header.active #primary-menu.top-menu > .top-menu__item,
  html.z-flight-v77 #primary-menu.top-menu > .top-menu__item,
  html.z-flight-v77 .header #primary-menu.top-menu > .top-menu__item,
  html.z-flight-v77 .header.active #primary-menu.top-menu > .top-menu__item,
  html.z-scroll-stable-no-flight #primary-menu.top-menu > .top-menu__item,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu > .top-menu__item,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu > .top-menu__item {
    flex:0 0 calc((100% - .72rem) / 4) !important;
    width:calc((100% - .72rem) / 4) !important;
    min-width:0 !important;
    max-width:calc((100% - .72rem) / 4) !important;
    grid-column:auto !important;
    grid-row:auto !important;
    box-sizing:border-box !important;
  }

  #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  .header #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  .header.active #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-flight-v77 #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-flight-v77 .header #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-flight-v77 .header.active #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-scroll-stable-no-flight #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu > .top-menu__item > .top-menu__link,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu > .top-menu__item > .top-menu__link {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
}

/* ===== TEAM ROTATION GALLERY ===== */
.team-rotation { width:100%; max-width:min(128rem, calc(100vw - 2rem)); margin:0 auto 2.2rem; }
.team-rotation__stage { position:relative; width:100%; aspect-ratio:4 / 3; min-height:30rem; overflow:hidden; border:1px solid rgb(var(--color-accent-rgb) / .32); border-radius:1.2rem; background:linear-gradient(135deg,rgba(255,255,255,.98),rgb(var(--color-background-rgb) / .9)); box-shadow:0 1.2rem 3rem rgb(var(--color-primary-rgb) / .12); }
.team-rotation__stage::before { content:""; position:absolute; inset:0; pointer-events:none; z-index:3; box-shadow:inset 0 0 0 1px rgba(255,255,255,.72), inset 0 0 4rem rgb(var(--color-primary-rgb) / .08); }
.team-rotation__img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; object-position:center; padding:.8rem; opacity:0; transform:scale(.992); transition:opacity .72s ease, transform 1.15s ease; filter:saturate(.96) contrast(1.02); background:transparent; }
.team-rotation__img.is-active { opacity:1; transform:scale(1); z-index:1; }
.team-rotation__img--next { z-index:2; }
.team-rotation.is-changing .team-rotation__img--next { opacity:1; transform:scale(1); }
@media (min-width:1100px){ .team-rotation__stage { max-height:78rem; } }
@media (max-width:700px){
  .team-rotation { max-width:calc(100vw - 2rem); margin-bottom:1.6rem; }
  .team-rotation__stage { aspect-ratio:4 / 5; min-height:0; border-radius:1rem; }
  .team-rotation__img { padding:.4rem; }
}
@media (prefers-reduced-motion:reduce){
  .team-rotation__img { transition:opacity .2s ease !important; transform:none !important; }
}

/* ===== TEAM IMAGE FALLBACK TEXT SUPPRESSION ===== */
.team-rotation__img,
.team-card[data-team-new-sequence] .team__img { color:transparent !important; font-size:0 !important; line-height:0 !important; }

/* ===== MIRROR-SAFE IMAGE PRESENTATION + MODERN REVEALS ===== */
.team__img[data-zphc-mirror-fix="1"],
.team__img.is-zphc-mirror-fixed {
  transform:scaleX(-1) !important;
  transform-origin:center center !important;
}

.team-card:hover .team__img[data-zphc-mirror-fix="1"],
.team-card:hover .team__img.is-zphc-mirror-fixed {
  transform:scaleX(-1) scale(1.02) !important;
}

.z-image-lightbox__img.is-zphc-mirror-fixed {
  transform:scaleX(-1) scale(.985) !important;
}

.z-image-lightbox.is-open .z-image-lightbox__img.is-zphc-mirror-fixed {
  transform:scaleX(-1) scale(1) !important;
}

.hero-image-slider::after {
  background:
    linear-gradient(180deg, rgb(var(--color-primary-rgb) / .11), rgb(var(--color-primary-hover-rgb) / .15)) !important;
  box-shadow:inset 0 0 0 1px rgb(var(--color-primary-rgb) / .045), inset 0 0 3.2rem rgb(var(--color-primary-rgb) / .08) !important;
}

.hero-image-slider:hover::after,
.hero-image-slider.is-hovered::after {
  background:
    linear-gradient(180deg, rgb(var(--color-primary-rgb) / .08), rgb(var(--color-primary-hover-rgb) / .12)) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.2), inset 0 0 3rem rgb(var(--color-primary-rgb) / .07) !important;
}

.hero-image-slider img {
  filter:saturate(.98) contrast(1.04) brightness(1.015) !important;
}

html.z-scroll-stable-no-flight .hero-image-slider img,
html.z-scroll-stable-no-flight .hero-image-slider > img:not(.hero-image-slider__next) {
  filter:saturate(.98) contrast(1.04) brightness(1.015) !important;
  transition:opacity .22s ease, transform .6s ease, filter .35s ease !important;
}

html.z-scroll-stable-no-flight .hero-image-slider.z-hero-zooming > img:not(.hero-image-slider__next):not(.is-zphc-mirror-fixed) {
  animation:zHeroOrganicZoom var(--z-hero-zoom-duration, 5200ms) cubic-bezier(.18,.76,.2,1) forwards !important;
}

.hero-image-slider__next.z-hero-modern-enter {
  clip-path:inset(0 9% 0 9% round 1.6rem);
  opacity:0;
  transform:scale(1.028) translate3d(0, .35%, 0);
  filter:saturate(.92) contrast(1.045) brightness(1.02) blur(.08rem) !important;
  transition:
    opacity .72s cubic-bezier(.16,.84,.24,1),
    transform .98s cubic-bezier(.16,.84,.24,1),
    clip-path .98s cubic-bezier(.16,.84,.24,1),
    filter .98s cubic-bezier(.16,.84,.24,1);
}

.hero-image-slider__next.z-hero-modern-enter.is-visible {
  clip-path:inset(0 0 0 0 round 0);
  opacity:1;
  transform:scale(1.006) translate3d(0, 0, 0);
  filter:saturate(1) contrast(1.04) brightness(1.015) blur(0) !important;
}

html.z-scroll-stable-no-flight .hero-image-slider__next.z-hero-modern-enter {
  transform:scale(1.028) translate3d(0, .35%, 0) !important;
  transition:
    opacity .72s cubic-bezier(.16,.84,.24,1),
    transform .98s cubic-bezier(.16,.84,.24,1),
    clip-path .98s cubic-bezier(.16,.84,.24,1),
    filter .98s cubic-bezier(.16,.84,.24,1) !important;
}

html.z-scroll-stable-no-flight .hero-image-slider__next.z-hero-modern-enter.is-visible {
  transform:scale(1.006) translate3d(0, 0, 0) !important;
}

.hero-image-slider.is-changing::before {
  background:
    linear-gradient(105deg, transparent 0 34%, rgba(255,255,255,.28) 46%, rgba(56,151,219,.09) 52%, transparent 66% 100%) !important;
  mix-blend-mode:screen !important;
  animation:zModernImageSweep .88s cubic-bezier(.16,.84,.24,1) forwards !important;
}

.hero-image-slider.z-hero-effect-slice .hero-image-slider__next {
  clip-path:polygon(7% 0, 100% 0, 93% 100%, 0 100%);
}

.hero-image-slider.z-hero-effect-slice .hero-image-slider__next.is-visible,
.hero-image-slider.z-hero-effect-soft .hero-image-slider__next.is-visible,
.hero-image-slider.z-hero-effect-prism .hero-image-slider__next.is-visible,
.hero-image-slider.z-hero-effect-clarity .hero-image-slider__next.is-visible {
  clip-path:inset(0 0 0 0 round 0);
}

.hero-image-slider.z-hero-effect-soft .hero-image-slider__next {
  transform:scale(1.018);
  filter:saturate(.96) contrast(1.035) brightness(1.03) blur(.12rem) !important;
}

.hero-image-slider.z-hero-effect-prism .hero-image-slider__next {
  clip-path:inset(0 18% 0 18% round 2rem);
  transform:scale(1.026) translate3d(-.7%, 0, 0);
}

.hero-image-slider.z-hero-effect-clarity .hero-image-slider__next {
  transform:scale(1.012);
  filter:saturate(.9) contrast(1.02) brightness(1.04) blur(.18rem) !important;
}

.hero-image-slider > img.is-zphc-mirror-fixed:not(.hero-image-slider__next) {
  transform:scaleX(-1) scale(1.012) !important;
}

.hero-image-slider.z-hero-zooming > img.is-zphc-mirror-fixed:not(.hero-image-slider__next) {
  animation:zHeroMirrorOrganicZoom var(--z-hero-zoom-duration, 5200ms) cubic-bezier(.18,.76,.2,1) forwards !important;
}

html.z-scroll-stable-no-flight .hero-image-slider.z-hero-zooming > img.is-zphc-mirror-fixed:not(.hero-image-slider__next) {
  animation:zHeroMirrorOrganicZoom var(--z-hero-zoom-duration, 5200ms) cubic-bezier(.18,.76,.2,1) forwards !important;
}

.hero-image-slider__next.is-zphc-mirror-fixed,
.hero-image-slider__next.z-hero-modern-enter.is-zphc-mirror-fixed {
  transform:scaleX(-1) scale(1.028) translate3d(0, .35%, 0) !important;
}

.hero-image-slider__next.is-zphc-mirror-fixed.is-visible,
.hero-image-slider__next.z-hero-modern-enter.is-zphc-mirror-fixed.is-visible {
  transform:scaleX(-1) scale(1.006) translate3d(0, 0, 0) !important;
}

.team-rotation__stage::after {
  content:"";
  position:absolute;
  inset:-1px;
  z-index:4;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(105deg, transparent 0 36%, rgba(255,255,255,.34) 48%, rgba(56,151,219,.08) 54%, transparent 68% 100%);
  mix-blend-mode:screen;
}

.team-rotation.is-changing .team-rotation__stage::after {
  animation:zModernImageSweep .82s cubic-bezier(.16,.84,.24,1) forwards;
}

.team-rotation__img {
  clip-path:inset(0 4% 0 4% round 1rem);
  transition:
    opacity .62s cubic-bezier(.16,.84,.24,1),
    transform .92s cubic-bezier(.16,.84,.24,1),
    clip-path .92s cubic-bezier(.16,.84,.24,1),
    filter .92s cubic-bezier(.16,.84,.24,1) !important;
  filter:saturate(1) contrast(1.035) brightness(1.015) !important;
}

.team-rotation__img.is-active {
  clip-path:inset(0 0 0 0 round 0);
}

.team-rotation.is-changing .team-rotation__img--next {
  clip-path:inset(0 0 0 0 round 0);
  transform:scale(1.006) !important;
}

.team-rotation__img.is-zphc-mirror-fixed {
  transform:scaleX(-1) scale(.992) !important;
}

.team-rotation__img.is-zphc-mirror-fixed.is-active {
  transform:scaleX(-1) scale(1) !important;
}

.team-rotation.is-changing .team-rotation__img--next.is-zphc-mirror-fixed {
  transform:scaleX(-1) scale(1.006) !important;
}

@keyframes zModernImageSweep {
  0% { opacity:0; transform:translateX(-48%); }
  24% { opacity:.42; }
  100% { opacity:0; transform:translateX(48%); }
}

@keyframes zHeroMirrorOrganicZoom {
  0% {
    transform:scaleX(-1) scale(1.006) translate3d(0, 0, 0);
    filter:saturate(.98) contrast(1.035) brightness(1.015);
  }
  38% {
    transform:scaleX(-1) scale(1.025) translate3d(-.18%, -.12%, 0);
    filter:saturate(1) contrast(1.045) brightness(1.015);
  }
  100% {
    transform:scaleX(-1) scale(1.052) translate3d(-.42%, -.28%, 0);
    filter:saturate(1.02) contrast(1.055) brightness(1.015);
  }
}

@media (prefers-reduced-motion:reduce) {
  .hero-image-slider.is-changing::before,
  .team-rotation.is-changing .team-rotation__stage::after {
    display:none !important;
  }

  .hero-image-slider__next.z-hero-modern-enter,
  .team-rotation__img {
    clip-path:none !important;
  }

  .team__img[data-zphc-mirror-fix="1"],
  .team__img.is-zphc-mirror-fixed,
  .z-image-lightbox__img.is-zphc-mirror-fixed,
  .hero-image-slider > img.is-zphc-mirror-fixed:not(.hero-image-slider__next),
  .team-rotation__img.is-zphc-mirror-fixed {
    transform:scaleX(-1) !important;
  }
}

/* === A11Y-07: the flag links had no hit box — 46.11 x 13.50px at 375, 19.19px tall on desktop.
   The size the flag is drawn at does not change; only the box that takes the tap. === */
.site-language-flags .flag-lang,
.header .site-language-flags .flag-lang,
.header.active .site-language-flags .flag-lang,
html.z-flight-v77 .site-language-flags .flag-lang,
html.z-flight-v77 .header .site-language-flags .flag-lang,
html.z-flight-v77 .header.active .site-language-flags .flag-lang,
html.z-scroll-stable-no-flight .site-language-flags .flag-lang,
html.z-scroll-stable-no-flight .header .site-language-flags .flag-lang,
html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:auto !important;
  min-height:2.4rem !important;
  overflow:visible !important;
}

/* === A11Y-01: the keyboard ring on the 21 flags, last so it wins in every band === */
.site-language-flags .flag-lang:focus-visible,
.header .site-language-flags .flag-lang:focus-visible,
.header.active .site-language-flags .flag-lang:focus-visible,
html.z-flight-v77 .site-language-flags .flag-lang:focus-visible,
html.z-flight-v77 .header .site-language-flags .flag-lang:focus-visible,
html.z-flight-v77 .header.active .site-language-flags .flag-lang:focus-visible,
html.z-scroll-stable-no-flight .site-language-flags .flag-lang:focus-visible,
html.z-scroll-stable-no-flight .header .site-language-flags .flag-lang:focus-visible,
html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang:focus-visible {
  outline:.3rem solid #ffcf33 !important;
  outline-offset:.22rem !important;
  box-shadow:0 0 0 .55rem rgba(255,255,255,.9), 0 0 0 .85rem var(--color-primary) !important;
  overflow:visible !important;
}

/* === H-18 (sizes): the footer links took a tap in 43.17 x 12.48px at 375 and
   49.81 x 14.39px on desktop. The type and the wrap are untouched. === */
footer.footer .footer-nav__link,
.footer-nav__link {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:2.4rem !important;
  min-width:2.4rem !important;
}

/* === A11Y-04: the hero slider's pause chip, drawn in the slider's own style ===
   Same blue, same 999px cap, same top gloss and drop as the site's other round
   controls. Two bars while it is running, one triangle while it is stopped. */
.hero-slider-pause {
  position:absolute;
  right:1.6rem;
  bottom:1.6rem;
  z-index:6;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:4.4rem;
  height:4.4rem;
  min-width:4.4rem;
  min-height:4.4rem;
  padding:0;
  border:1px solid rgb(var(--color-primary-rgb) / .9);
  border-radius:999px;
  background:
    radial-gradient(ellipse 70% 40% at 30% 0%, rgb(255 255 255 / .36) 0, rgb(255 255 255 / .08) 60%, transparent 100%),
    linear-gradient(180deg, #3f86d0 0%, var(--color-primary) 30%, #1e5f9b 100%);
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / .58),
    inset 0 -2px 0 rgb(0 0 0 / .16),
    0 .36rem .05rem rgb(21 82 132 / .42),
    0 .82rem 1.45rem rgb(var(--color-primary-rgb) / .28);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease;
}

.hero-slider-pause:hover {
  transform:translateY(-2px) scale(1.035);
}

/* R71: the chip takes the keyboard now, so the keyboard must be able to see
   where it is. Same ring the lightbox controls use. */
.hero-slider-pause:focus-visible {
  transform:translateY(-2px) scale(1.035);
  outline:.3rem solid rgba(43, 174, 226, .32);
  outline-offset:.25rem;
}

.hero-slider-pause__glyph {
  position:relative;
  display:block;
  width:1.6rem;
  height:1.6rem;
  pointer-events:none;
}

/* running: the two bars of a pause mark */
.hero-slider-pause.is-playing .hero-slider-pause__glyph::before,
.hero-slider-pause.is-playing .hero-slider-pause__glyph::after {
  content:'';
  position:absolute;
  top:0;
  width:.46rem;
  height:100%;
  border-radius:.12rem;
  background:#fff;
}

.hero-slider-pause.is-playing .hero-slider-pause__glyph::before { left:.16rem; }
.hero-slider-pause.is-playing .hero-slider-pause__glyph::after  { right:.16rem; }

/* stopped: one triangle */
.hero-slider-pause.is-paused .hero-slider-pause__glyph::before {
  content:'';
  position:absolute;
  top:50%;
  left:.32rem;
  width:0;
  height:0;
  border-top:.8rem solid transparent;
  border-bottom:.8rem solid transparent;
  border-left:1.2rem solid #fff;
  transform:translateY(-50%);
}

@media (max-width:700px) {
  .hero-slider-pause {
    right:1rem;
    bottom:1rem;
  }
}

[dir="rtl"] .hero-slider-pause,
html[dir="rtl"] .hero-slider-pause {
  right:auto;
  left:1.6rem;
}

@media (max-width:700px) {
  [dir="rtl"] .hero-slider-pause,
  html[dir="rtl"] .hero-slider-pause {
    left:1rem;
  }
}

/* ==========================================================================
   H-11 - one content grid

   Measured before this block, on one page: six different left edges.
   1280: 20 (header container) / 30 (footer) / 95 (header cluster) /
         120 (hero) / 150 (hero inner) / 220 (prose), main at 160.
   1920: 280 / 322 / 350 / 440 / 470 / 540, main at 480.

   One measure and one gutter now carry the header, the hero, the main column
   and the footer, so every block on the page starts on the same left edge.
   120rem is the site's own most common content measure - it is already what
   the breadcrumb bar, the contact page and the product detail page use, so
   most templates keep the width they have.
   The header's three-column cluster stretches to that frame instead of
   sitting as a fixed island inside it; the side tracks keep the width they
   have today, so the logo, the flags and the clocks are unchanged and only
   the middle track takes up the slack.
   Prose keeps its own narrower measure (H-12) - the one narrower measure the
   audit allows - centred inside the same frame.

   Below 701px nothing here applies: the phone layout is a single stacked
   column whose header and hero are deliberately edge to edge, and step 1e
   tuned it. The audit measured H-11 at 1280 and 1920.
   ========================================================================== */
:root {
  --z-measure:120rem;
  --z-gutter:2rem;
}

@media (min-width:701px) {
  .header > .container,
  .header.active > .container,
  html.z-flight-v77 .header > .container,
  html.z-flight-v77 .header.active > .container,
  html.z-scroll-stable-no-flight .header > .container,
  html.z-scroll-stable-no-flight .header.active > .container,
  main .hero,
  html.z-flight-v77 main .hero,
  html.z-scroll-stable-no-flight main .hero,
  html.z-flight-v77.z-scroll-stable-no-flight main .hero,
  main .container,
  main .container__intro,
  footer.footer > .container,
  footer.footer > .footer__container {
    width:min(var(--z-measure), calc(100% - var(--z-gutter) * 2)) !important;
    max-width:var(--z-measure) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* the same frame, written at the specificity each template already claims
     for its own page container - measured one template at a time, not guessed */
  body.page-home .welcome-main .container__intro,
  body.page-tools .tools-main > .container,
  body.page-tools main > .container,
  body.page-products .container.product-container,
  body.page-blog .container.blog-index-wrap,
  body.page-policy main .document-style,
  body.page-policy main .legal-document,
  body.page-policy main .legal-extension,
  body.page-policy main .policy-text,
  body main .site-search-wrap,
  body main .localized-doc,
  body main .z-document {
    width:min(var(--z-measure), calc(100% - var(--z-gutter) * 2)) !important;
    max-width:var(--z-measure) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* a container inside the frame fills it - it never starts a second frame */
  main .hero .container,
  main .hero .container__intro,
  main .container .container,
  main .container .container__intro,
  main .container__intro .container,
  footer.footer > .container .container {
    width:100% !important;
    max-width:100% !important;
  }
}

/* the header cluster fills the frame: its first column starts on the frame's
   own left edge and its last column ends on the frame's right edge. The side
   tracks are today's measured widths written as one fluid value -
   184px at 1000, 255px at 1280, 300px from 1508 up. */
@media (min-width:951px) {
  .header .header-nav,
  .header.active .header-nav,
  html.z-flight-v77 .header .header-nav,
  html.z-scroll-stable-no-flight .header .header-nav,
  html.z-scroll-stable-no-flight .header.active .header-nav {
    grid-template-columns:minmax(0, clamp(18.4rem, 19.9vw, 30rem)) minmax(0, 1fr) minmax(0, clamp(18.4rem, 19.9vw, 30rem)) !important;
    justify-content:stretch !important;
  }
}

/* ==========================================================================
   H-12 - body copy left-aligned at a readable measure

   Measured before: all ten paragraphs of the home page's main content compute
   text-align:center in a box of 820px at 16.2px - 50.6em, about 100
   characters a line. The audit's remedy: keep the headings centred, set the
   long paragraphs left-aligned at a 60-75 character measure.
   text-align:start, not left, so the right-to-left trees align on their own.
   ========================================================================== */
body.page-home .welcome-main .container__intro > p:not(.subtitle):not(.seo-content-brief),
body.page-home .welcome-main .intro__description p,
body.page-home .welcome-main .custom-p {
  max-width:55ch !important;
  text-align:start !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* the lead and the brief read as headings, so they keep their centring - they
   only lose the 94-character line */
body.page-home .welcome-main .container__intro > p.subtitle,
body.page-home .welcome-main .container__intro > p.seo-content-brief {
  max-width:52ch !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* ==========================================================================
   T-12 - one button line per row on the products grid

   Measured before: the grid computed align-items:start, so in row 2 the left
   card was 512.52px against 527px beside it and its button pair sat 14.49px
   higher than the identical pair next to it.
   The cards are already column flex boxes; they only needed to fill the row's
   height and to push their action block to the bottom of the card.
   ========================================================================== */
.product-grid.new-product-grid,
.product-grid {
  align-items:stretch !important;
}

.product-grid.new-product-grid > .product-card,
.product-grid > .product-card {
  height:100% !important;
}

.product-grid .product-card > .product-copy {
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
}

.product-grid .product-card .product-card-actions {
  margin-top:auto !important;
}

/* ==========================================================================
   H-18 - no orphan row in the footer

   Measured before: at 1280, 1440 and 1920 the sixteen footer links wrapped
   15 + 1, leaving "Official Domains & Authenticity" alone on its own centred
   row; at 1100 it was 14 + 2 and at 951 12 + 4. Below 951 the strip already
   wraps without an orphan (6 / 4 / 4 / 2 at 375, 10 + 6 at 768) and is left
   as it is.
   From 951 up the strip is a grid of eight content-sized columns, so sixteen
   links fall into two full rows that line up with each other. The size half of
   this finding - the 24px target - was done in step 3a and is untouched here.
   ========================================================================== */
@media (min-width:951px) {
  footer.footer .footer-nav__ul {
    display:grid !important;
    grid-template-columns:repeat(8, minmax(0, max-content)) !important;
    justify-content:center !important;
    align-items:stretch !important;
    justify-items:stretch !important;
  }

  footer.footer .footer-nav__ul > .footer-nav__item {
    text-align:center !important;
  }

  /* the link fills its own column, so both rows start on the same edge and the
     tap target is the whole cell */
  footer.footer .footer-nav__ul > .footer-nav__item > .footer-nav__link {
    display:flex !important;
    width:100% !important;
    height:100% !important;
    justify-content:center !important;
    align-items:center !important;
    text-align:center !important;
  }
}

/* ==========================================================================
   T-09 - the active menu pill stays inside the capsule's arc

   Measured before at 375 on /verificationsystems/: the capsule is 330 x 106.58
   with a 53.29px cap, and the active pill's own rounded outline ran 5.71px
   outside that arc, where overflow:hidden sliced its corner flat. At 768 and
   1280 the same outline sits inside the arc (-1) and nothing changes there.
   The links are inset from the cap by enough for the corner pill to clear it;
   the capsule's height is untouched, so the header does not grow.
   ========================================================================== */
@media (max-width:700px) {
  .header #primary-menu.top-menu,
  .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    padding-left:1.4rem !important;
    padding-right:1.4rem !important;
  }
}

/* ==========================================================================
   L-01 - the right-to-left header really reads right to left

   Measured before, on ar / he / fa / ur at 375 and 1280: <html> carries
   dir="rtl" and the body computes direction:rtl, but the header nav, the menu,
   the menu links, the flag strip and the clock strip all computed
   direction:ltr - menu item 1 at x364.4 and item 8 at x823.2, byte-identical
   to English; the flag strip still opened with English at x40; the clock strip
   still opened with UTC at x989.9. The repair rules the stylesheet already
   carried were keyed on body[dir="rtl"], and no page puts dir on <body>:
   body.matches('[dir="rtl"]') returned false on all four trees, so every one
   of them was dead - including the right-to-left font stack, which is why the
   Arabic menu was painted in the Latin stack.

   Those three blocks are now keyed on html[dir="rtl"], which does exist. This
   block is the other half: the forcing rule above (.header-nav,
   .site-language-flags, .world-clocks { direction:ltr !important }) has to be
   answered on right-to-left documents, or the strips stay in English order.
   Left-to-right trees never match html[dir="rtl"] and are untouched.
   ========================================================================== */
html[dir="rtl"] .header-nav,
html[dir="rtl"] .header .header-nav,
html[dir="rtl"] .header.active .header-nav,
html[dir="rtl"] .site-language-flags,
html[dir="rtl"] .header .site-language-flags,
html[dir="rtl"] .header.active .site-language-flags,
html[dir="rtl"] .world-clocks,
html[dir="rtl"] .header .world-clocks,
html[dir="rtl"] .header.active .world-clocks,
html[dir="rtl"] .header #primary-menu.top-menu,
html[dir="rtl"] .header.active #primary-menu.top-menu {
  direction:rtl !important;
}

/* the clock chips carry Latin content of their own - UTC, NYC, 06:45 - so each
   chip keeps its own direction inside the mirrored strip. Without this the
   city code and the time swap ends. */
html[dir="rtl"] .world-clock,
html[dir="rtl"] .world-clock__label,
html[dir="rtl"] .world-clock__time,
html[dir="rtl"] .header .world-clock__label,
html[dir="rtl"] .header .world-clock__time {
  direction:ltr !important;
  unicode-bidi:isolate !important;
}

/* ==========================================================================
   L-04 - right-to-left headings and prose read from their own edge

   Measured before at 1280 on the Arabic product page: the heading computes
   direction:rtl WITH text-align:left. Inside a 616px box, line 1 had a 0px gap
   on the left and 226.9px on the right; the last line 0 left and 494.8px right
   - the Arabic title hung off the wrong edge. Two subheadings measured 1073.9
   and 979.9 of right-hand gap with 0 on the left. The same combination was on
   the Arabic, Hebrew, Persian and Urdu privacy pages.

   Cause: css/bootstrap.min.css sets body{...text-align:left...} and nothing
   re-established text-align:start, so every block that does not centre its own
   text inherited a physical left. bootstrap.min.css is never edited, so its
   body rule is answered here - style.css loads after it. The 37 physical
   text-align:left declarations in this file and the one in tools.css are now
   text-align:start as well.

   In a left-to-right document start IS left, so the 18 left-to-right trees
   render identically - proved by line-box geometry, not by the keyword.
   ========================================================================== */
body {
  text-align:start;
}

/* ==========================================================================
   L-12 - the Telegram handle reads @ZPHCD on the right-to-left trees too

   Measured before, by reading each character's own x box and sorting them left
   to right: the handle rendered in the visual order ZPHCD@ on Arabic, Persian,
   Hebrew and Urdu at 768 and at 1280, and correctly as @ZPHCD on English,
   Russian and Japanese at every width. The pill inherits direction:rtl from the
   document and the handle is a bare text node with no isolation, so the leading
   @ - a neutral character - takes the paragraph direction and is reordered to
   the far end of the run. The icon changed sides with it.

   The pill carries one Latin token and nothing else, so on right-to-left
   documents it is given its own left-to-right context, the same treatment a
   phone number or an e-mail address gets. Left-to-right trees never match
   html[dir="rtl"] and are untouched.
   ========================================================================== */
html[dir="rtl"] .tg-button {
  direction:ltr;
  unicode-bidi:isolate;
}

/* ==========================================================================
   L-11 - the back-to-top button and the Telegram pill mirror on right-to-left

   Your ruling: the floating controls mirror. Measured before at 320, 375, 500,
   600, 700, 768, 950, 1280, 1536 and 1920: the back-to-top button computes
   right:20px on all four right-to-left trees and on English - the same 20px,
   the same side, byte for byte - and the Telegram pill computes right:20px
   wherever it floats (1536 and 1920 on the home page; the inner templates float
   it lower down as well). Neither moved when the page direction flipped,
   because every inset in this stylesheet is physical.

   20px is 2rem at this document's 10px root, and it is the only value either
   control resolves to at any width, so the mirror is one pair of declarations.
   The selector list carries every shape the cascade already uses for these two
   controls - the id, the class, the body-child forms and the two flight
   classes on <html> - because the rules that win today are already written at
   that weight: html.z-scroll-stable-no-flight body > .go-up for the back-to-top,
   and html.z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed
   for the pill. A first attempt without the flight classes measured green on
   the back-to-top and left the pill on the right at 1536 and 1920: it lost the
   cascade by one class and changed nothing.
   ========================================================================== */
html[dir="rtl"] #go-up,
html[dir="rtl"] .go-up,
html[dir="rtl"] body > .go-up,
html[dir="rtl"].z-flight-v77 body > .go-up,
html[dir="rtl"].z-scroll-stable-no-flight body > .go-up,
html[dir="rtl"].z-flight-v77.z-scroll-stable-no-flight body > .go-up,
html[dir="rtl"] .tg-button,
html[dir="rtl"] body > .tg-button,
html[dir="rtl"] body > .tg-button.tg-button--body-fixed,
html[dir="rtl"].z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed,
html[dir="rtl"].z-flight-v77.z-scroll-stable-no-flight body > .tg-button.tg-button--body-fixed {
  right:auto !important;
  left:2rem !important;
}

/* ==========================================================================
   L-06 - Japanese lines never begin with a character that may not start one

   Measured before by reading the first character of every rendered line on the
   Japanese tree: 3 forbidden line-start characters on the home page at 375, 2
   at 768 and 2 at 1280, and 3 / 2 / 4 on the blog index - the menu label broken
   as アンチド / ーピング, and small kana and the prolonged sound mark starting
   lines in body copy. Every one of them computed line-break:auto, and a search
   for line-break across style.css and tools.css returned 0 hits: the rule did
   not exist anywhere.

   The Japanese pages carry lang="ja" on <html>, so the rule is scoped to the
   language and nothing else on the site can see it. line-break is inherited,
   so declaring it once is enough.
   ========================================================================== */
:lang(ja) {
  line-break:strict;
}

/* ── The footer, tightened — his ruling R51 ──────────────────────────────────
   Measured before: 288px tall at 1440, and most of it was air. The links are
   12px words sitting in a 24px minimum box (footer.footer .footer-nav__link
   set min-height:2.4rem), which is the blue space around the text he pointed
   at; the globe was 55px and the social icons 44.

   The selectors below repeat `footer.footer` on purpose. The rules they are
   overriding carry it, so anything shorter loses on specificity even with
   !important - which is exactly what happened on the first attempt here, and
   the footer came back 96% of its old height instead of 71%.

   Desktop only, from 901px up. Below that the 44px social targets and the
   2.4rem link boxes stay exactly as they are: those are thumb sizes, and this
   is a phone-first site whose owner reads it on a phone. A mouse does not need
   a 44px target; a thumb does. */
@media (min-width:901px) {
  footer.footer {
    padding-top:1rem !important;
    padding-bottom:.8rem !important;
  }

  footer.footer .container {
    row-gap:.2rem !important;
  }

  /* All sixteen links on one line - R52. They were on two rows for a reason that
     had nothing to do with space: the list is a GRID, so every link got a cell as
     wide as the widest one ("Official Domains & Authenticity", 150px), and sixteen
     of those come to 1355px in a 1200px container. The words themselves are only
     879px at this size. Laid out at their natural widths they fit on one line with
     about 21px between them.

     flex-wrap stays on deliberately: below roughly 1100px the words stop fitting,
     and there they drop to a second row by themselves rather than running off the
     edge of the page. */
  footer.footer .footer-nav__ul {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:baseline !important;
    grid-template-columns:none !important;
    row-gap:.4rem !important;
    column-gap:1.6rem !important;
    /* The list carried max-width:1120px. The words are 907px and fifteen gaps at
       21px are another 315, which is 1222 - so it still wrapped, at the right font
       size, for want of 102px it had beside it all along. The nav around it is
       1200 wide. */
    max-width:none !important;
    width:100% !important;
  }

  footer.footer .footer-nav__ul > .footer-nav__item {
    width:auto !important;
    max-width:none !important;
    flex:0 0 auto !important;
    text-align:center !important;
  }

  footer.footer .footer-nav__link,
  footer.footer .footer-nav__ul > .footer-nav__item > .footer-nav__link {
    font-size:.95rem !important;
    line-height:1.3 !important;
    min-height:0 !important;
    height:auto !important;
    width:auto !important;
    padding:.1rem 0 !important;
    white-space:nowrap !important;
  }

  footer.footer .footer-contacts {
    gap:.3rem !important;
    padding:0 !important;
  }

  footer.footer .footer-contacts .social-icon__link {
    min-height:3rem !important;
    height:3rem !important;
    width:3rem !important;
    padding:.3rem !important;
  }

  footer.footer .footer-contacts .social-icon {
    height:2.2rem !important;
    width:2.2rem !important;
    padding:0 !important;
  }

  footer.footer .footer-globe-brand img {
    height:3.4rem !important;
    width:auto !important;
  }

  footer.footer .footer-logo .footer-nav__logo {
    height:2.2rem !important;
    width:auto !important;
  }

  footer.footer .footer__disclaimer {
    padding:.2rem 0 0 !important;
    margin:0 !important;
  }
}

/* ==========================================================================
   R72 — the product-detail buttons crushed between 701 px and about 1000 px
   --------------------------------------------------------------------------
   `.product-detail-hero` is `minmax(0,1fr) minmax(300px,520px)`. The picture
   column takes its 520 px first, so at 768 the text column is left with 144 px
   and both action buttons wrap their labels INSIDE a 44 px pill. Giving the
   text column its own floor makes the picture yield instead: below about
   1000 px the picture shrinks, the buttons keep one line each, and at 1024 and
   wider nothing moves at all (the picture is already at its 520 px there).
   The single-column rule at 700 px and under is untouched.
   ========================================================================== */
@media (min-width:701px) {
  .product-detail-hero {
    grid-template-columns:minmax(300px,1fr) minmax(300px,520px);
  }
}

/* ==========================================================================
   R72 — the Telegram icon takes the mirrored side on the right-to-left trees
   --------------------------------------------------------------------------
   L-12 gives the pill its own left-to-right context so the handle reads
   `@ZPHCD` and not `ZPHCD@`; the price was that the icon then sat on the LEFT
   of the handle on Arabic, Persian, Hebrew and Urdu — the English side. The
   audit's alternative was to wrap the bare handle text node in a tag on 1,233
   pages, and it was parked on that cost.

   It does not need the wrapper. `.tg-button` is a flex container, so the bare
   handle is already an anonymous flex item — and an anonymous flex item always
   sits at `order: 0`. Moving the ICON to `order: 1` puts it after the handle
   without touching one byte of any page: handle first, icon on the right, the
   handle still reading @ZPHCD inside its left-to-right island.

   Measured before at 1536 and 1920 (below 1536 the pill is an icon-only circle
   and there is no handle to be on the wrong side of): icon box left of the
   handle box on ar, fa, he and ur, exactly as on English.
   `margin-right` on the icon is the gap between icon and handle, so on these
   trees it becomes a `margin-left`.
   ========================================================================== */
html[dir="rtl"] .tg-button__icon {
  order:1;
  margin-right:0;
  margin-left:.5rem;
}

/* ==========================================================================
   K5 — his ruling 21, the three design items, phone widths only
   --------------------------------------------------------------------------
   Measured first, on this tree, at 375 / 768 / 1280 (before.json):

     1. the menu labels sat at 7px in Arabic and Japanese (English 9.5, German
        9, Russian 8.25). One row carries one size — the largest at which every
        label fits — so the longest label dragged the whole row to the floor,
        and the floor was 7px. Arabic «الرئيسية» is a single word that cannot
        break, so height was never the problem: width was. The phone row is
        three columns instead of four here, which is the width the floor of 9px
        needs; the fitter may also take a second line on a phone now.
     2. the world-clock time rendered at 8.93px — smaller than its own city
        label at 11.25px, which is backwards for the thing being read.
     3. the flags were 24px tall (min-height 2.4rem at the 10px root). Both
        platform guidelines ask 44px of touch height. A mouse does not need it,
        so this grows on touch widths only and the desktop header is untouched.

   Nothing here changes a word of visible text. Desktop and tablet keep every
   number they had except the clock, which was too small at every width.
   ========================================================================== */

@media (max-width:520px) {
  #primary-menu.top-menu > .top-menu__item,
  .header #primary-menu.top-menu > .top-menu__item,
  .header.active #primary-menu.top-menu > .top-menu__item,
  html.z-flight-v77 #primary-menu.top-menu > .top-menu__item,
  html.z-flight-v77 .header #primary-menu.top-menu > .top-menu__item,
  html.z-flight-v77 .header.active #primary-menu.top-menu > .top-menu__item,
  html.z-scroll-stable-no-flight #primary-menu.top-menu > .top-menu__item,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu > .top-menu__item,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu > .top-menu__item {
    flex:0 0 calc((100% - .48rem) / 3) !important;
    width:calc((100% - .48rem) / 3) !important;
    max-width:calc((100% - .48rem) / 3) !important;
  }
}

@media (max-width:950px) {
  .header .world-clock,
  .header.active .world-clock,
  html.z-flight-v77 .header .world-clock,
  html.z-flight-v77 .header.active .world-clock,
  html.z-scroll-stable-no-flight .header .world-clock,
  html.z-scroll-stable-no-flight .header.active .world-clock {
    --z-clock-time-size:clamp(1.24rem, 3.4vw, 1.52rem);
  }
}

@media (max-width:699px) {
  .site-language-flags .flag-lang,
  .header .site-language-flags .flag-lang,
  .header.active .site-language-flags .flag-lang,
  html.z-flight-v77 .site-language-flags .flag-lang,
  html.z-flight-v77 .header .site-language-flags .flag-lang,
  html.z-flight-v77 .header.active .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
    min-height:44px !important;
  }

  /* A 12px flag adrift in a 44px box reads as an empty button, so the flag
     grows with its target. Width is untouched: the row still holds seven. */
  .site-language-flags .flag-icon,
  .header .site-language-flags .flag-icon,
  .header.active .site-language-flags .flag-icon,
  html.z-flight-v77 .header .site-language-flags .flag-icon,
  html.z-scroll-stable-no-flight .header .site-language-flags .flag-icon {
    font-size:1.9rem !important;
  }
}

/* His ruling, 2026-08-28: the three official sticker packs live in the footer,
   named in the reader's own language, each name carrying its link. */
.footer-stickers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: .6rem 1.4rem;
  margin: 1.4rem 0 .2rem;
  font-size: 1.4rem;
  line-height: 1.4;
}
.footer-stickers__label {
  color: rgba(255, 255, 255, .78);
  font-weight: 600;
}
.footer-stickers__link {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: .3rem;
  text-decoration-thickness: .1rem;
  opacity: .92;
  transition: opacity .18s ease;
}
.footer-stickers__link:hover,
.footer-stickers__link:focus-visible {
  opacity: 1;
}

/* ============================================================
   H-15 — his ruling, 2026-08-28: "Верхняя часть абсолютно
   сломана" (the top of the page is completely broken) and
   "невозможно поставить галочку" (the tick box cannot be
   ticked). Two separate defects, fixed together here because
   both are in the first thing a visitor meets.
   ============================================================ */

/* 1. THE HEADER.
   The logo was allowed to grow to the full width of a phone and
   the 21 language flags stacked seven to a row, three rows deep,
   so the header ate roughly 330px before a single word of the
   page appeared. The flags now sit in ONE row that slides
   sideways when it does not fit. The 44px touch target set for
   accessibility is kept — only the number of rows changes. */
.header .logo img,
.header a[href] > img[src$="z-logo.svg"] {
  max-width: min(180px, 46vw) !important;
  height: auto !important;
}

html .site-language-flags,
html .header .site-language-flags,
html .header.active .site-language-flags,
html.z-flight-v77 .header .site-language-flags,
html.z-flight-v77 .header.active .site-language-flags,
html.z-scroll-stable-no-flight .header .site-language-flags,
html.z-scroll-stable-no-flight .header.active .site-language-flags {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: .5rem !important;
  overflow: visible !important;
  max-width: 27rem !important;
  padding: 0 !important;
}

/* Each language is a round chip. The emoji inside is a wide rectangle, so it
   is scaled up and the circle crops it — the same way a country flag reads on
   a phone keyboard. 3.2rem across keeps the block small while staying well
   above the 24px a pointer target needs. */
html .site-language-flags .flag-lang,
html .header .site-language-flags .flag-lang,
html .header.active .site-language-flags .flag-lang,
html.z-flight-v77 .site-language-flags .flag-lang,
html.z-flight-v77 .header .site-language-flags .flag-lang,
html.z-flight-v77 .header.active .site-language-flags .flag-lang,
html.z-scroll-stable-no-flight .site-language-flags .flag-lang,
html.z-scroll-stable-no-flight .header .site-language-flags .flag-lang,
html.z-scroll-stable-no-flight .header.active .site-language-flags .flag-lang {
  flex: 0 0 auto !important;
  width: 3.2rem !important;
  height: 3.2rem !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  display: grid !important;
  place-items: center !important;
  background: #fff !important;
  box-shadow: 0 0 0 .1rem rgba(31, 61, 106, .18), 0 .1rem .3rem rgba(15, 32, 60, .12) !important;
  transition: transform .16s ease, box-shadow .16s ease !important;
}

html .site-language-flags .flag-icon,
html .header .site-language-flags .flag-icon,
html.z-flight-v77 .header .site-language-flags .flag-icon,
html.z-scroll-stable-no-flight .header .site-language-flags .flag-icon {
  font-size: 2.6rem !important;
  line-height: 1 !important;
  transform: scale(1.5) !important;
  filter: none !important;
}

html .site-language-flags .flag-lang:hover,
html .site-language-flags .flag-lang:focus-visible {
  transform: translateY(-.1rem) scale(1.06) !important;
  box-shadow: 0 0 0 .2rem rgba(31, 61, 106, .45), 0 .3rem .7rem rgba(15, 32, 60, .22) !important;
}

/* The page you are on is ringed in the brand blue so the block says where you
   are without a second row of text. */
html .site-language-flags .flag-lang.is-active,
html .site-language-flags .flag-lang[aria-current="page"] {
  box-shadow: 0 0 0 .25rem var(--color-primary, #1f3d6a), 0 .2rem .5rem rgba(15, 32, 60, .25) !important;
}

/* 2. THE AGE TICK BOX.
   The box measured 17.5px on a side. That is under the 24px
   minimum a pointer target needs, and on a zoomed or narrow
   window it is a hard thing to hit. It is now 24px, the whole
   row is a pointer target, and the row is lifted above the
   dimming layer that covers the page behind the gate — that
   layer took clicks for no reason, which is the one way this
   box could ever have swallowed one. */
#cookie-notice[data-legal-gate="notice-preferences"] input[type="checkbox"],
#cookie-notice[data-legal-gate="compact"] input[type="checkbox"] {
  width: 2.4rem !important;
  height: 2.4rem !important;
  min-width: 2.4rem !important;
  min-height: 2.4rem !important;
  flex: 0 0 auto !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}

#cookie-notice[data-legal-gate="notice-preferences"] .z-legal-confirm,
#cookie-notice[data-legal-gate="compact"] .z-legal-confirm {
  position: relative !important;
  z-index: 2 !important;
  cursor: pointer !important;
  align-items: center !important;
}

@media (max-width: 700px) {
  #cookie-notice[data-legal-gate="notice-preferences"].active::before,
  #cookie-notice[data-legal-gate="notice-preferences"].is-visible::before {
    pointer-events: none !important;
  }
}

/* === H-16 (2026-08-28) — the header stops painting white ===============
   Ruling: the header must not lay an opaque white sheet over the ZPHC logo
   field that runs behind the whole site; that field is the background the
   owner wants to see, in the header too. The drop shadow leaves with the
   white — a shadow with nothing solid above it reads as a stray grey line
   across the watermark. The 4px brand strip at the very top stays.
   Every page in every language ships the same .header, so this is the site.
   The prefixes are not decoration: html.z-flight-v77 and
   html.z-scroll-stable-no-flight already carry .header rules, and a bare
   class chain loses to them on specificity. */
html .header,
html body .header,
html body > header.header,
html.z-flight-v77 .header,
html.z-flight-v77 body > header.header,
html.z-scroll-stable-no-flight .header,
html.z-scroll-stable-no-flight body > header.header {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

/* The open mobile menu is a panel over the page, not a header band — it keeps
   a solid ground of its own so the links stay readable above the content. */
html .header.active,
html body .header.active,
html.z-flight-v77 .header.active,
html.z-scroll-stable-no-flight .header.active {
  background: transparent !important;
  box-shadow: none !important;
}

/* ============================================================
   H-17 — his ruling, 2026-08-28: "Почему при наведении это
   исчезает? Надо сделать красиво."

   The three sticker links are white text on the blue footer.
   The row set only `opacity` on hover, so the site-wide
   `a:hover` rule won the colour and painted them
   --color-primary-hover (#2C6196) — the exact colour of the
   footer behind them. Contrast 1.00, so the link did not dim,
   it disappeared.

   Every other white link in the footer was already pinned to
   #fff on hover; this row shipped a day later and was missed.
   Measured across /, /ru/, /blog/shoulder-rehabilitation/ and
   /tools/bmi-waist-health-check/ by walking the real cascade:
   it was the only link left on the site that hovered into its
   own background.

   Longhands, not the `text-decoration` shorthand: an
   !important shorthand would reset the colour back to
   currentColor and eat the gold.
   ============================================================ */
footer.footer .footer-stickers,
.footer-stickers {
  gap: .6rem 1.6rem;
}
footer.footer .footer-stickers__link,
.footer-stickers__link {
  text-decoration-color: rgba(255, 255, 255, .55);
  transition: opacity .18s ease,
              color .18s ease,
              text-decoration-color .18s ease,
              text-decoration-thickness .18s ease,
              text-underline-offset .18s ease;
}
footer.footer .footer-stickers__link:hover,
footer.footer .footer-stickers__link:focus-visible,
.footer-stickers__link:hover,
.footer-stickers__link:focus-visible {
  color: #fff !important;
  opacity: 1;
  text-decoration-line: underline !important;
  text-decoration-color: #FFCF33 !important;
  text-decoration-thickness: .2rem !important;
  text-underline-offset: .45rem !important;
}
/* The ® rides along with the word it belongs to. */
footer.footer .footer-stickers__link:hover .reg-mark,
footer.footer .footer-stickers__link:focus-visible .reg-mark,
.footer-stickers__link:hover .reg-mark,
.footer-stickers__link:focus-visible .reg-mark {
  color: inherit !important;
}

/* ==========================================================================
   H-24 - the header cluster never overlaps itself

   Measured before on the live page, root font-size 10px (the 62.5% base):
   at 1920 the menu pill computed 640px inside a 582px middle track and its
   right edge ran 58px into the clock strip; at 1440 the pill was 640px in a
   590.9px track and the clocks 300px in a 286.5px track - a 31px overlap.
   The clocks carry z-index 7050 against the pill's 7000, so they painted on
   top of the last menu links. It grows with the reader's own text size: at a
   13px root the 1440 overlap was 52px, at 16px it was 272px.

   The cause is a chain of fixed rem widths on the pill and on the visitor
   strip - 64rem, 58rem, 50rem, 45rem, one per breakpoint - written when the
   side tracks were narrower. A fixed width cannot answer a track that is
   590.9px wide, and 64rem is 640px.

   The repair leaves every one of those design widths in place and only stops
   them overflowing: each item of the header grid is capped at its own track
   and may shrink, and the pill wraps its links instead of growing past the
   track. Below 951px the header is a different layout and is untouched.

   After: gaps of 18-27px on both sides of the pill at 1000, 1440 and 1920,
   at root 10px, 13px and 16px, with nothing crossing the frame's edges.
   ========================================================================== */
@media (min-width:951px) {
  html .header .header-nav > *,
  html .header.active .header-nav > *,
  html.z-flight-v77 .header .header-nav > *,
  html.z-flight-v77 .header.active .header-nav > *,
  html.z-scroll-stable-no-flight .header .header-nav > *,
  html.z-scroll-stable-no-flight .header.active .header-nav > * {
    min-width:0 !important;
    max-width:100% !important;
  }

  html .header #primary-menu.top-menu,
  html .header.active #primary-menu.top-menu,
  html.z-flight-v77 .header #primary-menu.top-menu,
  html.z-flight-v77 .header.active #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header #primary-menu.top-menu,
  html.z-scroll-stable-no-flight .header.active #primary-menu.top-menu {
    max-width:100% !important;
    min-width:0 !important;
    flex-wrap:wrap !important;
    height:auto !important;
    row-gap:.2rem !important;
    justify-content:center !important;
  }

  html .header .visitor-metric--persistent,
  html .header.active .visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric--persistent {
    max-width:100% !important;
    min-width:0 !important;
  }

  html .header .world-clocks,
  html .header.active .world-clocks,
  html.z-flight-v77 .header .world-clocks,
  html.z-flight-v77 .header.active .world-clocks,
  html.z-scroll-stable-no-flight .header .world-clocks,
  html.z-scroll-stable-no-flight .header.active .world-clocks {
    max-width:100% !important;
    min-width:0 !important;
  }

  html .header .site-language-flags,
  html .header.active .site-language-flags,
  html.z-flight-v77 .header .site-language-flags,
  html.z-flight-v77 .header.active .site-language-flags,
  html.z-scroll-stable-no-flight .header .site-language-flags,
  html.z-scroll-stable-no-flight .header.active .site-language-flags {
    max-width:100% !important;
    min-width:0 !important;
  }

  html .header .header-logo,
  html .header.active .header-logo,
  html.z-flight-v77 .header .header-logo,
  html.z-flight-v77 .header.active .header-logo,
  html.z-scroll-stable-no-flight .header .header-logo,
  html.z-scroll-stable-no-flight .header.active .header-logo {
    max-width:100% !important;
    min-width:0 !important;
  }
}

/* ==========================================================================
   H-24-FIX — cap the visitor strip to its grid track (Defect 1)

   The strip's width is set to 64rem / 88rem / 94rem !important by earlier
   rules, some with a 12-part selector list doubling .visitor-metric on the
   element (.visitor-metric.visitor-metric--persistent), reaching specificity
   (0,5,1). At root 16px, 64rem = 1024px — wider than the middle grid track
   at most viewports, so the strip overflows into the clocks column.

   The H-24 block above set max-width:100% at (0,4,1), which loses to the
   competing max-width:64rem at (0,5,1). This rule uses the same doubled-
   class pattern plus html ancestor to reach (0,6,1) and appear later in the
   cascade, so it wins on both counts. max-width:100% on a grid item
   resolves against the grid area (= the column track), clamping the strip.
   ========================================================================== */
@media (min-width:951px) {
  html .header .visitor-metric.visitor-metric--persistent,
  html .header.active .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header .visitor-metric.visitor-metric--persistent,
  html.z-flight-v77 .header.active .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header .visitor-metric.visitor-metric--persistent,
  html.z-scroll-stable-no-flight .header.active .visitor-metric.visitor-metric--persistent {
    max-width:100% !important;
    box-sizing:border-box !important;
  }
}

/* H-25 flags candidate D, 1.0.4 step 1 */
/* === H-25 flags: seven per row, chips shrink with the column, rows always even === */
@media (min-width:951px) {
  html .header .header-nav .site-language-flags.site-language-flags,
  html .header.active .header-nav .site-language-flags.site-language-flags,
  html.z-flight-v77 .header .header-nav .site-language-flags.site-language-flags,
  html.z-flight-v77 .header.active .header-nav .site-language-flags.site-language-flags,
  html.z-scroll-stable-no-flight .header .header-nav .site-language-flags.site-language-flags,
  html.z-scroll-stable-no-flight .header.active .header-nav .site-language-flags.site-language-flags {
    display:grid !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    justify-items:center !important;
    align-items:center !important;
    gap:.5rem !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  html .header .header-nav .site-language-flags.site-language-flags .flag-lang,
  html .header.active .header-nav .site-language-flags.site-language-flags .flag-lang,
  html.z-flight-v77 .header .header-nav .site-language-flags.site-language-flags .flag-lang,
  html.z-flight-v77 .header.active .header-nav .site-language-flags.site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header .header-nav .site-language-flags.site-language-flags .flag-lang,
  html.z-scroll-stable-no-flight .header.active .header-nav .site-language-flags.site-language-flags .flag-lang {
    width:100% !important;
    max-width:3.2rem !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:1 / 1 !important;
    container-type:inline-size;
  }
  html .header .header-nav .site-language-flags.site-language-flags .flag-lang .flag-icon,
  html .header.active .header-nav .site-language-flags.site-language-flags .flag-lang .flag-icon,
  html.z-flight-v77 .header .header-nav .site-language-flags.site-language-flags .flag-lang .flag-icon,
  html.z-flight-v77 .header.active .header-nav .site-language-flags.site-language-flags .flag-lang .flag-icon,
  html.z-scroll-stable-no-flight .header .header-nav .site-language-flags.site-language-flags .flag-lang .flag-icon,
  html.z-scroll-stable-no-flight .header.active .header-nav .site-language-flags.site-language-flags .flag-lang .flag-icon {
    font-size:81.25cqw !important;   /* 26px in a 32px chip, scales with the chip */
  }
}

/* H-25 note (b): at 951-999px root 10 the 7-column chip falls under the 24px
   pointer floor with gap:.5rem (1000px passes by 0.14px). Tighten the gap
   there so the chip stays at or above 24px. */
@media (min-width:951px) and (max-width:999px) {
  html .header .header-nav .site-language-flags.site-language-flags,
  html .header.active .header-nav .site-language-flags.site-language-flags,
  html.z-flight-v77 .header .header-nav .site-language-flags.site-language-flags,
  html.z-flight-v77 .header.active .header-nav .site-language-flags.site-language-flags,
  html.z-scroll-stable-no-flight .header .header-nav .site-language-flags.site-language-flags,
  html.z-scroll-stable-no-flight .header.active .header-nav .site-language-flags.site-language-flags {
    gap:.3rem !important;
  }
}

/* Antigravity: Hide Telegram button */
.tg-button, a[href*="t.me/zphcd"], a[href*="t.me/addstickers/ZPHCD"] { display: none !important; visibility: hidden !important; pointer-events: none !important; }

/* Antigravity: Hide all Telegram links */
a[href*="t.me"] { display: none !important; visibility: hidden !important; pointer-events: none !important; }
