:root {
  --gts-bg: #030706;
  --gts-bg-2: #07100d;
  --gts-bg-3: #0b1511;
  --gts-panel: rgba(8, 15, 12, 0.82);
  --gts-panel-2: rgba(12, 22, 17, 0.88);
  --gts-card: rgba(10, 18, 15, 0.72);
  --gts-text: #f6fbf6;
  --gts-soft: #d9e5da;
  --gts-muted: #9aa99d;
  --gts-muted-2: #718074;
  --gts-green: #67f65d;
  --gts-green-2: #2fcf54;
  --gts-green-dark: #0a331b;
  --gts-amber: #f2c166;
  --gts-red: #ff4545;
  --gts-line: rgba(236, 255, 241, 0.11);
  --gts-line-strong: rgba(103, 246, 93, 0.36);
  --gts-display: "Sora", "IBM Plex Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  --gts-body: "IBM Plex Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  --gts-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --gts-radius: 18px;
  --gts-radius-lg: 32px;
  --gts-shell: 1320px;
  --gts-section: clamp(84px, 9vw, 144px);
  --gts-shadow: 0 28px 100px rgba(0, 0, 0, .42);
  --gts-shadow-soft: 0 18px 60px rgba(0, 0, 0, .28);
}

.gts-system {
  color: var(--gts-text);
  min-height: 100vh;
  overflow: clip;
  font-family: var(--gts-body);
  font-size: 16px;
  background:
    radial-gradient(circle at 72% 10%, rgba(103, 246, 93, .12), transparent 26%),
    radial-gradient(circle at 18% 32%, rgba(103, 246, 93, .055), transparent 34%),
    linear-gradient(180deg, #020403 0%, #06100c 38%, #030706 100%);
}
.gts-system, .gts-system * { box-sizing: border-box; }
.gts-site-body { display: block; position: relative; isolation: isolate; }
.gts-industrial-page { padding-top: clamp(28px, 4vw, 64px); padding-bottom: clamp(44px, 6vw, 96px); }
.gts-system img { display: block; max-width: 100%; }
.gts-system a { color: inherit; text-decoration: none; }
.gts-system :focus-visible { outline: 3px solid rgba(103,246,93,.78); outline-offset: 4px; }
.gts-system h1,
.gts-system h2,
.gts-system h3,
.gts-system h4 {
  margin: 0;
  color: var(--gts-text);
  font-family: var(--gts-display);
  font-weight: 800;
  letter-spacing: -.055em;
}
.gts-system p { margin: 0; }
.gts-shell { width: min(var(--gts-shell), calc(100% - 56px)); margin-inline: auto; }
.gts-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--gts-mono);
  font-size: 11px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-weight: 700;
  color: var(--gts-green);
}
.gts-kicker::before {
  content: "";
  width: 26px;
  height: 1px;
  background: currentColor;
  opacity: .74;
}
.gts-lede { color: var(--gts-soft); font-size: clamp(17px, 1.35vw, 20px); line-height: 1.7; max-width: 720px; }

/* Hero */
.gts-hero {
  position: relative;
  isolation: isolate;
  min-height: 900px;
  padding: clamp(78px, 7vw, 116px) 0 0;
  background-image:
    linear-gradient(90deg, rgba(3,7,6,.96) 0%, rgba(3,7,6,.84) 34%, rgba(3,7,6,.38) 64%, rgba(3,7,6,.68) 100%),
    linear-gradient(180deg, rgba(3,7,6,.20), rgba(3,7,6,.96) 96%),
    var(--gts-hero-image);
  background-size: cover;
  background-position: center;
}
.gts-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background-image:
    linear-gradient(rgba(103,246,93,.052) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103,246,93,.042) 1px, transparent 1px);
  background-size: 86px 86px;
  mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 66%, transparent 100%);
  opacity: .62;
}
.gts-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 260px;
  z-index: -1;
  background: linear-gradient(180deg, transparent, var(--gts-bg) 74%);
}
.gts-hero__inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.03fr) minmax(390px, .72fr);
  gap: clamp(36px, 5vw, 74px);
  align-items: center;
  min-height: 610px;
}
.gts-hero__copy { max-width: 870px; }
.gts-hero h1 {
  margin-top: 20px;
  max-width: 900px;
  font-size: clamp(64px, 6.9vw, 114px);
  line-height: .88;
  letter-spacing: -.075em;
}
.gts-hero h1 span,
.gts-cta__inner h2 span { color: var(--gts-green); text-shadow: 0 0 36px rgba(103,246,93,.18); }
.gts-hero .gts-lede { margin-top: 26px; }
.gts-actions { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 34px; }
.gts-hero__badges { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.gts-hero__badges span {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 12px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 999px;
  background: rgba(0,0,0,.28);
  color: rgba(246,251,246,.76);
  font-family: var(--gts-mono);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .09em;
}
.gts-command-panel {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 30px;
  background:
    radial-gradient(circle at var(--gts-x, 80%) var(--gts-y, 10%), rgba(103,246,93,.16), transparent 34%),
    linear-gradient(180deg, rgba(11,21,17,.86), rgba(5,10,8,.78));
  backdrop-filter: blur(16px);
  box-shadow: var(--gts-shadow);
}
.gts-command-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 32px 32px;
  mask-image: linear-gradient(180deg, #000, transparent 82%);
  opacity: .35;
  pointer-events: none;
}
.gts-command-panel figure { position: relative; margin: 12px; overflow: hidden; border-radius: 22px; min-height: 292px; }
.gts-command-panel figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 34%, rgba(0,0,0,.72)); }
.gts-command-panel figure img { width: 100%; height: 292px; object-fit: cover; transform: scale(1.02); }
.gts-command-panel figcaption { position: absolute; left: 20px; right: 20px; bottom: 18px; z-index: 2; }
.gts-command-panel figcaption span,
.gts-command-panel__status em,
.gts-command-stats span {
  display: block;
  font-family: var(--gts-mono);
  font-size: 10px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: .13em;
  color: var(--gts-muted);
}
.gts-command-panel figcaption strong { display: block; margin-top: 8px; font-family: var(--gts-display); font-size: 24px; line-height: 1.05; letter-spacing: -.04em; }
.gts-command-panel__body { position: relative; z-index: 2; padding: 8px 22px 24px; }
.gts-command-panel__status { display: grid; grid-template-columns: 14px 1fr; column-gap: 12px; align-items: center; padding: 15px; border-radius: 16px; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.08); }
.gts-command-panel__status > span { width: 10px; height: 10px; border-radius: 50%; background: var(--gts-green); box-shadow: 0 0 24px rgba(103,246,93,.78); }
.gts-command-panel__status strong { font-family: var(--gts-display); font-size: 17px; letter-spacing: -.035em; }
.gts-command-panel__status em { grid-column: 2; margin-top: 5px; font-style: normal; }
.gts-command-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 12px; }
.gts-command-stats article { padding: 16px 12px; border-radius: 14px; border: 1px solid rgba(255,255,255,.08); background: rgba(0,0,0,.22); }
.gts-command-stats strong { display: block; font-family: var(--gts-display); font-size: 28px; line-height: 1; letter-spacing: -.055em; }
.gts-command-stats span { margin-top: 8px; line-height: 1.35; text-transform: none; letter-spacing: 0; }
.gts-hero-rail {
  position: relative;
  z-index: 4;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: clamp(44px, 5vw, 80px);
  transform: translateY(50%);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 22px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(10,19,15,.92), rgba(6,13,10,.88));
  box-shadow: var(--gts-shadow-soft);
  backdrop-filter: blur(16px);
}
.gts-hero-rail article { min-height: 138px; padding: 25px; border-right: 1px solid rgba(255,255,255,.08); }
.gts-hero-rail article:last-child { border-right: 0; }
.gts-hero-rail span,
.gts-mini-icon,
.gts-icon { font-family: var(--gts-mono); color: var(--gts-green); font-weight: 700; }
.gts-hero-rail span { font-size: 11px; letter-spacing: .16em; }
.gts-hero-rail strong { display: block; margin-top: 14px; font-family: var(--gts-display); font-size: 22px; line-height: 1; letter-spacing: -.04em; }
.gts-hero-rail p { margin-top: 10px; color: var(--gts-muted); line-height: 1.55; font-size: 14px; }

/* Sections */
.gts-section { padding-block: var(--gts-section); position: relative; }
.gts-section--proof { padding-top: clamp(88px, 8vw, 120px); padding-bottom: 0; }
.gts-section__head { display: grid; gap: 18px; margin-bottom: 36px; }
.gts-section__head--split { grid-template-columns: minmax(0, .9fr) minmax(320px, .55fr); align-items: end; justify-content: space-between; }
.gts-section__head h2 { font-size: clamp(42px, 4.8vw, 76px); line-height: .94; }
.gts-section__head > p,
.gts-section__head--split > p { color: var(--gts-muted); line-height: 1.7; font-size: 17px; max-width: 610px; }
.gts-section__head .gts-btn { justify-self: end; align-self: end; }

.gts-proof-strip {
  display: grid;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.10);
  overflow: hidden;
  background:
    radial-gradient(circle at var(--gts-x, 80%) var(--gts-y, 10%), rgba(103,246,93,.10), transparent 28%),
    linear-gradient(180deg, rgba(9,18,14,.80), rgba(6,12,10,.76));
  box-shadow: var(--gts-shadow-soft);
}
.gts-proof-strip--four { grid-template-columns: repeat(4, 1fr); }
.gts-proof-strip article { padding: 28px; min-height: 172px; border-right: 1px solid rgba(255,255,255,.08); }
.gts-proof-strip article:last-child { border-right: 0; }
.gts-mini-icon { display: inline-flex; margin-bottom: 22px; font-size: 11px; letter-spacing: .15em; }
.gts-proof-strip strong { display: block; font-family: var(--gts-display); font-size: 24px; line-height: 1; letter-spacing: -.04em; }
.gts-proof-strip p { margin-top: 12px; color: var(--gts-muted); line-height: 1.55; font-size: 14px; }

/* Featured solution */
.gts-section--feature { padding-top: clamp(90px, 10vw, 150px); }
.gts-feature {
  display: grid;
  grid-template-columns: minmax(360px, .78fr) minmax(0, 1.1fr);
  gap: 20px;
  min-height: 610px;
  padding: clamp(18px, 2vw, 24px);
  border-radius: 34px;
  border: 1px solid rgba(255,255,255,.11);
  background:
    radial-gradient(circle at var(--gts-x, 74%) var(--gts-y, 24%), rgba(103,246,93,.14), transparent 28%),
    linear-gradient(135deg, rgba(12,22,17,.90), rgba(4,9,7,.84));
  box-shadow: var(--gts-shadow);
  overflow: hidden;
  position: relative;
}
.gts-feature::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(103,246,93,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103,246,93,.035) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(90deg, transparent 0%, #000 45%, transparent 100%);
  opacity: .7;
  pointer-events: none;
}
.gts-feature > * { position: relative; z-index: 1; }
.gts-feature__copy { padding: clamp(26px, 4vw, 58px); align-self: center; }
.gts-feature__copy h2 { margin-top: 20px; font-size: clamp(42px, 4.9vw, 78px); line-height: .93; max-width: 620px; }
.gts-feature__copy p { margin-top: 22px; color: var(--gts-muted); line-height: 1.7; max-width: 560px; }
.gts-check-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; padding: 0; margin: 28px 0 28px; list-style: none; }
.gts-check-list li { position: relative; padding-left: 25px; color: var(--gts-soft); font-size: 14px; line-height: 1.45; }
.gts-check-list li::before { content: ""; position: absolute; left: 0; top: .55em; width: 9px; height: 9px; border-radius: 50%; background: var(--gts-green); box-shadow: 0 0 18px rgba(103,246,93,.55); }
.gts-feature__media { position: relative; min-height: 560px; }
.gts-feature__media figure { position: absolute; inset: 0; margin: 0; overflow: hidden; border-radius: 26px; border: 1px solid rgba(255,255,255,.10); }
.gts-feature__media figure::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.78)); }
.gts-feature__media img { width: 100%; height: 100%; object-fit: cover; }
.gts-feature__media figcaption { position: absolute; left: 24px; right: 24px; bottom: 22px; z-index: 2; }
.gts-feature__media figcaption span { display: block; font-family: var(--gts-mono); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--gts-green); }
.gts-feature__media figcaption strong { display: block; margin-top: 8px; font-family: var(--gts-display); font-size: clamp(24px, 2.4vw, 34px); line-height: 1; letter-spacing: -.04em; }
.gts-safety-dashboard { position: absolute; z-index: 3; top: 22px; right: 22px; width: min(320px, calc(100% - 44px)); display: grid; gap: 10px; }
.gts-safety-dashboard article { padding: 18px; border-radius: 16px; border: 1px solid rgba(255,255,255,.12); background: rgba(3,7,6,.76); backdrop-filter: blur(14px); box-shadow: 0 18px 48px rgba(0,0,0,.28); }
.gts-safety-dashboard span { font-family: var(--gts-mono); font-size: 10px; letter-spacing: .16em; color: var(--gts-green); }
.gts-safety-dashboard strong { display: block; margin-top: 8px; font-family: var(--gts-display); font-size: 18px; letter-spacing: -.03em; }

/* Cards */
.gts-card-grid,
.gts-project-grid,
.gts-team-grid { display: grid; gap: 18px; }
.gts-card-grid--solutions,
.gts-card-grid--industries { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gts-card {
  min-height: 270px;
  padding: 28px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 22px;
  background:
    radial-gradient(circle at var(--gts-x, 88%) var(--gts-y, 12%), rgba(103,246,93,.12), transparent 30%),
    linear-gradient(180deg, rgba(11,20,16,.76), rgba(6,12,10,.82));
  box-shadow: 0 12px 44px rgba(0,0,0,.20);
  transition: transform .24s ease, border-color .24s ease, background .24s ease;
}
.gts-card:hover,
.gts-project-card:hover,
.gts-industry-card:hover,
.gts-team-card:hover { transform: translateY(-5px); border-color: rgba(103,246,93,.42); }
.gts-icon { display: inline-flex; align-items: center; justify-content: center; }
.gts-icon--large {
  min-width: 44px;
  min-height: 32px;
  width: max-content;
  padding: 0 10px;
  margin-bottom: 24px;
  border: 1px solid rgba(103,246,93,.34);
  border-radius: 10px;
  background: rgba(103,246,93,.08);
  font-size: 11px;
  letter-spacing: .1em;
}
.gts-card h3,
.gts-project-card h3,
.gts-team-card h3,
.gts-process h3,
.gts-contact-card h3,
.gts-industry-card h3 { margin: 0 0 14px; font-size: 25px; line-height: 1.05; }
.gts-card p,
.gts-project-card p,
.gts-team-card p,
.gts-industry-card p,
.gts-process p,
.gts-split p { color: var(--gts-muted); line-height: 1.65; }
.gts-card a,
.gts-project-card a,
.gts-team-card a { color: var(--gts-green); font-family: var(--gts-mono); font-size: 11px; letter-spacing: .13em; text-transform: uppercase; font-weight: 700; }

/* Projects */
.gts-project-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); }
.gts-project-card {
  grid-column: span 4;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(10,18,15,.86), rgba(6,12,10,.88));
  box-shadow: var(--gts-shadow-soft);
  transition: transform .24s ease, border-color .24s ease;
}
.gts-project-card--featured { grid-column: span 5; }
.gts-project-card:nth-child(2) { grid-column: span 4; }
.gts-project-card:nth-child(3) { grid-column: span 3; }
.gts-project-card img { width: 100%; height: 270px; object-fit: cover; filter: saturate(1.02) contrast(1.02); }
.gts-project-card--featured img { height: 330px; }
.gts-project-card > div { padding: 26px; }
.gts-project-card .gts-kicker { color: var(--gts-muted); }
.gts-project-card .gts-kicker::before { background: var(--gts-green); }
.gts-chip-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 24px; }
.gts-chip-row span { display: inline-flex; align-items: center; min-height: 30px; padding: 0 10px; border-radius: 999px; border: 1px solid rgba(255,255,255,.10); color: var(--gts-soft); font-size: 11px; background: rgba(255,255,255,.03); }

/* News */
.gts-section--latest { padding-top: 20px; }
.gts-news-list { display: grid; gap: 14px; }
.gts-news-item {
  min-height: 112px;
  display: grid;
  grid-template-columns: 156px 150px 1fr 124px 30px;
  gap: 18px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  background:
    radial-gradient(circle at var(--gts-x, 88%) var(--gts-y, 10%), rgba(103,246,93,.10), transparent 28%),
    rgba(8,16,13,.82);
  transition: transform .24s ease, border-color .24s ease;
}
.gts-news-item:hover { transform: translateX(4px); border-color: rgba(103,246,93,.42); }
.gts-news-item img { width: 156px; height: 84px; object-fit: cover; border-radius: 14px; background: rgba(255,255,255,.04); }
.gts-news-item span { color: var(--gts-green); font-family: var(--gts-mono); font-size: 10px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.gts-news-item strong { font-family: var(--gts-display); font-size: 21px; line-height: 1.1; letter-spacing: -.04em; }
.gts-news-item em { color: var(--gts-muted); font-style: normal; font-family: var(--gts-mono); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.gts-news-item b { color: var(--gts-green); font-size: 20px; }

/* Other pages */
.gts-team-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.gts-team-card,
.gts-industry-card { overflow: hidden; border: 1px solid rgba(255,255,255,.10); border-radius: 22px; background: rgba(8,15,12,.78); transition: transform .24s ease, border-color .24s ease; }
.gts-team-card img { width: 100%; height: 250px; object-fit: cover; }
.gts-team-card div,
.gts-industry-card div { padding: 24px; }
.gts-industry-card img { width: 100%; height: 230px; object-fit: cover; }
.gts-industry-card span { color: var(--gts-green); font-family: var(--gts-mono); font-size: 11px; letter-spacing: .13em; text-transform: uppercase; font-weight: 700; }
.gts-process { display: grid; grid-template-columns: 1.15fr repeat(4, 1fr); gap: 14px; padding: 16px; border: 1px solid rgba(255,255,255,.10); border-radius: 24px; background: rgba(8,15,12,.74); }
.gts-process > div,
.gts-process article { padding: 24px; border-radius: 18px; background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.06); }
.gts-process article span { color: var(--gts-green); font-family: var(--gts-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; font-weight: 700; }
.gts-split { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; padding: 28px; border: 1px solid rgba(255,255,255,.10); border-radius: 24px; background: rgba(8,15,12,.74); }
.gts-split > div { padding: clamp(18px, 4vw, 42px); }
.gts-values { display: grid; gap: 14px; }
.gts-values article { padding: 24px; border-radius: 18px; background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.06); }

/* Contact */
.gts-contact-layout { display: grid; grid-template-columns: 1.2fr .8fr; gap: 18px; }
.gts-form,
.gts-contact-card { padding: clamp(26px,4vw,48px); border: 1px solid rgba(255,255,255,.10); border-radius: 26px; background: rgba(8,15,12,.80); box-shadow: var(--gts-shadow-soft); }
.gts-form h2 { font-size: clamp(38px,4.4vw,68px); line-height: .96; margin: 18px 0 30px; }
.gts-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.gts-form input,
.gts-form select,
.gts-form textarea,
.gts-subscribe input { width: 100%; min-height: 54px; border-radius: 14px; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.045); color: var(--gts-text); padding: 0 16px; outline: none; margin-bottom: 12px; }
.gts-form textarea { min-height: 160px; padding-top: 16px; resize: vertical; }
.gts-form small { display: block; margin-top: 16px; color: var(--gts-muted); }
.gts-contact-card a { color: var(--gts-green); font-weight: 700; }
.gts-subscribe { margin-top: 28px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.09); }
.gts-subscribe button { width: 100%; min-height: 48px; border: 0; border-radius: 999px; background: var(--gts-green); color: #071008; font-weight: 700; cursor: pointer; }

/* CTA + Footer */
.gts-cta { padding-block: clamp(76px, 8vw, 132px); }
.gts-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .52fr) auto;
  align-items: center;
  gap: 34px;
  padding: clamp(36px, 5vw, 62px);
  border-radius: 30px;
  border: 1px solid rgba(103,246,93,.30);
  background:
    radial-gradient(circle at var(--gts-x, 62%) var(--gts-y, 50%), rgba(103,246,93,.24), transparent 34%),
    linear-gradient(135deg, rgba(13,44,21,.90), rgba(5,10,8,.94));
  box-shadow: var(--gts-shadow);
  overflow: hidden;
  position: relative;
}
.gts-cta__inner::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px); background-size: 44px 44px; opacity: .23; }
.gts-cta__inner > * { position: relative; z-index: 1; }
.gts-cta__inner h2 { margin-top: 16px; font-size: clamp(44px, 5.2vw, 84px); line-height: .92; }
.gts-cta p { color: var(--gts-soft); line-height: 1.65; }
@media (prefers-reduced-motion: reduce) {
  .gts-system *, .gts-system *::before, .gts-system *::after { transition-duration: .001ms !important; animation-duration: .001ms !important; scroll-behavior: auto !important; }
}


/* Partner video */
.gts-section--partner-video {
  padding-top: clamp(34px, 4vw, 66px);
  padding-bottom: clamp(76px, 8vw, 128px);
}
.gts-video-feature {
  display: grid;
  grid-template-columns: minmax(320px, .72fr) minmax(0, 1.18fr);
  gap: clamp(22px, 3vw, 38px);
  align-items: stretch;
  padding: clamp(20px, 2.4vw, 30px);
  border: 1px solid rgba(255,255,255,.105);
  border-radius: 30px;
  background:
    radial-gradient(circle at var(--gts-x, 74%) var(--gts-y, 18%), rgba(103,246,93,.12), transparent 34%),
    linear-gradient(135deg, rgba(11,22,17,.88), rgba(3,7,6,.76));
  box-shadow: var(--gts-shadow-soft);
  position: relative;
  overflow: hidden;
}
.gts-video-feature::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.044) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: .18;
  pointer-events: none;
}
.gts-video-feature > * { position: relative; z-index: 1; }
.gts-video-feature__copy {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 420px;
  padding: clamp(14px, 2vw, 22px);
}
.gts-video-feature__copy h2 {
  margin-top: 18px;
  max-width: 620px;
  font-size: clamp(38px, 4.4vw, 76px);
  line-height: .94;
  letter-spacing: -.07em;
}
.gts-video-feature__copy > p:not(.gts-kicker) {
  margin-top: 22px;
  max-width: 560px;
  color: var(--gts-soft);
  font-size: clamp(16px, 1.15vw, 19px);
  line-height: 1.72;
}
.gts-video-feature__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 32px;
}
.gts-video-feature__meta span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 11px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 999px;
  color: rgba(246,251,246,.70);
  background: rgba(0,0,0,.22);
  font-family: var(--gts-mono);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.gts-video-frame {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 24px;
  background: rgba(2,5,4,.74);
  min-height: 420px;
  box-shadow: 0 24px 70px rgba(0,0,0,.34);
}
.gts-video-frame__bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 46px;
  padding: 0 16px;
  border-bottom: 1px solid rgba(255,255,255,.10);
  background: rgba(3,7,6,.88);
  color: var(--gts-green);
  font-family: var(--gts-mono);
  font-size: 10px;
  line-height: 1;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.gts-video-frame__bar em {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  color: #061006;
  background: var(--gts-green);
  font-style: normal;
  font-weight: 800;
}
.gts-partner-video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  min-height: 360px;
  max-height: 620px;
  object-fit: cover;
  background: #020403;
}
.gts-video-frame__caption {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  padding: 16px 18px 18px;
  border-top: 1px solid rgba(255,255,255,.09);
  background: linear-gradient(90deg, rgba(8,18,13,.94), rgba(5,11,8,.86));
}
.gts-video-frame__caption strong {
  font-family: var(--gts-display);
  font-size: 20px;
  line-height: 1;
  letter-spacing: -.04em;
}
.gts-video-frame__caption span {
  color: var(--gts-muted);
  font-family: var(--gts-mono);
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (max-width: 1180px) {
  .gts-hero__inner,
  .gts-feature,
  .gts-cta__inner,
  .gts-contact-layout,
  .gts-split,
  .gts-process { grid-template-columns: 1fr; }
  .gts-hero { min-height: auto; padding-bottom: 92px; }
  .gts-hero__inner { min-height: auto; }
  .gts-command-panel { max-width: 720px; }
  .gts-hero-rail { grid-template-columns: repeat(2, minmax(0,1fr)); transform: none; margin-top: 42px; }
  .gts-hero-rail article:nth-child(2) { border-right: 0; }
  .gts-hero-rail article:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.08); }
  .gts-card-grid--solutions,
  .gts-card-grid--industries,
  .gts-team-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .gts-section__head,
  .gts-section__head--split { grid-template-columns: 1fr; }
  .gts-section__head .gts-btn { justify-self: start; }
  .gts-proof-strip--four { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .gts-proof-strip article:nth-child(2) { border-right: 0; }
  .gts-proof-strip article:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.08); }
  .gts-project-card,
  .gts-project-card--featured,
  .gts-project-card:nth-child(2),
  .gts-project-card:nth-child(3) { grid-column: span 6; }
  .gts-news-item { grid-template-columns: 120px 120px 1fr 100px 24px; }
  .gts-news-item img { width: 120px; }
}

@media (max-width: 900px) {
  .gts-shell { width: min(var(--gts-shell), calc(100% - 32px)); }
  .gts-hero { padding-top: 58px; }
  .gts-hero h1 { font-size: clamp(52px, 13vw, 86px); }
  .gts-command-stats { grid-template-columns: 1fr; }
  .gts-news-item { grid-template-columns: 92px 1fr 24px; }
  .gts-news-item img { width: 92px; height: 70px; grid-row: span 2; }
  .gts-news-item span,
  .gts-news-item em { font-size: 10px; }
  .gts-news-item b { grid-column: 3; grid-row: 1 / span 2; }
  .gts-feature__media { min-height: 480px; }
}

@media (max-width: 700px) {
  .gts-card-grid--solutions,
  .gts-card-grid--industries,
  .gts-team-grid,
  .gts-form-grid,
  .gts-check-list,
  .gts-proof-strip--four,
  .gts-hero-rail { grid-template-columns: 1fr; }
  .gts-hero-rail article,
  .gts-proof-strip article { border-right: 0 !important; border-bottom: 1px solid rgba(255,255,255,.08); }
  .gts-hero-rail article:last-child,
  .gts-proof-strip article:last-child { border-bottom: 0; }
  .gts-command-panel figure { min-height: 220px; }
  .gts-command-panel figure img { height: 220px; }
  .gts-section--proof { padding-top: 34px; }
  .gts-feature__copy,
  .gts-cta__inner { padding: 28px; }
  .gts-feature__media { min-height: 420px; }
  .gts-safety-dashboard { position: static; width: auto; margin-top: 12px; }
  .gts-feature__media figure { position: relative; min-height: 310px; }
  .gts-project-card,
  .gts-project-card--featured,
  .gts-project-card:nth-child(2),
  .gts-project-card:nth-child(3) { grid-column: 1 / -1; }
  .gts-project-card img,
  .gts-project-card--featured img { height: 240px; }
  .gts-news-item { grid-template-columns: 1fr 24px; }
  .gts-news-item img { width: 100%; height: 160px; grid-column: 1 / -1; grid-row: auto; }
  .gts-news-item b { grid-column: 2; grid-row: 2 / span 2; }
}


/* ==========================================================
   GTS v0.6.0 — Mono Industrial / Divi 5 Grid Refinement
   Direction: bespoke facility command-center, not SaaS template.
   ========================================================== */
:root {
  --gts-display: "Space Grotesk", "IBM Plex Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  --gts-body: "IBM Plex Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  --gts-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --gts-bg: #020504;
  --gts-bg-2: #06100b;
  --gts-oxide: #102018;
  --gts-panel: rgba(5, 10, 8, .82);
  --gts-panel-2: rgba(10, 19, 14, .86);
  --gts-text: #f3f7f2;
  --gts-soft: #c8d2cb;
  --gts-muted: #7f8d84;
  --gts-muted-2: #55635a;
  --gts-green: #65ff5c;
  --gts-green-2: #2cc94e;
  --gts-line: rgba(227, 255, 233, .10);
  --gts-line-strong: rgba(101, 255, 92, .42);
  --gts-radius: 10px;
  --gts-radius-lg: 18px;
  --gts-shell: 1280px;
  --gts-section: clamp(96px, 10vw, 160px);
}
.gts-system {
  background:
    radial-gradient(circle at 50% -5%, rgba(101,255,92,.10), transparent 28%),
    linear-gradient(rgba(101,255,92,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(101,255,92,.02) 1px, transparent 1px),
    linear-gradient(180deg, #010302 0%, #041008 42%, #020504 100%);
  background-size: auto, 92px 92px, 92px 92px, auto;
  font-feature-settings: "kern" 1, "liga" 1;
}
.gts-shell { width: min(var(--gts-shell), calc(100% - clamp(28px, 5vw, 72px))); }
.gts-system h1,
.gts-system h2,
.gts-system h3,
.gts-system h4 {
  font-family: var(--gts-display);
  font-weight: 700;
  letter-spacing: -.072em;
}
.gts-system p { font-family: var(--gts-body); }
.gts-kicker,
.gts-btn,
.gts-icon,
.gts-bento-index,
.gts-chip-row span,
.gts-panel-metrics span,
.gts-command-stats span,
.gts-command-panel figcaption span,
.gts-news-item span,
.gts-project-card .gts-kicker {
  font-family: var(--gts-mono) !important;
}
.gts-kicker {
  letter-spacing: .18em;
  color: var(--gts-green);
}
.gts-kicker::before { width: 34px; opacity: .9; }

/* Divi 5-friendly principle: the Code Module contains one shortcode; the plugin controls its own isolated CSS Grid. */
.gts-divi5-grid,
.gts-divi5-bento { display: grid; min-width: 0; }
.gts-divi5-grid > *,
.gts-divi5-bento > * { min-width: 0; }

.gts-btn {
  border-radius: 8px;
  min-height: 44px;
  letter-spacing: .15em;
  clip-path: polygon(0 0, calc(100% - 9px) 0, 100% 9px, 100% 100%, 9px 100%, 0 calc(100% - 9px));
}
.gts-btn--ghost {
  background: rgba(5, 10, 8, .76);
  border-color: rgba(255,255,255,.16);
}

/* Industrial hero: command-center composition instead of generic hero/card. */
.gts-hero--industrial {
  min-height: 940px;
  padding-top: clamp(74px, 7vw, 118px);
  background-image:
    linear-gradient(90deg, rgba(2,5,4,.98) 0%, rgba(2,5,4,.88) 34%, rgba(2,5,4,.38) 68%, rgba(2,5,4,.72) 100%),
    linear-gradient(180deg, rgba(2,5,4,.26), rgba(2,5,4,.94) 94%),
    var(--gts-hero-image);
}
.gts-industrial-scan {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, transparent 0, rgba(101,255,92,.08) 48%, transparent 52%) 0 0/100% 240px,
    radial-gradient(circle at 70% 28%, rgba(101,255,92,.17), transparent 18%);
  opacity: .46;
  mix-blend-mode: screen;
  animation: gts-scan 8s linear infinite;
}
@keyframes gts-scan { from { background-position: 0 -260px, 0 0; } to { background-position: 0 900px, 0 0; } }
.gts-hero__inner {
  grid-template-columns: minmax(0, .98fr) minmax(420px, .72fr);
  gap: clamp(44px, 7vw, 92px);
  align-items: center;
}
.gts-hero__copy {
  border-left: 1px solid rgba(101,255,92,.36);
  padding-left: clamp(18px, 2vw, 30px);
}
.gts-hero h1 {
  max-width: 860px;
  font-size: clamp(62px, 7.2vw, 124px);
  line-height: .86;
  letter-spacing: -.083em;
}
.gts-hero h1 span,
.gts-cta__inner h2 span {
  color: var(--gts-green);
  text-shadow: 0 0 1px #fff, 0 0 34px rgba(101,255,92,.25);
}
.gts-lede {
  max-width: 680px;
  color: rgba(221,231,224,.82);
}
.gts-hero__badges span {
  border-radius: 6px;
  background: rgba(0,0,0,.36);
  border-color: rgba(101,255,92,.15);
  color: rgba(223,240,226,.72);
}
.gts-command-panel--industrial {
  border-radius: 14px;
  border: 1px solid rgba(101,255,92,.35);
  background:
    linear-gradient(rgba(101,255,92,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(101,255,92,.028) 1px, transparent 1px),
    linear-gradient(180deg, rgba(10,22,15,.94), rgba(3,8,6,.88));
  background-size: 34px 34px, 34px 34px, auto;
  box-shadow: 0 30px 100px rgba(0,0,0,.52), 0 0 0 1px rgba(255,255,255,.03) inset;
  clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 20px 100%, 0 calc(100% - 20px));
}
.gts-panel-topline {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 14px 16px 0;
  font-family: var(--gts-mono);
  font-size: 10px;
  letter-spacing: .16em;
  color: var(--gts-green);
}
.gts-panel-topline em {
  font-style: normal;
  color: #061006;
  background: var(--gts-green);
  border-radius: 4px;
  padding: 2px 6px;
}
.gts-command-panel figure { padding: 16px; }
.gts-command-panel figure img { border-radius: 8px; filter: saturate(.82) contrast(1.08); }
.gts-command-panel figcaption {
  left: 28px;
  right: 28px;
  bottom: 30px;
  border-radius: 8px;
  background: rgba(2,5,4,.74);
  border: 1px solid rgba(255,255,255,.10);
}
.gts-command-panel__status {
  border-radius: 8px;
  background: rgba(101,255,92,.06);
  border: 1px solid rgba(101,255,92,.16);
}
.gts-command-stats article {
  border-radius: 8px;
  border-color: rgba(255,255,255,.09);
  background: rgba(0,0,0,.22);
}
.gts-panel-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-top: 12px;
}
.gts-panel-metrics span {
  min-height: 30px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.08);
  color: rgba(222,236,225,.68);
  font-size: 9px;
  letter-spacing: .13em;
  border-radius: 6px;
  background: rgba(0,0,0,.18);
}
.gts-hero-rail--bento {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin-top: -38px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid rgba(101,255,92,.17);
  background: rgba(4,12,8,.74);
  backdrop-filter: blur(16px);
}
.gts-hero-rail--bento article {
  border: 0;
  border-right: 1px solid rgba(255,255,255,.07);
  border-radius: 0;
  background: transparent;
  padding: 28px;
}
.gts-hero-rail--bento article:last-child { border-right: 0; }
.gts-hero-rail--bento article span,
.gts-bento-index { color: var(--gts-green); }

/* Bento proof grid — replaces straight SaaS cards. */
.gts-section--bento { padding-top: clamp(58px, 7vw, 92px); }
.gts-bento-head {
  display: grid;
  grid-template-columns: minmax(180px, .45fr) minmax(0, 1fr);
  gap: 34px;
  margin-bottom: 24px;
  align-items: end;
}
.gts-bento-head h2 {
  max-width: 820px;
  font-size: clamp(34px, 4vw, 70px);
  line-height: .92;
}
.gts-proof-bento {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: minmax(156px, auto);
  gap: 14px;
}
.gts-bento-card {
  grid-column: span 4;
  position: relative;
  padding: 24px;
  min-height: 166px;
  border: 1px solid rgba(255,255,255,.075);
  background:
    radial-gradient(circle at 100% 0%, rgba(101,255,92,.10), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.032), rgba(255,255,255,.012));
  border-radius: 12px;
  overflow: hidden;
}
.gts-bento-card::before,
.gts-bento-card::after,
.gts-card::before,
.gts-project-card::before,
.gts-feature::before {
  content: "";
  position: absolute;
  width: 18px;
  height: 18px;
  pointer-events: none;
  opacity: .65;
}
.gts-bento-card::before,
.gts-card::before,
.gts-project-card::before,
.gts-feature::before {
  top: 10px;
  left: 10px;
  border-top: 1px solid rgba(101,255,92,.46);
  border-left: 1px solid rgba(101,255,92,.46);
}
.gts-bento-card::after,
.gts-card::after,
.gts-project-card::after,
.gts-feature::after {
  right: 10px;
  bottom: 10px;
  border-right: 1px solid rgba(101,255,92,.28);
  border-bottom: 1px solid rgba(101,255,92,.28);
}
.gts-bento-card--large { grid-column: span 5; grid-row: span 2; padding: 32px; }
.gts-bento-card--wide { grid-column: span 7; }
.gts-bento-card strong {
  display: block;
  margin: 22px 0 14px;
  font-family: var(--gts-display);
  font-size: clamp(24px, 2.4vw, 42px);
  line-height: .98;
  letter-spacing: -.05em;
}
.gts-bento-card p { color: var(--gts-muted); line-height: 1.65; max-width: 48ch; }
.gts-bento-index {
  font-family: var(--gts-mono);
  font-size: 11px;
  letter-spacing: .16em;
}

/* Feature / cards / projects: sharper, industrial, less generic rounded SaaS. */
.gts-feature,
.gts-card,
.gts-project-card,
.gts-news-item,
.gts-cta__inner,
.gts-industry-card,
.gts-process,
.gts-split,
.gts-form,
.gts-contact-card {
  position: relative;
  border-radius: 12px !important;
  border-color: rgba(255,255,255,.085) !important;
  background:
    radial-gradient(circle at var(--gts-x, 86%) var(--gts-y, 8%), rgba(101,255,92,.105), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.012)) !important;
  box-shadow: 0 26px 90px rgba(0,0,0,.36) !important;
}
.gts-feature {
  grid-template-columns: .92fr 1.08fr;
  padding: 0;
  overflow: hidden;
  min-height: 520px;
}
.gts-industrial-feature::after {
  background:
    linear-gradient(rgba(101,255,92,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(101,255,92,.034) 1px, transparent 1px);
  background-size: 42px 42px;
  width: auto;
  height: auto;
  inset: 0;
  border: 0;
  opacity: .5;
  mask-image: linear-gradient(90deg, #000, transparent 62%);
}
.gts-feature__copy { position: relative; z-index: 2; }
.gts-feature h2 { font-size: clamp(42px, 4.4vw, 78px); line-height: .88; }
.gts-feature__media figure { border-radius: 10px; min-height: 100%; }
.gts-feature__media figure img { filter: saturate(.78) contrast(1.08) brightness(.82); }
.gts-safety-dashboard article {
  border-radius: 8px;
  border: 1px solid rgba(101,255,92,.17);
  background: rgba(3,7,6,.86);
}
.gts-check-list li { font-family: var(--gts-mono); font-size: 11px; letter-spacing: .02em; color: rgba(230,240,232,.8); }
.gts-card-grid--solutions {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 14px;
}
.gts-card-grid--solutions .gts-card {
  grid-column: span 4;
  min-height: 238px;
  padding: 24px;
}
.gts-card-grid--solutions .gts-card:nth-child(1),
.gts-card-grid--solutions .gts-card:nth-child(5) { grid-column: span 5; }
.gts-card-grid--solutions .gts-card:nth-child(2),
.gts-card-grid--solutions .gts-card:nth-child(6) { grid-column: span 3; }
.gts-card h3 { font-size: clamp(22px, 1.8vw, 32px); }
.gts-card p { max-width: 42ch; }
.gts-card a,
.gts-project-card a { font-family: var(--gts-mono); font-size: 10px; letter-spacing: .16em; }
.gts-icon--large,
.gts-icon {
  border-radius: 5px;
  background: rgba(101,255,92,.10);
  border: 1px solid rgba(101,255,92,.16);
}
.gts-section__head--split {
  grid-template-columns: minmax(0, .95fr) minmax(300px, .55fr);
  border-top: 1px solid rgba(101,255,92,.18);
  padding-top: 20px;
}
.gts-section__head h2 { letter-spacing: -.065em; }
.gts-section__head > p { color: var(--gts-muted); line-height: 1.75; }
.gts-project-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 14px;
}
.gts-project-card { grid-column: span 4; overflow: hidden; }
.gts-project-card--featured { grid-column: span 5; }
.gts-project-card img { height: 260px; filter: saturate(.85) contrast(1.04); }
.gts-project-card > div { padding: 22px; }
.gts-chip-row span { border-radius: 5px; color: rgba(235,244,236,.72); }
.gts-news-list { gap: 10px; }
.gts-news-item {
  grid-template-columns: 76px 140px 1fr 120px 26px;
  border-radius: 8px !important;
  min-height: 92px;
}
.gts-news-item img { border-radius: 6px; filter: saturate(.78) contrast(1.06); }
.gts-cta__inner {
  grid-template-columns: minmax(0, .95fr) minmax(260px, .55fr) auto;
  border-color: rgba(101,255,92,.24) !important;
  background:
    linear-gradient(rgba(101,255,92,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(101,255,92,.03) 1px, transparent 1px),
    radial-gradient(circle at 62% 50%, rgba(101,255,92,.20), transparent 34%),
    linear-gradient(180deg, rgba(16,39,23,.82), rgba(5,12,8,.92)) !important;
  background-size: 44px 44px, 44px 44px, auto, auto !important;
}

@media (max-width: 1180px) {
  .gts-hero__inner,
  .gts-feature,
  .gts-cta__inner { grid-template-columns: 1fr; }
  .gts-hero-rail--bento { grid-template-columns: repeat(2, 1fr); }
  .gts-hero-rail--bento article:nth-child(2) { border-right: 0; }
  .gts-proof-bento { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .gts-bento-card,
  .gts-bento-card--large,
  .gts-bento-card--wide { grid-column: span 3; grid-row: auto; }
  .gts-card-grid--solutions .gts-card,
  .gts-card-grid--solutions .gts-card:nth-child(1),
  .gts-card-grid--solutions .gts-card:nth-child(2),
  .gts-card-grid--solutions .gts-card:nth-child(5),
  .gts-card-grid--solutions .gts-card:nth-child(6),
  .gts-project-card,
  .gts-project-card--featured { grid-column: span 6; }
  .gts-news-item { grid-template-columns: 72px 1fr auto; }
  .gts-news-item span { grid-column: 2; }
  .gts-news-item em { display: none; }
}
@media (max-width: 760px) {
  .gts-hero h1 { font-size: clamp(46px, 13vw, 76px); }
  .gts-hero__copy { padding-left: 16px; }
  .gts-command-panel--industrial { min-width: 0; }
  .gts-hero-rail--bento,
  .gts-proof-bento,
  .gts-card-grid--solutions,
  .gts-project-grid { grid-template-columns: 1fr; }
  .gts-bento-card,
  .gts-bento-card--large,
  .gts-bento-card--wide,
  .gts-card-grid--solutions .gts-card,
  .gts-card-grid--solutions .gts-card:nth-child(1),
  .gts-card-grid--solutions .gts-card:nth-child(2),
  .gts-card-grid--solutions .gts-card:nth-child(5),
  .gts-card-grid--solutions .gts-card:nth-child(6),
  .gts-project-card,
  .gts-project-card--featured { grid-column: 1; }
  .gts-bento-head,
  .gts-section__head--split { grid-template-columns: 1fr; }
  .gts-hero-rail--bento article { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.07); }
  .gts-news-item { grid-template-columns: 58px 1fr 20px; padding: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .gts-industrial-scan { animation: none; }
  .gts-system *, .gts-system *::before, .gts-system *::after { transition-duration: .001ms !important; animation-duration: .001ms !important; }
}

/* ==========================================================
   GTS v0.8.1 — Full-Width / Responsive Divi Theme Builder Patch
   Purpose: break the shortcode out of boxed Divi rows, widen the
   content shell, and harden tablet/mobile behavior.
   ========================================================== */
html:has(.gts-system),
body:has(.gts-system) {
  overflow-x: clip;
}

/* Let the shortcode own the visual canvas even when placed inside a boxed Divi row/code module. */
.gts-system.gts-site-body {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  overflow-x: clip;
}

/* Divi 5 / Theme Builder containment escape hatch. */
.et_pb_section:has(.gts-system),
.et_pb_row:has(.gts-system),
.et_pb_column:has(.gts-system),
.et_pb_module:has(.gts-system),
.et_pb_code:has(.gts-system),
.et_pb_code_inner:has(.gts-system) {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: visible !important;
}

/* Wider premium viewport shell. The background is full bleed; content uses controlled editorial gutters. */
.gts-system {
  --gts-shell: 1840px;
}
.gts-system .gts-shell {
  width: min(var(--gts-shell), calc(100vw - clamp(28px, 5vw, 124px))) !important;
  max-width: none !important;
}

/* Large desktop: use the canvas. */
@media (min-width: 1500px) {
  .gts-hero__inner {
    grid-template-columns: minmax(0, 1.12fr) minmax(480px, .78fr);
    gap: clamp(64px, 6.2vw, 138px);
  }
  .gts-hero h1 {
    max-width: 1040px;
    font-size: clamp(82px, 6.65vw, 156px);
  }
  .gts-hero .gts-lede {
    max-width: 780px;
    font-size: clamp(18px, 1.02vw, 23px);
  }
  .gts-command-panel--industrial {
    width: 100%;
    max-width: 680px;
    justify-self: end;
  }
  .gts-command-panel figure,
  .gts-command-panel figure img {
    min-height: 350px;
    height: 350px;
  }
  .gts-bento-head h2,
  .gts-section__head h2,
  .gts-feature__copy h2,
  .gts-cta__inner h2 {
    max-width: 980px;
  }
  .gts-card-grid--solutions,
  .gts-project-grid,
  .gts-proof-bento {
    gap: 18px;
  }
}

/* Ultra-wide: avoid looking like a narrow centered template. */
@media (min-width: 1920px) {
  .gts-system {
    --gts-shell: 1960px;
  }
  .gts-hero--industrial {
    min-height: 980px;
  }
  .gts-hero h1 {
    font-size: clamp(96px, 6.1vw, 166px);
  }
  .gts-command-panel--industrial {
    max-width: 730px;
  }
  .gts-feature {
    grid-template-columns: .82fr 1.18fr;
    min-height: 650px;
  }
  .gts-feature__media {
    min-height: 650px;
  }
  .gts-card-grid--solutions .gts-card {
    min-height: 260px;
  }
  .gts-project-card img {
    height: 330px;
  }
  .gts-project-card--featured img {
    height: 390px;
  }
}

/* Use dynamic viewport width where supported to prevent scrollbar-induced side scroll. */
@supports (width: 100dvw) {
  .gts-system.gts-site-body {
    width: 100dvw;
    max-width: 100dvw;
    margin-left: calc(50% - 50dvw);
    margin-right: calc(50% - 50dvw);
  }
  .gts-system .gts-shell {
    width: min(var(--gts-shell), calc(100dvw - clamp(28px, 5dvw, 124px))) !important;
  }
}

/* Laptop / tablet: keep the composition strong without squeezing the command panel. */
@media (max-width: 1180px) {
  .gts-system .gts-shell {
    width: min(100%, calc(100vw - clamp(24px, 4.5vw, 56px))) !important;
  }
  .gts-hero--industrial {
    min-height: auto;
    padding-bottom: clamp(76px, 9vw, 112px);
  }
  .gts-command-panel--industrial {
    width: min(760px, 100%);
    justify-self: start;
  }
  .gts-feature__media,
  .gts-feature {
    min-height: auto;
  }
}

@media (max-width: 900px) {
  .gts-system .gts-shell {
    width: calc(100vw - 32px) !important;
  }
  .gts-industrial-page {
    padding-top: 0;
  }
  .gts-hero--industrial {
    padding-top: clamp(48px, 10vw, 74px);
  }
  .gts-hero__inner {
    gap: 34px;
  }
  .gts-hero h1 {
    max-width: 100%;
    font-size: clamp(48px, 13vw, 88px);
    letter-spacing: -.078em;
  }
  .gts-bento-head h2,
  .gts-section__head h2,
  .gts-feature__copy h2,
  .gts-cta__inner h2 {
    font-size: clamp(38px, 10vw, 64px);
  }
  .gts-news-item strong {
    font-size: 18px;
  }
}

@media (max-width: 760px) {
  .gts-system .gts-shell {
    width: calc(100vw - 24px) !important;
  }
  .gts-hero__copy {
    border-left-width: 1px;
    padding-left: 14px;
  }
  .gts-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .gts-actions .gts-btn {
    width: 100%;
    justify-content: center;
  }
  .gts-command-panel figure {
    margin: 8px;
    padding: 8px;
  }
  .gts-command-panel figure,
  .gts-command-panel figure img {
    min-height: 230px;
    height: 230px;
  }
  .gts-panel-metrics,
  .gts-command-stats {
    grid-template-columns: 1fr;
  }
  .gts-bento-card,
  .gts-card-grid--solutions .gts-card,
  .gts-project-card > div,
  .gts-feature__copy,
  .gts-cta__inner {
    padding: 22px;
  }
  .gts-section {
    padding-block: clamp(58px, 15vw, 88px);
  }
  .gts-section--latest {
    padding-top: 0;
  }
}

@media (max-width: 480px) {
  .gts-system .gts-shell {
    width: calc(100vw - 18px) !important;
  }
  .gts-hero h1 {
    font-size: clamp(42px, 14vw, 62px);
  }
  .gts-lede {
    font-size: 15px;
    line-height: 1.62;
  }
  .gts-hero__badges span,
  .gts-chip-row span {
    max-width: 100%;
  }
  .gts-command-panel--industrial {
    clip-path: none;
  }
  .gts-news-item {
    grid-template-columns: 1fr 20px;
  }
}


/* ==========================================================
   GTS v0.8.2 — Spacing System / All Pages Polish
   Purpose: final viewport rhythm pass after full-width Divi patch.
   Applies to every gts_page shortcode while preserving body-only output.
   ========================================================== */
.gts-system {
  --gts-shell: 1560px;
  --gts-gutter: clamp(28px, 5.2vw, 104px);
  --gts-gap-sm: clamp(12px, 1.1vw, 18px);
  --gts-gap-md: clamp(16px, 1.6vw, 26px);
  --gts-gap-lg: clamp(24px, 2.6vw, 42px);
  --gts-section-tight: clamp(54px, 5vw, 82px);
  --gts-section-normal: clamp(78px, 7vw, 118px);
  --gts-section-wide: clamp(96px, 8.5vw, 144px);
  --gts-section-xl: clamp(112px, 10vw, 168px);
  --gts-card-pad: clamp(22px, 2.2vw, 34px);
}

.gts-system .gts-shell {
  width: min(var(--gts-shell), calc(100vw - var(--gts-gutter))) !important;
  margin-inline: auto !important;
}

@supports (width: 100dvw) {
  .gts-system .gts-shell {
    width: min(var(--gts-shell), calc(100dvw - var(--gts-gutter))) !important;
  }
}

.gts-industrial-page {
  padding-top: 0 !important;
  padding-bottom: clamp(72px, 7vw, 116px) !important;
}

/* Universal section cadence */
.gts-system .gts-section {
  padding-block: var(--gts-section-normal) !important;
}
.gts-system .gts-section__head,
.gts-system .gts-bento-head {
  margin-bottom: clamp(26px, 3vw, 48px) !important;
}
.gts-system .gts-section__head--split,
.gts-system .gts-bento-head {
  gap: clamp(24px, 4vw, 72px) !important;
}
.gts-system .gts-section__head--split {
  grid-template-columns: minmax(0, .92fr) minmax(340px, .52fr) !important;
}
.gts-system .gts-section__head h2,
.gts-system .gts-bento-head h2 {
  max-width: 900px;
}
.gts-system .gts-section__head > p,
.gts-system .gts-section__head--split > p {
  max-width: 640px;
}

/* Home hero: strong first impression without crashing into the next section */
.gts-page-home .gts-hero--industrial {
  min-height: clamp(780px, 82vh, 980px) !important;
  padding-top: clamp(54px, 6.2vw, 98px) !important;
  padding-bottom: clamp(72px, 6.4vw, 112px) !important;
}
.gts-page-home .gts-hero__inner {
  min-height: clamp(560px, 58vh, 690px) !important;
  align-items: center !important;
}
.gts-page-home .gts-hero-rail--bento {
  margin-top: clamp(36px, 4.8vw, 72px) !important;
  transform: none !important;
}

/* Inner pages: compact enough for real site browsing */
.gts-site-body:not(.gts-page-home) .gts-hero--industrial {
  min-height: clamp(560px, 64vh, 760px) !important;
  padding-top: clamp(52px, 6vw, 86px) !important;
  padding-bottom: clamp(58px, 6vw, 96px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-hero__inner {
  min-height: clamp(440px, 48vh, 580px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-hero h1 {
  font-size: clamp(58px, 6.1vw, 112px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-hero-rail--bento {
  margin-top: clamp(28px, 4vw, 58px) !important;
  transform: none !important;
}

/* Home section-specific rhythm */
.gts-page-home .gts-section--bento {
  padding-top: clamp(82px, 7.5vw, 126px) !important;
  padding-bottom: clamp(74px, 6.8vw, 112px) !important;
}
.gts-page-home .gts-section--feature {
  padding-top: clamp(62px, 6vw, 96px) !important;
  padding-bottom: clamp(88px, 7.6vw, 132px) !important;
}
.gts-page-home .gts-section--solutions {
  padding-top: clamp(78px, 7vw, 116px) !important;
  padding-bottom: clamp(92px, 8vw, 140px) !important;
}
.gts-page-home .gts-section--projects {
  padding-top: clamp(78px, 7vw, 118px) !important;
  padding-bottom: clamp(78px, 7vw, 112px) !important;
}
.gts-page-home .gts-section--latest {
  padding-top: clamp(44px, 5vw, 78px) !important;
  padding-bottom: clamp(80px, 7.5vw, 124px) !important;
}
.gts-page-home .gts-cta {
  padding-top: clamp(70px, 7vw, 114px) !important;
  padding-bottom: clamp(70px, 7vw, 112px) !important;
}

/* Bento grid: remove awkward empty height while preserving hierarchy */
.gts-proof-bento,
.gts-card-grid--solutions,
.gts-project-grid,
.gts-news-list,
.gts-team-grid,
.gts-card-grid--industries {
  gap: var(--gts-gap-md) !important;
}
.gts-proof-bento {
  grid-auto-rows: auto !important;
}
.gts-bento-card {
  min-height: clamp(154px, 12vw, 218px) !important;
  padding: var(--gts-card-pad) !important;
}
.gts-bento-card--large {
  grid-row: span 1 !important;
  min-height: clamp(190px, 14vw, 260px) !important;
}
.gts-bento-card--wide {
  min-height: clamp(170px, 13vw, 230px) !important;
}
.gts-bento-card strong {
  margin-top: clamp(14px, 1.5vw, 24px) !important;
}

/* Feature section: keep image/copy balanced at every width */
.gts-feature {
  min-height: clamp(520px, 42vw, 650px) !important;
  grid-template-columns: minmax(360px, .82fr) minmax(0, 1.18fr) !important;
}
.gts-feature__copy {
  padding: clamp(34px, 4.2vw, 64px) !important;
}
.gts-feature__media {
  min-height: clamp(500px, 42vw, 650px) !important;
}
.gts-feature__copy h2 {
  max-width: 620px !important;
}
.gts-check-list {
  margin-block: clamp(22px, 2.2vw, 34px) !important;
}

/* Cards: reduce trapped empty space, improve readable density */
.gts-card-grid--solutions .gts-card,
.gts-card,
.gts-industry-card,
.gts-team-card,
.gts-project-card {
  min-height: auto !important;
}
.gts-card-grid--solutions .gts-card {
  padding: clamp(22px, 2vw, 32px) !important;
}
.gts-card h3,
.gts-project-card h3,
.gts-industry-card h3,
.gts-team-card h3 {
  margin-bottom: clamp(10px, 1vw, 16px) !important;
}
.gts-card p,
.gts-project-card p,
.gts-industry-card p,
.gts-team-card p {
  font-size: clamp(14px, .92vw, 16px) !important;
}
.gts-icon--large {
  margin-bottom: clamp(16px, 1.6vw, 26px) !important;
}

/* Projects: more premium editorial balance */
.gts-project-card img {
  height: clamp(240px, 18vw, 330px) !important;
}
.gts-project-card--featured img {
  height: clamp(280px, 21vw, 390px) !important;
}
.gts-project-card > div {
  padding: clamp(22px, 2vw, 34px) !important;
}
.gts-chip-row {
  margin-block: clamp(16px, 1.6vw, 24px) !important;
}

/* News: cleaner rhythm and less cramped rows */
.gts-news-list {
  gap: clamp(10px, 1vw, 16px) !important;
}
.gts-news-item {
  min-height: clamp(88px, 6.8vw, 112px) !important;
  padding: clamp(12px, 1.1vw, 16px) !important;
}
.gts-news-item img {
  height: clamp(70px, 5vw, 88px) !important;
}

/* CTA: final block should feel like a closing feature, not a footer substitute */
.gts-cta__inner {
  min-height: clamp(230px, 18vw, 320px) !important;
  padding: clamp(36px, 4.6vw, 72px) !important;
  grid-template-columns: minmax(0, .95fr) minmax(280px, .52fr) auto !important;
  gap: clamp(24px, 3.2vw, 56px) !important;
}
.gts-cta__inner h2 {
  max-width: 720px !important;
}

/* All non-home pages: consistent page-body pacing */
.gts-site-body:not(.gts-page-home) .gts-section {
  padding-block: clamp(76px, 7vw, 118px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-cta {
  padding-block: clamp(76px, 7vw, 118px) !important;
}
.gts-page-contact .gts-section {
  padding-top: clamp(82px, 7vw, 124px) !important;
}
.gts-process,
.gts-split,
.gts-contact-layout {
  gap: var(--gts-gap-md) !important;
}
.gts-process,
.gts-split,
.gts-form,
.gts-contact-card {
  padding: clamp(24px, 2.8vw, 42px) !important;
}

/* Responsive system */
@media (max-width: 1180px) {
  .gts-system {
    --gts-gutter: clamp(24px, 4.5vw, 58px);
    --gts-section-normal: clamp(72px, 8vw, 108px);
    --gts-section-wide: clamp(82px, 9vw, 122px);
  }
  .gts-system .gts-section__head--split,
  .gts-system .gts-bento-head,
  .gts-feature,
  .gts-cta__inner {
    grid-template-columns: 1fr !important;
  }
  .gts-page-home .gts-hero--industrial {
    min-height: auto !important;
  }
  .gts-page-home .gts-hero__inner,
  .gts-site-body:not(.gts-page-home) .gts-hero__inner {
    min-height: auto !important;
  }
  .gts-command-panel--industrial {
    justify-self: start !important;
    max-width: 760px !important;
  }
  .gts-feature,
  .gts-feature__media {
    min-height: auto !important;
  }
  .gts-feature__media figure {
    min-height: clamp(420px, 48vw, 560px) !important;
  }
  .gts-cta__inner .gts-btn {
    justify-self: start !important;
  }
}

@media (max-width: 900px) {
  .gts-system {
    --gts-gutter: 32px;
    --gts-section-normal: clamp(64px, 12vw, 92px);
    --gts-section-wide: clamp(72px, 13vw, 102px);
  }
  .gts-page-home .gts-hero--industrial,
  .gts-site-body:not(.gts-page-home) .gts-hero--industrial {
    padding-top: clamp(48px, 10vw, 76px) !important;
    padding-bottom: clamp(54px, 10vw, 86px) !important;
  }
  .gts-page-home .gts-section--bento,
  .gts-page-home .gts-section--feature,
  .gts-page-home .gts-section--solutions,
  .gts-page-home .gts-section--projects,
  .gts-page-home .gts-section--latest,
  .gts-site-body:not(.gts-page-home) .gts-section {
    padding-block: var(--gts-section-normal) !important;
  }
  .gts-hero-rail--bento {
    margin-top: clamp(28px, 7vw, 48px) !important;
  }
  .gts-proof-bento,
  .gts-card-grid--solutions,
  .gts-project-grid,
  .gts-card-grid--industries,
  .gts-team-grid {
    gap: 14px !important;
  }
  .gts-cta__inner {
    min-height: auto !important;
  }
}

@media (max-width: 760px) {
  .gts-system {
    --gts-gutter: 24px;
    --gts-section-normal: clamp(56px, 15vw, 82px);
    --gts-card-pad: 22px;
  }
  .gts-system .gts-shell {
    width: calc(100vw - var(--gts-gutter)) !important;
  }
  .gts-hero h1,
  .gts-site-body:not(.gts-page-home) .gts-hero h1 {
    font-size: clamp(44px, 13.5vw, 72px) !important;
    line-height: .9 !important;
  }
  .gts-lede {
    font-size: 15px !important;
    line-height: 1.64 !important;
  }
  .gts-command-panel figure,
  .gts-command-panel figure img {
    height: clamp(220px, 58vw, 340px) !important;
    min-height: clamp(220px, 58vw, 340px) !important;
  }
  .gts-bento-card,
  .gts-bento-card--large,
  .gts-bento-card--wide {
    min-height: auto !important;
  }
  .gts-feature__copy,
  .gts-cta__inner,
  .gts-project-card > div,
  .gts-card-grid--solutions .gts-card {
    padding: 22px !important;
  }
  .gts-feature__media figure {
    min-height: 320px !important;
  }
  .gts-cta {
    padding-block: clamp(54px, 14vw, 82px) !important;
  }
}

@media (max-width: 480px) {
  .gts-system {
    --gts-gutter: 18px;
  }
  .gts-section__head,
  .gts-bento-head {
    margin-bottom: 22px !important;
  }
  .gts-news-item img {
    height: 150px !important;
  }
}


/* ==========================================================
   GTS v0.8.3 — Precision Spacing / All Pages Finalization
   Scope: body-only shortcode pages inside Divi Theme Builder.
   Goal: full-width canvas + controlled editorial gutters + consistent
   page rhythm across Home, Solutions, Industries, Projects, About, Contact.
   ========================================================== */
.gts-system {
  --gts-shell: 1480px;
  --gts-gutter: clamp(34px, 6vw, 128px);
  --gts-page-pad-bottom: clamp(46px, 5vw, 82px);
  --gts-section-tight: clamp(56px, 5vw, 82px);
  --gts-section-normal: clamp(76px, 6.6vw, 112px);
  --gts-section-feature: clamp(86px, 7.6vw, 130px);
  --gts-section-deep: clamp(98px, 8.8vw, 148px);
  --gts-grid-gap: clamp(14px, 1.3vw, 22px);
  --gts-card-pad: clamp(22px, 2vw, 32px);
}

.gts-system.gts-site-body {
  min-height: auto !important;
}

.gts-system .gts-shell {
  width: min(var(--gts-shell), calc(100vw - var(--gts-gutter))) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

@supports (width: 100dvw) {
  .gts-system .gts-shell {
    width: min(var(--gts-shell), calc(100dvw - var(--gts-gutter))) !important;
  }
}

.gts-industrial-page {
  padding-top: 0 !important;
  padding-bottom: var(--gts-page-pad-bottom) !important;
}

/* Global cadence shared by every shortcode page */
.gts-system .gts-section {
  padding-block: var(--gts-section-normal) !important;
}
.gts-system .gts-section__head,
.gts-system .gts-bento-head {
  margin-bottom: clamp(24px, 2.8vw, 42px) !important;
}
.gts-system .gts-section__head--split,
.gts-system .gts-bento-head {
  gap: clamp(22px, 4vw, 68px) !important;
}
.gts-system .gts-section__head--split {
  grid-template-columns: minmax(0, .92fr) minmax(320px, .5fr) !important;
}
.gts-system .gts-section__head h2,
.gts-system .gts-bento-head h2 {
  max-width: 900px !important;
}
.gts-system .gts-section__head > p,
.gts-system .gts-section__head--split > p,
.gts-news-intro {
  max-width: 650px !important;
  color: var(--gts-muted) !important;
  font-size: clamp(14px, .9vw, 16px) !important;
  line-height: 1.7 !important;
}
.gts-news-intro { margin-top: 14px !important; }

/* Home hero: cinematic but not oversized */
.gts-page-home .gts-hero--industrial {
  min-height: clamp(720px, 78vh, 900px) !important;
  padding-top: clamp(52px, 5.6vw, 90px) !important;
  padding-bottom: clamp(58px, 5.8vw, 96px) !important;
}
.gts-page-home .gts-hero__inner {
  min-height: clamp(500px, 54vh, 640px) !important;
  align-items: center !important;
}
.gts-page-home .gts-hero h1 {
  max-width: 1010px !important;
  font-size: clamp(68px, 6.4vw, 132px) !important;
}
.gts-page-home .gts-hero .gts-lede {
  max-width: 720px !important;
  font-size: clamp(16px, 1.03vw, 20px) !important;
}
.gts-page-home .gts-command-panel--industrial {
  max-width: 620px !important;
  justify-self: end !important;
}
.gts-page-home .gts-command-panel figure,
.gts-page-home .gts-command-panel figure img {
  height: clamp(260px, 19vw, 330px) !important;
  min-height: clamp(260px, 19vw, 330px) !important;
}
.gts-page-home .gts-hero-rail--bento {
  margin-top: clamp(28px, 3.6vw, 54px) !important;
  transform: none !important;
}
.gts-page-home .gts-hero-rail--bento article {
  min-height: clamp(96px, 7vw, 122px) !important;
  padding: clamp(18px, 1.8vw, 26px) !important;
}

/* Inner pages: same design language, less homepage drama */
.gts-site-body:not(.gts-page-home) .gts-hero--industrial {
  min-height: clamp(500px, 58vh, 680px) !important;
  padding-top: clamp(50px, 5.2vw, 78px) !important;
  padding-bottom: clamp(50px, 5.2vw, 82px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-hero__inner {
  min-height: clamp(390px, 42vh, 520px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-hero h1 {
  max-width: 980px !important;
  font-size: clamp(56px, 5.65vw, 108px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-command-panel--industrial {
  max-width: 560px !important;
}
.gts-site-body:not(.gts-page-home) .gts-hero-rail--bento {
  margin-top: clamp(22px, 3vw, 44px) !important;
  transform: none !important;
}
.gts-site-body:not(.gts-page-home) .gts-section,
.gts-site-body:not(.gts-page-home) .gts-cta {
  padding-block: clamp(66px, 6vw, 102px) !important;
}

/* Section-by-section home rhythm */
.gts-page-home .gts-section--bento {
  padding-top: clamp(70px, 6.2vw, 104px) !important;
  padding-bottom: clamp(58px, 5.5vw, 94px) !important;
}
.gts-page-home .gts-section--feature {
  padding-top: clamp(66px, 6vw, 104px) !important;
  padding-bottom: clamp(76px, 6.8vw, 116px) !important;
}
.gts-page-home .gts-section--solutions {
  padding-top: clamp(70px, 6.2vw, 106px) !important;
  padding-bottom: clamp(76px, 6.8vw, 118px) !important;
}
.gts-page-home .gts-section--projects {
  padding-top: clamp(70px, 6vw, 104px) !important;
  padding-bottom: clamp(62px, 5.8vw, 96px) !important;
}
.gts-page-home .gts-section--latest {
  padding-top: clamp(46px, 4.6vw, 74px) !important;
  padding-bottom: clamp(62px, 5.8vw, 98px) !important;
}
.gts-page-home .gts-cta {
  padding-top: clamp(58px, 5.5vw, 92px) !important;
  padding-bottom: clamp(46px, 5vw, 76px) !important;
}

/* Bento math: intentional 12-column placement, no awkward empty height */
.gts-proof-bento,
.gts-card-grid--solutions,
.gts-project-grid,
.gts-card-grid--industries,
.gts-team-grid,
.gts-news-list {
  gap: var(--gts-grid-gap) !important;
}
.gts-proof-bento {
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  align-items: stretch !important;
}
.gts-proof-bento .gts-bento-card,
.gts-proof-bento .gts-bento-card--large,
.gts-proof-bento .gts-bento-card--wide {
  grid-row: auto !important;
  min-height: clamp(160px, 10.5vw, 220px) !important;
  padding: var(--gts-card-pad) !important;
}
.gts-proof-bento .gts-bento-card:nth-child(1) { grid-column: span 4 !important; min-height: clamp(190px, 12vw, 248px) !important; }
.gts-proof-bento .gts-bento-card:nth-child(2) { grid-column: span 4 !important; }
.gts-proof-bento .gts-bento-card:nth-child(3) { grid-column: span 4 !important; }
.gts-proof-bento .gts-bento-card:nth-child(4) { grid-column: span 3 !important; }
.gts-proof-bento .gts-bento-card:nth-child(5) { grid-column: span 5 !important; }
.gts-proof-bento .gts-bento-card:nth-child(6) { grid-column: span 4 !important; }
.gts-bento-card strong {
  margin: clamp(14px, 1.35vw, 22px) 0 clamp(10px, 1vw, 14px) !important;
}
.gts-bento-card p {
  font-size: clamp(14px, .88vw, 15.5px) !important;
  line-height: 1.64 !important;
}

/* Feature block: better image proof, less overly dark treatment */
.gts-feature {
  grid-template-columns: minmax(350px, .78fr) minmax(0, 1.22fr) !important;
  min-height: clamp(500px, 39vw, 620px) !important;
}
.gts-feature__copy {
  padding: clamp(32px, 3.8vw, 58px) !important;
}
.gts-feature__media {
  min-height: clamp(500px, 39vw, 620px) !important;
}
.gts-feature__media figure::after {
  background: linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,.58)) !important;
}
.gts-feature__media figure img,
.gts-feature__media img {
  filter: brightness(.94) contrast(1.08) saturate(1.02) !important;
}
.gts-safety-dashboard article {
  padding: clamp(14px, 1.3vw, 18px) !important;
}
.gts-check-list {
  margin-block: clamp(20px, 2vw, 30px) !important;
}

/* Card readability and density across all pages */
.gts-card-grid--solutions .gts-card {
  min-height: clamp(210px, 13vw, 260px) !important;
  padding: clamp(22px, 1.9vw, 30px) !important;
}
.gts-card p,
.gts-project-card p,
.gts-industry-card p,
.gts-team-card p,
.gts-bento-card p,
.gts-process p,
.gts-split p {
  font-size: clamp(14px, .86vw, 15.5px) !important;
  line-height: 1.64 !important;
}
.gts-card h3,
.gts-project-card h3,
.gts-industry-card h3,
.gts-team-card h3 {
  margin-bottom: clamp(10px, .95vw, 15px) !important;
}

/* Projects: maintain editorial hierarchy, make first proof piece feel intentional */
.gts-project-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  align-items: stretch !important;
}
.gts-project-card--featured { grid-column: span 5 !important; }
.gts-project-card:nth-child(2) { grid-column: span 4 !important; }
.gts-project-card:nth-child(3) { grid-column: span 3 !important; }
.gts-project-card:nth-child(n+4) { grid-column: span 3 !important; }
.gts-project-card img { height: clamp(250px, 17.2vw, 330px) !important; }
.gts-project-card--featured img { height: clamp(300px, 20.5vw, 390px) !important; }
.gts-project-card > div { padding: clamp(22px, 1.9vw, 32px) !important; }

/* Latest: give the agreed Phase 1 section more presence without clutter */
.gts-news-item {
  min-height: clamp(92px, 6vw, 112px) !important;
  grid-template-columns: clamp(74px, 5.6vw, 96px) 140px 1fr 118px 28px !important;
}
.gts-news-item img {
  width: clamp(74px, 5.6vw, 96px) !important;
  height: clamp(66px, 5vw, 82px) !important;
}
.gts-news-item strong {
  font-size: clamp(16px, 1.05vw, 21px) !important;
}

/* CTA and Divi footer handoff */
.gts-cta__inner {
  min-height: clamp(220px, 16vw, 300px) !important;
  grid-template-columns: minmax(0, .9fr) minmax(280px, .52fr) auto !important;
  gap: clamp(24px, 3vw, 50px) !important;
  padding: clamp(34px, 4.2vw, 66px) !important;
}
.gts-cta__inner h2 {
  max-width: 720px !important;
}
.gts-cta__direct {
  display: block;
  margin-top: 14px;
  font-family: var(--gts-mono);
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--gts-green);
}

/* Page-specific utilities */
.gts-tabs {
  margin-top: clamp(28px, 4vw, 54px) !important;
  margin-bottom: clamp(12px, 2vw, 28px) !important;
}
.gts-process,
.gts-split,
.gts-contact-layout {
  gap: var(--gts-grid-gap) !important;
}
.gts-contact-layout {
  align-items: start !important;
}
.gts-page-contact .gts-section {
  padding-top: clamp(68px, 6vw, 104px) !important;
  padding-bottom: clamp(68px, 6vw, 104px) !important;
}
.gts-form,
.gts-contact-card,
.gts-process,
.gts-split {
  padding: clamp(24px, 2.6vw, 42px) !important;
}

/* Responsive parity */
@media (min-width: 1700px) {
  .gts-system {
    --gts-shell: 1540px;
    --gts-gutter: clamp(56px, 7vw, 150px);
  }
}

@media (max-width: 1180px) {
  .gts-system {
    --gts-gutter: clamp(24px, 4.8vw, 62px);
    --gts-section-normal: clamp(66px, 8vw, 98px);
  }
  .gts-system .gts-section__head--split,
  .gts-system .gts-bento-head,
  .gts-feature,
  .gts-cta__inner {
    grid-template-columns: 1fr !important;
  }
  .gts-page-home .gts-command-panel--industrial,
  .gts-site-body:not(.gts-page-home) .gts-command-panel--industrial {
    max-width: 760px !important;
    justify-self: start !important;
  }
  .gts-proof-bento .gts-bento-card,
  .gts-proof-bento .gts-bento-card:nth-child(1),
  .gts-proof-bento .gts-bento-card:nth-child(2),
  .gts-proof-bento .gts-bento-card:nth-child(3),
  .gts-proof-bento .gts-bento-card:nth-child(4),
  .gts-proof-bento .gts-bento-card:nth-child(5),
  .gts-proof-bento .gts-bento-card:nth-child(6),
  .gts-card-grid--solutions .gts-card,
  .gts-card-grid--solutions .gts-card:nth-child(1),
  .gts-card-grid--solutions .gts-card:nth-child(2),
  .gts-card-grid--solutions .gts-card:nth-child(5),
  .gts-card-grid--solutions .gts-card:nth-child(6),
  .gts-project-card,
  .gts-project-card--featured,
  .gts-project-card:nth-child(2),
  .gts-project-card:nth-child(3),
  .gts-project-card:nth-child(n+4) {
    grid-column: span 6 !important;
  }
  .gts-feature,
  .gts-feature__media {
    min-height: auto !important;
  }
  .gts-feature__media figure {
    min-height: clamp(420px, 48vw, 560px) !important;
  }
  .gts-news-item {
    grid-template-columns: 82px 1fr auto !important;
  }
  .gts-news-item span { grid-column: 2 !important; }
  .gts-news-item em { display: none !important; }
}

@media (max-width: 900px) {
  .gts-system {
    --gts-gutter: 32px;
    --gts-section-normal: clamp(58px, 11vw, 86px);
  }
  .gts-page-home .gts-hero--industrial,
  .gts-site-body:not(.gts-page-home) .gts-hero--industrial {
    min-height: auto !important;
    padding-top: clamp(46px, 9vw, 70px) !important;
    padding-bottom: clamp(48px, 9vw, 78px) !important;
  }
  .gts-page-home .gts-hero__inner,
  .gts-site-body:not(.gts-page-home) .gts-hero__inner {
    min-height: auto !important;
    gap: clamp(28px, 6vw, 42px) !important;
  }
  .gts-page-home .gts-hero h1,
  .gts-site-body:not(.gts-page-home) .gts-hero h1 {
    font-size: clamp(48px, 12.6vw, 84px) !important;
  }
  .gts-system .gts-section,
  .gts-page-home .gts-section--bento,
  .gts-page-home .gts-section--feature,
  .gts-page-home .gts-section--solutions,
  .gts-page-home .gts-section--projects,
  .gts-page-home .gts-section--latest,
  .gts-site-body:not(.gts-page-home) .gts-section {
    padding-block: var(--gts-section-normal) !important;
  }
  .gts-hero-rail--bento {
    margin-top: clamp(24px, 6vw, 40px) !important;
  }
  .gts-news-item {
    grid-template-columns: 76px 1fr 24px !important;
  }
}

@media (max-width: 760px) {
  .gts-system {
    --gts-gutter: 24px;
    --gts-section-normal: clamp(52px, 14vw, 78px);
    --gts-card-pad: 22px;
  }
  .gts-proof-bento,
  .gts-card-grid--solutions,
  .gts-project-grid,
  .gts-card-grid--industries,
  .gts-team-grid,
  .gts-hero-rail--bento {
    grid-template-columns: 1fr !important;
  }
  .gts-proof-bento .gts-bento-card,
  .gts-proof-bento .gts-bento-card:nth-child(1),
  .gts-proof-bento .gts-bento-card:nth-child(2),
  .gts-proof-bento .gts-bento-card:nth-child(3),
  .gts-proof-bento .gts-bento-card:nth-child(4),
  .gts-proof-bento .gts-bento-card:nth-child(5),
  .gts-proof-bento .gts-bento-card:nth-child(6),
  .gts-card-grid--solutions .gts-card,
  .gts-card-grid--solutions .gts-card:nth-child(1),
  .gts-card-grid--solutions .gts-card:nth-child(2),
  .gts-card-grid--solutions .gts-card:nth-child(5),
  .gts-card-grid--solutions .gts-card:nth-child(6),
  .gts-project-card,
  .gts-project-card--featured,
  .gts-project-card:nth-child(2),
  .gts-project-card:nth-child(3),
  .gts-project-card:nth-child(n+4) {
    grid-column: 1 / -1 !important;
    min-height: auto !important;
  }
  .gts-feature__media figure {
    min-height: 320px !important;
  }
  .gts-cta__inner {
    min-height: auto !important;
  }
  .gts-news-item {
    grid-template-columns: 1fr 24px !important;
  }
  .gts-news-item img {
    width: 100% !important;
    height: 150px !important;
    grid-column: 1 / -1 !important;
  }
  .gts-news-item span,
  .gts-news-item strong {
    grid-column: 1 !important;
  }
}

@media (max-width: 480px) {
  .gts-system {
    --gts-gutter: 18px;
  }
  .gts-page-home .gts-hero h1,
  .gts-site-body:not(.gts-page-home) .gts-hero h1 {
    font-size: clamp(42px, 14vw, 64px) !important;
  }
  .gts-system .gts-section__head,
  .gts-system .gts-bento-head {
    margin-bottom: 22px !important;
  }
}


/* ==========================================================
   GTS v0.8.4 — Final Rhythm / Page-Wide Spacing Harmonization
   Scope: applies to every shortcode-rendered page body.
   Intent: keep Divi Theme Builder in charge of header/footer while
   making the plugin body feel full-width, balanced, and responsive.
   ========================================================== */
.gts-system {
  --gts-shell: 1640px;
  --gts-gutter: clamp(28px, 4.4vw, 92px);
  --gts-section-normal: clamp(68px, 6vw, 100px);
  --gts-section-feature: clamp(78px, 6.8vw, 116px);
  --gts-section-deep: clamp(88px, 7.4vw, 128px);
  --gts-grid-gap: clamp(14px, 1.15vw, 20px);
  --gts-card-pad: clamp(22px, 1.85vw, 30px);
}
.gts-system .gts-shell {
  width: min(var(--gts-shell), calc(100vw - var(--gts-gutter))) !important;
  max-width: none !important;
  margin-inline: auto !important;
}
@supports (width: 100dvw) {
  .gts-system .gts-shell {
    width: min(var(--gts-shell), calc(100dvw - var(--gts-gutter))) !important;
  }
}

/* Stronger Divi containment escape without touching global header/footer. */
body .et_pb_section:has(.gts-system.gts-site-body),
body .et_pb_row:has(.gts-system.gts-site-body),
body .et_pb_column:has(.gts-system.gts-site-body),
body .et_pb_code:has(.gts-system.gts-site-body),
body .et_pb_code_inner:has(.gts-system.gts-site-body) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.gts-system.gts-site-body {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  overflow-x: clip !important;
}
@supports (width: 100dvw) {
  .gts-system.gts-site-body {
    width: 100dvw !important;
    max-width: 100dvw !important;
    margin-left: calc(50% - 50dvw) !important;
    margin-right: calc(50% - 50dvw) !important;
  }
}

/* Hero: slightly less vertical bulk, more premium horizontal balance. */
.gts-page-home .gts-hero--industrial {
  min-height: clamp(680px, 74vh, 850px) !important;
  padding-top: clamp(44px, 4.8vw, 78px) !important;
  padding-bottom: clamp(50px, 5vw, 82px) !important;
}
.gts-page-home .gts-hero__inner {
  min-height: clamp(480px, 50vh, 600px) !important;
  grid-template-columns: minmax(0, 1fr) minmax(390px, .62fr) !important;
  gap: clamp(44px, 5.4vw, 96px) !important;
}
.gts-page-home .gts-hero h1 {
  max-width: 980px !important;
  font-size: clamp(62px, 5.85vw, 124px) !important;
  line-height: .875 !important;
}
.gts-page-home .gts-hero .gts-lede {
  max-width: 700px !important;
  margin-top: clamp(18px, 1.8vw, 26px) !important;
}
.gts-page-home .gts-actions {
  margin-top: clamp(22px, 2.2vw, 34px) !important;
}
.gts-page-home .gts-command-panel--industrial {
  width: 100% !important;
  max-width: 600px !important;
  justify-self: end !important;
}
.gts-page-home .gts-command-panel figure,
.gts-page-home .gts-command-panel figure img {
  height: clamp(250px, 17.5vw, 318px) !important;
  min-height: clamp(250px, 17.5vw, 318px) !important;
}
.gts-page-home .gts-hero-rail--bento {
  margin-top: clamp(22px, 3vw, 44px) !important;
}
.gts-page-home .gts-hero-rail--bento article {
  min-height: clamp(86px, 6.2vw, 112px) !important;
}

/* Section rhythm: clean runway between modules without drifting. */
.gts-page-home .gts-section--bento {
  padding-top: clamp(58px, 5.4vw, 88px) !important;
  padding-bottom: clamp(54px, 5vw, 84px) !important;
}
.gts-page-home .gts-section--feature {
  padding-top: clamp(54px, 5vw, 84px) !important;
  padding-bottom: clamp(66px, 6vw, 104px) !important;
}
.gts-page-home .gts-section--solutions {
  padding-top: clamp(64px, 5.8vw, 96px) !important;
  padding-bottom: clamp(70px, 6vw, 106px) !important;
}
.gts-page-home .gts-section--projects {
  padding-top: clamp(64px, 5.8vw, 96px) !important;
  padding-bottom: clamp(58px, 5.2vw, 86px) !important;
}
.gts-page-home .gts-section--latest {
  padding-top: clamp(38px, 4.2vw, 64px) !important;
  padding-bottom: clamp(58px, 5.4vw, 88px) !important;
}
.gts-page-home .gts-cta {
  padding-top: clamp(54px, 5vw, 82px) !important;
  padding-bottom: clamp(44px, 4.6vw, 72px) !important;
}

/* Headings and intros: keep a consistent editorial lockup. */
.gts-system .gts-section__head,
.gts-system .gts-bento-head {
  margin-bottom: clamp(22px, 2.4vw, 36px) !important;
}
.gts-system .gts-bento-head {
  grid-template-columns: minmax(190px, .34fr) minmax(0, 1fr) !important;
  align-items: end !important;
}
.gts-system .gts-section__head--split {
  grid-template-columns: minmax(0, .88fr) minmax(320px, .48fr) !important;
  align-items: end !important;
}
.gts-system .gts-section__head h2,
.gts-system .gts-bento-head h2 {
  font-size: clamp(38px, 4.05vw, 72px) !important;
  line-height: .94 !important;
}
.gts-system .gts-section__head > p,
.gts-system .gts-section__head--split > p,
.gts-news-intro {
  font-size: clamp(14px, .82vw, 16px) !important;
  line-height: 1.68 !important;
}

/* Bento grid: consistent card mass and stronger intentional geometry. */
.gts-proof-bento .gts-bento-card,
.gts-proof-bento .gts-bento-card--large,
.gts-proof-bento .gts-bento-card--wide {
  min-height: clamp(148px, 9.8vw, 202px) !important;
  padding: clamp(21px, 1.8vw, 30px) !important;
}
.gts-proof-bento .gts-bento-card:nth-child(1) { grid-column: span 4 !important; }
.gts-proof-bento .gts-bento-card:nth-child(2) { grid-column: span 4 !important; }
.gts-proof-bento .gts-bento-card:nth-child(3) { grid-column: span 4 !important; }
.gts-proof-bento .gts-bento-card:nth-child(4) { grid-column: span 4 !important; }
.gts-proof-bento .gts-bento-card:nth-child(5) { grid-column: span 4 !important; }
.gts-proof-bento .gts-bento-card:nth-child(6) { grid-column: span 4 !important; }
.gts-bento-card strong {
  font-size: clamp(24px, 2vw, 36px) !important;
  margin: clamp(12px, 1.2vw, 18px) 0 10px !important;
}

/* Feature block: reduce visual heaviness while preserving proof value. */
.gts-feature {
  grid-template-columns: minmax(340px, .74fr) minmax(0, 1.26fr) !important;
  min-height: clamp(470px, 36vw, 590px) !important;
}
.gts-feature__copy {
  padding: clamp(30px, 3.5vw, 54px) !important;
}
.gts-feature__copy h2 {
  font-size: clamp(38px, 4.15vw, 72px) !important;
  line-height: .92 !important;
}
.gts-feature__media {
  min-height: clamp(470px, 36vw, 590px) !important;
}
.gts-feature__media figure::after {
  background: linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.50)) !important;
}
.gts-feature__media figure img,
.gts-feature__media img {
  filter: brightness(.98) contrast(1.08) saturate(1.04) !important;
}

/* Services and projects: better density, no hollow cards. */
.gts-card-grid--solutions .gts-card {
  min-height: clamp(196px, 12vw, 242px) !important;
  padding: clamp(21px, 1.75vw, 29px) !important;
}
.gts-card h3,
.gts-project-card h3,
.gts-industry-card h3,
.gts-team-card h3 {
  font-size: clamp(21px, 1.45vw, 28px) !important;
}
.gts-card p,
.gts-project-card p,
.gts-industry-card p,
.gts-team-card p,
.gts-bento-card p,
.gts-process p,
.gts-split p {
  font-size: clamp(13.5px, .78vw, 15px) !important;
  line-height: 1.62 !important;
}
.gts-project-card--featured { grid-column: span 5 !important; }
.gts-project-card:nth-child(2) { grid-column: span 4 !important; }
.gts-project-card:nth-child(3) { grid-column: span 3 !important; }
.gts-project-card img { height: clamp(230px, 15.8vw, 306px) !important; }
.gts-project-card--featured img { height: clamp(278px, 19vw, 360px) !important; }

/* Latest rows and CTA: cleaner final third of page. */
.gts-news-list {
  gap: clamp(10px, .85vw, 14px) !important;
}
.gts-news-item {
  min-height: clamp(84px, 5.4vw, 104px) !important;
  grid-template-columns: clamp(70px, 5vw, 92px) 140px 1fr 112px 28px !important;
}
.gts-cta__inner {
  min-height: clamp(210px, 14.8vw, 280px) !important;
  grid-template-columns: minmax(0, .88fr) minmax(280px, .48fr) auto !important;
  padding: clamp(34px, 4vw, 62px) !important;
}
.gts-cta__inner h2 {
  font-size: clamp(40px, 4.35vw, 78px) !important;
  line-height: .93 !important;
}
.gts-cta p {
  font-size: clamp(14px, .86vw, 16px) !important;
}

/* Inner pages inherit the same spacing system, but stay faster to scan. */
.gts-site-body:not(.gts-page-home) .gts-hero--industrial {
  min-height: clamp(460px, 52vh, 620px) !important;
  padding-top: clamp(44px, 4.8vw, 70px) !important;
  padding-bottom: clamp(44px, 4.8vw, 72px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-hero__inner {
  min-height: clamp(360px, 38vh, 480px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-section,
.gts-site-body:not(.gts-page-home) .gts-cta {
  padding-block: clamp(58px, 5.6vw, 92px) !important;
}
.gts-page-contact .gts-section {
  padding-block: clamp(58px, 5.6vw, 90px) !important;
}

@media (min-width: 1700px) {
  .gts-system {
    --gts-shell: 1720px;
    --gts-gutter: clamp(52px, 5vw, 116px);
  }
  .gts-page-home .gts-hero h1 {
    font-size: clamp(88px, 5.7vw, 142px) !important;
  }
}

@media (max-width: 1180px) {
  .gts-system {
    --gts-gutter: clamp(24px, 4.8vw, 58px);
  }
  .gts-page-home .gts-hero__inner,
  .gts-site-body:not(.gts-page-home) .gts-hero__inner,
  .gts-feature,
  .gts-cta__inner,
  .gts-system .gts-section__head--split,
  .gts-system .gts-bento-head {
    grid-template-columns: 1fr !important;
  }
  .gts-page-home .gts-command-panel--industrial,
  .gts-site-body:not(.gts-page-home) .gts-command-panel--industrial {
    max-width: 720px !important;
    justify-self: start !important;
  }
  .gts-proof-bento .gts-bento-card,
  .gts-proof-bento .gts-bento-card:nth-child(1),
  .gts-proof-bento .gts-bento-card:nth-child(2),
  .gts-proof-bento .gts-bento-card:nth-child(3),
  .gts-proof-bento .gts-bento-card:nth-child(4),
  .gts-proof-bento .gts-bento-card:nth-child(5),
  .gts-proof-bento .gts-bento-card:nth-child(6),
  .gts-card-grid--solutions .gts-card,
  .gts-project-card,
  .gts-project-card--featured,
  .gts-project-card:nth-child(2),
  .gts-project-card:nth-child(3) {
    grid-column: span 6 !important;
  }
}

@media (max-width: 900px) {
  .gts-system { --gts-gutter: 32px; }
  .gts-page-home .gts-hero--industrial,
  .gts-site-body:not(.gts-page-home) .gts-hero--industrial {
    padding-top: clamp(42px, 8vw, 64px) !important;
    padding-bottom: clamp(42px, 8vw, 68px) !important;
  }
  .gts-page-home .gts-hero h1,
  .gts-site-body:not(.gts-page-home) .gts-hero h1 {
    font-size: clamp(46px, 12.2vw, 78px) !important;
  }
  .gts-system .gts-section,
  .gts-page-home .gts-section--bento,
  .gts-page-home .gts-section--feature,
  .gts-page-home .gts-section--solutions,
  .gts-page-home .gts-section--projects,
  .gts-page-home .gts-section--latest,
  .gts-site-body:not(.gts-page-home) .gts-section {
    padding-block: clamp(54px, 10vw, 78px) !important;
  }
}

@media (max-width: 760px) {
  .gts-system { --gts-gutter: 24px; }
  .gts-proof-bento,
  .gts-card-grid--solutions,
  .gts-project-grid,
  .gts-card-grid--industries,
  .gts-team-grid,
  .gts-hero-rail--bento {
    grid-template-columns: 1fr !important;
  }
  .gts-proof-bento .gts-bento-card,
  .gts-card-grid--solutions .gts-card,
  .gts-project-card,
  .gts-project-card--featured,
  .gts-project-card:nth-child(2),
  .gts-project-card:nth-child(3) {
    grid-column: 1 / -1 !important;
  }
  .gts-feature__media,
  .gts-feature__media figure {
    min-height: 320px !important;
  }
  .gts-cta__inner {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
  }
  .gts-news-item {
    grid-template-columns: 1fr 24px !important;
  }
}

@media (max-width: 480px) {
  .gts-system { --gts-gutter: 18px; }
  .gts-page-home .gts-hero h1,
  .gts-site-body:not(.gts-page-home) .gts-hero h1 {
    font-size: clamp(40px, 13.6vw, 60px) !important;
  }
}


/* =========================================================
   v0.8.5 FINAL MICRO-POLISH OVERRIDES
   Purpose: lock the spacing rhythm after visual QA, preserve
   Divi Theme Builder header/footer ownership, and make the
   shortcode body feel premium across all pages.
   ========================================================= */

.gts-system {
  --gts-shell: 1376px;
  --gts-gutter: clamp(34px, 5vw, 96px);
  --gts-section-tight: clamp(58px, 5vw, 84px);
  --gts-section-normal: clamp(76px, 6.4vw, 110px);
  --gts-section-feature: clamp(84px, 7.2vw, 126px);
  --gts-section-deep: clamp(94px, 8vw, 144px);
}

.gts-system .gts-shell {
  width: min(var(--gts-shell), calc(100vw - (var(--gts-gutter) * 2))) !important;
  margin-inline: auto !important;
}

/* Divi containment: keep plugin body full-bleed while content remains controlled. */
body .et_pb_section:has(.gts-system),
body .et_pb_row:has(.gts-system),
body .et_pb_column:has(.gts-system),
body .et_pb_module:has(.gts-system),
body .et_pb_code:has(.gts-system),
body .et_pb_code_inner:has(.gts-system) {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.gts-industrial-page {
  padding-top: 0 !important;
  padding-bottom: clamp(26px, 3.8vw, 62px) !important;
}

/* Hero: slightly calmer first screen with cleaner header handoff. */
.gts-page-home .gts-hero--industrial {
  min-height: clamp(680px, 76vh, 840px) !important;
  padding-top: clamp(58px, 5.8vw, 96px) !important;
  padding-bottom: 0 !important;
}

.gts-page-home .gts-hero__inner {
  min-height: clamp(500px, 58vh, 650px) !important;
  grid-template-columns: minmax(0, 1.06fr) minmax(390px, .68fr) !important;
  gap: clamp(42px, 5.4vw, 84px) !important;
  align-items: center !important;
}

.gts-page-home .gts-hero h1 {
  font-size: clamp(62px, 6.25vw, 108px) !important;
  line-height: .895 !important;
  letter-spacing: -.074em !important;
}

.gts-page-home .gts-hero .gts-lede {
  max-width: 690px !important;
  margin-top: clamp(20px, 2vw, 28px) !important;
  font-size: clamp(15px, .94vw, 17px) !important;
  line-height: 1.72 !important;
}

.gts-page-home .gts-command-panel--industrial {
  max-width: 490px !important;
  justify-self: end !important;
}

.gts-command-panel figure,
.gts-command-panel figure img {
  height: clamp(260px, 16.5vw, 318px) !important;
}

.gts-hero-rail--bento {
  transform: translateY(0) !important;
  margin-top: clamp(20px, 2.6vw, 40px) !important;
  margin-bottom: 0 !important;
  gap: 0 !important;
}

.gts-hero-rail--bento article {
  min-height: clamp(96px, 6.2vw, 124px) !important;
  padding: clamp(18px, 1.55vw, 26px) !important;
}

/* Section cadence: premium negative space without drifting. */
.gts-page-home .gts-section--bento {
  padding-top: clamp(76px, 6.6vw, 116px) !important;
  padding-bottom: clamp(56px, 5vw, 82px) !important;
}

.gts-page-home .gts-section--feature {
  padding-top: clamp(62px, 5.4vw, 94px) !important;
  padding-bottom: clamp(76px, 6.6vw, 114px) !important;
}

.gts-page-home .gts-section--solutions {
  padding-top: clamp(72px, 6.2vw, 104px) !important;
  padding-bottom: clamp(82px, 7vw, 124px) !important;
}

.gts-page-home .gts-section--projects {
  padding-top: clamp(76px, 6.4vw, 112px) !important;
  padding-bottom: clamp(60px, 5.2vw, 90px) !important;
}

.gts-page-home .gts-section--latest {
  padding-top: clamp(44px, 4.5vw, 72px) !important;
  padding-bottom: clamp(72px, 6.2vw, 104px) !important;
}

/* Bento: balanced card weight, less auto-generated feeling. */
.gts-proof-bento {
  gap: clamp(12px, 1vw, 18px) !important;
}
.gts-proof-bento .gts-bento-card,
.gts-proof-bento .gts-bento-card--large,
.gts-proof-bento .gts-bento-card--wide {
  min-height: clamp(138px, 8.7vw, 184px) !important;
}
.gts-bento-card strong {
  font-size: clamp(22px, 1.68vw, 32px) !important;
}

/* Feature card: maintain hero-proof feel with better image presence. */
.gts-feature {
  min-height: clamp(460px, 34vw, 560px) !important;
  grid-template-columns: minmax(360px, .72fr) minmax(0, 1.28fr) !important;
}
.gts-feature__media,
.gts-feature__media figure {
  min-height: clamp(460px, 34vw, 560px) !important;
}
.gts-feature__copy h2 {
  font-size: clamp(36px, 3.75vw, 66px) !important;
}
.gts-feature__copy p {
  max-width: 520px !important;
}

/* Service grid: preserve readability and reduce hollow empty areas. */
.gts-card-grid--solutions {
  gap: clamp(13px, 1.1vw, 20px) !important;
}
.gts-card-grid--solutions .gts-card {
  min-height: clamp(184px, 11.2vw, 228px) !important;
}
.gts-card a,
.gts-project-card a {
  margin-top: clamp(18px, 1.5vw, 24px) !important;
}

/* Project proof: keep first card prestigious but not bulky. */
.gts-project-grid {
  gap: clamp(14px, 1.15vw, 22px) !important;
}
.gts-project-card img {
  height: clamp(220px, 14.6vw, 290px) !important;
}
.gts-project-card--featured img {
  height: clamp(260px, 17vw, 330px) !important;
}
.gts-project-card > div {
  padding: clamp(22px, 1.8vw, 30px) !important;
}

/* Latest section: stronger scan, cleaner row geometry. */
.gts-news-intro {
  max-width: 640px !important;
}
.gts-news-item {
  min-height: clamp(78px, 5vw, 96px) !important;
  padding: clamp(12px, 1vw, 18px) clamp(16px, 1.4vw, 24px) !important;
}

/* CTA: make final block feel like a closing statement, not another card. */
.gts-cta {
  padding-top: clamp(74px, 6.4vw, 110px) !important;
  padding-bottom: clamp(54px, 5vw, 82px) !important;
}
.gts-cta__inner {
  min-height: clamp(230px, 15vw, 300px) !important;
  grid-template-columns: minmax(0, .96fr) minmax(280px, .52fr) auto !important;
  padding: clamp(38px, 4.4vw, 70px) !important;
}
.gts-cta__inner h2 {
  max-width: 650px !important;
}
.gts-cta p {
  max-width: 430px !important;
}

/* Inner pages: unified rhythm, faster scan than homepage. */
.gts-site-body:not(.gts-page-home) .gts-hero--industrial {
  min-height: clamp(450px, 50vh, 600px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-hero__inner {
  min-height: clamp(340px, 36vh, 460px) !important;
}
.gts-site-body:not(.gts-page-home) .gts-section,
.gts-site-body:not(.gts-page-home) .gts-cta {
  padding-block: clamp(64px, 5.8vw, 98px) !important;
}

@media (min-width: 1600px) {
  .gts-system { --gts-shell: 1500px; }
  .gts-page-home .gts-hero h1 {
    font-size: clamp(86px, 5.4vw, 128px) !important;
  }
}

@media (min-width: 1920px) {
  .gts-system { --gts-shell: 1640px; --gts-gutter: clamp(78px, 6vw, 148px); }
}

@media (max-width: 1180px) {
  .gts-page-home .gts-hero__inner {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
  }
  .gts-page-home .gts-command-panel--industrial {
    justify-self: start !important;
    max-width: 720px !important;
  }
  .gts-feature,
  .gts-cta__inner {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  .gts-system { --gts-gutter: 22px; }
  .gts-page-home .gts-hero--industrial {
    min-height: auto !important;
    padding-top: clamp(42px, 10vw, 64px) !important;
  }
  .gts-page-home .gts-hero h1 {
    font-size: clamp(42px, 13.2vw, 68px) !important;
    letter-spacing: -.065em !important;
  }
  .gts-command-panel figure,
  .gts-command-panel figure img {
    height: clamp(220px, 54vw, 300px) !important;
  }
  .gts-feature__media,
  .gts-feature__media figure {
    min-height: 330px !important;
  }
  .gts-cta__inner {
    padding: clamp(28px, 8vw, 42px) !important;
  }
}


@media (max-width: 1180px) {
  .gts-video-feature { grid-template-columns: 1fr; }
  .gts-video-feature__copy { min-height: auto; }
  .gts-partner-video { min-height: 320px; }
}
@media (max-width: 700px) {
  .gts-section--partner-video { padding-top: 24px; }
  .gts-video-feature { padding: 14px; border-radius: 22px; }
  .gts-video-feature__copy { padding: 8px; }
  .gts-video-frame { border-radius: 18px; min-height: 0; }
  .gts-partner-video { min-height: 220px; }
  .gts-video-frame__caption { align-items: flex-start; flex-direction: column; }
}


/* v0.9.0 client-editing refinements */
.gts-custom-content {
  border: 1px solid var(--gts-line);
  border-radius: var(--gts-radius-lg);
  background: linear-gradient(180deg, rgba(255,255,255,.028), rgba(255,255,255,.012));
  padding: clamp(28px, 5vw, 64px);
  color: var(--gts-soft);
}
.gts-custom-content :is(h1,h2,h3,h4) { color: var(--gts-text); margin-bottom: .6em; }
.gts-custom-content p { color: var(--gts-muted); line-height: 1.75; margin-bottom: 1.2em; }
.gts-custom-content a { color: var(--gts-green); }
.gts-divi-contact-form { margin-top: clamp(22px, 3vw, 34px); }
.gts-divi-contact-form .et_pb_contact_form { margin-left: 0 !important; }
.gts-divi-contact-form .et_pb_contact_field { padding-left: 0 !important; margin-bottom: 14px !important; }
.gts-divi-contact-form input,
.gts-divi-contact-form textarea,
.gts-divi-contact-form select,
.gts-divi-contact-form .input {
  width: 100% !important;
  min-height: 54px !important;
  border-radius: 14px !important;
  border: 1px solid var(--gts-line) !important;
  background: rgba(255,255,255,.045) !important;
  color: var(--gts-text) !important;
  padding: 12px 16px !important;
  box-shadow: none !important;
}
.gts-divi-contact-form textarea { min-height: 160px !important; }
.gts-divi-contact-form button,
.gts-divi-contact-form .et_pb_contact_submit {
  border-radius: 999px !important;
  border: 0 !important;
  background: var(--gts-green) !important;
  color: #071008 !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.gts-form--fallback { margin-top: clamp(22px, 3vw, 34px); }
.gts-form--fallback .gts-form-grid { margin-top: 0; }
.gts-settings-shortcode-copy { font-family: var(--gts-mono, monospace); }


/* v0.9.1 — live contact/newsletter form hardening */
.gts-live-form { margin-top: clamp(22px, 3vw, 34px); }
.gts-live-form .gts-btn { border: 0; cursor: pointer; }
.gts-live-form .gts-btn:focus-visible,
.gts-subscribe button:focus-visible,
.gts-form input:focus-visible,
.gts-form select:focus-visible,
.gts-form textarea:focus-visible,
.gts-subscribe input:focus-visible {
  outline: 2px solid var(--gts-green);
  outline-offset: 3px;
}
.gts-hp-field {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  white-space: nowrap !important;
}
.gts-form-notice {
  margin: 0 0 16px;
  padding: 13px 15px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.045);
  color: var(--gts-soft);
  font-family: var(--gts-body);
  font-size: 14px;
  line-height: 1.5;
}
.gts-form-notice--success {
  border-color: rgba(101,255,92,.38);
  background: rgba(101,255,92,.075);
  color: #dfffe0;
}
.gts-form-notice--error {
  border-color: rgba(255,93,93,.36);
  background: rgba(255,93,93,.075);
  color: #ffdede;
}
.gts-form-notice--admin {
  border-color: rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
}
.gts-subscribe { display: grid; gap: 12px; }
.gts-subscribe input { margin-bottom: 0; }


/* =========================================================
   v0.9.4 UPDATES + SINGLE POST ROUTING POLISH
   Purpose: make standalone [gts_updates] pages and individual
   GTS update posts inherit the premium dark GTS body system
   instead of falling back to default WordPress/Divi blog styling.
   ========================================================= */
.gts-page-updates,
.gts-update-single {
  --gts-shell: 1376px;
  --gts-gutter: clamp(34px, 5vw, 96px);
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  background:
    radial-gradient(circle at 75% 8%, rgba(103, 246, 93, .10), transparent 26%),
    linear-gradient(180deg, #020403 0%, #07110d 45%, #030706 100%) !important;
}

.gts-page-updates .gts-section--updates-index {
  min-height: clamp(640px, 74vh, 860px);
  padding-top: clamp(86px, 8vw, 132px) !important;
  padding-bottom: clamp(92px, 9vw, 150px) !important;
  background-image:
    linear-gradient(rgba(103,246,93,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103,246,93,.035) 1px, transparent 1px);
  background-size: 86px 86px;
}

.gts-page-updates .gts-section__head--split {
  align-items: end !important;
  border-top: 1px solid rgba(103,246,93,.20);
  padding-top: clamp(32px, 4vw, 56px);
  margin-bottom: clamp(36px, 4vw, 60px) !important;
}

.gts-page-updates .gts-section__head h2 {
  max-width: 820px;
  font-size: clamp(58px, 7vw, 118px) !important;
  line-height: .88 !important;
  letter-spacing: -.075em !important;
}

.gts-page-updates .gts-news-intro {
  max-width: 720px;
  color: var(--gts-soft) !important;
  font-size: clamp(16px, 1.2vw, 20px);
}

.gts-page-updates .gts-news-list {
  gap: clamp(14px, 1.4vw, 22px) !important;
}

.gts-page-updates .gts-news-item {
  min-height: clamp(112px, 7vw, 142px) !important;
  grid-template-columns: clamp(92px, 7vw, 142px) clamp(112px, 10vw, 166px) 1fr clamp(96px, 9vw, 148px) 32px !important;
  padding: clamp(14px, 1.2vw, 20px) !important;
  color: var(--gts-text) !important;
  background:
    radial-gradient(circle at 86% 20%, rgba(103,246,93,.14), transparent 32%),
    linear-gradient(180deg, rgba(11,21,17,.86), rgba(5,10,8,.82)) !important;
  box-shadow: 0 24px 90px rgba(0,0,0,.34) !important;
}

.gts-page-updates .gts-news-item img {
  width: 100% !important;
  height: clamp(72px, 5.6vw, 96px) !important;
}

.gts-page-updates .gts-news-item strong {
  color: var(--gts-text) !important;
  font-size: clamp(20px, 1.5vw, 28px) !important;
}

.gts-empty-state {
  grid-column: 1 / -1;
  padding: clamp(26px, 4vw, 56px);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(11,21,17,.86), rgba(5,10,8,.82));
  color: var(--gts-text);
}
.gts-empty-state h1,
.gts-empty-state h3 { margin: 18px 0; }
.gts-empty-state p:not(.gts-kicker) { color: var(--gts-muted); line-height: 1.7; }

.gts-update-hero {
  position: relative;
  padding: clamp(92px, 9vw, 150px) 0 clamp(68px, 7vw, 112px);
  background:
    radial-gradient(circle at 78% 12%, rgba(103,246,93,.14), transparent 28%),
    linear-gradient(180deg, rgba(3,7,6,.98), rgba(7,16,12,.92));
  overflow: hidden;
}
.gts-update-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(103,246,93,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103,246,93,.04) 1px, transparent 1px);
  background-size: 86px 86px;
  opacity: .78;
  pointer-events: none;
}
.gts-update-hero__grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(360px, .75fr);
  gap: clamp(34px, 5vw, 84px);
  align-items: center;
  z-index: 1;
}
.gts-update-hero h1 {
  margin-top: 18px;
  max-width: 860px;
  font-size: clamp(56px, 6.6vw, 112px);
  line-height: .88;
  letter-spacing: -.075em;
}
.gts-update-hero .gts-lede { margin-top: 24px; }
.gts-update-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 28px 0 34px;
}
.gts-update-meta span {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 999px;
  color: var(--gts-soft);
  font-family: var(--gts-mono);
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.gts-update-hero__media {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(103,246,93,.25);
  border-radius: 18px;
  background: rgba(8,15,12,.86);
  box-shadow: var(--gts-shadow);
}
.gts-update-hero__media img {
  width: 100%;
  height: clamp(320px, 34vw, 520px);
  object-fit: cover;
  filter: saturate(1.02) contrast(1.04);
}
.gts-update-hero__media figcaption {
  padding: 16px 18px;
  color: var(--gts-green);
  font-family: var(--gts-mono);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.gts-update-content-section {
  padding-top: clamp(68px, 7vw, 110px) !important;
  padding-bottom: clamp(80px, 8vw, 136px) !important;
}
.gts-update-content {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(320px, .32fr);
  gap: clamp(28px, 4vw, 70px);
  align-items: start;
}
.gts-update-content__main {
  padding: clamp(30px, 4vw, 66px);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(11,21,17,.86), rgba(5,10,8,.82));
  color: var(--gts-soft);
  font-size: clamp(17px, 1.1vw, 20px);
  line-height: 1.85;
}
.gts-update-content__main :where(h2,h3,h4) {
  margin: 1.5em 0 .55em;
  color: var(--gts-text);
}
.gts-update-content__main p + p { margin-top: 1em; }
.gts-update-content__main a { color: var(--gts-green); text-decoration: underline; text-underline-offset: 4px; }
.gts-update-sidebar {
  position: sticky;
  top: 110px;
  padding: clamp(24px, 3vw, 40px);
  border: 1px solid rgba(103,246,93,.22);
  border-radius: 16px;
  background:
    radial-gradient(circle at 85% 20%, rgba(103,246,93,.14), transparent 34%),
    linear-gradient(180deg, rgba(11,21,17,.92), rgba(5,10,8,.86));
  box-shadow: var(--gts-shadow-soft);
}
.gts-update-sidebar h3 {
  margin: 16px 0 14px;
  font-size: clamp(28px, 2.6vw, 46px);
  line-height: .95;
}
.gts-update-sidebar p:not(.gts-kicker) {
  color: var(--gts-muted);
  line-height: 1.7;
  margin-bottom: 24px;
}

body.single-gts_update #sidebar,
body.single-gts_update .et_pb_widget_area,
body.single-gts_update .widget-area { display: none !important; }
body.single-gts_update #main-content,
body.single-gts_update .container,
body.single-gts_update #left-area {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}

@media (max-width: 980px) {
  .gts-page-updates .gts-section__head--split,
  .gts-update-hero__grid,
  .gts-update-content {
    grid-template-columns: 1fr !important;
  }
  .gts-page-updates .gts-news-item {
    grid-template-columns: 92px 1fr 28px !important;
  }
  .gts-page-updates .gts-news-item span { grid-column: 2; }
  .gts-page-updates .gts-news-item em { display: none !important; }
  .gts-page-updates .gts-news-item b { grid-column: 3; grid-row: 1 / span 2; }
  .gts-update-sidebar { position: static; }
}
@media (max-width: 640px) {
  .gts-page-updates .gts-section--updates-index,
  .gts-update-hero { padding-top: 64px !important; }
  .gts-page-updates .gts-news-item {
    grid-template-columns: 1fr 24px !important;
  }
  .gts-page-updates .gts-news-item img {
    grid-column: 1 / -1;
    width: 100% !important;
    height: 180px !important;
  }
  .gts-page-updates .gts-news-item span,
  .gts-page-updates .gts-news-item strong { grid-column: 1; }
  .gts-page-updates .gts-news-item b { grid-column: 2; grid-row: 2 / span 2; }
}

/* =========================================================
   v0.9.5 PROJECTS + SOLUTIONS ROUTING POLISH
   Purpose: make standalone project/solution pages and individual
   detail posts inherit the same premium dark GTS system as Updates.
   ========================================================= */
.gts-page-projects,
.gts-page-solutions,
.gts-project-single,
.gts-solution-single,
.gts-detail-page {
  --gts-shell: 1376px;
  --gts-gutter: clamp(34px, 5vw, 96px);
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  background:
    radial-gradient(circle at 74% 7%, rgba(103, 246, 93, .12), transparent 27%),
    radial-gradient(circle at 15% 48%, rgba(103, 246, 93, .06), transparent 28%),
    linear-gradient(180deg, #020403 0%, #07110d 48%, #030706 100%) !important;
  color: var(--gts-text) !important;
}

.gts-page-projects-index .gts-section--projects-index,
.gts-page-solutions-index .gts-section--solutions-index {
  min-height: clamp(640px, 74vh, 860px);
  padding-top: clamp(86px, 8vw, 132px) !important;
  padding-bottom: clamp(92px, 9vw, 150px) !important;
  background-image:
    linear-gradient(rgba(103,246,93,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103,246,93,.035) 1px, transparent 1px);
  background-size: 86px 86px;
}

.gts-page-projects-index .gts-section__head--split,
.gts-page-solutions-index .gts-section__head--split {
  align-items: end !important;
  border-top: 1px solid rgba(103,246,93,.20);
  padding-top: clamp(32px, 4vw, 56px);
  margin-bottom: clamp(36px, 4vw, 60px) !important;
}

.gts-page-projects-index .gts-section__head h2,
.gts-page-solutions-index .gts-section__head h2 {
  max-width: 940px;
  font-size: clamp(54px, 6.2vw, 104px) !important;
  line-height: .88 !important;
  letter-spacing: -.075em !important;
}

.gts-detail-hero {
  position: relative;
  padding: clamp(92px, 9vw, 150px) 0 clamp(68px, 7vw, 112px);
  background:
    radial-gradient(circle at 76% 10%, rgba(103,246,93,.15), transparent 28%),
    linear-gradient(180deg, rgba(3,7,6,.98), rgba(7,16,12,.92));
  overflow: hidden;
}
.gts-detail-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(103,246,93,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103,246,93,.04) 1px, transparent 1px);
  background-size: 86px 86px;
  opacity: .78;
  pointer-events: none;
}
.gts-detail-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(360px, .75fr);
  gap: clamp(34px, 5vw, 84px);
  align-items: center;
}
.gts-detail-hero h1 {
  margin-top: 18px;
  max-width: 920px;
  font-size: clamp(56px, 6.6vw, 112px);
  line-height: .88;
  letter-spacing: -.075em;
}
.gts-detail-hero .gts-lede {
  margin-top: 24px;
  max-width: 760px;
  color: var(--gts-soft);
}
.gts-detail-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 28px 0 34px;
}
.gts-detail-meta span,
.gts-detail-chip-stack span {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 999px;
  color: var(--gts-soft);
  font-family: var(--gts-mono);
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.gts-detail-hero__media {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(103,246,93,.25);
  border-radius: 18px;
  background: rgba(8,15,12,.86);
  box-shadow: var(--gts-shadow);
}
.gts-detail-hero__media img {
  width: 100%;
  height: clamp(320px, 34vw, 520px);
  object-fit: cover;
  filter: saturate(1.02) contrast(1.04);
}
.gts-detail-hero__media figcaption {
  padding: 16px 18px;
  color: var(--gts-green);
  font-family: var(--gts-mono);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.gts-detail-content-section {
  padding-top: clamp(68px, 7vw, 110px) !important;
  padding-bottom: clamp(80px, 8vw, 136px) !important;
}
.gts-detail-content {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(320px, .32fr);
  gap: clamp(28px, 4vw, 70px);
  align-items: start;
}
.gts-detail-content__main {
  display: grid;
  gap: clamp(20px, 2vw, 34px);
}
.gts-detail-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(14px, 1.4vw, 22px);
}
.gts-detail-summary-grid article,
.gts-detail-richtext,
.gts-detail-sidebar {
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  background:
    radial-gradient(circle at 90% 12%, rgba(103,246,93,.10), transparent 32%),
    linear-gradient(180deg, rgba(11,21,17,.86), rgba(5,10,8,.82));
  box-shadow: var(--gts-shadow-soft);
}
.gts-detail-summary-grid article {
  padding: clamp(22px, 2.4vw, 38px);
}
.gts-detail-summary-grid__wide {
  grid-column: span 2;
}
.gts-detail-summary-grid h3,
.gts-detail-sidebar h3 {
  margin: 14px 0 12px;
  font-size: clamp(26px, 2.2vw, 38px);
  line-height: .96;
  letter-spacing: -.055em;
}
.gts-detail-summary-grid p:not(.gts-kicker),
.gts-detail-sidebar p:not(.gts-kicker) {
  color: var(--gts-muted);
  line-height: 1.75;
}
.gts-detail-richtext {
  padding: clamp(30px, 4vw, 66px);
  color: var(--gts-soft);
  font-size: clamp(17px, 1.1vw, 20px);
  line-height: 1.85;
}
.gts-detail-richtext :where(h2,h3,h4) {
  margin: 1.5em 0 .55em;
  color: var(--gts-text);
}
.gts-detail-richtext p + p { margin-top: 1em; }
.gts-detail-richtext a { color: var(--gts-green); text-decoration: underline; text-underline-offset: 4px; }
.gts-detail-sidebar {
  position: sticky;
  top: 110px;
  padding: clamp(24px, 3vw, 40px);
  border-color: rgba(103,246,93,.22);
}
.gts-detail-chip-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 20px 0 28px;
}
.gts-detail-chip-stack span {
  border-color: rgba(103,246,93,.22);
  color: var(--gts-green);
}

body.single-gts_project #sidebar,
body.single-gts-project #sidebar,
body.single-gts_solution #sidebar,
body.single-gts-solution #sidebar,
body.single-gts_project .et_pb_widget_area,
body.single-gts_solution .et_pb_widget_area,
body.single-gts_project .widget-area,
body.single-gts_solution .widget-area { display: none !important; }
body.single-gts_project #main-content,
body.single-gts-project #main-content,
body.single-gts_solution #main-content,
body.single-gts-solution #main-content,
body.single-gts_project .container,
body.single-gts_solution .container,
body.single-gts_project #left-area,
body.single-gts_solution #left-area {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}

@media (max-width: 980px) {
  .gts-page-projects-index .gts-section__head--split,
  .gts-page-solutions-index .gts-section__head--split,
  .gts-detail-hero__grid,
  .gts-detail-content,
  .gts-detail-summary-grid {
    grid-template-columns: 1fr !important;
  }
  .gts-detail-summary-grid__wide { grid-column: auto; }
  .gts-detail-sidebar { position: static; }
}
@media (max-width: 640px) {
  .gts-page-projects-index .gts-section--projects-index,
  .gts-page-solutions-index .gts-section--solutions-index,
  .gts-detail-hero { padding-top: 64px !important; }
  .gts-detail-hero h1 { font-size: clamp(44px, 14vw, 72px); }
  .gts-detail-hero__media img { height: 260px; }
}

/* =========================================================
   v0.9.6 — Solutions page navigation repair
   Fixes cramped inline solution tabs and turns the section into
   a responsive GTS system-layer index.
   ========================================================= */
.gts-system .gts-section--solution-nav {
  padding-top: clamp(54px, 5.5vw, 92px) !important;
  padding-bottom: clamp(42px, 4.8vw, 76px) !important;
  background:
    linear-gradient(rgba(103,246,93,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(103,246,93,.026) 1px, transparent 1px);
  background-size: 92px 92px;
}

.gts-system .gts-solution-tabs__head {
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(280px, .5fr);
  gap: clamp(22px, 3vw, 48px);
  align-items: end;
  padding-top: clamp(20px, 2.4vw, 34px);
  margin-bottom: clamp(22px, 3vw, 38px);
  border-top: 1px solid rgba(103,246,93,.20);
}

.gts-system .gts-solution-tabs__head h2 {
  margin: 0;
  max-width: 760px;
  font-family: var(--gts-display);
  font-size: clamp(38px, 4.6vw, 74px);
  line-height: .9;
  letter-spacing: -.065em;
  color: var(--gts-text);
}

.gts-system .gts-solution-tabs__head > p {
  max-width: 520px;
  margin: 0 0 .25rem;
  color: rgba(226, 238, 228, .68);
  font-size: clamp(14px, .9vw, 17px);
  line-height: 1.65;
}

.gts-system .gts-tabs.gts-solution-tabs {
  width: 100%;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(12px, 1.2vw, 18px) !important;
  align-items: stretch;
}

.gts-system .gts-tabs.gts-solution-tabs a.gts-solution-tab {
  grid-column: span 4;
  min-height: 156px;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
  padding: clamp(18px, 1.55vw, 26px);
  color: var(--gts-text) !important;
  text-decoration: none !important;
  border: 1px solid rgba(103,246,93,.16);
  border-radius: 14px;
  background:
    radial-gradient(circle at 82% 12%, rgba(103,246,93,.12), transparent 34%),
    linear-gradient(180deg, rgba(11,24,17,.72), rgba(4,9,7,.84));
  box-shadow: 0 18px 52px rgba(0,0,0,.22);
  overflow: hidden;
  position: relative;
  transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.gts-system .gts-tabs.gts-solution-tabs a.gts-solution-tab::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(103,246,93,.55), transparent 72%);
  opacity: .35;
}

.gts-system .gts-tabs.gts-solution-tabs a.gts-solution-tab:hover,
.gts-system .gts-tabs.gts-solution-tabs a.gts-solution-tab:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(103,246,93,.45);
  background:
    radial-gradient(circle at 80% 10%, rgba(103,246,93,.20), transparent 36%),
    linear-gradient(180deg, rgba(12,31,21,.86), rgba(5,12,9,.92));
  box-shadow: 0 24px 70px rgba(0,0,0,.32);
  outline: none;
}

.gts-system .gts-tabs.gts-solution-tabs .gts-icon {
  min-width: 44px;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  border-radius: 6px;
  border: 1px solid rgba(103,246,93,.32);
  background: rgba(103,246,93,.10);
  color: var(--gts-green);
  font-family: var(--gts-mono);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .06em;
  flex: 0 0 auto;
  mask-image: none !important;
}

.gts-system .gts-solution-tab__copy {
  min-width: 0;
  display: block;
}

.gts-system .gts-solution-tab__copy strong {
  display: block;
  margin: 1px 0 8px;
  color: var(--gts-text);
  font-family: var(--gts-display);
  font-size: clamp(19px, 1.25vw, 25px);
  line-height: 1;
  letter-spacing: -.045em;
}

.gts-system .gts-solution-tab__copy em {
  display: block;
  max-width: 38ch;
  color: rgba(224,238,228,.58);
  font-style: normal;
  font-size: clamp(12px, .72vw, 14px);
  line-height: 1.55;
}

.gts-system .gts-solution-tab__arrow {
  align-self: start;
  color: var(--gts-green);
  font-family: var(--gts-mono);
  font-size: 15px;
  line-height: 1;
  opacity: .85;
  transform: translateX(0);
  transition: transform .22s ease, opacity .22s ease;
}

.gts-system .gts-solution-tab:hover .gts-solution-tab__arrow,
.gts-system .gts-solution-tab:focus-visible .gts-solution-tab__arrow {
  transform: translateX(4px);
  opacity: 1;
}

.gts-system.gts-page-solutions .gts-section--solutions-index {
  padding-top: clamp(54px, 5vw, 84px) !important;
}

@media (max-width: 1180px) {
  .gts-system .gts-tabs.gts-solution-tabs a.gts-solution-tab {
    grid-column: span 6;
  }
}

@media (max-width: 860px) {
  .gts-system .gts-solution-tabs__head {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .gts-system .gts-tabs.gts-solution-tabs {
    grid-template-columns: 1fr;
  }

  .gts-system .gts-tabs.gts-solution-tabs a.gts-solution-tab {
    grid-column: 1 / -1;
    min-height: 128px;
  }
}

@media (max-width: 560px) {
  .gts-system .gts-tabs.gts-solution-tabs a.gts-solution-tab {
    grid-template-columns: 1fr auto;
    gap: 12px;
  }

  .gts-system .gts-tabs.gts-solution-tabs .gts-icon {
    grid-column: 1 / -1;
    width: max-content;
  }
}


/* =========================================================
   v0.9.7 — Divi Theme Builder Header/Footer Shortcodes
   Shortcodes: [gts_header] [gts_global_header] [gts_footer] [gts_global_footer]
   Scoped only to global shortcode wrappers so page-body workflow remains intact.
   ========================================================= */
.gts-global-header,
.gts-global-footer {
  --gts-header-green: #58ff52;
  --gts-header-ink: #000000;
  --gts-header-panel: #020805;
  --gts-header-line: rgba(88, 255, 82, .18);
  --gts-header-text: rgba(255, 255, 255, .88);
  --gts-header-muted: rgba(255, 255, 255, .58);
  box-sizing: border-box;
  font-family: "IBM Plex Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.gts-global-header *,
.gts-global-footer * { box-sizing: border-box; }

.gts-global-header {
  position: relative;
  z-index: 9999;
  width: 100%;
  background: rgba(0, 0, 0, .98);
  border-bottom: 1px solid var(--gts-header-line);
  color: #fff;
}
.gts-global-header__shell {
  width: min(92vw, 1220px);
  min-height: 76px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: clamp(18px, 3vw, 42px);
}
.gts-global-header__nav {
  display: flex;
  align-items: center;
  gap: clamp(16px, 1.65vw, 28px);
}
.gts-global-header__nav--left { justify-content: flex-end; }
.gts-global-header__nav--right { justify-content: flex-start; }
.gts-global-header a {
  text-decoration: none !important;
}
.gts-global-nav-link,
.gts-global-header__search,
.gts-global-header__cta {
  color: var(--gts-header-text);
  font-family: "IBM Plex Mono", "Space Mono", monospace;
  font-size: clamp(10px, .68vw, 12px);
  font-weight: 700;
  letter-spacing: .085em;
  line-height: 1;
  text-transform: uppercase;
  transition: color .18s ease, opacity .18s ease, transform .18s ease, border-color .18s ease, background .18s ease;
}
.gts-global-nav-link:hover,
.gts-global-nav-link:focus-visible,
.gts-global-nav-link.is-active,
.gts-global-header__search:hover,
.gts-global-header__search:focus-visible {
  color: var(--gts-header-green);
  outline: none;
}
.gts-global-header__brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
}
.gts-global-header__brand img {
  display: block;
  width: clamp(124px, 9vw, 166px);
  height: auto;
}
.gts-global-header__search {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  font-size: 18px;
  letter-spacing: 0;
  transform: translateY(-1px);
}
.gts-global-header__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 16px;
  border: 1px solid rgba(88,255,82,.34);
  border-radius: 999px;
  background: rgba(88,255,82,.10);
  color: #fff;
}
.gts-global-header__cta:hover,
.gts-global-header__cta:focus-visible {
  color: #000;
  background: var(--gts-header-green);
  outline: none;
}
.gts-global-header__toggle {
  display: none;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(88,255,82,.24);
  border-radius: 999px;
  background: rgba(88,255,82,.08);
  color: #fff;
  cursor: pointer;
}
.gts-global-header__toggle span {
  display: block;
  width: 18px;
  height: 2px;
  margin: 4px auto;
  background: var(--gts-header-green);
  transition: transform .2s ease, opacity .2s ease;
}
.gts-global-header.is-open .gts-global-header__toggle span:first-child { transform: translateY(3px) rotate(45deg); }
.gts-global-header.is-open .gts-global-header__toggle span:last-child { transform: translateY(-3px) rotate(-45deg); }
.gts-global-header__mobile {
  display: none;
  width: min(92vw, 1220px);
  margin: 0 auto;
  padding: 0 0 18px;
}
.gts-global-header__mobile nav {
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid rgba(88,255,82,.18);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(6, 15, 10, .98), rgba(0, 0, 0, .98));
}
.gts-global-header__mobile a {
  padding: 12px 10px;
  color: var(--gts-header-text);
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.gts-global-header__mobile a:hover,
.gts-global-header__mobile a:focus-visible { color: var(--gts-header-green); outline: none; }
.gts-global-header__mobile-cta {
  margin-top: 6px;
  border: 1px solid rgba(88,255,82,.28) !important;
  border-radius: 999px;
  text-align: center;
  background: rgba(88,255,82,.10);
}

.gts-global-footer {
  width: 100%;
  color: #fff;
  background:
    linear-gradient(rgba(88,255,82,.026) 1px, transparent 1px),
    linear-gradient(90deg, rgba(88,255,82,.020) 1px, transparent 1px),
    linear-gradient(180deg, #020705, #000 82%);
  background-size: 92px 92px, 92px 92px, auto;
  border-top: 1px solid rgba(88,255,82,.16);
}
.gts-global-footer__shell {
  width: min(92vw, 1220px);
  margin-inline: auto;
}
.gts-global-footer__main {
  display: grid;
  grid-template-columns: minmax(260px, 1.25fr) repeat(3, minmax(160px, .72fr));
  gap: clamp(28px, 4vw, 72px);
  padding-block: clamp(56px, 6vw, 88px) clamp(38px, 4vw, 58px);
}
.gts-global-footer__brand img {
  display: block;
  width: clamp(136px, 10vw, 174px);
  height: auto;
  margin-bottom: 18px;
}
.gts-global-footer__brand p,
.gts-global-footer__col p {
  max-width: 315px;
  margin: 0;
  color: var(--gts-header-muted);
  font-size: 14px;
  line-height: 1.72;
}
.gts-global-footer__col {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.gts-global-footer__col h3 {
  margin: 0 0 8px;
  color: #fff;
  font-family: "IBM Plex Mono", monospace;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .13em;
  line-height: 1;
  text-transform: uppercase;
}
.gts-global-footer__col a {
  width: fit-content;
  color: rgba(255,255,255,.64);
  font-size: 14px;
  line-height: 1.45;
  transition: color .18s ease, transform .18s ease;
}
.gts-global-footer__col a:hover,
.gts-global-footer__col a:focus-visible {
  color: var(--gts-header-green);
  transform: translateX(2px);
  outline: none;
}
.gts-global-footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-block: 18px 24px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.gts-global-footer__bottom p {
  margin: 0;
  color: rgba(255,255,255,.58);
  font-family: "IBM Plex Mono", monospace;
  font-size: 11px;
  letter-spacing: .04em;
}
.gts-global-footer__socials {
  display: flex;
  align-items: center;
  gap: 16px;
}
.gts-global-footer__socials a {
  color: var(--gts-header-green);
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none !important;
  opacity: .82;
  transition: opacity .18s ease, transform .18s ease;
}
.gts-global-footer__socials a:hover,
.gts-global-footer__socials a:focus-visible {
  opacity: 1;
  transform: translateY(-1px);
  outline: none;
}

@media (max-width: 980px) {
  .gts-global-header__shell {
    grid-template-columns: 1fr auto 1fr;
    min-height: 70px;
  }
  .gts-global-header__nav { display: none; }
  .gts-global-header__brand { grid-column: 2; }
  .gts-global-header__toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    grid-column: 3;
    justify-self: end;
  }
  .gts-global-header.is-open .gts-global-header__mobile { display: block; }
  .gts-global-footer__main { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .gts-global-header__shell { width: min(90vw, 1220px); }
  .gts-global-header__brand img { width: 126px; }
  .gts-global-footer__main { grid-template-columns: 1fr; }
  .gts-global-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}


/* =========================================================
   v1.0.2 — Global hero real CTA buttons
   Keeps hero conversion controls visually premium on every page
   instead of rendering as bare mono text links.
========================================================= */
.gts-system .gts-hero .gts-actions {
  display: flex !important;
  align-items: center !important;
  gap: clamp(12px, 1.3vw, 18px) !important;
  flex-wrap: wrap !important;
}

.gts-system .gts-hero .gts-actions .gts-btn {
  position: relative;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  min-height: 54px !important;
  padding: 0 24px !important;
  border: 1px solid rgba(88, 255, 82, 0.36) !important;
  border-radius: 10px !important;
  clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 12px 100%, 0 calc(100% - 12px)) !important;
  font-family: var(--gts-mono) !important;
  font-size: clamp(11px, 0.72vw, 13px) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease, box-shadow 180ms ease !important;
}

.gts-system .gts-hero .gts-actions .gts-btn span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  line-height: 1 !important;
  transition: transform 180ms ease !important;
}

.gts-system .gts-hero .gts-actions .gts-btn--primary {
  color: #001904 !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.34), transparent 32%),
    linear-gradient(180deg, #6cff62, #46e73e) !important;
  border-color: rgba(114,255,104,.78) !important;
  box-shadow: 0 0 0 1px rgba(88,255,82,.18), 0 18px 44px rgba(70,231,62,.22) !important;
}

.gts-system .gts-hero .gts-actions .gts-btn--primary span {
  color: #001904 !important;
  background: rgba(0, 0, 0, 0.12) !important;
}

.gts-system .gts-hero .gts-actions .gts-btn--ghost {
  color: rgba(246, 251, 246, 0.96) !important;
  background:
    linear-gradient(135deg, rgba(88,255,82,.12), rgba(255,255,255,.025)),
    rgba(3, 10, 7, 0.76) !important;
  border-color: rgba(255,255,255,.18) !important;
  box-shadow: inset 0 0 0 1px rgba(88,255,82,.08) !important;
}

.gts-system .gts-hero .gts-actions .gts-btn--ghost span {
  color: var(--gts-green) !important;
  background: rgba(88,255,82,.08) !important;
}

.gts-system .gts-hero .gts-actions .gts-btn:hover,
.gts-system .gts-hero .gts-actions .gts-btn:focus-visible {
  transform: translateY(-2px) !important;
  outline: none !important;
}

.gts-system .gts-hero .gts-actions .gts-btn--primary:hover,
.gts-system .gts-hero .gts-actions .gts-btn--primary:focus-visible {
  box-shadow: 0 0 0 1px rgba(88,255,82,.22), 0 24px 58px rgba(70,231,62,.28) !important;
}

.gts-system .gts-hero .gts-actions .gts-btn--ghost:hover,
.gts-system .gts-hero .gts-actions .gts-btn--ghost:focus-visible {
  border-color: rgba(88,255,82,.48) !important;
  background:
    linear-gradient(135deg, rgba(88,255,82,.18), rgba(255,255,255,.035)),
    rgba(3, 10, 7, 0.84) !important;
}

.gts-system .gts-hero .gts-actions .gts-btn:hover span,
.gts-system .gts-hero .gts-actions .gts-btn:focus-visible span {
  transform: translateX(2px) !important;
}

@media (max-width: 640px) {
  .gts-system .gts-hero .gts-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .gts-system .gts-hero .gts-actions .gts-btn {
    width: 100% !important;
  }
}
