/* GLOBAL theme — generated by scripts/build-theme-css.mjs; do not edit */
/* Sources: style.css + 14 page stylesheet(s) */
/* --- features/public-site/regions/global/styles/style.css --- */
/* Global theme — core tokens and region page shell (dark marketing layout) */

.ss-theme-global {
  --ss-global-text: #f4f4f5;
  --ss-global-muted: #a1a1aa;
  --ss-global-border: rgba(255, 255, 255, 0.12);
  color: var(--ss-global-text);
}

.ss-global-page {
  position: relative;
  z-index: 10;
}

.ss-global-page--home {
  display: flex;
  flex-direction: column;
}

.ss-global-home-extra,
.ss-global-home-extra section {
  width: 100%;
}

.ss-global-about-page,
.ss-global-contact-page {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.ss-global-page .ss-page-section + .ss-page-section {
  margin-top: 0;
}

.ss-global-page--contact .ss-contact-hero {
  padding-top: 0;
  padding-bottom: 0;
}

.ss-global-page--contact .ss-contact-hero__stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  text-align: center;
}

.ss-global-page--contact .ss-contact-grid {
  padding-block: 0;
}

.ss-global-page--contact .ss-contact-grid__columns {
  display: grid;
  gap: 2rem;
}

@media (min-width: 768px) {
  .ss-global-page--contact .ss-contact-grid__columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.ss-theme-global .ss-contact-page .ss-contact-hero__tagline {
  color: #ffffff;
}

.ss-theme-global .ss-contact-page .ss-contact-grid__heading {
  color: #fff;
}

.ss-theme-global .ss-contact-page .ss-contact-grid__body {
  color: rgb(161 161 170);
}

.ss-theme-global .ss-contact-page .ss-contact-grid__body a {
  color: rgb(228 228 231);
}

.ss-theme-global .ss-contact-page .ss-contact-grid__body a:hover {
  color: #fff;
}

/* ── Image + title + content + CTA (reusable zigzag rows) ───────────────── */
.ss-theme-global .ss-image-title-cta {
  display: flex;
  flex-direction: column;
  gap: clamp(2rem, 4.5vw, 3.5rem);
}

.ss-theme-global .ss-image-title-cta__card {
  border: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  padding: 0;
}

.ss-theme-global .ss-image-title-cta__grid {
  display: grid;
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: center;
}

@media (min-width: 768px) {
  /* Slight copy preference; image still fills most of its half. */
  .ss-theme-global .ss-image-title-cta__grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  }

  /* image_position=right → Content | Image */
  .ss-theme-global .ss-image-title-cta__card--image-right .ss-image-title-cta__copy {
    order: 1;
  }

  .ss-theme-global .ss-image-title-cta__card--image-right .ss-image-title-cta__media {
    order: 2;
  }

  /* image_position=left → Image | Content (swap column weights) */
  .ss-theme-global .ss-image-title-cta__card--image-left .ss-image-title-cta__grid {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  }
}

.ss-theme-global .ss-image-title-cta__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 0;
}

.ss-theme-global .ss-image-title-cta__title {
  margin: 0;
  color: #fff;
  font-size: clamp(1.75rem, 1.35rem + 1.4vw, 2.5rem);
  font-weight: 300;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

@media (max-width: 639px) {
  .ss-theme-global .ss-image-title-cta__title {
    font-weight: 400;
  }
}

.ss-theme-global .ss-image-title-cta__title--after-eyebrow {
  margin-top: 1.25rem;
}

.ss-theme-global .ss-image-title-cta__body {
  margin-top: 1.25rem;
  max-width: 36rem;
  font-size: clamp(0.9375rem, 0.9rem + 0.15vw, 1.0625rem);
  font-weight: 400;
  line-height: 1.7;
}

.ss-theme-global .ss-image-title-cta__body p + p {
  margin-top: 1rem;
}

.ss-theme-global .ss-image-title-cta__cta {
  margin-top: 1rem;
  align-self: flex-start;
  font-size: 1rem;
  line-height: 1.25;
  padding: 0.875rem 2.5rem;
}

@media (min-width: 768px) {
  .ss-theme-global .ss-image-title-cta__cta {
    font-size: 1.0625rem;
    padding: 1rem 3rem;
  }
}

.ss-theme-global .ss-image-title-cta__cta--static {
  cursor: default;
  pointer-events: none;
}

.ss-theme-global .ss-image-title-cta__media {
  position: relative;
  overflow: hidden;
  border-radius: 1.75rem;
  width: 100%;
  aspect-ratio: 5 / 4;
  background: rgba(255, 255, 255, 0.04);
}

.ss-theme-global .ss-image-title-cta__media--empty {
  aspect-ratio: auto;
  background: transparent;
}

.ss-theme-global .ss-image-title-cta__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

@media (min-width: 768px) {
  .ss-theme-global .ss-image-title-cta__media {
    width: 100%;
    max-width: none;
    aspect-ratio: 5 / 4;
  }

  .ss-theme-global .ss-image-title-cta__card--image-right .ss-image-title-cta__media {
    justify-self: stretch;
  }

  .ss-theme-global .ss-image-title-cta__card--image-left .ss-image-title-cta__media {
    justify-self: stretch;
  }
}

/* Mobile: image above copy for a consistent reading flow. */
@media (max-width: 767px) {
  .ss-theme-global .ss-image-title-cta__media {
    order: -1;
  }
}

/* ── How We Work / numbered steps (main About split-details layout) ─────── */
.ss-theme-global .ss-steps-section {
  --ss-steps-sticky-top: calc(var(--ss-section-padding-block, 2.75rem) + 0.75rem);
  width: 100%;
}

.ss-theme-global .ss-steps-section__grid {
  display: grid;
  gap: 2.5rem;
  align-items: start;
}

@media (min-width: 768px) {
  .ss-theme-global .ss-steps-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4rem;
    align-items: stretch;
  }

  .ss-theme-global .ss-steps-section__intro-col {
    min-height: 100%;
    align-self: stretch;
  }

  .ss-theme-global .ss-steps-section__intro {
    position: sticky;
    top: var(--ss-steps-sticky-top);
    z-index: 1;
  }
}

.ss-theme-global .ss-steps-section__intro {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
}

.ss-theme-global .ss-steps-section__title {
  margin: 0;
  color: #fff;
  font-size: clamp(1.75rem, 1.35rem + 1.4vw, 2.5rem);
  font-weight: 300;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

@media (max-width: 639px) {
  .ss-theme-global .ss-steps-section__title {
    font-weight: 400;
  }
}

.ss-theme-global .ss-steps-section__title--after-eyebrow {
  margin-top: 1.25rem;
}

.ss-theme-global .ss-steps-section__lead {
  margin: 1.25rem 0 0;
  max-width: 28rem;
  color: rgba(255, 255, 255, 0.75);
  font-size: clamp(0.9375rem, 0.9rem + 0.15vw, 1.0625rem);
  font-weight: 400;
  line-height: 1.65;
  white-space: pre-wrap;
}

.ss-theme-global .ss-steps-section__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 2.75rem;
}

.ss-theme-global .ss-steps-section__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.5rem 0.65rem;
  align-items: start;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.ss-theme-global .ss-steps-section__num {
  color: #fff;
  font-size: clamp(1.25rem, 1.1rem + 0.55vw, 1.625rem);
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -0.02em;
}

.ss-theme-global .ss-steps-section__item-copy {
  min-width: 0;
}

.ss-theme-global .ss-steps-section__item-title {
  margin: 0;
  color: #fff;
  font-size: clamp(1.25rem, 1.1rem + 0.55vw, 1.625rem);
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -0.02em;
}

.ss-theme-global .ss-steps-section__item-body {
  margin: 0.5rem 0 0;
  color: rgba(255, 255, 255, 0.75);
  font-size: clamp(0.9375rem, 0.9rem + 0.15vw, 1.03125rem);
  font-weight: 400;
  line-height: 1.65;
  white-space: pre-wrap;
}

/* Process timeline — Global glow tokens */
.ss-theme-global .ss-timeline {
  --ss-timeline-accent: #6623b9;
  --ss-timeline-accent-hot: #c81eb8;
  --ss-timeline-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ss-timeline-ease-charge: cubic-bezier(0.33, 0, 0.25, 1);
}

.ss-theme-global .ss-timeline__spine-base {
  background: rgba(255, 255, 255, 0.2);
}

.ss-theme-global .ss-timeline__spine-progress {
  background: linear-gradient(
    180deg,
    #6623b9 0%,
    color-mix(in srgb, var(--ss-blob-purple-glow) 80%, #6623b9) 48%,
    #c81eb8 100%
  );
  box-shadow:
    0 0 10px color-mix(in srgb, var(--ss-blob-purple-glow) 50%, transparent),
    0 0 24px color-mix(in srgb, var(--ss-blob-fuchsia-glow) 36%, transparent);
}

.ss-theme-global .ss-timeline__spine-glow {
  background: radial-gradient(
    circle at center,
    color-mix(in srgb, var(--ss-blob-fuchsia-glow) 75%, transparent) 0%,
    color-mix(in srgb, var(--ss-blob-purple-glow) 40%, transparent) 45%,
    transparent 72%
  );
  width: 18px;
  height: 18px;
}

.ss-theme-global .ss-timeline__dot {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.05);
}

.ss-theme-global .ss-timeline__step.is-active .ss-timeline__dot {
  opacity: 1;
  visibility: visible;
  background: linear-gradient(145deg, #6623b9 0%, #c81eb8 100%);
  box-shadow:
    0 0 12px color-mix(in srgb, var(--ss-blob-purple-glow) 55%, transparent),
    0 0 26px color-mix(in srgb, var(--ss-blob-fuchsia-glow) 42%, transparent);
}

.ss-theme-global .ss-timeline__title {
  font-weight: 300;
}

.ss-theme-global .ss-timeline__index {
  font-weight: 300;
}

.ss-theme-global .ss-timeline__step-title {
  font-weight: 300;
}

/* --- features/public-site/regions/global/styles/typography.css --- */
/* Global theme — marketing title gradient tokens and formatted text */

body.public-home,
.ss-theme-global {
  --ss-text-blue: #3b82f6;
  --ss-text-gradient-start: #5344ff;
  --ss-text-gradient-end: #ef00ac;
}

body.public-home .text-blue,
.ss-theme-global .text-blue {
  color: var(--ss-text-blue);
  font-weight: 600;
}

body.public-home .text-gradient,
.ss-theme-global .text-gradient {
  background: linear-gradient(
    90deg,
    var(--ss-text-gradient-start) 50%,
    var(--ss-text-gradient-end) 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

body.public-home h1 .text-gradient,
body.public-home h2 .text-gradient,
body.public-home h3 .text-gradient,
.ss-theme-global h1 .text-gradient,
.ss-theme-global h2 .text-gradient,
.ss-theme-global h3 .text-gradient {
  -webkit-text-fill-color: transparent;
  color: transparent;
}

body.public-home .ss-global-gradient-line,
.ss-theme-global .ss-global-gradient-line {
  display: block;
}

/* --- features/public-site/regions/global/styles/reveal.css --- */
/**
 * Global section entrance reveal — fade + translateY once in view.
 * Transform + opacity only (no blur). Scoped to `.ss-theme-global`.
 * Hidden only when `.is-ready:not(.is-revealed)` so SSR / no-JS stays visible.
 */

.ss-theme-global .ss-section-reveal {
  --ss-reveal-duration: 750ms;
  --ss-reveal-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ss-reveal-y: 22px;
}

.ss-theme-global .ss-section-reveal.is-ready {
  transition:
    opacity var(--ss-reveal-duration) var(--ss-reveal-ease),
    transform var(--ss-reveal-duration) var(--ss-reveal-ease);
  will-change: opacity, transform;
}

.ss-theme-global .ss-section-reveal.is-ready:not(.is-revealed) {
  opacity: 0;
  transform: translate3d(0, var(--ss-reveal-y), 0);
}

.ss-theme-global .ss-section-reveal.is-revealed {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  will-change: auto;
}

@media (prefers-reduced-motion: reduce) {
  .ss-theme-global .ss-section-reveal.is-ready,
  .ss-theme-global .ss-section-reveal.is-ready:not(.is-revealed),
  .ss-theme-global .ss-section-reveal.is-revealed {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }
}

/* --- features/public-site/regions/global/styles/shell.css --- */
/* Global theme — fixed viewport background, page column wash, shark + hero waves */

body.public-home,
.ss-theme-global {
  --ss-vp-base: #15151c;
  --ss-vp-veil: #00000038;
  --ss-blue-tail-mid: rgba(0, 40, 62, 0.28);
  --ss-blue-tail-end: rgba(0, 55, 87, 0.58);
  --ss-blob-magenta-core: #c026d3;
  --ss-blob-violet-edge: #7c3aed;
  --ss-blob-cyan-core: #06b6d4;
  --ss-blob-blue-edge: #2563eb;
  --ss-blob-fuchsia-glow: rgba(188, 42, 171, 0.75);
  --ss-blob-purple-glow: rgba(157, 3, 234, 0.65);
  --ss-blob-deep-violet: #5b21b6;
  --ss-cursor-glow-size: min(68vmin, 500px);
  --ss-cursor-glow-blur: clamp(64px, 12vmin, 120px);
  --ss-cursor-glow-opacity: 0.56;
  /* Soft film grain — ~55–60% quieter than prior 0.2; larger, softer tiles */
  --ss-noise-opacity: 0.085;
  --ss-noise-tile: 360px;
}

/* -------------------------------------------------------------------------- */
/* Viewport background — fixed layer (global shell only)                       */
/* -------------------------------------------------------------------------- */

.ss-public-viewport-bg {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.ss-public-viewport-bg__base {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: var(--ss-vp-base);
}

.ss-public-viewport-bg__glow-layer {
  position: absolute;
  inset: 0;
  z-index: 10;
  pointer-events: none;
}

.ss-public-viewport-bg__cursor-glow {
  position: absolute;
  left: 0;
  top: 0;
  width: var(--ss-cursor-glow-size);
  height: var(--ss-cursor-glow-size);
  border-radius: 50%;
  filter: blur(var(--ss-cursor-glow-blur));
  opacity: 0;
  will-change: transform, opacity;
  transition:
    opacity 1.45s cubic-bezier(0.33, 0, 0.25, 1),
    filter 0.6s ease-out;
  pointer-events: none;
}

.ss-public-viewport-bg__glow-layer:not(
    .ss-public-viewport-bg__glow-layer--tracking
  )
  .ss-public-viewport-bg__cursor-glow {
  opacity: 0 !important;
  transition: opacity 0.65s cubic-bezier(0.33, 0, 0.25, 1);
}

.ss-public-viewport-bg__cursor-glow[data-zone="nw"] {
  background: radial-gradient(
    circle at 50% 50%,
    color-mix(in srgb, var(--ss-blob-magenta-core) 48%, transparent) 0%,
    color-mix(in srgb, var(--ss-blob-violet-edge) 32%, transparent) 44%,
    transparent 80%
  );
}
.ss-public-viewport-bg__cursor-glow[data-zone="n"] {
  background: radial-gradient(
    circle at 50% 50%,
    color-mix(in srgb, var(--ss-blob-purple-glow) 45%, transparent) 0%,
    color-mix(in srgb, var(--ss-blob-blue-edge) 30%, transparent) 48%,
    transparent 82%
  );
}
.ss-public-viewport-bg__cursor-glow[data-zone="ne"] {
  background: radial-gradient(
    circle at 50% 50%,
    color-mix(in srgb, var(--ss-blob-fuchsia-glow) 42%, transparent) 0%,
    color-mix(in srgb, var(--ss-blob-magenta-core) 28%, transparent) 46%,
    transparent 80%
  );
}
.ss-public-viewport-bg__cursor-glow[data-zone="w"] {
  background: radial-gradient(
    circle at 50% 50%,
    color-mix(in srgb, var(--ss-blob-cyan-core) 44%, transparent) 0%,
    color-mix(in srgb, var(--ss-blob-violet-edge) 28%, transparent) 46%,
    transparent 81%
  );
}
.ss-public-viewport-bg__cursor-glow[data-zone="c"] {
  background: radial-gradient(
    circle at 50% 50%,
    color-mix(in srgb, var(--ss-blob-violet-edge) 40%, transparent) 0%,
    color-mix(in srgb, var(--ss-blob-cyan-core) 32%, transparent) 50%,
    transparent 83%
  );
}
.ss-public-viewport-bg__cursor-glow[data-zone="e"] {
  background: radial-gradient(
    circle at 50% 50%,
    color-mix(in srgb, var(--ss-blob-fuchsia-glow) 40%, transparent) 0%,
    color-mix(in srgb, var(--ss-blob-cyan-core) 30%, transparent) 48%,
    transparent 81%
  );
}
.ss-public-viewport-bg__cursor-glow[data-zone="sw"] {
  background: radial-gradient(
    circle at 50% 50%,
    color-mix(in srgb, var(--ss-blob-blue-edge) 38%, transparent) 0%,
    color-mix(in srgb, var(--ss-blob-cyan-core) 32%, transparent) 48%,
    transparent 82%
  );
}
.ss-public-viewport-bg__cursor-glow[data-zone="s"] {
  background: radial-gradient(
    circle at 50% 50%,
    color-mix(in srgb, var(--ss-blob-deep-violet) 40%, transparent) 0%,
    color-mix(in srgb, var(--ss-blob-fuchsia-glow) 28%, transparent) 46%,
    transparent 81%
  );
}
.ss-public-viewport-bg__cursor-glow[data-zone="se"] {
  background: radial-gradient(
    circle at 50% 50%,
    color-mix(in srgb, var(--ss-blob-magenta-core) 42%, transparent) 0%,
    color-mix(in srgb, var(--ss-blob-cyan-core) 30%, transparent) 50%,
    transparent 82%
  );
}

.ss-public-viewport-bg__noise {
  position: absolute;
  inset: 0;
  z-index: 30;
  pointer-events: none;
  opacity: var(--ss-noise-opacity);
  /* Softer fractal (lower freq / fewer octaves) + contrast crush = less “static/rain” */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.45' numOctaves='2' stitchTiles='stitch'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='linear' slope='0.4' intercept='0.3'/%3E%3CfeFuncG type='linear' slope='0.4' intercept='0.3'/%3E%3CfeFuncB type='linear' slope='0.4' intercept='0.3'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: var(--ss-noise-tile) var(--ss-noise-tile);
}

.ss-public-viewport-bg__veil {
  position: absolute;
  inset: 0;
  z-index: 40;
  pointer-events: none;
  background-color: var(--ss-vp-veil);
  background-image: linear-gradient(
    180deg,
    rgba(21, 21, 28, 0) 0%,
    rgba(21, 21, 28, 0.05) 100%
  );
}

@media (prefers-reduced-motion: reduce) {
  .ss-public-viewport-bg__glow-layer--tracking
    .ss-public-viewport-bg__cursor-glow {
    opacity: 0 !important;
    transition: none !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Main + footer column wash (transparent so fixed viewport shows through)    */
/* -------------------------------------------------------------------------- */

.ss-page-bg {
  position: relative;
  isolation: isolate;
  background-color: transparent;
}

.ss-page-bg::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: -22vh;
  z-index: 0;
  pointer-events: none;
  background-image:
    linear-gradient(
      to top,
      rgba(0, 28, 44, 0.98) 0%,
      rgba(0, 36, 56, 0.95) 10%,
      rgba(0, 42, 66, 0.88) 18%,
      rgba(0, 48, 74, 0.65) 28%,
      rgba(0, 52, 81, 0.38) 40%,
      rgba(0, 52, 81, 0.16) 52%,
      transparent 62%
    ),
    radial-gradient(
      60% 40% at 50% 100%,
      rgba(0, 120, 180, 0.18),
      transparent 70%
    );
}

.ss-page-bg::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: calc(-1 * clamp(14rem, 32vh, 28rem));
  z-index: 1;
  pointer-events: none;
  opacity: var(--ss-noise-opacity);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.45' numOctaves='2' stitchTiles='stitch'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='linear' slope='0.4' intercept='0.3'/%3E%3CfeFuncG type='linear' slope='0.4' intercept='0.3'/%3E%3CfeFuncB type='linear' slope='0.4' intercept='0.3'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: var(--ss-noise-tile) var(--ss-noise-tile);
}

.ss-page-bg > * {
  position: relative;
  z-index: 2;
}

/* -------------------------------------------------------------------------- */
/* Hero ocean waves + shark island (global home shell)                         */
/* -------------------------------------------------------------------------- */

/* Clip horizontal bleed at viewport — no page scroll; wave still crosses edges */
body.public-home .ss-page-section--hero {
  overflow-x: clip;
  overflow-y: visible;
}

[data-hero-wave-layer] {
  top: -28vh;
  left: -22%;
  bottom: -5rem;
  width: calc(100% + 22% + var(--hero-wave-bleed, 48vw));
  max-width: none;
  /*
   * Placement ladder (no client refine). Desktop values are calibrated to the
   * Global hero design: bottom-entry ribbon, title clear, loop bleeding off top-right.
   * Shared by pending empty host, WebGL OceanSurface, and static/SVG layers.
   * Mobile (max-width: 767px) keeps its own ladder — do not inherit desktop.
   */
  transform-origin: 6% 89.5%;
  transform: translate(87px, -14px) rotate(10.878deg) scale(1.55129);
}

@media (max-width: 767px) {
  [data-hero-wave-layer] {
    --hero-wave-bleed: 18vw;
    top: -4vh;
    left: -6%;
    right: calc(-1 * var(--hero-wave-bleed));
    bottom: -1.5rem;
    width: auto;
    min-height: min(76vh, 34rem);
    transform-origin: 9.15% 93.32%;
    transform: translate(20px, -10px) rotate(-20.229deg) scale(1.58057);
  }
}

@media (max-width: 767px) and (min-width: 360px) {
  [data-hero-wave-layer] {
    transform-origin: 9.15% 93.82%;
    transform: translate(23px, -14px) rotate(-22.392deg) scale(1.67286);
  }
}
@media (max-width: 767px) and (min-width: 390px) {
  [data-hero-wave-layer] {
    transform-origin: 9.15% 93.32%;
    transform: translate(20px, -10px) rotate(-20.229deg) scale(1.58057);
  }
}
@media (max-width: 767px) and (min-width: 430px) {
  [data-hero-wave-layer] {
    transform-origin: 9.15% 92.67%;
    transform: translate(17px, -6px) rotate(-17.501deg) scale(1.48048);
  }
}

@media (min-width: 768px) {
  [data-hero-wave-layer] {
    transform-origin: 9.15% 92.1%;
    transform: translate(100px, -220px) rotate(-1.568deg) scale(0.95638);
  }
}
@media (min-width: 820px) {
  [data-hero-wave-layer] {
    transform-origin: 9.15% 92.2%;
    transform: translate(44px, -242px) rotate(3.911deg) scale(1.37085);
  }
}
@media (min-width: 1024px) {
  [data-hero-wave-layer] {
    transform-origin: 7.46% 89.5%;
    transform: translate(54px, -10px) rotate(7.899deg) scale(1.33905);
  }
}
@media (min-width: 1064px) {
  [data-hero-wave-layer] {
    transform-origin: 7.21% 89.5%;
    transform: translate(59px, -9px) rotate(8.443deg) scale(1.36226);
  }
}
@media (min-width: 1100px) {
  [data-hero-wave-layer] {
    transform-origin: 7% 89.5%;
    transform: translate(63px, -9px) rotate(8.933deg) scale(1.38315);
  }
}
@media (min-width: 1140px) {
  [data-hero-wave-layer] {
    transform-origin: 6.76% 89.5%;
    transform: translate(69px, -9px) rotate(9.428deg) scale(1.41302);
  }
}
@media (min-width: 1180px) {
  [data-hero-wave-layer] {
    transform-origin: 6.52% 89.5%;
    transform: translate(74px, -9px) rotate(9.924deg) scale(1.44287);
  }
}
@media (min-width: 1200px) {
  [data-hero-wave-layer] {
    transform-origin: 6.41% 89.5%;
    transform: translate(77px, -9px) rotate(10.171deg) scale(1.4578);
  }
}
@media (min-width: 1240px) {
  [data-hero-wave-layer] {
    transform-origin: 6.2% 89.5%;
    transform: translate(82px, -9px) rotate(10.525deg) scale(1.48934);
  }
}
@media (min-width: 1280px) {
  [data-hero-wave-layer] {
    transform-origin: 6% 89.5%;
    transform: translate(87px, -9px) rotate(10.878deg) scale(1.52088);
  }
}
@media (min-width: 1320px) {
  [data-hero-wave-layer] {
    transform-origin: 5.8% 89.5%;
    transform: translate(93px, -9px) rotate(11.297deg) scale(1.55792);
  }
}
@media (min-width: 1360px) {
  [data-hero-wave-layer] {
    transform-origin: 5.6% 89.5%;
    transform: translate(99px, -10px) rotate(11.716deg) scale(1.59497);
  }
}
@media (min-width: 1366px) {
  [data-hero-wave-layer] {
    transform-origin: 5.57% 89.5%;
    transform: translate(100px, -10px) rotate(11.778deg) scale(1.60052);
  }
}
@media (min-width: 1400px) {
  [data-hero-wave-layer] {
    transform-origin: 5.86% 89.5%;
    transform: translate(99px, -22px) rotate(11.644deg) scale(1.51464);
  }
}
@media (min-width: 1440px) {
  [data-hero-wave-layer] {
    transform-origin: 5.69% 89.5%;
    transform: translate(104px, -22px) rotate(12.033deg) scale(1.5432);
  }
}
@media (min-width: 1480px) {
  [data-hero-wave-layer] {
    transform-origin: 5.54% 89.5%;
    transform: translate(110px, -22px) rotate(12.406deg) scale(1.57184);
  }
}
@media (min-width: 1488px) {
  [data-hero-wave-layer] {
    transform-origin: 5.51% 89.5%;
    transform: translate(111px, -22px) rotate(12.481deg) scale(1.57756);
  }
}
@media (min-width: 1500px) {
  [data-hero-wave-layer] {
    transform-origin: 5.46% 89.5%;
    transform: translate(112px, -23px) rotate(12.589deg) scale(1.58621);
  }
}
@media (min-width: 1536px) {
  [data-hero-wave-layer] {
    transform-origin: 5.33% 89.5%;
    transform: translate(117px, -22px) rotate(12.908deg) scale(1.61207);
  }
}
@media (min-width: 1576px) {
  [data-hero-wave-layer] {
    transform-origin: 5.2% 89.5%;
    transform: translate(122px, -22px) rotate(13.247deg) scale(1.64095);
  }
}
@media (min-width: 1600px) {
  [data-hero-wave-layer] {
    transform-origin: 5.12% 89.5%;
    transform: translate(126px, -22px) rotate(13.451deg) scale(1.65829);
  }
}
@media (min-width: 1728px) {
  [data-hero-wave-layer] {
    transform-origin: 5.7% 89.5%;
    transform: translate(124px, -78px) rotate(12.895deg) scale(1.47419);
  }
}
@media (min-width: 1768px) {
  [data-hero-wave-layer] {
    transform-origin: 5.57% 89.5%;
    transform: translate(129px, -77px) rotate(13.218deg) scale(1.50421);
  }
}
@media (min-width: 1808px) {
  [data-hero-wave-layer] {
    transform-origin: 5.43% 89.5%;
    transform: translate(134px, -77px) rotate(13.541deg) scale(1.53422);
  }
}
@media (min-width: 1848px) {
  [data-hero-wave-layer] {
    transform-origin: 5.29% 89.5%;
    transform: translate(139px, -76px) rotate(13.865deg) scale(1.56424);
  }
}
@media (min-width: 1888px) {
  [data-hero-wave-layer] {
    transform-origin: 5.16% 89.5%;
    transform: translate(144px, -75px) rotate(14.188deg) scale(1.59426);
  }
}
@media (min-width: 1920px) {
  [data-hero-wave-layer] {
    transform-origin: 5.05% 89.5%;
    transform: translate(148px, -75px) rotate(14.447deg) scale(1.61828);
  }
}

/* Height-sensitive refinements (desktop only — same calibration as width ladder) */
@media (min-width: 1280px) and (max-height: 760px) {
  [data-hero-wave-layer] {
    transform-origin: 5.87% 89.5%;
    transform: translate(89px, -11px) rotate(10.878deg) scale(1.55571);
  }
}
@media (min-width: 1536px) and (max-height: 882px) {
  [data-hero-wave-layer] {
    transform-origin: 5.14% 89.5%;
    transform: translate(120px, -11px) rotate(13.23deg) scale(1.66968);
  }
}
@media (min-width: 1920px) and (min-height: 1140px) {
  [data-hero-wave-layer] {
    transform-origin: 5.22% 89.5%;
    transform: translate(144px, -76px) rotate(14.35deg) scale(1.56513);
  }
}

[data-shark-island-motion]:not([data-shark-painted="true"]) {
  visibility: hidden;
}

[data-hero-wave-anchor] {
  overflow-x: clip;
  overflow-y: visible;
}


/* Home hero social proof (avatars + stars under CTAs) */
.ss-home-hero-review {
  display: flex;
  align-items: center;
  gap: 0.9rem;
}

.ss-home-hero-review__avatars {
  display: flex;
  flex-shrink: 0;
  align-items: center;
}

.ss-home-hero-review__avatar {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  border: 2px solid rgba(8, 12, 28, 0.92);
  object-fit: cover;
  margin-inline-start: -0.55rem;
}

.ss-home-hero-review__avatars .ss-home-hero-review__avatar:first-child {
  margin-inline-start: 0;
}

.ss-home-hero-review__copy {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.ss-home-hero-review__stars {
  display: flex;
  align-items: center;
  gap: 0.12rem;
}

.ss-home-hero-review__star {
  width: 0.95rem;
  height: 0.95rem;
  fill: #fbbf24;
}

.ss-home-hero-review__label {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.35;
  color: rgba(255, 255, 255, 0.72);
  letter-spacing: 0.01em;
}

/* Header infinity mark — one 360° Y-turn per hover; hit box stays on the link */
.ss-theme-global a[data-header-logo] {
  perspective: 1080px;
  perspective-origin: 50% 50%;
}

.ss-theme-global a[data-header-logo] [data-header-logo-mark] {
  transform-origin: 50% 50%;
  backface-visibility: visible;
}

@keyframes ss-header-logo-turn {
  from {
    transform: rotateY(0deg);
  }
  to {
    transform: rotateY(360deg);
  }
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .ss-theme-global a[data-header-logo] [data-header-logo-mark].is-turning {
    will-change: transform;
    animation: ss-header-logo-turn 0.95s cubic-bezier(0.45, 0.05, 0.55, 0.95) 1 both;
  }
}

/* --- features/public-site/regions/global/styles/pages/about.css --- */
/* Global About page — styles/pages/about.css */

.ss-global-about-page .ss-page-section:not(.ss-page-section--hero) {
  padding-block: 2.5rem;
}

@media (min-width: 768px) {
  .ss-global-about-page .ss-page-section:not(.ss-page-section--hero) {
    padding-block: 3.5rem;
  }
}

.ss-global-about-page .ss-global-home-extra {
  padding-block: 1.5rem;
}

/* Glass service-card type weight on About. */
.ss-global-about-page :is(
  .ss-feature-grid-card__title,
  .ss-feature-grid-glow-card .ss-feature-grid-card__title
) {
  font-weight: 300;
}

.ss-global-about-page .ss-feature-grid-card__cta {
  font-weight: 300;
}

/* --- features/public-site/regions/global/styles/pages/audit.css --- */
/* Global Audit pages (SEO + UI/UX) */

.ss-global-audit-page {
  --ss-contact-section-space: clamp(1.5rem, 3vw, 2.5rem);
}

.ss-global-audit-page .ss-page-section.ss-contact-section {
  padding-block: var(--ss-contact-section-space);
}

.ss-global-audit-page .ss-contact-section--form {
  padding-block-start: clamp(2rem, 5vw, 3.25rem);
  padding-block-end: clamp(2.25rem, 4.5vw, 3.5rem);
}

.ss-audit-split {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.75rem, 3.5vw, 2.5rem);
  width: 100%;
}

.ss-audit-split__content {
  width: 100%;
  min-width: 0;
}

.ss-audit-split__hero {
  display: flex;
  justify-content: flex-start;
  text-align: left;
  margin-block-end: clamp(0.75rem, 1.5vw, 1.15rem);
}

.ss-audit-split__hero .ss-contact-hero__stack {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  text-align: left;
}

.ss-global-audit-page .ss-audit-split__hero .ss-home-hero-h1,
.ss-global-audit-page .ss-audit-split__hero .ss-page-title,
.ss-global-audit-page .ss-audit-split__hero h1 {
  margin-inline: 0;
  width: 100%;
  text-align: left;
}

.ss-theme-global .ss-global-audit-page .ss-audit-split__hero .ss-contact-hero__tagline,
.ss-global-audit-page .ss-audit-split__hero .ss-contact-hero__tagline {
  color: #ffffff;
  white-space: normal;
  text-align: left;
}

.ss-global-audit-page .ss-audit-form-intro {
  margin-block: 0 clamp(1.15rem, 2.25vw, 1.65rem);
  margin-inline: 0;
  width: 100%;
  max-width: none;
  text-align: left;
}

.ss-global-audit-page .ss-contact-intro__title {
  color: #ffffff;
  font-weight: 400;
  text-align: left;
}

.ss-global-audit-page .ss-contact-intro__body {
  color: rgba(255, 255, 255, 0.72);
  font-weight: 300;
  text-align: left;
  max-width: 38rem;
}

.ss-audit-split__content .ss-contact-form__fields {
  margin-inline: 0;
  max-width: none;
  width: 100%;
}

.ss-audit-split__media {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  min-width: 0;
  padding: 0;
  margin: 0;
}

.ss-audit-split__media-frame {
  position: relative;
  width: min(100%, 15.5rem);
  aspect-ratio: 559 / 1024;
}

.ss-audit-split__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center top;
  opacity: 0.82;
}

@media (max-width: 767px) {
  .ss-audit-split {
    gap: clamp(1.25rem, 4vw, 1.75rem);
  }

  .ss-audit-split__media-frame {
    width: min(100%, 14rem);
  }
}

@media (min-width: 768px) {
  .ss-audit-split {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    align-items: center;
    column-gap: clamp(1rem, 2vw, 1.75rem);
    row-gap: 0;
  }

  .ss-audit-split__media {
    justify-content: flex-end;
    align-self: center;
  }

  .ss-audit-split__media-frame {
    width: min(100%, 20rem);
  }
}

@media (min-width: 1024px) {
  .ss-audit-split {
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
    column-gap: clamp(1.25rem, 2.25vw, 2rem);
  }

  .ss-audit-split__media-frame {
    width: min(100%, 22rem);
  }
}

@media (min-width: 1440px) {
  .ss-audit-split {
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
    column-gap: clamp(1.5rem, 2vw, 2.25rem);
  }

  .ss-audit-split__media-frame {
    width: min(100%, 24rem);
  }
}

/* --- features/public-site/regions/global/styles/pages/blog-single.css --- */
/* Global Blog Single — styles/pages/blog-single.css */

/* Beat body.public-home .ss-page-section padding (bundled public.css) — theme CSS loads later via <link>. */
body.public-home .ss-global-blog-single .ss-blog-single-header.ss-page-section,
.ss-global-blog-single .ss-blog-single-header.ss-page-section {
  padding-block: clamp(2rem, 5vw, 3.25rem) 0.75rem;
}

body.public-home .ss-global-blog-single .ss-blog-single-feature.ss-page-section,
.ss-global-blog-single .ss-blog-single-feature.ss-page-section {
  padding-block: 1rem 0;
}

.ss-global-blog-single .ss-blog-single-header__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.75rem;
  text-align: center;
  max-width: 52rem;
  margin-inline: auto;
}

/*
 * Title size must beat body.public-home h1 (up to 5rem) or the heading
 * shrinks when theme CSS arrives and appears to “jump up”.
 */
body.public-home .ss-global-blog-single .ss-blog-single-header__title,
.ss-global-blog-single .ss-blog-single-header__title {
  margin: 0;
  font-size: clamp(1.625rem, 3.4vw, 2.75rem);
  font-weight: 400;
  letter-spacing: -0.03em;
  line-height: 1.15;
  color: #fff;
}

.ss-global-blog-single .ss-blog-single-feature__frame {
  position: relative;
  margin: 0 auto;
  width: 100%;
  max-width: 77.5rem; /* ~1240px */
  overflow: hidden;
  border-radius: clamp(1.25rem, 2.5vw, 1.75rem);
  background: rgba(255, 255, 255, 0.04);
  aspect-ratio: 1240 / 640;
}

.ss-global-blog-single .ss-blog-single-feature__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ss-global-blog-single .ss-blog-single-feature__placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
}

.ss-global-blog-single .ss-blog-single-feature__meta {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 2.5rem;
  padding: 1rem 1.25rem;
  background: linear-gradient(180deg, transparent 0%, rgba(4, 8, 18, 0.82) 35%, rgba(4, 8, 18, 0.92) 100%);
}

@media (min-width: 768px) {
  .ss-global-blog-single .ss-blog-single-feature__meta {
    padding: 1.25rem 1.75rem;
    gap: 1.5rem 4rem;
  }
}

.ss-global-blog-single .ss-blog-single-feature__meta-item {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}

.ss-global-blog-single .ss-blog-single__author-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  flex-shrink: 0;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(255, 255, 255, 0.85);
}

.ss-global-blog-single .ss-blog-single__author-icon {
  width: 1.15rem;
  height: 1.15rem;
}

.ss-global-blog-single .ss-blog-single-feature__meta-icon-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  flex-shrink: 0;
  color: rgba(255, 255, 255, 0.75);
}

.ss-global-blog-single .ss-blog-single__meta-icon {
  width: 1.1rem;
  height: 1.1rem;
}

.ss-global-blog-single .ss-blog-single-feature__meta-copy {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  min-width: 0;
}

.ss-global-blog-single .ss-blog-single-feature__meta-label {
  font-size: 0.75rem;
  font-weight: 300;
  line-height: 1.2;
  color: rgba(255, 255, 255, 0.55);
}

.ss-global-blog-single .ss-blog-single-feature__meta-value {
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.3;
  color: #fff;
}

.ss-global-blog-single .ss-blog-single-content {
  padding-block: 0 clamp(2.5rem, 5vw, 4rem);
}

.ss-global-blog-single .ss-blog-single-content__inner {
  max-width: 77.5rem; /* match featured image (~1240px) */
  margin-inline: auto;
  text-align: left;
  color: #fff;
}

.ss-global-blog-single .ss-blog-single-content__block + .ss-blog-single-content__block {
  margin-top: clamp(1.75rem, 3.5vw, 2.5rem);
}

.ss-global-blog-single .ss-blog-single-content__heading {
  margin: 0;
  font-size: clamp(1.25rem, 2.2vw, 1.625rem);
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.3;
  color: #fff;
}

.ss-global-blog-single .ss-blog-single-content__body {
  margin: 0.85rem 0 0;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.75;
  color: #fff;
}

.ss-global-blog-single .ss-blog-single-content__body,
.ss-global-blog-single .ss-blog-single-content__body * {
  color: #fff !important;
  background-color: transparent !important;
}

.ss-global-blog-single .ss-blog-single-content__body p {
  margin: 0 0 1em;
}

.ss-global-blog-single .ss-blog-single-content__body p:last-child {
  margin-bottom: 0;
}

.ss-global-blog-single .ss-blog-single-content__body a {
  color: #fff !important;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.ss-global-blog-single .ss-blog-single-content__body strong {
  color: #fff !important;
  font-weight: 500;
}

.ss-global-blog-single .ss-blog-related-section {
  padding-block: clamp(2.5rem, 5vw, 4rem);
}

.ss-global-blog-single .ss-blog-related__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: min(100%, 56rem);
  margin-inline: auto;
  margin-bottom: clamp(2rem, 4vw, 3rem);
}

.ss-global-blog-single .ss-blog-related__title {
  margin: 1.15rem 0 0;
  font-size: clamp(1.75rem, 3.5vw, 2.5rem);
  font-weight: 400;
  letter-spacing: -0.03em;
  line-height: 1.15;
  color: #fff;
}

.ss-global-blog-single .ss-blog-related__subtitle {
  margin: 0.85rem 0 0;
  max-width: none;
  width: 100%;
  color: rgba(255, 255, 255, 0.58);
}

@media (min-width: 900px) {
  .ss-global-blog-single .ss-blog-related__subtitle {
    white-space: nowrap;
  }
}

.ss-global-blog-single .ss-blog-related-card .ss-blog-archive-card__title {
  font-weight: 400;
}

.ss-global-blog-single .ss-blog-related__grid {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(1.75rem, 3.5vw, 2.5rem);
}

@media (min-width: 768px) {
  .ss-global-blog-single .ss-blog-related__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .ss-global-blog-single .ss-blog-related-card .ss-blog-archive-card__media {
    aspect-ratio: 16 / 10;
    height: auto;
  }
}

/* --- features/public-site/regions/global/styles/pages/blog.css --- */
/* Global Blog archive — styles/pages/blog.css */

.ss-global-blog-page .ss-blog-archive-section {
  padding-block: clamp(2rem, 5vw, 3.5rem);
}

.ss-global-blog-page .ss-blog-archive {
  width: 100%;
}

.ss-global-blog-page .ss-blog-archive__toolbar {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-width: 0;
  margin-bottom: clamp(1.75rem, 4vw, 2.75rem);
}

@media (min-width: 768px) {
  .ss-global-blog-page .ss-blog-archive__toolbar {
    min-height: 2.75rem;
    flex-wrap: nowrap;
    gap: 0.75rem 1rem;
  }
}

.ss-global-blog-page .ss-blog-archive__filters {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 0 1 auto;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 0.15rem 0.35rem;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.ss-global-blog-page .ss-blog-archive__filters::-webkit-scrollbar {
  display: none;
}

@media (min-width: 768px) {
  .ss-global-blog-page .ss-blog-archive__filters {
    flex-wrap: wrap;
    gap: 0.15rem 0.5rem;
    overflow: visible;
  }
}

.ss-global-blog-page .ss-blog-archive__filter {
  appearance: none;
  flex: 0 0 auto;
  border: 0;
  background: transparent;
  padding: 0.4rem 0.65rem;
  font-size: clamp(0.8125rem, 1.1vw, 0.9375rem);
  font-weight: 300;
  line-height: 1.25;
  color: rgba(255, 255, 255, 0.55);
  cursor: pointer;
  white-space: nowrap;
  transition: color 0.2s ease;
}

.ss-global-blog-page .ss-blog-archive__filter:hover {
  color: rgba(255, 255, 255, 0.9);
}

.ss-global-blog-page .ss-blog-archive__filter.is-active {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 0.35em;
  text-decoration-thickness: 1px;
}

.ss-global-blog-page .ss-blog-archive__search {
  display: flex;
  flex: 0 0 auto;
  justify-content: center;
  align-items: center;
  z-index: 2;
}

.ss-global-blog-page .ss-blog-archive__search-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border: 0;
  border-radius: 9999px;
  background: transparent;
  color: rgba(255, 255, 255, 0.85);
  cursor: pointer;
  transition: color 0.2s ease, background 0.2s ease;
}

.ss-global-blog-page .ss-blog-archive__search-toggle:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
}

.ss-global-blog-page .ss-blog-archive__search-icon {
  width: 1.15rem;
  height: 1.15rem;
}

.ss-global-blog-page .ss-blog-archive__search-input {
  width: min(100vw - 4rem, 14rem);
  height: 2.5rem;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.05);
  padding: 0 1rem;
  font-size: 0.875rem;
  color: #fff;
  outline: none;
}

.ss-global-blog-page .ss-blog-archive__search-input::placeholder {
  color: rgba(255, 255, 255, 0.4);
}

.ss-global-blog-page .ss-blog-archive__search-input:focus {
  border-color: rgba(255, 255, 255, 0.4);
}

.ss-global-blog-page .ss-blog-archive__empty {
  margin: 0;
  padding-block: 3rem;
  text-align: center;
  font-size: 0.9375rem;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.5);
}

.ss-global-blog-page .ss-blog-archive__grid {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(2rem, 4vw, 3rem) clamp(1.5rem, 3vw, 2.5rem);
}

@media (min-width: 768px) {
  /* 20 tracks → 11+9 = 55/45, alternating each row. */
  .ss-global-blog-page .ss-blog-archive__grid {
    grid-template-columns: repeat(20, minmax(0, 1fr));
  }

  .ss-global-blog-page .ss-blog-archive-card:nth-child(4n + 1),
  .ss-global-blog-page .ss-blog-archive-card:nth-child(4n + 4) {
    grid-column: span 11;
  }

  .ss-global-blog-page .ss-blog-archive-card:nth-child(4n + 2),
  .ss-global-blog-page .ss-blog-archive-card:nth-child(4n + 3) {
    grid-column: span 9;
  }

  /* Same media height across the row so titles/dates stay aligned. */
  .ss-global-blog-page .ss-blog-archive-card__media {
    aspect-ratio: auto;
    height: clamp(15rem, 24vw, 20rem);
  }
}

/* Shared blog card chrome — archive + related. */
.ss-global-blog-page .ss-blog-archive-card__inner,
.ss-global-blog-single .ss-blog-archive-card__inner {
  --ss-blog-card-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ss-blog-card-duration: 300ms;
  --ss-blog-card-pad-x: 1rem;
  --ss-blog-card-pad-b: 1.15rem;
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 0 var(--ss-blog-card-pad-x) var(--ss-blog-card-pad-b);
  overflow: hidden;
  border-radius: 1rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background:
    radial-gradient(95% 48% at 50% 0%, rgba(255, 255, 255, 0.055) 0%, transparent 68%),
    rgba(255, 255, 255, 0.035);
  box-shadow:
    0 20px 44px -20px rgba(0, 0, 0, 0.52),
    0 8px 18px -10px rgba(0, 0, 0, 0.32);
  transition:
    transform var(--ss-blog-card-duration) var(--ss-blog-card-ease),
    box-shadow var(--ss-blog-card-duration) var(--ss-blog-card-ease),
    border-color var(--ss-blog-card-duration) var(--ss-blog-card-ease),
    background-color var(--ss-blog-card-duration) var(--ss-blog-card-ease);
}

/* Edge highlight — smoked-glass catch light. */
.ss-global-blog-page .ss-blog-archive-card__inner::before,
.ss-global-blog-single .ss-blog-archive-card__inner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  border-radius: inherit;
  padding: 1px;
  pointer-events: none;
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0.32) 0%,
    rgba(255, 255, 255, 0.12) 26%,
    rgba(255, 255, 255, 0.04) 48%,
    rgba(255, 255, 255, 0) 70%
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  mask-composite: exclude;
  opacity: 0.5;
  transition: opacity var(--ss-blog-card-duration) var(--ss-blog-card-ease);
}

.ss-global-blog-page .ss-blog-archive-card__inner--tilt::before {
  background: linear-gradient(
    calc(135deg + (var(--ss-blog-tilt-ry, 0deg) * 2.5) - (var(--ss-blog-tilt-rx, 0deg) * 1.25)),
    rgba(255, 255, 255, 0.34) 0%,
    rgba(255, 255, 255, 0.12) 26%,
    rgba(255, 255, 255, 0.04) 48%,
    rgba(255, 255, 255, 0) 70%
  );
  opacity: calc(0.48 + var(--ss-blog-tilt-edge, 0) * 0.4);
  transition: none;
}

@media (hover: hover) and (pointer: fine) {
  .ss-global-blog-page .ss-blog-archive-card__inner:not(.ss-blog-archive-card__inner--tilt):hover,
  .ss-global-blog-single .ss-blog-archive-card__inner:hover {
    transform: translateY(-5px) scale(1.01);
    border-color: rgba(255, 255, 255, 0.16);
    background:
      radial-gradient(95% 48% at 50% 0%, rgba(255, 255, 255, 0.07) 0%, transparent 68%),
      rgba(255, 255, 255, 0.05);
    box-shadow:
      0 30px 56px -22px rgba(0, 0, 0, 0.56),
      0 14px 26px -12px rgba(0, 0, 0, 0.36);
  }

  .ss-global-blog-page .ss-blog-archive-card__inner:not(.ss-blog-archive-card__inner--tilt):hover::before,
  .ss-global-blog-single .ss-blog-archive-card__inner:hover::before {
    opacity: 0.82;
  }

  .ss-global-blog-page .ss-blog-archive-card__inner:not(.ss-blog-archive-card__inner--tilt):hover .ss-blog-archive-card__img,
  .ss-global-blog-single .ss-blog-archive-card__inner:hover .ss-blog-archive-card__img {
    transform: scale(1.03);
  }

  .ss-global-blog-page .ss-blog-archive-card__inner--tilt:hover {
    border-color: rgba(255, 255, 255, 0.16);
    background:
      radial-gradient(95% 48% at 50% 0%, rgba(255, 255, 255, 0.07) 0%, transparent 68%),
      rgba(255, 255, 255, 0.05);
  }

  .ss-global-blog-page .ss-blog-archive-card__inner--tilt:hover .ss-blog-archive-card__img {
    transform: translateZ(0) scale(1.03);
  }
}

.ss-global-blog-page .ss-blog-archive-card--tilt-ready {
  perspective: 1300px;
  perspective-origin: 50% 50%;
}

.ss-global-blog-page .ss-blog-archive-card__inner--tilt {
  transform-origin: 50% 50%;
  transform-style: preserve-3d;
  backface-visibility: hidden;
  transform: translate3d(0, var(--ss-blog-tilt-ty, 0px), 0)
    rotateX(var(--ss-blog-tilt-rx, 0deg))
    rotateY(var(--ss-blog-tilt-ry, 0deg))
    scale(var(--ss-blog-tilt-s, 1));
  box-shadow:
    0 var(--ss-blog-tilt-sh-y1, 20px) var(--ss-blog-tilt-sh-b1, 44px) -20px
      rgba(0, 0, 0, var(--ss-blog-tilt-sh-a1, 0.52)),
    0 var(--ss-blog-tilt-sh-y2, 8px) var(--ss-blog-tilt-sh-b2, 18px) -10px
      rgba(0, 0, 0, var(--ss-blog-tilt-sh-a2, 0.32));
  transition:
    border-color var(--ss-blog-card-duration) var(--ss-blog-card-ease),
    background-color var(--ss-blog-card-duration) var(--ss-blog-card-ease);
}

.ss-global-blog-page .ss-blog-archive-card__inner--tilt .ss-blog-archive-card__media,
.ss-global-blog-page .ss-blog-archive-card__inner--tilt .ss-blog-archive-card__category,
.ss-global-blog-page .ss-blog-archive-card__inner--tilt .ss-blog-archive-card__title,
.ss-global-blog-page .ss-blog-archive-card__inner--tilt .ss-blog-archive-card__date,
.ss-global-blog-page .ss-blog-archive-card__inner--tilt .ss-blog-archive-card__excerpt {
  transform: translateZ(0);
  backface-visibility: hidden;
}

.ss-global-blog-page .ss-blog-archive-card__inner--tilt[data-tilting="1"] {
  will-change: transform;
}

.ss-global-blog-page .ss-blog-archive-card__media,
.ss-global-blog-single .ss-blog-archive-card__media {
  display: block;
  position: relative;
  z-index: 0;
  overflow: hidden;
  margin-inline: calc(var(--ss-blog-card-pad-x) * -1);
  border-radius: 0;
  aspect-ratio: 16 / 10;
  background: rgba(255, 255, 255, 0.04);
}

.ss-global-blog-page .ss-blog-archive-card__img,
.ss-global-blog-single .ss-blog-archive-card__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--ss-blog-card-duration) var(--ss-blog-card-ease);
}

.ss-global-blog-page .ss-blog-archive-card__media-placeholder,
.ss-global-blog-single .ss-blog-archive-card__media-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));
}

.ss-global-blog-page .ss-blog-archive-card__category,
.ss-global-blog-page .ss-blog-archive-card__title,
.ss-global-blog-page .ss-blog-archive-card__date,
.ss-global-blog-page .ss-blog-archive-card__excerpt,
.ss-global-blog-single .ss-blog-archive-card__category,
.ss-global-blog-single .ss-blog-archive-card__title,
.ss-global-blog-single .ss-blog-archive-card__date,
.ss-global-blog-single .ss-blog-archive-card__excerpt {
  position: relative;
  z-index: 2;
}

.ss-global-blog-page .ss-blog-archive-card__category,
.ss-global-blog-single .ss-blog-archive-card__category {
  margin: 1rem 0 0;
  display: inline-flex;
  align-self: flex-start;
  padding: 0.3rem 0.75rem;
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.08);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.72);
}

.ss-global-blog-page .ss-blog-archive-card__title,
.ss-global-blog-single .ss-blog-archive-card__title {
  margin: 0.75rem 0 0;
  font-size: clamp(1.125rem, 1.8vw, 1.375rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.35;
  color: #fff;
}

.ss-global-blog-page .ss-blog-archive-card__title a,
.ss-global-blog-single .ss-blog-archive-card__title a {
  color: inherit;
  text-decoration: none;
}

.ss-global-blog-page .ss-blog-archive-card__title a:hover,
.ss-global-blog-single .ss-blog-archive-card__title a:hover {
  color: rgba(255, 255, 255, 0.88);
}

.ss-global-blog-page .ss-blog-archive-card__date,
.ss-global-blog-single .ss-blog-archive-card__date {
  margin: 0.65rem 0 0;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.8125rem;
  font-weight: 300;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.55);
}

.ss-global-blog-page .ss-blog-archive-card__date-icon,
.ss-global-blog-single .ss-blog-archive-card__date-icon {
  width: 0.9rem;
  height: 0.9rem;
  flex-shrink: 0;
  opacity: 0.8;
}

.ss-global-blog-page .ss-blog-archive-card__excerpt,
.ss-global-blog-single .ss-blog-archive-card__excerpt {
  margin: 0.85rem 0 0;
  font-size: 0.9375rem;
  font-weight: 300;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.62);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
  .ss-global-blog-page .ss-blog-archive-card__inner,
  .ss-global-blog-single .ss-blog-archive-card__inner,
  .ss-global-blog-page .ss-blog-archive-card__img,
  .ss-global-blog-single .ss-blog-archive-card__img {
    transition: none !important;
  }

  .ss-global-blog-page .ss-blog-archive-card__inner:hover,
  .ss-global-blog-single .ss-blog-archive-card__inner:hover {
    transform: none;
  }

  .ss-global-blog-page .ss-blog-archive-card__inner:hover .ss-blog-archive-card__img,
  .ss-global-blog-single .ss-blog-archive-card__inner:hover .ss-blog-archive-card__img {
    transform: none;
  }
}

.ss-global-blog-page .ss-blog-archive__load-more {
  display: flex;
  justify-content: center;
  margin-top: clamp(2rem, 4vw, 3rem);
}

.ss-global-blog-page .ss-blog-archive__load-more-btn {
  display: inline-flex;
}

/* --- features/public-site/regions/global/styles/pages/career-single.css --- */
/* Global Career Single — job detail layout (styles/pages/career-single.css) */

.ss-global-career-single .ss-career-job-detail-section {
  padding-block: clamp(2.5rem, 5vw, 4.5rem);
}

.ss-global-career-single .ss-career-job-detail {
  width: 100%;
}

.ss-global-career-single .ss-career-job-detail__meta-row {
  margin: 0 0 1.25rem;
}

.ss-global-career-single .ss-career-job-detail__meta {
  margin: 0;
  font-size: clamp(0.8125rem, 1.1vw, 0.9375rem);
  font-weight: 300;
  line-height: 1.5;
  color: color-mix(in srgb, var(--ss-text, #f8fafc) 82%, transparent);
  text-align: left;
}

.ss-global-career-single .ss-career-job-detail__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(2rem, 4vw, 3.5rem);
  align-items: start;
}

@media (min-width: 960px) {
  .ss-global-career-single .ss-career-job-detail__grid--with-sidebar {
    grid-template-columns: minmax(0, 1.65fr) minmax(14rem, 0.85fr);
    column-gap: clamp(2.5rem, 5vw, 4.5rem);
  }
}

.ss-global-career-single .ss-career-job-detail__main {
  display: flex;
  flex-direction: column;
  gap: clamp(1.75rem, 3.2vw, 2.75rem);
  min-width: 0;
}

.ss-global-career-single .ss-career-job-detail__block {
  margin: 0;
}

.ss-global-career-single .ss-career-job-detail__heading {
  margin: 0 0 0.85rem;
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.3;
  color: var(--ss-text, #f8fafc);
}

.ss-global-career-single .ss-career-job-detail__body {
  margin: 0;
  font-size: clamp(0.9375rem, 1.2vw, 1.0625rem);
  font-weight: 300;
  line-height: 1.7;
  color: color-mix(in srgb, var(--ss-text, #f8fafc) 78%, transparent);
}

.ss-global-career-single .ss-career-job-detail__body p {
  margin: 0 0 0.85rem;
}

.ss-global-career-single .ss-career-job-detail__body p:last-child {
  margin-bottom: 0;
}

.ss-global-career-single .ss-career-job-detail__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.ss-global-career-single .ss-career-job-detail__list li {
  position: relative;
  padding-left: 1.15rem;
  font-size: clamp(0.9375rem, 1.2vw, 1.0625rem);
  font-weight: 300;
  line-height: 1.65;
  color: color-mix(in srgb, var(--ss-text, #f8fafc) 78%, transparent);
}

.ss-global-career-single .ss-career-job-detail__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.62em;
  width: 0.35rem;
  height: 0.35rem;
  border-radius: 9999px;
  background: color-mix(in srgb, var(--ss-text, #f8fafc) 88%, transparent);
}

.ss-global-career-single .ss-career-job-detail__sidebar {
  min-width: 0;
}

@media (min-width: 960px) {
  .ss-global-career-single .ss-career-job-detail__sidebar-inner {
    position: sticky;
    top: clamp(5.5rem, 12vh, 7rem);
  }
}

.ss-global-career-single .ss-career-job-detail__facts {
  margin: 0 0 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.ss-global-career-single .ss-career-job-detail__fact {
  display: grid;
  gap: 0.2rem;
}

.ss-global-career-single .ss-career-job-detail__fact dt {
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  color: color-mix(in srgb, var(--ss-text, #f8fafc) 62%, transparent);
}

.ss-global-career-single .ss-career-job-detail__fact dd {
  margin: 0;
  font-size: clamp(0.9375rem, 1.15vw, 1.0625rem);
  font-weight: 300;
  line-height: 1.45;
  color: var(--ss-text, #f8fafc);
}

.ss-global-career-single .ss-career-job-detail__apply {
  display: inline-flex;
  margin-bottom: 1.75rem;
}

.ss-global-career-single .ss-career-job-detail__contact-heading,
.ss-global-career-single .ss-career-job-detail__contact-sub {
  margin: 0;
  font-size: clamp(1rem, 1.4vw, 1.125rem);
  font-weight: 400;
  line-height: 1.45;
  color: var(--ss-text, #f8fafc);
}

.ss-global-career-single .ss-career-job-detail__contact-sub {
  margin-top: 0.15rem;
  font-weight: 300;
}

.ss-global-career-single .ss-career-job-detail__contact-row {
  margin: 1rem 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.5rem;
  font-size: clamp(0.875rem, 1.1vw, 0.975rem);
  font-weight: 300;
  line-height: 1.55;
  color: #ffffff;
}

.ss-global-career-single .ss-career-job-detail__contact-row a {
  color: #ffffff;
  text-decoration: none;
  word-break: break-word;
}

.ss-global-career-single .ss-career-job-detail__contact-row a:hover {
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

@media (max-width: 959px) {
  .ss-global-career-single .ss-career-job-detail__sidebar-inner {
    padding-top: 0.5rem;
    border-top: 1px solid color-mix(in srgb, var(--ss-text, #f8fafc) 12%, transparent);
  }
}

/* --- features/public-site/regions/global/styles/pages/careers.css --- */
/* Global Careers page — styles/pages/careers.css */

.ss-global-careers-page .ss-careers-empty {
  padding-block: clamp(2.5rem, 6vw, 4.5rem);
}

.ss-global-careers-page .ss-careers-empty__inner {
  margin-inline: auto;
  max-width: 42rem;
  text-align: center;
}

.ss-global-careers-page .ss-careers-empty__title {
  margin: 0;
  font-size: clamp(1.5rem, 2.5vw, 2rem);
  font-weight: 300;
  letter-spacing: -0.02em;
  color: var(--ss-text, #f8fafc);
}

.ss-global-careers-page .ss-careers-empty__body {
  margin: 1rem 0 0;
  font-size: clamp(0.95rem, 1.4vw, 1.05rem);
  font-weight: 300;
  line-height: 1.65;
  color: color-mix(in srgb, var(--ss-text, #f8fafc) 78%, transparent);
}

.ss-global-careers-page .ss-careers-openings {
  padding-block: clamp(2.5rem, 6vw, 4.5rem);
}

.ss-global-careers-page .ss-careers-openings__header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: clamp(1.75rem, 3.5vw, 2.5rem);
}

.ss-global-careers-page .ss-careers-openings__title {
  margin: 0;
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.2;
  color: var(--ss-text, #f8fafc);
}

.ss-global-careers-page .ss-careers-openings__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.ss-global-careers-page .ss-careers-openings__card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem 2rem;
  width: 100%;
  padding: clamp(1.15rem, 2.2vw, 1.5rem) clamp(1.25rem, 2.5vw, 1.75rem);
  border: 1px solid color-mix(in srgb, var(--ss-text, #f8fafc) 22%, transparent);
  border-radius: 1.25rem;
  text-decoration: none;
  color: inherit;
  transition:
    border-color 160ms ease,
    background-color 160ms ease;
}

.ss-global-careers-page .ss-careers-openings__card:hover {
  border-color: color-mix(in srgb, var(--ss-text, #f8fafc) 42%, transparent);
  background: color-mix(in srgb, var(--ss-text, #f8fafc) 4%, transparent);
}

.ss-global-careers-page .ss-careers-openings__card:focus-visible {
  outline: 2px solid color-mix(in srgb, #38bdf8 80%, transparent);
  outline-offset: 3px;
}

.ss-global-careers-page .ss-careers-openings__copy {
  min-width: 0;
  flex: 1 1 auto;
}

.ss-global-careers-page .ss-careers-openings__job-title {
  margin: 0;
  font-size: clamp(1.125rem, 2vw, 1.5rem);
  font-weight: 400;
  letter-spacing: -0.015em;
  line-height: 1.25;
  color: var(--ss-text, #f8fafc);
}

.ss-global-careers-page .ss-careers-openings__meta {
  margin: 0.4rem 0 0;
  font-size: clamp(0.8125rem, 1.1vw, 0.9375rem);
  font-weight: 300;
  line-height: 1.45;
  color: color-mix(in srgb, var(--ss-text, #f8fafc) 62%, transparent);
}

.ss-global-careers-page .ss-careers-openings__action {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  gap: 0.45rem;
  font-size: clamp(0.875rem, 1.15vw, 1rem);
  font-weight: 300;
  line-height: 1.3;
  color: var(--ss-text, #f8fafc);
  white-space: nowrap;
}

.ss-global-careers-page .ss-careers-openings__arrow {
  font-size: 1.05em;
  line-height: 1;
  transition: transform 160ms ease;
}

.ss-global-careers-page .ss-careers-openings__card:hover .ss-careers-openings__arrow {
  transform: translateX(3px);
}

@media (max-width: 639px) {
  .ss-global-careers-page .ss-careers-openings__card {
    flex-direction: column;
    align-items: flex-start;
  }

  .ss-global-careers-page .ss-careers-openings__action {
    margin-top: 0.15rem;
  }
}

/* --- features/public-site/regions/global/styles/pages/contact.css --- */
/* Global Contact page */

.ss-global-contact-page {
  --ss-contact-section-space: clamp(1.5rem, 3vw, 2.5rem);
}

.ss-global-contact-page .ss-page-section.ss-contact-section {
  padding-block: var(--ss-contact-section-space);
}

.ss-global-contact-page .ss-contact-section--form {
  padding-block-start: clamp(2.25rem, 5.5vw, 3.75rem);
  padding-block-end: clamp(1rem, 2vw, 1.75rem);
}

.ss-global-contact-page .ss-contact-section--grid {
  padding-block: clamp(1.25rem, 2.5vw, 2rem);
}

.ss-global-contact-page .ss-contact-section--social {
  padding-block-start: clamp(1.5rem, 3vw, 2.25rem);
  padding-block-end: clamp(2.5rem, 5vw, 4rem);
}

.ss-global-contact-page .ss-contact-hero {
  display: flex;
  justify-content: center;
  text-align: center;
  margin-block-end: clamp(1rem, 2vw, 1.75rem);
  padding-top: 0;
  padding-bottom: 0;
}

.ss-global-contact-page .ss-contact-hero__stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 100%;
  gap: 0;
  text-align: center;
}

.ss-global-contact-page .ss-contact-hero .ss-home-hero-h1,
.ss-global-contact-page .ss-contact-hero .ss-page-title,
.ss-global-contact-page .ss-contact-hero h1 {
  margin-inline: auto;
  width: 100%;
  max-width: 100%;
  text-align: center;
}

.ss-theme-global .ss-global-contact-page .ss-contact-hero__tagline,
.ss-global-contact-page .ss-contact-hero__tagline {
  color: #ffffff;
  white-space: normal;
  text-align: center;
}

.ss-global-contact-page .ss-contact-info-grid__lead {
  margin-block: 0 clamp(1.75rem, 3.5vw, 2.75rem);
}

.ss-global-contact-page .ss-contact-intro__body {
  color: rgba(255, 255, 255, 0.72);
  font-weight: 300;
}

.ss-global-contact-page .ss-contact-grid {
  padding-block: 0;
}

.ss-global-contact-page .ss-contact-grid__heading + .ss-contact-grid__body {
  margin-top: clamp(0.85rem, 1.5vw, 1.15rem);
}

.ss-global-contact-page .ss-contact-grid__cta {
  margin-top: clamp(1.25rem, 2.5vw, 1.75rem);
  align-self: center;
  padding: 0.875rem 2.5rem;
  font-size: 0.9375rem;
  line-height: 1.25;
}

@media (min-width: 768px) {
  .ss-global-contact-page .ss-contact-grid__cta {
    padding: 1rem 2.75rem;
    font-size: 1rem;
  }

  /* Pyramid layout: center column higher than sides */
  .ss-global-contact-page .ss-contact-grid {
    align-items: flex-start;
  }

  .ss-global-contact-page .ss-contact-grid__cell--side .ss-contact-grid__column {
    padding-top: clamp(3.25rem, 5.5vw, 5.25rem);
  }

  .ss-global-contact-page .ss-contact-grid__cell--mid .ss-contact-grid__column,
  .ss-global-contact-page .ss-contact-grid__column--mid {
    padding-top: clamp(0.25rem, 0.8vw, 0.75rem);
  }

  .ss-global-contact-page .ss-contact-grid__divider {
    width: 1px;
    align-self: stretch;
    height: auto;
    min-height: 0;
    border-bottom: none;
    border-right: 1px solid rgba(255, 255, 255, 0.35);
  }
}

.ss-global-contact-page .ss-contact-social {
  padding-block-start: 0;
}

.ss-global-contact-page .ss-global-home-extra {
  padding-block: 1.5rem;
}

/* --- features/public-site/regions/global/styles/pages/home.css --- */
/* Global Home page — styles/pages/home.css (merged into public/css/global.css) */

.ss-global-home-page {
  display: flex;
  flex-direction: column;
}

.ss-global-page--home > .ss-global-home-extra + .ss-global-home-extra {
  margin-top: 0;
}

.ss-global-home-page .ss-logo-slider,
.ss-global-home-page .ss-home-stats,
.ss-global-home-page .ss-content-card-grid,
.ss-global-home-page .ss-cta-split-band,
.ss-global-home-page .ss-home-recent-projects {
  width: 100%;
}

/*
 * Home Projects — tighten heading → list spacing and keep View All pill
 * aligned under the project rows (Figma / main screenshot). Global only.
 */
.ss-global-home-page .ss-page-section:has(+ .ss-page-section .ss-home-recent-projects) {
  margin-block-end: 0;
  padding-block-end: clamp(1.25rem, 2.5vw, 2rem);
}

.ss-global-home-page .ss-page-section:has(.ss-home-recent-projects) {
  padding-block-start: clamp(1.25rem, 2.5vw, 2rem);
}

/*
 * View All pill — match Why Us SplitGridCta sizing
 * (px-10 py-3.5 text-sm → md:px-12 md:py-4 md:text-base).
 */
.ss-global-home-page .ss-home-recent-projects__view-all {
  margin-top: 1.75rem;
  padding: 0.875rem 2.5rem;
  font-size: 0.875rem;
  font-weight: 300;
  line-height: 1.2;
}

@media (max-width: 767px) {
  .ss-global-home-page .ss-split-four-grid__copy > a.ss-btn-pill {
    clip-path: inset(-1px round 9999px);
    -webkit-clip-path: inset(-1px round 9999px);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.7);
  }

  .ss-global-home-page .ss-split-four-grid__copy > a.ss-btn-pill:hover,
  .ss-global-home-page .ss-split-four-grid__copy > a.ss-btn-pill:active {
    box-shadow: inset 0 0 0 1px rgb(255, 255, 255);
  }

  .ss-global-home-page .ss-home-reveal.is-ready .ss-split-four-grid__copy > a {
    transform: none;
  }
}

@media (min-width: 768px) {
  .ss-global-home-page .ss-home-recent-projects__view-all {
    padding: 1rem 3rem;
    font-size: 1rem;
  }
}

/*
 * Why Us feature cards — icon above title (left-aligned), matching main homepage
 * Services/feature-grid card stacking. Scoped to Global home only.
 */
.ss-global-home-page .ss-split-four-grid__icon-card {
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  padding: clamp(1.75rem, 3vw, 2.25rem) clamp(1.5rem, 2.75vw, 2rem);
}

.ss-global-home-page .ss-split-four-grid__icon-card .ss-split-four-grid__icon {
  margin: 0 0 1.25rem;
  flex-shrink: 0;
}

.ss-global-home-page .ss-split-four-grid__icon-card-text {
  width: 100%;
}

.ss-global-home-page .ss-split-four-grid__card-title {
  font-size: clamp(1.3125rem, 1.2rem + 0.4vw, 1.625rem);
}

.ss-global-home-page .ss-split-four-grid__card-body {
  font-size: clamp(0.9375rem, 0.9rem + 0.15vw, 1.03125rem);
}

/*
 * Lighter card titles + Learn more CTAs — premium, refined weight.
 * Scoped to Global home only; leaves shared public.css / AU untouched.
 */
.ss-global-home-page :is(
  h3,
  .ss-feature-grid-card__title,
  .ss-feature-grid-glow-card .ss-feature-grid-card__title,
  .ss-split-four-grid__card-title,
  .ss-home-products__card-name
) {
  font-weight: 300;
}

.ss-global-home-page .ss-feature-grid-card__cta {
  font-weight: 300;
}

/* Home Products — layout/content; glass shell from FeatureGridGlowingCard. */
.ss-global-home-page .ss-home-products .ss-home-products__carousel {
  --ss-home-products-gap: clamp(1.25rem, 2.5vw, 1.75rem);
  --ss-home-products-visible: 1.15;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  margin-top: clamp(2rem, 4vw, 3rem);
  width: 100%;
}

@media (min-width: 768px) {
  .ss-global-home-page .ss-home-products .ss-home-products__carousel {
    --ss-home-products-visible: 2;
    grid-template-columns: auto minmax(0, 1fr) auto;
    column-gap: 0.875rem;
  }
}

@media (min-width: 1024px) {
  .ss-global-home-page .ss-home-products .ss-home-products__carousel {
    --ss-home-products-visible: 2.5;
    column-gap: 1rem;
  }
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-viewport {
  position: relative;
  grid-column: 1;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  cursor: grab;
  touch-action: pan-y;
  outline: none;
  container-type: inline-size;
  container-name: home-products-carousel;
}

@media (min-width: 768px) {
  .ss-global-home-page .ss-home-products .ss-home-products__carousel-viewport {
    grid-column: 2;
  }
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-viewport:focus-visible {
  outline: 2px solid rgba(56, 189, 248, 0.85);
  outline-offset: 4px;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-viewport:active {
  cursor: grabbing;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-track {
  display: flex;
  flex-flow: row nowrap;
  align-items: stretch;
  width: max-content;
  will-change: transform;
  backface-visibility: hidden;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-segment {
  display: flex;
  flex-flow: row nowrap;
  align-items: stretch;
  gap: var(--ss-home-products-gap);
  padding-inline-end: var(--ss-home-products-gap);
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-slide {
  flex: 0 0
    calc(
      (100cqi - (var(--ss-home-products-visible) - 1) * var(--ss-home-products-gap)) /
        var(--ss-home-products-visible)
    );
  width: calc(
    (100cqi - (var(--ss-home-products-visible) - 1) * var(--ss-home-products-gap)) /
      var(--ss-home-products-visible)
  );
  min-width: 0;
  height: auto;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-nav {
  display: none;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 9999px;
  background: rgba(8, 18, 36, 0.55);
  color: rgba(255, 255, 255, 0.92);
  cursor: pointer;
  transition:
    background 160ms ease,
    border-color 160ms ease,
    color 160ms ease;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-nav--prev {
  grid-column: 1;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-nav--next {
  grid-column: 3;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-nav:hover {
  background: rgba(12, 28, 52, 0.78);
  border-color: rgba(255, 255, 255, 0.32);
  color: #fff;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-nav:focus-visible {
  outline: 2px solid rgba(56, 189, 248, 0.85);
  outline-offset: 3px;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel-nav-icon {
  display: block;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .ss-global-home-page .ss-home-products .ss-home-products__carousel-nav {
    display: inline-flex;
  }
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel--reduced .ss-home-products__carousel-viewport {
  overflow-x: auto;
  overflow-y: hidden;
  cursor: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  overscroll-behavior-x: contain;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel--reduced .ss-home-products__carousel-track {
  will-change: auto;
  transform: none !important;
}

.ss-global-home-page .ss-home-products .ss-home-products__carousel--reduced .ss-home-products__carousel-slide {
  scroll-snap-align: start;
}

@media (prefers-reduced-motion: reduce) {
  .ss-global-home-page .ss-home-products .ss-home-products__carousel-nav {
    transition: none;
  }
}

.ss-global-home-page .ss-home-products__card-shell {
  height: 100%;
  min-height: 0;
}

.ss-global-home-page .ss-home-products__card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex: 1 1 auto;
  min-height: 100%;
  height: 100%;
  width: 100%;
  padding: clamp(1.5rem, 2.75vw, 2rem);
  border: none;
  border-radius: 0;
  background: transparent;
}

.ss-global-home-page .ss-home-products .ss-feature-grid-glow-card .feature-grid-glow-card__inner {
  display: flex;
  flex-direction: column;
}

/* Reinforce glass blur on Global home (theme CSS is not LightningCSS-minified). */
.ss-global-home-page .feature-grid-glow-card__inner {
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}

.ss-global-home-page .ss-home-products__card-media {
  overflow: hidden;
  border-radius: 0.5rem;
  aspect-ratio: 16 / 10;
  background: rgba(255, 255, 255, 0.04);
}

.ss-global-home-page .ss-home-products__card-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ss-global-home-page .ss-home-products__card-img-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 2rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.35);
}

.ss-global-home-page .ss-home-products__card-body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1;
  padding-top: clamp(1.5rem, 2.75vw, 1.875rem);
  gap: 1rem;
}

.ss-global-home-page .ss-home-products__card-identity {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  min-width: 0;
  width: 100%;
}

.ss-global-home-page .ss-home-products__card-logo {
  flex-shrink: 0;
  width: clamp(2.5rem, 2.25rem + 0.5vw, 3rem);
  height: clamp(2.5rem, 2.25rem + 0.5vw, 3rem);
  object-fit: contain;
}

.ss-global-home-page .ss-home-products__card-name {
  margin: 0;
  min-width: 0;
  color: #fff;
  font-size: clamp(1.25rem, 1.1rem + 0.45vw, 1.5rem);
  font-weight: 300;
  letter-spacing: 0.04em;
  line-height: 1.2;
  text-decoration: none;
  text-transform: uppercase;
}

.ss-global-home-page .ss-home-products__card-name:hover {
  color: rgba(255, 255, 255, 0.9);
}

.ss-global-home-page .ss-home-products__card-desc {
  margin: 0;
  color: rgba(255, 255, 255, 0.85);
  font-size: clamp(0.9375rem, 0.9rem + 0.15vw, 1.03125rem);
  font-weight: 300;
  line-height: 1.65;
}

.ss-global-home-page .ss-home-products__card-cta {
  margin-top: auto;
  padding-top: 0.5rem;
}

/*
 * Global home scroll reveal — opacity + translate3d.
 * Hidden only when `.is-ready:not(.is-revealed)` so SSR / no-JS stays visible.
 * Scoped under `.ss-global-home-page` only.
 */
.ss-global-home-page .ss-home-reveal {
  --ss-reveal-duration: 750ms;
  --ss-reveal-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ss-reveal-y: 22px;
  --ss-reveal-head-delay: 0ms;
  --ss-reveal-body-delay: 100ms;
  --ss-reveal-items-base: 180ms;
  --ss-reveal-item-stagger: 70ms;
}

/* Apply unit styles to common section pieces (no shared block edits). */
.ss-global-home-page .ss-home-reveal.is-ready :is(
  section.w-full > header > :is(div, h2, p),
  .ss-home-products section.w-full > :is(div, h2, p),
  .ss-split-four-grid__badge,
  .ss-split-four-grid__title,
  .ss-split-four-grid__lead,
  .ss-split-four-grid__copy > a,
  .ss-split-four-grid__icon-card,
  section.w-full.text-center > :is(div, h2, p),
  section.w-full.text-left > :is(div, h2, p),
  .ss-home-recent-projects,
  .ss-home-stats__eyebrow,
  .ss-home-stats__header > h2,
  .ss-home-stats__sub,
  .ss-home-stats__cell,
  .ss-logo-slider > div:first-child,
  .ss-logo-slider > *:nth-child(2),
  .ss-cta-split-band__title,
  .ss-cta-split-band__body,
  .ss-cta-split-band__actions
) {
  transition:
    opacity var(--ss-reveal-duration) var(--ss-reveal-ease),
    transform var(--ss-reveal-duration) var(--ss-reveal-ease);
  transition-delay: var(--ss-reveal-head-delay);
  will-change: opacity, transform;
}

/* No filter on glass-card ancestors — CSS filter disables backdrop-filter on the inner. */
.ss-global-home-page .ss-home-reveal.is-ready :is(
  .grid > .h-full,
  .ss-home-products__carousel
) {
  transition:
    opacity var(--ss-reveal-duration) var(--ss-reveal-ease),
    transform var(--ss-reveal-duration) var(--ss-reveal-ease);
  transition-delay: var(--ss-reveal-head-delay);
  will-change: opacity, transform;
  filter: none;
}

.ss-global-home-page .ss-home-reveal.is-ready:not(.is-revealed) :is(
  section.w-full > header > :is(div, h2, p),
  .ss-home-products section.w-full > :is(div, h2, p),
  .ss-split-four-grid__badge,
  .ss-split-four-grid__title,
  .ss-split-four-grid__lead,
  .ss-split-four-grid__copy > a,
  .ss-split-four-grid__icon-card,
  section.w-full.text-center > :is(div, h2, p),
  section.w-full.text-left > :is(div, h2, p),
  .ss-home-recent-projects,
  .ss-home-stats__eyebrow,
  .ss-home-stats__header > h2,
  .ss-home-stats__sub,
  .ss-home-stats__cell,
  .ss-logo-slider > div:first-child,
  .ss-logo-slider > *:nth-child(2),
  .ss-cta-split-band__title,
  .ss-cta-split-band__body,
  .ss-cta-split-band__actions
) {
  opacity: 0;
  transform: translate3d(0, var(--ss-reveal-y), 0);
}

.ss-global-home-page .ss-home-reveal.is-ready:not(.is-revealed) :is(
  .grid > .h-full,
  .ss-home-products__carousel
) {
  opacity: 0;
  transform: translate3d(0, var(--ss-reveal-y), 0);
  filter: none;
}

.ss-global-home-page .ss-home-reveal.is-revealed :is(
  section.w-full > header > :is(div, h2, p),
  .ss-home-products section.w-full > :is(div, h2, p),
  .ss-split-four-grid__badge,
  .ss-split-four-grid__title,
  .ss-split-four-grid__lead,
  .ss-split-four-grid__copy > a,
  .ss-split-four-grid__icon-card,
  section.w-full.text-center > :is(div, h2, p),
  section.w-full.text-left > :is(div, h2, p),
  .ss-home-recent-projects,
  .ss-home-stats__eyebrow,
  .ss-home-stats__header > h2,
  .ss-home-stats__sub,
  .ss-home-stats__cell,
  .ss-logo-slider > div:first-child,
  .ss-logo-slider > *:nth-child(2),
  .ss-cta-split-band__title,
  .ss-cta-split-band__body,
  .ss-cta-split-band__actions
) {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  will-change: auto;
}

.ss-global-home-page .ss-home-reveal.is-revealed :is(
  .grid > .h-full,
  .ss-home-products__carousel
) {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  filter: none;
  will-change: auto;
}

/* Body / description after heading */
.ss-global-home-page .ss-home-reveal.is-ready :is(
  section.w-full > header > p,
  .ss-home-products section.w-full > p,
  section.w-full.text-center > p,
  section.w-full.text-left > p,
  .ss-split-four-grid__lead,
  .ss-home-stats__sub,
  .ss-cta-split-band__body
) {
  transition-delay: var(--ss-reveal-body-delay);
}

/* Why Us CTA after lead */
.ss-global-home-page .ss-home-reveal.is-ready .ss-split-four-grid__copy > a {
  transition-delay: calc(var(--ss-reveal-body-delay) + 60ms);
}

/* CTA button after body */
.ss-global-home-page .ss-home-reveal.is-ready .ss-cta-split-band__actions {
  transition-delay: calc(var(--ss-reveal-body-delay) + 80ms);
}

/* Partners marquee after title (second child of logo slider) */
.ss-global-home-page .ss-home-reveal.is-ready .ss-logo-slider > *:nth-child(2) {
  transition-delay: var(--ss-reveal-items-base);
}

.ss-global-home-page .ss-home-reveal.is-ready .ss-home-products__carousel {
  transition-delay: var(--ss-reveal-items-base);
}

/* Staggered cards / cells */
.ss-global-home-page .ss-home-reveal.is-ready .grid > .h-full:nth-child(1),
.ss-global-home-page .ss-home-reveal.is-ready .ss-home-stats__cell:nth-child(1),
.ss-global-home-page .ss-home-reveal.is-ready .ss-split-four-grid__cards > .ss-split-four-grid__icon-card:nth-child(2) {
  transition-delay: var(--ss-reveal-items-base);
}
.ss-global-home-page .ss-home-reveal.is-ready .grid > .h-full:nth-child(2),
.ss-global-home-page .ss-home-reveal.is-ready .ss-home-stats__cell:nth-child(2),
.ss-global-home-page .ss-home-reveal.is-ready .ss-split-four-grid__cards > .ss-split-four-grid__icon-card:nth-child(3) {
  transition-delay: calc(var(--ss-reveal-items-base) + var(--ss-reveal-item-stagger));
}
.ss-global-home-page .ss-home-reveal.is-ready .grid > .h-full:nth-child(3),
.ss-global-home-page .ss-home-reveal.is-ready .ss-home-stats__cell:nth-child(3),
.ss-global-home-page .ss-home-reveal.is-ready .ss-split-four-grid__cards > .ss-split-four-grid__icon-card:nth-child(4) {
  transition-delay: calc(var(--ss-reveal-items-base) + (2 * var(--ss-reveal-item-stagger)));
}
.ss-global-home-page .ss-home-reveal.is-ready .grid > .h-full:nth-child(4),
.ss-global-home-page .ss-home-reveal.is-ready .ss-home-stats__cell:nth-child(4),
.ss-global-home-page .ss-home-reveal.is-ready .ss-split-four-grid__cards > .ss-split-four-grid__icon-card:nth-child(5) {
  transition-delay: calc(var(--ss-reveal-items-base) + (3 * var(--ss-reveal-item-stagger)));
}
.ss-global-home-page .ss-home-reveal.is-ready .grid > .h-full:nth-child(5),
.ss-global-home-page .ss-home-reveal.is-ready .ss-home-stats__cell:nth-child(5),
.ss-global-home-page .ss-home-reveal.is-ready .ss-split-four-grid__cards > .ss-split-four-grid__icon-card:nth-child(6) {
  transition-delay: calc(var(--ss-reveal-items-base) + (4 * var(--ss-reveal-item-stagger)));
}
.ss-global-home-page .ss-home-reveal.is-ready .grid > .h-full:nth-child(n + 6),
.ss-global-home-page .ss-home-reveal.is-ready .ss-home-stats__cell:nth-child(n + 6),
.ss-global-home-page .ss-home-reveal.is-ready .ss-split-four-grid__cards > .ss-split-four-grid__icon-card:nth-child(n + 7) {
  transition-delay: calc(var(--ss-reveal-items-base) + (5 * var(--ss-reveal-item-stagger)));
}

@media (prefers-reduced-motion: reduce) {
  .ss-global-home-page .ss-home-reveal.is-ready :is(
    section.w-full > header > :is(div, h2, p),
    .grid > .h-full,
    .ss-home-products section.w-full > :is(div, h2, p),
    .ss-home-products__carousel,
    .ss-split-four-grid__badge,
    .ss-split-four-grid__title,
    .ss-split-four-grid__lead,
    .ss-split-four-grid__copy > a,
    .ss-split-four-grid__icon-card,
    section.w-full.text-center > :is(div, h2, p),
    section.w-full.text-left > :is(div, h2, p),
    .ss-home-recent-projects,
    .ss-home-stats__eyebrow,
    .ss-home-stats__header > h2,
    .ss-home-stats__sub,
    .ss-home-stats__cell,
    .ss-logo-slider > div:first-child,
    .ss-logo-slider .relative.w-full,
    .ss-cta-split-band__title,
    .ss-cta-split-band__body,
    .ss-cta-split-band__actions
  ) {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
  }
}

/* --- features/public-site/regions/global/styles/pages/projects.css --- */
@media (max-width: 639px) {
  .ss-global-projects-page .ss-marketing-hero__ctas {
    width: min(100%, 20rem);
    margin-inline: auto;
    align-items: stretch;
  }

  .ss-global-projects-page .ss-marketing-hero__ctas > * {
    width: 100%;
  }

  .ss-global-projects-page .ss-marketing-hero__ctas .ss-btn-pill {
    width: 100%;
    justify-content: center;
    box-sizing: border-box;
  }
}

.ss-global-projects-page .ss-projects-archive {
  padding-block: clamp(2rem, 5vw, 3.5rem);
}

.ss-global-projects-page .ss-projects-archive__toolbar {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0.5rem;
  min-width: 0;
}

@media (min-width: 768px) {
  .ss-global-projects-page .ss-projects-archive__toolbar {
    min-height: 2.75rem;
    justify-content: center;
    gap: 1rem;
  }
}

.ss-global-projects-page .ss-projects-archive__filters {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0.1rem 0.15rem;
  min-width: 0;
  max-width: none;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  mask-image: linear-gradient(90deg, #000 0%, #000 calc(100% - 1.25rem), transparent 100%);
}

.ss-global-projects-page .ss-projects-archive__filters::-webkit-scrollbar {
  display: none;
}

@media (min-width: 768px) {
  .ss-global-projects-page .ss-projects-archive__filters {
    flex: 0 1 auto;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.15rem 0.35rem;
    max-width: min(100%, 42rem);
    overflow: visible;
    mask-image: none;
  }
}

.ss-global-projects-page .ss-projects-archive__filter {
  appearance: none;
  flex: 0 0 auto;
  border: 0;
  background: transparent;
  padding: 0.4rem 0.65rem;
  font-size: 0.875rem;
  line-height: 1.25;
  color: rgba(255, 255, 255, 0.55);
  cursor: pointer;
  white-space: nowrap;
  transition: color 0.2s ease;
}

@media (min-width: 768px) {
  .ss-global-projects-page .ss-projects-archive__filter {
    padding: 0.4rem 0.75rem;
  }
}

.ss-global-projects-page .ss-projects-archive__filter:hover {
  color: rgba(255, 255, 255, 0.9);
}

.ss-global-projects-page .ss-projects-archive__filter.is-active {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 0.35em;
  text-decoration-thickness: 1px;
}

.ss-global-projects-page .ss-projects-archive__search {
  display: flex;
  flex: 0 0 auto;
  justify-content: flex-end;
  align-items: center;
  width: auto;
  z-index: 2;
}

@media (min-width: 768px) {
  .ss-global-projects-page .ss-projects-archive__search {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
}

@media (max-width: 767px) {
  .ss-global-projects-page .ss-projects-archive__toolbar:has(.ss-projects-archive__search-panel) {
    flex-wrap: wrap;
  }

  .ss-global-projects-page .ss-projects-archive__toolbar:has(.ss-projects-archive__search-panel)
    .ss-projects-archive__filters {
    display: none;
  }

  .ss-global-projects-page .ss-projects-archive__toolbar:has(.ss-projects-archive__search-panel)
    .ss-projects-archive__search {
    flex: 1 1 100%;
    width: 100%;
  }
}

.ss-global-projects-page .ss-projects-archive__search-panel {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: min(100%, 18rem);
}

@media (max-width: 767px) {
  .ss-global-projects-page .ss-projects-archive__search-panel {
    width: 100%;
  }
}

.ss-global-projects-page .ss-projects-archive__search-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  appearance: none;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  background: transparent;
  color: rgba(255, 255, 255, 0.75);
  cursor: pointer;
  transition: border-color 0.2s ease, color 0.2s ease;
}

.ss-global-projects-page .ss-projects-archive__search-btn:hover {
  border-color: rgba(255, 255, 255, 0.35);
  color: #fff;
}

.ss-global-projects-page .ss-projects-archive__search-btn svg {
  width: 1.15rem;
  height: 1.15rem;
}

.ss-global-projects-page .ss-projects-archive__search-input {
  height: 2.5rem;
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 1rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
  background: transparent;
  color: #fff;
  font-size: 0.875rem;
  outline: none;
}

.ss-global-projects-page .ss-projects-archive__search-input::placeholder {
  color: rgba(255, 255, 255, 0.4);
}

.ss-global-projects-page .ss-projects-archive__search-input:focus {
  border-color: rgba(255, 255, 255, 0.4);
}

.ss-global-projects-page .ss-projects-archive__search-close {
  appearance: none;
  border: 0;
  background: transparent;
  padding: 0.25rem 0.35rem;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.55);
  cursor: pointer;
  white-space: nowrap;
}

.ss-global-projects-page .ss-projects-archive__search-close:hover {
  color: #fff;
}

.ss-global-projects-page .ss-projects-archive__showing {
  margin: 0.75rem 0 0;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.45);
  text-align: center;
}

.ss-global-projects-page .ss-projects-archive__showing span {
  color: rgba(255, 255, 255, 0.8);
}

.ss-global-projects-page .ss-projects-archive__empty {
  margin: 3rem 0 0;
  text-align: center;
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.45);
}

.ss-global-projects-page .ss-projects-archive__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.25rem, 3vw, 2rem);
  margin: clamp(1.75rem, 4vw, 2.75rem) 0 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 640px) {
  .ss-global-projects-page .ss-projects-archive__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .ss-global-projects-page .ss-projects-archive__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.ss-global-projects-page .ss-projects-archive-card {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  color: inherit;
}

.ss-global-projects-page .ss-projects-archive-card__meta {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
  padding-inline: 0.1rem;
  color: inherit;
  text-decoration: none;
}

.ss-global-projects-page .ss-projects-archive-card__meta:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.55);
  outline-offset: 4px;
  border-radius: 0.35rem;
}

.ss-global-projects-page .ss-projects-archive-card__frame {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 0.85rem;
  background: transparent;
}

.ss-global-projects-page .ss-projects-archive-card__media-el {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;
  transition: transform 0.45s ease;
}

.ss-global-projects-page .ss-projects-archive-card__media-el--embed {
  pointer-events: auto;
}

.ss-global-projects-page .ss-projects-archive-card:hover .ss-projects-archive-card__media-el:not(.ss-projects-archive-card__media-el--embed) {
  transform: scale(1.02);
}

.ss-global-projects-page .ss-projects-archive-card__media-placeholder {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.04);
}

.ss-global-projects-page .ss-projects-archive-card__title {
  font-size: 0.95rem;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: rgba(255, 255, 255, 0.92);
}

.ss-global-projects-page .ss-projects-archive-card__year {
  flex-shrink: 0;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.45);
}

.ss-global-projects-page .ss-projects-archive__pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem 0.65rem;
  margin-top: clamp(1.75rem, 4vw, 2.75rem);
}

.ss-global-projects-page .ss-projects-archive__page-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ss-global-projects-page .ss-projects-archive__page-btn {
  appearance: none;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: 0 0.75rem;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  background: transparent;
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.875rem;
  line-height: 1;
  cursor: pointer;
  transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

.ss-global-projects-page .ss-projects-archive__page-btn:hover:not(:disabled) {
  border-color: rgba(255, 255, 255, 0.4);
  color: #fff;
}

.ss-global-projects-page .ss-projects-archive__page-btn.is-active {
  border-color: rgba(255, 255, 255, 0.55);
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}

.ss-global-projects-page .ss-projects-archive__page-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.ss-global-projects-page .ss-projects-archive__page-btn:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.55);
  outline-offset: 3px;
}

.ss-global-projects-page .ss-projects-archive__page-btn--nav {
  min-width: 5.5rem;
}

.ss-global-projects-page .ss-projects-archive__page-ellipsis {
  min-width: 1.5rem;
  text-align: center;
  color: rgba(255, 255, 255, 0.4);
  font-size: 0.875rem;
  user-select: none;
}

.ss-global-project-single .ss-page-section--hero {
  padding-block-end: clamp(1.25rem, 3vw, 2.25rem);
}

.ss-global-project-single .ss-page-section--hero + .ss-page-section {
  padding-block-start: clamp(1rem, 2.5vw, 1.75rem);
}

.ss-global-project-single .ss-marketing-hero {
  padding-block-end: clamp(1rem, 2.5vw, 1.75rem);
}

.ss-global-project-single .ss-marketing-hero__title,
.ss-global-project-single h1.ss-home-hero-h1.ss-marketing-hero__title {
  font-weight: 300;
}

.ss-global-project-single .ss-marketing-hero__lead--wide {
  width: 100%;
  max-width: min(100%, 58rem);
  font-weight: 300;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.88);
}

.ss-global-project-single .ss-project-single-media-section,
.ss-global-project-single .ss-project-single-details-section {
  background: transparent;
}

.ss-global-project-single .ss-project-single-media-section {
  padding-block: clamp(0.75rem, 2vw, 1.5rem) clamp(2rem, 5vw, 3.5rem);
}

.ss-global-project-single .ss-project-single-media {
  display: flex;
  justify-content: center;
  width: 100%;
}

.ss-global-project-single .ss-project-single-media__laptop {
  position: relative;
  width: min(100%, 72rem);
  margin-inline: auto;
  aspect-ratio: 693 / 387;
  overflow: hidden;
  filter: drop-shadow(0 28px 40px rgba(0, 0, 0, 0.45));
}

.ss-global-project-single .ss-project-single-media__frame {
  position: absolute;
  left: -23.2%;
  top: -49.35%;
  width: 147.55%;
  height: 187.58%;
  max-width: none;
  pointer-events: none;
  user-select: none;
}

.ss-global-project-single .ss-project-single-media__screen {
  position: absolute;
  left: 10.09%;
  top: 2.33%;
  width: 80.26%;
  height: 91.46%;
  z-index: 1;
  overflow: hidden;
  border-radius: 0.45%;
  background: #050508;
}

.ss-global-project-single .ss-project-single-media__screen-el {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;
}

.ss-global-project-single .ss-project-single-media__screen-placeholder {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.04);
}

.ss-global-project-single .ss-project-single-details {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.75rem, 4vw, 2.5rem);
  align-items: start;
}

@media (min-width: 900px) {
  .ss-global-project-single .ss-project-single-details {
    grid-template-columns: minmax(0, 3fr) minmax(0, 1fr) minmax(0, 1fr);
    column-gap: clamp(1.75rem, 4vw, 3.25rem);
    row-gap: 0;
  }
}

.ss-global-project-single .ss-project-single-details__main {
  display: flex;
  flex-direction: column;
  gap: clamp(1.75rem, 3.5vw, 2.5rem);
  min-width: 0;
}

.ss-global-project-single .ss-project-single-details__heading {
  margin: 0 0 0.75rem;
  font-size: clamp(1.5rem, 1.25rem + 0.7vw, 1.875rem);
  font-weight: 300;
  letter-spacing: -0.015em;
  line-height: 1.25;
  color: #fff;
}

.ss-global-project-single .ss-project-single-details__copy {
  margin: 0;
  max-width: none;
  font-size: clamp(0.9375rem, 0.9rem + 0.15vw, 1.0625rem);
  font-weight: 300;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.82);
}

.ss-global-project-single .ss-project-single-details__tools {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.9rem 1.15rem;
  margin: 0.4rem 0 0;
  padding: 0;
  list-style: none;
}

.ss-global-project-single .ss-project-single-details__tool-icon {
  display: block;
  width: 2.35rem;
  height: 2.35rem;
  object-fit: contain;
}

.ss-global-project-single .ss-project-single-details__tool-fallback {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.35rem;
  height: 2.35rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 0.45rem;
  color: rgba(255, 255, 255, 0.8);
  font-size: 0.85rem;
}

.ss-global-project-single .ss-project-single-details__aside {
  display: flex;
  flex-direction: column;
  gap: 1.75rem;
  padding-top: 0.15rem;
  min-width: 0;
}

.ss-global-project-single .ss-project-single-details__meta-label {
  margin: 0 0 0.45rem;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.48);
}

.ss-global-project-single .ss-project-single-details__meta-value {
  margin: 0;
  font-size: clamp(1rem, 0.95rem + 0.2vw, 1.125rem);
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.35;
  color: #fff;
}

.ss-global-project-single .ss-timeline,
.ss-global-project-single .ss-timeline__title,
.ss-global-project-single .ss-timeline__index,
.ss-global-project-single .ss-timeline__step-title {
  color: #fff;
}

.ss-global-project-single .ss-timeline__lead,
.ss-global-project-single .ss-timeline__step-body {
  color: rgba(255, 255, 255, 0.8);
}

/* --- features/public-site/regions/global/styles/pages/services.css --- */
/* Global Services page — styles/pages/services.css */

.ss-global-services-page .ss-page-section {
  padding-block: 2.5rem;
}

@media (min-width: 768px) {
  .ss-global-services-page .ss-page-section {
    padding-block: 3.5rem;
  }
}

.ss-global-services-page .ss-global-home-extra {
  padding-block: 1.5rem;
}

.ss-global-services-page :is(
  .ss-feature-grid-card__title,
  .ss-feature-grid-glow-card .ss-feature-grid-card__title
) {
  font-weight: 300;
}

.ss-global-services-page .ss-feature-grid-card__cta {
  font-weight: 300;
}

/* --- features/public-site/regions/global/styles/pages/team.css --- */
/* Global Team page — styles/pages/team.css */

.ss-global-team-page .ss-team-archive {
  padding-block: clamp(2.5rem, 6vw, 4.5rem);
}

.ss-global-team-page .ss-team-archive__inner {
  width: 100%;
}

.ss-global-team-page .ss-team-archive__title {
  margin: 0 0 clamp(1.75rem, 4vw, 2.75rem);
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 300;
  letter-spacing: -0.02em;
  color: var(--ss-text, #f8fafc);
}

.ss-global-team-page .ss-team-archive__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1rem, 2vw, 1.5rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 640px) {
  .ss-global-team-page .ss-team-archive__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .ss-global-team-page .ss-team-archive__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.ss-global-team-page .ss-team-archive-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  min-height: 22rem;
  overflow: hidden;
  padding: 0.85rem 0.85rem 0.35rem;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 1rem;
  background: transparent;
}

.ss-global-team-page .ss-team-archive-card--button {
  color: inherit;
  text-align: inherit;
  cursor: pointer;
  appearance: none;
  transition: border-color 0.2s ease;
}

.ss-global-team-page .ss-team-archive-card--button:hover {
  border-color: rgba(255, 255, 255, 0.85);
}

.ss-global-team-page .ss-team-archive-card--button:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.55);
  outline-offset: 3px;
}

.ss-global-team-page .ss-team-archive-card__media {
  position: relative;
  flex: 1 1 auto;
  min-height: 14.5rem;
  overflow: hidden;
  margin-inline: 0.35rem;
  margin-top: 0.25rem;
}

.ss-global-team-page .ss-team-archive-card__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  transition: opacity 0.35s ease;
  transform: scale(0.92);
  transform-origin: center bottom;
}

.ss-global-team-page .ss-team-archive-card__img--default {
  z-index: 2;
}

.ss-global-team-page .ss-team-archive-card__img--hover {
  z-index: 1;
  opacity: 0;
}

.ss-global-team-page .ss-team-archive-card:hover .ss-team-archive-card__img--default,
.ss-global-team-page .ss-team-archive-card:focus-visible .ss-team-archive-card__img--default {
  opacity: 0;
}

.ss-global-team-page .ss-team-archive-card:hover .ss-team-archive-card__img--hover,
.ss-global-team-page .ss-team-archive-card:focus-visible .ss-team-archive-card__img--hover {
  opacity: 1;
}

.ss-global-team-page .ss-team-archive-card__placeholder {
  position: absolute;
  inset: 12% 18% 0;
  border-radius: 0.75rem 0.75rem 0 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
}

.ss-global-team-page .ss-team-archive-card__meta {
  flex: 0 0 auto;
  padding: 0.85rem 0.35rem 0.85rem;
  text-align: center;
}

.ss-global-team-page .ss-team-archive-card__name {
  margin: 0;
  font-size: clamp(1.05rem, 1.6vw, 1.25rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ss-text, #f8fafc);
}

.ss-global-team-page .ss-team-archive-card__role {
  margin: 0.35rem 0 0;
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--ss-text, #f8fafc) 72%, transparent);
}

.ss-global-team-page .ss-team-archive-card--join {
  position: relative;
  min-height: 22rem;
  overflow: hidden;
}

.ss-global-team-page .ss-team-archive-card__join-bg {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  pointer-events: none;
}

.ss-global-team-page .ss-team-archive-card__join-silhouette {
  width: min(92%, 14rem);
  height: auto;
  color: rgba(255, 255, 255, 0.2);
  opacity: 0.85;
  filter: blur(10px) saturate(0.85);
  transform: scale(1.15) translateY(6%);
}

.ss-global-team-page .ss-team-archive-card__join-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.1rem;
  padding: 1.75rem 1.15rem 1.5rem;
  text-align: center;
}

.ss-global-team-page .ss-team-archive-card__join-mark {
  display: block;
  margin: 0;
  font-size: clamp(2.5rem, 5.5vw, 3.75rem);
  font-weight: 700;
  line-height: 0.9;
  letter-spacing: -0.04em;
  color: #fff;
  text-shadow: 0 0 34px rgba(255, 255, 255, 0.35);
}

.ss-global-team-page .ss-team-archive-card__join-copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.15rem;
  margin: 0;
  max-width: 11.5rem;
  font-size: clamp(0.95rem, 1.5vw, 1.05rem);
  font-weight: 500;
  line-height: 1.35;
  color: #fff;
}

.ss-global-team-page .ss-team-archive-card__join-line {
  display: block;
}

.ss-global-team-page .ss-team-archive-card__join-cta {
  margin-top: 0.35rem;
  min-width: min(70%, 11rem);
}

.ss-team-archive-modal__backdrop {
  position: fixed;
  inset: 0;
  z-index: 300;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: max(0.75rem, env(safe-area-inset-top, 0px))
    max(0.75rem, env(safe-area-inset-right, 0px))
    max(0.75rem, env(safe-area-inset-bottom, 0px))
    max(0.75rem, env(safe-area-inset-left, 0px));
  background: rgba(0, 0, 0, 0.78);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}

.ss-team-archive-modal {
  position: relative;
  display: flex;
  flex-direction: column;
  width: min(100%, 36rem);
  max-height: min(92dvh, 44rem);
  overflow: hidden;
  border-radius: 1.75rem;
  background: #0a0a0a;
  color: #fff;
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.06),
    0 0 48px rgba(120, 160, 255, 0.12),
    0 28px 80px rgba(0, 0, 0, 0.55);
}

.ss-team-archive-modal__close {
  position: absolute;
  top: 0.85rem;
  right: 0.85rem;
  z-index: 10;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 999px;
  background: transparent;
  color: #fff;
  font-size: 1.35rem;
  line-height: 1;
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

.ss-team-archive-modal__close:hover {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.08);
}

.ss-team-archive-modal__scroll {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  padding: clamp(1.25rem, 4vw, 1.75rem) clamp(1.1rem, 4vw, 1.75rem)
    clamp(1.5rem, 4vw, 2.25rem);
  text-align: center;
}

.ss-team-archive-modal__image {
  display: flex;
  flex: 0 1 auto;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  max-height: min(48vw, 18.5rem);
  margin-inline: auto;
  overflow: hidden;
}

.ss-team-archive-modal__image--empty {
  min-height: 8rem;
  max-height: 10rem;
  border-radius: 1rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
}

.ss-team-archive-modal__image img {
  display: block;
  width: auto;
  max-width: 100%;
  height: 100%;
  max-height: min(48vw, 18.5rem);
  object-fit: contain;
  object-position: center bottom;
}

.ss-team-archive-modal__content {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: center;
  margin-top: clamp(1rem, 3vw, 1.35rem);
}

.ss-team-archive-modal__name {
  margin: 0;
  max-width: 100%;
  font-size: clamp(1.25rem, 3.2vw, 1.75rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.15;
  color: #fff;
  word-break: break-word;
}

.ss-team-archive-modal__role {
  margin: 0.45rem 0 0;
  font-size: clamp(0.85rem, 2.8vw, 0.98rem);
  font-weight: 400;
  color: rgba(255, 255, 255, 0.58);
}

.ss-team-archive-modal__social {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1.1rem;
  margin-top: 1rem;
}

.ss-team-archive-modal__social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  transition: opacity 0.2s ease;
}

.ss-team-archive-modal__social-link:hover {
  opacity: 0.75;
}

.ss-team-archive-modal__bio {
  margin: 1.15rem 0 0;
  max-width: 26rem;
  width: 100%;
  font-size: clamp(0.85rem, 2.8vw, 0.95rem);
  font-weight: 300;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.9);
  text-align: center;
  text-wrap: pretty;
}

.ss-team-archive-modal__bio :is(p, ul, ol) {
  margin: 0;
}

.ss-team-archive-modal__bio :is(p + p, ul + p, ol + p) {
  margin-top: 0.75rem;
}

@media (min-width: 480px) {
  .ss-team-archive-modal {
    width: min(100%, 38rem);
  }

  .ss-team-archive-modal__image,
  .ss-team-archive-modal__image img {
    max-height: 20rem;
  }
}

@media (min-width: 768px) {
  .ss-team-archive-modal {
    width: min(100%, 40rem);
  }
}

@media (max-height: 700px) {
  .ss-team-archive-modal {
    max-height: 94dvh;
  }

  .ss-team-archive-modal__image,
  .ss-team-archive-modal__image img {
    max-height: min(32vh, 12.5rem);
  }
}

@media (max-width: 379px) {
  .ss-team-archive-modal {
    width: 100%;
    border-radius: 1.25rem;
  }

  .ss-team-archive-modal__close {
    top: 0.65rem;
    right: 0.65rem;
  }
}
