@charset "utf-8";

/* ==========================================================
   TIANHUI MACHINE — V37 CLEAN CSS
   Current-template-only, framework-free stylesheet.
   ========================================================== */

/* Compact global baseline retained intentionally. */
html::-webkit-scrollbar {
  width: 10px;
}

html::-webkit-scrollbar-track {
  background: #000;
}

html::-webkit-scrollbar-thumb {
  background: #4e4e4e;
  border-radius: 25px;
}

textarea {
  -webkit-appearance: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
figure {
  font-weight: 400;
}

a {
  color: #22302f;
  transition: color .2s ease;
}

a:hover {
  color: #111;
  text-decoration: none;
}

p {
  margin: 0;
}

dl,
dd,
ul,
li {
  margin: 0;
  padding: 0;
}

ul {
  list-style: none;
}

:root {
  --th-navy: #0B1F33;
  --th-orange: #E87525;
  --th-orange-dark: #cf641c;
  --th-text: #4d5862;
  --th-muted: #65717b;
  --th-light: #f5f7f9;
  --th-border: #e0e5e8;
  --th-border-soft: #dfe4e8;
}

.th-verify-img {
  margin-left: 2px;
  width: 80px;
  height: 35px;
}

#contactModal textarea.form-control {
  height: auto;
  min-height: 110px;
  resize: vertical;
}

#contactModal .th-verify-img {
  height: 38px;
  vertical-align: middle;
  cursor: pointer;
}

#contactModal #a_vertify {
  margin-left: 8px;
  color: #E87525;
  font-size: 13px;
}

.th-home {
  --home-navy: #0b1f33;
  --home-navy-deep: #071725;
  --home-orange: #e87525;
  --home-orange-dark: #cf641c;
  --home-text: #4d5964;
  --home-muted: #6b7680;
  --home-light: #f5f7f9;
  --home-line: #dfe5e9;
  --home-white: #fff;
  overflow: hidden;
  color: var(--home-text);
  background: #fff;
  font-family: Roboto,Arial,sans-serif;
}

.th-home h1,
.th-home h2,
.th-home h3 {
  font-family: Inter,Roboto,Arial,sans-serif;
  color: var(--home-navy);
}

.th-home a {
  text-decoration: none !important;
}

.th-home a,
.th-home button {
  transition: background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease;
}

.th-home a:hover,
.th-home a:focus {
  text-decoration: none !important;
}

.th-home-kicker {
  display: block;
  margin: 0 0 13px;
  color: var(--home-orange);
  font: 700 11px/1.25 Inter,Arial,sans-serif;
  letter-spacing: 1.8px;
  text-transform: uppercase;
}

.th-home-kicker--light {
  color: #f2a06b;
}

.th-home-kicker--white {
  color: #fff;
}

.th-home-lead {
  font-size: 17px;
  line-height: 1.82;
  color: #64717d;
}

.th-home-section {
  padding: 92px 0;
  background: #fff;
}

.th-home-section--light {
  background: var(--home-light);
}

.th-home-section-head {
  max-width: 820px;
  margin: 0 0 42px;
}

.th-home-section-head--wide {
  max-width: 900px;
}

.th-home-section-head h2,
.th-home-split-head h2,
.th-home-fit-copy h2,
.th-home-about-copy h2,
.th-home-quality-copy h2 {
  margin: 0 0 18px;
  font-size: 38px;
  line-height: 1.18;
  letter-spacing: -.55px;
}

.th-home-section-head p,
.th-home-split-head p {
  margin: 0;
  color: #66727d;
  font-size: 16px;
  line-height: 1.8;
}

.th-home-btn {
  display: inline-block;
  min-height: 46px;
  margin: 0;
  padding: 15px 22px;
  border: 1px solid transparent;
  border-radius: 0;
  background: none;
  font: 700 11px/1.25 Inter,Arial,sans-serif;
  letter-spacing: .7px;
  text-align: center;
  text-transform: uppercase;
  cursor: pointer;
  vertical-align: middle;
}

.th-home-btn--orange {
  background: var(--home-orange);
  border-color: var(--home-orange);
  color: #fff !important;
}

.th-home-btn--orange:hover,
.th-home-btn--orange:focus {
  background: var(--home-orange-dark);
  border-color: var(--home-orange-dark);
  color: #fff !important;
}

.th-home-btn--dark {
  background: var(--home-navy);
  border-color: var(--home-navy);
  color: #fff !important;
}

.th-home-btn--dark:hover,
.th-home-btn--dark:focus {
  background: var(--home-navy-deep);
  border-color: var(--home-navy-deep);
  color: #fff !important;
}

.th-home-btn--ghost {
  border-color: rgba(255,255,255,.45);
  color: #fff !important;
}

.th-home-btn--ghost:hover,
.th-home-btn--ghost:focus {
  border-color: var(--home-orange);
  background: rgba(255,255,255,.05);
  color: #fff !important;
}

.th-home-text-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--home-orange);
  font: 700 11px/1.3 Inter,Arial,sans-serif;
  letter-spacing: .55px;
  text-transform: uppercase;
  text-decoration: none !important;
}

.th-home-text-link b {
  font-size: 14px;
  font-weight: 600;
  transition: transform .2s ease;
}

a:hover .th-home-text-link b,
.th-home-text-link:hover b {
  transform: translateX(3px);
}

.th-home-text-link--light {
  color: #f29a5e;
}

.th-home-hero {
  position: relative;
  margin-top: 75px;
  background: linear-gradient(90deg,rgba(7,23,37,.985) 0%,rgba(11,31,51,.95) 48%,rgba(11,31,51,.72) 100%),
  var(--th-home-hero-image,none) center center/cover no-repeat;
  color: #fff;
}

.th-home-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,rgba(255,255,255,.015),transparent 35%);
  pointer-events: none;
}

.th-home-hero-row {
  display: flex;
  align-items: stretch;
  min-height: 585px;
}

.th-home-hero-row>[class*="col-"] {
  display: flex;
  align-items: center;
}

.th-home-hero-copy {
  max-width: 810px;
  padding: 78px 0;
}

.th-home-hero h1 {
  max-width: 820px;
  margin: 0 0 24px;
  color: #fff;
  font-size: 56px;
  line-height: 1.08;
  letter-spacing: -1.5px;
}

.th-home-hero-copy>p {
  max-width: 760px;
  margin: 0;
  color: rgba(255,255,255,.76);
  font-size: 17px;
  line-height: 1.8;
}

.th-home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 32px;
}

.th-home-hero-panel {
  width: 100%;
  padding: 31px 30px;
  background: rgba(5,17,28,.72);
  border-top: 3px solid var(--home-orange);
  box-shadow: 0 18px 45px rgba(0,0,0,.18);
  backdrop-filter: blur(3px);
}

.th-home-panel-label {
  display: block;
  margin-bottom: 10px;
  color: #f29a5e;
  font: 700 10px Inter,Arial,sans-serif;
  letter-spacing: 1.4px;
}

.th-home-hero-panel h2 {
  margin: 0 0 23px;
  color: #fff;
  font-size: 22px;
  line-height: 1.35;
}

.th-home-hero-panel ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-home-hero-panel li {
  display: flex;
  align-items: flex-start;
  padding: 15px 0;
  border-top: 1px solid rgba(255,255,255,.12);
}

.th-home-hero-panel li strong {
  flex: 0 0 42px;
  color: var(--home-orange);
  font: 700 11px Inter,Arial,sans-serif;
  letter-spacing: 1px;
}

.th-home-hero-panel li span {
  color: rgba(255,255,255,.78);
  font-size: 13px;
  line-height: 1.55;
}

.th-home-trust {
  background: #fff;
  border-bottom: 1px solid var(--home-line);
}

.th-home-trust-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  border-left: 1px solid var(--home-line);
}

.th-home-trust-grid>div {
  min-height: 112px;
  padding: 26px 25px;
  border-right: 1px solid var(--home-line);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.th-home-trust-grid strong {
  display: block;
  margin-bottom: 7px;
  color: var(--home-navy);
  font: 700 12px Inter,Arial,sans-serif;
  letter-spacing: .4px;
  text-transform: uppercase;
}

.th-home-trust-grid span {
  color: #6c7781;
  font-size: 13px;
  line-height: 1.55;
}

.th-home-process-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
  align-items: stretch;
}

.th-home-process-card {
  display: flex;
  min-width: 0;
  box-sizing: border-box;
  overflow: hidden;
  flex-direction: column;
  background: #fff;
  border: 1px solid #d5dde3 !important;
  color: inherit !important;
  box-shadow: 0 1px 0 rgba(11,31,51,.02);
}

.th-home-process-card:hover,
.th-home-process-card:focus {
  transform: translateY(-4px);
  border-color: #bfcad2 !important;
  box-shadow: 0 14px 30px rgba(11,31,51,.08);
}

.th-home-process-image {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #edf1f4;
}

.th-home-process-image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  transition: transform .35s ease;
}

.th-home-process-card:hover img {
  transform: scale(1.02);
}

.th-home-process-placeholder {
  display: flex;
  width: 100%;
  min-height: 220px;
  align-items: center;
  justify-content: center;
  padding: 20px;
  color: #8a949d;
  font: 700 12px Inter,Arial,sans-serif;
  text-align: center;
  text-transform: uppercase;
}

.th-home-process-body {
  position: relative;
  display: flex;
  min-height: 260px;
  flex: 1;
  flex-direction: column;
  padding: 24px 21px 22px;
}

.th-home-process-no {
  display: block;
  margin-bottom: 18px;
  color: var(--home-orange);
  font: 700 11px Inter,Arial,sans-serif;
  letter-spacing: 1.3px;
}

.th-home-process-body h3 {
  margin: 0 0 10px;
  font-size: 20px;
  line-height: 1.3;
}

.th-home-process-body p {
  margin: 0 0 18px;
  color: #68747f;
  font-size: 13px;
  line-height: 1.7;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.th-home-process-body .th-home-text-link {
  margin-top: auto;
}

.th-home-fit-row {
  display: flex;
  align-items: center;
}

.th-home-fit-copy {
  padding-right: 46px;
}

.th-home-fit-copy p {
  color: #65717c;
  font-size: 15px;
  line-height: 1.82;
}

.th-home-fit-copy .th-home-btn {
  margin-top: 12px;
}

.th-home-fit-board {
  background: var(--home-navy);
  box-shadow: 0 18px 45px rgba(11,31,51,.12);
}

.th-home-fit-board>div {
  display: grid;
  grid-template-columns: 145px 1fr;
  min-height: 70px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.th-home-fit-board>div:last-child {
  border-bottom: 0;
}

.th-home-fit-board span,
.th-home-fit-board strong {
  display: flex;
  align-items: center;
  padding: 17px 20px;
}

.th-home-fit-board span {
  color: rgba(255,255,255,.58);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .45px;
}

.th-home-fit-board strong {
  position: relative;
  color: #fff;
  font: 600 13px/1.55 Inter,Arial,sans-serif;
}

.th-home-fit-board strong:before {
  content: "✓";
  margin-right: 9px;
  color: var(--home-orange);
}

.th-home-app-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 16px;
}

.th-home-app-card {
  position: relative;
  display: flex;
  min-height: 230px;
  flex-direction: column;
  padding: 26px 24px;
  overflow: hidden;
  background: var(--home-navy);
  color: #fff !important;
  text-decoration: none !important;
}

.th-home-app-card:after {
  content: "";
  position: absolute;
  right: -64px;
  bottom: -74px;
  width: 180px;
  height: 180px;
  border: 1px solid rgba(232,117,37,.3);
  border-radius: 50%;
  box-shadow: 0 0 0 34px rgba(232,117,37,.025);
}

.th-home-app-card:hover {
  transform: translateY(-3px);
  background: var(--home-navy-deep);
}

.th-home-app-no {
  position: relative;
  z-index: 2;
  margin-bottom: 25px;
  color: var(--home-orange);
  font: 700 10px Inter,Arial,sans-serif;
  letter-spacing: 1.2px;
}

.th-home-app-card h3 {
  position: relative;
  z-index: 2;
  margin: 0 0 10px;
  color: #fff;
  font-size: 19px;
  line-height: 1.35;
}

.th-home-app-card p {
  position: relative;
  z-index: 2;
  margin: 0 0 20px;
  color: rgba(255,255,255,.6);
  font-size: 13px;
  line-height: 1.65;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.th-home-app-card .th-home-text-link {
  position: relative;
  z-index: 2;
  margin-top: auto;
}

.th-home-split-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 38px;
  margin-bottom: 40px;
}

.th-home-split-head>div {
  max-width: 790px;
}

.th-home-split-head h2 {
  margin-bottom: 14px;
}

.th-home-split-head .th-home-btn {
  flex: 0 0 auto;
  margin-bottom: 3px;
}

.th-home-equal-row {
  display: flex;
  flex-wrap: wrap;
}

.th-home-equal-row>[class*="col-"] {
  display: flex;
  margin-bottom: 24px;
}

.th-home-product-card,
.th-home-case-card,
.th-home-blog-card {
  width: 100%;
  background: #fff;
  border: 1px solid var(--home-line);
  transition: transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}

.th-home-product-card:hover,
.th-home-case-card:hover,
.th-home-blog-card:hover {
  transform: translateY(-4px);
  border-color: #cdd5db;
  box-shadow: 0 14px 30px rgba(11,31,51,.08);
}

.th-home-product-card>a,
.th-home-case-card>a,
.th-home-blog-card>a {
  display: flex;
  height: 100%;
  flex-direction: column;
  color: inherit !important;
}

.th-home-card-image {
  height: 220px;
  overflow: hidden;
  background: #edf1f4;
}

.th-home-card-image--blog {
  height: 190px;
}

.th-home-card-image img,
.th-home-case-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
}

.th-home-product-card:hover img,
.th-home-case-card:hover img,
.th-home-blog-card:hover img {
  transform: scale(1.035);
}

.th-home-card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 22px 21px 23px;
}

.th-home-card-body small {
  display: block;
  margin-bottom: 9px;
  color: #8b959e;
  font: 700 10px Inter,Arial,sans-serif;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.th-home-card-body h3 {
  margin: 0 0 18px;
  font-size: 18px;
  line-height: 1.4;
}

.th-home-card-body .th-home-text-link {
  margin-top: auto;
}

.th-home-case-image {
  position: relative;
  height: 230px;
  overflow: hidden;
  background: #edf1f4;
}

.th-home-case-image>span {
  position: absolute;
  left: 15px;
  bottom: 15px;
  padding: 7px 10px;
  background: var(--home-orange);
  color: #fff;
  font: 700 10px Inter,Arial,sans-serif;
  letter-spacing: 1px;
}

.th-home-about {
  padding: 96px 0;
  background: #fff;
}

.th-home-about-row {
  display: flex;
  align-items: center;
}

.th-home-about-image {
  position: relative;
  padding-right: 34px;
}

.th-home-about-image img {
  display: block;
  width: 100%;
  height: 455px;
  object-fit: cover;
}

.th-home-about-image:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -20px;
  width: 42%;
  height: 20px;
  background: var(--home-orange);
}

.th-home-about-image>span {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 12px 17px;
  background: var(--home-navy);
  color: #fff;
  font: 700 10px Inter,Arial,sans-serif;
  letter-spacing: 1.2px;
}

.th-home-about-copy {
  padding-left: 25px;
}

.th-home-about-text {
  color: #606c77;
  font-size: 15px;
  line-height: 1.85;
}

.th-home-about-points {
  display: flex;
  flex-wrap: wrap;
  margin: 26px 0 28px;
  border-top: 1px solid var(--home-line);
  border-bottom: 1px solid var(--home-line);
}

.th-home-about-points span {
  flex: 1;
  padding: 17px 14px;
  border-right: 1px solid var(--home-line);
  color: var(--home-navy);
  font: 700 12px/1.45 Inter,Arial,sans-serif;
  text-align: center;
}

.th-home-about-points span:last-child {
  border-right: 0;
}

.th-home-quality {
  position: relative;
  padding: 92px 0;
  background: var(--home-navy);
  color: #fff;
}

.th-home-quality:after {
  content: "QUALITY";
  position: absolute;
  right: -16px;
  bottom: -42px;
  color: rgba(255,255,255,.025);
  font: 800 145px/1 Inter,Arial,sans-serif;
  letter-spacing: -6px;
  pointer-events: none;
}

.th-home-quality .th-row {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
}

.th-home-quality-copy {
  padding-right: 45px;
}

.th-home-quality-copy h2 {
  color: #fff;
}

.th-home-quality-copy p {
  margin: 0;
  color: rgba(255,255,255,.68);
  font-size: 15px;
  line-height: 1.85;
}

.th-home-quality-copy .th-home-btn {
  margin-top: 28px;
}

.th-home-quality-grid {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  border-top: 1px solid rgba(255,255,255,.14);
  border-left: 1px solid rgba(255,255,255,.14);
}

.th-home-quality-grid article {
  min-height: 205px;
  padding: 27px;
  border-right: 1px solid rgba(255,255,255,.14);
  border-bottom: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.025);
}

.th-home-quality-grid article:hover {
  background: rgba(232,117,37,.075);
}

.th-home-quality-grid article>span {
  display: block;
  margin-bottom: 22px;
  color: var(--home-orange);
  font: 700 11px Inter,Arial,sans-serif;
  letter-spacing: 1.1px;
}

.th-home-quality-grid h3 {
  margin: 0 0 9px;
  color: #fff;
  font-size: 18px;
}

.th-home-quality-grid p {
  margin: 0;
  color: rgba(255,255,255,.59);
  font-size: 13px;
  line-height: 1.72;
}

.th-home-rfq {
  padding: 68px 0;
  background: var(--home-orange);
}

.th-home-rfq-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 45px;
}

.th-home-rfq-inner>div:first-child {
  max-width: 800px;
}

.th-home-rfq h2 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 34px;
  line-height: 1.25;
}

.th-home-rfq p {
  margin: 0;
  color: rgba(255,255,255,.84);
  font-size: 15px;
  line-height: 1.7;
}

.th-home-rfq-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 18px;
}

.th-home-rfq-link {
  color: #fff !important;
  font: 700 11px Inter,Arial,sans-serif;
  letter-spacing: .5px;
  text-transform: uppercase;
  white-space: nowrap;
}

.th-home-rfq-link:hover {
  color: var(--home-navy) !important;
}

@media (max-width:1199px) {
  .th-home-hero h1 {
    font-size: 49px;
  }

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

@media (max-width:991px) {
  .th-home-process-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .th-home-hero-row,
  .th-home-fit-row,
  .th-home-about-row,
  .th-home-quality .th-row {
    display: block;
    min-height: 0;
  }

  .th-home-hero-row>[class*="col-"] {
    display: block;
  }

  .th-home-hero-copy {
    padding: 70px 0 40px;
  }

  .th-home-hero-panel {
    margin: 0 0 55px;
  }

  .th-home-trust-grid {
    grid-template-columns: repeat(2,1fr);
  }

  .th-home-fit-copy {
    padding: 0 0 35px;
  }

  .th-home-about-image {
    padding-right: 0;
    margin-bottom: 45px;
  }

  .th-home-about-copy {
    padding-left: 0;
  }

  .th-home-quality-copy {
    padding: 0 0 40px;
  }

  .th-home-split-head {
    display: block;
  }

  .th-home-split-head .th-home-btn {
    margin-top: 20px;
  }

  .th-home-rfq-inner {
    display: block;
  }

  .th-home-rfq-actions {
    margin-top: 25px;
  }
}

@media (max-width:767px) {
  .th-home-hero {
    margin-top: 62px;
  }

  .th-home-hero h1 {
    font-size: 38px;
    letter-spacing: -.8px;
  }

  .th-home-hero-copy {
    padding: 58px 0 34px;
  }

  .th-home-hero-copy>p {
    font-size: 15px;
  }

  .th-home-actions {
    display: block;
  }

  .th-home-actions .th-home-btn {
    display: block;
    width: 100%;
    margin-top: 10px;
  }

  .th-home-hero-panel {
    padding: 25px 22px;
    margin-bottom: 42px;
  }

  .th-home-trust-grid {
    grid-template-columns: 1fr;
  }

  .th-home-trust-grid>div {
    min-height: 0;
    padding: 20px 18px;
    border-bottom: 1px solid var(--home-line);
  }

  .th-home-section,
  .th-home-about,
  .th-home-quality {
    padding: 62px 0;
  }

  .th-home-section-head h2,
  .th-home-split-head h2,
  .th-home-fit-copy h2,
  .th-home-about-copy h2,
  .th-home-quality-copy h2 {
    font-size: 30px;
  }

  .th-home-process-grid,
  .th-home-app-grid {
    grid-template-columns: 1fr;
  }

  .th-home-process-image {
    height: auto;
  }

  .th-home-process-body {
    min-height: 0;
  }

  .th-home-fit-board>div {
    display: block;
    padding: 14px 17px;
  }

  .th-home-fit-board span,
  .th-home-fit-board strong {
    padding: 3px 0;
  }

  .th-home-fit-board strong {
    margin-top: 5px;
  }

  .th-home-about-image img {
    height: 310px;
  }

  .th-home-about-points {
    display: block;
  }

  .th-home-about-points span {
    display: block;
    border-right: 0;
    border-bottom: 1px solid var(--home-line);
    text-align: left;
  }

  .th-home-about-points span:last-child {
    border-bottom: 0;
  }

  .th-home-quality-grid {
    grid-template-columns: 1fr;
  }

  .th-home-quality-grid article {
    min-height: 0;
  }

  .th-home-equal-row {
    display: block;
  }

  .th-home-equal-row>[class*="col-"] {
    display: block;
  }

  .th-home-card-image,
  .th-home-case-image {
    height: 220px;
  }

  .th-home-rfq {
    padding: 55px 0;
  }

  .th-home-rfq h2 {
    font-size: 29px;
  }

  .th-home-rfq-actions {
    display: block;
  }

  .th-home-rfq-actions .th-home-btn {
    display: block;
    width: 100%;
    margin-bottom: 18px;
  }
}

@media (max-width:420px) {
  .th-home-hero h1 {
    font-size: 34px;
  }

  .th-home-hero-panel h2 {
    font-size: 20px;
  }

  .th-home-card-image,
  .th-home-case-image {
    height: 200px;
  }
}

.th-sp {
  --sp-navy: #0b1f33;
  --sp-navy-deep: #071725;
  --sp-orange: #e87525;
  --sp-text: #596674;
  --sp-heading: #14283b;
  --sp-soft: #f5f7f9;
  --sp-line: #dfe5ea;
  --sp-white: #fff;
  overflow: hidden;
  background: #fff;
  color: var(--sp-text);
  font-family: Roboto,Arial,sans-serif;
}

.th-sp * {
  box-sizing: border-box;
}

.th-sp a {
  transition: color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}

.th-sp-section {
  padding: 84px 0;
}

.th-sp-section--intro {
  padding-top: 78px;
}

.th-sp-section--soft {
  background: var(--sp-soft);
}

.th-sp-section--dark {
  background: var(--sp-navy);
  color: rgba(255,255,255,.72);
}

.th-sp-intro-row {
  display: flex;
  align-items: flex-start;
}

.th-sp-heading {
  max-width: 780px;
  margin: 0 0 38px;
}

.th-sp-heading--narrow {
  max-width: 850px;
}

.th-sp-heading--center {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.th-sp-heading--light h1,
.th-sp-heading--light h2,
.th-sp-heading--light h3 {
  color: #fff !important;
}

.th-sp-heading--light p {
  color: rgba(255,255,255,.68) !important;
}

.th-sp-kicker {
  display: block;
  margin: 0 0 13px;
  color: var(--sp-orange);
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 1.6px;
  text-transform: uppercase;
}

.th-sp h1,
.th-sp h2,
.th-sp h3 {
  font-family: Inter,Roboto,Arial,sans-serif;
  color: var(--sp-heading);
}

.th-sp h1 {
  margin: 0;
  font-size: 42px;
  line-height: 1.16;
  font-weight: 700;
  letter-spacing: -.5px;
}

.th-sp h2 {
  margin: 0 0 14px;
  font-size: 34px;
  line-height: 1.22;
  font-weight: 700;
  letter-spacing: -.3px;
}

.th-sp h3 {
  margin: 0 0 10px;
  font-size: 19px;
  line-height: 1.4;
  font-weight: 700;
}

.th-sp-heading>p {
  max-width: 760px;
  margin: 12px 0 0;
  color: var(--sp-text);
  font-size: 15px;
  line-height: 1.8;
}

.th-sp-heading--center>p {
  margin-left: auto;
  margin-right: auto;
}

.th-sp-line {
  display: block;
  width: 58px;
  height: 4px;
  margin: 24px 0 0;
  background: var(--sp-orange);
}

.th-sp-heading--center .th-sp-line {
  margin-left: auto;
  margin-right: auto;
}

.th-sp-lead {
  color: var(--sp-heading) !important;
  font-size: 18px !important;
  font-weight: 600;
  line-height: 1.7 !important;
}

.th-sp-richtext {
  max-width: 980px;
  color: var(--sp-text);
  font-size: 15px;
  line-height: 1.85;
}

.th-sp-richtext--intro {
  padding-top: 4px;
  font-size: 16px;
  line-height: 1.9;
}

.th-sp-richtext p {
  margin: 0 0 16px;
  line-height: 1.85;
}

.th-sp-richtext h2,
.th-sp-richtext h3 {
  margin-top: 30px;
}

.th-sp-richtext img {
  max-width: 100%;
  height: auto;
}

.th-sp-richtext table {
  max-width: 100%;
}

.th-sp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 48px;
  padding: 0 25px;
  border: 2px solid var(--sp-orange);
  background: var(--sp-orange);
  color: #fff !important;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .7px;
  text-transform: uppercase;
  text-decoration: none !important;
  white-space: nowrap;
}

.th-sp-btn span {
  font-size: 18px;
  line-height: 1;
}

.th-sp-btn:hover,
.th-sp-btn:focus {
  border-color: var(--sp-navy);
  background: var(--sp-navy);
  color: #fff !important;
  text-decoration: none !important;
}

.th-sp-btn--outline {
  border-color: rgba(255,255,255,.45);
  background: transparent;
}

.th-sp-btn--outline:hover,
.th-sp-btn--outline:focus {
  border-color: #fff;
  background: #fff;
  color: var(--sp-navy) !important;
}

.th-sp-btn--light {
  border-color: #fff;
  background: #fff;
  color: var(--sp-navy) !important;
}

.th-sp-btn--light:hover,
.th-sp-btn--light:focus {
  border-color: var(--sp-orange);
  background: var(--sp-orange);
  color: #fff !important;
}

.th-sp-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.th-sp-text-link {
  display: inline-block;
  color: var(--sp-orange) !important;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none !important;
  text-transform: uppercase;
  letter-spacing: .5px;
}

.th-sp-text-link:hover {
  color: var(--sp-navy) !important;
}

.th-sp-center-action {
  text-align: center;
  margin-top: 30px;
}

.th-sp-card-grid {
  display: grid;
  gap: 18px;
}

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

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

.th-sp-card {
  position: relative;
  min-height: 190px;
  padding: 28px 24px;
  background: #fff;
  border: 1px solid var(--sp-line);
  border-top: 3px solid var(--sp-orange);
  transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

.th-sp-card:hover {
  transform: translateY(-3px);
  border-color: #d5dce2;
  border-top-color: var(--sp-orange);
  box-shadow: 0 13px 32px rgba(11,31,51,.08);
}

.th-sp-card-no {
  display: block;
  margin: 0 0 18px;
  color: var(--sp-orange);
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.th-sp-card p {
  margin: 0;
  color: var(--sp-text);
  font-size: 13px;
  line-height: 1.75;
}

.th-sp-card-grid--dark .th-sp-card {
  background: rgba(255,255,255,.045);
  border-color: rgba(255,255,255,.13);
  border-top-color: var(--sp-orange);
}

.th-sp-card-grid--dark .th-sp-card:hover {
  border-color: rgba(255,255,255,.28);
  border-top-color: var(--sp-orange);
  box-shadow: none;
}

.th-sp-card-grid--dark .th-sp-card h3 {
  color: #fff;
}

.th-sp-card-grid--dark .th-sp-card p {
  color: rgba(255,255,255,.62);
}

.th-sp-gallery {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 18px;
}

.th-sp-gallery-item {
  margin: 0;
  background: #fff;
  border: 1px solid var(--sp-line);
  overflow: hidden;
}

.th-sp-gallery-item a {
  display: block;
  overflow: hidden;
  background: #edf1f4;
}

.th-sp-gallery-item img {
  display: block;
  width: 100%;
  height: 210px;
  object-fit: cover;
  transition: transform .4s ease;
}

.th-sp-gallery-item a:hover img {
  transform: scale(1.035);
}

.th-sp-gallery-item figcaption {
  min-height: 48px;
  padding: 13px 15px;
  color: var(--sp-heading);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.55;
}

.th-sp-link-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}

.th-sp-link-grid a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  min-height: 54px;
  padding: 13px 16px;
  border: 1px solid var(--sp-line);
  background: #fff;
  color: var(--sp-heading);
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none !important;
}

.th-sp-link-grid a b {
  color: var(--sp-orange);
  font-size: 17px;
  font-weight: 400;
  transition: transform .2s ease;
}

.th-sp-link-grid a:hover {
  border-color: var(--sp-orange);
  color: var(--sp-orange);
  box-shadow: 0 8px 20px rgba(11,31,51,.06);
}

.th-sp-link-grid a:hover b {
  transform: translateX(3px);
}

.th-sp-rfq {
  padding: 62px 0;
  background: #071725;
  background: var(--sp-navy-deep,#071725);
  color: #fff;
}

.th-sp-rfq-inner,
.th-sp-feature-band-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 45px;
}

.th-sp-rfq-copy {
  max-width: 800px;
}

.th-sp-rfq h2,
.th-sp-feature-band h2 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 31px;
  line-height: 1.25;
}

.th-sp-rfq p,
.th-sp-rfq-copy>div,
.th-sp-feature-band p {
  margin: 8px 0 0;
  color: rgba(255,255,255,.67);
  font-size: 14px;
  line-height: 1.75;
}

.th-sp-rfq-copy a {
  color: #fff;
}

.th-sp-feature-band {
  padding: 55px 0;
  background: var(--sp-navy);
  color: #fff;
}

.th-sp-feature-band-inner>div {
  max-width: 780px;
}

.th-sp-about-hero {
  display: flex;
  align-items: center;
}

.th-sp-about-image {
  position: relative;
  margin: 0;
  min-height: 465px;
  background: #edf1f4;
  overflow: hidden;
}

.th-sp-about-image:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 85px;
  height: 6px;
  background: var(--sp-orange);
}

.th-sp-about-image img {
  display: block;
  width: 100%;
  height: 465px;
  object-fit: cover;
}

.th-sp-about-copy {
  padding-left: 45px;
  margin-bottom: 0;
}

.th-sp-about-copy p {
  margin: 0 0 16px;
  color: var(--sp-text);
  font-size: 15px;
  line-height: 1.82;
}

.th-sp-about-copy .th-sp-btn {
  margin-top: 12px;
}

.th-sp-stats {
  padding: 66px 0;
  background: var(--sp-navy);
  color: #fff;
}

.th-sp-stat-grid {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  border-top: 1px solid rgba(255,255,255,.14);
  border-left: 1px solid rgba(255,255,255,.14);
}

.th-sp-stat {
  min-height: 145px;
  padding: 25px 15px;
  border-right: 1px solid rgba(255,255,255,.14);
  border-bottom: 1px solid rgba(255,255,255,.14);
  text-align: center;
}

.th-sp-stat strong {
  display: block;
  margin-bottom: 10px;
  color: var(--sp-orange);
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 32px;
  line-height: 1.1;
}

.th-sp-stat span {
  display: block;
  color: rgba(255,255,255,.72);
  font-size: 12px;
  line-height: 1.55;
  text-transform: uppercase;
  letter-spacing: .5px;
}

.th-sp-base-card {
  min-height: 330px;
  margin-bottom: 20px;
  padding: 34px;
  background: #fff;
  border: 1px solid var(--sp-line);
  border-left: 4px solid var(--sp-orange);
}

.th-sp-base-card h3 {
  font-size: 23px;
}

.th-sp-base-card p {
  color: var(--sp-text);
  font-size: 14px;
  line-height: 1.8;
}

.th-sp-base-card ul {
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}

.th-sp-base-card li {
  position: relative;
  padding: 9px 0 9px 18px;
  border-top: 1px solid #edf0f2;
  color: var(--sp-heading);
  font-size: 13px;
  font-weight: 600;
}

.th-sp-base-card li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 15px;
  width: 6px;
  height: 6px;
  background: var(--sp-orange);
}

.th-sp-capability-list {
  border-top: 1px solid var(--sp-line);
}

.th-sp-capability-list article {
  display: flex;
  gap: 20px;
  padding: 22px 0;
  border-bottom: 1px solid var(--sp-line);
}

.th-sp-capability-list article>span {
  flex: 0 0 42px;
  color: var(--sp-orange);
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
}

.th-sp-capability-list article>div {
  flex: 1;
}

.th-sp-capability-list h3 {
  font-size: 18px;
  margin-bottom: 6px;
}

.th-sp-capability-list p {
  margin: 0 0 8px;
  color: var(--sp-text);
  font-size: 13px;
  line-height: 1.7;
}

.th-sp-capability-list a {
  color: var(--sp-orange);
  font-size: 12px;
  font-weight: 700;
  text-decoration: none !important;
}

.th-sp-capability-list a:hover {
  color: var(--sp-navy);
}

.th-sp-timeline {
  position: relative;
  padding-left: 28px;
  border-left: 1px solid #cfd7dd;
}

.th-sp-timeline-item {
  position: relative;
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 20px;
  padding: 0 0 27px;
}

.th-sp-timeline-item:last-child {
  padding-bottom: 0;
}

.th-sp-timeline-item:before {
  content: "";
  position: absolute;
  left: -34px;
  top: 7px;
  width: 11px;
  height: 11px;
  border: 3px solid #fff;
  background: var(--sp-orange);
  box-shadow: 0 0 0 1px var(--sp-orange);
  border-radius: 50%;
}

.th-sp-timeline-item time {
  color: var(--sp-orange);
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 17px;
  font-weight: 700;
}

.th-sp-timeline-item h3 {
  margin: 0 0 5px;
  font-size: 16px;
}

.th-sp-timeline-item p {
  margin: 0;
  color: var(--sp-text);
  font-size: 13px;
  line-height: 1.65;
}

.th-sp-logo-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 14px;
}

.th-sp-logo-card {
  margin: 0;
  background: #fff;
  border: 1px solid var(--sp-line);
  text-align: center;
  overflow: hidden;
}

.th-sp-logo-card a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 130px;
  padding: 20px;
  background: #fff;
}

.th-sp-logo-card img {
  display: block;
  max-width: 100%;
  max-height: 82px;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: .82;
  transition: filter .25s ease,opacity .25s ease,transform .25s ease;
}

.th-sp-logo-card a:hover img {
  filter: none;
  opacity: 1;
  transform: scale(1.035);
}

.th-sp-logo-card figcaption {
  min-height: 42px;
  padding: 11px 10px;
  border-top: 1px solid var(--sp-line);
  color: #66717c;
  font-size: 11px;
  line-height: 1.5;
}

.th-sp-table-wrap {
  border: 1px solid var(--sp-line);
  background: #fff;
}

.th-sp-table {
  width: 100%;
  margin: 0;
  border-collapse: collapse;
}

.th-sp-table th {
  padding: 15px 17px;
  background: var(--sp-navy);
  border-right: 1px solid rgba(255,255,255,.12);
  color: #fff;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .45px;
  text-align: left;
}

.th-sp-table td {
  padding: 16px 17px;
  border-top: 1px solid var(--sp-line);
  border-right: 1px solid var(--sp-line);
  color: var(--sp-text);
  font-size: 13px;
  line-height: 1.65;
  vertical-align: top;
}

.th-sp-table th:last-child,
.th-sp-table td:last-child {
  border-right: 0;
}

.th-sp-table tbody tr:nth-child(even) td {
  background: #fafbfc;
}

.th-sp-table td:first-child {
  width: 23%;
  color: var(--sp-heading);
}

.th-sp-faq {
  max-width: 970px;
  margin: 0 auto;
  border-top: 1px solid var(--sp-line);
}

.th-sp-faq-item {
  border-bottom: 1px solid var(--sp-line);
  background: #fff;
}

.th-sp-faq-trigger {
  display: grid;
  grid-template-columns: 52px 1fr 28px;
  align-items: center;
  gap: 16px;
  width: 100%;
  padding: 22px 18px 22px 0;
  border: 0;
  background: transparent;
  color: var(--sp-heading);
  text-align: left;
  cursor: pointer;
  outline: 0;
}

.th-sp-faq-trigger:hover,
.th-sp-faq-trigger:focus {
  color: var(--sp-orange);
}

.th-sp-faq-number {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 30px;
  border-right: 2px solid var(--sp-orange);
  color: #8a949d;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 11px;
  font-weight: 700;
}

.th-sp-faq-title {
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}

.th-sp-faq-icon {
  position: relative;
  width: 22px;
  height: 22px;
}

.th-sp-faq-icon:before,
.th-sp-faq-icon:after {
  content: "";
  position: absolute;
  left: 4px;
  top: 10px;
  width: 14px;
  height: 2px;
  background: currentColor;
  transition: transform .22s ease;
}

.th-sp-faq-icon:after {
  transform: rotate(90deg);
}

.th-sp-faq-trigger[aria-expanded="true"] {
  color: var(--sp-orange);
}

.th-sp-faq-trigger[aria-expanded="true"] .th-sp-faq-icon:after {
  transform: rotate(0);
}

.th-sp-faq-answer {
  background: #f8fafb;
}

.th-sp-faq-answer-inner {
  padding: 0 65px 24px 68px;
  color: var(--sp-text);
  font-size: 14px;
  line-height: 1.8;
}

.th-sp-faq-answer-inner p {
  margin: 0 0 12px;
  line-height: 1.8;
}

.th-sp-faq-answer-inner p:last-child {
  margin-bottom: 0;
}

.th-sp-generic .th-sp-richtext {
  max-width: none;
}

.th-sp-generic .th-sp-richtext>h2:first-child,
.th-sp-generic .th-sp-richtext>h3:first-child {
  margin-top: 0;
}

.th-rfq-verify>div {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

@media (max-width:1199px) {
  .th-sp h1 {
    font-size: 38px;
  }

  .th-sp h2 {
    font-size: 31px;
  }

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

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

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

@media (max-width:991px) {
  .th-sp-section {
    padding: 68px 0;
  }

  .th-sp-intro-row,
  .th-sp-about-hero {
    display: block;
  }

  .th-sp-intro-row>[class*="col-"]+ [class*="col-"],
  .th-sp-about-hero>[class*="col-"]+ [class*="col-"] {
    margin-top: 35px;
  }

  .th-sp-card-grid--4,
  .th-sp-card-grid--3 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

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

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

  .th-sp-about-copy {
    padding-left: 0;
  }

  .th-sp-rfq-inner,
  .th-sp-feature-band-inner {
    display: block;
  }

  .th-sp-rfq-inner>.th-sp-btn,
  .th-sp-feature-band-inner>.th-sp-btn,
  .th-sp-rfq-inner>.th-sp-actions {
    margin-top: 25px;
  }

  .th-sp-section .th-row>[class*="col-md-"]+.th-col-md-7,
  .th-sp-section .th-row>[class*="col-md-"]+.th-col-md-8 {
    margin-top: 28px;
  }
}

@media (max-width:767px) {
  .th-sp-section {
    padding: 54px 0;
  }

  .th-sp-section--intro {
    padding-top: 50px;
  }

  .th-sp h1 {
    font-size: 31px;
    line-height: 1.2;
  }

  .th-sp h2 {
    font-size: 27px;
  }

  .th-sp h3 {
    font-size: 18px;
  }

  .th-sp-heading {
    margin-bottom: 28px;
  }

  .th-sp-richtext--intro {
    font-size: 15px;
  }

  .th-sp-card-grid--3,
  .th-sp-card-grid--4 {
    grid-template-columns: 1fr;
  }

  .th-sp-card {
    min-height: 0;
    padding: 23px 20px;
  }

  .th-sp-gallery {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .th-sp-gallery-item img {
    height: auto;
    aspect-ratio: 16/10;
  }

  .th-sp-link-grid {
    grid-template-columns: 1fr;
  }

  .th-sp-logo-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
  }

  .th-sp-logo-card a {
    height: 105px;
    padding: 16px;
  }

  .th-sp-logo-card img {
    max-height: 65px;
  }

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

  .th-sp-stat {
    min-height: 125px;
  }

  .th-sp-about-image,
  .th-sp-about-image img {
    height: 320px;
    min-height: 320px;
  }

  .th-sp-base-card {
    min-height: 0;
    padding: 25px 22px;
  }

  .th-sp-table {
    min-width: 720px;
  }

  .th-sp-timeline {
    margin-top: 15px;
    padding-left: 22px;
  }

  .th-sp-timeline-item {
    grid-template-columns: 65px 1fr;
    gap: 13px;
  }

  .th-sp-timeline-item:before {
    left: -28px;
  }

  .th-sp-faq-trigger {
    grid-template-columns: 42px 1fr 24px;
    gap: 10px;
    padding: 18px 6px 18px 0;
  }

  .th-sp-faq-number {
    width: 34px;
  }

  .th-sp-faq-title {
    font-size: 14px;
  }

  .th-sp-faq-answer-inner {
    padding: 0 15px 20px 52px;
    font-size: 13px;
  }

  .th-sp-rfq,
  .th-sp-feature-band {
    padding: 48px 0;
  }

  .th-sp-rfq h2,
  .th-sp-feature-band h2 {
    font-size: 27px;
  }

  .th-sp-actions {
    display: block;
  }

  .th-sp-actions .th-sp-btn {
    display: flex;
    width: 100%;
    margin: 0 0 10px;
  }

  .th-sp-rfq-inner>.th-sp-btn,
  .th-sp-feature-band-inner>.th-sp-btn {
    display: flex;
    width: 100%;
  }
}

@media (max-width:420px) {
  .th-sp-logo-grid {
    grid-template-columns: 1fr 1fr;
  }

  .th-sp-stat-grid {
    grid-template-columns: 1fr 1fr;
  }

  .th-sp-stat strong {
    font-size: 27px;
  }
}

.th-mc-page {
  background: #fff;
}

.th-mc-page .th-sp-section--intro {
  padding-bottom: 76px;
}

.th-mc-page .th-sp-richtext--intro {
  max-width: 820px;
}

.th-mc-page .th-sp-richtext--intro .th-sp-lead {
  margin-bottom: 14px;
}

.th-mc-intro-note {
  position: relative;
  margin-left: 22px;
  padding: 30px 30px 27px;
  background: #f5f7f9;
  border: 1px solid #dfe5ea;
  border-top: 4px solid #e87525;
}

.th-mc-intro-note>span {
  display: block;
  margin-bottom: 12px;
  color: #e87525;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.th-mc-intro-note h3 {
  margin: 0 0 11px;
  color: #14283b;
  font-size: 21px;
  line-height: 1.35;
}

.th-mc-intro-note p {
  margin: 0 0 17px;
  color: #596674;
  font-size: 13px;
  line-height: 1.75;
}

.th-mc-intro-note ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-mc-intro-note li {
  position: relative;
  padding: 9px 0 9px 18px;
  border-top: 1px solid #dde3e8;
  color: #2b4053;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
}

.th-mc-intro-note li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 15px;
  width: 6px;
  height: 6px;
  background: #e87525;
}

.th-mc-process-flow {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  border: 1px solid rgba(255,255,255,.15);
  background: rgba(255,255,255,.025);
}

.th-mc-process-step {
  position: relative;
  min-height: 218px;
  padding: 28px 20px 24px;
  border-right: 1px solid rgba(255,255,255,.14);
}

.th-mc-process-step:last-child {
  border-right: 0;
}

.th-mc-process-step>span {
  display: block;
  margin-bottom: 24px;
  color: #e87525;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.2px;
}

.th-mc-process-step h3 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 16px;
  line-height: 1.4;
}

.th-mc-process-step p {
  margin: 0;
  color: rgba(255,255,255,.58);
  font-size: 12px;
  line-height: 1.7;
}

.th-mc-process-links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 22px;
  color: rgba(255,255,255,.52);
  font-size: 12px;
  line-height: 1.6;
}

.th-mc-process-links strong {
  margin-right: 2px;
  color: rgba(255,255,255,.78);
  font-weight: 600;
}

.th-mc-process-links a {
  color: #fff;
  text-decoration: none;
}

.th-mc-process-links a:hover {
  color: #e87525;
}

.th-mc-process-links span {
  color: rgba(255,255,255,.28);
}

.th-mc-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 38px;
}

.th-mc-section-head .th-sp-heading {
  margin-bottom: 0;
}

.th-mc-section-head>.th-sp-text-link {
  flex: 0 0 auto;
  margin-bottom: 4px;
}

.th-mc-product-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 18px;
}

.th-mc-product-card {
  overflow: hidden;
  background: #fff;
  border: 1px solid #dfe5ea;
  transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

.th-mc-product-card:hover {
  transform: translateY(-3px);
  border-color: #d3dae0;
  box-shadow: 0 13px 32px rgba(11,31,51,.08);
}

.th-mc-product-image {
  display: block;
  overflow: hidden;
  height: 210px;
  background: #edf1f4;
}

.th-mc-product-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}

.th-mc-product-card:hover .th-mc-product-image img {
  transform: scale(1.035);
}

.th-mc-product-body {
  padding: 20px;
}

.th-mc-product-body>span {
  display: block;
  margin-bottom: 9px;
  color: #e87525;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.25px;
}

.th-mc-product-body h3 {
  display: -webkit-box;
  overflow: hidden;
  min-height: 50px;
  margin: 0 0 9px;
  font-size: 17px;
  line-height: 1.45;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.th-mc-product-body h3 a {
  color: #14283b;
  text-decoration: none;
}

.th-mc-product-body h3 a:hover {
  color: #e87525;
}

.th-mc-product-body p {
  display: -webkit-box;
  overflow: hidden;
  min-height: 67px;
  margin: 0 0 15px;
  color: #65727d;
  font-size: 12px;
  line-height: 1.75;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.th-mc-note {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 24px;
  padding: 18px 20px;
  background: #fff;
  border: 1px solid #dfe5ea;
  border-left: 3px solid #e87525;
  color: #63707a;
  font-size: 12px;
  line-height: 1.65;
}

.th-mc-note strong {
  flex: 0 0 auto;
  color: #14283b;
}

.th-mc-note span {
  flex: 1;
}

.th-mc-note a {
  flex: 0 0 auto;
  color: #e87525;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}

.th-mc-note a:hover {
  color: #0b1f33;
}

.th-mc-app-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 14px;
}

.th-mc-app {
  position: relative;
  min-height: 168px;
  padding: 23px 20px;
  background: #fff;
  border: 1px solid #dfe5ea;
  transition: border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}

.th-mc-app:hover {
  transform: translateY(-2px);
  border-color: #e87525;
  box-shadow: 0 9px 24px rgba(11,31,51,.06);
}

.th-mc-app>span {
  display: block;
  margin-bottom: 14px;
  color: #a2abb2;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
}

.th-mc-app h3 {
  margin: 0 0 8px;
  font-size: 16px;
}

.th-mc-app h3 a {
  color: #14283b;
  text-decoration: none;
}

.th-mc-app h3 a:hover {
  color: #e87525;
}

.th-mc-app p {
  margin: 0;
  color: #65727d;
  font-size: 12px;
  line-height: 1.7;
}

.th-mc-capability-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
}

.th-mc-capability-card {
  overflow: hidden;
  background: #fff;
  border: 1px solid #dfe5ea;
  transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

.th-mc-capability-card:hover {
  transform: translateY(-3px);
  border-color: #d3dae0;
  box-shadow: 0 13px 32px rgba(11,31,51,.08);
}

.th-mc-capability-image {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #e9eef2;
  text-decoration: none !important;
}

.th-mc-capability-image img {
  display: block;
  width: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}

.th-mc-capability-card:hover .th-mc-capability-image img {
  transform: scale(1.035);
}

.th-mc-image-placeholder {
  padding: 20px;
  color: #82909b;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
}

.th-mc-capability-body {
  padding: 23px 22px 25px;
}

.th-mc-capability-body>span {
  display: block;
  margin-bottom: 10px;
  color: #e87525;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.35px;
}

.th-mc-capability-body h3 {
  margin: 0 0 10px;
  font-size: 20px;
}

.th-mc-capability-body h3 a {
  color: #14283b;
  text-decoration: none;
}

.th-mc-capability-body h3 a:hover {
  color: #e87525;
}

.th-mc-capability-body p {
  min-height: 72px;
  margin: 0 0 15px;
  color: #65727d;
  font-size: 13px;
  line-height: 1.75;
}

.th-mc-route {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-top: 1px solid #dfe5ea;
  border-left: 1px solid #dfe5ea;
}

.th-mc-route article {
  position: relative;
  min-height: 205px;
  padding: 28px 24px;
  border-right: 1px solid #dfe5ea;
  border-bottom: 1px solid #dfe5ea;
  background: #fff;
}

.th-mc-route article:before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 54px;
  height: 3px;
  background: #e87525;
}

.th-mc-route article>span {
  display: block;
  margin-bottom: 24px;
  color: #e87525;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
}

.th-mc-route h3 {
  margin-bottom: 9px;
  font-size: 18px;
}

.th-mc-route p {
  margin: 0;
  color: #65727d;
  font-size: 12px;
  line-height: 1.75;
}

.th-mc-page .th-sp-richtext--intro>div,
.th-mc-page .th-sp-richtext--intro>section {
  max-width: 100%;
}

.th-mc-page .th-sp-richtext--intro iframe {
  max-width: 100%;
}

@media (max-width:1199px) {
  .th-mc-process-flow {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .th-mc-process-step {
    border-bottom: 1px solid rgba(255,255,255,.14);
  }

  .th-mc-process-step:nth-child(3n) {
    border-right: 0;
  }

  .th-mc-process-step:nth-last-child(-n/**/+3) {
    border-bottom: 0;
  }

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

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

@media (max-width:991px) {
  .th-mc-intro-note {
    margin: 32px 0 0;
  }

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

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

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

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

  .th-mc-section-head {
    align-items: flex-start;
  }
}

@media (max-width:767px) {
  .th-mc-page .th-sp-section--intro {
    padding-bottom: 50px;
  }

  .th-mc-intro-note {
    padding: 24px 21px;
  }

  .th-mc-process-flow {
    grid-template-columns: 1fr;
  }

  .th-mc-process-step {
    min-height: 0;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.14) !important;
  }

  .th-mc-process-step:last-child {
    border-bottom: 0 !important;
  }

  .th-mc-process-step>span {
    margin-bottom: 13px;
  }

  .th-mc-section-head {
    display: block;
    margin-bottom: 28px;
  }

  .th-mc-section-head>.th-sp-text-link {
    margin-top: 6px;
  }

  .th-mc-product-grid,
  .th-mc-app-grid,
  .th-mc-capability-grid,
  .th-mc-route {
    grid-template-columns: 1fr;
  }

  .th-mc-product-image {
    height: auto;
    aspect-ratio: 16/10;
  }

  .th-mc-product-body h3,
  .th-mc-product-body p {
    min-height: 0;
  }

  .th-mc-capability-image {
    height: auto;
  }

  .th-mc-capability-body p {
    min-height: 0;
  }

  .th-mc-note {
    display: block;
  }

  .th-mc-note strong,
  .th-mc-note span,
  .th-mc-note a {
    display: block;
  }

  .th-mc-note span {
    margin: 5px 0 10px;
  }

  .th-mc-route article {
    min-height: 0;
  }
}

.th-pd-page {
  background: #fff;
}

.th-pd-main {
  color: #263a4c;
}

.th-pd-overview {
  padding: 58px 0 68px;
  background: #fff;
}

.th-pd-overview-row {
  display: flex;
  align-items: flex-start;
}

.th-pd-overview-row>[class*="col-"] {
  float: none;
}

.th-pd-media {
  position: relative;
  max-width: 100%;
  background: #fff;
}

.th-pd-slider {
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-pd-slide {
  height: 550px;
  background: #f4f6f7;
}

.th-pd-main-image {
  display: flex;
  width: 100%;
  height: 550px;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: #f4f6f7;
  text-decoration: none !important;
}

.th-pd-main-image img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

.th-pd-video {
  display: flex;
  width: 100%;
  height: 550px;
  align-items: center;
  justify-content: center;
  background: #071725;
}

.th-pd-video iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

.th-pd-thumbs {
  display: flex;
  margin-top: 14px;
  gap: 10px;
  overflow-x: auto;
  padding: 1px 1px 5px;
  scrollbar-width: thin;
}

.th-pd-thumbs>a {
  display: block;
  flex: 0 0 76px;
  width: 76px;
  height: 76px;
  border: 1px solid #d9e1e7;
  background: #f4f6f7;
  text-decoration: none !important;
  transition: border-color .2s ease,box-shadow .2s ease;
}

.th-pd-thumbs>a:hover,
.th-pd-thumbs>a.active {
  border-color: #e87525;
  box-shadow: 0 0 0 1px #e87525;
}

.th-pd-thumb-media {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.th-pd-thumb-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0 !important;
}

.th-pd-play {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 30px;
  height: 30px;
  margin: -15px 0 0 -15px;
  border-radius: 50%;
  background: rgba(7,23,37,.82);
  color: #fff;
  text-align: center;
  line-height: 30px;
  font-size: 11px;
}

.th-pd-summary {
  padding: 4px 0 0 38px;
}

.th-pd-category {
  margin-bottom: 14px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.6px;
  text-transform: uppercase;
}

.th-pd-category a {
  color: #e87525;
  text-decoration: none !important;
}

.th-pd-title {
  max-width: 620px;
  margin: 0;
  color: #0b1f33;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.22;
  letter-spacing: -.5px;
}

.th-pd-title-line {
  display: block;
  width: 54px;
  height: 3px;
  margin: 20px 0 24px;
  background: #e87525;
}

.th-pd-intro {
  margin: 0 0 24px;
  color: #566675;
  font-size: 15px;
  line-height: 1.82;
}

.th-pd-intro p {
  margin: 0 0 10px;
}

.th-pd-intro>*:last-child {
  margin-bottom: 0;
}

.th-pd-models {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0 0 22px;
  max-height: none !important;
  overflow: visible !important;
}

.th-pd-models:empty {
  display: none;
}

.th-pd-models a {
  display: inline-block;
  padding: 6px 10px;
  border: 1px solid #d9e1e7;
  background: #fff;
  color: #43576a;
  font-size: 11px;
  line-height: 1.35;
  text-decoration: none !important;
}

.th-pd-models a:hover,
.th-pd-models a.active {
  border-color: #e87525;
  color: #e87525;
}

.th-pd-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 4px 0 25px;
}

.th-pd-btn {
  display: inline-flex;
  min-height: 47px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .45px;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
  cursor: pointer;
}

.th-pd-btn:hover {
  transform: translateY(-1px);
}

.th-pd-btn--primary {
  background: #e87525;
  border-color: #e87525;
  color: #fff !important;
}

.th-pd-btn--primary:hover,
.th-pd-btn--primary:focus {
  background: #0b1f33;
  border-color: #0b1f33;
  color: #fff !important;
}

.th-pd-btn--secondary {
  background: #fff;
  border-color: #bcc8d1;
  color: #173149 !important;
}

.th-pd-btn--secondary:hover,
.th-pd-btn--secondary:focus {
  border-color: #173149;
  color: #173149 !important;
}

.th-pd-trust {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  margin: 0 0 23px;
  border-top: 1px solid #e2e7eb;
  border-bottom: 1px solid #e2e7eb;
}

.th-pd-trust>div {
  position: relative;
  min-width: 0;
  padding: 16px 12px 16px 27px;
}

.th-pd-trust>div+div {
  border-left: 1px solid #e2e7eb;
}

.th-pd-trust .th-icon {
  position: absolute;
  left: 8px;
  top: 18px;
  color: #e87525;
  font-size: 12px;
}

.th-pd-trust strong,
.th-pd-trust small {
  display: block;
}

.th-pd-trust strong {
  margin-bottom: 4px;
  color: #173149;
  font-size: 11px;
  line-height: 1.35;
}

.th-pd-trust small {
  color: #7a8792;
  font-size: 10px;
  line-height: 1.45;
}

.th-pd-rfq-note {
  padding: 15px 17px;
  background: #f5f7f8;
  border-left: 3px solid #e87525;
  color: #657481;
  font-size: 11px;
  line-height: 1.65;
}

.th-pd-rfq-note strong {
  display: block;
  margin-bottom: 3px;
  color: #173149;
  font-size: 11px;
}

.th-pd-rfq-note span {
  display: block;
}

.th-pd-content-area {
  padding: 70px 0;
  background: #f6f8f9;
  border-top: 1px solid #edf0f2;
}

.th-pd-content-block {
  margin: 0 0 24px;
  padding: 34px 38px;
  background: #fff;
  border: 1px solid #dde4e9;
}

.th-pd-section-head {
  margin-bottom: 26px;
  padding-bottom: 18px;
  border-bottom: 1px solid #e2e7eb;
}

.th-pd-section-head span,
.th-pd-related-head>span,
.th-pd-side-kicker {
  display: block;
  margin-bottom: 7px;
  color: #e87525;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.55px;
  text-transform: uppercase;
}

.th-pd-section-head h2,
.th-pd-related-head h2 {
  margin: 0;
  color: #0b1f33;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 27px;
  font-weight: 700;
  line-height: 1.25;
}

.th-pd-richtext {
  color: #475b6c;
  font-size: 14px;
  line-height: 1.9;
  overflow-wrap: break-word;
}

.th-pd-richtext h2,
.th-pd-richtext h3,
.th-pd-richtext h4 {
  color: #102b43;
  font-weight: 700;
  line-height: 1.35;
}

.th-pd-richtext h2 {
  margin: 34px 0 16px;
  font-size: 25px;
}

.th-pd-richtext h3 {
  margin: 28px 0 14px;
  font-size: 20px;
}

.th-pd-richtext h4 {
  margin: 24px 0 12px;
  font-size: 17px;
}

.th-pd-richtext p {
  margin: 0 0 16px;
}

.th-pd-richtext ul,
.th-pd-richtext ol {
  margin: 0 0 18px;
  padding-left: 22px;
}

.th-pd-richtext li {
  margin-bottom: 6px;
}

.th-pd-richtext img {
  display: block;
  max-width: 100% !important;
  width: auto !important;
  height: auto !important;
  margin: 24px auto !important;
}

.th-pd-richtext table {
  width: 100% !important;
  margin: 22px 0;
  border-collapse: collapse;
  background: #fff;
}

.th-pd-richtext table th,
.th-pd-richtext table td {
  padding: 11px 13px;
  border: 1px solid #dce3e8;
  text-align: left;
  vertical-align: top;
}

.th-pd-richtext table th {
  background: #f2f5f7;
  color: #173149;
  font-weight: 700;
}

.th-pd-gallery {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 14px;
}

.th-pd-gallery a {
  display: flex;
  min-height: 180px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #f0f3f5;
  border: 1px solid #e1e6ea;
}

.th-pd-gallery img {
  display: block;
  width: 100%;
  height: 210px;
  object-fit: cover;
  margin: 0 !important;
  transition: transform .35s ease;
}

.th-pd-gallery a:hover img {
  transform: scale(1.035);
}

.th-pd-sidebar {
  position: sticky;
  top: 95px;
}

.th-pd-side-card {
  margin-bottom: 18px;
  padding: 25px;
  background: #fff;
  border: 1px solid #dde4e9;
}

.th-pd-side-card h2 {
  margin: 0 0 13px;
  color: #0b1f33;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
}

.th-pd-side-card p {
  margin: 0 0 18px;
  color: #647482;
  font-size: 12px;
  line-height: 1.75;
}

.th-pd-side-card--rfq {
  border-top: 3px solid #e87525;
}

.th-pd-side-btn {
  display: block;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #0b1f33;
  background: #0b1f33;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .45px;
  text-transform: uppercase;
  transition: background .2s ease,border-color .2s ease;
  cursor: pointer;
}

.th-pd-side-btn:hover,
.th-pd-side-btn:focus {
  background: #e87525;
  border-color: #e87525;
  color: #fff;
}

.th-pd-literature a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 0;
  border-top: 1px solid #e5eaee;
  color: #475c6d;
  text-decoration: none !important;
}

.th-pd-literature a:first-child {
  border-top: 0;
}

.th-pd-literature a>span {
  flex: 0 0 24px;
  color: #e87525;
  font-size: 10px;
  font-weight: 700;
}

.th-pd-literature a>strong {
  flex: 1;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.45;
}

.th-pd-literature a>.th-icon {
  color: #94a0aa;
  font-size: 9px;
}

.th-pd-literature a:hover strong {
  color: #e87525;
}

.th-pd-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.th-pd-tags a {
  display: inline-block;
  padding: 6px 9px;
  background: #f2f5f7;
  border: 1px solid #e0e6ea;
  color: #536676;
  font-size: 10px;
  line-height: 1.35;
  text-decoration: none !important;
}

.th-pd-tags a:hover {
  border-color: #e87525;
  color: #e87525;
}

.th-pd-bottom-rfq {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-top: 30px;
  padding: 28px 32px;
  background: #fff;
  border: 1px solid #dce3e8;
  border-left: 4px solid #e87525;
}

.th-pd-bottom-copy {
  max-width: 760px;
  color: #61717e;
  font-size: 13px;
  line-height: 1.7;
}

.th-pd-bottom-copy h2,
.th-pd-bottom-copy h3 {
  margin: 0 0 7px;
  color: #0b1f33;
  font-size: 21px;
  font-weight: 700;
}

.th-pd-bottom-copy p {
  margin: 0;
}

.th-pd-bottom-copy>*:last-child {
  margin-bottom: 0;
}

.th-pd-related {
  padding: 70px 0 78px;
  background: #fff;
}

.th-pd-related-head {
  margin-bottom: 30px;
}

.th-pd-related-row {
  display: flex;
  flex-wrap: wrap;
}

.th-pd-related-row>[class*="col-"] {
  display: flex;
  margin-bottom: 22px;
}

.th-pd-related-card {
  display: flex;
  width: 100%;
  flex-direction: column;
  background: #fff;
  border: 1px solid #dce3e8;
  transition: transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}

.th-pd-related-card:hover {
  transform: translateY(-3px);
  border-color: #c7d1d8;
  box-shadow: 0 12px 28px rgba(11,31,51,.07);
}

.th-pd-related-image {
  display: flex;
  height: 210px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #f0f3f5;
}

.th-pd-related-image img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform .35s ease;
}

.th-pd-related-card:hover .th-pd-related-image img {
  transform: scale(1.035);
}

.th-pd-related-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 18px 18px 17px;
}

.th-pd-related-body h3 {
  min-height: 47px;
  margin: 0 0 15px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.45;
}

.th-pd-related-body h3 a {
  color: #173149;
  text-decoration: none !important;
}

.th-pd-related-body h3 a:hover {
  color: #e87525;
}

.th-pd-related-link {
  margin-top: auto;
  color: #e87525 !important;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .45px;
  text-transform: uppercase;
  text-decoration: none !important;
}

.th-pd-related-link span {
  margin-left: 5px;
}

@media (max-width:1199px) {
  .th-pd-slide,
  .th-pd-main-image,
  .th-pd-video {
    height: 470px;
  }

  .th-pd-summary {
    padding-left: 25px;
  }

  .th-pd-title {
    font-size: 31px;
  }

  .th-pd-trust {
    grid-template-columns: 1fr;
  }

  .th-pd-trust>div+div {
    border-left: 0;
    border-top: 1px solid #e2e7eb;
  }

  .th-pd-related-image {
    height: 185px;
  }
}

@media (max-width:991px) {
  .th-pd-overview {
    padding: 45px 0 55px;
  }

  .th-pd-overview-row {
    display: block;
  }

  .th-pd-overview-row>[class*="col-"] {
    float: left;
  }

  .th-pd-summary {
    padding: 36px 0 0;
  }

  .th-pd-title {
    font-size: 32px;
  }

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

  .th-pd-trust>div+div {
    border-top: 0;
    border-left: 1px solid #e2e7eb;
  }

  .th-pd-sidebar {
    position: static;
    margin-top: 24px;
  }

  .th-pd-content-area {
    padding: 55px 0;
  }

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

  .th-pd-related {
    padding: 55px 0 62px;
  }

  .th-pd-related-image {
    height: 230px;
  }
}

@media (max-width:767px) {
  .th-pd-overview {
    padding: 32px 0 42px;
  }

  .th-pd-slide,
  .th-pd-main-image,
  .th-pd-video {
    height: 390px;
  }

  .th-pd-main-image {
    padding: 12px;
  }

  .th-pd-thumbs>a {
    flex-basis: 66px;
    width: 66px;
    height: 66px;
  }

  .th-pd-summary {
    padding-top: 28px;
  }

  .th-pd-title {
    font-size: 27px;
    line-height: 1.3;
  }

  .th-pd-title-line {
    margin: 16px 0 20px;
  }

  .th-pd-actions {
    display: block;
  }

  .th-pd-btn {
    display: flex;
    width: 100%;
    margin-bottom: 9px;
  }

  .th-pd-trust {
    grid-template-columns: 1fr;
  }

  .th-pd-trust>div+div {
    border-left: 0;
    border-top: 1px solid #e2e7eb;
  }

  .th-pd-content-area {
    padding: 38px 0;
  }

  .th-pd-content-block {
    padding: 25px 20px;
    margin-bottom: 16px;
  }

  .th-pd-section-head {
    margin-bottom: 20px;
    padding-bottom: 14px;
  }

  .th-pd-section-head h2,
  .th-pd-related-head h2 {
    font-size: 23px;
  }

  .th-pd-richtext {
    font-size: 13px;
    line-height: 1.85;
  }

  .th-pd-richtext table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }

  .th-pd-gallery {
    grid-template-columns: 1fr;
  }

  .th-pd-gallery a {
    min-height: 0;
  }

  .th-pd-gallery img {
    height: auto;
    max-height: none;
    object-fit: contain;
  }

  .th-pd-side-card {
    padding: 22px 20px;
  }

  .th-pd-bottom-rfq {
    display: block;
    padding: 24px 20px;
  }

  .th-pd-bottom-copy {
    margin-bottom: 18px;
  }

  .th-pd-related {
    padding: 42px 0 48px;
  }

  .th-pd-related-head {
    margin-bottom: 22px;
  }

  .th-pd-related-row>[class*="col-"] {
    margin-bottom: 16px;
  }

  .th-pd-related-image {
    height: auto;
    aspect-ratio: 16/10;
  }

  .th-pd-related-body h3 {
    min-height: 0;
  }
}

@media (max-width:480px) {
  .th-pd-slide,
  .th-pd-main-image,
  .th-pd-video {
    height: 320px;
  }

  .th-pd-title {
    font-size: 24px;
  }
}

.th-case-detail-page {
  --sp-navy: #0b1f33;
  --sp-navy-deep: #071725;
  --sp-orange: #e87525;
  --sp-text: #596674;
  --sp-heading: #14283b;
  --sp-soft: #f5f7f9;
  --sp-line: #dfe5ea;
  --sp-white: #fff;
  color: #52606d;
  background: #fff;
}

.th-case-detail-page h1,
.th-case-detail-page h2,
.th-case-detail-page h3 {
  color: #0b2944;
}

.th-case-detail-page .th-sp-rfq h2 {
  color: #fff;
}

.th-case-detail-hero {
  padding: 66px 0 70px;
  background: #f5f7f9;
  border-bottom: 1px solid #e0e5e8;
}

.th-case-detail-row {
  display: flex;
  align-items: stretch;
}

.th-case-detail-row>[class*="col-"] {
  display: flex;
}

.th-case-visual {
  display: flex;
  width: 100%;
  min-height: 500px;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid #dce3e8;
  padding: 22px;
}

.th-case-visual img {
  display: block;
  max-width: 100%;
  max-height: 520px;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.th-case-hero-copy {
  display: flex;
  width: 100%;
  flex-direction: column;
  justify-content: center;
  padding: 10px 0 10px 36px;
}

.th-case-kicker {
  display: block;
  margin: 0 0 13px;
  color: #e87525;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.6px;
  text-transform: uppercase;
}

.th-case-hero-copy h1 {
  margin: 0 0 19px;
  font-size: 42px;
  line-height: 1.13;
  letter-spacing: -.6px;
  font-weight: 700;
}

.th-case-hero-copy>p {
  margin: 0;
  color: #5f6d78;
  font-size: 16px;
  line-height: 1.8;
}

.th-case-snapshot {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin-top: 31px;
  border-top: 1px solid #d9e1e7;
  border-left: 1px solid #d9e1e7;
}

.th-case-snapshot>div {
  min-height: 90px;
  padding: 18px 19px;
  border-right: 1px solid #d9e1e7;
  border-bottom: 1px solid #d9e1e7;
  background: #fff;
}

.th-case-snapshot span {
  display: block;
  margin-bottom: 6px;
  color: #87939d;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.1px;
  text-transform: uppercase;
}

.th-case-snapshot strong {
  display: block;
  color: #173149;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 700;
}

.th-case-hero-action {
  margin-top: 28px;
}

.th-case-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 23px;
  background: #e87525;
  color: #fff !important;
  border: 1px solid #e87525;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .5px;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: .25s ease;
}

.th-case-btn:hover {
  background: #cf611c;
  border-color: #cf611c;
}

.th-case-main {
  padding: 72px 0 80px;
  background: #fff;
}

.th-case-content {
  padding-right: 30px;
}

.th-case-richtext {
  color: #52606d;
  font-size: 15px;
  line-height: 1.8;
}

.th-case-richtext>.th-case-block:first-child {
  padding-top: 0;
  border-top: 0;
}

.th-case-block {
  padding: 44px 0 0;
  margin-top: 44px;
  border-top: 1px solid #e1e6ea;
}

.th-case-block:first-child {
  margin-top: 0;
}

.th-case-block>.th-case-section-kicker {
  display: block;
  margin: 0 0 8px;
  color: #e87525;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.35px;
  text-transform: uppercase;
}

.th-case-block>h2 {
  margin: 0 0 17px;
  font-size: 29px;
  line-height: 1.25;
}

.th-case-block>p {
  margin: 0 0 15px;
}

.th-case-block ul {
  margin: 15px 0 0;
  padding-left: 19px;
}

.th-case-block li {
  margin-bottom: 9px;
}

.th-case-gallery {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
  margin-top: 25px;
}

.th-case-gallery figure {
  margin: 0;
  border: 1px solid #dce3e8;
  background: #f5f7f9;
}

.th-case-gallery a {
  display: flex;
  height: 270px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.th-case-gallery img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.th-case-gallery figcaption {
  padding: 10px 12px;
  color: #66737d;
  font-size: 12px;
  line-height: 1.5;
}

.th-case-sidebar {
  padding-left: 8px;
}

.th-case-side-card {
  margin-bottom: 18px;
  padding: 26px 24px;
  border: 1px solid #dce3e8;
  background: #fff;
}

.th-case-side-card--rfq {
  border-top: 3px solid #e87525;
  background: #f7f9fa;
}

.th-case-side-card .th-case-kicker {
  margin-bottom: 8px;
}

.th-case-side-card h2 {
  margin: 0 0 12px;
  font-size: 21px;
  line-height: 1.35;
}

.th-case-side-card p {
  margin: 0 0 20px;
  color: #66737d;
  font-size: 13px;
  line-height: 1.7;
}

.th-case-side-links a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 0;
  border-top: 1px solid #e4e8eb;
  color: #173149 !important;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none !important;
}

.th-case-side-links a:first-child {
  border-top: 0;
}

.th-case-side-links a:hover {
  color: #e87525 !important;
}

.th-case-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.th-case-tags a {
  padding: 7px 9px;
  background: #f2f5f7;
  color: #5c6974 !important;
  font-size: 11px;
  text-decoration: none !important;
}

.th-case-related {
  padding: 68px 0 78px;
  background: #f5f7f9;
  border-top: 1px solid #e1e6ea;
}

.th-case-related-head {
  margin-bottom: 28px;
}

.th-case-related-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 18px;
}

.th-case-related-card {
  background: #fff;
  border: 1px solid #dce3e8;
}

.th-case-related-card>a {
  display: flex;
  height: 200px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #fff;
}

.th-case-related-card img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.th-case-related-card div {
  padding: 18px;
}

.th-case-related-card h3 {
  margin: 0 0 12px;
  font-size: 16px;
  line-height: 1.5;
}

.th-case-related-card h3 a {
  color: #173149;
  text-decoration: none !important;
}

.th-case-related-card span {
  color: #e87525;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .5px;
  text-transform: uppercase;
}

@media (max-width:1199px) {
  .th-case-related-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
}

@media (max-width:991px) {
  .th-case-detail-row {
    display: block;
  }

  .th-case-detail-row>[class*="col-"] {
    display: block;
  }

  .th-case-visual {
    min-height: 420px;
  }

  .th-case-hero-copy {
    padding: 34px 0 0;
  }

  .th-case-content {
    padding-right: 0;
  }

  .th-case-sidebar {
    padding: 35px 0 0;
  }

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

@media (max-width:767px) {
  .th-case-detail-hero {
    padding: 42px 0 48px;
  }

  .th-case-visual {
    min-height: 0;
    height: auto;
    aspect-ratio: 4/3;
    padding: 12px;
  }

  .th-case-hero-copy h1 {
    font-size: 32px;
  }

  .th-case-snapshot {
    grid-template-columns: 1fr;
  }

  .th-case-main {
    padding: 52px 0 58px;
  }

  .th-case-block {
    padding-top: 34px;
    margin-top: 34px;
  }

  .th-case-block>h2 {
    font-size: 25px;
  }

  .th-case-gallery {
    grid-template-columns: 1fr;
  }

  .th-case-gallery a {
    height: auto;
    aspect-ratio: 4/3;
  }

  .th-case-related-grid {
    grid-template-columns: 1fr;
  }
}

.th-case-prevnext {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
  margin-top: 48px;
  padding-top: 30px;
  border-top: 1px solid #e1e6ea;
}

.th-case-prevnext-item {
  min-width: 0;
  padding: 18px 20px;
  border: 1px solid #dce3e8;
  background: #f7f9fa;
}

.th-case-prevnext-item>span {
  display: block;
  margin-bottom: 8px;
  color: #e87525;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.th-case-prevnext-item>a {
  display: block;
  color: #173149 !important;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.55;
  text-decoration: none !important;
}

.th-case-prevnext-item>a:hover {
  color: #e87525 !important;
}

.th-case-prevnext-item>em {
  display: block;
  color: #8a959d;
  font-size: 13px;
  font-style: normal;
}

.th-case-prevnext-item--next {
  text-align: right;
}

@media (max-width:767px) {
  .th-case-prevnext {
    grid-template-columns: 1fr;
    margin-top: 36px;
    padding-top: 24px;
  }

  .th-case-prevnext-item--next {
    text-align: left;
  }
}

@media (min-width:992px) {
  .th-case-main > .th-container > .th-row {
    display: flex;
    align-items: flex-start;
  }

  .th-case-main .th-case-content,
  .th-case-main .th-case-sidebar {
    float: none;
  }

  .th-case-sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: 95px;
    align-self: flex-start;
    height: auto;
  }
}

@media (max-width:991px) {
  .th-case-main > .th-container > .th-row {
    display: block;
  }

  .th-case-sidebar {
    position: static;
    top: auto;
  }
}

.th-mc-snapshot-section {
  background: #fff;
}

.th-mc-snapshot-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  border-top: 1px solid #dfe5ea;
  border-left: 1px solid #dfe5ea;
}

.th-mc-snapshot-grid article {
  position: relative;
  min-height: 190px;
  padding: 27px 24px 24px;
  background: #fff;
  border-right: 1px solid #dfe5ea;
  border-bottom: 1px solid #dfe5ea;
}

.th-mc-snapshot-grid article:before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 56px;
  height: 3px;
  background: #e87525;
}

.th-mc-snapshot-grid span {
  display: block;
  margin-bottom: 12px;
  color: #8a959e;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.th-mc-snapshot-grid strong {
  display: block;
  margin-bottom: 10px;
  color: #14283b;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 19px;
  line-height: 1.35;
}

.th-mc-snapshot-grid p {
  margin: 0;
  color: #65727d;
  font-size: 12px;
  line-height: 1.72;
}

.th-mc-source-note {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 22px;
  padding: 17px 19px;
  background: #f6f8f9;
  border: 1px solid #dfe5ea;
  border-left: 3px solid #e87525;
  color: #5e6b76;
  font-size: 12px;
  line-height: 1.7;
}

.th-mc-source-note strong {
  flex: 0 0 auto;
  color: #14283b;
}

.th-mc-source-note span {
  flex: 1;
}

.th-mc-tooling-section {
  border-top: 1px solid #edf0f2;
}

.th-mc-stage-grid {
  display: grid;
  border-top: 1px solid #dfe5ea;
  border-left: 1px solid #dfe5ea;
  background: #fff;
}

.th-mc-stage-grid--5 {
  grid-template-columns: repeat(5,minmax(0,1fr));
}

.th-mc-stage-grid article {
  position: relative;
  min-height: 210px;
  padding: 25px 20px;
  border-right: 1px solid #dfe5ea;
  border-bottom: 1px solid #dfe5ea;
  background: #fff;
}

.th-mc-stage-grid article>span {
  display: block;
  margin-bottom: 22px;
  color: #e87525;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
}

.th-mc-stage-grid h3 {
  margin: 0 0 9px;
  color: #14283b;
  font-size: 16px;
  line-height: 1.42;
}

.th-mc-stage-grid p {
  margin: 0;
  color: #65727d;
  font-size: 12px;
  line-height: 1.72;
}

.th-mc-proof-section {
  background: #fff;
}

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

.th-mc-proof-card {
  position: relative;
  min-height: 320px;
  padding: 30px 29px 28px;
  background: #0b1f33;
  border-top: 4px solid #e87525;
  color: #fff;
}

.th-mc-proof-label {
  display: block;
  margin-bottom: 15px;
  color: #e87525;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.35px;
  text-transform: uppercase;
}

.th-mc-proof-card h3 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 22px;
  line-height: 1.35;
}

.th-mc-proof-card>p {
  margin: 0 0 17px;
  color: rgba(255,255,255,.68);
  font-size: 13px;
  line-height: 1.78;
}

.th-mc-proof-card ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-mc-proof-card li {
  position: relative;
  padding: 9px 0 9px 17px;
  border-top: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.82);
  font-size: 12px;
  line-height: 1.6;
}

.th-mc-proof-card li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 16px;
  width: 5px;
  height: 5px;
  background: #e87525;
}

.th-mc-proof-action {
  margin-top: 22px;
  text-align: right;
}

.th-mc-evidence-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  margin-top: 24px;
  border-top: 1px solid rgba(255,255,255,.14);
  border-left: 1px solid rgba(255,255,255,.14);
}

.th-mc-evidence-grid article {
  min-height: 170px;
  padding: 23px 20px;
  border-right: 1px solid rgba(255,255,255,.14);
  border-bottom: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.035);
}

.th-mc-evidence-grid span {
  display: block;
  margin-bottom: 12px;
  color: #e87525;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.th-mc-evidence-grid strong {
  display: block;
  margin-bottom: 9px;
  color: #fff;
  font-size: 14px;
  line-height: 1.45;
}

.th-mc-evidence-grid p {
  margin: 0;
  color: rgba(255,255,255,.6);
  font-size: 11.5px;
  line-height: 1.7;
}

.th-mc-evidence-note {
  max-width: 980px;
  margin: 18px auto 0 !important;
  color: rgba(255,255,255,.65) !important;
  font-size: 12px !important;
  line-height: 1.75 !important;
  text-align: center;
}

.th-mc-decision-section {
  background: #fff;
}

.th-mc-decision-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 14px;
}

.th-mc-decision-grid article {
  position: relative;
  min-height: 215px;
  padding: 26px 22px 24px;
  background: #f6f8f9;
  border: 1px solid #dfe5ea;
  border-top: 3px solid #14283b;
}

.th-mc-decision-grid article:first-child {
  border-top-color: #e87525;
}

.th-mc-decision-grid strong {
  display: block;
  margin-bottom: 12px;
  color: #14283b;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 16px;
  line-height: 1.42;
}

.th-mc-decision-grid p {
  margin: 0 0 14px;
  color: #65727d;
  font-size: 12px;
  line-height: 1.75;
}

.th-mc-decision-grid a {
  display: inline-block;
  color: #e87525;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none !important;
}

.th-mc-decision-grid a:hover {
  color: #0b1f33;
}

.th-mc-risk-table td:first-child {
  width: 16%;
}

.th-mc-risk-table td:nth-child(2) {
  width: 38%;
}

.th-mc-risk-table td:nth-child(3) {
  width: 46%;
}

.th-mc-page .th-mc-snapshot-section .th-sp-heading,
.th-mc-page .th-mc-tooling-section .th-sp-heading,
.th-mc-page .th-mc-proof-section .th-sp-heading,
.th-mc-page .th-mc-decision-section .th-sp-heading {
  max-width: 940px;
}

@media (max-width:1199px) {
  .th-mc-snapshot-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .th-mc-stage-grid--5 {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

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

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

@media (max-width:991px) {
  .th-mc-proof-grid {
    grid-template-columns: 1fr;
  }

  .th-mc-stage-grid--5 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .th-mc-proof-card {
    min-height: 0;
  }
}

@media (max-width:767px) {
  .th-mc-snapshot-grid,
  .th-mc-stage-grid--5,
  .th-mc-decision-grid,
  .th-mc-evidence-grid {
    grid-template-columns: 1fr;
  }

  .th-mc-snapshot-grid article,
  .th-mc-stage-grid article,
  .th-mc-decision-grid article,
  .th-mc-evidence-grid article {
    min-height: 0;
  }

  .th-mc-source-note {
    display: block;
  }

  .th-mc-source-note strong,
  .th-mc-source-note span {
    display: block;
  }

  .th-mc-source-note strong {
    margin-bottom: 5px;
  }

  .th-mc-proof-card {
    padding: 26px 22px;
  }

  .th-mc-proof-card h3 {
    font-size: 20px;
  }

  .th-mc-proof-action {
    text-align: left;
  }

  .th-mc-risk-table {
    min-width: 760px;
  }
}

.th-mc-value-section {
  background: #fff;
  border-top: 1px solid #edf0f2;
  border-bottom: 1px solid #edf0f2;
}

.th-mc-value-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 18px;
  margin-top: 28px;
}

.th-mc-value-card {
  min-width: 0;
  padding: 24px 22px 22px;
  background: #f7f9fb;
  border: 1px solid #dce3e8;
  border-top: 3px solid #173149;
}

.th-mc-value-card h3 {
  margin: 10px 0 10px;
  color: #173149;
  font-size: 18px;
  line-height: 1.4;
}

.th-mc-value-card p {
  margin: 0;
  color: #5e6b76;
  font-size: 14px;
  line-height: 1.75;
}

.th-mc-value-tag {
  display: inline-block;
  color: #0b5a7a;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .9px;
  text-transform: uppercase;
}

.th-mc-value-tag--project {
  color: #9a541d;
}

.th-mc-value-footer {
  margin-top: 20px;
  padding: 20px 22px;
  background: #f3f6f8;
  border-left: 3px solid #e87525;
}

.th-mc-value-footer>div:first-child {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.th-mc-value-footer>div:first-child strong {
  margin-right: 3px;
  color: #173149;
  font-size: 13px;
}

.th-mc-value-footer>div:first-child span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 10px;
  background: #fff;
  border: 1px solid #d7e0e6;
  color: #445564;
  font-size: 12px;
  font-weight: 600;
}

.th-mc-value-footer p {
  margin: 12px 0 0;
  color: #60707d;
  font-size: 13px;
  line-height: 1.7;
}

.th-mc-value-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 13px;
}

.th-mc-value-actions .th-sp-text-link {
  font-size: 12px;
}

@media (max-width:1199px) {
  .th-mc-value-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width:767px) {
  .th-mc-value-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .th-mc-value-card {
    padding: 20px 18px;
  }

  .th-mc-value-footer {
    padding: 18px;
  }
}

.th-sp-about-video {
  position: relative;
}

.th-sp-about-video .th-sp-video-play {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 74px;
  height: 74px;
  margin: -37px 0 0 -37px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #ed6b21;
  box-shadow: 0 8px 26px rgba(0,0,0,.28),0 0 0 9px rgba(255,255,255,.22);
  cursor: pointer;
  z-index: 5;
  transition: transform .25s ease,background .25s ease,box-shadow .25s ease;
}

.th-sp-about-video .th-sp-video-play:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  margin: -11px 0 0 -5px;
  border-top: 11px solid transparent;
  border-bottom: 11px solid transparent;
  border-left: 18px solid #fff;
}

.th-sp-about-video .th-sp-video-play:hover {
  background: #f47a25;
  transform: scale(1.07);
}

.th-sp-about-video .th-sp-video-frame {
  position: absolute;
  inset: 0;
  background: #000;
  opacity: 0;
  visibility: hidden;
  z-index: 4;
  transition: opacity .25s ease,visibility .25s ease;
}

.th-sp-about-video .th-sp-video-frame iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

.th-sp-about-video.is-playing .th-sp-video-frame {
  opacity: 1;
  visibility: visible;
}

.th-sp-about-video.is-playing .th-sp-video-play {
  display: none;
}

@media (max-width:767px) {
  .th-sp-about-video .th-sp-video-play {
    width: 60px;
    height: 60px;
    margin: -30px 0 0 -30px;
  }

  .th-sp-about-video .th-sp-video-play:before {
    margin: -9px 0 0 -4px;
    border-top-width: 9px;
    border-bottom-width: 9px;
    border-left-width: 15px;
  }
}

.th-home-process-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 26px;
  margin-top: 26px;
  padding-top: 22px;
  border-top: 1px solid var(--home-line,#dfe5ea);
}

.th-home-process-compare {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--home-navy,#0b1f33) !important;
  font: 700 12px/1.3 Inter,Arial,sans-serif;
  letter-spacing: .35px;
  text-decoration: none !important;
}

.th-home-process-compare span {
  color: var(--home-orange,#e87525);
  font-size: 16px;
  transition: transform .2s ease;
}

.th-home-process-compare:hover {
  color: var(--home-orange,#e87525) !important;
}

.th-home-process-compare:hover span {
  transform: translateX(3px);
}

.th-home-process-footer p {
  max-width: 520px;
  margin: 0;
  color: #6a7680;
  font-size: 12px;
  line-height: 1.65;
  text-align: right;
}

.th-mc-overview-v19 .th-sp-section--intro {
  padding-bottom: 76px;
}

.th-mc-compare-section {
  border-top: 1px solid #edf0f2;
}

.th-mc-compare-wrap {
  margin-top: 24px;
  border: 1px solid #dfe5ea;
}

.th-mc-compare-table {
  margin: 0;
  min-width: 900px;
  border: 0;
}

.th-mc-compare-table th {
  padding: 15px 17px;
  background: #0b1f33;
  color: #fff;
  border-color: #24384b;
  font-size: 11px;
  letter-spacing: .45px;
  text-transform: uppercase;
}

.th-mc-compare-table td {
  padding: 17px;
  vertical-align: top;
  color: #5d6974;
  font-size: 12px;
  line-height: 1.7;
}

.th-mc-compare-table td:first-child {
  width: 17%;
  background: #f7f9fa;
}

.th-mc-compare-table td:nth-child(2) {
  width: 25%;
}

.th-mc-compare-table td:nth-child(3) {
  width: 29%;
}

.th-mc-compare-table td:nth-child(4) {
  width: 29%;
}

.th-mc-compare-table td strong,
.th-mc-compare-table td strong a {
  color: #14283b !important;
  font: 700 13px/1.45 Inter,Roboto,Arial,sans-serif;
  text-decoration: none !important;
}

.th-mc-compare-table td strong a:hover {
  color: #e87525 !important;
}

.th-mc-overview-va-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  border-top: 1px solid #dfe5ea;
  border-left: 1px solid #dfe5ea;
  background: #fff;
}

.th-mc-overview-va-grid article {
  position: relative;
  min-height: 198px;
  padding: 26px 23px;
  border-right: 1px solid #dfe5ea;
  border-bottom: 1px solid #dfe5ea;
  background: #fff;
}

.th-mc-overview-va-grid article:before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 54px;
  height: 3px;
  background: #e87525;
}

.th-mc-overview-va-grid article>span {
  display: block;
  margin-bottom: 20px;
  color: #e87525;
  font: 700 10px/1 Inter,Arial,sans-serif;
  letter-spacing: 1.1px;
}

.th-mc-overview-va-grid h3 {
  margin: 0 0 9px;
  color: #14283b;
  font-size: 17px;
  line-height: 1.4;
}

.th-mc-overview-va-grid p {
  margin: 0;
  color: #65727d;
  font-size: 12px;
  line-height: 1.72;
}

.th-mc-overview-quality-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 16px;
}

.th-mc-overview-quality-grid article {
  min-height: 185px;
  padding: 25px 21px;
  background: #fff;
  border: 1px solid #dfe5ea;
  border-top: 3px solid #e87525;
}

.th-mc-overview-quality-grid article>span {
  display: block;
  margin-bottom: 15px;
  color: #8a959e;
  font: 700 9px/1 Inter,Arial,sans-serif;
  letter-spacing: 1.25px;
}

.th-mc-overview-quality-grid h3 {
  margin: 0 0 9px;
  color: #14283b;
  font-size: 17px;
  line-height: 1.4;
}

.th-mc-overview-quality-grid p {
  margin: 0;
  color: #65727d;
  font-size: 12px;
  line-height: 1.72;
}

.th-mc-overview-v19 .th-mc-proof-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 18px;
}

.th-mc-overview-v19 .th-mc-proof-card {
  min-width: 0;
  background: #fff;
  border: 1px solid #dce3e8;
}

.th-mc-overview-v19 .th-mc-proof-image {
  display: flex;
  height: 220px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #fff;
}

.th-mc-overview-v19 .th-mc-proof-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.th-mc-overview-v19 .th-mc-proof-body {
  padding: 20px 21px 22px;
}

.th-mc-overview-v19 .th-mc-proof-body>span {
  display: block;
  margin-bottom: 9px;
  color: #e87525;
  font: 700 9px/1 Inter,Arial,sans-serif;
  letter-spacing: 1.1px;
}

.th-mc-overview-v19 .th-mc-proof-body h3 {
  margin: 0 0 10px;
  font-size: 17px;
  line-height: 1.45;
}

.th-mc-overview-v19 .th-mc-proof-body h3 a {
  color: #14283b !important;
  text-decoration: none !important;
}

.th-mc-overview-v19 .th-mc-proof-body p {
  min-height: 62px;
  margin: 0 0 14px;
  color: #65727d;
  font-size: 12px;
  line-height: 1.7;
}

.th-mc-rfq-inputs {
  border-top: 1px solid #edf0f2;
}

.th-mc-rfq-input-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  border-top: 1px solid #dfe5ea;
  border-left: 1px solid #dfe5ea;
}

.th-mc-rfq-input-grid article {
  display: grid;
  grid-template-columns: 46px 1fr;
  min-height: 92px;
  align-items: center;
  padding: 16px 18px;
  border-right: 1px solid #dfe5ea;
  border-bottom: 1px solid #dfe5ea;
  background: #fff;
}

.th-mc-rfq-input-grid strong {
  color: #e87525;
  font: 700 11px Inter,Arial,sans-serif;
  letter-spacing: 1px;
}

.th-mc-rfq-input-grid span {
  color: #263c50;
  font: 600 12px/1.65 Inter,Arial,sans-serif;
}

@media (max-width:1199px) {
  .th-mc-overview-quality-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width:991px) {
  .th-home-process-footer {
    display: block;
  }

  .th-home-process-footer p {
    max-width: none;
    margin-top: 10px;
    text-align: left;
  }

  .th-mc-overview-va-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .th-mc-overview-v19 .th-mc-proof-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .th-mc-rfq-input-grid {
    margin-top: 20px;
  }
}

@media (max-width:767px) {
  .th-mc-overview-va-grid,
  .th-mc-overview-quality-grid,
  .th-mc-proof-grid,
  .th-mc-rfq-input-grid {
    grid-template-columns: 1fr;
  }

  .th-mc-overview-v19 .th-mc-proof-image {
    height: auto;
    aspect-ratio: 4/3;
  }

  .th-mc-overview-v19 .th-mc-proof-body p {
    min-height: 0;
  }

  .th-mc-rfq-input-grid article {
    min-height: 80px;
  }
}

.th-about-v20 .th-sp-about-copy .th-sp-lead {
  font-size: 18px;
  line-height: 1.75;
}

.th-about-intro-actions {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
  margin-top: 26px;
}

.th-about-intro-actions .th-sp-btn {
  margin-top: 0;
}

.th-about-intro-actions .th-sp-text-link {
  display: inline-flex;
  align-items: center;
}

.th-about-v20 .th-sp-stats .th-sp-heading p {
  max-width: 760px;
  margin: 12px auto 0;
  color: rgba(255,255,255,.66);
  font-size: 14px;
  line-height: 1.75;
}

.th-about-v20 .th-sp-stat strong {
  font-size: 28px;
}

.th-about-base-card {
  min-height: 405px;
}

.th-about-base-role {
  display: grid;
  grid-template-columns: 105px 1fr;
  gap: 14px;
  margin: 22px 0 2px;
  padding: 15px 16px;
  background: #f5f7f9;
  border-left: 3px solid var(--sp-orange);
}

.th-about-base-role strong {
  color: var(--sp-heading);
  font-size: 11px;
  letter-spacing: .8px;
  text-transform: uppercase;
}

.th-about-base-role span {
  color: var(--sp-text);
  font-size: 13px;
  line-height: 1.65;
}

.th-about-oem-flow {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1px;
  background: rgba(255,255,255,.13);
  border: 1px solid rgba(255,255,255,.13);
}

.th-about-oem-flow article {
  min-height: 200px;
  padding: 28px 24px;
  background: #0d2235;
}

.th-about-oem-flow article>span {
  display: block;
  margin-bottom: 26px;
  color: var(--sp-orange);
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
}

.th-about-oem-flow h3 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 17px;
}

.th-about-oem-flow p {
  margin: 0;
  color: rgba(255,255,255,.62);
  font-size: 12px;
  line-height: 1.75;
}

.th-about-v20 .th-sp-capability-list article {
  padding: 20px 0;
}

.th-about-quality-grid .th-sp-card {
  min-height: 235px;
}

.th-about-evidence-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin: 42px 0 20px;
  padding-top: 30px;
  border-top: 1px solid var(--sp-line);
}

.th-about-evidence-head h3 {
  margin: 6px 0 0;
  color: var(--sp-heading);
  font-size: 22px;
}

.th-about-equipment-gallery {
  margin-top: 0;
}

.th-about-trust-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 1px;
  background: rgba(255,255,255,.13);
  border: 1px solid rgba(255,255,255,.13);
}

.th-about-trust-grid article {
  min-height: 190px;
  padding: 27px 25px;
  background: #0d2235;
}

.th-about-trust-grid article>span {
  display: block;
  margin-bottom: 20px;
  color: var(--sp-orange);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
}

.th-about-trust-grid h3 {
  margin: 0 0 9px;
  color: #fff;
  font-size: 17px;
}

.th-about-trust-grid p {
  margin: 0;
  color: rgba(255,255,255,.62);
  font-size: 12px;
  line-height: 1.75;
}

.th-about-proof-section {
  padding: 72px 0;
  background: #f5f7f9;
  border-top: 1px solid #e1e6ea;
}

.th-about-proof-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 18px;
  margin-top: 30px;
}

.th-about-proof-card {
  display: block;
  min-height: 260px;
  padding: 30px 28px;
  background: #fff;
  border: 1px solid var(--sp-line);
  color: inherit !important;
  text-decoration: none !important;
  transition: border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}

.th-about-proof-card>span {
  display: block;
  margin-bottom: 42px;
  color: var(--sp-orange);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
}

.th-about-proof-card h3 {
  margin: 0 0 11px;
  color: var(--sp-heading);
  font-size: 21px;
}

.th-about-proof-card p {
  margin: 0 0 20px;
  color: var(--sp-text);
  font-size: 13px;
  line-height: 1.75;
}

.th-about-proof-card b {
  color: var(--sp-orange);
  font-size: 12px;
}

.th-about-proof-card:hover {
  border-color: var(--sp-orange);
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(11,31,51,.08);
}

@media (max-width:1199px) {
  .th-about-oem-flow {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .th-about-base-card {
    min-height: 435px;
  }
}

@media (max-width:991px) {
  .th-about-base-card {
    min-height: 0;
  }

  .th-about-oem-flow {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .th-about-evidence-head {
    align-items: flex-start;
    flex-direction: column;
  }

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

@media (max-width:767px) {
  .th-about-intro-actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
  }

  .th-about-base-role {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .th-about-oem-flow {
    grid-template-columns: 1fr;
  }

  .th-about-oem-flow article {
    min-height: 0;
  }

  .th-about-trust-grid {
    grid-template-columns: 1fr;
  }

  .th-about-trust-grid article {
    min-height: 0;
  }

  .th-about-proof-section {
    padding: 52px 0;
  }

  .th-about-proof-grid {
    grid-template-columns: 1fr;
  }

  .th-about-proof-card {
    min-height: 0;
  }

  .th-about-proof-card>span {
    margin-bottom: 24px;
  }
}

.th-qc-v21-flow {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 1px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.12);
}

.th-qc-v21-flow article {
  min-height: 190px;
  padding: 28px 24px;
  background: #0d2235;
}

.th-qc-v21-flow article>span {
  display: block;
  margin-bottom: 24px;
  color: var(--sp-orange);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.1px;
}

.th-qc-v21-flow h3 {
  margin: 0 0 9px;
  color: #fff;
  font-size: 17px;
}

.th-qc-v21-flow p {
  margin: 0;
  color: rgba(255,255,255,.62);
  font-size: 12px;
  line-height: 1.75;
}

.th-qc-v21-cap-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 18px;
  margin-top: 28px;
}

.th-qc-v21-cap-grid article {
  min-height: 300px;
  padding: 27px 25px;
  background: #fff;
  border: 1px solid var(--sp-line);
  border-top: 3px solid var(--sp-orange);
}

.th-qc-v21-badge {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--sp-orange);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.2px;
}

.th-qc-v21-cap-grid h3 {
  margin: 0 0 10px;
  color: var(--sp-heading);
  font-size: 19px;
}

.th-qc-v21-cap-grid p {
  margin: 0 0 18px;
  color: var(--sp-text);
  font-size: 13px;
  line-height: 1.75;
}

.th-qc-v21-cap-grid ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-qc-v21-cap-grid li {
  position: relative;
  padding: 8px 0 8px 17px;
  border-top: 1px solid #edf0f2;
  color: #46586a;
  font-size: 12px;
  line-height: 1.55;
}

.th-qc-v21-cap-grid li:before {
  content: "";
  position: absolute;
  top: 15px;
  left: 0;
  width: 6px;
  height: 2px;
  background: var(--sp-orange);
}

.th-qc-v21-gallery {
  margin-top: 28px;
}

.th-qc-v21-doc-wrap {
  margin-top: 30px;
  border: 1px solid rgba(255,255,255,.14);
}

.th-qc-v21-doc-table {
  width: 100%;
  border-collapse: collapse;
  background: #0d2235;
}

.th-qc-v21-doc-table th {
  padding: 15px 18px;
  background: #071725;
  color: #fff;
  border-right: 1px solid rgba(255,255,255,.1);
  font-size: 11px;
  letter-spacing: .5px;
  text-transform: uppercase;
}

.th-qc-v21-doc-table td {
  padding: 15px 18px;
  color: rgba(255,255,255,.68);
  border-top: 1px solid rgba(255,255,255,.08);
  border-right: 1px solid rgba(255,255,255,.08);
  font-size: 12px;
  line-height: 1.6;
}

.th-qc-v21-doc-table td strong {
  color: #fff;
}

.th-qc-v21-process-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 14px;
  margin-top: 28px;
}

.th-qc-v21-process-grid article {
  min-width: 0;
}

.th-qc-v21-process-grid a {
  display: block;
  height: 100%;
  min-height: 255px;
  padding: 24px 21px;
  background: #fff;
  border: 1px solid var(--sp-line);
  color: inherit !important;
  text-decoration: none !important;
  transition: border-color .25s ease,transform .25s ease;
}

.th-qc-v21-process-grid a:hover {
  border-color: var(--sp-orange);
  transform: translateY(-3px);
}

.th-qc-v21-process-grid a>span {
  display: block;
  margin-bottom: 28px;
  color: var(--sp-orange);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1px;
}

.th-qc-v21-process-grid h3 {
  margin: 0 0 10px;
  color: var(--sp-heading);
  font-size: 17px;
}

.th-qc-v21-process-grid p {
  margin: 0 0 17px;
  color: var(--sp-text);
  font-size: 12px;
  line-height: 1.7;
}

.th-qc-v21-process-grid b {
  color: var(--sp-orange);
  font-size: 11px;
}

@media (min-width:992px) {
  .th-case-main>.th-container>.th-row {
    display: flex;
    align-items: flex-start;
  }

  .th-case-main .th-case-content,
  .th-case-main .th-case-sidebar {
    float: none;
  }

  .th-case-main .th-case-sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: 95px;
    align-self: flex-start;
    height: auto;
  }
}

.th-case-related-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 18px;
}

.th-case-related-card>a {
  display: flex;
  height: 180px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #fff;
}

.th-case-related-card img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.th-partners-v21-types {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 1px;
  background: #dfe5e9;
  border: 1px solid #dfe5e9;
}

.th-partners-v21-types article {
  min-height: 175px;
  padding: 25px 24px;
  background: #fff;
}

.th-partners-v21-types article>span {
  display: block;
  margin-bottom: 22px;
  color: #e87525;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1px;
}

.th-partners-v21-types h3 {
  margin: 0 0 9px;
  color: #173149;
  font-size: 17px;
}

.th-partners-v21-types p {
  margin: 0;
  color: #60707e;
  font-size: 12px;
  line-height: 1.7;
}

.th-partners-v21-logo-grid {
  margin-top: 30px;
}

.th-partners-v21-logo-grid .th-sp-logo-card {
  background: #fff;
  border: 1px solid #e0e5e9;
}

.th-partners-v21-logo-grid .th-sp-logo-card img {
  object-fit: contain;
  background: #fff;
}

.th-partners-v21-flow {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.12);
}

.th-partners-v21-flow article {
  min-height: 205px;
  padding: 28px 24px;
  background: #0d2235;
}

.th-partners-v21-flow article>span {
  display: block;
  margin-bottom: 26px;
  color: #e87525;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1px;
}

.th-partners-v21-flow h3 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 17px;
}

.th-partners-v21-flow p {
  margin: 0;
  color: rgba(255,255,255,.62);
  font-size: 12px;
  line-height: 1.75;
}

.th-partners-v21-eval-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 16px;
  margin-top: 28px;
}

.th-partners-v21-eval-grid article {
  min-height: 245px;
  padding: 26px 23px;
  background: #fff;
  border: 1px solid #dfe5e9;
  border-top: 3px solid #e87525;
}

.th-partners-v21-eval-grid article>span {
  display: block;
  margin-bottom: 30px;
  color: #e87525;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .9px;
}

.th-partners-v21-eval-grid h3 {
  margin: 0 0 10px;
  color: #173149;
  font-size: 17px;
}

.th-partners-v21-eval-grid p {
  margin: 0;
  color: #60707e;
  font-size: 12px;
  line-height: 1.75;
}

.th-partners-v21-case-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 36px 38px;
  background: #f5f7f9;
  border: 1px solid #e0e5e9;
}

.th-partners-v21-case-link>div {
  max-width: 760px;
}

.th-partners-v21-case-link h2 {
  margin: 6px 0 9px;
  color: #173149;
  font-size: 27px;
}

.th-partners-v21-case-link p {
  margin: 0;
  color: #60707e;
  font-size: 13px;
  line-height: 1.75;
}

.th-partners-v21-case-link .th-sp-btn {
  flex: 0 0 auto;
}

@media (max-width:1199px) {
  .th-qc-v21-process-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .th-partners-v21-eval-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width:991px) {
  .th-qc-v21-flow,
  .th-qc-v21-cap-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .th-case-main>.th-container>.th-row {
    display: block;
  }

  .th-case-main .th-case-sidebar {
    position: static;
    top: auto;
  }

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

  .th-partners-v21-flow {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .th-partners-v21-case-link {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width:767px) {
  .th-qc-v21-flow,
  .th-qc-v21-cap-grid,
  .th-qc-v21-process-grid {
    grid-template-columns: 1fr;
  }

  .th-qc-v21-flow article,
  .th-qc-v21-cap-grid article,
  .th-qc-v21-process-grid a {
    min-height: 0;
  }

  .th-qc-v21-doc-wrap {
    overflow-x: auto;
  }

  .th-qc-v21-doc-table {
    min-width: 760px;
  }

  .th-case-related-grid {
    grid-template-columns: 1fr;
  }

  .th-case-related-card>a {
    height: 220px;
  }

  .th-partners-v21-types,
  .th-partners-v21-flow,
  .th-partners-v21-eval-grid {
    grid-template-columns: 1fr;
  }

  .th-partners-v21-types article,
  .th-partners-v21-flow article,
  .th-partners-v21-eval-grid article {
    min-height: 0;
  }

  .th-partners-v21-case-link {
    padding: 28px 24px;
  }
}

.th-case-content-head {
  margin-bottom: 26px;
  padding-bottom: 22px;
  border-bottom: 1px solid #e2e7eb;
}

.th-case-content-head h2 {
  margin: 7px 0 9px;
  color: #173149;
  font-size: 27px;
  line-height: 1.35;
  font-weight: 500;
}

.th-case-content-head p {
  max-width: 720px;
  margin: 0;
  color: #60707e;
  font-size: 13px;
  line-height: 1.75;
}

.th-case-gallery-block {
  margin-top: 38px;
}

.th-case-gallery-intro {
  margin: 0 0 20px;
  color: #60707e;
  font-size: 13px;
  line-height: 1.75;
}

.th-case-side-card--toc {
  border-top: 3px solid #e87525;
}

.th-case-toc {
  margin-top: 15px;
}

.th-case-toc a {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 10px;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid #e4e9ed;
  color: #536777 !important;
  text-decoration: none !important;
}

.th-case-toc a:first-child {
  border-top: 0;
}

.th-case-toc a>span {
  color: #e87525;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .6px;
}

.th-case-toc a>strong {
  color: #173149;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.45;
}

.th-case-toc a:hover strong {
  color: #e87525;
}

.th-case-side-intro {
  margin: -2px 0 12px;
  color: #6a7985;
  font-size: 11px;
  line-height: 1.65;
}

.th-case-detail-v25 .th-case-section-kicker {
  display: block;
  margin: 0 0 8px;
  color: #e87525 !important;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 1.05px;
  text-transform: uppercase;
}

.th-case-detail-v25 .th-case-content-head {
  margin: 0 0 30px;
  padding: 0 0 22px;
  border-bottom: 1px solid #e1e6ea;
}

.th-case-detail-v25 .th-case-content-head h2 {
  margin: 0 0 9px;
  color: #173149;
  font-size: 27px;
  line-height: 1.35;
  font-weight: 500;
}

.th-case-detail-v25 .th-case-content-head p {
  max-width: 730px;
  margin: 0;
  color: #627381;
  font-size: 13px;
  line-height: 1.75;
}

.th-case-challenge-v25 {
  position: relative;
  margin: 0 0 38px;
  padding: 27px 30px 29px;
  background: #f7f9fa;
  border: 1px solid #e0e5e9;
  border-left: 4px solid #e87525;
}

.th-case-challenge-v25-head {
  margin: 0 0 15px;
  padding: 0 0 14px;
  border-bottom: 1px solid #dde4e8;
}

.th-case-challenge-v25-head>span {
  display: block;
  margin: 0 0 6px;
  color: #e87525;
  font-size: 9px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 1.05px;
  text-transform: uppercase;
}

.th-case-challenge-v25-head h2 {
  margin: 0;
  color: #173149;
  font-size: 21px;
  line-height: 1.4;
  font-weight: 600;
}

.th-case-challenge-v25-body {
  max-width: 760px;
}

.th-case-challenge-v25-body p {
  margin: 0;
  color: #526675;
  font-size: 14px;
  line-height: 1.88;
}

.th-case-takeaway-v25 {
  position: relative;
  margin: 38px 0 12px;
  padding: 27px 30px 29px;
  background: #fffaf6;
  border: 1px solid #eadfd7;
  border-left: 4px solid #e87525;
}

.th-case-takeaway-v25-head {
  margin: 0 0 15px;
  padding: 0 0 14px;
  border-bottom: 1px solid #eadfd7;
}

.th-case-takeaway-v25-head>span {
  display: block;
  margin: 0 0 6px;
  color: #e87525;
  font-size: 9px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 1.05px;
  text-transform: uppercase;
}

.th-case-takeaway-v25-head h2 {
  margin: 0;
  color: #173149;
  font-size: 21px;
  line-height: 1.4;
  font-weight: 600;
}

.th-case-takeaway-v25-body {
  max-width: 760px;
}

.th-case-takeaway-v25-body p {
  margin: 0;
  color: #526675;
  font-size: 14px;
  line-height: 1.88;
}

.th-case-detail-v25 .th-case-side-card--toc {
  border-top: 3px solid #e87525;
}

.th-case-detail-v25 .th-case-toc-v25 {
  margin-top: 14px;
}

.th-case-detail-v25 .th-case-toc-v25 a {
  display: grid;
  grid-template-columns: 27px minmax(0,1fr);
  gap: 10px;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid #e3e8ec;
  color: #536777 !important;
  text-decoration: none !important;
}

.th-case-detail-v25 .th-case-toc-v25 a:first-child {
  border-top: 0;
}

.th-case-detail-v25 .th-case-toc-v25 a>span {
  color: #e87525;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .5px;
}

.th-case-detail-v25 .th-case-toc-v25 a>strong {
  color: #173149;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.45;
}

.th-case-detail-v25 .th-case-toc-v25 a:hover>strong {
  color: #e87525;
}

.th-case-detail-v25 .th-case-richtext {
  margin-bottom: 8px;
}

.th-case-detail-v25 .th-case-gallery-block {
  margin-top: 38px;
}

@media (min-width:992px) {
  .th-case-detail-v25 .th-case-main>.th-container>.th-row {
    display: flex;
    align-items: flex-start;
  }

  .th-case-detail-v25 .th-case-main .th-case-content,
  .th-case-detail-v25 .th-case-main .th-case-sidebar {
    float: none;
  }

  .th-case-detail-v25 .th-case-main .th-case-sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: 95px;
    align-self: flex-start;
    height: auto;
  }
}

@media (max-width:991px) {
  .th-case-detail-v25 .th-case-main>.th-container>.th-row {
    display: block;
  }

  .th-case-detail-v25 .th-case-main .th-case-sidebar {
    position: static;
    top: auto;
  }
}

@media (max-width:767px) {
  .th-case-challenge-v25,
  .th-case-takeaway-v25 {
    margin-bottom: 28px;
    padding: 22px 21px 23px;
  }

  .th-case-challenge-v25-head h2,
  .th-case-takeaway-v25-head h2 {
    font-size: 19px;
  }

  .th-case-challenge-v25-body p,
  .th-case-takeaway-v25-body p {
    font-size: 13px;
    line-height: 1.82;
  }

  .th-case-detail-v25 .th-case-content-head h2 {
    font-size: 23px;
  }
}

.th-mc-investment .th-mc-investment-projects {
  background: #fff;
}

.th-mc-investment .th-mc-investment-projects .th-mc-proof-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 18px;
}

.th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card {
  position: relative;
  min-width: 0;
  min-height: 330px;
  padding: 30px 29px 28px;
  background: #0b1f33 !important;
  border: 1px solid #183247 !important;
  border-top: 4px solid #e87525 !important;
  color: #fff !important;
  box-shadow: none;
}

.th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card .th-mc-proof-label {
  display: block;
  margin: 0 0 15px;
  color: #e87525 !important;
  font-family: Inter,Roboto,Arial,sans-serif;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 1.35px;
  text-transform: uppercase;
}

.th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card h3 {
  margin: 0 0 12px;
  color: #fff !important;
  font-size: 22px;
  line-height: 1.35;
  font-weight: 600;
}

.th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card>p {
  margin: 0 0 17px;
  color: rgba(255,255,255,.70) !important;
  font-size: 13px;
  line-height: 1.78;
}

.th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card li {
  position: relative;
  margin: 0;
  padding: 9px 0 9px 17px;
  border-top: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.84) !important;
  font-size: 12px;
  line-height: 1.6;
}

.th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card li:first-child {
  border-top: 0;
}

.th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 16px;
  width: 5px;
  height: 5px;
  background: #e87525;
}

.th-mc-investment .th-mc-investment-projects .th-mc-proof-action {
  margin-top: 22px;
  text-align: right;
}

@media (max-width:991px) {
  .th-mc-investment .th-mc-investment-projects .th-mc-proof-grid {
    grid-template-columns: 1fr;
  }

  .th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card {
    min-height: 0;
  }
}

@media (max-width:767px) {
  .th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card {
    padding: 25px 21px 24px;
  }

  .th-mc-investment .th-mc-investment-projects .th-mc-investment-project-card h3 {
    font-size: 20px;
  }

  .th-mc-investment .th-mc-investment-projects .th-mc-proof-action {
    text-align: left;
  }
}

:root {
  --th-navy: #0b1f33;
  --th-navy-deep: #071725;
  --th-navy-soft: #173149;
  --th-orange: #e87525;
  --th-text: #173149;
  --th-muted: #627381;
  --th-border: #dfe5e9;
  --th-white: #fff;
  --th-bg: #f5f7f9;
  --th-bg-warm: #fffaf6;
  --th-container: 1200px;
  --th-gutter: 24px;
  --th-header-height: 76px;
  --th-shadow-nav: 0 8px 28px rgba(3,17,30,.12);
  --th-shadow-modal: 0 24px 70px rgba(0,0,0,.26);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--th-text);
  background: #fff;
  font-family: Arial,Helvetica,sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

img {
  max-width: 100%;
}

button,
input,
textarea,
select {
  font: inherit;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

a[href],
button:not(:disabled),
input[type="submit"]:not(:disabled),
input[type="button"]:not(:disabled),
input[type="reset"]:not(:disabled),
[role="button"]:not([aria-disabled="true"]),
summary {
  cursor: pointer;
}

button:disabled,
input[type="submit"]:disabled,
input[type="button"]:disabled,
input[type="reset"]:disabled,
[aria-disabled="true"] {
  cursor: not-allowed;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible {
  outline: 2px solid var(--th-orange) !important;
  outline-offset: 3px;
}

.th-container {
  width: min(calc(100% - (var(--th-gutter) * 2)),var(--th-container));
  margin-inline: auto;
}

.th-btn {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 11px 20px;
  border: 1px solid transparent;
  border-radius: 0;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .45px;
  text-transform: uppercase;
  text-decoration: none !important;
  cursor: pointer;
  transition: .2s ease;
}

.th-btn--primary {
  background: var(--th-orange);
  border-color: var(--th-orange);
  color: #fff !important;
}

.th-btn--primary:hover {
  background: #d96420;
  border-color: #d96420;
  color: #fff !important;
  transform: translateY(-1px);
}

.th-btn--ghost {
  background: transparent;
  border-color: #c9d2d9;
  color: var(--th-text) !important;
}

.th-btn--ghost:hover {
  border-color: var(--th-navy);
  color: var(--th-navy) !important;
}

.th-home-hero {
  margin-top: 0 !important;
}

.th-site-header {
  position: sticky;
  top: 0;
  z-index: 1200;
  height: var(--th-header-height);
  background: rgba(11,31,51,.99);
  box-shadow: var(--th-shadow-nav);
}

.th-site-header__inner {
  position: relative;
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: space-between;
}

.th-site-brand {
  display: flex;
  flex: 0 0 auto;
  height: 100%;
  align-items: center;
  text-decoration: none !important;
}

.th-site-brand__logo {
  display: block;
  width: auto;
  max-width: 210px;
  max-height: 43px;
}

.th-primary-nav {
  align-self: stretch;
}

.th-primary-nav__list {
  display: flex;
  height: 100%;
  align-items: stretch;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-primary-nav__item {
  position: relative;
  display: flex;
  align-items: stretch;
}

@media (min-width:992px) {
  .th-primary-nav__item--has-children {
    position: static;
  }
}

.th-primary-nav__topline {
  display: flex;
  align-items: stretch;
}

.th-primary-nav__link {
  position: relative;
  display: flex;
  min-height: var(--th-header-height);
  align-items: center;
  padding: 0 17px;
  color: rgba(255,255,255,.86) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .3px;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background-color .2s ease,color .2s ease;
}

.th-primary-nav__link::after {
  position: absolute;
  bottom: 10px;
  left: 50%;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--th-orange);
  content: "";
  opacity: 0;
  transform: translateX(-50%) scale(.65);
  transition: opacity .18s ease,transform .18s ease;
}

.th-primary-nav__item:hover>.th-primary-nav__topline .th-primary-nav__link,
.th-primary-nav__item:focus-within>.th-primary-nav__topline .th-primary-nav__link {
  background: rgba(255,255,255,.04);
  color: #fff !important;
}

.th-primary-nav__item.cur>.th-primary-nav__topline .th-primary-nav__link {
  background: rgba(255,255,255,.045);
  color: var(--th-orange) !important;
}

.th-primary-nav__item.cur>.th-primary-nav__topline .th-primary-nav__link::after {
  opacity: 1;
  transform: translateX(-50%) scale(1);
}

.th-primary-nav__item--has-children .th-primary-nav__link {
  padding-right: 8px;
}

.th-submenu-toggle {
  display: flex;
  width: 30px;
  min-height: var(--th-header-height);
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(255,255,255,.58);
  cursor: pointer;
}

.th-chevron {
  display: block;
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform .2s ease,color .2s ease;
}

.th-primary-nav__item:hover .th-chevron,
.th-primary-nav__item:focus-within .th-chevron,
.th-primary-nav__item.cur .th-chevron {
  color: var(--th-orange);
}

.th-mega-menu {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  width: 100%;
  padding: 16px 18px 18px;
  background: #fff;
  border-top: 2px solid var(--th-orange);
  box-shadow: 0 20px 46px rgba(3,17,30,.16);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  pointer-events: none;
  transition: opacity .18s ease,visibility .18s ease,transform .18s ease;
}

.th-primary-nav__item:hover>.th-mega-menu,
.th-primary-nav__item:focus-within>.th-mega-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.th-mega-menu__grid {
  display: grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
}

.th-mega-menu__item {
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;}

.th-mega-menu__media {
  display: block;
  height:auto;
  margin-bottom:9px;
  overflow:hidden;
  background:#eef2f4;

  width:100%;
  line-height:0;
  max-width:240px;
  aspect-ratio:2 / 1;}

.th-mega-menu__media img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  transition: none;

  max-width:240px;
  image-rendering:auto;
  transform:none;}

.th-mega-menu__item:hover .th-mega-menu__media img{
  transform:none;
}

.th-mega-menu__title {
  display: block;
  color: var(--th-navy) !important;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
  text-decoration: none !important;
  max-width:240px;
  text-align:left;}

.th-mega-menu__title:hover {
  color: var(--th-orange) !important;
}

.th-mega-menu__sublist {
  margin: 9px 0 0;
  padding: 0;
  list-style: none;
}

.th-mega-menu__sublist li+li {
  margin-top: 5px;
}

.th-mega-menu__sublist a {
  color: #697985 !important;
  font-size: 11px;
  line-height: 1.5;
  text-decoration: none !important;
}

.th-mega-menu__sublist a:hover {
  color: var(--th-orange) !important;
}

.th-mega-menu__item>.th-mega-menu__title:first-child {
  position: relative;
  display: flex;
  min-height: 58px;
  align-items: center;
  padding: 12px 42px 12px 17px;
  background: #f7f9fa;
  border: 1px solid #e1e7eb;
  border-left: 3px solid #d8e0e5;
  color: var(--th-navy) !important;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none !important;
  transition: background-color .18s ease,
    border-color .18s ease,
    color .18s ease,
    transform .18s ease,
    box-shadow .18s ease;
}

.th-mega-menu__item>.th-mega-menu__title:first-child::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 3px;
  height: 0;
  background: var(--th-orange);
  content: "";
  transform: translateY(-50%);
  transition: height .18s ease;
}

.th-mega-menu__item>.th-mega-menu__title:first-child::after {
  position: absolute;
  top: 50%;
  right: 16px;
  color: #9aa7b0;
  content: "→";
  font-size: 14px;
  font-weight: 400;
  transform: translateY(-50%);
  transition: color .18s ease,transform .18s ease;
}

.th-mega-menu__item>.th-mega-menu__title:first-child:hover,
.th-mega-menu__item>.th-mega-menu__title:first-child:focus {
  background: #fff;
  border-color: #d7dfe4;
  border-left-color: var(--th-orange);
  color: var(--th-orange) !important;
  box-shadow: 0 6px 16px rgba(11,31,51,.055);
  transform: translateY(-1px);
}

.th-mega-menu__item>.th-mega-menu__title:first-child:hover::before,
.th-mega-menu__item>.th-mega-menu__title:first-child:focus::before {
  height: 100%;
}

.th-mega-menu__item>.th-mega-menu__title:first-child:hover::after,
.th-mega-menu__item>.th-mega-menu__title:first-child:focus::after {
  color: var(--th-orange);
  transform: translate(3px,-50%);
}

.th-mega-menu__item:has(>.th-mega-menu__title:first-child) {
  min-height: 0;
}

.th-mega-menu__grid:has(.th-mega-menu__item>.th-mega-menu__title:first-child) {
  gap: 12px 14px;
}

.th-mega-menu__item>.th-mega-menu__title:first-child + .th-mega-menu__sublist {
  margin: 7px 0 0;
  padding: 0 14px 4px 17px;
}

.th-nav-toggle {
  display: none;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.18);
  background: transparent;
  cursor: pointer;
}

.th-nav-toggle span {
  display: block;
  width: 20px;
  height: 2px;
  background: #fff;
  transition: transform .2s ease,opacity .2s ease;
}

.th-site-header.nav-open .th-nav-toggle span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.th-site-header.nav-open .th-nav-toggle span:nth-child(2) {
  opacity: 0;
}

.th-site-header.nav-open .th-nav-toggle span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

.channel-banner.th-channel-banner {
  position: relative;
  height: 350px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.th-channel-banner__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,rgba(7,23,37,.12) 0%,rgba(7,23,37,.24) 45%,rgba(4,19,48,.91) 72%,rgba(3,16,43,.98) 100%);
}

.th-channel-banner__inner {
  position: relative;
  z-index: 2;
  height: 100%;
}

.banner-content.th-channel-banner__content {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: min(510px,46%);
  color: #fff;
  text-align: left;
  transform: translateY(-50%);
}

.banner-content.th-channel-banner__content h1 {
  margin: 0 0 16px;
  color: #f7c833;
  font-size: 32px;
  font-weight: 500;
  line-height: 1.22;
  text-transform: uppercase;
}

.banner-content.th-channel-banner__content p {
  width: auto;
  margin: 0 0 24px;
  color: rgba(255,255,255,.88);
  font-size: 16px;
  line-height: 1.7;
  text-shadow: none;
}

.th-breadcrumb {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: rgba(255,255,255,.92);
  font-size: 12px;
  line-height: 1.5;
}

.th-breadcrumb svg {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  margin-top: 1px;
  fill: currentColor;
}

.th-breadcrumb a {
  color: inherit !important;
  text-decoration: none !important;
}

.th-breadcrumb a:hover {
  color: #fff !important;
  text-decoration: underline !important;
}

.channel-banner-search.th-search-banner {
  display: flex;
  height: 120px;
  align-items: center;
  background: #f4f6f8;
  border-bottom: 1px solid var(--th-border);
}

.th-search-banner__inner {
  display: flex;
  align-items: center;
}

.th-breadcrumb--dark {
  color: #5c6c78;
}

[hidden] {
  display: none !important;
}

body.th-modal-open {
  overflow: hidden;
}

.th-modal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  transition: opacity .18s ease,visibility .18s ease;
}

.th-modal.is-open {
  opacity: 1;
  visibility: visible;
}

.th-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(3,14,25,.72);
  backdrop-filter: blur(2px);
}

.th-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(720px,100%);
  max-height: calc(100vh - 48px);
  overflow: auto;
  background: #fff;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: var(--th-shadow-modal);
  transform: translateY(14px);
  transition: transform .18s ease;
}

.th-modal.is-open .th-modal__dialog {
  transform: translateY(0);
}

.th-modal__header {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 25px 28px 22px;
  background: var(--th-navy);
  border-top: 3px solid var(--th-orange);
}

.th-modal__kicker {
  display: block;
  margin-bottom: 6px;
  color: var(--th-orange);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.1px;
}

.th-modal__header h2 {
  margin: 0 0 6px;
  color: #fff;
  font-size: 25px;
  font-weight: 500;
  line-height: 1.25;
}

.th-modal__header p {
  margin: 0;
  color: rgba(255,255,255,.64);
  font-size: 12px;
  line-height: 1.6;
}

.th-modal__close {
  display: flex;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid rgba(255,255,255,.2);
  background: transparent;
  color: #fff;
  font-size: 28px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
}

.th-modal__close:hover {
  border-color: var(--th-orange);
  color: var(--th-orange);
}

.th-modal__body {
  padding: 27px 28px 29px;
}

.th-rfq-form {
  margin: 0;
}

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

.th-form-field {
  margin-bottom: 17px;
}

.th-form-field label {
  display: block;
  margin: 0 0 7px;
  color: var(--th-navy);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
}

.th-form-field label span {
  color: var(--th-orange);
}

.th-form-field input,
.th-form-field textarea,
.th-form-field select {
  display: block;
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #cad4db;
  border-radius: 0;
  background: #fff;
  color: var(--th-text);
  font-size: 13px;
  box-shadow: none;
  outline: none;
  transition: border-color .18s ease,box-shadow .18s ease;
}

.th-form-field textarea {
  min-height: 112px;
  resize: vertical;
}

.th-form-field input:focus,
.th-form-field textarea:focus,
.th-form-field select:focus {
  border-color: var(--th-orange);
  box-shadow: 0 0 0 3px rgba(232,117,37,.10);
}

.th-rfq-verify__row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.th-rfq-verify__row .th-rfq-verify-input {
  flex: 1 1 170px;
  width: auto;
}

.th-verify-img {
  display: block;
  max-height: 40px;
  width: auto;
}

.th-rfq-verify__row a {
  color: var(--th-orange) !important;
  font-size: 12px;
  text-decoration: none !important;
}

.th-rfq-form__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 4px;
  padding-top: 19px;
  border-top: 1px solid var(--th-border);
}

.th-rfq-form__actions p {
  max-width: 310px;
  margin: 0;
  color: #7b8993;
  font-size: 10px;
  line-height: 1.55;
}

footer.th-footer {
  margin: 0;
  padding: 0;
  background: var(--th-navy-deep);
  color: #fff;
  font-size: 13px;
}

.th-footer__grid {
  display: grid;
  grid-template-columns: 1.45fr 1fr .8fr 1fr;
  gap: 48px;
  padding: 54px 0 46px;
}

.th-footer__column {
  min-width: 0;
}

.th-footer__column h2 {
  margin: 0 0 19px;
  padding: 0;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .7px;
}

.th-footer__links {
  display: grid;
  gap: 11px;
}

.th-footer__links a {
  display: block;
  margin: 0;
  padding: 0;
  color: rgba(255,255,255,.76) !important;
  text-decoration: none !important;
}

.th-footer__links a span {
  display: block;
  margin-bottom: 2px;
  color: rgba(255,255,255,.42);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .7px;
  text-transform: uppercase;
}

.th-footer__links a strong {
  display: block;
  color: rgba(255,255,255,.8);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.55;
}

.th-footer__links a:hover strong {
  color: #fff;
}

.th-footer__nav {
  display: grid;
  gap: 8px;
}

.th-footer__nav a {
  display: block;
  margin: 0;
  padding: 0;
  color: rgba(255,255,255,.66) !important;
  font-size: 12px;
  line-height: 1.55;
  text-decoration: none !important;
}

.th-footer__nav a:hover {
  color: #fff !important;
}

.th-footer-social {
  display: flex;
  gap: 9px;
  margin-top: 22px;
}

.th-footer-social a {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 7px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.025);
  color: #fff !important;
  text-decoration: none !important;
  transition: border-color .18s ease,background-color .18s ease,transform .18s ease;
}

.th-footer-social a:hover {
  border-color: var(--th-orange);
  background: rgba(232,117,37,.12);
  transform: translateY(-1px);
}

.th-footer-social img {
  display: block;
  width: 18px;
  height: 18px;
  object-fit: contain;
  filter: none;
  opacity: .92;
}

.th-footer__bottom {
  border-top: 1px solid rgba(255,255,255,.09);
  background: #05131f;
}

.th-footer__bottom-inner {
  display: flex;
  min-height: 66px;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.th-footer__copyright {
  display: flex;
  align-items: center;
  gap: 9px 14px;
  flex-wrap: wrap;
  color: rgba(255,255,255,.43);
  font-size: 10px;
  line-height: 1.5;
}

.th-footer__copyright a {
  color: rgba(255,255,255,.55) !important;
  text-decoration: none !important;
}

.th-footer__copyright a:hover {
  color: #fff !important;
}

.th-back-to-top {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 7px;
  padding: 8px 0 8px 16px;
  border: 0;
  background: transparent;
  color: rgba(255,255,255,.56);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .8px;
  cursor: pointer;
}

.th-back-to-top:hover {
  color: var(--th-orange);
}

.th-back-to-top svg {
  width: 17px;
  height: 17px;
  fill: currentColor;
}

.th-mobile-dock {
  display: none;
}

#cookieConsent.th-cookie {
  position: fixed;
  right: 24px;
  bottom: 24px;
  left: auto;
  z-index: 1500;
  width: min(460px,calc(100% - 48px));
  padding: 0;
  background: #fff;
  color: var(--th-text);
  box-shadow: 0 14px 44px rgba(3,17,30,.2);
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .2s ease,transform .2s ease;
}

#cookieConsent.th-cookie.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.th-cookie__inner {
  padding: 18px 19px;
  border-top: 3px solid var(--th-orange);
}

.th-cookie__inner p {
  margin: 0 0 14px;
  color: #60717e;
  font-size: 11px;
  line-height: 1.65;
  text-align: left;
}

.th-cookie__inner a {
  color: var(--th-orange) !important;
  font-weight: 700;
  text-decoration: none !important;
}

.th-cookie__actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.th-cookie__actions .th-btn {
  min-height: 36px;
  padding: 8px 14px;
  font-size: 10px;
}

@media (max-width:1199px) {
  :root {
    --th-gutter: 22px;
  }

  .th-primary-nav__link {
    padding-inline: 12px;
    font-size: 11px;
  }
}

@media (max-width:991px) {
  :root {
    --th-header-height: 64px;
    --th-gutter: 18px;
  }

  .th-site-brand__logo {
    max-width: 175px;
    max-height: 36px;
  }

  .th-nav-toggle {
    display: flex;
  }

  .th-primary-nav {
    position: fixed;
    top: var(--th-header-height);
    right: 0;
    bottom: 0;
    width: min(390px,88vw);
    overflow: auto;
    background: #0a1d2e;
    border-top: 1px solid rgba(255,255,255,.08);
    box-shadow: -20px 24px 50px rgba(0,0,0,.25);
    transform: translateX(105%);
    visibility: hidden;
    transition: transform .22s ease,visibility .22s ease;
  }

  .th-primary-nav.is-open {
    transform: translateX(0);
    visibility: visible;
  }

  .th-primary-nav__list {
    display: block;
    height: auto;
    padding: 7px 0 28px;
  }

  .th-primary-nav__item {
    display: block;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  .th-primary-nav__topline {
    display: flex;
    min-height: 54px;
  }

  .th-primary-nav__link {
    flex: 1 1 auto;
    min-height: 54px;
    padding: 0 20px;
    background: transparent !important;
    font-size: 12px;
  }

  .th-primary-nav__link::after {
    display: none;
  }

  .th-primary-nav__item--has-children .th-primary-nav__link {
    padding-right: 8px;
  }

  .th-submenu-toggle {
    flex: 0 0 54px;
    width: 54px;
    min-height: 54px;
    border-left: 1px solid rgba(255,255,255,.08);
  }

  .th-primary-nav__item.is-open .th-chevron {
    color: var(--th-orange);
    transform: translateY(2px) rotate(225deg);
  }

  .th-mega-menu {
    position: static;
    left: auto;
    right: auto;
    width: auto;
    max-height: 0;
    overflow: hidden;
    padding: 0 19px;
    background: #081827;
    border: 0;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    pointer-events: auto;
    transition: max-height .25s ease,padding .25s ease;
  }

  .th-primary-nav__item.is-open>.th-mega-menu {
    max-height: 1800px;
    padding-top: 17px;
    padding-bottom: 19px;
  }

  .th-mega-menu__grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .th-mega-menu__item {
    padding-bottom: 13px;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  .th-mega-menu__item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }

  .th-mega-menu__media {
    display: none;
  }

  .th-mega-menu__title {
    color: #fff !important;
    font-size: 12px;
  }

  .th-mega-menu__item>.th-mega-menu__title:first-child {
    min-height: 0;
    padding: 7px 0;
    background: transparent;
    border: 0;
    color: #fff !important;
    box-shadow: none;
    transform: none;
  }

  .th-mega-menu__item>.th-mega-menu__title:first-child::before,
  .th-mega-menu__item>.th-mega-menu__title:first-child::after {
    display: none;
  }

  .th-mega-menu__sublist {
    margin-top: 7px;
  }

  .th-mega-menu__sublist a {
    color: rgba(255,255,255,.55) !important;
  }

  .channel-banner.th-channel-banner {
    height: 310px;
  }

  .banner-content.th-channel-banner__content {
    width: min(490px,58%);
  }

  .th-footer__grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 38px 50px;
  }
}

@media (max-width:767px) {
  :root {
    --th-gutter: 16px;
  }

  body {
    padding-bottom: 58px;
  }

  .channel-banner.th-channel-banner {
    height: 290px;
  }

  .th-channel-banner__overlay {
    background: linear-gradient(180deg,rgba(7,23,37,.28),rgba(5,18,39,.9));
  }

  .banner-content.th-channel-banner__content {
    top: auto;
    right: 0;
    bottom: 28px;
    left: 0;
    width: auto;
    transform: none;
  }

  .banner-content.th-channel-banner__content h1 {
    margin-bottom: 10px;
    font-size: 25px;
  }

  .banner-content.th-channel-banner__content p {
    margin-bottom: 16px;
    font-size: 13px;
    line-height: 1.6;
  }

  .channel-banner-search.th-search-banner {
    height: 86px;
  }

  .th-modal {
    align-items: flex-end;
    padding: 0;
  }

  .th-modal__dialog {
    width: 100%;
    max-height: 92vh;
    border-right: 0;
    border-bottom: 0;
    border-left: 0;
  }

  .th-modal__header {
    padding: 21px 19px 18px;
  }

  .th-modal__header h2 {
    font-size: 22px;
  }

  .th-modal__body {
    padding: 21px 19px 23px;
  }

  .th-form-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .th-rfq-form__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .th-rfq-form__actions .th-btn {
    width: 100%;
  }

  .th-rfq-form__actions p {
    max-width: none;
  }

  .th-footer__grid {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 42px 0 36px;
  }

  .th-footer__bottom-inner {
    min-height: 0;
    align-items: flex-start;
    flex-direction: column;
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .th-back-to-top {
    display: none;
  }

  .th-mobile-dock {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1300;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    height: 58px;
    padding: 0;
    background: #fff;
    border-top: 1px solid #dfe5e9;
    box-shadow: 0 -8px 24px rgba(3,17,30,.08);
  }

  .th-mobile-dock a,
  .th-mobile-dock button {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 2px;
    margin: 0;
    padding: 5px 2px;
    border: 0;
    border-right: 1px solid #edf0f2;
    background: #fff;
    color: #314a5d !important;
    font-size: 9px;
    text-decoration: none !important;
    cursor: pointer;
  }

  .th-mobile-dock>*:last-child {
    border-right: 0;
  }

  .th-mobile-dock svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
  }

  #cookieConsent.th-cookie {
    right: 12px;
    bottom: 70px;
    width: calc(100% - 24px);
  }
}

@media (prefers-reduced-motion:reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

.th-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.th-row::before,
.th-row::after {
  display: none !important;
}

[class*="th-col-xs-"],
[class*="th-col-sm-"],
[class*="th-col-md-"],
[class*="th-col-lg-"] {
  position: relative;
  min-height: 1px;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.th-col-xs-12 {
  width: 100%;
}

@media (min-width:768px) {
  .th-col-sm-12 {
    width: 100%;
  }

  .th-col-sm-6 {
    width: 50%;
  }

  .th-col-sm-4 {
    width: 33.33333333%;
  }
}

@media (min-width:992px) {
  .th-col-md-8 {
    width: 66.66666667%;
  }

  .th-col-md-7 {
    width: 58.33333333%;
  }

  .th-col-md-6 {
    width: 50%;
  }

  .th-col-md-5 {
    width: 41.66666667%;
  }

  .th-col-md-4 {
    width: 33.33333333%;
  }

  .th-col-md-3 {
    width: 25%;
  }
}

.th-row > [style*="float:right"],
.th-row > [style*="float: right"] {
  order: 2;
  margin-left: auto;
}

textarea.th-form-control {
  height: auto;
  min-height: 120px;
  resize: vertical;
}

.th-table-responsive {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.th-collapse {
  display: none;
}

.th-collapse.is-open {
  display: block;
}

.th-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
  line-height: 1;
}

.th-icon--ok::before {
  content: "✓";
}

.th-icon--play::before {
  content: "▶";
}

.th-icon--envelope::before {
  content: "✉";
}

.th-icon--download-alt::before {
  content: "⇩";
}

.th-icon--menu-right::before {
  content: "›";
}

.th-related-products-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 20px;
}

.th-related-product-card {
  min-width: 0;
  background: #fff;
  border: 1px solid var(--th-border);
}

.th-related-product-card__image {
  display: flex;
  height: 190px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #fff;
}

.th-related-product-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.th-related-product-card h4 {
  margin: 0;
  padding: 13px 14px;
  font-size: 13px;
  line-height: 1.45;
}

.th-related-product-card h4 a {
  color: var(--th-text-strong) !important;
  text-decoration: none !important;
}

.th-related-product-card h4 a:hover {
  color: var(--th-orange) !important;
}

.menu_body,
.menu_body2 {
  display: none;
}

.menu_body.is-open,
.menu_body2.is-open {
  display: block;
}

@media (max-width:991px) {
  .th-related-products-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width:767px) {
  .th-row {
    margin-right: -8px;
    margin-left: -8px;
  }

  [class*="th-col-xs-"],
  [class*="th-col-sm-"],
  [class*="th-col-md-"],
  [class*="th-col-lg-"] {
    padding-right: 8px;
    padding-left: 8px;
  }

  .th-related-products-grid {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .th-related-product-card__image {
    height: 150px;
  }
}

.th-page-kicker {
  display: block;
  margin: 0 0 8px;
  color: var(--th-orange);
  font-size: 10px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 1.1px;
  text-transform: uppercase;
}

.th-page-heading {
  max-width: 760px;
  margin: 0 auto 34px;
  text-align: center;
}

.th-page-heading--left {
  margin-left: 0;
  text-align: left;
}

.th-page-heading h1,
.th-page-heading h2 {
  margin: 0 0 10px;
  color: var(--th-navy);
  font-size: 32px;
  line-height: 1.3;
  font-weight: 500;
}

.th-page-heading p {
  margin: 0;
  color: var(--th-muted);
  font-size: 14px;
  line-height: 1.8;
}

.th-section-heading {
  margin-bottom: 24px;
}

.th-section-heading h2 {
  margin: 0;
  color: var(--th-navy);
  font-size: 27px;
  font-weight: 500;
}

.th-catalog-page,
.th-search-page {
  padding: 58px 0 72px;
  background: #fff;
}

.th-catalog-layout {
  display: grid;
  grid-template-columns: 250px minmax(0,1fr);
  gap: 34px;
  align-items: start;
}

.th-catalog-sidebar {
  position: sticky;
  top: 95px;
}

.th-catalog-nav {
  border: 1px solid var(--th-border);
  background: #fff;
}

.th-catalog-nav__head {
  padding: 20px 20px 17px;
  background: var(--th-navy);
  border-top: 3px solid var(--th-orange);
}

.th-catalog-nav__head span {
  display: block;
  margin-bottom: 5px;
  color: var(--th-orange);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1px;
}

.th-catalog-nav__head h2 {
  margin: 0;
  color: #fff;
  font-size: 17px;
  font-weight: 600;
}

.th-catalog-nav__list,
.th-catalog-nav__sublist {
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-catalog-nav__item+ .th-catalog-nav__item {
  border-top: 1px solid #e6ebee;
}

.th-catalog-nav__row {
  display: flex;
  align-items: center;
}

.th-catalog-nav__row>a {
  flex: 1 1 auto;
  padding: 12px 15px;
  color: #30495c !important;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.45;
  text-decoration: none !important;
}

.th-catalog-nav__row>a:hover,
.th-catalog-nav__item.is-current>.th-catalog-nav__row>a,
.th-catalog-nav a.is-current-link {
  color: var(--th-orange) !important;
}

.th-catalog-tree-toggle {
  flex: 0 0 38px;
  align-self: stretch;
  border: 0;
  border-left: 1px solid #e6ebee;
  background: #fff;
  color: #6b7d89;
  cursor: pointer;
}

.th-catalog-nav__sublist {
  display: none;
  padding: 4px 0 7px;
  background: #f7f9fa;
  border-top: 1px solid #e6ebee;
}

.th-catalog-nav__sublist.is-open {
  display: block;
}

.th-catalog-nav__row--sub>a {
  padding: 9px 15px 9px 25px;
  font-size: 11px;
  font-weight: 500;
}

.th-catalog-nav__sublist--level3 a {
  display: block;
  padding: 7px 15px 7px 36px;
  color: #6a7b87 !important;
  font-size: 10px;
  text-decoration: none !important;
}

.th-catalog-main {
  min-width: 0;
}

.th-catalog-intro {
  padding-bottom: 25px;
  border-bottom: 1px solid var(--th-border);
}

.th-catalog-intro h1,
.th-search-head h1 {
  margin: 0 0 12px;
  color: var(--th-navy);
  font-size: 32px;
  font-weight: 500;
  line-height: 1.3;
}

.th-catalog-description {
  position: relative;
  max-width: 840px;
  color: #5e7180;
  font-size: 13px;
  line-height: 1.8;
}

.th-catalog-description.is-collapsed-copy {
  max-height: 88px;
  overflow: hidden;
}

.th-catalog-description.is-collapsed-copy:not(.is-expanded)::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 42px;
  background: linear-gradient(rgba(255,255,255,0),#fff);
  content: "";
}

.th-catalog-description.is-expanded {
  max-height: none;
}

.th-text-action {
  margin-top: 8px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--th-orange);
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

.th-catalog-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 24px 0 20px;
  padding: 0 0 12px;
  border-bottom: 1px solid var(--th-border);
}

.th-catalog-toolbar strong {
  color: var(--th-navy);
  font-size: 14px;
}

.th-catalog-toolbar span {
  color: #7b8993;
  font-size: 11px;
}

.th-product-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
}

.th-product-card {
  min-width: 0;
  background: #fff;
  border: 1px solid var(--th-border);
}

.th-product-card__image {
  display: flex;
  height: 235px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #fff;
}

.th-product-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform .25s ease;
}

.th-product-card:hover .th-product-card__image img {
  transform: scale(1.025);
}

.th-product-card__body {
  padding: 15px 16px 16px;
  border-top: 1px solid #eef1f3;
}

.th-product-card__body h2 {
  margin: 0 0 12px;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 600;
}

.th-product-card__body h2 a {
  color: var(--th-navy) !important;
  text-decoration: none !important;
}

.th-product-card__body h2 a:hover {
  color: var(--th-orange) !important;
}

.th-product-card__category {
  display: block;
  margin-bottom: 5px;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
}

.th-product-card__category a {
  color: var(--th-orange) !important;
  text-decoration: none !important;
}

.th-product-card__link {
  color: #647887 !important;
  font-size: 10px;
  font-weight: 700;
  text-decoration: none !important;
}

.th-product-card__link:hover {
  color: var(--th-orange) !important;
}

.th-search-head {
  margin-bottom: 28px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--th-border);
}

.th-search-head p {
  margin: 0;
  color: var(--th-muted);
  font-size: 13px;
}

.th-page-pagination {
  margin-top: 34px;
}

.th-page-pagination>ul,
.th-page-pagination ul {
  display: flex;
  justify-content: center;
  gap: 5px;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-page-pagination li {
  display: block;
}

.th-page-pagination a,
.th-page-pagination span {
  display: flex;
  min-width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  padding: 0 11px;
  border: 1px solid var(--th-border);
  background: #fff;
  color: var(--th-text) !important;
  text-decoration: none !important;
}

.th-page-pagination a:hover,
.th-page-pagination .active a,
.th-page-pagination .active span {
  border-color: var(--th-orange);
  background: var(--th-orange);
  color: #fff !important;
}

.th-news-page {
  padding: 58px 0 76px;
}

.th-news-list {
  display: grid;
  gap: 20px;
}

.th-news-card {
  display: grid;
  grid-template-columns: 260px minmax(0,1fr);
  min-height: 190px;
  border: 1px solid var(--th-border);
  background: #fff;
}

.th-news-card__image {
  display: block;
  overflow: hidden;
  background: #eef2f4;
}

.th-news-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .25s ease;
}

.th-news-card:hover .th-news-card__image img {
  transform: scale(1.025);
}

.th-news-card__content {
  padding: 23px 26px;
}

.th-news-card__meta {
  display: flex;
  gap: 14px;
  margin-bottom: 8px;
  color: #84919a;
  font-size: 10px;
  text-transform: uppercase;
}

.th-news-card__content h2 {
  margin: 0 0 9px;
  font-size: 21px;
  line-height: 1.4;
  font-weight: 500;
}

.th-news-card__content h2 a {
  color: var(--th-navy) !important;
  text-decoration: none !important;
}

.th-news-card__content p {
  margin: 0 0 12px;
  color: var(--th-muted);
  font-size: 12px;
  line-height: 1.7;
}

.th-news-card__link {
  color: var(--th-orange) !important;
  font-size: 10px;
  font-weight: 700;
  text-decoration: none !important;
}

.th-article-page {
  background: #fff;
}

.th-article-detail {
  padding-top: 58px;
  padding-bottom: 58px;
}

.th-article-hero {
  display: grid;
  grid-template-columns: minmax(0,1fr) 420px;
  gap: 48px;
  align-items: center;
  margin-bottom: 42px;
  padding-bottom: 36px;
  border-bottom: 1px solid var(--th-border);
}

.th-article-hero__copy h1 {
  margin: 0 0 16px;
  color: var(--th-navy);
  font-size: 38px;
  font-weight: 500;
  line-height: 1.25;
}

.th-article-meta {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  color: #7c8b95;
  font-size: 11px;
}

.th-article-meta a {
  color: var(--th-orange) !important;
  text-decoration: none !important;
}

.th-article-hero__image {
  margin: 0;
  height: 280px;
  overflow: hidden;
  background: #eef2f4;
}

.th-article-hero__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.th-article-body,
.th-richtext {
  color: #425969;
  font-size: 14px;
  line-height: 1.85;
}

.th-article-body {
  max-width: 860px;
  margin: 0 auto;
}

.th-article-body img,
.th-richtext img {
  height: auto;
  max-width: 100%;
}

.th-article-tags {
  display: flex;
  gap: 16px;
  max-width: 860px;
  margin: 34px auto 0;
  padding-top: 20px;
  border-top: 1px solid var(--th-border);
}

.th-article-tags strong {
  color: var(--th-navy);
  font-size: 11px;
  text-transform: uppercase;
}

.th-article-tags>div {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}

.th-article-tags a,
.th-inline-tags a {
  display: inline-flex;
  padding: 6px 9px;
  background: #f2f5f7;
  color: #5c7080 !important;
  font-size: 10px;
  text-decoration: none !important;
}

.th-article-rfq,
.th-inline-rfq {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  max-width: 100%;
  margin: 38px 0 0;
  padding: 26px 28px;
  background: #f5f7f9;
  border-left: 4px solid var(--th-orange);
}

.th-article-rfq h2,
.th-inline-rfq h2 {
  margin: 0 0 7px;
  color: var(--th-navy);
  font-size: 22px;
  font-weight: 500;
}

.th-article-rfq p,
.th-inline-rfq p {
  margin: 0;
  color: var(--th-muted);
  font-size: 12px;
  line-height: 1.65;
}

.th-inline-rfq--dark {
  margin-top: 40px;
  background: var(--th-navy);
  color: #fff;
}

.th-inline-rfq--dark h2 {
  color: #fff;
}

.th-inline-rfq--dark p {
  color: rgba(255,255,255,.65);
}

.th-related-section {
  padding: 58px 0;
}

.th-related-section--soft {
  background: #f5f7f9;
}

.th-post-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
}

.th-post-card {
  border: 1px solid var(--th-border);
  background: #fff;
}

.th-post-card__image {
  display: block;
  height: 190px;
  overflow: hidden;
}

.th-post-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.th-post-card__body {
  padding: 15px 16px;
}

.th-post-card__body h3 {
  margin: 0 0 9px;
  font-size: 14px;
  line-height: 1.5;
}

.th-post-card__body h3 a {
  color: var(--th-navy) !important;
  text-decoration: none !important;
}

.th-post-card__body>a {
  color: var(--th-orange) !important;
  font-size: 10px;
  text-decoration: none !important;
}

.th-resource-page {
  padding: 58px 0 76px;
}

.th-resource-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
}

.th-resource-card {
  border: 1px solid var(--th-border);
  background: #fff;
}

.th-resource-card__image {
  display: block;
  height: 210px;
  overflow: hidden;
  background: #eef2f4;
}

.th-resource-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.th-resource-card__body {
  padding: 16px;
}

.th-resource-card__body>span {
  color: var(--th-orange);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1px;
}

.th-resource-card__body h2 {
  margin: 6px 0 11px;
  font-size: 16px;
  line-height: 1.45;
}

.th-resource-card__body h2 a {
  color: var(--th-navy) !important;
  text-decoration: none !important;
}

.th-resource-card__link {
  color: #617583 !important;
  font-size: 10px;
  font-weight: 700;
  text-decoration: none !important;
}

.th-resource-detail-page {
  padding: 58px 0 0;
}

.th-resource-detail {
  max-width: 920px;
}

.th-resource-detail__head {
  margin-bottom: 30px;
  padding-bottom: 25px;
  border-bottom: 1px solid var(--th-border);
}

.th-resource-detail__head h1 {
  margin: 0 0 13px;
  color: var(--th-navy);
  font-size: 34px;
  font-weight: 500;
  line-height: 1.3;
}

.th-resource-meta {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  margin: 0 0 15px;
  color: #7a8993;
  font-size: 10px;
}

.th-inline-tags {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.th-resource-detail__content {
  margin-bottom: 28px;
}

.th-resource-mini-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 16px;
}

.th-resource-mini-grid article {
  background: #fff;
  border: 1px solid var(--th-border);
}

.th-resource-mini-grid img {
  display: block;
  width: 100%;
  height: 130px;
  object-fit: cover;
}

.th-resource-mini-grid h3 {
  margin: 0;
  padding: 11px;
  font-size: 11px;
  line-height: 1.45;
}

.th-resource-mini-grid h3 a {
  color: var(--th-navy) !important;
  text-decoration: none !important;
}

.th-media-page {
  padding: 58px 0 76px;
}

.th-media-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 18px;
}

.th-media-card {
  background: #fff;
  border: 1px solid var(--th-border);
}

.th-media-card__image {
  display: block;
  height: 205px;
  overflow: hidden;
  background: #eef2f4;
}

.th-media-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .25s ease;
}

.th-media-card:hover .th-media-card__image img {
  transform: scale(1.025);
}

.th-media-card h2,
.th-media-card h3 {
  margin: 0;
  padding: 13px 14px;
  font-size: 13px;
  line-height: 1.45;
}

.th-media-card h2 a,
.th-media-card h3 a {
  color: var(--th-navy) !important;
  text-decoration: none !important;
}

.th-media-detail-page {
  padding: 58px 0 0;
}

.th-media-detail {
  max-width: 940px;
}

.th-media-detail__head {
  text-align: center;
  margin-bottom: 28px;
}

.th-media-detail__head h1 {
  margin: 0 0 12px;
  color: var(--th-navy);
  font-size: 34px;
  font-weight: 500;
}

.th-media-detail__head .th-resource-meta,
.th-media-detail__head .th-inline-tags {
  justify-content: center;
}

.th-native-media-slider {
  position: relative;
  margin-bottom: 32px;
}

.th-native-media-slider__stage,
.th-pd-slider {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-native-media-slide,
.th-pd-slider>li {
  display: none;
}

.th-native-media-slide.is-active,
.th-pd-slider>li.is-active {
  display: block;
}

.th-native-media-slide {
  margin: 0;
  text-align: center;
}

.th-native-media-slide img {
  display: block;
  max-width: 100%;
  max-height: 680px;
  margin: 0 auto;
  object-fit: contain;
}

.th-native-media-slide figcaption {
  margin-top: 9px;
  color: #71818c;
  font-size: 11px;
}

.th-native-media-thumbs,
.th-pd-thumbs {
  display: flex;
  gap: 9px;
  margin-top: 12px;
  overflow-x: auto;
  padding-bottom: 4px;
}

.th-native-media-thumbs button {
  flex: 0 0 82px;
  width: 82px;
  height: 68px;
  padding: 3px;
  border: 1px solid var(--th-border);
  background: #fff;
  cursor: pointer;
}

.th-native-media-thumbs button.is-active,
.th-pd-thumbs>a.is-active {
  border-color: var(--th-orange) !important;
}

.th-native-media-thumbs img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.th-native-slider-controls {
  position: absolute;
  top: 50%;
  right: 12px;
  left: 12px;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
  transform: translateY(-50%);
  z-index: 4;
}

.th-native-slider-controls button {
  display: flex;
  width: 38px;
  height: 46px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.4);
  background: rgba(7,23,37,.78);
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  pointer-events: auto;
}

.th-media-detail__content {
  margin: 25px 0;
}

.th-prev-next {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
  margin: 35px 0 0;
}

.th-prev-next>div {
  padding: 17px 18px;
  background: #f5f7f9;
}

.th-prev-next>div:last-child {
  text-align: right;
}

.th-prev-next span {
  display: block;
  margin-bottom: 4px;
  color: #87939c;
  font-size: 9px;
  text-transform: uppercase;
}

.th-prev-next a {
  color: var(--th-navy) !important;
  font-size: 12px;
  text-decoration: none !important;
}

.th-contact-page {
  padding: 64px 0 76px;
}

.th-contact-layout {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 56px;
  align-items: start;
}

.th-contact-info h1 {
  margin: 0 0 14px;
  color: var(--th-navy);
  font-size: 34px;
  font-weight: 500;
  line-height: 1.3;
}

.th-contact-info>p {
  margin: 0;
  color: var(--th-muted);
  font-size: 13px;
  line-height: 1.8;
}

.th-contact-methods {
  display: grid;
  gap: 12px;
  margin-top: 28px;
}

.th-contact-method {
  display: block;
  padding: 15px 17px;
  background: #f5f7f9;
  border-left: 3px solid var(--th-orange);
  text-decoration: none !important;
}

.th-contact-method span {
  display: block;
  margin-bottom: 4px;
  color: #86939c;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .8px;
}

.th-contact-method strong {
  display: block;
  color: var(--th-navy);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
}

a.th-contact-method:hover strong {
  color: var(--th-orange);
}

.th-contact-form-panel {
  padding: 28px 30px;
  background: #fff;
  border: 1px solid var(--th-border);
  border-top: 3px solid var(--th-orange);
}

.th-contact-form-panel h2 {
  margin: 0 0 21px;
  color: var(--th-navy);
  font-size: 25px;
  font-weight: 500;
}

.th-contact-form .th-form-field:last-of-type {
  margin-bottom: 20px;
}

.th-comment-page,
.th-comment-detail-page {
  padding: 58px 0 76px;
}

.th-comment-list {
  display: grid;
  gap: 14px;
}

.th-comment-card {
  display: grid;
  grid-template-columns: 150px minmax(0,1fr);
  min-height: 115px;
  border: 1px solid var(--th-border);
  background: #fff;
}

.th-comment-card__image {
  display: block;
  overflow: hidden;
  background: #eef2f4;
}

.th-comment-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.th-comment-card__body {
  padding: 18px 20px;
}

.th-comment-card__body>span {
  color: var(--th-orange);
  font-size: 9px;
  font-weight: 700;
}

.th-comment-card__body h2 {
  margin: 5px 0 9px;
  font-size: 17px;
  font-weight: 500;
}

.th-comment-card__body h2 a {
  color: var(--th-navy) !important;
  text-decoration: none !important;
}

.th-comment-card__body time {
  color: #88949d;
  font-size: 10px;
}

.th-comment-detail {
  max-width: 820px;
}

.th-comment-detail h1 {
  margin: 0 0 13px;
  color: var(--th-navy);
  font-size: 32px;
  font-weight: 500;
}

.th-comment-detail__meta {
  display: flex;
  gap: 10px;
  margin-bottom: 28px;
  color: #788792;
  font-size: 11px;
}

.th-topic-hero {
  padding: 62px 0;
  background: var(--th-navy);
  color: #fff;
}

.th-topic-hero h1 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 38px;
  font-weight: 500;
}

.th-topic-hero p {
  max-width: 720px;
  margin: 0;
  color: rgba(255,255,255,.68);
  font-size: 14px;
  line-height: 1.75;
}

.th-topic-main {
  padding: 58px 0 76px;
}

.th-topic-cloud {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
}

.th-topic-cloud a,
.th-related-topics a {
  display: inline-flex;
  padding: 9px 12px;
  background: #f4f6f8;
  border: 1px solid #e0e6ea;
  color: #4e6575 !important;
  font-size: 11px;
  text-decoration: none !important;
}

.th-topic-cloud a:hover,
.th-related-topics a:hover {
  border-color: var(--th-orange);
  color: var(--th-orange) !important;
}

.th-topic-links {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 18px;
  margin-top: 38px;
}

.th-topic-links article {
  padding: 24px 25px;
  background: #f5f7f9;
  border-top: 3px solid var(--th-orange);
}

.th-topic-links article>span {
  color: var(--th-orange);
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}

.th-topic-links h3 {
  margin: 6px 0 8px;
  color: var(--th-navy);
  font-size: 20px;
  font-weight: 500;
}

.th-topic-links p {
  margin: 0 0 13px;
  color: var(--th-muted);
  font-size: 12px;
  line-height: 1.65;
}

.th-topic-links a {
  color: var(--th-navy) !important;
  font-size: 10px;
  font-weight: 700;
  text-decoration: none !important;
}

.th-topic-result-list {
  display: grid;
  gap: 16px;
}

.th-topic-result {
  display: grid;
  grid-template-columns: 220px minmax(0,1fr);
  border: 1px solid var(--th-border);
  background: #fff;
}

.th-topic-result__image {
  display: block;
  overflow: hidden;
  background: #eef2f4;
}

.th-topic-result__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.th-topic-result>div {
  padding: 19px 22px;
}

.th-topic-result__category {
  color: var(--th-orange) !important;
  font-size: 9px;
  font-weight: 800;
  text-decoration: none !important;
  text-transform: uppercase;
}

.th-topic-result h2 {
  margin: 5px 0 7px;
  font-size: 18px;
  font-weight: 500;
}

.th-topic-result h2 a {
  color: var(--th-navy) !important;
  text-decoration: none !important;
}

.th-topic-result p {
  margin: 0 0 10px;
  color: var(--th-muted);
  font-size: 12px;
  line-height: 1.65;
}

.th-topic-result__meta {
  display: flex;
  gap: 15px;
  color: #8a969e;
  font-size: 9px;
}

.th-related-topics {
  margin-top: 34px;
  padding-top: 23px;
  border-top: 1px solid var(--th-border);
}

.th-related-topics h3 {
  margin: 0 0 12px;
  color: var(--th-navy);
  font-size: 16px;
}

.th-related-topics>div {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}

body.th-gallery-open {
  overflow: hidden;
}

.th-gallery-viewer {
  position: fixed;
  inset: 0;
  z-index: 2600;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  transition: opacity .16s ease,visibility .16s ease;
}

.th-gallery-viewer.is-open {
  opacity: 1;
  visibility: visible;
}

.th-gallery-viewer__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(1,10,18,.92);
}

.th-gallery-viewer__dialog {
  position: relative;
  z-index: 1;
  display: flex;
  width: min(1180px,100%);
  height: min(780px,calc(100vh - 48px));
  align-items: center;
  justify-content: center;
}

.th-gallery-viewer__dialog figure {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin: 0;
}

.th-gallery-viewer__dialog img {
  display: block;
  max-width: calc(100% - 110px);
  max-height: calc(100% - 58px);
  object-fit: contain;
}

.th-gallery-viewer__dialog figcaption {
  max-width: 760px;
  margin-top: 12px;
  color: rgba(255,255,255,.72);
  font-size: 11px;
  line-height: 1.5;
  text-align: center;
}

.th-gallery-viewer__close,
.th-gallery-viewer__nav {
  position: absolute;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(7,23,37,.65);
  color: #fff;
  cursor: pointer;
}

.th-gallery-viewer__close {
  top: 0;
  right: 0;
  width: 42px;
  height: 42px;
  font-size: 28px;
}

.th-gallery-viewer__nav {
  top: 50%;
  width: 44px;
  height: 58px;
  font-size: 32px;
  transform: translateY(-50%);
}

.th-gallery-viewer__nav--prev {
  left: 0;
}

.th-gallery-viewer__nav--next {
  right: 0;
}

.th-pd-slider {
  position: relative !important;
}

.th-pd-slider>li {
  position: relative !important;
  width: 100% !important;
  float: none !important;
}

.th-pd-slider>li:not(.is-active) {
  display: none !important;
}

.th-pd-thumbs>a {
  border: 1px solid transparent;
}

.th-pd-media>.th-native-slider-controls {
  top: 44%;
}

@media (max-width:991px) {
  .th-catalog-layout {
    grid-template-columns: 1fr;
  }

  .th-catalog-sidebar {
    position: static;
  }

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

  .th-news-card {
    grid-template-columns: 220px minmax(0,1fr);
  }

  .th-article-hero {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .th-article-hero__image {
    height: 340px;
  }

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

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

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

  .th-contact-layout {
    grid-template-columns: 1fr;
    gap: 35px;
  }
}

@media (max-width:767px) {
  .th-catalog-page,
  .th-search-page,
  .th-news-page,
  .th-resource-page,
  .th-media-page,
  .th-contact-page {
    padding: 40px 0 52px;
  }

  .th-page-heading h1,
  .th-page-heading h2,
  .th-catalog-intro h1,
  .th-search-head h1 {
    font-size: 26px;
  }

  .th-product-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 11px;
  }

  .th-product-card__image {
    height: 165px;
  }

  .th-product-card__body {
    padding: 11px;
  }

  .th-product-card__body h2 {
    font-size: 12px;
  }

  .th-news-card {
    grid-template-columns: 1fr;
  }

  .th-news-card__image {
    height: 195px;
  }

  .th-news-card__content {
    padding: 18px;
  }

  .th-article-detail {
    padding-top: 40px;
    padding-bottom: 45px;
  }

  .th-article-hero__copy h1 {
    font-size: 29px;
  }

  .th-article-hero__image {
    height: 220px;
  }

  .th-article-rfq,
  .th-inline-rfq {
    align-items: flex-start;
    flex-direction: column;
    padding: 21px;
  }

  .th-post-grid {
    grid-template-columns: 1fr;
  }

  .th-resource-grid {
    grid-template-columns: 1fr;
  }

  .th-resource-detail__head h1 {
    font-size: 27px;
  }

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

  .th-media-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 11px;
  }

  .th-media-card__image {
    height: 155px;
  }

  .th-media-detail__head h1 {
    font-size: 27px;
  }

  .th-prev-next {
    grid-template-columns: 1fr;
  }

  .th-prev-next>div:last-child {
    text-align: left;
  }

  .th-contact-form-panel {
    padding: 22px 19px;
  }

  .th-comment-card {
    grid-template-columns: 100px minmax(0,1fr);
  }

  .th-topic-hero {
    padding: 45px 0;
  }

  .th-topic-hero h1 {
    font-size: 29px;
  }

  .th-topic-links {
    grid-template-columns: 1fr;
  }

  .th-topic-result {
    grid-template-columns: 110px minmax(0,1fr);
  }

  .th-topic-result>div {
    padding: 14px;
  }

  .th-gallery-viewer {
    padding: 10px;
  }

  .th-gallery-viewer__dialog {
    height: calc(100vh - 20px);
  }

  .th-gallery-viewer__dialog img {
    max-width: 100%;
    max-height: calc(100% - 80px);
  }

  .th-gallery-viewer__nav {
    top: auto;
    bottom: 5px;
    transform: none;
  }

  .th-gallery-viewer__nav--prev {
    left: calc(50% - 52px);
  }

  .th-gallery-viewer__nav--next {
    right: calc(50% - 52px);
  }
}

.th-case-library-v36 {
  --case36-navy: #0b1f33;
  --case36-deep: #071725;
  --case36-orange: #e87525;
  --case36-text: #173149;
  --case36-muted: #627381;
  --case36-border: #dfe5e9;
  --case36-soft: #f5f7f9;
  background: #fff;
}

.th-case-library-v36 a {
  text-decoration: none !important;
}

.th-case-v36-kicker,
.th-case-v36-aside-label,
.th-case-v36-card__eyebrow,
.th-case-v36-guide__points article>span {
  display: block;
  color: var(--case36-orange);
  font-size: 9px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 1.15px;
  text-transform: uppercase;
}

.th-case-v36-intro {
  padding: 64px 0 58px;
  background: #fff;
}

.th-case-v36-intro__grid {
  display: grid;
  grid-template-columns: minmax(0,1.35fr) minmax(330px,.65fr);
  gap: 72px;
  align-items: start;
}

.th-case-v36-intro__copy {
  max-width: 760px;
}

.th-case-v36-intro__copy h2 {
  max-width: 720px;
  margin: 9px 0 15px;
  color: var(--case36-navy);
  font-size: 36px;
  font-weight: 500;
  line-height: 1.24;
}

.th-case-v36-intro__copy p {
  max-width: 720px;
  margin: 0;
  color: var(--case36-muted);
  font-size: 14px;
  line-height: 1.8;
}

.th-case-v36-intro__aside {
  padding: 3px 0 0 27px;
  border-left: 2px solid var(--case36-orange);
}

.th-case-v36-aside-label {
  margin-bottom: 12px;
}

.th-case-v36-review-lines {
  border-top: 1px solid var(--case36-border);
}

.th-case-v36-review-lines>div {
  display: grid;
  grid-template-columns: 145px minmax(0,1fr);
  gap: 14px;
  padding: 10px 0;
  border-bottom: 1px solid var(--case36-border);
}

.th-case-v36-review-lines strong {
  color: var(--case36-navy);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.55;
}

.th-case-v36-review-lines span {
  color: #768690;
  font-size: 10px;
  line-height: 1.6;
}

.th-case-v36-library {
  padding: 64px 0 72px;
  background: var(--case36-soft);
  border-top: 1px solid #edf0f2;
  border-bottom: 1px solid #e8ecef;
}

.th-case-v36-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 44px;
  margin-bottom: 30px;
}

.th-case-v36-section-head>div {
  max-width: 760px;
}

.th-case-v36-section-head h2 {
  margin: 8px 0 9px;
  color: var(--case36-navy);
  font-size: 30px;
  font-weight: 500;
  line-height: 1.3;
}

.th-case-v36-section-head p {
  max-width: 720px;
  margin: 0;
  color: var(--case36-muted);
  font-size: 13px;
  line-height: 1.75;
}

.th-case-v36-process-link {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 9px;
  padding-bottom: 5px;
  border-bottom: 1px solid #cbd4da;
  color: var(--case36-navy) !important;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .35px;
  text-transform: uppercase;
  transition: border-color .18s ease,color .18s ease;
}

.th-case-v36-process-link span {
  color: var(--case36-orange);
  transition: transform .18s ease;
}

.th-case-v36-process-link:hover {
  border-bottom-color: var(--case36-orange);
  color: var(--case36-orange) !important;
}

.th-case-v36-process-link:hover span {
  transform: translateX(3px);
}

.th-case-v36-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 24px;
}

.th-case-v36-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid #dce3e8;
  transition: border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}

.th-case-v36-card::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 0;
  height: 3px;
  background: var(--case36-orange);
  content: "";
  transition: width .22s ease;
}

.th-case-v36-card:hover {
  border-color: #cfd8de;
  box-shadow: 0 13px 28px rgba(11,31,51,.075);
  transform: translateY(-2px);
}

.th-case-v36-card:hover::before {
  width: 100%;
}

.th-case-v36-card__media {
  position: relative;
  display: flex;
  aspect-ratio: 16/9;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #fff;
  border-bottom: 1px solid #edf0f2;
}

.th-case-v36-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform .28s ease;
}

.th-case-v36-card:hover .th-case-v36-card__media img {
  transform: scale(1.018);
}

.th-case-v36-card__badge {
  position: absolute;
  top: 15px;
  left: 15px;
  padding: 7px 10px;
  background: rgba(11,31,51,.92);
  color: #fff;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .9px;
  text-transform: uppercase;
}

.th-case-v36-card__body {
  display: flex;
  min-height: 235px;
  flex-direction: column;
  padding: 24px 25px 23px;
}

.th-case-v36-card__eyebrow {
  margin-bottom: 8px;
}

.th-case-v36-card__body h3 {
  margin: 0 0 10px;
  color: var(--case36-navy);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
}

.th-case-v36-card__body h3 a {
  color: inherit !important;
}

.th-case-v36-card__body h3 a:hover {
  color: var(--case36-orange) !important;
}

.th-case-v36-card__body p {
  margin: 0 0 20px;
  color: var(--case36-muted);
  font-size: 12px;
  line-height: 1.75;
}

.th-case-v36-card__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: max-content;
  margin-top: auto;
  color: var(--case36-navy) !important;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .4px;
  text-transform: uppercase;
}

.th-case-v36-card__link span {
  color: var(--case36-orange);
  transition: transform .18s ease;
}

.th-case-v36-card__link:hover {
  color: var(--case36-orange) !important;
}

.th-case-v36-card__link:hover span {
  transform: translateX(3px);
}

.th-case-v36-pagination {
  margin-top: 38px;
  text-align: center;
}

.th-case-v36-pagination ul {
  display: flex;
  justify-content: center;
  gap: 6px;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.th-case-v36-pagination li {
  display: block;
}

.th-case-v36-pagination a,
.th-case-v36-pagination span {
  display: flex;
  min-width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  padding: 0 11px;
  background: #fff;
  border: 1px solid #d6dee4;
  color: var(--case36-text) !important;
  font-size: 11px;
  text-decoration: none !important;
}

.th-case-v36-pagination a:hover,
.th-case-v36-pagination .active a,
.th-case-v36-pagination .active span {
  background: var(--case36-orange);
  border-color: var(--case36-orange);
  color: #fff !important;
}

.th-case-v36-guide {
  padding: 68px 0 66px;
  background: var(--case36-navy);
  color: #fff;
}

.th-case-v36-guide__layout {
  display: grid;
  grid-template-columns: minmax(0,.8fr) minmax(0,1.55fr);
  gap: 72px;
  align-items: start;
}

.th-case-v36-guide__heading {
  max-width: 430px;
}

.th-case-v36-guide__heading h2 {
  margin: 9px 0 13px;
  color: #fff;
  font-size: 29px;
  font-weight: 500;
  line-height: 1.35;
}

.th-case-v36-guide__heading p {
  margin: 0;
  color: rgba(255,255,255,.64);
  font-size: 12px;
  line-height: 1.8;
}

.th-case-v36-guide__points {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  border-top: 1px solid rgba(255,255,255,.18);
}

.th-case-v36-guide__points article {
  min-width: 0;
  padding: 24px 24px 0;
  border-left: 1px solid rgba(255,255,255,.14);
}

.th-case-v36-guide__points article:first-child {
  padding-left: 0;
  border-left: 0;
}

.th-case-v36-guide__points article>span {
  margin-bottom: 8px;
}

.th-case-v36-guide__points h3 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.4;
}

.th-case-v36-guide__points p {
  margin: 0;
  color: rgba(255,255,255,.62);
  font-size: 11px;
  line-height: 1.75;
}

.th-case-v36-rfq {
  padding: 48px 0;
  background: #fff;
}

.th-case-v36-rfq__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 42px;
  padding: 29px 31px;
  background: #f7f9fa;
  border-left: 4px solid var(--case36-orange);
}

.th-case-v36-rfq__inner>div {
  max-width: 760px;
}

.th-case-v36-rfq__inner h2 {
  margin: 7px 0 7px;
  color: var(--case36-navy);
  font-size: 25px;
  font-weight: 500;
  line-height: 1.35;
}

.th-case-v36-rfq__inner p {
  margin: 0;
  color: var(--case36-muted);
  font-size: 12px;
  line-height: 1.7;
}

.th-case-v36-rfq__btn {
  display: inline-flex;
  flex: 0 0 auto;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 18px;
  background: var(--case36-orange);
  border: 1px solid var(--case36-orange);
  color: #fff !important;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .45px;
  text-transform: uppercase;
  transition: background-color .18s ease,border-color .18s ease,transform .18s ease;
}

.th-case-v36-rfq__btn:hover {
  background: #d96420;
  border-color: #d96420;
  color: #fff !important;
  transform: translateY(-1px);
}

.th-case-v36-rfq__btn span {
  transition: transform .18s ease;
}

.th-case-v36-rfq__btn:hover span {
  transform: translateX(3px);
}

@media (max-width:991px) {
  .th-case-v36-intro__grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .th-case-v36-intro__aside {
    max-width: 720px;
  }

  .th-case-v36-section-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 18px;
  }

  .th-case-v36-guide__layout {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .th-case-v36-guide__heading {
    max-width: 720px;
  }

  .th-case-v36-rfq__inner {
    align-items: flex-start;
    flex-direction: column;
    gap: 22px;
  }
}

@media (max-width:767px) {
  .th-case-v36-intro {
    padding: 42px 0 38px;
  }

  .th-case-v36-intro__copy h2 {
    font-size: 28px;
  }

  .th-case-v36-intro__aside {
    padding-left: 17px;
  }

  .th-case-v36-review-lines>div {
    grid-template-columns: 1fr;
    gap: 2px;
  }

  .th-case-v36-library {
    padding: 46px 0 52px;
  }

  .th-case-v36-section-head h2 {
    font-size: 26px;
  }

  .th-case-v36-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .th-case-v36-card__body {
    min-height: 0;
    padding: 20px 19px;
  }

  .th-case-v36-card__body h3 {
    font-size: 18px;
  }

  .th-case-v36-guide {
    padding: 48px 0 46px;
  }

  .th-case-v36-guide__heading h2 {
    font-size: 25px;
  }

  .th-case-v36-guide__points {
    grid-template-columns: 1fr;
  }

  .th-case-v36-guide__points article {
    padding: 20px 0;
    border-top: 1px solid rgba(255,255,255,.14);
    border-left: 0;
  }

  .th-case-v36-guide__points article:first-child {
    padding-top: 20px;
    border-top: 0;
  }

  .th-case-v36-rfq {
    padding: 34px 0;
  }

  .th-case-v36-rfq__inner {
    padding: 23px 20px;
  }

  .th-case-v36-rfq__inner h2 {
    font-size: 22px;
  }

  .th-case-v36-rfq__btn {
    width: 100%;
  }
}

/* Footer heading accent — confirmed production value. */
.th-footer__column h2 {
  position: relative;
}

.th-footer__column h2::before {
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 40px;
  height: 3px;
  background: var(--th-orange);
  content: "";
}

/* V39 / mobile safety: desktop full-width mega positioning does not apply
   inside the mobile navigation drawer. */
@media(max-width:991px){
  .th-primary-nav .th-mega-menu{
    position:static;
    top:auto;
    left:auto;
    right:auto;
    width:auto;
    transform:none;
  }

  .th-primary-nav__item.is-open>.th-mega-menu{
    transform:none;
  }
}

/* V41 / intrinsic 240x120 mega-menu image sizing */
@media(min-width:992px){
  .th-mega-menu__media{
    width:240px;
    height:120px;
    max-width:100%;
  }

  .th-mega-menu__media img{
    width:240px;
    height:120px;
    max-width:100%;
    object-fit:contain;
  }
}

/* V42 / Balanced desktop Mega Menu layout
   5 image items -> 5 columns in one row
   5 text items  -> 5 columns in one row
   7 text items  -> 4 + 3 layout */
@media(min-width:992px){

  /* Five manufacturing image cards stay in a single row. */
  .th-mega-menu__grid:has(.th-mega-menu__media){
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:16px;
    align-items:start;
  }

  /* Text-only menus default to five balanced columns. */
  .th-mega-menu__grid:has(.th-mega-menu__item>.th-mega-menu__title:first-child){
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
    align-items:stretch;
  }

  /* Products currently has seven items: use 4 + 3 instead of 5 + 2 / 6 + 1. */
  .th-mega-menu__grid:has(.th-mega-menu__item:nth-child(7)){
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  /* Image-menu items use the full grid cell but media never exceeds source width. */
  .th-mega-menu__item:has(>.th-mega-menu__media){
    align-items:center;
  }

  .th-mega-menu__item:has(>.th-mega-menu__media)>.th-mega-menu__title{
    width:100%;
    max-width:240px;
  }

  /* Text tiles fill their track and no longer look like small boxes floating in space. */
  .th-mega-menu__item>.th-mega-menu__title:first-child{
    width:100%;
    max-width:none;
    min-height:62px;
    justify-content:flex-start;
    padding:14px 38px 14px 16px;
    background:#f7f9fa;
    border:1px solid #e0e6ea;
    border-left:3px solid #d6dee4;
    box-shadow:none;
  }

  .th-mega-menu__item>.th-mega-menu__title:first-child:hover,
  .th-mega-menu__item>.th-mega-menu__title:first-child:focus{
    background:#fff;
    border-color:#d2dbe1;
    border-left-color:var(--th-orange);
    box-shadow:0 7px 18px rgba(11,31,51,.055);
  }
}

@media(max-width:1199px) and (min-width:992px){
  .th-mega-menu{
    padding-left:16px;
    padding-right:16px;
  }

  .th-mega-menu__grid:has(.th-mega-menu__media){
    gap:12px;
  }
}

