/* Hisherik UI Kit rollout.
   This file is the final design-system layer and is loaded after the legacy
   theme styles. Keep site-wide tokens and shared component behavior here. */

:root {
  --hk-orange: #ff8a00;
  --hk-orange-2: #ff970f;
  --hk-orange-3: #f47721;
  --hk-bg: #111111;
  --hk-bg-2: #191919;
  --hk-panel: rgba(25, 25, 25, 0.88);
  --hk-panel-strong: rgba(17, 17, 17, 0.96);
  --hk-steel: #8f8f8f;
  --hk-white: #ffffff;
  --hk-muted: #c4c4c4;
  --hk-line: rgba(196, 196, 196, 0.24);
  --hk-line-soft: rgba(196, 196, 196, 0.14);
  --hk-line-orange: rgba(255, 138, 0, 0.62);
  --hk-success: #00a35a;
  --hk-error: #d93535;
  --hk-focus: 0 0 0 2px rgba(255, 138, 0, 0.32);
  --hk-shadow: 0 22px 54px rgba(0, 0, 0, 0.42);
  --hk-shadow-tight: 0 12px 28px rgba(0, 0, 0, 0.34);
  --hk-radius: 0px;
  --hk-radius-soft: 3px;
  --hk-shell: min(1480px, calc(100% - 48px));
  --hk-btn-h: 44px;
  --hk-btn-x: 24px;
  --hk-transition: 0.18s ease;

  /* Bootstrap compatibility: prevent unstyled CMS links from falling back to blue. */
  --bs-primary: #f47721;
  --bs-primary-rgb: 244, 119, 33;
  --bs-link-color: #ff970f;
  --bs-link-color-rgb: 255, 151, 15;
  --bs-link-hover-color: #ffad25;
  --bs-link-hover-color-rgb: 255, 173, 37;

  --hs-orange: var(--hk-orange);
  --hs-orange-2: var(--hk-orange-2);
  --hs-black: #080808;
  --hs-surface: var(--hk-bg);
  --hs-surface-2: var(--hk-bg-2);
  --hs-line: var(--hk-line);
  --hs-line-strong: var(--hk-line-orange);
  --hs-text: var(--hk-white);
  --hs-text-soft: var(--hk-muted);
  --hs-text-faint: rgba(196, 196, 196, 0.62);
}

body.body .main a:not([class]) {
  color: var(--hk-orange-2);
  text-decoration-color: rgba(255, 151, 15, 0.58);
}

body.body .main a:not([class]):hover,
body.body .main a:not([class]):focus-visible {
  color: #ffad25;
  text-decoration-color: currentColor;
}

/* 2026-07-12 selected footer direction: compact brand rail and four-column sitemap. */
body.body footer.site-footer.site-footer--compact {
  padding: 0 !important;
  margin: 0 !important;
  background:
    radial-gradient(circle at 78% 0%, rgba(255, 138, 0, 0.06), transparent 32%),
    linear-gradient(180deg, #070707 0%, #050505 100%) !important;
  color: #eaeaea !important;
  border: 0 !important;
}

body.body footer.site-footer--compact .site-footer-compact {
  width: min(1320px, calc(100% - 48px)) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.body footer.site-footer--compact .site-footer-compact__top {
  min-height: 126px;
  display: grid !important;
  grid-template-columns: minmax(320px, 1fr) minmax(260px, 0.9fr) minmax(340px, 1.1fr) !important;
  align-items: center !important;
  gap: clamp(20px, 2.2vw, 34px) !important;
  padding: 20px clamp(6px, 1.4vw, 20px) !important;
  border-bottom: 1px solid rgba(215, 215, 215, 0.25) !important;
}

body.body footer.site-footer--compact .site-footer-compact__brand {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  padding-inline-start: 18px !important;
  border-inline-start: 2px solid #ff8a00 !important;
  text-decoration: none !important;
}

body.body footer.site-footer--compact .site-footer-compact__brand img {
  display: block !important;
  width: auto !important;
  object-fit: contain !important;
  filter: none !important;
}

body.body footer.site-footer--compact .site-footer-compact__brand-gates {
  max-width: 74px !important;
  max-height: 78px !important;
}

body.body footer.site-footer--compact .site-footer-compact__brand-iron {
  max-width: 184px !important;
  max-height: 68px !important;
}

body.body footer.site-footer--compact .site-footer-compact__trust {
  margin: 0 !important;
  color: #cdcdcd !important;
  font-size: clamp(15px, 1.05vw, 18px) !important;
  line-height: 1.4 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

body.body footer.site-footer--compact .site-footer-compact__contact-cta {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 17px !important;
  direction: ltr !important;
}

body.body footer.site-footer--compact .site-footer-compact__phone {
  color: #f3f3f3 !important;
  font-size: clamp(18px, 1.25vw, 22px) !important;
  letter-spacing: 0.02em !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

body.body footer.site-footer--compact .site-footer-compact__cta-rule {
  width: 2px !important;
  height: 34px !important;
  background: #ff8a00 !important;
}

body.body footer.site-footer--compact .site-footer-compact__button {
  min-width: 156px !important;
  min-height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 9px 22px !important;
  border: 1px solid #ff941a !important;
  border-radius: 0 !important;
  color: #f4f4f4 !important;
  background: transparent !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  direction: rtl !important;
  transition: background-color 180ms ease, color 180ms ease !important;
}

body.body footer.site-footer--compact .site-footer-compact__button:hover,
body.body footer.site-footer--compact .site-footer-compact__button:focus-visible {
  background: #ff8a00 !important;
  color: #080808 !important;
}

body.body footer.site-footer--compact .site-footer-compact__main {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr 1.2fr !important;
  padding: 30px 0 34px !important;
  border-bottom: 1px solid rgba(215, 215, 215, 0.25) !important;
}

body.body footer.site-footer--compact .site-footer-compact__column {
  min-height: 210px !important;
  padding: 0 clamp(22px, 2.6vw, 38px) !important;
  border-inline-start: 1px solid rgba(215, 215, 215, 0.28) !important;
  text-align: right !important;
}

body.body footer.site-footer--compact .site-footer-compact__column:first-child {
  border-inline-start: 0 !important;
}

body.body footer.site-footer--compact .site-footer-compact__column h2 {
  position: relative !important;
  margin: 0 0 20px !important;
  padding: 0 0 11px !important;
  color: #ff8a00 !important;
  font-size: clamp(20px, 1.4vw, 24px) !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

body.body footer.site-footer--compact .site-footer-compact__column h2::after {
  content: "" !important;
  position: absolute !important;
  inset-inline-start: 0 !important;
  bottom: 0 !important;
  width: 48px !important;
  height: 2px !important;
  background: #ff8a00 !important;
}

body.body footer.site-footer--compact .site-footer__menu--compact,
body.body footer.site-footer--compact .site-footer__menu--compact > li,
body.body footer.site-footer--compact .site-footer-compact__contact-list {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: transparent !important;
  border: 0 !important;
}

body.body footer.site-footer--compact .site-footer__menu--compact > li {
  margin: 0 0 12px !important;
}

body.body footer.site-footer--compact .site-footer__menu--compact a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 0 !important;
  color: #dcdcdc !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: clamp(15px, 1.05vw, 17px) !important;
  line-height: 1.45 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

body.body footer.site-footer--compact .site-footer__menu--compact a:hover,
body.body footer.site-footer--compact .site-footer__menu--compact a:focus-visible {
  color: #ff9c2b !important;
}

body.body footer.site-footer--compact .site-footer__menu-all {
  margin-top: 17px !important;
}

body.body footer.site-footer--compact .site-footer__menu-all a {
  color: #ff8a00 !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}

body.body footer.site-footer--compact .site-footer__menu-all i {
  font-size: 18px !important;
  flex: 0 0 auto !important;
  direction: ltr !important;
}

body.body footer.site-footer--compact .site-footer-compact__contact-list li {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 0 15px !important;
  color: #dcdcdc !important;
  font-size: clamp(15px, 1vw, 17px) !important;
  line-height: 1.45 !important;
}

body.body footer.site-footer--compact .site-footer-compact__contact-list svg,
body.body footer.site-footer--compact .site-footer-compact__contact-list i {
  width: 20px !important;
  min-width: 20px !important;
  color: #ff8a00 !important;
  fill: #ff8a00 !important;
}

body.body footer.site-footer--compact .site-footer-compact__contact-list a {
  color: inherit !important;
  text-decoration: none !important;
  direction: ltr !important;
}

body.body footer.site-footer--compact .site-footer-compact__social {
  display: flex !important;
  gap: 12px !important;
  margin-top: 22px !important;
}

body.body footer.site-footer--compact .site-footer-compact__social a {
  width: 44px !important;
  height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid #ff8a00 !important;
  border-radius: 0 !important;
  color: #ff8a00 !important;
  background: transparent !important;
  font-size: 20px !important;
  text-decoration: none !important;
}

body.body footer.site-footer--compact .site-footer-compact__social a:hover,
body.body footer.site-footer--compact .site-footer-compact__social a:focus-visible {
  background: #ff8a00 !important;
  color: #080808 !important;
}

body.body footer.site-footer--compact .site-footer-compact__legal {
  min-height: 64px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  padding: 12px 8px !important;
}

body.body footer.site-footer--compact .site-footer-compact__legal-links {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px 22px !important;
  color: #9e9e9e !important;
  font-size: 13px !important;
}

body.body footer.site-footer--compact .site-footer-compact__legal-links a {
  color: #cacaca !important;
  text-decoration: none !important;
}

body.body footer.site-footer--compact .site-footer-compact__wsol {
  display: inline-flex !important;
  align-items: center !important;
  text-decoration: none !important;
}

body.body footer.site-footer--compact .site-footer-compact__wsol img {
  display: block !important;
  width: 215px !important;
  max-width: 100% !important;
  height: auto !important;
}

@media (max-width: 1100px) {
  body.body footer.site-footer--compact .site-footer-compact__top {
    grid-template-columns: 1fr 1fr !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__trust {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__main {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px 0 !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__column:nth-child(3) {
    border-inline-start: 0 !important;
  }
}

@media (max-width: 680px) {
  body.body footer.site-footer--compact .site-footer-compact {
    width: min(100% - 32px, 560px) !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__top {
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    padding: 24px 0 !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__brand {
    justify-content: center !important;
    padding: 0 0 16px !important;
    border-inline-start: 0 !important;
    border-bottom: 2px solid rgba(255, 138, 0, 0.72) !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__brand-gates {
    max-width: 64px !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__brand-iron {
    max-width: 155px !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__trust {
    grid-column: auto !important;
    grid-row: auto !important;
    white-space: normal !important;
    font-size: 16px !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__contact-cta {
    justify-content: center !important;
    gap: 16px !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__button {
    min-width: 136px !important;
    min-height: 44px !important;
    padding-inline: 16px !important;
    font-size: 16px !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__phone {
    font-size: 18px !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__main {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 8px 0 20px !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__column,
  body.body footer.site-footer--compact .site-footer-compact__column:nth-child(3) {
    min-height: 0 !important;
    padding: 22px 4px !important;
    border-inline-start: 0 !important;
    border-bottom: 1px solid rgba(215, 215, 215, 0.2) !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__column:last-child {
    border-bottom: 0 !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__legal {
    flex-direction: column !important;
    text-align: center !important;
    padding: 18px 0 22px !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__legal-links {
    justify-content: center !important;
  }

  body.body footer.site-footer--compact .site-footer-compact__wsol img {
    width: 168px !important;
  }
}

/* Homepage departments: horizontal editorial chapters.
   This intentionally replaces the old equal-height card/chip presentation. */
body.body.home .clients-showcase-section--v2 .departments-showcase {
  position: relative;
  left: auto;
  width: min(1500px, calc(100vw - 48px));
  max-width: none;
  margin-block: clamp(38px, 5vw, 72px) 0;
  margin-inline: calc((100% - min(1500px, calc(100vw - 48px))) / 2);
  transform: none;
  box-sizing: border-box;
  color: var(--hk-white);
  direction: rtl;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__heading {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  margin: 0 0 clamp(24px, 3vw, 38px);
  padding-inline: clamp(18px, 2.4vw, 34px);
  text-align: right;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__heading-line {
  flex: 0 0 clamp(38px, 4vw, 58px);
  height: 3px;
  margin-top: 23px;
  background: var(--hk-orange);
}

body.body.home .clients-showcase-section--v2 .departments-showcase__title {
  margin: 0 !important;
  color: var(--hk-white) !important;
  font-size: clamp(34px, 3.3vw, 48px) !important;
  font-weight: 600 !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  text-align: right !important;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__title::after {
  content: none !important;
  display: none !important;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__subtitle {
  max-width: 640px;
  margin: 8px 0 0 !important;
  color: var(--hk-muted) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__chapters {
  overflow: hidden;
  border-block: 1px solid var(--hk-line);
  background:
    linear-gradient(90deg, rgba(255, 138, 0, 0.035), transparent 24%),
    rgba(8, 8, 8, 0.26);
}

body.body.home .clients-showcase-section--v2 .departments-showcase__chapter {
  display: grid !important;
  grid-template-columns: minmax(0, 2.15fr) minmax(300px, 0.85fr);
  grid-template-areas: "directory intro";
  align-items: stretch;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  direction: ltr;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__chapter + .departments-showcase__chapter {
  border-top: 1px solid var(--hk-line) !important;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__intro {
  grid-area: intro;
  min-width: 0;
  padding: clamp(26px, 3.2vw, 48px) clamp(24px, 3vw, 44px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  direction: rtl;
  text-align: center;
  border-left: 1px solid var(--hk-line);
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 138, 0, 0.075), transparent 46%),
    rgba(15, 15, 15, 0.45);
}

body.body.home .clients-showcase-section--v2 .departments-showcase__media {
  width: 100%;
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__image {
  display: block;
  width: auto;
  max-width: min(190px, 72%);
  height: auto;
  max-height: 96px;
  object-fit: contain;
  filter: drop-shadow(0 12px 22px rgba(0, 0, 0, 0.34));
}

body.body.home .clients-showcase-section--v2 .departments-showcase__chapter--gates .departments-showcase__image {
  max-width: 108px;
  max-height: 88px;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__chapter-title {
  margin: 0 !important;
  color: var(--hk-white) !important;
  font-size: clamp(30px, 2.6vw, 42px) !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__description {
  max-width: 430px;
  margin: 14px 0 22px !important;
  color: var(--hk-muted) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.72 !important;
  text-align: center !important;
}

body.body.home .clients-showcase-section--v2 a.departments-showcase__cta {
  width: 100%;
  min-height: 52px;
  margin-top: auto;
  padding: 11px 18px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid var(--hk-orange);
  border-radius: 0;
  background: rgba(255, 138, 0, 0.035);
  color: var(--hk-orange-2) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  text-align: right;
  text-decoration: none !important;
  transition: background var(--hk-transition), color var(--hk-transition), border-color var(--hk-transition);
}

body.body.home .clients-showcase-section--v2 a.departments-showcase__cta .fa {
  flex: 0 0 auto;
  font-size: 25px;
  line-height: 1;
}

body.body.home .clients-showcase-section--v2 a.departments-showcase__cta:hover,
body.body.home .clients-showcase-section--v2 a.departments-showcase__cta:focus-visible {
  border-color: var(--hk-orange-2);
  background: var(--hk-orange);
  color: #080808 !important;
  outline: none;
  box-shadow: var(--hk-focus);
}

body.body.home .clients-showcase-section--v2 .departments-showcase__directory {
  grid-area: directory;
  min-width: 0;
  padding: clamp(30px, 3.6vw, 52px) clamp(26px, 3.5vw, 54px);
  display: flex;
  align-items: flex-start;
  direction: rtl;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__groups {
  width: 100%;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  align-items: start;
  gap: clamp(24px, 3vw, 46px);
}

body.body.home .clients-showcase-section--v2 .departments-showcase__group {
  min-width: 0;
  margin: 0;
  padding: 0;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__group-title {
  min-height: 48px;
  margin: 0 0 14px !important;
  padding: 5px 14px 5px 8px;
  display: flex;
  align-items: flex-start;
  border-right: 2px solid var(--hk-orange);
  color: var(--hk-orange-2) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
  text-align: right;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__links {
  display: grid !important;
  gap: 2px;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__link-item {
  margin: 0;
  padding: 0;
}

body.body.home .clients-showcase-section--v2 .departments-showcase__link {
  min-height: 38px;
  padding: 7px 0;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: rgba(255, 255, 255, 0.78) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  text-align: right;
  text-decoration: none !important;
  transition: color var(--hk-transition), transform var(--hk-transition);
}

body.body.home .clients-showcase-section--v2 .departments-showcase__link .fa {
  flex: 0 0 auto;
  margin-top: 3px;
  color: var(--hk-orange);
  font-size: 18px;
  line-height: 1;
}

body.body.home .clients-showcase-section--v2 a.departments-showcase__link:hover,
body.body.home .clients-showcase-section--v2 a.departments-showcase__link:focus-visible {
  color: var(--hk-white) !important;
  transform: translateX(-2px);
  outline: none;
}

body.body.home .clients-showcase-section--v2 a.departments-showcase__link:focus-visible {
  box-shadow: 0 2px 0 var(--hk-orange);
}

body.body.home .clients-showcase-section--v2 .departments-showcase__link--static {
  padding-inline-start: 28px;
  color: rgba(255, 255, 255, 0.72) !important;
}

@media (max-width: 1050px) {
  body.body.home .clients-showcase-section--v2 .departments-showcase__chapter {
    grid-template-columns: minmax(0, 1.6fr) minmax(280px, 0.8fr);
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  body.body.home .clients-showcase-section--v2 .departments-showcase__chapter {
    grid-template-columns: 1fr;
    grid-template-areas:
      "intro"
      "directory";
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__intro {
    border-left: 0;
    border-bottom: 1px solid var(--hk-line);
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__description {
    max-width: 620px;
  }

  body.body.home .clients-showcase-section--v2 a.departments-showcase__cta {
    max-width: 460px;
    margin-inline: auto;
  }
}

@media (max-width: 575.98px) {
  body.body.home .clients-showcase-section--v2 .departments-showcase {
    position: static;
    left: auto;
    width: 100%;
    margin: 34px 0 0;
    transform: none;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__heading {
    gap: 12px;
    padding-inline: 4px;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__heading-line {
    flex-basis: 28px;
    margin-top: 18px;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__title {
    font-size: 31px !important;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__subtitle {
    font-size: 14px !important;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__intro,
  body.body.home .clients-showcase-section--v2 .departments-showcase__directory {
    padding: 24px 18px;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__media {
    min-height: 64px;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__image {
    max-width: 150px;
    max-height: 78px;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__chapter-title {
    font-size: 30px !important;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__description {
    margin-bottom: 18px !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
  }

  body.body.home .clients-showcase-section--v2 a.departments-showcase__cta {
    min-height: 50px;
    padding: 10px 14px;
    font-size: 16px !important;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__groups {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__group-title {
    min-height: 0;
    margin-bottom: 8px !important;
    font-size: 17px !important;
  }

  body.body.home .clients-showcase-section--v2 .departments-showcase__link {
    min-height: 42px;
    padding-block: 9px;
    font-size: 15px !important;
  }
}

html {
  background: #080808;
  color-scheme: dark;
}

body.body,
body.body .main,
body .main {
  background:
    linear-gradient(90deg, rgba(196, 196, 196, 0.04) 1px, transparent 1px),
    linear-gradient(180deg, #080808 0%, var(--hk-bg) 42%, #080808 100%) !important;
  background-size: 160px 160px, auto !important;
  color: var(--hk-white) !important;
  font-family: "Rubik", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
}

body.body :where(p, li, label, input, select, textarea, button, a, span, td, th) {
  letter-spacing: 0 !important;
}

body.body :where(p, li, label, input, select, textarea, td, th, .main-cat-content__inner, .product-article__body, .product-card__text) {
  font-size: max(14px, 1em) !important;
}

body.body :where(h1, .home-hero__title, .main-cat-hero__title, .product-product-hero__title, .contact-template-hero__title, .blog-template-hero__title, .gallery-template-hero__title, .about-header-lite__title, .accessibility-page__title, .error__title) {
  color: var(--hk-white) !important;
  font-size: 42px !important;
  font-weight: 600 !important;
  line-height: 52px !important;
  letter-spacing: 0 !important;
  text-shadow: 0 12px 28px rgba(0, 0, 0, 0.52) !important;
}

body.body :where(h2, .main-cat-section-head__title, .product-cards__title, .product-faq__title, .home-products-preview__title, .home-posts-section__title, .home-faq__title, .contact-template-section-title, .about-showcase__section-title, .clients-showcase__title) {
  color: var(--hk-white) !important;
  font-size: 32px !important;
  font-weight: 500 !important;
  line-height: 40px !important;
  letter-spacing: 0 !important;
}

body.body :where(h3, .product-card__title, .home-post-card__title, .blog-template-card__title, .main-cat-grand-card__title, .contact-template-info__title, .contact-template-mini-card__title, .contact-template-resource-card__title) {
  color: var(--hk-white) !important;
  font-size: 24px !important;
  font-weight: 500 !important;
  line-height: 32px !important;
  letter-spacing: 0 !important;
}

body.body :where(.main-cat-section-head__eyebrow, .product-product-hero__badge, .blog-template-card__meta, .home-post-card__meta, .about-timeline__chip, .about-page-timeline__chip, .clients-showcase__card-kicker, .accessibility-page__meta-chip) {
  min-height: 30px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 5px 12px !important;
  border: 1px solid var(--hk-line-orange) !important;
  border-radius: var(--hk-radius) !important;
  background: rgba(255, 138, 0, 0.08) !important;
  color: var(--hk-orange-2) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 20px !important;
}

body.body :where(.main-cat-section-head__title, .site-footer__title, .site-footer__brand-title, .home-products-preview__title, .home-posts-section__title, .home-faq__title, .product-cards__title, .product-faq__title, .contact-template-section-title, .about-showcase__section-title, .clients-showcase__title)::after {
  height: 3px !important;
  width: 74px !important;
  border-radius: 0 !important;
  background: linear-gradient(90deg, var(--hk-orange), rgba(255, 138, 0, 0)) !important;
}

body.body :where(.container, .home-hero-intro__inner, .header__row, .site-footer__container, .contact-template-content, .blog-template-content, .gallery-template-content, .accessibility-page__inner) {
  max-width: none !important;
}

body.body :where(.header__row, .home-hero-intro__inner, .site-footer__container, .main-cat-breadcrumbs__inner, .main-cat-hero, .main-cat-tabs, .main-cat-gallery, .main-cat-textblocks, .main-cat-content, .contact-template-content, .blog-template-breadcrumbs__inner, .blog-template-hero__inner, .blog-template-list, .gallery-template-hero__inner, .gallery-template-content, .accessibility-page__inner) {
  width: var(--hk-shell) !important;
  margin-inline: auto !important;
}

.header {
  background:
    radial-gradient(circle at 94% 0%, rgba(255, 138, 0, 0.12), transparent 30rem),
    rgba(8, 8, 8, 0.94) !important;
  border-bottom: 1px solid var(--hk-line) !important;
  box-shadow: 0 14px 38px rgba(0, 0, 0, 0.42) !important;
}

.header__row::before {
  background: linear-gradient(90deg, rgba(196, 196, 196, 0.12), rgba(255, 138, 0, 0.38), rgba(196, 196, 196, 0.12)) !important;
}

.menu-inline > li > a,
.header__catalog-link,
.header .call-us.btn,
.header-mobile-nav__menu .menu-mobile > li > a {
  color: var(--hk-white) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
}

.menu-inline > li.current-menu-item > a,
.menu-inline > li.current-menu-ancestor > a,
.menu-inline > li > a:hover,
.menu-inline > li > a:focus-visible {
  color: var(--hk-orange) !important;
}

.menu-inline .sub-menu,
.header-mobile-nav__panel {
  border: 1px solid var(--hk-line-orange) !important;
  border-radius: var(--hk-radius) !important;
  background: rgba(8, 8, 8, 0.96) !important;
  box-shadow: var(--hk-shadow) !important;
}

.menu-inline .sub-menu a {
  color: var(--hk-muted) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  border-bottom-color: var(--hk-line-soft) !important;
}

body.body :where(.home-hero__department-card, .home-products-preview__card, .home-post-card, .clients-showcase__card, .about-showcase__gallery-card, .about-showcase__review-card, .about-page-timeline__item, .about-timeline__item, .main-cat-grand-card, .main-cat-textblock, .main-cat-gallery__item, .gallery-template-grid__item, .blog-template-card, .blog-single-article, .blog-single-contact, .product-section, .product-card, .product-sticky-card, .product-contact-cta, .contact-template-info, .contact-template-form-wrap, .contact-template-map-card, .contact-template-resources, .contact-template-mini-card, .contact-template-resource-card, .contact-template-promise, .accessibility-page__card, .faq-accordion__item, .accordion-item, .footer-contact-card, .modal_form__bg, .tw-app .tw-panel, .tw-app .tw-card, .tw-classic-item) {
  border: 1px solid var(--hk-line) !important;
  border-radius: var(--hk-radius) !important;
  background:
    linear-gradient(180deg, rgba(196, 196, 196, 0.055), rgba(196, 196, 196, 0.018)),
    var(--hk-panel) !important;
  box-shadow: none !important;
}

body.body :where(.home-hero__department-card, .home-products-preview__card, .home-post-card, .clients-showcase__card, .about-showcase__gallery-card, .about-showcase__review-card, .main-cat-grand-card, .main-cat-textblock, .blog-template-card, .product-card, .contact-template-mini-card, .contact-template-resource-card, .faq-accordion__item) {
  transition: transform var(--hk-transition), border-color var(--hk-transition), box-shadow var(--hk-transition), background var(--hk-transition) !important;
}

body.body :where(.home-hero__department-card, .home-products-preview__card, .home-post-card, .clients-showcase__card, .about-showcase__gallery-card, .about-showcase__review-card, .main-cat-grand-card, .main-cat-textblock, .blog-template-card, .product-card, .contact-template-mini-card, .contact-template-resource-card, .faq-accordion__item):hover {
  border-color: var(--hk-line-orange) !important;
  box-shadow: var(--hk-shadow-tight) !important;
}

body.body :where(.home-hero__button, .home-hero__card-cta, .home-products-preview__link, .clients-showcase__cta, .contact-template-project-cta__button, .contact-template-form input[type="submit"], .contact-template-form .wpcf7-submit, .footer-contact-card input[type="submit"], .footer-contact-card .wpcf7-submit, .product-product-hero__btn, .product-contact-cta input[type="submit"], .product-contact-cta .wpcf7-submit, .product-sticky-card input[type="submit"], .product-sticky-card .wpcf7-submit, .newsletter-popup__submit, .form_order.footer_form .btn_submit, input.wpcf7-submit, button[type="submit"], .tw-app button, .tw-btn, .tw-classic-tab.is-active) {
  min-height: var(--hk-btn-h) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 0 var(--hk-btn-x) !important;
  border: 1px solid var(--hk-orange) !important;
  border-radius: var(--hk-radius) !important;
  background: linear-gradient(180deg, #ffad25 0%, var(--hk-orange) 62%, #f47721 100%) !important;
  color: #080808 !important;
  box-shadow: 0 16px 34px rgba(255, 138, 0, 0.2) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  text-shadow: none !important;
}

body.body :where(.breadcrumbs-copy-btn, .site-footer__utility-link, .product-card__link, .blog-template-filter a, .gallery-template-tabs__link, .main-cat-tabs__link, .contact-template-mini-card__cta, .contact-template-resource-card__cta, .product-article__image-grid-toggle, .about-showcase__gallery-button, .about-timeline__nav-button, .faq-accordion__trigger, .tw-classic-tab, .tw-app .tw-btn-inline) {
  border: 1px solid var(--hk-line) !important;
  border-radius: var(--hk-radius) !important;
  background: rgba(17, 17, 17, 0.74) !important;
  color: var(--hk-white) !important;
  box-shadow: none !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}

body.body :where(.breadcrumbs-copy-btn, .site-footer__utility-link, .product-card__link, .blog-template-filter a, .gallery-template-tabs__link, .main-cat-tabs__link, .contact-template-mini-card__cta, .contact-template-resource-card__cta, .product-article__image-grid-toggle, .about-showcase__gallery-button, .about-timeline__nav-button, .faq-accordion__trigger, .tw-classic-tab, .tw-app .tw-btn-inline):hover,
body.body :where(.breadcrumbs-copy-btn, .site-footer__utility-link, .product-card__link, .blog-template-filter a, .gallery-template-tabs__link, .main-cat-tabs__link, .contact-template-mini-card__cta, .contact-template-resource-card__cta, .product-article__image-grid-toggle, .about-showcase__gallery-button, .about-timeline__nav-button, .faq-accordion__trigger, .tw-classic-tab, .tw-app .tw-btn-inline):focus-visible {
  border-color: var(--hk-line-orange) !important;
  background: rgba(255, 138, 0, 0.08) !important;
  color: var(--hk-orange-2) !important;
  outline: none !important;
}

body.body :where(.main-cat-tabs__link.active, .gallery-template-tabs__link.is-active, .blog-template-filter a.is-active, .tw-classic-tab.is-active) {
  border-color: var(--hk-orange) !important;
  background: linear-gradient(180deg, #ffad25 0%, var(--hk-orange) 65%, #f47721 100%) !important;
  color: #080808 !important;
}

body.body :where(input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]), textarea, select, .tw-app input, .tw-app select) {
  min-height: 48px !important;
  border: 1px solid var(--hk-line) !important;
  border-radius: var(--hk-radius) !important;
  background: rgba(25, 25, 25, 0.82) !important;
  color: var(--hk-white) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 22px !important;
}

body.body :where(textarea) {
  min-height: 128px !important;
}

body.body :where(input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]), textarea, select, .tw-app input, .tw-app select):focus,
body.body :where(input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]), textarea, select, .tw-app input, .tw-app select):focus-visible {
  border-color: var(--hk-orange) !important;
  box-shadow: var(--hk-focus) !important;
  outline: none !important;
}

body.body :where(input::placeholder, textarea::placeholder) {
  color: rgba(196, 196, 196, 0.62) !important;
  opacity: 1 !important;
}

body.body :where(input[type="checkbox"], input[type="radio"]) {
  accent-color: var(--hk-orange);
}

.modal-content,
.modal_form__bg,
.whatsapp-modal-content,
.newsletter-popup__dialog {
  border-radius: var(--hk-radius) !important;
  border: 1px solid var(--hk-line-orange) !important;
  background: var(--hk-panel-strong) !important;
  color: var(--hk-white) !important;
  box-shadow: var(--hk-shadow) !important;
}

.btn-close,
.newsletter-popup__close,
.whatsapp-close {
  border-radius: var(--hk-radius) !important;
}

.site-footer {
  border-top-color: var(--hk-line-orange) !important;
}

.site-footer__menu a,
.site-footer__submenu a,
.site-footer__contact-list a,
.site-footer__contact-list span,
.site-footer__about-text,
.site-footer__credit-text {
  color: var(--hk-muted) !important;
  font-weight: 400 !important;
}

.hisherik-line-icon,
.contact-template-info__icon,
.contact-template-mini-card > .hisherik-line-icon,
.contact-template-resource-card > .hisherik-line-icon,
.contact-template-promise > .hisherik-line-icon,
.site-footer__contact-list .hisherik-line-icon {
  color: var(--hk-orange) !important;
}

.swiper-button-next,
.swiper-button-prev,
.slick-arrow,
.about-showcase__gallery-button,
.about-timeline__nav-button,
.product-cards__swiper .swiper-button-next,
.product-cards__swiper .swiper-button-prev {
  width: 48px !important;
  height: 48px !important;
  border: 1px solid var(--hk-line-orange) !important;
  border-radius: var(--hk-radius) !important;
  background: rgba(17, 17, 17, 0.84) !important;
  color: var(--hk-white) !important;
  opacity: 1 !important;
}

.swiper-button-next::after,
.swiper-button-prev::after {
  color: currentColor !important;
  font-size: 18px !important;
  font-weight: 400 !important;
}

.tw-app {
  --tw-orange: var(--hk-orange) !important;
  --tw-bg: var(--hk-bg) !important;
  --tw-panel: var(--hk-panel) !important;
  --tw-line: var(--hk-line) !important;
  color: var(--hk-white) !important;
  font-family: "Rubik", Arial, sans-serif !important;
}

.tw-app :where(.tw-tab, .tw-filter-chip, .tw-table-viewport, .tw-pivot-shell, .tw-card, .tw-panel) {
  border-radius: var(--hk-radius) !important;
  border-color: var(--hk-line) !important;
  background: rgba(25, 25, 25, 0.82) !important;
}

.tw-app :where(.tw-tab.is-active, .tw-filter-chip.is-active) {
  border-color: var(--hk-orange) !important;
  background: linear-gradient(180deg, #ffad25 0%, var(--hk-orange) 65%, #f47721 100%) !important;
  color: #080808 !important;
}

body.body :where(.home-post-card__excerpt, .blog-template-card__excerpt, .product-card__text, .main-cat-grand-card__desc, .main-cat-textblock__text, .contact-template-mini-card__text, .contact-template-resource-card__text, .accessibility-page__card p, .faq-accordion__answer, .site-footer__about-text) {
  color: var(--hk-muted) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 24px !important;
}

@media (max-width: 991.98px) {
  :root {
    --hk-shell: min(100% - 28px, 100%);
  }

  body.body :where(h1, .home-hero__title, .main-cat-hero__title, .product-product-hero__title, .contact-template-hero__title, .blog-template-hero__title, .gallery-template-hero__title, .about-header-lite__title, .accessibility-page__title, .error__title) {
    font-size: 36px !important;
    line-height: 44px !important;
  }

  body.body :where(h2, .main-cat-section-head__title, .product-cards__title, .product-faq__title, .home-products-preview__title, .home-posts-section__title, .home-faq__title, .contact-template-section-title, .about-showcase__section-title, .clients-showcase__title) {
    font-size: 28px !important;
    line-height: 36px !important;
  }

  body.body :where(h3, .product-card__title, .home-post-card__title, .blog-template-card__title, .main-cat-grand-card__title, .contact-template-info__title, .contact-template-mini-card__title, .contact-template-resource-card__title) {
    font-size: 22px !important;
    line-height: 30px !important;
  }

  body.body :where(.home-hero__button, .home-hero__card-cta, .home-products-preview__link, .clients-showcase__cta, .contact-template-project-cta__button, .product-product-hero__btn, input.wpcf7-submit, button[type="submit"]) {
    width: 100%;
    max-width: 340px;
  }
}

@media (max-width: 480px) {
  :root {
    --hk-shell: min(100% - 20px, 100%);
    --hk-btn-x: 20px;
  }

  body.body :where(h1, .home-hero__title, .main-cat-hero__title, .product-product-hero__title, .contact-template-hero__title, .blog-template-hero__title, .gallery-template-hero__title, .about-header-lite__title, .accessibility-page__title, .error__title) {
    font-size: 34px !important;
    line-height: 42px !important;
  }

  body.body :where(.home-post-card__excerpt, .blog-template-card__excerpt, .product-card__text, .main-cat-grand-card__desc, .main-cat-textblock__text, .contact-template-mini-card__text, .contact-template-resource-card__text, .accessibility-page__card p, .faq-accordion__answer, .site-footer__about-text) {
    font-size: 14px !important;
    line-height: 20px !important;
  }
}

/* QA hardening: keep all visible copy at the UI Kit minimum and remove legacy ultra-bold remnants. */
.header-iron__brand-title,
.header-gates__brand-title,
.header__default-brand-title {
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 20px !important;
}

.header-iron__brand-subtitle,
.header-gates__brand-subtitle,
.header__default-brand-subtitle {
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.clients-showcase__chip-link,
.clients-showcase__chip-main .clients-showcase__chip-link,
.tw-app .tw-flow span,
.tw-app .tw-filter-values,
.tw-app .tw-filter-unit,
.contact-template-info__link,
.contact-template-info__list .contact-template-info__item:first-child .contact-template-info__link,
.contact-template-promise,
.contact-template-promise span {
  font-weight: 500 !important;
}

.clients-showcase__chip-link,
.tw-app .tw-flow span,
.tw-app .tw-filter-values,
.tw-app .tw-filter-unit,
.contact-template-promise span {
  font-size: 14px !important;
  line-height: 20px !important;
}

body.body.home .clients-showcase-section--v2 .clients-showcase__chip-link,
body.body.home .clients-showcase-section--v2 .clients-showcase__chip-main .clients-showcase__chip-link,
body.body .clients-showcase-section--v2 .clients-showcase__chip-link.font-arimo {
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 20px !important;
}

body.body .tw-app .tw-pivot-table .tw-pivot-axis-header,
body.body .tw-app .tw-pivot-table .tw-pivot-t-header,
body.body .tw-app .tw-pivot-table .tw-pivot-axis-cell,
body.body .tw-app .tw-pivot-table .tw-pivot-cell,
body.body .tw-app .tw-pivot-table .tw-pivot-cell--value,
body.body .tw-app .tw-pivot-table tbody tr:nth-child(even) .tw-pivot-cell {
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 22px !important;
}

body.body .about-timeline__year {
  font-weight: 600 !important;
}

body.body.home .about-timeline__item.is-oldest .about-timeline__year,
body.body.home .about-timeline__item.is-current .about-timeline__year,
body.body.home .about-timeline__item .about-timeline__year {
  font-weight: 600 !important;
}

/* UI Kit buttons: final site-wide normalization. */
body.body :where(
  .home-hero__card-cta,
  .home-products-preview__link,
  .clients-showcase__cta,
  .product-product-hero__btn,
  .product-tables__cta,
  .product-cta__button,
  .product-offer__form-button,
  .contact-template-project-cta__button,
  .certs__cta-button,
  .newsletter-popup__submit,
  .footer-contact-card .hisherik-btn,
  .footer-contact-card input[type="submit"],
  .footer-contact-card .wpcf7-submit,
  .form_order.footer_form input.wpcf7-submit,
  .contact-template-form input[type="submit"],
  .contact-template-form .wpcf7-submit,
  .product-contact-cta input[type="submit"],
  .product-contact-cta .wpcf7-submit,
  .product-sticky-card input[type="submit"],
  .product-sticky-card .wpcf7-submit,
  input.wpcf7-submit,
  button[type="submit"]:not(.search-submit)
) {
  width: auto !important;
  min-width: 148px !important;
  max-width: 280px !important;
  height: var(--hk-btn-h) !important;
  min-height: var(--hk-btn-h) !important;
  padding: 0 var(--hk-btn-x) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  border: 1px solid var(--hk-orange) !important;
  border-radius: 0 !important;
  background: var(--hk-orange) !important;
  background-image: none !important;
  color: #080808 !important;
  box-shadow: none !important;
  font-family: "Rubik", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 18px !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-shadow: none !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  transition: background-color var(--hk-transition), border-color var(--hk-transition), color var(--hk-transition), transform var(--hk-transition) !important;
}

body.body :where(
  .home-hero__card-cta,
  .home-products-preview__link,
  .clients-showcase__cta,
  .product-product-hero__btn,
  .product-tables__cta,
  .product-cta__button,
  .product-offer__form-button,
  .contact-template-project-cta__button,
  .certs__cta-button,
  .newsletter-popup__submit,
  .footer-contact-card .hisherik-btn,
  .footer-contact-card input[type="submit"],
  .footer-contact-card .wpcf7-submit,
  .form_order.footer_form input.wpcf7-submit,
  .contact-template-form input[type="submit"],
  .contact-template-form .wpcf7-submit,
  .product-contact-cta input[type="submit"],
  .product-contact-cta .wpcf7-submit,
  .product-sticky-card input[type="submit"],
  .product-sticky-card .wpcf7-submit,
  input.wpcf7-submit,
  button[type="submit"]:not(.search-submit)
):hover,
body.body :where(
  .home-hero__card-cta,
  .home-products-preview__link,
  .clients-showcase__cta,
  .product-product-hero__btn,
  .product-tables__cta,
  .product-cta__button,
  .product-offer__form-button,
  .contact-template-project-cta__button,
  .certs__cta-button,
  .newsletter-popup__submit,
  .footer-contact-card .hisherik-btn,
  .footer-contact-card input[type="submit"],
  .footer-contact-card .wpcf7-submit,
  .form_order.footer_form input.wpcf7-submit,
  .contact-template-form input[type="submit"],
  .contact-template-form .wpcf7-submit,
  .product-contact-cta input[type="submit"],
  .product-contact-cta .wpcf7-submit,
  .product-sticky-card input[type="submit"],
  .product-sticky-card .wpcf7-submit,
  input.wpcf7-submit,
  button[type="submit"]:not(.search-submit)
):focus-visible {
  border-color: var(--hk-orange-2) !important;
  background: var(--hk-orange-2) !important;
  background-image: none !important;
  color: #080808 !important;
  box-shadow: var(--hk-focus) !important;
  outline: none !important;
  transform: translateY(-1px) !important;
}

body.body :where(
  .home-hero__card-cta,
  .home-products-preview__link,
  .product-product-hero__btn,
  .product-tables__cta,
  .product-cta__button,
  .product-offer__form-button,
  .contact-template-project-cta__button,
  .certs__cta-button
)::after {
  content: "‹" !important;
  display: inline-block !important;
  color: currentColor !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
}

body.body :where(
  .home-hero__button,
  .breadcrumbs-copy-btn,
  .site-footer__utility-link,
  .product-card__link,
  .contact-template-mini-card__cta,
  .contact-template-resource-card__cta,
  .product-article__image-grid-toggle,
  .about-showcase__gallery-button,
  .about-timeline__nav-button,
  .faq-accordion__trigger,
  .tw-app .tw-btn-inline,
  .tw-btn-ghost
) {
  min-width: 0 !important;
  min-height: 40px !important;
  height: 40px !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border: 1px solid var(--hk-line-orange) !important;
  border-radius: 0 !important;
  background: rgba(17, 17, 17, 0.86) !important;
  background-image: none !important;
  color: var(--hk-white) !important;
  box-shadow: none !important;
  font-family: "Rubik", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  text-shadow: none !important;
  white-space: nowrap !important;
}

body.body :where(
  .home-hero__button,
  .breadcrumbs-copy-btn,
  .site-footer__utility-link,
  .product-card__link,
  .contact-template-mini-card__cta,
  .contact-template-resource-card__cta,
  .product-article__image-grid-toggle,
  .about-showcase__gallery-button,
  .about-timeline__nav-button,
  .faq-accordion__trigger,
  .tw-app .tw-btn-inline,
  .tw-btn-ghost
):hover,
body.body :where(
  .home-hero__button,
  .breadcrumbs-copy-btn,
  .site-footer__utility-link,
  .product-card__link,
  .contact-template-mini-card__cta,
  .contact-template-resource-card__cta,
  .product-article__image-grid-toggle,
  .about-showcase__gallery-button,
  .about-timeline__nav-button,
  .faq-accordion__trigger,
  .tw-app .tw-btn-inline,
  .tw-btn-ghost
):focus-visible {
  border-color: var(--hk-orange) !important;
  background: rgba(255, 138, 0, 0.11) !important;
  color: var(--hk-orange-2) !important;
  outline: none !important;
  box-shadow: var(--hk-focus) !important;
}

body.body .main-cat-tabs__link,
body.body .gallery-template-tabs__link,
body.body .blog-template-filter a,
body.body .product-tables__tab,
body.body .tw-classic-tab,
body.body .tw-app button.tw-mode-btn,
body.body .tw-app button.tw-tab,
body.body .tw-app button.tw-filter-chip {
  min-height: 40px !important;
  height: auto !important;
  padding: 10px 18px !important;
  border: 1px solid var(--hk-line) !important;
  border-radius: 0 !important;
  background: rgba(25, 25, 25, 0.82) !important;
  background-image: none !important;
  color: var(--hk-muted) !important;
  box-shadow: none !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 20px !important;
  text-shadow: none !important;
}

body.body .main-cat-tabs__link.active,
body.body .gallery-template-tabs__link.is-active,
body.body .blog-template-filter a.is-active,
body.body .product-tables__tab.is-active,
body.body .tw-classic-tab.is-active,
body.body .tw-app button.tw-mode-btn.is-active,
body.body .tw-app button.tw-tab.is-active,
body.body .tw-app button.tw-filter-chip.is-active {
  border-color: var(--hk-orange) !important;
  background: var(--hk-orange) !important;
  background-image: none !important;
  color: #080808 !important;
  box-shadow: none !important;
}

body.body .main-cat-tabs__link:hover,
body.body .gallery-template-tabs__link:hover,
body.body .blog-template-filter a:hover,
body.body .product-tables__tab:hover,
body.body .tw-classic-tab:hover,
body.body .tw-app button.tw-mode-btn:hover,
body.body .tw-app button.tw-tab:hover,
body.body .tw-app button.tw-filter-chip:hover {
  border-color: var(--hk-line-orange) !important;
  background: rgba(255, 138, 0, 0.08) !important;
  background-image: none !important;
  color: var(--hk-orange-2) !important;
  box-shadow: none !important;
}

body.body .main-cat-tabs__link.active:hover,
body.body .gallery-template-tabs__link.is-active:hover,
body.body .blog-template-filter a.is-active:hover,
body.body .product-tables__tab.is-active:hover,
body.body .tw-classic-tab.is-active:hover,
body.body .tw-app button.tw-mode-btn.is-active:hover,
body.body .tw-app button.tw-tab.is-active:hover,
body.body .tw-app button.tw-filter-chip.is-active:hover {
  background: var(--hk-orange-2) !important;
  background-image: none !important;
  color: #080808 !important;
}

body.body :where(.swiper-button-next, .swiper-button-prev, .whatsapp_float, .modal_form__bg .btn-close, .site-footer__social-link) {
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Specificity bridge over legacy !important button rules. */
body.body :is(
  a.home-hero__card-cta,
  a.home-products-preview__link,
  a.clients-showcase__cta,
  a.product-product-hero__btn,
  a.product-tables__cta,
  a.product-cta__button,
  a.product-offer__form-button,
  a.contact-template-project-cta__button,
  a.certs__cta-button,
  button.newsletter-popup__submit,
  input.wpcf7-form-control.wpcf7-submit,
  input.wpcf7-form-control.wpcf7-submit.has-spinner,
  input.wpcf7-form-control.wpcf7-submit.has-spinner.hisherik-btn,
  .footer-contact-card input.wpcf7-submit,
  .form_order.footer_form input.wpcf7-submit,
  .contact-template-form input.wpcf7-submit,
  .product-contact-cta input.wpcf7-submit,
  .product-sticky-card input.wpcf7-submit
) {
  width: auto !important;
  min-width: 148px !important;
  max-width: 280px !important;
  height: var(--hk-btn-h) !important;
  min-height: var(--hk-btn-h) !important;
  padding: 0 var(--hk-btn-x) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  border: 1px solid var(--hk-orange) !important;
  border-radius: 0 !important;
  background: var(--hk-orange) !important;
  background-color: var(--hk-orange) !important;
  background-image: none !important;
  color: #080808 !important;
  box-shadow: none !important;
  font-family: "Rubik", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  text-shadow: none !important;
  white-space: nowrap !important;
}

body.body :is(
  a.home-hero__card-cta,
  a.home-products-preview__link,
  a.clients-showcase__cta,
  a.product-product-hero__btn,
  a.product-tables__cta,
  a.product-cta__button,
  a.product-offer__form-button,
  a.contact-template-project-cta__button,
  a.certs__cta-button,
  button.newsletter-popup__submit,
  input.wpcf7-form-control.wpcf7-submit,
  input.wpcf7-form-control.wpcf7-submit.has-spinner,
  input.wpcf7-form-control.wpcf7-submit.has-spinner.hisherik-btn,
  .footer-contact-card input.wpcf7-submit,
  .form_order.footer_form input.wpcf7-submit,
  .contact-template-form input.wpcf7-submit,
  .product-contact-cta input.wpcf7-submit,
  .product-sticky-card input.wpcf7-submit
):hover,
body.body :is(
  a.home-hero__card-cta,
  a.home-products-preview__link,
  a.clients-showcase__cta,
  a.product-product-hero__btn,
  a.product-tables__cta,
  a.product-cta__button,
  a.product-offer__form-button,
  a.contact-template-project-cta__button,
  a.certs__cta-button,
  button.newsletter-popup__submit,
  input.wpcf7-form-control.wpcf7-submit,
  input.wpcf7-form-control.wpcf7-submit.has-spinner,
  input.wpcf7-form-control.wpcf7-submit.has-spinner.hisherik-btn,
  .footer-contact-card input.wpcf7-submit,
  .form_order.footer_form input.wpcf7-submit,
  .contact-template-form input.wpcf7-submit,
  .product-contact-cta input.wpcf7-submit,
  .product-sticky-card input.wpcf7-submit
):focus-visible {
  border-color: var(--hk-orange-2) !important;
  background: var(--hk-orange-2) !important;
  background-color: var(--hk-orange-2) !important;
  background-image: none !important;
  color: #080808 !important;
  box-shadow: var(--hk-focus) !important;
  outline: none !important;
}

body.body :is(
  a.home-hero__button,
  button.breadcrumbs-copy-btn,
  a.site-footer__utility-link,
  span.product-card__link,
  span.contact-template-mini-card__cta,
  span.contact-template-resource-card__cta,
  button.product-article__image-grid-toggle,
  button.about-showcase__gallery-button,
  button.about-timeline__nav-button,
  button.faq-accordion__trigger,
  button.tw-btn-ghost,
  .tw-app button.tw-btn-inline
) {
  min-width: 0 !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border: 1px solid var(--hk-line-orange) !important;
  border-radius: 0 !important;
  background: rgba(17, 17, 17, 0.86) !important;
  background-color: rgba(17, 17, 17, 0.86) !important;
  background-image: none !important;
  color: var(--hk-white) !important;
  box-shadow: none !important;
  font-family: "Rubik", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  text-shadow: none !important;
  white-space: nowrap !important;
}

/* Department CTA strips are banners, not standard buttons. */
body.body .clients-showcase-section--v2 .clients-showcase__card-footer,
body.body.home .clients-showcase-section--v2 .clients-showcase__card-footer {
  width: 100% !important;
  margin-top: auto !important;
}

body.body .clients-showcase-section--v2 .clients-showcase__cta-row,
body.body.home .clients-showcase-section--v2 .clients-showcase__cta-row {
  width: 100% !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  overflow: visible !important;
}

body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn,
body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn,
body.body :is(a.clients-showcase__cta.btn) {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 72px !important;
  min-height: 72px !important;
  max-height: none !important;
  padding: 8px 14px !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  direction: rtl !important;
  overflow: hidden !important;
  border: 1px solid var(--hk-orange) !important;
  border-radius: 0 !important;
  background: var(--hk-orange) !important;
  background-color: var(--hk-orange) !important;
  background-image: none !important;
  color: #080808 !important;
  box-shadow: none !important;
  font-family: "Rubik", Arial, sans-serif !important;
  text-decoration: none !important;
  text-shadow: none !important;
  transform: none !important;
}

body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn::before,
body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn::after,
body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn::before,
body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn::after {
  content: none !important;
  display: none !important;
}

body.body .clients-showcase-section--v2 .clients-showcase__cta-text,
body.body.home .clients-showcase-section--v2 .clients-showcase__cta-text {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  color: #080808 !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  line-height: 34px !important;
  letter-spacing: 0 !important;
  text-align: right !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

body.body .clients-showcase-section--v2 .clients-showcase__cta-image,
body.body.home .clients-showcase-section--v2 .clients-showcase__cta-image {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: 150px !important;
  height: auto !important;
  max-height: 56px !important;
  display: block !important;
  object-fit: contain !important;
  margin: 0 !important;
  opacity: 1 !important;
  transform: none !important;
}

body.body .clients-showcase-section--v2 .clients-showcase__cta-arrow,
body.body.home .clients-showcase-section--v2 .clients-showcase__cta-arrow {
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 2px solid rgba(8, 8, 8, 0.72) !important;
  color: #080808 !important;
  background: transparent !important;
  margin: 0 !important;
}

body.body .clients-showcase-section--v2 .clients-showcase__cta-arrow::before,
body.body.home .clients-showcase-section--v2 .clients-showcase__cta-arrow::before {
  content: "‹" !important;
  display: block !important;
  color: currentColor !important;
  font-size: 30px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
}

body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn:hover,
body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn:focus-visible,
body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn:hover,
body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn:focus-visible {
  border-color: var(--hk-orange-2) !important;
  background: var(--hk-orange-2) !important;
  background-color: var(--hk-orange-2) !important;
  background-image: none !important;
  color: #080808 !important;
  box-shadow: var(--hk-focus) !important;
  outline: none !important;
}

@media (max-width: 720px) {
  body.body .clients-showcase-section--v2 a.clients-showcase__cta.btn,
  body.body.home .clients-showcase-section--v2 a.clients-showcase__cta.btn {
    width: 100% !important;
    min-height: 58px !important;
    height: 58px !important;
    padding: 7px 10px !important;
    gap: 10px !important;
  }

  body.body .clients-showcase-section--v2 .clients-showcase__cta-text,
  body.body.home .clients-showcase-section--v2 .clients-showcase__cta-text {
    font-size: 20px !important;
    line-height: 26px !important;
  }

  body.body .clients-showcase-section--v2 .clients-showcase__cta-image,
  body.body.home .clients-showcase-section--v2 .clients-showcase__cta-image {
    max-width: 104px !important;
    max-height: 44px !important;
  }

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

/* Homepage timeline: compact industrial rail. */
body.body.home .about-showcase__timeline {
  padding: clamp(12px, 1.4vw, 18px) clamp(14px, 1.8vw, 24px) !important;
  overflow: hidden !important;
}

body.body.home .about-timeline {
  padding: 40px 0 42px !important;
  overflow: hidden !important;
  counter-reset: timeline-step !important;
}

body.body.home .about-timeline::before {
  top: 26px !important;
  right: 4px !important;
  left: 4px !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 138, 0, 0.72) 18%, rgba(255, 138, 0, 0.72) 82%, transparent 100%) !important;
  box-shadow: none !important;
}

body.body.home .about-timeline__track {
  align-items: stretch !important;
}

body.body.home .about-timeline__item {
  counter-increment: timeline-step !important;
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  gap: 7px !important;
  height: 128px !important;
  min-height: 128px !important;
  max-height: 128px !important;
  padding: 16px 16px 12px !important;
  overflow: visible !important;
  border-radius: 0 !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(255, 138, 0, 0.1), transparent 32%),
    linear-gradient(180deg, rgba(26, 26, 26, 0.92) 0%, rgba(12, 12, 12, 0.98) 100%) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.body.home .about-timeline__item:hover,
body.body.home .about-timeline__item.swiper-slide-active {
  transform: translateY(-2px) !important;
  border-color: rgba(255, 138, 0, 0.42) !important;
  box-shadow: none !important;
}

body.body.home .about-timeline__item.is-current {
  border-color: rgba(255, 138, 0, 0.74) !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(255, 138, 0, 0.16), transparent 34%),
    linear-gradient(180deg, rgba(31, 31, 31, 0.96) 0%, rgba(13, 13, 13, 0.99) 100%) !important;
}

body.body.home .about-timeline__item::before {
  content: counter(timeline-step, decimal-leading-zero) !important;
  position: absolute !important;
  top: -39px !important;
  inset-inline-start: 16px !important;
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border: 2px solid rgba(255, 138, 0, 0.78) !important;
  border-radius: 0 !important;
  background: rgba(10, 10, 10, 0.96) !important;
  color: var(--hk-white) !important;
  box-shadow: 0 0 0 8px rgba(255, 138, 0, 0.08) !important;
  font-family: "Rubik", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

body.body.home .about-timeline__item.is-current::before {
  background: var(--hk-orange) !important;
  border-color: var(--hk-orange-2) !important;
  color: #080808 !important;
  box-shadow: 0 0 0 8px rgba(255, 138, 0, 0.14) !important;
}

body.body.home .about-timeline__item::after {
  content: "" !important;
  position: absolute !important;
  top: -8px !important;
  inset-inline-start: 33px !important;
  width: 1px !important;
  height: 14px !important;
  background: rgba(255, 138, 0, 0.72) !important;
}

body.body.home .about-timeline__year,
body.body.home .about-timeline__item.is-oldest .about-timeline__year {
  margin: 0 !important;
  color: rgba(244, 244, 244, 0.58) !important;
  font-size: clamp(30px, 2.35vw, 40px) !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-align: right !important;
  text-shadow: none !important;
}

body.body.home .about-timeline__item.is-current .about-timeline__year {
  color: var(--hk-orange) !important;
}

body.body.home .about-timeline__year::after {
  width: 32px !important;
  height: 3px !important;
  margin-top: 6px !important;
  background: var(--hk-orange) !important;
  opacity: 0.86 !important;
}

body.body.home .about-timeline__chevron {
  min-height: 0 !important;
  margin: 0 !important;
  display: none !important;
  align-items: center !important;
}

body.body.home .about-timeline__item.is-current .about-timeline__chevron {
  display: flex !important;
}

body.body.home .about-timeline__chevron-svg,
body.body.home .about-timeline__item.has-no-description .about-timeline__chevron::before {
  display: none !important;
}

body.body.home .about-timeline__chip,
body.body.home .about-timeline__chip--mobile-current {
  min-height: 28px !important;
  padding: 5px 10px !important;
  border-radius: 0 !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  background: rgba(255, 255, 255, 0.055) !important;
  color: rgba(255, 255, 255, 0.78) !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 18px !important;
}

body.body.home .about-timeline__item.is-current .about-timeline__chip,
body.body.home .about-timeline__item.is-current .about-timeline__chip--mobile-current {
  background: var(--hk-orange) !important;
  border-color: var(--hk-orange) !important;
  color: #080808 !important;
}

body.body.home .about-timeline__desc {
  align-self: end !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding-top: 8px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: rgba(255, 255, 255, 0.78) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 20px !important;
  text-align: right !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

body.body.home .about-timeline__item.has-no-description {
  grid-template-rows: auto 1fr !important;
}

body.body.home .about-timeline__item.has-no-description .about-timeline__chevron {
  min-height: 28px !important;
  align-self: start !important;
  justify-content: flex-start !important;
}

body.body.home .about-timeline__nav {
  bottom: 0 !important;
  gap: 8px !important;
}

body.body.home .about-timeline__nav-button {
  width: 40px !important;
  height: 40px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

@media (max-width: 767.98px) {
  body.body.home .about-showcase__timeline {
    padding: 12px !important;
  }

  body.body.home .about-timeline {
    padding: 40px 0 42px !important;
  }

  body.body.home .about-timeline__item {
    height: 132px !important;
    min-height: 132px !important;
    max-height: 132px !important;
    padding: 18px 14px 14px !important;
  }

  body.body.home .about-timeline__year,
  body.body.home .about-timeline__item.is-oldest .about-timeline__year {
    font-size: clamp(32px, 10vw, 40px) !important;
  }

  body.body.home .about-timeline__desc {
    font-size: 14px !important;
    line-height: 20px !important;
  }
}

/* Footer contact header: align to the form width and keep typography lighter. */
body.body .footer-contact-section {
  padding: clamp(46px, 4.4vw, 60px) 0 clamp(54px, 5vw, 68px) !important;
  max-height: none !important;
}

body.body .footer-contact-section > .container {
  width: min(100% - 48px, 1320px) !important;
  max-width: none !important;
  padding-inline: 0 !important;
}

body.body .footer-contact-header {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  justify-content: stretch !important;
  gap: clamp(28px, 4vw, 56px) !important;
  margin: 0 auto clamp(24px, 3vw, 34px) !important;
  direction: ltr !important;
}

body.body .footer-contact-logos {
  grid-column: 1 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-content: flex-start !important;
}

body.body .footer-contact-logos-img {
  width: auto !important;
  max-width: min(270px, 28vw) !important;
  max-height: 64px !important;
  object-fit: contain !important;
  opacity: 0.78 !important;
  filter: grayscale(1) brightness(1.12) contrast(0.92) !important;
}

body.body .footer-contact-header-text {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 1fr) auto minmax(260px, 1fr) !important;
  align-items: center !important;
  column-gap: clamp(22px, 3vw, 44px) !important;
  direction: ltr !important;
  text-align: initial !important;
}

body.body .footer-contact-title {
  grid-column: 2 !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--hk-white) !important;
  font-family: "Rubik", Arial, sans-serif !important;
  font-size: clamp(34px, 3vw, 48px) !important;
  font-weight: 600 !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-shadow: none !important;
  direction: rtl !important;
}

body.body .footer-contact-title::after {
  content: "" !important;
  display: block !important;
  width: 112px !important;
  height: 4px !important;
  margin: 12px auto 0 !important;
  border: 0 !important;
  background: var(--hk-orange) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

body.body .footer-contact-subtitle {
  grid-column: 3 !important;
  justify-self: end !important;
  width: min(100%, 520px) !important;
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.7) !important;
  opacity: 1 !important;
  font-family: "Rubik", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 24px !important;
  letter-spacing: 0 !important;
  text-align: right !important;
  direction: rtl !important;
}

@media (max-width: 1100px) {
  body.body .footer-contact-section > .container {
    width: min(100% - 32px, 1320px) !important;
  }

  body.body .footer-contact-header {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    direction: rtl !important;
  }

  body.body .footer-contact-header-text {
    grid-column: 1 !important;
    grid-row: auto !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    row-gap: 12px !important;
  }

  body.body .footer-contact-title,
  body.body .footer-contact-subtitle {
    grid-column: 1 !important;
  }

  body.body .footer-contact-subtitle {
    justify-self: center !important;
    text-align: center !important;
  }

  body.body .footer-contact-logos {
    grid-column: 1 !important;
    grid-row: auto !important;
    justify-content: center !important;
  }

  body.body .footer-contact-logos-img {
    max-width: min(260px, 78vw) !important;
    max-height: 58px !important;
  }
}

@media (max-width: 767.98px) {
  body.body .footer-contact-section {
    padding: 38px 0 46px !important;
  }

  body.body .footer-contact-title {
    font-size: clamp(30px, 9vw, 38px) !important;
  }

  body.body .footer-contact-title::after {
    width: 78px !important;
    height: 4px !important;
    margin-top: 10px !important;
  }

  body.body .footer-contact-subtitle {
    font-size: 15px !important;
    line-height: 22px !important;
  }
}

/* FAQ final polish: one quiet line system instead of mixed nested borders. */
body.body .home-faq {
  padding: clamp(54px, 5.6vw, 78px) 0 !important;
  border-top: 1px solid rgba(196, 196, 196, 0.1) !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  border-left: 0 !important;
  background: linear-gradient(180deg, rgba(14, 14, 14, 0.92) 0%, rgba(7, 7, 7, 0.98) 100%) !important;
  box-shadow: none !important;
}

body.body .home-faq::before,
body.body .home-faq::after,
body.body .home-faq__inner::before,
body.body .home-faq__inner::after,
body.body .home-faq__content::before,
body.body .home-faq__content::after,
body.body .faq-accordion__item::before,
body.body .faq-accordion__item::after,
body.body .faq-accordion__trigger::before,
body.body .faq-accordion__trigger::after {
  display: none !important;
  content: none !important;
}

body.body .home-faq__inner {
  width: min(100% - 48px, 1320px) !important;
  max-width: none !important;
  margin-inline: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.body .home-faq__heading {
  margin: 0 0 clamp(26px, 3vw, 38px) !important;
  text-align: center !important;
}

body.body .home-faq__title {
  width: fit-content !important;
  max-width: 100% !important;
  margin-inline: auto !important;
  color: var(--hk-white) !important;
  font-size: clamp(36px, 3.2vw, 52px) !important;
  font-weight: 500 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-shadow: none !important;
}

body.body .home-faq__title::after {
  content: "" !important;
  display: block !important;
  width: 92px !important;
  height: 4px !important;
  margin: 14px auto 0 !important;
  border: 0 !important;
  background: var(--hk-orange) !important;
  box-shadow: none !important;
}

body.body .home-faq__content {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.94fr) minmax(0, 1fr) !important;
  grid-template-areas: "accordion media" !important;
  align-items: start !important;
  gap: clamp(28px, 4vw, 56px) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  direction: ltr !important;
}

body.body .home-faq__accordion {
  grid-area: accordion !important;
  grid-column: 2 / 3 !important;
  grid-row: 1 !important;
  direction: rtl !important;
}

body.body .home-faq__media {
  grid-area: media !important;
  grid-column: 1 / 2 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: clamp(18px, 2vw, 28px) !important;
  border: 1px solid rgba(196, 196, 196, 0.18) !important;
  border-radius: 0 !important;
  background: rgba(17, 17, 17, 0.72) !important;
  box-shadow: none !important;
  overflow: hidden !important;
  direction: rtl !important;
}

body.body .home-faq__image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 520px !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #d8d8d8 !important;
  box-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
}

body.body .faq-accordion {
  display: grid !important;
  gap: 14px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.body .faq-accordion__item {
  overflow: hidden !important;
  padding: 0 !important;
  border: 1px solid rgba(196, 196, 196, 0.18) !important;
  border-radius: 0 !important;
  background: rgba(13, 13, 13, 0.72) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.body .faq-accordion__item:hover {
  border-color: rgba(255, 138, 0, 0.42) !important;
  background: rgba(16, 16, 16, 0.86) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.body .faq-accordion__item.is-open,
body.body .faq-accordion__item[open] {
  border-color: rgba(255, 138, 0, 0.72) !important;
  background: rgba(13, 13, 13, 0.9) !important;
  box-shadow: none !important;
}

body.body .faq-accordion__trigger,
body.body .product-section--faq .faq-accordion__trigger {
  width: 100% !important;
  min-height: 64px !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 14px 18px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--hk-white) !important;
  box-shadow: none !important;
  text-align: right !important;
  cursor: pointer !important;
}

body.body .faq-accordion__trigger:hover,
body.body .faq-accordion__trigger:focus-visible,
body.body .faq-accordion__item.is-open .faq-accordion__trigger,
body.body .product-section--faq .faq-accordion__trigger:hover,
body.body .product-section--faq .faq-accordion__trigger:focus-visible,
body.body .product-section--faq .faq-accordion__item.is-open .faq-accordion__trigger {
  border: 0 !important;
  background: transparent !important;
  color: var(--hk-white) !important;
  box-shadow: none !important;
}

body.body .faq-accordion__trigger:focus-visible {
  outline: 2px solid rgba(255, 138, 0, 0.42) !important;
  outline-offset: -2px !important;
}

body.body .faq-accordion__label,
body.body .product-section--faq .faq-accordion__label {
  flex: 1 1 auto !important;
  color: var(--hk-white) !important;
  opacity: 1 !important;
  font-family: "Arimo", "Rubik", Arial, sans-serif !important;
  font-size: clamp(16px, 1.05vw, 19px) !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
  text-align: right !important;
}

body.body .faq-accordion__icon {
  flex: 0 0 42px !important;
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(255, 138, 0, 0.68) !important;
  border-radius: 0 !important;
  background: rgba(255, 138, 0, 0.08) !important;
  color: var(--hk-orange) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.body .faq-accordion__icon svg {
  width: 20px !important;
  height: 20px !important;
  display: block !important;
}

body.body .faq-accordion__item.is-open .faq-accordion__icon {
  border-color: var(--hk-orange) !important;
  background: var(--hk-orange) !important;
  color: #080808 !important;
}

body.body .faq-accordion__panel {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.body .faq-accordion__panel[hidden] {
  display: none !important;
}

body.body .faq-accordion__panel-inner,
body.body .product-section--faq .faq-accordion__panel-inner {
  margin: -2px 18px 18px !important;
  padding: 14px 0 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(196, 196, 196, 0.14) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(255, 255, 255, 0.72) !important;
  opacity: 1 !important;
  box-shadow: none !important;
  font-family: "Arimo", "Rubik", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 26px !important;
  text-align: right !important;
}

body.body .faq-accordion__panel-inner p {
  margin: 0 !important;
  font-size: 16px !important;
  line-height: 26px !important;
}

body.body .main-cat-page .home-faq {
  width: min(100% - 48px, 1320px) !important;
  margin: 0 auto clamp(44px, 5vw, 68px) !important;
  padding: clamp(34px, 4vw, 52px) 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.body .main-cat-page .home-faq__inner {
  width: 100% !important;
}

body.body .product-section--faq {
  border-color: rgba(196, 196, 196, 0.18) !important;
  background: rgba(13, 13, 13, 0.76) !important;
  box-shadow: none !important;
}

@media (max-width: 991.98px) {
  body.body .home-faq {
    padding: 44px 0 !important;
  }

  body.body .home-faq__inner,
  body.body .main-cat-page .home-faq {
    width: min(100% - 32px, 1320px) !important;
  }

  body.body .home-faq__content {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "accordion"
      "media" !important;
    gap: 22px !important;
    direction: rtl !important;
  }

  body.body .home-faq__accordion,
  body.body .home-faq__media {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }

  body.body .home-faq__accordion {
    order: 1 !important;
  }

  body.body .home-faq__media {
    order: 2 !important;
  }
}

@media (max-width: 767.98px) {
  body.body .home-faq__title {
    font-size: clamp(31px, 9vw, 40px) !important;
  }

  body.body .home-faq__title::after {
    width: 76px !important;
    height: 4px !important;
    margin-top: 10px !important;
  }

  body.body .home-faq__media {
    padding: 14px !important;
  }

  body.body .faq-accordion {
    gap: 10px !important;
  }

  body.body .faq-accordion__trigger,
  body.body .product-section--faq .faq-accordion__trigger {
    min-height: 58px !important;
    padding: 12px 14px !important;
    gap: 12px !important;
  }

  body.body .faq-accordion__label,
  body.body .product-section--faq .faq-accordion__label {
    font-size: 16px !important;
    line-height: 24px !important;
  }

  body.body .faq-accordion__icon {
    flex-basis: 38px !important;
    width: 38px !important;
    height: 38px !important;
  }

  body.body .faq-accordion__panel-inner,
  body.body .product-section--faq .faq-accordion__panel-inner {
    margin: -2px 14px 14px !important;
    padding-top: 12px !important;
    font-size: 15px !important;
    line-height: 23px !important;
  }

  body.body .faq-accordion__panel-inner p {
    font-size: 15px !important;
    line-height: 23px !important;
  }
}

/* FAQ specificity bridge over the global button bridge. */
html body.body .faq-accordion button.faq-accordion__trigger,
html body.body .product-section--faq .faq-accordion button.faq-accordion__trigger {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 64px !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 14px 18px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: var(--hk-white) !important;
  box-shadow: none !important;
  outline: 0 !important;
  white-space: normal !important;
}

html body.body .faq-accordion button.faq-accordion__trigger:hover,
html body.body .faq-accordion button.faq-accordion__trigger:focus-visible,
html body.body .faq-accordion .faq-accordion__item.is-open button.faq-accordion__trigger,
html body.body .product-section--faq .faq-accordion button.faq-accordion__trigger:hover,
html body.body .product-section--faq .faq-accordion button.faq-accordion__trigger:focus-visible,
html body.body .product-section--faq .faq-accordion .faq-accordion__item.is-open button.faq-accordion__trigger {
  border: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: var(--hk-white) !important;
  box-shadow: none !important;
}

html body.body .faq-accordion button.faq-accordion__trigger:focus-visible {
  outline: 2px solid rgba(255, 138, 0, 0.42) !important;
  outline-offset: -2px !important;
}

html body.body .faq-accordion button.faq-accordion__trigger .faq-accordion__label,
html body.body .product-section--faq .faq-accordion button.faq-accordion__trigger .faq-accordion__label {
  color: var(--hk-white) !important;
  font-size: clamp(16px, 1.05vw, 19px) !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  white-space: normal !important;
}

@media (max-width: 767.98px) {
  html body.body .faq-accordion button.faq-accordion__trigger,
  html body.body .product-section--faq .faq-accordion button.faq-accordion__trigger {
    min-height: 58px !important;
    padding: 12px 14px !important;
    gap: 12px !important;
  }
}

/* 2026-06-14 Kern: Hisherik homepage product split band — slightly lighter image treatment per Dima screenshot. */
body.home .home-hero-cards-wrap {
  background:
    linear-gradient(180deg, #101010 0%, #151515 52%, #101010 100%) !important;
}

body.home .home-hero__department-card {
  background: #121212 !important;
}

body.home .home-hero__department-image {
  filter: saturate(0.86) contrast(1.08) brightness(0.72) !important;
}

body.home .home-hero__department-card::after {
  background:
    linear-gradient(180deg, rgba(16, 16, 16, 0.12) 0%, rgba(16, 16, 16, 0.50) 100%),
    linear-gradient(90deg, rgba(16, 16, 16, 0.62), rgba(16, 16, 16, 0.14), rgba(16, 16, 16, 0.62)) !important;
}


/* 2026-06-14 Kern: replace cluttered gates-card source with a single clean gate crop. */
body.home .home-products-preview__card--gates .home-products-preview__image {
  object-position: 50% 54% !important;
  filter: saturate(0.9) contrast(1.04) brightness(0.76) !important;
}

body.home .home-products-preview__card--gates::after {
  background:
    linear-gradient(180deg, rgba(7, 7, 7, 0.05) 0%, rgba(7, 7, 7, 0.24) 36%, rgba(7, 7, 7, 0.82) 100%),
    linear-gradient(90deg, rgba(7, 7, 7, 0.18), transparent, rgba(7, 7, 7, 0.18)) !important;
}

/* Service-call simplified final guard 2026-06-29 */
body.page-id-11804 .contact_section.generic-page {
  margin-top: 0 !important;
  padding-top: 22px !important;
}

body.page-id-11804 .hisherik-service-call {
  margin-top: 12px !important;
}

body.body .hisherik-service-call :where(input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]), textarea, select) {
  min-height: 50px !important;
  border: 1px solid rgba(24, 32, 29, .20) !important;
  background: #fffaf0 !important;
  color: #18201d !important;
  box-shadow: none !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 22px !important;
}

body.body .hisherik-service-call :where(input::placeholder, textarea::placeholder) {
  color: rgba(95, 101, 93, .62) !important;
  opacity: 1 !important;
}

body.body .hisherik-service-call :where(input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]), textarea, select):focus,
body.body .hisherik-service-call :where(input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]), textarea, select):focus-visible {
  border-color: rgba(181, 125, 36, .82) !important;
  background: #fffdf5 !important;
  box-shadow: 0 0 0 4px rgba(213, 166, 76, .16) !important;
}

body.body .hisherik-service-call__actions button[type="submit"] {
  min-height: 50px !important;
  border: 1px solid #d5a64c !important;
  background: #d5a64c !important;
  color: #17150f !important;
  padding: 0 26px !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}


/* Service-call outer container flatten 2026-06-29 */
body.page-id-11804 .contact_section.generic-page > .container {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 22px !important;
}

body.page-id-11804 .generic-page__content {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

@media (max-width: 760px) {
  body.page-id-11804 .contact_section.generic-page > .container {
    padding: 0 10px !important;
  }
}

/* 2026-07-07: Hisherik footer cleanup preview/live patch. */
body.body footer.site-footer {
  padding: clamp(42px, 4.5vw, 62px) 0 34px !important;
  background: radial-gradient(circle at 88% 0%, rgba(255,151,15,.10), transparent 34%), linear-gradient(180deg, #080808 0%, #050505 100%) !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
}
body.body footer.site-footer::before,
body.body footer.site-footer::after {
  opacity: .16 !important;
}
body.body footer.site-footer .site-footer__container {
  width: min(100% - 48px, 1180px) !important;
  max-width: none !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}
body.body footer.site-footer .site-footer__layout {
  direction: rtl !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 340px) !important;
  grid-template-areas: "links about" !important;
  gap: clamp(26px, 3vw, 42px) !important;
  align-items: start !important;
  width: 100% !important;
  max-width: none !important;
}
body.body footer.site-footer .site-footer__col--links {
  grid-area: links !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}
body.body footer.site-footer .site-footer__col--about {
  grid-area: about !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  align-self: start !important;
  display: flex !important;
  flex-direction: column !important;
  padding: clamp(22px, 2.2vw, 28px) !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  border-radius: 10px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
}
body.body footer.site-footer .site-footer__badges {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  display: flex !important;
  direction: rtl !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}
body.body footer.site-footer .site-footer__badges-img {
  width: auto !important;
  max-width: 116px !important;
  max-height: 46px !important;
  object-fit: contain !important;
  opacity: .9 !important;
}
body.body footer.site-footer .site-footer__menus {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  direction: rtl !important;
  display: grid !important;
  grid-template-columns: minmax(126px, .62fr) minmax(218px, 1.05fr) minmax(360px, 1.75fr) !important;
  gap: 14px !important;
  align-items: start !important;
}
body.body footer.site-footer .site-footer__menu-col {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 20px 18px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 10px !important;
  background: linear-gradient(180deg, rgba(26, 26, 26, .78), rgba(12, 12, 12, .82)) !important;
  box-shadow: none !important;
}
body.body footer.site-footer .site-footer__title {
  width: auto !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 0 15px !important;
  padding: 0 0 10px !important;
  color: #fff !important;
  font-size: clamp(19px, 1.42vw, 23px) !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  text-align: right !important;
  letter-spacing: 0 !important;
}
body.body footer.site-footer .site-footer__title::after {
  width: 46px !important;
  height: 2px !important;
  right: 0 !important;
  left: auto !important;
  bottom: 0 !important;
  background: #ff970f !important;
  opacity: 1 !important;
}
body.body footer.site-footer .site-footer__menu,
body.body footer.site-footer .site-footer__submenu {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  text-align: right !important;
}
body.body footer.site-footer .site-footer__menu {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px 14px !important;
}
body.body footer.site-footer .site-footer__menu-col:nth-child(2) .site-footer__menu,
body.body footer.site-footer .site-footer__menu-col:nth-child(3) .site-footer__menu {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
body.body footer.site-footer .site-footer__menu-group {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.body footer.site-footer .site-footer__menu-text--group {
  width: auto !important;
  max-width: none !important;
  display: block !important;
  color: rgba(255,255,255,.96) !important;
  font-size: 13.5px !important;
  font-weight: 750 !important;
  line-height: 1.35 !important;
  margin: 0 0 8px !important;
}
body.body footer.site-footer .site-footer__submenu {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 5px !important;
}
body.body footer.site-footer .site-footer__menu-col,
body.body footer.site-footer .site-footer__menu-col *,
body.body footer.site-footer .site-footer__col--about,
body.body footer.site-footer .site-footer__col--about * {
  opacity: 1 !important;
}
body.body footer.site-footer .site-footer__menu a,
body.body footer.site-footer .site-footer__submenu a,
body.body footer.site-footer .site-footer__menu-text:not(.site-footer__menu-text--group) {
  min-height: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 3px 0 !important;
  color: rgba(255,255,255,.82) !important;
  font-size: 13px !important;
  font-weight: 480 !important;
  line-height: 1.45 !important;
  text-align: right !important;
  text-decoration: none !important;
}
body.body footer.site-footer .site-footer__menu a:hover,
body.body footer.site-footer .site-footer__submenu a:hover {
  color: #ffb84a !important;
}
body.body footer.site-footer .site-footer__brand-title {
  margin: 0 0 18px !important;
  font-size: clamp(22px, 2.1vw, 27px) !important;
  line-height: 1.15 !important;
  font-weight: 850 !important;
  color: #fff !important;
}
body.body footer.site-footer .site-footer__brand-title::after {
  width: 54px !important;
  height: 2px !important;
  background: #ff970f !important;
}
body.body footer.site-footer .site-footer__contact-list {
  display: grid !important;
  gap: 10px !important;
  margin: 0 0 18px !important;
}
body.body footer.site-footer .site-footer__about-text {
  color: rgba(255,255,255,.78) !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  margin: 0 0 20px !important;
}
body.body footer.site-footer .site-footer__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 0 !important;
}
body.body footer.site-footer .site-footer__social-link,
body.body footer.site-footer .site-footer__utility-link {
  border-color: rgba(255,151,15,.55) !important;
  background: rgba(255,151,15,.08) !important;
  color: #fff !important;
}
body.body footer.site-footer .site-footer__credit {
  width: 100% !important;
  height: auto !important;
  margin: 18px 0 0 !important;
  padding: 16px 0 0 !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
}
body.body footer.site-footer .site-footer__credit-text {
  color: rgba(255,255,255,.56) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}
@media (max-width: 1100px) {
  body.body footer.site-footer .site-footer__layout {
    grid-template-columns: 1fr !important;
    grid-template-areas: "about" "links" !important;
  }
  body.body footer.site-footer .site-footer__menus {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  body.body footer.site-footer .site-footer__badges {
    justify-content: center !important;
  }
}
@media (max-width: 760px) {
  body.body footer.site-footer .site-footer__container {
    width: min(100% - 28px, 1180px) !important;
  }
  body.body footer.site-footer .site-footer__menus {
    grid-template-columns: 1fr !important;
  }
  body.body footer.site-footer .site-footer__menu-col:nth-child(2) .site-footer__menu,
  body.body footer.site-footer .site-footer__menu-col:nth-child(3) .site-footer__menu {
    grid-template-columns: 1fr !important;
  }
  body.body footer.site-footer .site-footer__menu a,
  body.body footer.site-footer .site-footer__submenu a {
    min-height: 32px !important;
    padding-block: 6px !important;
  }
}


/* 2026-07-07: Align footer width with the rest of the site containers. */
body.body footer.site-footer .site-footer__container {
  width: min(100% - 64px, 1320px) !important;
  max-width: none !important;
}

body.body footer.site-footer .site-footer__layout {
  width: 100% !important;
  max-width: none !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 380px) !important;
  gap: clamp(28px, 3.2vw, 46px) !important;
}

body.body footer.site-footer .site-footer__menus {
  width: 100% !important;
  max-width: none !important;
  grid-template-columns: minmax(150px, .72fr) minmax(260px, 1.15fr) minmax(420px, 1.85fr) !important;
  gap: 16px !important;
}

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

@media (max-width: 1100px) {
  body.body footer.site-footer .site-footer__container {
    width: min(100% - 48px, 1320px) !important;
  }
  body.body footer.site-footer .site-footer__layout {
    grid-template-columns: 1fr !important;
    grid-template-areas: "about" "links" !important;
  }
  body.body footer.site-footer .site-footer__menus {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body.body footer.site-footer .site-footer__container {
    width: min(100% - 32px, 1320px) !important;
  }
  body.body footer.site-footer .site-footer__menus {
    grid-template-columns: 1fr !important;
  }
  body.body footer.site-footer .site-footer__menu-col:nth-child(2) .site-footer__menu,
  body.body footer.site-footer .site-footer__menu-col:nth-child(3) .site-footer__menu {
    grid-template-columns: 1fr !important;
  }
}


/* 2026-07-07: Footer should be an open footer, not separate cards. */
body.body footer.site-footer .site-footer__layout {
  align-items: start !important;
}

body.body footer.site-footer .site-footer__col--about,
body.body footer.site-footer .site-footer__menu-col,
body.body footer.site-footer .site-footer__menu,
body.body footer.site-footer .site-footer__submenu,
body.body footer.site-footer .site-footer__menu-group,
body.body footer.site-footer .site-footer__menu li,
body.body footer.site-footer .site-footer__submenu li {
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

body.body footer.site-footer .site-footer__col--about {
  padding: 0 clamp(28px, 3vw, 42px) 0 0 !important;
  border-right: 1px solid rgba(255,255,255,.10) !important;
}

body.body footer.site-footer .site-footer__menus {
  align-items: start !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
  padding-bottom: 22px !important;
}

body.body footer.site-footer .site-footer__menu-col {
  padding: 0 18px !important;
}

body.body footer.site-footer .site-footer__menu-col + .site-footer__menu-col {
  border-right: 1px solid rgba(255,255,255,.08) !important;
}

body.body footer.site-footer .site-footer__title,
body.body footer.site-footer .site-footer__brand-title {
  margin-top: 0 !important;
}

body.body footer.site-footer .site-footer__badges {
  margin-bottom: 18px !important;
}

body.body footer.site-footer .site-footer__credit {
  border-top: 1px solid rgba(255,255,255,.10) !important;
}

@media (max-width: 1100px) {
  body.body footer.site-footer .site-footer__col--about {
    padding: 0 0 28px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.10) !important;
  }
  body.body footer.site-footer .site-footer__menus {
    padding-top: 4px !important;
  }
}

@media (max-width: 760px) {
  body.body footer.site-footer .site-footer__col--about {
    padding-bottom: 26px !important;
  }
  body.body footer.site-footer .site-footer__menus {
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
    gap: 30px !important;
  }
  body.body footer.site-footer .site-footer__menu-col {
    padding: 0 0 24px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.10) !important;
  }
  body.body footer.site-footer .site-footer__menu-col:last-child {
    border-bottom: 0 !important;
  }
}

/* 2026-07-08 visual QA hardening: accessibility trigger, media grids, mobile table, compact header. */

html body #enable-toolbar {
  z-index: 2147483000 !important;
}

html body #enable-toolbar #enable-toolbar-trigger {
  z-index: 2147483000 !important;
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  max-width: 46px !important;
  max-height: 46px !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.20) !important;
  border-radius: 999px !important;
  background: rgba(8, 8, 8, 0.72) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.32) !important;
  overflow: hidden !important;
  opacity: 0.82 !important;
  transition: opacity 160ms ease-out, transform 160ms ease-out !important;
}

html body #enable-toolbar #enable-toolbar-trigger:hover,
html body #enable-toolbar #enable-toolbar-trigger:focus-visible {
  opacity: 1 !important;
}

html body #enable-toolbar #enable-toolbar-trigger .note,
html body #enable-toolbar #enable-toolbar-trigger span,
html body #enable-toolbar #enable-toolbar-trigger [class*="note"] {
  display: none !important;
}

html body #enable-toolbar #enable-toolbar-trigger svg,
html body #enable-toolbar #enable-toolbar-trigger img {
  width: 32px !important;
  height: 32px !important;
  margin: 7px !important;
  display: block !important;
}

@media (max-width: 767.98px) {
  html body #enable-toolbar #enable-toolbar-trigger {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    max-width: 42px !important;
    max-height: 42px !important;
  }

  html body #enable-toolbar #enable-toolbar-trigger svg,
  html body #enable-toolbar #enable-toolbar-trigger img {
    width: 28px !important;
    height: 28px !important;
    margin: 7px !important;
  }
}

body.body .gallery-template-grid__link,
body.body .main-cat-gallery__item,
body.body .main-cat-grand-card__media,
body.body .home-post-card__media,
body.body .blog-template-card__media,
body.body .home-faq__media {
  background:
    linear-gradient(135deg, rgba(255, 138, 0, 0.12), transparent 34%),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 72px),
    linear-gradient(180deg, rgba(22, 22, 22, 0.98), rgba(8, 8, 8, 0.98)) !important;
}

body.body .gallery-template-grid__image,
body.body .main-cat-gallery__image,
body.body .main-cat-grand-card__image,
body.body .home-post-card__img,
body.body .blog-template-card__image,
body.body .home-faq__image {
  background: transparent !important;
  opacity: 1 !important;
}

body.body .main-cat-page .main-cat-grand-card.has-no-media {
  grid-template-columns: 1fr !important;
  min-height: clamp(180px, 18vw, 250px) !important;
}

body.body .main-cat-page .main-cat-grand-card.has-no-media .main-cat-grand-card__body {
  max-width: 760px !important;
}

body.body .contact-template-project-cta__media:empty {
  display: none !important;
}

body.body .contact-template-project-cta:has(.contact-template-project-cta__media:empty) {
  grid-template-columns: minmax(0, 1fr) auto !important;
}

@media (max-width: 991.98px) {
  body.body .contact-template-project-cta:has(.contact-template-project-cta__media:empty) {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767.98px) {
  body.body .header {
    min-height: 78px !important;
  }

  body.body .header__row {
    width: calc(100% - 22px) !important;
    min-height: 76px !important;
  }

  body.body .header__logos-wrap {
    flex-wrap: nowrap !important;
    gap: 8px !important;
  }

  body.body .header__logos-wrap > a {
    flex: 0 1 auto !important;
  }

  body.body .header .call-us.btn,
  body.body .header__mobile-toggle {
    min-width: 44px !important;
    min-height: 44px !important;
  }

  body.body .header .call-us.btn {
    padding-inline: 0 !important;
    overflow: hidden !important;
  }
}

@media (max-width: 767.98px) {
  html body .tw-page-wrap .tw-table.is-pivot .tw-pivot-shell {
    position: relative !important;
    padding: 42px 8px 10px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255, 138, 0, 0.28) !important;
    background:
      linear-gradient(180deg, oklch(0.992 0.004 78) 0%, oklch(0.965 0.008 78) 100%) !important;
    box-shadow:
      inset 26px 0 22px -28px rgba(8, 8, 8, 0.32),
      inset -26px 0 22px -28px rgba(8, 8, 8, 0.32) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  html body .tw-page-wrap .tw-table.is-pivot .tw-pivot-shell::before {
    content: "← גללו לצדדים לצפייה בכל המידות" !important;
    position: absolute !important;
    inset-block-start: 8px !important;
    inset-inline-start: 8px !important;
    z-index: 5 !important;
    display: inline-flex !important;
    align-items: center !important;
    min-height: 26px !important;
    padding: 5px 10px !important;
    border: 1px solid rgba(255, 138, 0, 0.28) !important;
    border-radius: 999px !important;
    background: rgba(8, 8, 8, 0.86) !important;
    color: #fffaf4 !important;
    font: 800 12px/1.15 "Rubik", Arial, sans-serif !important;
    letter-spacing: 0 !important;
    direction: rtl !important;
    pointer-events: none !important;
  }

  html body .tw-page-wrap .tw-table.is-pivot .tw-pivot-table {
    margin: 0 !important;
    min-width: 760px !important;
  }
}

/* 2026-07-08 alignment QA: rigid grids and shared mobile axes. */
body.body .main-cat-page .main-cat-gallery__grid {
  display: grid !important;
  columns: auto !important;
  column-gap: 0 !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1vw, 14px) !important;
  align-items: stretch !important;
}

body.body .main-cat-page .main-cat-gallery__item,
body.body .main-cat-page .main-cat-gallery__item:nth-child(1),
body.body .main-cat-page .main-cat-gallery__item:nth-child(3n),
body.body .main-cat-page .main-cat-gallery__item:nth-child(5n),
body.body .main-cat-page .main-cat-gallery__item:nth-child(7n),
body.body .main-cat-page .main-cat-gallery__item:nth-child(8),
body.body .main-cat-page .main-cat-gallery__item:nth-child(11),
body.body .main-cat-page .main-cat-gallery__item:nth-child(13) {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  aspect-ratio: auto !important;
  break-inside: auto !important;
}

body.body .main-cat-page .main-cat-gallery__zoom,
body.body .main-cat-page .main-cat-gallery__item:nth-child(3n) .main-cat-gallery__zoom,
body.body .main-cat-page .main-cat-gallery__item:nth-child(5n) .main-cat-gallery__zoom,
body.body .main-cat-page .main-cat-gallery__item:nth-child(7n) .main-cat-gallery__zoom {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
}

body.body .main-cat-page .main-cat-gallery__image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

body.body .main-cat-page .main-cat-grand-grid {
  align-items: stretch !important;
}

body.body .main-cat-page .main-cat-grand-card {
  height: 100% !important;
}

body.body .main-cat-page .main-cat-grand-card__media {
  min-height: clamp(240px, 18vw, 320px) !important;
}

@media (max-width: 1199.98px) and (min-width: 768px) {
  body.body .main-cat-page .main-cat-gallery__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767.98px) {
  body.body .main-cat-page .main-cat-gallery__grid {
    grid-template-columns: 1fr !important;
  }

  body.body .main-cat-page .main-cat-gallery__zoom,
  body.body .main-cat-page .main-cat-gallery__item:nth-child(3n) .main-cat-gallery__zoom,
  body.body .main-cat-page .main-cat-gallery__item:nth-child(5n) .main-cat-gallery__zoom,
  body.body .main-cat-page .main-cat-gallery__item:nth-child(7n) .main-cat-gallery__zoom {
    aspect-ratio: 16 / 11 !important;
  }
}

@media (min-width: 1200px) {
  body.body .contact-template-content__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 0.92fr) !important;
    grid-template-areas:
      "form info"
      "secondary cta"
      "promises promises" !important;
    align-items: start !important;
    gap: clamp(28px, 3vw, 42px) !important;
  }

  body.body .contact-template-form-wrap {
    grid-area: form !important;
    order: initial !important;
  }

  body.body .contact-template-info {
    grid-area: info !important;
    order: initial !important;
    width: 100% !important;
  }

  body.body .contact-template-secondary {
    grid-area: secondary !important;
    width: 100% !important;
  }

  body.body .contact-template-project-cta {
    grid-area: cta !important;
    width: 100% !important;
    margin-top: 0 !important;
    align-self: start !important;
  }

  body.body .contact-template-promises {
    grid-area: promises !important;
    width: 100% !important;
    margin-top: 0 !important;
  }
}

@media (max-width: 767.98px) {
  html body .tw-page-wrap .tw-table-layout {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    min-width: 0 !important;
    margin-inline-start: calc(50% - 50vw + 14px) !important;
    margin-inline-end: calc(50% - 50vw + 14px) !important;
    box-sizing: border-box !important;
    align-items: stretch !important;
  }

  html body .tw-page-wrap .tw-table-layout > .tw-filters,
  html body .tw-page-wrap .tw-table-layout > .tw-table {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-inline: 0 !important;
    box-sizing: border-box !important;
  }

  html body .tw-page-wrap .tw-table-layout > .tw-table.is-pivot {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
  }
}

/* 2026-07-08 design pass: redesign awkward blocks, not just align them. */
@media (min-width: 1200px) {
  body.body .contact-template-content__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 0.95fr) minmax(420px, 0.86fr) !important;
    grid-template-areas:
      "form info"
      "secondary secondary"
      "cta cta"
      "promises promises" !important;
    gap: clamp(30px, 3vw, 44px) !important;
    align-items: start !important;
  }

  body.body .contact-template-form-wrap {
    grid-area: form !important;
    order: initial !important;
    height: auto !important;
    align-self: start !important;
  }

  body.body .contact-template-info {
    grid-area: info !important;
    order: initial !important;
    height: 100% !important;
  }

  body.body .contact-template-secondary {
    grid-area: secondary !important;
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr) !important;
    gap: clamp(24px, 2.4vw, 36px) !important;
    align-items: stretch !important;
  }

  body.body .contact-template-map-card,
  body.body .contact-template-resources {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
  }

  body.body .contact-template-resource-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  body.body .contact-template-resource-card {
    min-height: 150px !important;
    height: 100% !important;
  }

  body.body .contact-template-project-cta {
    grid-area: cta !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: clamp(26px, 3vw, 40px) clamp(28px, 4vw, 58px) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: clamp(20px, 3vw, 44px) !important;
    background:
      linear-gradient(90deg, rgba(255, 138, 0, 0.15), transparent 36%, rgba(255, 138, 0, 0.08)),
      linear-gradient(180deg, rgba(23, 23, 23, 0.98), rgba(9, 9, 9, 0.99)) !important;
  }

  body.body .contact-template-project-cta__content {
    max-width: 760px !important;
  }

  body.body .contact-template-project-cta__button {
    width: auto !important;
    min-width: 220px !important;
    white-space: nowrap !important;
  }

  body.body .contact-template-promises {
    grid-area: promises !important;
    width: 100% !important;
    margin: 0 !important;
  }
}

@media (max-width: 1199.98px) {
  body.body .contact-template-content__grid,
  body.body .contact-template-secondary,
  body.body .contact-template-project-cta {
    grid-template-columns: 1fr !important;
  }

  body.body .contact-template-project-cta__button {
    width: 100% !important;
    max-width: 340px !important;
  }
}

@media (max-width: 767.98px) {
  body.body .contact-template-secondary {
    display: grid !important;
    gap: 18px !important;
  }

  body.body .contact-template-project-cta {
    padding: 22px 18px !important;
  }

  body.body .contact-template-resource-grid {
    grid-template-columns: 1fr !important;
  }
}

/* 2026-07-08 design pass correction: mobile contact priority and visible gallery affordance. */
body.body .main-cat-page .main-cat-gallery__zoom::before {
  opacity: 0.18 !important;
}

body.body .main-cat-page .main-cat-gallery__zoom::after {
  content: "+" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  inset-block-end: 12px !important;
  inset-inline-start: 12px !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 0 !important;
  border: 1px solid rgba(255, 184, 74, 0.74) !important;
  background: rgba(255, 138, 0, 0.92) !important;
  color: #080808 !important;
  font: 900 22px/1 "Rubik", Arial, sans-serif !important;
  opacity: 0.96 !important;
  transform: none !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.28) !important;
}

@media (max-width: 1199.98px) {
  body.body .contact-template-form-wrap {
    order: 1 !important;
  }

  body.body .contact-template-info {
    order: 2 !important;
  }

  body.body .contact-template-secondary {
    order: 3 !important;
  }

  body.body .contact-template-project-cta {
    order: 4 !important;
  }

  body.body .contact-template-promises {
    order: 5 !important;
  }
}

/* 2026-07-08 newsletter copy polish: remove eyebrow collision and keep close away from copy. */
html body .newsletter-popup__eyebrow,
html body.body .newsletter-popup__eyebrow {
  display: none !important;
}

html body .newsletter-popup__close,
html body.body .newsletter-popup__close {
  top: 14px !important;
  left: 14px !important;
  right: auto !important;
  width: 44px !important;
  height: 44px !important;
}

html body .newsletter-popup__card,
html body.body .newsletter-popup__card {
  padding-top: clamp(34px, 4.6vw, 52px) !important;
}

html body .newsletter-popup__title,
html body.body .newsletter-popup__title {
  margin-top: 0 !important;
  max-width: 14ch;
}

html body .newsletter-popup__subtitle,
html body.body .newsletter-popup__subtitle {
  max-width: 47ch;
}

@media (max-width: 767.98px) {
  html body .newsletter-popup__card,
  html body.body .newsletter-popup__card {
    padding-top: 58px !important;
  }

  html body .newsletter-popup__title,
  html body.body .newsletter-popup__title {
    max-width: 11ch;
  }

  html body .newsletter-popup__subtitle,
  html body.body .newsletter-popup__subtitle {
    max-width: 29ch;
  }
}

/* 2026-07-08 newsletter frame cleanup: remove inner card rail/line. */
html body .newsletter-popup__dialog,
html body.body .newsletter-popup__dialog {
  padding-bottom: 0 !important;
  overflow: visible !important;
}

html body .newsletter-popup__card,
html body.body .newsletter-popup__card {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-color: transparent !important;
  box-shadow: none !important;
  border-radius: inherit !important;
}

/* 2026-07-08 homepage rail normalization: one desktop ruler for major sections. */
@media (min-width: 992px) {
  body.body.home {
    --hk-home-rail: min(1232px, calc(100vw - 48px));
  }

  body.body.home .clients-showcase-section,
  body.body.home .tw-page-wrap,
  body.body.home .about-showcase-section,
  body.body.home .home-posts-section {
    padding-inline: 24px !important;
  }

  body.body.home .clients-showcase,
  body.body.home .tw-page-wrap .tw-app-wrap,
  body.body.home .about-showcase__header,
  body.body.home .about-showcase__timeline,
  body.body.home .about-showcase__reviews,
  body.body.home .home-posts-section__inner,
  body.body.home .home-faq__inner {
    width: var(--hk-home-rail) !important;
    max-width: var(--hk-home-rail) !important;
    margin-inline: auto !important;
    box-sizing: border-box !important;
  }

  body.body.home .tw-page-wrap .tw-app-wrap {
    padding-inline: clamp(24px, 2.4vw, 32px) !important;
  }

  body.body.home .about-showcase__header,
  body.body.home .about-showcase__timeline,
  body.body.home .about-showcase__reviews {
    padding-inline: 0 !important;
  }

  body.body.home .about-showcase__timeline .about-timeline {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    box-sizing: border-box !important;
    padding-inline: clamp(18px, 1.8vw, 24px) !important;
  }

  body.body.home .about-showcase__timeline .about-timeline::before {
    left: clamp(18px, 1.8vw, 24px) !important;
    right: clamp(18px, 1.8vw, 24px) !important;
  }
}

/* Footer compact cascade lock: keep the selected treatment above legacy footer rules. */
body.body footer.site-footer.site-footer--compact {
  padding: 0 !important;
  border-top: 0 !important;
}

body.body footer.site-footer.site-footer--compact .site-footer__container.site-footer-compact {
  width: min(1320px, calc(100% - 48px)) !important;
  max-width: none !important;
  padding: 0 !important;
}

body.body footer.site-footer.site-footer--compact .site-footer__menu.site-footer__menu--compact {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

body.body footer.site-footer.site-footer--compact .site-footer__menu.site-footer__menu--compact > li {
  display: block !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  opacity: 1 !important;
}

body.body footer.site-footer.site-footer--compact .site-footer__menu.site-footer__menu--compact > li > a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 0 !important;
  padding: 0 !important;
  color: #dcdcdc !important;
  font-size: clamp(15px, 1.05vw, 17px) !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  opacity: 1 !important;
}

body.body footer.site-footer.site-footer--compact .site-footer__menu.site-footer__menu--compact > li.site-footer__menu-all {
  margin-top: 17px !important;
}

body.body footer.site-footer.site-footer--compact .site-footer__menu.site-footer__menu--compact > li.site-footer__menu-all > a {
  color: #ff8a00 !important;
}

body.body footer.site-footer.site-footer--compact .site-footer-compact__brand-gates {
  width: 76px !important;
  max-width: 76px !important;
  max-height: 80px !important;
}

body.body footer.site-footer.site-footer--compact .site-footer-compact__brand-iron {
  width: 190px !important;
  max-width: 190px !important;
  max-height: 70px !important;
}

body.body footer.site-footer.site-footer--compact .site-footer-compact__wsol svg {
  display: block !important;
  width: 220px !important;
  max-width: 100% !important;
  height: auto !important;
  direction: ltr !important;
}

body.body footer.site-footer.site-footer--compact .site-footer-compact__wsol svg text {
  direction: ltr !important;
  unicode-bidi: bidi-override !important;
}

@media (max-width: 680px) {
  body.body footer.site-footer.site-footer--compact .site-footer__container.site-footer-compact {
    width: min(100% - 32px, 560px) !important;
  }

  body.body footer.site-footer.site-footer--compact .site-footer-compact__brand-gates {
    width: 64px !important;
    max-width: 64px !important;
  }

  body.body footer.site-footer.site-footer--compact .site-footer-compact__brand-iron {
    width: 155px !important;
    max-width: 155px !important;
  }

  body.body footer.site-footer.site-footer--compact .site-footer-compact__wsol svg {
    width: 210px !important;
  }
}

/* Footer contact form: restore a compact, coherent two-column composition. */
body.body .footer-contact-section {
  width: 100% !important;
  margin: 0 !important;
  padding: 44px 0 50px !important;
  max-height: none !important;
  overflow: hidden !important;
}

body.body .footer-contact-section > .container {
  width: min(1180px, calc(100% - 48px)) !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}

body.body .footer-contact-section .footer-contact-header {
  width: 100% !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 32px !important;
  margin: 0 0 24px !important;
  direction: rtl !important;
}

body.body .footer-contact-section .footer-contact-header-text {
  width: min(100%, 610px) !important;
  display: block !important;
  direction: rtl !important;
  text-align: right !important;
}

body.body .footer-contact-section .footer-contact-title {
  width: auto !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(32px, 3vw, 40px) !important;
  font-weight: 600 !important;
  line-height: 1.08 !important;
  text-align: right !important;
}

body.body .footer-contact-section .footer-contact-title::after {
  width: 76px !important;
  height: 3px !important;
  margin: 10px 0 0 !important;
}

body.body .footer-contact-section .footer-contact-subtitle {
  width: auto !important;
  max-width: 560px !important;
  margin: 12px 0 0 !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  text-align: right !important;
}

body.body .footer-contact-section .footer-contact-logos {
  flex: 0 0 auto !important;
  justify-content: flex-start !important;
}

body.body .footer-contact-section .footer-contact-logos-img {
  width: auto !important;
  max-width: min(260px, 30vw) !important;
  max-height: 58px !important;
}

body.body .footer-contact-section .footer-contact-card {
  width: 100% !important;
  margin: 0 !important;
  padding: 28px !important;
  border: 1px solid rgba(196, 196, 196, 0.22) !important;
  background: linear-gradient(180deg, rgba(30, 30, 30, 0.94), rgba(18, 18, 18, 0.96)) !important;
}

body.body .footer-contact-section .hisherik-contact-block {
  width: 100% !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  gap: 42px !important;
  direction: rtl !important;
}

body.body .footer-contact-section .hisherik-contact-left {
  flex: 0 0 300px !important;
  width: 300px !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 22px !important;
  padding: 10px 0 10px 34px !important;
  border-left: 1px solid rgba(196, 196, 196, 0.18) !important;
  direction: rtl !important;
}

body.body .footer-contact-section .hisherik-contact-item {
  gap: 12px !important;
  align-items: center !important;
}

body.body .footer-contact-section .hisherik-contact-text,
body.body .footer-contact-section .hisherik-contact-link {
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  overflow-wrap: anywhere !important;
}

body.body .footer-contact-section .hisherik-contact-right {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  text-align: right !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.body .footer-contact-section .hisherik-grid-2 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px 16px !important;
}

body.body .footer-contact-section .hisherik-field-label {
  display: block !important;
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.92) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 20px !important;
  text-align: right !important;
  letter-spacing: 0 !important;
}

body.body .footer-contact-section .wpcf7-form-control-wrap {
  display: block !important;
  width: 100% !important;
}

body.body .footer-contact-section .hisherik-field-label > .wpcf7-form-control-wrap {
  margin-top: 6px !important;
}

body.body .footer-contact-section .hisherik-input,
body.body .footer-contact-section .hisherik-textarea {
  width: 100% !important;
  border: 1px solid rgba(196, 196, 196, 0.2) !important;
  background: rgba(9, 9, 9, 0.72) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.body .footer-contact-section .hisherik-input {
  height: 48px !important;
  min-height: 48px !important;
  padding: 11px 14px !important;
}

body.body .footer-contact-section .hisherik-field-full {
  margin-top: 14px !important;
}

body.body .footer-contact-section .hisherik-textarea {
  min-height: 108px !important;
  height: 108px !important;
  padding: 12px 14px !important;
  resize: vertical !important;
}

body.body .footer-contact-section .f-bottom-row {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 20px !important;
  margin-top: 16px !important;
  direction: rtl !important;
}

body.body .footer-contact-section .acceptance-row {
  width: 100% !important;
  display: grid !important;
  gap: 7px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.body .footer-contact-section .acceptance-row .wpcf7-form-control-wrap,
body.body .footer-contact-section .acceptance-row .wpcf7-list-item {
  margin: 0 !important;
}

body.body .footer-contact-section .acceptance-row label {
  width: 100% !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 9px !important;
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.78) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  text-align: right !important;
}

body.body .footer-contact-section .acceptance-row label span {
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}

body.body .footer-contact-section .acceptance-row input[type="checkbox"] {
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  margin: 1px 0 0 !important;
}

body.body .footer-contact-section .hisherik-actions {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  direction: ltr !important;
}

body.body .footer-contact-section .hisherik-actions .wpcf7-spinner {
  position: absolute !important;
  left: 12px !important;
  top: 50% !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
}

html body.body .footer-contact-section input.wpcf7-form-control.wpcf7-submit.has-spinner.hisherik-btn {
  width: 172px !important;
  min-width: 172px !important;
  max-width: 172px !important;
  height: 48px !important;
  min-height: 48px !important;
}

@media (max-width: 900px) {
  body.body .footer-contact-section > .container {
    width: min(720px, calc(100% - 32px)) !important;
  }

  body.body .footer-contact-section .hisherik-contact-block {
    flex-direction: column !important;
    gap: 24px !important;
  }

  body.body .footer-contact-section .hisherik-contact-left {
    flex: 0 0 auto !important;
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px 20px !important;
    padding: 0 0 22px !important;
    border-left: 0 !important;
    border-bottom: 1px solid rgba(196, 196, 196, 0.18) !important;
  }
}

@media (max-width: 720px) {
  body.body .footer-contact-section {
    padding: 34px 0 38px !important;
  }

  body.body .footer-contact-section .footer-contact-header {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 18px !important;
    margin-bottom: 20px !important;
  }

  body.body .footer-contact-section .footer-contact-logos-img {
    max-width: min(230px, 76vw) !important;
    max-height: 52px !important;
  }

  body.body .footer-contact-section .footer-contact-card {
    padding: 20px !important;
  }

  body.body .footer-contact-section .hisherik-contact-left,
  body.body .footer-contact-section .hisherik-grid-2,
  body.body .footer-contact-section .f-bottom-row {
    grid-template-columns: 1fr !important;
  }

  body.body .footer-contact-section .hisherik-actions,
  html body.body .footer-contact-section input.wpcf7-form-control.wpcf7-submit.has-spinner.hisherik-btn {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }
}

@media (max-width: 420px) {
  body.body .footer-contact-section > .container {
    width: calc(100% - 24px) !important;
  }

  body.body .footer-contact-section .footer-contact-card {
    padding: 16px !important;
  }
}

/* Homepage FAQ: restore the spacious reference composition. */
body.body.home .home-faq {
  width: 100% !important;
  margin: 0 !important;
  padding: 40px 0 45px !important;
  border-top: 1px solid rgba(196, 196, 196, 0.1) !important;
  background: linear-gradient(180deg, #0e0e0e 0%, #070707 100%) !important;
}

body.body.home .home-faq__inner {
  width: min(1470px, calc(100% - 48px)) !important;
  max-width: 1470px !important;
  margin-inline: auto !important;
  padding: 0 !important;
}

body.body.home .home-faq__heading {
  margin: 0 0 34px !important;
}

body.body.home .home-faq__title {
  font-size: clamp(40px, 2.55vw, 48px) !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

body.body.home .home-faq__title::after {
  width: 84px !important;
  height: 4px !important;
  margin-top: 14px !important;
}

body.body.home .home-faq__content {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: clamp(320px, 26.7vw, 392px) minmax(0, 1fr) !important;
  grid-template-areas: "media accordion" !important;
  align-items: center !important;
  gap: clamp(36px, 2.45vw, 50px) !important;
  direction: ltr !important;
}

body.body.home .home-faq__accordion {
  grid-area: accordion !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  direction: rtl !important;
}

body.body.home .home-faq__media {
  grid-area: media !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 750 / 468 !important;
  height: auto !important;
  min-height: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: center !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  background: transparent !important;
}

body.body.home .home-faq__media::after {
  content: none !important;
  display: none !important;
}

body.body.home .home-faq__image {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  display: block !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: transparent !important;
  filter: none !important;
}

body.body.home .faq-accordion {
  display: block !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 1px solid #2e2e2e !important;
  background: #0c0c0c !important;
}

body.body.home .faq-accordion__item,
body.body.home .faq-accordion__item:hover,
body.body.home .faq-accordion__item.is-open {
  display: block !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #272727 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.body.home .faq-accordion__item:last-child,
body.body.home .faq-accordion__item:last-child:hover,
body.body.home .faq-accordion__item:last-child.is-open {
  border-bottom: 0 !important;
}

body.body.home .faq-accordion__item:hover {
  background: #101010 !important;
}

body.body.home .faq-accordion__item.is-open {
  background: #15120f !important;
}

html body.body.home .home-faq .faq-accordion button.faq-accordion__trigger {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 76px !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 18px 22px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #fff !important;
  direction: rtl !important;
}

html body.body.home .home-faq .faq-accordion button.faq-accordion__trigger:hover,
html body.body.home .home-faq .faq-accordion button.faq-accordion__trigger:focus-visible,
html body.body.home .home-faq .faq-accordion__item.is-open button.faq-accordion__trigger {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.body.home .home-faq .faq-accordion button.faq-accordion__trigger:focus-visible {
  outline: 2px solid rgba(255, 138, 0, 0.58) !important;
  outline-offset: -2px !important;
}

html body.body.home .home-faq .faq-accordion button.faq-accordion__trigger .faq-accordion__label {
  color: #ededec !important;
  font-family: "Rubik", Arial, sans-serif !important;
  font-size: clamp(18px, 1.05vw, 20px) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  text-align: right !important;
}

body.body.home .home-faq .faq-accordion__icon {
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid #7c4d21 !important;
  background: #19140f !important;
  color: var(--hk-orange) !important;
}

body.body.home .home-faq .faq-accordion__icon i {
  display: block !important;
  font-size: 12px !important;
  line-height: 1 !important;
}

body.body.home .home-faq .faq-accordion__item.is-open .faq-accordion__icon {
  border-color: #bc732c !important;
  background: #342314 !important;
  color: var(--hk-orange-2) !important;
  transform: rotate(180deg) !important;
}

body.body.home .home-faq .faq-accordion__panel {
  margin: 0 !important;
  padding: 12px 22px 24px !important;
  border: 0 !important;
  background: transparent !important;
}

body.body.home .home-faq .faq-accordion__panel[hidden] {
  display: none !important;
}

body.body.home .home-faq .faq-accordion__panel-inner {
  margin: 0 !important;
  padding: 15px 0 0 !important;
  border-top: 1px solid #2a2725 !important;
  color: #bab9b8 !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 27px !important;
}

body.body.home .home-faq .faq-accordion__panel-inner p {
  font-size: inherit !important;
  line-height: inherit !important;
}

@media (max-width: 991.98px) {
  body.body.home .home-faq {
    padding: 40px 0 44px !important;
  }

  body.body.home .home-faq__inner {
    width: min(720px, calc(100% - 32px)) !important;
  }

  body.body.home .home-faq__content {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
      "accordion"
      "media" !important;
    gap: 28px !important;
    direction: rtl !important;
  }

  body.body.home .home-faq__accordion,
  body.body.home .home-faq__media {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  body.body.home .home-faq__media {
    width: min(600px, 100%) !important;
    display: flex !important;
    margin-inline: auto !important;
  }
}

@media (max-width: 520px) {
  body.body.home .home-faq__inner {
    width: calc(100% - 24px) !important;
  }

  body.body.home .home-faq__heading {
    margin-bottom: 28px !important;
  }

  body.body.home .home-faq__title {
    font-size: 34px !important;
  }

  html body.body.home .home-faq .faq-accordion button.faq-accordion__trigger {
    min-height: 64px !important;
    gap: 12px !important;
    padding: 12px 14px !important;
  }

  html body.body.home .home-faq .faq-accordion button.faq-accordion__trigger .faq-accordion__label {
    font-size: 17px !important;
  }

  body.body.home .home-faq .faq-accordion__icon {
    flex-basis: 36px !important;
    width: 36px !important;
    height: 36px !important;
  }

  body.body.home .home-faq .faq-accordion__panel {
    padding: 10px 14px 18px !important;
  }

  body.body.home .home-faq .faq-accordion__panel-inner {
    padding-top: 12px !important;
    font-size: 15.5px !important;
    line-height: 24px !important;
  }
}

/* Contact form keyboard focus must remain visible above legacy form rules. */
html body.body .contact-template-page .contact-template-form :is(
  input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
  textarea,
  select
):focus-visible {
  border-color: var(--hk-orange-2) !important;
  outline: 2px solid rgba(255, 151, 15, 0.9) !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 3px rgba(255, 151, 15, 0.18) !important;
}

/* Homepage posts archive CTA. */
body.body.home .home-posts-section__actions {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 30px 0 0 !important;
}

body.body.home .home-posts-section__all {
  min-width: 176px !important;
  min-height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  padding: 0 24px !important;
  border: 1px solid var(--hk-orange) !important;
  background: var(--hk-orange) !important;
  color: #080808 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: background-color var(--hk-transition), border-color var(--hk-transition), transform var(--hk-transition) !important;
}

body.body.home .home-posts-section__all::after {
  content: "" !important;
  display: inline-block !important;
  width: 9px !important;
  height: 9px !important;
  flex: 0 0 9px !important;
  box-sizing: border-box !important;
  border-style: solid !important;
  border-color: currentColor !important;
  border-width: 0 2px 2px 0 !important;
  font-size: 0 !important;
  transform: rotate(135deg) !important;
}

body.body.home .home-posts-section__all:hover,
body.body.home .home-posts-section__all:focus-visible {
  border-color: var(--hk-orange-2) !important;
  background: var(--hk-orange-2) !important;
  color: #080808 !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
}

body.body.home .home-posts-section__all:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.88) !important;
  outline-offset: 3px !important;
}

@media (max-width: 520px) {
  body.body.home .home-posts-section__actions {
    margin-top: 24px !important;
  }

  body.body.home .home-posts-section__all {
    width: min(100%, 320px) !important;
  }
}
