/* KSN Construction Consultants — generated from tokens.json */
:root, [data-theme="light"] {
  --dark-teal: #003e52;
  --white: #ffffff;
  --orange: #e35205;
  --grey-blue: #ccd6e7;
  --silver-grey: #cecfd4;
  --energy-teal: #008793;
  --energy-spark: #2ed5b2;
  --slate: #4a4f59;
  --purple: #4c2770;
  --green: #005740;
  --deep-blue: #0f3a5d;
  --silver-grey-tint: #f3f3f4;
  --ink: var(--dark-teal);
  --heading: var(--orange);
  --surface: var(--white);
  --surface-muted: var(--silver-grey);
  --surface-reversed: var(--dark-teal);
  --rule: var(--orange);
  --rule-neutral: var(--silver-grey);
  --shadow: 1px 1px 3px #00000023;
}
:root {
  --page-margin: 53px;
  --space-2: 8px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --container: 1280px;
  --sharp: 1px;
  --font-sans: "Instrument Sans", system-ui, sans-serif;
  --text-display: 400 58.67px/0.9 var(--font-sans);
  --text-title: 400 48px/1.05 var(--font-sans);
  --text-subtitle: 400 32px/1.1 var(--font-sans);
  --text-heading: 600 24px/1.15 var(--font-sans);
  --text-lead: 600 18.67px/1.2 var(--font-sans);
  --text-body: 400 18.67px/1.3 var(--font-sans);
  --text-body-small: 400 15.33px/1.3 var(--font-sans);
  --text-footer: 400 11.33px/1.2 var(--font-sans);
  --text-web-display: 400 60px/1.25 var(--font-sans);
  --text-web-title: 400 36px/1.375 var(--font-sans);
  --text-web-heading: 600 18px/1.5556 var(--font-sans);
  --text-web-body-large: 400 18px/1.5556 var(--font-sans);
  --text-web-body: 400 16px/1.625 var(--font-sans);
  --text-web-small: 400 14px/1.4286 var(--font-sans);
}
.display {
  font-family: var(--font-sans);
  font-size: 58.67px;
  line-height: 0.9;
  font-weight: 400;
  letter-spacing: 0;
}
.title {
  font-family: var(--font-sans);
  font-size: 48px;
  line-height: 1.05;
  font-weight: 400;
  letter-spacing: 0;
}
.subtitle {
  font-family: var(--font-sans);
  font-size: 32px;
  line-height: 1.1;
  font-weight: 400;
  letter-spacing: 0;
}
.heading {
  font-family: var(--font-sans);
  font-size: 24px;
  line-height: 1.15;
  font-weight: 600;
  letter-spacing: 0;
}
.lead {
  font-family: var(--font-sans);
  font-size: 18.67px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: 0;
}
.body {
  font-family: var(--font-sans);
  font-size: 18.67px;
  line-height: 1.3;
  font-weight: 400;
  letter-spacing: 0;
}
.body-small {
  font-family: var(--font-sans);
  font-size: 15.33px;
  line-height: 1.3;
  font-weight: 400;
  letter-spacing: 0;
}
.footer {
  font-family: var(--font-sans);
  font-size: 11.33px;
  line-height: 1.2;
  font-weight: 400;
  letter-spacing: 0;
}
.web-display {
  font-family: var(--font-sans);
  font-size: 60px;
  line-height: 1.25;
  font-weight: 400;
  letter-spacing: 0;
}
.web-title {
  font-family: var(--font-sans);
  font-size: 36px;
  line-height: 1.375;
  font-weight: 400;
  letter-spacing: 0;
}
.web-heading {
  font-family: var(--font-sans);
  font-size: 18px;
  line-height: 1.5556;
  font-weight: 600;
  letter-spacing: 0;
}
.web-body-large {
  font-family: var(--font-sans);
  font-size: 18px;
  line-height: 1.5556;
  font-weight: 400;
  letter-spacing: 0;
}
.web-body {
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: 1.625;
  font-weight: 400;
  letter-spacing: 0;
}
.web-small {
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.4286;
  font-weight: 400;
  letter-spacing: 0;
}
@font-face {
  font-family: "Instrument Sans";
  src: url("../fonts/instrument-sans-600.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Instrument Sans";
  src: url("../fonts/instrument-sans-400.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
