@import "https://use.typekit.net/fgr3mgp.css";
@import "https://use.typekit.net/tyj0gxm.css";
@import "https://use.typekit.net/jcm3jdf.css";
@import "https://use.typekit.net/vyz7xic.css";
@import "https://use.typekit.net/piq5ctv.css";

html {
  -webkit-text-size-adjust: 100%;
  line-height: 1;
}

body {
  margin: 0;
  padding: 0;
}

html {
  scrollbar-width: thin;
}

html::-webkit-scrollbar {
  display: display-outside;
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  border: 0;
  border-top: 1px solid #ccc;
  height: 1px;
  margin: 1em 0;
  padding: 0;
  display: block;
  overflow: visible;
}

audio, canvas, iframe, img, svg, video {
  vertical-align: middle;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

pre {
  font-family: monospace;
  font-size: 1em;
}

a {
  background-color: #0000;
  text-decoration: none;
}

abbr[title] {
  text-decoration: underline;
  border-bottom: none;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp {
  font-family: monospace;
  font-size: inherit;
}

sub, sup {
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

img {
  border-style: none;
}

button, input, optgroup, select, textarea {
  font-family: inherit;
  font-size: inherit;
  margin: 0;
  line-height: 1.15;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted buttontext;
}

fieldset {
  padding: .35em .75em .625em;
}

legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: inherit;
  white-space: normal;
  max-width: 100%;
  padding: 0;
  display: table;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type="checkbox"], [type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

.visually-hidden {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.visually-hidden.focusable:active, .visually-hidden.focusable:focus {
  clip: auto;
  height: auto;
  white-space: inherit;
  width: auto;
  margin: 0;
  position: static;
  overflow: visible;
}

:root {
  --min-bp: 30rem;
  --max-bp: 90.5rem;
  --scaling: 5vw;
  --center-container-wide: 98rem;
  --center-container: 85.5rem;
  --min-size-small: 2.25rem;
  --min-size-large: 5rem;
  --max-size-small: 5rem;
  --max-size-large: 12rem;
  --global-header-size: 52px;
  --global-header-size-fluid: 3.25rem;
  --backdrop-blur-normal: 13px;
  --backdrop-blur-subtle: 6px;
  --site-transition-duration: all .3s ease;
  --transparent-border: 1px solid #ffffff14;
  --transparent-bg: #fff0;
  --transparent-box-shadow: none;
  --semi-opaque-bg-white: #fffc;
  --default-box-shadow: 0px 0px 0px 1px #0000000a, 0px 2px 2px 0px #0000000a;
  --reset-padding: 0px;
  --dark-box-shadow: 0 20px 24px -4px #10182814, 0 0 8px -4px #1018280f;
  --solid-bg-white: #fff;
  --padding-thin-clamp: clamp(.5rem, calc(.5rem + (1.5rem - .5rem) * ((100vw - var(--min-bp)) / (var(--max-bp)  - var(--min-bp)))), 1.5rem);
  --padding-medium-clamp: clamp(1rem, calc(1rem + (2.5rem - 1rem) * ((100vw - var(--min-bp)) / (var(--max-bp)  - var(--min-bp)))), 2.5rem);
  --padding-thick-clamp: clamp(1.5rem, calc(1.5rem + (3.5rem - 1.5rem) * ((100vw - var(--min-bp)) / (var(--max-bp)  - var(--min-bp)))), 3.5rem);
  --margin-thin-clamp: clamp(.5rem, calc(.5rem + (1.5rem - .5rem) * ((100vw - var(--min-bp)) / (var(--max-bp)  - var(--min-bp)))), 1.5rem);
  --margin-medium-clamp: clamp(1rem, calc(1rem + (2.5rem - 1rem) * ((100vw - var(--min-bp)) / (var(--max-bp)  - var(--min-bp)))), 2.5rem);
  --margin-thick-clamp: clamp(1.5rem, calc(1.5rem + (3.5rem - 1.5rem) * ((100vw - var(--min-bp)) / (var(--max-bp)  - var(--min-bp)))), 3.5rem);
  --greyhuewhite-ok: oklch(99% 0 0);
  --greyhuewhite: #fafafa;
  --lightoffwhite: #f9f9f9;
  --offwhite: #f9f6fa;
  --cool-grey: #202324;
  --telemagenta: #d62971;
  --flirt: #8e0b5c;
  --thistle: #dbbfe8;
  --wisteria: #b19ad6;
  --fluorescent-blue: #04f1ed;
  --sky-blue-crayola: #2ed2ef;
  --mint-green: #99ffb8;
  --green-pantone: #0cac3c;
  --indigo-dye: #024c6e;
  --blue-munsell: #028eb1;
  --mostly-black-ok: oklch(0% 0 0 / .902);
  --mostly-black-darker: oklch(0% 0 0 / .949);
  --purple-hue-black-ok: oklch(10% .0168 301.34 / .949);
  --purple-hue-white-ok: oklch(95% .0168 301.34 / .949);
  --lightoffwhite-ok: oklch(98% 0 0);
  --offwhite-ok: oklch(98% .0061 317.75);
  --cool-grey-ok: oklch(20% .0048 219.66);
  --telemagenta-ok: oklch(58% .2096 1.9);
  --flirt-ok: oklch(43% .1723 350.51);
  --thistle-ok: oklch(84% .062 314.8);
  --wisteria-ok: oklch(72% .0903 301.46);
  --fluorescent-blue-ok: oklch(84% .1314 213.21);
  --sky-blue-crayola-ok: oklch(80% .1314 213.21);
  --mint-green-ok: oklch(92% .1366 152.47);
  --green-pantone-ok: oklch(64% .1917 146.37);
  --indigo-dye-ok: oklch(39% .0842 236.25);
  --blue-munsell-ok: oklch(66% .1117 224.33);
  --darkerwisteria: #806f9be6;
  --dark-color: hsla(var(--hue), 100%, 9%);
  --light-color: hsla(var(--hue), 95%, 98%);
  --base: hsla(var(--hue), 95%, 50%);
  --complimentary1: hsla(var(--hue-complimentary1), 95%, 50%);
  --complimentary2: hsla(var(--hue-complimentary2), 95%, 50%);
  --bg-gradient: linear-gradient(to bottom, hsl(var(--hue), 95%, 99%), hsl(var(--hue), 95%, 84%));
  --opaque1: hsla(var(--hue-opaque1), 95%, 50%);
  --opaque2: hsla(var(--hue-opaque2), 95%, 50%);
  --base-hue: 265;
  --base-sat: 40%;
  --semi-transparent: hsla(var(--base-hue), var(--base-sat), 99%, 65%);
  --dotted-gradient-wisteria-hue: 0% 0% / 40px 40px repeat radial-gradient(1px 1px at 85% 22.5%, #48415859 0% 100%, #00f0 100%), 0% 0% / 40px 40px repeat radial-gradient(1px 1px at 35% 75%, #7554ab 0% 100%, #00f0 100%), linear-gradient(to bottom right in oklch shorter hue, #f4e4fb 0%, #f0ebfa 50%, #f9f5ff 100%);
  --dotted-gradient-mint-green: 0% 0% / 40px 40px repeat radial-gradient(1px 1px at 85% 22.5%, #48415859 0% 100%, #00f0 100%), 0% 0% / 40px 40px repeat radial-gradient(1px 1px at 35% 75%, #01618d 0% 100%, #00f0 100%), linear-gradient(to bottom right in oklch shorter hue, #e3fceb 0%, #e3fdfc 50%, #f0fffb 100%);
  --dotted-gradient-bw: 0% 0% / 40px 40px repeat radial-gradient(1px 1px at 85% 22.5%, #48415859 0% 100%, #00f0 100%), 0% 0% / 40px 40px repeat radial-gradient(1px 1px at 35% 75%, #01618d 0% 100%, #00f0 100%), linear-gradient(to bottom right in oklch shorter hue, #fafffb 0%, var(--greyhuewhite-ok) 50%, var(--greyhuewhite-ok) 100%);
  --hexagons: linear-gradient(30deg, transparent 45%, oklch(50% .1 219.66) 45%, oklch(50% .1 219.66) 55%, transparent 55%) 0 0 / 60px 52px, linear-gradient(-30deg, transparent 45%, oklch(50% .1 219.66) 45%, oklch(50% .1 219.66) 55%, transparent 55%) 0 0 / 60px 52px, linear-gradient(90deg, transparent 45%, oklch(50% .1 219.66) 45%, oklch(50% .1 219.66) 55%, transparent 55%) 30px 26px / 60px 52px, linear-gradient(-90deg, transparent 45%, oklch(50% .1 219.66) 45%, oklch(50% .1 219.66) 55%, transparent 55%) 30px 26px / 60px 52px, linear-gradient(to top, oklch(40% .08 240), oklch(60% .12 200)), oklch(20% .0048 219.66);
  --cic-overlay-magenta-tone: radial-gradient(farthest-corner at 73% 17%, #040916 0%, #fff0 50%), radial-gradient(farthest-corner at 18% 78%, #f226bc36 0%, #fff0 50%), radial-gradient(farthest-corner at 100% 100%, #141515 0%, #fff0 50%), radial-gradient(farthest-corner at 66% 52%, #212136 0%, #fff0 50%), radial-gradient(farthest-corner at 27% 26%, #fddef5 0%, #fff0 50%);
  --darkmode-tk-url: "https://use.typekit.net/fgr3mgp.css";
  --cakemono-tk-url: "https://use.typekit.net/piq5ctv.css";
  --loRes-tk-url: "https://use.typekit.net/tyj0gxm.css";
  --articulat-rift-tk-url: "https://use.typekit.net/vyz7xic.css";
  --open-sans-tk-url: "https://use.typekit.net/jcm3jdf.css";
  --ff-loRes-bold-alt-oak: lores-12-bold-alt-oakland, sans-serif;
  --ff-loRes-narrow: lores-12-narrow, sans-serif;
  --ff-lowRes-bold-alt-oak-15: lores-15-bold-alt-oakland, sans-serif;
  --ff-darkmode: "darkmode-on", sans-serif;
  --ff-opensans: open-sans, sans-serif;
  --ff-aktiv-grotesk: aktiv-grotesk, sans-serif;
  --ff-aktiv-grotek-thin: aktiv-grotesk-thin, sans-serif;
  --ff-articulat: articulat-cf, sans-serif;
  --ff-articulat-bold: articulat-heavy-cf, sans-serif;
  --ff-rift: rift, sans-serif;
  --cake-mono: cake-mono, sans-serif;
  --xlight: 100;
  --light: 200;
  --normal: 300;
  --regular: 400;
  --medium: 500;
  --semibold: 600;
  --bold: 700;
  --xbold: 800;
  --heavy: 900;
  --italic: italic;
  --default-style: normal;
  --default-swap: swap;
  --btn-clamp: clamp(1rem, .875rem + .625vw, 1.5rem);
  --paragraph: clamp(1rem, .875rem + .625vw, 1.5rem);
  --small-text-clamp: clamp(.875rem, .75rem + .5vw, 1.25rem);
  --big-header: clamp(4rem, 2.4rem + 5vw, 8rem);
  --xtra-big-header: clamp(6rem, 2.4rem + 5vw, 9rem);
  --page-title: clamp(2.75rem, 1.25rem + 2.2vw, 5.25rem);
  --header: clamp(2rem, 1.25rem + 2.2vw, 4rem);
  --subhead-lg: clamp(1.75rem, 1.375rem + 1.5vw, 3rem);
  --subhead-md: clamp(1.5rem, 1.25rem + 1vw, 2.5rem);
  --subhead-sm: clamp(1.25rem, 1rem + .75vw, 2rem);
}

@font-face {
  font-family: var(--ff-darkmode);
  font-style: var(--default-style);
  font-display: var(--default-swap);
}

@font-face {
  font-family: var(--ff-rift);
  font-style: var(--default-style);
  font-display: var(--default-swap);
}

#loader {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.section-titles {
  font-family: var(--ff-rift);
  font-size: var(--subhead-lg);
  letter-spacing: 2px;
  text-align: center;
  margin: 0 auto;
  padding: 2vh 0;
  font-style: normal;
  font-weight: 600;
}

@media screen and (width <= 30em) {
  .section-titles {
    font-size: var(--subhead-sm);
  }
}

.page-titles {
  font-family: var(--ff-rift);
  font-size: var(--page-title);
  text-align: center;
  margin: 0 auto;
  padding: 2vh 0;
  font-style: normal;
  font-weight: 800;
}

@media screen and (width <= 30em) {
  .page-titles {
    padding: 1vh .5vw;
    font-size: 2rem;
  }
}

.sub-section-titles {
  font-family: var(--ff-rift);
  font-size: var(--subhead-sm);
  text-align: center;
  margin: 0 auto;
  padding: 2vh 0;
  font-style: normal;
  font-weight: 600;
}

@media screen and (width <= 30em) {
  .sub-section-titles {
    max-width: 80%;
    padding: 1vh .5vw;
    font-size: 1rem;
  }
}

.btn-flex_wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: auto;
  padding: 1%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.base-btn {
  font-family: var(--ff-rift);
}

:where(.base-btn, .base-btn-atag) {
  cursor: pointer;
  font-size: var(--btn-clamp);
  letter-spacing: .025em;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
  border: none;
  justify-content: center;
  align-items: center;
  gap: .5em;
  padding: clamp(.6rem, 1vw, .75rem) clamp(1rem, 2vw, 1.5rem);
  font-weight: 500;
  text-decoration: none;
  -webkit-transition: background .3s, color .3s;
  transition: background .3s, color .3s;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.base-btn-atag {
  text-align: center;
  text-decoration: none;
}

.square-btn {
  backdrop-filter: blur(13px);
}

.rounded-btn {
  backdrop-filter: blur(13px);
  border-radius: .55em;
}

.medium-btn-desktop {
  height: 40px;
  margin: 15px auto;
  padding: 0 33px;
  font-size: 20px;
  font-weight: 500;
  line-height: 40px;
}

.large-btn-desktop {
  font-size: var(--btn-clamp);
  height: 3.125rem;
  margin: 1rem auto;
  padding: 0 2.25rem;
  line-height: 3.125rem;
}

@media screen and (width <= 768px) {
  .small-btn-mobile {
    height: 40px;
    padding: 0 27px;
    font-size: 12px;
    line-height: 40px;
  }

  .medium-btn-mobile {
    height: 45px;
    padding: 0 30px;
    font-size: 15px;
    line-height: 45px;
  }
}

.sitewide__banner--one--btn {
  display: inherit;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.sitewide__banner--one--btn:hover {
  opacity: .75;
}

.shrinking__border--button {
  color: var(--fluorescent-blue);
  border: 2px solid var(--fluorescent-blue);
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.shrinking__border--button:after {
  content: "";
  background-color: #0000;
  border: 2px solid #0000;
  width: 100%;
  height: 100%;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  position: absolute;
  inset: 0;
  -webkit-transform: scaleX(1.1)scaleY(1.3);
  transform: scaleX(1.1)scaleY(1.3);
}

.shrinking__border--button:hover:after {
  border: 2px solid #fff;
  -webkit-transform: translate(-2px, -2px);
  transform: translate(-2px, -2px);
}

.shrinking__border--button:hover {
  color: #fff;
}

.glow-on-hover {
  color: #fff;
  cursor: pointer;
  z-index: 5;
  background: #111;
  border: none;
  border-radius: 10px;
  outline: none;
  width: 220px;
  height: 50px;
  position: relative;
}

.glow-on-hover:before {
  content: "";
  z-index: -1;
  filter: blur(5px);
  opacity: 0;
  background: linear-gradient(45deg, red, #ff7300, #fffb00, #48ff00, #00ffd5, #002bff, #7a00ff, #ff00c8, red) 0 0 / 400%;
  border-radius: 10px;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  -webkit-transition: opacity .3s ease-in-out;
  transition: opacity .3s ease-in-out;
  -webkit-animation: 20s linear infinite glowing;
  animation: 20s linear infinite glowing;
  position: absolute;
  top: -2px;
  left: -2px;
}

.glow-on-hover:active {
  color: #000;
}

.glow-on-hover:active:after {
  background: none;
}

.glow-on-hover:hover:before {
  opacity: 1;
}

.glow-on-hover:after {
  z-index: -1;
  content: "";
  background: #111;
  border-radius: 10px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.promo__glass--btn {
  -webkit-backdrop-filter: blur(5px);
  text-transform: uppercase;
  cursor: pointer;
  z-index: 5;
  color: #dbc0e8a2;
  background: #ffffff57;
  border: 1px solid #ffffff6e;
  border-radius: 16px;
  width: 250px;
  height: 50px;
  margin: 0 auto;
  font-family: articulat-cf, sans-serif;
  font-size: 1.5em;
  font-weight: 800;
  display: grid;
  position: relative;
  -webkit-box-shadow: 0 4px 30px #0000001a;
  box-shadow: 0 4px 30px #0000001a;
}

.promo__glass--btn:before {
  content: "";
}

.promo__glass--btn:active:after {
  background: none;
}

.promo__glass--btn:after {
  z-index: -1;
  content: "";
  border-radius: 10px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.about-button-glow-on {
  color: #7a6a95;
  cursor: pointer;
  z-index: 5;
  width: 220px;
  height: 50px;
  font-family: articulat-cf, sans-serif;
  font-style: bold;
  background: #dbc0e8;
  border: none;
  border-radius: 10px;
  outline: none;
  margin: 0 auto;
  padding-top: 8px;
  font-size: 1.5em;
  font-weight: 800;
  display: grid;
  position: absolute;
  top: 39%;
}

.about-button-glow-on:before {
  content: "";
  z-index: -1;
  filter: blur(5px);
  opacity: 0;
  background-size: 400%;
  border-radius: 10px;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  -webkit-transition: opacity .3s ease-in-out;
  transition: opacity .3s ease-in-out;
  -webkit-animation: 2.5s cubic-bezier(.445, .05, .55, .95) infinite alternate both color-change-4x;
  animation: 2.5s cubic-bezier(.445, .05, .55, .95) infinite alternate both color-change-4x;
  position: absolute;
  top: -2px;
  left: -2px;
}

.about-button-glow-on:active {
  color: #dbc0e8;
}

.about-button-glow-on:active:after {
  background: none;
}

.about-button-glow-on:hover:before {
  opacity: 1;
}

.about-button-glow-on:after {
  z-index: -1;
  content: "";
  background: #dbc0e8;
  border-radius: 10px;
  width: 100%;
  height: 100%;
}

.cic--green-text {
  color: var(--mint-green);
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.cic--green-text:hover, .cic--green-text:active, .cic--green-text:visited {
  color: var(--mint-green);
}

.cic--purple-text {
  color: var(--wisteria);
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.cic--purple-text:hover, .cic--purple-text:active, .cic--purple-text:visited {
  color: var(--darkerwisteria);
}

.cic--blue-text {
  color: var(--blue-munsell);
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.cic--blue-text:hover, .cic--blue-text:active, .cic--blue-text:visited {
  color: var(--indigo-dye);
}

.cic--white-text {
  color: #fff;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.cic--pink-text {
  color: var(--telemagenta);
}

.cic--pink-text:hover, .cic--pink-text:active, .cic--pink-text:visited {
  color: var(--flirt);
}

.cic--grey {
  color: var(--cool-grey);
}

.cic--offwhite {
  color: var(--lightoffwhite);
}

.tracking-in-expand-fwd {
  -webkit-animation: 1.4s cubic-bezier(.215, .61, .355, 1) both tracking-in-expand-fwd;
  animation: 1.4s cubic-bezier(.215, .61, .355, 1) both tracking-in-expand-fwd;
}

@-webkit-keyframes tracking-in-expand-fwd {
  0% {
    letter-spacing: -.5em;
    opacity: 0;
    -webkit-transform: translateZ(-700px);
    transform: translateZ(-700px);
  }

  40% {
    opacity: .6;
  }

  100% {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes tracking-in-expand-fwd {
  0% {
    letter-spacing: -.5em;
    opacity: 0;
    -webkit-transform: translateZ(-700px);
    transform: translateZ(-700px);
  }

  40% {
    opacity: .6;
  }

  100% {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@-webkit-keyframes text-animation {
  0% {
    -webkit-transform-origin: 1% 1%;
    transform-origin: 1% 1%;
    text-shadow: none;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    -webkit-transform-origin: 1% 1%;
    transform-origin: 1% 1%;
    text-shadow: 0 1px #000, 0 2px #000, 0 3px #000, 0 4px #000, 0 5px #000, 0 0 #000;
    -webkit-transform: translateY(-.1px);
    transform: translateY(-.1px);
  }
}

@keyframes text-animation {
  0% {
    -webkit-transform-origin: 1% 1%;
    transform-origin: 1% 1%;
    text-shadow: none;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    -webkit-transform-origin: 1% 1%;
    transform-origin: 1% 1%;
    text-shadow: 0 1px #000, 0 2px #000, 0 3px #000, 0 4px #000, 0 5px #000, 0 0 #000;
    -webkit-transform: translateY(-.1px);
    transform: translateY(-.1px);
  }
}

@-webkit-keyframes social-pop {
  0% {
    -webkit-transform-origin: 1% 1%;
    transform-origin: 1% 1%;
    text-shadow: none;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    -webkit-transform-origin: 1% 1%;
    transform-origin: 1% 1%;
    text-shadow: 0 1px #028cb0, 0 2px #028cb0, 0 3px #028cb0, 0 4px #028cb0, 0 5px #028cb0, 0 0 #028cb0;
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

@keyframes social-pop {
  0% {
    -webkit-transform-origin: 30% 30%;
    transform-origin: 30% 30%;
    text-shadow: none;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    -webkit-transform-origin: 1% 1%;
    transform-origin: 1% 1%;
    text-shadow: 0 1px #028cb0, 0 2px #028cb0, 0 3px #028cb0, 0 4px #028cb0, 0 5px #028cb0, 0 0 #028cb0;
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

@-webkit-keyframes text-focus-in {
  0% {
    filter: blur(12px);
    opacity: 0;
  }

  100% {
    filter: blur();
    opacity: 1;
  }
}

@keyframes text-focus-in {
  0% {
    filter: blur(12px);
    opacity: 0;
  }

  100% {
    filter: blur();
    opacity: 1;
  }
}

@-webkit-keyframes slide-fwd-center {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }

  100% {
    -webkit-transform: translateZ(160px);
    transform: translateZ(160px);
  }
}

@keyframes slide-fwd-center {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }

  100% {
    -webkit-transform: translateZ(160px);
    transform: translateZ(160px);
  }
}

@-webkit-keyframes servicesButtonBoxShadow {
  0% {
    -webkit-box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--fluorescent-blue), -4px -4px 0 0 #000, -6px -6px 0 0 var(--fluorescent-blue);
    box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--fluorescent-blue), -4px -4px 0 0 #000, -6px -6px 0 0 var(--fluorescent-blue);
  }

  60% {
    -webkit-box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
    box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
  }

  100% {
    color: #fff;
    -webkit-box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
    box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
  }
}

@keyframes servicesButtonBoxShadow {
  0% {
    -webkit-box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--fluorescent-blue), -4px -4px 0 0 #000, -6px -6px 0 0 var(--fluorescent-blue);
    box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--fluorescent-blue), -4px -4px 0 0 #000, -6px -6px 0 0 var(--fluorescent-blue);
  }

  60% {
    -webkit-box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
    box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
  }

  100% {
    color: #fff;
    -webkit-box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
    box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
  }
}

@-webkit-keyframes servicesButtonBoxShadowReverse {
  0% {
    color: #fff;
    -webkit-box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
    box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
  }

  60% {
    -webkit-box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
    box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
  }

  100% {
    -webkit-box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--fluorescent-blue), -4px -4px 0 0 #000, -6px -6px 0 0 var(--fluorescent-blue);
    box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--fluorescent-blue), -4px -4px 0 0 #000, -6px -6px 0 0 var(--fluorescent-blue);
  }
}

@keyframes servicesButtonBoxShadowReverse {
  0% {
    color: #fff;
    -webkit-box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
    box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
  }

  60% {
    -webkit-box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
    box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
  }

  100% {
    -webkit-box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--fluorescent-blue), -4px -4px 0 0 #000, -6px -6px 0 0 var(--fluorescent-blue);
    box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--fluorescent-blue), -4px -4px 0 0 #000, -6px -6px 0 0 var(--fluorescent-blue);
  }
}

@-webkit-keyframes portfolioButtonBoxShadow {
  0% {
    -webkit-box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--mint-green), -4px -4px 0 0 #000, -6px -6px 0 0 var(--mint-green);
    box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--mint-green), -4px -4px 0 0 #000, -6px -6px 0 0 var(--mint-green);
  }

  60% {
    -webkit-box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
    box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
  }

  100% {
    color: #fff;
    -webkit-box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
    box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
  }
}

@keyframes portfolioButtonBoxShadow {
  0% {
    -webkit-box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--mint-green), -4px -4px 0 0 #000, -6px -6px 0 0 var(--mint-green);
    box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--mint-green), -4px -4px 0 0 #000, -6px -6px 0 0 var(--mint-green);
  }

  60% {
    -webkit-box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
    box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
  }

  100% {
    color: #fff;
    -webkit-box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
    box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
  }
}

@-webkit-keyframes portfolioButtonBoxShadowReverse {
  0% {
    color: #fff;
    -webkit-box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
    box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
  }

  60% {
    -webkit-box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
    box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
  }

  100% {
    -webkit-box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--mint-green), -4px -4px 0 0 #000, -6px -6px 0 0 var(--mint-green);
    box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--mint-green), -4px -4px 0 0 #000, -6px -6px 0 0 var(--mint-green);
  }
}

@keyframes portfolioButtonBoxShadowReverse {
  0% {
    color: #fff;
    -webkit-box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
    box-shadow: 0 2px #fff, 2px 0 #fff, 0 -2px #fff, -2px 0 #fff;
  }

  60% {
    -webkit-box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
    box-shadow: 0 0 #000, 2px 2px #fff, 0 0 #000, -2px -2px #fff;
  }

  100% {
    -webkit-box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--mint-green), -4px -4px 0 0 #000, -6px -6px 0 0 var(--mint-green);
    box-shadow: 4px 4px 0 0 #000, 6px 6px 0 0 var(--mint-green), -4px -4px 0 0 #000, -6px -6px 0 0 var(--mint-green);
  }
}

.focus-in-contract-bck {
  -webkit-animation: 1.2s cubic-bezier(.25, .46, .45, .94) both focus-in-contract-bck;
  animation: 1.2s cubic-bezier(.25, .46, .45, .94) both focus-in-contract-bck;
}

.slide-in-top {
  -webkit-animation: .7s cubic-bezier(.455, .03, .515, .955) both slide-in-top;
  animation: .7s cubic-bezier(.455, .03, .515, .955) both slide-in-top;
}

.focus-in-expand {
  -webkit-animation: .8s cubic-bezier(.25, .46, .45, .94) both focus-in-expand;
  animation: .8s cubic-bezier(.25, .46, .45, .94) both focus-in-expand;
}

.focus-in-exit {
  -webkit-animation: .6s cubic-bezier(.25, .46, .45, .94) reverse both focus-in-expand;
  animation: .6s cubic-bezier(.25, .46, .45, .94) reverse both focus-in-expand;
}

@-webkit-keyframes focus-in-contract-bck {
  0% {
    letter-spacing: 1em;
    filter: blur(12px);
    opacity: 0;
    -webkit-transform: translateZ(300px);
    transform: translateZ(300px);
  }

  100% {
    filter: blur();
    opacity: 1;
    -webkit-transform: translateZ(12px);
    transform: translateZ(12px);
  }
}

@keyframes focus-in-contract-bck {
  0% {
    letter-spacing: 1em;
    filter: blur(12px);
    opacity: 0;
    -webkit-transform: translateZ(300px);
    transform: translateZ(300px);
  }

  100% {
    filter: blur();
    opacity: 1;
    -webkit-transform: translateZ(12px);
    transform: translateZ(12px);
  }
}

@-webkit-keyframes slide-in-top {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-1000px);
    transform: translateY(-1000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes slide-in-top {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-1000px);
    transform: translateY(-1000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes focus-in-expand {
  0% {
    letter-spacing: -.5em;
    filter: blur(12px);
    opacity: 0;
    visibility: collapse;
  }

  100% {
    filter: blur();
    opacity: 1;
  }
}

@keyframes focus-in-expand {
  0% {
    letter-spacing: -.5em;
    filter: blur(12px);
    opacity: 0;
    visibility: collapse;
  }

  100% {
    filter: blur();
    opacity: 1;
  }
}

@-webkit-keyframes pageloadBlurAnimation {
  0% {
    backdrop-filter: blur(2px);
  }

  100% {
    backdrop-filter: blur();
  }
}

@keyframes pageloadBlurAnimation {
  0% {
    backdrop-filter: blur(2px);
  }

  100% {
    backdrop-filter: blur();
  }
}

@-webkit-keyframes flip {
  25%, 100% {
    -webkit-transform: rotateX(90deg);
    transform: rotateX(90deg);
  }
}

@keyframes flip {
  25%, 100% {
    -webkit-transform: rotateX(90deg);
    transform: rotateX(90deg);
  }
}

:root {
  --bg-gradient-moz: linear-gradient(to right, #767676 33.5%, silver 33.5%);
}

body {
  -webkit-font-smoothing: antialiased;
  color: var(--dark-color);
  background: #000 fixed;
  margin: 0;
  font-family: articulat-cf, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  display: grid;
}

@media only screen and (width <= 769px) {
  body {
    -webkit-font-smoothing: antialiased;
    color: var(--dark-color);
    background-attachment: fixed;
    font-family: articulat-cf, sans-serif;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    -webkit-transition: all .7s;
    transition: all .7s;
    display: grid;
  }
}

.section--title {
  color: #fff;
  text-align: center;
  margin: 75px 0;
  font-size: 2.5rem;
}

@media only screen and (width <= 769px) {
  .section--title {
    margin: 75px 25px;
    font-size: 2rem;
  }
}

.about__leadwrapper {
  width: 100%;
  height: 35vh;
  position: absolute;
  top: -8px;
  left: -8px;
  overflow: hidden;
}

@media only screen and (width <= 769px) {
  .about__leadwrapper {
    width: 100%;
    height: 35vh;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
  }
}

.polygon-background-overlay {
  opacity: .4;
  z-index: -1;
  mix-blend-mode: hard-light;
  margin: 0;
  padding: 0;
  position: absolute;
  top: -10px;
  left: -10px;
  overflow: hidden;
}

.polygon-background-overlay svg g path[fill]:nth-of-type(3n+1) {
  fill: var(--wisteria);
}

.polygon-background-overlay svg g path[fill]:nth-of-type(3n+2) {
  fill: var(--thistle);
}

.polygon-background-overlay svg g path[fill]:nth-of-type(3n) {
  fill: var(--blue-munsell);
}

.polygon-background-overlay svg g path[stroke] {
  stroke: var(--thistle);
}

.polygon-background-overlay svg g[stroke] {
  stroke: width 5px;
}

.aboutus__leadtext {
  z-index: 9;
  color: #fff;
  text-align: center;
  grid-area: 1 / 1 / 1 / 1;
  align-items: center;
  font-size: 2em;
  display: grid;
  position: relative;
}

@media only screen and (width <= 769px) {
  .aboutus__leadtext {
    z-index: 9;
    color: #fff;
    text-align: center;
    grid-area: 1 / 1 / 1 / 1;
    align-items: center;
    font-size: 2em;
    display: grid;
    position: relative;
  }
}

.aboutcic__leadtext {
  z-index: 9;
  color: #fff;
  text-align: center;
  grid-area: 1 / 3 / 1 / 3;
  align-items: center;
  font-size: 2em;
  display: grid;
  position: relative;
}

@media only screen and (width <= 769px) {
  .aboutcic__leadtext {
    z-index: 9;
    color: #fff;
    text-align: center;
    grid-area: 3 / 1 / 3 / 1;
    align-items: center;
    font-size: 2em;
    display: grid;
    position: relative;
  }
}

.aboutlogo__leadtext {
  z-index: 9;
  color: #fff;
  text-align: center;
  grid-area: 1 / 2 / 1 / 2;
  align-items: center;
  font-size: 6em;
  text-decoration: none;
  display: grid;
  position: relative;
}

@media only screen and (width <= 769px) {
  .aboutlogo__leadtext {
    z-index: 9;
    color: #fff;
    text-align: center;
    grid-area: 2 / 1 / 2 / 1;
    align-items: center;
    font-size: 4em;
    text-decoration: none;
    display: grid;
    position: relative;
  }
}

.about__glass--btn {
  grid-area: 2 / 2 / 2 / 2;
  display: grid;
}

@media only screen and (width <= 769px) {
  .about__glass--btn {
    grid-area: 4 / 1 / 4 / 1;
    display: grid;
  }
}

.main__content--wrapper {
  width: 100%;
  padding: 0;
  display: grid;
}

.about--lead--in {
  -webkit-backdrop-filter: blur(5px);
  background: none;
  grid-template-rows: auto;
  grid-template-columns: auto;
  place-content: center;
  place-self: center;
  display: grid;
  overflow: hidden;
}

.about--lead--image {
  background-image: url("/assets/code-paintsplash-b-and-w.png");
  background-position: center;
  background-image: contain;
  z-index: 0;
  background-size: 100% 100%;
  grid-area: 1 / 1 / 2 / 2;
  place-self: center;
  width: 275px;
  height: 275px;
  display: grid;
}

@media only screen and (width <= 769px) {
  .about--lead--image {
    width: 250px;
    height: 250px;
  }
}

.about--lead--in--text {
  color: #fff;
  text-align: center;
  z-index: 1;
  mix-blend-mode: difference;
  grid-area: 1 / 1 / 2 / 2;
  place-self: center;
  margin: 0;
  padding: 0;
  font-size: 2.2rem;
  font-weight: 600;
}

@media only screen and (width <= 769px) {
  .about--lead--in--text {
    margin: 0 25px;
    font-size: 2rem;
  }
}

.about--cic__wrapper {
  background-color: #fff;
  background: var(--dotted-gradient-bw), url("../../assets/backgrounds/25prod-whitebg-faded.png") center center / cover;
  background-attachment: fixed;
  grid-template-rows: auto auto auto auto;
  grid-template-columns: 1fr;
  width: 100%;
  height: auto;
  margin-top: 52px;
  display: grid;
}

.about--background {
  background-blend-mode: color-dodge;
  background: url("/assets/code-layer-deconstructed.png") 50% 40% no-repeat;
  border-radius: 2px;
  justify-self: center;
  max-width: 1400px;
  margin: 0 52px;
}

.about--title {
  color: #4f337b;
  margin-top: 25px;
  padding: 1vh 0;
  font-family: rift, sans-serif;
  font-size: 2.5rem;
  font-style: normal;
  font-weight: 600;
}

@media screen and (width <= 768px) {
  .about--title {
    font-size: 1.25rem;
  }
}

.about--paragraph {
  text-align: center;
  z-index: 3;
  color: #29262e;
  letter-spacing: 1px;
  backdrop-filter: blur(1px);
  grid-area: 1 / 1 / 2 / 3;
  padding: 2%;
  font-family: articulat-cf;
  font-size: 1.1rem;
  -webkit-transition: all .7s ease-in-out;
  transition: all .7s ease-in-out;
  position: relative;
}

.about--what--offer__wrapper {
  background-color: #0000;
  background-image: radial-gradient(#000000c0 0%, #0000000c 100%), url("/assets/desat-bluehue-film.png");
  background-position: 100% 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  background-origin: padding-box, padding-box;
  background-clip: border-box, border-box;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  align-items: center;
  padding: 75px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

.about--what--offer__inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: var(--center-container-wide);
  margin: 0 auto;
  padding: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (width <= 1058px) {
  .about--what--offer__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.wwo--text-title__wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.what--offer--title {
  color: var(--wisteria);
  text-align: left;
  margin-top: 0;
  margin-bottom: 1rem;
  margin-left: 0;
  font-family: rift, sans-serif;
  font-style: normal;
  font-weight: 600;
}

.section--inner--text--paragraph {
  font-family: var(--ff-articulat);
  font-size: var(--paragraph);
  font-weight: var(--light);
  color: var(--offwhite-ok);
  text-align: left;
  -webkit-transition: all var(--site-transition-duration);
  transition: all var(--site-transition-duration);
  margin: 0 auto;
  line-height: 2;
}

@media screen and (width <= 1058px) {
  .section--inner--text--paragraph {
    margin: 0 auto 0 0;
  }
}

.wwo--acc__wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  align-items: center;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (width <= 800px) {
  .wwo--acc__wrapper {
    margin-top: 50px;
  }
}

.wwo--acc__containers {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  padding: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (width <= 768px) {
  .wwo--acc__containers {
    padding: 5px;
  }
}

.wwo--acc--header {
  all: unset;
  background: #896cb5;
  border-radius: 8px;
  justify-content: space-between;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.wwo--acc--webdev {
  background: var(--mint-green);
}

.wwo--acc--design {
  background: var(--telemagenta);
}

.wwo--acc--planning {
  background: var(--wisteria);
}

.wwo--acc--marketing {
  background: var(--sky-blue-crayola);
}

.wwo--acc--header--opening {
  -webkit-transition: border-bottom-left-radius .2s, border-bottom-right-radius .2s;
  transition: border-bottom-left-radius .2s, border-bottom-right-radius .2s;
}

.wwo--acc--header--closing {
  -webkit-transition: border-bottom-left-radius .7s, border-bottom-right-radius .7s;
  transition: border-bottom-left-radius .7s, border-bottom-right-radius .7s;
}

.wwo--acc--titles__wrapper {
  justify-content: center;
  align-items: center;
  height: 100%;
  margin-left: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.wwo--acc--titles {
  color: #272727;
  text-transform: uppercase;
  margin: 10px 0;
  font-family: rift, sans-serif;
  font-size: clamp(1.25em, 3vw, 2.5em);
  font-style: normal;
  font-weight: 600;
}

.wwo--fa__wrapper {
  justify-content: center;
  align-items: center;
  height: 100%;
  margin-right: 1.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.wwo--fa {
  font-size: 3em;
  -webkit-transition: -webkit-transform .3s, transform .3s;
  transition: -webkit-transform .3s, transform .3s;
}

.wwo--fa.rotated {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.wwo--acc--content {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #4f337b;
  border-bottom-right-radius: 8px;
  border-bottom-left-radius: 8px;
  align-items: center;
  max-height: 0;
  -webkit-transition: max-height .3s;
  transition: max-height .3s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
}

@media only screen and (width <= 769px) {
  .wwo--acc--content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.wwo--acc--content--webdev {
  background: color-mix(in oklab, var(--mint-green) 70%, #fff 30%);
}

.wwo--acc--content--design {
  background: color-mix(in oklab, var(--telemagenta) 70%, #fff 30%);
}

.wwo--acc--content--planning {
  background: color-mix(in oklab, var(--wisteria) 70%, #fff 30%);
}

.wwo--acc--content--marketing {
  background: color-mix(in oklab, var(--sky-blue-crayola) 70%, #fff 30%);
}

.wwo--acc--lists {
  font-smooth: always;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #000;
  text-align: left;
  min-width: fit-content;
  margin: 0 auto;
  padding: 20px;
  font-family: rift, sans-serif;
  font-size: clamp(1em, 2vw, 1.25em);
  font-style: normal;
  font-weight: 600;
  list-style: none;
  position: relative;
}

@media only screen and (width <= 769px) {
  .wwo--acc--lists {
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.wwo--acc--lists > li {
  cursor: pointer;
  text-align: center;
  border-bottom: 1px solid #0000;
  max-width: fit-content;
  -webkit-transition: all .15s ease-in-out;
  transition: all .15s ease-in-out;
}

.wwo--acc--lists > li:hover {
  -webkit-transform: translateX(5px);
  transform: translateX(5px);
}

@media only screen and (width <= 769px) {
  .wwo--acc--lists > li:hover {
    -webkit-transform: none;
    transform: none;
  }
}

.wwo--acc--li--active--webdev {
  color: #569168;
  border-bottom: 1px solid #69af7d !important;
}

.wwo--acc--li--active--design {
  color: #791740;
  border-bottom: 1px solid #921c4d !important;
}

.wwo--acc--li--active--planning {
  color: #645679;
  border-bottom: 1px solid #796992 !important;
}

.wwo--acc--li--active--marketing {
  color: #1a7787;
  border-bottom: 1px solid #2090a3 !important;
}

.divider--el {
  --size: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 0;
  height: calc(100% - var(--size) * 2);
  border: 1px solid #4343434f;
  margin: 20px 0;
  position: relative;
}

@media only screen and (width <= 769px) {
  .divider--el {
    --size: 80px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: calc(100% - var(--size) * 2);
    border: 1px solid #4343434f;
    height: 0;
    margin: 0 20px;
    position: relative;
  }
}

.wwo--acc--paragraph {
  width: 100%;
  font-family: var(--ff-aktiv-grotesk);
  color: #000;
  text-align: center;
  margin: 0 auto;
  padding: 20px;
  font-size: 1.1rem;
  font-style: normal;
  font-weight: 300;
  list-style: none;
  position: relative;
}

@media only screen and (width <= 769px) {
  .wwo--acc--paragraph {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: auto;
    min-height: 150px;
    margin: auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.wwo--inner--section__wrappers {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 500px;
  margin: 20px 0;
}

.wwo--wrapper--titles {
  padding: calc(var(--scaling) / 6) 0;
  font-size: var(--subhead-sm);
  text-align: center;
  font-family: var(--ff-rift);
  font-weight: var(--semibold);
  margin: 0 auto;
}

@media screen and (width <= 768px) {
  .wwo--wrapper--titles {
    font-size: var(--subhead-sm);
    padding: calc(var(--scaling) / 3) 0;
  }
}

.container--inner--text {
  font-family: var(--ff-aktiv-grotesk);
  font-weight: var(--normal);
  color: var(--offwhite-ok);
  margin: 0 auto;
  padding: 1.25vw 1vw;
  line-height: 2;
  list-style: none;
}

.wwo--webdev__wrapper {
  border: 2px solid var(--mint-green);
}

.wwo--webdev__wrapper > h4 {
  color: var(--mint-green);
}

.wwo--design__wrapper {
  border: 2px solid var(--telemagenta);
}

.wwo--design__wrapper > h4 {
  color: var(--telemagenta);
}

.wwo--planning__wrapper {
  border: 2px solid var(--wisteria);
}

.wwo--planning__wrapper > h4 {
  color: var(--wisteria);
}

.wwo--marketing__wrapper {
  border: 2px solid var(--sky-blue-crayola);
}

.wwo--marketing__wrapper > h4 {
  color: var(--sky-blue-crayola);
}

.map-section {
  background: radial-gradient(#070707bc 0%, #070707a6 100%), url("../../assets/backgrounds/25prod-yellowtinge.png") bottom / cover;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.map--section--title {
  color: #fdf6e2;
  text-align: center;
  margin: 2em;
  font-family: rift, sans-serif;
  font-style: normal;
  font-weight: 600;
}

.map-container {
  text-align: center;
  background-blend-mode: multiply;
  width: 100%;
  max-width: 1268px;
  height: auto;
  position: relative;
}

.map--image--bg {
  z-index: 0;
  opacity: .8;
  background-image: url("../../assets/backgrounds/topo-tall-textured-edges-lightest.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  inset: 0;
}

@media screen and (width <= 768px) {
  .map--image--bg {
    background-image: url("../../assets/backgrounds/topo-tall-textured-edges-lightest-mobile-fixed.png");
  }
}

.treasure-map {
  z-index: 99;
  opacity: 1;
  width: 100%;
  height: auto;
  display: block;
  position: relative;
}

.map--text__wrapper {
  backdrop-filter: blur(.7px);
  background: radial-gradient(circle, #ffffff80 0%, #fff3 40%, #ffffff05 70%, #fff0 100%);
  border-radius: 50%;
  max-width: 400px;
  padding: 80px;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (width <= 768px) {
  .map--text__wrapper {
    background: radial-gradient(circle, #ffffff80 0%, #fff3 40%, #ffffff05 60%, #fff0 100%);
    max-width: 280px;
    padding: 5px;
  }
}

.map--title {
  color: #272727;
  text-transform: uppercase;
  font-family: rift, sans-serif;
  font-size: clamp(1.1em, 3vw, 2.5em);
  font-style: normal;
  font-weight: 600;
}

@media screen and (width <= 768px) {
  .map--title {
    margin: 5px 0;
  }
}

.map--text {
  font-family: var(--ff-aktiv-grotesk);
  color: #000;
  font-size: clamp(.8em, 2vw, 1.75em);
  font-style: normal;
  font-weight: 400;
}

@media screen and (width <= 768px) {
  .map--text {
    margin: 5px 0;
    line-height: 1.1em;
  }
}

.map--icons {
  opacity: 1;
  background: none;
  border-radius: 8px;
  width: auto;
  height: auto;
  padding: 8px 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.map--icon {
  backdrop-filter: blur(.5px);
  background: radial-gradient(circle, #fff6 0%, #ffffff1a 50%, #ffffff05 80%, #fff0 100%);
  border-radius: 50%;
  padding: 20px;
  font-size: clamp(40px, 10vw, 120px);
}

.horizontal-section {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  position: relative;
  overflow-x: hidden;
}

.horizontal-window {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  height: 100vh;
  padding-bottom: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: sticky;
  top: 0;
  overflow: hidden;
}

.horizontal-scroll {
  will-change: transform;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  gap: 2rem;
  min-width: max-content;
  padding: 0 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.horizontal-scroll::-webkit-scrollbar {
  display: none;
}

.horizontal-scroll.dragging {
  cursor: -webkit-grabbing;
  cursor: grabbing;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.digital--consultations__wrapper {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  grid-template-rows: auto;
  grid-template-columns: auto;
  justify-content: center;
  width: 100%;
  padding: 75px 0;
  display: grid;
}

.consultations--textboxes__wrapper {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 2rem 0;
  overflow-x: hidden;
}

.consultations--textboxes {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: baseline;
  background: #ccc;
  border-radius: 1rem;
  width: 80vw;
  max-width: 500px;
  height: 500px;
}

.about--divider--section--top {
  opacity: .2;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 50px));
  background: #000;
  justify-self: center;
  width: 100%;
  height: 120px;
  margin: 0;
  padding: 0;
  display: grid;
}

.about--divider--section--bottom {
  opacity: .2;
  background: radial-gradient(ellipse at 50% 80%, var(--telemagenta-ok) 5%, #000 80%, #000 100%);
  clip-path: polygon(0 0, 100% 50px, 100% 100%, 0 100%);
  justify-self: center;
  width: 100%;
  height: 150px;
  margin: -42px 0 0;
  padding: 0;
  display: grid;
}

.enterprise--strategy__wrapper {
  grid-template-rows: auto;
  grid-template-columns: auto;
  justify-content: center;
  padding: 75px 0;
  display: grid;
}

.enterprise--textboxes__wrapper {
  grid-column-gap: 10vw;
  grid-template-rows: 1fr 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  max-width: 1320px;
  margin: 0 auto;
  display: grid;
}

@media only screen and (width <= 769px) {
  .enterprise--textboxes__wrapper {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    grid-column-gap: 0;
    grid-template-rows: auto auto auto auto auto auto auto auto auto auto;
    grid-template-columns: 1fr;
    max-width: 100%;
    margin: 0;
    padding: 0;
  }
}

.e--pencilpaper-icon {
  color: #028cb0;
}

@media only screen and (width <= 769px) {
  .e--pencilpaper-icon {
    grid-row: 1 / 2;
  }
}

.e--mappin-icon {
  color: #af98d5;
}

@media only screen and (width <= 769px) {
  .e--mappin-icon {
    grid-row: 3 / 4;
  }
}

.e--computercode-icon {
  color: #04f1ed;
}

@media only screen and (width <= 769px) {
  .e--computercode-icon {
    grid-row: 5 / 6;
  }
}

.e--shuttle-icon {
  color: #8e0b5c;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

@media only screen and (width <= 769px) {
  .e--shuttle-icon {
    grid-row: 7 / 8;
  }
}

.contact--cta__wrapper {
  background: var(--cic-overlay-magenta-tone), url("../../assets/backgrounds/25prod-newbg-magenta.png") center center / cover;
  background-blend-mode: darken;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  align-items: center;
  width: 100%;
  height: auto;
  padding: 75px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (width <= 769px) {
  .contact--cta__wrapper {
    background: var(--cic-overlay-magenta-tone), url("../../assets/backgrounds/25prod-newbg-magenta.png");
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 0;
  }
}

.portfolio--cta__wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.a--cc--button__wrapper {
  margin-bottom: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (width <= 769px) {
  .a--cc--button__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.cta--buttons-title {
  color: var(--telemagenta);
  text-wrap-style: pretty;
  font-family: rift, sans-serif;
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 600;
}

.a--cc--button {
  white-space: nowrap;
  backdrop-filter: blur(30px);
  text-transform: uppercase;
  cursor: pointer;
  text-align: center;
  width: 225px;
  height: 50px;
  margin: 0 auto;
  padding: 0 33px;
  font-family: rift, sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 50px;
  text-decoration: none;
  display: inline-block;
  overflow: hidden;
}

.a--cc--button--atag--contact {
  padding: 20px 40px;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (width <= 769px) {
  .a--cc--button--atag--contact {
    grid-area: 2 / 1 / 3 / 3;
    margin: 20px 0 0;
    padding: 10px;
  }
}

.a--cc--button--atag--portfolio {
  padding: 20px 40px;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (width <= 769px) {
  .a--cc--button--atag--portfolio {
    grid-area: 3 / 1 / 4 / 3;
    padding: 10px;
  }
}

.a--cc--contact--button {
  color: #fff;
  border: 1px solid var(--telemagenta);
  background: #c11455bd;
  -webkit-transition: background .5s ease-in-out;
  transition: background .5s ease-in-out;
}

.a--cc--contact--button:hover {
  color: var(--telemagenta);
  background: none;
}

.a--cc--portfolio--button {
  color: #fff;
  background: #ffffff2a;
  border: 1px solid #fff;
  -webkit-transition: background .5s ease-in-out;
  transition: background .5s ease-in-out;
}

.a--cc--portfolio--button:hover {
  background: none;
}
