@charset "UTF-8";
/*!
 * 9dot Digital — theme styles
 * Generated file: edit assets/scss/ and run `npm run build:styles` (or `npm run dev`).
 */
*, *::before, *::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
}
@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

body {
  font-synthesis-weight: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

html.has-drawer-open,
html.has-dialog-open {
  overflow: hidden;
}

img, video, svg {
  max-width: 100%;
}

img {
  height: auto;
}

::-moz-selection {
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
}

::selection {
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
}

input, textarea, button, select {
  font: inherit;
}

.wp-site-blocks {
  overflow-x: clip;
  padding-block: 0;
}

.wp-site-blocks > *,
.wp-site-blocks > main > *,
main.wp-block-group > .wp-block-post-content > * {
  margin-block: 0;
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 2px solid var(--wp--preset--color--purple);
  outline-offset: 3px;
}

:where(.has-ink-background-color, .has-slate-background-color, .has-purple-background-color, .drawer, .site-footer) :where(a, button, summary, [tabindex]):focus-visible {
  outline-color: var(--wp--preset--color--green);
}

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

.screen-reader-text:focus {
  clip: auto !important;
  width: auto;
  height: auto;
  margin: 0;
  z-index: 100000;
  padding: 12px 20px;
  background: var(--wp--preset--color--white);
  color: var(--wp--preset--color--ink);
  font-weight: 600;
}

.ninedot-empty {
  padding: 24px;
  border: 1px dashed var(--wp--preset--color--sky);
  border-radius: 10px;
  font-size: 14px;
  color: var(--wp--preset--color--ink);
}

.ninedot-media-placeholder {
  position: absolute;
  inset: 0;
  display: block;
  background: var(--wp--preset--color--sky);
}
:where(.has-ink-background-color) .ninedot-media-placeholder {
  background: var(--wp--preset--color--slate);
}

h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

p, li {
  text-wrap: pretty;
}

p {
  margin-block: 0;
}

p.is-style-eyebrow {
  font-size: var(--wp--preset--font-size--body);
  font-weight: 600;
  line-height: 1.2;
}

.is-tagline {
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  line-height: 1.4;
}

.is-statement {
  font-size: var(--wp--preset--font-size--statement) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.02em;
}

.measure-44 {
  max-width: 44ch;
  --measure: 44ch;
}

.measure-46 {
  max-width: 46ch;
}

.measure-48 {
  max-width: 48ch;
}

.measure-52 {
  max-width: 52ch;
}

.measure-9ch {
  max-width: 9ch;
}

.measure-12ch {
  max-width: 12ch;
}

.measure-13ch {
  max-width: 13ch;
}

.measure-15ch {
  max-width: 15ch;
}

.measure-16ch {
  max-width: 16ch;
}

.measure-18ch {
  max-width: 18ch;
}

.measure-20ch {
  max-width: 20ch;
}

.measure-28ch {
  max-width: 28ch;
}

.measure-40ch {
  max-width: 40ch;
}

.is-layout-constrained > :where([class*=measure-]) {
  margin-left: 0 !important;
}

.is-layout-constrained > .has-text-align-center[class*=measure-] {
  margin-inline: auto !important;
}

.has-purple-color mark, mark.has-purple-color {
  background: none;
}

.is-relaxed {
  line-height: 1.3 !important;
}

.editor-styles-wrapper .editor-post-title.editor-post-title {
  margin-bottom: 16px;
  color: rgba(30, 30, 44, 0.5);
  font-size: 28px !important;
  letter-spacing: -0.01em;
}

.is-wrap-natural.is-wrap-natural {
  text-wrap: wrap;
}

.is-statement .reveal-word {
  transition: opacity 0.15s linear;
}

@media (min-width: 744px) {
  .is-style-offset,
  .offset-right {
    margin-left: calc(50% + 12px) !important;
    max-width: min(var(--measure, 48ch), 50% - 12px);
  }
}

.is-layout-flex.is-vertical.is-content-justification-stretch > * {
  width: 100%;
}

.split.split {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr));
  gap: 24px clamp(32px, 6vw, 96px);
  align-items: center;
}
.split.split > * {
  margin-block: 0;
}
.split.split.is-top {
  align-items: start;
}
.split.split.is-wide-gap {
  gap: clamp(40px, 5vw, 80px);
}
@media (min-width: 864px) {
  .split.split > .is-col-right:only-child {
    margin-left: calc(50% + clamp(16px, 3vw, 48px)) !important;
  }
}

.section-head.section-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}
.section-head.section-head > * {
  margin-block: 0;
}
.section-head.section-head > .wp-block-buttons {
  flex: none;
}

.card-grid.card-grid {
  display: grid;
  gap: 24px;
}
.card-grid.card-grid > * {
  margin-block: 0;
}
.card-grid.card-grid--2 {
  grid-template-columns: repeat(auto-fit, minmax(max(min(100%, 420px), (100% - 24px) / 2), 1fr));
}
.card-grid.card-grid--3 {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: 16px;
}
.card-grid.card-grid--4 {
  grid-template-columns: repeat(auto-fit, minmax(max(min(100%, 240px), (100% - 48px) / 4), 1fr));
  gap: 16px;
}
.card-grid.card-grid--4s {
  grid-template-columns: repeat(auto-fit, minmax(max(min(100%, 260px), (100% - 48px) / 4), 1fr));
  gap: 16px;
}

.banner.banner {
  position: relative;
  height: clamp(240px, 26vw, 420px);
  margin-block: 0;
  overflow: hidden;
  background: var(--wp--preset--color--sky);
}
.banner.banner--tall {
  height: clamp(260px, 32vw, 520px);
}
.banner.banner--feature {
  height: clamp(260px, 34vw, 560px);
}
.banner.banner img, .banner.banner video {
  display: block;
  width: 100%;
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0;
}

.banner .components-placeholder {
  height: 100%;
}

.has-ink-background-color,
.has-slate-background-color {
  --rule-color: var(--wp--preset--color--white);
  --hover-color: var(--wp--preset--color--green);
}

:root {
  --rule-color: var(--wp--preset--color--ink);
  --hover-color: var(--wp--preset--color--purple);
}

.has-top-gap.has-top-gap {
  margin-top: clamp(24px, 3vw, 48px) !important;
}

.page-hero .has-top-gap {
  margin-top: 12px !important;
}

.clients-head.clients-head {
  margin-top: clamp(56px, 6vw, 96px) !important;
}

.is-related-title {
  font-size: clamp(40px, 4.6vw, 72px) !important;
}

@media (min-width: 521px) and (max-width: 1100px) {
  .card-grid.card-grid--4,
  .card-grid.card-grid--4s {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.banner.is-focus-right img {
  -o-object-position: 72% 50%;
     object-position: 72% 50%;
}

.banner.is-focus-left img {
  -o-object-position: 28% 50%;
     object-position: 28% 50%;
}

.wp-site-blocks > header.wp-block-template-part,
header.wp-block-template-part.site-header-part {
  position: sticky;
  top: var(--wp-admin--admin-bar--height, 0px);
  z-index: 50;
  background: var(--wp--preset--color--white);
  transition: box-shadow 0.3s ease;
}
.wp-site-blocks > header.wp-block-template-part.is-scrolled,
header.wp-block-template-part.site-header-part.is-scrolled {
  box-shadow: 0 1px 0 rgba(30, 30, 44, 0.08);
}
body.is-canvas-mist .wp-site-blocks > header.wp-block-template-part,
body.is-canvas-mist header.wp-block-template-part.site-header-part {
  background: var(--wp--preset--color--mist);
}

@media (max-width: 600px) {
  .wp-site-blocks > header.wp-block-template-part {
    top: 0;
  }
}
.site-header {
  position: relative;
  margin: 0 !important;
}
.site-header__bar {
  width: 100%;
  max-width: 1566px;
  margin-inline: auto;
  padding-inline: var(--wp--preset--spacing--gutter);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding-block: clamp(16px, 2vw, 28px);
}
.site-header__logo {
  display: flex;
  flex: none;
}
.site-header__logo .ninedot-logo {
  display: block;
  width: auto;
  height: clamp(36px, 3.4vw, 50px);
}
.site-header__nav {
  display: flex;
  align-items: center;
  gap: clamp(14px, 2vw, 30px);
}
@media (max-width: 1023px) {
  .site-header__nav {
    display: none;
  }
}
.site-header__cta {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 10px 28px;
  border-radius: 100px;
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--white);
  font-size: clamp(16px, 1.25vw, 20px);
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  transition: background-color 0.2s ease;
}
.site-header__cta:hover, .site-header__cta:focus-visible {
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
}
.site-header__dots {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 6px;
  border: 0;
  background: none;
  color: var(--wp--preset--color--purple);
  cursor: pointer;
  transition: transform 0.3s ease;
}
.site-header__dots:hover, .site-header__dots:focus-visible, .site-header__dots[aria-expanded=true] {
  transform: rotate(90deg);
}
.site-header__dots-icon {
  display: block;
  width: clamp(28px, 2.4vw, 36px);
  height: clamp(28px, 2.4vw, 36px);
}
.site-header__burger {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: none;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-right: -8px;
  padding: 0;
  border: 0;
  border-radius: 100px;
  background: none;
  color: var(--wp--preset--color--ink);
  cursor: pointer;
}
@media (max-width: 1023px) {
  .site-header__burger {
    display: inline-flex;
  }
}
.site-header__burger-lines {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 26px;
}
.site-header__burger-lines span {
  display: block;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
}
.site-header__burger-lines span:nth-child(2) {
  width: 70%;
  margin-left: auto;
  transition: width 0.25s ease;
}
.site-header__burger:hover .site-header__burger-lines span:nth-child(2) {
  width: 100%;
}

.site-nav {
  display: flex;
  align-items: center;
  gap: clamp(14px, 2vw, 30px);
  margin: 0;
  padding: 0;
  list-style: none;
}
.site-nav__link {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 0;
  color: var(--wp--preset--color--ink);
  font-size: clamp(16px, 1.25vw, 18px);
  font-weight: 400;
  line-height: 1.2;
  white-space: nowrap;
}
.site-nav__link:hover, .site-nav__link:focus-visible {
  color: var(--wp--preset--color--purple);
}
.site-nav__link.is-current {
  color: var(--wp--preset--color--purple);
  font-weight: 600;
}
.site-nav__caret {
  transition: transform 0.25s ease;
}
.is-mega-open .site-nav__caret {
  transform: rotate(180deg);
}

.mega {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 40;
  border-top: 1px solid var(--wp--preset--color--sky);
  background: var(--wp--preset--color--white);
  box-shadow: 0 24px 48px rgba(30, 30, 44, 0.1);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: opacity 0.25s ease, transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1), visibility 0.25s;
}
.is-mega-open .mega {
  opacity: 1;
  visibility: visible;
  transform: none;
}
@media (max-width: 1023px) {
  .mega {
    display: none;
  }
}
.mega__inner {
  width: 100%;
  max-width: 1566px;
  margin-inline: auto;
  padding-inline: var(--wp--preset--spacing--gutter);
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding-block: clamp(24px, 2.4vw, 36px);
}
.mega__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.mega__card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  height: 100%;
  min-height: 104px;
  padding: 20px 24px;
  border-radius: 10px;
  background: var(--wp--preset--color--mist);
  color: var(--wp--preset--color--ink);
  transition: background-color 0.2s ease, color 0.2s ease;
}
.mega__card:hover, .mega__card:focus-visible, .mega__card.is-current {
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
}
.mega__name {
  font-size: var(--wp--preset--font-size--list);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.01em;
}
.mega__tag {
  font-size: clamp(14px, 1.1vw, 16px);
  line-height: 1.3;
}
.mega__foot {
  display: flex;
  justify-content: flex-end;
}

.drawer-overlay {
  position: fixed;
  inset: 0;
  z-index: 60;
  background: rgba(30, 30, 44, 0.6);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}
.has-drawer-open .drawer-overlay {
  opacity: 1;
  pointer-events: auto;
}

.drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 61;
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: min(460px, 92vw);
  padding: 32px;
  overflow-y: auto;
  overscroll-behavior: contain;
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--white);
  visibility: hidden;
  transform: translateX(100%);
  transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), visibility 0s linear 0.5s;
}
.has-drawer-open .drawer {
  visibility: visible;
  transform: translateX(0);
  transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), visibility 0s;
}
@media (prefers-reduced-motion: reduce) {
  .drawer {
    transition: none !important;
  }
}
@media (max-width: 700px) {
  .drawer {
    padding: 24px 20px 32px;
    gap: 28px;
  }
}
.drawer a {
  color: var(--wp--preset--color--white);
}
.drawer__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.drawer__logo .ninedot-logo {
  display: block;
  width: auto;
  height: 44px;
}
.drawer__close {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  margin-right: -10px;
  border: 0;
  background: none;
  color: var(--wp--preset--color--white);
  cursor: pointer;
}
.drawer__close:hover, .drawer__close:focus-visible {
  color: var(--wp--preset--color--green);
}
.drawer__nav {
  display: none;
}
.drawer[data-mode=menu] .drawer__nav {
  display: block;
}
.drawer[data-mode=menu] .drawer__title {
  font-size: 30px;
}
.drawer__intro {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.drawer__title {
  margin: 0;
  font-size: 45px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
}
.drawer__tagline {
  font-size: 18px;
  line-height: 1.35;
}
.drawer__rows {
  display: flex;
  flex-direction: column;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}
.drawer__row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 20px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  color: var(--wp--preset--color--white);
}
.drawer__row:not(.drawer__row--static):hover, .drawer__row:not(.drawer__row--static):focus-visible {
  color: var(--wp--preset--color--green);
}
.drawer__row--static {
  gap: 10px;
}
.drawer__label {
  color: var(--wp--preset--color--green);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}
.drawer__value {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.15;
}
@media (max-width: 700px) {
  .drawer__value {
    font-size: 20px;
  }
}
.drawer__socials {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.drawer__socials .ninedot-pill--ghost:hover, .drawer__socials .ninedot-pill--ghost:focus-visible {
  background: var(--wp--preset--color--green);
  color: var(--wp--preset--color--ink);
}
.drawer__cta {
  margin-top: auto;
  min-height: 52px;
  font-size: 20px;
  flex: none;
}

.drawer-nav {
  margin: 0;
  padding: 0;
  list-style: none;
}
.drawer-nav__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.drawer-nav__link {
  display: block;
  padding: 6px 0;
  font-size: clamp(30px, 8vw, 40px);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.02em;
}
.drawer-nav__link:hover, .drawer-nav__link:focus-visible, .drawer-nav__link.is-current {
  color: var(--wp--preset--color--green) !important;
}
.drawer-nav__toggle {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 1.5px solid rgba(255, 255, 255, 0.35);
  border-radius: 50%;
  background: none;
  color: var(--wp--preset--color--white);
  cursor: pointer;
}
.drawer-nav__toggle svg {
  transition: transform 0.25s ease;
}
.drawer-nav__toggle[aria-expanded=true] svg {
  transform: rotate(180deg);
}
.drawer-nav__toggle:hover, .drawer-nav__toggle:focus-visible {
  border-color: var(--wp--preset--color--green);
  color: var(--wp--preset--color--green);
}
.drawer-nav__sub {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 4px 0 12px;
  padding: 0 0 0 2px;
  list-style: none;
}
.drawer-nav__sub a {
  display: block;
  padding: 8px 0;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.2;
}
.drawer-nav__sub a:hover, .drawer-nav__sub a:focus-visible, .drawer-nav__sub a.is-current {
  color: var(--wp--preset--color--green);
}

.site-nav__item--dropdown {
  position: relative;
}
.site-nav__item--dropdown.is-open .site-nav__caret {
  transform: rotate(180deg);
}

.dropdown {
  position: absolute;
  top: 100%;
  left: -20px;
  z-index: 41;
  min-width: 220px;
  margin: 0;
  padding: 8px;
  border-radius: 10px;
  background: var(--wp--preset--color--white);
  box-shadow: 0 24px 48px rgba(30, 30, 44, 0.12), 0 0 0 1px rgba(30, 30, 44, 0.04);
  list-style: none;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity 0.2s ease, transform 0.25s cubic-bezier(0.2, 0.8, 0.2, 1), visibility 0.2s;
}
.is-open > .dropdown {
  opacity: 1;
  visibility: visible;
  transform: none;
}
.dropdown__link {
  display: block;
  padding: 12px 16px;
  border-radius: 6px;
  color: var(--wp--preset--color--ink);
  font-size: clamp(16px, 1.25vw, 18px);
  line-height: 1.2;
  white-space: nowrap;
}
.dropdown__link:hover, .dropdown__link:focus-visible, .dropdown__link.is-current {
  background: var(--wp--preset--color--mist);
  color: var(--wp--preset--color--purple);
}
.dropdown__link.is-current {
  font-weight: 600;
}

.drawer-nav__sub[hidden] {
  display: none;
}

.site-footer a {
  color: var(--wp--preset--color--white);
}
.site-footer a:hover, .site-footer a:focus-visible {
  color: var(--wp--preset--color--green);
}
.site-footer .wp-block-button__link:hover, .site-footer .wp-block-button__link:focus-visible {
  color: var(--wp--preset--color--ink);
}

.site-footer__grid.site-footer__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr));
  gap: 48px;
  align-items: start;
}
.site-footer__grid.site-footer__grid > * {
  margin-block: 0;
}

.ninedot-menu ul {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ninedot-menu--footer a {
  display: inline-block;
  font-size: var(--wp--preset--font-size--title);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

.ninedot-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ninedot-socials--text a {
  font-size: var(--wp--preset--font-size--body);
  font-weight: 600;
}
.ninedot-socials--pill {
  gap: 8px;
}
.ninedot-socials--pill a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 20px;
  border: 1.5px solid currentColor;
  border-radius: 100px;
  font-size: 16px;
  font-weight: 600;
}

.footer-actions.footer-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: clamp(16px, 2vw, 28px);
  margin-top: 12px !important;
}
.footer-actions.footer-actions > * {
  margin-block: 0;
}

.ninedot-pill, .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 48px;
  padding: 12px 28px;
  border: 0;
  border-radius: 100px;
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
  font-size: var(--wp--preset--font-size--body);
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.ninedot-pill:hover, .wp-block-button__link:hover, .ninedot-pill:focus-visible, .wp-block-button__link:focus-visible {
  background: var(--wp--preset--color--green);
  color: var(--wp--preset--color--ink);
}

.wp-block-button__link::after {
  content: "";
  flex: none;
  width: 16px;
  height: 16px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='2.2'%3E%3Cpath d='M3 3l9.5 9.5M13 5v8H5'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='2.2'%3E%3Cpath d='M3 3l9.5 9.5M13 5v8H5'/%3E%3C/svg%3E") center/contain no-repeat;
}

.wp-block-button.no-arrow .wp-block-button__link::after {
  display: none;
}

.wp-block-buttons.wp-block-buttons {
  gap: 20px;
}

.ninedot-pill .ninedot-arrow {
  flex: none;
}
.ninedot-pill--dark {
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--white);
}
.ninedot-pill--dark:hover, .ninedot-pill--dark:focus-visible {
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
}
.ninedot-pill--sm {
  min-height: 44px;
  padding: 10px 24px;
  gap: 12px;
  font-size: clamp(15px, 1.2vw, 18px);
}
.ninedot-pill--lg {
  font-size: var(--wp--preset--font-size--list);
}
.ninedot-pill--wide {
  padding-inline: 40px;
}
.ninedot-pill--ghost {
  min-height: 44px;
  padding: 8px 20px;
  border: 1.5px solid var(--wp--preset--color--white);
  background: transparent;
  font-size: 16px;
}
.ninedot-pill--ghost:hover, .ninedot-pill--ghost:focus-visible {
  border-color: var(--wp--preset--color--green);
}

.wp-block-button.is-style-dark .wp-block-button__link {
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--white);
}
.wp-block-button.is-style-dark .wp-block-button__link:hover, .wp-block-button.is-style-dark .wp-block-button__link:focus-visible {
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
}

.wp-block-button.is-style-green .wp-block-button__link {
  background: var(--wp--preset--color--green);
  color: var(--wp--preset--color--ink);
}
.wp-block-button.is-style-green .wp-block-button__link:hover, .wp-block-button.is-style-green .wp-block-button__link:focus-visible {
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
}

.wp-block-button.is-style-outline-light .wp-block-button__link {
  padding-block: 11px;
  border: 1.5px solid var(--wp--preset--color--white);
  background: transparent;
  color: var(--wp--preset--color--white);
}
.wp-block-button.is-style-outline-light .wp-block-button__link::after {
  display: none;
}
.wp-block-button.is-style-outline-light .wp-block-button__link:hover, .wp-block-button.is-style-outline-light .wp-block-button__link:focus-visible {
  background: var(--wp--preset--color--purple);
  border-color: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
}

.wp-block-button.is-style-outline .wp-block-button__link {
  min-height: 58px;
  padding: 16px 38px;
  border: 1.5px solid var(--wp--preset--color--purple);
  background: transparent;
  color: var(--wp--preset--color--purple);
  font-size: 13px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.wp-block-button.is-style-outline .wp-block-button__link::after {
  display: none;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover, .wp-block-button.is-style-outline .wp-block-button__link:focus-visible {
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
  transform: scale(1.12);
}
@media (prefers-reduced-motion: reduce) {
  .wp-block-button.is-style-outline .wp-block-button__link:hover {
    transform: none;
  }
}

.wp-block-button.is-caps .wp-block-button__link {
  font-size: 13px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 13px 26px;
  border-color: rgba(255, 255, 255, 0.45);
}
.wp-block-button.is-caps .wp-block-button__link::after {
  display: none;
}
.wp-block-button.is-caps .wp-block-button__link:hover, .wp-block-button.is-caps .wp-block-button__link:focus-visible {
  background: var(--wp--preset--color--green);
  border-color: var(--wp--preset--color--green);
  color: var(--wp--preset--color--ink);
}

.wp-block-button__link.has-list-font-size {
  font-size: var(--wp--preset--font-size--list) !important;
}

.wp-block-button.is-large .wp-block-button__link {
  font-size: var(--wp--preset--font-size--list);
}

.wp-block-group.is-style-card,
.wp-block-group.is-style-card-sky {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 40px;
  min-height: clamp(240px, 22vw, 330px);
  padding: 24px;
  border: 1px solid var(--wp--preset--color--mist);
  border-radius: 10px;
  background: var(--wp--preset--color--mist);
  color: var(--wp--preset--color--ink);
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}
.wp-block-group.is-style-card > *,
.wp-block-group.is-style-card-sky > * {
  margin-block: 0;
}
.wp-block-group.is-style-card:hover, .wp-block-group.is-style-card:focus-within,
.wp-block-group.is-style-card-sky:hover,
.wp-block-group.is-style-card-sky:focus-within {
  border-color: var(--wp--preset--color--purple);
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
}
.wp-block-group.is-style-card h3,
.wp-block-group.is-style-card-sky h3 {
  font-size: var(--wp--preset--font-size--title);
  line-height: 1;
}
.wp-block-group.is-style-card p,
.wp-block-group.is-style-card-sky p {
  font-size: var(--wp--preset--font-size--card-body);
  line-height: 1.25;
}

.offerings .wp-block-group.is-style-card {
  min-height: clamp(220px, 17vw, 260px);
}
.offerings .wp-block-group.is-style-card h3 {
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1.05;
  max-width: 12ch;
}

.wp-block-group.is-style-card-sky {
  justify-content: flex-start;
  gap: 24px;
  min-height: clamp(300px, 24vw, 360px);
  border-color: var(--wp--preset--color--sky);
  background: var(--wp--preset--color--sky);
}
.wp-block-group.is-style-card-sky .wp-block-image {
  align-self: center;
  width: 100%;
  margin: 0;
}
.wp-block-group.is-style-card-sky .wp-block-image img {
  display: block;
  width: 100%;
  height: clamp(120px, 11vw, 170px);
  -o-object-fit: contain;
     object-fit: contain;
}
.wp-block-group.is-style-card-sky p {
  margin-top: auto !important;
}

.overlay-card {
  position: relative;
  display: block;
  aspect-ratio: 739/670;
  overflow: hidden;
  border-radius: 10px;
  background: var(--wp--preset--color--sky);
  color: var(--wp--preset--color--white);
  isolation: isolate;
}
.overlay-card img {
  transition: transform 0.7s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.overlay-card:hover img, .overlay-card:focus-visible img {
  transform: scale(1.05);
}
@media (prefers-reduced-motion: reduce) {
  .overlay-card img {
    transition: none;
  }
  .overlay-card:hover img {
    transform: none;
  }
}
:where(.has-ink-background-color) .overlay-card {
  background: var(--wp--preset--color--slate);
}
.overlay-card:hover, .overlay-card:focus-visible {
  color: var(--wp--preset--color--white);
}
.overlay-card > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.overlay-card__shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(30, 30, 44, 0) 50%, rgba(30, 30, 44, 0.8) 100%);
}
.overlay-card__text {
  position: absolute;
  left: clamp(20px, 2.4vw, 36px);
  right: clamp(20px, 2.4vw, 36px);
  bottom: clamp(20px, 2.4vw, 36px);
  display: flex;
  flex-direction: column;
  gap: 8px;
  pointer-events: none;
}
.overlay-card__tag {
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  line-height: 1.2;
}
.overlay-card__title {
  margin: 0;
  color: inherit;
  font-size: var(--wp--preset--font-size--title);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -0.02em;
}
.overlay-card--post {
  aspect-ratio: 739/500;
}
.overlay-card--post .overlay-card__shade {
  background: linear-gradient(180deg, rgba(30, 30, 44, 0) 45%, rgba(30, 30, 44, 0.82) 100%);
}

.case-cards.is-square .overlay-card {
  border-radius: 0;
}

.post-card {
  display: flex;
  flex-direction: column;
  gap: clamp(20px, 2.2vw, 32px);
  min-width: 0;
  color: var(--wp--preset--color--ink);
}
.post-card img {
  transition: transform 0.7s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.post-card:hover img, .post-card:focus-visible img {
  transform: scale(1.05);
}
@media (prefers-reduced-motion: reduce) {
  .post-card img {
    transition: none;
  }
  .post-card:hover img {
    transform: none;
  }
}
.post-card:hover, .post-card:focus-visible {
  color: var(--wp--preset--color--purple);
}
.post-card__media {
  position: relative;
  display: block;
  aspect-ratio: 739/670;
  overflow: hidden;
  border-radius: 10px;
  background: var(--wp--preset--color--sky);
}
.post-card__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.post-card__text {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.post-card__tag {
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  line-height: 1.2;
}
.post-card__title {
  margin: 0;
  color: inherit;
  font-size: var(--wp--preset--font-size--title);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -0.02em;
}
.post-card--compact {
  gap: 14px;
  color: var(--wp--preset--color--white);
}
.post-card--compact:hover, .post-card--compact:focus-visible {
  color: var(--wp--preset--color--green);
}
.post-card--compact .post-card__media {
  aspect-ratio: 4/3;
  background: #1a1a1a;
}
.post-card--compact .post-card__text {
  gap: 6px;
}
.post-card--compact .post-card__tag {
  color: var(--wp--preset--color--green);
  font-size: 12px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.post-card--compact .post-card__title {
  font-size: clamp(18px, 1.4vw, 22px);
  line-height: 1.2;
  letter-spacing: -0.015em;
}
.post-card--compact:hover img {
  transform: scale(1.06);
}

.post-grid__items.post-grid__items {
  gap: clamp(40px, 4vw, 56px) 24px;
}

.post-cards--compact.post-cards--compact {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: clamp(16px, 2vw, 32px);
}

.post-grid__pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: clamp(40px, 4vw, 56px);
}
.post-grid__pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  min-height: 48px;
  padding: 0 18px;
  border: 1.5px solid var(--wp--preset--color--ink);
  border-radius: 100px;
  color: var(--wp--preset--color--ink);
  font-weight: 600;
}
.post-grid__pagination .page-numbers:hover, .post-grid__pagination .page-numbers:focus-visible {
  border-color: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--purple);
}
.post-grid__pagination .page-numbers.current {
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--white);
}
.post-grid__pagination .page-numbers.dots {
  border-color: transparent;
}

.featured-post {
  position: relative;
  display: block;
  height: clamp(300px, 32vw, 500px);
  overflow: hidden;
  background: var(--wp--preset--color--sky);
  color: var(--wp--preset--color--white);
}
.featured-post:hover, .featured-post:focus-visible {
  color: var(--wp--preset--color--white);
}
.featured-post > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.featured-post__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(30, 30, 44, 0) 40%, rgba(30, 30, 44, 0.8) 100%);
}
.featured-post__text {
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(24px, 3vw, 48px);
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-inline: max(var(--wp--preset--spacing--gutter), (100% - 1502px) / 2);
}
.featured-post__title {
  font-size: clamp(26px, 2.4vw, 35px);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -0.02em;
  -webkit-text-decoration: underline transparent;
          text-decoration: underline transparent;
  transition: text-decoration-color 0.2s;
}
.featured-post:hover .featured-post__title {
  text-decoration-color: currentColor;
  text-underline-offset: 6px;
}

.panel-mist.panel-mist {
  border-radius: 10px;
  background: var(--wp--preset--color--mist);
}

@media (max-width: 700px) {
  .wp-block-group.is-style-card {
    min-height: 180px;
  }
  .wp-block-group.is-style-card-sky {
    min-height: 260px;
  }
}
.services-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 440px), 1fr));
  gap: 0 clamp(32px, 6vw, 96px);
  margin: 0;
  padding: 0;
  list-style: none;
}
.services-list__row {
  display: flex;
  align-items: center;
  gap: 24px;
  min-height: 60px;
  padding: 18px 0;
  border-bottom: 1.5px solid var(--rule-color);
  color: inherit;
  transition: color 0.2s ease;
}
.services-list__row:hover, .services-list__row:focus-visible {
  color: var(--hover-color);
}
.services-list__row .ninedot-arrow {
  flex: none;
}
.services-list__num {
  flex: none;
  min-width: 28px;
  font-size: var(--wp--preset--font-size--card-body);
  font-weight: 600;
}
.services-list__name {
  flex: 1;
  font-size: var(--wp--preset--font-size--list);
  font-weight: 600;
  line-height: 1.15;
}

.service-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(max(min(100%, 460px), (100% - 16px) / 2), 1fr));
  gap: 16px;
  container-type: inline-size;
}

.service-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 48px;
  min-height: 90.9090909091cqw;
  padding: clamp(24px, 2.4vw, 36px);
}
@container (min-width: 936px) {
  .service-card {
    min-height: calc((100cqw - 16px) / 2 * 700 / 770);
  }
}
.service-card {
  border: 1px solid var(--wp--preset--color--mist);
  border-radius: 10px;
  background: var(--wp--preset--color--mist);
  color: var(--wp--preset--color--ink);
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}
.service-card:hover, .service-card:focus-visible {
  border-color: var(--wp--preset--color--purple);
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
}
.service-card--wide {
  grid-column: 1/-1;
}
.service-card__title {
  margin: 0;
  font-size: clamp(32px, 3.8vw, 60px);
  line-height: 1.02;
  max-width: 11ch;
}
.service-card__foot {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.service-card__explore {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  padding: 10px 24px;
  border-radius: 100px;
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--white);
  font-size: var(--wp--preset--font-size--card-body);
  font-weight: 600;
}
.service-card__blurb {
  max-width: 44ch;
  font-size: var(--wp--preset--font-size--card-body);
  line-height: 1.25;
}
.has-cursor-pill .service-card {
  cursor: none;
}
.has-cursor-pill .service-card .service-card__explore {
  opacity: 0;
}

.cursor-pill {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 45;
  pointer-events: none;
  opacity: 0;
  will-change: transform;
  transition: opacity 0.2s ease;
}
.cursor-pill.is-visible {
  opacity: 1;
}
.cursor-pill__inner {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 100px;
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--white);
  font-family: var(--wp--preset--font-family--brand);
  font-size: var(--wp--preset--font-size--card-body);
  font-weight: 600;
  white-space: nowrap;
  box-shadow: 0 8px 24px rgba(30, 30, 44, 0.18);
  transform: translate(-50%, -50%) scale(0.6);
  transition: transform 0.25s cubic-bezier(0.2, 0.8, 0.2, 1), background-color 0.2s ease, color 0.2s ease;
}
.cursor-pill.is-visible .cursor-pill__inner {
  transform: translate(-50%, -50%) scale(1);
}
.cursor-pill[data-tone=green] .cursor-pill__inner {
  background: var(--wp--preset--color--green);
  color: var(--wp--preset--color--ink);
}

.client-logos {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(max(220px, (100% - 48px) / 4), 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 520px) {
  .client-logos {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
}
.client-logos__tile {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  padding: 20%;
  border-radius: 10px;
  background: var(--wp--preset--color--slate);
}
.client-logos__img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 60%;
  filter: brightness(0) invert(1);
}
.client-logos--light .client-logos__tile {
  background: var(--wp--preset--color--mist);
}
.client-logos--light .client-logos__img {
  filter: none;
}

.team-grid {
  display: flex;
  flex-direction: column;
  gap: clamp(24px, 2.4vw, 36px);
}
.team-grid__row {
  display: grid;
  gap: clamp(24px, 2.4vw, 36px) 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.team-grid__row--lead {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
}
.team-grid__row--crew {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
}
@media (max-width: 520px) {
  .team-grid__row--crew {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 12px;
  }
}

.team-card {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}
.team-card__photo {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 10px;
  background: var(--wp--preset--color--slate);
}
.team-card__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.team-card__meta {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.team-card__text {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.team-card__role {
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  line-height: 1.2;
}
.team-card__name {
  margin: 0;
  font-size: var(--wp--preset--font-size--title);
  line-height: 1.05;
}
.team-grid__row--crew .team-card__name {
  font-size: clamp(22px, 2vw, 30px);
}
.team-card__more {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin: -6px -6px 0 0;
  padding: 0;
  border: 0;
  background: none;
  color: var(--wp--preset--color--white);
  cursor: pointer;
}
.team-card__more:hover, .team-card__more:focus-visible {
  color: var(--wp--preset--color--ink);
}
.team-card__more:hover .team-card__plus, .team-card__more:focus-visible .team-card__plus {
  background: var(--wp--preset--color--green);
  transform: rotate(90deg);
}
.team-card__plus {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--wp--preset--color--purple);
  transition: background-color 0.2s ease, transform 0.25s ease;
}

.bio-dialog {
  width: min(100% - 32px, 1040px);
  max-width: none;
  max-height: calc(100% - 32px);
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--wp--preset--color--ink);
  overflow: visible;
}
.bio-dialog::backdrop {
  background: rgba(30, 30, 44, 0.75);
}
.bio-dialog[open] {
  animation: ninedot-pop 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.bio-dialog__card {
  position: relative;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  max-height: calc(100vh - 32px);
  overflow-y: auto;
  border-radius: 10px;
  background: var(--wp--preset--color--white);
}
.bio-dialog__photo {
  aspect-ratio: 1;
  background: var(--wp--preset--color--sky);
}
.bio-dialog__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.bio-dialog__body {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: clamp(28px, 3.4vw, 48px);
}
.bio-dialog__head {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-right: 48px;
}
.bio-dialog__role {
  color: var(--wp--preset--color--purple);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
}
.bio-dialog__name {
  margin: 0;
  font-size: clamp(28px, 3vw, 45px);
}
.bio-dialog__bio p {
  margin: 0 0 12px;
  font-size: clamp(16px, 1.3vw, 19px);
  line-height: 1.4;
}
.bio-dialog__facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr));
  gap: 16px;
  margin: auto 0 0;
  padding-top: 20px;
  border-top: 1px solid var(--wp--preset--color--sky);
}
.bio-dialog__facts dt {
  font-size: 15px;
  font-weight: 600;
}
.bio-dialog__facts dd {
  margin: 4px 0 0;
  font-size: 16px;
  line-height: 1.35;
}
.bio-dialog__close {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  top: 16px;
  right: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 50%;
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--white);
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.bio-dialog__close:hover, .bio-dialog__close:focus-visible {
  background: var(--wp--preset--color--purple);
}

@keyframes ninedot-pop {
  from {
    opacity: 0;
    transform: translateY(12px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.dot-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 106px));
  gap: clamp(16px, 2.4vw, 36px);
  justify-self: center;
  margin-inline: auto;
}
.dot-grid__dot {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  border: 2px solid var(--wp--preset--color--purple);
  border-radius: 50%;
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--green);
  font-size: clamp(20px, 2vw, 30px);
  font-weight: 600;
}
.dot-grid__dot--you {
  border: 2px dashed var(--wp--preset--color--green);
  background: transparent;
}

.nine-dots {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr));
  gap: clamp(40px, 5vw, 80px);
  align-items: start;
}
.nine-dots__copy, .nine-dots__copy-inner {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
}
.nine-dots__copy > *, .nine-dots__copy-inner > * {
  margin-block: 0;
}
.nine-dots__copy p, .nine-dots__copy-inner p {
  max-width: 44ch;
  line-height: 1.3;
}
.nine-dots__copy strong, .nine-dots__copy-inner strong {
  font-weight: 600;
}
.nine-dots__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 8px !important;
}
.nine-dots__stage {
  position: relative;
  display: flex;
  justify-content: center;
  min-width: 0;
  padding-bottom: 72px;
}
.nine-dots__board {
  position: relative;
  width: 360px;
  max-width: 100%;
  aspect-ratio: 1;
  cursor: crosshair;
  touch-action: manipulation;
}
.nine-dots__board svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}
.nine-dots__board circle {
  fill: var(--wp--preset--color--purple);
  transition: fill 0.2s ease;
}
.nine-dots__board circle.is-hit {
  fill: var(--wp--preset--color--green);
}
.nine-dots__hit {
  position: absolute;
  top: -35%;
  left: -12%;
  right: -35%;
  bottom: -12%;
}
.nine-dots__lines {
  fill: none;
  stroke: var(--wp--preset--color--green);
  stroke-width: 1.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.nine-dots__ghost {
  fill: none;
  stroke: rgba(1, 255, 148, 0.45);
  stroke-width: 1.2;
  stroke-dasharray: 2 2;
  stroke-linecap: round;
}
.nine-dots__status {
  position: absolute;
  top: calc(100% + 24px);
  left: 0;
  right: 0;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  min-height: 48px;
  pointer-events: none;
  font-size: var(--wp--preset--font-size--small);
  line-height: 1.2;
  white-space: nowrap;
}
.nine-dots__msg {
  text-align: right;
}
.nine-dots__msg.is-solved {
  color: var(--wp--preset--color--green);
}

.ninedot-form {
  color: var(--wp--preset--color--ink);
}
.ninedot-form input:not([type=checkbox]):not([type=hidden]),
.ninedot-form select,
.ninedot-form textarea {
  width: 100%;
  height: 60px;
  padding: 0 24px;
  border: 1px solid var(--wp--preset--color--white);
  border-radius: 10px;
  background: var(--wp--preset--color--white);
  color: var(--wp--preset--color--ink);
  font-size: var(--wp--preset--font-size--body);
  line-height: 1.25;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.ninedot-form input:not([type=checkbox]):not([type=hidden])::-moz-placeholder, .ninedot-form select::-moz-placeholder, .ninedot-form textarea::-moz-placeholder {
  color: rgba(30, 30, 44, 0.68);
  opacity: 1;
}
.ninedot-form input:not([type=checkbox]):not([type=hidden])::placeholder,
.ninedot-form select::placeholder,
.ninedot-form textarea::placeholder {
  color: rgba(30, 30, 44, 0.68);
  opacity: 1;
}
.ninedot-form input:not([type=checkbox]):not([type=hidden]):focus, .ninedot-form input:not([type=checkbox]):not([type=hidden]):focus-visible,
.ninedot-form select:focus,
.ninedot-form select:focus-visible,
.ninedot-form textarea:focus,
.ninedot-form textarea:focus-visible {
  border-color: var(--wp--preset--color--purple);
  box-shadow: 0 0 0 1px var(--wp--preset--color--purple);
  outline: none;
}
.ninedot-form input:not([type=checkbox]):not([type=hidden])[aria-invalid],
.ninedot-form select[aria-invalid],
.ninedot-form textarea[aria-invalid] {
  border-color: #c4001d;
  box-shadow: 0 0 0 1px #c4001d;
}
.ninedot-form select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding-right: 56px;
  background: var(--wp--preset--color--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%231E1E2C' stroke-width='1.8'%3E%3Cpath d='M2 4l4 4 4-4'/%3E%3C/svg%3E") no-repeat right 24px center/12px;
  cursor: pointer;
}
.ninedot-form select:invalid, .ninedot-form select:has(option[value=""]:checked) {
  color: rgba(30, 30, 44, 0.68);
}
.ninedot-form select option {
  color: var(--wp--preset--color--ink);
}
.ninedot-form textarea {
  flex: 1;
  min-height: 136px;
  padding: 18px 24px;
  resize: vertical;
}
.ninedot-form .nf-form {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.ninedot-form .nf-field {
  display: flex;
  flex-direction: column;
}
.ninedot-form .nf-field--message {
  flex: 1;
}
.ninedot-form .nf-optin {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 44px;
  font-size: clamp(15px, 1.3vw, 20px);
  line-height: 1.2;
  cursor: pointer;
}
.ninedot-form .nf-optin input {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.ninedot-form .nf-optin__dot {
  position: relative;
  flex: none;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--wp--preset--color--white);
}
.ninedot-form .nf-optin__dot::after {
  content: "";
  position: absolute;
  inset: 6px;
  border-radius: 50%;
  background: var(--wp--preset--color--purple);
  transform: scale(0);
  transition: transform 0.2s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.ninedot-form .nf-optin input:checked + .nf-optin__dot::after {
  transform: scale(1);
}
.ninedot-form .nf-optin input:focus-visible + .nf-optin__dot {
  outline: 2px solid var(--wp--preset--color--purple);
  outline-offset: 3px;
}
.ninedot-form .nf-required {
  font-size: clamp(15px, 1.3vw, 20px);
}
.ninedot-form .nf-meta, .ninedot-form .nf-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.ninedot-form .nf-actions--end {
  justify-content: flex-end;
}
.ninedot-form .nf-submit[disabled] {
  opacity: 0.6;
  cursor: progress;
}
.ninedot-form .nf-error {
  margin: 0;
  color: #b00020;
  font-size: 16px;
  font-weight: 600;
}
.ninedot-form .nf-success {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  padding: clamp(24px, 3vw, 40px);
  border-radius: 10px;
  background: var(--wp--preset--color--purple);
  color: var(--wp--preset--color--white);
  outline: none;
}
.ninedot-form .nf-success[hidden] {
  display: none;
}
.ninedot-form .nf-success .ninedot-pill--dark:hover, .ninedot-form .nf-success .ninedot-pill--dark:focus-visible {
  background: var(--wp--preset--color--green);
  color: var(--wp--preset--color--ink);
}
.ninedot-form .nf-success__text {
  font-size: clamp(26px, 2.4vw, 35px);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -0.02em;
}
.ninedot-form .ninedot-hp {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.ninedot-form--journey {
  padding: clamp(28px, 4.4vw, 64px);
  border-radius: 10px;
  background: var(--wp--preset--color--mist);
}
.ninedot-form--journey .ninedot-form__title {
  margin: 0 0 clamp(28px, 3.4vw, 48px);
  font-size: var(--wp--preset--font-size--heading-lg);
  max-width: 12ch;
}
.ninedot-form--journey .nf-columns {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 16px 24px;
}
.ninedot-form--journey .nf-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.ninedot-form--contact .nf-form {
  gap: 20px;
}
.ninedot-form--contact input:not([type=checkbox]):not([type=hidden]), .ninedot-form--contact select {
  height: 68px;
}
.ninedot-form--contact textarea {
  min-height: 160px;
  padding: 20px 24px;
}
.ninedot-form--contact .nf-optin {
  gap: 16px;
  margin-top: 8px;
}
.ninedot-form--contact .nf-optin__dot {
  width: 26px;
  height: 26px;
}
.ninedot-form--contact .nf-optin__dot::after {
  inset: 7px;
}
.ninedot-form--contact .nf-actions {
  margin-top: 16px;
}
.ninedot-form--contact .nf-submit {
  padding-inline: 44px;
}
.ninedot-form--contact .nf-success .nf-success__text {
  max-width: 22ch;
}

.ninedot-form--newsletter {
  width: 100%;
}
.ninedot-form--newsletter .nf-form {
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 16px clamp(16px, 2vw, 32px);
  width: min(100%, 820px);
  margin: 24px auto 0;
}
.ninedot-form--newsletter .nf-field {
  flex: 1;
  min-width: min(100%, 280px);
}
.ninedot-form--newsletter .nf-error {
  flex-basis: 100%;
  text-align: center;
}
.ninedot-form--newsletter .nf-success--inline {
  display: block;
  margin: 24px 0 0;
  padding: 0;
  background: none;
  color: var(--wp--preset--color--purple);
  font-size: clamp(22px, 2vw, 30px);
  font-weight: 600;
  line-height: 1.05;
  text-align: center;
}

.accordion {
  counter-reset: accordion;
}
.accordion > * {
  margin-block: 0;
}
.accordion .wp-block-details {
  counter-increment: accordion;
  margin: 0 !important;
  border-bottom: 1.5px solid var(--wp--preset--color--ink);
}
.accordion .wp-block-details > summary {
  display: flex;
  align-items: center;
  gap: 24px;
  min-height: 60px;
  padding: 18px 0;
  font-size: var(--wp--preset--font-size--list);
  font-weight: 600;
  line-height: 1.15;
  list-style: none;
  cursor: pointer;
  transition: color 0.2s ease;
}
.accordion .wp-block-details > summary::-webkit-details-marker {
  display: none;
}
.accordion .wp-block-details > summary::before {
  content: counter(accordion, decimal-leading-zero);
  flex: none;
  min-width: 28px;
  font-size: var(--wp--preset--font-size--card-body);
}
.accordion .wp-block-details > summary::after {
  content: "";
  flex: none;
  width: 18px;
  height: 18px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='2.2'%3E%3Cpath d='M3 3l9.5 9.5M13 5v8H5'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='2.2'%3E%3Cpath d='M3 3l9.5 9.5M13 5v8H5'/%3E%3C/svg%3E") center/contain no-repeat;
}
.accordion .wp-block-details > summary::after {
  margin-left: auto;
  transition: transform 0.3s ease;
}
.accordion .wp-block-details > summary:hover, .accordion .wp-block-details > summary:focus-visible {
  color: var(--wp--preset--color--purple);
}
.accordion .wp-block-details[open] > summary {
  color: var(--wp--preset--color--purple);
}
.accordion .wp-block-details[open] > summary::after {
  transform: rotate(-90deg);
}
.accordion .wp-block-details > :not(summary) {
  margin: 0;
  padding: 0 0 22px 52px;
  max-width: calc(52ch + 52px);
  font-size: var(--wp--preset--font-size--body);
  line-height: 1.3;
}

.cs-hero {
  position: relative;
  height: clamp(420px, 46vw, 760px);
  margin-block: 0 !important;
  overflow: hidden;
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--white);
}
.cs-hero__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.cs-hero__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(30, 30, 44, 0.6) 0%, rgba(30, 30, 44, 0) 55%);
}
.cs-hero__text {
  width: 100%;
  max-width: 1566px;
  margin-inline: auto;
  padding-inline: var(--wp--preset--spacing--gutter);
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-top: clamp(32px, 4vw, 64px);
}
.cs-hero__eyebrow {
  font-size: var(--wp--preset--font-size--body);
  font-weight: 600;
}
.cs-hero__title {
  margin: 0;
  color: var(--wp--preset--color--white);
  font-size: clamp(44px, 6vw, 96px);
  max-width: 13ch;
}

.cs-services {
  margin: clamp(20px, 2vw, 28px) 0 0 !important;
  padding-bottom: clamp(20px, 2vw, 28px);
  border-bottom: 1.5px solid var(--wp--preset--color--ink);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  text-wrap: balance;
}

.cs-text h2 {
  font-size: var(--wp--preset--font-size--heading-md);
}
.cs-text p {
  max-width: 52ch;
  line-height: 1.3;
}

.cs-text .cs-copy.cs-copy {
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.cs-text .cs-copy.cs-copy > * {
  margin-block: 0;
}

.cs-media.cs-media {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  align-items: start;
  gap: 12px;
}
.cs-media.cs-media > * {
  margin-block: 0;
}
.cs-media.cs-media > .wp-block-image,
.cs-media.cs-media > .wp-block-video {
  margin: 0;
  overflow: hidden;
  background: var(--wp--preset--color--mist);
}
.cs-media.cs-media img, .cs-media.cs-media video {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0 !important;
}
.cs-media.cs-media.is-style-media-square, .cs-media.cs-media.is-style-media-4-3, .cs-media.cs-media.is-style-media-wide {
  align-items: stretch;
}
.cs-media.cs-media.is-style-media-square img, .cs-media.cs-media.is-style-media-square video, .cs-media.cs-media.is-style-media-4-3 img, .cs-media.cs-media.is-style-media-4-3 video, .cs-media.cs-media.is-style-media-wide img, .cs-media.cs-media.is-style-media-wide video {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.cs-media.cs-media.is-style-media-square > * {
  aspect-ratio: 1;
}
.cs-media.cs-media.is-style-media-4-3 > * {
  aspect-ratio: 4/3;
}
.cs-media.cs-media.is-style-media-wide > * {
  aspect-ratio: 16/7.5;
}
@media (max-width: 700px) {
  .cs-media.cs-media {
    grid-auto-flow: row;
    grid-template-columns: minmax(0, 1fr);
  }
  .cs-media.cs-media:has(> :nth-child(4)) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.cs-statement.cs-statement {
  padding: clamp(32px, 4.4vw, 64px) clamp(24px, 4.4vw, 64px);
  background: var(--wp--preset--color--mist);
}
.cs-statement.cs-statement > * {
  margin-block: 0;
}
.cs-statement.cs-statement p {
  max-width: 46ch;
  font-size: clamp(22px, 2.2vw, 32px);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.01em;
}

.wp-block-post-content > .cs-section.cs-section {
  padding-block: 0 !important;
  margin-top: var(--wp--preset--spacing--50) !important;
}
.wp-block-post-content > .cs-section.cs-section.is-media {
  padding-bottom: 12px !important;
}
.wp-block-post-content > .cs-section.cs-section.is-media + .is-media {
  margin-top: 0 !important;
}
.wp-block-post-content > .cs-section.cs-section.is-media + :not(.is-media) {
  margin-top: calc(var(--wp--preset--spacing--70) - 12px) !important;
}
.wp-block-post-content > .cs-section.cs-section:last-child {
  padding-bottom: var(--wp--preset--spacing--70) !important;
}

.wp-block-post-content > .cs-services + .cs-section.cs-section {
  margin-top: var(--wp--preset--spacing--70) !important;
}

.cs-rule.cs-rule {
  margin-top: var(--wp--preset--spacing--70) !important;
}

.cs-similar h2 {
  font-size: var(--wp--preset--font-size--heading-md);
}

.article-head.article-head > * {
  margin-block: 0;
}
.article-head.article-head > * + * {
  margin-top: clamp(18px, 3vh, 28px) !important;
}
.article-head.article-head h1 {
  font-size: clamp(32px, 5.2vw, 58px);
  line-height: 1.06;
}

.article-crumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  font-size: 13px;
}
.article-crumbs a {
  color: rgba(30, 30, 44, 0.62);
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.article-crumbs a:hover, .article-crumbs a:focus-visible {
  color: var(--wp--preset--color--purple);
}
.article-crumbs__dot {
  flex: none;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--wp--preset--color--purple);
}
.article-crumbs__sep {
  color: rgba(30, 30, 44, 0.4);
}
.article-crumbs a.article-crumbs__current {
  color: var(--wp--preset--color--purple);
}

.post-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  padding-top: 18px;
  border-top: 1px solid rgba(30, 30, 44, 0.12);
  color: rgba(30, 30, 44, 0.66);
  font-size: 13px;
}
.post-meta__author {
  color: var(--wp--preset--color--ink);
  font-size: 14px;
  font-weight: 600;
}
.post-meta__sep {
  color: rgba(30, 30, 44, 0.4);
}

.article-hero-image.article-hero-image {
  margin: 0 auto;
}
.article-hero-image.article-hero-image img {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 10px;
}

.article-body.article-body > * {
  margin-block: 0 22px !important;
}
.article-body.article-body > p, .article-body.article-body > ul, .article-body.article-body > ol, .article-body.article-body li {
  font-size: clamp(17px, 1.15vw, 19px);
  line-height: 1.7;
  color: rgba(30, 30, 44, 0.8);
}
.article-body.article-body > h2 {
  margin-block: 44px 16px !important;
  font-size: clamp(24px, 2.2vw, 32px);
  line-height: 1.2;
}
.article-body.article-body > h3 {
  margin-block: 32px 12px !important;
  font-size: clamp(19px, 1.6vw, 23px);
  line-height: 1.25;
  letter-spacing: -0.01em;
}
.article-body.article-body > ul, .article-body.article-body > ol {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-left: 22px;
}
.article-body.article-body li {
  line-height: 1.6;
}
.article-body.article-body strong {
  color: var(--wp--preset--color--ink);
  font-weight: 600;
}
.article-body.article-body a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.article-body.article-body > .wp-block-image {
  margin-block: clamp(32px, 5vh, 56px) clamp(48px, 7vh, 90px) !important;
}
.article-body.article-body > .wp-block-image img {
  display: block;
  width: 100%;
  border-radius: 10px;
}
.article-body.article-body > .wp-block-quote {
  margin-block: 32px !important;
  padding-left: 24px;
  border-left: 3px solid var(--wp--preset--color--purple);
  font-size: clamp(20px, 1.6vw, 24px);
  font-weight: 600;
  line-height: 1.3;
}

.author-card {
  display: flex;
  align-items: center;
  gap: 16px;
}
.author-card__avatar {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--white);
  font-size: 16px;
  font-weight: 600;
}
.author-card__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.author-card__name {
  font-size: 15px;
  font-weight: 600;
}
.author-card__role {
  color: rgba(30, 30, 44, 0.66);
  font-size: 13px;
}

.more-insights h2 {
  font-size: clamp(36px, 5.6vw, 88px);
  line-height: 0.9;
}

.cta-center h2 {
  font-size: clamp(36px, 6vw, 80px);
  line-height: 1.02;
}

.cta-center p {
  color: rgba(30, 30, 44, 0.72);
  line-height: 1.5;
}

.prose > * {
  margin-block: 0 1em;
}
.prose > h2 {
  margin-top: 1.6em;
  font-size: clamp(28px, 3vw, 40px);
}
.prose > h3 {
  margin-top: 1.4em;
  font-size: clamp(22px, 2vw, 28px);
}
.prose p, .prose li {
  line-height: 1.5;
}
.prose a {
  text-decoration: underline;
}

.article-body.article-body > h4 {
  margin-block: 28px 10px !important;
  font-size: clamp(17px, 1.3vw, 20px);
  line-height: 1.3;
  letter-spacing: 0;
}

body.is-canvas-mist {
  background: var(--wp--preset--color--mist);
}

.contact-details {
  display: flex;
  flex-direction: column;
  gap: clamp(32px, 3vw, 48px);
  min-width: 0;
}
.contact-details__lines {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.contact-details__lines a {
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  color: var(--wp--preset--color--ink);
  font-size: clamp(22px, 2vw, 30px);
  font-weight: 600;
  line-height: 1.1;
  text-decoration: underline;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
}
.contact-details__lines a:hover, .contact-details__lines a:focus-visible {
  color: var(--wp--preset--color--purple);
}
.contact-details__address {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.contact-details__address p {
  line-height: 1.3;
}
.contact-details__heading {
  margin: 0;
  font-size: clamp(26px, 2.4vw, 35px);
}
.contact-details__map {
  aspect-ratio: 600/450;
  overflow: hidden;
  border-radius: 10px;
  background: var(--wp--preset--color--sky);
}
.contact-details__map iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  filter: grayscale(1);
}

.statement-cta p {
  font-size: var(--wp--preset--font-size--subheading);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -0.02em;
  text-wrap: balance;
}

.career-list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1.5px solid var(--wp--preset--color--ink);
}
.career-list__row {
  display: grid;
  grid-template-columns: 1fr auto 18px;
  align-items: center;
  gap: 12px 32px;
  min-height: 60px;
  padding: clamp(20px, 2vw, 28px) 0;
  border-bottom: 1.5px solid var(--wp--preset--color--ink);
  color: var(--wp--preset--color--ink);
  transition: color 0.2s ease;
}
.career-list__row:hover, .career-list__row:focus-visible {
  color: var(--wp--preset--color--purple);
}
@media (max-width: 700px) {
  .career-list__row {
    grid-template-columns: 1fr 18px;
  }
  .career-list__row .career-list__meta {
    grid-column: 1;
    grid-row: 2;
  }
}
.career-list__title {
  font-size: clamp(22px, 2vw, 30px);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.02em;
}
.career-list__meta {
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
}
.career-list--empty {
  padding: clamp(28px, 3vw, 40px);
  border: 0;
  border-radius: 10px;
  background: var(--wp--preset--color--mist);
}
.career-list--empty p {
  max-width: 52ch;
}

.career-details {
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  line-height: 1.4;
}

.apply-card.apply-card {
  position: sticky;
  top: 120px;
  padding: clamp(24px, 3vw, 40px);
  border-radius: 10px;
  background: var(--wp--preset--color--mist);
}

.has-video-toggle {
  position: relative;
}

.video-toggle {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 50%;
  background: rgba(30, 30, 44, 0.55);
  color: var(--wp--preset--color--white);
  cursor: pointer;
  opacity: 0.75;
  transition: opacity 0.2s ease, background-color 0.2s ease;
}
.video-toggle:hover, .video-toggle:focus-visible {
  opacity: 1;
  background: var(--wp--preset--color--purple);
}
.video-toggle .video-toggle__play {
  display: none;
}
.video-toggle.is-paused .video-toggle__play {
  display: block;
}
.video-toggle.is-paused .video-toggle__pause {
  display: none;
}

.not-found .dot-grid {
  margin: 0;
}

.contact-split.contact-split {
  gap: clamp(40px, 5vw, 72px);
}

.team-section .could-be-you {
  margin-top: clamp(36px, 5.6vw, 92px) !important;
}

.career-split.career-split {
  align-items: start;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr));
}

@media (min-width: 1000px) {
  .career-split.career-split {
    grid-template-columns: minmax(0, 2fr) minmax(320px, 1fr);
  }
}
.has-click-play {
  position: relative;
}

.has-click-play video {
  cursor: pointer;
}

.video-play {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border: 0;
  background: rgba(30, 30, 44, 0.08);
  color: var(--wp--preset--color--white);
  cursor: pointer;
  transition: background-color 0.25s ease;
}
.video-play__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(64px, 6vw, 88px);
  height: clamp(64px, 6vw, 88px);
  padding-left: 4px;
  border-radius: 50%;
  background: var(--wp--preset--color--purple);
  box-shadow: 0 8px 24px rgba(30, 30, 44, 0.18);
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.video-play:hover, .video-play:focus-visible {
  background: rgba(30, 30, 44, 0.18);
}
.video-play:hover .video-play__icon, .video-play:focus-visible .video-play__icon {
  background: var(--wp--preset--color--green);
  color: var(--wp--preset--color--ink);
  transform: scale(1.08);
}
.video-play:focus-visible {
  outline: none;
}
.video-play:focus-visible .video-play__icon {
  outline: 2px solid var(--wp--preset--color--white);
  outline-offset: 4px;
}
.is-playing > .video-play {
  display: none;
}

.faq-list.faq-list > * {
  margin-block: 0;
}
.faq-list.faq-list {
  border-bottom: 1.5px solid var(--wp--preset--color--ink);
}

.faq-group.faq-group {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px clamp(32px, 6vw, 96px);
  padding-block: clamp(20px, 2.2vw, 32px);
  border-top: 1.5px solid var(--wp--preset--color--ink);
}
.faq-group.faq-group > * {
  margin-block: 0;
}
@media (min-width: 900px) {
  .faq-group.faq-group {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2.4fr);
  }
}

.faq-group__title.faq-group__title {
  align-self: start;
  padding-top: 14px;
  color: var(--wp--preset--color--purple);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0;
}
@media (min-width: 900px) {
  .faq-group__title.faq-group__title {
    position: sticky;
    top: 120px;
  }
}

.faq-group__items.faq-group__items > * {
  margin-block: 0;
}
.faq-group__items.faq-group__items .wp-block-details {
  margin: 0 !important;
}
.faq-group__items.faq-group__items .wp-block-details + .wp-block-details {
  border-top: 1px solid rgba(30, 30, 44, 0.15);
}
.faq-group__items.faq-group__items .wp-block-details > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 60px;
  padding: 12px 0;
  font-size: var(--wp--preset--font-size--list);
  font-weight: 600;
  line-height: 1.2;
  list-style: none;
  cursor: pointer;
  transition: color 0.2s ease;
}
.faq-group__items.faq-group__items .wp-block-details > summary::-webkit-details-marker {
  display: none;
}
.faq-group__items.faq-group__items .wp-block-details > summary::after {
  content: "";
  flex: none;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: linear-gradient(var(--wp--preset--color--white), var(--wp--preset--color--white)) center/12px 2px no-repeat, linear-gradient(var(--wp--preset--color--white), var(--wp--preset--color--white)) center/2px 12px no-repeat, var(--wp--preset--color--purple);
  transition: transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1), background-color 0.2s ease;
}
.faq-group__items.faq-group__items .wp-block-details > summary:hover, .faq-group__items.faq-group__items .wp-block-details > summary:focus-visible {
  color: var(--wp--preset--color--purple);
}
.faq-group__items.faq-group__items .wp-block-details > summary:hover::after, .faq-group__items.faq-group__items .wp-block-details > summary:focus-visible::after {
  background: linear-gradient(var(--wp--preset--color--ink), var(--wp--preset--color--ink)) center/12px 2px no-repeat, linear-gradient(var(--wp--preset--color--ink), var(--wp--preset--color--ink)) center/2px 12px no-repeat, var(--wp--preset--color--green);
}
.faq-group__items.faq-group__items .wp-block-details[open] > summary {
  color: var(--wp--preset--color--purple);
}
.faq-group__items.faq-group__items .wp-block-details[open] > summary::after {
  transform: rotate(45deg);
}
.faq-group__items.faq-group__items .wp-block-details > :not(summary) {
  max-width: 62ch;
  margin: 0 0 16px !important;
  padding-right: 52px;
  line-height: 1.4;
}
.faq-group__items.faq-group__items .wp-block-details > :not(summary):last-child {
  margin-bottom: 24px !important;
}
.faq-group__items.faq-group__items .wp-block-details a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.faq-cta .ninedot-form--journey {
  margin-top: 0;
}