
/* XHT Fasteners design system v1
   Scoped to .xht-site to minimize conflicts with Astra and plugins. */

:root {
  --xht-navy-950: #07182c;
  --xht-navy-900: #0b213d;
  --xht-navy-800: #123252;
  --xht-blue-600: #1c5d92;
  --xht-red-600: #d72638;
  --xht-red-700: #b91f2f;
  --xht-slate-900: #17212f;
  --xht-slate-700: #465568;
  --xht-slate-500: #6c7888;
  --xht-slate-300: #cfd7e2;
  --xht-slate-200: #e2e8f0;
  --xht-slate-100: #f3f6f9;
  --xht-white: #ffffff;
  --xht-success: #17835f;
  --xht-shadow-sm: 0 8px 24px rgba(7, 24, 44, 0.08);
  --xht-shadow-md: 0 18px 46px rgba(7, 24, 44, 0.13);
  --xht-radius-sm: 8px;
  --xht-radius-md: 14px;
  --xht-radius-lg: 22px;
  --xht-container: 1200px;
}

/* Full-width canvas while retaining Astra's global header and footer. */
.page-template-elementor_header_footer .site-content > .ast-container {
  width: 100%;
  max-width: none;
  padding: 0;
}

.page-template-elementor_header_footer .site-content,
.page-template-elementor_header_footer.ast-plain-container #primary {
  margin: 0;
}

.xht-site,
.xht-site * {
  box-sizing: border-box;
}

.xht-site {
	
	/* XHT English desktop sales header */
	
  overflow: hidden;
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}
/* XHT floating widget row: no footer gap */
.site-above-footer-wrap {

/* XHT Fasteners design system v1
   Scoped to .xht-site to minimize conflicts with Astra and plugins. */

:root {
  --xht-navy-950: #07182c;
  --xht-navy-900: #0b213d;
  --xht-navy-800: #123252;
  --xht-blue-600: #1c5d92;
  --xht-red-600: #d72638;
  --xht-red-700: #b91f2f;
  --xht-slate-900: #17212f;
  --xht-slate-700: #465568;
  --xht-slate-500: #6c7888;
  --xht-slate-300: #cfd7e2;
  --xht-slate-200: #e2e8f0;
  --xht-slate-100: #f3f6f9;
  --xht-white: #ffffff;
  --xht-success: #17835f;
  --xht-shadow-sm: 0 8px 24px rgba(7, 24, 44, 0.08);
  --xht-shadow-md: 0 18px 46px rgba(7, 24, 44, 0.13);
  --xht-radius-sm: 8px;
  --xht-radius-md: 14px;
  --xht-radius-lg: 22px;
  --xht-container: 1200px;
}

/* Full-width canvas while retaining Astra's global header and footer. */
.page-template-elementor_header_footer .site-content > .ast-container {
  width: 100%;
  max-width: none;
  padding: 0;
}

.page-template-elementor_header_footer .site-content,
.page-template-elementor_header_footer.ast-plain-container #primary {
  margin: 0;
}

.xht-site,
.xht-site * {
  box-sizing: border-box;
}

.xht-site {
  overflow: hidden;
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}
/* XHT floating widget row: no footer gap */
.site-above-footer-wrap {
  min-height: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: visible !important;
}
.site-above-footer-wrap .ast-builder-grid-row-container-inner,
.site-above-footer-wrap .site-above-footer-inner-wrap {
  min-height: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}


.xht-site img {
  display: block;
  width: 100%;
  height: auto;
}

.xht-site a {
  color: inherit;
  text-decoration: none;
}

.xht-container {
  width: min(100% - 40px, var(--xht-container));
  margin-inline: auto;
}

.xht-section {
  padding: 88px 0;
}

.xht-section--soft {
  background: var(--xht-slate-100);
}

.xht-section--dark {
  color: var(--xht-white);
  background: var(--xht-navy-950);
}

.xht-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
  gap: 44px;
  align-items: end;
  margin-bottom: 40px;
}

.xht-section-head--center {
  display: block;
  max-width: 760px;
  margin: 0 auto 44px;
  text-align: center;
}

.xht-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  color: var(--xht-red-600);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.xht-eyebrow::before {
  width: 28px;
  height: 2px;
  background: currentColor;
  content: "";
}

.xht-site h1,
.xht-site h2,
.xht-site h3,
.xht-site p {
  margin-top: 0;
}

.xht-site h1,
.xht-site h2,
.xht-site h3 {
  color: inherit;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.12;
}

.xht-site h1 {
  margin-bottom: 22px;
  font-size: clamp(38px, 5vw, 66px);
}

.xht-site h2 {
  margin-bottom: 18px;
  font-size: clamp(30px, 3.4vw, 46px);
}

.xht-site h3 {
  margin-bottom: 12px;
  font-size: clamp(20px, 2vw, 25px);
}

.xht-lead {
  color: var(--xht-slate-700);
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.7;
}

.xht-muted {
  color: var(--xht-slate-500);
}

.xht-section--dark .xht-lead,
.xht-section--dark .xht-muted {
  color: #bfccda;
}

.xht-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.xht-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: var(--xht-radius-sm);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.035em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.xht-btn:hover,
.xht-btn:focus-visible {
  transform: translateY(-2px);
}

.xht-btn:focus-visible,
.xht-card-link:focus-visible {
  outline: 3px solid rgba(215, 38, 56, 0.28);
  outline-offset: 3px;
}

.xht-btn--primary {
  color: var(--xht-white) !important;
  background: var(--xht-red-600);
}

.xht-btn--primary:hover,
.xht-btn--primary:focus-visible {
  background: var(--xht-red-700);
}

.xht-btn--secondary {
  color: var(--xht-navy-900) !important;
  border-color: var(--xht-slate-300);
  background: var(--xht-white);
}

.xht-btn--ghost {
  color: var(--xht-white) !important;
  border-color: rgba(255, 255, 255, 0.38);
  background: transparent;
}

.xht-hero {
  position: relative;
  color: var(--xht-white);
  background:
    radial-gradient(circle at 76% 18%, rgba(28, 93, 146, 0.45), transparent 31%),
    linear-gradient(118deg, var(--xht-navy-950) 0%, var(--xht-navy-900) 60%, #123b63 100%);
}

.xht-hero::after {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  pointer-events: none;
  content: "";
}

.xht-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
  gap: 60px;
  align-items: center;
  padding: 82px 0 70px;
}

.xht-hero__copy {
  max-width: 710px;
}

.xht-hero h1 {
  font-size: clamp(38px, 4.65vw, 62px);
}

.xht-hero .xht-lead {
  max-width: 690px;
  color: #d6e1ec;
}

.xht-visual {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--xht-radius-lg);
  background:
    radial-gradient(circle at 50% 38%, rgba(255, 255, 255, .96), rgba(232, 237, 242, .92) 36%, rgba(156, 171, 186, .6) 68%, rgba(11, 33, 61, .55) 100%),
    var(--xht-slate-200);
  box-shadow: var(--xht-shadow-md);
}

.xht-visual::before,
.xht-visual::after {
  position: absolute;
  border: 22px solid rgba(7, 24, 44, 0.33);
  border-radius: 30%;
  content: "";
}

.xht-visual::before {
  width: 230px;
  height: 230px;
  top: 20%;
  left: 20%;
  transform: rotate(28deg);
}

.xht-visual::after {
  width: 135px;
  height: 135px;
  right: 12%;
  bottom: 9%;
  transform: rotate(-12deg);
}

.xht-visual__label {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 13px 15px;
  border-radius: var(--xht-radius-sm);
  color: #dce6ef;
  background: rgba(7, 24, 44, 0.9);
  font-size: 13px;
  line-height: 1.45;
}

.xht-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item {
  padding: 20px 18px;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item:last-child {
  border-right: 0;
}

.xht-trust-strip strong {
  display: block;
  margin-bottom: 3px;
  color: var(--xht-white);
  font-size: 15px;
}

.xht-trust-strip span {
  color: #aebdcb;
  font-size: 13px;
}

.xht-grid {
  display: grid;
  gap: 24px;
}

.xht-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.xht-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xht-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xht-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-sm);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.xht-card:hover {
  transform: translateY(-4px);
  border-color: #aab7c6;
  box-shadow: var(--xht-shadow-md);
}

.xht-card__body {
  padding: 25px;
}

.xht-card__body p:last-child {
  margin-bottom: 0;
}

.xht-card__icon {
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 12px;
  color: var(--xht-red-600);
  background: #fff0f2;
  font-size: 18px;
  font-weight: 900;
}

.xht-card__media {
  position: relative;
  display: grid;
  min-height: 210px;
  place-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--xht-slate-200);
  background:
    radial-gradient(circle, #ffffff 0%, #eef2f6 60%, #dde4eb 100%);
}

.xht-card__media::before {
  width: 105px;
  height: 105px;
  border: 18px solid #93a2b1;
  border-radius: 26%;
  box-shadow: inset 0 0 0 2px #6f7f90, 0 18px 28px rgba(7, 24, 44, .16);
  transform: rotate(18deg);
  content: "";
}

.xht-card__media-label {
  position: absolute;
  right: 12px;
  bottom: 10px;
  left: 12px;
  color: var(--xht-slate-500);
  font-size: 11px;
  text-align: center;
}

.xht-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--xht-red-600) !important;
  font-size: 14px;
  font-weight: 800;
}

.xht-card-link::after {
  content: "→";
}

.xht-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 18px 0;
  padding: 0;
  list-style: none;
}

.xht-tags li {
  padding: 5px 9px;
  border: 1px solid var(--xht-slate-200);
  border-radius: 999px;
  color: var(--xht-slate-700);
  background: var(--xht-slate-100);
  font-size: 12px;
  line-height: 1.3;
}

.xht-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  counter-reset: xht-step;
}

.xht-step {
  position: relative;
  padding: 28px 24px;
  border-top: 1px solid var(--xht-slate-300);
  counter-increment: xht-step;
}

.xht-step::before {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  margin: -49px 0 20px;
  border: 6px solid var(--xht-white);
  border-radius: 50%;
  color: var(--xht-white);
  background: var(--xht-red-600);
  box-sizing: content-box;
  font-size: 14px;
  font-weight: 800;
  content: counter(xht-step, decimal-leading-zero);
}

.xht-step h3 {
  font-size: 19px;
}

.xht-step p {
  margin-bottom: 0;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-evidence {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 24px;
}

.xht-evidence__large,
.xht-evidence__small {
  position: relative;
  overflow: hidden;
  min-height: 260px;
  border-radius: var(--xht-radius-md);
  background: linear-gradient(135deg, #cad4de, #f8fafc 55%, #a8b6c4);
}

.xht-evidence__large {
  min-height: 544px;
}

.xht-evidence__stack {
  display: grid;
  gap: 24px;
}

.xht-evidence__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px;
  color: var(--xht-white);
  background: linear-gradient(transparent, rgba(7, 24, 44, .92));
}

.xht-evidence__caption strong {
  display: block;
  font-size: 20px;
}

.xht-evidence__caption span {
  color: #d5e0ea;
  font-size: 13px;
}

.xht-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
  gap: 46px;
  align-items: start;
}

.xht-checklist {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.xht-checklist li {
  position: relative;
  margin-bottom: 13px;
  padding-left: 30px;
}

.xht-checklist li::before {
  position: absolute;
  top: .08em;
  left: 0;
  color: var(--xht-success);
  font-weight: 900;
  content: "✓";
}

.xht-form-shell {
  padding: 30px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-md);
}

.xht-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.xht-field--full {
  grid-column: 1 / -1;
}

.xht-form-shell label,
.xht-site .wpcf7-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--xht-slate-900);
  font-size: 13px;
  font-weight: 800;
}

.xht-form-shell input,
.xht-form-shell select,
.xht-form-shell textarea,
.xht-site .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.xht-site .wpcf7-form select,
.xht-site .wpcf7-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 13px;
  border: 1px solid var(--xht-slate-300);
  border-radius: var(--xht-radius-sm);
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font: inherit;
}

.xht-form-shell textarea,
.xht-site .wpcf7-form textarea {
  min-height: 126px;
  resize: vertical;
}

.xht-form-shell input:focus,
.xht-form-shell select:focus,
.xht-form-shell textarea:focus,
.xht-site .wpcf7-form input:focus,
.xht-site .wpcf7-form select:focus,
.xht-site .wpcf7-form textarea:focus {
  border-color: var(--xht-blue-600);
  outline: 3px solid rgba(28, 93, 146, .14);
}

.xht-form-shell button,
.xht-site .wpcf7-form input[type="submit"] {
  min-height: 50px;
  padding: 13px 22px;
  border: 0;
  border-radius: var(--xht-radius-sm);
  color: var(--xht-white);
  background: var(--xht-red-600);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  cursor: pointer;
}

.xht-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
}

.xht-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: var(--xht-white);
}

.xht-table th,
.xht-table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--xht-slate-200);
  text-align: left;
  vertical-align: top;
}

.xht-table th {
  color: var(--xht-navy-900);
  background: var(--xht-slate-100);
  font-size: 13px;
  font-weight: 800;
}

.xht-table tr:last-child td {
  border-bottom: 0;
}

.xht-note {
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  color: var(--xht-slate-700);
  background: #fff4f5;
  font-size: 14px;
}

.xht-cta-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: center;
  padding: 38px 42px;
  border-radius: var(--xht-radius-lg);
  color: var(--xht-white);
  background: linear-gradient(112deg, var(--xht-navy-900), #164c78);
}

.xht-cta-band h2 {
  margin-bottom: 8px;
  font-size: clamp(28px, 3vw, 40px);
}

.xht-cta-band p {
  margin-bottom: 0;
  color: #c9d6e2;
}

/* Contact / RFQ conversion layout. */
.xht-contact-hero {
  padding-bottom: 0;
}

.xht-contact-hero .xht-section-head {
  padding-bottom: 54px;
}

.xht-contact-hero .xht-trust-strip {
  margin-top: 0;
}

.xht-contact-channels {
  padding-top: 66px;
  padding-bottom: 66px;
}

.xht-contact-channels .xht-grid--4 {
  width: min(100%, 980px);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-inline: auto;
}

.xht-contact-channels .xht-card__body {
  display: flex;
  min-height: 220px;
  flex-direction: column;
  align-items: flex-start;
}

.xht-contact-channels .xht-card-link {
  max-width: 100%;
  margin-top: auto;
  overflow-wrap: anywhere;
  white-space: nowrap;
}

.xht-contact-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(540px, 1.22fr);
  gap: 42px;
  align-items: start;
}

.xht-contact-summary {
  position: sticky;
  top: 104px;
}

.xht-contact-summary .xht-note {
  margin-top: 28px;
}

.xht-contact-form .wpcf7-form > p {
  margin-bottom: 17px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(1),
.xht-contact-form .wpcf7-form > p:nth-of-type(3) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(4) {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(210px, .65fr);
  gap: 18px;
  align-items: end;
}

.xht-contact-form .wpcf7-form-control-wrap {
  display: block;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(5) {
  margin-top: -8px;
  color: var(--xht-slate-500);
  font-size: 12px;
}

.xht-contact-form .wpcf7-submit {
  width: 100%;
  margin-top: 14px;
}

.xht-contact-map-shell {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(520px, 1.28fr);
  gap: 38px;
  align-items: stretch;
}

.xht-contact-map-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.xht-contact-map {
  overflow: hidden;
  min-height: 390px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-slate-100);
  box-shadow: var(--xht-shadow-md);
}

.xht-contact-map iframe {
  display: block;
  width: 100%;
  height: 390px;
  border: 0;
}

.xht-contact-address {
  margin: 22px 0;
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  background: var(--xht-slate-100);
}

.xht-contact-address strong,
.xht-contact-address span {
  display: block;
}

.xht-contact-address span {
  margin-top: 4px;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-contact-process .xht-steps {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 30px;
}

.xht-mobile-actions {
  display: none;
}

[dir="rtl"] .xht-eyebrow::before,
.rtl .xht-eyebrow::before {
  order: 2;
}

[dir="rtl"] .xht-checklist li,
.rtl .xht-checklist li {
  padding-right: 30px;
  padding-left: 0;
}

[dir="rtl"] .xht-checklist li::before,
.rtl .xht-checklist li::before {
  right: 0;
  left: auto;
}

[dir="rtl"] .xht-table th,
[dir="rtl"] .xht-table td,
.rtl .xht-table th,
.rtl .xht-table td {
  text-align: right;
}

@media (max-width: 1024px) {
  .xht-hero__inner {
    min-height: auto;
    grid-template-columns: 1fr 380px;
    gap: 38px;
  }

  .xht-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 54px;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: minmax(0, .72fr) minmax(430px, 1.28fr);
  }
}

@media (max-width: 820px) {
  .xht-section {
    padding: 66px 0;
  }

  .xht-hero__inner,
  .xht-section-head,
  .xht-rfq,
  .xht-evidence {
    grid-template-columns: 1fr;
  }

  .xht-hero__inner {
    padding-top: 68px;
  }

  .xht-visual {
    min-height: 360px;
  }

  .xht-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-trust-strip__item:nth-child(2) {
    border-right: 0;
  }

  .xht-trust-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
  }

  .xht-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-cta-band {
    grid-template-columns: 1fr;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: 1fr;
  }

  .xht-contact-summary {
    position: static;
  }
}

@media (max-width: 600px) {
  .xht-container {
    width: min(100% - 28px, var(--xht-container));
  }

  .xht-section {
    padding: 54px 0;
  }

  .xht-site h1 {
    font-size: 39px;
  }

  .xht-site h2 {
    font-size: 31px;
  }

  .xht-actions,
  .xht-actions .xht-btn {
    width: 100%;
  }

  .xht-visual {
    min-height: 300px;
  }

  .xht-grid--2,
  .xht-grid--3,
  .xht-grid--4,
  .xht-steps,
  .xht-form-grid {
    grid-template-columns: 1fr;
  }

  .xht-contact-form .wpcf7-form > p:nth-of-type(1),
  .xht-contact-form .wpcf7-form > p:nth-of-type(3),
  .xht-contact-form .wpcf7-form > p:nth-of-type(4),
  .xht-contact-process .xht-steps {
    grid-template-columns: 1fr;
  }

  .xht-contact-channels .xht-card__body {
    min-height: auto;
  }

  .xht-contact-channels .xht-card-link {
    margin-top: 8px;
    white-space: normal;
  }

  .xht-contact-map,
  .xht-contact-map iframe {
    min-height: 330px;
    height: 330px;
  }

  .xht-step {
    margin-left: 22px;
    border-top: 0;
    border-left: 1px solid var(--xht-slate-300);
  }

  .xht-step::before {
    margin: 0 0 18px -51px;
  }

  .xht-evidence__large {
    min-height: 380px;
  }

  .xht-rfq {
    gap: 30px;
  }

  .xht-form-shell,
  .xht-card__body,
  .xht-cta-band {
    padding: 24px;
  }

  .xht-mobile-actions {
    position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 8px;
    gap: 8px;
    border-top: 1px solid var(--xht-slate-200);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -8px 26px rgba(7, 24, 44, .12);
  }

  .xht-mobile-actions a {
    display: grid;
    min-height: 46px;
    place-items: center;
    border-radius: var(--xht-radius-sm);
    color: var(--xht-white) !important;
    background: var(--xht-red-600);
    font-size: 13px;
    font-weight: 800;
  }

  .xht-mobile-actions a:last-child {
    background: #188758;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-site *,
  .xht-site *::before,
  .xht-site *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* XHT global layout safeguards */
html, body { overflow-x: hidden; }
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) { .site-branding img.custom-logo { width: 210px !important; } }
/* XHT Fasteners design system v1
   Scoped to .xht-site to minimize conflicts with Astra and plugins. */

:root {
  --xht-navy-950: #07182c;
  --xht-navy-900: #0b213d;
  --xht-navy-800: #123252;
  --xht-blue-600: #1c5d92;
  --xht-red-600: #d72638;
  --xht-red-700: #b91f2f;
  --xht-slate-900: #17212f;
  --xht-slate-700: #465568;
  --xht-slate-500: #6c7888;
  --xht-slate-300: #cfd7e2;
  --xht-slate-200: #e2e8f0;
  --xht-slate-100: #f3f6f9;
  --xht-white: #ffffff;
  --xht-success: #17835f;
  --xht-shadow-sm: 0 8px 24px rgba(7, 24, 44, 0.08);
  --xht-shadow-md: 0 18px 46px rgba(7, 24, 44, 0.13);
  --xht-radius-sm: 8px;
  --xht-radius-md: 14px;
  --xht-radius-lg: 22px;
  --xht-container: 1200px;
}

/* Full-width canvas while retaining Astra's global header and footer. */
.page-template-elementor_header_footer .site-content > .ast-container {
  width: 100%;
  max-width: none;
  padding: 0;
}

.page-template-elementor_header_footer .site-content,
.page-template-elementor_header_footer.ast-plain-container #primary {
  margin: 0;
}

.xht-site,
.xht-site * {
  box-sizing: border-box;
}

.xht-site {
  overflow: hidden;
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

.xht-site img {
  display: block;
  width: 100%;
  height: auto;
}

.xht-site a {
  color: inherit;
  text-decoration: none;
}

.xht-container {
  width: min(100% - 40px, var(--xht-container));
  margin-inline: auto;
}

.xht-section {
  padding: 88px 0;
}

.xht-section--soft {
  background: var(--xht-slate-100);
}

.xht-section--dark {
  color: var(--xht-white);
  background: var(--xht-navy-950);
}

.xht-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
  gap: 44px;
  align-items: end;
  margin-bottom: 40px;
}

.xht-section-head--center {
  display: block;
  max-width: 760px;
  margin: 0 auto 44px;
  text-align: center;
}

.xht-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  color: var(--xht-red-600);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.xht-eyebrow::before {
  width: 28px;
  height: 2px;
  background: currentColor;
  content: "";
}

.xht-site h1,
.xht-site h2,
.xht-site h3,
.xht-site p {
  margin-top: 0;
}

.xht-site h1,
.xht-site h2,
.xht-site h3 {
  color: inherit;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.12;
}

.xht-site h1 {
  margin-bottom: 22px;
  font-size: clamp(38px, 5vw, 66px);
}

.xht-site h2 {
  margin-bottom: 18px;
  font-size: clamp(30px, 3.4vw, 46px);
}

.xht-site h3 {
  margin-bottom: 12px;
  font-size: clamp(20px, 2vw, 25px);
}

.xht-lead {
  color: var(--xht-slate-700);
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.7;
}

.xht-muted {
  color: var(--xht-slate-500);
}

.xht-section--dark .xht-lead,
.xht-section--dark .xht-muted {
  color: #bfccda;
}

.xht-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.xht-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: var(--xht-radius-sm);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.035em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.xht-btn:hover,
.xht-btn:focus-visible {
  transform: translateY(-2px);
}

.xht-btn:focus-visible,
.xht-card-link:focus-visible {
  outline: 3px solid rgba(215, 38, 56, 0.28);
  outline-offset: 3px;
}

.xht-btn--primary {
  color: var(--xht-white) !important;
  background: var(--xht-red-600);
}

.xht-btn--primary:hover,
.xht-btn--primary:focus-visible {
  background: var(--xht-red-700);
}

.xht-btn--secondary {
  color: var(--xht-navy-900) !important;
  border-color: var(--xht-slate-300);
  background: var(--xht-white);
}

.xht-btn--ghost {
  color: var(--xht-white) !important;
  border-color: rgba(255, 255, 255, 0.38);
  background: transparent;
}

.xht-hero {
  position: relative;
  color: var(--xht-white);
  background:
    radial-gradient(circle at 76% 18%, rgba(28, 93, 146, 0.45), transparent 31%),
    linear-gradient(118deg, var(--xht-navy-950) 0%, var(--xht-navy-900) 60%, #123b63 100%);
}

.xht-hero::after {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  pointer-events: none;
  content: "";
}

.xht-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
  gap: 60px;
  align-items: center;
  padding: 82px 0 70px;
}

.xht-hero__copy {
  max-width: 710px;
}

.xht-hero h1 {
  font-size: clamp(38px, 4.65vw, 62px);
}

.xht-hero .xht-lead {
  max-width: 690px;
  color: #d6e1ec;
}

.xht-visual {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--xht-radius-lg);
  background:
    radial-gradient(circle at 50% 38%, rgba(255, 255, 255, .96), rgba(232, 237, 242, .92) 36%, rgba(156, 171, 186, .6) 68%, rgba(11, 33, 61, .55) 100%),
    var(--xht-slate-200);
  box-shadow: var(--xht-shadow-md);
}

.xht-visual::before,
.xht-visual::after {
  position: absolute;
  border: 22px solid rgba(7, 24, 44, 0.33);
  border-radius: 30%;
  content: "";
}

.xht-visual::before {
  width: 230px;
  height: 230px;
  top: 20%;
  left: 20%;
  transform: rotate(28deg);
}

.xht-visual::after {
  width: 135px;
  height: 135px;
  right: 12%;
  bottom: 9%;
  transform: rotate(-12deg);
}

.xht-visual__label {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 13px 15px;
  border-radius: var(--xht-radius-sm);
  color: #dce6ef;
  background: rgba(7, 24, 44, 0.9);
  font-size: 13px;
  line-height: 1.45;
}

.xht-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item {
  padding: 20px 18px;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item:last-child {
  border-right: 0;
}

.xht-trust-strip strong {
  display: block;
  margin-bottom: 3px;
  color: var(--xht-white);
  font-size: 15px;
}

.xht-trust-strip span {
  color: #aebdcb;
  font-size: 13px;
}

.xht-grid {
  display: grid;
  gap: 24px;
}

.xht-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.xht-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xht-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xht-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-sm);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.xht-card:hover {
  transform: translateY(-4px);
  border-color: #aab7c6;
  box-shadow: var(--xht-shadow-md);
}

.xht-card__body {
  padding: 25px;
}

.xht-card__body p:last-child {
  margin-bottom: 0;
}

.xht-card__icon {
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 12px;
  color: var(--xht-red-600);
  background: #fff0f2;
  font-size: 18px;
  font-weight: 900;
}

.xht-card__media {
  position: relative;
  display: grid;
  min-height: 210px;
  place-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--xht-slate-200);
  background:
    radial-gradient(circle, #ffffff 0%, #eef2f6 60%, #dde4eb 100%);
}

.xht-card__media::before {
  width: 105px;
  height: 105px;
  border: 18px solid #93a2b1;
  border-radius: 26%;
  box-shadow: inset 0 0 0 2px #6f7f90, 0 18px 28px rgba(7, 24, 44, .16);
  transform: rotate(18deg);
  content: "";
}

.xht-card__media-label {
  position: absolute;
  right: 12px;
  bottom: 10px;
  left: 12px;
  color: var(--xht-slate-500);
  font-size: 11px;
  text-align: center;
}

.xht-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--xht-red-600) !important;
  font-size: 14px;
  font-weight: 800;
}

.xht-card-link::after {
  content: "→";
}

.xht-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 18px 0;
  padding: 0;
  list-style: none;
}

.xht-tags li {
  padding: 5px 9px;
  border: 1px solid var(--xht-slate-200);
  border-radius: 999px;
  color: var(--xht-slate-700);
  background: var(--xht-slate-100);
  font-size: 12px;
  line-height: 1.3;
}

.xht-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  counter-reset: xht-step;
}

.xht-step {
  position: relative;
  padding: 28px 24px;
  border-top: 1px solid var(--xht-slate-300);
  counter-increment: xht-step;
}

.xht-step::before {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  margin: -49px 0 20px;
  border: 6px solid var(--xht-white);
  border-radius: 50%;
  color: var(--xht-white);
  background: var(--xht-red-600);
  box-sizing: content-box;
  font-size: 14px;
  font-weight: 800;
  content: counter(xht-step, decimal-leading-zero);
}

.xht-step h3 {
  font-size: 19px;
}

.xht-step p {
  margin-bottom: 0;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-evidence {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 24px;
}

.xht-evidence__large,
.xht-evidence__small {
  position: relative;
  overflow: hidden;
  min-height: 260px;
  border-radius: var(--xht-radius-md);
  background: linear-gradient(135deg, #cad4de, #f8fafc 55%, #a8b6c4);
}

.xht-evidence__large {
  min-height: 544px;
}

.xht-evidence__stack {
  display: grid;
  gap: 24px;
}

.xht-evidence__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px;
  color: var(--xht-white);
  background: linear-gradient(transparent, rgba(7, 24, 44, .92));
}

.xht-evidence__caption strong {
  display: block;
  font-size: 20px;
}

.xht-evidence__caption span {
  color: #d5e0ea;
  font-size: 13px;
}

.xht-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
  gap: 46px;
  align-items: start;
}

.xht-checklist {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.xht-checklist li {
  position: relative;
  margin-bottom: 13px;
  padding-left: 30px;
}

.xht-checklist li::before {
  position: absolute;
  top: .08em;
  left: 0;
  color: var(--xht-success);
  font-weight: 900;
  content: "✓";
}

.xht-form-shell {
  padding: 30px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-md);
}

.xht-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.xht-field--full {
  grid-column: 1 / -1;
}

.xht-form-shell label,
.xht-site .wpcf7-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--xht-slate-900);
  font-size: 13px;
  font-weight: 800;
}

.xht-form-shell input,
.xht-form-shell select,
.xht-form-shell textarea,
.xht-site .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.xht-site .wpcf7-form select,
.xht-site .wpcf7-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 13px;
  border: 1px solid var(--xht-slate-300);
  border-radius: var(--xht-radius-sm);
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font: inherit;
}

.xht-form-shell textarea,
.xht-site .wpcf7-form textarea {
  min-height: 126px;
  resize: vertical;
}

.xht-form-shell input:focus,
.xht-form-shell select:focus,
.xht-form-shell textarea:focus,
.xht-site .wpcf7-form input:focus,
.xht-site .wpcf7-form select:focus,
.xht-site .wpcf7-form textarea:focus {
  border-color: var(--xht-blue-600);
  outline: 3px solid rgba(28, 93, 146, .14);
}

.xht-form-shell button,
.xht-site .wpcf7-form input[type="submit"] {
  min-height: 50px;
  padding: 13px 22px;
  border: 0;
  border-radius: var(--xht-radius-sm);
  color: var(--xht-white);
  background: var(--xht-red-600);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  cursor: pointer;
}

.xht-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
}

.xht-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: var(--xht-white);
}

.xht-table th,
.xht-table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--xht-slate-200);
  text-align: left;
  vertical-align: top;
}

.xht-table th {
  color: var(--xht-navy-900);
  background: var(--xht-slate-100);
  font-size: 13px;
  font-weight: 800;
}

.xht-table tr:last-child td {
  border-bottom: 0;
}

.xht-note {
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  color: var(--xht-slate-700);
  background: #fff4f5;
  font-size: 14px;
}

.xht-cta-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: center;
  padding: 38px 42px;
  border-radius: var(--xht-radius-lg);
  color: var(--xht-white);
  background: linear-gradient(112deg, var(--xht-navy-900), #164c78);
}

.xht-cta-band h2 {
  margin-bottom: 8px;
  font-size: clamp(28px, 3vw, 40px);
}

.xht-cta-band p {
  margin-bottom: 0;
  color: #c9d6e2;
}

/* Contact / RFQ conversion layout. */
.xht-contact-hero {
  padding-bottom: 0;
}

.xht-contact-hero .xht-section-head {
  padding-bottom: 54px;
}

.xht-contact-hero .xht-trust-strip {
  margin-top: 0;
}

.xht-contact-channels {
  padding-top: 66px;
  padding-bottom: 66px;
}

.xht-contact-channels .xht-card__body {
  min-height: 238px;
}

.xht-contact-channels .xht-card-link {
  overflow-wrap: anywhere;
}

.xht-contact-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(540px, 1.22fr);
  gap: 42px;
  align-items: start;
}

.xht-contact-summary {
  position: sticky;
  top: 104px;
}

.xht-contact-summary .xht-note {
  margin-top: 28px;
}

.xht-contact-form .wpcf7-form > p {
  margin-bottom: 17px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(1),
.xht-contact-form .wpcf7-form > p:nth-of-type(3) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(4) {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(210px, .65fr);
  gap: 18px;
  align-items: end;
}

.xht-contact-form .wpcf7-form-control-wrap {
  display: block;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(5) {
  margin-top: -8px;
  color: var(--xht-slate-500);
  font-size: 12px;
}

.xht-contact-form .wpcf7-submit {
  width: 100%;
  margin-top: 14px;
}

.xht-contact-map-shell {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(520px, 1.28fr);
  gap: 38px;
  align-items: stretch;
}

.xht-contact-map-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.xht-contact-map {
  overflow: hidden;
  min-height: 390px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-slate-100);
  box-shadow: var(--xht-shadow-md);
}

.xht-contact-map iframe {
  display: block;
  width: 100%;
  height: 390px;
  border: 0;
}

.xht-contact-address {
  margin: 22px 0;
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  background: var(--xht-slate-100);
}

.xht-contact-address strong,
.xht-contact-address span {
  display: block;
}

.xht-contact-address span {
  margin-top: 4px;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-contact-process .xht-steps {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 30px;
}

.xht-mobile-actions {
  display: none;
}

[dir="rtl"] .xht-eyebrow::before,
.rtl .xht-eyebrow::before {
  order: 2;
}

[dir="rtl"] .xht-checklist li,
.rtl .xht-checklist li {
  padding-right: 30px;
  padding-left: 0;
}

[dir="rtl"] .xht-checklist li::before,
.rtl .xht-checklist li::before {
  right: 0;
  left: auto;
}

[dir="rtl"] .xht-table th,
[dir="rtl"] .xht-table td,
.rtl .xht-table th,
.rtl .xht-table td {
  text-align: right;
}

@media (max-width: 1024px) {
  .xht-hero__inner {
    min-height: auto;
    grid-template-columns: 1fr 380px;
    gap: 38px;
  }

  .xht-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 54px;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: minmax(0, .72fr) minmax(430px, 1.28fr);
  }
}

@media (max-width: 820px) {
  .xht-section {
    padding: 66px 0;
  }

  .xht-hero__inner,
  .xht-section-head,
  .xht-rfq,
  .xht-evidence {
    grid-template-columns: 1fr;
  }

  .xht-hero__inner {
    padding-top: 68px;
  }

  .xht-visual {
    min-height: 360px;
  }

  .xht-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-trust-strip__item:nth-child(2) {
    border-right: 0;
  }

  .xht-trust-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
  }

  .xht-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-cta-band {
    grid-template-columns: 1fr;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: 1fr;
  }

  .xht-contact-summary {
    position: static;
  }
}

@media (max-width: 600px) {
  .xht-container {
    width: min(100% - 28px, var(--xht-container));
  }

  .xht-section {
    padding: 54px 0;
  }

  .xht-site h1 {
    font-size: 39px;
  }

  .xht-site h2 {
    font-size: 31px;
  }

  .xht-actions,
  .xht-actions .xht-btn {
    width: 100%;
  }

  .xht-visual {
    min-height: 300px;
  }

  .xht-grid--2,
  .xht-grid--3,
  .xht-grid--4,
  .xht-steps,
  .xht-form-grid {
    grid-template-columns: 1fr;
  }

  .xht-contact-form .wpcf7-form > p:nth-of-type(1),
  .xht-contact-form .wpcf7-form > p:nth-of-type(3),
  .xht-contact-form .wpcf7-form > p:nth-of-type(4),
  .xht-contact-process .xht-steps {
    grid-template-columns: 1fr;
  }

  .xht-contact-channels .xht-card__body {
    min-height: auto;
  }

  .xht-contact-map,
  .xht-contact-map iframe {
    min-height: 330px;
    height: 330px;
  }

  .xht-step {
    margin-left: 22px;
    border-top: 0;
    border-left: 1px solid var(--xht-slate-300);
  }

  .xht-step::before {
    margin: 0 0 18px -51px;
  }

  .xht-evidence__large {
    min-height: 380px;
  }

  .xht-rfq {
    gap: 30px;
  }

  .xht-form-shell,
  .xht-card__body,
  .xht-cta-band {
    padding: 24px;
  }

  .xht-mobile-actions {
    position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 8px;
    gap: 8px;
    border-top: 1px solid var(--xht-slate-200);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -8px 26px rgba(7, 24, 44, .12);
  }

  .xht-mobile-actions a {
    display: grid;
    min-height: 46px;
    place-items: center;
    border-radius: var(--xht-radius-sm);
    color: var(--xht-white) !important;
    background: var(--xht-red-600);
    font-size: 13px;
    font-weight: 800;
  }

  .xht-mobile-actions a:last-child {
    background: #188758;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-site *,
  .xht-site *::before,
  .xht-site *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* XHT global layout safeguards */
html, body { overflow-x: hidden; }
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) { .site-branding img.custom-logo { width: 210px !important; } }

  overflow: hidden;
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

.xht-site img {
  display: block;
  width: 100%;
  height: auto;
}

.xht-site a {
  color: inherit;
  text-decoration: none;
}

.xht-container {
  width: min(100% - 40px, var(--xht-container));
  margin-inline: auto;
}

.xht-section {
  padding: 88px 0;
}

.xht-section--soft {
  background: var(--xht-slate-100);
}

.xht-section--dark {
  color: var(--xht-white);
  background: var(--xht-navy-950);
}

.xht-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
  gap: 44px;
  align-items: end;
  margin-bottom: 40px;
}

.xht-section-head--center {
  display: block;
  max-width: 760px;
  margin: 0 auto 44px;
  text-align: center;
}

.xht-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  color: var(--xht-red-600);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.xht-eyebrow::before {
  width: 28px;
  height: 2px;
  background: currentColor;
  content: "";
}

.xht-site h1,
.xht-site h2,
.xht-site h3,
.xht-site p {
  margin-top: 0;
}

.xht-site h1,
.xht-site h2,
.xht-site h3 {
  color: inherit;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.12;
}

.xht-site h1 {
  margin-bottom: 22px;
  font-size: clamp(38px, 5vw, 66px);
}

.xht-site h2 {
  margin-bottom: 18px;
  font-size: clamp(30px, 3.4vw, 46px);
}

.xht-site h3 {
  margin-bottom: 12px;
  font-size: clamp(20px, 2vw, 25px);
}

.xht-lead {
  color: var(--xht-slate-700);
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.7;
}

.xht-muted {
  color: var(--xht-slate-500);
}

.xht-section--dark .xht-lead,
.xht-section--dark .xht-muted {
  color: #bfccda;
}

.xht-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.xht-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: var(--xht-radius-sm);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.035em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.xht-btn:hover,
.xht-btn:focus-visible {
  transform: translateY(-2px);
}

.xht-btn:focus-visible,
.xht-card-link:focus-visible {
  outline: 3px solid rgba(215, 38, 56, 0.28);
  outline-offset: 3px;
}

.xht-btn--primary {
  color: var(--xht-white) !important;
  background: var(--xht-red-600);
}

.xht-btn--primary:hover,
.xht-btn--primary:focus-visible {
  background: var(--xht-red-700);
}

.xht-btn--secondary {
  color: var(--xht-navy-900) !important;
  border-color: var(--xht-slate-300);
  background: var(--xht-white);
}

.xht-btn--ghost {
  color: var(--xht-white) !important;
  border-color: rgba(255, 255, 255, 0.38);
  background: transparent;
}

.xht-hero {
  position: relative;
  color: var(--xht-white);
  background:
    radial-gradient(circle at 76% 18%, rgba(28, 93, 146, 0.45), transparent 31%),
    linear-gradient(118deg, var(--xht-navy-950) 0%, var(--xht-navy-900) 60%, #123b63 100%);
}

.xht-hero::after {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  pointer-events: none;
  content: "";
}

.xht-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
  gap: 60px;
  align-items: center;
  padding: 82px 0 70px;
}

.xht-hero__copy {
  max-width: 710px;
}

.xht-hero h1 {
  font-size: clamp(38px, 4.65vw, 62px);
}

.xht-hero .xht-lead {
  max-width: 690px;
  color: #d6e1ec;
}

.xht-visual {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--xht-radius-lg);
  background:
    radial-gradient(circle at 50% 38%, rgba(255, 255, 255, .96), rgba(232, 237, 242, .92) 36%, rgba(156, 171, 186, .6) 68%, rgba(11, 33, 61, .55) 100%),
    var(--xht-slate-200);
  box-shadow: var(--xht-shadow-md);
}

.xht-visual::before,
.xht-visual::after {
  position: absolute;
  border: 22px solid rgba(7, 24, 44, 0.33);
  border-radius: 30%;
  content: "";
}

.xht-visual::before {
  width: 230px;
  height: 230px;
  top: 20%;
  left: 20%;
  transform: rotate(28deg);
}

.xht-visual::after {
  width: 135px;
  height: 135px;
  right: 12%;
  bottom: 9%;
  transform: rotate(-12deg);
}

.xht-visual__label {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 13px 15px;
  border-radius: var(--xht-radius-sm);
  color: #dce6ef;
  background: rgba(7, 24, 44, 0.9);
  font-size: 13px;
  line-height: 1.45;
}

.xht-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item {
  padding: 20px 18px;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item:last-child {
  border-right: 0;
}

.xht-trust-strip strong {
  display: block;
  margin-bottom: 3px;
  color: var(--xht-white);
  font-size: 15px;
}

.xht-trust-strip span {
  color: #aebdcb;
  font-size: 13px;
}

.xht-grid {
  display: grid;
  gap: 24px;
}

.xht-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.xht-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xht-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xht-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-sm);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.xht-card:hover {
  transform: translateY(-4px);
  border-color: #aab7c6;
  box-shadow: var(--xht-shadow-md);
}

.xht-card__body {
  padding: 25px;
}

.xht-card__body p:last-child {
  margin-bottom: 0;
}

.xht-card__icon {
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 12px;
  color: var(--xht-red-600);
  background: #fff0f2;
  font-size: 18px;
  font-weight: 900;
}

.xht-card__media {
  position: relative;
  display: grid;
  min-height: 210px;
  place-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--xht-slate-200);
  background:
    radial-gradient(circle, #ffffff 0%, #eef2f6 60%, #dde4eb 100%);
}

.xht-card__media::before {
  width: 105px;
  height: 105px;
  border: 18px solid #93a2b1;
  border-radius: 26%;
  box-shadow: inset 0 0 0 2px #6f7f90, 0 18px 28px rgba(7, 24, 44, .16);
  transform: rotate(18deg);
  content: "";
}

.xht-card__media-label {
  position: absolute;
  right: 12px;
  bottom: 10px;
  left: 12px;
  color: var(--xht-slate-500);
  font-size: 11px;
  text-align: center;
}

.xht-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--xht-red-600) !important;
  font-size: 14px;
  font-weight: 800;
}

.xht-card-link::after {
  content: "→";
}

.xht-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 18px 0;
  padding: 0;
  list-style: none;
}

.xht-tags li {
  padding: 5px 9px;
  border: 1px solid var(--xht-slate-200);
  border-radius: 999px;
  color: var(--xht-slate-700);
  background: var(--xht-slate-100);
  font-size: 12px;
  line-height: 1.3;
}

.xht-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  counter-reset: xht-step;
}

.xht-step {
  position: relative;
  padding: 28px 24px;
  border-top: 1px solid var(--xht-slate-300);
  counter-increment: xht-step;
}

.xht-step::before {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  margin: -49px 0 20px;
  border: 6px solid var(--xht-white);
  border-radius: 50%;
  color: var(--xht-white);
  background: var(--xht-red-600);
  box-sizing: content-box;
  font-size: 14px;
  font-weight: 800;
  content: counter(xht-step, decimal-leading-zero);
}

.xht-step h3 {
  font-size: 19px;
}

.xht-step p {
  margin-bottom: 0;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-evidence {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 24px;
}

.xht-evidence__large,
.xht-evidence__small {
  position: relative;
  overflow: hidden;
  min-height: 260px;
  border-radius: var(--xht-radius-md);
  background: linear-gradient(135deg, #cad4de, #f8fafc 55%, #a8b6c4);
}

.xht-evidence__large {
  min-height: 544px;
}

.xht-evidence__stack {
  display: grid;
  gap: 24px;
}

.xht-evidence__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px;
  color: var(--xht-white);
  background: linear-gradient(transparent, rgba(7, 24, 44, .92));
}

.xht-evidence__caption strong {
  display: block;
  font-size: 20px;
}

.xht-evidence__caption span {
  color: #d5e0ea;
  font-size: 13px;
}

.xht-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
  gap: 46px;
  align-items: start;
}

.xht-checklist {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.xht-checklist li {
  position: relative;
  margin-bottom: 13px;
  padding-left: 30px;
}

.xht-checklist li::before {
  position: absolute;
  top: .08em;
  left: 0;
  color: var(--xht-success);
  font-weight: 900;
  content: "✓";
}

.xht-form-shell {
  padding: 30px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-md);
}

.xht-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.xht-field--full {
  grid-column: 1 / -1;
}

.xht-form-shell label,
.xht-site .wpcf7-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--xht-slate-900);
  font-size: 13px;
  font-weight: 800;
}

.xht-form-shell input,
.xht-form-shell select,
.xht-form-shell textarea,
.xht-site .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.xht-site .wpcf7-form select,
.xht-site .wpcf7-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 13px;
  border: 1px solid var(--xht-slate-300);
  border-radius: var(--xht-radius-sm);
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font: inherit;
}

.xht-form-shell textarea,
.xht-site .wpcf7-form textarea {
  min-height: 126px;
  resize: vertical;
}

.xht-form-shell input:focus,
.xht-form-shell select:focus,
.xht-form-shell textarea:focus,
.xht-site .wpcf7-form input:focus,
.xht-site .wpcf7-form select:focus,
.xht-site .wpcf7-form textarea:focus {
  border-color: var(--xht-blue-600);
  outline: 3px solid rgba(28, 93, 146, .14);
}

.xht-form-shell button,
.xht-site .wpcf7-form input[type="submit"] {
  min-height: 50px;
  padding: 13px 22px;
  border: 0;
  border-radius: var(--xht-radius-sm);
  color: var(--xht-white);
  background: var(--xht-red-600);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  cursor: pointer;
}

.xht-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
}

.xht-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: var(--xht-white);
}

.xht-table th,
.xht-table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--xht-slate-200);
  text-align: left;
  vertical-align: top;
}

.xht-table th {
  color: var(--xht-navy-900);
  background: var(--xht-slate-100);
  font-size: 13px;
  font-weight: 800;
}

.xht-table tr:last-child td {
  border-bottom: 0;
}

.xht-note {
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  color: var(--xht-slate-700);
  background: #fff4f5;
  font-size: 14px;
}

.xht-cta-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: center;
  padding: 38px 42px;
  border-radius: var(--xht-radius-lg);
  color: var(--xht-white);
  background: linear-gradient(112deg, var(--xht-navy-900), #164c78);
}

.xht-cta-band h2 {
  margin-bottom: 8px;
  font-size: clamp(28px, 3vw, 40px);
}

.xht-cta-band p {
  margin-bottom: 0;
  color: #c9d6e2;
}

.xht-mobile-actions {
  display: none;
}

[dir="rtl"] .xht-eyebrow::before,
.rtl .xht-eyebrow::before {
  order: 2;
}

[dir="rtl"] .xht-checklist li,
.rtl .xht-checklist li {
  padding-right: 30px;
  padding-left: 0;
}

[dir="rtl"] .xht-checklist li::before,
.rtl .xht-checklist li::before {
  right: 0;
  left: auto;
}

[dir="rtl"] .xht-table th,
[dir="rtl"] .xht-table td,
.rtl .xht-table th,
.rtl .xht-table td {
  text-align: right;
}

@media (max-width: 1024px) {
  .xht-hero__inner {
    min-height: auto;
    grid-template-columns: 1fr 380px;
    gap: 38px;
  }

  .xht-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 54px;
  }
}

@media (max-width: 820px) {
  .xht-section {
    padding: 66px 0;
  }

  .xht-hero__inner,
  .xht-section-head,
  .xht-rfq,
  .xht-evidence {
    grid-template-columns: 1fr;
  }

  .xht-hero__inner {
    padding-top: 68px;
  }

  .xht-visual {
    min-height: 360px;
  }

  .xht-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-trust-strip__item:nth-child(2) {
    border-right: 0;
  }

  .xht-trust-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
  }

  .xht-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-cta-band {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .xht-container {
    width: min(100% - 28px, var(--xht-container));
  }

  .xht-section {
    padding: 54px 0;
  }

  .xht-site h1 {
    font-size: 39px;
  }

  .xht-site h2 {
    font-size: 31px;
  }

  .xht-actions,
  .xht-actions .xht-btn {
    width: 100%;
  }

  .xht-visual {
    min-height: 300px;
  }

  .xht-grid--2,
  .xht-grid--3,
  .xht-grid--4,
  .xht-steps,
  .xht-form-grid {
    grid-template-columns: 1fr;
  }

  .xht-step {
    margin-left: 22px;
    border-top: 0;
    border-left: 1px solid var(--xht-slate-300);
  }

  .xht-step::before {
    margin: 0 0 18px -51px;
  }

  .xht-evidence__large {
    min-height: 380px;
  }

  .xht-rfq {
    gap: 30px;
  }

  .xht-form-shell,
  .xht-card__body,
  .xht-cta-band {
    padding: 24px;
  }

  .xht-mobile-actions {
    position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 8px;
    gap: 8px;
    border-top: 1px solid var(--xht-slate-200);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -8px 26px rgba(7, 24, 44, .12);
  }

  .xht-mobile-actions a {
    display: grid;
    min-height: 46px;
    place-items: center;
    border-radius: var(--xht-radius-sm);
    color: var(--xht-white) !important;
    background: var(--xht-red-600);
    font-size: 13px;
    font-weight: 800;
  }

  .xht-mobile-actions a:last-child {
    background: #188758;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-site *,
  .xht-site *::before,
  .xht-site *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* XHT global layout safeguards */
html, body { overflow-x: hidden; }
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) { .site-branding img.custom-logo { width: 210px !important; } }
/* Prevent full-width page sections from creating horizontal scrollbars. */
html, body { overflow-x: hidden; }

/* Keep the horizontal brand mark compact and avoid duplicate branding text. */
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) {
  .site-branding img.custom-logo { width: 210px !important; }}/* Prevent full-width page sections from creating horizontal scrollbars. */
html, body { overflow-x: hidden; }

/* XHT site-wide floating contact: WeChat + full RFQ */
.xht-mobile-actions {
  display: none !important;
}

.xht-floating-contact,
.xht-floating-contact * {
  box-sizing: border-box;
}

.xht-floating-contact {
  position: fixed;
  right: 24px;
  bottom: 96px;
  z-index: 9998;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  width: max-content;
  max-width: calc(100vw - 32px);
  color: #07182c;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.35;
  text-align: left;
}

.xht-floating-contact .xht-i18n {
  display: none;
}

html[lang^="en"] .xht-floating-contact .xht-i18n-en,
html[lang^="zh"] .xht-floating-contact .xht-i18n-zh,
html[lang^="ar"] .xht-floating-contact .xht-i18n-ar,
html[lang^="ru"] .xht-floating-contact .xht-i18n-ru,
html[lang^="es"] .xht-floating-contact .xht-i18n-es {
  display: inline;
}

html[lang^="en"] .xht-floating-contact .xht-rfq-link.xht-i18n-en,
html[lang^="zh"] .xht-floating-contact .xht-rfq-link.xht-i18n-zh,
html[lang^="ar"] .xht-floating-contact .xht-rfq-link.xht-i18n-ar,
html[lang^="ru"] .xht-floating-contact .xht-rfq-link.xht-i18n-ru,
html[lang^="es"] .xht-floating-contact .xht-rfq-link.xht-i18n-es {
  display: flex;
}

.xht-wechat-fab {
  position: relative;
  margin: 0;
  padding: 0;
}

.xht-wechat-fab > summary {
  list-style: none;
}

.xht-wechat-fab > summary::-webkit-details-marker {
  display: none;
}

.xht-float-action {
  width: 154px;
  min-height: 50px;
  margin: 0;
  padding: 7px 12px 7px 8px;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(7, 24, 44, .16);
  border-radius: 999px;
  color: #07182c !important;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 10px 28px rgba(7, 24, 44, .16);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.2;
  text-decoration: none !important;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.xht-wechat-fab > summary.xht-float-action {
  display: flex;
}

.xht-float-action:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(7, 24, 44, .22);
}

.xht-wechat-fab > summary.xht-float-action:hover,
.xht-wechat-fab[open] > summary.xht-float-action {
  border-color: rgba(7, 193, 96, .62);
}

.xht-rfq-link:hover {
  border-color: rgba(215, 38, 56, .62);
}

.xht-float-action:focus-visible {
  outline: 3px solid rgba(28, 93, 146, .32);
  outline-offset: 3px;
}

.xht-float-symbol {
  display: inline-grid;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: -.02em;
}

.xht-wechat-symbol {
  background: #07c160;
  font-size: 17px;
}

.xht-rfq-symbol {
  background: #d72638;
  font-size: 10px;
  letter-spacing: .02em;
}

.xht-float-text {
  flex: 1 1 auto;
  white-space: nowrap;
}

.xht-wechat-fab > summary::after {
  content: "+";
  flex: 0 0 auto;
  color: #6c7888;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  transition: transform .18s ease;
}

.xht-wechat-fab[open] > summary::after {
  content: "×";
  transform: rotate(90deg);
}

.xht-wechat-card {
  position: absolute;
  right: 0;
  bottom: calc(100% + 12px);
  width: 268px;
  padding: 18px;
  border: 1px solid rgba(7, 24, 44, .12);
  border-radius: 18px;
  color: #17212f;
  background: #fff;
  box-shadow: 0 20px 54px rgba(7, 24, 44, .22);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px) scale(.985);
  transform-origin: bottom right;
  transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
}

.xht-wechat-fab:hover .xht-wechat-card,
.xht-wechat-fab:focus-within .xht-wechat-card,
.xht-wechat-fab[open] .xht-wechat-card {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.xht-qr-placeholder,
.xht-wechat-qr {
  display: grid;
  width: 176px;
  height: 176px;
  margin: 0 auto 13px;
  place-items: center;
  border: 1px dashed #b8c3d1;
  border-radius: 12px;
  background:
    linear-gradient(45deg, #f3f6f9 25%, transparent 25%) 0 0 / 16px 16px,
    linear-gradient(-45deg, #f3f6f9 25%, transparent 25%) 0 8px / 16px 16px,
    linear-gradient(45deg, transparent 75%, #f3f6f9 75%) 8px -8px / 16px 16px,
    linear-gradient(-45deg, transparent 75%, #f3f6f9 75%) -8px 0 / 16px 16px,
    #fff;
  object-fit: contain;
}

.xht-qr-placeholder span {
  display: grid;
  width: 54px;
  height: 54px;
  place-items: center;
  border-radius: 12px;
  color: #fff;
  background: #07c160;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: .08em;
}

.xht-wechat-card strong,
.xht-wechat-card .xht-qr-status,
.xht-wechat-card small {
  display: block;
  text-align: center;
}

.xht-wechat-card strong {
  margin-bottom: 5px;
  color: #07182c;
  font-size: 16px;
}

.xht-wechat-card .xht-qr-status {
  margin-bottom: 7px;
  color: #17835f;
  font-size: 12px;
  font-weight: 800;
}

.xht-wechat-card small {
  color: #5f6d7c;
  font-size: 12px;
  line-height: 1.5;
}

html[dir="rtl"] .xht-floating-contact {
  right: auto;
  left: 24px;
  align-items: flex-start;
  text-align: right;
}

html[dir="rtl"] .xht-wechat-card {
  right: auto;
  left: 0;
  transform-origin: bottom left;
}

@media (max-width: 767px) {
  .xht-floating-contact {
    right: 14px;
    bottom: 82px;
    max-width: calc(100vw - 28px);
    gap: 8px;
  }

  html[dir="rtl"] .xht-floating-contact {
    right: auto;
    left: 14px;
  }

  .xht-float-action {
    width: 138px;
    min-height: 46px;
    padding: 5px 10px 5px 6px;
    gap: 8px;
    font-size: 13px;
  }

  .xht-float-symbol {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
  }

  .xht-wechat-card {
    width: min(264px, calc(100vw - 28px));
    padding: 16px;
  }

  .xht-qr-placeholder,
  .xht-wechat-qr {
    width: 164px;
    height: 164px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-floating-contact *,
  .xht-floating-contact *::before,
  .xht-floating-contact *::after {
    transition: none !important;
  }
}

/* Neutralize WordPress automatic paragraph and line-break markup inside the fixed UI. */
.xht-floating-contact br {
  display: none !important;
}

.xht-floating-contact > p {
  display: contents;
  margin: 0;
  padding: 0;
}

.xht-wechat-card > p {
  margin: 0;
  padding: 0;
}

@media (max-width: 767px) and (max-height: 560px) {
  .xht-wechat-card {
    padding: 12px;
  }

  .xht-qr-placeholder,
  .xht-wechat-qr {
    width: 126px;
    height: 126px;
    margin-bottom: 8px;
  }

  .xht-wechat-card strong {
    margin-bottom: 3px;
    font-size: 15px;
  }

  .xht-wechat-card .xht-qr-status {
    margin-bottom: 4px;
  }

  .xht-wechat-card small {
    font-size: 11px;
    line-height: 1.35;
  }
}
/* XHT unified vertical contact dock v1 */
.xht-contact-dock{box-sizing:border-box;position:fixed;top:50%;right:18px;transform:translateY(-50%);z-index:9998;width:58px;padding:7px 5px;display:flex;flex-direction:column;align-items:center;background:#fff;border:1px solid rgba(11,33,61,.1);border-radius:999px;box-shadow:0 8px 26px rgba(11,33,61,.18);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
.xht-contact-dock *{box-sizing:border-box;}
.xht-contact-dock>details{position:relative;width:48px;height:48px;margin:0;padding:0;}
.xht-contact-dock summary{list-style:none;}
.xht-contact-dock summary::-webkit-details-marker{display:none;}
.xht-contact-dock .xht-dock-action{position:relative;width:48px;height:48px;margin:0;padding:0;display:flex!important;align-items:center;justify-content:center;color:#f5a000;background:transparent;border:0;border-radius:50%;text-decoration:none!important;cursor:pointer;transition:color .18s ease,background .18s ease,transform .18s ease;}
.xht-contact-dock>details:not(:last-child)>summary,.xht-contact-dock>a:not(:last-child){border-bottom:1px solid #eef1f5;}
.xht-contact-dock .xht-dock-action:hover,.xht-contact-dock .xht-dock-action:focus-visible,.xht-contact-dock details[open]>.xht-dock-action{color:#df8700;background:#fff4d6;outline:0;}
.xht-contact-dock .xht-dock-action:focus-visible{box-shadow:0 0 0 3px rgba(245,160,0,.24);}
.xht-contact-dock .xht-dock-icon{display:block;width:27px;height:27px;fill:currentColor;pointer-events:none;}
.xht-contact-dock .xht-dock-wechat .xht-dock-icon{width:30px;height:30px;}
.xht-contact-dock .xht-dock-tip{position:absolute;top:50%;right:calc(100% + 12px);transform:translate(6px,-50%);display:block;min-width:max-content;padding:7px 10px;color:#fff;background:#0b213d;border-radius:8px;font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;box-shadow:0 6px 18px rgba(11,33,61,.2);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;}
.xht-contact-dock .xht-dock-tip:after{content:"";position:absolute;top:50%;left:100%;transform:translateY(-50%);border:5px solid transparent;border-left-color:#0b213d;}
.xht-contact-dock .xht-dock-action:hover .xht-dock-tip,.xht-contact-dock .xht-dock-action:focus-visible .xht-dock-tip{opacity:1;visibility:visible;transform:translate(0,-50%);}
.xht-contact-dock details[open] .xht-dock-tip{opacity:0!important;visibility:hidden!important;}
.xht-contact-dock .xht-dock-i18n{display:none;}
html[lang^="en"] .xht-contact-dock .xht-dock-en,html[lang^="zh"] .xht-contact-dock .xht-dock-zh,html[lang^="ar"] .xht-contact-dock .xht-dock-ar,html[lang^="ru"] .xht-contact-dock .xht-dock-ru,html[lang^="es"] .xht-contact-dock .xht-dock-es{display:inline;}
.xht-contact-dock .xht-dock-qr-card{position:absolute;top:-20px;right:calc(100% + 14px);width:236px;padding:14px;display:none;flex-direction:column;align-items:center;gap:6px;color:#0b213d;background:#fff;border:1px solid rgba(11,33,61,.12);border-radius:18px;box-shadow:0 14px 38px rgba(11,33,61,.22);text-align:center;}
.xht-contact-dock details[open]>.xht-dock-qr-card{display:flex;}
.xht-contact-dock .xht-dock-whatsapp-card{top:-116px;}
.xht-contact-dock .xht-dock-qr{display:block!important;width:176px!important;height:176px!important;max-width:none!important;margin:0!important;padding:4px;object-fit:contain;background:#fff;border:1px solid #e4e9ef;border-radius:12px;}
.xht-contact-dock .xht-dock-qr-card strong{display:block;color:#0b213d;font-size:14px;line-height:1.35;}
.xht-contact-dock .xht-dock-qr-card small{display:block;color:#5b6b7f;font-size:11px;line-height:1.4;}
.xht-contact-dock .xht-dock-direct{display:inline-flex;align-items:center;justify-content:center;margin-top:3px;padding:7px 12px;color:#fff!important;background:#25d366;border-radius:999px;font-size:12px;font-weight:800;line-height:1.2;text-decoration:none!important;}
.xht-contact-dock .xht-dock-direct:hover,.xht-contact-dock .xht-dock-direct:focus-visible{background:#1fae55;}
@media(max-width:782px){.xht-contact-dock{right:10px;width:52px;padding:5px 3px;}.xht-contact-dock>details,.xht-contact-dock .xht-dock-action{width:44px;height:44px;}.xht-contact-dock .xht-dock-icon{width:24px;height:24px;}.xht-contact-dock .xht-dock-wechat .xht-dock-icon{width:27px;height:27px;}.xht-contact-dock .xht-dock-tip{display:none;}.xht-contact-dock .xht-dock-qr-card{right:calc(100% + 10px);top:-18px;width:220px;padding:12px;}.xht-contact-dock .xht-dock-whatsapp-card{top:-106px;}.xht-contact-dock .xht-dock-qr{width:158px!important;height:158px!important;}.xht-contact-dock .xht-dock-qr-card strong{font-size:13px;}.xht-contact-dock .xht-dock-qr-card small{font-size:10px;}}
@media(max-width:360px){.xht-contact-dock{right:6px;}.xht-contact-dock .xht-dock-qr-card{right:calc(100% + 7px);width:202px;padding:10px;}.xht-contact-dock .xht-dock-qr{width:146px!important;height:146px!important;}}
@media(prefers-reduced-motion:reduce){.xht-contact-dock .xht-dock-action,.xht-contact-dock .xht-dock-tip{transition:none;}}


/* XHT dock hover reveal v1 */
@media (hover:hover) and (pointer:fine){
  .xht-contact-dock .xht-dock-wechat:hover>.xht-dock-qr-card,
  .xht-contact-dock .xht-dock-whatsapp:hover>.xht-dock-qr-card{display:flex;}
  .xht-contact-dock .xht-dock-wechat:hover .xht-dock-tip,
  .xht-contact-dock .xht-dock-whatsapp:hover .xht-dock-tip{opacity:0!important;visibility:hidden!important;}
  .xht-contact-dock .xht-dock-qr-card:after{content:"";position:absolute;top:0;right:-14px;width:14px;height:100%;}
}


/* XHT dock hover bridge fix v2 */
@media (hover:hover) and (pointer:fine){
  .xht-contact-dock .xht-dock-qr-card:after{right:-20px;width:22px;background:rgba(255,255,255,.001);}
}


/* XHT dock seamless hover v3 */
@media (hover:hover) and (pointer:fine){
  .xht-contact-dock .xht-dock-qr-card{right:calc(100% - 2px);}
}

/* XHT English desktop sales header */
@media (min-width: 922px) {
  html[lang="en-US"] #masthead {
    position: sticky;
    top: 0;
    z-index: 999;
    background: #ffffff;
    box-shadow: 0 1px 0 rgba(7, 24, 44, 0.10), 0 8px 24px rgba(7, 24, 44, 0.06);
  }

  html[lang="en-US"] body.admin-bar #masthead {
    top: 32px;
  }

  html[lang="en-US"] #ast-desktop-header .ast-primary-header-bar,
  html[lang="en-US"] #ast-desktop-header .main-header-bar {
    min-height: 82px;
  }

  html[lang="en-US"] #ast-desktop-header .site-logo-img img {
    width: 240px;
    max-width: 240px;
    height: auto;
  }

  html[lang="en-US"] #ast-desktop-header .main-header-menu > .menu-item > .menu-link {
    height: 82px;
    padding: 0 17px;
    color: #17212f;
    font-size: 15px;
    font-weight: 700;
  }

  html[lang="en-US"] #ast-desktop-header .main-header-menu > .menu-item > .menu-link:hover,
  html[lang="en-US"] #ast-desktop-header .main-header-menu > .current-menu-item > .menu-link {
    color: #b91f2f;
  }

  html[lang="en-US"] #ast-desktop-header .main-header-menu > .menu-item > .menu-link[href*="/contact-us/"] {
    height: auto;
    min-height: 46px;
    margin-left: 12px;
    padding: 0 20px;
    border-radius: 6px;
    color: #ffffff;
    background: #d72638;
    font-weight: 800;
    letter-spacing: 0.02em;
    box-shadow: 0 8px 18px rgba(215, 38, 56, 0.18);
  }

  html[lang="en-US"] #ast-desktop-header .main-header-menu > .menu-item > .menu-link[href*="/contact-us/"]:hover {
    color: #ffffff;
    background: #b91f2f;
  }
}

/* XHT Fasteners design system v1
   Scoped to .xht-site to minimize conflicts with Astra and plugins. */

:root {
  --xht-navy-950: #07182c;
  --xht-navy-900: #0b213d;
  --xht-navy-800: #123252;
  --xht-blue-600: #1c5d92;
  --xht-red-600: #d72638;
  --xht-red-700: #b91f2f;
  --xht-slate-900: #17212f;
  --xht-slate-700: #465568;
  --xht-slate-500: #6c7888;
  --xht-slate-300: #cfd7e2;
  --xht-slate-200: #e2e8f0;
  --xht-slate-100: #f3f6f9;
  --xht-white: #ffffff;
  --xht-success: #17835f;
  --xht-shadow-sm: 0 8px 24px rgba(7, 24, 44, 0.08);
  --xht-shadow-md: 0 18px 46px rgba(7, 24, 44, 0.13);
  --xht-radius-sm: 8px;
  --xht-radius-md: 14px;
  --xht-radius-lg: 22px;
  --xht-container: 1200px;
}

/* Full-width canvas while retaining Astra's global header and footer. */
.page-template-elementor_header_footer .site-content > .ast-container {
  width: 100%;
  max-width: none;
  padding: 0;
}

.page-template-elementor_header_footer .site-content,
.page-template-elementor_header_footer.ast-plain-container #primary {
  margin: 0;
}

.xht-site,
.xht-site * {
  box-sizing: border-box;
}

.xht-site {
  overflow: hidden;
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}
/* XHT floating widget row: no footer gap */
.site-above-footer-wrap {
  min-height: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: visible !important;
}
.site-above-footer-wrap .ast-builder-grid-row-container-inner,
.site-above-footer-wrap .site-above-footer-inner-wrap {
  min-height: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}


.xht-site img {
  display: block;
  width: 100%;
  height: auto;
}

.xht-site a {
  color: inherit;
  text-decoration: none;
}

.xht-container {
  width: min(100% - 40px, var(--xht-container));
  margin-inline: auto;
}

.xht-section {
  padding: 88px 0;
}

.xht-section--soft {
  background: var(--xht-slate-100);
}

.xht-section--dark {
  color: var(--xht-white);
  background: var(--xht-navy-950);
}

.xht-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
  gap: 44px;
  align-items: end;
  margin-bottom: 40px;
}

.xht-section-head--center {
  display: block;
  max-width: 760px;
  margin: 0 auto 44px;
  text-align: center;
}

.xht-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  color: var(--xht-red-600);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.xht-eyebrow::before {
  width: 28px;
  height: 2px;
  background: currentColor;
  content: "";
}

.xht-site h1,
.xht-site h2,
.xht-site h3,
.xht-site p {
  margin-top: 0;
}

.xht-site h1,
.xht-site h2,
.xht-site h3 {
  color: inherit;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.12;
}

.xht-site h1 {
  margin-bottom: 22px;
  font-size: clamp(38px, 5vw, 66px);
}

.xht-site h2 {
  margin-bottom: 18px;
  font-size: clamp(30px, 3.4vw, 46px);
}

.xht-site h3 {
  margin-bottom: 12px;
  font-size: clamp(20px, 2vw, 25px);
}

.xht-lead {
  color: var(--xht-slate-700);
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.7;
}

.xht-muted {
  color: var(--xht-slate-500);
}

.xht-section--dark .xht-lead,
.xht-section--dark .xht-muted {
  color: #bfccda;
}

.xht-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.xht-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: var(--xht-radius-sm);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.035em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.xht-btn:hover,
.xht-btn:focus-visible {
  transform: translateY(-2px);
}

.xht-btn:focus-visible,
.xht-card-link:focus-visible {
  outline: 3px solid rgba(215, 38, 56, 0.28);
  outline-offset: 3px;
}

.xht-btn--primary {
  color: var(--xht-white) !important;
  background: var(--xht-red-600);
}

.xht-btn--primary:hover,
.xht-btn--primary:focus-visible {
  background: var(--xht-red-700);
}

.xht-btn--secondary {
  color: var(--xht-navy-900) !important;
  border-color: var(--xht-slate-300);
  background: var(--xht-white);
}

.xht-btn--ghost {
  color: var(--xht-white) !important;
  border-color: rgba(255, 255, 255, 0.38);
  background: transparent;
}

.xht-hero {
  position: relative;
  color: var(--xht-white);
  background:
    radial-gradient(circle at 76% 18%, rgba(28, 93, 146, 0.45), transparent 31%),
    linear-gradient(118deg, var(--xht-navy-950) 0%, var(--xht-navy-900) 60%, #123b63 100%);
}

.xht-hero::after {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  pointer-events: none;
  content: "";
}

.xht-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
  gap: 60px;
  align-items: center;
  padding: 82px 0 70px;
}

.xht-hero__copy {
  max-width: 710px;
}

.xht-hero h1 {
  font-size: clamp(38px, 4.65vw, 62px);
}

.xht-hero .xht-lead {
  max-width: 690px;
  color: #d6e1ec;
}

.xht-visual {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--xht-radius-lg);
  background:
    radial-gradient(circle at 50% 38%, rgba(255, 255, 255, .96), rgba(232, 237, 242, .92) 36%, rgba(156, 171, 186, .6) 68%, rgba(11, 33, 61, .55) 100%),
    var(--xht-slate-200);
  box-shadow: var(--xht-shadow-md);
}

.xht-visual::before,
.xht-visual::after {
  position: absolute;
  border: 22px solid rgba(7, 24, 44, 0.33);
  border-radius: 30%;
  content: "";
}

.xht-visual::before {
  width: 230px;
  height: 230px;
  top: 20%;
  left: 20%;
  transform: rotate(28deg);
}

.xht-visual::after {
  width: 135px;
  height: 135px;
  right: 12%;
  bottom: 9%;
  transform: rotate(-12deg);
}

.xht-visual__label {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 13px 15px;
  border-radius: var(--xht-radius-sm);
  color: #dce6ef;
  background: rgba(7, 24, 44, 0.9);
  font-size: 13px;
  line-height: 1.45;
}

.xht-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item {
  padding: 20px 18px;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item:last-child {
  border-right: 0;
}

.xht-trust-strip strong {
  display: block;
  margin-bottom: 3px;
  color: var(--xht-white);
  font-size: 15px;
}

.xht-trust-strip span {
  color: #aebdcb;
  font-size: 13px;
}

.xht-grid {
  display: grid;
  gap: 24px;
}

.xht-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.xht-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xht-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xht-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-sm);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.xht-card:hover {
  transform: translateY(-4px);
  border-color: #aab7c6;
  box-shadow: var(--xht-shadow-md);
}

.xht-card__body {
  padding: 25px;
}

.xht-card__body p:last-child {
  margin-bottom: 0;
}

.xht-card__icon {
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 12px;
  color: var(--xht-red-600);
  background: #fff0f2;
  font-size: 18px;
  font-weight: 900;
}

.xht-card__media {
  position: relative;
  display: grid;
  min-height: 210px;
  place-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--xht-slate-200);
  background:
    radial-gradient(circle, #ffffff 0%, #eef2f6 60%, #dde4eb 100%);
}

.xht-card__media::before {
  width: 105px;
  height: 105px;
  border: 18px solid #93a2b1;
  border-radius: 26%;
  box-shadow: inset 0 0 0 2px #6f7f90, 0 18px 28px rgba(7, 24, 44, .16);
  transform: rotate(18deg);
  content: "";
}

.xht-card__media-label {
  position: absolute;
  right: 12px;
  bottom: 10px;
  left: 12px;
  color: var(--xht-slate-500);
  font-size: 11px;
  text-align: center;
}

.xht-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--xht-red-600) !important;
  font-size: 14px;
  font-weight: 800;
}

.xht-card-link::after {
  content: "→";
}

.xht-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 18px 0;
  padding: 0;
  list-style: none;
}

.xht-tags li {
  padding: 5px 9px;
  border: 1px solid var(--xht-slate-200);
  border-radius: 999px;
  color: var(--xht-slate-700);
  background: var(--xht-slate-100);
  font-size: 12px;
  line-height: 1.3;
}

.xht-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  counter-reset: xht-step;
}

.xht-step {
  position: relative;
  padding: 28px 24px;
  border-top: 1px solid var(--xht-slate-300);
  counter-increment: xht-step;
}

.xht-step::before {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  margin: -49px 0 20px;
  border: 6px solid var(--xht-white);
  border-radius: 50%;
  color: var(--xht-white);
  background: var(--xht-red-600);
  box-sizing: content-box;
  font-size: 14px;
  font-weight: 800;
  content: counter(xht-step, decimal-leading-zero);
}

.xht-step h3 {
  font-size: 19px;
}

.xht-step p {
  margin-bottom: 0;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-evidence {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 24px;
}

.xht-evidence__large,
.xht-evidence__small {
  position: relative;
  overflow: hidden;
  min-height: 260px;
  border-radius: var(--xht-radius-md);
  background: linear-gradient(135deg, #cad4de, #f8fafc 55%, #a8b6c4);
}

.xht-evidence__large {
  min-height: 544px;
}

.xht-evidence__stack {
  display: grid;
  gap: 24px;
}

.xht-evidence__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px;
  color: var(--xht-white);
  background: linear-gradient(transparent, rgba(7, 24, 44, .92));
}

.xht-evidence__caption strong {
  display: block;
  font-size: 20px;
}

.xht-evidence__caption span {
  color: #d5e0ea;
  font-size: 13px;
}

.xht-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
  gap: 46px;
  align-items: start;
}

.xht-checklist {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.xht-checklist li {
  position: relative;
  margin-bottom: 13px;
  padding-left: 30px;
}

.xht-checklist li::before {
  position: absolute;
  top: .08em;
  left: 0;
  color: var(--xht-success);
  font-weight: 900;
  content: "✓";
}

.xht-form-shell {
  padding: 30px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-md);
}

.xht-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.xht-field--full {
  grid-column: 1 / -1;
}

.xht-form-shell label,
.xht-site .wpcf7-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--xht-slate-900);
  font-size: 13px;
  font-weight: 800;
}

.xht-form-shell input,
.xht-form-shell select,
.xht-form-shell textarea,
.xht-site .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.xht-site .wpcf7-form select,
.xht-site .wpcf7-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 13px;
  border: 1px solid var(--xht-slate-300);
  border-radius: var(--xht-radius-sm);
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font: inherit;
}

.xht-form-shell textarea,
.xht-site .wpcf7-form textarea {
  min-height: 126px;
  resize: vertical;
}

.xht-form-shell input:focus,
.xht-form-shell select:focus,
.xht-form-shell textarea:focus,
.xht-site .wpcf7-form input:focus,
.xht-site .wpcf7-form select:focus,
.xht-site .wpcf7-form textarea:focus {
  border-color: var(--xht-blue-600);
  outline: 3px solid rgba(28, 93, 146, .14);
}

.xht-form-shell button,
.xht-site .wpcf7-form input[type="submit"] {
  min-height: 50px;
  padding: 13px 22px;
  border: 0;
  border-radius: var(--xht-radius-sm);
  color: var(--xht-white);
  background: var(--xht-red-600);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  cursor: pointer;
}

.xht-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
}

.xht-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: var(--xht-white);
}

.xht-table th,
.xht-table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--xht-slate-200);
  text-align: left;
  vertical-align: top;
}

.xht-table th {
  color: var(--xht-navy-900);
  background: var(--xht-slate-100);
  font-size: 13px;
  font-weight: 800;
}

.xht-table tr:last-child td {
  border-bottom: 0;
}

.xht-note {
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  color: var(--xht-slate-700);
  background: #fff4f5;
  font-size: 14px;
}

.xht-cta-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: center;
  padding: 38px 42px;
  border-radius: var(--xht-radius-lg);
  color: var(--xht-white);
  background: linear-gradient(112deg, var(--xht-navy-900), #164c78);
}

.xht-cta-band h2 {
  margin-bottom: 8px;
  font-size: clamp(28px, 3vw, 40px);
}

.xht-cta-band p {
  margin-bottom: 0;
  color: #c9d6e2;
}

/* Contact / RFQ conversion layout. */
.xht-contact-hero {
  padding-bottom: 0;
}

.xht-contact-hero .xht-section-head {
  padding-bottom: 54px;
}

.xht-contact-hero .xht-trust-strip {
  margin-top: 0;
}

.xht-contact-channels {
  padding-top: 66px;
  padding-bottom: 66px;
}

.xht-contact-channels .xht-grid--4 {
  width: min(100%, 980px);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-inline: auto;
}

.xht-contact-channels .xht-card__body {
  display: flex;
  min-height: 220px;
  flex-direction: column;
  align-items: flex-start;
}

.xht-contact-channels .xht-card-link {
  max-width: 100%;
  margin-top: auto;
  overflow-wrap: anywhere;
  white-space: nowrap;
}

.xht-contact-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(540px, 1.22fr);
  gap: 42px;
  align-items: start;
}

.xht-contact-summary {
  position: sticky;
  top: 104px;
}

.xht-contact-summary .xht-note {
  margin-top: 28px;
}

.xht-contact-form .wpcf7-form > p {
  margin-bottom: 17px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(1),
.xht-contact-form .wpcf7-form > p:nth-of-type(3) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(4) {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(210px, .65fr);
  gap: 18px;
  align-items: end;
}

.xht-contact-form .wpcf7-form-control-wrap {
  display: block;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(5) {
  margin-top: -8px;
  color: var(--xht-slate-500);
  font-size: 12px;
}

.xht-contact-form .wpcf7-submit {
  width: 100%;
  margin-top: 14px;
}

.xht-contact-map-shell {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(520px, 1.28fr);
  gap: 38px;
  align-items: stretch;
}

.xht-contact-map-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.xht-contact-map {
  overflow: hidden;
  min-height: 390px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-slate-100);
  box-shadow: var(--xht-shadow-md);
}

.xht-contact-map iframe {
  display: block;
  width: 100%;
  height: 390px;
  border: 0;
}

.xht-contact-address {
  margin: 22px 0;
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  background: var(--xht-slate-100);
}

.xht-contact-address strong,
.xht-contact-address span {
  display: block;
}

.xht-contact-address span {
  margin-top: 4px;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-contact-process .xht-steps {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 30px;
}

.xht-mobile-actions {
  display: none;
}

[dir="rtl"] .xht-eyebrow::before,
.rtl .xht-eyebrow::before {
  order: 2;
}

[dir="rtl"] .xht-checklist li,
.rtl .xht-checklist li {
  padding-right: 30px;
  padding-left: 0;
}

[dir="rtl"] .xht-checklist li::before,
.rtl .xht-checklist li::before {
  right: 0;
  left: auto;
}

[dir="rtl"] .xht-table th,
[dir="rtl"] .xht-table td,
.rtl .xht-table th,
.rtl .xht-table td {
  text-align: right;
}

@media (max-width: 1024px) {
  .xht-hero__inner {
    min-height: auto;
    grid-template-columns: 1fr 380px;
    gap: 38px;
  }

  .xht-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 54px;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: minmax(0, .72fr) minmax(430px, 1.28fr);
  }
}

@media (max-width: 820px) {
  .xht-section {
    padding: 66px 0;
  }

  .xht-hero__inner,
  .xht-section-head,
  .xht-rfq,
  .xht-evidence {
    grid-template-columns: 1fr;
  }

  .xht-hero__inner {
    padding-top: 68px;
  }

  .xht-visual {
    min-height: 360px;
  }

  .xht-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-trust-strip__item:nth-child(2) {
    border-right: 0;
  }

  .xht-trust-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
  }

  .xht-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-cta-band {
    grid-template-columns: 1fr;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: 1fr;
  }

  .xht-contact-summary {
    position: static;
  }
}

@media (max-width: 600px) {
  .xht-container {
    width: min(100% - 28px, var(--xht-container));
  }

  .xht-section {
    padding: 54px 0;
  }

  .xht-site h1 {
    font-size: 39px;
  }

  .xht-site h2 {
    font-size: 31px;
  }

  .xht-actions,
  .xht-actions .xht-btn {
    width: 100%;
  }

  .xht-visual {
    min-height: 300px;
  }

  .xht-grid--2,
  .xht-grid--3,
  .xht-grid--4,
  .xht-steps,
  .xht-form-grid {
    grid-template-columns: 1fr;
  }

  .xht-contact-form .wpcf7-form > p:nth-of-type(1),
  .xht-contact-form .wpcf7-form > p:nth-of-type(3),
  .xht-contact-form .wpcf7-form > p:nth-of-type(4),
  .xht-contact-process .xht-steps {
    grid-template-columns: 1fr;
  }

  .xht-contact-channels .xht-card__body {
    min-height: auto;
  }

  .xht-contact-channels .xht-card-link {
    margin-top: 8px;
    white-space: normal;
  }

  .xht-contact-map,
  .xht-contact-map iframe {
    min-height: 330px;
    height: 330px;
  }

  .xht-step {
    margin-left: 22px;
    border-top: 0;
    border-left: 1px solid var(--xht-slate-300);
  }

  .xht-step::before {
    margin: 0 0 18px -51px;
  }

  .xht-evidence__large {
    min-height: 380px;
  }

  .xht-rfq {
    gap: 30px;
  }

  .xht-form-shell,
  .xht-card__body,
  .xht-cta-band {
    padding: 24px;
  }

  .xht-mobile-actions {
    position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 8px;
    gap: 8px;
    border-top: 1px solid var(--xht-slate-200);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -8px 26px rgba(7, 24, 44, .12);
  }

  .xht-mobile-actions a {
    display: grid;
    min-height: 46px;
    place-items: center;
    border-radius: var(--xht-radius-sm);
    color: var(--xht-white) !important;
    background: var(--xht-red-600);
    font-size: 13px;
    font-weight: 800;
  }

  .xht-mobile-actions a:last-child {
    background: #188758;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-site *,
  .xht-site *::before,
  .xht-site *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* XHT global layout safeguards */
html, body { overflow-x: hidden; }
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) { .site-branding img.custom-logo { width: 210px !important; } }
/* XHT Fasteners design system v1
   Scoped to .xht-site to minimize conflicts with Astra and plugins. */

:root {
  --xht-navy-950: #07182c;
  --xht-navy-900: #0b213d;
  --xht-navy-800: #123252;
  --xht-blue-600: #1c5d92;
  --xht-red-600: #d72638;
  --xht-red-700: #b91f2f;
  --xht-slate-900: #17212f;
  --xht-slate-700: #465568;
  --xht-slate-500: #6c7888;
  --xht-slate-300: #cfd7e2;
  --xht-slate-200: #e2e8f0;
  --xht-slate-100: #f3f6f9;
  --xht-white: #ffffff;
  --xht-success: #17835f;
  --xht-shadow-sm: 0 8px 24px rgba(7, 24, 44, 0.08);
  --xht-shadow-md: 0 18px 46px rgba(7, 24, 44, 0.13);
  --xht-radius-sm: 8px;
  --xht-radius-md: 14px;
  --xht-radius-lg: 22px;
  --xht-container: 1200px;
}

/* Full-width canvas while retaining Astra's global header and footer. */
.page-template-elementor_header_footer .site-content > .ast-container {
  width: 100%;
  max-width: none;
  padding: 0;
}

.page-template-elementor_header_footer .site-content,
.page-template-elementor_header_footer.ast-plain-container #primary {
  margin: 0;
}

.xht-site,
.xht-site * {
  box-sizing: border-box;
}

.xht-site {
  overflow: hidden;
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

.xht-site img {
  display: block;
  width: 100%;
  height: auto;
}

.xht-site a {
  color: inherit;
  text-decoration: none;
}

.xht-container {
  width: min(100% - 40px, var(--xht-container));
  margin-inline: auto;
}

.xht-section {
  padding: 88px 0;
}

.xht-section--soft {
  background: var(--xht-slate-100);
}

.xht-section--dark {
  color: var(--xht-white);
  background: var(--xht-navy-950);
}

.xht-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
  gap: 44px;
  align-items: end;
  margin-bottom: 40px;
}

.xht-section-head--center {
  display: block;
  max-width: 760px;
  margin: 0 auto 44px;
  text-align: center;
}

.xht-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  color: var(--xht-red-600);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.xht-eyebrow::before {
  width: 28px;
  height: 2px;
  background: currentColor;
  content: "";
}

.xht-site h1,
.xht-site h2,
.xht-site h3,
.xht-site p {
  margin-top: 0;
}

.xht-site h1,
.xht-site h2,
.xht-site h3 {
  color: inherit;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.12;
}

.xht-site h1 {
  margin-bottom: 22px;
  font-size: clamp(38px, 5vw, 66px);
}

.xht-site h2 {
  margin-bottom: 18px;
  font-size: clamp(30px, 3.4vw, 46px);
}

.xht-site h3 {
  margin-bottom: 12px;
  font-size: clamp(20px, 2vw, 25px);
}

.xht-lead {
  color: var(--xht-slate-700);
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.7;
}

.xht-muted {
  color: var(--xht-slate-500);
}

.xht-section--dark .xht-lead,
.xht-section--dark .xht-muted {
  color: #bfccda;
}

.xht-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.xht-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: var(--xht-radius-sm);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.035em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.xht-btn:hover,
.xht-btn:focus-visible {
  transform: translateY(-2px);
}

.xht-btn:focus-visible,
.xht-card-link:focus-visible {
  outline: 3px solid rgba(215, 38, 56, 0.28);
  outline-offset: 3px;
}

.xht-btn--primary {
  color: var(--xht-white) !important;
  background: var(--xht-red-600);
}

.xht-btn--primary:hover,
.xht-btn--primary:focus-visible {
  background: var(--xht-red-700);
}

.xht-btn--secondary {
  color: var(--xht-navy-900) !important;
  border-color: var(--xht-slate-300);
  background: var(--xht-white);
}

.xht-btn--ghost {
  color: var(--xht-white) !important;
  border-color: rgba(255, 255, 255, 0.38);
  background: transparent;
}

.xht-hero {
  position: relative;
  color: var(--xht-white);
  background:
    radial-gradient(circle at 76% 18%, rgba(28, 93, 146, 0.45), transparent 31%),
    linear-gradient(118deg, var(--xht-navy-950) 0%, var(--xht-navy-900) 60%, #123b63 100%);
}

.xht-hero::after {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  pointer-events: none;
  content: "";
}

.xht-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
  gap: 60px;
  align-items: center;
  padding: 82px 0 70px;
}

.xht-hero__copy {
  max-width: 710px;
}

.xht-hero h1 {
  font-size: clamp(38px, 4.65vw, 62px);
}

.xht-hero .xht-lead {
  max-width: 690px;
  color: #d6e1ec;
}

.xht-visual {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--xht-radius-lg);
  background:
    radial-gradient(circle at 50% 38%, rgba(255, 255, 255, .96), rgba(232, 237, 242, .92) 36%, rgba(156, 171, 186, .6) 68%, rgba(11, 33, 61, .55) 100%),
    var(--xht-slate-200);
  box-shadow: var(--xht-shadow-md);
}

.xht-visual::before,
.xht-visual::after {
  position: absolute;
  border: 22px solid rgba(7, 24, 44, 0.33);
  border-radius: 30%;
  content: "";
}

.xht-visual::before {
  width: 230px;
  height: 230px;
  top: 20%;
  left: 20%;
  transform: rotate(28deg);
}

.xht-visual::after {
  width: 135px;
  height: 135px;
  right: 12%;
  bottom: 9%;
  transform: rotate(-12deg);
}

.xht-visual__label {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 13px 15px;
  border-radius: var(--xht-radius-sm);
  color: #dce6ef;
  background: rgba(7, 24, 44, 0.9);
  font-size: 13px;
  line-height: 1.45;
}

.xht-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item {
  padding: 20px 18px;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item:last-child {
  border-right: 0;
}

.xht-trust-strip strong {
  display: block;
  margin-bottom: 3px;
  color: var(--xht-white);
  font-size: 15px;
}

.xht-trust-strip span {
  color: #aebdcb;
  font-size: 13px;
}

.xht-grid {
  display: grid;
  gap: 24px;
}

.xht-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.xht-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xht-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xht-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-sm);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.xht-card:hover {
  transform: translateY(-4px);
  border-color: #aab7c6;
  box-shadow: var(--xht-shadow-md);
}

.xht-card__body {
  padding: 25px;
}

.xht-card__body p:last-child {
  margin-bottom: 0;
}

.xht-card__icon {
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 12px;
  color: var(--xht-red-600);
  background: #fff0f2;
  font-size: 18px;
  font-weight: 900;
}

.xht-card__media {
  position: relative;
  display: grid;
  min-height: 210px;
  place-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--xht-slate-200);
  background:
    radial-gradient(circle, #ffffff 0%, #eef2f6 60%, #dde4eb 100%);
}

.xht-card__media::before {
  width: 105px;
  height: 105px;
  border: 18px solid #93a2b1;
  border-radius: 26%;
  box-shadow: inset 0 0 0 2px #6f7f90, 0 18px 28px rgba(7, 24, 44, .16);
  transform: rotate(18deg);
  content: "";
}

.xht-card__media-label {
  position: absolute;
  right: 12px;
  bottom: 10px;
  left: 12px;
  color: var(--xht-slate-500);
  font-size: 11px;
  text-align: center;
}

.xht-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--xht-red-600) !important;
  font-size: 14px;
  font-weight: 800;
}

.xht-card-link::after {
  content: "→";
}

.xht-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 18px 0;
  padding: 0;
  list-style: none;
}

.xht-tags li {
  padding: 5px 9px;
  border: 1px solid var(--xht-slate-200);
  border-radius: 999px;
  color: var(--xht-slate-700);
  background: var(--xht-slate-100);
  font-size: 12px;
  line-height: 1.3;
}

.xht-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  counter-reset: xht-step;
}

.xht-step {
  position: relative;
  padding: 28px 24px;
  border-top: 1px solid var(--xht-slate-300);
  counter-increment: xht-step;
}

.xht-step::before {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  margin: -49px 0 20px;
  border: 6px solid var(--xht-white);
  border-radius: 50%;
  color: var(--xht-white);
  background: var(--xht-red-600);
  box-sizing: content-box;
  font-size: 14px;
  font-weight: 800;
  content: counter(xht-step, decimal-leading-zero);
}

.xht-step h3 {
  font-size: 19px;
}

.xht-step p {
  margin-bottom: 0;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-evidence {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 24px;
}

.xht-evidence__large,
.xht-evidence__small {
  position: relative;
  overflow: hidden;
  min-height: 260px;
  border-radius: var(--xht-radius-md);
  background: linear-gradient(135deg, #cad4de, #f8fafc 55%, #a8b6c4);
}

.xht-evidence__large {
  min-height: 544px;
}

.xht-evidence__stack {
  display: grid;
  gap: 24px;
}

.xht-evidence__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px;
  color: var(--xht-white);
  background: linear-gradient(transparent, rgba(7, 24, 44, .92));
}

.xht-evidence__caption strong {
  display: block;
  font-size: 20px;
}

.xht-evidence__caption span {
  color: #d5e0ea;
  font-size: 13px;
}

.xht-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
  gap: 46px;
  align-items: start;
}

.xht-checklist {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.xht-checklist li {
  position: relative;
  margin-bottom: 13px;
  padding-left: 30px;
}

.xht-checklist li::before {
  position: absolute;
  top: .08em;
  left: 0;
  color: var(--xht-success);
  font-weight: 900;
  content: "✓";
}

.xht-form-shell {
  padding: 30px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-md);
}

.xht-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.xht-field--full {
  grid-column: 1 / -1;
}

.xht-form-shell label,
.xht-site .wpcf7-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--xht-slate-900);
  font-size: 13px;
  font-weight: 800;
}

.xht-form-shell input,
.xht-form-shell select,
.xht-form-shell textarea,
.xht-site .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.xht-site .wpcf7-form select,
.xht-site .wpcf7-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 13px;
  border: 1px solid var(--xht-slate-300);
  border-radius: var(--xht-radius-sm);
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font: inherit;
}

.xht-form-shell textarea,
.xht-site .wpcf7-form textarea {
  min-height: 126px;
  resize: vertical;
}

.xht-form-shell input:focus,
.xht-form-shell select:focus,
.xht-form-shell textarea:focus,
.xht-site .wpcf7-form input:focus,
.xht-site .wpcf7-form select:focus,
.xht-site .wpcf7-form textarea:focus {
  border-color: var(--xht-blue-600);
  outline: 3px solid rgba(28, 93, 146, .14);
}

.xht-form-shell button,
.xht-site .wpcf7-form input[type="submit"] {
  min-height: 50px;
  padding: 13px 22px;
  border: 0;
  border-radius: var(--xht-radius-sm);
  color: var(--xht-white);
  background: var(--xht-red-600);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  cursor: pointer;
}

.xht-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
}

.xht-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: var(--xht-white);
}

.xht-table th,
.xht-table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--xht-slate-200);
  text-align: left;
  vertical-align: top;
}

.xht-table th {
  color: var(--xht-navy-900);
  background: var(--xht-slate-100);
  font-size: 13px;
  font-weight: 800;
}

.xht-table tr:last-child td {
  border-bottom: 0;
}

.xht-note {
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  color: var(--xht-slate-700);
  background: #fff4f5;
  font-size: 14px;
}

.xht-cta-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: center;
  padding: 38px 42px;
  border-radius: var(--xht-radius-lg);
  color: var(--xht-white);
  background: linear-gradient(112deg, var(--xht-navy-900), #164c78);
}

.xht-cta-band h2 {
  margin-bottom: 8px;
  font-size: clamp(28px, 3vw, 40px);
}

.xht-cta-band p {
  margin-bottom: 0;
  color: #c9d6e2;
}

/* Contact / RFQ conversion layout. */
.xht-contact-hero {
  padding-bottom: 0;
}

.xht-contact-hero .xht-section-head {
  padding-bottom: 54px;
}

.xht-contact-hero .xht-trust-strip {
  margin-top: 0;
}

.xht-contact-channels {
  padding-top: 66px;
  padding-bottom: 66px;
}

.xht-contact-channels .xht-card__body {
  min-height: 238px;
}

.xht-contact-channels .xht-card-link {
  overflow-wrap: anywhere;
}

.xht-contact-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(540px, 1.22fr);
  gap: 42px;
  align-items: start;
}

.xht-contact-summary {
  position: sticky;
  top: 104px;
}

.xht-contact-summary .xht-note {
  margin-top: 28px;
}

.xht-contact-form .wpcf7-form > p {
  margin-bottom: 17px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(1),
.xht-contact-form .wpcf7-form > p:nth-of-type(3) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(4) {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(210px, .65fr);
  gap: 18px;
  align-items: end;
}

.xht-contact-form .wpcf7-form-control-wrap {
  display: block;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(5) {
  margin-top: -8px;
  color: var(--xht-slate-500);
  font-size: 12px;
}

.xht-contact-form .wpcf7-submit {
  width: 100%;
  margin-top: 14px;
}

.xht-contact-map-shell {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(520px, 1.28fr);
  gap: 38px;
  align-items: stretch;
}

.xht-contact-map-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.xht-contact-map {
  overflow: hidden;
  min-height: 390px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-slate-100);
  box-shadow: var(--xht-shadow-md);
}

.xht-contact-map iframe {
  display: block;
  width: 100%;
  height: 390px;
  border: 0;
}

.xht-contact-address {
  margin: 22px 0;
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  background: var(--xht-slate-100);
}

.xht-contact-address strong,
.xht-contact-address span {
  display: block;
}

.xht-contact-address span {
  margin-top: 4px;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-contact-process .xht-steps {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 30px;
}

.xht-mobile-actions {
  display: none;
}

[dir="rtl"] .xht-eyebrow::before,
.rtl .xht-eyebrow::before {
  order: 2;
}

[dir="rtl"] .xht-checklist li,
.rtl .xht-checklist li {
  padding-right: 30px;
  padding-left: 0;
}

[dir="rtl"] .xht-checklist li::before,
.rtl .xht-checklist li::before {
  right: 0;
  left: auto;
}

[dir="rtl"] .xht-table th,
[dir="rtl"] .xht-table td,
.rtl .xht-table th,
.rtl .xht-table td {
  text-align: right;
}

@media (max-width: 1024px) {
  .xht-hero__inner {
    min-height: auto;
    grid-template-columns: 1fr 380px;
    gap: 38px;
  }

  .xht-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 54px;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: minmax(0, .72fr) minmax(430px, 1.28fr);
  }
}

@media (max-width: 820px) {
  .xht-section {
    padding: 66px 0;
  }

  .xht-hero__inner,
  .xht-section-head,
  .xht-rfq,
  .xht-evidence {
    grid-template-columns: 1fr;
  }

  .xht-hero__inner {
    padding-top: 68px;
  }

  .xht-visual {
    min-height: 360px;
  }

  .xht-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-trust-strip__item:nth-child(2) {
    border-right: 0;
  }

  .xht-trust-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
  }

  .xht-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-cta-band {
    grid-template-columns: 1fr;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: 1fr;
  }

  .xht-contact-summary {
    position: static;
  }
}

@media (max-width: 600px) {
  .xht-container {
    width: min(100% - 28px, var(--xht-container));
  }

  .xht-section {
    padding: 54px 0;
  }

  .xht-site h1 {
    font-size: 39px;
  }

  .xht-site h2 {
    font-size: 31px;
  }

  .xht-actions,
  .xht-actions .xht-btn {
    width: 100%;
  }

  .xht-visual {
    min-height: 300px;
  }

  .xht-grid--2,
  .xht-grid--3,
  .xht-grid--4,
  .xht-steps,
  .xht-form-grid {
    grid-template-columns: 1fr;
  }

  .xht-contact-form .wpcf7-form > p:nth-of-type(1),
  .xht-contact-form .wpcf7-form > p:nth-of-type(3),
  .xht-contact-form .wpcf7-form > p:nth-of-type(4),
  .xht-contact-process .xht-steps {
    grid-template-columns: 1fr;
  }

  .xht-contact-channels .xht-card__body {
    min-height: auto;
  }

  .xht-contact-map,
  .xht-contact-map iframe {
    min-height: 330px;
    height: 330px;
  }

  .xht-step {
    margin-left: 22px;
    border-top: 0;
    border-left: 1px solid var(--xht-slate-300);
  }

  .xht-step::before {
    margin: 0 0 18px -51px;
  }

  .xht-evidence__large {
    min-height: 380px;
  }

  .xht-rfq {
    gap: 30px;
  }

  .xht-form-shell,
  .xht-card__body,
  .xht-cta-band {
    padding: 24px;
  }

  .xht-mobile-actions {
    position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 8px;
    gap: 8px;
    border-top: 1px solid var(--xht-slate-200);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -8px 26px rgba(7, 24, 44, .12);
  }

  .xht-mobile-actions a {
    display: grid;
    min-height: 46px;
    place-items: center;
    border-radius: var(--xht-radius-sm);
    color: var(--xht-white) !important;
    background: var(--xht-red-600);
    font-size: 13px;
    font-weight: 800;
  }

  .xht-mobile-actions a:last-child {
    background: #188758;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-site *,
  .xht-site *::before,
  .xht-site *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* XHT global layout safeguards */
html, body { overflow-x: hidden; }
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) { .site-branding img.custom-logo { width: 210px !important; } }

  overflow: hidden;
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

.xht-site img {
  display: block;
  width: 100%;
  height: auto;
}

.xht-site a {
  color: inherit;
  text-decoration: none;
}

.xht-container {
  width: min(100% - 40px, var(--xht-container));
  margin-inline: auto;
}

.xht-section {
  padding: 88px 0;
}

.xht-section--soft {
  background: var(--xht-slate-100);
}

.xht-section--dark {
  color: var(--xht-white);
  background: var(--xht-navy-950);
}

.xht-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
  gap: 44px;
  align-items: end;
  margin-bottom: 40px;
}

.xht-section-head--center {
  display: block;
  max-width: 760px;
  margin: 0 auto 44px;
  text-align: center;
}

.xht-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  color: var(--xht-red-600);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.xht-eyebrow::before {
  width: 28px;
  height: 2px;
  background: currentColor;
  content: "";
}

.xht-site h1,
.xht-site h2,
.xht-site h3,
.xht-site p {
  margin-top: 0;
}

.xht-site h1,
.xht-site h2,
.xht-site h3 {
  color: inherit;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.12;
}

.xht-site h1 {
  margin-bottom: 22px;
  font-size: clamp(38px, 5vw, 66px);
}

.xht-site h2 {
  margin-bottom: 18px;
  font-size: clamp(30px, 3.4vw, 46px);
}

.xht-site h3 {
  margin-bottom: 12px;
  font-size: clamp(20px, 2vw, 25px);
}

.xht-lead {
  color: var(--xht-slate-700);
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.7;
}

.xht-muted {
  color: var(--xht-slate-500);
}

.xht-section--dark .xht-lead,
.xht-section--dark .xht-muted {
  color: #bfccda;
}

.xht-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.xht-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: var(--xht-radius-sm);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.035em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.xht-btn:hover,
.xht-btn:focus-visible {
  transform: translateY(-2px);
}

.xht-btn:focus-visible,
.xht-card-link:focus-visible {
  outline: 3px solid rgba(215, 38, 56, 0.28);
  outline-offset: 3px;
}

.xht-btn--primary {
  color: var(--xht-white) !important;
  background: var(--xht-red-600);
}

.xht-btn--primary:hover,
.xht-btn--primary:focus-visible {
  background: var(--xht-red-700);
}

.xht-btn--secondary {
  color: var(--xht-navy-900) !important;
  border-color: var(--xht-slate-300);
  background: var(--xht-white);
}

.xht-btn--ghost {
  color: var(--xht-white) !important;
  border-color: rgba(255, 255, 255, 0.38);
  background: transparent;
}

.xht-hero {
  position: relative;
  color: var(--xht-white);
  background:
    radial-gradient(circle at 76% 18%, rgba(28, 93, 146, 0.45), transparent 31%),
    linear-gradient(118deg, var(--xht-navy-950) 0%, var(--xht-navy-900) 60%, #123b63 100%);
}

.xht-hero::after {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  pointer-events: none;
  content: "";
}

.xht-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
  gap: 60px;
  align-items: center;
  padding: 82px 0 70px;
}

.xht-hero__copy {
  max-width: 710px;
}

.xht-hero h1 {
  font-size: clamp(38px, 4.65vw, 62px);
}

.xht-hero .xht-lead {
  max-width: 690px;
  color: #d6e1ec;
}

.xht-visual {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--xht-radius-lg);
  background:
    radial-gradient(circle at 50% 38%, rgba(255, 255, 255, .96), rgba(232, 237, 242, .92) 36%, rgba(156, 171, 186, .6) 68%, rgba(11, 33, 61, .55) 100%),
    var(--xht-slate-200);
  box-shadow: var(--xht-shadow-md);
}

.xht-visual::before,
.xht-visual::after {
  position: absolute;
  border: 22px solid rgba(7, 24, 44, 0.33);
  border-radius: 30%;
  content: "";
}

.xht-visual::before {
  width: 230px;
  height: 230px;
  top: 20%;
  left: 20%;
  transform: rotate(28deg);
}

.xht-visual::after {
  width: 135px;
  height: 135px;
  right: 12%;
  bottom: 9%;
  transform: rotate(-12deg);
}

.xht-visual__label {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 13px 15px;
  border-radius: var(--xht-radius-sm);
  color: #dce6ef;
  background: rgba(7, 24, 44, 0.9);
  font-size: 13px;
  line-height: 1.45;
}

.xht-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item {
  padding: 20px 18px;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item:last-child {
  border-right: 0;
}

.xht-trust-strip strong {
  display: block;
  margin-bottom: 3px;
  color: var(--xht-white);
  font-size: 15px;
}

.xht-trust-strip span {
  color: #aebdcb;
  font-size: 13px;
}

.xht-grid {
  display: grid;
  gap: 24px;
}

.xht-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.xht-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xht-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xht-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-sm);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.xht-card:hover {
  transform: translateY(-4px);
  border-color: #aab7c6;
  box-shadow: var(--xht-shadow-md);
}

.xht-card__body {
  padding: 25px;
}

.xht-card__body p:last-child {
  margin-bottom: 0;
}

.xht-card__icon {
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 12px;
  color: var(--xht-red-600);
  background: #fff0f2;
  font-size: 18px;
  font-weight: 900;
}

.xht-card__media {
  position: relative;
  display: grid;
  min-height: 210px;
  place-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--xht-slate-200);
  background:
    radial-gradient(circle, #ffffff 0%, #eef2f6 60%, #dde4eb 100%);
}

.xht-card__media::before {
  width: 105px;
  height: 105px;
  border: 18px solid #93a2b1;
  border-radius: 26%;
  box-shadow: inset 0 0 0 2px #6f7f90, 0 18px 28px rgba(7, 24, 44, .16);
  transform: rotate(18deg);
  content: "";
}

.xht-card__media-label {
  position: absolute;
  right: 12px;
  bottom: 10px;
  left: 12px;
  color: var(--xht-slate-500);
  font-size: 11px;
  text-align: center;
}

.xht-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--xht-red-600) !important;
  font-size: 14px;
  font-weight: 800;
}

.xht-card-link::after {
  content: "→";
}

.xht-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 18px 0;
  padding: 0;
  list-style: none;
}

.xht-tags li {
  padding: 5px 9px;
  border: 1px solid var(--xht-slate-200);
  border-radius: 999px;
  color: var(--xht-slate-700);
  background: var(--xht-slate-100);
  font-size: 12px;
  line-height: 1.3;
}

.xht-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  counter-reset: xht-step;
}

.xht-step {
  position: relative;
  padding: 28px 24px;
  border-top: 1px solid var(--xht-slate-300);
  counter-increment: xht-step;
}

.xht-step::before {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  margin: -49px 0 20px;
  border: 6px solid var(--xht-white);
  border-radius: 50%;
  color: var(--xht-white);
  background: var(--xht-red-600);
  box-sizing: content-box;
  font-size: 14px;
  font-weight: 800;
  content: counter(xht-step, decimal-leading-zero);
}

.xht-step h3 {
  font-size: 19px;
}

.xht-step p {
  margin-bottom: 0;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-evidence {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 24px;
}

.xht-evidence__large,
.xht-evidence__small {
  position: relative;
  overflow: hidden;
  min-height: 260px;
  border-radius: var(--xht-radius-md);
  background: linear-gradient(135deg, #cad4de, #f8fafc 55%, #a8b6c4);
}

.xht-evidence__large {
  min-height: 544px;
}

.xht-evidence__stack {
  display: grid;
  gap: 24px;
}

.xht-evidence__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px;
  color: var(--xht-white);
  background: linear-gradient(transparent, rgba(7, 24, 44, .92));
}

.xht-evidence__caption strong {
  display: block;
  font-size: 20px;
}

.xht-evidence__caption span {
  color: #d5e0ea;
  font-size: 13px;
}

.xht-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
  gap: 46px;
  align-items: start;
}

.xht-checklist {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.xht-checklist li {
  position: relative;
  margin-bottom: 13px;
  padding-left: 30px;
}

.xht-checklist li::before {
  position: absolute;
  top: .08em;
  left: 0;
  color: var(--xht-success);
  font-weight: 900;
  content: "✓";
}

.xht-form-shell {
  padding: 30px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-md);
}

.xht-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.xht-field--full {
  grid-column: 1 / -1;
}

.xht-form-shell label,
.xht-site .wpcf7-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--xht-slate-900);
  font-size: 13px;
  font-weight: 800;
}

.xht-form-shell input,
.xht-form-shell select,
.xht-form-shell textarea,
.xht-site .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.xht-site .wpcf7-form select,
.xht-site .wpcf7-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 13px;
  border: 1px solid var(--xht-slate-300);
  border-radius: var(--xht-radius-sm);
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font: inherit;
}

.xht-form-shell textarea,
.xht-site .wpcf7-form textarea {
  min-height: 126px;
  resize: vertical;
}

.xht-form-shell input:focus,
.xht-form-shell select:focus,
.xht-form-shell textarea:focus,
.xht-site .wpcf7-form input:focus,
.xht-site .wpcf7-form select:focus,
.xht-site .wpcf7-form textarea:focus {
  border-color: var(--xht-blue-600);
  outline: 3px solid rgba(28, 93, 146, .14);
}

.xht-form-shell button,
.xht-site .wpcf7-form input[type="submit"] {
  min-height: 50px;
  padding: 13px 22px;
  border: 0;
  border-radius: var(--xht-radius-sm);
  color: var(--xht-white);
  background: var(--xht-red-600);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  cursor: pointer;
}

.xht-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
}

.xht-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: var(--xht-white);
}

.xht-table th,
.xht-table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--xht-slate-200);
  text-align: left;
  vertical-align: top;
}

.xht-table th {
  color: var(--xht-navy-900);
  background: var(--xht-slate-100);
  font-size: 13px;
  font-weight: 800;
}

.xht-table tr:last-child td {
  border-bottom: 0;
}

.xht-note {
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  color: var(--xht-slate-700);
  background: #fff4f5;
  font-size: 14px;
}

.xht-cta-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: center;
  padding: 38px 42px;
  border-radius: var(--xht-radius-lg);
  color: var(--xht-white);
  background: linear-gradient(112deg, var(--xht-navy-900), #164c78);
}

.xht-cta-band h2 {
  margin-bottom: 8px;
  font-size: clamp(28px, 3vw, 40px);
}

.xht-cta-band p {
  margin-bottom: 0;
  color: #c9d6e2;
}

.xht-mobile-actions {
  display: none;
}

[dir="rtl"] .xht-eyebrow::before,
.rtl .xht-eyebrow::before {
  order: 2;
}

[dir="rtl"] .xht-checklist li,
.rtl .xht-checklist li {
  padding-right: 30px;
  padding-left: 0;
}

[dir="rtl"] .xht-checklist li::before,
.rtl .xht-checklist li::before {
  right: 0;
  left: auto;
}

[dir="rtl"] .xht-table th,
[dir="rtl"] .xht-table td,
.rtl .xht-table th,
.rtl .xht-table td {
  text-align: right;
}

@media (max-width: 1024px) {
  .xht-hero__inner {
    min-height: auto;
    grid-template-columns: 1fr 380px;
    gap: 38px;
  }

  .xht-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 54px;
  }
}

@media (max-width: 820px) {
  .xht-section {
    padding: 66px 0;
  }

  .xht-hero__inner,
  .xht-section-head,
  .xht-rfq,
  .xht-evidence {
    grid-template-columns: 1fr;
  }

  .xht-hero__inner {
    padding-top: 68px;
  }

  .xht-visual {
    min-height: 360px;
  }

  .xht-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-trust-strip__item:nth-child(2) {
    border-right: 0;
  }

  .xht-trust-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
  }

  .xht-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-cta-band {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .xht-container {
    width: min(100% - 28px, var(--xht-container));
  }

  .xht-section {
    padding: 54px 0;
  }

  .xht-site h1 {
    font-size: 39px;
  }

  .xht-site h2 {
    font-size: 31px;
  }

  .xht-actions,
  .xht-actions .xht-btn {
    width: 100%;
  }

  .xht-visual {
    min-height: 300px;
  }

  .xht-grid--2,
  .xht-grid--3,
  .xht-grid--4,
  .xht-steps,
  .xht-form-grid {
    grid-template-columns: 1fr;
  }

  .xht-step {
    margin-left: 22px;
    border-top: 0;
    border-left: 1px solid var(--xht-slate-300);
  }

  .xht-step::before {
    margin: 0 0 18px -51px;
  }

  .xht-evidence__large {
    min-height: 380px;
  }

  .xht-rfq {
    gap: 30px;
  }

  .xht-form-shell,
  .xht-card__body,
  .xht-cta-band {
    padding: 24px;
  }

  .xht-mobile-actions {
    position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 8px;
    gap: 8px;
    border-top: 1px solid var(--xht-slate-200);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -8px 26px rgba(7, 24, 44, .12);
  }

  .xht-mobile-actions a {
    display: grid;
    min-height: 46px;
    place-items: center;
    border-radius: var(--xht-radius-sm);
    color: var(--xht-white) !important;
    background: var(--xht-red-600);
    font-size: 13px;
    font-weight: 800;
  }

  .xht-mobile-actions a:last-child {
    background: #188758;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-site *,
  .xht-site *::before,
  .xht-site *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* XHT global layout safeguards */
html, body { overflow-x: hidden; }
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) { .site-branding img.custom-logo { width: 210px !important; } }
/* Prevent full-width page sections from creating horizontal scrollbars. */
html, body { overflow-x: hidden; }

/* Keep the horizontal brand mark compact and avoid duplicate branding text. */
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) {
  .site-branding img.custom-logo { width: 210px !important; }}/* Prevent full-width page sections from creating horizontal scrollbars. */
html, body { overflow-x: hidden; }

/* XHT site-wide floating contact: WeChat + full RFQ */
.xht-mobile-actions {
  display: none !important;
}

.xht-floating-contact,
.xht-floating-contact * {
  box-sizing: border-box;
}

.xht-floating-contact {
  position: fixed;
  right: 24px;
  bottom: 96px;
  z-index: 9998;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  width: max-content;
  max-width: calc(100vw - 32px);
  color: #07182c;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.35;
  text-align: left;
}

.xht-floating-contact .xht-i18n {
  display: none;
}

html[lang^="en"] .xht-floating-contact .xht-i18n-en,
html[lang^="zh"] .xht-floating-contact .xht-i18n-zh,
html[lang^="ar"] .xht-floating-contact .xht-i18n-ar,
html[lang^="ru"] .xht-floating-contact .xht-i18n-ru,
html[lang^="es"] .xht-floating-contact .xht-i18n-es {
  display: inline;
}

html[lang^="en"] .xht-floating-contact .xht-rfq-link.xht-i18n-en,
html[lang^="zh"] .xht-floating-contact .xht-rfq-link.xht-i18n-zh,
html[lang^="ar"] .xht-floating-contact .xht-rfq-link.xht-i18n-ar,
html[lang^="ru"] .xht-floating-contact .xht-rfq-link.xht-i18n-ru,
html[lang^="es"] .xht-floating-contact .xht-rfq-link.xht-i18n-es {
  display: flex;
}

.xht-wechat-fab {
  position: relative;
  margin: 0;
  padding: 0;
}

.xht-wechat-fab > summary {
  list-style: none;
}

.xht-wechat-fab > summary::-webkit-details-marker {
  display: none;
}

.xht-float-action {
  width: 154px;
  min-height: 50px;
  margin: 0;
  padding: 7px 12px 7px 8px;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(7, 24, 44, .16);
  border-radius: 999px;
  color: #07182c !important;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 10px 28px rgba(7, 24, 44, .16);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.2;
  text-decoration: none !important;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.xht-wechat-fab > summary.xht-float-action {
  display: flex;
}

.xht-float-action:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(7, 24, 44, .22);
}

.xht-wechat-fab > summary.xht-float-action:hover,
.xht-wechat-fab[open] > summary.xht-float-action {
  border-color: rgba(7, 193, 96, .62);
}

.xht-rfq-link:hover {
  border-color: rgba(215, 38, 56, .62);
}

.xht-float-action:focus-visible {
  outline: 3px solid rgba(28, 93, 146, .32);
  outline-offset: 3px;
}

.xht-float-symbol {
  display: inline-grid;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: -.02em;
}

.xht-wechat-symbol {
  background: #07c160;
  font-size: 17px;
}

.xht-rfq-symbol {
  background: #d72638;
  font-size: 10px;
  letter-spacing: .02em;
}

.xht-float-text {
  flex: 1 1 auto;
  white-space: nowrap;
}

.xht-wechat-fab > summary::after {
  content: "+";
  flex: 0 0 auto;
  color: #6c7888;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  transition: transform .18s ease;
}

.xht-wechat-fab[open] > summary::after {
  content: "×";
  transform: rotate(90deg);
}

.xht-wechat-card {
  position: absolute;
  right: 0;
  bottom: calc(100% + 12px);
  width: 268px;
  padding: 18px;
  border: 1px solid rgba(7, 24, 44, .12);
  border-radius: 18px;
  color: #17212f;
  background: #fff;
  box-shadow: 0 20px 54px rgba(7, 24, 44, .22);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px) scale(.985);
  transform-origin: bottom right;
  transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
}

.xht-wechat-fab:hover .xht-wechat-card,
.xht-wechat-fab:focus-within .xht-wechat-card,
.xht-wechat-fab[open] .xht-wechat-card {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.xht-qr-placeholder,
.xht-wechat-qr {
  display: grid;
  width: 176px;
  height: 176px;
  margin: 0 auto 13px;
  place-items: center;
  border: 1px dashed #b8c3d1;
  border-radius: 12px;
  background:
    linear-gradient(45deg, #f3f6f9 25%, transparent 25%) 0 0 / 16px 16px,
    linear-gradient(-45deg, #f3f6f9 25%, transparent 25%) 0 8px / 16px 16px,
    linear-gradient(45deg, transparent 75%, #f3f6f9 75%) 8px -8px / 16px 16px,
    linear-gradient(-45deg, transparent 75%, #f3f6f9 75%) -8px 0 / 16px 16px,
    #fff;
  object-fit: contain;
}

.xht-qr-placeholder span {
  display: grid;
  width: 54px;
  height: 54px;
  place-items: center;
  border-radius: 12px;
  color: #fff;
  background: #07c160;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: .08em;
}

.xht-wechat-card strong,
.xht-wechat-card .xht-qr-status,
.xht-wechat-card small {
  display: block;
  text-align: center;
}

.xht-wechat-card strong {
  margin-bottom: 5px;
  color: #07182c;
  font-size: 16px;
}

.xht-wechat-card .xht-qr-status {
  margin-bottom: 7px;
  color: #17835f;
  font-size: 12px;
  font-weight: 800;
}

.xht-wechat-card small {
  color: #5f6d7c;
  font-size: 12px;
  line-height: 1.5;
}

html[dir="rtl"] .xht-floating-contact {
  right: auto;
  left: 24px;
  align-items: flex-start;
  text-align: right;
}

html[dir="rtl"] .xht-wechat-card {
  right: auto;
  left: 0;
  transform-origin: bottom left;
}

@media (max-width: 767px) {
  .xht-floating-contact {
    right: 14px;
    bottom: 82px;
    max-width: calc(100vw - 28px);
    gap: 8px;
  }

  html[dir="rtl"] .xht-floating-contact {
    right: auto;
    left: 14px;
  }

  .xht-float-action {
    width: 138px;
    min-height: 46px;
    padding: 5px 10px 5px 6px;
    gap: 8px;
    font-size: 13px;
  }

  .xht-float-symbol {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
  }

  .xht-wechat-card {
    width: min(264px, calc(100vw - 28px));
    padding: 16px;
  }

  .xht-qr-placeholder,
  .xht-wechat-qr {
    width: 164px;
    height: 164px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-floating-contact *,
  .xht-floating-contact *::before,
  .xht-floating-contact *::after {
    transition: none !important;
  }
}

/* Neutralize WordPress automatic paragraph and line-break markup inside the fixed UI. */
.xht-floating-contact br {
  display: none !important;
}

.xht-floating-contact > p {
  display: contents;
  margin: 0;
  padding: 0;
}

.xht-wechat-card > p {
  margin: 0;
  padding: 0;
}

@media (max-width: 767px) and (max-height: 560px) {
  .xht-wechat-card {
    padding: 12px;
  }

  .xht-qr-placeholder,
  .xht-wechat-qr {
    width: 126px;
    height: 126px;
    margin-bottom: 8px;
  }

  .xht-wechat-card strong {
    margin-bottom: 3px;
    font-size: 15px;
  }

  .xht-wechat-card .xht-qr-status {
    margin-bottom: 4px;
  }

  .xht-wechat-card small {
    font-size: 11px;
    line-height: 1.35;
  }
}
/* XHT unified vertical contact dock v1 */
.xht-contact-dock{box-sizing:border-box;position:fixed;top:50%;right:18px;transform:translateY(-50%);z-index:9998;width:58px;padding:7px 5px;display:flex;flex-direction:column;align-items:center;background:#fff;border:1px solid rgba(11,33,61,.1);border-radius:999px;box-shadow:0 8px 26px rgba(11,33,61,.18);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
.xht-contact-dock *{box-sizing:border-box;}
.xht-contact-dock>details{position:relative;width:48px;height:48px;margin:0;padding:0;}
.xht-contact-dock summary{list-style:none;}
.xht-contact-dock summary::-webkit-details-marker{display:none;}
.xht-contact-dock .xht-dock-action{position:relative;width:48px;height:48px;margin:0;padding:0;display:flex!important;align-items:center;justify-content:center;color:#f5a000;background:transparent;border:0;border-radius:50%;text-decoration:none!important;cursor:pointer;transition:color .18s ease,background .18s ease,transform .18s ease;}
.xht-contact-dock>details:not(:last-child)>summary,.xht-contact-dock>a:not(:last-child){border-bottom:1px solid #eef1f5;}
.xht-contact-dock .xht-dock-action:hover,.xht-contact-dock .xht-dock-action:focus-visible,.xht-contact-dock details[open]>.xht-dock-action{color:#df8700;background:#fff4d6;outline:0;}
.xht-contact-dock .xht-dock-action:focus-visible{box-shadow:0 0 0 3px rgba(245,160,0,.24);}
.xht-contact-dock .xht-dock-icon{display:block;width:27px;height:27px;fill:currentColor;pointer-events:none;}
.xht-contact-dock .xht-dock-wechat .xht-dock-icon{width:30px;height:30px;}
.xht-contact-dock .xht-dock-tip{position:absolute;top:50%;right:calc(100% + 12px);transform:translate(6px,-50%);display:block;min-width:max-content;padding:7px 10px;color:#fff;background:#0b213d;border-radius:8px;font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;box-shadow:0 6px 18px rgba(11,33,61,.2);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;}
.xht-contact-dock .xht-dock-tip:after{content:"";position:absolute;top:50%;left:100%;transform:translateY(-50%);border:5px solid transparent;border-left-color:#0b213d;}
.xht-contact-dock .xht-dock-action:hover .xht-dock-tip,.xht-contact-dock .xht-dock-action:focus-visible .xht-dock-tip{opacity:1;visibility:visible;transform:translate(0,-50%);}
.xht-contact-dock details[open] .xht-dock-tip{opacity:0!important;visibility:hidden!important;}
.xht-contact-dock .xht-dock-i18n{display:none;}
html[lang^="en"] .xht-contact-dock .xht-dock-en,html[lang^="zh"] .xht-contact-dock .xht-dock-zh,html[lang^="ar"] .xht-contact-dock .xht-dock-ar,html[lang^="ru"] .xht-contact-dock .xht-dock-ru,html[lang^="es"] .xht-contact-dock .xht-dock-es{display:inline;}
.xht-contact-dock .xht-dock-qr-card{position:absolute;top:-20px;right:calc(100% + 14px);width:236px;padding:14px;display:none;flex-direction:column;align-items:center;gap:6px;color:#0b213d;background:#fff;border:1px solid rgba(11,33,61,.12);border-radius:18px;box-shadow:0 14px 38px rgba(11,33,61,.22);text-align:center;}
.xht-contact-dock details[open]>.xht-dock-qr-card{display:flex;}
.xht-contact-dock .xht-dock-whatsapp-card{top:-116px;}
.xht-contact-dock .xht-dock-qr{display:block!important;width:176px!important;height:176px!important;max-width:none!important;margin:0!important;padding:4px;object-fit:contain;background:#fff;border:1px solid #e4e9ef;border-radius:12px;}
.xht-contact-dock .xht-dock-qr-card strong{display:block;color:#0b213d;font-size:14px;line-height:1.35;}
.xht-contact-dock .xht-dock-qr-card small{display:block;color:#5b6b7f;font-size:11px;line-height:1.4;}
.xht-contact-dock .xht-dock-direct{display:inline-flex;align-items:center;justify-content:center;margin-top:3px;padding:7px 12px;color:#fff!important;background:#25d366;border-radius:999px;font-size:12px;font-weight:800;line-height:1.2;text-decoration:none!important;}
.xht-contact-dock .xht-dock-direct:hover,.xht-contact-dock .xht-dock-direct:focus-visible{background:#1fae55;}
@media(max-width:782px){.xht-contact-dock{right:10px;width:52px;padding:5px 3px;}.xht-contact-dock>details,.xht-contact-dock .xht-dock-action{width:44px;height:44px;}.xht-contact-dock .xht-dock-icon{width:24px;height:24px;}.xht-contact-dock .xht-dock-wechat .xht-dock-icon{width:27px;height:27px;}.xht-contact-dock .xht-dock-tip{display:none;}.xht-contact-dock .xht-dock-qr-card{right:calc(100% + 10px);top:-18px;width:220px;padding:12px;}.xht-contact-dock .xht-dock-whatsapp-card{top:-106px;}.xht-contact-dock .xht-dock-qr{width:158px!important;height:158px!important;}.xht-contact-dock .xht-dock-qr-card strong{font-size:13px;}.xht-contact-dock .xht-dock-qr-card small{font-size:10px;}}
@media(max-width:360px){.xht-contact-dock{right:6px;}.xht-contact-dock .xht-dock-qr-card{right:calc(100% + 7px);width:202px;padding:10px;}.xht-contact-dock .xht-dock-qr{width:146px!important;height:146px!important;}}
@media(prefers-reduced-motion:reduce){.xht-contact-dock .xht-dock-action,.xht-contact-dock .xht-dock-tip{transition:none;}}


/* XHT dock hover reveal v1 */
@media (hover:hover) and (pointer:fine){
  .xht-contact-dock .xht-dock-wechat:hover>.xht-dock-qr-card,
  .xht-contact-dock .xht-dock-whatsapp:hover>.xht-dock-qr-card{display:flex;}
  .xht-contact-dock .xht-dock-wechat:hover .xht-dock-tip,
  .xht-contact-dock .xht-dock-whatsapp:hover .xht-dock-tip{opacity:0!important;visibility:hidden!important;}
  .xht-contact-dock .xht-dock-qr-card:after{content:"";position:absolute;top:0;right:-14px;width:14px;height:100%;}
}


/* XHT dock hover bridge fix v2 */
@media (hover:hover) and (pointer:fine){
  .xht-contact-dock .xht-dock-qr-card:after{right:-20px;width:22px;background:rgba(255,255,255,.001);}
}


/* XHT dock seamless hover v3 */
@media (hover:hover) and (pointer:fine){
  .xht-contact-dock .xht-dock-qr-card{right:calc(100% - 2px);}
}

/* XHT English desktop sales header */
@media (min-width: 922px) {
  html[lang="en-US"] #masthead {
    position: sticky;
    top: 0;
    z-index: 999;
    background: #ffffff;
    box-shadow: 0 1px 0 rgba(7, 24, 44, 0.10), 0 8px 24px rgba(7, 24, 44, 0.06);
  }

  html[lang="en-US"] body.admin-bar #masthead {
    top: 32px;
  }

  html[lang="en-US"] #ast-desktop-header .ast-primary-header-bar,
  html[lang="en-US"] #ast-desktop-header .main-header-bar {
    min-height: 82px;
  }

  html[lang="en-US"] #ast-desktop-header .site-logo-img img {
    width: 240px;
    max-width: 240px;
    height: auto;
  }

  html[lang="en-US"] #ast-desktop-header .main-header-menu > .menu-item > .menu-link {
    height: 82px;
    padding: 0 17px;
    color: #17212f;
    font-size: 15px;
    font-weight: 700;
  }

  html[lang="en-US"] #ast-desktop-header .main-header-menu > .menu-item > .menu-link:hover,
  html[lang="en-US"] #ast-desktop-header .main-header-menu > .current-menu-item > .menu-link {
    color: #b91f2f;
  }

  html[lang="en-US"] #ast-desktop-header .main-header-menu > .menu-item > .menu-link[href*="/contact-us/"] {
    height: 46px;
    min-height: 46px;
    margin-left: 12px;
    padding: 0 20px;
    border-radius: 6px;
    color: #ffffff;
    background: #d72638;
    font-weight: 800;
    letter-spacing: 0.02em;
    box-shadow: 0 8px 18px rgba(215, 38, 56, 0.18);
  }

  html[lang="en-US"] #ast-desktop-header .main-header-menu > .menu-item > .menu-link[href*="/contact-us/"]:hover {
    color: #ffffff;
    background: #b91f2f;
  }
}
  min-height: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: visible !important;
}
.site-above-footer-wrap .ast-builder-grid-row-container-inner,
.site-above-footer-wrap .site-above-footer-inner-wrap {
  min-height: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}


.xht-site img {
  display: block;
  width: 100%;
  height: auto;
}

.xht-site a {
  color: inherit;
  text-decoration: none;
}

.xht-container {
  width: min(100% - 40px, var(--xht-container));
  margin-inline: auto;
}

.xht-section {
  padding: 88px 0;
}

.xht-section--soft {
  background: var(--xht-slate-100);
}

.xht-section--dark {
  color: var(--xht-white);
  background: var(--xht-navy-950);
}

.xht-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
  gap: 44px;
  align-items: end;
  margin-bottom: 40px;
}

.xht-section-head--center {
  display: block;
  max-width: 760px;
  margin: 0 auto 44px;
  text-align: center;
}

.xht-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  color: var(--xht-red-600);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.xht-eyebrow::before {
  width: 28px;
  height: 2px;
  background: currentColor;
  content: "";
}

.xht-site h1,
.xht-site h2,
.xht-site h3,
.xht-site p {
  margin-top: 0;
}

.xht-site h1,
.xht-site h2,
.xht-site h3 {
  color: inherit;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.12;
}

.xht-site h1 {
  margin-bottom: 22px;
  font-size: clamp(38px, 5vw, 66px);
}

.xht-site h2 {
  margin-bottom: 18px;
  font-size: clamp(30px, 3.4vw, 46px);
}

.xht-site h3 {
  margin-bottom: 12px;
  font-size: clamp(20px, 2vw, 25px);
}

.xht-lead {
  color: var(--xht-slate-700);
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.7;
}

.xht-muted {
  color: var(--xht-slate-500);
}

.xht-section--dark .xht-lead,
.xht-section--dark .xht-muted {
  color: #bfccda;
}

.xht-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.xht-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: var(--xht-radius-sm);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.035em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.xht-btn:hover,
.xht-btn:focus-visible {
  transform: translateY(-2px);
}

.xht-btn:focus-visible,
.xht-card-link:focus-visible {
  outline: 3px solid rgba(215, 38, 56, 0.28);
  outline-offset: 3px;
}

.xht-btn--primary {
  color: var(--xht-white) !important;
  background: var(--xht-red-600);
}

.xht-btn--primary:hover,
.xht-btn--primary:focus-visible {
  background: var(--xht-red-700);
}

.xht-btn--secondary {
  color: var(--xht-navy-900) !important;
  border-color: var(--xht-slate-300);
  background: var(--xht-white);
}

.xht-btn--ghost {
  color: var(--xht-white) !important;
  border-color: rgba(255, 255, 255, 0.38);
  background: transparent;
}

.xht-hero {
  position: relative;
  color: var(--xht-white);
  background:
    radial-gradient(circle at 76% 18%, rgba(28, 93, 146, 0.45), transparent 31%),
    linear-gradient(118deg, var(--xht-navy-950) 0%, var(--xht-navy-900) 60%, #123b63 100%);
}

.xht-hero::after {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  pointer-events: none;
  content: "";
}

.xht-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
  gap: 60px;
  align-items: center;
  padding: 82px 0 70px;
}

.xht-hero__copy {
  max-width: 710px;
}

.xht-hero h1 {
  font-size: clamp(38px, 4.65vw, 62px);
}

.xht-hero .xht-lead {
  max-width: 690px;
  color: #d6e1ec;
}

.xht-visual {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--xht-radius-lg);
  background:
    radial-gradient(circle at 50% 38%, rgba(255, 255, 255, .96), rgba(232, 237, 242, .92) 36%, rgba(156, 171, 186, .6) 68%, rgba(11, 33, 61, .55) 100%),
    var(--xht-slate-200);
  box-shadow: var(--xht-shadow-md);
}

.xht-visual::before,
.xht-visual::after {
  position: absolute;
  border: 22px solid rgba(7, 24, 44, 0.33);
  border-radius: 30%;
  content: "";
}

.xht-visual::before {
  width: 230px;
  height: 230px;
  top: 20%;
  left: 20%;
  transform: rotate(28deg);
}

.xht-visual::after {
  width: 135px;
  height: 135px;
  right: 12%;
  bottom: 9%;
  transform: rotate(-12deg);
}

.xht-visual__label {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 13px 15px;
  border-radius: var(--xht-radius-sm);
  color: #dce6ef;
  background: rgba(7, 24, 44, 0.9);
  font-size: 13px;
  line-height: 1.45;
}

.xht-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item {
  padding: 20px 18px;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item:last-child {
  border-right: 0;
}

.xht-trust-strip strong {
  display: block;
  margin-bottom: 3px;
  color: var(--xht-white);
  font-size: 15px;
}

.xht-trust-strip span {
  color: #aebdcb;
  font-size: 13px;
}

.xht-grid {
  display: grid;
  gap: 24px;
}

.xht-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.xht-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xht-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xht-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-sm);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.xht-card:hover {
  transform: translateY(-4px);
  border-color: #aab7c6;
  box-shadow: var(--xht-shadow-md);
}

.xht-card__body {
  padding: 25px;
}

.xht-card__body p:last-child {
  margin-bottom: 0;
}

.xht-card__icon {
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 12px;
  color: var(--xht-red-600);
  background: #fff0f2;
  font-size: 18px;
  font-weight: 900;
}

.xht-card__media {
  position: relative;
  display: grid;
  min-height: 210px;
  place-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--xht-slate-200);
  background:
    radial-gradient(circle, #ffffff 0%, #eef2f6 60%, #dde4eb 100%);
}

.xht-card__media::before {
  width: 105px;
  height: 105px;
  border: 18px solid #93a2b1;
  border-radius: 26%;
  box-shadow: inset 0 0 0 2px #6f7f90, 0 18px 28px rgba(7, 24, 44, .16);
  transform: rotate(18deg);
  content: "";
}

.xht-card__media-label {
  position: absolute;
  right: 12px;
  bottom: 10px;
  left: 12px;
  color: var(--xht-slate-500);
  font-size: 11px;
  text-align: center;
}

.xht-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--xht-red-600) !important;
  font-size: 14px;
  font-weight: 800;
}

.xht-card-link::after {
  content: "→";
}

.xht-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 18px 0;
  padding: 0;
  list-style: none;
}

.xht-tags li {
  padding: 5px 9px;
  border: 1px solid var(--xht-slate-200);
  border-radius: 999px;
  color: var(--xht-slate-700);
  background: var(--xht-slate-100);
  font-size: 12px;
  line-height: 1.3;
}

.xht-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  counter-reset: xht-step;
}

.xht-step {
  position: relative;
  padding: 28px 24px;
  border-top: 1px solid var(--xht-slate-300);
  counter-increment: xht-step;
}

.xht-step::before {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  margin: -49px 0 20px;
  border: 6px solid var(--xht-white);
  border-radius: 50%;
  color: var(--xht-white);
  background: var(--xht-red-600);
  box-sizing: content-box;
  font-size: 14px;
  font-weight: 800;
  content: counter(xht-step, decimal-leading-zero);
}

.xht-step h3 {
  font-size: 19px;
}

.xht-step p {
  margin-bottom: 0;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-evidence {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 24px;
}

.xht-evidence__large,
.xht-evidence__small {
  position: relative;
  overflow: hidden;
  min-height: 260px;
  border-radius: var(--xht-radius-md);
  background: linear-gradient(135deg, #cad4de, #f8fafc 55%, #a8b6c4);
}

.xht-evidence__large {
  min-height: 544px;
}

.xht-evidence__stack {
  display: grid;
  gap: 24px;
}

.xht-evidence__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px;
  color: var(--xht-white);
  background: linear-gradient(transparent, rgba(7, 24, 44, .92));
}

.xht-evidence__caption strong {
  display: block;
  font-size: 20px;
}

.xht-evidence__caption span {
  color: #d5e0ea;
  font-size: 13px;
}

.xht-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
  gap: 46px;
  align-items: start;
}

.xht-checklist {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.xht-checklist li {
  position: relative;
  margin-bottom: 13px;
  padding-left: 30px;
}

.xht-checklist li::before {
  position: absolute;
  top: .08em;
  left: 0;
  color: var(--xht-success);
  font-weight: 900;
  content: "✓";
}

.xht-form-shell {
  padding: 30px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-md);
}

.xht-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.xht-field--full {
  grid-column: 1 / -1;
}

.xht-form-shell label,
.xht-site .wpcf7-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--xht-slate-900);
  font-size: 13px;
  font-weight: 800;
}

.xht-form-shell input,
.xht-form-shell select,
.xht-form-shell textarea,
.xht-site .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.xht-site .wpcf7-form select,
.xht-site .wpcf7-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 13px;
  border: 1px solid var(--xht-slate-300);
  border-radius: var(--xht-radius-sm);
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font: inherit;
}

.xht-form-shell textarea,
.xht-site .wpcf7-form textarea {
  min-height: 126px;
  resize: vertical;
}

.xht-form-shell input:focus,
.xht-form-shell select:focus,
.xht-form-shell textarea:focus,
.xht-site .wpcf7-form input:focus,
.xht-site .wpcf7-form select:focus,
.xht-site .wpcf7-form textarea:focus {
  border-color: var(--xht-blue-600);
  outline: 3px solid rgba(28, 93, 146, .14);
}

.xht-form-shell button,
.xht-site .wpcf7-form input[type="submit"] {
  min-height: 50px;
  padding: 13px 22px;
  border: 0;
  border-radius: var(--xht-radius-sm);
  color: var(--xht-white);
  background: var(--xht-red-600);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  cursor: pointer;
}

.xht-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
}

.xht-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: var(--xht-white);
}

.xht-table th,
.xht-table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--xht-slate-200);
  text-align: left;
  vertical-align: top;
}

.xht-table th {
  color: var(--xht-navy-900);
  background: var(--xht-slate-100);
  font-size: 13px;
  font-weight: 800;
}

.xht-table tr:last-child td {
  border-bottom: 0;
}

.xht-note {
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  color: var(--xht-slate-700);
  background: #fff4f5;
  font-size: 14px;
}

.xht-cta-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: center;
  padding: 38px 42px;
  border-radius: var(--xht-radius-lg);
  color: var(--xht-white);
  background: linear-gradient(112deg, var(--xht-navy-900), #164c78);
}

.xht-cta-band h2 {
  margin-bottom: 8px;
  font-size: clamp(28px, 3vw, 40px);
}

.xht-cta-band p {
  margin-bottom: 0;
  color: #c9d6e2;
}

/* Contact / RFQ conversion layout. */
.xht-contact-hero {
  padding-bottom: 0;
}

.xht-contact-hero .xht-section-head {
  padding-bottom: 54px;
}

.xht-contact-hero .xht-trust-strip {
  margin-top: 0;
}

.xht-contact-channels {
  padding-top: 66px;
  padding-bottom: 66px;
}

.xht-contact-channels .xht-grid--4 {
  width: min(100%, 980px);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-inline: auto;
}

.xht-contact-channels .xht-card__body {
  display: flex;
  min-height: 220px;
  flex-direction: column;
  align-items: flex-start;
}

.xht-contact-channels .xht-card-link {
  max-width: 100%;
  margin-top: auto;
  overflow-wrap: anywhere;
  white-space: nowrap;
}

.xht-contact-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(540px, 1.22fr);
  gap: 42px;
  align-items: start;
}

.xht-contact-summary {
  position: sticky;
  top: 104px;
}

.xht-contact-summary .xht-note {
  margin-top: 28px;
}

.xht-contact-form .wpcf7-form > p {
  margin-bottom: 17px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(1),
.xht-contact-form .wpcf7-form > p:nth-of-type(3) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(4) {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(210px, .65fr);
  gap: 18px;
  align-items: end;
}

.xht-contact-form .wpcf7-form-control-wrap {
  display: block;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(5) {
  margin-top: -8px;
  color: var(--xht-slate-500);
  font-size: 12px;
}

.xht-contact-form .wpcf7-submit {
  width: 100%;
  margin-top: 14px;
}

.xht-contact-map-shell {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(520px, 1.28fr);
  gap: 38px;
  align-items: stretch;
}

.xht-contact-map-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.xht-contact-map {
  overflow: hidden;
  min-height: 390px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-slate-100);
  box-shadow: var(--xht-shadow-md);
}

.xht-contact-map iframe {
  display: block;
  width: 100%;
  height: 390px;
  border: 0;
}

.xht-contact-address {
  margin: 22px 0;
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  background: var(--xht-slate-100);
}

.xht-contact-address strong,
.xht-contact-address span {
  display: block;
}

.xht-contact-address span {
  margin-top: 4px;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-contact-process .xht-steps {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 30px;
}

.xht-mobile-actions {
  display: none;
}

[dir="rtl"] .xht-eyebrow::before,
.rtl .xht-eyebrow::before {
  order: 2;
}

[dir="rtl"] .xht-checklist li,
.rtl .xht-checklist li {
  padding-right: 30px;
  padding-left: 0;
}

[dir="rtl"] .xht-checklist li::before,
.rtl .xht-checklist li::before {
  right: 0;
  left: auto;
}

[dir="rtl"] .xht-table th,
[dir="rtl"] .xht-table td,
.rtl .xht-table th,
.rtl .xht-table td {
  text-align: right;
}

@media (max-width: 1024px) {
  .xht-hero__inner {
    min-height: auto;
    grid-template-columns: 1fr 380px;
    gap: 38px;
  }

  .xht-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 54px;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: minmax(0, .72fr) minmax(430px, 1.28fr);
  }
}

@media (max-width: 820px) {
  .xht-section {
    padding: 66px 0;
  }

  .xht-hero__inner,
  .xht-section-head,
  .xht-rfq,
  .xht-evidence {
    grid-template-columns: 1fr;
  }

  .xht-hero__inner {
    padding-top: 68px;
  }

  .xht-visual {
    min-height: 360px;
  }

  .xht-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-trust-strip__item:nth-child(2) {
    border-right: 0;
  }

  .xht-trust-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
  }

  .xht-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-cta-band {
    grid-template-columns: 1fr;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: 1fr;
  }

  .xht-contact-summary {
    position: static;
  }
}

@media (max-width: 600px) {
  .xht-container {
    width: min(100% - 28px, var(--xht-container));
  }

  .xht-section {
    padding: 54px 0;
  }

  .xht-site h1 {
    font-size: 39px;
  }

  .xht-site h2 {
    font-size: 31px;
  }

  .xht-actions,
  .xht-actions .xht-btn {
    width: 100%;
  }

  .xht-visual {
    min-height: 300px;
  }

  .xht-grid--2,
  .xht-grid--3,
  .xht-grid--4,
  .xht-steps,
  .xht-form-grid {
    grid-template-columns: 1fr;
  }

  .xht-contact-form .wpcf7-form > p:nth-of-type(1),
  .xht-contact-form .wpcf7-form > p:nth-of-type(3),
  .xht-contact-form .wpcf7-form > p:nth-of-type(4),
  .xht-contact-process .xht-steps {
    grid-template-columns: 1fr;
  }

  .xht-contact-channels .xht-card__body {
    min-height: auto;
  }

  .xht-contact-channels .xht-card-link {
    margin-top: 8px;
    white-space: normal;
  }

  .xht-contact-map,
  .xht-contact-map iframe {
    min-height: 330px;
    height: 330px;
  }

  .xht-step {
    margin-left: 22px;
    border-top: 0;
    border-left: 1px solid var(--xht-slate-300);
  }

  .xht-step::before {
    margin: 0 0 18px -51px;
  }

  .xht-evidence__large {
    min-height: 380px;
  }

  .xht-rfq {
    gap: 30px;
  }

  .xht-form-shell,
  .xht-card__body,
  .xht-cta-band {
    padding: 24px;
  }

  .xht-mobile-actions {
    position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 8px;
    gap: 8px;
    border-top: 1px solid var(--xht-slate-200);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -8px 26px rgba(7, 24, 44, .12);
  }

  .xht-mobile-actions a {
    display: grid;
    min-height: 46px;
    place-items: center;
    border-radius: var(--xht-radius-sm);
    color: var(--xht-white) !important;
    background: var(--xht-red-600);
    font-size: 13px;
    font-weight: 800;
  }

  .xht-mobile-actions a:last-child {
    background: #188758;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-site *,
  .xht-site *::before,
  .xht-site *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* XHT global layout safeguards */
html, body { overflow-x: hidden; }
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) { .site-branding img.custom-logo { width: 210px !important; } }
/* XHT Fasteners design system v1
   Scoped to .xht-site to minimize conflicts with Astra and plugins. */

:root {
  --xht-navy-950: #07182c;
  --xht-navy-900: #0b213d;
  --xht-navy-800: #123252;
  --xht-blue-600: #1c5d92;
  --xht-red-600: #d72638;
  --xht-red-700: #b91f2f;
  --xht-slate-900: #17212f;
  --xht-slate-700: #465568;
  --xht-slate-500: #6c7888;
  --xht-slate-300: #cfd7e2;
  --xht-slate-200: #e2e8f0;
  --xht-slate-100: #f3f6f9;
  --xht-white: #ffffff;
  --xht-success: #17835f;
  --xht-shadow-sm: 0 8px 24px rgba(7, 24, 44, 0.08);
  --xht-shadow-md: 0 18px 46px rgba(7, 24, 44, 0.13);
  --xht-radius-sm: 8px;
  --xht-radius-md: 14px;
  --xht-radius-lg: 22px;
  --xht-container: 1200px;
}

/* Full-width canvas while retaining Astra's global header and footer. */
.page-template-elementor_header_footer .site-content > .ast-container {
  width: 100%;
  max-width: none;
  padding: 0;
}

.page-template-elementor_header_footer .site-content,
.page-template-elementor_header_footer.ast-plain-container #primary {
  margin: 0;
}

.xht-site,
.xht-site * {
  box-sizing: border-box;
}

.xht-site {
  overflow: hidden;
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

.xht-site img {
  display: block;
  width: 100%;
  height: auto;
}

.xht-site a {
  color: inherit;
  text-decoration: none;
}

.xht-container {
  width: min(100% - 40px, var(--xht-container));
  margin-inline: auto;
}

.xht-section {
  padding: 88px 0;
}

.xht-section--soft {
  background: var(--xht-slate-100);
}

.xht-section--dark {
  color: var(--xht-white);
  background: var(--xht-navy-950);
}

.xht-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
  gap: 44px;
  align-items: end;
  margin-bottom: 40px;
}

.xht-section-head--center {
  display: block;
  max-width: 760px;
  margin: 0 auto 44px;
  text-align: center;
}

.xht-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  color: var(--xht-red-600);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.xht-eyebrow::before {
  width: 28px;
  height: 2px;
  background: currentColor;
  content: "";
}

.xht-site h1,
.xht-site h2,
.xht-site h3,
.xht-site p {
  margin-top: 0;
}

.xht-site h1,
.xht-site h2,
.xht-site h3 {
  color: inherit;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.12;
}

.xht-site h1 {
  margin-bottom: 22px;
  font-size: clamp(38px, 5vw, 66px);
}

.xht-site h2 {
  margin-bottom: 18px;
  font-size: clamp(30px, 3.4vw, 46px);
}

.xht-site h3 {
  margin-bottom: 12px;
  font-size: clamp(20px, 2vw, 25px);
}

.xht-lead {
  color: var(--xht-slate-700);
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.7;
}

.xht-muted {
  color: var(--xht-slate-500);
}

.xht-section--dark .xht-lead,
.xht-section--dark .xht-muted {
  color: #bfccda;
}

.xht-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.xht-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: var(--xht-radius-sm);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.035em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.xht-btn:hover,
.xht-btn:focus-visible {
  transform: translateY(-2px);
}

.xht-btn:focus-visible,
.xht-card-link:focus-visible {
  outline: 3px solid rgba(215, 38, 56, 0.28);
  outline-offset: 3px;
}

.xht-btn--primary {
  color: var(--xht-white) !important;
  background: var(--xht-red-600);
}

.xht-btn--primary:hover,
.xht-btn--primary:focus-visible {
  background: var(--xht-red-700);
}

.xht-btn--secondary {
  color: var(--xht-navy-900) !important;
  border-color: var(--xht-slate-300);
  background: var(--xht-white);
}

.xht-btn--ghost {
  color: var(--xht-white) !important;
  border-color: rgba(255, 255, 255, 0.38);
  background: transparent;
}

.xht-hero {
  position: relative;
  color: var(--xht-white);
  background:
    radial-gradient(circle at 76% 18%, rgba(28, 93, 146, 0.45), transparent 31%),
    linear-gradient(118deg, var(--xht-navy-950) 0%, var(--xht-navy-900) 60%, #123b63 100%);
}

.xht-hero::after {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  pointer-events: none;
  content: "";
}

.xht-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
  gap: 60px;
  align-items: center;
  padding: 82px 0 70px;
}

.xht-hero__copy {
  max-width: 710px;
}

.xht-hero h1 {
  font-size: clamp(38px, 4.65vw, 62px);
}

.xht-hero .xht-lead {
  max-width: 690px;
  color: #d6e1ec;
}

.xht-visual {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--xht-radius-lg);
  background:
    radial-gradient(circle at 50% 38%, rgba(255, 255, 255, .96), rgba(232, 237, 242, .92) 36%, rgba(156, 171, 186, .6) 68%, rgba(11, 33, 61, .55) 100%),
    var(--xht-slate-200);
  box-shadow: var(--xht-shadow-md);
}

.xht-visual::before,
.xht-visual::after {
  position: absolute;
  border: 22px solid rgba(7, 24, 44, 0.33);
  border-radius: 30%;
  content: "";
}

.xht-visual::before {
  width: 230px;
  height: 230px;
  top: 20%;
  left: 20%;
  transform: rotate(28deg);
}

.xht-visual::after {
  width: 135px;
  height: 135px;
  right: 12%;
  bottom: 9%;
  transform: rotate(-12deg);
}

.xht-visual__label {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 13px 15px;
  border-radius: var(--xht-radius-sm);
  color: #dce6ef;
  background: rgba(7, 24, 44, 0.9);
  font-size: 13px;
  line-height: 1.45;
}

.xht-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item {
  padding: 20px 18px;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item:last-child {
  border-right: 0;
}

.xht-trust-strip strong {
  display: block;
  margin-bottom: 3px;
  color: var(--xht-white);
  font-size: 15px;
}

.xht-trust-strip span {
  color: #aebdcb;
  font-size: 13px;
}

.xht-grid {
  display: grid;
  gap: 24px;
}

.xht-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.xht-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xht-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xht-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-sm);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.xht-card:hover {
  transform: translateY(-4px);
  border-color: #aab7c6;
  box-shadow: var(--xht-shadow-md);
}

.xht-card__body {
  padding: 25px;
}

.xht-card__body p:last-child {
  margin-bottom: 0;
}

.xht-card__icon {
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 12px;
  color: var(--xht-red-600);
  background: #fff0f2;
  font-size: 18px;
  font-weight: 900;
}

.xht-card__media {
  position: relative;
  display: grid;
  min-height: 210px;
  place-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--xht-slate-200);
  background:
    radial-gradient(circle, #ffffff 0%, #eef2f6 60%, #dde4eb 100%);
}

.xht-card__media::before {
  width: 105px;
  height: 105px;
  border: 18px solid #93a2b1;
  border-radius: 26%;
  box-shadow: inset 0 0 0 2px #6f7f90, 0 18px 28px rgba(7, 24, 44, .16);
  transform: rotate(18deg);
  content: "";
}

.xht-card__media-label {
  position: absolute;
  right: 12px;
  bottom: 10px;
  left: 12px;
  color: var(--xht-slate-500);
  font-size: 11px;
  text-align: center;
}

.xht-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--xht-red-600) !important;
  font-size: 14px;
  font-weight: 800;
}

.xht-card-link::after {
  content: "→";
}

.xht-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 18px 0;
  padding: 0;
  list-style: none;
}

.xht-tags li {
  padding: 5px 9px;
  border: 1px solid var(--xht-slate-200);
  border-radius: 999px;
  color: var(--xht-slate-700);
  background: var(--xht-slate-100);
  font-size: 12px;
  line-height: 1.3;
}

.xht-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  counter-reset: xht-step;
}

.xht-step {
  position: relative;
  padding: 28px 24px;
  border-top: 1px solid var(--xht-slate-300);
  counter-increment: xht-step;
}

.xht-step::before {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  margin: -49px 0 20px;
  border: 6px solid var(--xht-white);
  border-radius: 50%;
  color: var(--xht-white);
  background: var(--xht-red-600);
  box-sizing: content-box;
  font-size: 14px;
  font-weight: 800;
  content: counter(xht-step, decimal-leading-zero);
}

.xht-step h3 {
  font-size: 19px;
}

.xht-step p {
  margin-bottom: 0;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-evidence {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 24px;
}

.xht-evidence__large,
.xht-evidence__small {
  position: relative;
  overflow: hidden;
  min-height: 260px;
  border-radius: var(--xht-radius-md);
  background: linear-gradient(135deg, #cad4de, #f8fafc 55%, #a8b6c4);
}

.xht-evidence__large {
  min-height: 544px;
}

.xht-evidence__stack {
  display: grid;
  gap: 24px;
}

.xht-evidence__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px;
  color: var(--xht-white);
  background: linear-gradient(transparent, rgba(7, 24, 44, .92));
}

.xht-evidence__caption strong {
  display: block;
  font-size: 20px;
}

.xht-evidence__caption span {
  color: #d5e0ea;
  font-size: 13px;
}

.xht-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
  gap: 46px;
  align-items: start;
}

.xht-checklist {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.xht-checklist li {
  position: relative;
  margin-bottom: 13px;
  padding-left: 30px;
}

.xht-checklist li::before {
  position: absolute;
  top: .08em;
  left: 0;
  color: var(--xht-success);
  font-weight: 900;
  content: "✓";
}

.xht-form-shell {
  padding: 30px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-md);
}

.xht-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.xht-field--full {
  grid-column: 1 / -1;
}

.xht-form-shell label,
.xht-site .wpcf7-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--xht-slate-900);
  font-size: 13px;
  font-weight: 800;
}

.xht-form-shell input,
.xht-form-shell select,
.xht-form-shell textarea,
.xht-site .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.xht-site .wpcf7-form select,
.xht-site .wpcf7-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 13px;
  border: 1px solid var(--xht-slate-300);
  border-radius: var(--xht-radius-sm);
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font: inherit;
}

.xht-form-shell textarea,
.xht-site .wpcf7-form textarea {
  min-height: 126px;
  resize: vertical;
}

.xht-form-shell input:focus,
.xht-form-shell select:focus,
.xht-form-shell textarea:focus,
.xht-site .wpcf7-form input:focus,
.xht-site .wpcf7-form select:focus,
.xht-site .wpcf7-form textarea:focus {
  border-color: var(--xht-blue-600);
  outline: 3px solid rgba(28, 93, 146, .14);
}

.xht-form-shell button,
.xht-site .wpcf7-form input[type="submit"] {
  min-height: 50px;
  padding: 13px 22px;
  border: 0;
  border-radius: var(--xht-radius-sm);
  color: var(--xht-white);
  background: var(--xht-red-600);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  cursor: pointer;
}

.xht-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
}

.xht-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: var(--xht-white);
}

.xht-table th,
.xht-table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--xht-slate-200);
  text-align: left;
  vertical-align: top;
}

.xht-table th {
  color: var(--xht-navy-900);
  background: var(--xht-slate-100);
  font-size: 13px;
  font-weight: 800;
}

.xht-table tr:last-child td {
  border-bottom: 0;
}

.xht-note {
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  color: var(--xht-slate-700);
  background: #fff4f5;
  font-size: 14px;
}

.xht-cta-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: center;
  padding: 38px 42px;
  border-radius: var(--xht-radius-lg);
  color: var(--xht-white);
  background: linear-gradient(112deg, var(--xht-navy-900), #164c78);
}

.xht-cta-band h2 {
  margin-bottom: 8px;
  font-size: clamp(28px, 3vw, 40px);
}

.xht-cta-band p {
  margin-bottom: 0;
  color: #c9d6e2;
}

/* Contact / RFQ conversion layout. */
.xht-contact-hero {
  padding-bottom: 0;
}

.xht-contact-hero .xht-section-head {
  padding-bottom: 54px;
}

.xht-contact-hero .xht-trust-strip {
  margin-top: 0;
}

.xht-contact-channels {
  padding-top: 66px;
  padding-bottom: 66px;
}

.xht-contact-channels .xht-card__body {
  min-height: 238px;
}

.xht-contact-channels .xht-card-link {
  overflow-wrap: anywhere;
}

.xht-contact-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(540px, 1.22fr);
  gap: 42px;
  align-items: start;
}

.xht-contact-summary {
  position: sticky;
  top: 104px;
}

.xht-contact-summary .xht-note {
  margin-top: 28px;
}

.xht-contact-form .wpcf7-form > p {
  margin-bottom: 17px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(1),
.xht-contact-form .wpcf7-form > p:nth-of-type(3) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(4) {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(210px, .65fr);
  gap: 18px;
  align-items: end;
}

.xht-contact-form .wpcf7-form-control-wrap {
  display: block;
}

.xht-contact-form .wpcf7-form > p:nth-of-type(5) {
  margin-top: -8px;
  color: var(--xht-slate-500);
  font-size: 12px;
}

.xht-contact-form .wpcf7-submit {
  width: 100%;
  margin-top: 14px;
}

.xht-contact-map-shell {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(520px, 1.28fr);
  gap: 38px;
  align-items: stretch;
}

.xht-contact-map-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.xht-contact-map {
  overflow: hidden;
  min-height: 390px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-slate-100);
  box-shadow: var(--xht-shadow-md);
}

.xht-contact-map iframe {
  display: block;
  width: 100%;
  height: 390px;
  border: 0;
}

.xht-contact-address {
  margin: 22px 0;
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  background: var(--xht-slate-100);
}

.xht-contact-address strong,
.xht-contact-address span {
  display: block;
}

.xht-contact-address span {
  margin-top: 4px;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-contact-process .xht-steps {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 30px;
}

.xht-mobile-actions {
  display: none;
}

[dir="rtl"] .xht-eyebrow::before,
.rtl .xht-eyebrow::before {
  order: 2;
}

[dir="rtl"] .xht-checklist li,
.rtl .xht-checklist li {
  padding-right: 30px;
  padding-left: 0;
}

[dir="rtl"] .xht-checklist li::before,
.rtl .xht-checklist li::before {
  right: 0;
  left: auto;
}

[dir="rtl"] .xht-table th,
[dir="rtl"] .xht-table td,
.rtl .xht-table th,
.rtl .xht-table td {
  text-align: right;
}

@media (max-width: 1024px) {
  .xht-hero__inner {
    min-height: auto;
    grid-template-columns: 1fr 380px;
    gap: 38px;
  }

  .xht-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 54px;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: minmax(0, .72fr) minmax(430px, 1.28fr);
  }
}

@media (max-width: 820px) {
  .xht-section {
    padding: 66px 0;
  }

  .xht-hero__inner,
  .xht-section-head,
  .xht-rfq,
  .xht-evidence {
    grid-template-columns: 1fr;
  }

  .xht-hero__inner {
    padding-top: 68px;
  }

  .xht-visual {
    min-height: 360px;
  }

  .xht-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-trust-strip__item:nth-child(2) {
    border-right: 0;
  }

  .xht-trust-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
  }

  .xht-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-cta-band {
    grid-template-columns: 1fr;
  }

  .xht-contact-rfq,
  .xht-contact-map-shell {
    grid-template-columns: 1fr;
  }

  .xht-contact-summary {
    position: static;
  }
}

@media (max-width: 600px) {
  .xht-container {
    width: min(100% - 28px, var(--xht-container));
  }

  .xht-section {
    padding: 54px 0;
  }

  .xht-site h1 {
    font-size: 39px;
  }

  .xht-site h2 {
    font-size: 31px;
  }

  .xht-actions,
  .xht-actions .xht-btn {
    width: 100%;
  }

  .xht-visual {
    min-height: 300px;
  }

  .xht-grid--2,
  .xht-grid--3,
  .xht-grid--4,
  .xht-steps,
  .xht-form-grid {
    grid-template-columns: 1fr;
  }

  .xht-contact-form .wpcf7-form > p:nth-of-type(1),
  .xht-contact-form .wpcf7-form > p:nth-of-type(3),
  .xht-contact-form .wpcf7-form > p:nth-of-type(4),
  .xht-contact-process .xht-steps {
    grid-template-columns: 1fr;
  }

  .xht-contact-channels .xht-card__body {
    min-height: auto;
  }

  .xht-contact-map,
  .xht-contact-map iframe {
    min-height: 330px;
    height: 330px;
  }

  .xht-step {
    margin-left: 22px;
    border-top: 0;
    border-left: 1px solid var(--xht-slate-300);
  }

  .xht-step::before {
    margin: 0 0 18px -51px;
  }

  .xht-evidence__large {
    min-height: 380px;
  }

  .xht-rfq {
    gap: 30px;
  }

  .xht-form-shell,
  .xht-card__body,
  .xht-cta-band {
    padding: 24px;
  }

  .xht-mobile-actions {
    position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 8px;
    gap: 8px;
    border-top: 1px solid var(--xht-slate-200);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -8px 26px rgba(7, 24, 44, .12);
  }

  .xht-mobile-actions a {
    display: grid;
    min-height: 46px;
    place-items: center;
    border-radius: var(--xht-radius-sm);
    color: var(--xht-white) !important;
    background: var(--xht-red-600);
    font-size: 13px;
    font-weight: 800;
  }

  .xht-mobile-actions a:last-child {
    background: #188758;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-site *,
  .xht-site *::before,
  .xht-site *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* XHT global layout safeguards */
html, body { overflow-x: hidden; }
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) { .site-branding img.custom-logo { width: 210px !important; } }

  overflow: hidden;
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

.xht-site img {
  display: block;
  width: 100%;
  height: auto;
}

.xht-site a {
  color: inherit;
  text-decoration: none;
}

.xht-container {
  width: min(100% - 40px, var(--xht-container));
  margin-inline: auto;
}

.xht-section {
  padding: 88px 0;
}

.xht-section--soft {
  background: var(--xht-slate-100);
}

.xht-section--dark {
  color: var(--xht-white);
  background: var(--xht-navy-950);
}

.xht-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
  gap: 44px;
  align-items: end;
  margin-bottom: 40px;
}

.xht-section-head--center {
  display: block;
  max-width: 760px;
  margin: 0 auto 44px;
  text-align: center;
}

.xht-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  color: var(--xht-red-600);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.xht-eyebrow::before {
  width: 28px;
  height: 2px;
  background: currentColor;
  content: "";
}

.xht-site h1,
.xht-site h2,
.xht-site h3,
.xht-site p {
  margin-top: 0;
}

.xht-site h1,
.xht-site h2,
.xht-site h3 {
  color: inherit;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.12;
}

.xht-site h1 {
  margin-bottom: 22px;
  font-size: clamp(38px, 5vw, 66px);
}

.xht-site h2 {
  margin-bottom: 18px;
  font-size: clamp(30px, 3.4vw, 46px);
}

.xht-site h3 {
  margin-bottom: 12px;
  font-size: clamp(20px, 2vw, 25px);
}

.xht-lead {
  color: var(--xht-slate-700);
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.7;
}

.xht-muted {
  color: var(--xht-slate-500);
}

.xht-section--dark .xht-lead,
.xht-section--dark .xht-muted {
  color: #bfccda;
}

.xht-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.xht-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: var(--xht-radius-sm);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.035em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.xht-btn:hover,
.xht-btn:focus-visible {
  transform: translateY(-2px);
}

.xht-btn:focus-visible,
.xht-card-link:focus-visible {
  outline: 3px solid rgba(215, 38, 56, 0.28);
  outline-offset: 3px;
}

.xht-btn--primary {
  color: var(--xht-white) !important;
  background: var(--xht-red-600);
}

.xht-btn--primary:hover,
.xht-btn--primary:focus-visible {
  background: var(--xht-red-700);
}

.xht-btn--secondary {
  color: var(--xht-navy-900) !important;
  border-color: var(--xht-slate-300);
  background: var(--xht-white);
}

.xht-btn--ghost {
  color: var(--xht-white) !important;
  border-color: rgba(255, 255, 255, 0.38);
  background: transparent;
}

.xht-hero {
  position: relative;
  color: var(--xht-white);
  background:
    radial-gradient(circle at 76% 18%, rgba(28, 93, 146, 0.45), transparent 31%),
    linear-gradient(118deg, var(--xht-navy-950) 0%, var(--xht-navy-900) 60%, #123b63 100%);
}

.xht-hero::after {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  pointer-events: none;
  content: "";
}

.xht-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
  gap: 60px;
  align-items: center;
  padding: 82px 0 70px;
}

.xht-hero__copy {
  max-width: 710px;
}

.xht-hero h1 {
  font-size: clamp(38px, 4.65vw, 62px);
}

.xht-hero .xht-lead {
  max-width: 690px;
  color: #d6e1ec;
}

.xht-visual {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--xht-radius-lg);
  background:
    radial-gradient(circle at 50% 38%, rgba(255, 255, 255, .96), rgba(232, 237, 242, .92) 36%, rgba(156, 171, 186, .6) 68%, rgba(11, 33, 61, .55) 100%),
    var(--xht-slate-200);
  box-shadow: var(--xht-shadow-md);
}

.xht-visual::before,
.xht-visual::after {
  position: absolute;
  border: 22px solid rgba(7, 24, 44, 0.33);
  border-radius: 30%;
  content: "";
}

.xht-visual::before {
  width: 230px;
  height: 230px;
  top: 20%;
  left: 20%;
  transform: rotate(28deg);
}

.xht-visual::after {
  width: 135px;
  height: 135px;
  right: 12%;
  bottom: 9%;
  transform: rotate(-12deg);
}

.xht-visual__label {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 13px 15px;
  border-radius: var(--xht-radius-sm);
  color: #dce6ef;
  background: rgba(7, 24, 44, 0.9);
  font-size: 13px;
  line-height: 1.45;
}

.xht-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item {
  padding: 20px 18px;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
}

.xht-trust-strip__item:last-child {
  border-right: 0;
}

.xht-trust-strip strong {
  display: block;
  margin-bottom: 3px;
  color: var(--xht-white);
  font-size: 15px;
}

.xht-trust-strip span {
  color: #aebdcb;
  font-size: 13px;
}

.xht-grid {
  display: grid;
  gap: 24px;
}

.xht-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.xht-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xht-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xht-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-sm);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.xht-card:hover {
  transform: translateY(-4px);
  border-color: #aab7c6;
  box-shadow: var(--xht-shadow-md);
}

.xht-card__body {
  padding: 25px;
}

.xht-card__body p:last-child {
  margin-bottom: 0;
}

.xht-card__icon {
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 12px;
  color: var(--xht-red-600);
  background: #fff0f2;
  font-size: 18px;
  font-weight: 900;
}

.xht-card__media {
  position: relative;
  display: grid;
  min-height: 210px;
  place-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--xht-slate-200);
  background:
    radial-gradient(circle, #ffffff 0%, #eef2f6 60%, #dde4eb 100%);
}

.xht-card__media::before {
  width: 105px;
  height: 105px;
  border: 18px solid #93a2b1;
  border-radius: 26%;
  box-shadow: inset 0 0 0 2px #6f7f90, 0 18px 28px rgba(7, 24, 44, .16);
  transform: rotate(18deg);
  content: "";
}

.xht-card__media-label {
  position: absolute;
  right: 12px;
  bottom: 10px;
  left: 12px;
  color: var(--xht-slate-500);
  font-size: 11px;
  text-align: center;
}

.xht-card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--xht-red-600) !important;
  font-size: 14px;
  font-weight: 800;
}

.xht-card-link::after {
  content: "→";
}

.xht-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 18px 0;
  padding: 0;
  list-style: none;
}

.xht-tags li {
  padding: 5px 9px;
  border: 1px solid var(--xht-slate-200);
  border-radius: 999px;
  color: var(--xht-slate-700);
  background: var(--xht-slate-100);
  font-size: 12px;
  line-height: 1.3;
}

.xht-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  counter-reset: xht-step;
}

.xht-step {
  position: relative;
  padding: 28px 24px;
  border-top: 1px solid var(--xht-slate-300);
  counter-increment: xht-step;
}

.xht-step::before {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  margin: -49px 0 20px;
  border: 6px solid var(--xht-white);
  border-radius: 50%;
  color: var(--xht-white);
  background: var(--xht-red-600);
  box-sizing: content-box;
  font-size: 14px;
  font-weight: 800;
  content: counter(xht-step, decimal-leading-zero);
}

.xht-step h3 {
  font-size: 19px;
}

.xht-step p {
  margin-bottom: 0;
  color: var(--xht-slate-700);
  font-size: 14px;
}

.xht-evidence {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 24px;
}

.xht-evidence__large,
.xht-evidence__small {
  position: relative;
  overflow: hidden;
  min-height: 260px;
  border-radius: var(--xht-radius-md);
  background: linear-gradient(135deg, #cad4de, #f8fafc 55%, #a8b6c4);
}

.xht-evidence__large {
  min-height: 544px;
}

.xht-evidence__stack {
  display: grid;
  gap: 24px;
}

.xht-evidence__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px;
  color: var(--xht-white);
  background: linear-gradient(transparent, rgba(7, 24, 44, .92));
}

.xht-evidence__caption strong {
  display: block;
  font-size: 20px;
}

.xht-evidence__caption span {
  color: #d5e0ea;
  font-size: 13px;
}

.xht-rfq {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
  gap: 46px;
  align-items: start;
}

.xht-checklist {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.xht-checklist li {
  position: relative;
  margin-bottom: 13px;
  padding-left: 30px;
}

.xht-checklist li::before {
  position: absolute;
  top: .08em;
  left: 0;
  color: var(--xht-success);
  font-weight: 900;
  content: "✓";
}

.xht-form-shell {
  padding: 30px;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-lg);
  background: var(--xht-white);
  box-shadow: var(--xht-shadow-md);
}

.xht-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.xht-field--full {
  grid-column: 1 / -1;
}

.xht-form-shell label,
.xht-site .wpcf7-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--xht-slate-900);
  font-size: 13px;
  font-weight: 800;
}

.xht-form-shell input,
.xht-form-shell select,
.xht-form-shell textarea,
.xht-site .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.xht-site .wpcf7-form select,
.xht-site .wpcf7-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 13px;
  border: 1px solid var(--xht-slate-300);
  border-radius: var(--xht-radius-sm);
  color: var(--xht-slate-900);
  background: var(--xht-white);
  font: inherit;
}

.xht-form-shell textarea,
.xht-site .wpcf7-form textarea {
  min-height: 126px;
  resize: vertical;
}

.xht-form-shell input:focus,
.xht-form-shell select:focus,
.xht-form-shell textarea:focus,
.xht-site .wpcf7-form input:focus,
.xht-site .wpcf7-form select:focus,
.xht-site .wpcf7-form textarea:focus {
  border-color: var(--xht-blue-600);
  outline: 3px solid rgba(28, 93, 146, .14);
}

.xht-form-shell button,
.xht-site .wpcf7-form input[type="submit"] {
  min-height: 50px;
  padding: 13px 22px;
  border: 0;
  border-radius: var(--xht-radius-sm);
  color: var(--xht-white);
  background: var(--xht-red-600);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  cursor: pointer;
}

.xht-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--xht-slate-200);
  border-radius: var(--xht-radius-md);
}

.xht-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: var(--xht-white);
}

.xht-table th,
.xht-table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--xht-slate-200);
  text-align: left;
  vertical-align: top;
}

.xht-table th {
  color: var(--xht-navy-900);
  background: var(--xht-slate-100);
  font-size: 13px;
  font-weight: 800;
}

.xht-table tr:last-child td {
  border-bottom: 0;
}

.xht-note {
  padding: 18px 20px;
  border-left: 4px solid var(--xht-red-600);
  border-radius: 0 var(--xht-radius-sm) var(--xht-radius-sm) 0;
  color: var(--xht-slate-700);
  background: #fff4f5;
  font-size: 14px;
}

.xht-cta-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: center;
  padding: 38px 42px;
  border-radius: var(--xht-radius-lg);
  color: var(--xht-white);
  background: linear-gradient(112deg, var(--xht-navy-900), #164c78);
}

.xht-cta-band h2 {
  margin-bottom: 8px;
  font-size: clamp(28px, 3vw, 40px);
}

.xht-cta-band p {
  margin-bottom: 0;
  color: #c9d6e2;
}

.xht-mobile-actions {
  display: none;
}

[dir="rtl"] .xht-eyebrow::before,
.rtl .xht-eyebrow::before {
  order: 2;
}

[dir="rtl"] .xht-checklist li,
.rtl .xht-checklist li {
  padding-right: 30px;
  padding-left: 0;
}

[dir="rtl"] .xht-checklist li::before,
.rtl .xht-checklist li::before {
  right: 0;
  left: auto;
}

[dir="rtl"] .xht-table th,
[dir="rtl"] .xht-table td,
.rtl .xht-table th,
.rtl .xht-table td {
  text-align: right;
}

@media (max-width: 1024px) {
  .xht-hero__inner {
    min-height: auto;
    grid-template-columns: 1fr 380px;
    gap: 38px;
  }

  .xht-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 54px;
  }
}

@media (max-width: 820px) {
  .xht-section {
    padding: 66px 0;
  }

  .xht-hero__inner,
  .xht-section-head,
  .xht-rfq,
  .xht-evidence {
    grid-template-columns: 1fr;
  }

  .xht-hero__inner {
    padding-top: 68px;
  }

  .xht-visual {
    min-height: 360px;
  }

  .xht-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-trust-strip__item:nth-child(2) {
    border-right: 0;
  }

  .xht-trust-strip__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
  }

  .xht-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xht-cta-band {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .xht-container {
    width: min(100% - 28px, var(--xht-container));
  }

  .xht-section {
    padding: 54px 0;
  }

  .xht-site h1 {
    font-size: 39px;
  }

  .xht-site h2 {
    font-size: 31px;
  }

  .xht-actions,
  .xht-actions .xht-btn {
    width: 100%;
  }

  .xht-visual {
    min-height: 300px;
  }

  .xht-grid--2,
  .xht-grid--3,
  .xht-grid--4,
  .xht-steps,
  .xht-form-grid {
    grid-template-columns: 1fr;
  }

  .xht-step {
    margin-left: 22px;
    border-top: 0;
    border-left: 1px solid var(--xht-slate-300);
  }

  .xht-step::before {
    margin: 0 0 18px -51px;
  }

  .xht-evidence__large {
    min-height: 380px;
  }

  .xht-rfq {
    gap: 30px;
  }

  .xht-form-shell,
  .xht-card__body,
  .xht-cta-band {
    padding: 24px;
  }

  .xht-mobile-actions {
    position: fixed;
    z-index: 9999;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 8px;
    gap: 8px;
    border-top: 1px solid var(--xht-slate-200);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -8px 26px rgba(7, 24, 44, .12);
  }

  .xht-mobile-actions a {
    display: grid;
    min-height: 46px;
    place-items: center;
    border-radius: var(--xht-radius-sm);
    color: var(--xht-white) !important;
    background: var(--xht-red-600);
    font-size: 13px;
    font-weight: 800;
  }

  .xht-mobile-actions a:last-child {
    background: #188758;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-site *,
  .xht-site *::before,
  .xht-site *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* XHT global layout safeguards */
html, body { overflow-x: hidden; }
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) { .site-branding img.custom-logo { width: 210px !important; } }
/* Prevent full-width page sections from creating horizontal scrollbars. */
html, body { overflow-x: hidden; }

/* Keep the horizontal brand mark compact and avoid duplicate branding text. */
.site-branding img.custom-logo { width: 260px !important; max-width: 100%; height: auto; }
.site-branding .site-title { display: none; }
@media (max-width: 544px) {
  .site-branding img.custom-logo { width: 210px !important; }}/* Prevent full-width page sections from creating horizontal scrollbars. */
html, body { overflow-x: hidden; }

/* XHT site-wide floating contact: WeChat + full RFQ */
.xht-mobile-actions {
  display: none !important;
}

.xht-floating-contact,
.xht-floating-contact * {
  box-sizing: border-box;
}

.xht-floating-contact {
  position: fixed;
  right: 24px;
  bottom: 96px;
  z-index: 9998;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  width: max-content;
  max-width: calc(100vw - 32px);
  color: #07182c;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.35;
  text-align: left;
}

.xht-floating-contact .xht-i18n {
  display: none;
}

html[lang^="en"] .xht-floating-contact .xht-i18n-en,
html[lang^="zh"] .xht-floating-contact .xht-i18n-zh,
html[lang^="ar"] .xht-floating-contact .xht-i18n-ar,
html[lang^="ru"] .xht-floating-contact .xht-i18n-ru,
html[lang^="es"] .xht-floating-contact .xht-i18n-es {
  display: inline;
}

html[lang^="en"] .xht-floating-contact .xht-rfq-link.xht-i18n-en,
html[lang^="zh"] .xht-floating-contact .xht-rfq-link.xht-i18n-zh,
html[lang^="ar"] .xht-floating-contact .xht-rfq-link.xht-i18n-ar,
html[lang^="ru"] .xht-floating-contact .xht-rfq-link.xht-i18n-ru,
html[lang^="es"] .xht-floating-contact .xht-rfq-link.xht-i18n-es {
  display: flex;
}

.xht-wechat-fab {
  position: relative;
  margin: 0;
  padding: 0;
}

.xht-wechat-fab > summary {
  list-style: none;
}

.xht-wechat-fab > summary::-webkit-details-marker {
  display: none;
}

.xht-float-action {
  width: 154px;
  min-height: 50px;
  margin: 0;
  padding: 7px 12px 7px 8px;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(7, 24, 44, .16);
  border-radius: 999px;
  color: #07182c !important;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 10px 28px rgba(7, 24, 44, .16);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.2;
  text-decoration: none !important;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.xht-wechat-fab > summary.xht-float-action {
  display: flex;
}

.xht-float-action:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(7, 24, 44, .22);
}

.xht-wechat-fab > summary.xht-float-action:hover,
.xht-wechat-fab[open] > summary.xht-float-action {
  border-color: rgba(7, 193, 96, .62);
}

.xht-rfq-link:hover {
  border-color: rgba(215, 38, 56, .62);
}

.xht-float-action:focus-visible {
  outline: 3px solid rgba(28, 93, 146, .32);
  outline-offset: 3px;
}

.xht-float-symbol {
  display: inline-grid;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: -.02em;
}

.xht-wechat-symbol {
  background: #07c160;
  font-size: 17px;
}

.xht-rfq-symbol {
  background: #d72638;
  font-size: 10px;
  letter-spacing: .02em;
}

.xht-float-text {
  flex: 1 1 auto;
  white-space: nowrap;
}

.xht-wechat-fab > summary::after {
  content: "+";
  flex: 0 0 auto;
  color: #6c7888;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  transition: transform .18s ease;
}

.xht-wechat-fab[open] > summary::after {
  content: "×";
  transform: rotate(90deg);
}

.xht-wechat-card {
  position: absolute;
  right: 0;
  bottom: calc(100% + 12px);
  width: 268px;
  padding: 18px;
  border: 1px solid rgba(7, 24, 44, .12);
  border-radius: 18px;
  color: #17212f;
  background: #fff;
  box-shadow: 0 20px 54px rgba(7, 24, 44, .22);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px) scale(.985);
  transform-origin: bottom right;
  transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
}

.xht-wechat-fab:hover .xht-wechat-card,
.xht-wechat-fab:focus-within .xht-wechat-card,
.xht-wechat-fab[open] .xht-wechat-card {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.xht-qr-placeholder,
.xht-wechat-qr {
  display: grid;
  width: 176px;
  height: 176px;
  margin: 0 auto 13px;
  place-items: center;
  border: 1px dashed #b8c3d1;
  border-radius: 12px;
  background:
    linear-gradient(45deg, #f3f6f9 25%, transparent 25%) 0 0 / 16px 16px,
    linear-gradient(-45deg, #f3f6f9 25%, transparent 25%) 0 8px / 16px 16px,
    linear-gradient(45deg, transparent 75%, #f3f6f9 75%) 8px -8px / 16px 16px,
    linear-gradient(-45deg, transparent 75%, #f3f6f9 75%) -8px 0 / 16px 16px,
    #fff;
  object-fit: contain;
}

.xht-qr-placeholder span {
  display: grid;
  width: 54px;
  height: 54px;
  place-items: center;
  border-radius: 12px;
  color: #fff;
  background: #07c160;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: .08em;
}

.xht-wechat-card strong,
.xht-wechat-card .xht-qr-status,
.xht-wechat-card small {
  display: block;
  text-align: center;
}

.xht-wechat-card strong {
  margin-bottom: 5px;
  color: #07182c;
  font-size: 16px;
}

.xht-wechat-card .xht-qr-status {
  margin-bottom: 7px;
  color: #17835f;
  font-size: 12px;
  font-weight: 800;
}

.xht-wechat-card small {
  color: #5f6d7c;
  font-size: 12px;
  line-height: 1.5;
}

html[dir="rtl"] .xht-floating-contact {
  right: auto;
  left: 24px;
  align-items: flex-start;
  text-align: right;
}

html[dir="rtl"] .xht-wechat-card {
  right: auto;
  left: 0;
  transform-origin: bottom left;
}

@media (max-width: 767px) {
  .xht-floating-contact {
    right: 14px;
    bottom: 82px;
    max-width: calc(100vw - 28px);
    gap: 8px;
  }

  html[dir="rtl"] .xht-floating-contact {
    right: auto;
    left: 14px;
  }

  .xht-float-action {
    width: 138px;
    min-height: 46px;
    padding: 5px 10px 5px 6px;
    gap: 8px;
    font-size: 13px;
  }

  .xht-float-symbol {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
  }

  .xht-wechat-card {
    width: min(264px, calc(100vw - 28px));
    padding: 16px;
  }

  .xht-qr-placeholder,
  .xht-wechat-qr {
    width: 164px;
    height: 164px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xht-floating-contact *,
  .xht-floating-contact *::before,
  .xht-floating-contact *::after {
    transition: none !important;
  }
}

/* Neutralize WordPress automatic paragraph and line-break markup inside the fixed UI. */
.xht-floating-contact br {
  display: none !important;
}

.xht-floating-contact > p {
  display: contents;
  margin: 0;
  padding: 0;
}

.xht-wechat-card > p {
  margin: 0;
  padding: 0;
}

@media (max-width: 767px) and (max-height: 560px) {
  .xht-wechat-card {
    padding: 12px;
  }

  .xht-qr-placeholder,
  .xht-wechat-qr {
    width: 126px;
    height: 126px;
    margin-bottom: 8px;
  }

  .xht-wechat-card strong {
    margin-bottom: 3px;
    font-size: 15px;
  }

  .xht-wechat-card .xht-qr-status {
    margin-bottom: 4px;
  }

  .xht-wechat-card small {
    font-size: 11px;
    line-height: 1.35;
  }
}
/* XHT unified vertical contact dock v1 */
.xht-contact-dock{box-sizing:border-box;position:fixed;top:50%;right:18px;transform:translateY(-50%);z-index:9998;width:58px;padding:7px 5px;display:flex;flex-direction:column;align-items:center;background:#fff;border:1px solid rgba(11,33,61,.1);border-radius:999px;box-shadow:0 8px 26px rgba(11,33,61,.18);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
.xht-contact-dock *{box-sizing:border-box;}
.xht-contact-dock>details{position:relative;width:48px;height:48px;margin:0;padding:0;}
.xht-contact-dock summary{list-style:none;}
.xht-contact-dock summary::-webkit-details-marker{display:none;}
.xht-contact-dock .xht-dock-action{position:relative;width:48px;height:48px;margin:0;padding:0;display:flex!important;align-items:center;justify-content:center;color:#f5a000;background:transparent;border:0;border-radius:50%;text-decoration:none!important;cursor:pointer;transition:color .18s ease,background .18s ease,transform .18s ease;}
.xht-contact-dock>details:not(:last-child)>summary,.xht-contact-dock>a:not(:last-child){border-bottom:1px solid #eef1f5;}
.xht-contact-dock .xht-dock-action:hover,.xht-contact-dock .xht-dock-action:focus-visible,.xht-contact-dock details[open]>.xht-dock-action{color:#df8700;background:#fff4d6;outline:0;}
.xht-contact-dock .xht-dock-action:focus-visible{box-shadow:0 0 0 3px rgba(245,160,0,.24);}
.xht-contact-dock .xht-dock-icon{display:block;width:27px;height:27px;fill:currentColor;pointer-events:none;}
.xht-contact-dock .xht-dock-wechat .xht-dock-icon{width:30px;height:30px;}
.xht-contact-dock .xht-dock-tip{position:absolute;top:50%;right:calc(100% + 12px);transform:translate(6px,-50%);display:block;min-width:max-content;padding:7px 10px;color:#fff;background:#0b213d;border-radius:8px;font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;box-shadow:0 6px 18px rgba(11,33,61,.2);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;}
.xht-contact-dock .xht-dock-tip:after{content:"";position:absolute;top:50%;left:100%;transform:translateY(-50%);border:5px solid transparent;border-left-color:#0b213d;}
.xht-contact-dock .xht-dock-action:hover .xht-dock-tip,.xht-contact-dock .xht-dock-action:focus-visible .xht-dock-tip{opacity:1;visibility:visible;transform:translate(0,-50%);}
.xht-contact-dock details[open] .xht-dock-tip{opacity:0!important;visibility:hidden!important;}
.xht-contact-dock .xht-dock-i18n{display:none;}
html[lang^="en"] .xht-contact-dock .xht-dock-en,html[lang^="zh"] .xht-contact-dock .xht-dock-zh,html[lang^="ar"] .xht-contact-dock .xht-dock-ar,html[lang^="ru"] .xht-contact-dock .xht-dock-ru,html[lang^="es"] .xht-contact-dock .xht-dock-es{display:inline;}
.xht-contact-dock .xht-dock-qr-card{position:absolute;top:-20px;right:calc(100% + 14px);width:236px;padding:14px;display:none;flex-direction:column;align-items:center;gap:6px;color:#0b213d;background:#fff;border:1px solid rgba(11,33,61,.12);border-radius:18px;box-shadow:0 14px 38px rgba(11,33,61,.22);text-align:center;}
.xht-contact-dock details[open]>.xht-dock-qr-card{display:flex;}
.xht-contact-dock .xht-dock-whatsapp-card{top:-116px;}
.xht-contact-dock .xht-dock-qr{display:block!important;width:176px!important;height:176px!important;max-width:none!important;margin:0!important;padding:4px;object-fit:contain;background:#fff;border:1px solid #e4e9ef;border-radius:12px;}
.xht-contact-dock .xht-dock-qr-card strong{display:block;color:#0b213d;font-size:14px;line-height:1.35;}
.xht-contact-dock .xht-dock-qr-card small{display:block;color:#5b6b7f;font-size:11px;line-height:1.4;}
.xht-contact-dock .xht-dock-direct{display:inline-flex;align-items:center;justify-content:center;margin-top:3px;padding:7px 12px;color:#fff!important;background:#25d366;border-radius:999px;font-size:12px;font-weight:800;line-height:1.2;text-decoration:none!important;}
.xht-contact-dock .xht-dock-direct:hover,.xht-contact-dock .xht-dock-direct:focus-visible{background:#1fae55;}
@media(max-width:782px){.xht-contact-dock{right:10px;width:52px;padding:5px 3px;}.xht-contact-dock>details,.xht-contact-dock .xht-dock-action{width:44px;height:44px;}.xht-contact-dock .xht-dock-icon{width:24px;height:24px;}.xht-contact-dock .xht-dock-wechat .xht-dock-icon{width:27px;height:27px;}.xht-contact-dock .xht-dock-tip{display:none;}.xht-contact-dock .xht-dock-qr-card{right:calc(100% + 10px);top:-18px;width:220px;padding:12px;}.xht-contact-dock .xht-dock-whatsapp-card{top:-106px;}.xht-contact-dock .xht-dock-qr{width:158px!important;height:158px!important;}.xht-contact-dock .xht-dock-qr-card strong{font-size:13px;}.xht-contact-dock .xht-dock-qr-card small{font-size:10px;}}
@media(max-width:360px){.xht-contact-dock{right:6px;}.xht-contact-dock .xht-dock-qr-card{right:calc(100% + 7px);width:202px;padding:10px;}.xht-contact-dock .xht-dock-qr{width:146px!important;height:146px!important;}}
@media(prefers-reduced-motion:reduce){.xht-contact-dock .xht-dock-action,.xht-contact-dock .xht-dock-tip{transition:none;}}


/* XHT dock hover reveal v1 */
@media (hover:hover) and (pointer:fine){
  .xht-contact-dock .xht-dock-wechat:hover>.xht-dock-qr-card,
  .xht-contact-dock .xht-dock-whatsapp:hover>.xht-dock-qr-card{display:flex;}
  .xht-contact-dock .xht-dock-wechat:hover .xht-dock-tip,
  .xht-contact-dock .xht-dock-whatsapp:hover .xht-dock-tip{opacity:0!important;visibility:hidden!important;}
  .xht-contact-dock .xht-dock-qr-card:after{content:"";position:absolute;top:0;right:-14px;width:14px;height:100%;}
}


/* XHT dock hover bridge fix v2 */
@media (hover:hover) and (pointer:fine){
  .xht-contact-dock .xht-dock-qr-card:after{right:-20px;width:22px;background:rgba(255,255,255,.001);}
}


/* XHT dock seamless hover v3 */
@media (hover:hover) and (pointer:fine){
  .xht-contact-dock .xht-dock-qr-card{right:calc(100% - 2px);}
}

/* XHT English Mobile Tablet Closeout V1 */
@media(max-width:1024px){
html[lang="en-US"] .xht-limit-legacy-v1,html[lang="en-US"] .xht-closeout-legacy,html[lang="en-US"] body.page-id-98 .av3-legacy-placeholder{display:none!important}
html[lang="en-US"] .xht-limit-desktop-v1,html[lang="en-US"] .xht-closeout-desktop{display:inline!important}
html[lang="en-US"] .tv2-support__actions .xht-closeout-desktop{display:flex!important}
html[lang="en-US"] .xht-contact-dock{position:relative;top:auto;right:auto;bottom:auto;left:auto;transform:none;flex-direction:row;width:max-content;max-width:calc(100% - 28px);margin:24px auto;z-index:20}
html[lang="en-US"] .xht-contact-dock .xht-dock-qr-card{position:absolute;top:auto!important;bottom:calc(100% + 10px);right:0!important;max-width:calc(100vw - 28px)!important}
html[lang="en-US"] body.page-id-98 .av3-desktop-photo,html[lang="en-US"] body.page-id-98 .av4-building{display:block!important;margin:24px 0;min-width:0;overflow:hidden;border-radius:12px}
html[lang="en-US"] body.page-id-98 .av3-desktop-photo picture,html[lang="en-US"] body.page-id-98 .av4-building picture{display:block}
html[lang="en-US"] body.page-id-98 .av3-desktop-photo img,html[lang="en-US"] body.page-id-98 .av4-building img{display:block;width:100%;height:auto;object-fit:contain}
html[lang="en-US"] body.page-id-98 .av3-support-grid{display:grid!important;grid-template-columns:minmax(0,1fr);gap:24px}
html[lang="en-US"] body.page-id-98 .av3-support-photo{margin:0;min-width:0}
html[lang="en-US"] body.page-id-98 .av3-support-photo--team{max-width:320px}
html[lang="en-US"] body.page-id-98 .av3-desktop-photo figcaption,html[lang="en-US"] body.page-id-98 .av4-building figcaption{padding:14px;font-size:14px;line-height:1.5}
}
@media(max-width:620px){html[lang="en-US"] #xht-home-hero .xht-hv7-copy{width:100%}}
@media(max-width:1024px){html[lang="en-US"] #xht-consent-reopen{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;display:block;margin:16px auto;transform:none!important}}
@media(max-width:780px){html[lang="en-US"] #xht-cv2-rfq .xht-cv2-rfq-grid{grid-template-columns:minmax(0,1fr)}html[lang="en-US"] #xht-cv2-rfq .xht-cv2-form-card{min-width:0;max-width:100%}html[lang="en-US"] #xht-cv2-rfq .xht-rfq-grid--2>p{grid-template-columns:minmax(0,1fr)}html[lang="en-US"] #xht-cv2-rfq input,html[lang="en-US"] #xht-cv2-rfq select,html[lang="en-US"] #xht-cv2-rfq textarea{max-width:100%}}
@media(max-width:780px){html[lang="en-US"] #xht-cv2-rfq .xht-rfq-v2,html[lang="en-US"] #xht-cv2-rfq .xht-rfq-grid{grid-template-columns:minmax(0,1fr)!important}html[lang="en-US"] #xht-cv2-rfq fieldset{min-inline-size:0;max-width:100%}}

