/* ---- EventScheduleModal ---- */
.calendar__calendar {
  background: var(--color-surface-warm-dark);
  border-radius: var(--radius-xl);
  padding: 1.5rem;
  color: var(--color-on-dark);
  max-inline-size: 384px;
  display: flex;
  flex-direction: column;
}
.calendar__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-block-end: 1.25rem;
}
.calendar__month-label {
  font-size: var(--font-size-body);
  font-weight: 600;
  word-spacing: 0.5rem;
}
.calendar__nav-btn {
  background: none;
  border: none;
  color: var(--color-on-dark);
  cursor: pointer;
  padding: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.calendar__day-names {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  text-align: center;
  margin-block-end: 0.5rem;
}
.calendar__day-name {
  font-size: var(--font-size-caption);
  font-weight: 500;
  color: var(--color-on-dark);
  padding-block: 0.25rem;
}
.calendar__grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 0.25rem;
  flex: 1;
}
.calendar__cell {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--font-size-body-sm);
  border: none;
  background: none;
  color: var(--white-80);
  cursor: pointer;
  border-radius: var(--radius-lg);
  transition: background-color 0.15s;
  inline-size: 2.25rem;
  block-size: 2.25rem;
  margin-inline: auto;
}
.calendar__cell:hover:not(.calendar__cell-outside) {
  background: var(--white-10);
}
.calendar__cell-outside {
  color: var(--white-50);
  cursor: default;
}
.calendar__cell-today,
.calendar__cell-event {
  background: var(--color-primary);
  color: var(--color-on-dark);
  font-weight: 700;
}
.calendar__cell-selected {
  outline: 2px solid var(--color-on-dark);
  outline-offset: -2px;
}
.calendar__preview {
  margin-block-start: auto;
  background: var(--color-background);
  border-radius: var(--radius-2xl);
  padding: 1rem 1.25rem;
  color: var(--color-surface-dark);
}
.calendar__preview-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-block-end: 1rem;
}
.calendar__preview-tag {
  display: inline-block;
  padding: 0.2rem 0.75rem;
  border-radius: var(--radius-4xl);
  color: var(--color-on-dark);
  font-size: var(--font-size-caption);
  font-weight: 600;
  background: var(--color-primary);
}
.calendar__preview-date {
  font-size: var(--font-size-body-sm);
  color: var(--color-surface-black);
}
.calendar__preview-title {
  font-size: var(--font-size-body-sm);
  font-weight: 600;
  color: var(--color-surface-dark);
  margin: 0;
  line-height: 1.4;
}
.calendar__preview-title-value {
  font-weight: 400;
}
.calendar-event-layout[data-c-calendar-event-layout] {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  align-items: start;
}
@media (min-width: 900px) {
  .calendar-event-layout[data-c-calendar-event-layout] {
    grid-template-columns: 384px 1fr;
  }
}
.calendar-event-layout-calendar[data-c-calendar-event-layout] {
  align-self: start;
}
.event-modal__overlay {
  position: fixed;
  inset: 0;
  z-index: 50;
  background: #0009;
}
.event-modal__dialog {
  position: fixed;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  transform: translate(-50%, -50%);
  z-index: 50;
  inline-size: calc(100% - 2rem);
  max-inline-size: 672px;
  max-block-size: 90vh;
  overflow-y: auto;
  padding: 2.5rem;
  background: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 16px;
  border-block-start: 3px solid var(--color-primary);
  box-shadow: 0 24px 64px #00000073;
}
@media (min-width: 640px) {
  .event-modal__dialog {
    padding: 3rem;
  }
}
.event-modal__close-button {
  position: absolute;
  inset-block-start: 1.5rem;
  inset-inline-end: 1.5rem;
  display: inline-flex;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark);
  cursor: pointer;
  opacity: 0.85;
  transition: opacity 0.15s;
}
.event-modal__close-button:hover {
  opacity: 1;
}
.event-modal__eyebrow {
  display: block;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-primary);
}
.event-modal__title {
  margin: 0.5rem 0 0;
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 700;
  line-height: 1.1;
  color: var(--color-on-dark);
}
.event-modal__subtitle {
  margin: 0.5rem 0 0;
  font-size: var(--font-size-sub);
  color: var(--color-on-dark);
}
.event-modal__form {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-block-start: 2rem;
}
.event-modal__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 640px) {
  .event-modal__grid {
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem 1.5rem;
  }
}
.event-modal__field {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.event-modal__label {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--color-on-dark);
}
.event-modal__input,
.event-modal__select {
  inline-size: 100%;
  padding: 0.875rem 1rem;
  background: var(--color-surface-light);
  border: 1px solid var(--color-on-dark);
  border-radius: 8px;
  color: var(--color-surface-dark);
  font-size: var(--font-size-body);
  font-family: inherit;
  outline: none;
  transition: border-color 0.15s;
}
.event-modal__input::placeholder {
  color: var(--color-muted-foreground);
}
.event-modal__input:focus,
.event-modal__select:focus {
  border-color: var(--color-primary);
}
.event-modal__textarea {
  resize: vertical;
  line-height: 1.6;
  min-block-size: 7rem;
}
.event-modal__select-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.event-modal__select {
  appearance: none;
  padding-inline-end: 2.75rem;
  cursor: pointer;
}
.event-modal__select:has(option[value=""]:checked) {
  color: var(--color-muted-foreground);
}
.event-modal__select-icon {
  position: absolute;
  inset-inline-end: 1rem;
  color: var(--color-surface-dark);
  pointer-events: none;
}
.event-modal__submit-btn {
  align-self: flex-start;
  margin-block-start: 0.5rem;
  border-radius: var(--radius-full);
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  font-family: inherit;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: none;
  cursor: pointer;
  transition: background-color 0.15s;
}
.event-modal__submit-btn:hover {
  background-color: var(--color-primary-hover);
}
.event-modal__field-error {
  margin: 0;
  font-size: var(--font-size-body-sm);
  color: var(--color-primary);
}
.event-modal__success {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  margin-block-start: 2rem;
  padding-block: 2rem;
  text-align: center;
}
.event-modal__success-text {
  margin: 0;
  font-size: var(--font-size-sub);
  color: var(--color-on-dark);
}

/* ---- about ---- */
.about-hero-bg[data-c-about-hero-content-wrap] {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.about-hero-bg-img[data-c-about-hero-content-wrap] {
  --hero-bg-opacity: 0.7;
  --hero-bg-blur: 1.5px;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1) blur(var(--hero-bg-blur));
  opacity: var(--hero-bg-opacity);
}
.about-hero-overlay[data-c-about-hero-content-wrap] {
  position: absolute;
  inset: 0;
  background-color: var(--overlay-dark);
}
.about-hero-letters-scaler[data-c-about-hero-content-wrap] {
  position: absolute;
  inset-block-end: 0;
  inset-inline: 0;
  block-size: 0;
  z-index: 0;
  pointer-events: none;
  color: var(--color-on-dark);
  opacity: 0.4;
  filter: blur(1.5px);
  container-type: inline-size;
}
.about-hero-letters-wrap[data-c-about-hero-content-wrap] {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 1440 / 518;
  overflow: visible;
}
.about-hero-content-wrap[data-c-about-hero-content-wrap] {
  position: relative;
  z-index: 2;
}
.about-hero-content-wrap[data-c-about-hero-content-wrap] .about-hero-text {
  position: relative;
  z-index: 1;
  margin-block-end: 0;
}
.about-hero-content-wrap[data-c-about-hero-content-wrap]
  .about-hero-text
  .section-intro-heading {
  margin-block-end: 2rem;
}
.about-hero-body[data-c-about-hero-content-wrap] {
  max-inline-size: 1008px;
  margin-block-end: 7rem;
}
.about-hero-body[data-c-about-hero-content-wrap]
  p[data-c-about-hero-content-wrap] {
  font-size: var(--font-size-sub);
  font-weight: 400;
  line-height: 1.3;
  color: var(--color-on-dark);
  margin: 0 0 1.5rem;
}
.about-hero-body[data-c-about-hero-content-wrap]
  p[data-c-about-hero-content-wrap]:last-child {
  margin-block-end: 0;
}
.mission-vision[data-c-about-hero-content-wrap] {
  position: relative;
  z-index: 1;
  margin-block-end: 4.5rem;
}
.mv-card[data-c-about-hero-content-wrap] {
  --mv-card-border-color: var(--white-20);
  --mv-card-bg: var(--white-6);
  --mv-card-blur: 5px;
  --mv-card-radius: 1rem;
  --mv-card-padding: 2.5rem 1.5rem;
  --mv-card-max-width: 100%;
  --mv-card-min-height: 233px;
  --mv-card-text-color: var(--color-on-dark);
  border: 1px solid var(--mv-card-border-color);
  border-radius: var(--mv-card-radius);
  padding: var(--mv-card-padding);
  background-color: var(--mv-card-bg);
  backdrop-filter: blur(var(--mv-card-blur));
  -webkit-backdrop-filter: blur(var(--mv-card-blur));
  text-align: center;
  max-inline-size: var(--mv-card-max-width);
  min-block-size: var(--mv-card-min-height);
  display: flex;
  align-items: center;
  --color-on-dark-muted: var(--mv-card-text-color);
}
.mv-card[data-c-about-hero-content-wrap] .text-block-body p {
  font-weight: 400;
}
.skewed-card[data-c-skewed-card] {
  display: grid;
  grid-template-columns: 1fr;
  background-color: var(--color-background);
  border-radius: 0.75rem;
  overflow: hidden;
  box-shadow: var(--shadow-card);
  transform: skew(var(--skew-angle));
  margin-inline: 1rem;
}
@media (min-width: 768px) {
  .skewed-card[data-c-skewed-card] {
    grid-template-columns: 1fr 1fr;
    transform: skew(var(--skew-angle-desktop));
    margin-inline: 1.9rem;
  }
}
.skewed-card-start[data-c-skewed-card] {
  padding: 1.25rem;
  display: flex;
  align-items: center;
  transform: skew(calc(var(--skew-angle) * -1));
}
@media (min-width: 768px) {
  .skewed-card-start[data-c-skewed-card] {
    padding: 2.5rem 4rem;
    transform: skew(calc(var(--skew-angle-desktop) * -1));
  }
}
.skewed-card-end[data-c-skewed-card] {
  position: relative;
  min-block-size: 200px;
  padding: 1rem 0;
}
@media (min-width: 768px) {
  .skewed-card-end[data-c-skewed-card] {
    padding: 0;
    padding-inline-end: 1.5rem;
    min-block-size: unset;
  }
}
.numbers-stats-row[data-c-numbers-stats-row] {
  margin-block-end: 1.5rem;
}
.numbers-stats-row[data-c-numbers-stats-row] .responsive-grid {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 768px) {
  .numbers-stats-row[data-c-numbers-stats-row] .responsive-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.numbers-bottom-card[data-c-numbers-stats-row] {
  block-size: auto;
}
@media (min-width: 768px) {
  .numbers-bottom-card[data-c-numbers-stats-row] {
    block-size: 265px;
  }
  .numbers-bottom-card[data-c-numbers-stats-row] > * {
    block-size: 100%;
  }
}
.numbers-description[data-c-numbers-stats-row] {
  --numbers-desc-font: var(--font-display);
  --numbers-desc-size: clamp(1rem, 0.7rem + 1.5vw, 1.5rem);
  --numbers-desc-weight: 600;
  --numbers-desc-line-height: 1.3;
  --numbers-desc-color: var(--color-foreground);
  --numbers-desc-max-width: 384px;
  font-family: var(--numbers-desc-font);
  font-size: var(--numbers-desc-size);
  font-weight: var(--numbers-desc-weight);
  line-height: var(--numbers-desc-line-height);
  letter-spacing: 0;
  color: var(--numbers-desc-color);
  margin: 0;
  max-inline-size: 100%;
}
.bottom-image[data-c-numbers-stats-row] {
  position: relative;
  block-size: 100%;
}
.bottom-image-inner[data-c-numbers-stats-row] {
  position: relative;
  border-radius: 0.75rem;
  overflow: hidden;
  box-shadow: var(--shadow-card);
  block-size: 100%;
}
.numbers-image[data-c-numbers-stats-row] {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
@media (min-width: 768px) {
  .numbers-image[data-c-numbers-stats-row] {
    position: absolute;
    inset: 0;
  }
}
.featured-tech-wrap[data-c-featured-tech-wrap] {
  --color-surface-dark: var(--color-surface-black);
  --color-muted-foreground: var(--color-surface-black);
}
.featured-tech-wrap[data-c-featured-tech-wrap] .responsive-grid {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 768px) {
  .featured-tech-wrap[data-c-featured-tech-wrap] .responsive-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.featured-tech-wrap[data-c-featured-tech-wrap]
  .section-intro--light
  .section-intro-body {
  font-weight: 500;
}
.tech-card[data-c-featured-tech-wrap] {
  --tech-card-bg: var(--color-background);
  --tech-card-radius: 0.75rem;
  --tech-card-padding: clamp(1.25rem, 2.5vw, 2rem) clamp(0.75rem, 2vw, 1.5rem);
  --tech-card-shadow: var(--shadow-card);
  --tech-card-shadow-hover: var(--shadow-overlay);
  position: relative;
  background-color: var(--tech-card-bg);
  border-radius: var(--tech-card-radius);
  padding: var(--tech-card-padding);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  gap: 1rem;
  inline-size: 100%;
  transition: box-shadow 0.2s;
  box-shadow: var(--tech-card-shadow);
  cursor: pointer;
}
.tech-card[data-c-featured-tech-wrap] .arrow-link:after {
  content: "";
  position: absolute;
  inset: 0;
}
.tech-card[data-c-featured-tech-wrap]:hover {
  box-shadow: var(--tech-card-shadow-hover);
}
.tech-logo-wrap[data-c-featured-tech-wrap] {
  display: flex;
  align-items: center;
  justify-content: center;
  block-size: clamp(50px, 10vw, 70px);
  inline-size: clamp(50px, 10vw, 70px);
}
.tech-logo-img[data-c-featured-tech-wrap] {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: contain;
  border-radius: 0.75rem;
}
.tech-name[data-c-featured-tech-wrap] {
  font-family: var(--font-display);
  font-size: clamp(0.875rem, 2.5vw, var(--font-size-lead));
  font-weight: 700;
  margin: 0;
  text-align: center;
}
.office-carousel__root {
  position: relative;
}
.office-carousel__nav-group {
  display: flex;
  gap: 1.25rem;
}
.office-carousel__nav-group-top-right {
  position: static;
  justify-content: center;
  margin-block-end: 1.5rem;
}
@media (min-width: 768px) {
  .office-carousel__nav-group-top-right {
    position: absolute;
    inset-block-start: -11rem;
    inset-inline-end: 0;
    margin-block-end: 0;
  }
}
.office-carousel__wrapper {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.office-carousel__wrapper-full {
  display: block;
}
.office-carousel__viewport {
  overflow: hidden;
  flex: 1;
}
.office-carousel__track {
  display: flex;
  gap: 1.5rem;
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.office-carousel__card {
  position: relative;
  flex-shrink: 0;
  inline-size: calc(100vw - 3rem);
  block-size: 380px;
  border-radius: 0.75rem;
  cursor: pointer;
  transition: filter 0.4s ease;
  margin-block-start: 1.25rem;
}
@media (min-width: 768px) {
  .office-carousel__card {
    inline-size: 384px;
    block-size: 517px;
  }
}
.office-carousel__card-inner {
  position: relative;
  inline-size: 100%;
  block-size: 100%;
  border-radius: 0.75rem;
  overflow: hidden;
}
.office-carousel__card img {
  filter: grayscale(1);
  transition: filter 0.4s ease;
}
.office-carousel__card-active img {
  filter: grayscale(0);
}
.office-carousel__card-image {
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.office-carousel__badge {
  position: absolute;
  inset-block-start: -1.25rem;
  inset-inline-start: 1.5rem;
  display: flex;
  align-items: center;
  gap: 0;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-family: var(--font-display);
  font-size: 0.875rem;
  font-weight: 700;
  padding: 0.5rem;
  border-radius: 2rem;
  z-index: 2;
  white-space: nowrap;
  transition:
    padding 0.3s ease,
    gap 0.3s ease;
  overflow: hidden;
}
.office-carousel__badge-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 1.5rem;
  block-size: 1.5rem;
  flex-shrink: 0;
}
.office-carousel__badge-label {
  max-inline-size: 0;
  opacity: 0;
  overflow: hidden;
  transition:
    max-inline-size 0.3s ease,
    opacity 0.2s ease;
}
.office-carousel__badge-expanded {
  padding: 0.5rem 1.25rem 0.5rem 0.75rem;
  gap: 0.5rem;
}
.office-carousel__badge-expanded .office-carousel__badge-label {
  max-inline-size: 10rem;
  opacity: 1;
}
.office-carousel__overlay {
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 0;
  inset-inline-end: 1rem;
  padding: 1rem 1.25rem;
  background-color: var(--color-primary);
  border-radius: 0 0.75rem;
  z-index: 3;
  opacity: 0;
  transform: translateY(0.5rem);
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.office-carousel__overlay-visible {
  opacity: 1;
  transform: translateY(0);
}
.office-carousel__overlay-icon {
  flex-shrink: 0;
  color: var(--color-on-dark);
  margin-block-start: 0.125rem;
}
.office-carousel__overlay-text {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.office-carousel__building-name {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4;
  color: var(--color-on-dark);
  margin: 0;
}
.office-carousel__address {
  font-size: 0.8125rem;
  line-height: 1.4;
  color: var(--white-80);
  margin: 0;
}
.office-carousel__nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 2rem;
  block-size: 2rem;
  border-radius: 50%;
  border: 2px solid var(--color-primary);
  background-color: transparent;
  color: var(--color-primary);
  cursor: pointer;
  flex-shrink: 0;
  transition:
    background-color 0.15s,
    color 0.15s,
    opacity 0.15s;
}
.office-carousel__nav-btn:hover:not(:disabled) {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.office-carousel__nav-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}
.portugal-header[data-c-portugal-header] {
  position: relative;
}
.pcv2[data-c-pcv2-detail] {
  --card-radius: 0.75rem;
  position: relative;
  cursor: pointer;
  inline-size: 100%;
  max-inline-size: 384px;
  margin-inline: auto;
  border: 2px dashed var(--white-80);
  border-radius: var(--card-radius);
  padding: 0;
}
.pcv2-photo-wrap[data-c-pcv2-detail] {
  position: relative;
  inline-size: 100%;
  max-inline-size: 384px;
  aspect-ratio: 384 / 470;
  border-radius: var(--card-radius);
  overflow: hidden;
  background-color: var(--color-surface-charcoal);
}
.pcv2-photo[data-c-pcv2-detail] {
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.pcv2-initials[data-c-pcv2-detail] {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: var(--font-size-h3);
  font-weight: 700;
  color: var(--white-15);
  user-select: none;
}
.pcv2-overlay[data-c-pcv2-detail] {
  position: absolute;
  inset-block-end: 0;
  inset-inline: 0;
  block-size: 7.9375rem;
  padding-inline: 0.75rem;
  padding-block: 0;
  background: var(--white-10);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 0 0 11px 11px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.5rem;
  z-index: 1;
}
@media (min-width: 640px) {
  .pcv2-overlay[data-c-pcv2-detail] {
    padding-inline: 1rem;
  }
}
.pcv2-overlay-row[data-c-pcv2-detail] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}
.pcv2-name[data-c-pcv2-detail] {
  font-family: var(--font-display);
  font-size: clamp(1rem, 3vw, 1.375rem);
  font-weight: 700;
  line-height: 0.909;
  letter-spacing: 0;
  color: var(--color-on-dark);
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.pcv2-role[data-c-pcv2-detail] {
  font-size: clamp(0.875rem, 2.5vw, 1.125rem);
  font-weight: 400;
  line-height: 0.889;
  letter-spacing: -0.05em;
  color: var(--color-on-dark-muted);
  margin: 0;
}
.pcv2-icons[data-c-pcv2-detail] {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
}
.pcv2-icon-link[data-c-pcv2-detail] {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 1.75rem;
  block-size: 1.75rem;
  border-radius: 50%;
  background-color: var(--white-90);
  color: var(--color-foreground);
  text-decoration: none;
  transition: background-color 0.15s;
}
.pcv2-icon-link[data-c-pcv2-detail]:hover {
  background-color: var(--color-on-dark);
}
.pcv2[data-c-pcv2-detail] {
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  perspective: 800px;
}
.pcv2--open[data-c-pcv2-detail] {
  transform: rotate(-5deg) translateY(-120px);
  z-index: 10;
}
@media (min-width: 640px) {
  .pcv2--open[data-c-pcv2-detail] {
    transform: rotate(-5deg) translateY(-200px);
  }
}
.pcv2-detail[data-c-pcv2-detail] {
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
  inline-size: 100%;
  max-inline-size: 384px;
  aspect-ratio: 384 / 470;
  overflow-y: auto;
  background-color: var(--color-background);
  border-radius: var(--card-radius);
  padding: 1.25rem;
  z-index: 2;
  box-shadow: var(--shadow-heavy);
  transform: translateY(120px) rotate(8deg) scale(0.95);
  opacity: 0;
  transition:
    transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1),
    opacity 0.4s ease;
  pointer-events: none;
}
@media (min-width: 640px) {
  .pcv2-detail[data-c-pcv2-detail] {
    padding: 2rem 1.5rem;
    transform: translateY(190px) rotate(8deg) scale(0.95);
  }
}
.pcv2--open[data-c-pcv2-detail] .pcv2-detail[data-c-pcv2-detail] {
  transform: translateY(120px) rotate(8deg) scale(1);
  opacity: 1;
  pointer-events: auto;
}
@media (min-width: 640px) {
  .pcv2--open[data-c-pcv2-detail] .pcv2-detail[data-c-pcv2-detail] {
    transform: translateY(190px) rotate(8deg) scale(1);
  }
}
.pcv2-detail[data-c-pcv2-detail][hidden] {
  display: block;
}
.pcv2-detail-title[data-c-pcv2-detail] {
  font-family: var(--font-display);
  font-size: var(--font-size-h3);
  font-weight: 700;
  color: var(--color-foreground);
  margin: 0 0 1rem;
  line-height: 1.2;
}
.pcv2-detail-role[data-c-pcv2-detail] {
  font-size: var(--font-size-body-sm);
  color: var(--color-muted-foreground);
  margin: 0 0 1rem;
}
.pcv2-detail-quote[data-c-pcv2-detail] {
  font-family: var(--font-display);
  font-style: italic;
  font-size: var(--font-size-body);
  line-height: 1.4;
  color: var(--color-primary);
  margin: 0 0 1rem;
  padding: 0;
  border: 0;
}
.pcv2-detail-body[data-c-pcv2-detail] {
  font-size: var(--font-size-body-sm);
  line-height: 1.6;
  color: var(--color-foreground);
  margin: 0;
}
.pcv2-detail-tags[data-c-pcv2-detail] {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
}
.pcv2-detail-tag[data-c-pcv2-detail] {
  padding: 0.25rem 0.625rem;
  border-radius: 999px;
  background: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  font-size: 0.6875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.pc[data-c-pcv2-detail] {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.pc-photo-wrap[data-c-pcv2-detail] {
  inline-size: 19.875rem;
  block-size: 19.875rem;
  border-radius: 50%;
  overflow: hidden;
  margin-block-end: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pc-photo[data-c-pcv2-detail] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.pc-initials[data-c-pcv2-detail] {
  font-family: var(--font-display);
  font-size: var(--font-size-h3);
  font-weight: 700;
  color: var(--white-15);
  user-select: none;
}
.pc-name[data-c-pcv2-detail] {
  font-size: var(--font-size-body);
  font-weight: 700;
  margin: 0 0 0.25rem;
}
.pc--dark[data-c-pcv2-detail] .pc-name[data-c-pcv2-detail] {
  color: var(--color-on-dark);
}
.pc--light[data-c-pcv2-detail] .pc-name[data-c-pcv2-detail] {
  color: var(--color-foreground);
}
.pc-role[data-c-pcv2-detail] {
  font-size: var(--font-size-body-sm);
  margin: 0;
}
.pc--dark[data-c-pcv2-detail] .pc-role[data-c-pcv2-detail] {
  color: var(--color-on-dark-muted);
}
.pc--light[data-c-pcv2-detail] .pc-role[data-c-pcv2-detail] {
  color: var(--color-muted-foreground);
}
.pc-icons[data-c-pcv2-detail] {
  display: flex;
  gap: 0.5rem;
  margin-block-start: 0.75rem;
}
.pc-icon-link[data-c-pcv2-detail] {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 2rem;
  block-size: 2rem;
  border-radius: 50%;
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  text-decoration: none;
  transition: background-color 0.15s;
}
.pc--dark[data-c-pcv2-detail] .pc-icon-link[data-c-pcv2-detail] {
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
}
.pc--light[data-c-pcv2-detail] .pc-icon-link[data-c-pcv2-detail] {
  background-color: var(--color-surface-dark);
  color: var(--color-on-dark);
}
.pc-icon-link[data-c-pcv2-detail]:hover {
  background-color: var(--color-foreground);
}

/* ---- index ---- */
.case-modal__overlay {
  position: fixed;
  inset: 0;
  z-index: 9998;
  background-color: var(--overlay-dark);
  animation: _fadeIn_1p2vv_1 0.3s ease;
}
.case-modal__dialog {
  position: fixed;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  transform: translate(-50%, -50%);
  z-index: 9999;
  inline-size: 1216px;
  max-inline-size: 95vw;
  max-block-size: 90vh;
  padding: 0;
  border: none;
  border-radius: 12px;
  background: transparent;
  overflow: visible;
  animation: _zoomIn_1p2vv_1 0.3s ease;
}
@media (max-width: 640px) {
  .case-modal__dialog {
    max-inline-size: 100vw;
    max-block-size: 100vh;
    border-radius: 0;
  }
}
.case-modal__content {
  position: relative;
  background-color: var(--color-surface-dark);
  border-radius: 12px;
  border-block-start: 4px solid var(--color-primary);
  padding: 1.25rem;
  overflow-y: auto;
  max-block-size: 90vh;
}
@media (min-width: 640px) {
  .case-modal__content {
    padding: 2.5rem;
  }
}
@media (max-width: 640px) {
  .case-modal__content {
    border-radius: 0;
  }
}
.case-modal__close-button {
  position: absolute;
  inset-block-start: 1.25rem;
  inset-inline-end: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  color: var(--color-on-dark);
  cursor: pointer;
  padding: 0.25rem;
  opacity: 0.7;
  transition: opacity 0.15s;
}
.case-modal__close-button:hover {
  opacity: 1;
}
.case-modal__category {
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-primary);
  margin-block-end: 0.75rem;
}
.case-modal__title {
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 4vw, 2rem);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-on-dark);
  margin: 0;
  padding-block: 0.5rem;
}
.case-modal__subtitle {
  font-size: 1rem;
  color: var(--color-on-dark-muted);
  margin-block-start: 0.5rem;
  margin-block-end: 1.5rem;
}
.case-modal__image-wrap {
  border: 1.5px dashed var(--white-50);
  border-radius: 8px;
  overflow: hidden;
  margin-block-end: 1.5rem;
}
.case-modal__image {
  inline-size: 100%;
  block-size: 200px;
  object-fit: cover;
  display: block;
}
.case-modal__columns {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  margin-block-end: 1.5rem;
}
@media (min-width: 640px) {
  .case-modal__columns {
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
}
.case-modal__benefits {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--color-on-dark);
  margin: 0 0 1.5rem;
}
.case-modal__column-label {
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-primary);
  margin-block-end: 0.5rem;
}
.case-modal__column-text {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--color-on-dark);
  margin: 0;
}
.case-modal__metrics-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
  margin-block-end: 1.5rem;
}
@media (min-width: 640px) {
  .case-modal__metrics-row {
    gap: 1rem;
  }
}
.case-modal__metric-card {
  background-color: var(--white-6);
  border-radius: 8px;
  padding: 0.75rem;
  text-align: center;
}
@media (min-width: 640px) {
  .case-modal__metric-card {
    padding: 1.25rem;
  }
}
.case-modal__metric-value {
  font-family: var(--font-display);
  font-size: clamp(1.125rem, 3vw, 1.75rem);
  font-weight: 700;
  color: var(--color-primary);
  line-height: 1;
  margin-block-end: 0.375rem;
}
.case-modal__metric-label {
  font-size: 0.875rem;
  color: var(--color-on-dark-muted);
}
.case-modal__tech-row {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 2.5rem;
}
.case-modal__tech-label {
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-primary);
}
.case-modal__tech-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.case-modal__pill {
  display: inline-block;
  padding-inline: 1rem;
  padding-block: 0.5rem;
  border-radius: 8px;
  border: 1px solid var(--white-20);
  background-color: var(--white-6);
  color: var(--color-on-dark);
  font-size: 0.8125rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.case-modal__cta-button {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding-inline: 1.5rem;
  padding-block: 0.75rem;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  border: none;
  border-radius: var(--radius-full);
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.15s;
  flex-shrink: 0;
}
.case-modal__cta-button:hover {
  opacity: 0.9;
}
.case-modal__footer-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}
.case-modal__back-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: none;
  border: 2px solid var(--color-primary);
  border-radius: var(--radius-full);
  color: var(--color-primary);
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  padding-inline: 1.5rem;
  padding-block: 0.625rem;
  transition:
    background-color 0.15s,
    color 0.15s;
}
.case-modal__back-link:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
@keyframes _fadeIn_1p2vv_1 {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes _zoomIn_1p2vv_1 {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.97);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
.case-studies-section[data-c-case-studies-section] {
  block-size: 1006px;
  overflow: hidden;
}
.case-studies-intro .section-intro-heading {
  margin-block-start: 0;
  line-height: 54px;
}
.cs-skeleton-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-block-end: 1.5rem;
}
.cs-skeleton-pill {
  inline-size: 5.5rem;
  block-size: 2.25rem;
  border-radius: 8px;
  background-color: var(--color-muted);
  animation: cs-skeleton-pulse 1.4s ease-in-out infinite;
}
.cs-skeleton-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  background-color: var(--white-50);
  margin-inline: -1.5rem;
}
.cs-skeleton-card {
  aspect-ratio: 480 / 298;
  background-color: var(--color-surface-muted);
  animation: cs-skeleton-pulse 1.4s ease-in-out infinite;
}
@media (min-width: 640px) {
  .cs-skeleton-grid {
    margin-inline: -7rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .cs-skeleton-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@keyframes cs-skeleton-pulse {
  0%,
  to {
    opacity: 1;
  }
  50% {
    opacity: 0.55;
  }
}
@media (prefers-reduced-motion: reduce) {
  .cs-skeleton-pill,
  .cs-skeleton-card {
    animation: none;
  }
}
.cert-grid[data-c-cert-grid] {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .cert-grid[data-c-cert-grid] {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .cert-grid[data-c-cert-grid] {
    grid-template-columns: repeat(4, 1fr);
  }
}
.cert-card[data-c-cert-grid] {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 2rem;
  border: 1px solid var(--white-15);
  border-radius: 0.75rem;
  background-color: var(--white-6);
  text-align: center;
  min-block-size: 280px;
}
.cert-card-top[data-c-cert-grid] {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
.cert-icon[data-c-cert-grid] {
  block-size: 70px;
  inline-size: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cert-logo[data-c-cert-grid] {
  inline-size: 70px;
  block-size: 70px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}
.cert-icon-spacer[data-c-cert-grid] {
  inline-size: 70px;
  block-size: 70px;
}
.cert-name[data-c-cert-grid] {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-on-dark);
  margin: 0;
}
.cert-card-bottom[data-c-cert-grid] {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
}
.cert-count[data-c-cert-grid] {
  font-family: var(--font-display);
  font-size: 48px;
  font-weight: 700;
  color: var(--color-on-dark);
  margin: 0;
  line-height: 1.1;
}
.cert-label[data-c-cert-grid] {
  font-size: 18px;
  font-weight: 400;
  line-height: 20px;
  color: var(--color-on-dark);
  margin: 0;
}
.logos-intro .section-intro-heading {
  max-inline-size: 38rem;
}
.logos-section[data-c-logos-strip] {
  overflow: hidden;
}
.logos-rows[data-c-logos-strip] {
  margin-block-start: 3rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding-block-end: 4rem;
}
.logos-track[data-c-logos-strip] {
  overflow: hidden;
  inline-size: 100%;
}
.logos-strip[data-c-logos-strip] {
  display: flex;
  gap: 3rem;
  inline-size: max-content;
}
.logos-strip--ltr[data-c-logos-strip] {
  animation: marquee-ltr 140s linear infinite;
}
.logos-strip--rtl[data-c-logos-strip] {
  animation: marquee-rtl 170s linear infinite;
}
@keyframes marquee-ltr {
  0% {
    transform: translate(0);
  }
  to {
    transform: translate(-50%);
  }
}
@keyframes marquee-rtl {
  0% {
    transform: translate(-50%);
  }
  to {
    transform: translate(0);
  }
}
.logos-track[data-c-logos-strip]:hover .logos-strip[data-c-logos-strip] {
  animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce) {
  .logos-strip[data-c-logos-strip] {
    animation: none;
  }
}
.logo-cell[data-c-logos-strip] {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.logo-img[data-c-logos-strip] {
  block-size: 48px;
  inline-size: auto;
  object-fit: contain;
  user-select: none;
}
.portfolio-hero-stats[data-c-stats-card] {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  max-inline-size: 100%;
  overflow: hidden;
}
.stats-grid[data-c-stats-card] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.stats-card[data-c-stats-card] {
  background-color: var(--white-3);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  border: 1px solid var(--white-10);
  border-radius: var(--radius-lg);
  padding: 0.75rem 1rem;
  text-align: start;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  min-inline-size: 0;
  overflow: hidden;
}
@media (min-width: 768px) {
  .stats-card[data-c-stats-card] {
    padding: 1rem 1.25rem;
    inline-size: 237px;
    block-size: 124px;
  }
}
.stats-card--highlight[data-c-stats-card] {
  background-color: var(--color-primary);
  text-align: center;
  align-items: center;
  justify-content: center;
}
.stats-card--highlight[data-c-stats-card] .stat-value {
  font-size: clamp(1rem, 2.5vw, 22px);
}
.stats-card--highlight[data-c-stats-card] .stat-label {
  font-size: clamp(0.8125rem, 2vw, 18px);
  font-weight: 400;
  letter-spacing: 0;
  text-transform: uppercase;
}
.stats-card[data-c-stats-card] .stat-item {
  flex-direction: column;
  align-items: flex-start;
  min-inline-size: 0;
  max-inline-size: 100%;
}
.stats-card--highlight[data-c-stats-card] .stat-item {
  align-items: center;
}
.stats-card[data-c-stats-card]:not(.stats-card--highlight) .stat-value {
  font-size: clamp(2rem, 6vw, 54px);
  font-weight: 700;
  line-height: 1;
  color: var(--color-primary);
}
.stats-card[data-c-stats-card]:not(.stats-card--highlight) .stat-label {
  font-size: clamp(0.6875rem, 1.75vw, 18px);
  font-weight: 400;
  letter-spacing: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-inline-size: 100%;
}
.portfolio-hero-sectors[data-c-portfolio-hero-sectors] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
}
.portfolio-hero-layout[data-c-portfolio-sector-tags] {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  align-items: start;
  max-inline-size: 100%;
  overflow: hidden;
}
@media (min-width: 900px) {
  .portfolio-hero-layout[data-c-portfolio-sector-tags] {
    grid-template-columns: 1.1fr 0.9fr;
    gap: 4rem;
  }
}
.portfolio-hero-intro {
  max-inline-size: 38rem;
}
.portfolio-sector-tags[data-c-portfolio-sector-tags] {
  margin-block: 1.5rem;
  max-inline-size: 34rem;
}
@media (min-width: 900px) {
  .portfolio-sector-tags[data-c-portfolio-sector-tags] {
    margin-block: 2.5rem;
  }
}
.portfolio-sector-tags[data-c-portfolio-sector-tags] .tag {
  border-radius: 8px;
  border-color: var(--white-40);
  padding-inline: 1rem;
  padding-block: 0.5rem;
}
.portfolio-hero-actions[data-c-portfolio-sector-tags] {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.75rem;
}
.portfolio-hero-actions[data-c-portfolio-sector-tags] .btn-link {
  font-size: clamp(0.8125rem, 2vw, var(--font-size-body));
  padding-inline: clamp(1rem, 3vw, 2rem);
  white-space: nowrap;
}
.portfolio-hero-bg[data-c-portfolio-sector-tags] {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.portfolio-hero-bg-img[data-c-portfolio-sector-tags] {
  --hero-bg-opacity: 0.7;
  --hero-bg-blur: 2px;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1) blur(var(--hero-bg-blur));
  opacity: var(--hero-bg-opacity);
}
.portfolio-hero-content-wrap[data-c-portfolio-sector-tags] {
  position: relative;
  z-index: 2;
}
.portfolio-hero-letters-scaler[data-c-portfolio-sector-tags] {
  position: absolute;
  inset-block-end: 0;
  inset-inline: 0;
  block-size: 0;
  z-index: 1;
  pointer-events: none;
  color: var(--color-on-dark);
  filter: blur(1.5px);
  container-type: inline-size;
}
.portfolio-hero-letters-wrap[data-c-portfolio-sector-tags] {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 1440 / 518;
  overflow: visible;
}
.stats-row[data-c-stats-row] {
  margin-block-end: 1.5rem;
}
.stats-row[data-c-stats-row] .responsive-grid {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 768px) {
  .stats-row[data-c-stats-row] .responsive-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.bottom-card[data-c-stats-row] {
  margin-inline: 1rem;
}
@media (min-width: 768px) {
  .bottom-card[data-c-stats-row] {
    margin-inline: 1.9rem;
  }
}
.recognitions-card[data-c-stats-row] {
  background-color: var(--color-background);
  border-radius: 0.75rem;
  box-shadow: var(--shadow-card);
  padding: 1.5rem;
  max-inline-size: 1216px;
  margin-inline: auto;
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  .recognitions-card[data-c-stats-row] {
    transform: skew(-12deg);
    padding: 2.5rem 4rem;
    min-block-size: 250px;
  }
}
.recognitions-grid[data-c-stats-row] {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  inline-size: 100%;
}
@media (min-width: 768px) {
  .recognitions-grid[data-c-stats-row] {
    grid-template-columns: 1fr 1fr;
    gap: 2rem 4rem;
    transform: skew(12deg);
  }
}
.recognition-item[data-c-stats-row] {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}
.recognition-icon[data-c-stats-row] {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 40px;
  block-size: 40px;
  border-radius: 8px;
  background-color: var(--primary-8);
}
.recognition-text[data-c-stats-row] {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.recognition-title[data-c-stats-row] {
  font-family: var(--font-display);
  font-size: clamp(1rem, 2.5vw, 24px);
  font-weight: 700;
  color: var(--color-foreground);
  margin: 0;
}
.recognition-desc[data-c-stats-row] {
  font-size: clamp(0.875rem, 2vw, 20px);
  color: var(--color-foreground);
  margin: 0;
}

/* ---- SplitWithForm ---- */
.contact-form__form {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.contact-form__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 640px) {
  .contact-form__grid {
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem 2rem;
  }
}
.contact-form__field {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.contact-form__label {
  font-size: var(--font-size-body);
  font-weight: 600;
  color: var(--color-on-dark);
}
.contact-form__dark-input {
  padding: 0.875rem 1rem;
  background: var(--color-surface-light);
  border: 1px solid var(--color-on-dark);
  border-radius: 8px;
  color: var(--color-surface-dark);
  font-size: var(--font-size-body);
  font-family: inherit;
  outline: none;
  transition: border-color 0.15s;
}
.contact-form__dark-input::placeholder {
  color: var(--color-muted-foreground);
}
.contact-form__dark-input:focus {
  border-color: var(--color-primary);
}
.contact-form__dark-textarea {
  resize: vertical;
  line-height: 1.6;
  min-height: 7rem;
}
.contact-form__light-label {
  font-size: var(--font-size-body);
  font-weight: 600;
  color: var(--color-surface-dark);
}
.contact-form__light-input {
  padding: 0.875rem 1rem;
  background: var(--color-surface-mid);
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  color: var(--color-surface-dark);
  font-size: var(--font-size-body);
  font-family: inherit;
  height: 3.5rem;
  outline: none;
  transition: border-color 0.15s;
}
.contact-form__light-input::placeholder {
  color: var(--color-muted-foreground);
}
.contact-form__light-input:focus {
  border-color: var(--color-primary);
}
.contact-form__light-textarea {
  resize: vertical;
  line-height: 1.6;
  min-height: 7rem;
}
.contact-form__light-success {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 2rem;
  text-align: center;
  color: var(--color-muted-foreground);
}
.contact-form__submit-btn {
  margin-block-start: 0.75rem;
  border-radius: var(--radius-full);
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  font-family: inherit;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: none;
  cursor: pointer;
  transition: background-color 0.15s;
}
.contact-form__submit-btn:hover {
  background-color: var(--color-primary-hover);
}
.contact-form__submit-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.contact-form__success {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 2rem;
  text-align: center;
  color: var(--color-on-dark-muted);
}
.contact-form__success-text {
  font-size: var(--font-size-body);
  font-weight: 500;
}
.contact-form__captcha-wrap {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.contact-form__captcha-error,
.contact-form__form-error {
  color: var(--color-primary);
  font-size: var(--font-size-body-sm);
  margin: 0;
}
.contact-form__field-error {
  color: var(--color-destructive, var(--color-primary));
  font-size: var(--font-size-body-sm);
  margin: 0;
}
.contact-form__privacy-notice {
  font-size: var(--font-size-body-sm);
  line-height: 1.5;
  color: var(--color-on-dark-muted);
  margin: 0;
}
.contact-form__privacy-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.contact-info-address[data-c-contact-info-address] {
  margin-block-start: 1.5rem;
}
.contact-info-address-label[data-c-contact-info-address] {
  font-size: var(--font-size-body-lg);
  font-weight: 700;
  color: var(--color-on-dark);
  margin: 1.5rem 0;
}
.contact-info-address[data-c-contact-info-address]
  address[data-c-contact-info-address] {
  font-style: normal;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.contact-info-address[data-c-contact-info-address]
  p[data-c-contact-info-address] {
  font-size: var(--font-size-body);
  margin: 0;
  line-height: 1.6;
}
.contact-info-link[data-c-contact-info-address] {
  font-size: var(--font-size-body);
  text-decoration: none;
  display: block;
  transition: color 0.15s;
}
.contact-info--dark[data-c-contact-info-address] .text-block-body p {
  color: var(--color-on-dark);
}
.contact-info--dark[data-c-contact-info-address]
  .contact-info-address[data-c-contact-info-address]
  p[data-c-contact-info-address],
.contact-info--dark[data-c-contact-info-address]
  .contact-info-link[data-c-contact-info-address] {
  color: var(--color-on-dark-muted);
}
.contact-info--dark[data-c-contact-info-address]
  .contact-info-link[data-c-contact-info-address]:hover {
  color: var(--color-on-dark);
}
.contact-info--light[data-c-contact-info-address]
  .contact-info-address-label[data-c-contact-info-address] {
  color: var(--color-surface-dark);
}
.contact-info--light[data-c-contact-info-address]
  .contact-info-address[data-c-contact-info-address]
  p[data-c-contact-info-address],
.contact-info--light[data-c-contact-info-address]
  .contact-info-link[data-c-contact-info-address] {
  color: var(--color-muted-foreground);
}
.contact-info--light[data-c-contact-info-address]
  .contact-info-link[data-c-contact-info-address]:hover {
  color: var(--color-surface-dark);
}
.split-layout[data-c-split-layout] {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--split-gap, 0);
  align-items: var(--split-align, stretch);
}
.split-layout--reverse-mobile[data-c-split-layout] {
  @media (max-width: 639px) {
    > .split-layout-start[data-c-split-layout] {
      order: 2;
    }
    > .split-layout-end[data-c-split-layout] {
      order: 1;
    }
  }
}
.split-layout--collapse-sm[data-c-split-layout] {
  @media (min-width: 640px) {
    grid-template-columns: var(--split-ratio, 1fr 1fr);
  }
}
.split-layout--collapse-md[data-c-split-layout] {
  @media (min-width: 768px) {
    grid-template-columns: var(--split-ratio, 1fr 1fr);
  }
}
.split-layout--collapse-lg[data-c-split-layout] {
  @media (min-width: 1024px) {
    grid-template-columns: var(--split-ratio, 1fr 1fr);
  }
}

/* ---- index ---- */
.event-item[data-c-event-item] {
  display: flex;
  gap: 1.5rem;
  padding-block: 1.25rem;
  border-block-end: 1px solid var(--color-border);
}
.event-item[data-c-event-item]:first-child {
  padding-block-start: 0;
}
.event-item[data-c-event-item]:last-child {
  border-block-end: none;
}
.event-main[data-c-event-item] {
  flex: 1;
  min-inline-size: 0;
}
.event-header[data-c-event-item] {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-block-end: 0.5rem;
}
.event-header[data-c-event-item] .tag {
  font-size: var(--font-size-body-sm);
  padding-block: 0.375rem;
  padding-inline: 0.875rem;
}
.event-title[data-c-event-item] {
  font-size: var(--font-size-body);
  font-weight: 600;
  color: var(--color-surface-dark);
}
.event-desc-label[data-c-event-item] {
  font-size: var(--font-size-body-sm);
  font-weight: 600;
  color: var(--color-surface-dark);
  margin: 0 0 0.25rem;
}
.event-desc[data-c-event-item] {
  font-size: var(--font-size-body-sm);
  color: var(--color-foreground);
  line-height: 1.6;
  margin: 0;
}
.event-location[data-c-event-item] {
  font-size: var(--font-size-body-sm);
  color: var(--color-foreground);
  margin: 0.5rem 0 0;
}
.event-side[data-c-event-item] {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  flex-shrink: 0;
}
.event-date[data-c-event-item] {
  font-size: var(--font-size-body-sm);
  color: var(--color-surface-dark);
  white-space: nowrap;
}
.event-cta[data-c-event-item] {
  white-space: nowrap;
}
@media (max-width: 560px) {
  .event-item[data-c-event-item] {
    flex-direction: column;
    gap: 0.75rem;
  }
  .event-side[data-c-event-item] {
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-between;
  }
}
.events-container[data-c-events-container] {
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .events-container[data-c-events-container] {
    padding-inline: 3rem;
  }
}
@media (min-width: 1024px) {
  .events-container[data-c-events-container] {
    padding-inline: 7rem;
  }
}
.events-card[data-c-events-container] {
  --events-card-bg: var(--color-background);
  --events-card-radius: 0.5rem;
  background: var(--events-card-bg);
  border-radius: var(--events-card-radius);
  padding: 1.25rem;
}
@media (min-width: 640px) {
  .events-card[data-c-events-container] {
    padding: 2rem;
  }
}
.events-card-heading[data-c-events-container] {
  font-size: var(--font-size-h4);
  font-weight: 700;
  color: var(--color-surface-dark);
  margin: 0 0 1.5rem;
}
.events-list[data-c-events-container] {
  display: flex;
  flex-direction: column;
}
.events-list[data-c-events-container] .event-collapsed {
  display: none;
}
.events-cta-wrap[data-c-events-container] {
  padding-block-start: 1.5rem;
  display: flex;
  justify-content: center;
}
.hero__carousel {
  position: relative;
  min-block-size: 100dvh;
  inline-size: 100%;
}
@media (min-width: 768px) {
  .hero__carousel {
    block-size: 960px;
    min-block-size: auto;
  }
}
.hero__slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-start;
  opacity: 0;
  transition: opacity 0.6s ease;
  pointer-events: none;
}
.hero__slide-active {
  opacity: 1;
  pointer-events: auto;
}
.hero__slide-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.hero__slide-bg-img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1) blur(1px);
}
.hero__slide-bg-overlay {
  position: absolute;
  inset: 0;
  background-color: var(--overlay-dark);
}
.hero__slide-inner {
  position: relative;
  z-index: 5;
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .hero__slide-inner {
    padding-inline: 7rem;
  }
}
.hero__slide-layout {
  padding-block-start: 11.625rem;
  padding-block-end: 5rem;
}
.hero__content {
  max-inline-size: 34rem;
}
.hero__heading {
  font-size: var(--font-size-hero);
  font-weight: 700;
  color: var(--color-on-dark);
  line-height: 1;
  margin: 0 0 1.25rem;
  letter-spacing: -0.02em;
}
.hero__body {
  font-size: var(--font-size-h4);
  line-height: 1.25;
  color: var(--color-on-dark-muted);
  margin: 0 0 2.5rem;
  max-inline-size: 34rem;
}
.hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.hero__cta-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  text-decoration: none;
  border-radius: var(--radius-full);
  transition:
    background-color 0.15s,
    border-color 0.15s,
    box-shadow 0.15s;
}
.hero__cta-primary {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: 2px solid var(--color-primary);
}
.hero__cta-primary:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}
.hero__cta-outline {
  background-color: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}
.hero__cta-outline:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.hero__controls-bar {
  position: absolute;
  inset-block-start: 19rem;
  inset-inline-start: 7rem;
  inset-inline-end: 1.5rem;
  display: flex;
  align-items: center;
  z-index: 10;
}
.hero__controls-spacer {
  inline-size: 34rem;
  flex-shrink: 0;
  margin-inline-end: 3rem;
}
.hero__controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.5rem;
  inline-size: 100%;
  flex: 1;
  min-inline-size: 0;
}
.hero__controls-line {
  display: block;
  flex: 1;
  max-inline-size: 24rem;
  block-size: 1px;
  background: var(--color-on-dark-muted);
}
.hero__dots {
  display: flex;
  gap: 2rem;
  align-items: center;
}
.hero__dot {
  inline-size: 0.625rem;
  block-size: 0.625rem;
  border-radius: var(--radius-full);
  background: var(--white-60);
  border: none;
  padding: 0;
  cursor: pointer;
}
.hero__dot-active {
  background: var(--color-on-dark);
  outline: 1px solid var(--color-on-dark);
  outline-offset: 14px;
}
.hero[data-c-hero] {
  position: relative;
  min-block-size: 100dvh;
  background-color: var(--color-surface-dark);
  overflow: hidden;
}
@media (min-width: 768px) {
  .hero[data-c-hero] {
    block-size: 870px;
    min-block-size: auto;
  }
}
.hero-bg[data-c-hero] {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.hero-bg-img[data-c-hero] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1) blur(1px);
}
.hero-overlay[data-c-hero] {
  position: absolute;
  inset: 0;
  background-color: var(--overlay-dark);
}
.hero-letters-scaler[data-c-hero] {
  position: absolute;
  inset-block-end: 0;
  inset-inline: 0;
  block-size: 0;
  z-index: 1;
  pointer-events: none;
  color: var(--color-on-dark);
  filter: blur(1.5px);
  container-type: inline-size;
}
.hero-letters-wrap[data-c-hero] {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 1440 / 518;
  overflow: visible;
}
.author-meta[data-c-author-meta-avatar] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.author-meta-avatar[data-c-author-meta-avatar] {
  inline-size: 2rem;
  block-size: 2rem;
  border-radius: var(--radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
}
.author-meta--dark[data-c-author-meta-avatar]
  .author-meta-avatar[data-c-author-meta-avatar] {
  background-color: var(--white-25);
  color: var(--color-on-dark);
}
.author-meta--dark[data-c-author-meta-avatar]
  .author-meta-name[data-c-author-meta-avatar] {
  font-size: var(--font-size-body-sm);
  font-weight: 500;
  color: var(--color-on-dark);
}
.author-meta--dark[data-c-author-meta-avatar]
  .author-meta-date[data-c-author-meta-avatar] {
  font-size: var(--font-size-body-sm);
  color: var(--color-on-dark-muted);
  margin-inline-start: auto;
}
.author-meta--light[data-c-author-meta-avatar]
  .author-meta-avatar[data-c-author-meta-avatar] {
  background-color: var(--color-surface-muted);
  color: var(--color-muted-foreground);
}
.author-meta--light[data-c-author-meta-avatar]
  .author-meta-name[data-c-author-meta-avatar] {
  font-size: var(--font-size-body-sm);
  font-weight: 500;
  color: var(--color-foreground);
}
.author-meta--light[data-c-author-meta-avatar]
  .author-meta-date[data-c-author-meta-avatar] {
  font-size: var(--font-size-body-sm);
  color: var(--color-muted-foreground);
  margin-inline-start: auto;
}
.insights-wrap[data-c-insights-wrap] .insight-card-meta {
  margin-block-end: 1rem;
}
.insights-wrap[data-c-insights-wrap] .insight-card-title {
  margin-block-end: 2rem;
}
.insights-wrap[data-c-insights-wrap] .section-intro {
  margin-block-end: 4rem;
}
.insights-wrap[data-c-insights-wrap] .arrow-link--dark {
  color: var(--color-on-dark) !important;
}
.icon-card[data-c-icon-card] {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  gap: 1.5rem;
  padding: 2rem;
  border-radius: 8px;
  box-shadow: var(--shadow-card);
  position: relative;
}
.icon-card[data-c-icon-card]:has(.icon-card-footer a) {
  cursor: pointer;
}
.icon-card-footer[data-c-icon-card] a:after {
  content: "";
  position: absolute;
  inset: 0;
}
.icon-card--light[data-c-icon-card] {
  background-color: var(--color-background);
}
.icon-card--dark[data-c-icon-card] {
  background-color: var(--white-3);
}
.icon-card-content[data-c-icon-card] {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.icon-card--center[data-c-icon-card] {
  text-align: center;
}
.icon-card--center[data-c-icon-card] .icon-card-content[data-c-icon-card] {
  align-items: center;
}
.icon-card--center[data-c-icon-card] .icon-card-footer[data-c-icon-card] {
  align-self: center;
}
.icon-card--start[data-c-icon-card] {
  align-items: flex-start;
  text-align: start;
}
.icon-card-icon[data-c-icon-card] {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 3.375rem;
  block-size: 3.375rem;
  background-color: var(--primary-30);
  color: var(--color-primary);
  margin-block-end: 1.25rem;
}
.icon-card-icon--circle[data-c-icon-card] {
  border-radius: var(--radius-full);
}
.icon-card-icon--square[data-c-icon-card] {
  border-radius: var(--radius-lg);
}
.icon-card-title[data-c-icon-card] {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 700;
  margin: 0;
  line-height: 1.2;
}
.icon-card--light[data-c-icon-card] .icon-card-title[data-c-icon-card] {
  color: var(--color-foreground);
}
.icon-card--dark[data-c-icon-card] .icon-card-title[data-c-icon-card] {
  color: var(--color-on-dark);
}
.icon-card-desc[data-c-icon-card] {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.375;
  margin: 0;
}
.icon-card--light[data-c-icon-card] .icon-card-desc[data-c-icon-card] {
  color: var(--color-foreground);
}
.icon-card--dark[data-c-icon-card] .icon-card-desc[data-c-icon-card] {
  color: var(--color-on-dark-muted);
}
.promise-section[data-c-promise-section] .text-block--light .text-block-body p {
  color: var(--color-foreground);
  margin-block-end: 1.25rem;
}
.promise-section[data-c-promise-section]
  .text-block--light
  .text-block-body
  p:last-child {
  margin-block-end: 0;
}
.card-grid[data-c-card] {
  --card-height: 480px;
  --stagger: 2rem;
  --col-gap: 2rem;
  --row-gap: 2rem;
  --line-color: var(--muted-45);
  --line-width: 2px;
  --dash: 5px;
  --dash-gap: 5px;
  --dash-total: calc(var(--dash) + var(--dash-gap));
  --h-dash: repeating-linear-gradient(
    to right,
    var(--line-color) 0 var(--dash),
    transparent var(--dash) var(--dash-total)
  );
  --v-dash: repeating-linear-gradient(
    to bottom,
    var(--line-color) 0 var(--dash),
    transparent var(--dash) var(--dash-total)
  );
  --edge-reach: 7rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--row-gap);
  position: relative;
  overflow: visible;
}
@media (min-width: 640px) {
  .card-grid[data-c-card] {
    --card-height: clamp(480px, calc(320px + 25vw), 640px);
    --stagger: clamp(2rem, 5vw, 4rem);
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: var(--card-height);
    column-gap: var(--col-gap);
    row-gap: var(--row-gap);
    align-items: start;
  }
}
.card[data-c-card] {
  position: relative;
  min-inline-size: 0;
}
@media (min-width: 640px) {
  .card[data-c-card]:nth-child(odd) {
    margin-block-start: var(--stagger);
  }
}
@media (min-width: 640px) {
  .card[data-c-card]:nth-child(1):before {
    content: "";
    position: absolute;
    inset-block-start: calc(-1 * var(--stagger) / 2);
    inset-inline-end: calc(-1 * var(--col-gap));
    inline-size: min(36rem, calc(100% + var(--col-gap)));
    block-size: calc(var(--stagger) / 2);
    background-image: var(--h-dash), var(--v-dash);
    background-size:
      100% var(--line-width),
      var(--line-width) 100%;
    background-position:
      top left,
      left top;
    background-repeat: no-repeat;
    pointer-events: none;
  }
  .card[data-c-card]:nth-child(1):after {
    content: "";
    position: absolute;
    inset-block-end: calc(-1 * var(--row-gap));
    inset-inline-start: 2rem;
    inline-size: var(--line-width);
    block-size: var(--row-gap);
    background-image: var(--v-dash);
    background-size: var(--line-width) 100%;
    background-repeat: no-repeat;
    pointer-events: none;
  }
  .card[data-c-card]:nth-child(3):after {
    content: "";
    position: absolute;
    inset-block-start: 60%;
    inset-inline-end: calc(-1 * var(--col-gap));
    inline-size: var(--col-gap);
    block-size: var(--line-width);
    background-image: var(--h-dash);
    background-size: 100% var(--line-width);
    background-repeat: no-repeat;
    pointer-events: none;
  }
  .card[data-c-card]:nth-child(3):before {
    content: "";
    position: absolute;
    inset-block-start: 60%;
    inset-inline-start: calc(-1 * var(--edge-reach));
    inline-size: var(--edge-reach);
    block-size: var(--line-width);
    background-image: var(--h-dash);
    background-size: 100% var(--line-width);
    background-repeat: no-repeat;
    pointer-events: none;
  }
  .card[data-c-card]:nth-child(2):before {
    content: "";
    position: absolute;
    inset-block-end: calc(-1 * var(--row-gap));
    inset-inline-start: 95%;
    inline-size: var(--line-width);
    block-size: var(--row-gap);
    background-image: var(--v-dash);
    background-size: var(--line-width) 100%;
    background-repeat: no-repeat;
    pointer-events: none;
  }
  .card[data-c-card]:nth-child(2):after {
    content: "";
    position: absolute;
    inset-block-end: calc(-1 * var(--row-gap));
    inset-inline-start: 20%;
    inline-size: var(--line-width);
    block-size: var(--row-gap);
    background-image: var(--v-dash);
    background-size: var(--line-width) 100%;
    background-repeat: no-repeat;
    pointer-events: none;
  }
  .card-grid[data-c-card]:before {
    content: "";
    position: absolute;
    inset-block-start: calc(var(--stagger) + var(--card-height) * 0.6);
    inset-inline-start: calc(-1 * var(--edge-reach));
    inline-size: var(--edge-reach);
    block-size: var(--line-width);
    background-image: var(--h-dash);
    background-size: 100% var(--line-width);
    background-repeat: no-repeat;
    pointer-events: none;
  }
  .card-grid[data-c-card]:after {
    content: "";
    position: absolute;
    inset-block-start: calc(var(--stagger) + var(--card-height) * 0.6);
    inset-inline-start: calc(50% - var(--col-gap) / 2);
    inline-size: var(--col-gap);
    block-size: var(--line-width);
    background-image: var(--h-dash);
    background-size: 100% var(--line-width);
    background-repeat: no-repeat;
    pointer-events: none;
  }
  .card[data-c-card]:nth-child(4):before {
    content: "";
    position: absolute;
    inset-block-end: calc(-1 * var(--stagger) / 2);
    inset-inline-start: calc(-1 * var(--col-gap));
    inline-size: min(36rem, calc(100% + var(--col-gap)));
    block-size: calc(var(--stagger) / 2);
    background-image: var(--h-dash), var(--v-dash);
    background-size:
      100% var(--line-width),
      var(--line-width) 100%;
    background-position:
      bottom right,
      right bottom;
    background-repeat: no-repeat;
    pointer-events: none;
  }
}
.card-inner[data-c-card] {
  position: relative;
  z-index: 1;
  block-size: var(--card-height);
  background-color: var(--color-background);
  border-radius: 0.5rem;
  overflow: hidden;
  box-shadow: var(--shadow-card);
  display: flex;
  flex-direction: column;
}
.card-inner[data-c-card]:has(.card-link) {
  cursor: pointer;
}
.card-body[data-c-card] .card-link:after {
  content: "";
  position: absolute;
  inset: 0;
}
.card-image[data-c-card] {
  aspect-ratio: 528 / 420;
  overflow: hidden;
  margin: 2rem 2rem 0;
  border-radius: 0.5rem;
}
.card-img[data-c-card] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  border-radius: 0.5rem;
  filter: grayscale(1);
  transition: filter 0.3s;
}
.card-inner[data-c-card]:hover .card-img[data-c-card] {
  filter: grayscale(0);
}
.card-body[data-c-card] {
  padding: 1.5rem 2rem 2rem;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.card-title[data-c-card] {
  font-size: var(--font-size-lead);
  font-weight: 700;
  color: var(--color-surface-dark);
  margin: 0 0 0.75rem;
}
.card-desc[data-c-card] {
  font-size: var(--font-size-body);
  font-weight: 500;
  color: var(--color-foreground);
  line-height: 1.375;
  margin: 0 0 1.25rem;
  flex: 1;
}
.portfolio-testimonials__wrapper {
  position: relative;
  padding-inline: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
}
@media (min-width: 640px) {
  .portfolio-testimonials__wrapper {
    display: block;
    padding-inline: 6.9rem;
  }
}
.portfolio-testimonials__nav-btn {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: var(--radius-full);
  border: 3px solid var(--white-50);
  background: transparent;
  color: var(--color-on-dark-muted);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition:
    background-color 0.2s,
    color 0.2s;
  order: 2;
  flex-shrink: 0;
}
@media (min-width: 640px) {
  .portfolio-testimonials__nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    order: unset;
  }
}
.portfolio-testimonials__nav-btn:hover {
  background: var(--white-15);
  color: var(--color-on-dark);
}
.portfolio-testimonials__nav-btn-light {
  border-color: var(--color-surface-dark);
  color: var(--color-surface-dark);
}
.portfolio-testimonials__nav-btn-light:hover {
  background: var(--black-5);
  color: var(--color-surface-dark);
}
.portfolio-testimonials__nav-btn-prev {
  order: 2;
}
@media (min-width: 640px) {
  .portfolio-testimonials__nav-btn-prev {
    inset-inline-start: 0;
    order: unset;
  }
}
.portfolio-testimonials__nav-btn-next {
  order: 3;
}
@media (min-width: 640px) {
  .portfolio-testimonials__nav-btn-next {
    inset-inline-end: 0;
    order: unset;
  }
}
.portfolio-testimonials__viewport {
  overflow: hidden;
  padding-block: 2rem;
  margin-inline: -2rem;
  padding-inline: 2rem;
  order: 1;
  flex: 0 0 100%;
}
@media (min-width: 640px) {
  .portfolio-testimonials__viewport {
    order: unset;
    flex: unset;
    mask-image: linear-gradient(
      to right,
      transparent,
      black 2rem,
      black calc(100% - 2rem),
      transparent
    );
  }
}
.portfolio-testimonials__track {
  display: flex;
  gap: 2rem;
  transition: transform 0.5s ease;
  transform: translate(calc(-1 * var(--slide-offset, 0%)));
}
@media (min-width: 640px) {
  .portfolio-testimonials__track {
    transform: translate(calc(-0.5 * var(--slide-offset, 0%)));
  }
}
.portfolio-testimonials__card {
  flex: 0 0 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 1.5rem;
  border-radius: var(--radius-2xl);
  background: var(--color-background);
  box-shadow: var(--shadow-hover);
  justify-content: center;
  box-sizing: border-box;
}
@media (min-width: 640px) {
  .portfolio-testimonials__card {
    flex: 0 0 488px;
    block-size: 306px;
    padding: 2.5rem;
    box-shadow: var(--shadow-testimonial);
  }
}
.portfolio-testimonials__avatar {
  inline-size: 48px;
  block-size: 48px;
  flex-shrink: 0;
  border-radius: var(--radius-full);
  overflow: hidden;
  margin-block-end: 1.5rem;
}
.portfolio-testimonials__avatar-img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.portfolio-testimonials__quote {
  font-size: var(--font-size-body);
  color: var(--color-foreground);
  line-height: 1.7;
  margin: 0 0 2rem;
  font-style: italic;
}
.portfolio-testimonials__company {
  font-size: var(--font-size-body);
  font-weight: 700;
  color: var(--color-foreground);
  margin: 0;
}
.portfolio-testimonials__designation {
  font-size: var(--font-size-body-sm);
  color: var(--color-foreground);
  margin: 0.25rem 0 0;
}
.testimonials-section[data-c-testimonials-section] .section-intro-heading {
  margin-block-end: 1.75rem;
}
.testimonials-section[data-c-testimonials-section] .section-intro {
  margin-block-end: 1rem;
}
.testimonials-carousel-wrap[data-c-testimonials-section] {
  padding-inline: 0;
}

/* ---- index ---- */
.heading-light[data-c-heading-light] {
  font-weight: 400;
}
.heading-bold[data-c-heading-light] {
  font-weight: 700;
}
.insights-cta[data-c-heading-light] p {
  color: var(--color-on-dark) !important;
  max-inline-size: 28rem;
}
.insights-hero .insights-letters-scaler {
  position: absolute;
  inset-block-end: 0;
  inset-inline: 0;
  block-size: 0;
  z-index: 0;
  pointer-events: none;
  color: var(--color-on-dark);
  filter: blur(1.5px);
  container-type: inline-size;
}
.insights-hero .insights-letters-wrap {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 1440 / 518;
  overflow: visible;
}
.insights-hero .insights-hero-intro {
  max-inline-size: 48rem;
  margin-block-end: 2.5rem;
}
.insights-hero .insights-hero-intro .section-intro-body {
  max-inline-size: min(592px, 100%);
}
.hero-btn--subscribe[data-c-hero-btn] {
  border-color: var(--color-primary);
  color: var(--color-primary);
}
.hero-btn--subscribe[data-c-hero-btn]:hover {
  border-color: var(--color-primary-hover);
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.share-menu__row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.share-menu__icon-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 1.75rem;
  block-size: 1.75rem;
  border-radius: var(--radius-full);
  border: none;
  background: var(--color-on-dark);
  color: var(--color-surface-dark);
  cursor: pointer;
  transition: background-color 0.15s;
  text-decoration: none;
  padding: 0;
  font-family: inherit;
}
.share-menu__icon-btn:hover {
  opacity: 0.85;
}
.share-menu__icon-btn-copied {
  background: var(--color-primary);
  border-color: var(--color-primary);
}
.insight-modal__overlay {
  position: fixed;
  inset: 0;
  z-index: 9998;
  background-color: var(--overlay-dark);
  animation: _fadeIn_hwbf9_1 0.3s ease;
}
.insight-modal__dialog {
  position: fixed;
  inset: 0;
  z-index: 9999;
  margin: auto;
  inline-size: 1216px;
  max-inline-size: 95vw;
  max-block-size: 90vh;
  padding: 0;
  border: none;
  border-radius: 12px;
  background: transparent;
  overflow: visible;
  animation: _zoomIn_hwbf9_1 0.3s ease;
  transition:
    max-inline-size 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    max-block-size 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    border-radius 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.insight-modal__dialog-fullscreen {
  max-inline-size: 100vw;
  max-block-size: 100vh;
  inline-size: 100vw;
  border-radius: 0;
}
@media (max-width: 640px) {
  .insight-modal__dialog {
    max-inline-size: 100vw;
    max-block-size: 100vh;
    border-radius: 0;
  }
}
.insight-modal__content {
  position: relative;
  background-color: var(--color-surface-dark);
  border-radius: 12px;
  border-block-start: 4px solid var(--color-primary);
  padding: 1.25rem;
  overflow-y: auto;
  max-block-size: 90vh;
  transition: border-radius 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  scrollbar-width: thin;
  scrollbar-color: var(--white-20) transparent;
}
.insight-modal__content::-webkit-scrollbar {
  inline-size: 6px;
}
.insight-modal__content::-webkit-scrollbar-track {
  background: transparent;
}
.insight-modal__content::-webkit-scrollbar-thumb {
  background-color: var(--white-20);
  border-radius: 3px;
}
.insight-modal__content::-webkit-scrollbar-button {
  display: none;
  block-size: 0;
  inline-size: 0;
}
.insight-modal__content::-webkit-scrollbar-corner {
  display: none;
}
.insight-modal__dialog-fullscreen .insight-modal__content {
  border-radius: 0;
  max-block-size: 100vh;
  block-size: 100vh;
}
@media (min-width: 640px) {
  .insight-modal__content {
    padding: 2.5rem;
  }
}
@media (max-width: 640px) {
  .insight-modal__content {
    border-radius: 0;
  }
}
.insight-modal__toolbar {
  position: absolute;
  inset-block-start: 1rem;
  inset-inline-end: 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  z-index: 2;
}
.insight-modal__toolbar-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  color: var(--color-on-dark);
  cursor: pointer;
  padding: 0.25rem;
  opacity: 0.7;
  transition: opacity 0.15s;
}
.insight-modal__toolbar-btn:hover {
  opacity: 1;
}
.insight-modal__category {
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-primary);
  margin-block-end: 0.5rem;
}
.insight-modal__title {
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 4vw, 2rem);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-on-dark);
  margin: 0;
  padding-block: 0.5rem;
  padding-inline-end: 4rem;
}
.insight-modal__description {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--color-on-dark-muted);
  margin: 0 0 1.5rem;
}
.insight-modal__image-wrap {
  border: 1.5px dashed var(--white-50);
  border-radius: 8px;
  overflow: hidden;
  margin-block-end: 2rem;
}
.insight-modal__image {
  inline-size: 100%;
  block-size: auto;
  max-block-size: 360px;
  object-fit: cover;
  display: block;
}
.insight-modal__body-columns {
  margin-block-end: 2rem;
}
@media (min-width: 768px) {
  .insight-modal__body-columns {
    column-count: 2;
    column-gap: 2rem;
  }
}
.insight-modal__body-highlight {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: var(--color-on-dark);
  margin: 0 0 1.25rem;
  text-align: justify;
}
.insight-modal__body-content {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: var(--color-on-dark-muted);
  margin: 0;
  text-align: justify;
}
.insight-modal__about-card {
  background-color: var(--white-6);
  border: 1px solid var(--white-10);
  border-inline-start: 3px solid var(--color-primary);
  border-radius: 12px;
  padding: 1.25rem;
  margin-block-end: 1.5rem;
}
@media (min-width: 640px) {
  .insight-modal__about-card {
    padding: 1.5rem 2rem;
  }
}
.insight-modal__about-heading {
  font-family: var(--font-display);
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-primary);
  margin: 0 0 1rem;
}
.insight-modal__about-inner {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .insight-modal__about-inner {
    flex-direction: row;
    align-items: center;
    gap: 2rem;
  }
}
.insight-modal__author-section {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  flex-shrink: 0;
}
.insight-modal__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 4.5rem;
  block-size: 4.5rem;
  border-radius: var(--radius-full);
  background-color: var(--white-10);
  color: var(--color-on-dark-muted);
  overflow: hidden;
  flex-shrink: 0;
}
.insight-modal__avatar-img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.insight-modal__author-details {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.insight-modal__author-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.insight-modal__author-name {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--color-on-dark);
  margin: 0;
}
.insight-modal__author-role {
  font-size: 0.8125rem;
  color: var(--color-on-dark-muted);
  margin: 0;
}
.insight-modal__author-divider {
  inline-size: 4rem;
  block-size: 1px;
  background-color: var(--white-15);
}
.insight-modal__author-meta {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.insight-modal__author-meta-line {
  font-size: 0.8125rem;
  color: var(--color-on-dark-muted);
  margin: 0;
}
.insight-modal__right-column {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-inline-start: auto;
}
.insight-modal__topics-section {
  min-inline-size: 0;
}
.insight-modal__topics-label {
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-on-dark-muted);
  margin: 0 0 0.5rem;
}
.insight-modal__topics-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
}
.insight-modal__topic-pill {
  display: inline-block;
  padding-inline: 1rem;
  padding-block: 0.375rem;
  border-radius: 8px;
  border: 1px solid var(--white-20);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.insight-modal__footer {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
}
.insight-modal__external-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background-color: var(--color-primary);
  border: 2px solid var(--color-primary);
  border-radius: var(--radius-full);
  color: var(--color-on-dark);
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  text-decoration: none;
  padding-inline: 1.5rem;
  padding-block: 0.625rem;
  transition:
    background-color 0.15s,
    color 0.15s;
}
.insight-modal__external-link:hover {
  background-color: transparent;
  color: var(--color-primary);
}
.insight-modal__back-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: none;
  border: 2px solid var(--color-primary);
  border-radius: var(--radius-full);
  color: var(--color-primary);
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  padding-inline: 1.5rem;
  padding-block: 0.625rem;
  transition:
    background-color 0.15s,
    color 0.15s;
}
.insight-modal__back-link:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
@keyframes _fadeIn_hwbf9_1 {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes _zoomIn_hwbf9_1 {
  0% {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.knowledge-section[data-c-knowledge-section] {
  overflow: hidden;
  padding-block-end: 0 !important;
}
.knowledge-section[data-c-knowledge-section] .section-intro-heading {
  color: var(--color-primary);
}
.knowledge-section[data-c-knowledge-section] .section-intro p {
  line-height: 1.3;
}
.news-grid__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .news-grid__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .news-grid__grid {
    grid-template-columns: repeat(3, 384px);
  }
}
.news-grid__dashed-card {
  border: 2px dashed var(--border-warm-dark);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: var(--shadow-card);
  transition:
    box-shadow 0.2s,
    transform 0.2s;
  min-block-size: 494px;
}
.news-grid__dashed-card:hover {
  box-shadow: var(--shadow-subtle);
  transform: translateY(-2px);
}
.news-grid__card {
  display: flex;
  flex-direction: column;
  background-color: var(--color-background);
  text-decoration: none;
  block-size: 100%;
}
.news-grid__card-image-wrap {
  aspect-ratio: 336 / 210;
  overflow: hidden;
  margin: 1.5rem 1.5rem 0;
  border-radius: 8px;
}
.news-grid__card-image {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  display: block;
}
.news-grid__card-body {
  padding: 1.25rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.news-grid__card-category {
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-primary);
  margin-block-end: 0.5rem;
}
.news-grid__card-title {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--color-foreground);
  margin: 0 0 0.75rem;
}
.news-grid__card-summary {
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.375;
  letter-spacing: -0.01em;
  color: var(--color-foreground);
  margin: 0 0 1rem;
  flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.news-grid__card-date {
  font-size: 1rem;
  color: var(--color-muted-foreground);
}
.news-grid__card-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--color-primary);
  margin-block-start: auto;
  padding-block-start: 1rem;
}
.list-row[data-c-list-row] {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  padding-block: 2.25rem;
  border-block-start: 1px solid var(--color-border);
  transition: background-color 0.15s;
}
.list-row--dark[data-c-list-row] {
  border-block-start-color: var(--color-border-on-dark);
}
.list-row--dark[data-c-list-row]:hover {
  background-color: var(--white-2);
}
.list-row--light[data-c-list-row]:hover {
  background-color: var(--black-2);
}
.list-row[data-c-list-row]:last-child {
  border-block-end: 1px solid var(--color-border);
}
.list-row--dark[data-c-list-row]:last-child {
  border-block-end-color: var(--color-border-on-dark);
}
@media (min-width: 768px) {
  .list-row[data-c-list-row] {
    grid-template-columns: 140px 1fr auto;
    gap: 2.5rem;
    align-items: start;
    padding-inline: 1rem;
  }
}
.list-row-leading[data-c-list-row] {
  display: flex;
  align-items: flex-start;
  padding-block-start: 0.25rem;
}
.list-row-content[data-c-list-row] {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.list-row-trailing[data-c-list-row] {
  display: flex;
  align-items: flex-start;
  padding-block-start: 0.25rem;
  flex-shrink: 0;
}
.dashed-card[data-c-dashed-card] {
  border: 2px dashed var(--border-warm-dark);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: var(--shadow-card);
}
.dashed-card--dark[data-c-dashed-card] {
  border-color: var(--color-on-dark-muted);
}
.press-list[data-c-press-card] {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.press-card[data-c-press-card] .list-row {
  border-block-start: none;
  padding: 1.5rem 1.25rem;
  align-items: center !important;
}
@media (min-width: 768px) {
  .press-card[data-c-press-card] .list-row {
    padding: 1.5rem 1rem;
  }
}
.press-card[data-c-press-card] .list-row:last-child {
  border-block-end: none;
}
.press-card[data-c-press-card] .list-row-leading,
.press-card[data-c-press-card] .list-row-trailing {
  align-items: center !important;
  padding-block-start: 0 !important;
}
.press-date[data-c-press-card] {
  font-size: clamp(1rem, 3vw, 1.5rem);
  font-weight: 500;
  color: var(--color-primary);
  white-space: nowrap;
}
.press-card[data-c-press-card] .arrow-link {
  color: var(--color-on-dark) !important;
  font-size: 1.125rem;
}

/* ---- people ---- */
.beyond-grid[data-c-beyond-text],
.beyond-row[data-c-beyond-text] {
  display: flex;
  flex-direction: column;
  gap: 0;
}
@media (min-width: 900px) {
  .beyond-row[data-c-beyond-text] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    align-items: stretch;
  }
  .beyond-row--reversed[data-c-beyond-text] .beyond-image[data-c-beyond-text] {
    order: 2;
  }
  .beyond-row--reversed[data-c-beyond-text] .beyond-text[data-c-beyond-text] {
    order: 1;
  }
  .beyond-row[data-c-beyond-text] .beyond-text[data-c-beyond-text] {
    border-inline-start: none;
  }
  .beyond-row--reversed[data-c-beyond-text] .beyond-text[data-c-beyond-text] {
    border-inline-start: 2px dashed var(--white-50);
    border-inline-end: none;
  }
}
.beyond-image[data-c-beyond-text] {
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 608 / 222;
  flex-shrink: 0;
}
.culture-img[data-c-beyond-text] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  display: block;
}
.beyond-text[data-c-beyond-text] {
  border: 2px dashed var(--white-50);
  border-radius: 8px;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
  flex-shrink: 0;
}
.culture-card-label[data-c-beyond-text] {
  display: block;
  font-size: var(--font-size-caption);
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-primary);
  margin-block-end: 0.75rem;
}
.culture-card-title[data-c-beyond-text] {
  font-family: var(--font-display);
  font-size: var(--font-size-lead);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-on-dark);
  margin: 0 0 0.5rem;
}
.culture-card-body[data-c-beyond-text] {
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-on-dark-muted);
  margin: 0;
}
.people-hero .hero-top {
  max-inline-size: 48rem;
  margin-block-end: 2.5rem;
}
.people-hero .hero-top .section-intro-body {
  max-inline-size: 592px;
}
.people-hero .hero-content-actions {
  margin-block-end: 6rem;
}
.people-hero .people-letters-container {
  position: absolute;
  inset-inline: 0;
  inset-block-start: 50%;
  inset-block-end: 0;
  z-index: 0;
  pointer-events: none;
  color: var(--color-on-dark);
  overflow: hidden;
  filter: blur(1.5px);
}
.people-hero .hero-stats .responsive-grid {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 768px) {
  .people-hero .hero-stats .responsive-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.people-hero .hero-stats .trapezoid-card {
  background-color: var(--white-6);
  --trapezoid-value-color: var(--color-on-dark);
  --trapezoid-label-color: var(--color-on-dark-muted);
}
.people-hero .hero-stats .trapezoid-shadow {
  filter: none;
}
.gallery-grid[data-c-gallery-item] {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  block-size: auto;
}
@media (min-width: 768px) {
  .gallery-grid[data-c-gallery-item] {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: 260px 260px;
    block-size: 520px;
  }
  .gallery-item--large[data-c-gallery-item] {
    grid-column: 1 / 3;
    grid-row: 1 / 3;
  }
  .gallery-item--small[data-c-gallery-item]:nth-child(2) {
    grid-column: 3;
    grid-row: 1;
  }
  .gallery-item--small[data-c-gallery-item]:nth-child(3) {
    grid-column: 4;
    grid-row: 1;
  }
  .gallery-item--small[data-c-gallery-item]:nth-child(4) {
    grid-column: 3;
    grid-row: 2;
  }
  .gallery-item--small[data-c-gallery-item]:nth-child(5) {
    grid-column: 4;
    grid-row: 2;
  }
}
.gallery-item[data-c-gallery-item] {
  overflow: hidden;
}
.gallery-img[data-c-gallery-item] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  display: block;
}
.numbered-label[data-c-numbered-label] {
  display: block;
  font-family: var(--font-display);
  font-size: 20px;
  font-weight: 500;
  color: var(--color-primary);
  line-height: 1;
}
.numbered-card-inner[data-c-numbered-card-inner] {
  padding: 2rem;
}
.numbered-card-inner[data-c-numbered-card-inner] .numbered-card-number {
  margin-block-end: 1.25rem;
}
.numbered-card-title[data-c-numbered-card-inner] {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 4vw, 36px);
  font-weight: 700;
  line-height: 1.1;
  color: var(--color-foreground);
  margin: 0 0 1rem;
}
@media (min-width: 768px) {
  .numbered-card-title[data-c-numbered-card-inner] {
    margin: 0 0 1.5rem;
  }
}
.numbered-card-body[data-c-numbered-card-inner] {
  font-family: var(--font-display);
  font-size: clamp(0.9375rem, 2vw, 18px);
  font-weight: 500;
  line-height: 1.45;
  color: var(--color-foreground);
  margin: 0;
}
.values-wrap[data-c-values-wrap] .hover-card {
  border: none;
  border-radius: 0;
  border-block-end: 1px solid var(--white-20);
}
@media (min-width: 768px) {
  .values-wrap[data-c-values-wrap] section {
    min-block-size: 600px;
  }
  .values-wrap[data-c-values-wrap] .hover-card {
    border-block-end: none;
    border-inline-end: 1px solid var(--white-20);
  }
}
.values-wrap[data-c-values-wrap] .hover-card:last-child {
  border-inline-end: none;
  border-block-end: none;
}
@media (min-width: 768px) {
  .values-wrap[data-c-values-wrap]
    .hover-card:first-child
    .numbered-card-inner {
    padding-inline-start: 0;
  }
}

/* ---- services ---- */
.uc-header[data-c-uc-track] {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2rem;
  margin-block-end: 3rem;
}
.uc-heading[data-c-uc-track] {
  font-family: var(--font-display);
  font-size: var(--font-size-display);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--color-surface-dark);
  margin: 0 0 1rem;
}
.uc-desc[data-c-uc-track] {
  font-family: var(--font-display);
  font-size: var(--font-size-lead);
  font-weight: 500;
  line-height: 1.4;
  color: var(--color-foreground);
  margin: 0;
  max-inline-size: 32rem;
}
.uc-nav[data-c-uc-track] {
  display: flex;
  gap: 0.75rem;
  flex-shrink: 0;
}
.uc-arrow[data-c-uc-track] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: 2rem;
  block-size: 2rem;
  border-radius: 50%;
  border: 2px solid var(--color-primary);
  background-color: transparent;
  color: var(--color-primary);
  cursor: pointer;
  flex-shrink: 0;
  transition:
    background-color 0.15s,
    color 0.15s;
}
.uc-arrow[data-c-uc-track]:hover {
  background-color: var(--color-primary);
  color: var(--color-background);
}
.uc-track[data-c-uc-track] {
  display: flex;
  gap: 1.5rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-padding-inline-start: 0;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-block-end: 0.5rem;
}
.uc-track[data-c-uc-track]::-webkit-scrollbar {
  display: none;
}
.uc-track[data-c-uc-track] .uc-card {
  flex: 0 0 auto;
  inline-size: min(384px, 80vw);
  scroll-snap-align: start;
}
.uc-category[data-c-uc-track] {
  font-size: var(--font-size-body-sm);
  color: var(--color-on-dark-muted);
  margin-block-end: 0.5rem;
}
.uc-track[data-c-uc-track] .uc-card-title {
  margin-block-end: 1.25rem;
}
.uc-track[data-c-uc-track] .arrow-link--dark {
  color: var(--color-primary);
}
@media (max-width: 640px) {
  .uc-header[data-c-uc-track] {
    flex-direction: column;
    gap: 1.5rem;
  }
}
.hwwGrid[data-c-hwwheading] {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .hwwGrid[data-c-hwwheading] {
    grid-template-columns: 1fr repeat(2, 384px);
    grid-template-rows: repeat(2, 384px);
    justify-content: center;
    align-items: center;
    block-size: 960px;
    align-content: center;
  }
  .hwwHeading[data-c-hwwheading] {
    grid-row: 1 / -1;
  }
}
.hwwHeading[data-c-hwwheading] {
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 6vw, 5.625rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--color-foreground);
  margin: 0;
  align-self: start;
}
.hwwHeading[data-c-hwwheading] strong {
  font-weight: 700;
}
.hwwCard[data-c-hwwheading] {
  background-color: var(--color-background);
  border-radius: 8px;
  box-shadow: var(--shadow-card);
  padding: 2rem;
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .hwwCard[data-c-hwwheading] {
    inline-size: 384px;
    block-size: 384px;
  }
}
.hwwCardHeader[data-c-hwwheading] {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-block-end: 1rem;
}
.hwwCardIconBox[data-c-hwwheading] {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 3.375rem;
  block-size: 3.375rem;
  border-radius: 8px;
  background-color: var(--primary-30);
  flex-shrink: 0;
  filter: blur(0px);
  backdrop-filter: blur(3px);
}
.hwwCardTitles[data-c-hwwheading] {
  display: flex;
  flex-direction: column;
}
.hwwCardTitle[data-c-hwwheading] {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-foreground);
  margin: 0;
}
.hwwCardSubtitle[data-c-hwwheading] {
  font-family: var(--font-display);
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--color-foreground);
  opacity: 0.7;
  margin-block-start: 0.125rem;
}
.hwwCardDesc[data-c-hwwheading] {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.375rem;
  letter-spacing: -0.04em;
  color: var(--color-foreground);
  margin: 0;
}
.hwwCardBullets[data-c-hwwheading] {
  list-style: disc;
  padding-inline-start: 1.25rem;
  margin: 1rem 0 0;
  font-size: 0.875rem;
  line-height: 1.375rem;
  letter-spacing: -0.04em;
  color: var(--color-foreground);
}
.hwwCardBullets[data-c-hwwheading] li[data-c-hwwheading] {
  margin-block-end: 0.25rem;
}
.service-highlights-wrap[data-c-service-highlights-wrap] {
  --color-surface-dark: var(--color-surface-black);
  --color-muted-foreground: var(--color-surface-black);
}
.service-highlights-wrap[data-c-service-highlights-wrap] .responsive-grid {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 768px) {
  .service-highlights-wrap[data-c-service-highlights-wrap] .responsive-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.service-highlights-wrap[data-c-service-highlights-wrap]
  .section-intro--light
  .section-intro-body {
  font-weight: 500;
}
.highlight-card[data-c-service-highlights-wrap] {
  --highlight-card-bg: var(--color-background);
  --highlight-card-radius: 0.75rem;
  --highlight-card-padding: clamp(1.25rem, 2.5vw, 2rem) clamp(0.75rem, 2vw, 1.5rem);
  --highlight-card-shadow: var(--shadow-card);
  --highlight-card-shadow-hover: var(--shadow-overlay);
  position: relative;
  background-color: var(--highlight-card-bg);
  border-radius: var(--highlight-card-radius);
  padding: var(--highlight-card-padding);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  gap: 1rem;
  inline-size: 100%;
  transition: box-shadow 0.2s;
  box-shadow: var(--highlight-card-shadow);
  cursor: pointer;
}
.highlight-card[data-c-service-highlights-wrap] .arrow-link:after {
  content: "";
  position: absolute;
  inset: 0;
}
.highlight-card[data-c-service-highlights-wrap]:hover {
  box-shadow: var(--highlight-card-shadow-hover);
}
.highlight-icon-wrap[data-c-service-highlights-wrap] {
  display: flex;
  align-items: center;
  justify-content: center;
  block-size: clamp(48px, 8vw, 56px);
  inline-size: clamp(48px, 8vw, 56px);
}
.highlight-title[data-c-service-highlights-wrap] {
  font-family: var(--font-display);
  font-size: clamp(0.875rem, 2.5vw, var(--font-size-lead));
  font-weight: 700;
  color: var(--color-foreground);
  margin: 0;
  text-align: center;
}
.heroBg[data-c-herocontentwrap] {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.heroBgImg[data-c-herocontentwrap] {
  --hero-bg-opacity: 0.7;
  --hero-bg-blur: 2px;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1) blur(var(--hero-bg-blur));
  opacity: var(--hero-bg-opacity);
}
.heroLettersScaler[data-c-herocontentwrap] {
  position: absolute;
  inset-block-end: 0;
  inset-inline: 0;
  block-size: 0;
  z-index: 0;
  pointer-events: none;
  color: var(--color-on-dark);
  opacity: 0.7;
  container-type: inline-size;
}
.heroLettersWrap[data-c-herocontentwrap] {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 1440 / 518;
  overflow: visible;
  filter: blur(1.5px);
}
.heroContentWrap[data-c-herocontentwrap] {
  position: relative;
  z-index: 2;
}
.heroContentWrap[data-c-herocontentwrap] .heroText {
  position: relative;
  z-index: 1;
  margin-block-end: 0;
}
.heroContentWrap[data-c-herocontentwrap] .heroText .section-intro-heading {
  margin-block-end: 2rem;
}
.heroBody[data-c-herocontentwrap] {
  max-inline-size: 1008px;
}
.heroBody[data-c-herocontentwrap] p[data-c-herocontentwrap] {
  font-size: var(--font-size-sub);
  font-weight: 400;
  line-height: 1.3;
  color: var(--color-on-dark);
  margin: 0 0 1.5rem;
}
.heroBody[data-c-herocontentwrap] p[data-c-herocontentwrap]:last-child {
  margin-block-end: 0;
}
.solutions-roi {
  isolation: isolate;
}
.solutions-roi:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(
      ellipse 115% 40% at 50% 50%,
      color-mix(in srgb, var(--color-surface-black) 24%, transparent),
      color-mix(in srgb, var(--color-surface-black) 21%, transparent) 45%,
      color-mix(in srgb, var(--color-surface-black) 11%, transparent) 78%,
      color-mix(in srgb, var(--color-surface-black) 4%, transparent)
    ),
    radial-gradient(
      ellipse 75% 62% at 50% 50%,
      color-mix(in srgb, var(--color-surface-black) 5%, transparent) 0%,
      color-mix(in srgb, var(--color-surface-black) 2%, transparent) 60%,
      transparent 100%
    );
}
.solutions-roi .section-container {
  position: relative;
  z-index: 1;
}
.solutionsHeading[data-c-solutionsheader] {
  font-family: var(--font-display);
  font-size: var(--font-size-display);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--color-foreground);
  text-align: center;
  margin: 0 0 2.5rem;
}
.solutionsHeader[data-c-solutionsheader] {
  display: none;
}
@media (min-width: 768px) {
  .solutionsHeader[data-c-solutionsheader] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-block-end: 1rem;
    padding-inline: 1.5rem;
  }
}
.solutionsColLabel[data-c-solutionsheader] {
  font-family: var(--font-display);
  font-size: var(--font-size-h4);
  font-weight: 700;
  color: var(--color-foreground);
  text-align: center;
}
.solutionsGrid[data-c-solutionsheader] {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.solutionRow[data-c-solutionsheader] {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.75rem;
}
@media (min-width: 768px) {
  .solutionRow[data-c-solutionsheader] {
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    align-items: center;
  }
}
.solutionCard[data-c-solutionsheader] {
  background-color: var(--color-background);
  border-radius: var(--radius-lg);
  padding: 1.25rem 1.5rem;
  box-shadow: var(--shadow-card);
}
.solutionName[data-c-solutionsheader],
.solutionResult[data-c-solutionsheader] {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-family: var(--font-display);
  font-size: var(--font-size-sub);
  font-weight: 500;
  color: var(--color-foreground);
  line-height: 1;
}
.solutionIcon[data-c-solutionsheader] {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 2.75rem;
  block-size: 2.75rem;
  border-radius: 0.5rem;
  background-color: var(--primary-20);
  flex-shrink: 0;
}
.statsBannerText[data-c-statsbannertext] {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
}
.statsBannerQuote[data-c-statsbannertext] {
  font-family: var(--font-display);
  font-size: var(--font-size-sub);
  font-weight: 600;
  color: var(--color-on-dark);
  line-height: 1.6;
  margin: 0;
}
.statsBannerTagline[data-c-statsbannertext] {
  font-family: var(--font-display);
  font-size: var(--font-size-h4);
  font-weight: 700;
  color: var(--color-on-dark);
  line-height: 1.3;
  margin: 0;
}
.ep[data-c-ep-icon-link] {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.ep-photo-wrap[data-c-ep-icon-link] {
  inline-size: 19.875rem;
  block-size: 19.875rem;
  border-radius: 50%;
  overflow: hidden;
  margin-block-end: 1rem;
  flex-shrink: 0;
}
.ep-photo[data-c-ep-icon-link] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.ep-name[data-c-ep-icon-link] {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 700;
  margin: 0 0 0.25rem;
}
.ep--dark[data-c-ep-icon-link] .ep-name[data-c-ep-icon-link] {
  color: var(--color-on-dark);
}
.ep--light[data-c-ep-icon-link] .ep-name[data-c-ep-icon-link] {
  color: var(--color-foreground);
}
.ep-role[data-c-ep-icon-link] {
  font-size: 1.375rem;
  margin: 0;
}
.ep--dark[data-c-ep-icon-link] .ep-role[data-c-ep-icon-link] {
  color: var(--color-on-dark);
}
.ep--light[data-c-ep-icon-link] .ep-role[data-c-ep-icon-link] {
  color: var(--color-foreground);
}
.ep-icons[data-c-ep-icon-link] {
  display: flex;
  gap: 0.5rem;
  margin-block-start: 1.25rem;
}
.ep-icon-link[data-c-ep-icon-link] {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 2.5rem;
  block-size: 2.5rem;
  border-radius: 50%;
  text-decoration: none;
  transition: opacity 0.15s;
}
.ep-icon-link[data-c-ep-icon-link]:hover {
  opacity: 0.8;
}
.ep--dark[data-c-ep-icon-link] .ep-icon-link[data-c-ep-icon-link] {
  background-color: var(--color-on-dark);
  color: var(--color-foreground);
}
.ep--light[data-c-ep-icon-link] .ep-icon-link[data-c-ep-icon-link] {
  background-color: var(--color-surface-warm-dark);
  color: var(--color-on-dark);
}
.check-item[data-c-check-item] {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.check-icon[data-c-check-item] {
  flex-shrink: 0;
  inline-size: 1.375rem;
  block-size: 1.375rem;
  border-radius: 50%;
  background-color: var(--color-success);
  color: var(--color-on-dark);
  display: flex;
  align-items: center;
  justify-content: center;
  border: var(--check-border, none);
}
.techCard[data-c-techcardpersonwrap] {
  background-color: var(--color-background);
  border: 2px dashed var(--warm-dark-50);
  border-radius: 1.5rem;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  max-inline-size: 100%;
  margin-inline: auto;
  overflow: hidden;
  scroll-margin-block-start: 7rem;
}
@media (min-width: 768px) {
  .techCard[data-c-techcardpersonwrap] {
    grid-template-columns: 2fr 3fr;
    min-block-size: 488px;
  }
  .techCard--reversed[data-c-techcardpersonwrap] {
    grid-template-columns: 3fr 2fr;
  }
  .techCard--reversed[data-c-techcardpersonwrap]
    .techCardPersonWrap[data-c-techcardpersonwrap] {
    order: 2;
    border-radius: 0;
  }
  .techCard--reversed[data-c-techcardpersonwrap]
    .techCardContent[data-c-techcardpersonwrap] {
    order: 1;
  }
}
.techCardPersonWrap[data-c-techcardpersonwrap] {
  background-color: var(--warm-dark-10);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
}
.techCardPersonWrap[data-c-techcardpersonwrap] .ep-photo-wrap {
  inline-size: clamp(12rem, 50vw, 19.875rem);
  block-size: clamp(12rem, 50vw, 19.875rem);
}
@media (min-width: 768px) {
  .techCardPersonWrap[data-c-techcardpersonwrap] {
    padding: 2.5rem;
  }
}
@media (min-width: 768px) {
  .techCardPersonWrap[data-c-techcardpersonwrap] {
    border-start-start-radius: 1.375rem;
    border-end-start-radius: 1.375rem;
    border-start-end-radius: 0;
    border-end-end-radius: 0;
  }
  .techCard--reversed[data-c-techcardpersonwrap]
    .techCardPersonWrap[data-c-techcardpersonwrap] {
    border-start-start-radius: 0;
    border-end-start-radius: 0;
    border-start-end-radius: 1.375rem;
    border-end-end-radius: 1.375rem;
  }
}
.techCardExpert[data-c-techcardpersonwrap] {
  justify-content: center;
}
.techCardContent[data-c-techcardpersonwrap] {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.5rem;
}
@media (min-width: 768px) {
  .techCardContent[data-c-techcardpersonwrap] {
    padding: 2.5rem;
  }
}
@media (min-width: 1280px) {
  .techCardContent[data-c-techcardpersonwrap] {
    padding: 3rem 2rem 3rem 3rem;
  }
}
.techCardContent[data-c-techcardpersonwrap] .text-block-heading {
  max-inline-size: 30rem;
}
.techCardContent[data-c-techcardpersonwrap] .text-block-body p {
  font-weight: 500;
  color: var(--color-foreground) !important;
}
.techCardFeatures[data-c-techcardpersonwrap] {
  list-style: none;
  padding: 0;
  margin: 1.5rem 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
@media (min-width: 768px) {
  .techCardFeatures[data-c-techcardpersonwrap] {
    margin: 2.5rem 0 2rem;
  }
}
.techCardFeature[data-c-techcardpersonwrap] {
  font-size: var(--font-size-body-lg);
  color: var(--color-foreground);
  line-height: 1.4;
  align-items: center;
}
.techCardActions[data-c-techcardpersonwrap] {
  align-items: center;
}
.techCardConsultation[data-c-techcardpersonwrap] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-display);
  font-size: var(--font-size-body);
  font-weight: 500;
  color: var(--color-foreground);
}
.readinessCard[data-c-readinesscontent] {
  background-color: var(--color-surface-warm-dark);
  border-radius: 1.5rem;
  padding: 1.5rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  max-inline-size: 100%;
  margin-inline: auto;
  margin-block-end: 4rem;
  overflow: hidden;
}
@media (min-width: 768px) {
  .readinessCard[data-c-readinesscontent] {
    grid-template-columns: auto 1fr;
    padding: 2.5rem;
    gap: 2.5rem;
    min-block-size: 488px;
  }
}
@media (min-width: 1280px) {
  .readinessCard[data-c-readinesscontent] {
    padding: 3rem 3.5rem;
    gap: 3rem;
  }
}
.readinessExpert[data-c-readinesscontent] {
  justify-content: center;
}
.readinessCard[data-c-readinesscontent] .ep-photo-wrap {
  inline-size: clamp(12rem, 50vw, 19.875rem);
  block-size: clamp(12rem, 50vw, 19.875rem);
}
.readinessContent[data-c-readinesscontent] {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.readinessContent[data-c-readinesscontent] .text-block-heading {
  max-inline-size: 30rem;
}
.readinessContent[data-c-readinesscontent] .text-block-body {
  max-inline-size: 100%;
}
.readinessContent[data-c-readinesscontent] .text-block-body p {
  font-weight: 500;
}
.readinessChecklist[data-c-readinesscontent] {
  list-style: none;
  padding: 0;
  margin: 2.5rem 0 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.readinessCheckItem[data-c-readinesscontent] {
  font-size: var(--font-size-sub);
  line-height: 1.4;
  align-items: center;
}
.readinessContent[data-c-readinesscontent] .btn-link {
  align-self: flex-start;
  margin-block-start: 0.5rem;
}
.tech-cards[data-c-readinesscontent] {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

/* ---- labels ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.content-modal__overlay {
  position: fixed;
  inset: 0;
  z-index: 100;
  background-color: var(--overlay-dark, rgba(0, 0, 0, 0.6));
  animation: _contentModalFade_1v0dy_1 0.2s ease;
}
.content-modal__dialog {
  position: fixed;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  transform: translate(-50%, -50%);
  z-index: 101;
  inline-size: min(92vw, 40rem);
  max-block-size: 88vh;
  overflow-y: auto;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border-radius: 1rem;
  background-color: var(--color-background);
  color: var(--color-foreground);
  box-shadow: var(--shadow-card, 0 12px 40px rgba(0, 0, 0, 0.25));
  animation: _contentModalPop_1v0dy_1 0.2s ease;
}
.content-modal__close-button {
  position: absolute;
  inset-block-start: 1rem;
  inset-inline-end: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: 2.5rem;
  block-size: 2.5rem;
  border: none;
  border-radius: var(--radius-full, 9999px);
  background-color: var(--color-muted);
  color: var(--color-foreground);
  cursor: pointer;
  transition: background-color 0.15s;
}
.content-modal__close-button:hover {
  background-color: var(--color-border);
}
.content-modal__image-wrap {
  margin-block-end: 1.5rem;
  border-radius: 0.75rem;
  overflow: hidden;
}
.content-modal__image {
  inline-size: 100%;
  block-size: auto;
  object-fit: cover;
  display: block;
}
.content-modal__title {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 4vw, 2rem);
  font-weight: 700;
  line-height: 1.1;
  margin: 0 2.5rem 1rem 0;
  color: var(--color-foreground);
}
.content-modal__body {
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: var(--color-foreground);
  margin: 0;
  white-space: pre-line;
}
.content-modal__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-block-start: 2rem;
  block-size: 48px;
  padding-inline: 2rem;
  border-radius: var(--radius-full, 9999px);
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.15s;
}
.content-modal__cta:hover {
  background-color: var(--color-primary-hover);
}
@keyframes _contentModalFade_1v0dy_1 {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes _contentModalPop_1v0dy_1 {
  0% {
    opacity: 0;
    transform: translate(-50%, -48%) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .content-modal__overlay,
  .content-modal__dialog {
    animation: none;
  }
}
.site-footer[data-c-footer-inner] {
  background-color: var(--color-surface-dark);
  color: var(--color-on-dark-muted);
  margin-block-start: -1px;
}
.footer-inner[data-c-footer-inner] {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
  padding-block: 3rem 1.5rem;
}
@media (min-width: 640px) {
  .footer-inner[data-c-footer-inner] {
    padding-inline: 4rem;
  }
}
@media (min-width: 768px) {
  .footer-inner[data-c-footer-inner] {
    grid-template-columns: 2fr 1fr 1fr 1.5fr;
    gap: 2rem;
    align-items: start;
  }
}
.footer-tagline[data-c-footer-inner] {
  font-size: 1.125rem;
  line-height: 1.22;
  color: var(--color-on-dark);
  margin: 0 0 1.5rem;
  max-inline-size: 24rem;
}
.footer-tagline-link[data-c-footer-inner] {
  color: inherit;
  text-decoration: none;
  transition: color 0.15s;
}
.footer-tagline-link[data-c-footer-inner]:hover {
  text-decoration: underline;
}
.footer-social[data-c-footer-inner] {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  margin-block-start: 2.5rem;
}
.social-icon[data-c-footer-inner] {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 2rem;
  block-size: 2rem;
  border-radius: var(--radius-full);
  background-color: var(--color-background);
  color: var(--color-foreground);
  text-decoration: none;
  transition:
    background-color 0.15s,
    color 0.15s;
}
.social-icon[data-c-footer-inner]:hover {
  background-color: var(--white-80);
  color: var(--color-foreground);
}
.footer-heading[data-c-footer-inner] {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-on-dark);
  margin: 0 0 1.25rem;
  text-transform: none;
  letter-spacing: 0;
}
.footer-link-list[data-c-footer-inner] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.footer-link[data-c-footer-inner] {
  font-size: 0.875rem;
  line-height: 1.43;
  color: var(--color-on-dark);
  text-decoration: none;
  transition: color 0.15s;
  display: inline-block;
}
.footer-link[data-c-footer-inner]:hover {
  color: var(--color-on-dark);
}
.footer-address[data-c-footer-inner] {
  font-style: normal;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.footer-address[data-c-footer-inner] p[data-c-footer-inner] {
  font-size: 1rem;
  color: var(--color-on-dark);
  margin: 0;
  line-height: 1.22;
}
.footer-bottom[data-c-footer-inner] {
  border-block-start: none;
  padding-inline: 1.5rem;
  padding-block: 0.875rem 3rem;
}
@media (min-width: 640px) {
  .footer-bottom[data-c-footer-inner] {
    padding-inline: 4rem;
  }
}
.footer-bottom-inner[data-c-footer-inner] {
  max-inline-size: 1920px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .footer-bottom-inner[data-c-footer-inner] {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
  }
}
.footer-bottom[data-c-footer-inner] p[data-c-footer-inner] {
  margin-block: 0;
  font-size: 1.125rem;
  line-height: 1.22;
  color: var(--color-on-dark);
}
.copyright-line[data-c-footer-inner] {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.copyright-icon[data-c-footer-inner] {
  color: var(--white-40);
}
.footer-signature-link[data-c-footer-inner] {
  display: inline-flex;
  flex-shrink: 0;
  border-radius: 0.25rem;
  transition: opacity 0.15s;
}
.footer-signature-link[data-c-footer-inner]:hover {
  opacity: 0.75;
}
.footer-signature-link[data-c-footer-inner]:focus-visible {
  outline: 2px solid var(--color-on-dark);
  outline-offset: 4px;
}
.footer-signature[data-c-footer-inner] {
  inline-size: 384px;
  max-inline-size: 100%;
  block-size: auto;
}
.site-header[data-c-header-actions] {
  position: fixed;
  top: 0;
  inset-inline-start: 50%;
  transform: translate(-50%);
  inline-size: 100%;
  max-inline-size: 1920px;
  z-index: 40;
  background-color: var(--black-65);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  box-shadow: var(--shadow-subtle);
}
nav[data-c-header-actions] {
  display: flex;
  align-items: center;
  gap: 2rem;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
  block-size: 5.625rem;
}
@media (min-width: 640px) {
  nav[data-c-header-actions] {
    padding-inline: 4rem;
  }
}
.site-logo[data-c-header-actions] {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}
.nav-links[data-c-header-actions] {
  display: none;
  list-style: none;
  margin: 0;
  margin-inline-start: 2rem;
  padding: 0;
  gap: 0;
  flex: 1;
}
@media (min-width: 768px) {
  .nav-links[data-c-header-actions] {
    display: flex;
    align-items: center;
  }
}
.nav-link[data-c-header-actions] {
  display: inline-flex;
  align-items: center;
  padding-inline: 1rem;
  padding-block: 0.5rem;
  font-size: var(--font-size-body);
  font-weight: 400;
  text-decoration: none;
  color: var(--color-on-dark);
  transition: opacity 0.15s;
}
.nav-link[data-c-header-actions]:hover {
  opacity: 0.8;
}
.nav-link--active[data-c-header-actions] {
  color: var(--color-on-dark);
  font-weight: 700;
  opacity: 1;
}
.header-actions[data-c-header-actions] {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-inline-start: auto;
}
.header-cta[data-c-header-actions] {
  display: none;
  padding-inline: 1.5rem;
  padding-block: 0.75rem;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: var(--font-size-body-sm);
  font-weight: 500;
  text-decoration: none;
  border-radius: 28px;
  white-space: nowrap;
  transition: background-color 0.15s;
}
.header-cta[data-c-header-actions]:hover {
  background-color: var(--color-primary-hover);
}
@media (min-width: 768px) {
  .header-cta[data-c-header-actions] {
    display: inline-flex;
    align-items: center;
  }
}
.header-actions[data-c-header-actions] > [data-island]:last-child {
  display: block;
}
@media (min-width: 768px) {
  .header-actions[data-c-header-actions] > [data-island]:last-child {
    display: none;
  }
}
.header-actions[data-c-header-actions] button {
  color: var(--color-on-dark);
}
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or
    ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *,
    :before,
    :after,
    ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-space-x-reverse: 0;
    }
  }
}
@layer theme {
  :root,
  :host {
    --font-sans: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;
    /* Width 94 keeps Bricolage as wide as the old Degular, so layouts do not shift */
    --default-font-variation-settings: "wdth" 94;
    --font-mono: "JetBrains Mono", ui-monospace, monospace;
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-sm: 24rem;
    --container-lg: 32rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --tracking-tight: -0.025em;
    --tracking-widest: 0.1em;
    --radius-sm: 0.125rem;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --default-transition-duration: 0.15s;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-primary: #e7453a;
    --color-primary-foreground: #fff;
    --color-background: #fff;
    --color-foreground: #0a0a0a;
    --color-muted: #f5f5f5;
    --color-muted-foreground: #737373;
    --color-border: #e5e5e5;
    --color-ring: #e7453a;
    --color-destructive: #ef4444;
    --color-destructive-foreground: #fff;
    --color-surface-dark: #0a0a0a;
    --color-surface-charcoal: #1a1a1a;
    --color-surface-warm-dark: #2b2926;
    --color-surface-black: #000;
    --color-surface-light: #f8f8f8;
    --color-surface-muted: #e5e5e5;
    --color-primary-tint: #fdecea;
    --color-primary-hover: #c42020;
    --color-on-dark: #fff;
    --color-on-dark-muted: #ffffffb3;
    --color-border-on-dark: #ffffff14;
    --color-success: #34c759;
    --white-1: #ffffff03;
    --white-2: #ffffff05;
    --white-3: #ffffff08;
    --white-6: #ffffff0f;
    --white-8: #ffffff14;
    --white-10: #ffffff1a;
    --white-12: #ffffff1f;
    --white-14: #ffffff24;
    --white-15: #ffffff26;
    --white-25: #ffffff40;
    --white-30: #ffffff4d;
    --white-40: #fff6;
    --white-50: #ffffff80;
    --white-80: #fffc;
    --white-20: #fff3;
    --white-35: #ffffff59;
    --white-90: #ffffffe6;
    --black-2: #00000005;
    --black-5: #0000000d;
    --black-10: #0000001a;
    --black-15: #00000026;
    --black-16: #00000029;
    --black-20: #0003;
    --black-30: #0000004d;
    --black-60: #0009;
    --black-65: #000000a6;
    --black-75: #000000bf;
    --black-85: #000000d9;
    --overlay-dark: #000c;
    --muted-45: #73737373;
    --warm-dark-10: #2b29261a;
    --warm-dark-50: #2b292680;
    --overlay-image: #0a0a0abf;
    --overlay-image-light: #0a0a0a99;
    --overlay-image-heavy: #0a0a0acc;
    --primary-20: #e7453a33;
    --primary-30: #e7453a4d;
    --primary-8: #e5353514;
    --border-warm-dark: #2b2926b3;
    --color-primary-gradient-end: #812720;
    --font-display: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;
    --radius-full: 9999px;
    --shadow-card: 2px 4px 10px #00000026;
    --shadow-subtle: 0 4px 4px #0000001a;
    --shadow-hover: 0 4px 24px #00000014;
    --shadow-elevated: 0 8px 24px #00000014;
    --shadow-heavy: 0 12px 32px #00000026;
    --shadow-overlay: 0 12px 32px #0003;
    --font-size-caption: clamp(0.75rem, 0.704rem + 0.19vw, 0.875rem);
    --font-size-body-sm: clamp(0.8125rem, 0.794rem + 0.09vw, 0.875rem);
    --font-size-body: clamp(0.875rem, 0.829rem + 0.19vw, 1rem);
    --font-size-body-lg: clamp(1rem, 0.95rem + 0.2vw, 1.125rem);
    --font-size-lead: clamp(1.125rem, 1.05rem + 0.3vw, 1.25rem);
    --font-size-sub: clamp(1.25rem, 1.15rem + 0.4vw, 1.375rem);
    --font-size-h4: clamp(1.25rem, 1rem + 1vw, 1.5rem);
    --font-size-h3: clamp(1.5rem, 1rem + 2vw, 2rem);
    --font-size-h1: clamp(2rem, 1.2rem + 3.5vw, 2.5rem);
    --font-size-display: clamp(2.25rem, 1.2rem + 4.5vw, 3rem);
    --font-size-hero: clamp(2.75rem, 1.3rem + 5.5vw, 3.625rem);
  }
}
@layer base {
  *,
  :after,
  :before,
  ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  html,
  :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(
      --default-font-family,
      ui-sans-serif,
      system-ui,
      sans-serif,
      "Apple Color Emoji",
      "Segoe UI Emoji",
      "Segoe UI Symbol",
      "Noto Color Emoji"
    );
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b,
  strong {
    font-weight: bolder;
  }
  code,
  kbd,
  samp,
  pre {
    font-family: var(
      --default-mono-font-family,
      ui-monospace,
      SFMono-Regular,
      Menlo,
      Monaco,
      Consolas,
      "Liberation Mono",
      "Courier New",
      monospace
    );
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(
      --default-mono-font-variation-settings,
      normal
    );
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub,
  sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol,
  ul,
  menu {
    list-style: none;
  }
  img,
  svg,
  video,
  canvas,
  audio,
  iframe,
  embed,
  object {
    vertical-align: middle;
    display: block;
  }
  img,
  video {
    max-width: 100%;
    height: auto;
  }
  button,
  input,
  select,
  optgroup,
  textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }
  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not ((-webkit-appearance: -apple-pay-button))) or
    (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }
    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button,
  input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }
  ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button {
    height: auto;
  }
  ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer components;
@layer utilities {
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .inset-x-0 {
    inset-inline: calc(var(--spacing) * 0);
  }
  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }
  .start-0 {
    inset-inline-start: calc(var(--spacing) * 0);
  }
  .start-2 {
    inset-inline-start: calc(var(--spacing) * 2);
  }
  .end-0 {
    inset-inline-end: calc(var(--spacing) * 0);
  }
  .end-4 {
    inset-inline-end: calc(var(--spacing) * 4);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-1\/2 {
    top: 50%;
  }
  .top-4 {
    top: calc(var(--spacing) * 4);
  }
  .right-4 {
    right: calc(var(--spacing) * 4);
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .left-1\/2 {
    left: 50%;
  }
  .z-50 {
    z-index: 50;
  }
  .container {
    width: 100%;
  }
  @media (min-width: 40rem) {
    .container {
      max-width: 40rem;
    }
  }
  @media (min-width: 48rem) {
    .container {
      max-width: 48rem;
    }
  }
  @media (min-width: 64rem) {
    .container {
      max-width: 64rem;
    }
  }
  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }
  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }
  .-mx-1 {
    margin-inline: calc(var(--spacing) * -1);
  }
  .my-1 {
    margin-block: calc(var(--spacing) * 1);
  }
  .ms-auto {
    margin-inline-start: auto;
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .block {
    display: block;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline-flex {
    display: inline-flex;
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-7 {
    height: calc(var(--spacing) * 7);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-full {
    height: 100%;
  }
  .h-px {
    height: 1px;
  }
  .min-h-\[80px\] {
    min-height: 80px;
  }
  .w-2 {
    width: calc(var(--spacing) * 2);
  }
  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }
  .w-3\/4 {
    width: 75%;
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .w-6 {
    width: calc(var(--spacing) * 6);
  }
  .w-7 {
    width: calc(var(--spacing) * 7);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-full {
    width: 100%;
  }
  .max-w-lg {
    max-width: var(--container-lg);
  }
  .min-w-\[8rem\] {
    min-width: 8rem;
  }
  .min-w-\[10rem\] {
    min-width: 10rem;
  }
  .flex-1 {
    flex: 1;
  }
  .flex-shrink {
    flex-shrink: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .-translate-x-1\/2 {
    --tw-translate-x: -50%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: -50%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,)
      var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .resize {
    resize: both;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-col-reverse {
    flex-direction: column-reverse;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-center {
    align-items: center;
  }
  .justify-center {
    justify-content: center;
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  :where(.space-y-1\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(
      calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse)
    );
    margin-block-end: calc(
      calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse))
    );
  }
  :where(.space-y-2 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(
      calc(var(--spacing) * 2) * var(--tw-space-y-reverse)
    );
    margin-block-end: calc(
      calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse))
    );
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .rounded-full {
    border-radius: var(--radius-full);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-sm {
    border-radius: var(--radius-sm);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-border {
    border-color: var(--color-border);
  }
  .bg-background {
    background-color: var(--color-background);
  }
  .bg-black\/80 {
    background-color: #000c;
  }
  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/80 {
      background-color: color-mix(
        in oklab,
        var(--color-black) 80%,
        transparent
      );
    }
  }
  .bg-destructive {
    background-color: var(--color-destructive);
  }
  .bg-muted {
    background-color: var(--color-muted);
  }
  .bg-primary {
    background-color: var(--color-primary);
  }
  .bg-surface-dark {
    background-color: var(--color-surface-dark);
  }
  .mask-repeat {
    -webkit-mask-repeat: repeat;
    mask-repeat: repeat;
  }
  .fill-current {
    fill: currentColor;
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-8 {
    padding-inline: calc(var(--spacing) * 8);
  }
  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .ps-8 {
    padding-inline-start: calc(var(--spacing) * 8);
  }
  .pe-2 {
    padding-inline-end: calc(var(--spacing) * 2);
  }
  .pt-0 {
    padding-top: calc(var(--spacing) * 0);
  }
  .text-center {
    text-align: center;
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-destructive-foreground {
    color: var(--color-destructive-foreground);
  }
  .text-foreground {
    color: var(--color-foreground);
  }
  .text-muted-foreground {
    color: var(--color-muted-foreground);
  }
  .text-on-dark {
    color: var(--color-on-dark);
  }
  .text-primary {
    color: var(--color-primary);
  }
  .text-primary-foreground {
    color: var(--color-primary-foreground);
  }
  .text-white {
    color: var(--color-white);
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .opacity-60 {
    opacity: 0.6;
  }
  .opacity-70 {
    opacity: 0.7;
  }
  .shadow {
    --tw-shadow:
      0 1px 3px 0 var(--tw-shadow-color, #0000001a),
      0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-lg {
    --tw-shadow:
      0 10px 15px -3px var(--tw-shadow-color, #0000001a),
      0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow:
      0 4px 6px -1px var(--tw-shadow-color, #0000001a),
      0 2px 4px -2px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow:
      0 1px 3px 0 var(--tw-shadow-color, #0000001a),
      0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-offset-background {
    --tw-ring-offset-color: var(--color-background);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .grayscale {
    --tw-grayscale: grayscale(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
      var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
      var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
      var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
      var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-filter {
    -webkit-backdrop-filter: var(--tw-backdrop-blur,)
      var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,)
      var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,)
      var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,)
      var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,)
      var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,)
      var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,)
      var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,)
      var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property:
      color,
      background-color,
      border-color,
      outline-color,
      text-decoration-color,
      fill,
      stroke,
      --tw-gradient-from,
      --tw-gradient-via,
      --tw-gradient-to,
      opacity,
      box-shadow,
      transform,
      translate,
      scale,
      rotate,
      filter,
      -webkit-backdrop-filter,
      backdrop-filter,
      display,
      content-visibility,
      overlay,
      pointer-events;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property:
      color, background-color, border-color, outline-color,
      text-decoration-color, fill, stroke, --tw-gradient-from,
      --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .delay-100 {
    transition-delay: 0.1s;
  }
  .duration-150 {
    --tw-duration: 0.15s;
    transition-duration: 0.15s;
  }
  .duration-200 {
    --tw-duration: 0.2s;
    transition-duration: 0.2s;
  }
  .duration-700 {
    --tw-duration: 0.7s;
    transition-duration: 0.7s;
  }
  .ease-\[cubic-bezier\(0\.22\,1\,0\.36\,1\)\] {
    --tw-ease: cubic-bezier(0.22, 1, 0.36, 1);
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
  }
  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .placeholder\:text-muted-foreground::placeholder {
    color: var(--color-muted-foreground);
  }
  @media (hover: hover) {
    .hover\:bg-destructive\/90:hover {
      background-color: #ef4444e6;
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-destructive\/90:hover {
        background-color: color-mix(
          in oklab,
          var(--color-destructive) 90%,
          transparent
        );
      }
    }
    .hover\:bg-muted:hover {
      background-color: var(--color-muted);
    }
    .hover\:bg-primary\/90:hover {
      background-color: #e7453ae6;
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-primary\/90:hover {
        background-color: color-mix(
          in oklab,
          var(--color-primary) 90%,
          transparent
        );
      }
    }
    .hover\:bg-surface-charcoal:hover {
      background-color: var(--color-surface-charcoal);
    }
    .hover\:text-foreground:hover {
      color: var(--color-foreground);
    }
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
    .hover\:opacity-80:hover {
      opacity: 0.8;
    }
    .hover\:opacity-100:hover {
      opacity: 1;
    }
  }
  .focus\:bg-muted:focus {
    background-color: var(--color-muted);
  }
  .focus\:text-foreground:focus {
    color: var(--color-foreground);
  }
  .focus\:ring-2:focus {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus\:ring-ring:focus {
    --tw-ring-color: var(--color-ring);
  }
  .focus\:ring-offset-2:focus {
    --tw-ring-offset-width: 2px;
    --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0
      var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }
  .focus\:outline-none:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
  .focus-visible\:ring-2:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus-visible\:ring-ring:focus-visible {
    --tw-ring-color: var(--color-ring);
  }
  .focus-visible\:ring-offset-2:focus-visible {
    --tw-ring-offset-width: 2px;
    --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0
      var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }
  .focus-visible\:outline-none:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }
  .disabled\:pointer-events-none:disabled {
    pointer-events: none;
  }
  .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
  }
  .disabled\:opacity-50:disabled {
    opacity: 0.5;
  }
  .data-\[disabled\]\:pointer-events-none[data-disabled] {
    pointer-events: none;
  }
  .data-\[disabled\]\:opacity-50[data-disabled] {
    opacity: 0.5;
  }
  .data-\[state\=closed\]\:-translate-x-full[data-state="closed"] {
    --tw-translate-x: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[state\=closed\]\:translate-x-full[data-state="closed"] {
    --tw-translate-x: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[state\=closed\]\:-translate-y-full[data-state="closed"] {
    --tw-translate-y: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[state\=closed\]\:translate-y-full[data-state="closed"] {
    --tw-translate-y: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[state\=closed\]\:opacity-0[data-state="closed"] {
    opacity: 0;
  }
  .data-\[state\=open\]\:translate-x-0[data-state="open"] {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[state\=open\]\:translate-y-0[data-state="open"] {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .data-\[state\=open\]\:bg-muted[data-state="open"] {
    background-color: var(--color-muted);
  }
  .data-\[state\=open\]\:text-muted-foreground[data-state="open"] {
    color: var(--color-muted-foreground);
  }
  .data-\[state\=open\]\:opacity-100[data-state="open"] {
    opacity: 1;
  }
  @media (min-width: 40rem) {
    .sm\:max-w-sm {
      max-width: var(--container-sm);
    }
    .sm\:flex-row {
      flex-direction: row;
    }
    .sm\:justify-end {
      justify-content: flex-end;
    }
    :where(.sm\:space-x-2 > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(
        calc(var(--spacing) * 2) * var(--tw-space-x-reverse)
      );
      margin-inline-end: calc(
        calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse))
      );
    }
    .sm\:rounded-lg {
      border-radius: var(--radius-lg);
    }
    .sm\:text-start {
      text-align: start;
    }
  }
}
/* Bricolage Grotesque (SIL Open Font License, see fonts/bricolage-grotesque-ofl.txt).
   Replaces the Degular demo cut, which has no accented letters and is not licensed for production. */
@font-face {
  font-family: "Bricolage Grotesque";
  src: url(fonts/bricolage-grotesque-latin-ext.woff2) format("woff2");
  font-weight: 200 800;
  font-stretch: 75% 100%;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Bricolage Grotesque";
  src: url(fonts/bricolage-grotesque-latin.woff2) format("woff2");
  font-weight: 200 800;
  font-stretch: 75% 100%;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: Oxanium;
  src: url(fonts/oxanium-regular.woff2) format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Oxanium;
  src: url(fonts/oxanium-medium.woff2) format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Oxanium;
  src: url(fonts/oxanium-semibold.woff2) format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Oxanium;
  src: url(fonts/oxanium-bold.woff2) format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
:root {
  color-scheme: light;
  --color-primary: #e7453a;
  --color-primary-foreground: #fff;
  --color-background: #fff;
  --color-foreground: #0a0a0a;
  --color-muted: #f5f5f5;
  --color-muted-foreground: #737373;
  --color-border: #e5e5e5;
  --color-surface-dark: #0a0a0a;
  --color-surface-charcoal: #1a1a1a;
  --color-surface-warm-dark: #2b2926;
  --color-surface-black: #000;
  --color-surface-light: #f8f8f8;
  --color-surface-mid: #f3f3f3;
  --color-surface-muted: #e5e5e5;
  --color-primary-tint: #fdecea;
  --color-primary-hover: #c42020;
  --color-primary-light: #f28075;
  --color-on-dark: #fff;
  --color-on-dark-muted: #ffffffb3;
  --color-on-dark-subtle: #ffffff73;
  --color-border-on-dark: #ffffff14;
  --color-success: #34c759;
  --white-1: #ffffff03;
  --white-2: #ffffff05;
  --white-3: #ffffff08;
  --white-4: #ffffff0a;
  --white-6: #ffffff0f;
  --white-8: #ffffff14;
  --white-10: #ffffff1a;
  --white-12: #ffffff1f;
  --white-14: #ffffff24;
  --white-15: #ffffff26;
  --white-25: #ffffff40;
  --white-30: #ffffff4d;
  --white-40: #fff6;
  --white-50: #ffffff80;
  --white-55: #ffffff8c;
  --white-80: #fffc;
  --white-60: #fff9;
  --white-65: #ffffffa6;
  --white-20: #fff3;
  --white-35: #ffffff59;
  --white-90: #ffffffe6;
  --black-2: #00000005;
  --black-5: #0000000d;
  --black-10: #0000001a;
  --black-15: #00000026;
  --black-16: #00000029;
  --black-20: #0003;
  --black-30: #0000004d;
  --black-60: #0009;
  --black-65: #000000a6;
  --black-70: #000000b3;
  --black-75: #000000bf;
  --black-85: #000000d9;
  --overlay-dark: #000c;
  --muted-45: #73737373;
  --warm-dark-10: #2b29261a;
  --warm-dark-50: #2b292680;
  --overlay-image: #0a0a0abf;
  --overlay-image-light: #0a0a0a99;
  --overlay-image-heavy: #0a0a0acc;
  --primary-20: #e7453a33;
  --primary-30: #e7453a4d;
  --primary-8: #e5353514;
  --border-warm-dark: #2b2926b3;
  --color-neutral-300: #d4d4d4;
  --color-neutral-550: #545454;
  --color-accent-blue: #146ff4;
  --color-accent-teal: #019380;
  --color-accent-purple: #6e61d2;
  --color-accent-orange: #f22800;
  --color-accent-navy: #003781;
  --color-accent-dark-green: #006134;
  --color-primary-gradient-end: #812720;
  --font-sans: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;
  --font-display: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;
  --font-accent: "Oxanium", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, monospace;
  --radius-xs: 0.25rem;
  --radius-sm: 0.125rem;
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --radius-xl: 0.75rem;
  --radius-2xl: 1rem;
  --radius-3xl: 1.5rem;
  --radius-4xl: 1.75rem;
  --radius-5xl: 4.5rem;
  --radius-full: 9999px;
  --shadow-card: 2px 4px 10px #00000026;
  --shadow-subtle: 0 4px 4px #0000001a;
  --shadow-soft: 4px 4px 4px #0000000f;
  --shadow-dark-card: 2px 4px 10px #2b292640;
  --shadow-hover: 0 4px 24px #00000014;
  --shadow-elevated: 0 8px 24px #00000014;
  --shadow-heavy: 0 12px 32px #00000026;
  --shadow-overlay: 0 12px 32px #0003;
  --shadow-testimonial: 4px 8px 24px #0000001f;
  --shadow-primary-button: 2px 4px 5px #e7453a40;
  --shadow-primary-button-subtle: 2px 4px 5px #e7453a1a;
  --shadow-primary-button-hover: 0 6px 10px #e7453a40;
  --font-size-caption: clamp(0.75rem, 0.704rem + 0.19vw, 0.875rem);
  --font-size-body-sm: clamp(0.8125rem, 0.794rem + 0.09vw, 0.875rem);
  --font-size-body: clamp(0.875rem, 0.829rem + 0.19vw, 1rem);
  --font-size-body-lg: clamp(1rem, 0.95rem + 0.2vw, 1.125rem);
  --font-size-lead: clamp(1.125rem, 1.05rem + 0.3vw, 1.25rem);
  --font-size-sub: clamp(1.25rem, 1.15rem + 0.4vw, 1.375rem);
  --font-size-h4: clamp(1.25rem, 1rem + 1vw, 1.5rem);
  --font-size-h3: clamp(1.5rem, 1rem + 2vw, 2rem);
  --font-size-h2: clamp(1.75rem, 1.15rem + 2.5vw, 2.25rem);
  --font-size-h1: clamp(2rem, 1.2rem + 3.5vw, 2.5rem);
  --font-size-display: clamp(2.25rem, 1.2rem + 4.5vw, 3rem);
  --font-size-hero: clamp(2.75rem, 1.3rem + 5.5vw, 3.625rem);
  --font-size-stat: clamp(3rem, 1.5rem + 6vw, 4.75rem);
  --font-size-mega: clamp(3.625rem, 1.5rem + 7vw, 5.625rem);
}
.dark {
  color-scheme: dark;
  --color-primary: #ec5547;
  --color-primary-foreground: #fff;
  --color-background: #0a0a0a;
  --color-foreground: #fafafa;
  --color-muted: #262626;
  --color-muted-foreground: #a3a3a3;
  --color-border: #404040;
  --color-ring: #ec5547;
  --color-destructive: #f87171;
  --color-destructive-foreground: #fff;
  --color-surface-light: #171717;
  --color-surface-mid: #1a1a1a;
  --color-surface-muted: #262626;
  --color-primary-tint: #520c0c;
  --color-primary-hover: #e7453a;
  --color-primary-light: #f7aba3;
  --color-neutral-300: #525252;
  --color-neutral-550: #d4d4d4;
  --color-primary-gradient-end: #ec5547;
  --black-5: #ffffff0d;
  --black-10: #ffffff1a;
  --black-15: #ffffff26;
  --black-16: #ffffff29;
  --black-20: #fff3;
  --black-60: #fff9;
  --black-65: #ffffffa6;
  --black-70: #ffffffb3;
  --black-75: #ffffffbf;
  --overlay-dark: #000000d9;
  --overlay-image: #0a0a0ad9;
  --overlay-image-light: #0a0a0ab3;
  --overlay-image-heavy: #0a0a0ae6;
  --primary-20: #ec554733;
  --primary-30: #ec55474d;
  --primary-8: #ec554714;
  --border-warm-dark: #ffffff14;
  --shadow-card: 2px 4px 10px #0006;
  --shadow-subtle: 0 4px 4px #0000004d;
  --shadow-soft: 4px 4px 4px #0003;
  --shadow-dark-card: 2px 4px 10px #00000080;
  --shadow-hover: 0 4px 24px #0000004d;
  --shadow-elevated: 0 8px 24px #0000004d;
  --shadow-heavy: 0 12px 32px #0006;
  --shadow-overlay: 0 12px 32px #00000080;
  --shadow-testimonial: 4px 8px 24px #0000004d;
  --shadow-primary-button: 2px 4px 5px #ec55474d;
  --shadow-primary-button-subtle: 2px 4px 5px #ec554726;
  --shadow-primary-button-hover: 0 6px 10px #ec55474d;
}
*,
:before,
:after {
  box-sizing: border-box;
}
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: var(--color-surface-muted);
}
html.with-scroll-bars-hidden,
html.with-scroll-bars-hidden.with-scroll-bars-hidden {
  padding-inline-end: 0 !important;
  overflow: visible !important;
}
body[data-scroll-locked],
body[data-scroll-locked][data-scroll-locked] {
  overscroll-behavior: contain;
  margin-inline: auto !important;
  padding-block-start: 0 !important;
  padding-inline: 0 !important;
  overflow: hidden !important;
}
body {
  background-color: var(--color-background);
  max-inline-size: 1920px;
  color: var(--color-foreground);
  font-family: var(
    --font-sans,
    "Bricolage Grotesque",
    ui-sans-serif,
    system-ui,
    sans-serif
  );
  margin: 0;
  margin-inline: auto;
  padding: 0;
  line-height: 1.5;
}
img,
video {
  block-size: auto;
  max-inline-size: 100%;
}
.sr-only {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  block-size: 1px;
  inline-size: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}
.section-anchor {
  scroll-margin-block-start: 7rem;
}
.skip-nav {
  z-index: 100;
  background-color: var(--color-primary);
  color: var(--color-primary-foreground);
  border-radius: 0 0 var(--radius-md) 0;
  padding: 0.75rem 1.5rem;
  font-weight: 600;
  text-decoration: none;
  position: absolute;
  inset-inline-start: -9999px;
}
.skip-nav:focus {
  inset-block-start: 0;
  inset-inline-start: 0;
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}

/* ---- FlipCard ---- */
.filter-grid__filter-group {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.5rem;
}
.filter-grid__filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.filter-grid__filter-pill {
  display: inline-block;
  padding-inline: 1rem;
  padding-block: 0.5rem;
  border-radius: 8px;
  border: 1px solid var(--color-border);
  background-color: transparent;
  color: var(--color-muted-foreground);
  font-size: var(--font-size-caption);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  transition:
    background-color 0.15s,
    color 0.15s,
    border-color 0.15s;
}
.filter-grid__filter-pill:hover {
  border-color: var(--color-foreground);
  color: var(--color-foreground);
}
.filter-grid__filter-pill-active {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border-color: var(--color-primary);
}
.filter-grid__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  background-color: var(--white-50);
  margin-inline: -1.5rem;
}
@media (min-width: 640px) {
  .filter-grid__grid {
    margin-inline: -7rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .filter-grid__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.filter-grid__empty-state {
  grid-column: 1 / -1;
  text-align: center;
  padding-block: 4rem;
  color: var(--color-muted-foreground);
  font-size: var(--font-size-body);
}
.flip-card__flip-card {
  perspective: 1000px;
  cursor: pointer;
  inline-size: 100%;
  border: none;
  border-radius: 0;
  aspect-ratio: 480 / 298;
}
.flip-card__flip-card-inner {
  position: relative;
  inline-size: 100%;
  aspect-ratio: 480 / 298;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transform-style: preserve-3d;
  will-change: transform;
}
.flip-card__flip-card:hover .flip-card__flip-card-inner,
.flip-card__flip-card-inner-flipped {
  transform: rotateY(180deg);
}
.flip-card__flip-card-face {
  position: absolute;
  inset: 0;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  overflow: hidden;
  border-radius: 0;
  transition: visibility 0s 0.25s;
}
.flip-card__flip-card-back {
  visibility: hidden;
}
.flip-card__flip-card-front {
  background-color: var(--color-surface-muted);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
}
.flip-card__front-image {
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1);
}
.flip-card__front-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    var(--black-85) 0%,
    var(--black-65) 45%,
    var(--black-30) 100%
  );
}
.flip-card__front-content {
  position: relative;
  z-index: 1;
  margin-block-start: auto;
  padding: 1.5rem;
  inline-size: 100%;
}
.flip-card__front-icon {
  color: var(--color-muted-foreground);
}
.flip-card__front-label {
  font-size: var(--font-size-caption);
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--color-primary);
}
.flip-card__front-title {
  font-family: var(--font-display);
  font-size: var(--font-size-body);
  font-weight: 600;
  color: var(--color-on-dark);
  margin-block-start: 0.25rem;
}
.flip-card__front-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-block-start: 0.75rem;
}
.flip-card__front-tag {
  padding-inline: 0.75rem;
  padding-block: 0.375rem;
  border: 1px solid var(--white-40);
  border-radius: 8px;
  color: var(--color-on-dark);
  font-size: var(--font-size-caption);
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.2;
}
.flip-card__flip-card-back {
  transform: rotateY(180deg);
  background-color: var(--color-primary);
  display: flex;
  flex-direction: column;
  padding: clamp(1.25rem, 4vw, 2rem);
  padding-block-end: clamp(1.5rem, 4vw, 2rem);
  pointer-events: none;
}
.flip-card__flip-card:hover .flip-card__flip-card-back,
.flip-card__flip-card-inner-flipped .flip-card__flip-card-back {
  visibility: visible;
  pointer-events: auto;
}
.flip-card__flip-card:hover .flip-card__flip-card-front,
.flip-card__flip-card-inner-flipped .flip-card__flip-card-front {
  visibility: hidden;
  pointer-events: none;
}
.flip-card__back-overlay {
  display: none;
}
.flip-card__back-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.flip-card__back-tag {
  font-family: var(--font-display);
  font-size: clamp(0.8125rem, 2vw, 16px);
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--color-on-dark);
  margin-block-end: 0.375rem;
}
.flip-card__back-title {
  font-family: var(--font-display);
  font-size: clamp(1.125rem, 3vw, 20px);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-on-dark);
  margin-block-end: clamp(1rem, 3vw, 2rem);
}
.flip-card__back-benefits {
  font-size: clamp(0.8125rem, 2vw, 15px);
  font-weight: 700;
  line-height: 1.4;
  color: var(--color-on-dark);
  margin: 0 0 clamp(0.75rem, 2vw, 1rem);
  display: -webkit-box;
  -webkit-line-clamp: 5;
  line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.flip-card__metrics-strip {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(1.25rem, 3vw, 2.5rem);
  margin-block-end: clamp(0.75rem, 2vw, 1rem);
}
.flip-card__metric-value {
  font-family: var(--font-display);
  font-size: clamp(1.125rem, 3vw, 20px);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-on-dark);
  margin-block-end: 0.25rem;
}
.flip-card__metric-label {
  font-family: var(--font-display);
  font-size: clamp(0.8125rem, 2vw, 16px);
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0;
  color: var(--color-on-dark);
}
.flip-card__back-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-block-start: auto;
  block-size: clamp(40px, 6vw, 48px);
  padding-inline: clamp(1.25rem, 3vw, 1.5rem);
  border: none;
  border-radius: var(--radius-full);
  background-color: var(--color-on-dark);
  color: var(--color-primary);
  font-family: var(--font-display);
  font-size: clamp(0.875rem, 2.5vw, 16px);
  font-weight: 700;
  line-height: 20px;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  z-index: 2;
  transition:
    background-color 0.15s,
    color 0.15s,
    transform 0.15s;
  align-self: flex-start;
}
.flip-card__back-cta:hover {
  background-color: transparent;
  color: var(--color-on-dark);
  border: 2px solid var(--color-on-dark);
  transform: scale(1.05);
}

/* ---- inline (404.html) ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.not-found[data-c-e5whhb5f] {
  position: relative;
  display: grid;
  place-items: center;
  min-block-size: 70vh;
  text-align: center;
  padding: 2rem;
  overflow: hidden;
  background-color: var(--color-surface-dark);
}
.not-found-letters[data-c-e5whhb5f] {
  position: absolute;
  inset-block-end: 0;
  inset-inline: 0;
  block-size: 0;
  pointer-events: none;
  color: var(--color-on-dark);
  container-type: inline-size;
}
.not-found-content[data-c-e5whhb5f] {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}
.not-found-code[data-c-e5whhb5f] {
  font-family: var(--font-display);
  font-size: clamp(6rem, 15vw, 10rem);
  font-weight: 800;
  line-height: 1;
  margin: 0;
  background: linear-gradient(
    180deg,
    var(--color-on-dark) 0%,
    var(--color-on-dark-muted) 100%
  );
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.not-found-subtitle[data-c-e5whhb5f] {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 4vw, 2.25rem);
  font-weight: 700;
  color: var(--color-on-dark);
  margin: 0.5rem 0 0;
  line-height: 1.2;
}
.not-found-message[data-c-e5whhb5f] {
  font-size: var(--font-size-body-lg);
  color: var(--color-on-dark-muted);
  margin: 1rem 0 0;
  max-inline-size: 28rem;
  line-height: 1.5;
}
.not-found-cta[data-c-e5whhb5f] {
  display: inline-flex;
  align-items: center;
  margin-block-start: 2.5rem;
  padding: 0.75rem 2rem;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-family: var(--font-display);
  font-size: var(--font-size-body);
  font-weight: 600;
  text-decoration: none;
  border-radius: var(--radius-full);
  transition: opacity 0.15s;
}
.not-found-cta[data-c-e5whhb5f]:hover {
  opacity: 0.9;
}
.brand-letter[data-c-uqgx6sio] {
  inline-size: auto;
  block-size: auto;
}
.decorative-overlay[data-c-wrw7cu3v] {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.decorative-overlay--visible[data-c-wrw7cu3v] {
  overflow: visible;
}
.letters-wrap[data-c-bsioup76] {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 54%;
  container-type: inline-size;
}
.letter[data-c-bsioup76] {
  position: absolute;
}
.letter[data-c-bsioup76] svg {
  display: block;
  inline-size: auto;
}
.letters-wrap--default[data-c-bsioup76] {
  block-size: 100%;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: -4.03cqi;
  inset-block-start: 2.85cqi;
  rotate: 1deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 45.14cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 27.99cqi;
  inset-block-start: 15.49cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 57.01cqi;
  inset-block-start: 21.6cqi;
  rotate: 20deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 80.97cqi;
  inset-block-start: 8.26cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 41.32cqi;
}
.letters-wrap--compact[data-c-bsioup76] {
  inset-block-start: 0;
  inset-block-end: 0;
  block-size: 100%;
  color: var(--color-on-dark);
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: 16.9cqi;
  inset-block-start: 19.21cqi;
  rotate: -2deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 43.4cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 45.14cqi;
  inset-block-start: 31.13cqi;
  rotate: -8deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 68.52cqi;
  inset-block-start: 32.64cqi;
  rotate: 12deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 85.99cqi;
  inset-block-start: 18.29cqi;
  rotate: -10deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 35.3cqi;
}
/* ---- inline (index.html) ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.text-block-heading[data-c-wz6xpbld] {
  font-family: var(--font-display);
  font-size: var(--tb-heading-size, var(--font-size-display));
  font-weight: var(--tb-heading-weight, 700);
  line-height: var(--tb-heading-line-height, 1.2);
  letter-spacing: -0.02em;
  margin: 0 0 var(--tb-spacing, 1.5rem);
}
.text-block-heading[data-c-wz6xpbld] strong {
  font-weight: 700;
}
.text-block-body[data-c-wz6xpbld] {
  max-inline-size: var(--tb-body-max-width);
}
.text-block-body[data-c-wz6xpbld] p {
  font-size: var(--tb-body-size, var(--font-size-body));
  font-weight: var(--tb-body-weight, 500);
  line-height: var(--tb-body-line-height, 1.65);
  margin: 0 0 1rem;
}
.text-block-body[data-c-wz6xpbld] p:last-child {
  margin-block-end: 0;
}
.text-block--light[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-surface-dark);
}
.text-block--light[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-muted-foreground);
}
.text-block--dark[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-on-dark);
}
.text-block--dark[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-on-dark-muted);
}

/* ---- inline (index.html) ---- */
@media (min-width: 768px) {
  .contact-section .split-layout-start {
    padding-inline-end: 5.5rem;
  }
}
.tag[data-c-iyfh3pws] {
  display: inline-block;
  font-size: var(--font-size-caption);
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  border-radius: var(--radius-full);
  padding-inline: 0.625rem;
  padding-block: 0.25rem;
  white-space: nowrap;
  border: 1px solid transparent;
}
.tag--outline[data-c-iyfh3pws] {
  background-color: transparent;
}
.tag--filled[data-c-iyfh3pws],
.tag--ghost[data-c-iyfh3pws] {
  border-color: transparent;
}
.tag--outline[data-c-iyfh3pws].tag--primary {
  color: var(--color-primary);
  border-color: var(--color-primary);
}
.tag--filled[data-c-iyfh3pws].tag--primary {
  color: var(--color-on-dark);
  background-color: var(--color-primary);
}
.tag--ghost[data-c-iyfh3pws].tag--primary {
  color: var(--color-primary);
  background-color: var(--color-primary-tint);
}
.tag--outline[data-c-iyfh3pws].tag--on-dark {
  color: var(--color-on-dark-muted);
  border-color: var(--white-15);
}
.tag--filled[data-c-iyfh3pws].tag--on-dark {
  color: var(--color-on-dark);
  background-color: var(--white-12);
}
.tag--ghost[data-c-iyfh3pws].tag--on-dark {
  color: var(--color-on-dark-muted);
  background-color: var(--white-6);
}
.tag--outline[data-c-iyfh3pws].tag--muted {
  color: var(--color-on-dark-muted);
  border-color: var(--color-border-on-dark);
}
.tag--filled[data-c-iyfh3pws].tag--muted,
.tag--ghost[data-c-iyfh3pws].tag--muted {
  color: var(--color-muted-foreground);
  background-color: var(--color-surface-muted);
}
.btn-link[data-c-rcfgfa7e] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  border-radius: 28px;
  transition:
    background-color 0.15s,
    border-color 0.15s,
    box-shadow 0.15s;
}
.btn-link-icon[data-c-rcfgfa7e] {
  flex-shrink: 0;
}
.btn-link--primary[data-c-rcfgfa7e] {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: 2px solid var(--color-primary);
}
.btn-link--primary[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}
.btn-link--outline[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}
.btn-link--outline[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.btn-link--ghost[data-c-rcfgfa7e] {
  padding-inline: 1.25rem;
  background-color: var(--color-border-on-dark);
  color: var(--color-on-dark-muted);
  font-size: var(--font-size-body-sm);
  border: 1px solid var(--white-12);
}
.btn-link--ghost[data-c-rcfgfa7e]:hover {
  background-color: var(--white-14);
  color: var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-on-dark);
  border: 2px solid var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e]:hover {
  background-color: var(--color-on-dark);
  color: var(--color-surface-dark);
}
.brand-letter[data-c-uqgx6sio] {
  inline-size: auto;
  block-size: auto;
}
.decorative-overlay[data-c-wrw7cu3v] {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.decorative-overlay--visible[data-c-wrw7cu3v] {
  overflow: visible;
}
.letters-wrap[data-c-bsioup76] {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 54%;
  container-type: inline-size;
}
.letter[data-c-bsioup76] {
  position: absolute;
}
.letter[data-c-bsioup76] svg {
  display: block;
  inline-size: auto;
}
.letters-wrap--default[data-c-bsioup76] {
  block-size: 100%;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: -4.03cqi;
  inset-block-start: 2.85cqi;
  rotate: 1deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 45.14cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 27.99cqi;
  inset-block-start: 15.49cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 57.01cqi;
  inset-block-start: 21.6cqi;
  rotate: 20deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 80.97cqi;
  inset-block-start: 8.26cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 41.32cqi;
}
.letters-wrap--compact[data-c-bsioup76] {
  inset-block-start: 0;
  inset-block-end: 0;
  block-size: 100%;
  color: var(--color-on-dark);
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: 16.9cqi;
  inset-block-start: 19.21cqi;
  rotate: -2deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 43.4cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 45.14cqi;
  inset-block-start: 31.13cqi;
  rotate: -8deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 68.52cqi;
  inset-block-start: 32.64cqi;
  rotate: 12deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 85.99cqi;
  inset-block-start: 18.29cqi;
  rotate: -10deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 35.3cqi;
}

/* ---- inline (index.html) ---- */
.newsletter-bar-inner[data-c-ygrkkgdh] {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding-block: 3rem;
  min-block-size: 191px;
  justify-content: center;
}
.newsletter-bar-text[data-c-ygrkkgdh] {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.newsletter-bar-sub[data-c-ygrkkgdh] {
  margin: 0;
  font-size: var(--font-size-h4);
  font-weight: 400;
  line-height: 1.2;
  color: var(--color-on-dark);
}
@media (min-width: 1200px) {
  .newsletter-bar-inner[data-c-ygrkkgdh] {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
  }
  .newsletter-bar-text[data-c-ygrkkgdh] {
    min-inline-size: 0;
  }
}
.newsletter-bar-form[data-c-ygrkkgdh] {
  inline-size: 100%;
}
@media (min-width: 1200px) {
  .newsletter-bar-form[data-c-ygrkkgdh] {
    inline-size: 30.5rem;
    flex-shrink: 0;
  }
}
.overlay-card[data-c-3pmxwcpu] {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-xl);
}
.overlay-card-content[data-c-3pmxwcpu] {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 1.5rem;
  min-block-size: 100%;
}
.overlay-card-content[data-c-3pmxwcpu]:before {
  content: "";
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 55%;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  mask-image: linear-gradient(to top, black 40%, transparent 100%);
  -webkit-mask-image: linear-gradient(to top, black 40%, transparent 100%);
  z-index: -1;
}
.overlay-card--lift[data-c-3pmxwcpu] {
  transition:
    transform 0.2s,
    box-shadow 0.2s;
}
.overlay-card--lift[data-c-3pmxwcpu]:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-overlay);
}
.card-image-bg[data-c-rbc2mgnk] {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}
.itb-grid[data-c-go3gtbvf] {
  --itb-image-radius: calc(var(--itb-height) / 2);
  display: grid;
  grid-template-columns: 1fr;
  max-inline-size: 1920px;
  margin-inline: auto;
  block-size: auto;
}
@media (min-width: 768px) {
  .itb-grid[data-c-go3gtbvf] {
    grid-template-columns: 1fr 1fr;
    block-size: var(--itb-height);
  }
}
.itb-image-wrap[data-c-go3gtbvf] {
  overflow: hidden;
  block-size: var(--itb-height);
}
@media (min-width: 768px) {
  .itb-image-wrap[data-c-go3gtbvf] {
    border-radius: 0 var(--itb-image-radius) var(--itb-image-radius) 0;
  }
}
.itb-img[data-c-go3gtbvf] {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.itb-grid--grayscale[data-c-go3gtbvf] .itb-img[data-c-go3gtbvf] {
  filter: grayscale(1);
}
.itb-content[data-c-go3gtbvf] {
  display: flex;
  align-items: center;
  padding: 3rem 2rem;
}
@media (min-width: 768px) {
  .itb-content[data-c-go3gtbvf] {
    padding: var(--itb-content-padding, 0 4rem 0 5rem);
  }
}

/* ---- inline (index.html) ---- */
.responsive-grid[data-c-r5wcfgzt] {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--grid-gap, 1.5rem);
}
.responsive-grid--cols-2[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.responsive-grid--cols-2[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.responsive-grid--cols-3[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.responsive-grid--cols-3[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.responsive-grid--cols-4[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(4, 1fr);
  }
}
.responsive-grid--cols-4[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(4, 1fr);
  }
}
.action-row[data-c-3s3h5wbb] {
  display: flex;
  flex-wrap: wrap;
  gap: var(--action-row-gap, 1rem);
}
.inline-input__wrapper {
  display: flex;
  align-items: center;
  gap: 0;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  overflow: hidden;
}
.inline-input__wrapper-variant {
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
}
.inline-input__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.inline-input__input {
  flex: 1;
  min-width: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.inline-input__input::placeholder {
  color: var(--color-on-dark-muted);
}
.inline-input__input:focus-visible {
  outline: none;
  box-shadow: none;
}
.inline-input__button {
  block-size: 48px;
  padding-inline: 2rem;
  border: none;
  border-radius: var(--radius-full);
  font-weight: 600;
  font-size: var(--font-size-body-lg);
  cursor: pointer;
  white-space: nowrap;
  margin: 0.25rem;
  transition: opacity 0.15s;
}
.inline-input__button-variant {
  background: var(--color-primary);
  color: var(--color-on-dark);
}
.inline-input__button-disabled {
  opacity: 0.7;
}
.newsletter__name-field {
  display: flex;
  align-items: center;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
  margin-block-end: 1.25rem;
  overflow: hidden;
}
.newsletter__name-input {
  flex: 1;
  min-inline-size: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.newsletter__name-input::placeholder {
  color: var(--color-on-dark-muted);
}
.newsletter__name-input:focus-visible {
  outline: none;
  box-shadow: none;
}
.newsletter__sr-only {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.newsletter__consent-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-block-start: 0.75rem;
  font-size: var(--font-size-body-sm);
  line-height: 1.4;
  cursor: pointer;
}
.newsletter__consent-label-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-label-cta {
  color: var(--color-on-dark-muted);
}
.newsletter__checkbox {
  flex-shrink: 0;
  inline-size: 1.375rem;
  block-size: 1.375rem;
  appearance: none;
  border: 1.5px solid var(--color-on-dark);
  border-radius: 0.3125rem;
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.newsletter__checkbox:after {
  content: "";
  position: absolute;
  display: none;
  inset-inline-start: 50%;
  inset-block-start: 45%;
  inline-size: 5px;
  block-size: 10px;
  border: solid var(--color-on-dark);
  border-width: 0 1.5px 1.5px 0;
  transform: translate(-50%, -55%) rotate(45deg);
}
.newsletter__checkbox:checked:after {
  display: block;
}
.newsletter__checkbox:focus-visible {
  outline: 2px solid var(--color-on-dark);
  outline-offset: 2px;
}
.newsletter__consent-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.newsletter__consent-error {
  font-size: var(--font-size-body-sm);
  margin-block-start: 0.5rem;
  text-align: center;
}
.newsletter__consent-error-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-error-cta {
  color: var(--color-primary);
}
.newsletter__field-error {
  margin-block-end: 0.75rem;
}
.newsletter__captcha-wrapper {
  margin-block-start: 0.75rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: center;
}
.newsletter-bg[data-c-gqhmwrgb] {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.newsletter-bg-img[data-c-gqhmwrgb] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1);
}
.newsletter-letters-scaler[data-c-gqhmwrgb] {
  display: none;
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 40%;
  inset-inline-end: 0;
  block-size: 0;
  z-index: 1;
  pointer-events: none;
  color: var(--color-on-dark);
  container-type: inline-size;
}
@media (min-width: 768px) {
  .newsletter-letters-scaler[data-c-gqhmwrgb] {
    display: block;
  }
}
.newsletter-letters[data-c-gqhmwrgb] {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 864 / 427;
  overflow: hidden;
}
.newsletter-cta-content[data-c-gqhmwrgb] {
  position: relative;
  z-index: 2;
  max-inline-size: 32rem;
}
.newsletter-cta-form[data-c-gqhmwrgb] {
  margin-block-start: 2.5rem;
  max-inline-size: 30rem;
}
.newsletter-cta-content[data-c-gqhmwrgb] .text-block--dark .text-block-body p {
  color: var(--color-on-dark);
  font-weight: 300;
}
.section[data-c-pdbomyic] {
  position: relative;
  padding-block: 5rem;
}
.section-container[data-c-yfwknzfq] {
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .section-container[data-c-yfwknzfq] {
    padding-inline: 7rem;
  }
}
.card-title[data-c-ngfmhtlq] {
  font-family: var(--font-display);
  font-size: var(--ct-size, var(--font-size-body-lg));
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
}
.card-title--light[data-c-ngfmhtlq] {
  color: var(--color-foreground);
}
.card-title--dark[data-c-ngfmhtlq] {
  color: var(--color-on-dark);
}
.section-intro[data-c-w2wcho3q] {
  margin-block-end: var(--si-margin-block-end, 3rem);
}
.section-intro--center[data-c-w2wcho3q] {
  text-align: center;
}
.section-intro--start[data-c-w2wcho3q] {
  text-align: start;
}
.section-intro-heading[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-heading-size, var(--font-size-display));
  font-weight: var(--si-heading-weight, 700);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
}
.section-intro-heading[data-c-w2wcho3q] strong {
  font-weight: 700;
}
.section-intro-body[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-body-size, var(--font-size-lead));
  font-weight: var(--si-body-weight, 500);
  line-height: var(--si-body-line-height, 1.65);
  max-inline-size: 50rem;
  margin-block: 0;
}
.section-intro--center[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  margin-inline: auto;
}
.section-intro-action[data-c-w2wcho3q] {
  margin-block-start: 1.5rem;
}
.section-intro--light[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-surface-dark);
}
.section-intro--light[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-foreground));
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-on-dark);
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-on-dark));
}
.rounded-image[data-c-trln74ua] {
  overflow: hidden;
}
.rounded-image-img[data-c-trln74ua] {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.power-ai[data-c-c7mmh3nv] {
  --power-ai-body-color: var(--color-surface-black);
  --color-muted-foreground: var(--color-surface-black);
  --color-surface-dark: var(--color-surface-black);
  --power-ai-shadow: none;
}
.power-ai[data-c-c7mmh3nv] .rounded-image-img {
  filter: grayscale(1);
}
.power-ai[data-c-c7mmh3nv] .text-block-heading {
  color: var(--power-ai-body-color);
  line-height: 1.125;
}
.power-ai[data-c-c7mmh3nv] .text-block-body p {
  color: var(--power-ai-body-color);
  font-weight: 500;
  margin-block-end: 0.75rem;
}
.power-ai[data-c-c7mmh3nv] .text-block-body p:last-child {
  margin-block-end: 0;
}
.arrow-link[data-c-bulfszpc] {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: var(--font-size-body-lg);
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: color 0.15s;
}
.arrow-link[data-c-bulfszpc] svg {
  flex-shrink: 0;
}
.arrow-link--light[data-c-bulfszpc] {
  color: var(--color-surface-dark);
}
.arrow-link--light[data-c-bulfszpc]:hover {
  color: var(--color-primary);
}
.arrow-link--dark[data-c-bulfszpc] {
  color: var(--color-primary);
  transition: opacity 0.15s;
}
.arrow-link--dark[data-c-bulfszpc]:hover {
  opacity: 0.8;
}

/* ---- inline (about/index.html) ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.dark-page-hero[data-c-bv6iqeog] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: var(--hero-padding-block);
  min-block-size: 100dvh;
  overflow: hidden;
}
@media (min-width: 768px) {
  .dark-page-hero[data-c-bv6iqeog] {
    min-block-size: var(--hero-min-block-size);
  }
}
.dark-page-hero--start[data-c-bv6iqeog] {
  display: block;
}
.dark-page-hero--center[data-c-bv6iqeog] {
  display: flex;
  align-items: center;
}
.brand-letter[data-c-uqgx6sio] {
  inline-size: auto;
  block-size: auto;
}
.decorative-overlay[data-c-wrw7cu3v] {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.decorative-overlay--visible[data-c-wrw7cu3v] {
  overflow: visible;
}
.letters-wrap[data-c-bsioup76] {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 54%;
  container-type: inline-size;
}
.letter[data-c-bsioup76] {
  position: absolute;
}
.letter[data-c-bsioup76] svg {
  display: block;
  inline-size: auto;
}
.letters-wrap--default[data-c-bsioup76] {
  block-size: 100%;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: -4.03cqi;
  inset-block-start: 2.85cqi;
  rotate: 1deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 45.14cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 27.99cqi;
  inset-block-start: 15.49cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 57.01cqi;
  inset-block-start: 21.6cqi;
  rotate: 20deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 80.97cqi;
  inset-block-start: 8.26cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 41.32cqi;
}
.letters-wrap--compact[data-c-bsioup76] {
  inset-block-start: 0;
  inset-block-end: 0;
  block-size: 100%;
  color: var(--color-on-dark);
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: 16.9cqi;
  inset-block-start: 19.21cqi;
  rotate: -2deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 43.4cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 45.14cqi;
  inset-block-start: 31.13cqi;
  rotate: -8deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 68.52cqi;
  inset-block-start: 32.64cqi;
  rotate: 12deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 85.99cqi;
  inset-block-start: 18.29cqi;
  rotate: -10deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 35.3cqi;
}

/* ---- inline (about/index.html) ---- */
.text-block-heading[data-c-wz6xpbld] {
  font-family: var(--font-display);
  font-size: var(--tb-heading-size, var(--font-size-display));
  font-weight: var(--tb-heading-weight, 700);
  line-height: var(--tb-heading-line-height, 1.2);
  letter-spacing: -0.02em;
  margin: 0 0 var(--tb-spacing, 1.5rem);
}
.text-block-heading[data-c-wz6xpbld] strong {
  font-weight: 700;
}
.text-block-body[data-c-wz6xpbld] {
  max-inline-size: var(--tb-body-max-width);
}
.text-block-body[data-c-wz6xpbld] p {
  font-size: var(--tb-body-size, var(--font-size-body));
  font-weight: var(--tb-body-weight, 500);
  line-height: var(--tb-body-line-height, 1.65);
  margin: 0 0 1rem;
}
.text-block-body[data-c-wz6xpbld] p:last-child {
  margin-block-end: 0;
}
.text-block--light[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-surface-dark);
}
.text-block--light[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-muted-foreground);
}
.text-block--dark[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-on-dark);
}
.text-block--dark[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-on-dark-muted);
}
.arrow-link[data-c-bulfszpc] {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: var(--font-size-body-lg);
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: color 0.15s;
}
.arrow-link[data-c-bulfszpc] svg {
  flex-shrink: 0;
}
.arrow-link--light[data-c-bulfszpc] {
  color: var(--color-surface-dark);
}
.arrow-link--light[data-c-bulfszpc]:hover {
  color: var(--color-primary);
}
.arrow-link--dark[data-c-bulfszpc] {
  color: var(--color-primary);
  transition: opacity 0.15s;
}
.arrow-link--dark[data-c-bulfszpc]:hover {
  opacity: 0.8;
}

/* ---- inline (about/index.html) ---- */
.responsive-grid[data-c-r5wcfgzt] {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--grid-gap, 1.5rem);
}
.responsive-grid--cols-2[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.responsive-grid--cols-2[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.responsive-grid--cols-3[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.responsive-grid--cols-3[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.responsive-grid--cols-4[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(4, 1fr);
  }
}
.responsive-grid--cols-4[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 768px) {
  .contact-section .split-layout-start {
    padding-inline-end: 5.5rem;
  }
}
.stat-item[data-c-d3j7k4v7] {
  display: flex;
  flex-direction: column;
  gap: var(--stat-gap, 0.25rem);
}
.stat-value[data-c-d3j7k4v7] {
  font-family: var(--font-display);
  font-size: var(--stat-value-size, var(--font-size-h1));
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: var(--stat-value-tracking, 0);
}
.stat-label[data-c-d3j7k4v7] {
  font-size: var(--stat-label-size, var(--font-size-body-sm));
  font-weight: var(--stat-label-weight, 500);
  text-transform: var(--stat-label-transform, uppercase);
  letter-spacing: var(--stat-label-tracking, 0.06em);
}
.stat-item--dark[data-c-d3j7k4v7] .stat-value[data-c-d3j7k4v7] {
  color: var(--color-on-dark);
}
.stat-item--dark[data-c-d3j7k4v7] .stat-label[data-c-d3j7k4v7] {
  color: var(--color-on-dark-muted);
}
.stat-item--light[data-c-d3j7k4v7] .stat-value[data-c-d3j7k4v7] {
  color: var(--color-foreground);
}
.stat-item--light[data-c-d3j7k4v7] .stat-label[data-c-d3j7k4v7] {
  color: var(--color-muted-foreground);
}
.trapezoid-shadow[data-c-d36piq2n] {
  --trapezoid-shadow: drop-shadow(var(--shadow-card));
  filter: var(--trapezoid-shadow);
}
.trapezoid-shadow[data-c-d36piq2n]:nth-child(odd)
  > .trapezoid-card[data-c-d36piq2n] {
  clip-path: url(#trapezoid-v);
}
.trapezoid-shadow[data-c-d36piq2n]:nth-child(2n)
  > .trapezoid-card[data-c-d36piq2n] {
  clip-path: url(#trapezoid-a);
}
.trapezoid-card[data-c-d36piq2n] {
  --trapezoid-bg: var(--color-background);
  --trapezoid-radius: 0.75rem;
  --trapezoid-max-width: 303px;
  --trapezoid-value-color: var(--color-foreground);
  --trapezoid-label-color: var(--color-foreground);
  position: relative;
  background-color: var(--trapezoid-bg);
  border-radius: var(--trapezoid-radius);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  max-inline-size: var(--trapezoid-max-width);
  margin-inline: auto;
  --stat-value-size: clamp(2.25rem, 1.25rem + 3.5vw, 4.375rem);
  --stat-value-tracking: -0.03em;
  --stat-gap: clamp(1.5rem, 4vw, 5rem);
  --stat-label-size: clamp(0.75rem, 0.5rem + 1.25vw, 1.25rem);
  --stat-label-transform: none;
  --stat-label-weight: 600;
  --stat-label-tracking: 0;
  --color-foreground: var(--trapezoid-value-color);
  --color-muted-foreground: var(--trapezoid-label-color);
}
.trapezoid-stat-item[data-c-d36piq2n] {
  align-items: center;
}
.trapezoid-card--metallic[data-c-d36piq2n]:before {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid var(--white-35);
  mask-image:
    linear-gradient(to right, transparent 50%, white 50%),
    linear-gradient(to bottom, white 50%, transparent 50%);
  mask-size:
    100% 1px,
    1px 100%;
  mask-position: top, right;
  mask-repeat: no-repeat;
  mask-composite: add;
  -webkit-mask-image:
    linear-gradient(to right, transparent 50%, white 50%),
    linear-gradient(to bottom, white 50%, transparent 50%);
  -webkit-mask-size:
    100% 1px,
    1px 100%;
  -webkit-mask-position: top, right;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-composite: source-over;
  pointer-events: none;
  z-index: 2;
}
.trapezoid-card--metallic[data-c-d36piq2n]:after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid var(--white-35);
  mask-image:
    linear-gradient(to left, transparent 50%, white 50%),
    linear-gradient(to top, white 50%, transparent 50%);
  mask-size:
    100% 1px,
    1px 100%;
  mask-position: bottom, left;
  mask-repeat: no-repeat;
  mask-composite: add;
  -webkit-mask-image:
    linear-gradient(to left, transparent 50%, white 50%),
    linear-gradient(to top, white 50%, transparent 50%);
  -webkit-mask-size:
    100% 1px,
    1px 100%;
  -webkit-mask-position: bottom, left;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-composite: source-over;
  pointer-events: none;
  z-index: 2;
}
.section[data-c-pdbomyic] {
  position: relative;
  padding-block: 5rem;
}
.section-container[data-c-yfwknzfq] {
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .section-container[data-c-yfwknzfq] {
    padding-inline: 7rem;
  }
}
.section-intro[data-c-w2wcho3q] {
  margin-block-end: var(--si-margin-block-end, 3rem);
}
.section-intro--center[data-c-w2wcho3q] {
  text-align: center;
}
.section-intro--start[data-c-w2wcho3q] {
  text-align: start;
}
.section-intro-heading[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-heading-size, var(--font-size-display));
  font-weight: var(--si-heading-weight, 700);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
}
.section-intro-heading[data-c-w2wcho3q] strong {
  font-weight: 700;
}
.section-intro-body[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-body-size, var(--font-size-lead));
  font-weight: var(--si-body-weight, 500);
  line-height: var(--si-body-line-height, 1.65);
  max-inline-size: 50rem;
  margin-block: 0;
}
.section-intro--center[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  margin-inline: auto;
}
.section-intro-action[data-c-w2wcho3q] {
  margin-block-start: 1.5rem;
}
.section-intro--light[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-surface-dark);
}
.section-intro--light[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-foreground));
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-on-dark);
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-on-dark));
}
.btn-link[data-c-rcfgfa7e] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  border-radius: 28px;
  transition:
    background-color 0.15s,
    border-color 0.15s,
    box-shadow 0.15s;
}
.btn-link-icon[data-c-rcfgfa7e] {
  flex-shrink: 0;
}
.btn-link--primary[data-c-rcfgfa7e] {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: 2px solid var(--color-primary);
}
.btn-link--primary[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}
.btn-link--outline[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}
.btn-link--outline[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.btn-link--ghost[data-c-rcfgfa7e] {
  padding-inline: 1.25rem;
  background-color: var(--color-border-on-dark);
  color: var(--color-on-dark-muted);
  font-size: var(--font-size-body-sm);
  border: 1px solid var(--white-12);
}
.btn-link--ghost[data-c-rcfgfa7e]:hover {
  background-color: var(--white-14);
  color: var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-on-dark);
  border: 2px solid var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e]:hover {
  background-color: var(--color-on-dark);
  color: var(--color-surface-dark);
}
.rounded-image[data-c-trln74ua] {
  overflow: hidden;
}
.rounded-image-img[data-c-trln74ua] {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.power-ai[data-c-c7mmh3nv] {
  --power-ai-body-color: var(--color-surface-black);
  --color-muted-foreground: var(--color-surface-black);
  --color-surface-dark: var(--color-surface-black);
  --power-ai-shadow: none;
}
.power-ai[data-c-c7mmh3nv] .rounded-image-img {
  filter: grayscale(1);
}
.power-ai[data-c-c7mmh3nv] .text-block-heading {
  color: var(--power-ai-body-color);
  line-height: 1.125;
}
.power-ai[data-c-c7mmh3nv] .text-block-body p {
  color: var(--power-ai-body-color);
  font-weight: 500;
  margin-block-end: 0.75rem;
}
.power-ai[data-c-c7mmh3nv] .text-block-body p:last-child {
  margin-block-end: 0;
}

/* ---- inline (blog/index.html) ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}

/* ---- inline (blog/index.html) ---- */
.section[data-c-pdbomyic] {
  position: relative;
  padding-block: 5rem;
}
.btn-link[data-c-rcfgfa7e] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  border-radius: 28px;
  transition:
    background-color 0.15s,
    border-color 0.15s,
    box-shadow 0.15s;
}
.btn-link-icon[data-c-rcfgfa7e] {
  flex-shrink: 0;
}
.btn-link--primary[data-c-rcfgfa7e] {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: 2px solid var(--color-primary);
}
.btn-link--primary[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}
.btn-link--outline[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}
.btn-link--outline[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.btn-link--ghost[data-c-rcfgfa7e] {
  padding-inline: 1.25rem;
  background-color: var(--color-border-on-dark);
  color: var(--color-on-dark-muted);
  font-size: var(--font-size-body-sm);
  border: 1px solid var(--white-12);
}
.btn-link--ghost[data-c-rcfgfa7e]:hover {
  background-color: var(--white-14);
  color: var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-on-dark);
  border: 2px solid var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e]:hover {
  background-color: var(--color-on-dark);
  color: var(--color-surface-dark);
}
.section-intro[data-c-w2wcho3q] {
  margin-block-end: var(--si-margin-block-end, 3rem);
}
.section-intro--center[data-c-w2wcho3q] {
  text-align: center;
}
.section-intro--start[data-c-w2wcho3q] {
  text-align: start;
}
.section-intro-heading[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-heading-size, var(--font-size-display));
  font-weight: var(--si-heading-weight, 700);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
}
.section-intro-heading[data-c-w2wcho3q] strong {
  font-weight: 700;
}
.section-intro-body[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-body-size, var(--font-size-lead));
  font-weight: var(--si-body-weight, 500);
  line-height: var(--si-body-line-height, 1.65);
  max-inline-size: 50rem;
  margin-block: 0;
}
.section-intro--center[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  margin-inline: auto;
}
.section-intro-action[data-c-w2wcho3q] {
  margin-block-start: 1.5rem;
}
.section-intro--light[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-surface-dark);
}
.section-intro--light[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-foreground));
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-on-dark);
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-on-dark));
}
.card-label[data-c-athum6dl] {
  display: block;
  font-size: var(--font-size-caption);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.card-label--primary[data-c-athum6dl] {
  color: var(--color-primary);
}
.card-label--on-dark[data-c-athum6dl] {
  color: var(--color-on-dark-muted);
}
.event-detail-card-inner[data-c-puw5dbaf] {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.event-detail-card.hover-card--light.hover-card--glow {
  border-inline-start-width: 3px;
  border-inline-start-color: var(--color-primary);
}
.event-detail-card.is-selected {
  border-color: var(--color-primary);
  box-shadow: var(--shadow-hover);
}
.event-detail-card-title[data-c-puw5dbaf] {
  margin-block-end: 0.5rem;
}
.event-detail-card-desc[data-c-puw5dbaf] {
  font-size: var(--font-size-body-sm);
  color: var(--color-muted-foreground);
  line-height: 1.6;
  margin: 0 0 0.75rem;
}
.event-detail-card-date[data-c-puw5dbaf] {
  font-size: var(--font-size-body-sm);
  color: var(--color-muted-foreground);
  margin: 0 0 1.25rem;
}
.event-detail-cta--disabled {
  pointer-events: none;
  opacity: 0.5;
}
.events-cards[data-c-3aqe3a6n] {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (min-width: 768px) {
  .contact-section .split-layout-start {
    padding-inline-end: 5.5rem;
  }
}
.card-title[data-c-ngfmhtlq] {
  font-family: var(--font-display);
  font-size: var(--ct-size, var(--font-size-body-lg));
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
}
.card-title--light[data-c-ngfmhtlq] {
  color: var(--color-foreground);
}
.card-title--dark[data-c-ngfmhtlq] {
  color: var(--color-on-dark);
}
.section-container[data-c-yfwknzfq] {
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .section-container[data-c-yfwknzfq] {
    padding-inline: 7rem;
  }
}
.section-tag[data-c-ibh72olp] {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin-block-end: 1rem;
}
.tag-line[data-c-ibh72olp] {
  display: block;
  inline-size: 24px;
  block-size: 2px;
  background-color: var(--color-primary);
}
.tag-text[data-c-ibh72olp] {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}
.section-tag--primary[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-primary);
}
.section-tag--muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-muted-foreground);
}
.section-tag--on-dark-muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-on-dark-muted);
}
.dark-page-hero[data-c-bv6iqeog] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: var(--hero-padding-block);
  min-block-size: 100dvh;
  overflow: hidden;
}
@media (min-width: 768px) {
  .dark-page-hero[data-c-bv6iqeog] {
    min-block-size: var(--hero-min-block-size);
  }
}
.dark-page-hero--start[data-c-bv6iqeog] {
  display: block;
}
.dark-page-hero--center[data-c-bv6iqeog] {
  display: flex;
  align-items: center;
}
.brand-letter[data-c-uqgx6sio] {
  inline-size: auto;
  block-size: auto;
}
.decorative-overlay[data-c-wrw7cu3v] {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.decorative-overlay--visible[data-c-wrw7cu3v] {
  overflow: visible;
}
.letters-wrap[data-c-bsioup76] {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 54%;
  container-type: inline-size;
}
.letter[data-c-bsioup76] {
  position: absolute;
}
.letter[data-c-bsioup76] svg {
  display: block;
  inline-size: auto;
}
.letters-wrap--default[data-c-bsioup76] {
  block-size: 100%;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: -4.03cqi;
  inset-block-start: 2.85cqi;
  rotate: 1deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 45.14cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 27.99cqi;
  inset-block-start: 15.49cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 57.01cqi;
  inset-block-start: 21.6cqi;
  rotate: 20deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 80.97cqi;
  inset-block-start: 8.26cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 41.32cqi;
}
.letters-wrap--compact[data-c-bsioup76] {
  inset-block-start: 0;
  inset-block-end: 0;
  block-size: 100%;
  color: var(--color-on-dark);
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: 16.9cqi;
  inset-block-start: 19.21cqi;
  rotate: -2deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 43.4cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 45.14cqi;
  inset-block-start: 31.13cqi;
  rotate: -8deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 68.52cqi;
  inset-block-start: 32.64cqi;
  rotate: 12deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 85.99cqi;
  inset-block-start: 18.29cqi;
  rotate: -10deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 35.3cqi;
}
.hover-card[data-c-e5mthvd2] {
  border-radius: var(--radius-lg);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.hover-card--light[data-c-e5mthvd2] {
  border: 1px solid var(--color-border);
  background-color: var(--color-background);
}
.hover-card--dark[data-c-e5mthvd2] {
  border: 1px solid var(--color-border-on-dark);
  background-color: var(--white-3);
}
.hover-card--lift[data-c-e5mthvd2] {
  transition:
    transform 0.2s,
    box-shadow 0.2s;
}
.hover-card--lift[data-c-e5mthvd2]:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-elevated);
}
.hover-card--glow[data-c-e5mthvd2] {
  transition: box-shadow 0.2s;
}
.hover-card--glow[data-c-e5mthvd2]:hover {
  box-shadow: var(--shadow-hover);
}
.hover-card--none[data-c-e5mthvd2] {
  transition: none;
}
.text-block-heading[data-c-wz6xpbld] {
  font-family: var(--font-display);
  font-size: var(--tb-heading-size, var(--font-size-display));
  font-weight: var(--tb-heading-weight, 700);
  line-height: var(--tb-heading-line-height, 1.2);
  letter-spacing: -0.02em;
  margin: 0 0 var(--tb-spacing, 1.5rem);
}
.text-block-heading[data-c-wz6xpbld] strong {
  font-weight: 700;
}
.text-block-body[data-c-wz6xpbld] {
  max-inline-size: var(--tb-body-max-width);
}
.text-block-body[data-c-wz6xpbld] p {
  font-size: var(--tb-body-size, var(--font-size-body));
  font-weight: var(--tb-body-weight, 500);
  line-height: var(--tb-body-line-height, 1.65);
  margin: 0 0 1rem;
}
.text-block-body[data-c-wz6xpbld] p:last-child {
  margin-block-end: 0;
}
.text-block--light[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-surface-dark);
}
.text-block--light[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-muted-foreground);
}
.text-block--dark[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-on-dark);
}
.text-block--dark[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-on-dark-muted);
}
.cta-section[data-c-ihx4w7gh] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: 5rem;
  min-block-size: var(--cta-min-height);
  display: flex;
  align-items: center;
}
.cta-content[data-c-ihx4w7gh] {
  max-inline-size: var(--cta-content-max-width);
}
.cta-section--center[data-c-ihx4w7gh] .cta-content[data-c-ihx4w7gh] {
  text-align: center;
  margin-inline: auto;
}
.cta-actions[data-c-ihx4w7gh] {
  margin-block-start: 2.5rem;
}

/* ---- inline (blog/index.html) ---- */
.action-row[data-c-3s3h5wbb] {
  display: flex;
  flex-wrap: wrap;
  gap: var(--action-row-gap, 1rem);
}
.newsletter-bar-inner[data-c-ygrkkgdh] {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding-block: 3rem;
  min-block-size: 191px;
  justify-content: center;
}
.newsletter-bar-text[data-c-ygrkkgdh] {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.newsletter-bar-sub[data-c-ygrkkgdh] {
  margin: 0;
  font-size: var(--font-size-h4);
  font-weight: 400;
  line-height: 1.2;
  color: var(--color-on-dark);
}
@media (min-width: 1200px) {
  .newsletter-bar-inner[data-c-ygrkkgdh] {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
  }
  .newsletter-bar-text[data-c-ygrkkgdh] {
    min-inline-size: 0;
  }
}
.newsletter-bar-form[data-c-ygrkkgdh] {
  inline-size: 100%;
}
@media (min-width: 1200px) {
  .newsletter-bar-form[data-c-ygrkkgdh] {
    inline-size: 30.5rem;
    flex-shrink: 0;
  }
}
.arrow-link[data-c-bulfszpc] {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: var(--font-size-body-lg);
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: color 0.15s;
}
.arrow-link[data-c-bulfszpc] svg {
  flex-shrink: 0;
}
.arrow-link--light[data-c-bulfszpc] {
  color: var(--color-surface-dark);
}
.arrow-link--light[data-c-bulfszpc]:hover {
  color: var(--color-primary);
}
.arrow-link--dark[data-c-bulfszpc] {
  color: var(--color-primary);
  transition: opacity 0.15s;
}
.arrow-link--dark[data-c-bulfszpc]:hover {
  opacity: 0.8;
}

/* ---- inline (blog/index.html) ---- */
.inline-input__wrapper {
  display: flex;
  align-items: center;
  gap: 0;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  overflow: hidden;
}
.inline-input__wrapper-variant {
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
}
.inline-input__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.inline-input__input {
  flex: 1;
  min-width: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.inline-input__input::placeholder {
  color: var(--color-on-dark-muted);
}
.inline-input__input:focus-visible {
  outline: none;
  box-shadow: none;
}
.inline-input__button {
  block-size: 48px;
  padding-inline: 2rem;
  border: none;
  border-radius: var(--radius-full);
  font-weight: 600;
  font-size: var(--font-size-body-lg);
  cursor: pointer;
  white-space: nowrap;
  margin: 0.25rem;
  transition: opacity 0.15s;
}
.inline-input__button-variant {
  background: var(--color-primary);
  color: var(--color-on-dark);
}
.inline-input__button-disabled {
  opacity: 0.7;
}
.newsletter__name-field {
  display: flex;
  align-items: center;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
  margin-block-end: 1.25rem;
  overflow: hidden;
}
.newsletter__name-input {
  flex: 1;
  min-inline-size: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.newsletter__name-input::placeholder {
  color: var(--color-on-dark-muted);
}
.newsletter__name-input:focus-visible {
  outline: none;
  box-shadow: none;
}
.newsletter__sr-only {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.newsletter__consent-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-block-start: 0.75rem;
  font-size: var(--font-size-body-sm);
  line-height: 1.4;
  cursor: pointer;
}
.newsletter__consent-label-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-label-cta {
  color: var(--color-on-dark-muted);
}
.newsletter__checkbox {
  flex-shrink: 0;
  inline-size: 1.375rem;
  block-size: 1.375rem;
  appearance: none;
  border: 1.5px solid var(--color-on-dark);
  border-radius: 0.3125rem;
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.newsletter__checkbox:after {
  content: "";
  position: absolute;
  display: none;
  inset-inline-start: 50%;
  inset-block-start: 45%;
  inline-size: 5px;
  block-size: 10px;
  border: solid var(--color-on-dark);
  border-width: 0 1.5px 1.5px 0;
  transform: translate(-50%, -55%) rotate(45deg);
}
.newsletter__checkbox:checked:after {
  display: block;
}
.newsletter__checkbox:focus-visible {
  outline: 2px solid var(--color-on-dark);
  outline-offset: 2px;
}
.newsletter__consent-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.newsletter__consent-error {
  font-size: var(--font-size-body-sm);
  margin-block-start: 0.5rem;
  text-align: center;
}
.newsletter__consent-error-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-error-cta {
  color: var(--color-primary);
}
.newsletter__field-error {
  margin-block-end: 0.75rem;
}
.newsletter__captcha-wrapper {
  margin-block-start: 0.75rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: center;
}
.newsletter-bg[data-c-gqhmwrgb] {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.newsletter-bg-img[data-c-gqhmwrgb] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1);
}
.newsletter-letters-scaler[data-c-gqhmwrgb] {
  display: none;
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 40%;
  inset-inline-end: 0;
  block-size: 0;
  z-index: 1;
  pointer-events: none;
  color: var(--color-on-dark);
  container-type: inline-size;
}
@media (min-width: 768px) {
  .newsletter-letters-scaler[data-c-gqhmwrgb] {
    display: block;
  }
}
.newsletter-letters[data-c-gqhmwrgb] {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 864 / 427;
  overflow: hidden;
}
.newsletter-cta-content[data-c-gqhmwrgb] {
  position: relative;
  z-index: 2;
  max-inline-size: 32rem;
}
.newsletter-cta-form[data-c-gqhmwrgb] {
  margin-block-start: 2.5rem;
  max-inline-size: 30rem;
}
.newsletter-cta-content[data-c-gqhmwrgb] .text-block--dark .text-block-body p {
  color: var(--color-on-dark);
  font-weight: 300;
}

/* ---- inline (careers/index.html) ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.dark-page-hero[data-c-bv6iqeog] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: var(--hero-padding-block);
  min-block-size: 100dvh;
  overflow: hidden;
}
@media (min-width: 768px) {
  .dark-page-hero[data-c-bv6iqeog] {
    min-block-size: var(--hero-min-block-size);
  }
}
.dark-page-hero--start[data-c-bv6iqeog] {
  display: block;
}
.dark-page-hero--center[data-c-bv6iqeog] {
  display: flex;
  align-items: center;
}
.section-intro[data-c-w2wcho3q] {
  margin-block-end: var(--si-margin-block-end, 3rem);
}
.section-intro--center[data-c-w2wcho3q] {
  text-align: center;
}
.section-intro--start[data-c-w2wcho3q] {
  text-align: start;
}
.section-intro-heading[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-heading-size, var(--font-size-display));
  font-weight: var(--si-heading-weight, 700);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
}
.section-intro-heading[data-c-w2wcho3q] strong {
  font-weight: 700;
}
.section-intro-body[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-body-size, var(--font-size-lead));
  font-weight: var(--si-body-weight, 500);
  line-height: var(--si-body-line-height, 1.65);
  max-inline-size: 50rem;
  margin-block: 0;
}
.section-intro--center[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  margin-inline: auto;
}
.section-intro-action[data-c-w2wcho3q] {
  margin-block-start: 1.5rem;
}
.section-intro--light[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-surface-dark);
}
.section-intro--light[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-foreground));
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-on-dark);
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-on-dark));
}
.brand-letter[data-c-uqgx6sio] {
  inline-size: auto;
  block-size: auto;
}
.decorative-overlay[data-c-wrw7cu3v] {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.decorative-overlay--visible[data-c-wrw7cu3v] {
  overflow: visible;
}
.letters-wrap[data-c-bsioup76] {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 54%;
  container-type: inline-size;
}
.letter[data-c-bsioup76] {
  position: absolute;
}
.letter[data-c-bsioup76] svg {
  display: block;
  inline-size: auto;
}
.letters-wrap--default[data-c-bsioup76] {
  block-size: 100%;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: -4.03cqi;
  inset-block-start: 2.85cqi;
  rotate: 1deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 45.14cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 27.99cqi;
  inset-block-start: 15.49cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 57.01cqi;
  inset-block-start: 21.6cqi;
  rotate: 20deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 80.97cqi;
  inset-block-start: 8.26cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 41.32cqi;
}
.letters-wrap--compact[data-c-bsioup76] {
  inset-block-start: 0;
  inset-block-end: 0;
  block-size: 100%;
  color: var(--color-on-dark);
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: 16.9cqi;
  inset-block-start: 19.21cqi;
  rotate: -2deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 43.4cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 45.14cqi;
  inset-block-start: 31.13cqi;
  rotate: -8deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 68.52cqi;
  inset-block-start: 32.64cqi;
  rotate: 12deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 85.99cqi;
  inset-block-start: 18.29cqi;
  rotate: -10deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 35.3cqi;
}
.section-container[data-c-yfwknzfq] {
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .section-container[data-c-yfwknzfq] {
    padding-inline: 7rem;
  }
}
.section-tag[data-c-ibh72olp] {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin-block-end: 1rem;
}
.tag-line[data-c-ibh72olp] {
  display: block;
  inline-size: 24px;
  block-size: 2px;
  background-color: var(--color-primary);
}
.tag-text[data-c-ibh72olp] {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}
.section-tag--primary[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-primary);
}
.section-tag--muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-muted-foreground);
}
.section-tag--on-dark-muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-on-dark-muted);
}
.text-block-heading[data-c-wz6xpbld] {
  font-family: var(--font-display);
  font-size: var(--tb-heading-size, var(--font-size-display));
  font-weight: var(--tb-heading-weight, 700);
  line-height: var(--tb-heading-line-height, 1.2);
  letter-spacing: -0.02em;
  margin: 0 0 var(--tb-spacing, 1.5rem);
}
.text-block-heading[data-c-wz6xpbld] strong {
  font-weight: 700;
}
.text-block-body[data-c-wz6xpbld] {
  max-inline-size: var(--tb-body-max-width);
}
.text-block-body[data-c-wz6xpbld] p {
  font-size: var(--tb-body-size, var(--font-size-body));
  font-weight: var(--tb-body-weight, 500);
  line-height: var(--tb-body-line-height, 1.65);
  margin: 0 0 1rem;
}
.text-block-body[data-c-wz6xpbld] p:last-child {
  margin-block-end: 0;
}
.text-block--light[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-surface-dark);
}
.text-block--light[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-muted-foreground);
}
.text-block--dark[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-on-dark);
}
.text-block--dark[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-on-dark-muted);
}
.cta-section[data-c-ihx4w7gh] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: 5rem;
  min-block-size: var(--cta-min-height);
  display: flex;
  align-items: center;
}
.cta-content[data-c-ihx4w7gh] {
  max-inline-size: var(--cta-content-max-width);
}
.cta-section--center[data-c-ihx4w7gh] .cta-content[data-c-ihx4w7gh] {
  text-align: center;
  margin-inline: auto;
}
.cta-actions[data-c-ihx4w7gh] {
  margin-block-start: 2.5rem;
}
.careers-cta {
  position: relative;
  background-image: none !important;
  overflow: hidden;
}
.careers-cta:before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: var(--cta-bg-image);
  background-size: cover;
  background-position: center;
  filter: grayscale(1) brightness(0.35) blur(1px);
  z-index: 0;
}
.careers-cta:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, var(--black-60) 0%, transparent 60%);
  z-index: 0;
}
.careers-cta > * {
  position: relative;
  z-index: 2;
}
.careers-cta .careers-letters {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  color: var(--color-on-dark);
  overflow: hidden;
  filter: blur(1.5px);
}
.careers-cta .text-block-heading {
  font-size: 48px !important;
  font-weight: 700 !important;
  line-height: 42px !important;
  letter-spacing: 0 !important;
}
.careers-cta .text-block--dark .text-block-body {
  max-inline-size: 42rem !important;
}
.careers-cta .text-block--dark .text-block-body p {
  color: var(--color-on-dark) !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
}
.btn-link[data-c-rcfgfa7e] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  border-radius: 28px;
  transition:
    background-color 0.15s,
    border-color 0.15s,
    box-shadow 0.15s;
}
.btn-link-icon[data-c-rcfgfa7e] {
  flex-shrink: 0;
}
.btn-link--primary[data-c-rcfgfa7e] {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: 2px solid var(--color-primary);
}
.btn-link--primary[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}
.btn-link--outline[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}
.btn-link--outline[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.btn-link--ghost[data-c-rcfgfa7e] {
  padding-inline: 1.25rem;
  background-color: var(--color-border-on-dark);
  color: var(--color-on-dark-muted);
  font-size: var(--font-size-body-sm);
  border: 1px solid var(--white-12);
}
.btn-link--ghost[data-c-rcfgfa7e]:hover {
  background-color: var(--white-14);
  color: var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-on-dark);
  border: 2px solid var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e]:hover {
  background-color: var(--color-on-dark);
  color: var(--color-surface-dark);
}

/* ---- inline (contacts/index.html) ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.brand-letter[data-c-uqgx6sio] {
  inline-size: auto;
  block-size: auto;
}
.decorative-overlay[data-c-wrw7cu3v] {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.decorative-overlay--visible[data-c-wrw7cu3v] {
  overflow: visible;
}
.letters-wrap[data-c-bsioup76] {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 54%;
  container-type: inline-size;
}
.letter[data-c-bsioup76] {
  position: absolute;
}
.letter[data-c-bsioup76] svg {
  display: block;
  inline-size: auto;
}
.letters-wrap--default[data-c-bsioup76] {
  block-size: 100%;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: -4.03cqi;
  inset-block-start: 2.85cqi;
  rotate: 1deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 45.14cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 27.99cqi;
  inset-block-start: 15.49cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 57.01cqi;
  inset-block-start: 21.6cqi;
  rotate: 20deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 80.97cqi;
  inset-block-start: 8.26cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 41.32cqi;
}
.letters-wrap--compact[data-c-bsioup76] {
  inset-block-start: 0;
  inset-block-end: 0;
  block-size: 100%;
  color: var(--color-on-dark);
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: 16.9cqi;
  inset-block-start: 19.21cqi;
  rotate: -2deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 43.4cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 45.14cqi;
  inset-block-start: 31.13cqi;
  rotate: -8deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 68.52cqi;
  inset-block-start: 32.64cqi;
  rotate: 12deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 85.99cqi;
  inset-block-start: 18.29cqi;
  rotate: -10deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 35.3cqi;
}
.text-block-heading[data-c-wz6xpbld] {
  font-family: var(--font-display);
  font-size: var(--tb-heading-size, var(--font-size-display));
  font-weight: var(--tb-heading-weight, 700);
  line-height: var(--tb-heading-line-height, 1.2);
  letter-spacing: -0.02em;
  margin: 0 0 var(--tb-spacing, 1.5rem);
}
.text-block-heading[data-c-wz6xpbld] strong {
  font-weight: 700;
}
.text-block-body[data-c-wz6xpbld] {
  max-inline-size: var(--tb-body-max-width);
}
.text-block-body[data-c-wz6xpbld] p {
  font-size: var(--tb-body-size, var(--font-size-body));
  font-weight: var(--tb-body-weight, 500);
  line-height: var(--tb-body-line-height, 1.65);
  margin: 0 0 1rem;
}
.text-block-body[data-c-wz6xpbld] p:last-child {
  margin-block-end: 0;
}
.text-block--light[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-surface-dark);
}
.text-block--light[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-muted-foreground);
}
.text-block--dark[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-on-dark);
}
.text-block--dark[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-on-dark-muted);
}

/* ---- inline (contacts/index.html) ---- */
.section[data-c-pdbomyic] {
  position: relative;
  padding-block: 5rem;
}
.section-container[data-c-yfwknzfq] {
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .section-container[data-c-yfwknzfq] {
    padding-inline: 7rem;
  }
}
.contacts-hero {
  position: relative;
  min-block-size: 100dvh;
  block-size: auto;
  overflow: hidden;
}
@media (min-width: 768px) {
  .contacts-hero {
    min-block-size: 799px;
  }
}
.contacts-hero .contacts-letters {
  position: absolute;
  inset: 0;
  inset-block-start: 16rem;
  overflow: hidden;
  pointer-events: none;
  z-index: 1;
  color: var(--color-on-dark);
  filter: blur(1px);
}
.contacts-hero .section-container {
  position: relative;
  z-index: 2;
}
.contacts-hero .text-block-body {
  margin-block-start: 2.5rem;
}
.contacts-hero .split-layout-end {
  padding-block-start: 4rem;
}
.contacts-hero .contact-info--dark {
  padding-inline-end: 2.5rem;
  color: var(--color-on-dark);
}
.contacts-hero .text-block--dark .text-block-body p,
.contacts-hero .contact-info-address p,
.contacts-hero .contact-info-address-label,
.contacts-hero .contact-info-link,
.contacts-hero .label,
.contacts-hero .text-block-heading {
  color: var(--color-on-dark);
}
.inline-input__wrapper {
  display: flex;
  align-items: center;
  gap: 0;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  overflow: hidden;
}
.inline-input__wrapper-variant {
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
}
.inline-input__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.inline-input__input {
  flex: 1;
  min-width: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.inline-input__input::placeholder {
  color: var(--color-on-dark-muted);
}
.inline-input__input:focus-visible {
  outline: none;
  box-shadow: none;
}
.inline-input__button {
  block-size: 48px;
  padding-inline: 2rem;
  border: none;
  border-radius: var(--radius-full);
  font-weight: 600;
  font-size: var(--font-size-body-lg);
  cursor: pointer;
  white-space: nowrap;
  margin: 0.25rem;
  transition: opacity 0.15s;
}
.inline-input__button-variant {
  background: var(--color-primary);
  color: var(--color-on-dark);
}
.inline-input__button-disabled {
  opacity: 0.7;
}
.newsletter__name-field {
  display: flex;
  align-items: center;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
  margin-block-end: 1.25rem;
  overflow: hidden;
}
.newsletter__name-input {
  flex: 1;
  min-inline-size: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.newsletter__name-input::placeholder {
  color: var(--color-on-dark-muted);
}
.newsletter__name-input:focus-visible {
  outline: none;
  box-shadow: none;
}
.newsletter__sr-only {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.newsletter__consent-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-block-start: 0.75rem;
  font-size: var(--font-size-body-sm);
  line-height: 1.4;
  cursor: pointer;
}
.newsletter__consent-label-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-label-cta {
  color: var(--color-on-dark-muted);
}
.newsletter__checkbox {
  flex-shrink: 0;
  inline-size: 1.375rem;
  block-size: 1.375rem;
  appearance: none;
  border: 1.5px solid var(--color-on-dark);
  border-radius: 0.3125rem;
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.newsletter__checkbox:after {
  content: "";
  position: absolute;
  display: none;
  inset-inline-start: 50%;
  inset-block-start: 45%;
  inline-size: 5px;
  block-size: 10px;
  border: solid var(--color-on-dark);
  border-width: 0 1.5px 1.5px 0;
  transform: translate(-50%, -55%) rotate(45deg);
}
.newsletter__checkbox:checked:after {
  display: block;
}
.newsletter__checkbox:focus-visible {
  outline: 2px solid var(--color-on-dark);
  outline-offset: 2px;
}
.newsletter__consent-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.newsletter__consent-error {
  font-size: var(--font-size-body-sm);
  margin-block-start: 0.5rem;
  text-align: center;
}
.newsletter__consent-error-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-error-cta {
  color: var(--color-primary);
}
.newsletter__field-error {
  margin-block-end: 0.75rem;
}
.newsletter__captcha-wrapper {
  margin-block-start: 0.75rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: center;
}
.newsletter-bg[data-c-gqhmwrgb] {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.newsletter-bg-img[data-c-gqhmwrgb] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1);
}
.newsletter-letters-scaler[data-c-gqhmwrgb] {
  display: none;
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 40%;
  inset-inline-end: 0;
  block-size: 0;
  z-index: 1;
  pointer-events: none;
  color: var(--color-on-dark);
  container-type: inline-size;
}
@media (min-width: 768px) {
  .newsletter-letters-scaler[data-c-gqhmwrgb] {
    display: block;
  }
}
.newsletter-letters[data-c-gqhmwrgb] {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 864 / 427;
  overflow: hidden;
}
.newsletter-cta-content[data-c-gqhmwrgb] {
  position: relative;
  z-index: 2;
  max-inline-size: 32rem;
}
.newsletter-cta-form[data-c-gqhmwrgb] {
  margin-block-start: 2.5rem;
  max-inline-size: 30rem;
}
.newsletter-cta-content[data-c-gqhmwrgb] .text-block--dark .text-block-body p {
  color: var(--color-on-dark);
  font-weight: 300;
}

/* ---- inline (cookies/index.html) ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.dark-page-hero[data-c-bv6iqeog] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: var(--hero-padding-block);
  min-block-size: 100dvh;
  overflow: hidden;
}
@media (min-width: 768px) {
  .dark-page-hero[data-c-bv6iqeog] {
    min-block-size: var(--hero-min-block-size);
  }
}
.dark-page-hero--start[data-c-bv6iqeog] {
  display: block;
}
.dark-page-hero--center[data-c-bv6iqeog] {
  display: flex;
  align-items: center;
}
.section-intro[data-c-w2wcho3q] {
  margin-block-end: var(--si-margin-block-end, 3rem);
}
.section-intro--center[data-c-w2wcho3q] {
  text-align: center;
}
.section-intro--start[data-c-w2wcho3q] {
  text-align: start;
}
.section-intro-heading[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-heading-size, var(--font-size-display));
  font-weight: var(--si-heading-weight, 700);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
}
.section-intro-heading[data-c-w2wcho3q] strong {
  font-weight: 700;
}
.section-intro-body[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-body-size, var(--font-size-lead));
  font-weight: var(--si-body-weight, 500);
  line-height: var(--si-body-line-height, 1.65);
  max-inline-size: 50rem;
  margin-block: 0;
}
.section-intro--center[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  margin-inline: auto;
}
.section-intro-action[data-c-w2wcho3q] {
  margin-block-start: 1.5rem;
}
.section-intro--light[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-surface-dark);
}
.section-intro--light[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-foreground));
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-on-dark);
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-on-dark));
}
.section[data-c-pdbomyic] {
  position: relative;
  padding-block: 5rem;
}
.section-container[data-c-yfwknzfq] {
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .section-container[data-c-yfwknzfq] {
    padding-inline: 7rem;
  }
}
.legal-content[data-c-nqyftovm] {
  max-inline-size: 48rem;
  margin-inline: auto;
  padding-block: 3rem;
  line-height: 1.8;
}
.legal-content[data-c-nqyftovm] h2 {
  font-size: 1.25rem;
  font-weight: 700;
  margin-block: 2rem 0.75rem;
}
.legal-content[data-c-nqyftovm] h3 {
  font-size: 1.0625rem;
  font-weight: 600;
  margin-block: 1.5rem 0.5rem;
}
.legal-content[data-c-nqyftovm] ul {
  padding-inline-start: 1.5rem;
}
.legal-content[data-c-nqyftovm] li {
  margin-block-end: 0.5rem;
}
.legal-content[data-c-nqyftovm] a {
  color: var(--color-primary);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.legal-content[data-c-nqyftovm] table {
  width: 100%;
  border-collapse: collapse;
  margin-block: 1rem;
  font-size: 0.875rem;
}
.legal-content[data-c-nqyftovm] th,
.legal-content[data-c-nqyftovm] td {
  padding: 0.625rem 0.75rem;
  border: 1px solid var(--color-border);
  text-align: start;
}
.legal-content[data-c-nqyftovm] th {
  background-color: var(--color-surface-muted);
  font-weight: 600;
}

/* ---- inline (events/index.html) ---- */
.btn-link[data-c-rcfgfa7e] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  border-radius: 28px;
  transition:
    background-color 0.15s,
    border-color 0.15s,
    box-shadow 0.15s;
}
.btn-link-icon[data-c-rcfgfa7e] {
  flex-shrink: 0;
}
.btn-link--primary[data-c-rcfgfa7e] {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: 2px solid var(--color-primary);
}
.btn-link--primary[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}
.btn-link--outline[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}
.btn-link--outline[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.btn-link--ghost[data-c-rcfgfa7e] {
  padding-inline: 1.25rem;
  background-color: var(--color-border-on-dark);
  color: var(--color-on-dark-muted);
  font-size: var(--font-size-body-sm);
  border: 1px solid var(--white-12);
}
.btn-link--ghost[data-c-rcfgfa7e]:hover {
  background-color: var(--white-14);
  color: var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-on-dark);
  border: 2px solid var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e]:hover {
  background-color: var(--color-on-dark);
  color: var(--color-surface-dark);
}
.section-intro[data-c-w2wcho3q] {
  margin-block-end: var(--si-margin-block-end, 3rem);
}
.section-intro--center[data-c-w2wcho3q] {
  text-align: center;
}
.section-intro--start[data-c-w2wcho3q] {
  text-align: start;
}
.section-intro-heading[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-heading-size, var(--font-size-display));
  font-weight: var(--si-heading-weight, 700);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
}
.section-intro-heading[data-c-w2wcho3q] strong {
  font-weight: 700;
}
.section-intro-body[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-body-size, var(--font-size-lead));
  font-weight: var(--si-body-weight, 500);
  line-height: var(--si-body-line-height, 1.65);
  max-inline-size: 50rem;
  margin-block: 0;
}
.section-intro--center[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  margin-inline: auto;
}
.section-intro-action[data-c-w2wcho3q] {
  margin-block-start: 1.5rem;
}
.section-intro--light[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-surface-dark);
}
.section-intro--light[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-foreground));
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-on-dark);
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-on-dark));
}
.card-label[data-c-athum6dl] {
  display: block;
  font-size: var(--font-size-caption);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.card-label--primary[data-c-athum6dl] {
  color: var(--color-primary);
}
.card-label--on-dark[data-c-athum6dl] {
  color: var(--color-on-dark-muted);
}
.event-detail-card-inner[data-c-puw5dbaf] {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.event-detail-card.hover-card--light.hover-card--glow {
  border-inline-start-width: 3px;
  border-inline-start-color: var(--color-primary);
}
.event-detail-card.is-selected {
  border-color: var(--color-primary);
  box-shadow: var(--shadow-hover);
}
.event-detail-card-title[data-c-puw5dbaf] {
  margin-block-end: 0.5rem;
}
.event-detail-card-desc[data-c-puw5dbaf] {
  font-size: var(--font-size-body-sm);
  color: var(--color-muted-foreground);
  line-height: 1.6;
  margin: 0 0 0.75rem;
}
.event-detail-card-date[data-c-puw5dbaf] {
  font-size: var(--font-size-body-sm);
  color: var(--color-muted-foreground);
  margin: 0 0 1.25rem;
}
.event-detail-cta--disabled {
  pointer-events: none;
  opacity: 0.5;
}
.events-cards[data-c-3aqe3a6n] {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.card-title[data-c-ngfmhtlq] {
  font-family: var(--font-display);
  font-size: var(--ct-size, var(--font-size-body-lg));
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
}
.card-title--light[data-c-ngfmhtlq] {
  color: var(--color-foreground);
}
.card-title--dark[data-c-ngfmhtlq] {
  color: var(--color-on-dark);
}
.section-tag[data-c-ibh72olp] {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin-block-end: 1rem;
}
.tag-line[data-c-ibh72olp] {
  display: block;
  inline-size: 24px;
  block-size: 2px;
  background-color: var(--color-primary);
}
.tag-text[data-c-ibh72olp] {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}
.section-tag--primary[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-primary);
}
.section-tag--muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-muted-foreground);
}
.section-tag--on-dark-muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-on-dark-muted);
}
.hover-card[data-c-e5mthvd2] {
  border-radius: var(--radius-lg);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.hover-card--light[data-c-e5mthvd2] {
  border: 1px solid var(--color-border);
  background-color: var(--color-background);
}
.hover-card--dark[data-c-e5mthvd2] {
  border: 1px solid var(--color-border-on-dark);
  background-color: var(--white-3);
}
.hover-card--lift[data-c-e5mthvd2] {
  transition:
    transform 0.2s,
    box-shadow 0.2s;
}
.hover-card--lift[data-c-e5mthvd2]:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-elevated);
}
.hover-card--glow[data-c-e5mthvd2] {
  transition: box-shadow 0.2s;
}
.hover-card--glow[data-c-e5mthvd2]:hover {
  box-shadow: var(--shadow-hover);
}
.hover-card--none[data-c-e5mthvd2] {
  transition: none;
}
.section[data-c-pdbomyic] {
  position: relative;
  padding-block: 5rem;
}
.section-container[data-c-yfwknzfq] {
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .section-container[data-c-yfwknzfq] {
    padding-inline: 7rem;
  }
}

/* ---- inline (people/index.html) ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.brand-letter[data-c-uqgx6sio] {
  inline-size: auto;
  block-size: auto;
}
.decorative-overlay[data-c-wrw7cu3v] {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.decorative-overlay--visible[data-c-wrw7cu3v] {
  overflow: visible;
}
.letters-wrap[data-c-bsioup76] {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 54%;
  container-type: inline-size;
}
.letter[data-c-bsioup76] {
  position: absolute;
}
.letter[data-c-bsioup76] svg {
  display: block;
  inline-size: auto;
}
.letters-wrap--default[data-c-bsioup76] {
  block-size: 100%;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: -4.03cqi;
  inset-block-start: 2.85cqi;
  rotate: 1deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 45.14cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 27.99cqi;
  inset-block-start: 15.49cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 57.01cqi;
  inset-block-start: 21.6cqi;
  rotate: 20deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 80.97cqi;
  inset-block-start: 8.26cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 41.32cqi;
}
.letters-wrap--compact[data-c-bsioup76] {
  inset-block-start: 0;
  inset-block-end: 0;
  block-size: 100%;
  color: var(--color-on-dark);
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: 16.9cqi;
  inset-block-start: 19.21cqi;
  rotate: -2deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 43.4cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 45.14cqi;
  inset-block-start: 31.13cqi;
  rotate: -8deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 68.52cqi;
  inset-block-start: 32.64cqi;
  rotate: 12deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 85.99cqi;
  inset-block-start: 18.29cqi;
  rotate: -10deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 35.3cqi;
}
.section-container[data-c-yfwknzfq] {
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .section-container[data-c-yfwknzfq] {
    padding-inline: 7rem;
  }
}

/* ---- inline (people/index.html) ---- */
.text-block-heading[data-c-wz6xpbld] {
  font-family: var(--font-display);
  font-size: var(--tb-heading-size, var(--font-size-display));
  font-weight: var(--tb-heading-weight, 700);
  line-height: var(--tb-heading-line-height, 1.2);
  letter-spacing: -0.02em;
  margin: 0 0 var(--tb-spacing, 1.5rem);
}
.text-block-heading[data-c-wz6xpbld] strong {
  font-weight: 700;
}
.text-block-body[data-c-wz6xpbld] {
  max-inline-size: var(--tb-body-max-width);
}
.text-block-body[data-c-wz6xpbld] p {
  font-size: var(--tb-body-size, var(--font-size-body));
  font-weight: var(--tb-body-weight, 500);
  line-height: var(--tb-body-line-height, 1.65);
  margin: 0 0 1rem;
}
.text-block-body[data-c-wz6xpbld] p:last-child {
  margin-block-end: 0;
}
.text-block--light[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-surface-dark);
}
.text-block--light[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-muted-foreground);
}
.text-block--dark[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-on-dark);
}
.text-block--dark[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-on-dark-muted);
}
.cta-section[data-c-ihx4w7gh] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: 5rem;
  min-block-size: var(--cta-min-height);
  display: flex;
  align-items: center;
}
.cta-content[data-c-ihx4w7gh] {
  max-inline-size: var(--cta-content-max-width);
}
.cta-section--center[data-c-ihx4w7gh] .cta-content[data-c-ihx4w7gh] {
  text-align: center;
  margin-inline: auto;
}
.cta-actions[data-c-ihx4w7gh] {
  margin-block-start: 2.5rem;
}
.section-tag[data-c-ibh72olp] {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin-block-end: 1rem;
}
.tag-line[data-c-ibh72olp] {
  display: block;
  inline-size: 24px;
  block-size: 2px;
  background-color: var(--color-primary);
}
.tag-text[data-c-ibh72olp] {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}
.section-tag--primary[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-primary);
}
.section-tag--muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-muted-foreground);
}
.section-tag--on-dark-muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-on-dark-muted);
}
.careers-cta {
  position: relative;
  background-image: none !important;
  overflow: hidden;
}
.careers-cta:before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: var(--cta-bg-image);
  background-size: cover;
  background-position: center;
  filter: grayscale(1) brightness(0.35) blur(1px);
  z-index: 0;
}
.careers-cta:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, var(--black-60) 0%, transparent 60%);
  z-index: 0;
}
.careers-cta > * {
  position: relative;
  z-index: 2;
}
.careers-cta .careers-letters {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  color: var(--color-on-dark);
  overflow: hidden;
  filter: blur(1.5px);
}
.careers-cta .text-block-heading {
  font-size: 48px !important;
  font-weight: 700 !important;
  line-height: 42px !important;
  letter-spacing: 0 !important;
}
.careers-cta .text-block--dark .text-block-body {
  max-inline-size: 42rem !important;
}
.careers-cta .text-block--dark .text-block-body p {
  color: var(--color-on-dark) !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
}
@media (min-width: 768px) {
  .contact-section .split-layout-start {
    padding-inline-end: 5.5rem;
  }
}
.dark-page-hero[data-c-bv6iqeog] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: var(--hero-padding-block);
  min-block-size: 100dvh;
  overflow: hidden;
}
@media (min-width: 768px) {
  .dark-page-hero[data-c-bv6iqeog] {
    min-block-size: var(--hero-min-block-size);
  }
}
.dark-page-hero--start[data-c-bv6iqeog] {
  display: block;
}
.dark-page-hero--center[data-c-bv6iqeog] {
  display: flex;
  align-items: center;
}
.btn-link[data-c-rcfgfa7e] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  border-radius: 28px;
  transition:
    background-color 0.15s,
    border-color 0.15s,
    box-shadow 0.15s;
}
.btn-link-icon[data-c-rcfgfa7e] {
  flex-shrink: 0;
}
.btn-link--primary[data-c-rcfgfa7e] {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: 2px solid var(--color-primary);
}
.btn-link--primary[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}
.btn-link--outline[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}
.btn-link--outline[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.btn-link--ghost[data-c-rcfgfa7e] {
  padding-inline: 1.25rem;
  background-color: var(--color-border-on-dark);
  color: var(--color-on-dark-muted);
  font-size: var(--font-size-body-sm);
  border: 1px solid var(--white-12);
}
.btn-link--ghost[data-c-rcfgfa7e]:hover {
  background-color: var(--white-14);
  color: var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-on-dark);
  border: 2px solid var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e]:hover {
  background-color: var(--color-on-dark);
  color: var(--color-surface-dark);
}
.responsive-grid[data-c-r5wcfgzt] {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--grid-gap, 1.5rem);
}
.responsive-grid--cols-2[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.responsive-grid--cols-2[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.responsive-grid--cols-3[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.responsive-grid--cols-3[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.responsive-grid--cols-4[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(4, 1fr);
  }
}
.responsive-grid--cols-4[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(4, 1fr);
  }
}

/* ---- inline (people/index.html) ---- */
.hover-card[data-c-e5mthvd2] {
  border-radius: var(--radius-lg);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.hover-card--light[data-c-e5mthvd2] {
  border: 1px solid var(--color-border);
  background-color: var(--color-background);
}
.hover-card--dark[data-c-e5mthvd2] {
  border: 1px solid var(--color-border-on-dark);
  background-color: var(--white-3);
}
.hover-card--lift[data-c-e5mthvd2] {
  transition:
    transform 0.2s,
    box-shadow 0.2s;
}
.hover-card--lift[data-c-e5mthvd2]:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-elevated);
}
.hover-card--glow[data-c-e5mthvd2] {
  transition: box-shadow 0.2s;
}
.hover-card--glow[data-c-e5mthvd2]:hover {
  box-shadow: var(--shadow-hover);
}
.hover-card--none[data-c-e5mthvd2] {
  transition: none;
}
.section[data-c-pdbomyic] {
  position: relative;
  padding-block: 5rem;
}
.inline-input__wrapper {
  display: flex;
  align-items: center;
  gap: 0;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  overflow: hidden;
}
.inline-input__wrapper-variant {
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
}
.inline-input__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.inline-input__input {
  flex: 1;
  min-width: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.inline-input__input::placeholder {
  color: var(--color-on-dark-muted);
}
.inline-input__input:focus-visible {
  outline: none;
  box-shadow: none;
}
.inline-input__button {
  block-size: 48px;
  padding-inline: 2rem;
  border: none;
  border-radius: var(--radius-full);
  font-weight: 600;
  font-size: var(--font-size-body-lg);
  cursor: pointer;
  white-space: nowrap;
  margin: 0.25rem;
  transition: opacity 0.15s;
}
.inline-input__button-variant {
  background: var(--color-primary);
  color: var(--color-on-dark);
}
.inline-input__button-disabled {
  opacity: 0.7;
}
.newsletter__name-field {
  display: flex;
  align-items: center;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
  margin-block-end: 1.25rem;
  overflow: hidden;
}
.newsletter__name-input {
  flex: 1;
  min-inline-size: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.newsletter__name-input::placeholder {
  color: var(--color-on-dark-muted);
}
.newsletter__name-input:focus-visible {
  outline: none;
  box-shadow: none;
}
.newsletter__sr-only {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.newsletter__consent-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-block-start: 0.75rem;
  font-size: var(--font-size-body-sm);
  line-height: 1.4;
  cursor: pointer;
}
.newsletter__consent-label-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-label-cta {
  color: var(--color-on-dark-muted);
}
.newsletter__checkbox {
  flex-shrink: 0;
  inline-size: 1.375rem;
  block-size: 1.375rem;
  appearance: none;
  border: 1.5px solid var(--color-on-dark);
  border-radius: 0.3125rem;
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.newsletter__checkbox:after {
  content: "";
  position: absolute;
  display: none;
  inset-inline-start: 50%;
  inset-block-start: 45%;
  inline-size: 5px;
  block-size: 10px;
  border: solid var(--color-on-dark);
  border-width: 0 1.5px 1.5px 0;
  transform: translate(-50%, -55%) rotate(45deg);
}
.newsletter__checkbox:checked:after {
  display: block;
}
.newsletter__checkbox:focus-visible {
  outline: 2px solid var(--color-on-dark);
  outline-offset: 2px;
}
.newsletter__consent-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.newsletter__consent-error {
  font-size: var(--font-size-body-sm);
  margin-block-start: 0.5rem;
  text-align: center;
}
.newsletter__consent-error-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-error-cta {
  color: var(--color-primary);
}
.newsletter__field-error {
  margin-block-end: 0.75rem;
}
.newsletter__captcha-wrapper {
  margin-block-start: 0.75rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: center;
}
.newsletter-bg[data-c-gqhmwrgb] {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.newsletter-bg-img[data-c-gqhmwrgb] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1);
}
.newsletter-letters-scaler[data-c-gqhmwrgb] {
  display: none;
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 40%;
  inset-inline-end: 0;
  block-size: 0;
  z-index: 1;
  pointer-events: none;
  color: var(--color-on-dark);
  container-type: inline-size;
}
@media (min-width: 768px) {
  .newsletter-letters-scaler[data-c-gqhmwrgb] {
    display: block;
  }
}
.newsletter-letters[data-c-gqhmwrgb] {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 864 / 427;
  overflow: hidden;
}
.newsletter-cta-content[data-c-gqhmwrgb] {
  position: relative;
  z-index: 2;
  max-inline-size: 32rem;
}
.newsletter-cta-form[data-c-gqhmwrgb] {
  margin-block-start: 2.5rem;
  max-inline-size: 30rem;
}
.newsletter-cta-content[data-c-gqhmwrgb] .text-block--dark .text-block-body p {
  color: var(--color-on-dark);
  font-weight: 300;
}
.testimonials__root {
  position: relative;
}
.testimonials__nav-group {
  display: flex;
  gap: 1rem;
  justify-content: center;
  margin-block-end: 1.5rem;
}
@media (min-width: 768px) {
  .testimonials__nav-group {
    position: absolute;
    inset-block-start: -3rem;
    inset-inline-end: 1rem;
    margin-block-end: 0;
  }
}
.testimonials__nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 2rem;
  block-size: 2rem;
  border-radius: 50%;
  border: 2px solid var(--color-primary);
  background-color: transparent;
  color: var(--color-primary);
  cursor: pointer;
  flex-shrink: 0;
  transition:
    background-color 0.15s,
    color 0.15s;
}
.testimonials__nav-btn:hover {
  background-color: var(--color-primary);
  color: var(--color-background);
}
.testimonials__viewport {
  overflow: hidden;
}
@media (min-width: 768px) {
  .testimonials__viewport {
    margin-inline-end: calc(-50vw + 50%);
  }
}
.testimonials__track {
  display: flex;
  gap: 1.5rem;
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.testimonials__card {
  flex-shrink: 0;
  inline-size: calc(100vw - 3rem);
  border-radius: 0.75rem;
  background-color: var(--color-background);
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-sizing: border-box;
  box-shadow: var(--shadow-hover), var(--shadow-soft);
}
@media (min-width: 768px) {
  .testimonials__card {
    inline-size: 384px;
    block-size: 249px;
    padding: 2rem;
  }
}
.testimonials__card-body {
  text-align: start;
}
.testimonials__quote-icon {
  color: var(--color-primary);
  display: block;
  font-family: var(--font-display);
  font-size: 48px;
  font-weight: 500;
  line-height: 1;
  margin-block-end: 0.25rem;
}
.testimonials__quote-text {
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--color-foreground);
  margin: 0;
  text-align: start;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.testimonials__card-footer {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.testimonials__author-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-inline-size: 0;
}
.testimonials__author-name {
  font-family: var(--font-display);
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--color-foreground);
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.testimonials__author-role {
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--color-muted-foreground);
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.testimonials__avatar {
  flex-shrink: 0;
  inline-size: 40px;
  block-size: 40px;
  border-radius: 50%;
  overflow: hidden;
  background-color: var(--color-neutral-300);
}
.testimonials__avatar-image {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.testimonials__avatar-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  block-size: 100%;
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-foreground);
}
.testimonials-section[data-c-4xl3epfc] {
  block-size: 652px;
  overflow: hidden;
}
.section-intro[data-c-w2wcho3q] {
  margin-block-end: var(--si-margin-block-end, 3rem);
}
.section-intro--center[data-c-w2wcho3q] {
  text-align: center;
}
.section-intro--start[data-c-w2wcho3q] {
  text-align: start;
}
.section-intro-heading[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-heading-size, var(--font-size-display));
  font-weight: var(--si-heading-weight, 700);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
}
.section-intro-heading[data-c-w2wcho3q] strong {
  font-weight: 700;
}
.section-intro-body[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-body-size, var(--font-size-lead));
  font-weight: var(--si-body-weight, 500);
  line-height: var(--si-body-line-height, 1.65);
  max-inline-size: 50rem;
  margin-block: 0;
}
.section-intro--center[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  margin-inline: auto;
}
.section-intro-action[data-c-w2wcho3q] {
  margin-block-start: 1.5rem;
}
.section-intro--light[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-surface-dark);
}
.section-intro--light[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-foreground));
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-on-dark);
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-on-dark));
}
.action-row[data-c-3s3h5wbb] {
  display: flex;
  flex-wrap: wrap;
  gap: var(--action-row-gap, 1rem);
}

/* ---- inline (people/index.html) ---- */
.stat-item[data-c-d3j7k4v7] {
  display: flex;
  flex-direction: column;
  gap: var(--stat-gap, 0.25rem);
}
.stat-value[data-c-d3j7k4v7] {
  font-family: var(--font-display);
  font-size: var(--stat-value-size, var(--font-size-h1));
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: var(--stat-value-tracking, 0);
}
.stat-label[data-c-d3j7k4v7] {
  font-size: var(--stat-label-size, var(--font-size-body-sm));
  font-weight: var(--stat-label-weight, 500);
  text-transform: var(--stat-label-transform, uppercase);
  letter-spacing: var(--stat-label-tracking, 0.06em);
}
.stat-item--dark[data-c-d3j7k4v7] .stat-value[data-c-d3j7k4v7] {
  color: var(--color-on-dark);
}
.stat-item--dark[data-c-d3j7k4v7] .stat-label[data-c-d3j7k4v7] {
  color: var(--color-on-dark-muted);
}
.stat-item--light[data-c-d3j7k4v7] .stat-value[data-c-d3j7k4v7] {
  color: var(--color-foreground);
}
.stat-item--light[data-c-d3j7k4v7] .stat-label[data-c-d3j7k4v7] {
  color: var(--color-muted-foreground);
}
.trapezoid-shadow[data-c-d36piq2n] {
  --trapezoid-shadow: drop-shadow(var(--shadow-card));
  filter: var(--trapezoid-shadow);
}
.trapezoid-shadow[data-c-d36piq2n]:nth-child(odd)
  > .trapezoid-card[data-c-d36piq2n] {
  clip-path: url(#trapezoid-v);
}
.trapezoid-shadow[data-c-d36piq2n]:nth-child(2n)
  > .trapezoid-card[data-c-d36piq2n] {
  clip-path: url(#trapezoid-a);
}
.trapezoid-card[data-c-d36piq2n] {
  --trapezoid-bg: var(--color-background);
  --trapezoid-radius: 0.75rem;
  --trapezoid-max-width: 303px;
  --trapezoid-value-color: var(--color-foreground);
  --trapezoid-label-color: var(--color-foreground);
  position: relative;
  background-color: var(--trapezoid-bg);
  border-radius: var(--trapezoid-radius);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  max-inline-size: var(--trapezoid-max-width);
  margin-inline: auto;
  --stat-value-size: clamp(2.25rem, 1.25rem + 3.5vw, 4.375rem);
  --stat-value-tracking: -0.03em;
  --stat-gap: clamp(1.5rem, 4vw, 5rem);
  --stat-label-size: clamp(0.75rem, 0.5rem + 1.25vw, 1.25rem);
  --stat-label-transform: none;
  --stat-label-weight: 600;
  --stat-label-tracking: 0;
  --color-foreground: var(--trapezoid-value-color);
  --color-muted-foreground: var(--trapezoid-label-color);
}
.trapezoid-stat-item[data-c-d36piq2n] {
  align-items: center;
}
.trapezoid-card--metallic[data-c-d36piq2n]:before {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid var(--white-35);
  mask-image:
    linear-gradient(to right, transparent 50%, white 50%),
    linear-gradient(to bottom, white 50%, transparent 50%);
  mask-size:
    100% 1px,
    1px 100%;
  mask-position: top, right;
  mask-repeat: no-repeat;
  mask-composite: add;
  -webkit-mask-image:
    linear-gradient(to right, transparent 50%, white 50%),
    linear-gradient(to bottom, white 50%, transparent 50%);
  -webkit-mask-size:
    100% 1px,
    1px 100%;
  -webkit-mask-position: top, right;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-composite: source-over;
  pointer-events: none;
  z-index: 2;
}
.trapezoid-card--metallic[data-c-d36piq2n]:after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid var(--white-35);
  mask-image:
    linear-gradient(to left, transparent 50%, white 50%),
    linear-gradient(to top, white 50%, transparent 50%);
  mask-size:
    100% 1px,
    1px 100%;
  mask-position: bottom, left;
  mask-repeat: no-repeat;
  mask-composite: add;
  -webkit-mask-image:
    linear-gradient(to left, transparent 50%, white 50%),
    linear-gradient(to top, white 50%, transparent 50%);
  -webkit-mask-size:
    100% 1px,
    1px 100%;
  -webkit-mask-position: bottom, left;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-composite: source-over;
  pointer-events: none;
  z-index: 2;
}

/* ---- inline (portfolio/index.html) ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.section-intro[data-c-w2wcho3q] {
  margin-block-end: var(--si-margin-block-end, 3rem);
}
.section-intro--center[data-c-w2wcho3q] {
  text-align: center;
}
.section-intro--start[data-c-w2wcho3q] {
  text-align: start;
}
.section-intro-heading[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-heading-size, var(--font-size-display));
  font-weight: var(--si-heading-weight, 700);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
}
.section-intro-heading[data-c-w2wcho3q] strong {
  font-weight: 700;
}
.section-intro-body[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-body-size, var(--font-size-lead));
  font-weight: var(--si-body-weight, 500);
  line-height: var(--si-body-line-height, 1.65);
  max-inline-size: 50rem;
  margin-block: 0;
}
.section-intro--center[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  margin-inline: auto;
}
.section-intro-action[data-c-w2wcho3q] {
  margin-block-start: 1.5rem;
}
.section-intro--light[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-surface-dark);
}
.section-intro--light[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-foreground));
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-on-dark);
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-on-dark));
}
.section-tag[data-c-ibh72olp] {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin-block-end: 1rem;
}
.tag-line[data-c-ibh72olp] {
  display: block;
  inline-size: 24px;
  block-size: 2px;
  background-color: var(--color-primary);
}
.tag-text[data-c-ibh72olp] {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}
.section-tag--primary[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-primary);
}
.section-tag--muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-muted-foreground);
}
.section-tag--on-dark-muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-on-dark-muted);
}
.section[data-c-pdbomyic] {
  position: relative;
  padding-block: 5rem;
}

/* ---- inline (portfolio/index.html) ---- */
.section-container[data-c-yfwknzfq] {
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .section-container[data-c-yfwknzfq] {
    padding-inline: 7rem;
  }
}
.lets-build {
  position: relative;
  background-image: none !important;
}
.lets-build:before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: var(--cta-bg-image);
  background-size: cover;
  background-position: center;
  filter: grayscale(1) brightness(0.4) blur(1.5px);
  z-index: 0;
}
.lets-build > * {
  position: relative;
  z-index: 1;
}
.lets-build .text-block-heading {
  font-size: 48px !important;
}
.lets-build .text-block--dark .text-block-body p {
  color: var(--color-on-dark) !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
}
@media (min-width: 768px) {
  .contact-section .split-layout-start {
    padding-inline-end: 5.5rem;
  }
}
.text-block-heading[data-c-wz6xpbld] {
  font-family: var(--font-display);
  font-size: var(--tb-heading-size, var(--font-size-display));
  font-weight: var(--tb-heading-weight, 700);
  line-height: var(--tb-heading-line-height, 1.2);
  letter-spacing: -0.02em;
  margin: 0 0 var(--tb-spacing, 1.5rem);
}
.text-block-heading[data-c-wz6xpbld] strong {
  font-weight: 700;
}
.text-block-body[data-c-wz6xpbld] {
  max-inline-size: var(--tb-body-max-width);
}
.text-block-body[data-c-wz6xpbld] p {
  font-size: var(--tb-body-size, var(--font-size-body));
  font-weight: var(--tb-body-weight, 500);
  line-height: var(--tb-body-line-height, 1.65);
  margin: 0 0 1rem;
}
.text-block-body[data-c-wz6xpbld] p:last-child {
  margin-block-end: 0;
}
.text-block--light[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-surface-dark);
}
.text-block--light[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-muted-foreground);
}
.text-block--dark[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-on-dark);
}
.text-block--dark[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-on-dark-muted);
}
.cta-section[data-c-ihx4w7gh] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: 5rem;
  min-block-size: var(--cta-min-height);
  display: flex;
  align-items: center;
}
.cta-content[data-c-ihx4w7gh] {
  max-inline-size: var(--cta-content-max-width);
}
.cta-section--center[data-c-ihx4w7gh] .cta-content[data-c-ihx4w7gh] {
  text-align: center;
  margin-inline: auto;
}
.cta-actions[data-c-ihx4w7gh] {
  margin-block-start: 2.5rem;
}
.brand-letter[data-c-uqgx6sio] {
  inline-size: auto;
  block-size: auto;
}
.decorative-overlay[data-c-wrw7cu3v] {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.decorative-overlay--visible[data-c-wrw7cu3v] {
  overflow: visible;
}
.letters-wrap[data-c-bsioup76] {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 54%;
  container-type: inline-size;
}
.letter[data-c-bsioup76] {
  position: absolute;
}
.letter[data-c-bsioup76] svg {
  display: block;
  inline-size: auto;
}
.letters-wrap--default[data-c-bsioup76] {
  block-size: 100%;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: -4.03cqi;
  inset-block-start: 2.85cqi;
  rotate: 1deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 45.14cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 27.99cqi;
  inset-block-start: 15.49cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 57.01cqi;
  inset-block-start: 21.6cqi;
  rotate: 20deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 80.97cqi;
  inset-block-start: 8.26cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 41.32cqi;
}
.letters-wrap--compact[data-c-bsioup76] {
  inset-block-start: 0;
  inset-block-end: 0;
  block-size: 100%;
  color: var(--color-on-dark);
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: 16.9cqi;
  inset-block-start: 19.21cqi;
  rotate: -2deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 43.4cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 45.14cqi;
  inset-block-start: 31.13cqi;
  rotate: -8deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 68.52cqi;
  inset-block-start: 32.64cqi;
  rotate: 12deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 85.99cqi;
  inset-block-start: 18.29cqi;
  rotate: -10deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 35.3cqi;
}
.btn-link[data-c-rcfgfa7e] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  border-radius: 28px;
  transition:
    background-color 0.15s,
    border-color 0.15s,
    box-shadow 0.15s;
}
.btn-link-icon[data-c-rcfgfa7e] {
  flex-shrink: 0;
}
.btn-link--primary[data-c-rcfgfa7e] {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: 2px solid var(--color-primary);
}
.btn-link--primary[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}
.btn-link--outline[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}
.btn-link--outline[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.btn-link--ghost[data-c-rcfgfa7e] {
  padding-inline: 1.25rem;
  background-color: var(--color-border-on-dark);
  color: var(--color-on-dark-muted);
  font-size: var(--font-size-body-sm);
  border: 1px solid var(--white-12);
}
.btn-link--ghost[data-c-rcfgfa7e]:hover {
  background-color: var(--white-14);
  color: var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-on-dark);
  border: 2px solid var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e]:hover {
  background-color: var(--color-on-dark);
  color: var(--color-surface-dark);
}

/* ---- inline (portfolio/index.html) ---- */
.responsive-grid[data-c-r5wcfgzt] {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--grid-gap, 1.5rem);
}
.responsive-grid--cols-2[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.responsive-grid--cols-2[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.responsive-grid--cols-3[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.responsive-grid--cols-3[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.responsive-grid--cols-4[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(4, 1fr);
  }
}
.responsive-grid--cols-4[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(4, 1fr);
  }
}
.dark-page-hero[data-c-bv6iqeog] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: var(--hero-padding-block);
  min-block-size: 100dvh;
  overflow: hidden;
}
@media (min-width: 768px) {
  .dark-page-hero[data-c-bv6iqeog] {
    min-block-size: var(--hero-min-block-size);
  }
}
.dark-page-hero--start[data-c-bv6iqeog] {
  display: block;
}
.dark-page-hero--center[data-c-bv6iqeog] {
  display: flex;
  align-items: center;
}
.inline-input__wrapper {
  display: flex;
  align-items: center;
  gap: 0;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  overflow: hidden;
}
.inline-input__wrapper-variant {
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
}
.inline-input__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.inline-input__input {
  flex: 1;
  min-width: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.inline-input__input::placeholder {
  color: var(--color-on-dark-muted);
}
.inline-input__input:focus-visible {
  outline: none;
  box-shadow: none;
}
.inline-input__button {
  block-size: 48px;
  padding-inline: 2rem;
  border: none;
  border-radius: var(--radius-full);
  font-weight: 600;
  font-size: var(--font-size-body-lg);
  cursor: pointer;
  white-space: nowrap;
  margin: 0.25rem;
  transition: opacity 0.15s;
}
.inline-input__button-variant {
  background: var(--color-primary);
  color: var(--color-on-dark);
}
.inline-input__button-disabled {
  opacity: 0.7;
}
.newsletter__name-field {
  display: flex;
  align-items: center;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
  margin-block-end: 1.25rem;
  overflow: hidden;
}
.newsletter__name-input {
  flex: 1;
  min-inline-size: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.newsletter__name-input::placeholder {
  color: var(--color-on-dark-muted);
}
.newsletter__name-input:focus-visible {
  outline: none;
  box-shadow: none;
}
.newsletter__sr-only {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.newsletter__consent-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-block-start: 0.75rem;
  font-size: var(--font-size-body-sm);
  line-height: 1.4;
  cursor: pointer;
}
.newsletter__consent-label-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-label-cta {
  color: var(--color-on-dark-muted);
}
.newsletter__checkbox {
  flex-shrink: 0;
  inline-size: 1.375rem;
  block-size: 1.375rem;
  appearance: none;
  border: 1.5px solid var(--color-on-dark);
  border-radius: 0.3125rem;
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.newsletter__checkbox:after {
  content: "";
  position: absolute;
  display: none;
  inset-inline-start: 50%;
  inset-block-start: 45%;
  inline-size: 5px;
  block-size: 10px;
  border: solid var(--color-on-dark);
  border-width: 0 1.5px 1.5px 0;
  transform: translate(-50%, -55%) rotate(45deg);
}
.newsletter__checkbox:checked:after {
  display: block;
}
.newsletter__checkbox:focus-visible {
  outline: 2px solid var(--color-on-dark);
  outline-offset: 2px;
}
.newsletter__consent-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.newsletter__consent-error {
  font-size: var(--font-size-body-sm);
  margin-block-start: 0.5rem;
  text-align: center;
}
.newsletter__consent-error-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-error-cta {
  color: var(--color-primary);
}
.newsletter__field-error {
  margin-block-end: 0.75rem;
}
.newsletter__captcha-wrapper {
  margin-block-start: 0.75rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: center;
}
.newsletter-bg[data-c-gqhmwrgb] {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.newsletter-bg-img[data-c-gqhmwrgb] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1);
}
.newsletter-letters-scaler[data-c-gqhmwrgb] {
  display: none;
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 40%;
  inset-inline-end: 0;
  block-size: 0;
  z-index: 1;
  pointer-events: none;
  color: var(--color-on-dark);
  container-type: inline-size;
}
@media (min-width: 768px) {
  .newsletter-letters-scaler[data-c-gqhmwrgb] {
    display: block;
  }
}
.newsletter-letters[data-c-gqhmwrgb] {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 864 / 427;
  overflow: hidden;
}
.newsletter-cta-content[data-c-gqhmwrgb] {
  position: relative;
  z-index: 2;
  max-inline-size: 32rem;
}
.newsletter-cta-form[data-c-gqhmwrgb] {
  margin-block-start: 2.5rem;
  max-inline-size: 30rem;
}
.newsletter-cta-content[data-c-gqhmwrgb] .text-block--dark .text-block-body p {
  color: var(--color-on-dark);
  font-weight: 300;
}
.stat-item[data-c-d3j7k4v7] {
  display: flex;
  flex-direction: column;
  gap: var(--stat-gap, 0.25rem);
}
.stat-value[data-c-d3j7k4v7] {
  font-family: var(--font-display);
  font-size: var(--stat-value-size, var(--font-size-h1));
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: var(--stat-value-tracking, 0);
}
.stat-label[data-c-d3j7k4v7] {
  font-size: var(--stat-label-size, var(--font-size-body-sm));
  font-weight: var(--stat-label-weight, 500);
  text-transform: var(--stat-label-transform, uppercase);
  letter-spacing: var(--stat-label-tracking, 0.06em);
}
.stat-item--dark[data-c-d3j7k4v7] .stat-value[data-c-d3j7k4v7] {
  color: var(--color-on-dark);
}
.stat-item--dark[data-c-d3j7k4v7] .stat-label[data-c-d3j7k4v7] {
  color: var(--color-on-dark-muted);
}
.stat-item--light[data-c-d3j7k4v7] .stat-value[data-c-d3j7k4v7] {
  color: var(--color-foreground);
}
.stat-item--light[data-c-d3j7k4v7] .stat-label[data-c-d3j7k4v7] {
  color: var(--color-muted-foreground);
}
.trapezoid-shadow[data-c-d36piq2n] {
  --trapezoid-shadow: drop-shadow(var(--shadow-card));
  filter: var(--trapezoid-shadow);
}
.trapezoid-shadow[data-c-d36piq2n]:nth-child(odd)
  > .trapezoid-card[data-c-d36piq2n] {
  clip-path: url(#trapezoid-v);
}
.trapezoid-shadow[data-c-d36piq2n]:nth-child(2n)
  > .trapezoid-card[data-c-d36piq2n] {
  clip-path: url(#trapezoid-a);
}
.trapezoid-card[data-c-d36piq2n] {
  --trapezoid-bg: var(--color-background);
  --trapezoid-radius: 0.75rem;
  --trapezoid-max-width: 303px;
  --trapezoid-value-color: var(--color-foreground);
  --trapezoid-label-color: var(--color-foreground);
  position: relative;
  background-color: var(--trapezoid-bg);
  border-radius: var(--trapezoid-radius);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  max-inline-size: var(--trapezoid-max-width);
  margin-inline: auto;
  --stat-value-size: clamp(2.25rem, 1.25rem + 3.5vw, 4.375rem);
  --stat-value-tracking: -0.03em;
  --stat-gap: clamp(1.5rem, 4vw, 5rem);
  --stat-label-size: clamp(0.75rem, 0.5rem + 1.25vw, 1.25rem);
  --stat-label-transform: none;
  --stat-label-weight: 600;
  --stat-label-tracking: 0;
  --color-foreground: var(--trapezoid-value-color);
  --color-muted-foreground: var(--trapezoid-label-color);
}
.trapezoid-stat-item[data-c-d36piq2n] {
  align-items: center;
}
.trapezoid-card--metallic[data-c-d36piq2n]:before {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid var(--white-35);
  mask-image:
    linear-gradient(to right, transparent 50%, white 50%),
    linear-gradient(to bottom, white 50%, transparent 50%);
  mask-size:
    100% 1px,
    1px 100%;
  mask-position: top, right;
  mask-repeat: no-repeat;
  mask-composite: add;
  -webkit-mask-image:
    linear-gradient(to right, transparent 50%, white 50%),
    linear-gradient(to bottom, white 50%, transparent 50%);
  -webkit-mask-size:
    100% 1px,
    1px 100%;
  -webkit-mask-position: top, right;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-composite: source-over;
  pointer-events: none;
  z-index: 2;
}
.trapezoid-card--metallic[data-c-d36piq2n]:after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid var(--white-35);
  mask-image:
    linear-gradient(to left, transparent 50%, white 50%),
    linear-gradient(to top, white 50%, transparent 50%);
  mask-size:
    100% 1px,
    1px 100%;
  mask-position: bottom, left;
  mask-repeat: no-repeat;
  mask-composite: add;
  -webkit-mask-image:
    linear-gradient(to left, transparent 50%, white 50%),
    linear-gradient(to top, white 50%, transparent 50%);
  -webkit-mask-size:
    100% 1px,
    1px 100%;
  -webkit-mask-position: bottom, left;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-composite: source-over;
  pointer-events: none;
  z-index: 2;
}
.testimonials__root {
  position: relative;
}
.testimonials__nav-group {
  display: flex;
  gap: 1rem;
  justify-content: center;
  margin-block-end: 1.5rem;
}
@media (min-width: 768px) {
  .testimonials__nav-group {
    position: absolute;
    inset-block-start: -3rem;
    inset-inline-end: 1rem;
    margin-block-end: 0;
  }
}
.testimonials__nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 2rem;
  block-size: 2rem;
  border-radius: 50%;
  border: 2px solid var(--color-primary);
  background-color: transparent;
  color: var(--color-primary);
  cursor: pointer;
  flex-shrink: 0;
  transition:
    background-color 0.15s,
    color 0.15s;
}
.testimonials__nav-btn:hover {
  background-color: var(--color-primary);
  color: var(--color-background);
}
.testimonials__viewport {
  overflow: hidden;
}
@media (min-width: 768px) {
  .testimonials__viewport {
    margin-inline-end: calc(-50vw + 50%);
  }
}
.testimonials__track {
  display: flex;
  gap: 1.5rem;
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.testimonials__card {
  flex-shrink: 0;
  inline-size: calc(100vw - 3rem);
  border-radius: 0.75rem;
  background-color: var(--color-background);
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-sizing: border-box;
  box-shadow: var(--shadow-hover), var(--shadow-soft);
}
@media (min-width: 768px) {
  .testimonials__card {
    inline-size: 384px;
    block-size: 249px;
    padding: 2rem;
  }
}
.testimonials__card-body {
  text-align: start;
}
.testimonials__quote-icon {
  color: var(--color-primary);
  display: block;
  font-family: var(--font-display);
  font-size: 48px;
  font-weight: 500;
  line-height: 1;
  margin-block-end: 0.25rem;
}
.testimonials__quote-text {
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--color-foreground);
  margin: 0;
  text-align: start;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.testimonials__card-footer {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.testimonials__author-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-inline-size: 0;
}
.testimonials__author-name {
  font-family: var(--font-display);
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--color-foreground);
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.testimonials__author-role {
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--color-muted-foreground);
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.testimonials__avatar {
  flex-shrink: 0;
  inline-size: 40px;
  block-size: 40px;
  border-radius: 50%;
  overflow: hidden;
  background-color: var(--color-neutral-300);
}
.testimonials__avatar-image {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.testimonials__avatar-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  block-size: 100%;
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-foreground);
}
.testimonials-section[data-c-4xl3epfc] {
  block-size: 652px;
  overflow: hidden;
}

/* ---- inline (portfolio/index.html) ---- */
.tag[data-c-iyfh3pws] {
  display: inline-block;
  font-size: var(--font-size-caption);
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  border-radius: var(--radius-full);
  padding-inline: 0.625rem;
  padding-block: 0.25rem;
  white-space: nowrap;
  border: 1px solid transparent;
}
.tag--outline[data-c-iyfh3pws] {
  background-color: transparent;
}
.tag--filled[data-c-iyfh3pws],
.tag--ghost[data-c-iyfh3pws] {
  border-color: transparent;
}
.tag--outline[data-c-iyfh3pws].tag--primary {
  color: var(--color-primary);
  border-color: var(--color-primary);
}
.tag--filled[data-c-iyfh3pws].tag--primary {
  color: var(--color-on-dark);
  background-color: var(--color-primary);
}
.tag--ghost[data-c-iyfh3pws].tag--primary {
  color: var(--color-primary);
  background-color: var(--color-primary-tint);
}
.tag--outline[data-c-iyfh3pws].tag--on-dark {
  color: var(--color-on-dark-muted);
  border-color: var(--white-15);
}
.tag--filled[data-c-iyfh3pws].tag--on-dark {
  color: var(--color-on-dark);
  background-color: var(--white-12);
}
.tag--ghost[data-c-iyfh3pws].tag--on-dark {
  color: var(--color-on-dark-muted);
  background-color: var(--white-6);
}
.tag--outline[data-c-iyfh3pws].tag--muted {
  color: var(--color-on-dark-muted);
  border-color: var(--color-border-on-dark);
}
.tag--filled[data-c-iyfh3pws].tag--muted,
.tag--ghost[data-c-iyfh3pws].tag--muted {
  color: var(--color-muted-foreground);
  background-color: var(--color-surface-muted);
}

/* ---- inline (services/index.html) ---- */
.cookie-banner__banner {
  position: fixed;
  inset-block-end: 1.5rem;
  inset-inline-start: 50%;
  transform: translate(-50%);
  z-index: 9999;
  width: min(640px, calc(100vw - 2rem));
  background-color: var(--color-surface-charcoal);
  color: var(--color-on-dark);
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 8px 32px #0000004d;
}
.cookie-banner__message {
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  color: var(--color-on-dark-muted);
  text-align: center;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__accept-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: none;
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__reject-button {
  flex: 1 1 8rem;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  color: var(--color-on-dark);
  font-size: 0.875rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
.cookie-banner__categories {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-block-end: 1.25rem;
}
.cookie-banner__category {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.cookie-banner__category-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.cookie-banner__category-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-on-dark);
}
.cookie-banner__category-description {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-on-dark-muted);
}
.cookie-banner__toggle {
  flex-shrink: 0;
  width: 2.5rem;
  height: 1.375rem;
  appearance: none;
  border-radius: 9999px;
  border: 1.5px solid var(--color-on-dark-subtle);
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.cookie-banner__toggle:after {
  content: "";
  position: absolute;
  inset-block-start: 2px;
  inset-inline-start: 2px;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  border-radius: 50%;
  background-color: var(--color-on-dark-subtle);
  transition:
    transform 0.15s,
    background-color 0.15s;
}
.cookie-banner__toggle:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.cookie-banner__toggle:checked:after {
  transform: translate(1.125rem);
  background-color: var(--color-on-dark);
}
.cookie-banner__toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cookie-banner__preferences-button {
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-banner__manage-link {
  display: block;
  margin-block-start: 0.875rem;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-on-dark-muted);
  font-size: 0.8125rem;
  font-family: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.overlay-card[data-c-3pmxwcpu] {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-xl);
}
.overlay-card-content[data-c-3pmxwcpu] {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 1.5rem;
  min-block-size: 100%;
}
.overlay-card-content[data-c-3pmxwcpu]:before {
  content: "";
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 55%;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  mask-image: linear-gradient(to top, black 40%, transparent 100%);
  -webkit-mask-image: linear-gradient(to top, black 40%, transparent 100%);
  z-index: -1;
}
.overlay-card--lift[data-c-3pmxwcpu] {
  transition:
    transform 0.2s,
    box-shadow 0.2s;
}
.overlay-card--lift[data-c-3pmxwcpu]:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-overlay);
}
.card-image-bg[data-c-rbc2mgnk] {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}
.itb-grid[data-c-go3gtbvf] {
  --itb-image-radius: calc(var(--itb-height) / 2);
  display: grid;
  grid-template-columns: 1fr;
  max-inline-size: 1920px;
  margin-inline: auto;
  block-size: auto;
}
@media (min-width: 768px) {
  .itb-grid[data-c-go3gtbvf] {
    grid-template-columns: 1fr 1fr;
    block-size: var(--itb-height);
  }
}
.itb-image-wrap[data-c-go3gtbvf] {
  overflow: hidden;
  block-size: var(--itb-height);
}
@media (min-width: 768px) {
  .itb-image-wrap[data-c-go3gtbvf] {
    border-radius: 0 var(--itb-image-radius) var(--itb-image-radius) 0;
  }
}
.itb-img[data-c-go3gtbvf] {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.itb-grid--grayscale[data-c-go3gtbvf] .itb-img[data-c-go3gtbvf] {
  filter: grayscale(1);
}
.itb-content[data-c-go3gtbvf] {
  display: flex;
  align-items: center;
  padding: 3rem 2rem;
}
@media (min-width: 768px) {
  .itb-content[data-c-go3gtbvf] {
    padding: var(--itb-content-padding, 0 4rem 0 5rem);
  }
}
.arrow-link[data-c-bulfszpc] {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: var(--font-size-body-lg);
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: color 0.15s;
}
.arrow-link[data-c-bulfszpc] svg {
  flex-shrink: 0;
}
.arrow-link--light[data-c-bulfszpc] {
  color: var(--color-surface-dark);
}
.arrow-link--light[data-c-bulfszpc]:hover {
  color: var(--color-primary);
}
.arrow-link--dark[data-c-bulfszpc] {
  color: var(--color-primary);
  transition: opacity 0.15s;
}
.arrow-link--dark[data-c-bulfszpc]:hover {
  opacity: 0.8;
}
.section-tag[data-c-ibh72olp] {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin-block-end: 1rem;
}
.tag-line[data-c-ibh72olp] {
  display: block;
  inline-size: 24px;
  block-size: 2px;
  background-color: var(--color-primary);
}
.tag-text[data-c-ibh72olp] {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}
.section-tag--primary[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-primary);
}
.section-tag--muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-muted-foreground);
}
.section-tag--on-dark-muted[data-c-ibh72olp] .tag-text[data-c-ibh72olp] {
  color: var(--color-on-dark-muted);
}
.card-title[data-c-ngfmhtlq] {
  font-family: var(--font-display);
  font-size: var(--ct-size, var(--font-size-body-lg));
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
}
.card-title--light[data-c-ngfmhtlq] {
  color: var(--color-foreground);
}
.card-title--dark[data-c-ngfmhtlq] {
  color: var(--color-on-dark);
}

/* ---- inline (services/index.html) ---- */
@media (min-width: 768px) {
  .contact-section .split-layout-start {
    padding-inline-end: 5.5rem;
  }
}
.section-container[data-c-yfwknzfq] {
  inline-size: 100%;
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
@media (min-width: 640px) {
  .section-container[data-c-yfwknzfq] {
    padding-inline: 7rem;
  }
}
.lets-build {
  position: relative;
  background-image: none !important;
}
.lets-build:before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: var(--cta-bg-image);
  background-size: cover;
  background-position: center;
  filter: grayscale(1) brightness(0.4) blur(1.5px);
  z-index: 0;
}
.lets-build > * {
  position: relative;
  z-index: 1;
}
.lets-build .text-block-heading {
  font-size: 48px !important;
}
.lets-build .text-block--dark .text-block-body p {
  color: var(--color-on-dark) !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
}
.text-block-heading[data-c-wz6xpbld] {
  font-family: var(--font-display);
  font-size: var(--tb-heading-size, var(--font-size-display));
  font-weight: var(--tb-heading-weight, 700);
  line-height: var(--tb-heading-line-height, 1.2);
  letter-spacing: -0.02em;
  margin: 0 0 var(--tb-spacing, 1.5rem);
}
.text-block-heading[data-c-wz6xpbld] strong {
  font-weight: 700;
}
.text-block-body[data-c-wz6xpbld] {
  max-inline-size: var(--tb-body-max-width);
}
.text-block-body[data-c-wz6xpbld] p {
  font-size: var(--tb-body-size, var(--font-size-body));
  font-weight: var(--tb-body-weight, 500);
  line-height: var(--tb-body-line-height, 1.65);
  margin: 0 0 1rem;
}
.text-block-body[data-c-wz6xpbld] p:last-child {
  margin-block-end: 0;
}
.text-block--light[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-surface-dark);
}
.text-block--light[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-muted-foreground);
}
.text-block--dark[data-c-wz6xpbld] .text-block-heading[data-c-wz6xpbld] {
  color: var(--color-on-dark);
}
.text-block--dark[data-c-wz6xpbld] .text-block-body[data-c-wz6xpbld] p {
  color: var(--color-on-dark-muted);
}
.cta-section[data-c-ihx4w7gh] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: 5rem;
  min-block-size: var(--cta-min-height);
  display: flex;
  align-items: center;
}
.cta-content[data-c-ihx4w7gh] {
  max-inline-size: var(--cta-content-max-width);
}
.cta-section--center[data-c-ihx4w7gh] .cta-content[data-c-ihx4w7gh] {
  text-align: center;
  margin-inline: auto;
}
.cta-actions[data-c-ihx4w7gh] {
  margin-block-start: 2.5rem;
}
.brand-letter[data-c-uqgx6sio] {
  inline-size: auto;
  block-size: auto;
}
.decorative-overlay[data-c-wrw7cu3v] {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.decorative-overlay--visible[data-c-wrw7cu3v] {
  overflow: visible;
}
.letters-wrap[data-c-bsioup76] {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 54%;
  container-type: inline-size;
}
.letter[data-c-bsioup76] {
  position: absolute;
}
.letter[data-c-bsioup76] svg {
  display: block;
  inline-size: auto;
}
.letters-wrap--default[data-c-bsioup76] {
  block-size: 100%;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: -4.03cqi;
  inset-block-start: 2.85cqi;
  rotate: 1deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 45.14cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 27.99cqi;
  inset-block-start: 15.49cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 57.01cqi;
  inset-block-start: 21.6cqi;
  rotate: 20deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 32.29cqi;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 80.97cqi;
  inset-block-start: 8.26cqi;
  rotate: -5deg;
}
.letters-wrap--default[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 41.32cqi;
}
.letters-wrap--compact[data-c-bsioup76] {
  inset-block-start: 0;
  inset-block-end: 0;
  block-size: 100%;
  color: var(--color-on-dark);
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] {
  inset-inline-start: 16.9cqi;
  inset-block-start: 19.21cqi;
  rotate: -2deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-b[data-c-bsioup76] svg {
  block-size: 43.4cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] {
  inset-inline-start: 45.14cqi;
  inset-block-start: 31.13cqi;
  rotate: -8deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o1[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] {
  inset-inline-start: 68.52cqi;
  inset-block-start: 32.64cqi;
  rotate: 12deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-o2[data-c-bsioup76] svg {
  block-size: 27.2cqi;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] {
  inset-inline-start: 85.99cqi;
  inset-block-start: 18.29cqi;
  rotate: -10deg;
}
.letters-wrap--compact[data-c-bsioup76] .letter-l[data-c-bsioup76] svg {
  block-size: 35.3cqi;
}
.btn-link[data-c-rcfgfa7e] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  block-size: 48px;
  padding-inline: 2rem;
  font-size: var(--font-size-body);
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  border-radius: 28px;
  transition:
    background-color 0.15s,
    border-color 0.15s,
    box-shadow 0.15s;
}
.btn-link-icon[data-c-rcfgfa7e] {
  flex-shrink: 0;
}
.btn-link--primary[data-c-rcfgfa7e] {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
  border: 2px solid var(--color-primary);
}
.btn-link--primary[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}
.btn-link--outline[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}
.btn-link--outline[data-c-rcfgfa7e]:hover {
  background-color: var(--color-primary);
  color: var(--color-on-dark);
}
.btn-link--ghost[data-c-rcfgfa7e] {
  padding-inline: 1.25rem;
  background-color: var(--color-border-on-dark);
  color: var(--color-on-dark-muted);
  font-size: var(--font-size-body-sm);
  border: 1px solid var(--white-12);
}
.btn-link--ghost[data-c-rcfgfa7e]:hover {
  background-color: var(--white-14);
  color: var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e] {
  background-color: transparent;
  color: var(--color-on-dark);
  border: 2px solid var(--color-on-dark);
}
.btn-link--on-dark[data-c-rcfgfa7e]:hover {
  background-color: var(--color-on-dark);
  color: var(--color-surface-dark);
}
.responsive-grid[data-c-r5wcfgzt] {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--grid-gap, 1.5rem);
}
.responsive-grid--cols-2[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.responsive-grid--cols-2[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, 1fr);
  }
}
.responsive-grid--cols-3[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.responsive-grid--cols-3[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(3, 1fr);
  }
}
.responsive-grid--cols-4[data-c-r5wcfgzt].responsive-grid--collapse-sm {
  @media (min-width: 640px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(4, 1fr);
  }
}
.responsive-grid--cols-4[data-c-r5wcfgzt].responsive-grid--collapse-md {
  @media (min-width: 768px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @media (min-width: 1024px) {
    grid-template-columns: repeat(4, 1fr);
  }
}
.section[data-c-pdbomyic] {
  position: relative;
  padding-block: 5rem;
}
.dark-page-hero[data-c-bv6iqeog] {
  position: relative;
  background-color: var(--color-surface-dark);
  background-size: cover;
  background-position: center;
  padding-block: var(--hero-padding-block);
  min-block-size: 100dvh;
  overflow: hidden;
}
@media (min-width: 768px) {
  .dark-page-hero[data-c-bv6iqeog] {
    min-block-size: var(--hero-min-block-size);
  }
}
.dark-page-hero--start[data-c-bv6iqeog] {
  display: block;
}
.dark-page-hero--center[data-c-bv6iqeog] {
  display: flex;
  align-items: center;
}
.inline-input__wrapper {
  display: flex;
  align-items: center;
  gap: 0;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  overflow: hidden;
}
.inline-input__wrapper-variant {
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
}
.inline-input__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.inline-input__input {
  flex: 1;
  min-width: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.inline-input__input::placeholder {
  color: var(--color-on-dark-muted);
}
.inline-input__input:focus-visible {
  outline: none;
  box-shadow: none;
}
.inline-input__button {
  block-size: 48px;
  padding-inline: 2rem;
  border: none;
  border-radius: var(--radius-full);
  font-weight: 600;
  font-size: var(--font-size-body-lg);
  cursor: pointer;
  white-space: nowrap;
  margin: 0.25rem;
  transition: opacity 0.15s;
}
.inline-input__button-variant {
  background: var(--color-primary);
  color: var(--color-on-dark);
}
.inline-input__button-disabled {
  opacity: 0.7;
}
.newsletter__name-field {
  display: flex;
  align-items: center;
  inline-size: 100%;
  block-size: 3.5rem;
  border-radius: var(--radius-full);
  background: var(--white-60);
  border: 2px solid var(--white-65);
  backdrop-filter: blur(8px);
  margin-block-end: 1.25rem;
  overflow: hidden;
}
.newsletter__name-input {
  flex: 1;
  min-inline-size: 0;
  padding: 0 1.25rem;
  background: transparent;
  border: none;
  color: var(--color-on-dark);
  font-size: var(--font-size-body);
  font-weight: 500;
}
.newsletter__name-input::placeholder {
  color: var(--color-on-dark-muted);
}
.newsletter__name-input:focus-visible {
  outline: none;
  box-shadow: none;
}
.newsletter__sr-only {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.newsletter__consent-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-block-start: 0.75rem;
  font-size: var(--font-size-body-sm);
  line-height: 1.4;
  cursor: pointer;
}
.newsletter__consent-label-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-label-cta {
  color: var(--color-on-dark-muted);
}
.newsletter__checkbox {
  flex-shrink: 0;
  inline-size: 1.375rem;
  block-size: 1.375rem;
  appearance: none;
  border: 1.5px solid var(--color-on-dark);
  border-radius: 0.3125rem;
  background-color: transparent;
  cursor: pointer;
  position: relative;
  transition:
    background-color 0.15s,
    border-color 0.15s;
}
.newsletter__checkbox:after {
  content: "";
  position: absolute;
  display: none;
  inset-inline-start: 50%;
  inset-block-start: 45%;
  inline-size: 5px;
  block-size: 10px;
  border: solid var(--color-on-dark);
  border-width: 0 1.5px 1.5px 0;
  transform: translate(-50%, -55%) rotate(45deg);
}
.newsletter__checkbox:checked:after {
  display: block;
}
.newsletter__checkbox:focus-visible {
  outline: 2px solid var(--color-on-dark);
  outline-offset: 2px;
}
.newsletter__consent-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.newsletter__consent-error {
  font-size: var(--font-size-body-sm);
  margin-block-start: 0.5rem;
  text-align: center;
}
.newsletter__consent-error-bar {
  color: var(--color-on-dark);
}
.newsletter__consent-error-cta {
  color: var(--color-primary);
}
.newsletter__field-error {
  margin-block-end: 0.75rem;
}
.newsletter__captcha-wrapper {
  margin-block-start: 0.75rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: center;
}
.newsletter-bg[data-c-gqhmwrgb] {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.newsletter-bg-img[data-c-gqhmwrgb] {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  filter: grayscale(1);
}
.newsletter-letters-scaler[data-c-gqhmwrgb] {
  display: none;
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 40%;
  inset-inline-end: 0;
  block-size: 0;
  z-index: 1;
  pointer-events: none;
  color: var(--color-on-dark);
  container-type: inline-size;
}
@media (min-width: 768px) {
  .newsletter-letters-scaler[data-c-gqhmwrgb] {
    display: block;
  }
}
.newsletter-letters[data-c-gqhmwrgb] {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: 100cqi;
  aspect-ratio: 864 / 427;
  overflow: hidden;
}
.newsletter-cta-content[data-c-gqhmwrgb] {
  position: relative;
  z-index: 2;
  max-inline-size: 32rem;
}
.newsletter-cta-form[data-c-gqhmwrgb] {
  margin-block-start: 2.5rem;
  max-inline-size: 30rem;
}
.newsletter-cta-content[data-c-gqhmwrgb] .text-block--dark .text-block-body p {
  color: var(--color-on-dark);
  font-weight: 300;
}

/* ---- inline (services/index.html) ---- */
.section-intro[data-c-w2wcho3q] {
  margin-block-end: var(--si-margin-block-end, 3rem);
}
.section-intro--center[data-c-w2wcho3q] {
  text-align: center;
}
.section-intro--start[data-c-w2wcho3q] {
  text-align: start;
}
.section-intro-heading[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-heading-size, var(--font-size-display));
  font-weight: var(--si-heading-weight, 700);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
}
.section-intro-heading[data-c-w2wcho3q] strong {
  font-weight: 700;
}
.section-intro-body[data-c-w2wcho3q] {
  font-family: var(--font-display);
  font-size: var(--si-body-size, var(--font-size-lead));
  font-weight: var(--si-body-weight, 500);
  line-height: var(--si-body-line-height, 1.65);
  max-inline-size: 50rem;
  margin-block: 0;
}
.section-intro--center[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  margin-inline: auto;
}
.section-intro-action[data-c-w2wcho3q] {
  margin-block-start: 1.5rem;
}
.section-intro--light[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-surface-dark);
}
.section-intro--light[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-foreground));
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-heading[data-c-w2wcho3q] {
  color: var(--color-on-dark);
}
.section-intro--dark[data-c-w2wcho3q] .section-intro-body[data-c-w2wcho3q] {
  color: var(--si-body-color, var(--color-on-dark));
}
.rounded-image[data-c-trln74ua] {
  overflow: hidden;
}
.rounded-image-img[data-c-trln74ua] {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.power-ai[data-c-c7mmh3nv] {
  --power-ai-body-color: var(--color-surface-black);
  --color-muted-foreground: var(--color-surface-black);
  --color-surface-dark: var(--color-surface-black);
  --power-ai-shadow: none;
}
.power-ai[data-c-c7mmh3nv] .rounded-image-img {
  filter: grayscale(1);
}
.power-ai[data-c-c7mmh3nv] .text-block-heading {
  color: var(--power-ai-body-color);
  line-height: 1.125;
}
.power-ai[data-c-c7mmh3nv] .text-block-body p {
  color: var(--power-ai-body-color);
  font-weight: 500;
  margin-block-end: 0.75rem;
}
.power-ai[data-c-c7mmh3nv] .text-block-body p:last-child {
  margin-block-end: 0;
}
.action-row[data-c-3s3h5wbb] {
  display: flex;
  flex-wrap: wrap;
  gap: var(--action-row-gap, 1rem);
}
