/* Hisherik final polish layer.
   Loaded after site-dark.css. Keep global design decisions here instead of
   adding more late overrides to the main theme stylesheet. */

:root {
  --hs-weight-display: 500;
  --hs-weight-heading: 500;
  --hs-weight-title: 500;
  --hs-weight-ui: 500;
  --hs-weight-copy-strong: 400;
  --hs-btn-height: 54px;
  --hs-btn-padding-x: clamp(22px, 2.2vw, 38px);
  --hs-btn-border: rgba(255, 151, 15, 0.88);
  --hs-btn-fill-top: #ffad25;
  --hs-btn-fill-bottom: #f47721;
  --hs-btn-dark: rgba(5, 10, 15, 0.76);
}

/* Header: broad two-row navigation, closer to the new reference. */
.header {
  min-height: 104px;
}

.header__row {
  width: min(1480px, calc(100% - 48px)) !important;
  min-height: 104px;
  grid-template-columns: minmax(780px, 1fr) minmax(270px, 360px);
  grid-template-rows: 48px 52px;
  column-gap: clamp(26px, 3vw, 58px);
}

.header__row::before {
  top: 50px;
  inset-inline-end: calc(clamp(26px, 3vw, 58px) + clamp(270px, 18vw, 360px));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.18) 18%, rgba(255, 151, 15, 0.22) 100%);
}

.header--default .header__row {
  grid-template-columns: minmax(0, 1fr) minmax(150px, 190px);
  column-gap: clamp(22px, 2vw, 40px);
}

.header--default .header__row::before {
  inset-inline-end: calc(clamp(22px, 2vw, 40px) + 190px);
}

.header--iron .header__row,
.header--gates .header__row {
  grid-template-columns: minmax(0, 1fr) minmax(250px, 320px);
  column-gap: clamp(24px, 2.4vw, 48px);
}

.header--iron .header__row::before,
.header--gates .header__row::before {
  inset-inline-end: calc(clamp(24px, 2.4vw, 48px) + 320px);
}

.header__logos-wrap {
  gap: 12px !important;
}

.header__default-brand-title {
  font-size: clamp(34px, 2.95vw, 46px) !important;
  font-weight: 600 !important;
  line-height: 0.96 !important;
}

.header__default-brand-subtitle,
.header--iron .header-iron__brand-subtitle,
.header--gates .header-gates__brand-subtitle {
  font-size: 14px !important;
  font-weight: var(--hs-weight-copy-strong) !important;
  line-height: 1.1 !important;
}

.header--iron .header-iron__brand-title,
.header--gates .header-gates__brand-title {
  font-size: 16px !important;
  font-weight: 500 !important;
}

.header__cta-wrap {
  gap: 16px;
}

.header__catalog-link,
.header .call-us.btn {
  font-size: clamp(15px, 0.95vw, 17px) !important;
  font-weight: var(--hs-weight-ui) !important;
}

.header__catalog-link .fa,
.header .call-us .fa {
  font-size: 17px;
}

.main-menu {
  justify-content: stretch !important;
  min-width: 0 !important;
}

.menu-inline {
  width: 100% !important;
  justify-content: space-between !important;
  gap: clamp(18px, 2.2vw, 46px) !important;
}

.menu-inline > li > a,
.menu-inline .sub-menu li a {
  font-weight: var(--hs-weight-ui) !important;
}

.menu-inline > li > a {
  min-height: 46px !important;
  font-size: clamp(15px, 0.98vw, 17px) !important;
}

.menu-inline .sub-menu .sub-menu {
  top: 0 !important;
  right: calc(100% + 10px) !important;
  left: auto !important;
  transform: translateX(6px) !important;
  z-index: 3201 !important;
}

.menu-inline .sub-menu li.menu-item-has-children:hover > .sub-menu,
.menu-inline .sub-menu li.menu-item-has-children:focus-within > .sub-menu,
.menu-inline .sub-menu li.menu-item-has-children.is-active > .sub-menu {
  transform: translateX(0) !important;
}

.menu-inline .sub-menu li.menu-item-has-children::after {
  left: -10px !important;
  width: 10px !important;
}

.menu-inline .sub-menu .sub-menu::before {
  display: none !important;
}

@media (min-width: 992px) and (max-width: 1100px) {
  .menu-inline .sub-menu .sub-menu {
    right: auto !important;
    left: calc(100% + 10px) !important;
    transform: translateX(-6px) !important;
  }

  .menu-inline .sub-menu li.menu-item-has-children:hover > .sub-menu,
  .menu-inline .sub-menu li.menu-item-has-children:focus-within > .sub-menu,
  .menu-inline .sub-menu li.menu-item-has-children.is-active > .sub-menu {
    transform: translateX(0) !important;
  }

  .menu-inline .sub-menu li.menu-item-has-children::after {
    right: -10px !important;
    left: auto !important;
    width: 10px !important;
  }
}

/* Typography: remove ultra-bold UI while keeping strong industrial hierarchy. */
body.body.body.body :where(h1,
h2,
h3,
[class*="__title"],
[class*="-title"]) {
  font-weight: var(--hs-weight-heading) !important;
}

body.body.body.body :where(h4,
h5,
h6,
.main-cat-grand-card__title,
.product-card__title,
.home-post-card__title,
.blog-template-card__title,
.contact-template-info__title,
.contact-template-mini-card__title,
.contact-template-resource-card__title) {
  font-weight: var(--hs-weight-title) !important;
}

body.body.body.body :where(.home-hero__title,
.home-reference-hero__title,
.blog-template-hero__title,
.gallery-template-hero__title,
.contact-template-hero__title,
.main-cat-hero__title,
.product-product-hero__title,
.about-header-lite__title,
.accessibility-page__title,
.error__title) {
  font-weight: var(--hs-weight-display) !important;
}

body.body.body.body :where(button,
.btn,
[class*="__button"],
[class*="__btn"],
[class*="__link"],
[class*="__cta"],
[class*="__label"],
[class*="__eyebrow"],
.main-cat-tabs__link,
.main-cat-section-head__eyebrow,
.home-products-preview__link,
.site-footer__utility-link) {
  font-weight: var(--hs-weight-ui) !important;
}

body.body.body.body :where(.main-cat-hero__desc,
.main-cat-grand-card__desc,
.main-cat-textblock__text,
.main-cat-content__inner,
.home-reference-about__text,
.home-footer-cta__text,
.contact-template-hero__desc,
.contact-template-mini-card__text,
.contact-template-resource-card__text,
.contact-template-form .form_accept,
.contact-template-form .form_accept label,
.contact-template-form .form_accept .wpcf7-list-item-label,
.site-footer__menu a,
.site-footer__submenu a,
.site-footer__menu-text,
.site-footer__credit-text,
.home .about-timeline__desc,
.home .about-timeline__chip,
.home .about-timeline__chip--mobile-current) {
  font-size: 14px !important;
}

body.body.body.body :where(.blog-single-article__meta,
.blog-single-article__meta *,
.blog-single-contact__desc,
.product-product-hero__badge,
.product-article__kicker,
.product-article__image-caption,
.product-article__quote-author) {
  font-size: 14px !important;
  line-height: 1.45 !important;
}

/* Global weight reset: keep hierarchy, remove the ultra-bold feel. */
body.body.body.body :where(strong,
b,
.font-rubik,
.font-arimo,
[class*="__heading"],
[class*="__headline"],
[class*="__title"],
[class*="-title"],
[class*="__value"],
[class*="__number"],
[class*="__metric"],
[class*="__year"],
[class*="__step"],
[class*="__badge"],
[class*="__chip"],
[class*="__tab"],
[class*="__link"],
[class*="__button"],
[class*="__btn"],
[class*="__cta"],
.menu-inline a,
.menu-mobile a) {
  font-weight: var(--hs-weight-heading) !important;
}

body.body.body.body :where(h1,
.home-hero__title,
.home-reference-hero__title,
.blog-template-hero__title,
.gallery-template-hero__title,
.contact-template-hero__title,
.main-cat-hero__title,
.product-product-hero__title,
.about-header-lite__title,
.accessibility-page__title,
.error__title) {
  font-weight: var(--hs-weight-display) !important;
}

body.body.body.body :where(p,
li,
label,
input,
textarea,
select,
.site-footer__menu a,
.site-footer__submenu a,
.main-cat-hero__desc,
.main-cat-grand-card__desc,
.main-cat-textblock__text,
.contact-template-hero__desc,
.product-article,
.blog-single-article) {
  font-weight: 400 !important;
}

body.body.body.body :where(.home-products-preview__link,
.contact-template-mini-card__text,
.contact-template-resource-card__text,
.contact-template-form .form_accept,
.contact-template-form .form_accept label,
.contact-template-form .form_accept .wpcf7-list-item-label,
.site-footer__credit-text,
.home .about-timeline__desc,
.home .about-timeline__chip,
.home .about-timeline__chip--mobile-current) {
  line-height: 1.45 !important;
}

/* CTA buttons: sharp industrial filled/outline buttons, never rounded. */
body.body.body.body :where(.home-hero__button,
.home-hero__card-cta,
.home-products-preview__link,
.home-footer-cta__button,
.home-footer-cta__phone,
.product-product-hero__btn,
.product-tables__cta,
.clients-showcase-section--v2 .clients-showcase__cta,
.contact-template-project-cta__button,
.contact-template-form input[type="submit"],
.contact-template-form .wpcf7-submit,
.contact-template-form .btn_submit,
.blog-single-contact .wpcf7-submit,
.footer-contact-card input[type="submit"],
.footer-contact-card .wpcf7-submit,
.form_order.footer_form .btn_submit,
.form_order.footer_form input.wpcf7-submit,
input.wpcf7-form-control.wpcf7-submit.has-spinner.hisherik-btn,
.newsletter-popup__submit,
.certs__cta-button,
.btn.bg-hisherik,
.cs_link__borderlink,
.error__link) {
  min-height: var(--hs-btn-height) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 0 var(--hs-btn-padding-x) !important;
  border-radius: 0 !important;
  font-size: 16px !important;
  font-weight: var(--hs-weight-ui) !important;
  line-height: 1.05 !important;
  text-align: center !important;
  text-decoration: none !important;
  white-space: nowrap;
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.28), inset 0 0 0 1px rgba(255, 255, 255, 0.08) !important;
  transform: none !important;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, filter 160ms ease, transform 160ms ease !important;
}

body.body.body.body :where(.home-hero__button--primary,
.home-hero__card-cta,
.home-products-preview__link,
.home-footer-cta__button,
.product-product-hero__btn,
.product-tables__cta,
.clients-showcase-section--v2 .clients-showcase__cta,
.contact-template-project-cta__button,
.contact-template-form input[type="submit"],
.contact-template-form .wpcf7-submit,
.contact-template-form .btn_submit,
.blog-single-contact .wpcf7-submit,
.footer-contact-card input[type="submit"],
.footer-contact-card .wpcf7-submit,
.form_order.footer_form .btn_submit,
.form_order.footer_form input.wpcf7-submit,
input.wpcf7-form-control.wpcf7-submit.has-spinner.hisherik-btn,
.newsletter-popup__submit,
.certs__cta-button,
.btn.bg-hisherik,
.error__link--primary) {
  border: 1px solid rgba(255, 184, 74, 0.82) !important;
  background: linear-gradient(180deg, var(--hs-btn-fill-top) 0%, #ff970f 48%, var(--hs-btn-fill-bottom) 100%) !important;
  color: #05080c !important;
}

body.body.body.body :where(.home-hero__button--secondary,
.home-hero__quote-link,
.home-footer-cta__phone,
.cs_link__borderlink,
.error__link:not(.error__link--primary)) {
  border: 1px solid var(--hs-btn-border) !important;
  background: linear-gradient(180deg, rgba(16, 24, 31, 0.9) 0%, var(--hs-btn-dark) 100%) !important;
  color: rgba(255, 255, 255, 0.9) !important;
}

body.body.body.body :where(.home-hero__button,
.home-hero__card-cta,
.home-products-preview__link,
.home-footer-cta__button,
.home-footer-cta__phone,
.product-product-hero__btn,
.product-tables__cta,
.clients-showcase-section--v2 .clients-showcase__cta,
.contact-template-project-cta__button,
.certs__cta-button,
.btn.bg-hisherik,
.cs_link__borderlink,
.error__link):hover,
body.body.body.body :where(.home-hero__button,
.home-hero__card-cta,
.home-products-preview__link,
.home-footer-cta__button,
.home-footer-cta__phone,
.product-product-hero__btn,
.product-tables__cta,
.clients-showcase-section--v2 .clients-showcase__cta,
.contact-template-project-cta__button,
.certs__cta-button,
.btn.bg-hisherik,
.cs_link__borderlink,
.error__link):focus-visible {
  filter: brightness(1.06) !important;
  transform: translateY(-1px) !important;
  border-color: #ffbe55 !important;
}

body.body.body.body :where(.home-hero__button,
.home-hero__card-cta,
.home-products-preview__link,
.home-footer-cta__button,
.home-footer-cta__phone,
.product-product-hero__btn,
.product-tables__cta,
.contact-template-project-cta__button,
.certs__cta-button,
.btn.bg-hisherik,
.cs_link__borderlink,
.error__link)::after {
  content: "\f104" !important;
  position: static !important;
  display: inline-flex !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  background: transparent !important;
  color: currentColor !important;
  font-family: FontAwesome !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

.home-hero__actions {
  justify-content: center !important;
}

.home-hero__quote-link {
  margin-inline: auto !important;
}

.home-hero__quote-link::after {
  inset: auto !important;
}

.about-page-timeline__track:focus-visible,
.product-article:focus-visible,
.product-cards__swiper:focus-visible,
.about-showcase__gallery-swiper:focus-visible,
.about-timeline.swiper:focus-visible,
.about-showcase__reviews-swiper:focus-visible {
  outline: 2px solid #ff970f !important;
  outline-offset: 5px !important;
}

/* Contact template form: the page already has a separate contact-info panel. */
@media (min-width: 992px) {
  .contact-template-content__grid {
    grid-template-columns: minmax(430px, 0.95fr) minmax(0, 1.05fr) !important;
    gap: clamp(24px, 3vw, 42px) !important;
  }
}

.contact-template-page .contact-template-form .hisherik-contact-block {
  display: block !important;
}

.contact-template-page .contact-template-form .hisherik-contact-left {
  display: none !important;
}

.contact-template-page .contact-template-form .hisherik-contact-right,
.contact-template-page .contact-template-form .hisherik-field-full,
.contact-template-page .contact-template-form .f-bottom-row {
  width: 100% !important;
  max-width: none !important;
}

.contact-template-page .contact-template-form .hisherik-grid-2 {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.contact-template-page .contact-template-form .hisherik-input,
.contact-template-page .contact-template-form .hisherik-textarea {
  width: 100% !important;
  min-width: 0 !important;
}

.contact-template-page .contact-template-form .f-bottom-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 14px !important;
}

.contact-template-page .contact-template-form .acceptance-row {
  width: 100% !important;
  max-width: none !important;
}

.contact-template-page .contact-template-form .acceptance-row label {
  width: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.contact-template-page .contact-template-form .acceptance-row .wpcf7-list-item-label {
  width: auto !important;
  max-width: none !important;
}

.contact-template-page .contact-template-form .hisherik-actions {
  width: auto !important;
  justify-content: flex-end !important;
}

@media (max-width: 1320px) {
  .header__row {
    grid-template-columns: minmax(0, 1fr) minmax(200px, 248px);
    column-gap: 22px;
  }

  .header__row::before {
    inset-inline-end: calc(22px + 248px);
  }

  .header--default .header__row {
    grid-template-columns: minmax(0, 1fr) minmax(148px, 180px);
  }

  .header--default .header__row::before {
    inset-inline-end: calc(22px + 180px);
  }

  .menu-inline {
    gap: clamp(12px, 1.2vw, 20px) !important;
  }
}

@media (max-width: 991.98px) {
  .header {
    min-height: 76px;
  }

  .header__row {
    width: min(100% - 48px, 620px) !important;
    min-height: 76px;
    grid-template-rows: 76px;
  }

  .header__default-brand-title {
    font-size: clamp(24px, 6.2vw, 30px) !important;
  }

  .header__default-brand-subtitle {
    display: none !important;
  }

  .header .call-us .fa {
    font-size: 19px !important;
  }
}

@media (max-width: 767.98px) {
  .contact-template-page .contact-template-form .hisherik-grid-2,
  .contact-template-page .contact-template-form .f-bottom-row {
    grid-template-columns: 1fr !important;
  }

  .contact-template-page .contact-template-form .hisherik-actions {
    width: 100% !important;
    justify-content: stretch !important;
  }

  .contact-template-page .contact-template-form .hisherik-actions .hisherik-btn {
    width: 100% !important;
  }

  body.body.body.body :where(.home-hero__button,
  .home-hero__card-cta,
  .home-products-preview__link,
  .home-footer-cta__button,
  .home-footer-cta__phone,
  .product-product-hero__btn,
  .product-tables__cta,
  .clients-showcase-section--v2 .clients-showcase__cta,
  .contact-template-project-cta__button,
  .contact-template-form input[type="submit"],
  .contact-template-form .wpcf7-submit,
  .contact-template-form .btn_submit,
  .blog-single-contact .wpcf7-submit,
  .footer-contact-card input[type="submit"],
  .footer-contact-card .wpcf7-submit,
  .form_order.footer_form .btn_submit,
  .form_order.footer_form input.wpcf7-submit,
  input.wpcf7-form-control.wpcf7-submit.has-spinner.hisherik-btn,
  .newsletter-popup__submit,
  .certs__cta-button,
  .btn.bg-hisherik,
  .cs_link__borderlink,
  .error__link) {
    min-height: 50px !important;
    max-width: min(100%, 320px);
    padding-inline: 20px !important;
    font-size: 14px !important;
    white-space: normal;
  }
}

/* 2026-06-06 Gor: mobile header logo separation
   Fix overlap/crowding between the iron and gates logos on h.wizz.ltd mobile header. */
@media (max-width: 991.98px) {
  .header__logos-wrap {
    gap: clamp(16px, 4.8vw, 22px) !important;
  }

  .header__iron-mark-link,
  .header-gates__brand-link {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
    overflow: visible !important;
  }

  .header__iron-mark-img,
  .header-gates__brand-link img {
    display: block !important;
    flex: 0 0 auto !important;
  }
}

@media (max-width: 380px) {
  .header__logos-wrap {
    gap: 14px !important;
  }

  .header__iron-mark-link,
  .header-gates__brand-link {
    min-width: 0 !important;
  }
}

/* 2026-06-06 Gor: stronger selector after header-menu mobile .d-flex gap rule. */
@media (max-width: 991.98px) {
  .header__logos-col .header__logos-wrap.d-flex {
    gap: clamp(16px, 4.8vw, 22px) !important;
  }
}

@media (max-width: 380px) {
  .header__logos-col .header__logos-wrap.d-flex {
    gap: 14px !important;
  }
}

/* 2026-06-06 Gor: mobile demo hardening for tables, drawer, SVG art and touch targets. */
@media (max-width: 767.98px) {
  html,
  body {
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  .tw-pivot-shell {
    display: block !important;
    width: min(100%, calc(100vw - 28px)) !important;
    max-width: calc(100vw - 28px) !important;
    margin-inline: auto !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-inline: contain;
    padding: 0 0 12px !important;
    border-radius: 18px !important;
    box-shadow: inset 18px 0 18px -22px rgba(255, 255, 255, .65), inset -18px 0 18px -22px rgba(255, 255, 255, .65) !important;
  }

  .tw-pivot-shell::before {
    content: "גללו לצדדים לצפייה בכל המידות";
    position: sticky;
    inset-inline-start: 10px;
    top: 0;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    margin: 8px 8px 8px 0;
    padding: 6px 10px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(10, 20, 34, .88);
    color: #f7fbff;
    font: 700 12px/1.2 "Arimo", sans-serif;
    pointer-events: none;
  }

  .tw-pivot-table {
    width: max-content !important;
    min-width: 720px !important;
    max-width: none !important;
    margin: 0 !important;
  }

  .tw-pivot-table th,
  .tw-pivot-table td {
    min-height: 44px !important;
    padding-block: 12px !important;
  }

  .clients-showcase__chip-link,
  .main-cat-breadcrumbs__link,
  .main-cat-breadcrumbs__text,
  .blog-template-breadcrumbs__link,
  .gallery-template-breadcrumbs__link,
  .contact-template-breadcrumbs__link,
  .product-product-breadcrumbs__link,
  .hisherik-contact-link,
  .site-footer a,
  .menu-mobile a {
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  .clients-showcase__chip-link {
    padding-block: 8px !important;
  }

  .hisherik-contact-link,
  .site-footer a {
    padding-block: 8px !important;
  }

  .main-cat-hero,
  .main-cat-hero__inner,
  .main-cat-hero__visual,
  .main-cat-hero__media,
  .main-cat-hero__corner-deco {
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .main-cat-hero__corner-deco-svg {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    transform: none !important;
  }

  .contact-template-page input::placeholder,
  .contact-template-page textarea::placeholder,
  .blog-single-contact .contact_section__form input::placeholder,
  .blog-single-contact .contact_section__form textarea::placeholder,
  .product-sticky-card input::placeholder,
  .product-sticky-card textarea::placeholder,
  .product-contact-cta input::placeholder,
  .product-contact-cta textarea::placeholder,
  .contact_section__form--modal .form_control::placeholder,
  .form_order.footer_form .form_control::placeholder {
    color: rgba(238, 245, 255, .78) !important;
    opacity: 1 !important;
  }
}

@media (max-width: 991.98px) {
  .header-mobile-nav__panel {
    width: min(92vw, 390px) !important;
    max-width: calc(100vw - 24px) !important;
    padding-bottom: max(22px, env(safe-area-inset-bottom)) !important;
  }

  .header-mobile-nav__head {
    gap: 12px !important;
  }

  .header-mobile-nav__close,
  .header-mobile-nav__catalog-link,
  .header__mobile-toggle {
    min-width: 44px !important;
    min-height: 44px !important;
  }

  .menu-mobile > li > a {
    min-height: 48px !important;
    padding: 13px 14px !important;
    border-radius: 14px !important;
  }

  .menu-mobile .sub-menu {
    margin: 4px 10px 12px 0 !important;
    padding: 8px 10px !important;
    border-inline-start: 2px solid rgba(236, 126, 39, .65) !important;
    background: rgba(255,255,255,.04) !important;
    border-radius: 14px !important;
  }

  .menu-mobile .sub-menu li a {
    min-height: 44px !important;
    padding: 10px 12px !important;
  }
}

/* 2026-06-06 Gor: final mobile containment pass after live geometry check. */
@media (max-width: 767.98px) {
  .tw-pivot-shell {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    margin-left: calc(50% - 50vw + 14px) !important;
    margin-right: calc(50% - 50vw + 14px) !important;
  }

  .main-cat-hero__corner-deco,
  .main-cat-hero__corner-deco-svg {
    display: none !important;
  }

  .site-footer a,
  .menu-mobile a,
  .main-cat-breadcrumbs__link,
  .main-cat-breadcrumbs__text,
  .blog-template-breadcrumbs__link,
  .gallery-template-breadcrumbs__link,
  .contact-template-breadcrumbs__link,
  .product-product-breadcrumbs__link {
    min-width: 44px !important;
    justify-content: center !important;
  }

  .header__gates-link.header-gates__brand-link,
  .header__iron-mark-link,
  .header__iron-link {
    min-width: 44px !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

/* 2026-06-06 Gor: tighten mobile table viewport after real-device screenshot. */
@media (max-width: 767.98px) {
  .tw-table-viewport,
  .tw-table-rows {
    width: calc(100vw - 10px) !important;
    max-width: calc(100vw - 10px) !important;
    margin-left: calc(50% - 50vw + 5px) !important;
    margin-right: calc(50% - 50vw + 5px) !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .tw-pivot-shell {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 0 6px !important;
    border-radius: 8px !important;
    direction: ltr !important;
    overflow-x: auto !important;
    scrollbar-gutter: stable both-edges;
  }

  .tw-pivot-shell::before {
    display: none !important;
    content: none !important;
  }

  .tw-pivot-table {
    direction: rtl !important;
    min-width: 760px !important;
    width: max-content !important;
  }

  .tw-pivot-table th,
  .tw-pivot-table td {
    padding: 9px 10px !important;
  }
}

/* Custom industrial icon set. */
.hisherik-line-icon {
  width: 1em;
  height: 1em;
  display: block;
  color: var(--hs-orange, #ff970f);
  overflow: visible;
  flex: 0 0 auto;
  filter:
    drop-shadow(0 0 7px rgba(255, 151, 15, 0.24))
    drop-shadow(0 8px 14px rgba(0, 0, 0, 0.34));
  transition: color 0.18s ease, transform 0.18s ease, filter 0.18s ease;
}

.hisherik-line-icon * {
  vector-effect: non-scaling-stroke;
}

.hisherik-line-icon__depth {
  color: rgba(255, 151, 15, 0.62);
}

.hisherik-line-icon__accent {
  color: #ffbd5a;
}

.home-hero-stat__icon {
  width: clamp(28px, 2.5vw, 38px);
  height: clamp(28px, 2.5vw, 38px);
  display: inline-grid;
  place-items: center;
  color: #ff970f;
  font-size: clamp(28px, 2.5vw, 38px) !important;
  margin-bottom: 5px;
}

.home-hero-stat__icon .hisherik-line-icon {
  width: 1em;
  height: 1em;
}

.home-products-preview__card {
  position: relative;
}

.home-products-preview__icon {
  position: absolute;
  inset-block-start: 12px;
  inset-inline-start: 12px;
  z-index: 3;
  width: clamp(54px, 4.8vw, 72px);
  height: clamp(54px, 4.8vw, 72px);
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(255, 151, 15, 0.46);
  border-radius: 0;
  background:
    radial-gradient(circle at 50% 25%, rgba(255, 151, 15, 0.16), transparent 62%),
    rgba(4, 10, 15, 0.84);
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.34);
}

.home-products-preview__icon .hisherik-line-icon {
  width: 78%;
  height: 78%;
}

.home-products-preview__card:hover .home-products-preview__icon .hisherik-line-icon,
.home-products-preview__card:focus-within .home-products-preview__icon .hisherik-line-icon,
.contact-template-mini-card:hover > .hisherik-line-icon,
.contact-template-resource-card:hover > .hisherik-line-icon {
  transform: translateY(-2px) scale(1.04);
  filter:
    drop-shadow(0 0 10px rgba(255, 151, 15, 0.38))
    drop-shadow(0 10px 18px rgba(0, 0, 0, 0.4));
}

.main-cat-page .main-cat-tabs__icon--custom {
  width: clamp(58px, 5.3vw, 78px) !important;
  height: clamp(50px, 4.8vw, 68px) !important;
  display: inline-grid !important;
  place-items: center;
  padding: 7px;
  border: 1px solid rgba(255, 151, 15, 0.38);
  border-radius: 0;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.025)),
    rgba(4, 10, 15, 0.42);
  color: #ff970f !important;
  filter: none !important;
}

.main-cat-page .main-cat-tabs__icon--custom .hisherik-line-icon {
  width: 100%;
  height: 100%;
  color: inherit !important;
}

.main-cat-page .main-cat-tabs__link.active .main-cat-tabs__icon--custom {
  border-color: rgba(255, 255, 255, 0.62);
  background: rgba(255, 255, 255, 0.12);
  color: #fff !important;
}

.main-cat-page .main-cat-tabs__link:hover .main-cat-tabs__icon--custom .hisherik-line-icon,
.main-cat-page .main-cat-tabs__link:focus-visible .main-cat-tabs__icon--custom .hisherik-line-icon,
.main-cat-page .main-cat-tabs__link.active .main-cat-tabs__icon--custom .hisherik-line-icon {
  transform: translateY(-1px);
}

.contact-template-info__icon .hisherik-line-icon {
  width: 30px;
  height: 30px;
}

.contact-template-mini-card > .hisherik-line-icon,
.contact-template-resource-card > .hisherik-line-icon,
.contact-template-promise > .hisherik-line-icon {
  width: clamp(42px, 4vw, 58px);
  height: clamp(42px, 4vw, 58px);
  margin-bottom: 4px;
}

.site-footer__contact-list .hisherik-line-icon {
  width: 18px;
  height: 18px;
  align-self: center;
  justify-self: center;
  filter: drop-shadow(0 0 6px rgba(255, 151, 15, 0.22));
}

/* Footer final pass: compact brand/contact area and cleaner link hierarchy. */
.site-footer {
  padding: clamp(34px, 4.2vw, 58px) 0 clamp(30px, 3.5vw, 46px) !important;
  border-top: 1px solid rgba(255, 151, 15, 0.18) !important;
  background:
    radial-gradient(circle at 84% 0%, rgba(255, 151, 15, 0.12), transparent 26rem),
    linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px),
    linear-gradient(180deg, #040a0f 0%, #020509 100%) !important;
  background-size: auto, 160px 160px, auto !important;
}

.whatsapp_float.is-footer-hidden {
  display: none !important;
}

.site-footer__container {
  width: min(1480px, calc(100% - 48px)) !important;
}

.site-footer__layout {
  grid-template-columns: minmax(320px, 390px) minmax(0, 1fr) !important;
  grid-template-areas: "about links" !important;
  gap: clamp(34px, 4vw, 64px) !important;
  align-items: start !important;
}

.site-footer__brand-title {
  margin: 0 0 14px !important;
  color: #fff !important;
  font-size: clamp(22px, 1.75vw, 28px) !important;
  font-weight: 500 !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
}

.site-footer__brand-title::after {
  content: "";
  display: block;
  width: 46px;
  height: 2px;
  margin-top: 12px;
  background: #ff970f;
}

.site-footer__about-text {
  max-width: 42ch !important;
  color: rgba(246, 248, 251, 0.76) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  opacity: 1 !important;
}

.site-footer__contact-list {
  width: 100%;
  max-width: 360px;
  display: grid !important;
  gap: 10px !important;
  margin: 20px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.site-footer__contact-list li {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  min-height: 38px !important;
  color: rgba(246, 248, 251, 0.78) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}

.site-footer__contact-list i {
  color: #ff970f !important;
  font-size: 17px !important;
  line-height: 1 !important;
  text-align: center !important;
}

.site-footer__contact-list a,
.site-footer__contact-list span {
  min-width: 0;
  color: rgba(246, 248, 251, 0.8) !important;
  text-decoration: none !important;
  overflow-wrap: anywhere;
}

.site-footer__contact-list a:hover,
.site-footer__contact-list a:focus-visible {
  color: #ffb84a !important;
}

.site-footer__badges {
  justify-content: flex-start !important;
  margin: 0 0 22px !important;
}

.site-footer__badges-img {
  max-width: 138px !important;
  max-height: 52px !important;
  opacity: 0.9 !important;
}

.site-footer__menus {
  grid-template-columns: minmax(150px, 0.72fr) minmax(250px, 0.95fr) minmax(420px, 1.42fr) !important;
  border-block: 1px solid rgba(255, 255, 255, 0.11) !important;
}

.site-footer__menu-col {
  padding: 24px clamp(18px, 2vw, 30px) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
}

.site-footer__title {
  margin-bottom: 16px !important;
  color: #fff !important;
  font-size: clamp(22px, 1.8vw, 28px) !important;
  font-weight: 500 !important;
  text-shadow: none !important;
}

.site-footer__title::after {
  width: 36px !important;
  height: 2px !important;
  background: #ff970f !important;
}

.site-footer__menu {
  gap: 9px !important;
}

.site-footer__menu-group {
  gap: 7px !important;
}

.site-footer__menu a,
.site-footer__menu-text,
.site-footer__submenu a {
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.42 !important;
}

.site-footer__menu-text--group,
.site-footer__menu .current-menu-item > a {
  color: rgba(255, 255, 255, 0.92) !important;
  font-weight: 500 !important;
}

.site-footer__submenu {
  gap: 7px 16px !important;
}

.site-footer__menu-col:nth-child(2) .site-footer__menu {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.site-footer__menu-col:nth-child(3) .site-footer__menu {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.site-footer__menu-col:nth-child(2) .site-footer__submenu,
.site-footer__menu-col:nth-child(3) .site-footer__submenu {
  grid-template-columns: 1fr !important;
}

.site-footer__actions {
  margin-top: 22px !important;
}

.site-footer__utility-link,
.site-footer__social-link {
  border-radius: 0 !important;
}

.site-footer__credit {
  width: 100%;
  justify-content: flex-start !important;
  margin-top: 22px !important;
  padding-top: 18px !important;
  padding-left: 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

@media (max-width: 1099.98px) {
  .site-footer__layout {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "links"
      "about" !important;
    gap: 30px !important;
  }

  .site-footer__col--about {
    align-items: center !important;
    padding-top: 0 !important;
    text-align: center !important;
  }

  .site-footer__brand-title::after {
    margin-inline: auto;
  }

  .site-footer__about-text,
  .site-footer__contact-list {
    margin-inline: auto !important;
  }

  .site-footer__contact-list li {
    grid-template-columns: 22px minmax(0, auto) !important;
    justify-content: center !important;
  }

  .site-footer__actions,
  .site-footer__credit {
    max-width: 520px;
    justify-content: center !important;
  }
}

@media (max-width: 767.98px) {
  .site-footer {
    padding: 30px 0 34px !important;
  }

  .site-footer__container {
    width: min(100% - 28px, 620px) !important;
  }

  .site-footer__badges {
    justify-content: center !important;
    gap: 14px !important;
    margin-bottom: 22px !important;
  }

  .site-footer__badges-img {
    max-width: 116px !important;
    max-height: 46px !important;
  }

  .site-footer__menus {
    grid-template-columns: 1fr !important;
    border-block: 1px solid rgba(255, 255, 255, 0.1) !important;
  }

  .site-footer__menu-col {
    padding: 20px 0 !important;
    border-left: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    text-align: center !important;
  }

  .site-footer__menu-col:first-child {
    border-top: 0 !important;
  }

  .site-footer__title {
    font-size: 21px !important;
    text-align: center !important;
  }

  .site-footer__title::after {
    margin-inline: auto !important;
  }

  .site-footer__menu,
  .site-footer__menu-col:nth-child(2) .site-footer__menu,
  .site-footer__menu-col:nth-child(3) .site-footer__menu {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 14px !important;
    justify-items: center !important;
  }

  .site-footer__menu-col:first-child .site-footer__menu {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .site-footer__submenu {
    display: none !important;
  }

  .site-footer__menu-group {
    width: 100% !important;
    gap: 0 !important;
  }

  .site-footer__menu a,
  .site-footer__menu-text {
    min-height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .site-footer__about-text {
    max-width: min(100% - 80px, 34ch) !important;
    line-height: 1.6 !important;
  }

  .site-footer__contact-list {
    max-width: 310px;
  }

  .site-footer__actions {
    justify-content: center !important;
    gap: 12px !important;
  }

  .site-footer__credit {
    flex-direction: column-reverse;
    gap: 12px !important;
    max-width: calc(100% - 80px) !important;
    padding-left: 0 !important;
    text-align: center !important;
  }
}


/* QA fixes 2026-06-10: popup close, RTL placeholders, WhatsApp side, department CTAs. */
html body.body .newsletter-popup__close,
html body .newsletter-popup__close {
  position: absolute !important;
  top: 8px !important;
  right: 8px !important;
  left: auto !important;
  z-index: 10020 !important;
  width: 42px !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(255, 151, 15, 0.55) !important;
  border-radius: 0 !important;
  background: rgba(5, 8, 12, 0.92) !important;
  color: #ffad25 !important;
  font-size: 30px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: none !important;
}

html body.body .newsletter-popup__dialog,
html body.body .newsletter-popup__card,
html body.body .newsletter-popup__form,
html body.body .newsletter-popup__field input,
html body.body #leadFormPhone {
  direction: rtl !important;
  text-align: right !important;
}

html body.body .newsletter-popup__field input::placeholder,
html body.body #leadFormPhone::placeholder {
  direction: rtl !important;
  text-align: right !important;
}

html body.body .whatsapp_float,
html body .whatsapp_float {
  right: 40px !important;
  left: auto !important;
}

@media (max-width: 767px) {
  html body.body .whatsapp_float,
  html body .whatsapp_float {
    right: 16px !important;
    left: auto !important;
  }
}

html body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn,
html body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto 42px !important;
  align-items: center !important;
  direction: rtl !important;
  gap: 12px !important;
  overflow: hidden !important;
}

html body.body .clients-showcase-section--v2 .clients-showcase__cta-arrow,
html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-arrow {
  position: relative !important;
  inset: auto !important;
  width: 36px !important;
  height: 36px !important;
  flex: 0 0 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 2px solid rgba(5, 8, 12, 0.72) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,0.08) !important;
  color: #05080c !important;
  transform: none !important;
}

html body.body .clients-showcase-section--v2 .clients-showcase__cta-arrow::before,
html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-arrow::before {
  content: "" !important;
  position: static !important;
  display: block !important;
  width: 10px !important;
  height: 10px !important;
  border: 0 !important;
  border-left: 2px solid currentColor !important;
  border-bottom: 2px solid currentColor !important;
  transform: rotate(45deg) !important;
}

html body.body .clients-showcase-section--v2 .clients-showcase__cta-image,
html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-image {
  mix-blend-mode: normal !important;
  background: transparent !important;
}

@media (max-width: 767.98px) {
  html body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn,
  html body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn {
    grid-template-columns: minmax(0, 1fr) 104px 36px !important;
    min-height: 62px !important;
    height: auto !important;
    padding: 10px 12px !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-text,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-text {
    font-size: 1.22rem !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-image,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-image,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__card--gates .clients-showcase__cta-image {
    width: 104px !important;
    max-width: 104px !important;
    max-height: 46px !important;
    transform: none !important;
  }
}


/* QA fix 2026-06-10: keep department CTA text horizontal on mobile. */
@media (max-width: 767.98px) {
  html body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn,
  html body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn {
    grid-template-columns: 36px minmax(150px, 1fr) 92px !important;
    grid-auto-flow: dense !important;
    height: 66px !important;
    min-height: 66px !important;
    max-height: 74px !important;
    padding: 8px 10px !important;
    gap: 10px !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-text,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-text {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    display: block !important;
    font-size: 1.1rem !important;
    line-height: 1.15 !important;
    text-align: right !important;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    text-wrap: nowrap !important;
    writing-mode: horizontal-tb !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-arrow,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-arrow {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-text,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-text {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-image,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-image,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__card--gates .clients-showcase__cta-image {
    grid-column: 3 !important;
    grid-row: 1 !important;
    width: 92px !important;
    max-width: 92px !important;
    max-height: 42px !important;
    height: auto !important;
    align-self: center !important;
    justify-self: end !important;
  }
}


/* QA fix 2026-06-10: final compact mobile department CTA layout. */
@media (max-width: 767.98px) {
  html body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn,
  html body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn {
    grid-template-columns: 34px minmax(0, 1fr) 84px !important;
    height: 66px !important;
    min-height: 66px !important;
    max-height: 74px !important;
    padding: 8px 10px !important;
    gap: 10px !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-text,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-text {
    font-size: 1rem !important;
    line-height: 1.12 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-image,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-image,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__card--gates .clients-showcase__cta-image {
    width: 84px !important;
    max-width: 84px !important;
    max-height: 42px !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-arrow,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-arrow {
    width: 34px !important;
    height: 34px !important;
    flex-basis: 34px !important;
  }
}


/* QA fix 2026-06-10: footer links clickable + RTL layout polish. */
html body.body .site-footer,
html body .site-footer {
  position: relative !important;
  z-index: 1 !important;
  overflow: hidden !important;
}

html body.body .site-footer a,
html body .site-footer a {
  position: relative !important;
  z-index: 2 !important;
  pointer-events: auto !important;
}

html body.body .site-footer__layout,
html body .site-footer__layout {
  direction: rtl !important;
}

html body.body .site-footer__menus,
html body .site-footer__menus {
  display: grid !important;
  direction: rtl !important;
  align-items: start !important;
}

html body.body .site-footer__menu-col,
html body .site-footer__menu-col {
  text-align: right !important;
  min-width: 0 !important;
}

html body.body .site-footer__title,
html body .site-footer__title {
  text-align: right !important;
}

html body.body .site-footer__title::after,
html body .site-footer__title::after,
html body.body .site-footer__brand-title::after,
html body .site-footer__brand-title::after {
  margin-inline-start: 0 !important;
  margin-inline-end: auto !important;
}

html body.body .site-footer__menu,
html body .site-footer__menu,
html body.body .site-footer__submenu,
html body .site-footer__submenu {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

html body.body .site-footer__menu,
html body .site-footer__menu {
  display: grid !important;
  align-items: start !important;
  justify-items: stretch !important;
}

html body.body .site-footer__menu-group,
html body .site-footer__menu-group {
  display: grid !important;
  min-width: 0 !important;
  align-items: start !important;
  justify-items: stretch !important;
}

html body.body .site-footer__submenu,
html body .site-footer__submenu {
  display: grid !important;
  gap: 6px !important;
  padding-top: 6px !important;
}

html body.body .site-footer__menu a,
html body.body .site-footer__submenu a,
html body.body .site-footer__menu-text,
html body .site-footer__menu a,
html body .site-footer__submenu a,
html body .site-footer__menu-text {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: right !important;
  direction: rtl !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  text-decoration: none !important;
}

html body.body .site-footer__menu-text--group,
html body .site-footer__menu-text--group {
  color: rgba(255,255,255,0.94) !important;
  font-weight: 700 !important;
  cursor: default !important;
}

html body.body .site-footer__submenu a,
html body .site-footer__submenu a {
  color: rgba(255,255,255,0.72) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  padding-inline-start: 12px !important;
  border-inline-start: 1px solid rgba(255,151,15,0.22) !important;
}

html body.body .site-footer__menu a:hover,
html body.body .site-footer__submenu a:hover,
html body.body .site-footer__menu a:focus-visible,
html body.body .site-footer__submenu a:focus-visible,
html body .site-footer__menu a:hover,
html body .site-footer__submenu a:hover,
html body .site-footer__menu a:focus-visible,
html body .site-footer__submenu a:focus-visible {
  color: #ffb84a !important;
  outline: 2px solid rgba(255,151,15,0.35) !important;
  outline-offset: 2px !important;
}

@media (min-width: 1100px) {
  html body.body .site-footer__layout,
  html body .site-footer__layout {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 390px) !important;
    grid-template-areas: "links about" !important;
  }

  html body.body .site-footer__menus,
  html body .site-footer__menus {
    grid-template-columns: minmax(150px, .65fr) minmax(250px, 1fr) minmax(420px, 1.35fr) !important;
  }
}

@media (max-width: 1099.98px) {
  html body.body .site-footer__layout,
  html body .site-footer__layout {
    grid-template-columns: 1fr !important;
    grid-template-areas: "links" "about" !important;
  }

  html body.body .site-footer__col--about,
  html body .site-footer__col--about {
    align-items: stretch !important;
    text-align: right !important;
  }

  html body.body .site-footer__about-text,
  html body.body .site-footer__contact-list,
  html body .site-footer__about-text,
  html body .site-footer__contact-list {
    margin-inline-start: 0 !important;
    margin-inline-end: 0 !important;
  }

  html body.body .site-footer__actions,
  html body.body .site-footer__credit,
  html body .site-footer__actions,
  html body .site-footer__credit {
    justify-content: flex-start !important;
    max-width: none !important;
  }
}

@media (max-width: 767.98px) {
  html body.body .site-footer__container,
  html body .site-footer__container {
    width: min(100% - 28px, 620px) !important;
  }

  html body.body .site-footer__menus,
  html body .site-footer__menus {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  html body.body .site-footer__menu-col,
  html body .site-footer__menu-col {
    padding: 18px 0 !important;
    text-align: right !important;
    border-left: 0 !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
  }

  html body.body .site-footer__menu-col:first-child,
  html body .site-footer__menu-col:first-child {
    border-top: 0 !important;
  }

  html body.body .site-footer__title,
  html body .site-footer__title {
    text-align: right !important;
    font-size: 21px !important;
  }

  html body.body .site-footer__title::after,
  html body .site-footer__title::after {
    margin-inline-start: 0 !important;
    margin-inline-end: auto !important;
  }

  html body.body .site-footer__menu,
  html body.body .site-footer__menu-col:nth-child(2) .site-footer__menu,
  html body.body .site-footer__menu-col:nth-child(3) .site-footer__menu,
  html body .site-footer__menu,
  html body .site-footer__menu-col:nth-child(2) .site-footer__menu,
  html body .site-footer__menu-col:nth-child(3) .site-footer__menu {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    justify-items: stretch !important;
  }

  html body.body .site-footer__submenu,
  html body .site-footer__submenu {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 5px !important;
  }

  html body.body .site-footer__menu-group,
  html body .site-footer__menu-group {
    gap: 5px !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    background: rgba(255,255,255,0.025) !important;
  }

  html body.body .site-footer__menu a,
  html body.body .site-footer__menu-text,
  html body .site-footer__menu a,
  html body .site-footer__menu-text {
    justify-content: flex-start !important;
    text-align: right !important;
    min-height: 34px !important;
  }

  html body.body .site-footer__about-text,
  html body .site-footer__about-text {
    max-width: 42ch !important;
  }

  html body.body .site-footer__contact-list li,
  html body .site-footer__contact-list li {
    justify-content: start !important;
  }
}


/* QA fix 2026-06-10: final footer RTL alignment guard after mobile overrides. */
html body .site-footer .site-footer__menu-col,
html body.body .site-footer .site-footer__menu-col,
html body .site-footer .site-footer__title,
html body.body .site-footer .site-footer__title,
html body .site-footer .site-footer__menu,
html body.body .site-footer .site-footer__menu,
html body .site-footer .site-footer__menu-group,
html body.body .site-footer .site-footer__menu-group,
html body .site-footer .site-footer__submenu,
html body.body .site-footer .site-footer__submenu {
  text-align: right !important;
  justify-items: stretch !important;
}

html body .site-footer .site-footer__title,
html body.body .site-footer .site-footer__title {
  width: 100% !important;
  display: block !important;
}

html body .site-footer .site-footer__menu a,
html body.body .site-footer .site-footer__menu a,
html body .site-footer .site-footer__menu-text,
html body.body .site-footer .site-footer__menu-text,
html body .site-footer .site-footer__submenu a,
html body.body .site-footer .site-footer__submenu a {
  justify-content: flex-start !important;
  text-align: right !important;
}

@media (max-width: 767.98px) {
  html body .site-footer .site-footer__menu-col,
  html body.body .site-footer .site-footer__menu-col {
    padding-inline: 0 !important;
  }

  html body .site-footer .site-footer__menu-group,
  html body.body .site-footer .site-footer__menu-group {
    width: 100% !important;
    box-sizing: border-box !important;
  }
}


/* QA fix 2026-06-10: mobile department CTAs should be text + arrow only. */
@media (max-width: 767.98px) {
  html body.body .clients-showcase-section--v2 .clients-showcase__cta-image,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-image {
    display: none !important;
  }

  html body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn,
  html body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn {
    grid-template-columns: minmax(0, 1fr) 34px !important;
    direction: rtl !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-text,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-text {
    grid-column: 1 !important;
    text-align: right !important;
  }

  html body.body .clients-showcase-section--v2 .clients-showcase__cta-arrow,
  html body.body.home .clients-showcase-section--v2 .clients-showcase__cta-arrow {
    grid-column: 2 !important;
  }
}
