/* KTG Group - Lĩnh vực hoạt động */
body.ktc-fields-body {
  margin: 0;
  overflow-x: hidden;
  background: #0a4f9f;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
}

body.ktc-fields-body a { color: inherit; text-decoration: none; }
body.ktc-fields-body img { display: block; max-width: 100%; }

.ktc-fields-shell {
  min-height: 100vh;
  background: #0a4f9f;
}

.ktc-fields-header .ktc-site-header__glass {
  opacity: .96;
  background:
    linear-gradient(180deg, rgba(36, 130, 207, .50), rgba(10, 82, 160, .20) 68%, rgba(0, 34, 88, .04));
  border-bottom-color: rgba(255,255,255,.20);
}

.ktc-fields-section {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  isolation: isolate;
  display: flex;
  align-items: center;
  color: #fff;
}

.ktc-fields-section .ktc-container {
  position: relative;
  z-index: 2;
  width: min(1340px, calc(100% - 88px));
  margin: 0 auto;
}

.ktc-fields-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: #0b5eb5;
}

.ktc-fields-bg::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.10) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size: 118px 118px;
  opacity: .16;
  mask-image: radial-gradient(circle at 50% 50%, #000 0%, transparent 76%);
}

.ktc-fields-bg--hero {
  background:
    linear-gradient(180deg, rgba(5, 39, 88, .26), rgba(5, 39, 88, .88)),
    linear-gradient(90deg, rgba(5, 27, 67, .72), rgba(4, 70, 142, .28)),
    url('https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?auto=format&fit=crop&w=1900&q=88') center / cover no-repeat;
}

.ktc-fields-bg--design {
  background:
    linear-gradient(90deg, rgba(234,245,255,.94) 0%, rgba(243,249,255,.88) 34%, rgba(217,235,250,.58) 58%, rgba(195,220,239,.28) 100%),
    radial-gradient(circle at 16% 28%, rgba(255,255,255,.34), transparent 34%),
    url('https://ktcg.vn/wp-content/uploads/2026/05/Nen-thiet-ke-nha-da-nen.webp') center / cover no-repeat;
}


.ktc-fields-bg--design::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 160px;
  background: linear-gradient(180deg, rgba(12, 72, 142, .28) 0%, rgba(12, 72, 142, .18) 45%, rgba(12, 72, 142, 0) 100%);
  pointer-events: none;
}

.ktc-fields-bg--light {
  background:
    linear-gradient(115deg, rgba(247,252,255,.98), rgba(230,243,255,.92)),
    url('https://images.unsplash.com/photo-1494526585095-c41746248156?auto=format&fit=crop&w=1800&q=82') center / cover no-repeat;
}

.ktc-fields-bg--mep {
  background:
    linear-gradient(90deg, rgba(5, 58, 122, .92), rgba(30, 139, 224, .72)),
    url('https://images.unsplash.com/photo-1581094794329-c8112a89af12?auto=format&fit=crop&w=1900&q=84') center / cover no-repeat;
}

.ktc-fields-bg--safety {
  background:
    linear-gradient(90deg, rgba(255,255,255,.12), rgba(255,255,255,.78) 48%, rgba(255,255,255,.96)),
    #f5fbff;
}

.ktc-fields-bg--people {
  background:
    radial-gradient(circle at 78% 40%, rgba(145, 208, 255, .34), transparent 34%),
    linear-gradient(115deg, #174f9d 0%, #236fbf 56%, #5aa8ef 100%);
}

.ktc-fields-bg--equipment {
  background:
    linear-gradient(90deg, rgba(255,255,255,.86), rgba(255,255,255,.98) 52%, #ffffff),
    #f5f9ff;
}

.ktc-fields-bg--equipment::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 168px;
  background: linear-gradient(180deg, rgba(15, 116, 214, .40) 0%, rgba(24, 143, 238, .24) 48%, rgba(24, 143, 238, 0) 100%);
  pointer-events: none;
}

.ktc-fields-bg--system {
  background:
    linear-gradient(90deg, rgba(6, 31, 64, .86) 0%, rgba(9, 54, 102, .76) 38%, rgba(16, 96, 171, .42) 68%, rgba(255,255,255,.18) 100%),
    url('https://ktcg.vn/wp-content/uploads/2026/05/Nen-he-thong-quan-ly-dn.webp') center / cover no-repeat;
}

.ktc-fields-bg--cta {
  background:
    radial-gradient(circle at 20% 24%, rgba(255, 221, 121, .30), transparent 32%),
    radial-gradient(circle at 80% 22%, rgba(120, 190, 255, .36), transparent 38%),
    linear-gradient(135deg, #06316f 0%, #0f69c5 58%, #23a1ef 100%);
}

.ktc-fields-kicker {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  color: rgba(255,255,255,.82);
  font-size: clamp(.72rem, .88vw, .94rem);
  line-height: 1;
  font-weight: 900;
  letter-spacing: .24em;
  text-transform: uppercase;
}

.ktc-fields-kicker span {
  display: block;
  width: 88px;
  height: 2px;
  background: linear-gradient(90deg, rgba(255,255,255,.10), rgba(255,255,255,.86));
}

.ktc-fields-section h1,
.ktc-fields-section h2 {
  margin: 0;
  font-family: "UTM Hanzel", Montserrat, Inter, Arial, sans-serif;
  font-weight: 400;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.ktc-fields-section p {
  margin: 0;
  line-height: 1.55;
  font-weight: 540;
}

/* Section 1 */
.ktc-fields-hero__inner {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  gap: clamp(34px, 7vh, 70px);
  align-items: center;
  min-height: 100vh;
  padding: 122px 0 44px;
  box-sizing: border-box;
}

.ktc-fields-hero__title {
  max-width: 1060px;
  justify-self: center;
  text-align: center;
}

.ktc-fields-hero__title h1 {
  margin-top: 22px;
  font-size: clamp(2.7rem, 4.8vw, 5.8rem);
  line-height: .96;
}

.ktc-fields-hero__title p {
  max-width: 1100px;
  margin: 18px auto 0;
  color: rgba(255,255,255,.86);
  font-size: clamp(.96rem, 1.05vw, 1.15rem);
}

.ktc-fields-hero__benefits h2 {
  max-width: 1180px;
  margin: 0 auto 26px;
  text-align: center;
  font-family: Montserrat, Inter, Arial, sans-serif;
  font-size: clamp(1.28rem, 2.15vw, 2.55rem);
  line-height: 1.12;
  font-weight: 900;
  letter-spacing: -.03em;
}

.ktc-fields-benefit-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255,255,255,.30);
}

.ktc-fields-benefit {
  min-height: 168px;
  padding: 20px 22px 0;
  text-align: center;
  border-left: 1px solid rgba(255,255,255,.24);
}

.ktc-fields-benefit:first-child {
  border-left: none;
}

.ktc-fields-benefit__icon {
  width: 48px;
  height: 48px;
  margin: 0 auto 14px;
  color: rgba(255,255,255,.88);
}

.ktc-fields-benefit__icon svg,
.ktc-fields-feature svg,
.ktc-fields-goal__icon svg,
.ktc-fields-certs svg,
.ktc-fields-cta__actions svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ktc-fields-benefit strong {
  display: block;
  color: #fff;
  font-size: .96rem;
  font-weight: 900;
}

.ktc-fields-benefit p {
  margin-top: 8px;
  color: rgba(255,255,255,.78);
  font-size: .86rem;
  line-height: 1.36;
}

/* Section 2 */
.ktc-fields-design {
  color: #0d3472;
}

.ktc-fields-design__inner {
  display: grid;
  grid-template-columns: minmax(420px, 1.02fr) minmax(0, .98fr);
  gap: clamp(28px, 4vw, 64px);
  align-items: center;
}

.ktc-fields-design .ktc-fields-kicker {
  color: #0b5daa;
}

.ktc-fields-design .ktc-fields-kicker span {
  background: linear-gradient(90deg, rgba(11,93,170,.12), #0b5daa);
}

.ktc-fields-design__copy h2 {
  margin-top: 20px;
  color: #0a4e99;
  font-size: clamp(2.5rem, 4.35vw, 5rem);
  line-height: .94;
}

.ktc-fields-design__copy p {
  margin-top: 22px;
  max-width: 600px;
  color: #4f647b;
  font-size: clamp(.98rem, 1.02vw, 1.12rem);
}

.ktc-fields-process {
  position: relative;
  display: grid;
  gap: 20px;
  padding: 40px;
  border-radius: 42px;
  background:
    radial-gradient(circle at 10% 18%, rgba(255,255,255,.92), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,.76), rgba(235,246,255,.62));
  border: 1px solid rgba(30, 121, 207, .18);
  box-shadow: 0 36px 90px rgba(10, 74, 145, .16);
  overflow: hidden;
}

.ktc-fields-process__line {
  position: absolute;
  left: 82px;
  top: 70px;
  bottom: 70px;
  width: 2px;
  background: linear-gradient(180deg, #0a6fd2, rgba(10,111,210,.12));
}

.ktc-fields-process article {
  position: relative;
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  grid-template-areas:
    "num title"
    "num desc";
  gap: 4px 24px;
  align-items: start;
}

.ktc-fields-process article span {
  grid-area: num;
  display: grid;
  place-items: center;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(135deg, #0b5daa, #1d91f0);
  font-size: 1rem;
  font-weight: 900;
  box-shadow: 0 18px 42px rgba(16, 102, 190, .22);
}

.ktc-fields-process article strong {
  grid-area: title;
  color: #0b3478;
  font-size: clamp(1.1rem, 1.45vw, 1.65rem);
  font-weight: 900;
  text-transform: uppercase;
}

.ktc-fields-process article p {
  grid-area: desc;
  color: #546a85;
  font-size: .95rem;
}

/* Section 3 */
.ktc-fields-construction,
.ktc-fields-equipment,
.ktc-fields-system {
  color: #12315d;
}

.ktc-fields-construction__inner,
.ktc-fields-equipment__inner,
.ktc-fields-system__inner {
  display: grid;
  grid-template-columns: minmax(320px, .82fr) minmax(0, 1fr);
  gap: clamp(36px, 6vw, 82px);
  align-items: center;
}

.ktc-fields-construction__image {
  min-height: 560px;
  align-self: stretch;
  display: flex;
  align-items: end;
}

.ktc-fields-construction__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom;
  border-radius: 0 56px 0 0;
  box-shadow: 0 40px 90px rgba(20, 70, 120, .15);
}

.ktc-fields-construction__copy h2,
.ktc-fields-equipment__copy h2,
.ktc-fields-system__copy h2,
.ktc-fields-safety__copy h2,
.ktc-fields-people__copy h2,
.ktc-fields-mep__copy h2,
.ktc-fields-cta__inner h2 {
  color: #0b4f98;
  font-size: clamp(2.7rem, 4.9vw, 5.6rem);
  line-height: .95;
}

.ktc-fields-construction__copy p,
.ktc-fields-equipment__copy p,
.ktc-fields-system__copy p {
  max-width: 720px;
  margin-top: 18px;
  color: #5d6670;
  font-size: clamp(.95rem, 1.02vw, 1.1rem);
}

.ktc-fields-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px 36px;
  margin-top: 36px;
}

.ktc-fields-feature {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  min-height: 82px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(20, 88, 155, .30);
}

.ktc-fields-feature svg {
  color: #1a67b4;
}

.ktc-fields-feature span {
  color: #303b48;
  font-size: .98rem;
  line-height: 1.34;
  font-weight: 720;
}

/* Section 4 */
.ktc-fields-mep__inner {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(360px, .88fr);
  gap: clamp(36px, 6vw, 92px);
  align-items: center;
}

.ktc-fields-mep__copy {
  max-width: 600px;
}

.ktc-fields-mep__copy h2 {
  margin-top: 18px;
  color: #fff;
}

.ktc-fields-mep__copy p {
  margin-top: 20px;
  color: rgba(255,255,255,.80);
  font-size: clamp(.96rem, 1.05vw, 1.12rem);
}

.ktc-fields-mep__copy ul {
  list-style: none;
  margin: 30px 0 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

.ktc-fields-mep__copy li {
  position: relative;
  padding-left: 26px;
  color: rgba(255,255,255,.86);
  font-weight: 700;
  line-height: 1.42;
}

.ktc-fields-mep__copy li::before {
  content: '';
  position: absolute;
  left: 0;
  top: .55em;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #f5c65c;
  box-shadow: 0 0 0 8px rgba(245,198,92,.14);
}

.ktc-fields-mep__visual {
  position: relative;
  min-height: 560px;
  border-radius: 44px;
  border: 1px solid rgba(255,255,255,.22);
  background:
    linear-gradient(135deg, rgba(255,255,255,.20), rgba(255,255,255,.04)),
    url('https://images.unsplash.com/photo-1581092921461-eab62e97a780?auto=format&fit=crop&w=1200&q=84') center / cover no-repeat;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.14), 0 36px 90px rgba(0,0,0,.20);
  overflow: hidden;
}

.ktc-fields-mep__visual::before {
  content: 'N';
  position: absolute;
  right: -18px;
  bottom: -40px;
  color: rgba(255,255,255,.14);
  font-family: Montserrat, Inter, Arial, sans-serif;
  font-size: clamp(14rem, 24vw, 26rem);
  line-height: .75;
  font-weight: 900;
}

.ktc-fields-mep__panel {
  position: absolute;
  left: 36px;
  right: 36px;
  bottom: 36px;
  padding: 26px;
  border-radius: 28px;
  background: rgba(4, 47, 105, .76);
  border: 1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(14px);
}

.ktc-fields-mep__panel span {
  color: #f7cb62;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .22em;
}

.ktc-fields-mep__panel strong {
  display: block;
  margin-top: 10px;
  font-size: clamp(1.25rem, 1.7vw, 2rem);
  line-height: 1.12;
  font-weight: 900;
}

.ktc-fields-mep__panel p {
  margin-top: 10px;
  color: rgba(255,255,255,.80);
  font-size: .92rem;
}

/* Section 5 */
.ktc-fields-safety {
  color: #12315d;
  background: #f8fcff;
}

.ktc-fields-safety::before {
  content: '';
  position: absolute;
  inset: 0 0 auto 0;
  height: 160px;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(24, 120, 232, .28) 0%, rgba(38, 152, 255, .16) 52%, rgba(38, 152, 255, 0) 100%);
}

.ktc-fields-safety__inner {
  display: grid;
  grid-template-columns: minmax(330px, .9fr) minmax(0, 1fr);
  gap: clamp(34px, 5vw, 76px);
  align-items: center;
}

.ktc-fields-safety__photo {
  align-self: stretch;
  min-height: 640px;
  margin-left: calc((100vw - min(1340px, calc(100vw - 88px))) / -2);
  overflow: hidden;
  border-radius: 0 56px 56px 0;
}

.ktc-fields-safety__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ktc-fields-safety__copy h2 {
  color: #0c4f98;
}

.ktc-fields-safety__copy h2 strong,
.ktc-fields-equipment__copy h2 strong,
.ktc-fields-system__copy h2 strong {
  font-family: inherit;
  color: #0c4f98;
  font-weight: inherit;
}

.ktc-fields-safety__copy p {
  margin-top: 18px;
  color: #4f5965;
  font-size: clamp(.96rem, 1.02vw, 1.1rem);
}

.ktc-fields-arrow-controls {
  display: inline-flex;
  gap: 14px;
  margin-bottom: 20px;
}

.ktc-fields-arrow-controls button {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(15, 83, 153, .30);
  color: #0c4f98;
  background: rgba(255,255,255,.60);
  font-size: 1.5rem;
  line-height: 1;
}

.ktc-fields-safety__thumb {
  width: min(100%, 560px);
  aspect-ratio: 1.85 / 1;
  margin-top: 34px;
  overflow: hidden;
  border-radius: 28px;
  box-shadow: 0 26px 70px rgba(20, 70, 120, .16);
}

.ktc-fields-safety__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Section 6 */
.ktc-fields-people__inner {
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(380px, 1fr);
  gap: clamp(34px, 5vw, 76px);
  align-items: center;
}

.ktc-fields-people__copy h2 {
  color: #fff;
}

.ktc-fields-people__copy p {
  max-width: 680px;
  margin-top: 18px;
  color: rgba(255,255,255,.86);
  font-size: clamp(.96rem, 1.02vw, 1.1rem);
}

.ktc-fields-people__thumb {
  width: min(100%, 620px);
  aspect-ratio: 1.75 / 1;
  margin-top: 34px;
  overflow: hidden;
  border-radius: 28px;
  box-shadow: 0 26px 70px rgba(0,0,0,.20);
}

.ktc-fields-people__thumb img,
.ktc-fields-people__group img,
.ktc-fields-equipment__photo img,
.ktc-fields-video img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.ktc-fields-equipment__photo img {
  object-position: right center;
}

.ktc-fields-people__group {
  position: relative;
  min-height: 620px;
  align-self: stretch;
  overflow: hidden;
  border-radius: 44px 0 0 44px;
  margin-right: calc((100vw - min(1340px, calc(100vw - 88px))) / -2);
}

.ktc-fields-people__group::before {
  content: 'N';
  position: absolute;
  inset: auto 8% 0 auto;
  z-index: 1;
  color: rgba(255,255,255,.12);
  font-family: Montserrat, Inter, Arial, sans-serif;
  font-size: 24rem;
  line-height: .75;
  font-weight: 900;
}

.ktc-fields-people__group img {
  filter: saturate(1.08);
}

/* Section 7 */
.ktc-fields-equipment__inner {
  grid-template-columns: minmax(330px, .9fr) minmax(0, 1fr);
}

.ktc-fields-equipment__photo {
  min-height: 680px;
  align-self: stretch;
  margin-left: calc((100vw - min(1340px, calc(100vw - 88px))) / -2);
  border-radius: 0 56px 56px 0;
  overflow: hidden;
}

.ktc-fields-equipment__copy {
  padding-left: clamp(0px, 2vw, 24px);
}

.ktc-fields-video {
  position: relative;
  width: min(100%, 620px);
  aspect-ratio: 1.75 / 1;
  margin-top: 34px;
  overflow: hidden;
  border-radius: 28px;
  box-shadow: 0 26px 70px rgba(20, 70, 120, .16);
}

.ktc-fields-video::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,.44);
}

.ktc-fields-video span {
  position: absolute;
  z-index: 2;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  color: #fff;
  background: rgba(16, 104, 200, .78);
  border: 1px solid rgba(255,255,255,.60);
  box-shadow: 0 20px 60px rgba(0,0,0,.18);
}

/* Section 8 */
.ktc-fields-system__inner {
  grid-template-columns: minmax(0, .95fr) minmax(360px, .9fr);
}

.ktc-fields-system__copy h2 {
  color: #0c4f98;
}

.ktc-fields-certs {
  display: grid;
  gap: 18px;
}

.ktc-fields-certs article {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  grid-template-areas:
    "icon title"
    "icon desc";
  gap: 6px 20px;
  align-items: center;
  padding: 24px;
  border-radius: 26px;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(255,255,255,.42);
  box-shadow: 0 24px 70px rgba(8, 43, 86, .18);
  backdrop-filter: blur(8px);
}

.ktc-fields-certs article div {
  grid-area: icon;
  display: grid;
  place-items: center;
  width: 66px;
  height: 66px;
  border-radius: 20px;
  color: #0c67c4;
  background: linear-gradient(135deg, #e8f4ff, #ffffff);
}

.ktc-fields-certs strong {
  grid-area: title;
  color: #0c4f98;
  font-size: 1.35rem;
  font-weight: 900;
}

.ktc-fields-certs span {
  grid-area: desc;
  color: #596c84;
  font-weight: 650;
}

/* Section 9 */
.ktc-fields-cta__inner {
  max-width: 980px;
  text-align: center;
}

.ktc-fields-cta .ktc-fields-kicker {
  justify-content: center;
}

.ktc-fields-cta__inner h2 {
  margin-top: 22px;
  color: #fff;
  font-size: clamp(2.7rem, 5vw, 6rem);
}

.ktc-fields-cta__inner p {
  max-width: 720px;
  margin: 22px auto 0;
  color: rgba(255,255,255,.84);
  font-size: 1.08rem;
}

.ktc-fields-cta__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  margin-top: 34px;
}

.ktc-fields-cta__actions a {
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 0 24px;
  border-radius: 999px;
  color: #0b4f98;
  background: #ffe082;
  font-size: .9rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  box-shadow: 0 22px 50px rgba(0,0,0,.16);
}

.ktc-fields-cta__actions a + a {
  color: #fff;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.26);
}

.ktc-fields-cta__actions svg {
  width: 20px;
  height: 20px;
}

/* Side nav */
.ktc-fields-side-nav {
  position: fixed;
  z-index: 85;
  right: clamp(18px, 2.3vw, 42px);
  top: 50%;
  transform: translateY(-50%);
  display: grid;
  gap: 14px;
}

.ktc-fields-side-nav a {
  display: grid;
  place-items: center;
  width: 46px;
  height: 32px;
  color: rgba(255,255,255,.76);
  font-size: 1rem;
  font-weight: 850;
  line-height: 1;
  text-shadow: 0 6px 16px rgba(0,0,0,.22);
  transition: color .25s ease, transform .25s ease;
}

.ktc-fields-side-nav a span {
  position: relative;
  display: inline-block;
}

.ktc-fields-side-nav a span::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -8px;
  width: 0;
  height: 3px;
  border-radius: 999px;
  background: #ff3e2f;
  transform: translateX(-50%);
  transition: width .25s ease;
}

.ktc-fields-side-nav a.is-active,
.ktc-fields-side-nav a:hover {
  color: #fff;
  transform: translateX(-2px) scale(1.12);
}

.ktc-fields-side-nav a.is-active span::after,
.ktc-fields-side-nav a:hover span::after {
  width: 18px;
}

/* Reveal animation */
[data-ktc-fields-reveal] .ktc-fields-kicker,
[data-ktc-fields-reveal] h1,
[data-ktc-fields-reveal] h2,
[data-ktc-fields-reveal] p,
[data-ktc-fields-reveal] li,
[data-ktc-fields-reveal] .ktc-fields-benefit,
[data-ktc-fields-reveal] .ktc-fields-process article,
[data-ktc-fields-reveal] .ktc-fields-feature,
[data-ktc-fields-reveal] .ktc-fields-mep__panel,
[data-ktc-fields-reveal] .ktc-fields-safety__photo,
[data-ktc-fields-reveal] .ktc-fields-safety__thumb,
[data-ktc-fields-reveal] .ktc-fields-people__thumb,
[data-ktc-fields-reveal] .ktc-fields-people__group,
[data-ktc-fields-reveal] .ktc-fields-equipment__photo,
[data-ktc-fields-reveal] .ktc-fields-video,
[data-ktc-fields-reveal] .ktc-fields-certs article,
[data-ktc-fields-reveal] .ktc-fields-cta__actions a {
  opacity: 0;
  transform: translate3d(0, 42px, 0) scale(.98);
  filter: blur(10px);
}

[data-ktc-fields-reveal].is-visible .ktc-fields-kicker,
[data-ktc-fields-reveal].is-visible h1,
[data-ktc-fields-reveal].is-visible h2,
[data-ktc-fields-reveal].is-visible p,
[data-ktc-fields-reveal].is-visible li,
[data-ktc-fields-reveal].is-visible .ktc-fields-benefit,
[data-ktc-fields-reveal].is-visible .ktc-fields-process article,
[data-ktc-fields-reveal].is-visible .ktc-fields-feature,
[data-ktc-fields-reveal].is-visible .ktc-fields-mep__panel,
[data-ktc-fields-reveal].is-visible .ktc-fields-safety__photo,
[data-ktc-fields-reveal].is-visible .ktc-fields-safety__thumb,
[data-ktc-fields-reveal].is-visible .ktc-fields-people__thumb,
[data-ktc-fields-reveal].is-visible .ktc-fields-people__group,
[data-ktc-fields-reveal].is-visible .ktc-fields-equipment__photo,
[data-ktc-fields-reveal].is-visible .ktc-fields-video,
[data-ktc-fields-reveal].is-visible .ktc-fields-certs article,
[data-ktc-fields-reveal].is-visible .ktc-fields-cta__actions a {
  animation: ktcFieldsIn .88s cubic-bezier(.22,.61,.36,1) both;
}

[data-ktc-fields-reveal].is-visible h1,
[data-ktc-fields-reveal].is-visible h2 { animation-delay: .08s; }
[data-ktc-fields-reveal].is-visible p { animation-delay: .17s; }
[data-ktc-fields-reveal].is-visible li:nth-child(1),
[data-ktc-fields-reveal].is-visible .ktc-fields-benefit:nth-child(1),
[data-ktc-fields-reveal].is-visible .ktc-fields-process article:nth-of-type(1),
[data-ktc-fields-reveal].is-visible .ktc-fields-feature:nth-child(1),
[data-ktc-fields-reveal].is-visible .ktc-fields-certs article:nth-child(1) { animation-delay: .16s; }
[data-ktc-fields-reveal].is-visible li:nth-child(2),
[data-ktc-fields-reveal].is-visible .ktc-fields-benefit:nth-child(2),
[data-ktc-fields-reveal].is-visible .ktc-fields-process article:nth-of-type(2),
[data-ktc-fields-reveal].is-visible .ktc-fields-feature:nth-child(2),
[data-ktc-fields-reveal].is-visible .ktc-fields-certs article:nth-child(2) { animation-delay: .24s; }
[data-ktc-fields-reveal].is-visible li:nth-child(3),
[data-ktc-fields-reveal].is-visible .ktc-fields-benefit:nth-child(3),
[data-ktc-fields-reveal].is-visible .ktc-fields-process article:nth-of-type(3),
[data-ktc-fields-reveal].is-visible .ktc-fields-feature:nth-child(3),
[data-ktc-fields-reveal].is-visible .ktc-fields-certs article:nth-child(3) { animation-delay: .32s; }
[data-ktc-fields-reveal].is-visible li:nth-child(4),
[data-ktc-fields-reveal].is-visible .ktc-fields-benefit:nth-child(4),
[data-ktc-fields-reveal].is-visible .ktc-fields-feature:nth-child(4) { animation-delay: .40s; }

.ktc-fields-section.is-visible .ktc-fields-bg {
  animation: ktcFieldsBg 1.15s cubic-bezier(.22,.61,.36,1) both;
}

@keyframes ktcFieldsIn {
  0% { opacity: 0; transform: translate3d(0, 42px, 0) scale(.98); filter: blur(10px); }
  100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }
}

@keyframes ktcFieldsBg {
  0% { transform: scale(1.07); filter: brightness(.94) saturate(.92); }
  100% { transform: scale(1); filter: brightness(1) saturate(1.08); }
}

/* Snap layout */
@media (min-width: 1200px) {
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-section {
    height: var(--ktc-stage-vh) !important;
    min-height: var(--ktc-stage-vh) !important;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-section .ktc-container {
    padding-top: calc(var(--ktc-header-offset) + 14px);
    padding-bottom: 24px;
    box-sizing: border-box;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-hero__inner {
    min-height: var(--ktc-stage-vh);
    height: var(--ktc-stage-vh);
    padding-top: calc(var(--ktc-header-offset) + 18px);
    padding-bottom: 20px;
    gap: clamp(24px, 4.4vh, 48px);
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-hero__title h1 {
    font-size: clamp(2.4rem, 4.05vw, 4.9rem);
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-benefit {
    min-height: 134px;
    padding-top: 16px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-benefit p {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-construction__image,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-mep__visual,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-safety__photo,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-people__group,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-equipment__photo {
    min-height: 0;
    height: calc(var(--ktc-stage-vh) - var(--ktc-header-offset) - 56px);
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-safety__thumb,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-people__thumb,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-video {
    max-height: 245px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-process {
    padding: 32px;
    gap: 18px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-process article span {
    width: 58px;
    height: 58px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-process article {
    grid-template-columns: 58px minmax(0, 1fr);
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-process__line {
    left: 61px;
    top: 58px;
    bottom: 58px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-section h2 {
    font-size: clamp(2.25rem, 4vw, 4.6rem);
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-section p {
    font-size: clamp(.88rem, .95vw, 1rem);
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-feature-grid {
    gap: 16px 26px;
    margin-top: 28px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-mep__panel {
    left: 28px;
    right: 28px;
    bottom: 28px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-certs {
    gap: 14px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-certs article {
    padding: 20px;
  }
}

@media (min-width: 1200px) and (max-height: 780px) {
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-section h1,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-section h2 {
    font-size: clamp(2rem, 3.45vw, 4rem);
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-hero__benefits h2 {
    font-size: clamp(1.05rem, 1.65vw, 1.9rem);
    margin-bottom: 16px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-benefit {
    min-height: 112px;
    padding: 12px 14px 0;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-benefit__icon {
    width: 38px;
    height: 38px;
    margin-bottom: 8px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-benefit p {
    font-size: .76rem;
    -webkit-line-clamp: 2;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-kicker {
    font-size: .66rem;
    letter-spacing: .18em;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-kicker span {
    width: 56px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-section p,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-feature span,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-mep__copy li {
    font-size: .82rem;
    line-height: 1.34;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-feature {
    min-height: 64px;
    grid-template-columns: 44px minmax(0, 1fr);
    padding-bottom: 12px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-mep__panel {
    padding: 20px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-safety__thumb,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-people__thumb,
  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-video {
    max-height: 200px;
    margin-top: 22px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-certs article {
    grid-template-columns: 58px minmax(0, 1fr);
    padding: 16px;
  }

  body.ktc-fields-body.ktc-snap-enabled .ktc-fields-certs article div {
    width: 52px;
    height: 52px;
  }
}

/* Responsive */
@media (max-width: 1199px) {
  .ktc-fields-section {
    min-height: auto;
    padding: 128px 0 82px;
  }

  .ktc-fields-section .ktc-container {
    width: min(100% - 46px, 1340px);
  }

  .ktc-fields-hero__inner {
    min-height: auto;
    padding: 0;
  }

  .ktc-fields-design__inner,
  .ktc-fields-construction__inner,
  .ktc-fields-mep__inner,
  .ktc-fields-safety__inner,
  .ktc-fields-people__inner,
  .ktc-fields-equipment__inner,
  .ktc-fields-system__inner {
    grid-template-columns: 1fr;
  }

  .ktc-fields-hero__title {
    text-align: left;
    justify-self: start;
  }

  .ktc-fields-hero__title h1,
  .ktc-fields-hero__benefits h2 {
    text-align: left;
  }

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

  .ktc-fields-benefit:nth-child(3) {
    border-left: none;
  }

  .ktc-fields-safety__photo,
  .ktc-fields-people__group,
  .ktc-fields-equipment__photo {
    margin-left: 0;
    margin-right: 0;
    min-height: 480px;
    border-radius: 34px;
  }

  .ktc-fields-side-nav {
    display: none;
  }
}

@media (max-width: 767px) {
  .ktc-fields-section {
    padding: 112px 0 64px;
  }

  .ktc-fields-section .ktc-container {
    width: min(100% - 34px, 1340px);
  }

  .ktc-fields-kicker {
    gap: 10px;
    font-size: .64rem;
    letter-spacing: .16em;
  }

  .ktc-fields-kicker span {
    width: 42px;
  }

  .ktc-fields-hero__title h1,
  .ktc-fields-section h2,
  .ktc-fields-cta__inner h2 {
    font-size: clamp(2.45rem, 13vw, 4rem);
  }

  .ktc-fields-benefit-grid,
  .ktc-fields-feature-grid {
    grid-template-columns: 1fr;
  }

  .ktc-fields-benefit {
    border-left: none;
    border-bottom: 1px solid rgba(255,255,255,.22);
  }

  .ktc-fields-process {
    padding: 24px;
  }

  .ktc-fields-process article {
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 4px 16px;
  }

  .ktc-fields-process article span {
    width: 50px;
    height: 50px;
  }

  .ktc-fields-process__line {
    display: none;
  }

  .ktc-fields-certs article {
    grid-template-columns: 1fr;
    grid-template-areas:
      "icon"
      "title"
      "desc";
  }

  .ktc-fields-cta__actions {
    display: grid;
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-ktc-fields-reveal] *,
  [data-ktc-fields-reveal] {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    animation: none !important;
    transition: none !important;
  }
}


/* v324: Global UTM Hanzel spacing discipline for fields page */
body .ktc-fields-section h1,
body .ktc-fields-section h2 {
  font-family: "UTM Hanzel", Montserrat, Inter, Arial, sans-serif !important;
  font-kerning: none !important;
  font-feature-settings: "kern" 0 !important;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: .052em !important;
  word-spacing: .18em !important;
  line-height: 1.14 !important;
}

/* v325: reduce only word spacing on large UTM Hanzel titles */
body .ktc-fields-section h1,
body .ktc-fields-section h2 {
  word-spacing: .12em !important;
}


/* KTC156: chỉ bật popup video cho nút Play, không thay đổi khung ảnh gốc */
body.ktc-about-video-open {
  overflow: hidden !important;
}

.ktc-fields-video span[data-ktc-about-video-open] {
  cursor: pointer;
}

.ktc-fields-video-modal[hidden] {
  display: none !important;
}

.ktc-fields-video-modal {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(18px, 3vw, 44px);
  box-sizing: border-box;
  overflow: visible !important;
}

.ktc-fields-video-modal .ktc-about-video-modal__backdrop {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 42%, rgba(32, 45, 64, 0.34), rgba(0, 0, 0, 0.80) 58%, rgba(0, 0, 0, 0.90) 100%);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  opacity: 0;
  animation: ktcFieldsVideoFadeIn .28s ease forwards;
}

.ktc-fields-video-modal .ktc-about-video-modal__dialog {
  position: relative;
  z-index: 2;
  width: min(1280px, 92vw) !important;
  max-width: 92vw !important;
  aspect-ratio: 16 / 9 !important;
  max-height: 82vh !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  transform: translate3d(0, 24px, 0) scale(0.975);
  opacity: 0;
  animation: ktcFieldsVideoZoomIn .34s cubic-bezier(.22,.61,.36,1) .06s forwards;
}

.ktc-fields-video-modal .ktc-about-video-modal__dialog::before {
  display: none !important;
}

.ktc-fields-video-modal .ktc-about-video-modal__frame {
  position: absolute !important;
  inset: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.ktc-fields-video-modal .ktc-about-video-modal__frame iframe,
.ktc-fields-video-modal .ktc-about-video-modal__video,
.ktc-fields-video-modal .ktc-about-video-modal__frame video {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  display: block !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #000 !important;
  transform: none !important;
  box-shadow: 0 34px 92px rgba(0, 0, 0, 0.58), 0 0 0 1px rgba(255, 255, 255, 0.10) !important;
}

.ktc-fields-video-modal .ktc-about-video-modal__frame iframe {
  pointer-events: none !important;
}

.ktc-fields-video-modal .ktc-about-video-modal__close,
.ktc-fields-video-modal .ktc-about-video-modal__close:hover,
.ktc-fields-video-modal .ktc-about-video-modal__close:focus,
.ktc-fields-video-modal .ktc-about-video-modal__close:active {
  -webkit-appearance: none !important;
  appearance: none !important;
  position: absolute !important;
  top: -24px !important;
  right: -24px !important;
  z-index: 10 !important;
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.50) !important;
  border-radius: 999px !important;
  background: rgba(8, 15, 28, 0.78) !important;
  color: #fff !important;
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.26) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  overflow: hidden !important;
  transition: transform .24s ease, background .24s ease, border-color .24s ease !important;
}

.ktc-fields-video-modal .ktc-about-video-modal__close:hover {
  background: rgba(18, 28, 46, 0.90) !important;
  border-color: rgba(226, 176, 64, 0.82) !important;
  transform: scale(1.05) rotate(90deg) !important;
}

.ktc-fields-video-modal .ktc-about-video-modal__close:focus-visible {
  outline: 2px solid rgba(226, 176, 64, 0.82) !important;
  outline-offset: 5px !important;
}

.ktc-fields-video-modal .ktc-about-video-modal__close span {
  position: absolute;
  width: 22px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  box-shadow: 0 0 12px rgba(255, 255, 255, 0.2);
}

.ktc-fields-video-modal .ktc-about-video-modal__close span:first-child {
  transform: rotate(45deg);
}

.ktc-fields-video-modal .ktc-about-video-modal__close span:last-child {
  transform: rotate(-45deg);
}

@keyframes ktcFieldsVideoFadeIn {
  to { opacity: 1; }
}

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

@media (max-width: 767px) {
  .ktc-fields-video-modal {
    padding: 14px !important;
  }

  .ktc-fields-video-modal .ktc-about-video-modal__dialog {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    max-height: 76vh !important;
  }

  .ktc-fields-video-modal .ktc-about-video-modal__video,
  .ktc-fields-video-modal .ktc-about-video-modal__frame video,
  .ktc-fields-video-modal .ktc-about-video-modal__frame iframe {
    border-radius: 12px !important;
  }

  .ktc-fields-video-modal .ktc-about-video-modal__close,
  .ktc-fields-video-modal .ktc-about-video-modal__close:hover,
  .ktc-fields-video-modal .ktc-about-video-modal__close:focus,
  .ktc-fields-video-modal .ktc-about-video-modal__close:active {
    top: -18px !important;
    right: -8px !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
  }
}

/* KTC157 - refine Section Hệ thống quản lý with new background and matching text colors */
.ktc-fields-system__copy h2 {
  color: #ffffff;
  text-shadow: 0 10px 28px rgba(4, 23, 46, .28);
}

.ktc-fields-system__copy h2 strong {
  color: #ffd56a;
}

.ktc-fields-system__copy p {
  color: rgba(255,255,255,.92);
  text-shadow: 0 8px 22px rgba(4, 23, 46, .20);
}

.ktc-fields-certs article div {
  background: linear-gradient(135deg, #e6f3ff, #ffffff);
  box-shadow: inset 0 0 0 1px rgba(12, 103, 196, .08);
}


/* KTC158 - use image icon for ISO cards */
.ktc-fields-certs article div img {
  display: block;
  width: 34px;
  height: 34px;
  object-fit: contain;
}

/* KTC159 - sync all right-side numbered section navigation to homepage style */
.ktc-section-index,
.ktc-fields-side-nav,
.ktc-sustainability-side-nav {
  position: fixed !important;
  right: 18px !important;
  top: 50% !important;
  z-index: 99999 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 12px !important;
  transform: translateY(-50%) !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.ktc-section-index::before,
.ktc-fields-side-nav::before,
.ktc-sustainability-side-nav::before {
  content: "" !important;
  position: absolute !important;
  top: 8px !important;
  bottom: 8px !important;
  left: 50% !important;
  width: 1px !important;
  height: auto !important;
  transform: translateX(-50%) !important;
  background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.26), rgba(255,255,255,0)) !important;
  pointer-events: none !important;
  opacity: 1 !important;
}

.ktc-section-index__item,
.ktc-section-index__item:hover,
.ktc-section-index__item:focus,
.ktc-section-index__item:active,
.ktc-fields-side-nav a,
.ktc-fields-side-nav a:hover,
.ktc-fields-side-nav a:focus,
.ktc-fields-side-nav a:active,
.ktc-sustainability-side-nav a,
.ktc-sustainability-side-nav a:hover,
.ktc-sustainability-side-nav a:focus,
.ktc-sustainability-side-nav a:active {
  all: unset;
  box-sizing: border-box !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  min-height: 30px !important;
  display: grid !important;
  place-items: center !important;
  cursor: pointer !important;
  position: relative !important;
  color: rgba(255,255,255,.94) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: .08em !important;
  font-family: Arial, Helvetica, sans-serif !important;
  text-align: center !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  transition: color .28s ease, transform .28s ease !important;
}

.ktc-section-index__item span,
.ktc-fields-side-nav a span,
.ktc-sustainability-side-nav a span,
.ktc-section-index__item.is-active span,
.ktc-fields-side-nav a.is-active span,
.ktc-sustainability-side-nav a.is-active span {
  position: relative !important;
  z-index: 2 !important;
  display: inline !important;
  color: inherit !important;
  font: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  text-shadow:
    -0.6px -0.6px 0 #062b63,
     0.6px -0.6px 0 #062b63,
    -0.6px  0.6px 0 #062b63,
     0.6px  0.6px 0 #062b63 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.ktc-fields-side-nav a span::after,
.ktc-sustainability-side-nav a span::after {
  display: none !important;
  content: none !important;
}

.ktc-section-index__item::before,
.ktc-fields-side-nav a::before,
.ktc-sustainability-side-nav a::before {
  content: "" !important;
  position: absolute !important;
  inset: 3px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  opacity: 0 !important;
  transform: scale(.72) !important;
  transition: opacity .28s ease, transform .28s ease !important;
}

.ktc-section-index__item::after,
.ktc-fields-side-nav a::after,
.ktc-sustainability-side-nav a::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 1px !important;
  width: 10px !important;
  height: 2px !important;
  border-radius: 999px !important;
  background: #ff332a !important;
  opacity: 0 !important;
  transform: translateX(-50%) scaleX(.45) !important;
  transition: opacity .28s ease, transform .28s ease !important;
}

.ktc-section-index__item:hover,
.ktc-section-index__item:focus-visible,
.ktc-fields-side-nav a:hover,
.ktc-fields-side-nav a:focus-visible,
.ktc-sustainability-side-nav a:hover,
.ktc-sustainability-side-nav a:focus-visible {
  color: #fff !important;
  transform: translateX(-2px) !important;
}

.ktc-section-index__item:hover::before,
.ktc-section-index__item:focus-visible::before,
.ktc-section-index__item.is-active::before,
.ktc-fields-side-nav a:hover::before,
.ktc-fields-side-nav a:focus-visible::before,
.ktc-fields-side-nav a.is-active::before,
.ktc-sustainability-side-nav a:hover::before,
.ktc-sustainability-side-nav a:focus-visible::before,
.ktc-sustainability-side-nav a.is-active::before {
  opacity: 1 !important;
  transform: scale(1) !important;
}

.ktc-section-index__item.is-active,
.ktc-fields-side-nav a.is-active,
.ktc-sustainability-side-nav a.is-active {
  color: #fff !important;
  transform: translateX(-3px) scale(1.08) !important;
}

.ktc-section-index__item.is-active::after,
.ktc-fields-side-nav a.is-active::after,
.ktc-sustainability-side-nav a.is-active::after {
  opacity: 1 !important;
  transform: translateX(-50%) scaleX(1) !important;
}

@media (max-width: 767px) {
  .ktc-section-index,
  .ktc-fields-side-nav,
  .ktc-sustainability-side-nav {
    right: 8px !important;
    gap: 8px !important;
  }

  .ktc-section-index__item,
  .ktc-fields-side-nav a,
  .ktc-sustainability-side-nav a {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    min-height: 26px !important;
    font-size: 11px !important;
  }
}

/* v210: mobile section titles = 25px; page hero title is untouched */
@media (max-width: 767px) {
  body.ktc-construction-body .ktc-fields-section h2,
  body.ktc-construction-body .ktc-fields-hero__benefits h2,
  body.ktc-construction-body .ktc-fields-cta__inner h2 {
    font-size: 25px !important;
  }

  body.ktc-construction-body .ktc-fields-section h2 strong,
  body.ktc-construction-body .ktc-fields-cta__inner h2 strong {
    font-size: inherit !important;
  }
}


/* KTC229: sync mobile content-section headings with homepage section heading size; page hero title untouched */
@media (max-width: 767px) {
  body.ktc-construction-body .ktc-fields-section h2,
  body.ktc-construction-body .ktc-fields-hero__benefits h2,
  body.ktc-construction-body .ktc-fields-cta__inner h2 {
    font-size: 25px !important;
    line-height: 1.14 !important;
  }

  body.ktc-construction-body .ktc-fields-section h2 strong,
  body.ktc-construction-body .ktc-fields-cta__inner h2 strong {
    font-size: inherit !important;
    line-height: inherit !important;
  }
}

/* KTC304: mobile spacing for Construction D&B page sections, excluding hero title section */
@media (max-width: 767px) {
  body.ktc-construction-body .ktc-fields-section:not(.ktc-fields-hero) {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }

  body.ktc-construction-body .ktc-fields-hero {
    padding-top: 112px !important;
    padding-bottom: 64px !important;
  }
}
