* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 110px;
}
body {
  color: #28312b;
  -webkit-font-smoothing: antialiased;
  background: #fff;
  margin: 0;
  font-family:
    Arial,
    Hiragino Kaku Gothic ProN,
    Yu Gothic,
    Meiryo,
    sans-serif;
  font-size: 16px;
  line-height: 1.9;
}
a {
  color: inherit;
  text-decoration: none;
}
button,
input,
textarea,
select {
  font: inherit;
}
button,
a {
  -webkit-tap-highlight-color: transparent;
}
button {
  cursor: pointer;
}
svg,
img {
  max-width: 100%;
  display: block;
}
button:focus-visible,
a:focus-visible {
  outline-offset: 5px;
  outline: 3px solid #4d7e28;
}
::selection {
  background: #deedce;
}
h1,
h2,
h3,
p {
  margin: 0;
}
h1,
h2,
h3 {
  text-wrap: balance;
}
dialog {
  color: inherit;
}
body:has(dialog[open]) {
  overflow: hidden;
}
section[id] {
  scroll-margin-top: 30px;
}
.skip-link {
  z-index: 200;
  color: #fff;
  background: #28312b;
  padding: 12px 20px;
  position: fixed;
  top: -70px;
  left: 16px;
}
.skip-link:focus {
  top: 12px;
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  :before,
  :after {
    transition: none !important;
    animation: none !important;
  }
}

.tl-contact-form-form {
  color: #344c5b;
  width: 100%;
  min-width: 0;
  max-width: 780px;
  margin-inline: auto;
}
.tl-contact-form-form [hidden] {
  display: none !important;
}
.tl-contact-form-honeypot {
  clip-path: inset(50%);
  pointer-events: none;
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
}
.tl-contact-form-postalRow {
  align-items: stretch;
  gap: 10px;
  max-width: 370px;
  display: flex;
}
.tl-contact-form-postalRow input {
  flex: 1;
  width: 0;
}
.tl-contact-form-postalButton {
  color: #366889;
  background: #f5f8fa;
  border: 1px solid #bccdd8;
  border-radius: 4px;
  flex-shrink: 0;
  padding: 8px 14px;
  font-size: 13px;
}
.tl-contact-form-postalButton:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #366889;
}
.tl-contact-form-fieldHelp {
  color: #637986;
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.8;
}
.tl-contact-form-fieldHelp:empty {
  display: none;
}
.tl-contact-form-field .tl-contact-form-detailLabel {
  margin: 16px 0 8px;
  padding: 0;
  font-size: 13px;
  font-weight: 400;
}
.tl-contact-form-challenge {
  justify-content: center;
  max-width: 100%;
  min-height: 65px;
  margin: 25px auto 0;
  display: flex;
}
.tl-contact-form-previewNotice {
  color: #566f7f;
  background: #f5f8fa;
  border: 1px solid #dce6ec;
  padding: 15px 19px;
  font-size: 13px;
  line-height: 1.9;
}
.tl-contact-form-status {
  color: #365f79;
  margin-top: 18px;
  font-size: 14px;
  line-height: 1.8;
}
.tl-contact-form-requiredNote {
  color: #637986;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 27px 0 14px;
  font-size: 12px;
  display: flex;
}
.tl-contact-form-required,
.tl-contact-form-optional {
  border-radius: 3px;
  flex-shrink: 0;
  padding: 2px 6px;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.6;
  display: inline-block;
}
.tl-contact-form-required {
  color: #366889;
  background: #e9f1f6;
}
.tl-contact-form-optional {
  color: #6b7c86;
  background: #f0f2f4;
}
.tl-contact-form-fields {
  border-top: 1px solid #dce4e9;
}
.tl-contact-form-field {
  border-bottom: 1px solid #dce4e9;
  grid-template-columns: 190px minmax(0, 1fr);
  align-items: start;
  gap: 22px;
  padding: 23px 0;
  display: grid;
}
.tl-contact-form-field label {
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  padding-top: 12px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.8;
  display: flex;
}
.tl-contact-form-field input,
.tl-contact-form-field select,
.tl-contact-form-field textarea {
  color: #344c5b;
  background: #fff;
  border: 1px solid #bccdd8;
  border-radius: 4px;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 11px 13px;
  font-size: 16px;
  line-height: 1.65;
  display: block;
}
.tl-contact-form-field input,
.tl-contact-form-field select {
  min-height: 50px;
}
.tl-contact-form-field select {
  padding-right: 30px;
}
.tl-contact-form-field textarea {
  resize: vertical;
  min-height: 180px;
}
.tl-contact-form-field input:focus,
.tl-contact-form-field select:focus,
.tl-contact-form-field textarea:focus {
  outline-offset: 2px;
  border-color: #366889;
  outline: 2px solid #366889;
}
.tl-contact-form-actions {
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  margin-top: 30px;
  display: flex;
}
.tl-contact-form-primaryButton,
.tl-contact-form-editButton {
  text-align: center;
  border: 1px solid #366889;
  border-radius: 5px;
  justify-content: center;
  align-items: center;
  min-width: 220px;
  max-width: 100%;
  min-height: 52px;
  padding: 12px 24px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.7;
  display: inline-flex;
}
.tl-contact-form-primaryButton {
  color: #fff;
  background: #366889;
}
.tl-contact-form-primaryButton:hover:not(:disabled) {
  background: #2a546e;
  border-color: #2a546e;
}
.tl-contact-form-editButton {
  color: #366889;
  background: #fff;
}
.tl-contact-form-editButton:hover {
  background: #f0f5f8;
}
.tl-contact-form-primaryButton:disabled {
  cursor: not-allowed;
  color: #71838f;
  background: #e8edf0;
  border-color: #d4dfe6;
}
.tl-contact-form-primaryButton:focus-visible,
.tl-contact-form-editButton:focus-visible {
  outline-offset: 4px;
  outline: 2px solid #366889;
}
.tl-contact-form-confirmation {
  margin-top: 30px;
  scroll-margin-top: 120px;
}
.tl-contact-form-confirmation:focus {
  outline: none;
}
.tl-contact-form-confirmation h2 {
  color: #344c5b;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.6;
}
.tl-contact-form-confirmationLead {
  color: #637986;
  margin-top: 12px;
  font-size: 14px;
  line-height: 1.9;
}
.tl-contact-form-reviewList {
  border-top: 1px solid #dce4e9;
  margin: 26px 0 0;
  padding: 0;
}
.tl-contact-form-reviewList > div {
  border-bottom: 1px solid #dce4e9;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 22px;
  padding: 20px 0;
  display: grid;
}
.tl-contact-form-reviewList dt {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.9;
}
.tl-contact-form-reviewList dd {
  color: #465f6f;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  min-width: 0;
  margin: 0;
  font-size: 15px;
  line-height: 1.9;
}
.tl-contact-form-sendNote {
  color: #637986;
  text-align: center;
  margin-top: 25px;
  font-size: 13px;
  line-height: 1.9;
}
@media (max-width: 640px) {
  .tl-contact-form-previewNotice {
    padding: 13px 15px;
    font-size: 12px;
  }
  .tl-contact-form-status {
    font-size: 13px;
  }
  .tl-contact-form-requiredNote {
    margin-top: 22px;
  }
  .tl-contact-form-field {
    grid-template-columns: 1fr;
    gap: 10px;
    padding-block: 19px;
  }
  .tl-contact-form-field label {
    padding-top: 0;
    font-size: 14px;
  }
  .tl-contact-form-field textarea {
    min-height: 170px;
  }
  .tl-contact-form-actions {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    margin-top: 25px;
  }
  .tl-contact-form-primaryButton,
  .tl-contact-form-editButton {
    width: 100%;
    min-width: 0;
  }
  .tl-contact-form-confirmation {
    margin-top: 25px;
    scroll-margin-top: 90px;
  }
  .tl-contact-form-confirmation h2 {
    font-size: 22px;
  }
  .tl-contact-form-confirmationLead {
    font-size: 13px;
  }
  .tl-contact-form-reviewList > div {
    grid-template-columns: 1fr;
    gap: 7px;
    padding-block: 17px;
  }
  .tl-contact-form-reviewList dt {
    font-size: 13px;
  }
  .tl-contact-form-reviewList dd {
    font-size: 14px;
  }
  .tl-contact-form-sendNote {
    text-align: left;
    font-size: 12px;
  }
}
.tl-site-container {
  width: calc(100% - 112px);
  max-width: 1280px;
  margin-inline: auto;
}
.tl-site-header {
  border-bottom: 1px solid var(--site-e7eae5, #e7eae5);
  z-index: 50;
  background: #fffffffa;
  height: 100px;
  position: sticky;
  top: 0;
}
.tl-site-headerInner {
  justify-content: space-between;
  align-items: center;
  gap: 35px;
  max-width: 1480px;
  height: 100%;
  margin: auto;
  padding-inline: 40px;
  display: flex;
}
.tl-site-brand {
  flex-shrink: 0;
  display: inline-block;
}
.tl-site-brand img {
  width: 175px;
  height: auto;
}
.tl-site-mainNav {
  align-items: center;
  gap: 23px;
  display: flex;
}
.tl-site-mainNav > a {
  white-space: nowrap;
  font-size: 14px;
  font-weight: 600;
  transition: color 0.2s;
}
.tl-site-mainNav > a:hover {
  color: var(--site-507b30, #507b30);
}
.tl-site-mainNav .tl-site-navCta {
  background: var(--site-7db848, #7db848);
  color: var(--site-16280a, #16280a);
  align-items: center;
  gap: 18px;
  padding: 13px 18px;
  display: flex;
}
.tl-site-mainNav .tl-site-navCta:hover {
  background: var(--site-6eaa3c, #6eaa3c);
  color: var(--site-142409, #142409);
}
.tl-site-menuToggle {
  display: none;
}
.tl-site-hero {
  grid-template-columns: 1fr 1.1fr;
  column-gap: 15px;
  max-width: 1440px;
  margin: auto;
  padding: 68px 56px 0;
  display: grid;
  position: relative;
}
.tl-site-heroContent {
  z-index: 1;
  padding: 20px 0 25px;
}
.tl-site-eyebrow {
  letter-spacing: 0.15em;
  color: var(--site-597947, #597947);
  margin-bottom: 24px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
}
.tl-site-hero h1 {
  letter-spacing: 0.025em;
  white-space: nowrap;
  margin-bottom: 23px;
  font-size: clamp(34px, 3.25vw, 49px);
  font-weight: 600;
  line-height: 1.65;
}
.tl-site-hero h1 span {
  position: relative;
}
.tl-site-hero h1 span:after {
  content: "";
  background: var(--site-7db848, #7db848);
  width: 100%;
  height: 3px;
  position: absolute;
  bottom: -7px;
  left: 0;
}
.tl-site-heroLead {
  letter-spacing: 0.04em;
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: 600;
}
.tl-site-heroText {
  color: var(--site-626b63, #626b63);
  max-width: 440px;
  font-size: 15px;
  line-height: 2.05;
}
.tl-site-heroActions {
  align-items: center;
  gap: 29px;
  margin-top: 30px;
  display: flex;
}
.tl-site-button {
  background: var(--site-28362b, #28362b);
  color: #fff;
  border: 1px solid var(--site-28362b, #28362b);
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  gap: 32px;
  min-height: 57px;
  padding: 14px 25px;
  font-size: 15px;
  font-weight: 600;
  transition: background 0.2s;
  display: inline-flex;
}
.tl-site-button:hover {
  background: var(--site-426331, #426331);
}
.tl-site-button svg {
  flex-shrink: 0;
}
.tl-site-secondary {
  color: var(--site-28362b, #28362b);
  border-color: var(--site-b9c7b1, #b9c7b1);
  background: 0 0;
}
.tl-site-secondary:hover {
  background: var(--site-e7efdf, #e7efdf);
}
.tl-site-textLink {
  align-items: center;
  gap: 16px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
}
.tl-site-textLink:hover {
  color: var(--site-537c36, #537c36);
}
.tl-site-heroVisual {
  align-self: center;
  padding-top: 40px;
  position: relative;
}
.tl-site-heroVisualNote {
  color: var(--site-6e7869, #6e7869);
  letter-spacing: 0.08em;
  justify-content: space-between;
  margin-inline: 35px;
  font-size: 12px;
  display: flex;
}
.tl-site-heroVisualNote span:last-child {
  letter-spacing: 0.13em;
  font-size: 10px;
}
.tl-site-illustration {
  width: 100%;
  overflow: hidden;
}
.tl-site-illustration svg {
  width: 100%;
  height: auto;
}
.tl-site-heroVisual .tl-site-illustration {
  margin-top: -2px;
}
.tl-site-visualCaption {
  text-align: center;
  color: var(--site-70796c, #70796c);
  margin-top: -12px;
  font-size: 13px;
}
.tl-site-heroBottom {
  border-top: 1px solid var(--site-e0e5dc, #e0e5dc);
  letter-spacing: 0.16em;
  color: var(--site-727b6c, #727b6c);
  grid-column: 1/-1;
  justify-content: space-between;
  margin-top: 45px;
  padding-block: 23px;
  font-size: 10px;
  display: flex;
}
.tl-site-heroBottom a {
  gap: 30px;
  display: flex;
}
.tl-site-heroBottom a span {
  color: var(--site-507b30, #507b30);
  font-size: 17px;
  line-height: 1;
}
.tl-site-sectionTitle h2 {
  letter-spacing: 0.035em;
  font-size: 38px;
  font-weight: 600;
  line-height: 1.7;
}
.tl-site-sectionTitle .tl-site-eyebrow {
  margin-bottom: 20px;
}
.tl-site-light .tl-site-eyebrow {
  color: var(--site-b6d596, #b6d596);
}
.tl-site-light h2 {
  color: #fff;
}
.tl-site-contactCta {
  background: var(--site-eef3e8, #eef3e8);
  padding: 76px 0;
}
.tl-site-contactCta > .tl-site-container {
  justify-content: space-between;
  align-items: center;
  gap: 32px;
  display: flex;
}
.tl-site-contactCta h2 {
  margin-bottom: 20px;
  font-size: 36px;
  font-weight: 500;
}
.tl-site-contactCta .tl-site-eyebrow {
  margin-bottom: 16px;
}
.tl-site-contactCta p:not(.tl-site-eyebrow) {
  color: var(--site-65715e, #65715e);
  font-size: 15px;
}
.tl-site-contactCta .tl-site-button {
  background: var(--site-7db848, #7db848);
  border-color: var(--site-7db848, #7db848);
  width: 270px;
  min-height: 75px;
  color: var(--site-203312, #203312);
}
.tl-site-contactCta .tl-site-button:hover {
  background: var(--site-6aa23e, #6aa23e);
}
.tl-site-footer {
  padding: 60px 0 24px;
}
.tl-site-footerTop {
  justify-content: space-between;
  align-items: center;
  gap: 32px;
  display: flex;
}
.tl-site-footerTop .tl-site-brand img {
  width: 190px;
}
.tl-site-footerTop nav {
  align-items: center;
  gap: 32px;
  font-size: 14px;
  display: flex;
}
.tl-site-footerTop nav a {
  align-items: center;
  min-height: 44px;
  white-space: nowrap;
  display: inline-flex;
}
.tl-site-footerTop nav a:hover {
  text-decoration: underline;
}
.tl-site-footerBottom {
  border-top: 1px solid var(--site-e1e5dc, #e1e5dc);
  color: var(--site-72796c, #72796c);
  justify-content: space-between;
  gap: 16px;
  margin-top: 45px;
  padding-top: 22px;
  display: flex;
}
.tl-site-footerBottom p,
.tl-site-footerBottom small {
  font-size: 11px;
}
.tl-site-dialog {
  border: 1px solid var(--site-d7dfd1, #d7dfd1);
  width: calc(100% - 40px);
  max-width: 620px;
  max-height: calc(100dvh - 40px);
  padding: 0;
}
.tl-site-dialog::backdrop {
  background: #1d291db3;
}
.tl-site-dialogInner {
  padding: 54px 45px;
  position: relative;
}
.tl-site-dialogClose {
  background: 0 0;
  border: 0;
  width: 44px;
  height: 44px;
  font-size: 30px;
  position: absolute;
  top: 8px;
  right: 13px;
}
.tl-site-dialog h2 {
  margin-bottom: 23px;
  font-size: 28px;
}
.tl-site-dialog p {
  font-size: 15px;
}
.tl-site-contactEmail {
  border-bottom: 1px solid var(--site-d0dac6, #d0dac6);
  align-items: center;
  gap: 24px;
  margin-top: 26px;
  padding-block: 15px;
  font-size: 22px;
  display: flex;
}
.tl-site-contactPhone {
  margin-block: 15px;
  font-size: 27px;
  display: block;
}
.tl-site-about {
  background: var(--site-f7f8f5, #f7f8f5);
  padding: 112px 0 100px;
}
.tl-site-aboutIntro {
  grid-template-columns: 1fr 1fr;
  gap: 95px;
  display: grid;
}
.tl-site-aboutText {
  color: var(--site-626b5f, #626b5f);
  padding-top: 42px;
}
.tl-site-aboutText p + p {
  margin-top: 20px;
}
.tl-site-aboutNetwork {
  border-block: 1px solid var(--site-e0e7d8, #e0e7d8);
  background: #fff;
  grid-template-columns: 1fr 1.1fr 1.25fr;
  align-items: center;
  gap: 60px;
  margin-top: 60px;
  padding: 35px 50px;
  display: grid;
}
.tl-site-networkSource span,
.tl-site-networkPartners span {
  color: var(--site-616e59, #616e59);
  font-size: 14px;
  display: block;
}
.tl-site-networkSource strong {
  font-size: 21px;
  font-weight: 500;
}
.tl-site-networkCenter {
  border: 1px solid var(--site-a7c48d, #a7c48d);
  text-align: center;
  padding: 22px;
  position: relative;
}
.tl-site-networkCenter:before,
.tl-site-networkCenter:after {
  content: "";
  border-top: 1px solid var(--site-98b37f, #98b37f);
  width: 60px;
  position: absolute;
  top: 50%;
}
.tl-site-networkCenter:before {
  right: 100%;
}
.tl-site-networkCenter:after {
  left: 100%;
}
.tl-site-networkCenter strong {
  letter-spacing: 0.04em;
  font-size: 22px;
}
.tl-site-networkCenter span {
  color: var(--site-6b775e, #6b775e);
  font-size: 13px;
  display: block;
}
.tl-site-networkPartners {
  border-left: 1px solid var(--site-a6bc92, #a6bc92);
  padding-left: 24px;
  position: relative;
}
.tl-site-networkPartners:before {
  content: "";
  border-top: 1px solid var(--site-a6bc92, #a6bc92);
  width: 26px;
  position: absolute;
  top: 50%;
  left: -26px;
}
.tl-site-networkPartners span {
  padding: 3px 0;
}
.tl-site-flow {
  grid-template-columns: repeat(6, 1fr);
  gap: 20px;
  margin: 46px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
}
.tl-site-flow li {
  border-top: 1px solid var(--site-c7d3bd, #c7d3bd);
  padding-top: 15px;
  position: relative;
}
.tl-site-flow li + li:before {
  content: "→";
  background: var(--site-f7f8f5, #f7f8f5);
  color: var(--site-829970, #829970);
  font-size: 15px;
  position: absolute;
  top: -15px;
  right: calc(100% + 3px);
}
.tl-site-flow small {
  color: var(--site-5a7a40, #5a7a40);
  margin-bottom: 4px;
  font-size: 12px;
  display: block;
}
.tl-site-flow strong {
  font-size: 15px;
  font-weight: 500;
}
.tl-site-flowNote {
  color: var(--site-76806e, #76806e);
  text-align: right;
  margin-top: 20px;
  font-size: 12px;
}
.tl-site-services {
  padding-top: 107px;
}
.tl-site-servicesHead {
  justify-content: space-between;
  align-items: end;
  gap: 50px;
  display: flex;
}
.tl-site-servicesHead > p {
  max-width: 415px;
  color: var(--site-687060, #687060);
  padding-bottom: 10px;
  font-size: 15px;
}
.tl-site-serviceIndex {
  border-block: 1px solid var(--site-dde3d5, #dde3d5);
  flex-wrap: wrap;
  gap: 8px 24px;
  margin-top: 34px;
  padding-block: 22px;
  display: flex;
}
.tl-site-serviceIndex a {
  color: var(--site-65745c, #65745c);
  align-items: center;
  gap: 12px;
  font-size: 13px;
  display: flex;
}
.tl-site-serviceIndex a:hover {
  color: var(--site-365f1f, #365f1f);
}
.tl-site-serviceIndex span {
  color: var(--site-7a9b62, #7a9b62);
  font-size: 12px;
}
.tl-site-serviceSection {
  border-bottom: 1px solid var(--site-e1e6d9, #e1e6d9);
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 82px;
  padding-block: 90px;
  display: grid;
}
.tl-site-serviceSection.tl-site-reverse .tl-site-serviceArt {
  order: 2;
}
.tl-site-serviceArt {
  background: var(--site-f6f8f2, #f6f8f2);
  min-width: 0;
  position: relative;
}
.tl-site-artLabel {
  color: var(--site-748168, #748168);
  letter-spacing: 0.12em;
  align-items: center;
  gap: 22px;
  padding: 25px 28px 0;
  font-size: 10px;
  display: flex;
}
.tl-site-artLabel span:first-child {
  color: var(--site-789362, #789362);
  font-size: 21px;
  font-weight: 400;
}
.tl-site-serviceArt .tl-site-illustration {
  margin-top: -15px;
}
.tl-site-serviceLabel {
  color: var(--site-5f7b4b, #5f7b4b);
  margin-bottom: 18px;
  font-size: 14px;
}
.tl-site-serviceCopy h3 {
  letter-spacing: 0.03em;
  margin-bottom: 20px;
  font-size: 31px;
  font-weight: 500;
  line-height: 1.7;
}
.tl-site-intro {
  white-space: pre-line;
  color: var(--site-687160, #687160);
  font-size: 15px;
  line-height: 2;
}
.tl-site-serviceList {
  margin-top: 26px;
  margin-bottom: 0;
}
.tl-site-serviceList > div {
  border-top: 1px solid var(--site-d9e1d1, #d9e1d1);
  padding: 18px 0 2px;
}
.tl-site-serviceList > div + div {
  margin-top: 16px;
}
.tl-site-serviceList dt {
  margin-bottom: 8px;
  font-size: 16px;
  font-weight: 600;
}
.tl-site-serviceList dd {
  color: var(--site-67725e, #67725e);
  margin: 0;
  font-size: 14px;
  line-height: 1.95;
}
.tl-site-measurement {
  background: var(--site-28372d, #28372d);
  color: #fff;
  margin-top: 20px;
  padding: 84px 0;
  position: relative;
}
.tl-site-measurementGrid {
  grid-template-columns: 1fr 1.2fr;
  align-items: center;
  gap: 50px;
  display: grid;
}
.tl-site-measurement h2 {
  letter-spacing: 0.08em;
  font-size: 49px;
}
.tl-site-measurement h3 {
  margin-top: 23px;
  margin-bottom: 21px;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.8;
}
.tl-site-measurementText {
  color: var(--site-d3dcce, #d3dcce);
  max-width: 415px;
  font-size: 15px;
  line-height: 2.1;
}
.tl-site-measurement .tl-site-button {
  border-color: var(--site-94ad7e, #94ad7e);
  color: var(--site-eff6e9, #eff6e9);
  background: 0 0;
  min-width: 252px;
  margin-top: 28px;
}
.tl-site-measurement .tl-site-button:hover {
  background: var(--site-42563a, #42563a);
}
.tl-site-measurementArt {
  background: var(--site-f0f4eb, #f0f4eb);
  color: var(--site-405035, #405035);
  position: relative;
}
.tl-site-measurementArt .tl-site-illustration {
  padding-top: 10px;
}
.tl-site-measurementArt p {
  color: var(--site-6f7d62, #6f7d62);
  text-align: right;
  padding: 0 24px 20px;
  font-size: 12px;
}
.tl-site-measureProcess {
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  margin-top: 34px;
  display: grid;
}
.tl-site-measureProcess > div {
  border-top: 1px solid var(--site-617454, #617454);
  padding-top: 14px;
}
.tl-site-measureProcess small {
  color: var(--site-afcc95, #afcc95);
  font-size: 11px;
  display: block;
}
.tl-site-measureProcess span {
  font-size: 14px;
}
.tl-site-medicalSupport {
  padding-block: 100px 65px;
}
.tl-site-sectionHeadingRow {
  justify-content: space-between;
  align-items: center;
  gap: 50px;
  display: flex;
}
.tl-site-sectionHeadingRow > p {
  max-width: 460px;
  color: var(--site-68725f, #68725f);
  font-size: 15px;
}
.tl-site-closingGrid {
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 80px;
  margin-top: 38px;
  display: grid;
}
.tl-site-closingCopy h3 {
  margin-bottom: 15px;
  font-size: 20px;
  font-weight: 500;
}
.tl-site-closingCopy > p {
  color: var(--site-65715c, #65715c);
  font-size: 15px;
}
.tl-site-closingCopy .tl-site-serviceList {
  margin-top: 20px;
}
.tl-site-closingArt {
  background: var(--site-f7f8f3, #f7f8f3);
}
.tl-site-closingNeeds {
  color: var(--site-5c6954, #5c6954);
  grid-template-columns: 1fr 1fr;
  gap: 10px 18px;
  margin-top: 20px;
  padding: 0;
  font-size: 14px;
  list-style: none;
  display: grid;
}
.tl-site-closingNeeds li {
  padding-left: 17px;
  position: relative;
}
.tl-site-closingNeeds li:before {
  content: "";
  background: var(--site-7db848, #7db848);
  width: 6px;
  height: 6px;
  position: absolute;
  top: 11px;
  left: 0;
}
.tl-site-equipment {
  padding-block: 50px 95px;
}
.tl-site-equipmentGrid {
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 80px;
  display: grid;
}
.tl-site-equipmentArt {
  background: var(--site-f5f7f1, #f5f7f1);
}
.tl-site-tradeRow {
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-top: 30px;
  display: grid;
}
.tl-site-tradeRow > div {
  border-top: 1px solid var(--site-c9d4bf, #c9d4bf);
  padding-top: 20px;
}
.tl-site-tradeRow h3 {
  margin-bottom: 12px;
  font-size: 17px;
  font-weight: 500;
}
.tl-site-tradeRow p {
  color: var(--site-69765f, #69765f);
  font-size: 14px;
}
.tl-site-bus {
  border-top: 1px solid var(--site-dfe6d6, #dfe6d6);
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 80px;
  margin-top: 55px;
  padding-top: 40px;
  display: grid;
}
.tl-site-bus h3 {
  margin-bottom: 18px;
  font-size: 26px;
  font-weight: 500;
}
.tl-site-bus .tl-site-eyebrow {
  margin-bottom: 16px;
}
.tl-site-bus p:not(.tl-site-eyebrow) {
  color: var(--site-67745c, #67745c);
  font-size: 15px;
}
.tl-site-bus .tl-site-illustration {
  max-height: 280px;
}
.tl-site-bus .tl-site-illustration svg {
  height: 280px;
}
.tl-site-busNote {
  border-left: 2px solid var(--site-7db848, #7db848);
  margin-top: 20px;
  padding-left: 14px;
  font-size: 13px !important;
}
.tl-site-general {
  border-block: 1px solid var(--site-e1e7d9, #e1e7d9);
  background: var(--site-f8f9f5, #f8f9f5);
  padding: 78px 0;
}
.tl-site-generalGrid {
  grid-template-columns: 1.05fr 1fr;
  align-items: center;
  gap: 65px;
  display: grid;
}
.tl-site-general h2 {
  font-size: 33px;
}
.tl-site-generalText {
  color: var(--site-67745c, #67745c);
  margin-top: 23px;
  font-size: 15px;
  line-height: 2.1;
}
.tl-site-generalTags {
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 22px;
  display: flex;
}
.tl-site-generalTags span {
  border: 1px solid var(--site-d4ddcb, #d4ddcb);
  color: var(--site-617352, #617352);
  padding: 5px 12px;
  font-size: 13px;
}
.tl-site-general .tl-site-textLink {
  margin-top: 27px;
}
.tl-site-backTop {
  max-width: 1280px;
  color: var(--site-657658, #657658);
  letter-spacing: 0.1em;
  justify-content: flex-end;
  margin: 0 auto;
  padding: 20px 0;
  font-size: 12px;
  display: flex;
}
@media (min-width: 1500px) {
  .tl-site-hero {
    padding-block-start: 90px;
  }
  .tl-site-hero h1 {
    font-size: 51px;
  }
  .tl-site-heroText {
    font-size: 16px;
  }
  .tl-site-heroVisual {
    transform: scale(1.04);
  }
}
@media (max-width: 1250px) {
  .tl-site-headerInner {
    gap: 20px;
    padding-inline: 28px;
  }
  .tl-site-mainNav {
    gap: 16px;
  }
  .tl-site-mainNav > a {
    font-size: 13px;
  }
  .tl-site-brand img {
    width: 152px;
  }
  .tl-site-mainNav .tl-site-navCta {
    padding: 12px;
  }
  .tl-site-hero {
    padding-inline: 40px;
  }
  .tl-site-container {
    width: calc(100% - 80px);
  }
  .tl-site-serviceSection,
  .tl-site-closingGrid,
  .tl-site-equipmentGrid,
  .tl-site-bus {
    gap: 50px;
  }
  .tl-site-heroLead {
    font-size: 16px;
  }
  .tl-site-heroActions {
    gap: 20px;
  }
  .tl-site-heroVisualNote {
    margin-inline: 15px;
  }
  .tl-site-heroVisualNote span:last-child {
    display: none;
  }
}
@media (max-width: 1180px) {
  .tl-site-header {
    height: 84px;
  }
  .tl-site-headerInner {
    padding-inline: 32px;
  }
  .tl-site-brand img {
    width: 155px;
  }
  .tl-site-menuToggle {
    background: 0 0;
    border: none;
    flex-direction: column;
    flex-shrink: 0;
    align-items: center;
    gap: 7px;
    width: 48px;
    height: 52px;
    padding: 9px 5px 0;
    display: flex;
    position: relative;
  }
  .tl-site-menuToggle > span:not(.tl-site-menuWord) {
    background: var(--site-3a4531, #3a4531);
    width: 28px;
    height: 1px;
    display: block;
  }
  .tl-site-menuWord {
    letter-spacing: 0.05em;
    margin-top: 1px;
    font-size: 9px;
    line-height: 1;
  }
  .tl-site-mainNav {
    border-bottom: 1px solid var(--site-ccd6c3, #ccd6c3);
    background: #fff;
    max-height: calc(100dvh - 84px);
    padding: 25px 32px 38px;
    display: none;
    position: fixed;
    top: 84px;
    left: 0;
    right: 0;
    overflow-y: auto;
  }
  .tl-site-menuOpen {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    display: flex;
  }
  .tl-site-mainNav > a {
    border-bottom: 1px solid var(--site-e5eadd, #e5eadd);
    padding: 15px 0;
    font-size: 16px;
  }
  .tl-site-mainNav .tl-site-navCta {
    justify-content: space-between;
    margin-top: 15px;
    padding: 17px;
  }
  .tl-site-hero {
    grid-template-columns: 1fr 1fr;
    padding-top: 40px;
  }
  .tl-site-hero h1 {
    font-size: 35px;
  }
  .tl-site-heroText {
    font-size: 14px;
  }
  .tl-site-heroLead {
    font-size: 15px;
  }
  .tl-site-heroActions {
    flex-direction: column;
    align-items: flex-start;
    gap: 22px;
  }
  .tl-site-heroVisual {
    margin-left: -20px;
    margin-right: -20px;
  }
  .tl-site-heroVisualNote,
  .tl-site-visualCaption {
    font-size: 11px;
  }
  .tl-site-aboutIntro {
    gap: 45px;
  }
  .tl-site-sectionTitle h2 {
    font-size: 31px;
  }
  .tl-site-aboutNetwork {
    gap: 40px;
    padding-inline: 26px;
  }
  .tl-site-networkCenter:before,
  .tl-site-networkCenter:after {
    width: 40px;
  }
  .tl-site-networkSource strong {
    font-size: 18px;
  }
  .tl-site-networkPartners span {
    font-size: 12px;
  }
  .tl-site-serviceCopy h3 {
    font-size: 27px;
  }
  .tl-site-measurementGrid {
    gap: 30px;
  }
  .tl-site-measurement h2 {
    font-size: 43px;
  }
  .tl-site-measurement h3 {
    font-size: 22px;
  }
  .tl-site-sectionHeadingRow > p {
    max-width: 360px;
  }
}
@media (max-width: 760px) {
  .tl-site-container {
    width: calc(100% - 44px);
  }
  .tl-site-header {
    height: 76px;
  }
  .tl-site-headerInner {
    padding-inline: 22px;
  }
  .tl-site-brand img {
    width: 146px;
  }
  .tl-site-mainNav {
    max-height: calc(100dvh - 76px);
    padding-inline: 24px;
    top: 76px;
  }
  .tl-site-hero {
    flex-direction: column;
    padding: 36px 22px 0;
    display: flex;
  }
  .tl-site-heroContent {
    padding: 0;
  }
  .tl-site-hero .tl-site-eyebrow {
    letter-spacing: 0.1em;
    margin-bottom: 20px;
    font-size: 10px;
  }
  .tl-site-hero h1 {
    letter-spacing: 0.01em;
    margin-bottom: 26px;
    font-size: clamp(27px, 6.9vw, 42px);
    line-height: 1.65;
  }
  .tl-site-heroLead {
    margin-bottom: 12px;
    font-size: 16px;
  }
  .tl-site-heroText {
    max-width: 550px;
    font-size: 14px;
    line-height: 2;
  }
  .tl-site-heroActions {
    flex-direction: row;
    align-items: center;
    gap: 20px;
    margin-top: 26px;
  }
  .tl-site-button {
    gap: 20px;
    min-height: 54px;
    padding: 13px 20px;
    font-size: 14px;
  }
  .tl-site-textLink {
    gap: 10px;
    font-size: 13px;
  }
  .tl-site-heroVisual {
    width: 100%;
    margin: 0;
    padding-top: 26px;
  }
  .tl-site-heroVisualNote {
    margin-inline: 2px;
    font-size: 11px;
  }
  .tl-site-heroVisualNote span:last-child {
    font-size: 8px;
    display: block;
  }
  .tl-site-heroVisual .tl-site-illustration {
    margin-top: -9px;
  }
  .tl-site-visualCaption {
    margin-top: -12px;
    font-size: 11px;
  }
  .tl-site-heroBottom {
    letter-spacing: 0.08em;
    width: 100%;
    margin-top: 26px;
    padding-block: 18px;
    font-size: 8px;
  }
  .tl-site-heroBottom a {
    gap: 12px;
  }
  .tl-site-heroBottom a span {
    font-size: 14px;
  }
  .tl-site-sectionTitle h2 {
    font-size: 29px;
    line-height: 1.7;
  }
  .tl-site-eyebrow {
    margin-bottom: 19px;
    font-size: 11px;
  }
  .tl-site-about {
    padding-block: 65px;
  }
  .tl-site-aboutIntro {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .tl-site-aboutText {
    padding: 0;
    font-size: 15px;
  }
  .tl-site-aboutNetwork {
    grid-template-columns: 1fr 1fr;
    gap: 35px 22px;
    margin-top: 30px;
    padding: 25px 18px;
  }
  .tl-site-networkSource {
    text-align: center;
    grid-column: 1/-1;
    position: relative;
  }
  .tl-site-networkSource:after {
    content: "";
    border-left: 1px solid var(--site-aec299, #aec299);
    height: 25px;
    position: absolute;
    top: calc(100% + 5px);
    left: 50%;
  }
  .tl-site-networkCenter {
    padding: 16px 9px;
  }
  .tl-site-networkCenter strong {
    font-size: 18px;
  }
  .tl-site-networkCenter span {
    font-size: 12px;
  }
  .tl-site-networkCenter:before {
    display: none;
  }
  .tl-site-networkCenter:after {
    width: 22px;
  }
  .tl-site-networkPartners {
    padding-left: 14px;
  }
  .tl-site-networkPartners:before {
    display: none;
  }
  .tl-site-networkPartners span {
    font-size: 11px;
  }
  .tl-site-flow {
    grid-template-columns: repeat(3, 1fr);
    gap: 26px 16px;
    margin-top: 30px;
  }
  .tl-site-flow li {
    padding-top: 10px;
  }
  .tl-site-flow li:nth-child(4):before {
    display: none;
  }
  .tl-site-flow strong {
    font-size: 13px;
  }
  .tl-site-flow small {
    font-size: 11px;
  }
  .tl-site-flowNote {
    text-align: left;
    font-size: 11px;
  }
  .tl-site-services {
    padding-top: 65px;
  }
  .tl-site-servicesHead,
  .tl-site-sectionHeadingRow {
    display: block;
  }
  .tl-site-servicesHead > p,
  .tl-site-sectionHeadingRow > p {
    max-width: none;
    margin-top: 20px;
    font-size: 15px;
  }
  .tl-site-serviceIndex {
    gap: 12px 20px;
    margin-top: 22px;
    padding-block: 18px;
  }
  .tl-site-serviceIndex a {
    gap: 8px;
    font-size: 12px;
  }
  .tl-site-serviceSection {
    grid-template-columns: 1fr;
    gap: 28px;
    padding-block: 45px;
  }
  .tl-site-serviceSection.tl-site-reverse .tl-site-serviceArt {
    order: 0;
  }
  .tl-site-serviceArt .tl-site-illustration {
    max-height: 310px;
  }
  .tl-site-serviceArt .tl-site-illustration svg {
    height: 310px;
  }
  .tl-site-artLabel {
    padding: 18px 20px 0;
  }
  .tl-site-serviceCopy h3 {
    font-size: 27px;
  }
  .tl-site-serviceLabel {
    margin-bottom: 13px;
  }
  .tl-site-intro {
    white-space: normal;
    font-size: 14px;
  }
  .tl-site-serviceList {
    margin-top: 23px;
  }
  .tl-site-serviceList dd {
    font-size: 14px;
  }
  .tl-site-measurement {
    margin-top: 12px;
    padding-block: 56px;
  }
  .tl-site-measurementGrid {
    grid-template-columns: 1fr;
    gap: 35px;
  }
  .tl-site-measurement h2 {
    font-size: 42px;
  }
  .tl-site-measurement h3 {
    font-size: 23px;
  }
  .tl-site-measurementText {
    max-width: none;
    font-size: 15px;
  }
  .tl-site-measureProcess {
    gap: 16px;
    margin-top: 28px;
  }
  .tl-site-measureProcess span {
    font-size: 13px;
  }
  .tl-site-measurementArt p {
    font-size: 11px;
  }
  .tl-site-medicalSupport {
    padding: 64px 0 30px;
  }
  .tl-site-closingGrid {
    grid-template-columns: 1fr;
    gap: 27px;
    margin-top: 28px;
  }
  .tl-site-closingArt {
    order: -1;
  }
  .tl-site-closingCopy h3 {
    font-size: 20px;
  }
  .tl-site-closingNeeds {
    gap: 8px 10px;
    font-size: 12px;
  }
  .tl-site-closingNeeds li {
    padding-left: 12px;
  }
  .tl-site-closingNeeds li:before {
    width: 4px;
    height: 4px;
    top: 9px;
  }
  .tl-site-equipment {
    padding: 35px 0 60px;
  }
  .tl-site-equipmentGrid {
    grid-template-columns: 1fr;
    gap: 27px;
  }
  .tl-site-equipmentArt {
    order: -1;
  }
  .tl-site-tradeRow {
    gap: 20px;
  }
  .tl-site-tradeRow h3 {
    font-size: 16px;
  }
  .tl-site-bus {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-top: 35px;
    padding-top: 30px;
  }
  .tl-site-bus h3 {
    font-size: 24px;
  }
  .tl-site-bus .tl-site-illustration {
    order: -1;
    max-height: 240px;
  }
  .tl-site-bus .tl-site-illustration svg {
    height: 240px;
  }
  .tl-site-general {
    padding-block: 56px;
  }
  .tl-site-generalGrid {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .tl-site-general h2 {
    font-size: 27px;
  }
  .tl-site-generalText {
    font-size: 15px;
  }
  .tl-site-general .tl-site-illustration {
    max-height: 290px;
  }
  .tl-site-general .tl-site-illustration svg {
    height: 290px;
  }
  .tl-site-contactCta {
    padding-block: 52px;
  }
  .tl-site-contactCta > .tl-site-container {
    display: block;
  }
  .tl-site-contactCta h2 {
    letter-spacing: 0;
    font-size: 27px;
  }
  .tl-site-contactCta p:not(.tl-site-eyebrow) {
    font-size: 14px;
  }
  .tl-site-contactCta .tl-site-button {
    width: 100%;
    min-height: 64px;
    margin-top: 28px;
  }
  .tl-site-footer {
    padding-top: 40px;
  }
  .tl-site-footerTop {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
  .tl-site-footerTop .tl-site-brand img {
    width: 173px;
  }
  .tl-site-footerTop nav {
    flex-wrap: wrap;
    gap: 4px 24px;
    font-size: 13px;
  }
  .tl-site-footerBottom {
    margin-top: 30px;
    display: block;
  }
  .tl-site-footerBottom p {
    margin-bottom: 10px;
  }
  .tl-site-backTop {
    padding: 16px 22px;
  }
  .tl-site-dialogInner {
    padding: 45px 24px 30px;
  }
  .tl-site-dialog h2 {
    font-size: 22px;
  }
  .tl-site-contactEmail {
    gap: 12px;
    font-size: 18px;
  }
  .tl-site-contactPhone {
    font-size: 25px;
  }
  .tl-site-dialog p {
    font-size: 14px;
  }
}
@media (max-width: 360px) {
  .tl-site-hero h1 {
    font-size: 26px;
  }
  .tl-site-heroLead {
    font-size: 14px;
  }
  .tl-site-heroActions {
    gap: 14px;
  }
  .tl-site-heroActions .tl-site-button {
    padding-inline: 14px;
  }
  .tl-site-heroActions .tl-site-textLink {
    font-size: 12px;
  }
  .tl-site-heroActions .tl-site-textLink svg {
    width: 15px;
  }
  .tl-site-heroVisualNote span:last-child {
    display: none;
  }
  .tl-site-heroBottom {
    font-size: 7px;
  }
  .tl-site-sectionTitle h2 {
    font-size: 26px;
  }
  .tl-site-closingNeeds {
    grid-template-columns: 1fr;
  }
  .tl-site-flow strong {
    font-size: 12px;
  }
}
.tl-site-heroActions {
  flex-wrap: wrap;
}
.tl-site-heroActions .tl-site-textLink {
  white-space: nowrap;
}
.tl-site-heroText,
.tl-site-aboutText,
.tl-site-servicesHead > p,
.tl-site-intro,
.tl-site-serviceList dd,
.tl-site-measurementText,
.tl-site-sectionHeadingRow > p,
.tl-site-closingCopy > p,
.tl-site-tradeRow p,
.tl-site-bus p:not(.tl-site-eyebrow),
.tl-site-generalText,
.tl-site-contactCta p:not(.tl-site-eyebrow) {
  font-size: 1rem;
}
.tl-site-mainNav > a {
  font-size: 0.875rem;
}
.tl-site-networkCenter img {
  width: 150px;
  height: auto;
  margin: 0 auto 12px;
}
.tl-site-serviceIndex a {
  min-height: 36px;
  font-size: 0.875rem;
}
.tl-site-textLink {
  min-height: 44px;
}
.tl-site-flow strong,
.tl-site-measureProcess span,
.tl-site-closingNeeds {
  font-size: 0.875rem;
}
@media (max-width: 760px) {
  .tl-site-aboutNetwork {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 25px;
  }
  .tl-site-networkSource {
    grid-column: auto;
  }
  .tl-site-networkCenter {
    width: 100%;
    max-width: 250px;
    margin: auto;
  }
  .tl-site-networkSource:after {
    height: 30px;
    top: 100%;
  }
  .tl-site-networkCenter:after {
    border-top: 0;
    border-left: 1px solid var(--site-a6bc92, #a6bc92);
    width: 0;
    height: 30px;
    top: 100%;
    left: 50%;
  }
  .tl-site-networkPartners {
    border: 0;
    border-top: 1px solid var(--site-a6bc92, #a6bc92);
    text-align: center;
    padding: 14px 0 0;
  }
  .tl-site-networkPartners span,
  .tl-site-networkCenter span {
    font-size: 0.875rem;
  }
  .tl-site-flowNote {
    font-size: 0.75rem;
  }
  .tl-site-closingNeeds {
    grid-template-columns: 1fr;
  }
  .tl-site-heroLead {
    font-size: 1rem;
  }
  .tl-site-generalTags span {
    font-size: 0.875rem;
  }
  .tl-site-measureProcess {
    gap: 12px;
  }
  .tl-site-measureProcess small {
    font-size: 10px;
  }
  .tl-site-serviceIndex {
    gap: 8px 20px;
  }
  .tl-site-heroActions .tl-site-textLink {
    font-size: 0.875rem;
  }
}
.tl-design-tokens-navy {
  --accent: #193c62;
  --ink: #172e46;
  --muted: #536b81;
  --surface: #eef4f9;
  --line: #ccdae7;
  --site-142409: #0d1620;
  --site-16280a: #0e1924;
  --site-203312: #142231;
  --site-28362b: #1b2e43;
  --site-28372d: #112d4a;
  --site-365f1f: #243e5a;
  --site-3a4531: #223a54;
  --site-405035: #26425f;
  --site-42563a: #294767;
  --site-426331: #2a496a;
  --site-507b30: #435568;
  --site-537c36: #45586d;
  --site-597947: #4b5f75;
  --site-5a7a40: #495c71;
  --site-5c6954: #4a5e73;
  --site-5f7b4b: #4d6279;
  --site-616e59: #4e6379;
  --site-617352: #4d6278;
  --site-617454: #4e637a;
  --site-626b5f: #4f647b;
  --site-626b63: #50667d;
  --site-65715c: #50667d;
  --site-65715e: #51677e;
  --site-65745c: #51677f;
  --site-657658: #50667e;
  --site-67725e: #51677f;
  --site-67745c: #51677f;
  --site-687060: #51677f;
  --site-687160: #52687f;
  --site-68725f: #52687f;
  --site-69765f: #536a82;
  --site-6aa23e: #576f89;
  --site-6b775e: #536a82;
  --site-6e7869: #587089;
  --site-6eaa3c: #5a728c;
  --site-6f7d62: #576f88;
  --site-70766b: #587089;
  --site-70796c: #59728c;
  --site-72796c: #59728c;
  --site-727b6c: #5a738d;
  --site-748168: #5b748e;
  --site-76806e: #5d7691;
  --site-789362: #607a95;
  --site-7a9b62: #637e9a;
  --site-7db848: #193c62;
  --site-829970: #6a849f;
  --site-94ad7e: #7e95ad;
  --site-98b37f: #8398af;
  --site-a6bc92: #94a6ba;
  --site-a7c48d: #95a8bc;
  --site-aec299: #9cadbf;
  --site-afcc95: #9fb0c2;
  --site-b6d596: #9eb5cd;
  --site-b9c7b1: #a7bbd1;
  --site-c7d3bd: #b6c7da;
  --site-c9d4bf: #b8c9db;
  --site-ccd6c3: #bcccdd;
  --site-d0dac6: #c1cfdf;
  --site-d3dcce: #c8d5e2;
  --site-d4ddcb: #c6d4e2;
  --site-d5dccf: #c8d5e3;
  --site-d7dfd1: #ccd8e4;
  --site-d9e1d1: #cdd9e5;
  --site-dde3d5: #d1dce7;
  --site-dfe6d6: #d3dee9;
  --site-e0e5dc: #d7e0ea;
  --site-e0e7d8: #d5dfea;
  --site-e1e5dc: #d7e0ea;
  --site-e1e6d9: #d5dfea;
  --site-e1e7d9: #d6e0ea;
  --site-e5eadd: #dbe3ec;
  --site-e7eae5: #e0e7ef;
  --site-e7efdf: #dfe7ef;
  --site-eef3e8: #e8edf3;
  --site-eff6e9: #ebeff4;
  --site-f0f4eb: #ebeff4;
  --site-f5f7f1: #f0f4f8;
  --site-f6f8f2: #f2f5f8;
  --site-f7f8f3: #f2f5f9;
  --site-f7f8f5: #f4f6f9;
  --site-f8f9f5: #f4f7fa;
  --art-3d4c43: #374452;
  --art-424e40: #3a4754;
  --art-454e47: #3c4957;
  --art-4d5951: #435263;
  --art-4e6252: #475769;
  --art-607355: #516377;
  --art-61716a: #55687d;
  --art-6d7c72: #5e748b;
  --art-708464: #5e738a;
  --art-7db848: #478fc5;
  --art-8a9890: #7c90a6;
  --art-8c9d85: #7c90a6;
  --art-91a097: #8598ac;
  --art-a0b19a: #94a5b7;
  --art-a0c183: #90a1b4;
  --art-a7b5ac: #9fadbd;
  --art-abd077: #92a3b5;
  --art-aebda6: #a3b1c0;
  --art-aec698: #a0aebe;
  --art-b3c4a8: #a2b5ca;
  --art-b8c8b1: #aabccf;
  --art-b9c6bc: #aebfd1;
  --art-bac8c0: #b0c0d2;
  --art-c2d8ae: #b2c2d4;
  --art-c3cebd: #b5c5d6;
  --art-c4d0bd: #b7c6d6;
  --art-c5dba8: #b0c1d3;
  --art-c7d1c1: #bac8d8;
  --art-c8d3c7: #bfcddb;
  --art-c9d5c2: #bdcbda;
  --art-cbd6c9: #c2cfdd;
  --art-ccdac3: #c1cedc;
  --art-d4decf: #cbd6e2;
  --art-d5ded2: #cdd8e3;
  --art-d6dfcf: #ccd7e2;
  --art-d8dfd5: #d0dae4;
  --art-d9e0d7: #d2dbe5;
  --art-d9e1d4: #d0dae5;
  --art-d9e1d8: #d3dce6;
  --art-d9e3d3: #d1dbe5;
  --art-dbe2dc: #d5dee8;
  --art-dbe5d6: #d4dde7;
  --art-dce5d4: #d3dce6;
  --art-dce5d7: #d5dee7;
  --art-dce5df: #d8e0e9;
  --art-dde5d9: #d6dfe8;
  --art-e0e5e1: #dbe2ea;
  --art-e0e7d9: #d7e0e9;
  --art-e2e9df: #dce4ec;
  --art-e3e9e1: #dee5ec;
  --art-e3edda: #dce3eb;
  --art-e5ecdf: #dee5ed;
  --art-e8f0e1: #e2e8ef;
  --art-e9ede7: #e4eaf0;
  --art-e9eee3: #e2e8ef;
  --art-edf2e9: #e9edf2;
  --art-eef2e9: #e9edf2;
  --art-f1f5ec: #ecf0f5;
  --art-f3f5ef: #eef2f6;
  --art-f3f7f0: #f0f3f7;
  --art-f4f7ee: #eff2f6;
  --art-f4f7f0: #f0f3f7;
  --art-f5f5e4: #e7ecf2;
  --art-f5f7f1: #f1f4f7;
  --art-f5f7f2: #f2f4f7;
  --art-f5f7f4: #f3f5f8;
  --art-f7f9f3: #f3f6f9;
  --art-f7f9f4: #f4f6f9;
  --art-f7f9f6: #f5f7fa;
  --art-f8faf6: #f6f8fa;
  --art-f9faf6: #f6f8fa;
  --art-fcfdfb: #fbfcfd;
}
.tl-design-tokens-blue {
  --accent: #1765dc;
  --ink: #172e46;
  --muted: #536b81;
  --surface: #eef4f9;
  --line: #ccdae7;
  --site-142409: #0d1520;
  --site-16280a: #0e1724;
  --site-203312: #142031;
  --site-28362b: #1b2c43;
  --site-28372d: #1765dc;
  --site-365f1f: #243a5a;
  --site-3a4531: #223754;
  --site-405035: #263e5f;
  --site-42563a: #294367;
  --site-426331: #2a456a;
  --site-507b30: #435268;
  --site-537c36: #45566d;
  --site-597947: #4b5c75;
  --site-5a7a40: #495a71;
  --site-5c6954: #4a5b73;
  --site-5f7b4b: #4d5f79;
  --site-616e59: #4e6079;
  --site-617352: #4d5f78;
  --site-617454: #4e607a;
  --site-626b5f: #4f617b;
  --site-626b63: #50637d;
  --site-65715c: #50637d;
  --site-65715e: #51647e;
  --site-65745c: #51647f;
  --site-657658: #50637e;
  --site-67725e: #51647f;
  --site-67745c: #51647f;
  --site-687060: #51647f;
  --site-687160: #52657f;
  --site-68725f: #52657f;
  --site-69765f: #536782;
  --site-6aa23e: #576c89;
  --site-6b775e: #536782;
  --site-6e7869: #586c89;
  --site-6eaa3c: #5a6f8c;
  --site-6f7d62: #576b88;
  --site-70766b: #586c89;
  --site-70796c: #596e8c;
  --site-72796c: #596e8c;
  --site-727b6c: #5a6f8d;
  --site-748168: #5b708e;
  --site-76806e: #5d7391;
  --site-789362: #607695;
  --site-7a9b62: #637a9a;
  --site-7db848: #1765dc;
  --site-829970: #6a809f;
  --site-94ad7e: #7e92ad;
  --site-98b37f: #8395af;
  --site-a6bc92: #94a4ba;
  --site-a7c48d: #95a5bc;
  --site-aec299: #9cabbf;
  --site-afcc95: #9faec2;
  --site-b6d596: #9eb2cd;
  --site-b9c7b1: #a7b8d1;
  --site-c7d3bd: #b6c5da;
  --site-c9d4bf: #b8c7db;
  --site-ccd6c3: #bccadd;
  --site-d0dac6: #c1cddf;
  --site-d3dcce: #c8d3e2;
  --site-d4ddcb: #c6d2e2;
  --site-d5dccf: #c8d3e3;
  --site-d7dfd1: #ccd6e4;
  --site-d9e1d1: #cdd7e5;
  --site-dde3d5: #d1dae7;
  --site-dfe6d6: #d3dce9;
  --site-e0e5dc: #d7dfea;
  --site-e0e7d8: #d5deea;
  --site-e1e5dc: #d7dfea;
  --site-e1e6d9: #d5deea;
  --site-e1e7d9: #d6deea;
  --site-e5eadd: #dbe2ec;
  --site-e7eae5: #e0e6ef;
  --site-e7efdf: #dfe6ef;
  --site-eef3e8: #e8edf3;
  --site-eff6e9: #ebeff4;
  --site-f0f4eb: #ebeff4;
  --site-f5f7f1: #f0f3f8;
  --site-f6f8f2: #f2f4f8;
  --site-f7f8f3: #f2f5f9;
  --site-f7f8f5: #f4f6f9;
  --site-f8f9f5: #f4f7fa;
  --art-3d4c43: #374252;
  --art-424e40: #3a4554;
  --art-454e47: #3c4757;
  --art-4d5951: #435063;
  --art-4e6252: #475569;
  --art-607355: #516177;
  --art-61716a: #55667d;
  --art-6d7c72: #5e718b;
  --art-708464: #5e708a;
  --art-7db848: #3685e6;
  --art-8a9890: #7c8ea6;
  --art-8c9d85: #7c8ea6;
  --art-91a097: #8595ac;
  --art-a0b19a: #94a3b7;
  --art-a0c183: #909fb4;
  --art-a7b5ac: #9fabbd;
  --art-abd077: #92a1b5;
  --art-aebda6: #a3afc0;
  --art-aec698: #a0acbe;
  --art-b3c4a8: #a2b3ca;
  --art-b8c8b1: #aab9cf;
  --art-b9c6bc: #aebdd1;
  --art-bac8c0: #b0bed2;
  --art-c2d8ae: #b2c0d4;
  --art-c3cebd: #b5c3d6;
  --art-c4d0bd: #b7c4d6;
  --art-c5dba8: #b0bfd3;
  --art-c7d1c1: #bac6d8;
  --art-c8d3c7: #bfcbdb;
  --art-c9d5c2: #bdc9da;
  --art-cbd6c9: #c2cddd;
  --art-ccdac3: #c1ccdc;
  --art-d4decf: #cbd5e2;
  --art-d5ded2: #cdd6e3;
  --art-d6dfcf: #ccd5e2;
  --art-d8dfd5: #d0d8e4;
  --art-d9e0d7: #d2dae5;
  --art-d9e1d4: #d0d9e5;
  --art-d9e1d8: #d3dbe6;
  --art-d9e3d3: #d1d9e5;
  --art-dbe2dc: #d5dde8;
  --art-dbe5d6: #d4dce7;
  --art-dce5d4: #d3dbe6;
  --art-dce5d7: #d5dce7;
  --art-dce5df: #d8dfe9;
  --art-dde5d9: #d6dee8;
  --art-e0e5e1: #dbe1ea;
  --art-e0e7d9: #d7dfe9;
  --art-e2e9df: #dce3ec;
  --art-e3e9e1: #dee4ec;
  --art-e3edda: #dce2eb;
  --art-e5ecdf: #dee4ed;
  --art-e8f0e1: #e2e7ef;
  --art-e9ede7: #e4e9f0;
  --art-e9eee3: #e2e7ef;
  --art-edf2e9: #e9edf2;
  --art-eef2e9: #e9edf2;
  --art-f1f5ec: #ecf0f5;
  --art-f3f5ef: #eef1f6;
  --art-f3f7f0: #f0f3f7;
  --art-f4f7ee: #eff2f6;
  --art-f4f7f0: #f0f3f7;
  --art-f5f5e4: #e7ecf2;
  --art-f5f7f1: #f1f3f7;
  --art-f5f7f2: #f2f4f7;
  --art-f5f7f4: #f3f5f8;
  --art-f7f9f3: #f3f6f9;
  --art-f7f9f4: #f4f6f9;
  --art-f7f9f6: #f5f7fa;
  --art-f8faf6: #f6f8fa;
  --art-f9faf6: #f6f8fa;
  --art-fcfdfb: #fbfcfd;
}
.tl-design-tokens-slate {
  --accent: #366889;
  --ink: #172e46;
  --muted: #536b81;
  --surface: #eef4f9;
  --line: #ccdae7;
  --site-142409: #0d1820;
  --site-16280a: #0e1b24;
  --site-203312: #142531;
  --site-28362b: #1b3243;
  --site-28372d: #244557;
  --site-365f1f: #24445a;
  --site-3a4531: #223f54;
  --site-405035: #26475f;
  --site-42563a: #294d67;
  --site-426331: #2a4f6a;
  --site-507b30: #435968;
  --site-537c36: #455c6d;
  --site-597947: #4b6475;
  --site-5a7a40: #496071;
  --site-5c6954: #4a6273;
  --site-5f7b4b: #4d6779;
  --site-616e59: #4e6779;
  --site-617352: #4d6678;
  --site-617454: #4e687a;
  --site-626b5f: #4f697b;
  --site-626b63: #506a7d;
  --site-65715c: #506a7d;
  --site-65715e: #516b7e;
  --site-65745c: #516c7f;
  --site-657658: #506b7e;
  --site-67725e: #516c7f;
  --site-67745c: #516c7f;
  --site-687060: #516c7f;
  --site-687160: #526c7f;
  --site-68725f: #526c7f;
  --site-69765f: #536e82;
  --site-6aa23e: #577489;
  --site-6b775e: #536e82;
  --site-6e7869: #587589;
  --site-6eaa3c: #5a778c;
  --site-6f7d62: #577488;
  --site-70766b: #587589;
  --site-70796c: #59778c;
  --site-72796c: #59778c;
  --site-727b6c: #5a788d;
  --site-748168: #5b798e;
  --site-76806e: #5d7b91;
  --site-789362: #607f95;
  --site-7a9b62: #63839a;
  --site-7db848: #366889;
  --site-829970: #6a899f;
  --site-94ad7e: #7e99ad;
  --site-98b37f: #839daf;
  --site-a6bc92: #94aaba;
  --site-a7c48d: #95acbc;
  --site-aec299: #9cb0bf;
  --site-afcc95: #9fb3c2;
  --site-b6d596: #9eb9cd;
  --site-b9c7b1: #a7c0d1;
  --site-c7d3bd: #b6cbda;
  --site-c9d4bf: #b8ccdb;
  --site-ccd6c3: #bccfdd;
  --site-d0dac6: #c1d3df;
  --site-d3dcce: #c8d7e2;
  --site-d4ddcb: #c6d6e2;
  --site-d5dccf: #c8d8e3;
  --site-d7dfd1: #ccdae4;
  --site-d9e1d1: #cddbe5;
  --site-dde3d5: #d1dee7;
  --site-dfe6d6: #d3e0e9;
  --site-e0e5dc: #d7e2ea;
  --site-e0e7d8: #d5e1ea;
  --site-e1e5dc: #d7e2ea;
  --site-e1e6d9: #d5e1ea;
  --site-e1e7d9: #d6e2ea;
  --site-e5eadd: #dbe5ec;
  --site-e7eae5: #e0e9ef;
  --site-e7efdf: #dfe8ef;
  --site-eef3e8: #e8eef3;
  --site-eff6e9: #ebf0f4;
  --site-f0f4eb: #ebf0f4;
  --site-f5f7f1: #f0f5f8;
  --site-f6f8f2: #f2f6f8;
  --site-f7f8f3: #f2f6f9;
  --site-f7f8f5: #f4f7f9;
  --site-f8f9f5: #f4f7fa;
  --art-3d4c43: #374752;
  --art-424e40: #3a4954;
  --art-454e47: #3c4c57;
  --art-4d5951: #435663;
  --art-4e6252: #475b69;
  --art-607355: #516777;
  --art-61716a: #556c7d;
  --art-6d7c72: #5e788b;
  --art-708464: #5e788a;
  --art-7db848: #548aa9;
  --art-8a9890: #7c94a6;
  --art-8c9d85: #7c94a6;
  --art-91a097: #859cac;
  --art-a0b19a: #94a8b7;
  --art-a0c183: #90a5b4;
  --art-a7b5ac: #9fb1bd;
  --art-abd077: #92a6b5;
  --art-aebda6: #a3b4c0;
  --art-aec698: #a0b2be;
  --art-b3c4a8: #a2b9ca;
  --art-b8c8b1: #aac0cf;
  --art-b9c6bc: #aec2d1;
  --art-bac8c0: #b0c4d2;
  --art-c2d8ae: #b2c6d4;
  --art-c3cebd: #b5c8d6;
  --art-c4d0bd: #b7c9d6;
  --art-c5dba8: #b0c4d3;
  --art-c7d1c1: #baccd8;
  --art-c8d3c7: #bfcfdb;
  --art-c9d5c2: #bdceda;
  --art-cbd6c9: #c2d2dd;
  --art-ccdac3: #c1d1dc;
  --art-d4decf: #cbd8e2;
  --art-d5ded2: #cddae3;
  --art-d6dfcf: #ccd9e2;
  --art-d8dfd5: #d0dce4;
  --art-d9e0d7: #d2dde5;
  --art-d9e1d4: #d0dce5;
  --art-d9e1d8: #d3dee6;
  --art-d9e3d3: #d1dde5;
  --art-dbe2dc: #d5e0e8;
  --art-dbe5d6: #d4dfe7;
  --art-dce5d4: #d3dee6;
  --art-dce5d7: #d5e0e7;
  --art-dce5df: #d8e2e9;
  --art-dde5d9: #d6e0e8;
  --art-e0e5e1: #dbe4ea;
  --art-e0e7d9: #d7e1e9;
  --art-e2e9df: #dce5ec;
  --art-e3e9e1: #dee6ec;
  --art-e3edda: #dce5eb;
  --art-e5ecdf: #dee7ed;
  --art-e8f0e1: #e2eaef;
  --art-e9ede7: #e4ebf0;
  --art-e9eee3: #e2eaef;
  --art-edf2e9: #e9eef2;
  --art-eef2e9: #e9eef2;
  --art-f1f5ec: #ecf1f5;
  --art-f3f5ef: #eef3f6;
  --art-f3f7f0: #f0f4f7;
  --art-f4f7ee: #eff3f6;
  --art-f4f7f0: #f0f4f7;
  --art-f5f5e4: #e7edf2;
  --art-f5f7f1: #f1f5f7;
  --art-f5f7f2: #f2f5f7;
  --art-f5f7f4: #f3f6f8;
  --art-f7f9f3: #f3f6f9;
  --art-f7f9f4: #f4f7f9;
  --art-f7f9f6: #f5f8fa;
  --art-f8faf6: #f6f8fa;
  --art-f9faf6: #f6f8fa;
  --art-fcfdfb: #fbfcfd;
}
.tl-designs-navy {
}
.tl-designs-blue {
}
.tl-designs-slate {
}
.tl-designs-design {
  color: var(--ink);
}
.tl-designs-design [data-ui="nav-cta"] {
  background: var(--accent);
  color: #fff;
}
.tl-designs-design [data-ui="nav-cta"]:hover {
  background: var(--ink);
  color: #fff;
}
.tl-designs-design [data-ui="button"] {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
}
.tl-designs-design [data-ui="button"]:hover {
  background: var(--ink);
  border-color: var(--ink);
}
.tl-designs-design #measurement [data-ui="button"] {
  background: 0 0;
  border-color: #a6c7e2;
}
.tl-designs-design #measurement [data-ui="button"]:hover {
  background: #ffffff18;
}
.tl-designs-design [data-ui="contact-cta"] [data-ui="button"] {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
}
.tl-designs-design [data-ui="contact-cta"] [data-ui="button"]:hover {
  background: var(--ink);
}
:is(.tl-designs-design a:focus-visible, .tl-designs-design button:focus-visible) {
  outline-color: #3185d4;
}
.tl-designs-design ::selection {
  color: #153956;
  background: #d4e7fc;
}
.tl-designs-switcher {
  color: #536578;
  background: #f3f6f9;
  border-bottom: 1px solid #dae2e9;
  align-items: center;
  gap: 22px;
  min-height: 45px;
  padding: 7px 32px;
  font-size: 12px;
  display: flex;
}
.tl-designs-switcher > a:first-child {
  color: #173b60;
  font-weight: 600;
}
.tl-designs-switcher nav {
  gap: 8px;
  display: flex;
}
.tl-designs-switcher nav a {
  align-items: center;
  gap: 8px;
  padding: 3px 12px;
  display: inline-flex;
}
.tl-designs-switcher nav a[aria-current] {
  color: #fff;
  background: #203f5e;
}
.tl-designs-switchDivider {
  border-left: 1px solid #bbcbd7;
  height: 15px;
}
.tl-designs-original {
  margin-left: auto;
}
.tl-designs-hero {
  max-width: 1440px;
  margin: auto;
}
.tl-designs-kicker {
  letter-spacing: 0.14em;
  color: var(--accent, #42627f);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.6;
}
.tl-designs-hero h1 {
  letter-spacing: 0.025em;
  font-weight: 500;
}
.tl-designs-hero em {
  color: var(--accent);
  font-style: normal;
}
.tl-designs-description {
  color: var(--muted);
  font-size: 16px;
  line-height: 2;
}
.tl-designs-lead {
  margin-top: 23px;
  font-size: 16px;
}
.tl-designs-heroActions {
  flex-wrap: wrap;
  align-items: center;
  gap: 30px;
  display: flex;
}
.tl-designs-primary,
.tl-designs-secondary {
  justify-content: space-between;
  align-items: center;
  gap: 32px;
  min-height: 56px;
  font-size: 14px;
  font-weight: 600;
  display: inline-flex;
}
.tl-designs-primary {
  background: var(--accent);
  color: #fff;
  border: 1px solid var(--accent);
  padding: 14px 25px;
}
.tl-designs-primary:hover {
  background: var(--ink);
}
.tl-designs-secondary {
  border-bottom: 1px solid #bccddd;
}
.tl-designs-secondary:hover {
  color: var(--accent);
}
.tl-designs-primary svg,
.tl-designs-secondary svg {
  flex-shrink: 0;
}
.tl-designs-navyHero {
  grid-template-columns: 1fr 1.02fr;
  gap: 0 65px;
  padding: 72px 64px 0;
  display: grid;
}
.tl-designs-navyHeading {
  padding-top: 10px;
}
.tl-designs-navyHeading h1 {
  margin-top: 30px;
  font-family:
    Yu Mincho,
    Hiragino Mincho ProN,
    Georgia,
    serif;
  font-size: clamp(36px, 3.6vw, 56px);
  font-weight: 500;
  line-height: 1.6;
}
.tl-designs-navyHeading .tl-designs-lead {
  margin-top: 27px;
}
.tl-designs-navyArtwork {
  border-top: 4px solid var(--accent);
  background: #fff;
  align-self: start;
  padding: 30px 20px 0;
  position: relative;
}
.tl-designs-artNumber {
  color: #68879d;
  letter-spacing: 0.13em;
  padding-left: 10px;
  font-size: 12px;
}
.tl-designs-navyArtwork > div {
  margin-top: 2px;
}
.tl-designs-navyCaption {
  background: var(--accent);
  color: #fff;
  justify-content: space-between;
  align-items: center;
  margin-inline: -20px;
  padding: 22px 30px;
  font-size: 15px;
  display: flex;
}
.tl-designs-navyCaption span:last-child {
  text-align: right;
  letter-spacing: 0.12em;
  color: #cee0ed;
  font-size: 10px;
  line-height: 1.8;
}
.tl-designs-navyIntro {
  border-top: 1px solid #bdceda;
  grid-column: 1/-1;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 56px;
  margin-top: 48px;
  padding-top: 28px;
  display: grid;
}
.tl-designs-navyIntro .tl-designs-description {
  max-width: 660px;
}
.tl-designs-scrollHint {
  letter-spacing: 0.12em;
  color: #52748e;
  grid-column: 1/-1;
  justify-content: end;
  align-items: center;
  gap: 22px;
  padding: 28px 0;
  font-size: 11px;
  display: flex;
}
:is(
  .tl-designs-navy [data-ui="section-title"] h2,
  .tl-designs-navy [data-ui="service"] h3,
  .tl-designs-navy [data-ui="contact-cta"] h2
) {
  font-family:
    Yu Mincho,
    Hiragino Mincho ProN,
    Georgia,
    serif;
  font-weight: 500;
}
.tl-designs-navy #about {
  background: #edf2f5;
  border-top: 1px solid #d5e0e7;
}
.tl-designs-navy [data-ui="service"] {
  grid-template-columns: 0.9fr 1fr;
  gap: 95px;
  padding-block: 105px;
}
.tl-designs-navy [data-ui="service"] > div:first-child {
  border-top: 2px solid var(--accent);
}
.tl-designs-navy #measurement {
  padding-block: 105px;
}
.tl-designs-navy [data-ui="measurementArt"] {
  background: #f0f4f7;
}
.tl-designs-navy [data-ui="contact-cta"] {
  background: #edf2f5;
  border-top: 1px solid #bdceda;
}
.tl-designs-blueHero {
  text-align: center;
  padding: 65px 60px 0;
}
.tl-designs-blueHero h1 {
  letter-spacing: 0.05em;
  margin-top: 20px;
  font-size: clamp(36px, 4.2vw, 61px);
  font-weight: 600;
  line-height: 1.55;
}
.tl-designs-blueHero .tl-designs-description {
  max-width: 760px;
  margin: 23px auto 0;
}
.tl-designs-blueHero .tl-designs-heroActions {
  justify-content: center;
  margin-top: 26px;
}
.tl-designs-blue .tl-designs-primary {
  border-radius: 3px;
}
.tl-designs-blueStage {
  background: #edf5ff;
  grid-template-columns: 1fr 2.2fr 1fr;
  align-items: center;
  gap: 35px;
  max-width: 1130px;
  margin: 34px auto 0;
  padding: 0 35px;
  display: grid;
}
.tl-designs-blueStage > div:nth-child(2) {
  margin-top: -5px;
  margin-bottom: -5px;
}
.tl-designs-sideNote {
  text-align: left;
  border-left: 2px solid #619ce9;
  padding-left: 18px;
}
.tl-designs-sideNote > span {
  color: #3272c3;
  margin-bottom: 14px;
  font-size: 12px;
  display: block;
}
.tl-designs-sideNote strong {
  color: #194c88;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.8;
  display: block;
}
.tl-designs-sideNote p {
  color: #647c99;
  margin-top: 15px;
  font-size: 13px;
  line-height: 1.9;
}
.tl-designs-blueBottom {
  letter-spacing: 0.08em;
  color: #5b7390;
  justify-content: space-between;
  padding: 24px 0;
  font-size: 11px;
  display: flex;
}
.tl-designs-blue #about {
  background: #fff;
  padding-top: 85px;
}
.tl-designs-blue [data-ui="aboutIntro"] {
  text-align: center;
  display: block;
}
.tl-designs-blue [data-ui="aboutIntro"] > div:last-child {
  max-width: 760px;
  margin: auto;
  padding-top: 25px;
}
.tl-designs-blue [data-ui="aboutNetwork"] {
  background: #edf5ff;
  border: none;
}
.tl-designs-blue [data-ui="servicesHead"] {
  text-align: center;
  display: block;
}
.tl-designs-blue [data-ui="servicesHead"] > p {
  max-width: none;
  margin-top: 24px;
}
.tl-designs-blue [data-ui="serviceIndex"] {
  justify-content: center;
}
.tl-designs-blue [data-ui="service"] > div:first-child {
  background: #edf5ff;
  border-radius: 4px;
}
.tl-designs-blue #measurement {
  background: #1765dc;
  padding-block: 90px;
}
:is(.tl-designs-blue #measurement p, .tl-designs-blue #measurement small) {
  color: #eef5ff;
}
.tl-designs-blue #measurement [data-ui="measurementArt"] {
  background: #f2f7fe;
  border-radius: 4px;
}
.tl-designs-blue #measurement [data-ui="measurementArt"] p {
  color: #5f7993;
}
.tl-designs-blue #general {
  background: #edf5ff;
  border: 0;
}
.tl-designs-blue [data-ui="contact-cta"] {
  text-align: center;
  background: #fff;
  padding-block: 85px;
}
.tl-designs-blue [data-ui="contact-cta"] > div {
  display: block;
}
.tl-designs-blue [data-ui="contact-cta"] [data-ui="button"] {
  margin-top: 30px;
}
.tl-designs-slateHero {
  grid-template-columns: 0.8fr 1.2fr;
  gap: 35px 55px;
  padding: 70px 56px 0;
  display: grid;
}
.tl-designs-slateHeading {
  padding-top: 24px;
}
.tl-designs-slateHeading h1 {
  margin-top: 25px;
  font-size: clamp(37px, 4vw, 60px);
  font-weight: 500;
  line-height: 1.55;
}
.tl-designs-slateHeading .tl-designs-lead {
  margin-top: 23px;
  font-weight: 600;
}
.tl-designs-slateHeading .tl-designs-description {
  max-width: 445px;
  margin-top: 20px;
}
.tl-designs-slateHeading .tl-designs-heroActions {
  gap: 18px;
  margin-top: 28px;
}
.tl-designs-slateArtwork {
  background-color: #f0f4f7;
  background-image:
    linear-gradient(#d9e4eb80 1px, #0000 1px), linear-gradient(90deg, #d9e4eb80 1px, #0000 1px);
  background-size: 32px 32px;
  border: 1px solid #bdceda;
  align-self: center;
}
.tl-designs-diagramHeading {
  color: #47667e;
  letter-spacing: 0.06em;
  background: #e7eef3;
  border-bottom: 1px solid #bfced9;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  padding: 15px 20px;
  font-size: 11px;
  display: flex;
}
.tl-designs-diagramHeading span:last-child {
  font-size: 12px;
}
.tl-designs-diagramLegend {
  color: #496c86;
  background: #fff;
  border-top: 1px solid #bfced9;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px 28px;
  padding: 14px;
  font-size: 12px;
  display: flex;
}
.tl-designs-diagramLegend span + span:before {
  content: "—";
  color: #97afc1;
  margin-right: 28px;
}
.tl-designs-slateSteps {
  border-block: 1px solid #b9cddc;
  grid-column: 1/-1;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 10px;
  margin-bottom: 65px;
  display: grid;
}
.tl-designs-slateSteps > div {
  border-right: 1px solid #b9cddc;
  align-items: center;
  gap: 23px;
  padding: 22px;
  display: flex;
}
.tl-designs-slateSteps > div:last-child {
  border-right: 0;
}
.tl-designs-slateSteps span {
  color: #68879d;
  font-size: 12px;
}
.tl-designs-slateSteps strong {
  font-size: 15px;
  font-weight: 500;
}
.tl-designs-slate #about {
  background: #edf2f5;
  padding-block: 75px;
}
.tl-designs-slate [data-ui="aboutIntro"] {
  grid-template-columns: 0.8fr 1.2fr;
  gap: 65px;
}
.tl-designs-slate [data-ui="aboutNetwork"] {
  border: 1px solid #c0d0dc;
}
.tl-designs-slate [data-ui="servicesHead"] {
  border-left: 3px solid #366889;
  padding-left: 30px;
}
.tl-designs-slate [data-ui="service"] {
  grid-template-columns: 0.72fr 1fr;
  gap: 75px;
  padding-block: 65px;
}
.tl-designs-slate [data-ui="service"] > div:first-child {
  background: #f0f4f7;
  border: 1px solid #c3d2dd;
  order: 0;
}
.tl-designs-slate [data-ui="service"] h3 {
  font-size: 28px;
}
.tl-designs-slate #measurement {
  color: #1f425d;
  background: #edf2f5;
  border-block: 1px solid #bdcedb;
}
:is(.tl-designs-slate #measurement h2, .tl-designs-slate #measurement h3) {
  color: #224d6d;
}
:is(.tl-designs-slate #measurement p, .tl-designs-slate #measurement small) {
  color: #52748e;
}
.tl-designs-slate #measurement [data-ui="button"] {
  color: #244b6b;
  border-color: #789ab5;
}
.tl-designs-slate #measurement [data-ui="button"]:hover {
  background: #dbe7ef;
}
.tl-designs-slate [data-ui="measurementGrid"] {
  grid-template-columns: 0.8fr 1.2fr;
}
.tl-designs-slate [data-ui="measurementArt"] {
  background: #fff;
  border: 1px solid #c3d2dd;
}
.tl-designs-slate [data-ui="equipmentGrid"] {
  grid-template-columns: 1.2fr 0.8fr;
}
.tl-designs-slate #general {
  background: #f0f4f7;
}
.tl-designs-slate [data-ui="contact-cta"] {
  color: #fff;
  background: #244557;
}
.tl-designs-slate [data-ui="contact-cta"] p {
  color: #cee0ed;
}
.tl-designs-slate [data-ui="contact-cta"] [data-ui="button"] {
  color: #244557;
  background: #fff;
  border-color: #fff;
}
.tl-designs-comparison {
  color: #20384e;
  background: #f5f7fa;
  min-height: 100vh;
}
.tl-designs-comparisonHeader {
  background: #fff;
  border-bottom: 1px solid #dce4eb;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 24px 4.5%;
  display: flex;
}
.tl-designs-comparisonHeader img {
  width: 175px;
  height: auto;
}
.tl-designs-comparisonHeader > span {
  color: #7a8da0;
  letter-spacing: 0.15em;
  font-size: 11px;
}
.tl-designs-comparisonHeader > a:last-child {
  align-items: center;
  gap: 20px;
  font-size: 13px;
  display: flex;
}
.tl-designs-comparisonMain {
  max-width: 1440px;
  margin: auto;
  padding: 75px 60px 70px;
}
.tl-designs-comparisonIntro {
  justify-content: space-between;
  align-items: end;
  gap: 55px;
  margin-bottom: 50px;
  display: flex;
}
.tl-designs-comparisonIntro h1 {
  letter-spacing: 0.04em;
  margin-top: 20px;
  font-size: clamp(36px, 3.5vw, 51px);
  font-weight: 500;
  line-height: 1.55;
}
.tl-designs-comparisonIntro > div:last-child {
  color: #64798d;
  padding-bottom: 8px;
  font-size: 16px;
}
.tl-designs-comparisonIntro > div:last-child p + p {
  margin-top: 15px;
}
.tl-designs-proposalGrid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 48px 30px;
  display: grid;
}
.tl-designs-proposal {
  min-width: 0;
}
.tl-designs-previewLink {
  border: 1px solid #d7e0e8;
  transition: border-color 0.2s;
  display: block;
  position: relative;
}
.tl-designs-previewLink:hover {
  border-color: #597996;
}
.tl-designs-viewOverlay {
  background: #ffffffed;
  border-top: 1px solid #d6e0e9;
  justify-content: space-between;
  align-items: center;
  padding: 12px 18px;
  font-size: 12px;
  display: flex;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.tl-designs-thumbnail {
  --ink: #173451;
  background: #fff;
  height: 300px;
  padding: 15px 16px 47px;
  overflow: hidden;
}
.tl-designs-miniHeader {
  border-bottom: 1px solid #e4e9ee;
  align-items: center;
  gap: 8px;
  padding-bottom: 10px;
  display: flex;
}
.tl-designs-miniHeader > img {
  width: 64px;
  height: auto;
  margin-right: auto;
}
.tl-designs-miniHeader i {
  background: #b0c0cf;
  width: 18px;
  height: 3px;
}
.tl-designs-miniHeader i:last-child {
  background: var(--accent);
  width: 30px;
  height: 12px;
}
.tl-designs-miniBody {
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 6px;
  margin-top: 25px;
  display: grid;
}
.tl-designs-miniCopy small {
  letter-spacing: 0.09em;
  color: var(--accent);
  margin-bottom: 10px;
  font-size: 6px;
  display: block;
}
.tl-designs-miniCopy strong {
  white-space: nowrap;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.9;
}
.tl-designs-miniCopy b {
  background: var(--accent);
  width: 65px;
  height: 15px;
  margin-top: 15px;
  display: block;
}
.tl-designs-miniArt {
  background: #eef4f9;
}
.tl-designs-miniBottom {
  border-top: 1px solid #d3dee8;
  gap: 10px;
  margin-top: 26px;
  padding-top: 12px;
  display: flex;
}
.tl-designs-miniBottom span {
  background: #c2d0dc;
  width: 30%;
  height: 3px;
}
.tl-designs-thumbnail.tl-designs-navy .tl-designs-miniCopy strong {
  font-family:
    Yu Mincho,
    Georgia,
    serif;
}
.tl-designs-thumbnail.tl-designs-navy .tl-designs-miniArt {
  border-bottom: 20px solid var(--accent);
  background: #fff;
}
.tl-designs-thumbnail.tl-designs-blue .tl-designs-miniBody {
  text-align: center;
  margin-top: 12px;
  display: block;
}
.tl-designs-thumbnail.tl-designs-blue .tl-designs-miniCopy small {
  margin-bottom: 3px;
}
.tl-designs-thumbnail.tl-designs-blue .tl-designs-miniCopy strong {
  color: #1765dc;
  font-size: 17px;
  line-height: 1.6;
}
.tl-designs-thumbnail.tl-designs-blue .tl-designs-miniCopy b {
  height: 10px;
  margin: 8px auto;
}
.tl-designs-thumbnail.tl-designs-blue .tl-designs-miniArt {
  width: 65%;
  height: 89px;
  margin: auto;
  overflow: hidden;
}
.tl-designs-thumbnail.tl-designs-blue .tl-designs-miniArt svg {
  height: 103px;
  margin-top: -9px;
}
.tl-designs-thumbnail.tl-designs-blue .tl-designs-miniBottom {
  margin-top: 8px;
}
.tl-designs-thumbnail.tl-designs-slate .tl-designs-miniBody {
  grid-template-columns: 0.8fr 1.2fr;
}
.tl-designs-thumbnail.tl-designs-slate .tl-designs-miniArt {
  border: 1px solid #b4cadb;
  padding-block: 20px;
}
.tl-designs-thumbnail.tl-designs-slate .tl-designs-miniCopy strong {
  font-size: 16px;
}
.tl-designs-thumbnail.tl-designs-slate .tl-designs-miniBottom span {
  background: #7695ae;
  height: 5px;
}
.tl-designs-proposalTitle {
  align-items: center;
  gap: 16px;
  margin-top: 24px;
  display: flex;
}
.tl-designs-proposalTitle > span {
  color: #6b87a0;
  border-right: 1px solid #becdda;
  padding-right: 16px;
  font-family: Georgia, serif;
  font-size: 40px;
  line-height: 1;
}
.tl-designs-proposalTitle p {
  color: #7a8c9e;
  letter-spacing: 0.05em;
  font-size: 12px;
}
.tl-designs-proposalTitle h2 {
  margin-top: 4px;
  font-size: 19px;
  font-weight: 500;
}
.tl-designs-proposalDescription {
  color: #5c7185;
  min-height: 92px;
  margin-top: 22px;
  font-size: 15px;
}
.tl-designs-swatches {
  align-items: center;
  gap: 7px;
  margin: 20px 0;
  display: flex;
}
.tl-designs-swatches > span:not(:last-child) {
  border: 1px solid #d4dfe7;
  width: 25px;
  height: 25px;
}
.tl-designs-swatches > span:last-child {
  color: #7b8ea1;
  margin-left: 6px;
  font-size: 11px;
}
.tl-designs-keywords {
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}
.tl-designs-keywords li {
  color: #56728b;
  border: 1px solid #c9d6e1;
  padding: 3px 10px;
  font-size: 12px;
}
.tl-designs-proposal dl {
  border-top: 1px solid #d1dce5;
  margin-top: 23px;
}
.tl-designs-proposal dl > div {
  padding-top: 14px;
}
.tl-designs-proposal dt {
  color: #71879c;
  font-size: 12px;
}
.tl-designs-proposal dd {
  color: #415f78;
  margin: 5px 0 0;
  font-size: 14px;
  line-height: 1.8;
}
.tl-designs-openProposal {
  border-top: 1px solid #bdcfdd;
  justify-content: space-between;
  align-items: center;
  margin-top: 23px;
  padding: 16px 0;
  font-size: 14px;
  font-weight: 600;
  display: flex;
}
.tl-designs-openProposal:hover {
  color: #1765dc;
}
.tl-designs-comparisonNote {
  border-top: 1px solid #c7d5df;
  grid-template-columns: 1fr 2fr;
  gap: 8px 30px;
  margin-top: 55px;
  padding-top: 30px;
  display: grid;
}
.tl-designs-comparisonNote h2 {
  grid-row: span 2;
  font-size: 18px;
  font-weight: 500;
}
.tl-designs-comparisonNote p {
  color: #6a7e90;
  font-size: 14px;
}
.tl-designs-comparisonFooter {
  color: #8091a1;
  border-top: 1px solid #d2dde6;
  justify-content: space-between;
  padding: 25px 4.5%;
  font-size: 12px;
  display: flex;
}
@media (max-width: 1180px) {
  .tl-designs-switcher {
    gap: 12px;
    padding-inline: 24px;
  }
  .tl-designs-switcher nav a {
    padding-inline: 8px;
  }
  .tl-designs-switcher nav a > span:last-child {
    display: none;
  }
  .tl-designs-navyHero {
    gap: 0 38px;
    padding: 45px 40px 0;
  }
  .tl-designs-navyHeading h1 {
    font-size: 40px;
  }
  .tl-designs-navyIntro {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .tl-designs-navyArtwork {
    align-self: center;
  }
  .tl-designs-navy [data-ui="service"] {
    gap: 50px;
  }
  .tl-designs-blueHero {
    padding-inline: 40px;
  }
  .tl-designs-blueStage {
    grid-template-columns: 0.8fr 2.2fr 0.8fr;
    gap: 10px;
    padding-inline: 20px;
  }
  .tl-designs-sideNote {
    padding-left: 10px;
  }
  .tl-designs-sideNote strong {
    font-size: 18px;
  }
  .tl-designs-sideNote p {
    font-size: 12px;
  }
  .tl-designs-slateHero {
    gap: 28px;
    padding: 45px 40px 0;
  }
  .tl-designs-slateHeading h1 {
    font-size: 40px;
  }
  .tl-designs-slateHeading .tl-designs-heroActions {
    flex-direction: column;
    align-items: start;
    gap: 15px;
  }
  .tl-designs-diagramHeading {
    flex-wrap: wrap;
    gap: 3px;
    padding: 12px;
  }
  .tl-designs-diagramLegend {
    gap: 8px;
    font-size: 11px;
  }
  .tl-designs-diagramLegend span + span:before {
    margin-right: 8px;
  }
  .tl-designs-slateSteps > div {
    gap: 13px;
    padding-inline: 12px;
  }
  .tl-designs-slateSteps strong {
    font-size: 13px;
  }
  :is(.tl-designs-slate [data-ui="aboutIntro"], .tl-designs-slate [data-ui="service"]) {
    gap: 40px;
  }
  .tl-designs-comparisonMain {
    padding: 55px 35px;
  }
  .tl-designs-proposalGrid {
    gap: 20px;
  }
  .tl-designs-comparisonIntro {
    gap: 30px;
  }
  .tl-designs-comparisonIntro > div:last-child {
    font-size: 14px;
  }
  .tl-designs-thumbnail {
    height: 265px;
    padding-inline: 11px;
  }
  .tl-designs-miniCopy strong {
    font-size: 11px;
  }
  .tl-designs-thumbnail.tl-designs-slate .tl-designs-miniCopy strong {
    font-size: 12px;
  }
  .tl-designs-thumbnail.tl-designs-blue .tl-designs-miniCopy strong {
    font-size: 14px;
  }
  .tl-designs-proposalTitle h2 {
    font-size: 17px;
  }
  .tl-designs-proposalDescription {
    min-height: 116px;
  }
}
@media (max-width: 760px) {
  .tl-designs-switcher {
    gap: 9px;
    min-height: 44px;
    padding: 8px 16px;
    font-size: 11px;
  }
  .tl-designs-switcher nav {
    gap: 3px;
  }
  .tl-designs-switcher nav a {
    padding: 3px 9px;
  }
  .tl-designs-switchDivider {
    display: none;
  }
  .tl-designs-original {
    font-size: 10px;
  }
  .tl-designs-kicker {
    letter-spacing: 0.08em;
    font-size: 10px;
  }
  .tl-designs-heroActions {
    gap: 22px;
  }
  .tl-designs-primary,
  .tl-designs-secondary {
    gap: 20px;
    min-height: 54px;
    font-size: 14px;
  }
  .tl-designs-primary {
    padding-inline: 19px;
  }
  .tl-designs-description {
    font-size: 16px;
  }
  .tl-designs-lead {
    font-size: 15px;
  }
  .tl-designs-navyHero {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 36px 22px 0;
  }
  .tl-designs-navyHeading {
    padding: 0;
  }
  .tl-designs-navyHeading h1 {
    margin-top: 22px;
    font-size: clamp(33px, 8vw, 46px);
    line-height: 1.65;
  }
  .tl-designs-navyHeading .tl-designs-lead {
    font-size: 15px;
  }
  .tl-designs-navyArtwork {
    padding-top: 20px;
  }
  .tl-designs-navyIntro {
    grid-column: auto;
    gap: 24px;
    margin-top: 0;
    padding-top: 24px;
  }
  .tl-designs-navyCaption {
    padding: 18px 22px;
    font-size: 14px;
  }
  .tl-designs-navyCaption span:last-child {
    font-size: 9px;
  }
  .tl-designs-scrollHint {
    padding: 0 0 25px;
    font-size: 10px;
  }
  .tl-designs-navy [data-ui="service"] {
    grid-template-columns: 1fr;
    gap: 28px;
    padding-block: 48px;
  }
  .tl-designs-navy #measurement {
    padding-block: 60px;
  }
  .tl-designs-blueHero {
    padding: 40px 22px 0;
  }
  .tl-designs-blueHero h1 {
    letter-spacing: 0.01em;
    margin-top: 23px;
    font-size: clamp(30px, 7.4vw, 46px);
    line-height: 1.65;
  }
  .tl-designs-blueHero .tl-designs-description {
    text-align: left;
    margin-top: 24px;
  }
  .tl-designs-blueHero .tl-designs-heroActions {
    gap: 19px;
  }
  .tl-designs-blueStage {
    grid-template-columns: 1fr 1fr;
    gap: 0 28px;
    margin-top: 30px;
    padding: 20px;
  }
  .tl-designs-blueStage > div:nth-child(2) {
    order: -1;
    grid-column: 1/-1;
    margin: -20px -20px 0;
  }
  .tl-designs-sideNote {
    padding-left: 12px;
  }
  .tl-designs-sideNote > span {
    margin-bottom: 5px;
    font-size: 11px;
  }
  .tl-designs-sideNote strong {
    font-size: 17px;
  }
  .tl-designs-sideNote p {
    display: none;
  }
  .tl-designs-blueBottom {
    letter-spacing: 0.01em;
    gap: 20px;
    font-size: 9px;
  }
  .tl-designs-blueBottom > span {
    text-align: left;
    max-width: 160px;
  }
  :is(.tl-designs-blue #about, .tl-designs-blue #measurement) {
    padding-block: 60px;
  }
  :is(.tl-designs-blue [data-ui="aboutIntro"], .tl-designs-blue [data-ui="servicesHead"]) {
    text-align: left;
  }
  .tl-designs-blue [data-ui="contact-cta"] {
    padding-block: 60px;
  }
  .tl-designs-slateHero {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 34px 22px 0;
  }
  .tl-designs-slateHeading {
    padding: 0;
  }
  .tl-designs-slateHeading h1 {
    margin-top: 20px;
    font-size: 42px;
    line-height: 1.6;
  }
  .tl-designs-slateHeading .tl-designs-heroActions {
    flex-flow: wrap;
    align-items: center;
    gap: 20px;
  }
  .tl-designs-slateHeading .tl-designs-description {
    margin-top: 20px;
  }
  .tl-designs-diagramHeading {
    justify-content: space-between;
    font-size: 9px;
  }
  .tl-designs-diagramHeading span:last-child {
    font-size: 10px;
  }
  .tl-designs-diagramLegend {
    padding: 12px 5px;
    font-size: 10px;
  }
  .tl-designs-slateSteps {
    grid-template-columns: 1fr 1fr;
    margin: 0 0 42px;
  }
  .tl-designs-slateSteps > div {
    gap: 12px;
    padding: 15px 8px;
  }
  .tl-designs-slateSteps > div:nth-child(2) {
    border-right: 0;
  }
  .tl-designs-slateSteps > div:nth-child(-n + 2) {
    border-bottom: 1px solid #b9cddc;
  }
  :is(
    .tl-designs-slate [data-ui="aboutIntro"],
    .tl-designs-slate [data-ui="service"],
    .tl-designs-slate [data-ui="measurementGrid"],
    .tl-designs-slate [data-ui="equipmentGrid"]
  ) {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .tl-designs-slate [data-ui="service"] {
    padding-block: 48px;
  }
  .tl-designs-slate [data-ui="servicesHead"] {
    padding-left: 18px;
  }
  .tl-designs-slate [data-ui="service"] h3 {
    font-size: 25px;
  }
  .tl-designs-comparisonHeader {
    gap: 15px;
    padding: 18px 22px;
  }
  .tl-designs-comparisonHeader img {
    width: 145px;
  }
  .tl-designs-comparisonHeader > span {
    display: none;
  }
  .tl-designs-comparisonHeader > a:last-child {
    gap: 8px;
    font-size: 11px;
  }
  .tl-designs-comparisonHeader > a:last-child svg {
    width: 16px;
  }
  .tl-designs-comparisonMain {
    padding: 42px 22px;
  }
  .tl-designs-comparisonIntro {
    margin-bottom: 32px;
    display: block;
  }
  .tl-designs-comparisonIntro h1 {
    margin-top: 17px;
    font-size: 36px;
  }
  .tl-designs-comparisonIntro > div:last-child {
    margin-top: 23px;
    font-size: 15px;
  }
  .tl-designs-proposalGrid {
    grid-template-columns: 1fr;
    gap: 42px;
  }
  .tl-designs-thumbnail {
    height: 300px;
    padding-inline: 22px;
  }
  .tl-designs-miniBody {
    gap: 15px;
  }
  .tl-designs-miniCopy strong {
    font-size: 16px;
  }
  .tl-designs-thumbnail.tl-designs-blue .tl-designs-miniCopy strong {
    font-size: 19px;
  }
  .tl-designs-thumbnail.tl-designs-slate .tl-designs-miniCopy strong {
    font-size: 18px;
  }
  .tl-designs-proposalDescription {
    min-height: 0;
    font-size: 16px;
  }
  .tl-designs-proposalTitle h2 {
    font-size: 20px;
  }
  .tl-designs-comparisonNote {
    margin-top: 40px;
    display: block;
  }
  .tl-designs-comparisonNote p {
    margin-top: 15px;
  }
  .tl-designs-comparisonFooter {
    gap: 20px;
    padding: 22px;
    font-size: 10px;
  }
}
@media (max-width: 360px) {
  .tl-designs-switcher {
    gap: 7px;
    padding-inline: 12px;
  }
  .tl-designs-original {
    max-width: 65px;
    font-size: 9px;
  }
  .tl-designs-navyHeading h1 {
    font-size: 32px;
  }
  .tl-designs-blueHero h1 {
    font-size: 28px;
  }
  .tl-designs-slateHeading h1 {
    font-size: 36px;
  }
  .tl-designs-heroActions {
    gap: 16px;
  }
  .tl-designs-primary,
  .tl-designs-secondary {
    gap: 14px;
  }
  .tl-designs-comparisonIntro h1 {
    font-size: 32px;
  }
  .tl-designs-comparisonHeader > a:last-child {
    max-width: 90px;
  }
  .tl-designs-miniCopy strong {
    font-size: 13px;
  }
  .tl-designs-thumbnail.tl-designs-slate .tl-designs-miniCopy strong {
    font-size: 15px;
  }
}
.tl-designs-generatedHero {
  width: 100%;
  min-width: 0;
}
.tl-designs-generatedHero img {
  object-fit: contain;
  width: 100%;
  height: auto;
  display: block;
}
.tl-designs-navyArtwork > .tl-designs-generatedHero {
  margin-block: 14px 20px;
}
.tl-designs-blueStage > .tl-designs-generatedHero {
  margin-block: 20px;
}
.tl-designs-slateArtwork > .tl-designs-generatedHero {
  background: #f2f5f8;
}
.tl-designs-miniArt .tl-designs-generatedHero {
  width: 100%;
}
.tl-designs-miniArt .tl-designs-generatedHero img {
  width: 100%;
  height: auto;
}
.tl-designs-thumbnail.tl-designs-blue .tl-designs-miniArt .tl-designs-generatedHero img {
  object-fit: contain;
  height: 89px;
  margin: 0;
}
@media (max-width: 760px) {
  .tl-designs-blueStage > .tl-designs-generatedHero {
    order: -1;
    grid-column: 1/-1;
    width: calc(100% + 40px);
    margin: -20px -20px 20px;
  }
  .tl-designs-navyArtwork > .tl-designs-generatedHero {
    margin-block: 12px 18px;
  }
}
.tl-designs-greenThumbnail {
  --ink: #315f52;
  background: #fafaf5;
}
.tl-designs-greenThumbnail .tl-designs-miniArt {
  background: #edf3eb;
}
.tl-designs-greenThumbnail .tl-designs-miniCopy b,
.tl-designs-greenThumbnail .tl-designs-miniBottom span {
  background: #315f52;
}
.tl-e-concept-page {
  --accent: #366889;
  --ink: #244557;
  color: var(--ink);
  background: #fff;
  font-family:
    Hiragino Maru Gothic ProN,
    Yu Gothic,
    Meiryo,
    sans-serif;
}
.tl-e-concept-page [data-ui="site-header"] {
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  background: #ffffffed;
  border: 0;
  border-bottom: 1px solid #e6eef2;
  height: 100px;
}
.tl-e-concept-page [data-ui="header-inner"] {
  gap: 24px;
  max-width: 1660px;
  padding-inline: 3.5%;
}
.tl-e-concept-page [data-ui="site-header"] nav {
  gap: 12px;
}
.tl-e-concept-page [data-ui="nav-links"] {
  box-shadow: none;
  background: 0 0;
  border-radius: 0;
  align-items: center;
  gap: 28px;
  padding: 0 18px 0 0;
  display: flex;
}
.tl-e-concept-page [data-ui="nav-links"] a {
  white-space: nowrap;
  padding-block: 15px;
  font-size: 13px;
  font-weight: 600;
}
.tl-e-concept-page [data-ui="nav-links"] a:hover {
  color: #4f88aa;
  text-underline-offset: 7px;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}
.tl-e-concept-page [data-ui="nav-links"] a[aria-current="page"] {
  color: #366889;
  text-underline-offset: 7px;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}
.tl-e-concept-page [data-ui="nav-cta"] {
  height: 54px;
  min-height: 54px;
  box-shadow: none;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: 0 26px;
  font-size: 13px;
  display: inline-flex;
}
.tl-e-concept-page [data-ui="nav-cta"] {
  background: var(--accent);
  color: #fff;
  border: 1px solid #0000;
}
.tl-e-concept-page [data-ui="nav-cta"]:hover {
  color: #fff;
  background: #244557;
}
.tl-e-concept-hero {
  isolation: isolate;
  max-width: 1640px;
  min-height: min(73vw, 950px);
  margin: 0 auto;
  position: relative;
}
.tl-e-concept-landscape {
  width: 86%;
  margin-left: auto;
  padding-top: 2px;
  padding-right: 2%;
}
.tl-e-concept-landscape img {
  width: 100%;
  height: auto;
  display: block;
}
.tl-e-concept-heroCopy {
  z-index: 1;
  padding: 22px 32px 30px 0;
  position: absolute;
  top: 18%;
  left: 5.5%;
}
.tl-e-concept-heroCopy:before {
  content: "";
  z-index: -1;
  background: radial-gradient(at 20%, #fff 20%, #fffffff5 45%, #fff0 73%);
  position: absolute;
  inset: -28px -25px -26px -100px;
}
.tl-e-concept-eyebrow {
  color: #507e98;
  letter-spacing: 0.2em;
  margin-bottom: 20px;
  font-size: 11px;
  font-weight: 600;
}
.tl-e-concept-heroCopy h1 {
  letter-spacing: 0.065em;
  color: #244557;
  font-size: clamp(32px, 3.3vw, 52px);
  font-weight: 700;
  line-height: 1.8;
}
.tl-e-concept-heroCopy h1 > span {
  display: inline-block;
}
.tl-e-concept-heroLead {
  color: #4e6c7e;
  margin-top: 22px;
  font-size: 16px;
  line-height: 2.05;
}
.tl-e-concept-heroButton {
  color: #366889;
  background: #fffffff2;
  border: 1.5px solid #366889;
  border-radius: 999px;
  justify-content: space-between;
  align-items: center;
  gap: 32px;
  margin-top: 30px;
  padding: 15px 24px;
  font-size: 14px;
  font-weight: 600;
  transition:
    background 0.2s,
    transform 0.2s;
  display: inline-flex;
  box-shadow: 0 4px 16px #60849a18;
}
.tl-e-concept-heroButton:hover {
  background: #edf5f9;
  transform: translateY(-2px);
}
.tl-e-concept-heroFoot {
  letter-spacing: 0.13em;
  color: #65869a;
  justify-content: space-between;
  align-items: center;
  font-size: 10px;
  display: flex;
  position: absolute;
  bottom: 22px;
  left: 5.5%;
  right: 5.5%;
}
.tl-e-concept-heroFoot a {
  letter-spacing: 0.05em;
  align-items: center;
  gap: 20px;
  font-size: 12px;
  display: flex;
}
.tl-e-concept-heroFoot a span {
  background: #edf5f9;
  border-radius: 50%;
  place-items: center;
  width: 38px;
  height: 38px;
  font-size: 17px;
  display: grid;
}
.tl-e-concept-thumbnail {
  background: #fff;
  height: 300px;
  padding: 16px;
  position: relative;
  overflow: hidden;
}
.tl-e-concept-miniHeader {
  z-index: 1;
  align-items: center;
  gap: 7px;
  display: flex;
  position: relative;
}
.tl-e-concept-miniHeader img {
  width: 76px;
  height: auto;
  margin-right: auto;
}
.tl-e-concept-miniHeader span {
  background:
    linear-gradient(#547084, #547084) 0/22px 2px no-repeat,
    linear-gradient(#547084, #547084) 50%/22px 2px no-repeat,
    linear-gradient(#547084, #547084) 100%/22px 2px no-repeat;
  width: 84px;
  height: 21px;
}
.tl-e-concept-miniHeader b {
  background: #366889;
  border-radius: 99px;
  width: 37px;
  height: 21px;
}
.tl-e-concept-miniLandscape {
  width: 82%;
  margin: 0 0 0 auto;
}
.tl-e-concept-miniCopy {
  color: #244557;
  background: radial-gradient(at 0, #fff 30%, #fff0 78%);
  padding: 10px 16px 14px 0;
  position: absolute;
  top: 39%;
  left: 7%;
}
.tl-e-concept-miniCopy small {
  letter-spacing: 0.13em;
  font-size: 6px;
  display: block;
}
.tl-e-concept-miniCopy strong {
  font-family:
    Yu Gothic,
    Meiryo,
    sans-serif;
  font-size: 19px;
  line-height: 1.9;
  display: block;
}
.tl-e-concept-miniCopy span {
  background: #fff;
  border: 1px solid #366889;
  border-radius: 99px;
  width: 66px;
  height: 18px;
  margin-top: 12px;
  display: block;
}
@media (min-width: 1181px) {
  .tl-e-concept-page [data-ui="site-header"] nav {
    display: flex;
  }
}
@media (max-width: 1180px) {
  .tl-e-concept-page [data-ui="site-header"] {
    height: 84px;
  }
  .tl-e-concept-page [data-ui="site-header"] nav {
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
    background: #fffffff7;
  }
  .tl-e-concept-page [data-ui="nav-links"] {
    box-shadow: none;
    background: 0 0;
    border-radius: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 0;
  }
  .tl-e-concept-page [data-ui="nav-links"] a {
    border-bottom: 1px solid #dbe5ec;
    padding: 15px 0;
    font-size: 16px;
  }
  .tl-e-concept-page [data-ui="nav-cta"] {
    justify-content: space-between;
    padding: 0 24px;
  }
  .tl-e-concept-heroCopy {
    top: 18%;
  }
  .tl-e-concept-heroCopy h1 {
    font-size: 34px;
  }
  .tl-e-concept-heroLead {
    font-size: 14px;
  }
  .tl-e-concept-heroButton {
    margin-top: 22px;
    padding: 12px 20px;
    font-size: 13px;
  }
  .tl-e-concept-hero {
    min-height: 77vw;
  }
  .tl-e-concept-landscape {
    width: 89%;
  }
}
@media (max-width: 760px) {
  .tl-e-concept-page [data-ui="site-header"] {
    height: 76px;
  }
  .tl-e-concept-page [data-ui="header-inner"] {
    padding-inline: 22px;
  }
  .tl-e-concept-hero {
    flex-direction: column;
    min-height: 0;
    padding-bottom: 24px;
    display: flex;
  }
  .tl-e-concept-heroCopy {
    padding: 12px 25px 28px;
    position: relative;
    inset: auto;
  }
  .tl-e-concept-heroCopy:before {
    display: none;
  }
  .tl-e-concept-eyebrow {
    margin-bottom: 13px;
    font-size: 9px;
  }
  .tl-e-concept-heroCopy h1 {
    letter-spacing: 0.04em;
    font-size: clamp(26px, 6.9vw, 42px);
    line-height: 1.75;
  }
  .tl-e-concept-heroLead {
    margin-top: 12px;
    font-size: 13px;
    line-height: 1.9;
  }
  .tl-e-concept-heroButton {
    min-height: 46px;
    margin-top: 19px;
    font-size: 12px;
  }
  .tl-e-concept-landscape {
    width: 100%;
    margin-top: 4px;
    padding: 0 8px;
  }
  .tl-e-concept-heroFoot {
    gap: 16px;
    margin: 0 24px;
    position: static;
  }
  .tl-e-concept-heroFoot > span {
    letter-spacing: 0.05em;
    max-width: 160px;
    font-size: 8px;
  }
  .tl-e-concept-heroFoot a {
    gap: 9px;
    font-size: 10px;
  }
  .tl-e-concept-heroFoot a span {
    width: 29px;
    height: 29px;
  }
  .tl-e-concept-thumbnail {
    height: 300px;
  }
  .tl-e-concept-miniCopy strong {
    font-size: 17px;
  }
}
.tl-company-page-page {
  --company-ink: #344c5b;
  --company-line: #dce4e9;
}
.tl-company-page-page a:focus-visible,
.tl-company-page-page button:focus-visible {
  outline-color: #366889;
}
.tl-company-page-container {
  width: min(880px, 100% - 64px);
  margin-inline: auto;
}
.tl-company-page-breadcrumb {
  color: #657986;
  padding-top: 20px;
  font-size: 12px;
}
.tl-company-page-breadcrumb ol {
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}
.tl-company-page-breadcrumb li {
  align-items: center;
  gap: 14px;
  display: inline-flex;
}
.tl-company-page-breadcrumb a {
  align-items: center;
  min-height: 36px;
  display: inline-flex;
}
.tl-company-page-breadcrumb a:hover {
  text-underline-offset: 4px;
  text-decoration: underline;
}
.tl-company-page-introduction {
  text-align: center;
  padding: 36px 0 34px;
}
.tl-company-page-introduction h1 {
  letter-spacing: 0.06em;
  font-size: 34px;
  font-weight: 600;
  line-height: 1.5;
}
.tl-company-page-profileList {
  border-top: 1px solid var(--company-line);
  min-width: 0;
  color: var(--company-ink);
  margin: 0;
  padding: 0;
}
.tl-company-page-profileList > div {
  border-bottom: 1px solid var(--company-line);
  grid-template-columns: 156px minmax(0, 1fr);
  display: grid;
}
.tl-company-page-profileList dt {
  background: #f5f7f9;
  padding: 21px 24px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.9;
}
.tl-company-page-profileList dd {
  overflow-wrap: anywhere;
  min-width: 0;
  margin: 0;
  padding: 21px 28px;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.9;
}
.tl-company-page-representativeTitle {
  margin-right: 12px;
  display: inline-block;
}
.tl-company-page-representativeName {
  display: inline-block;
}
.tl-company-page-telephone {
  color: inherit;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.tl-company-page-telephone:hover {
  text-underline-offset: 4px;
  text-decoration: underline;
}
.tl-company-page-businessList {
  margin: 0;
  padding-left: 1.2em;
  list-style: outside;
}
.tl-company-page-businessList li + li {
  margin-top: 12px;
}
.tl-company-page-businessList li::marker {
  font-size: 0.7em;
}
.tl-company-page-businessDetail {
  color: #536a78;
  margin-top: 3px;
  font-size: 14px;
  line-height: 1.8;
  display: block;
}
.tl-company-page-returnNavigation {
  text-align: center;
  padding-block: 28px 48px;
}
.tl-company-page-returnLink {
  color: #486b81;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  font-size: 13px;
  display: inline-flex;
}
.tl-company-page-returnArrow {
  display: inline-flex;
  transform: rotate(180deg);
}
.tl-company-page-returnLink:hover {
  text-underline-offset: 4px;
  text-decoration: underline;
}
@media (max-width: 600px) {
  .tl-company-page-container {
    width: calc(100% - 40px);
  }
  .tl-company-page-breadcrumb {
    padding-top: 14px;
    font-size: 11px;
  }
  .tl-company-page-introduction {
    padding: 26px 0 28px;
  }
  .tl-company-page-introduction h1 {
    font-size: 28px;
  }
  .tl-company-page-profileList > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    padding-block: 18px;
  }
  .tl-company-page-profileList dt {
    color: #587383;
    background: 0 0;
    padding: 0;
    font-size: 13px;
  }
  .tl-company-page-profileList dd {
    padding: 0;
    font-size: 14px;
    line-height: 1.85;
  }
  .tl-company-page-representativeTitle {
    margin-right: 8px;
  }
  .tl-company-page-businessDetail {
    font-size: 13px;
  }
  .tl-company-page-returnNavigation {
    padding-block: 22px 32px;
  }
}
.tl-contact-page-container {
  width: min(780px, 100% - 64px);
  margin-inline: auto;
}
.tl-contact-page-breadcrumb {
  color: #657986;
  align-items: center;
  gap: 14px;
  padding-top: 20px;
  font-size: 12px;
  display: flex;
}
.tl-contact-page-breadcrumb a {
  align-items: center;
  min-height: 36px;
  display: inline-flex;
}
.tl-contact-page-breadcrumb a:hover {
  text-underline-offset: 4px;
  text-decoration: underline;
}
.tl-contact-page-heading {
  text-align: center;
  padding: 36px 0 32px;
}
.tl-contact-page-heading h1 {
  letter-spacing: 0.06em;
  font-size: 34px;
  font-weight: 600;
  line-height: 1.5;
}
.tl-contact-page-heading p {
  color: #536a78;
  margin-top: 16px;
  font-size: 15px;
  line-height: 1.9;
}
.tl-contact-page-returnNavigation {
  text-align: center;
  padding: 28px 0 48px;
}
.tl-contact-page-returnNavigation a {
  color: #486b81;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  font-size: 13px;
  display: inline-flex;
}
.tl-contact-page-returnNavigation span {
  display: inline-flex;
  transform: rotate(180deg);
}
.tl-contact-page-returnNavigation a:hover {
  text-underline-offset: 4px;
  text-decoration: underline;
}
@media (max-width: 600px) {
  .tl-contact-page-container {
    width: calc(100% - 40px);
  }
  .tl-contact-page-breadcrumb {
    padding-top: 14px;
    font-size: 11px;
  }
  .tl-contact-page-heading {
    padding: 26px 0 24px;
  }
  .tl-contact-page-heading h1 {
    font-size: 28px;
  }
  .tl-contact-page-heading p {
    font-size: 14px;
  }
  .tl-contact-page-returnNavigation {
    padding-block: 22px 32px;
  }
}
.tl-e-page-page {
  --e-muted: #587383;
  --e-line: #dfe9ee;
  --e-pale: #f1f7fa;
}
.tl-e-page-page a:focus-visible,
.tl-e-page-page button:focus-visible {
  outline-color: #366889;
}
.tl-e-page-mobileBreak {
  display: none;
}
.tl-e-page-container {
  width: min(1140px, 100% - 80px);
  margin-inline: auto;
}
.tl-e-page-page main h2 {
  letter-spacing: 0.04em;
  font-size: clamp(28px, 2.7vw, 38px);
  font-weight: 700;
  line-height: 1.75;
}
.tl-e-page-eyebrow {
  color: #628597;
  letter-spacing: 0.17em;
  margin-bottom: 16px;
  font-size: 11px;
  font-weight: 600;
}
.tl-e-page-about {
  background: var(--e-pale);
  border-radius: 56px 56px 0 0;
  padding: 88px 0 72px;
}
.tl-e-page-aboutIntro {
  grid-template-columns: 0.9fr 1.1fr;
  align-items: start;
  gap: 80px;
  display: grid;
}
.tl-e-page-aboutCopy {
  color: var(--e-muted);
  padding-top: 9px;
  font-size: 16px;
  line-height: 2.1;
}
.tl-e-page-aboutCopy p + p {
  margin-top: 16px;
}
.tl-e-page-roles {
  border-top: 1px solid #d8e5ed;
  grid-template-columns: repeat(3, 1fr);
  margin: 40px 0 0;
  padding: 28px 0 0;
  list-style: none;
  display: grid;
}
.tl-e-page-roles li {
  border-left: 1px solid #d8e5ed;
  padding-inline: 28px;
}
.tl-e-page-roles li:first-child {
  border: 0;
  padding-left: 0;
}
.tl-e-page-roles li:last-child {
  padding-right: 0;
}
.tl-e-page-roles span {
  color: #628597;
  letter-spacing: 0.14em;
  font-size: 10px;
}
.tl-e-page-roleLabel {
  align-items: center;
  gap: 13px;
  display: flex;
}
.tl-e-page-roleIcon {
  color: #6b8da1;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
}
.tl-e-page-roles h3 {
  letter-spacing: 0.035em;
  margin: 14px 0 8px;
  font-size: 20px;
  font-weight: 600;
}
.tl-e-page-roles p {
  color: var(--e-muted);
  font-size: 14px;
  line-height: 1.9;
}
.tl-e-page-roleNote {
  color: #647d8b;
  margin-top: 26px;
  font-size: 12px;
}
.tl-e-page-services {
  padding: 86px 0 40px;
}
.tl-e-page-servicesHeading {
  text-align: center;
}
.tl-e-page-servicesHeading > p:last-child {
  color: var(--e-muted);
  margin-top: 16px;
  font-size: 15px;
}
.tl-e-page-serviceIndex {
  grid-template-columns: repeat(3, 1fr);
  gap: 10px 16px;
  max-width: 850px;
  margin: 32px auto 18px;
  display: grid;
}
.tl-e-page-serviceIndex a {
  border: 1px solid var(--e-line);
  border-radius: 99px;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 20px;
  font-size: 13px;
  font-weight: 600;
  transition:
    background 0.2s,
    border-color 0.2s;
  display: flex;
}
.tl-e-page-serviceIndex a:hover {
  background: var(--e-pale);
  border-color: #9ab9cc;
}
.tl-e-page-indexLabel {
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: inline-flex;
}
.tl-e-page-indexLabel > span {
  white-space: nowrap;
}
.tl-e-page-indexIcon {
  color: #6b8da1;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
}
.tl-e-page-indexArrow {
  color: #7495a9;
}
.tl-e-page-artwork {
  aspect-ratio: 4/3;
  background: #fff;
  border-radius: 28px;
  width: 100%;
  overflow: hidden;
}
.tl-e-page-artwork img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}
.tl-e-page-serviceLabel {
  color: #4e7b94;
  align-items: center;
  gap: 13px;
  margin-bottom: 15px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
}
.tl-e-page-serviceLabel > span {
  letter-spacing: 0.05em;
  color: #6f91a5;
  border-right: 1px solid #cfdee7;
  padding-right: 13px;
  font-size: 11px;
  font-weight: 500;
}
.tl-e-page-sectionIcon {
  color: #6b8da1;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}
.tl-e-page-serviceHeading h3,
.tl-e-page-tradeHeading h3 {
  letter-spacing: 0.035em;
  font-size: clamp(27px, 2.6vw, 34px);
  font-weight: 600;
  line-height: 1.7;
}
.tl-e-page-serviceHeading h4 {
  letter-spacing: 0.015em;
  margin: 0;
  font-size: 23px;
  font-weight: 600;
  line-height: 1.65;
}
.tl-e-page-intro {
  color: var(--e-muted);
  white-space: pre-line;
  margin-top: 20px;
  font-size: 15px;
  line-height: 2;
}
.tl-e-page-bodyCopy {
  color: var(--e-muted);
  margin-top: 14px;
  font-size: 15px;
  line-height: 2;
}
.tl-e-page-details {
  margin: 22px 0 0;
  padding: 0;
}
.tl-e-page-details > div {
  border-top: 1px solid #d6e4eb;
  padding-block: 17px;
}
.tl-e-page-details dt {
  color: #35596e;
  font-size: 16px;
  font-weight: 600;
}
.tl-e-page-details dd {
  color: var(--e-muted);
  white-space: pre-line;
  margin: 8px 0 0;
  font-size: 14px;
  line-height: 1.95;
}
.tl-e-page-opening {
  grid-template-columns: 0.9fr 1.1fr;
  align-items: center;
  gap: 64px;
  padding: 66px 0;
  display: grid;
}
.tl-e-page-openingCopy h3 {
  font-size: clamp(30px, 2.7vw, 37px);
  line-height: 1.65;
}
.tl-e-page-openingCopy .tl-e-page-intro {
  margin-top: 20px;
}
.tl-e-page-openingFlow {
  background: #f2f7fa;
  border-radius: 24px;
  min-width: 0;
  padding: 30px 28px 20px;
}
.tl-e-page-openingFlow ol {
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}
.tl-e-page-openingFlow li {
  text-align: center;
  position: relative;
}
.tl-e-page-openingFlow li + li:before {
  content: "→";
  color: #8faebe;
  width: 22px;
  font-size: 23px;
  font-weight: 400;
  position: absolute;
  top: 25px;
  left: -27px;
}
.tl-e-page-flowIcon {
  color: #5c8198;
  background: #fff;
  border-radius: 22px;
  place-items: center;
  width: 84px;
  height: 84px;
  margin-inline: auto;
  display: grid;
}
.tl-e-page-flowIcon svg {
  stroke-width: 1.25px;
  width: 42px;
  height: 42px;
}
.tl-e-page-openingFlow h4 {
  color: #35596e;
  margin: 16px 0 5px;
  font-size: 19px;
  font-weight: 600;
  line-height: 1.6;
}
.tl-e-page-openingFlow li p {
  color: var(--e-muted);
  font-size: 12px;
  line-height: 1.8;
}
.tl-e-page-flowNote {
  color: #627e8f;
  text-align: center;
  border-top: 1px solid #dbe7ed;
  margin-top: 22px;
  padding-top: 15px;
  font-size: 12px;
  line-height: 1.8;
}
.tl-e-page-construction {
  border-top: 1px solid var(--e-line);
  padding-top: 54px;
}
.tl-e-page-constructionStage {
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 64px;
  display: grid;
}
.tl-e-page-constructionStage .tl-e-page-intro {
  margin: 0;
}
.tl-e-page-constructionPanel {
  background: #f5f8fa;
  border-radius: 24px;
  margin-top: 30px;
  overflow: hidden;
}
.tl-e-page-constructionTypes {
  grid-template-columns: repeat(3, 1fr);
  margin: 0;
  padding: 28px 24px 25px;
  list-style: none;
  display: grid;
}
.tl-e-page-constructionTypes li {
  text-align: center;
  border-left: 1px solid #dbe6ed;
  min-width: 0;
  padding-inline: 20px;
}
.tl-e-page-constructionTypes li:first-child {
  border-left: 0;
}
.tl-e-page-serviceVisual {
  width: 148px;
  height: auto;
  margin: 0 auto 13px;
}
.tl-e-page-constructionTypes h4 {
  color: #35596e;
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.7;
}
.tl-e-page-constructionTypes p {
  color: var(--e-muted);
  margin-top: 5px;
  font-size: 13px;
  line-height: 1.8;
}
.tl-e-page-constructionNote {
  color: #527389;
  background: #edf3f7;
  border-top: 1px solid #dbe6ed;
  justify-content: center;
  align-items: center;
  gap: 11px;
  padding: 14px 24px;
  font-size: 12px;
  line-height: 1.9;
  display: flex;
}
.tl-e-page-constructionNote svg {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
}
.tl-e-page-constructionNote span {
  text-wrap: pretty;
}
.tl-e-page-measurementInline {
  border-block: 1px solid var(--e-line);
  grid-template-columns: 280px 1fr;
  align-items: center;
  gap: 40px;
  margin-top: 32px;
  padding-block: 28px;
  display: grid;
}
.tl-e-page-measurementInline h3 {
  font-size: 23px;
}
.tl-e-page-measurementInline .tl-e-page-serviceLabel {
  letter-spacing: 0.08em;
  margin-bottom: 8px;
  font-size: 10px;
}
.tl-e-page-measurementCopy .tl-e-page-bodyCopy {
  margin: 0;
  font-size: 14px;
}
.tl-e-page-measurementCopy .tl-e-page-textLink {
  margin-top: 10px;
}
.tl-e-page-closing {
  background: #f2f7f9;
  border-radius: 30px;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  margin-top: 72px;
  padding: 46px;
  display: grid;
}
.tl-e-page-closingIntro .tl-e-page-intro {
  font-size: 14px;
}
.tl-e-page-closingIntro .tl-e-page-intro br {
  display: none;
}
.tl-e-page-closingBody {
  padding-top: 2px;
}
.tl-e-page-closingMessage {
  letter-spacing: 0.025em;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.8;
}
.tl-e-page-trade {
  padding: 86px 0;
}
.tl-e-page-tradeHeading > p:last-child {
  color: var(--e-muted);
  margin-top: 15px;
  font-size: 15px;
}
.tl-e-page-tradeGrid {
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  margin-top: 30px;
  display: grid;
}
.tl-e-page-tradeCard {
  border: 1px solid var(--e-line);
  border-radius: 26px;
  flex-direction: column;
  min-width: 0;
  padding: 30px;
  display: flex;
}
.tl-e-page-tradeCard .tl-e-page-serviceLabel {
  letter-spacing: 0.1em;
  font-size: 10px;
}
.tl-e-page-tradeCard .tl-e-page-artwork {
  border-radius: 18px;
  width: min(100%, 280px);
  margin: 12px auto 22px;
}
.tl-e-page-tradeCard .tl-e-page-bodyCopy {
  margin-top: 0;
  font-size: 14px;
}
.tl-e-page-tradeCard .tl-e-page-tags {
  margin-top: 18px;
}
.tl-e-page-tradeCard .tl-e-page-textLink {
  align-self: flex-start;
  margin-top: auto;
  padding-top: 26px;
}
.tl-e-page-equipmentDetails {
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin: 0;
  display: grid;
}
.tl-e-page-equipmentDetails dt {
  font-size: 14px;
}
.tl-e-page-equipmentDetails dd {
  font-size: 13px;
}
.tl-e-page-general {
  background: #f3f8f8;
  border-top: 1px solid #ccdee5;
  border-bottom: 1px solid #ccdee5;
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 64px;
  margin-bottom: 40px;
  padding: 44px;
  display: grid;
}
.tl-e-page-generalCopy .tl-e-page-intro,
.tl-e-page-generalCopy .tl-e-page-bodyCopy {
  font-size: 14px;
}
.tl-e-page-generalCopy .tl-e-page-intro {
  margin-top: 0;
}
.tl-e-page-general .tl-e-page-tags span {
  background: #fff;
}
.tl-e-page-textLink {
  border-bottom: 1px solid #aec6d4;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  margin-top: 20px;
  padding-block: 11px;
  font-size: 13px;
  font-weight: 600;
  display: inline-flex;
}
.tl-e-page-textLink:hover {
  color: #4f88aa;
}
.tl-e-page-textLink svg {
  flex-shrink: 0;
}
.tl-e-page-tags {
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 24px;
  display: flex;
}
.tl-e-page-tags span {
  background: var(--e-pale);
  color: #5b7b8e;
  border-radius: 99px;
  padding: 5px 13px;
  font-size: 12px;
}
.tl-e-page-contact {
  text-align: center;
  background: linear-gradient(115deg, #eef7f7, #eff5fa);
  border-radius: 56px 56px 0 0;
  padding: 76px 0 82px;
}
.tl-e-page-contact h2 {
  font-size: clamp(27px, 2.7vw, 36px);
}
.tl-e-page-contact h2 + p {
  color: var(--e-muted);
  margin-top: 18px;
  font-size: 15px;
  line-height: 2;
}
.tl-e-page-contactButton {
  color: #fff;
  background: #366889;
  border-radius: 99px;
  justify-content: space-between;
  align-items: center;
  gap: 56px;
  min-width: 290px;
  margin-top: 30px;
  padding: 18px 28px;
  font-size: 15px;
  font-weight: 600;
  transition: background 0.2s;
  display: inline-flex;
}
.tl-e-page-contactButton:hover {
  background: #244557;
}
.tl-e-page-contactLabel {
  align-items: center;
  gap: 11px;
  display: inline-flex;
}
.tl-e-page-contactIcon {
  flex-shrink: 0;
  width: 19px;
  height: 19px;
}
.tl-e-page-backTop {
  justify-content: flex-end;
  padding-top: 28px;
  display: flex;
}
.tl-e-page-backTop a {
  color: #628597;
  align-items: center;
  gap: 12px;
  font-size: 11px;
  display: inline-flex;
}
.tl-e-page-backTop span {
  border: 1px solid var(--e-line);
  border-radius: 50%;
  place-items: center;
  width: 32px;
  height: 32px;
  display: grid;
}
.tl-e-page-page footer {
  background: #fff;
}
@media (max-width: 1000px) {
  .tl-e-page-container {
    width: calc(100% - 56px);
  }
  .tl-e-page-aboutIntro {
    gap: 40px;
  }
  .tl-e-page-roles li {
    padding-inline: 20px;
  }
  .tl-e-page-roles h3 {
    font-size: 18px;
  }
  .tl-e-page-opening {
    gap: 36px;
  }
  .tl-e-page-openingCopy h3 {
    font-size: 31px;
  }
  .tl-e-page-openingFlow {
    padding-inline: 20px;
  }
  .tl-e-page-openingFlow ol {
    gap: 24px;
  }
  .tl-e-page-openingFlow li + li:before {
    left: -23px;
  }
  .tl-e-page-constructionStage {
    gap: 36px;
  }
  .tl-e-page-constructionTypes,
  .tl-e-page-constructionTypes li {
    padding-inline: 12px;
  }
  .tl-e-page-constructionTypes h4 {
    font-size: 17px;
  }
  .tl-e-page-closing {
    gap: 32px;
    padding: 36px 28px;
  }
  .tl-e-page-tradeCard {
    padding: 24px;
  }
  .tl-e-page-tradeGrid {
    gap: 24px;
  }
  .tl-e-page-tradeCard .tl-e-page-serviceHeading h4 {
    font-size: 21px;
  }
  .tl-e-page-equipmentDetails {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .tl-e-page-general {
    gap: 28px;
    padding: 30px;
  }
}
@media (max-width: 760px) {
  .tl-e-page-container {
    width: calc(100% - 44px);
  }
  .tl-e-page-page main h2 {
    font-size: 27px;
    line-height: 1.75;
  }
  .tl-e-page-eyebrow {
    margin-bottom: 12px;
    font-size: 10px;
  }
  .tl-e-page-about {
    border-radius: 30px 30px 0 0;
    padding: 52px 0 44px;
  }
  .tl-e-page-aboutIntro {
    grid-template-columns: 1fr;
    gap: 21px;
  }
  .tl-e-page-aboutCopy {
    padding: 0;
    font-size: 14px;
    line-height: 2;
  }
  .tl-e-page-desktopBreak {
    display: none;
  }
  .tl-e-page-mobileBreak {
    display: initial;
  }
  .tl-e-page-roles {
    grid-template-columns: 1fr;
    margin-top: 28px;
    padding: 0;
  }
  .tl-e-page-roles li,
  .tl-e-page-roles li:first-child,
  .tl-e-page-roles li:last-child {
    border: 0;
    border-bottom: 1px solid #d8e5ed;
    padding: 20px 0;
  }
  .tl-e-page-roleIcon {
    width: 28px;
    height: 28px;
  }
  .tl-e-page-roles h3 {
    margin: 10px 0 5px;
    font-size: 19px;
  }
  .tl-e-page-roles p {
    font-size: 13px;
  }
  .tl-e-page-roles p br {
    display: none;
  }
  .tl-e-page-roleNote {
    margin-top: 20px;
    font-size: 11px;
  }
  .tl-e-page-services {
    padding: 54px 0 20px;
  }
  .tl-e-page-servicesHeading {
    text-align: left;
  }
  .tl-e-page-servicesHeading > p:last-child {
    margin-top: 15px;
    font-size: 14px;
  }
  .tl-e-page-serviceIndex {
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    margin: 25px 0 16px;
  }
  .tl-e-page-serviceIndex a {
    gap: 6px;
    padding: 10px 12px;
    font-size: 11px;
  }
  .tl-e-page-indexLabel {
    gap: 6px;
  }
  .tl-e-page-indexIcon {
    width: 16px;
    height: 16px;
  }
  .tl-e-page-artwork {
    border-radius: 22px;
    max-width: 520px;
    margin-inline: auto;
  }
  .tl-e-page-serviceLabel {
    gap: 10px;
    margin-bottom: 12px;
    font-size: 12px;
  }
  .tl-e-page-serviceLabel > span {
    padding-right: 10px;
  }
  .tl-e-page-sectionIcon {
    width: 21px;
    height: 21px;
  }
  .tl-e-page-serviceHeading h3,
  .tl-e-page-tradeHeading h3 {
    letter-spacing: 0.015em;
    font-size: 25px;
    line-height: 1.7;
  }
  .tl-e-page-intro,
  .tl-e-page-bodyCopy {
    font-size: 14px;
    line-height: 2;
  }
  .tl-e-page-intro {
    margin-top: 16px;
  }
  .tl-e-page-details {
    margin-top: 18px;
  }
  .tl-e-page-details dt {
    font-size: 15px;
  }
  .tl-e-page-details dd {
    font-size: 13px;
  }
  .tl-e-page-opening {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 34px 0 42px;
  }
  .tl-e-page-openingCopy h3 {
    font-size: 30px;
  }
  .tl-e-page-openingCopy .tl-e-page-intro {
    margin-top: 18px;
  }
  .tl-e-page-openingFlow {
    border-radius: 20px;
    padding: 24px 18px 18px;
  }
  .tl-e-page-openingFlow ol {
    gap: 26px;
  }
  .tl-e-page-openingFlow h4 {
    margin-top: 12px;
    font-size: 17px;
  }
  .tl-e-page-openingFlow li p {
    font-size: 11px;
  }
  .tl-e-page-flowIcon {
    border-radius: 18px;
    width: 70px;
    height: 70px;
  }
  .tl-e-page-flowIcon svg {
    width: 36px;
    height: 36px;
  }
  .tl-e-page-openingFlow li + li:before {
    top: 18px;
  }
  .tl-e-page-flowNote {
    text-align: left;
    margin-top: 18px;
    padding-top: 14px;
    font-size: 11px;
  }
  .tl-e-page-construction {
    padding-top: 42px;
  }
  .tl-e-page-constructionStage {
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
    display: flex;
  }
  .tl-e-page-constructionStage .tl-e-page-intro br {
    display: none;
  }
  .tl-e-page-constructionPanel {
    border-radius: 20px;
    margin-top: 23px;
  }
  .tl-e-page-constructionTypes {
    grid-template-columns: 1fr;
    padding: 4px 20px;
  }
  .tl-e-page-constructionTypes li {
    text-align: left;
    border-top: 1px solid #dbe6ed;
    border-left: 0;
    grid-template-columns: 84px minmax(0, 1fr);
    align-items: center;
    gap: 15px;
    padding: 20px 0;
    display: grid;
  }
  .tl-e-page-constructionTypes li:first-child {
    border-top: 0;
  }
  .tl-e-page-serviceVisual {
    width: 84px;
    margin: 0;
  }
  .tl-e-page-constructionTypes h4 {
    font-size: 16px;
  }
  .tl-e-page-constructionTypes p {
    margin-top: 4px;
    font-size: 12px;
  }
  .tl-e-page-constructionNote {
    align-items: flex-start;
    gap: 9px;
    padding: 14px 20px;
    font-size: 11px;
  }
  .tl-e-page-constructionNote svg {
    margin-top: 2px;
  }
  .tl-e-page-measurementInline {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-top: 18px;
    padding-block: 24px;
  }
  .tl-e-page-measurementInline .tl-e-page-serviceLabel {
    letter-spacing: 0.04em;
    font-size: 9px;
  }
  .tl-e-page-measurementInline h3 {
    font-size: 21px;
  }
  .tl-e-page-measurementCopy .tl-e-page-bodyCopy {
    font-size: 13px;
  }
  .tl-e-page-closing {
    border-radius: 24px;
    grid-template-columns: 1fr;
    gap: 26px;
    margin-top: 44px;
    padding: 30px 24px 18px;
  }
  .tl-e-page-closingIntro .tl-e-page-intro {
    font-size: 13px;
  }
  .tl-e-page-closingMessage {
    font-size: 18px;
  }
  .tl-e-page-trade {
    padding: 52px 0;
  }
  .tl-e-page-tradeHeading > p:last-child {
    font-size: 14px;
  }
  .tl-e-page-tradeGrid {
    grid-template-columns: 1fr;
    gap: 22px;
    margin-top: 25px;
  }
  .tl-e-page-tradeCard {
    border-radius: 22px;
    padding: 24px 20px;
  }
  .tl-e-page-tradeCard .tl-e-page-artwork {
    width: min(100%, 240px);
    margin-block: 12px 18px;
  }
  .tl-e-page-tradeCard .tl-e-page-serviceHeading h4 {
    font-size: 20px;
  }
  .tl-e-page-tradeCard .tl-e-page-bodyCopy {
    font-size: 13px;
  }
  .tl-e-page-tradeCard .tl-e-page-equipmentDetails {
    margin-top: 0;
  }
  .tl-e-page-tradeCard .tl-e-page-textLink {
    padding-top: 20px;
  }
  .tl-e-page-general {
    grid-template-columns: 1fr;
    gap: 22px;
    margin-bottom: 24px;
    padding: 28px 22px;
  }
  .tl-e-page-generalCopy .tl-e-page-intro,
  .tl-e-page-generalCopy .tl-e-page-bodyCopy {
    font-size: 13px;
  }
  .tl-e-page-textLink {
    gap: 15px;
    font-size: 12px;
  }
  .tl-e-page-tags {
    gap: 6px;
    margin-top: 20px;
  }
  .tl-e-page-tags span {
    padding: 5px 11px;
    font-size: 11px;
  }
  .tl-e-page-contact {
    border-radius: 30px 30px 0 0;
    padding: 52px 0 58px;
  }
  .tl-e-page-contact h2 {
    font-size: 25px;
  }
  .tl-e-page-contact h2 + p {
    font-size: 13px;
  }
  .tl-e-page-contactButton {
    width: min(100%, 290px);
    min-width: 0;
    margin-top: 25px;
    padding-block: 17px;
    font-size: 14px;
  }
  .tl-e-page-backTop {
    padding-top: 23px;
  }
}
@media (max-width: 370px) {
  .tl-e-page-serviceIndex {
    grid-template-columns: 1fr;
  }
  .tl-e-page-serviceIndex a {
    padding-inline: 16px;
  }
  .tl-e-page-serviceHeading h3,
  .tl-e-page-tradeHeading h3 {
    font-size: 23px;
  }
  .tl-e-page-openingCopy h3 {
    font-size: 28px;
  }
  .tl-e-page-measurementInline h3 {
    font-size: 19px;
  }
  .tl-e-page-tradeCard .tl-e-page-serviceHeading h4 {
    font-size: 18px;
  }
}
