@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400&family=Spline+Sans:wght@400;500;600;700&display=swap");
@font-face {
  font-family: "Satoshi";
  src: url("../fonts/web/satoshi-light.woff2") format("woff2"), url("../fonts/web/satoshi-light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Satoshi";
  src: url("../fonts/web/satoshi-lightitalic.woff2") format("woff2"), url("../fonts/web/satoshi-lightitalic.woff") format("woff");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Satoshi";
  src: url("../fonts/web/satoshi-regular.woff2") format("woff2"), url("../fonts/web/satoshi-regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Satoshi";
  src: url("../fonts/web/satoshi-italic.woff2") format("woff2"), url("../fonts/web/satoshi-italic.woff") format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Satoshi";
  src: url("../fonts/web/satoshi-medium.woff2") format("woff2"), url("../fonts/web/satoshi-medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Satoshi";
  src: url("../fonts/web/satoshi-mediumitalic.woff2") format("woff2"), url("../fonts/web/satoshi-mediumitalic.woff") format("woff");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Satoshi";
  src: url("../fonts/web/satoshi-bold.woff2") format("woff2"), url("../fonts/web/satoshi-bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Satoshi";
  src: url("../fonts/web/satoshi-bolditalic.woff2") format("woff2"), url("../fonts/web/satoshi-bolditalic.woff") format("woff");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Satoshi";
  src: url("../fonts/web/satoshi-black.woff2") format("woff2"), url("../fonts/web/satoshi-black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Satoshi";
  src: url("../fonts/web/satoshi-blackitalic.woff2") format("woff2"), url("../fonts/web/satoshi-blackitalic.woff") format("woff");
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}
* {
  font-family: var(--font-family) !important;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-rendering: optimizeLegibility;
  margin: 0;
  padding: 0;
  list-style: none;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  color: var(--text);
}

/* A11Y-01: the old reset removed outline from every element with no
   replacement, so keyboard users lost focus visibility site-wide. */
:focus {
  outline: none;
}

:focus-visible {
  outline: 3px solid #FF8000;
  outline-offset: 3px;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  font: inherit;
  color: inherit;
  background: none;
  border: none;
}

img {
  max-width: 100%;
  display: block;
}

html {
  font-size: 62.5%;
  scroll-padding-top: 9rem;
  overflow: visible;
}

body {
  max-width: 100%;
  overflow: visible;
  background: var(--cream, #fffdf6);
}

h1 {
  font-size: 11.6rem;
  line-height: 90%;
  font-weight: 900;
}

h2 {
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}

h3 {
  font-size: 3.4rem;
  line-height: 110%;
  font-weight: 700;
}

h4 {
  font-size: 2.2rem;
  line-height: 100%;
  font-weight: 700;
}

p {
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  margin-bottom: 2rem;
}
p:last-child {
  margin-bottom: 0;
}

strong {
  font-weight: 700;
}

.section-label {
  font-size: 1.12rem;
  font-weight: 700;
  letter-spacing: 0.3136rem;
  text-transform: uppercase;
  color: var(--orange) !important;
}

.text-orange,
[data-jump-tone=accent] {
  color: var(--orange) !important;
}

.text-white,
[data-jump-tone=white] {
  color: var(--white) !important;
}

.text-gray,
[data-jump-tone=muted] {
  color: var(--gray) !important;
}

[data-jump-tone=mutedDark] {
  color: var(--text-muted) !important;
}

[data-jump-tone=mutedAlt] {
  color: var(--text-muted-alt) !important;
}

[data-jump-tone=subtle] {
  color: var(--text-subtle) !important;
}

[data-jump-tone=success] {
  color: var(--green) !important;
}

:root {
  --gray: #2D353D;
  --orange: #FF8000;
  --orange-light: #F8AF5E;
  --white: #FFFFFF;
  --cream: #FFFDF6;
  --bg-dark: #181C22;
  --bg-blog: #1a1f25;
  --bg-dark-border: #2D2E35;
  --bg-dark-border-alt: #363D56;
  --bg-dark-card: #232A35;
  --bg-light: #F6F7F8;
  --border-gray-light: #EAEBEC;
  --text: #2D353D;
  --text-muted: #7A7D80;
  --text-muted-alt: #5C6570;
  --text-subtle: #A8ABAE;
  --green: #00C73C;
  --font-family: 'Satoshi', sans-serif;
}

.site-preloader {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: var(--cream);
  -webkit-transition: opacity 0.6s ease, visibility 0.6s ease;
  transition: opacity 0.6s ease, visibility 0.6s ease;
}
.site-preloader.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.site-preloader__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 2.4rem;
  width: min(28rem, 80vw);
}
.site-preloader__logo {
  width: 18rem;
  height: auto;
  -webkit-animation: preloader-logo 1.4s ease-in-out infinite;
  animation: preloader-logo 1.4s ease-in-out infinite;
}
.site-preloader__bar {
  width: 100%;
  height: 3px;
  border-radius: 999px;
  background: var(--border-gray-light);
  overflow: hidden;
}
.site-preloader__bar span {
  display: block;
  width: 40%;
  height: 100%;
  border-radius: inherit;
  background: var(--orange);
  -webkit-animation: preloader-bar 1.2s ease-in-out infinite;
  animation: preloader-bar 1.2s ease-in-out infinite;
}
.site-preloader__text {
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--text-muted) !important;
  -webkit-animation: preloader-text 1.6s ease-in-out infinite;
  animation: preloader-text 1.6s ease-in-out infinite;
}

body.is-loading {
  overflow: hidden;
  height: 100%;
  -ms-scroll-chaining: none;
  overscroll-behavior: none;
  -ms-touch-action: none;
  touch-action: none;
}

@-webkit-keyframes preloader-logo {
  0%, 100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    opacity: 0.72;
    -webkit-transform: translateY(-0.4rem);
    transform: translateY(-0.4rem);
  }
}

@keyframes preloader-logo {
  0%, 100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    opacity: 0.72;
    -webkit-transform: translateY(-0.4rem);
    transform: translateY(-0.4rem);
  }
}
@-webkit-keyframes preloader-bar {
  0% {
    -webkit-transform: translateX(-120%);
    transform: translateX(-120%);
  }
  100% {
    -webkit-transform: translateX(320%);
    transform: translateX(320%);
  }
}
@keyframes preloader-bar {
  0% {
    -webkit-transform: translateX(-120%);
    transform: translateX(-120%);
  }
  100% {
    -webkit-transform: translateX(320%);
    transform: translateX(320%);
  }
}
@-webkit-keyframes preloader-text {
  0%, 100% {
    opacity: 0.5;
  }
  50% {
    opacity: 1;
  }
}
@keyframes preloader-text {
  0%, 100% {
    opacity: 0.5;
  }
  50% {
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .site-preloader__logo,
  .site-preloader__bar span,
  .site-preloader__text {
    -webkit-animation: none;
    animation: none;
  }
  .site-preloader {
    -webkit-transition: none;
    transition: none;
  }
}
:root {
  /* Matches culture-edge / contact top band (~31/986 of design, ~3.1rem) */
  --jump-section-edge-height: 3.1rem;
}

.has-section-edge--dark {
  --section-surface: var(--bg-dark);
  --section-edge-fill: var(--cream);
}

.has-section-edge--blog {
  --section-surface: var(--bg-blog);
  --section-edge-fill: var(--cream);
}

.has-section-edge--orange {
  --section-surface: var(--orange);
  --section-edge-fill: var(--cream);
}

.has-section-edge-shell--orange {
  --section-surface: var(--orange);
  --section-edge-fill: var(--cream);
}

.has-section-edge-shell--orange-on-blog {
  --section-surface: var(--orange);
  --section-edge-fill: var(--bg-blog);
}

.has-section-edge,
.has-section-edge-shell {
  position: relative;
}

.has-section-edge > .contact__shell,
.has-section-edge > .container {
  position: relative;
  z-index: 1;
}

.has-section-edge-shell > .container,
.has-section-edge-shell > .blog-newsletter__inner {
  position: relative;
  z-index: 1;
}

.section-edge {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: var(--jump-section-edge-height);
  pointer-events: none;
  overflow: hidden;
}
.section-edge__fill {
  position: absolute;
  inset: 0;
  background: var(--section-edge-fill, var(--cream));
}
.section-edge__shape {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
}
.section-edge__shape path {
  fill: var(--section-surface, var(--bg-dark));
}

@media (max-width: 1024px) {
  :root {
    --jump-section-edge-height: 2.4rem;
  }
}
@media (max-width: 768px) {
  :root {
    --jump-section-edge-height: 2rem;
  }
}
/* Layouts */
.container {
  width: 100%;
  max-width: 121.6rem;
  margin: 0 auto;
  padding: 0 1.5rem;
}

.section-head {
  margin-bottom: 0;
}
.section-head .section-label {
  display: block;
  margin-bottom: 2.4rem;
}
.section-head__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3rem;
}
.section-head h2 {
  margin-bottom: 0;
  line-height: 110%;
  font-weight: 900;
}
.section-head h2 .text-orange {
  color: var(--orange) !important;
}
.section-head h2 .text-white {
  color: var(--white) !important;
}
.section-head h2 .text-gray {
  color: var(--gray) !important;
}
.section-head__desc, .section-head__aside {
  margin: 0;
  color: var(--text-muted);
}
.section-head.is-split .section-head__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.6rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}
.section-head.is-split .section-head__side {
  max-width: 25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 1.6rem;
  margin-left: auto;
  text-align: right;
}
.section-head.is-split .section-head__side .btn-secondary {
  background: var(--white);
}
.section-head.is-split .section-head__side p {
  font-size: 1.3rem;
  line-height: 160%;
  color: var(--text-muted);
}
.section-head.is-split .section-head__side p strong,
.section-head.is-split .section-head__side p .text-white {
  color: var(--white) !important;
}
.section-head.is-split .section-head__side p .text-gray {
  color: var(--gray) !important;
  font-weight: 500;
}
.section-head.is-inline .section-head__aside {
  font-size: 1.6rem;
  line-height: 160%;
  color: var(--text-muted);
}
.section-head.is-inline .section-head__aside strong,
.section-head.is-inline .section-head__aside .text-gray {
  color: var(--gray) !important;
}
.section-head.is-inline .section-head__aside .text-white {
  color: var(--white) !important;
}

.btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1.2rem;
  padding: 1.2rem 1.6rem;
  border-radius: 0.5rem;
  font-size: 1.22rem;
  font-weight: 700;
  letter-spacing: 0.1216rem;
  text-decoration: none;
  text-transform: uppercase;
  border: 1px solid transparent;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  white-space: nowrap;
  cursor: pointer;
}
.btn img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.btn-primary {
  background: var(--orange);
  /* A11Y-02: white-on-orange was ~2.5:1, below the 4.5:1 AA minimum. */
  color: var(--gray) !important;
  border-color: var(--orange);
}
.btn-primary:hover {
  background: #e67300;
  border-color: #e67300;
}

.btn-secondary {
  background: transparent;
  color: var(--gray) !important;
  border-color: var(--border-gray-light);
}
.btn-secondary:hover {
  border-color: var(--gray);
}

.btn-outline-dark {
  background: transparent;
  color: var(--white) !important;
  border-color: rgba(234, 235, 236, 0.1);
}
.btn-outline-dark:hover {
  border-color: rgba(234, 235, 236, 0.35);
}

.btn-ghost-light {
  background: linear-gradient(261.69deg, rgba(246, 246, 246, 0.2) 0%, rgba(246, 246, 246, 0.03) 100%);
  color: var(--gray) !important;
  border-color: var(--border-gray-light);
  backdrop-filter: blur(5px);
}

.tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1rem 1.6rem;
  border: 1px solid var(--bg-dark-border);
  border-radius: 0.5rem;
  font-size: 1.22rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
}
.tag--light {
  color: var(--text-muted) !important;
  border-color: var(--border-gray-light);
  background: linear-gradient(261.69deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.03) 100%);
  backdrop-filter: blur(5px);
}
.tag--outline {
  color: var(--gray) !important;
  border-color: var(--border-gray-light);
  background: linear-gradient(261.69deg, rgba(246, 246, 246, 0.2) 0%, rgba(246, 246, 246, 0.03) 100%);
  backdrop-filter: blur(5px);
}

.link-arrow {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
  font-size: 1.22rem;
  font-weight: 700;
  letter-spacing: 0.1216rem;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--gray) !important;
}
.link-arrow img {
  width: 2.4rem;
  height: 2.4rem;
}
.link-arrow--light {
  color: var(--white) !important;
}

.divider-line {
  width: 100%;
  height: 1px;
  background: var(--border-gray-light);
}

.progress-bar {
  width: 100%;
  height: 0.6rem;
  background: var(--border-gray-light);
  border-radius: 1rem;
  overflow: hidden;
}
.progress-bar span {
  display: block;
  height: 100%;
  background: var(--orange);
  border-radius: 1rem;
}

/* A11Y-04: off-screen until keyboard-focused, then jumps above everything. */
.skip-link {
  position: absolute;
  top: -4rem;
  left: 1rem;
  z-index: 9999;
  padding: 1rem 1.6rem;
  background: var(--orange);
  color: var(--gray) !important;
  font-size: 1.4rem;
  font-weight: 700;
  border-radius: 0 0 0.5rem 0.5rem;
  -webkit-transition: top 0.15s ease;
  transition: top 0.15s ease;
}
.skip-link:focus-visible {
  top: 0;
  outline: 3px solid #2D353D;
  outline-offset: -3px;
}

/* UX-05: prev/next + "N de TOTAL" + drag hint for the services, Empresa
   360º and methodology carousels — see jump_carousel_controls(). */
.carousel-controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 1.6rem;
  margin-top: 2.4rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.carousel-controls__hint {
  margin: 0;
  font-size: 1.3rem;
  font-weight: 500;
  color: var(--text-muted-alt);
}

.carousel-controls__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
}

.carousel-controls__status {
  min-width: 5.6rem;
  text-align: center;
  font-size: 1.3rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--text-muted-alt);
}

.carousel-arrow {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 4.4rem;
  height: 4.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  border: 1px solid var(--border-gray-light);
  border-radius: 999px;
  background: var(--white);
  cursor: pointer;
  -webkit-transition: border-color 0.2s ease, opacity 0.2s ease;
  transition: border-color 0.2s ease, opacity 0.2s ease;
}
.carousel-arrow:hover {
  border-color: var(--gray);
}
.carousel-arrow__icon {
  width: 1.6rem;
  height: 1.6rem;
}
.carousel-arrow__icon--prev {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.carousel-arrow__icon--next {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.carousel-arrow--disabled {
  opacity: 0.35;
  cursor: not-allowed;
  pointer-events: none;
}

/* Same component rendered on dark sections (Empresa 360º, metodologia). */
.solutions-dark .carousel-controls .carousel-controls__hint,
.solutions-dark .carousel-controls .carousel-controls__status,
.methodology .carousel-controls .carousel-controls__hint,
.methodology .carousel-controls .carousel-controls__status {
  color: var(--text-muted);
}
.solutions-dark .carousel-controls .carousel-arrow,
.methodology .carousel-controls .carousel-arrow {
  border-color: var(--bg-dark-border);
  background: var(--bg-dark-card);
}
.solutions-dark .carousel-controls .carousel-arrow:hover,
.methodology .carousel-controls .carousel-arrow:hover {
  border-color: var(--orange);
}
.solutions-dark .carousel-controls .carousel-arrow__icon,
.methodology .carousel-controls .carousel-arrow__icon {
  -webkit-filter: invert(1);
  filter: invert(1);
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--cream);
  border-bottom: 1px solid var(--border-gray-light);
  overflow: visible;
}
.site-header .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2.4rem;
  min-height: 9rem;
  padding-top: 2.1rem;
  padding-bottom: 2.1rem;
}
.site-header .header-logo {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.site-header .header-logo a {
  display: block;
}
.site-header .header-logo img {
  width: 13.4rem;
  height: auto;
}
.site-header .header-toggle {
  display: none;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.8rem;
  padding: 1rem 1.4rem;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  background: var(--cream);
  color: var(--gray) !important;
  font-size: 1.3rem;
  font-weight: 700;
  text-transform: uppercase;
  cursor: pointer;
}
.site-header .header-toggle img {
  width: 1.8rem;
  height: 1.8rem;
}
.site-header .header-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4rem;
  margin-left: auto;
}
.site-header .header-menu ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 3.2rem;
}
.site-header .header-menu a {
  color: var(--gray) !important;
  font-size: 1.3rem;
  font-weight: 700;
  text-transform: uppercase;
  text-decoration: none;
}
.site-header .header-menu a:hover {
  color: var(--orange) !important;
}
.site-header .header-menu .menu-badge {
  position: relative;
}
.site-header .header-menu .menu-badge sup {
  position: absolute;
  top: -0.6rem;
  right: -1rem;
  font-size: 1.3rem;
  font-weight: 700;
  color: var(--text-muted) !important;
}
.site-header .header-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.5rem;
}
.site-header .btn-lang {
  position: relative;
  padding: 1.2rem;
  gap: 0.6rem;
  overflow: visible;
  cursor: pointer;
}
.site-header .btn-lang > img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  pointer-events: none;
  position: relative;
  z-index: 2;
}
.site-header .btn-lang .chevron {
  width: 1.8rem;
  height: 1.8rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  pointer-events: none;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.site-header .btn-lang.is-open {
  border-color: var(--gray);
}
.site-header .btn-lang.is-open .chevron {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.site-header .lang-switcher__panel {
  position: absolute;
  top: calc(100% + 0.8rem);
  right: 0;
  z-index: 1001;
  display: none;
  min-width: 20rem;
  max-height: 28rem;
  overflow-x: hidden;
  overflow-y: auto;
  -ms-scroll-chaining: none;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.8rem;
  background: var(--white);
  -webkit-box-shadow: 0 1.6rem 4rem rgba(45, 53, 61, 0.12);
  box-shadow: 0 1.6rem 4rem rgba(45, 53, 61, 0.12);
  scrollbar-width: thin;
  scrollbar-color: var(--text-muted) transparent;
}
.site-header .lang-switcher__panel::-webkit-scrollbar {
  width: 0.6rem;
}
.site-header .lang-switcher__panel::-webkit-scrollbar-track {
  background: transparent;
}
.site-header .lang-switcher__panel::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: var(--text-muted);
}
.site-header .lang-switcher__panel.is-open, .site-header .lang-switcher__panel:not([hidden]) {
  display: block;
}
.site-header .lang-switcher__list {
  margin: 0;
  padding: 0.6rem;
  list-style: none;
}
.site-header .lang-switcher__item {
  margin: 0;
}
.site-header .lang-switcher__option {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 1rem;
  width: 100%;
  min-height: 4rem;
  padding: 1rem 1.2rem;
  border: 0;
  border-radius: 0.5rem;
  background: transparent;
  color: var(--gray) !important;
  font-family: var(--font-family);
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.3;
  text-align: left;
  text-transform: none;
  cursor: pointer;
}
.site-header .lang-switcher__option::after {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  background: transparent;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.site-header .lang-switcher__option:hover, .site-header .lang-switcher__option:focus-visible {
  background: var(--bg-light);
  color: var(--orange) !important;
  outline: none;
}
.site-header .lang-switcher__option.is-active {
  background: rgba(255, 128, 0, 0.08);
  color: var(--orange) !important;
}
.site-header .lang-switcher__option.is-active::after {
  background: var(--orange);
}
.site-header .gtranslate-wrapper .gtranslate_wrapper {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: visible;
  margin: 0;
  opacity: 0;
  pointer-events: none;
}
.site-header .gtranslate-wrapper select.gt_selector {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  opacity: 0;
  pointer-events: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
}
.site-header .gtranslate-wrapper .gt_float_switcher {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: transparent !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.site-header .gtranslate-wrapper .gt_float_switcher .gt-selected {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}
.site-header .gtranslate-wrapper .gt_float_switcher .gt_options {
  position: absolute;
  top: calc(100% + 0.8rem);
  right: 0;
  min-width: 18rem;
  max-height: 28rem;
  overflow-y: auto;
  z-index: 1000;
  background: var(--white);
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}
.site-header .gtranslate-wrapper .gt_float_switcher .gt_options.gt-open {
  opacity: 1 !important;
  -webkit-transform: none !important;
  transform: none !important;
  display: block !important;
}
.site-header .gtranslate-wrapper .gt_float_switcher .gt_options a {
  display: block;
  padding: 1rem 1.5rem;
  color: var(--gray) !important;
  font-size: 1.4rem;
  font-weight: 500;
  text-decoration: none;
  text-transform: none;
}
.site-header .gtranslate-wrapper .gt_float_switcher .gt_options a:hover {
  background: var(--bg-light);
  color: var(--orange) !important;
}
.site-header .gtranslate-wrapper img:not(.chevron):not([src*=globe]) {
  display: none;
}

main {
  background: var(--cream);
}

.hero {
  position: relative;
  min-height: 73.3rem;
  padding: 12rem 0 8rem;
  background: var(--cream) url("../images/hero-bg.jpg") center top/cover no-repeat;
}
.hero .hero-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 5.2rem;
}
.hero .hero-top .hero-meta {
  color: var(--gray) !important;
}
.hero .hero-title {
  max-width: 89.3rem;
  margin-bottom: 4.9rem;
}
.hero .hero-title h1 {
  color: var(--gray) !important;
}
.hero .hero-title h1 .text-orange {
  color: var(--orange) !important;
}
.hero .hero-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4.9rem;
  max-width: 100%;
}
.hero .hero-text {
  max-width: 46.6rem;
  color: var(--text-muted);
}
.hero .hero-text strong {
  color: var(--text-muted) !important;
}
.hero .hero-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1rem;
}
.hero .hero-social img {
  width: 13.6rem;
  height: 5.2rem;
}
.hero .hero-social p {
  max-width: 23.2rem;
  font-size: 1.4rem;
  margin: 0;
}
.hero .hero-social p strong {
  color: var(--orange) !important;
}
.hero .hero-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5rem;
  margin-top: 3.7rem;
}

.clients-marquee {
  padding: 2.4rem 0;
  overflow: hidden;
}
.clients-marquee .track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -webkit-animation: marquee 30s linear infinite;
  animation: marquee 30s linear infinite;
}
.clients-marquee .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4rem;
  padding-right: 4rem;
  white-space: nowrap;
  font-size: 2.48rem;
  font-weight: 700;
  letter-spacing: 0.1736rem;
  text-transform: uppercase;
  color: var(--text-muted-alt) !important;
}
.clients-marquee .item span {
  color: var(--orange) !important;
  font-size: 2.2rem;
  letter-spacing: 0.0728rem;
}

/* Reserve space for the cases section-edge so specialty labels stay fully visible */
.clients-marquee:has(+ .cases) {
  padding-bottom: calc(2.4rem + var(--jump-section-edge-height));
}

.clients-marquee + .cases {
  margin-top: calc(-1 * var(--jump-section-edge-height));
}

.cases + .services {
  margin-top: calc(-1 * var(--jump-section-edge-height));
}

.cases {
  position: relative;
  z-index: 1;
  padding: 12rem 0;
  background: transparent;
}
.cases__bg {
  position: absolute;
  inset: 0;
  left: 50%;
  z-index: 0;
  display: block;
  width: 192rem;
  max-width: none;
  height: 100%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  pointer-events: none;
  -o-object-fit: fill;
  object-fit: fill;
}
.cases .container {
  position: relative;
  z-index: 1;
}
.cases .section-head {
  margin-bottom: 3.2rem;
}
.cases .section-head__main {
  max-width: 60rem;
}
.cases .section-head__desc {
  max-width: 48.8rem;
}
.cases .section-head h2 {
  color: var(--white) !important;
}
.cases .section-head h2 .text-orange {
  color: var(--orange) !important;
}
.cases .case-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 3rem;
  padding: 3rem;
  margin-bottom: 3.2rem;
  border: 1px solid var(--bg-dark-border);
  border-radius: 0.5rem;
  background: var(--bg-dark);
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  .cases .case-card[data-case-cursor] {
    cursor: pointer;
  }
}
.cases .case-card:last-child {
  margin-bottom: 0;
}
.cases .case-card__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.cases .case-card__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.6rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.cases .case-card__metrics {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.2rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.cases .metric {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
  padding: 0 1.2rem;
}
.cases .metric img {
  width: 2rem;
  height: 2rem;
}
.cases .metric .value {
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.1216rem;
  text-transform: uppercase;
  color: var(--green) !important;
}
.cases .metric .label {
  font-size: 1.2rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
}
.cases .case-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3rem;
}
.cases .case-card__body h3 {
  max-width: 56.2rem;
  color: var(--orange) !important;
}
.cases .case-card__body p {
  max-width: 48rem;
  color: var(--text-muted);
  margin: 0;
}
.cases .case-card__details {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.3rem;
}
.cases .case-card__details h4 {
  font-size: 1.6rem;
  text-transform: uppercase;
  color: var(--white) !important;
  margin-bottom: 1.2rem;
}
.cases .case-card__details p {
  color: var(--text-muted);
  margin: 0;
}
.cases .case-card__details .stack-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.6rem;
}

/* Home cases V2 — Figma 1130:302 */
.cases--home {
  background: var(--bg-dark);
  padding: calc(12rem + var(--jump-section-edge-height)) 0 12rem;
}
.cases--home .section-head {
  margin-bottom: 3.2rem;
}
.cases--home .section-head__side p {
  color: #7a7d80 !important;
  font-size: 1.3rem;
  text-align: right;
}
.cases--home .section-head__side p .text-white,
.cases--home .section-head__side p [data-jump-tone=white] {
  color: var(--white) !important;
}
.cases--home .btn-outline-dark {
  border-color: rgba(234, 235, 236, 0.1);
  color: var(--white) !important;
}
.cases--home .btn-outline-dark:hover {
  border-color: rgba(234, 235, 236, 0.35);
}

.cases__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.6rem;
}

.case-card-home {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 48rem;
  height: 48rem;
  overflow: hidden;
  border: 1px solid #2d2e35;
  border-radius: 0.5rem;
  text-decoration: none;
  color: var(--white);
  background: #181c22;
}
.case-card-home__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.case-card-home__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center bottom;
  object-position: center bottom;
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
  transition: -webkit-transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1), -webkit-transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}
.case-card-home__shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: radial-gradient(120% 90% at 50% 0%, rgba(24, 28, 34, 0) 0%, rgba(24, 28, 34, 0.55) 55%, rgba(24, 28, 34, 0.95) 100%), -webkit-gradient(linear, left top, left bottom, from(rgba(24, 28, 34, 0.15)), to(rgba(24, 28, 34, 0.75)));
  background: radial-gradient(120% 90% at 50% 0%, rgba(24, 28, 34, 0) 0%, rgba(24, 28, 34, 0.55) 55%, rgba(24, 28, 34, 0.95) 100%), linear-gradient(180deg, rgba(24, 28, 34, 0.15) 0%, rgba(24, 28, 34, 0.75) 100%);
}
.case-card-home__shade::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0;
  background: radial-gradient(120% 100% at 50% 0%, rgba(24, 28, 34, 0.2) 0%, rgba(24, 28, 34, 0.82) 50%, rgba(24, 28, 34, 0.98) 100%), -webkit-gradient(linear, left top, left bottom, from(rgba(24, 28, 34, 0.35)), to(rgba(24, 28, 34, 0.92)));
  background: radial-gradient(120% 100% at 50% 0%, rgba(24, 28, 34, 0.2) 0%, rgba(24, 28, 34, 0.82) 50%, rgba(24, 28, 34, 0.98) 100%), linear-gradient(180deg, rgba(24, 28, 34, 0.35) 0%, rgba(24, 28, 34, 0.92) 100%);
  -webkit-transition: opacity 0.45s ease;
  transition: opacity 0.45s ease;
}
.case-card-home__inner {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-height: 100%;
  padding: 3rem;
  gap: 2rem;
}
.case-card-home__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.6rem;
  min-height: 1px;
}
.case-card-home__tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 1rem 1.6rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 0.5rem;
  background: rgba(24, 28, 34, 0.25);
  backdrop-filter: blur(5px);
  color: var(--white) !important;
  font-size: 1.22rem;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  white-space: nowrap;
  -webkit-transition: border-color 0.3s ease, background-color 0.3s ease;
  transition: border-color 0.3s ease, background-color 0.3s ease;
}
.case-card-home__tag--stack {
  padding: 0.9rem 1.6rem;
  font-size: 1rem;
}
.case-card-home__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 0;
  width: 100%;
  padding-bottom: 0.4rem;
}
.case-card-home__metric {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.6rem 1rem;
  margin-bottom: 1.2rem;
  color: var(--white);
}
.case-card-home__metric-icon {
  width: 2rem;
  height: 2rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -ms-flex-item-align: center;
  align-self: center;
}
.case-card-home__metric-value {
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--white) !important;
}
.case-card-home__metric-label {
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.82) !important;
}
.case-card-home__title {
  margin: 0;
  width: 100%;
  color: var(--white) !important;
  font-size: 3.4rem;
  font-weight: 700;
  line-height: 1.16;
  -webkit-transition: font-size 0.25s ease, -webkit-transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  transition: font-size 0.25s ease, -webkit-transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), font-size 0.25s ease;
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), font-size 0.25s ease, -webkit-transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}
.case-card-home.is-title-compact .case-card-home__title {
  font-size: 2.8rem;
}
.case-card-home.is-title-tight .case-card-home__title {
  font-size: 2.4rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
.case-card-home {
  /* Fluidez do hover: grid 0fr → 1fr (em vez de max-height travado) */
}
.case-card-home__reveal {
  display: grid;
  grid-template-rows: 0fr;
  width: 100%;
  margin-top: 0;
  opacity: 0;
  -webkit-transition: grid-template-rows 0.5s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.35s ease, margin-top 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  transition: grid-template-rows 0.5s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.35s ease, margin-top 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  transition: grid-template-rows 0.5s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.35s ease, margin-top 0.45s cubic-bezier(0.22, 1, 0.36, 1), -ms-grid-rows 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.case-card-home__reveal-inner {
  min-height: 0;
  overflow: hidden;
}
.case-card-home__reveal--stack {
  -webkit-transition-delay: 0.04s, 0.06s, 0.04s;
  transition-delay: 0.04s, 0.06s, 0.04s;
}
.case-card-home__excerpt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  width: 100%;
  margin: 0;
  overflow: hidden;
  color: var(--white) !important;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.6;
}
.case-card-home__stack {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  width: 100%;
  margin: 0;
  padding-top: 1.2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
}
.case-card-home__stack-label {
  margin: 0;
  color: var(--white) !important;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
}
.case-card-home__stack-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.6rem;
}
@media (hover: hover) and (pointer: fine) {
  .case-card-home:hover .case-card-home__media img, .case-card-home:focus-visible .case-card-home__media img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
  .case-card-home:hover .case-card-home__shade::after, .case-card-home:focus-visible .case-card-home__shade::after {
    opacity: 1;
  }
  .case-card-home:hover .case-card-home__title, .case-card-home:focus-visible .case-card-home__title {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  .case-card-home:hover .case-card-home__reveal, .case-card-home:focus-visible .case-card-home__reveal {
    grid-template-rows: 1fr;
    margin-top: 1.2rem;
    opacity: 1;
  }
}
.case-card-home {
  /* Touch devices have no hover: the resumo/stack must not depend on it
     to be seen (UX-04) — show them expanded by default, same end state
     the hover transition reaches on desktop. */
}
@media (hover: none) {
  .case-card-home .case-card-home__shade::after {
    opacity: 1;
  }
  .case-card-home .case-card-home__reveal {
    grid-template-rows: 1fr;
    margin-top: 1.2rem;
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .case-card-home__media img, .case-card-home__shade::after, .case-card-home__title, .case-card-home__reveal, .case-card-home__tag {
    -webkit-transition: none !important;
    transition: none !important;
  }
}

.cases__cta {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  min-height: 48rem;
  height: 48rem;
  padding: 3rem;
  overflow: hidden;
  border-radius: 0.5rem;
  background: #181c22;
  text-decoration: none;
  background-image: radial-gradient(circle at 20% 20%, rgba(255, 128, 0, 0.08), transparent 45%), linear-gradient(160deg, #1c222a 0%, #15191f 100%);
}
.cases__cta::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.3;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(14%, rgba(255, 255, 255, 0.04)), color-stop(14%, transparent)), -webkit-gradient(linear, left top, right top, color-stop(14%, rgba(255, 255, 255, 0.04)), color-stop(14%, transparent));
  background-image: linear-gradient(rgba(255, 255, 255, 0.04) 14%, transparent 14%), linear-gradient(90deg, rgba(255, 255, 255, 0.04) 14%, transparent 14%);
  background-size: 18px 18px;
  mix-blend-mode: plus-lighter;
  pointer-events: none;
}
.cases__cta:hover .cases__cta-icon {
  -webkit-transform: translate(4px, -4px);
  transform: translate(4px, -4px);
}

.cases__cta-icon {
  position: relative;
  z-index: 1;
  width: 3.6rem;
  height: 3.6rem;
  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
  transition: -webkit-transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), -webkit-transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.cases__cta-copy {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  width: 100%;
}

.cases__cta-title {
  margin: 0;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.16;
}
.cases__cta-title [data-jump-tone=accent],
.cases__cta-title .text-orange {
  color: var(--orange) !important;
}
.cases__cta-title [data-jump-tone=white],
.cases__cta-title .text-white {
  color: var(--white) !important;
}

.cases__cta-text {
  margin: 0;
  color: var(--white) !important;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.6;
}

.services {
  position: relative;
  z-index: 0;
  padding: 12rem 0 0;
}
.services > .container {
  max-width: 121.7rem;
  padding-left: 0;
  padding-right: 0;
}
.services .section-head {
  margin-bottom: 0;
}
.services .section-head__main {
  max-width: 70rem;
}
.services .section-head__desc {
  max-width: 48.8rem;
  font-weight: 500;
  color: var(--text-muted);
}
.services .section-head__desc strong {
  font-weight: 700;
  color: var(--text-muted);
}
.services .section-head__side .btn-secondary {
  background: var(--white);
  backdrop-filter: blur(5px);
}
.services .services-cards {
  margin-top: 3.2rem;
  padding-bottom: 0;
}
.services .services-cards__viewport {
  width: min(121.7rem, 100vw - 3rem);
  max-width: 121.7rem;
  margin-left: max(1.5rem, (100vw - 121.7rem) / 2);
  margin-right: auto;
  overflow: hidden;
}
.services .services-cards__swiper {
  overflow: visible;
}
.services .services-cards .swiper-slide {
  width: 39.5rem;
  height: auto;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.services .services-cards__swiper .swiper-wrapper {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.services .services-cards > .container {
  width: min(121.7rem, 100vw - 3rem);
  max-width: 121.7rem;
  margin-left: max(1.5rem, (100vw - 121.7rem) / 2);
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}
.services .services-progress {
  margin-top: 6rem;
}
.services .services-progress span {
  width: 17.1%;
  -webkit-transition: width 0.15s ease-out;
  transition: width 0.15s ease-out;
}
.services .service-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  width: 100%;
  height: auto;
  padding: 3.2rem;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  background: var(--cream);
}
.services .service-card.is-featured {
  border-color: var(--orange);
}
.services .service-card.is-featured .card-icon {
  border-color: var(--orange);
}
.services .service-card .card-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  min-height: 4.6rem;
}
.services .service-card .card-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 4.6rem;
  height: 4.6rem;
  border: 1px solid rgba(45, 53, 61, 0.12);
  border-radius: 1.6rem;
  background: rgba(255, 255, 255, 0.04);
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.services .service-card .card-icon img {
  width: 2.4rem;
  height: 2.4rem;
}
.services .service-card .badge {
  padding: 0.6rem 1.6rem;
  border-radius: 0.5rem;
  background: var(--orange);
  /* A11Y-02: white-on-orange was ~2.5:1, below the 4.5:1 AA minimum. */
  color: var(--gray) !important;
  font-size: 1rem;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  white-space: nowrap;
}
.services .service-card .card-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  width: 100%;
}
.services .service-card .card-body h3 {
  /* A11Y-03: was an h4 — kept the h4 type scale, only the
     semantic level changed (section h2 → card h3). */
  font-size: 2.2rem;
  font-weight: 700;
  color: var(--orange) !important;
  line-height: normal;
}
.services .service-card .card-body p {
  color: var(--text-muted);
  margin: 0;
  font-weight: 500;
}
.services .service-card .card-footer {
  color: var(--gray) !important;
}
.services .stats {
  padding: 12rem 0 0;
}
.services:has(.stats) {
  padding-bottom: 12rem;
}
.services:has(+ .stats) {
  padding-bottom: 0;
}

.stats {
  padding: 6rem 0 12rem;
}
.services + .stats {
  padding-top: 6rem;
}
.stats > .container {
  max-width: 121.7rem;
  padding-left: 0;
  padding-right: 0;
  margin-left: max(1.5rem, (100vw - 121.7rem) / 2);
  margin-right: auto;
}
.stats .stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  -webkit-column-gap: 2rem;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  width: 100%;
}
.stats .stat-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
  min-width: 0;
  min-height: 14rem;
}
.stats .stat-item .stat-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
}
.stats .stat-item .stat-head .number {
  font-size: 4.8rem;
  font-weight: 900;
  line-height: 110%;
  color: var(--orange) !important;
}
.stats .stat-item .stat-head .label {
  display: block;
  max-width: 12rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 120%;
  color: var(--orange) !important;
  white-space: normal;
}
.stats .stat-item .stat-desc {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.stats .stat-item .stat-desc strong {
  font-weight: 700;
  color: var(--gray) !important;
}

.office-banner {
  position: relative;
  width: 100%;
}
.office-banner__media {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  height: auto;
  overflow: hidden;
  background: #000;
}
.office-banner__poster {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: opacity 0.45s ease;
  transition: opacity 0.45s ease;
}
.office-banner iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  width: 100%;
  height: 100%;
  border: 0;
  opacity: 0;
  /* Crop YouTube top/bottom chrome (title overlay, logo) */
  -webkit-transform: translate(-50%, -50%) scale(1.2);
  transform: translate(-50%, -50%) scale(1.2);
  -webkit-transform-origin: center center;
  transform-origin: center center;
  -webkit-transition: opacity 0.45s ease;
  transition: opacity 0.45s ease;
  /* A11Y-05: this used to be pointer-events: none, which made the
     player's own controls (also re-enabled now) unclickable. */
}
.office-banner__media.is-ready .office-banner__poster {
  opacity: 0;
  pointer-events: none;
}
.office-banner__media.is-ready iframe {
  opacity: 1;
}
.office-banner img:not(.office-banner__poster) {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.office-banner__transcript {
  margin: 2rem 0 3rem;
}
.office-banner__transcript summary {
  padding: 1.2rem 1.6rem;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--gray);
  cursor: pointer;
}
.office-banner__transcript-body {
  padding: 1.6rem 0.4rem 0;
  color: var(--text-muted-alt);
  font-size: 1.4rem;
  line-height: 160%;
}

.solutions-dark {
  padding: 7rem 0 0;
  background: var(--bg-dark);
  overflow: visible;
}
.solutions-dark .solutions-dark__scroller {
  position: relative;
  -webkit-transition: none !important;
  transition: none !important;
}
.solutions-dark .solutions-dark__pin {
  position: sticky;
  top: 9rem;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: calc(100vh - 9rem);
  min-height: calc(100vh - 9rem);
  overflow: hidden;
  background: var(--bg-dark);
  -webkit-transition: none !important;
  transition: none !important;
}
.solutions-dark .solutions-dark__pin-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  max-width: 121.6rem;
  padding-left: 0;
  padding-right: 0;
}
.solutions-dark .solutions-dark__head {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  text-align: center;
  width: 100%;
  margin: 0 auto 8rem;
}
.solutions-dark .solutions-dark__head .section-label {
  display: block;
  margin-bottom: 3.4rem;
}
.solutions-dark .solutions-dark__head h2 {
  max-width: 87.3rem;
  margin-left: auto;
  margin-right: auto;
  line-height: 110%;
  font-weight: 900;
  color: var(--white) !important;
}
.solutions-dark .solutions-dark__head h2 .text-orange {
  color: var(--orange) !important;
}
.solutions-dark .solutions-dark__viewport {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}
.solutions-dark .solutions-dark__swiper {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  height: auto;
  -webkit-transition: none !important;
  transition: none !important;
}
.solutions-dark .solutions-dark__swiper .swiper-wrapper {
  height: auto !important;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-transition: none !important;
  transition: none !important;
  -webkit-transition-property: none !important;
  transition-property: none !important;
}
.solutions-dark .solutions-dark__swiper .swiper-slide {
  width: 121.6rem;
  height: auto !important;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-transition: none !important;
  transition: none !important;
}
.solutions-dark .solutions-progress {
  margin-top: 3.2rem;
}
.solutions-dark .solutions-progress span {
  width: 17.1%;
  -webkit-transition: width 0.1s linear;
  transition: width 0.1s linear;
}
.solutions-dark .solution-card {
  width: 100%;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  max-width: none;
  display: grid;
  grid-template-columns: 35.2rem 86.4rem;
  min-height: 44.2rem;
  height: 44.2rem;
  max-height: 44.2rem;
  overflow: hidden;
  -webkit-transition: none !important;
  transition: none !important;
}
.solutions-dark .solution-card .solution-card__media {
  overflow: hidden;
  height: 44.2rem;
  border-radius: 0.4rem 0 0 0.4rem;
}
.solutions-dark .solution-card .solution-card__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center top;
  object-position: center top;
}
.solutions-dark .solution-card .solution-card__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 3.8rem;
  height: 44.2rem;
  padding: 3.8rem;
  border: 1px solid var(--bg-dark-border-alt);
  border-left: 0;
  border-radius: 0 0.5rem 0.5rem 0;
  background: var(--bg-dark);
}
.solutions-dark .solution-card .solution-card__copy {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 41.6rem;
  flex: 0 0 41.6rem;
  max-width: 41.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
}
.solutions-dark .solution-card .solution-card__label {
  margin: 0;
  font-size: 1.27rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.104rem;
  text-transform: uppercase;
  color: var(--orange) !important;
}
.solutions-dark .solution-card .solution-card__desc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.solutions-dark .solution-card h3 {
  margin: 0;
  font-size: 3.6rem;
  line-height: 120%;
  font-weight: 700;
  color: var(--white) !important;
}
.solutions-dark .solution-card h3 .text-orange {
  color: var(--orange) !important;
}
.solutions-dark .solution-card .solution-card__text {
  margin: 0;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 160%;
  color: var(--text-muted);
}
.solutions-dark .solution-card .solution-bullets {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.4rem;
  flex: 0 0 33.4rem;
  max-width: 33.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.solutions-dark .solution-card .bullet {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0.6rem;
  padding: 2.1rem 2.5rem;
  border: 1px solid rgba(54, 61, 86, 0.5);
  border-radius: 0.5rem;
  background: rgba(54, 61, 86, 0.1);
}
.solutions-dark .solution-card .bullet h4 {
  margin: 0;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: normal;
  color: var(--orange) !important;
}
.solutions-dark .solution-card .bullet p {
  margin: 0;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 140%;
  color: var(--white) !important;
}

.methodology {
  padding: 9rem 0 24rem;
  background: var(--bg-dark);
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.methodology .section-head {
  margin-bottom: 8rem;
}
.methodology .section-head__content h2 {
  max-width: 61.7rem;
}
.methodology .section-head__aside {
  max-width: 42.5rem;
}
.methodology .section-head h2 {
  color: var(--orange) !important;
}
.methodology .section-head h2 .text-white {
  color: var(--white) !important;
}
.methodology .methodology-stages-shell {
  margin-bottom: 6rem;
  overflow: hidden;
}
.methodology .methodology-stages {
  width: 100%;
  overflow: hidden;
  cursor: -webkit-grab;
  cursor: grab;
}
.methodology .methodology-stages.swiper-grab {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}
.methodology .methodology-stages .swiper-slide {
  width: 41.575rem;
  height: auto;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.methodology .stage {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 27.6rem;
  margin-right: -1px;
  padding: 6rem 3rem;
  border: 1px solid var(--bg-dark-border);
  background: var(--bg-dark);
}
.swiper-slide:last-child .methodology .stage {
  margin-right: 0;
}
.methodology .stage .stage-label {
  margin-bottom: 1rem;
  font-size: 1.12rem;
  font-weight: 700;
  letter-spacing: 0.3136rem;
  text-transform: uppercase;
  color: var(--white) !important;
}
.methodology .stage h3 {
  margin: 0 0 1.6rem;
  font-size: 3.4rem;
  line-height: 110%;
  font-weight: 700;
  color: var(--orange) !important;
}
.methodology .stage p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.methodology .methodology-stages .swiper-slide:first-child .stage {
  border-radius: 0.5rem 0 0 0.5rem;
}
.methodology .methodology-stages .swiper-slide:last-child .stage {
  border-radius: 0 0.5rem 0.5rem 0;
}
.methodology .methodology-progress {
  margin-bottom: 6rem;
  background: var(--bg-dark-card);
}
.methodology .methodology-progress span {
  width: 17.1%;
  -webkit-transition: width 0.15s ease-out;
  transition: width 0.15s ease-out;
}
.methodology .methodology-extra {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.6rem;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  /* Device image sits at top: -7.8rem — keep clearance below carousel controls */
  margin-top: 10rem;
}
.methodology .methodology-extra__scopes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
  max-width: 44.8rem;
}
.methodology .scope-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 3rem;
  height: auto;
  min-height: 23.9rem;
  padding: 3rem;
  border: 1px solid var(--bg-dark-border);
  border-radius: 0.5rem;
  background: var(--bg-dark-card);
}
.methodology .scope-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
}
.methodology .scope-card h3 {
  margin: 0;
  font-size: 2.8rem;
  line-height: 110%;
  font-weight: 700;
  color: var(--orange) !important;
}
.methodology .scope-card p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.methodology .scope-card p strong {
  color: var(--white) !important;
}
.methodology .scope-card .link-arrow {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.methodology .methodology-visual {
  position: relative;
  width: 76.8rem;
  height: 49.4rem;
  border: 1px solid var(--bg-dark-border);
  border-radius: 0.5rem;
  background: var(--bg-dark-card);
}
.methodology .methodology-visual__glow-wrap {
  position: absolute;
  inset: 1px;
  border-radius: 0.4rem;
  overflow: hidden;
  mix-blend-mode: luminosity;
  pointer-events: none;
}
.methodology .methodology-visual__glow {
  position: absolute;
  left: -16rem;
  top: -27.2rem;
  width: 92.8rem;
  height: 108rem;
  -webkit-filter: blur(3rem);
  filter: blur(3rem);
  mix-blend-mode: multiply;
  opacity: 0.2;
  pointer-events: none;
}
.methodology .methodology-visual__glow img {
  width: 100%;
  height: 100%;
  max-width: none;
  -o-object-fit: cover;
  object-fit: cover;
}
.methodology .methodology-visual__device {
  position: absolute;
  left: 16.3rem;
  top: -7.8rem;
  z-index: 1;
  width: 52.7rem;
  max-width: none;
  height: auto;
  pointer-events: none;
}
.methodology .methodology-visual__label {
  position: absolute;
  top: 3rem;
  right: 3rem;
  z-index: 2;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 100%;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
  color: var(--white) !important;
}
.methodology .methodology-visual__copy {
  position: absolute;
  left: 3rem;
  right: 3rem;
  bottom: 3rem;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 3rem;
}
.methodology .methodology-visual__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
}
.methodology .methodology-visual__text h3 {
  margin: 0;
  font-size: 2.8rem;
  line-height: 110%;
  font-weight: 700;
  color: var(--orange) !important;
}
.methodology .methodology-visual__text p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.methodology .methodology-visual__text p strong {
  color: var(--white) !important;
}

.partners {
  position: relative;
  z-index: 2;
  margin-top: -12rem;
  padding: 0 max(1.5rem, (100% - 149.6rem) / 2) 12rem;
}
.partners .partners-shell {
  max-width: 149.6rem;
  margin: 0 auto;
  min-height: 54.8rem;
  padding: 12rem 14rem;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  background: var(--cream);
}
.partners .partners-shell__inner {
  width: 100%;
  max-width: 121.6rem;
  margin: 0 auto;
  overflow: hidden;
}
.partners .partners__head {
  margin-bottom: 6.5rem;
}
.partners .partners__head .section-label {
  margin-bottom: 2.4rem;
}
.partners .partners__head .section-head__content h2 {
  max-width: 59.1rem;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.partners .partners__head .section-head__aside {
  max-width: 45rem;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.partners .partners__head .section-head__aside strong,
.partners .partners__head .section-head__aside .text-gray {
  color: var(--gray) !important;
}
.partners .partners-carousel {
  width: 100%;
  max-width: 100%;
}
.partners .partners-carousel__viewport {
  overflow: hidden;
  width: 100%;
  max-width: 100%;
}
.partners .partners-slide {
  overflow: hidden;
  width: 100%;
}
.partners .partners-slide .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}
.partners .partners-slide .swiper-slide {
  width: 19.5rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  height: auto;
}
.partners .partner-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 19.5rem;
  height: 9rem;
  padding: 0 2.3rem;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  background: var(--cream);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.partners .partner-item img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 3.8rem;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
}

.partners + .contact {
  margin-top: calc(-1 * var(--jump-section-edge-height));
}

main:has(> .contact:last-child) + .site-footer {
  margin-top: calc(-1 * var(--jump-section-edge-height));
}

@media (max-width: 1024px) {
  .partners + .contact {
    margin-top: calc(-1 * var(--jump-section-edge-height));
  }
  main:has(> .contact:last-child) + .site-footer {
    margin-top: calc(-1 * var(--jump-section-edge-height));
  }
}
@media (max-width: 768px) {
  .partners + .contact {
    margin-top: calc(-1 * var(--jump-section-edge-height));
  }
  main:has(> .contact:last-child) + .site-footer {
    margin-top: calc(-1 * var(--jump-section-edge-height));
  }
}
.contact {
  position: relative;
  z-index: 1;
  scroll-margin-top: 10rem;
  padding: 0 3.2rem;
  background: transparent;
}
.contact__shell {
  position: relative;
  max-width: 185.6rem;
  margin: 0 auto;
  padding: 12rem 0;
}
.contact__bg {
  position: absolute;
  inset: 0;
  left: 50%;
  z-index: 0;
  display: block;
  width: 185.6rem;
  max-width: none;
  height: 100%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  pointer-events: none;
  -o-object-fit: fill;
  object-fit: fill;
}
.contact .container {
  position: relative;
  z-index: 1;
  max-width: 121.6rem;
  padding-left: 0;
  padding-right: 0;
}
.contact .contact__label {
  display: block;
  margin-bottom: 2.4rem;
  color: var(--white) !important;
}
.contact .contact-intro__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3.2rem;
  margin-bottom: 6rem;
}
.contact .contact-intro__head h2 {
  max-width: 59.1rem;
  margin-bottom: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
  color: var(--white) !important;
}
.contact .contact-intro__head h2 .text-gray {
  color: var(--gray) !important;
}
.contact .contact-intro__head h2 .text-white {
  color: var(--white) !important;
}
.contact .contact-intro__head > p {
  max-width: 43.4rem;
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white);
}
.contact .contact-intro__head > p strong,
.contact .contact-intro__head > p .text-gray {
  color: var(--gray) !important;
}
.contact .contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 3.2rem;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
.contact .contact-left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 3.2rem;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.contact .contact-testimonials {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}
.contact .testimonials-row {
  overflow: hidden;
  width: 100%;
  max-width: 100%;
}
.contact .testimonials-slide .swiper-slide {
  width: 33.6rem;
  height: auto;
}
.contact .testimonials-pagination {
  position: static;
  margin-top: 3.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.6rem;
}
.contact .testimonials-pagination .swiper-pagination-bullet {
  /* A11Y-04: WCAG 2.2 target size minimum is 24x24 CSS px —
     the dot was 12px tall even in its active/pill state. */
  width: 2.4rem;
  height: 2.4rem;
  margin: 0 !important;
  padding: 0.6rem 0;
  background: rgba(255, 255, 255, 0.35);
  background-clip: content-box;
  border-radius: 999px;
  opacity: 1;
  -webkit-transition: width 0.2s ease, background 0.2s ease;
  transition: width 0.2s ease, background 0.2s ease;
}
.contact .testimonials-pagination .swiper-pagination-bullet-active {
  width: 4.8rem;
  background: var(--gray);
  background-clip: content-box;
}
.contact .testimonial {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.5rem;
}
.contact .testimonial__user {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
}
.contact .testimonial__profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.6rem;
}
.contact .testimonial__profile img {
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 0.5rem;
  -o-object-fit: cover;
  object-fit: cover;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.contact .testimonial__profile strong {
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: normal;
  color: var(--gray) !important;
}
.contact .testimonial__profile span {
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: normal;
  color: var(--white) !important;
}
.contact .testimonial__divider {
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.2);
}
.contact .testimonial p {
  font-size: 1.4rem;
  line-height: 180%;
  font-weight: 500;
  color: var(--white) !important;
  margin: 0;
}
.contact {
  /* Figma 1347:528 — Form card 592×501, padding 32, radius 5 */
}
.contact .contact-form-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  max-width: 59.2rem;
  min-width: 0;
  min-height: 50.1rem;
  height: 100%;
  padding: 3.2rem;
  border-radius: 0.5rem;
  background: var(--white);
  overflow: hidden;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.contact .contact-form-wrap > div,
.contact .contact-form-wrap .wpcf7 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 100%;
  min-height: 0;
  height: 100%;
}
.contact .contact-form-wrap .wpcf7-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 100%;
  min-height: 0;
  height: 100%;
  margin: 0;
}
.contact .contact-form-wrap .screen-reader-response,
.contact .contact-form-wrap .wpcf7-spinner {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.contact .contact-form-wrap .wpcf7-response-output {
  margin: 1.2rem 0 0;
  padding: 0;
  border: 0;
  font-size: 1.3rem;
  line-height: 160%;
}
.contact .jump-mailchimp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  min-height: 0;
}
.contact .jump-mailchimp #mc_embed_signup {
  background: transparent !important;
  clear: none;
  width: 100% !important;
  max-width: none;
  font: inherit;
  color: var(--gray);
}
.contact .jump-mailchimp #mc-embedded-subscribe-form, .contact .jump-mailchimp__form {
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
}
.contact .jump-mailchimp #mc_embed_signup_scroll {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0;
  margin: 0 !important;
  padding: 0 !important;
}
.contact .jump-mailchimp__title {
  display: none;
}
.contact .jump-mailchimp__hint,
.contact .jump-mailchimp .indicates-required {
  display: none;
}
.contact .jump-mailchimp .asterisk {
  color: var(--orange) !important;
  font-weight: 700;
}
.contact .jump-mailchimp__row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.6rem;
}
.contact .jump-mailchimp__field,
.contact .jump-mailchimp .mc-field-group {
  width: 100%;
  margin-bottom: 1.6rem !important;
  padding-bottom: 0 !important;
}
.contact .jump-mailchimp label {
  display: block;
  margin: 0 0 0.6rem;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--text-muted) !important;
}
.contact .jump-mailchimp input[type=email],
.contact .jump-mailchimp input[type=text],
.contact .jump-mailchimp input[type=tel],
.contact .jump-mailchimp input.email,
.contact .jump-mailchimp input.text,
.contact .jump-mailchimp input.REQ_CSS {
  width: 100% !important;
  max-width: none !important;
  height: 4.4rem;
  margin: 0 !important;
  padding: 0 0 0.8rem !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border-gray-light) !important;
  border-radius: 0 !important;
  font-family: inherit !important;
  font-size: 1.6rem !important;
  font-weight: 500 !important;
  line-height: normal !important;
  color: var(--gray) !important;
  background: transparent !important;
  outline: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.contact .jump-mailchimp input[type=email]:focus,
.contact .jump-mailchimp input[type=text]:focus,
.contact .jump-mailchimp input[type=tel]:focus,
.contact .jump-mailchimp input.email:focus,
.contact .jump-mailchimp input.text:focus,
.contact .jump-mailchimp input.REQ_CSS:focus {
  border-bottom-color: var(--orange) !important;
}
.contact .jump-mailchimp input[type=email]::-webkit-input-placeholder, .contact .jump-mailchimp input[type=text]::-webkit-input-placeholder, .contact .jump-mailchimp input[type=tel]::-webkit-input-placeholder, .contact .jump-mailchimp input.email::-webkit-input-placeholder, .contact .jump-mailchimp input.text::-webkit-input-placeholder, .contact .jump-mailchimp input.REQ_CSS::-webkit-input-placeholder {
  color: var(--text-muted);
  opacity: 1;
}
.contact .jump-mailchimp input[type=email]::-moz-placeholder, .contact .jump-mailchimp input[type=text]::-moz-placeholder, .contact .jump-mailchimp input[type=tel]::-moz-placeholder, .contact .jump-mailchimp input.email::-moz-placeholder, .contact .jump-mailchimp input.text::-moz-placeholder, .contact .jump-mailchimp input.REQ_CSS::-moz-placeholder {
  color: var(--text-muted);
  opacity: 1;
}
.contact .jump-mailchimp input[type=email]:-ms-input-placeholder, .contact .jump-mailchimp input[type=text]:-ms-input-placeholder, .contact .jump-mailchimp input[type=tel]:-ms-input-placeholder, .contact .jump-mailchimp input.email:-ms-input-placeholder, .contact .jump-mailchimp input.text:-ms-input-placeholder, .contact .jump-mailchimp input.REQ_CSS:-ms-input-placeholder {
  color: var(--text-muted);
  opacity: 1;
}
.contact .jump-mailchimp input[type=email]::-ms-input-placeholder, .contact .jump-mailchimp input[type=text]::-ms-input-placeholder, .contact .jump-mailchimp input[type=tel]::-ms-input-placeholder, .contact .jump-mailchimp input.email::-ms-input-placeholder, .contact .jump-mailchimp input.text::-ms-input-placeholder, .contact .jump-mailchimp input.REQ_CSS::-ms-input-placeholder {
  color: var(--text-muted);
  opacity: 1;
}
.contact .jump-mailchimp input[type=email]::placeholder,
.contact .jump-mailchimp input[type=text]::placeholder,
.contact .jump-mailchimp input[type=tel]::placeholder,
.contact .jump-mailchimp input.email::placeholder,
.contact .jump-mailchimp input.text::placeholder,
.contact .jump-mailchimp input.REQ_CSS::placeholder {
  color: var(--text-muted);
  opacity: 1;
}
.contact .jump-mailchimp__responses {
  margin: 0 0 1.2rem;
}
.contact .jump-mailchimp__responses .response {
  margin: 0;
  padding: 1.2rem 1.4rem;
  border-radius: 0.5rem;
  font-size: 1.3rem;
  line-height: 150%;
}
.contact .jump-mailchimp #mce-error-response {
  background: rgba(255, 80, 0, 0.08);
  color: #b34700;
}
.contact .jump-mailchimp #mce-success-response {
  background: rgba(0, 199, 60, 0.08);
  color: #0a7a2f;
}
.contact .jump-mailchimp__footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2rem;
  margin-top: 0.8rem;
  padding-top: 1.2rem;
}
.contact .jump-mailchimp__footer p {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  max-width: 26.9rem;
  margin: 0;
  font-size: 1.3rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.contact .jump-mailchimp__footer p strong {
  font-weight: 700;
  color: var(--gray) !important;
}
.contact .jump-mailchimp__footer p a {
  font-weight: 700;
  color: var(--gray) !important;
  text-decoration: none;
}
.contact .jump-mailchimp__submit,
.contact .jump-mailchimp #mc-embedded-subscribe {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: auto !important;
  min-width: 16rem;
  height: 4.8rem !important;
  margin: 0 !important;
  padding: 1.2rem 1.6rem !important;
  border: 1px solid var(--orange) !important;
  border-radius: 0.4rem !important;
  background: var(--orange) !important;
  font-family: inherit !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  line-height: normal !important;
  letter-spacing: 0 !important;
  text-transform: lowercase;
  /* A11Y-02: white-on-orange was ~2.5:1, below the 4.5:1 AA minimum. */
  color: var(--gray) !important;
  cursor: pointer;
  -webkit-transition: background 0.2s ease, border-color 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease;
}
.contact .jump-mailchimp__submit:hover,
.contact .jump-mailchimp #mc-embedded-subscribe:hover {
  background: #e67300 !important;
  border-color: #e67300 !important;
}
.contact {
  /* Figma 1347:528 — fields gap 36; message area flexes; footer 269 + 195×48 */
}
.contact .contact-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  min-height: 0;
  height: 100%;
  gap: 0;
}
.contact .contact-form__fields {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 3.6rem;
  width: 100%;
  min-height: 0;
  margin: 0;
  padding: 0;
}
.contact .contact-form__label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.contact .contact-form .form-field {
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 100%;
}
.contact .contact-form .form-field .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
  height: 100%;
}
.contact .contact-form .form-field .wpcf7-not-valid-tip {
  position: static;
  display: block;
  margin-top: 0.8rem;
  font-size: 1.2rem;
  line-height: 1.2;
  color: #b34700;
}
.contact .contact-form .form-field input,
.contact .contact-form .form-field select,
.contact .contact-form .form-field textarea,
.contact .contact-form .form-field .wpcf7-form-control:not(.wpcf7-submit):not([type=submit]):not(button) {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  font-family: inherit;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: normal;
  color: var(--gray);
  background: transparent;
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
}
.contact .contact-form .form-field input::-webkit-input-placeholder, .contact .contact-form .form-field select::-webkit-input-placeholder, .contact .contact-form .form-field textarea::-webkit-input-placeholder, .contact .contact-form .form-field .wpcf7-form-control:not(.wpcf7-submit):not([type=submit]):not(button)::-webkit-input-placeholder {
  color: var(--text-muted);
  opacity: 1;
  font-weight: 500;
}
.contact .contact-form .form-field input::-moz-placeholder, .contact .contact-form .form-field select::-moz-placeholder, .contact .contact-form .form-field textarea::-moz-placeholder, .contact .contact-form .form-field .wpcf7-form-control:not(.wpcf7-submit):not([type=submit]):not(button)::-moz-placeholder {
  color: var(--text-muted);
  opacity: 1;
  font-weight: 500;
}
.contact .contact-form .form-field input:-ms-input-placeholder, .contact .contact-form .form-field select:-ms-input-placeholder, .contact .contact-form .form-field textarea:-ms-input-placeholder, .contact .contact-form .form-field .wpcf7-form-control:not(.wpcf7-submit):not([type=submit]):not(button):-ms-input-placeholder {
  color: var(--text-muted);
  opacity: 1;
  font-weight: 500;
}
.contact .contact-form .form-field input::-ms-input-placeholder, .contact .contact-form .form-field select::-ms-input-placeholder, .contact .contact-form .form-field textarea::-ms-input-placeholder, .contact .contact-form .form-field .wpcf7-form-control:not(.wpcf7-submit):not([type=submit]):not(button)::-ms-input-placeholder {
  color: var(--text-muted);
  opacity: 1;
  font-weight: 500;
}
.contact .contact-form .form-field input::placeholder,
.contact .contact-form .form-field select::placeholder,
.contact .contact-form .form-field textarea::placeholder,
.contact .contact-form .form-field .wpcf7-form-control:not(.wpcf7-submit):not([type=submit]):not(button)::placeholder {
  color: var(--text-muted);
  opacity: 1;
  font-weight: 500;
}
.contact .contact-form .form-field input:focus,
.contact .contact-form .form-field select:focus,
.contact .contact-form .form-field textarea:focus,
.contact .contact-form .form-field .wpcf7-form-control:not(.wpcf7-submit):not([type=submit]):not(button):focus {
  color: var(--gray);
}
.contact .contact-form .form-field input {
  height: 2.2rem;
}
.contact .contact-form .form-field select {
  height: 2.4rem;
  padding-right: 3.2rem;
  cursor: pointer;
  color: var(--text-muted);
}
.contact .contact-form .form-field select:focus, .contact .contact-form .form-field select:not(:invalid) {
  color: var(--gray);
}
.contact .contact-form .form-field select option {
  color: var(--gray);
}
.contact .contact-form .form-field select option[value=""] {
  color: var(--text-muted);
}
.contact .contact-form .form-field textarea {
  height: 2.2rem;
  resize: none;
  overflow: auto;
}
.contact .contact-form .form-field--select {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 2.4rem;
}
.contact .contact-form .form-field--select .form-field__chevron {
  position: absolute;
  top: 0;
  right: 0;
  width: 2.4rem;
  height: 2.4rem;
  pointer-events: none;
}
.contact .contact-form .form-field {
  /* Shorter message area so CF7 tips don't cover the legal footer */
}
.contact .contact-form .form-field--message {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 8rem;
  margin-bottom: 1.6rem;
}
.contact .contact-form .form-field--message .wpcf7-form-control-wrap {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-height: 8rem;
}
.contact .contact-form .form-field--message textarea {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 100%;
  height: 100%;
  min-height: 8rem;
}
.contact .contact-form .form-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2rem;
  width: 100%;
  min-height: 4.8rem;
  margin-top: 0;
}
.contact .contact-form .form-footer p {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  max-width: 26.9rem;
  margin: 0;
  font-size: 1.3rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.contact .contact-form .form-footer p strong,
.contact .contact-form .form-footer p a {
  font-weight: 700;
  color: var(--gray) !important;
  text-decoration: none;
}
.contact .contact-form__submit,
.contact .contact-form .btn-submit,
.contact .contact-form .wpcf7-submit,
.contact .contact-form input[type=submit],
.contact .contact-form button[type=submit] {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1.2rem;
  width: 19.5rem !important;
  min-width: 19.5rem;
  height: 4.8rem !important;
  margin: 0 0 0 auto !important;
  padding: 1.2rem 1.6rem !important;
  border: 1px solid var(--orange) !important;
  border-radius: 0.5rem !important;
  background: var(--orange) !important;
  backdrop-filter: blur(5px);
  font-family: inherit !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--white) !important;
  cursor: pointer;
  -webkit-transition: background 0.2s ease, border-color 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease;
}
.contact .contact-form__submit:hover,
.contact .contact-form .btn-submit:hover,
.contact .contact-form .wpcf7-submit:hover,
.contact .contact-form input[type=submit]:hover,
.contact .contact-form button[type=submit]:hover {
  background: #e67300 !important;
  border-color: #e67300 !important;
}
.contact .contact-form__submit img,
.contact .contact-form .btn-submit img,
.contact .contact-form .wpcf7-submit img,
.contact .contact-form input[type=submit] img,
.contact .contact-form button[type=submit] img {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.contact .contact-extra {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3.2rem;
  width: 100%;
  min-height: 15.5rem;
  padding: 3.2rem;
  border-radius: 0.5rem;
  background: var(--white);
}
.contact .contact-extra__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  width: 23.2rem;
  max-width: calc(50% - 1.6rem);
  min-width: 0;
}
.contact .contact-extra__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
}
.contact .contact-extra__head img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.contact .contact-extra__head strong {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 160%;
  color: var(--gray) !important;
}
.contact .contact-extra p {
  font-size: 1.3rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
  margin: 0;
}
.contact .contact-extra p strong {
  font-weight: 700;
  color: var(--gray) !important;
}

@-webkit-keyframes marquee {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

@keyframes marquee {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
.case-cursor {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200;
  width: 16rem;
  height: 16rem;
  border-radius: 50%;
  overflow: hidden;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  will-change: transform;
  -webkit-transform: translate3d(-9999px, -9999px, 0);
  transform: translate3d(-9999px, -9999px, 0);
  -webkit-transition: opacity 0.25s ease, visibility 0.25s ease;
  transition: opacity 0.25s ease, visibility 0.25s ease;
  isolation: isolate;
}
.case-cursor.is-visible {
  opacity: 1;
  visibility: visible;
  background: rgba(24, 28, 34, 0.22);
  backdrop-filter: blur(14px) saturate(140%);
}
.case-cursor.is-visible .case-cursor__inner {
  -webkit-animation: case-cursor-enter 0.4s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation: case-cursor-enter 0.4s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
.case-cursor.is-visible .case-cursor__text {
  -webkit-animation: case-cursor-text-spin 14s linear infinite;
  animation: case-cursor-text-spin 14s linear infinite;
}
.case-cursor.is-visible .case-cursor__star svg {
  -webkit-animation: case-cursor-star-spin 10s linear infinite;
  animation: case-cursor-star-spin 10s linear infinite;
}
.case-cursor__backdrop {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  z-index: 0;
  pointer-events: none;
}
.case-cursor__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.case-cursor__ring {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}
.case-cursor__text {
  transform-box: fill-box;
  -webkit-transform-origin: center;
  transform-origin: center;
}
.case-cursor__star {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 5rem;
  height: 5rem;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.case-cursor__star svg {
  display: block;
  width: 100%;
  height: 100%;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@-webkit-keyframes case-cursor-enter {
  from {
    opacity: 0;
    -webkit-transform: scale(0.88);
    transform: scale(0.88);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes case-cursor-enter {
  from {
    opacity: 0;
    -webkit-transform: scale(0.88);
    transform: scale(0.88);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes case-cursor-text-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes case-cursor-text-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes case-cursor-star-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}
@keyframes case-cursor-star-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .case-cursor.is-visible .case-cursor__inner,
  .case-cursor.is-visible .case-cursor__text,
  .case-cursor.is-visible .case-cursor__star svg {
    -webkit-animation: none;
    animation: none;
  }
  .case-cursor.is-visible .case-cursor__inner {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
/* Generic / legal pages */
.page-legal {
  padding: 8rem 0 10rem;
  background: var(--cream, #fffdf6);
}
.page-legal__container {
  max-width: 84rem;
}
.page-legal__header {
  margin-bottom: 3.2rem;
}
.page-legal__header h1 {
  margin: 0;
  font-size: clamp(3.2rem, 4vw, 4.8rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--gray);
}
.page-legal__content {
  font-size: 1.6rem;
  line-height: 1.65;
  color: var(--gray);
}
.page-legal__content h2,
.page-legal__content h3 {
  margin: 3.2rem 0 1.2rem;
  font-weight: 700;
  color: var(--gray);
}
.page-legal__content p,
.page-legal__content ul,
.page-legal__content ol,
.page-legal__content table {
  margin: 0 0 1.6rem;
}
.page-legal__content ul,
.page-legal__content ol {
  padding-left: 1.6rem;
}
.page-legal__content a {
  color: var(--orange);
}
.page-legal__content table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.4rem;
}
.page-legal__content th,
.page-legal__content td {
  border: 1px solid var(--border, #dfe3e6);
  padding: 1rem 1.2rem;
  vertical-align: top;
}
.page-legal__content figure {
  margin: 0 0 2rem;
  overflow-x: auto;
}

.page-case {
  background: var(--cream);
}

.page-cases-archive {
  background: var(--cream);
}
.page-cases-archive .site-footer {
  padding-top: 12rem;
}

.cases-hero {
  position: relative;
  z-index: 2;
  padding: 7rem 0 13.7rem;
}
.cases-hero__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
}
.cases-hero__body {
  display: grid;
  grid-template-columns: minmax(0, 69.4rem) minmax(0, 42rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
}
.cases-hero h1 {
  margin: 0;
  font-size: 6.3rem;
  line-height: 110%;
  font-weight: 900;
}
.cases-hero__intro {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.cases-hero__intro strong {
  color: var(--gray);
  font-weight: 700;
}

.cases-hero + .cases-archive {
  margin-top: calc(-1 * var(--jump-section-edge-height));
}

.cases-archive {
  position: relative;
  z-index: 1;
  padding: 7rem 0 12rem;
  background: var(--bg-dark);
}
.cases-archive .container {
  position: relative;
  z-index: 1;
}
.cases-archive .case-archive__filters {
  margin-bottom: 5rem;
}
.cases-archive .case-archive__filters .blog-articles__filter.is-disabled {
  pointer-events: none;
  opacity: 0.65;
}
.cases-archive .case-archive__content {
  position: relative;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}
.cases-archive .case-archive__content.is-loading {
  opacity: 0.45;
  pointer-events: none;
}
.cases-archive .case-archive__empty {
  margin: 0;
  color: rgba(255, 255, 255, 0.75);
  font-size: 1.6rem;
  line-height: 160%;
}
.cases-archive .case-archive__pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 5rem;
}
.cases-archive .case-archive__pagination .nav-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.8rem;
}
.cases-archive .case-archive__pagination .page-numbers {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 4rem;
  height: 4rem;
  padding: 0 1.2rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.5rem;
  background: transparent;
  color: var(--text-subtle) !important;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  -webkit-transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}
.cases-archive .case-archive__pagination .page-numbers:hover {
  color: var(--white) !important;
  border-color: rgba(255, 255, 255, 0.28);
}
.cases-archive .case-archive__pagination .page-numbers.current {
  color: var(--white) !important;
  border-color: var(--orange);
  background: rgba(255, 128, 0, 0.16);
}
.cases-archive .case-archive__pagination .page-numbers.prev, .cases-archive .case-archive__pagination .page-numbers.next {
  min-width: auto;
  padding: 0 1.6rem;
}
.cases-archive .case-archive__pagination .page-numbers.dots {
  border-color: transparent;
  min-width: auto;
  padding: 0 0.4rem;
}

.page-cases-archive .cases--archive {
  padding: 8rem 0 12rem;
  background: var(--bg-dark);
}

.case-hero {
  padding: 7rem 0 0;
}
.case-hero__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-bottom: 10.6rem;
}
.case-hero__body {
  display: grid;
  grid-template-columns: minmax(0, 69.6rem) minmax(0, 42rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
  margin-bottom: 9rem;
}
.case-hero h1 {
  font-size: 7.8rem;
  line-height: 110%;
  font-weight: 900;
  margin: 0;
}
.case-hero__intro {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.case-hero__intro strong {
  color: var(--gray);
}

.case-challenge {
  padding: 9rem 0;
}
.case-challenge .section-label {
  display: block;
  margin-bottom: 2.4rem;
}
.case-challenge__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3rem;
}
.case-challenge__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 3.2rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 59.3rem;
  flex: 0 1 59.3rem;
  max-width: 59.3rem;
}
.case-challenge h2 {
  margin: 0;
}
.case-challenge__desc {
  margin: 0;
  color: var(--text-muted);
}
.case-challenge__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.case-challenge__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 0.8rem;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.case-challenge__list li::before {
  content: "";
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 1.2rem;
  height: 1.2rem;
  margin-top: 0.5rem;
  border-radius: 50%;
  background: var(--orange);
}

.case-client-card {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 52rem;
  flex: 0 0 52rem;
  max-width: 52rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.7rem;
  padding: 3.2rem;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  background: var(--cream);
}
.case-client-card .section-label {
  margin-bottom: 0;
}
.case-client-card__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
}
.case-client-card__name {
  margin: 0;
  font-size: 3.2rem;
  line-height: 110%;
  font-weight: 700;
  color: var(--gray) !important;
}
.case-client-card__desc {
  margin: 0;
  font-size: 1.3rem;
  line-height: 160%;
  color: var(--text-muted);
}
.case-client-card__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.case-client-card__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2rem;
  padding: 1.2rem 0;
  border-bottom: 1px solid var(--border-gray-light);
  font-size: 1.3rem;
  line-height: 160%;
}
.case-client-card__row dt {
  margin: 0;
  font-weight: 500;
  color: var(--text-muted);
}
.case-client-card__row dd {
  margin: 0;
  font-weight: 500;
  color: var(--gray);
  text-align: right;
}
.case-client-card__stack {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
}
.case-client-card__stack > span {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 1.3rem;
  line-height: 160%;
  color: var(--text-muted);
}
.case-client-card__stack .stack-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  gap: 0.6rem;
  margin-left: auto;
}

/* Same stack as About: cream input → culture-edge.svg dark surface */
.case-challenge + .case-execution,
.case-hero + .case-execution {
  margin-top: calc(-1 * var(--jump-section-edge-height));
}

.case-execution {
  position: relative;
  z-index: 2;
  padding: calc(12rem + var(--jump-section-edge-height)) 0 12rem;
  background: var(--bg-dark);
  overflow: hidden;
}
.case-execution .container {
  position: relative;
  z-index: 1;
}
.case-execution__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 6rem;
}
.case-execution__head h2 {
  margin: 0;
  max-width: 59.1rem;
  line-height: 110%;
  font-weight: 900;
  color: var(--orange) !important;
}
.case-execution__head h2 .text-white {
  color: var(--white) !important;
}
.case-execution__intro {
  max-width: 54rem;
  margin: 0;
  font-size: 1.8rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.case-execution__tempos {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem;
  margin-bottom: 4rem;
}
.case-execution__footnote {
  max-width: 62rem;
  margin: 0;
  font-size: 1.5rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted-alt, var(--text-muted));
}

.case-tempo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
  width: 100%;
  height: 100%;
  padding: 3.2rem;
  border: 1px solid var(--bg-dark-border);
  border-radius: 0.5rem;
  background: var(--bg-dark);
}
.case-tempo__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
}
.case-tempo__index {
  font-size: 2.2rem;
  line-height: normal;
  font-weight: 700;
  color: var(--orange) !important;
}
.case-tempo__label {
  font-size: 1.22rem;
  line-height: normal;
  font-weight: 700;
  letter-spacing: 0.1216rem;
  text-transform: uppercase;
  color: var(--white) !important;
}
.case-tempo__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.case-tempo h3 {
  margin: 0;
  font-size: 2.2rem;
  line-height: 120%;
  font-weight: 700;
  color: var(--orange) !important;
}
.case-tempo p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}

.case-media {
  position: relative;
  overflow: hidden;
  border: 2px solid var(--border-gray-light);
  border-radius: 0.5rem;
  background: var(--border-gray-light);
}
.case-media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  -webkit-transition: -webkit-filter 0.5s ease, -webkit-transform 0.6s ease;
  transition: -webkit-filter 0.5s ease, -webkit-transform 0.6s ease;
  transition: filter 0.5s ease, transform 0.6s ease;
  transition: filter 0.5s ease, transform 0.6s ease, -webkit-filter 0.5s ease, -webkit-transform 0.6s ease;
}
@media (hover: hover) and (pointer: fine) {
  .case-media:hover img {
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
  }
}

.case-showcase {
  padding: 12rem 0;
  background: var(--cream);
}
.case-showcase__intro {
  display: grid;
  grid-template-columns: minmax(0, 38.4rem) minmax(0, 80rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-column-gap: 3.2rem;
  -moz-column-gap: 3.2rem;
  column-gap: 3.2rem;
  margin-bottom: 12rem;
}
.case-showcase__copy {
  -ms-flex-item-align: end;
  align-self: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  padding-bottom: 6.8rem;
}
.case-showcase__copy .section-label {
  margin-bottom: 1.2rem;
}
.case-showcase__copy h2 {
  margin: 0;
  font-size: 4.5rem;
  line-height: 110%;
  font-weight: 900;
}
.case-showcase__copy p {
  margin: 0;
  color: var(--text-muted);
}
.case-showcase__video {
  -ms-flex-item-align: start;
  align-self: start;
  width: 100%;
  height: 44.1rem;
  padding: 0;
  border: 2px solid var(--border-gray-light);
  cursor: pointer;
}
.case-showcase__video img {
  -o-object-position: center top;
  object-position: center top;
}
@media (hover: hover) and (pointer: fine) {
  .case-showcase__video:hover .case-showcase__video-overlay {
    opacity: 0.35;
  }
}
.case-showcase__video-overlay {
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(45, 53, 61, 0.3)), to(rgba(122, 125, 128, 0.3)));
  background: linear-gradient(180deg, rgba(45, 53, 61, 0.3) 0%, rgba(122, 125, 128, 0.3) 100%);
  pointer-events: none;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}
.case-showcase__play {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 16rem;
  height: 16rem;
  border: 2px solid var(--orange);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  pointer-events: none;
}
.case-showcase__play-icon {
  width: 0;
  height: 0;
  margin-left: 0.8rem;
  border-style: solid;
  border-width: 1.1rem 0 1.1rem 1.9rem;
  border-color: transparent transparent transparent var(--orange);
}
.case-showcase__gallery {
  display: grid;
  grid-template-columns: minmax(0, 70.4rem) minmax(0, 48.8rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2.4rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
}
.case-showcase__stack {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 23.2rem));
  gap: 2.4rem;
}
.case-showcase__item {
  margin: 0;
}
.case-showcase__item--large {
  height: 56.1rem;
}
.case-showcase__item--wide {
  grid-column: 1/-1;
  height: 34.8rem;
}
.case-showcase__item:not(.case-showcase__item--large):not(.case-showcase__item--wide) {
  height: 18.9rem;
}
.case-showcase__item img {
  -o-object-position: center bottom;
  object-position: center bottom;
}

/* Same stack as Home partners → contact (orange SVG shell) */
.case-showcase + .case-results,
.case-execution + .case-results,
.case-challenge + .case-results {
  margin-top: calc(-1 * var(--jump-section-edge-height));
}

/* CTA só sobe sobre o laranja quando Results existe */
.case-results + .case-cta {
  margin-top: -20.55rem;
}

.case-results {
  position: relative;
  z-index: 1;
  padding: 0 1.5rem 0;
  background: transparent;
}
.case-results__shell {
  position: relative;
  z-index: 1;
  max-width: 185.6rem;
  margin: 0 auto;
  padding: calc(12rem + var(--jump-section-edge-height)) 0 36rem;
  background: transparent;
}
.case-results__bg {
  position: absolute;
  inset: 0;
  left: 50%;
  z-index: 0;
  display: block;
  width: 185.6rem;
  max-width: none;
  height: 100%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  pointer-events: none;
  -o-object-fit: fill;
  object-fit: fill;
}
.case-results .container {
  position: relative;
  z-index: 1;
}
.case-results__label {
  display: block;
  margin-bottom: 2.4rem;
  color: var(--white) !important;
}
.case-results__grid {
  display: grid;
  grid-template-columns: minmax(0, 67.2rem) 43.4rem;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-column-gap: 11rem;
  -moz-column-gap: 11rem;
  column-gap: 11rem;
  row-gap: 13.6rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
}
.case-results__title {
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  max-width: 59.1rem;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.case-results__title .text-white {
  color: var(--white) !important;
}
.case-results__title .text-gray {
  color: var(--gray) !important;
}
.case-results__intro {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}
.case-results__intro strong {
  font-weight: 700;
  color: var(--gray) !important;
}
.case-results__stats {
  grid-column: 1;
  grid-row: 2;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4.8rem;
  width: 100%;
  max-width: 67.2rem;
}
.case-results__stats--count-1 {
  grid-template-columns: minmax(0, 1fr);
}
.case-results__stats--count-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.case-results__stats--count-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.case-results__stats {
  /* 4 = 2×2 (melhor com depoimento ao lado) */
}
.case-results__stats--count-4 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.case-results__stats--count-5 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.case-results__quote {
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  margin-top: -2.9rem;
  width: 43.4rem;
  padding: 3.2rem;
  border-radius: 0.5rem;
  background: var(--white);
}
.case-results--no-quote .case-results__stats {
  grid-column: 1/-1;
  max-width: none;
  width: 100%;
}

.case-stat {
  width: auto;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.case-stat__value {
  display: block;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  margin-bottom: 1.2rem;
  overflow: hidden;
  font-size: var(--case-stat-size, 7.8rem);
  line-height: 1.05;
  font-weight: 900;
  white-space: nowrap;
  color: var(--gray) !important;
}
.case-stat__desc {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}
.case-stat__desc strong {
  font-weight: 700;
  color: var(--white) !important;
}

.case-quote {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.5rem;
}
.case-quote__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
}
.case-quote__profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.6rem;
}
.case-quote__profile img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 0.5rem;
  -o-object-fit: cover;
  object-fit: cover;
}
.case-quote__profile strong {
  display: block;
  font-size: 1.6rem;
  line-height: normal;
  font-weight: 700;
  color: var(--gray) !important;
}
.case-quote__profile span {
  display: block;
  font-size: 1.4rem;
  line-height: normal;
  font-weight: 500;
  color: var(--text-muted) !important;
}
.case-quote__divider {
  width: 100%;
  height: 1px;
  background: var(--border-gray-light);
}
.case-quote__text {
  margin: 0;
  font-size: 1.4rem;
  line-height: 180%;
  font-weight: 500;
  color: var(--text-muted) !important;
}

.case-cta {
  position: relative;
  z-index: 2;
  margin-top: 0;
  padding: 0 1.5rem 12rem;
}
.case-cta__shell {
  max-width: 149.6rem;
  margin: 0 auto;
  min-height: 41.1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  background: var(--cream);
  -webkit-box-shadow: 0 2rem 6rem rgba(45, 53, 61, 0.06);
  box-shadow: 0 2rem 6rem rgba(45, 53, 61, 0.06);
}
.case-cta__inner {
  display: grid;
  grid-template-columns: 41.6rem 38.7rem 28.1rem;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
}
.case-cta__title {
  margin: 0;
  max-width: 41.6rem;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.case-cta__desc {
  margin: 0;
  max-width: 38.7rem;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.case-cta__action {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 28.1rem;
  height: 15.3rem;
  padding: 2.4rem;
  border: 1px solid var(--gray);
  border-radius: 0.5rem;
  background: var(--gray);
  overflow: hidden;
  text-decoration: none;
  backdrop-filter: blur(5px);
}
.case-cta__action::before {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.04) 0, rgba(255, 255, 255, 0.04) 1px, transparent 1px, transparent 0.8rem);
  opacity: 0.3;
  pointer-events: none;
}
.case-cta__action img {
  position: relative;
  z-index: 1;
  -ms-flex-item-align: end;
  align-self: flex-end;
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.case-cta__action span {
  position: relative;
  z-index: 1;
  -ms-flex-item-align: start;
  align-self: flex-start;
  font-size: 1.3rem;
  line-height: normal;
  font-weight: 700;
  letter-spacing: 0.1216rem;
  text-transform: uppercase;
  color: var(--white) !important;
}
@media (hover: hover) and (pointer: fine) {
  .case-cta__action:hover {
    border-color: var(--bg-dark-border);
    background: var(--bg-dark);
  }
}

.page-about {
  background: var(--cream);
}

.about-page .divider-line {
  background: var(--border-gray-light);
}

.about-hero {
  padding: 7rem 0 0;
}
.about-hero__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 7rem;
}
.about-hero__head .section-label {
  display: block;
}
.about-hero__body {
  display: grid;
  grid-template-columns: minmax(0, 69.4rem) minmax(0, 42rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
}
.about-hero h1 {
  margin: 0;
  font-size: 6.3rem;
  line-height: 110%;
  font-weight: 900;
}
.about-hero__intro {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}

.about-stats {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.6rem;
  margin-bottom: 7rem;
}

.about-stat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 0px;
  flex: 1 1 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  min-width: 0;
}
.about-stat__value {
  display: block;
  font-size: 5.6rem;
  line-height: 110%;
  font-weight: 900;
  color: var(--gray) !important;
}
.about-stat__label {
  font-size: 1.12rem;
  line-height: normal;
  font-weight: 700;
  letter-spacing: 0.3136rem;
  color: var(--orange) !important;
}
.about-stat__desc {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}

.about-video {
  position: relative;
  z-index: 1;
  padding-bottom: 12rem;
  /* Sem clientes: reserva faixa cream para o section-edge da Cultura */
}
.about-video:not(:has(+ .about-clients)) {
  padding-bottom: 18rem;
}
.about-video__media {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 16/9;
  height: auto;
  margin: 0;
  border-radius: 0.5rem;
  background: #000;
}
.about-video__media iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  width: 100%;
  height: 100%;
  border: 0;
  opacity: 0;
  /* Crop YouTube top/bottom chrome (title overlay, logo) */
  -webkit-transform: translate(-50%, -50%) scale(1.2);
  transform: translate(-50%, -50%) scale(1.2);
  -webkit-transform-origin: center center;
  transform-origin: center center;
  pointer-events: none;
  -webkit-transition: opacity 0.45s ease;
  transition: opacity 0.45s ease;
}
.about-video__media img,
.about-video__media .about-video__poster {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.about-video__media .about-video__poster {
  position: absolute;
  inset: 0;
  z-index: 1;
  -webkit-transition: opacity 0.45s ease;
  transition: opacity 0.45s ease;
}
.about-video__media.is-ready .about-video__poster {
  opacity: 0;
  pointer-events: none;
}
.about-video__media.is-ready iframe {
  opacity: 1;
}

.about-clients {
  position: relative;
  z-index: 1;
  padding-bottom: 18rem;
}
.about-clients__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 6.4rem;
}
.about-clients__head .section-label {
  display: block;
}
.about-clients__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3rem;
}
.about-clients h2 {
  margin: 0;
  max-width: 61.7rem;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.about-clients__desc {
  margin: 0;
  max-width: 41.5rem;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.about-clients__desc strong {
  font-weight: 700;
  color: var(--gray);
}
.about-clients__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  row-gap: 1.6rem;
}
.about-clients__card {
  position: relative;
  overflow: hidden;
  width: 23rem;
  height: 16rem;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  background: var(--cream);
}
.about-clients__card:not(.is-animated) .about-clients__logo:first-child {
  opacity: 1;
}
.about-clients__logo {
  position: absolute;
  inset: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0 4.2rem;
  opacity: 0;
  -webkit-transition: opacity 0.7s ease;
  transition: opacity 0.7s ease;
}
.about-clients__logo.is-active {
  opacity: 1;
}
.about-clients__logo.is-leaving {
  opacity: 0;
}
.about-clients__logo img {
  display: block;
  width: auto;
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
}
.about-clients__logo img[data-brand=mercado-livre] {
  width: 12.17rem;
}
.about-clients__logo img[data-brand=caixa] {
  width: 12.2rem;
}
.about-clients__logo img[data-brand=picpay] {
  width: 12.17rem;
}
.about-clients__logo img[data-brand=cea] {
  width: 8.67rem;
}
.about-clients__logo img[data-brand=semparar] {
  width: 8.5rem;
}
.about-clients__logo img[data-brand=bradesco-seguros] {
  width: 11.7rem;
}
.about-clients__logo img[data-brand=algar] {
  width: 12.17rem;
}
.about-clients__logo img[data-brand=cogna] {
  width: 12.3rem;
}
.about-clients__logo img[data-brand=torra] {
  width: 11rem;
}
.about-clients__logo img[data-brand=ache] {
  width: 12.17rem;
}

.about-culture {
  position: relative;
  z-index: 2;
  margin-top: calc(-1 * var(--jump-section-edge-height));
  padding: calc(12rem + var(--jump-section-edge-height)) 0 12rem;
  background: var(--bg-dark);
  overflow: hidden;
}
.about-culture__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 90% 70% at 0% 100%, rgba(255, 128, 0, 0.14), transparent 58%), radial-gradient(ellipse 90% 70% at 100% 100%, rgba(255, 128, 0, 0.1), transparent 58%);
}
.about-culture .container {
  position: relative;
  z-index: 1;
}
.about-culture__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 7.3rem;
}
.about-culture__head .section-label {
  display: block;
}
.about-culture__head h2 {
  margin: 0;
  max-width: 60.2rem;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
  color: var(--white) !important;
}
.about-culture__head h2 .text-orange {
  color: var(--orange) !important;
}
.about-culture__head h2 .text-white {
  color: var(--white) !important;
}
.about-culture__cards-shell {
  margin-bottom: 6rem;
  overflow: hidden;
}
.about-culture__cards {
  width: 100%;
  overflow: hidden;
  cursor: -webkit-grab;
  cursor: grab;
}
.about-culture__cards.swiper-grab {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}
.about-culture__cards .swiper-slide {
  width: 39.4rem;
  height: auto;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.about-culture__progress {
  background: var(--bg-dark-card);
}
.about-culture__progress span {
  width: 17.1%;
  -webkit-transition: width 0.15s ease-out;
  transition: width 0.15s ease-out;
}

.about-culture-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  height: 33.7rem;
  padding: 3.2rem;
  border: 1px solid var(--bg-dark-border);
  border-radius: 0.5rem;
  background: var(--bg-dark);
}
.about-culture-card__number {
  font-size: 1.22rem;
  line-height: normal;
  font-weight: 700;
  letter-spacing: 0.1216rem;
  text-transform: uppercase;
  color: var(--white) !important;
}
.about-culture-card__icon {
  display: block;
  width: 4.2rem;
  height: 4.2rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.about-culture-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.about-culture-card h3 {
  margin: 0;
  font-size: 2.2rem;
  line-height: normal;
  font-weight: 700;
  color: var(--orange) !important;
}
.about-culture-card p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}

.about-timeline {
  padding: 12rem 0;
  background: var(--cream);
}
.about-timeline__layout {
  display: grid;
  grid-template-columns: minmax(0, 41.6rem) minmax(0, 67.9rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 12.1rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
}
.about-timeline__aside {
  position: sticky;
  top: 12rem;
  -ms-flex-item-align: start;
  align-self: start;
  padding-top: 8rem;
}
.about-timeline__intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
}
.about-timeline__intro .section-label {
  display: block;
}
.about-timeline__intro h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.about-timeline__desc {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.about-timeline__desc strong {
  font-weight: 700;
  color: var(--gray);
}
.about-timeline__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-bottom: 12rem;
}
.about-timeline__item {
  position: sticky;
  padding-top: 2rem;
}
.about-timeline__item:first-child {
  padding-top: 0;
}
.about-timeline__item:nth-child(1) {
  top: calc(10rem + 0rem);
  z-index: 1;
}
.about-timeline__item:nth-child(2) {
  top: calc(10rem + 1.2rem);
  z-index: 2;
}
.about-timeline__item:nth-child(3) {
  top: calc(10rem + 2.4rem);
  z-index: 3;
}
.about-timeline__item:nth-child(4) {
  top: calc(10rem + 3.6rem);
  z-index: 4;
}
.about-timeline__item:nth-child(5) {
  top: calc(10rem + 4.8rem);
  z-index: 5;
}
.about-timeline__item:nth-child(6) {
  top: calc(10rem + 6rem);
  z-index: 6;
}
.about-timeline__item:nth-child(7) {
  top: calc(10rem + 7.2rem);
  z-index: 7;
}

.about-timeline-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
  width: 100%;
  padding: 3.2rem;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  background: var(--cream);
}
.about-timeline-card--media {
  gap: 2.4rem;
}
.about-timeline-card__media {
  width: 100%;
  height: 24rem;
  border-radius: 0.5rem;
  background: #d9d9d9;
}
.about-timeline-card__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 1.6rem;
  width: 100%;
}
.about-timeline-card__label {
  font-size: 1.12rem;
  line-height: normal;
  font-weight: 700;
  letter-spacing: 0.3136rem;
  text-transform: uppercase;
  color: var(--gray) !important;
}
.about-timeline-card__year {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding: 0.6rem 1.6rem;
  border-radius: 0.5rem;
  background: var(--orange);
  font-size: 1rem;
  line-height: normal;
  font-weight: 700;
  letter-spacing: 0.05rem;
  text-transform: uppercase;
  color: var(--white) !important;
  backdrop-filter: blur(5px);
}
.about-timeline-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.about-timeline-card h3 {
  margin: 0;
  font-size: 2.4rem;
  line-height: normal;
  font-weight: 700;
  color: var(--orange) !important;
}
.about-timeline-card p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}

.about-press {
  position: relative;
  z-index: 2;
  margin-top: -8rem;
  padding: 0 1.5rem;
}
.about-press__shell {
  position: relative;
  max-width: 185.6rem;
  margin: 0 auto;
  min-height: 95.4rem;
  padding: 12rem 0;
  overflow: hidden;
}
.about-press__bg {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  display: block;
  width: 185.6rem;
  height: 100%;
  min-height: 95.4rem;
  max-width: none;
  pointer-events: none;
  -o-object-fit: fill;
  object-fit: fill;
}
.about-press .container {
  position: relative;
  z-index: 1;
}
.about-press__label {
  display: block;
  margin-bottom: 0;
  color: var(--white) !important;
}
.about-press__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 4.9rem;
}
.about-press__head-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 19.1rem;
  width: 100%;
}
.about-press__title {
  margin: 0;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 59.1rem;
  flex: 0 0 59.1rem;
  max-width: 59.1rem;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.about-press__title .text-gray {
  color: var(--gray) !important;
}
.about-press__title .text-white {
  color: var(--white) !important;
}
.about-press__intro {
  margin: 0;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 43.4rem;
  flex: 0 0 43.4rem;
  max-width: 43.4rem;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}
.about-press__intro strong {
  font-weight: 700;
  color: var(--gray) !important;
}
.about-press__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.6rem;
  width: 100%;
}
.about-press__side {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 73rem;
  flex: 0 0 73rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
  width: 73rem;
  min-width: 0;
}
.about-press__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.6rem;
  width: 100%;
}
.about-press__cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1.2rem;
  width: 100%;
  height: 7.8rem;
  padding: 2.4rem;
  border-radius: 0.5rem;
  background: var(--white);
  text-decoration: none;
  backdrop-filter: blur(5px);
}
.about-press__cta img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.about-press__cta span {
  font-size: 1.3rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--gray) !important;
}
@media (hover: hover) and (pointer: fine) {
  .about-press__cta:hover {
    background: var(--cream);
  }
}

.about-press-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
  height: 100%;
  padding: 2.4rem;
  border-radius: 0.5rem;
  background: var(--white);
}
.about-press-card--featured {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 47rem;
  flex: 0 0 47rem;
  -ms-flex-item-align: stretch;
  align-self: stretch;
  width: 47rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0;
  padding: 0;
  border: 1px solid var(--border-gray-light);
  background: var(--cream);
  overflow: hidden;
}
.about-press-card__media {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 24rem;
  border-radius: 0.5rem 0.5rem 0 0;
  background: #d9d9d9;
}
.about-press-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
  min-height: 0;
  padding: 2.4rem;
  border-radius: 0 0 0.5rem 0.5rem;
  background: var(--white);
}
.about-press-card__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 1.6rem;
  width: 100%;
  min-height: 1.8rem;
}
.about-press-card__badge {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding: 0.6rem 1.6rem;
  border-radius: 0.5rem;
  background: var(--orange);
  font-size: 1rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
  backdrop-filter: blur(5px);
}
.about-press-card__logo {
  display: block;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 1.8rem;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: right center;
  object-position: right center;
}
.about-press-card__logo--pipeline {
  max-height: 1.8rem;
}
.about-press-card__logo--exame {
  max-height: 1.4rem;
}
.about-press-card__logo--startups {
  max-height: 1.6rem;
}
.about-press-card__logo--neofeed {
  max-height: 1.4rem;
}
.about-press-card__logo--gazzconecta {
  max-height: 1.8rem;
}
.about-press-card__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  min-height: 0;
}
.about-press-card h3 {
  margin: 0;
  font-size: 2.2rem;
  line-height: normal;
  font-weight: 700;
  color: var(--gray) !important;
}
.about-press-card:not(.about-press-card--featured) h3 {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.about-press-card p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.about-press-card__link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-item-align: start;
  align-self: flex-start;
  gap: 1.2rem;
  margin-top: auto;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  text-decoration: none;
  backdrop-filter: blur(5px);
}
.about-press-card__link img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.about-press-card__link span {
  font-size: 1.3rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--gray) !important;
}
@media (hover: hover) and (pointer: fine) {
  .about-press-card__link:hover span {
    color: var(--orange) !important;
  }
}

.about-team {
  padding: 12rem 0;
  background: var(--cream);
}
.about-team__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 2.4rem;
  margin-bottom: 7.1rem;
  text-align: center;
}
.about-team__label {
  display: block;
  width: 100%;
  text-align: center;
  color: var(--orange) !important;
}
.about-team__title {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
  white-space: nowrap;
}
.about-team__title .text-orange {
  color: var(--orange) !important;
}
.about-team__title .text-gray {
  color: var(--gray) !important;
}
.about-team__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  -webkit-column-gap: 2rem;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  row-gap: 2.5rem;
}

.about-team-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.8rem;
}
.about-team-card__photo {
  width: 100%;
  height: 20rem;
  border-radius: 0.5rem;
  background-color: #d9d9d9;
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}
.about-team-card__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 1.6rem;
  width: 100%;
}
.about-team-card__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  min-width: 0;
  max-width: 18.5rem;
}
.about-team-card__meta strong {
  font-size: 1.6rem;
  line-height: normal;
  font-weight: 700;
  color: var(--gray) !important;
}
.about-team-card__meta span {
  font-size: 1.4rem;
  line-height: normal;
  font-weight: 500;
  color: #9d9d9d;
}
.about-team-card__linkedin {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 4rem;
  height: 4rem;
  padding: 1rem;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.6rem;
  text-decoration: none;
}
.about-team-card__linkedin img {
  display: block;
  width: 1.8rem;
  height: 1.8rem;
}
@media (hover: hover) and (pointer: fine) {
  .about-team-card__linkedin:hover {
    border-color: var(--orange);
  }
}

.page-press-archive {
  background: var(--cream);
}
.page-press-archive .site-footer {
  padding-top: 12rem;
}

.press-hero {
  position: relative;
  z-index: 2;
  padding: 7rem 0 13.7rem;
}
.press-hero__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
}
.press-hero__body {
  display: grid;
  grid-template-columns: minmax(0, 69.4rem) minmax(0, 42rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
}
.press-hero h1 {
  margin: 0;
  font-size: 6.3rem;
  line-height: 110%;
  font-weight: 900;
}
.press-hero__intro {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}

.press-hero + .press-archive {
  margin-top: calc(-1 * var(--jump-section-edge-height));
}

.press-archive {
  position: relative;
  z-index: 1;
  padding: 7rem 0 12.8rem;
  background: var(--orange);
}
.press-archive .container {
  position: relative;
  z-index: 1;
}
.press-archive__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  margin-bottom: 5rem;
}
.press-archive__head .section-label {
  color: var(--white) !important;
}
.press-archive__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: normal;
  font-weight: 900;
  color: var(--white) !important;
}
.press-archive__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.6rem;
}
.press-archive .about-press-card--archive {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: inherit;
  -webkit-transition: border-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: border-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: border-color 0.3s ease, transform 0.3s ease;
  transition: border-color 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .press-archive .about-press-card--archive:hover {
    border-color: var(--gray);
    -webkit-transform: translateY(-0.4rem);
    transform: translateY(-0.4rem);
  }
  .press-archive .about-press-card--archive:hover .about-press-card__link span {
    color: var(--orange) !important;
  }
}
.press-archive__load {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1.2rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 5.8rem;
  margin: 2.4rem auto 0;
  padding: 1.2rem 2.4rem;
  border: 1px solid var(--bg-dark-card);
  border-radius: 0.5rem;
  background: var(--bg-dark-card);
  font-family: inherit;
  font-size: 1.3rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
  cursor: pointer;
  backdrop-filter: blur(5px);
}
.press-archive__load img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.press-archive__load span {
  color: var(--white) !important;
}
@media (hover: hover) and (pointer: fine) {
  .press-archive__load:hover {
    border-color: var(--white);
  }
}
.press-archive__empty {
  margin: 0;
  font-size: 1.6rem;
  color: var(--white) !important;
}

.press-newsletter {
  position: relative;
  z-index: 2;
  margin-top: -4rem;
  padding: 0 1.5rem 12rem;
}
.press-newsletter__shell {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 149.6rem;
  min-height: 34.2rem;
  margin: 0 auto;
  padding: 8rem 2rem;
  border-radius: 0.5rem;
  background: var(--bg-blog);
}
.press-newsletter__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3rem;
  width: 100%;
  max-width: 94.8rem;
}
.press-newsletter__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 35.4rem;
  flex: 0 0 35.4rem;
  max-width: 35.4rem;
}
.press-newsletter__copy h2 {
  margin: 0;
  font-size: 3.6rem;
  line-height: 110%;
  font-weight: 900;
  color: var(--orange) !important;
}
.press-newsletter__copy p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}
.press-newsletter__copy p strong,
.press-newsletter__copy p span,
.press-newsletter__copy p font {
  color: var(--white) !important;
}
.press-newsletter__copy p strong {
  font-weight: 700;
}
.press-newsletter__copy p .text-gray,
.press-newsletter__copy p [data-jump-tone=muted],
.press-newsletter__copy p [data-jump-tone=mutedDark],
.press-newsletter__copy p [data-jump-tone=mutedAlt] {
  color: var(--white) !important;
}
.press-newsletter__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.6rem;
  height: 4.8rem;
}
.press-newsletter__input {
  width: 35.2rem;
  height: 4.8rem;
  padding: 1.2rem 2.4rem;
  border: 0;
  border-radius: 0.5rem;
  background: var(--white);
  font-family: inherit;
  font-size: 1.6rem;
  line-height: normal;
  font-weight: 500;
  color: var(--gray);
}
.press-newsletter__input::-webkit-input-placeholder {
  color: var(--text-muted);
}
.press-newsletter__input::-moz-placeholder {
  color: var(--text-muted);
}
.press-newsletter__input:-ms-input-placeholder {
  color: var(--text-muted);
}
.press-newsletter__input::-ms-input-placeholder {
  color: var(--text-muted);
}
.press-newsletter__input::placeholder {
  color: var(--text-muted);
}
.press-newsletter__input:focus {
  outline: 2px solid var(--orange);
  outline-offset: 2px;
}
.press-newsletter__submit {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1rem;
  height: 4.8rem;
  padding: 1.2rem 1.6rem;
  border: 0;
  border-radius: 0.5rem;
  background: var(--orange);
  font-family: inherit;
  font-size: 1.3rem;
  line-height: 2.4rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
  cursor: pointer;
  white-space: nowrap;
}
.press-newsletter__submit img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.press-newsletter__submit span {
  color: var(--white) !important;
}
@media (hover: hover) and (pointer: fine) {
  .press-newsletter__submit:hover {
    background: var(--orange-light);
  }
}

.about-press-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.press-newsletter__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.6rem;
  height: 4.8rem;
}
.press-newsletter__form input[type=email],
.press-newsletter__form input[type=text],
.press-newsletter__form .wpcf7-form-control.wpcf7-text,
.press-newsletter__form .wpcf7-form-control.wpcf7-email {
  width: 35.2rem;
  height: 4.8rem;
  padding: 1.2rem 2.4rem;
  border: 0;
  border-radius: 0.5rem;
  background: var(--white);
  font-family: inherit;
  font-size: 1.6rem;
  line-height: normal;
  font-weight: 500;
  color: var(--gray);
}
.press-newsletter__form input[type=submit],
.press-newsletter__form .wpcf7-form-control.wpcf7-submit {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1rem;
  height: 4.8rem;
  padding: 1.2rem 1.6rem;
  border: 0;
  border-radius: 0.5rem;
  background: var(--orange);
  font-family: inherit;
  font-size: 1.3rem;
  line-height: 2.4rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
  cursor: pointer;
  white-space: nowrap;
}
.press-newsletter__form .wpcf7-spinner {
  display: none;
}

footer {
  padding-top: 120px;
  padding-bottom: 2rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.site-footer {
  background: var(--cream);
}
.site-footer > .container {
  max-width: 121.6rem;
  padding-left: 0;
  padding-right: 0;
}
.site-footer .footer-main {
  padding: 7rem 0;
  border-top: 1px solid var(--border-gray-light);
}
.site-footer .footer-main .container {
  max-width: 121.6rem;
  padding-left: 0;
  padding-right: 0;
}
.site-footer .footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 3.2rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
}
.site-footer .footer-brand {
  min-width: 0;
  max-width: 100%;
}
.site-footer .footer-brand img {
  display: block;
  width: 22.1rem;
  height: auto;
  margin-bottom: 2.4rem;
}
.site-footer .footer-brand p {
  max-width: 100%;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  /* A11Y-02: --text-muted on the cream footer bg was ~4.1:1,
     under the 4.5:1 AA minimum. */
  color: var(--text-muted-alt);
  margin-bottom: 2.4rem;
}
.site-footer .footer-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
}
.site-footer .footer-social a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 5.5rem;
  height: 5.5rem;
  border: 1px solid var(--border-gray-light);
  border-radius: 0.5rem;
  background: var(--cream);
}
.site-footer .footer-social a img {
  width: 2.5rem;
  height: 2.5rem;
  margin: 0;
}
.site-footer .footer-menus {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5.6rem;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  min-width: 0;
}
.site-footer .footer-menus > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.2rem;
}
.site-footer .footer-menus h4 {
  font-size: 1.8rem;
  line-height: normal;
  font-weight: 700;
  color: var(--orange) !important;
  text-transform: uppercase;
  margin: 0;
}
.site-footer .footer-menus .footer-menu__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.4rem;
}
.site-footer .footer-menus a {
  display: block;
  /* A11Y-04: WCAG 2.2 target size minimum (24px) — text alone
     was ~16px tall. */
  padding: 0.5rem 0;
  margin: -0.5rem 0;
  color: var(--gray) !important;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  text-decoration: none;
}
.site-footer .footer-menus a:hover {
  color: var(--orange) !important;
}
.site-footer .footer-menus .menu-badge {
  position: relative;
  display: inline-block;
}
.site-footer .footer-menus .menu-badge sup {
  position: absolute;
  top: -0.6rem;
  left: 4.5rem;
  font-size: 1.3rem;
  font-weight: 700;
  color: var(--text-muted) !important;
}
.site-footer .footer-badges {
  padding: 4.5rem 0 4rem;
  border-top: 1px solid var(--border-gray-light);
  border-bottom: 1px solid var(--border-gray-light);
  overflow: visible;
}
.site-footer .footer-badges .container {
  max-width: 121.6rem;
  padding-left: 0;
  padding-right: 0;
}
.site-footer .footer-badges__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 5rem;
  max-width: 100%;
}
.site-footer .footer-badges__divider {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 1px;
  height: 6.6rem;
  background: var(--border-gray-light);
}
.site-footer .footer-badges__certs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 2.6rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.site-footer .footer-badge {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  border: 0;
  padding: 0;
  background: transparent;
  cursor: default;
  outline: none;
}
.site-footer .footer-badge img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.site-footer .footer-badge--selo img {
  width: auto;
  height: auto;
  max-height: 10rem;
}
.site-footer .footer-badge--certificacao {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0;
}
.site-footer .footer-badge--certificacao img {
  width: 4.586rem;
  height: 6.035rem;
}
.site-footer .footer-badge__code {
  font-size: 0.8rem;
  font-weight: 600;
  line-height: normal;
  color: var(--gray);
  text-align: center;
}
.site-footer .footer-badge__label {
  position: absolute;
  left: 50%;
  top: -2.4rem;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  padding: 0.4rem 0.8rem;
  border-radius: 0.4rem;
  background: var(--gray);
  color: var(--white) !important;
  font-size: 0.8rem;
  font-weight: 600;
  line-height: normal;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  -webkit-transition: opacity 0.2s ease, visibility 0.2s ease, -webkit-transform 0.2s ease;
  transition: opacity 0.2s ease, visibility 0.2s ease, -webkit-transform 0.2s ease;
  transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
  transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease, -webkit-transform 0.2s ease;
  z-index: 2;
}
.site-footer .footer-badge:hover .footer-badge__label, .site-footer .footer-badge:focus-visible .footer-badge__label {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateX(-50%) translateY(-0.4rem);
  transform: translateX(-50%) translateY(-0.4rem);
}
.site-footer .footer-badge--certificacao:hover .footer-badge__label, .site-footer .footer-badge--certificacao:focus-visible .footer-badge__label {
  top: -3.2rem;
}
.site-footer .footer-badge:focus-visible {
  outline: 2px solid var(--orange);
  outline-offset: 4px;
}
.site-footer .footer-geo-wrap {
  border-bottom: 1px solid var(--border-gray-light);
}
.site-footer .footer-geo-wrap .container {
  max-width: 121.6rem;
  padding-left: 0;
  padding-right: 0;
}
.site-footer .footer-geo {
  padding: 2.4rem 0;
}
.site-footer .footer-geo[open] .footer-geo__plus::before {
  content: "−";
}
.site-footer .footer-geo__trigger {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 1.6rem;
  list-style: none;
  cursor: pointer;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  color: var(--gray);
}
.site-footer .footer-geo__trigger::-webkit-details-marker {
  display: none;
}
.site-footer .footer-geo__trigger::marker {
  content: "";
  display: none;
}
.site-footer .footer-geo__trigger:hover, .site-footer .footer-geo__trigger:focus-visible {
  color: var(--orange);
}
.site-footer .footer-geo__trigger:focus-visible {
  outline: 2px solid var(--orange);
  outline-offset: 4px;
}
.site-footer .footer-geo__plus {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 1.6rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
}
.site-footer .footer-geo__plus::before {
  content: "+";
}
.site-footer .footer-geo__panel {
  padding-top: 2.4rem;
}
.site-footer .footer-geo__panel h3 {
  margin: 0 0 1.2rem;
  font-size: 1.6rem;
  line-height: 140%;
  font-weight: 700;
  color: var(--gray) !important;
}
.site-footer .footer-geo__panel p,
.site-footer .footer-geo__panel ul {
  margin: 0 0 1.6rem;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.site-footer .footer-geo__panel ul {
  padding-left: 1.8rem;
}
.site-footer .footer-geo__panel li + li {
  margin-top: 0.6rem;
}
.site-footer .footer-geo__panel strong {
  font-weight: 700;
  color: var(--gray);
}
.site-footer .footer-geo__panel > *:last-child {
  margin-bottom: 0;
}
.site-footer .footer-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2rem;
  max-width: 121.6rem;
  margin: 0 auto;
  padding: 6rem 0 3.2rem;
}
.site-footer .footer-bottom p {
  font-size: 1.6rem;
  line-height: 140%;
  font-weight: 500;
  /* A11Y-02: --text-muted on the cream footer bg was ~4.1:1,
     under the 4.5:1 AA minimum. */
  color: var(--text-muted-alt) !important;
  margin: 0;
}
.site-footer .footer-bottom .links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4rem;
}
.site-footer .footer-bottom .links a {
  /* A11Y-04: WCAG 2.2 target size minimum (24px). */
  padding: 0.5rem 0;
  margin: -0.5rem 0;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  color: var(--text-muted-alt) !important;
  text-decoration: none;
}
.site-footer .footer-bottom .links a:hover {
  color: var(--gray) !important;
}

.page-blog {
  background: var(--cream);
}
.page-blog .site-footer {
  padding-top: 29.1rem;
}

.blog-hero {
  position: relative;
  z-index: 2;
  padding: 7rem 0 13.7rem;
}
.blog-hero__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
}
.blog-hero__body {
  display: grid;
  grid-template-columns: minmax(0, 69.4rem) minmax(0, 42rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
}
.blog-hero h1 {
  margin: 0;
  font-size: 6.3rem;
  line-height: 110%;
  font-weight: 900;
}
.blog-hero__intro {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.blog-hero__intro strong {
  color: var(--gray);
  font-weight: 700;
}

.blog-hero + .blog-featured {
  margin-top: calc(-1 * var(--jump-section-edge-height));
}

.blog-featured {
  position: relative;
  z-index: 1;
  padding: 7rem 0 7rem;
  background: var(--bg-blog);
}
.blog-featured .container {
  position: relative;
  z-index: 1;
  margin-top: 5rem;
}
.blog-featured__label {
  display: block;
  margin-bottom: 3.2rem;
}
.blog-featured__grid {
  display: grid;
  grid-template-columns: minmax(0, 81.6rem) minmax(0, 38.4rem);
  gap: 1.6rem;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.blog-featured-card {
  position: relative;
  height: 42.5rem;
  border: 1px solid transparent;
  border-radius: 0.5rem;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  -webkit-transition: border-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: border-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: border-color 0.3s ease, transform 0.3s ease;
  transition: border-color 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
}
.blog-featured-card__media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.blog-featured-card__media img {
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 0.6s ease;
  transition: -webkit-transform 0.6s ease;
  transition: transform 0.6s ease;
  transition: transform 0.6s ease, -webkit-transform 0.6s ease;
}
.blog-featured-card--main .blog-featured-card__media img {
  position: absolute;
  top: -22.6rem;
  left: 0;
  width: 121.6rem;
  max-width: none;
  height: 65.1rem;
}
.blog-featured-card--side .blog-featured-card__media img {
  position: absolute;
  top: 0;
  left: 0;
  width: 47.2rem;
  max-width: none;
  height: 42.5rem;
}
.blog-featured-card__overlay {
  position: absolute;
  inset: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  gap: 2.4rem;
  padding: 3.2rem;
  border-radius: 0 0 0.5rem 0.5rem;
  background: linear-gradient(180deg, rgba(35, 42, 53, 0) 0%, var(--bg-dark-card) 100%);
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
.blog-featured-card__badge {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding: 0.6rem 1.6rem;
  border-radius: 0.5rem;
  background: var(--orange);
  font-size: 1rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
  backdrop-filter: blur(5px);
}
.blog-featured-card__time {
  font-size: 1.12rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
}
.blog-featured-card__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  width: 100%;
}
.blog-featured-card__title {
  margin: 0;
  font-size: 3.6rem;
  line-height: 120%;
  font-weight: 700;
  color: var(--white) !important;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
.blog-featured-card--side .blog-featured-card__title {
  font-size: 3.2rem;
}
.blog-featured-card__desc {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  margin: 0;
  overflow: hidden;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}
.blog-featured-card__link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  text-decoration: none;
  backdrop-filter: blur(5px);
}
.blog-featured-card__link img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.blog-featured-card__link span {
  font-size: 1.3rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
}
@media (hover: hover) and (pointer: fine) {
  .blog-featured-card:hover {
    border-color: var(--orange);
    -webkit-transform: translateY(-0.4rem);
    transform: translateY(-0.4rem);
  }
  .blog-featured-card:hover .blog-featured-card__media img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
  .blog-featured-card:hover .blog-featured-card__overlay {
    background: linear-gradient(180deg, rgba(35, 42, 53, 0.15) 0%, var(--bg-dark-card) 100%);
  }
  .blog-featured-card:hover .blog-featured-card__title {
    color: var(--orange-light) !important;
  }
  .blog-featured-card:hover .blog-featured-card__link span {
    color: var(--orange-light) !important;
  }
}

.blog-articles {
  padding: 0 0 24.1rem;
  background: var(--bg-blog);
}
.blog-articles__filters {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1.2rem;
  margin-bottom: 5rem;
}
.blog-articles.is-filtered .blog-articles__filters {
  margin-bottom: 5rem;
}
.blog-articles__content {
  position: relative;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}
.blog-articles__content.is-loading {
  opacity: 0.45;
  pointer-events: none;
}
.blog-articles.is-filtered .blog-articles__grid {
  margin-top: 0;
}
.blog-articles__latest-block.is-hidden, .blog-articles__latest-block[hidden] {
  display: none !important;
}
.blog-articles__filter {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0.8rem 2.4rem;
  border: 1px solid transparent;
  border-radius: 0.5rem;
  background: var(--bg-dark-card);
  font-family: inherit;
  font-size: 1.4rem;
  line-height: 2.1rem;
  font-weight: 700;
  color: #a8abae !important;
  cursor: pointer;
  -webkit-transition: background 0.2s ease, color 0.2s ease;
  transition: background 0.2s ease, color 0.2s ease;
}
.blog-articles__filter.is-active {
  background: var(--orange);
  color: var(--white) !important;
}
@media (hover: hover) and (pointer: fine) {
  .blog-articles__filter:not(.is-active):hover {
    color: var(--white) !important;
    border: 1px solid var(--bg-dark-border-alt);
  }
}
.blog-articles__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  margin-top: 5rem;
}
.blog-articles__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: normal;
  font-weight: 900;
  color: var(--white) !important;
}
.blog-articles__highlight {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin-top: 5rem;
  border: 1px solid transparent;
  border-radius: 0.5rem;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  -webkit-transition: border-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: border-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: border-color 0.3s ease, transform 0.3s ease;
  transition: border-color 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
}
.blog-articles__highlight-media {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 55.6rem;
  flex: 0 0 55.6rem;
  width: 55.6rem;
  max-width: 55.6rem;
  height: 33.7rem;
  overflow: hidden;
}
.blog-articles__highlight-media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 0.6s ease;
  transition: -webkit-transform 0.6s ease;
  transition: transform 0.6s ease;
  transition: transform 0.6s ease, -webkit-transform 0.6s ease;
}
.blog-articles__highlight-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 2.4rem;
  min-width: 0;
  padding: 3.2rem;
  background: var(--bg-dark-card);
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
.blog-articles__highlight-copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  width: 100%;
}
.blog-articles__highlight-copy h3 {
  margin: 0;
  font-size: 2.4rem;
  line-height: 120%;
  font-weight: 700;
  color: var(--white) !important;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
.blog-articles__highlight-copy p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  margin: 0;
  overflow: hidden;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.blog-articles__badge {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-item-align: start;
  align-self: flex-start;
  padding: 0.6rem 1.6rem;
  border-radius: 0.5rem;
  background: var(--orange);
  font-size: 1rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
  backdrop-filter: blur(5px);
}
.blog-articles__time {
  font-size: 1.12rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
}
.blog-articles__link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  text-decoration: none;
  backdrop-filter: blur(5px);
}
.blog-articles__link img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.blog-articles__link span {
  font-size: 1.3rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
}
.blog-articles__recent-label {
  display: block;
  margin-top: 4.2rem;
  margin-bottom: 3.6rem;
}
.blog-articles__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.6rem;
}
.blog-articles__load {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1.2rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 5.8rem;
  margin: 2.4rem auto 0;
  padding: 1.2rem 2.4rem;
  border: 1px solid var(--bg-dark-card);
  border-radius: 0.5rem;
  background: var(--bg-dark-card);
  font-family: inherit;
  font-size: 1.3rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
  cursor: pointer;
  backdrop-filter: blur(5px);
}
.blog-articles__load img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.blog-articles__load span {
  color: var(--white) !important;
}
.blog-articles__load.is-loading {
  pointer-events: none;
}
.blog-articles__load.is-loading img {
  -webkit-animation: blog-loader-spin 0.8s linear infinite;
  animation: blog-loader-spin 0.8s linear infinite;
}
.blog-articles__load:disabled {
  opacity: 0.72;
  cursor: not-allowed;
}
@media (hover: hover) and (pointer: fine) {
  .blog-articles__load:hover:not(:disabled) {
    border-color: var(--orange);
    background: var(--bg-dark);
  }
  .blog-articles__load:hover:not(:disabled) span {
    color: var(--white) !important;
  }
}
@media (hover: hover) and (pointer: fine) {
  .blog-articles__highlight:hover {
    border-color: var(--orange);
    -webkit-transform: translateY(-0.4rem);
    transform: translateY(-0.4rem);
  }
  .blog-articles__highlight:hover .blog-articles__highlight-media img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
  .blog-articles__highlight:hover .blog-articles__highlight-body {
    background: var(--bg-dark);
  }
  .blog-articles__highlight:hover .blog-articles__highlight-copy h3 {
    color: var(--orange) !important;
  }
  .blog-articles__highlight:hover .blog-articles__link span {
    color: var(--orange-light) !important;
  }
}

.blog-article-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  border: 1px solid transparent;
  border-radius: 0.5rem;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  -webkit-transition: border-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: border-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: border-color 0.3s ease, transform 0.3s ease;
  transition: border-color 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
}
.blog-article-card__media {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  height: 24rem;
  overflow: hidden;
}
.blog-article-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 0.6s ease;
  transition: -webkit-transform 0.6s ease;
  transition: transform 0.6s ease;
  transition: transform 0.6s ease, -webkit-transform 0.6s ease;
}
.blog-article-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  padding: 3.6rem 2.4rem;
  background: var(--bg-dark-card);
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
.blog-article-card__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.blog-article-card__copy h3 {
  margin: 0;
  font-size: 2.4rem;
  line-height: 120%;
  font-weight: 700;
  color: var(--white) !important;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
.blog-article-card__copy p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  margin: 0;
  overflow: hidden;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.blog-article-card__footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 1.6rem;
  width: 100%;
  margin-top: auto;
}
.blog-article-card__time {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 1.12rem;
  line-height: normal;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--text-muted) !important;
}
@media (hover: hover) and (pointer: fine) {
  .blog-article-card:hover {
    border-color: var(--orange);
    -webkit-transform: translateY(-0.4rem);
    transform: translateY(-0.4rem);
  }
  .blog-article-card:hover .blog-article-card__media img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
  .blog-article-card:hover .blog-article-card__body {
    background: var(--bg-dark);
  }
  .blog-article-card:hover .blog-article-card__copy h3 {
    color: var(--orange) !important;
  }
  .blog-article-card:hover .blog-articles__link span {
    color: var(--orange-light) !important;
  }
}

.blog-newsletter {
  position: relative;
  z-index: 2;
  margin-top: -17.1rem;
  margin-bottom: -17.1rem;
  padding: 0 1.5rem;
  background: linear-gradient(180deg, var(--bg-blog) 0%, var(--bg-blog) calc(50% - 0.05rem), var(--cream) calc(50% + 0.05rem), var(--cream) 100%);
}
.blog-newsletter__shell {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 149.6rem;
  min-height: 34.2rem;
  margin: 0 auto;
  padding: 8rem 2rem;
  border-radius: 0.5rem;
  background: var(--orange);
  overflow: hidden;
}
.blog-newsletter__inner {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3rem;
  width: 100%;
  max-width: 94.8rem;
}
.blog-newsletter__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 35.4rem;
  flex: 0 0 35.4rem;
  max-width: 35.4rem;
}
.blog-newsletter__copy h2 {
  margin: 0;
  font-size: 3.6rem;
  line-height: 110%;
  font-weight: 900;
  color: var(--gray) !important;
}
.blog-newsletter__copy p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}
.blog-newsletter__copy p strong {
  font-weight: 700;
}
.blog-newsletter__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.6rem;
  height: 4.8rem;
}
.blog-newsletter__input {
  width: 35.2rem;
  height: 4.8rem;
  padding: 1.2rem 2.4rem;
  border: 0;
  border-radius: 0.5rem;
  background: var(--white);
  font-family: inherit;
  font-size: 1.6rem;
  line-height: normal;
  font-weight: 500;
  color: var(--gray);
}
.blog-newsletter__input::-webkit-input-placeholder {
  color: var(--text-muted);
}
.blog-newsletter__input::-moz-placeholder {
  color: var(--text-muted);
}
.blog-newsletter__input:-ms-input-placeholder {
  color: var(--text-muted);
}
.blog-newsletter__input::-ms-input-placeholder {
  color: var(--text-muted);
}
.blog-newsletter__input::placeholder {
  color: var(--text-muted);
}
.blog-newsletter__input:focus {
  outline: 2px solid var(--gray);
  outline-offset: 2px;
}
.blog-newsletter__submit {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1rem;
  height: 4.8rem;
  padding: 1.2rem 1.6rem;
  border: 0;
  border-radius: 0.5rem;
  background: var(--gray);
  font-family: inherit;
  font-size: 1.3rem;
  line-height: 2.4rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
  cursor: pointer;
  white-space: nowrap;
}
.blog-newsletter__submit img {
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.blog-newsletter__submit span {
  color: var(--white) !important;
}
@media (hover: hover) and (pointer: fine) {
  .blog-newsletter__submit:hover {
    background: var(--bg-dark);
  }
}

@-webkit-keyframes blog-loader-spin {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes blog-loader-spin {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.page-single {
  background: var(--bg-blog);
}

.single-hero {
  position: relative;
  z-index: 2;
  padding-top: 7rem;
  padding-bottom: 0;
  overflow: visible;
  background: transparent;
}
.single-hero::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 4rem;
  background: #2c333b;
  z-index: -1;
}
.single-hero__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 2.4rem;
  text-align: center;
}
.single-hero__head .section-label {
  margin: 0;
}
.single-hero h1 {
  margin: 0;
  max-width: 94rem;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
  color: var(--white) !important;
}
.single-hero h1 font {
  color: var(--white) !important;
}
.single-hero__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 4.2rem;
  margin-top: 3rem;
}
.single-hero__author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.6rem;
}
.single-hero__author-avatar {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 4.6rem;
  height: 4.6rem;
  border-radius: 0.5rem;
  -o-object-fit: cover;
  object-fit: cover;
}
.single-hero__author-copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 0.2rem;
}
.single-hero__author-copy strong {
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 700;
  color: var(--white) !important;
}
.single-hero__author-copy strong font {
  color: var(--white) !important;
}
.single-hero__author-copy span {
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 500;
  color: var(--text-muted) !important;
  white-space: nowrap;
}
.single-hero__author-copy span font {
  color: var(--text-muted) !important;
}
.single-hero__divider {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 0.1rem;
  height: 1.2rem;
  background: #3a4149;
}
.single-hero__meta-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.2rem;
}
.single-hero__meta-item img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
}
.single-hero__meta-item span {
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 700;
  color: var(--text-muted) !important;
  white-space: nowrap;
}
.single-hero__meta-item span font {
  color: var(--text-muted) !important;
}
.single-hero__media {
  position: relative;
  z-index: 1;
  width: calc(100% - 3rem);
  max-width: 121.6rem;
  height: 57.4rem;
  margin: 3.2rem auto -4rem;
  border-radius: 0.5rem;
  overflow: hidden;
}
.single-hero__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.single-article {
  position: relative;
  z-index: 1;
  background: var(--bg-blog);
  padding-top: 12rem;
  /* Extra room so .single-related::before (pulls up 12rem) does not cover the last lines. */
  padding-bottom: 24rem;
}
.single-article__layout {
  display: grid;
  grid-template-columns: 28rem minmax(0, 1fr);
  gap: 3.2rem;
}

.single-sidebar {
  position: sticky;
  top: 12rem;
  -ms-flex-item-align: start;
  align-self: start;
  width: 28rem;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}
.single-sidebar__sticky {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
}

.single-share {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 1.6rem;
  width: 100%;
}
.single-share__label {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  font-size: 1.4rem;
  line-height: normal;
  font-weight: 500;
  color: var(--text-subtle) !important;
}
.single-share__label font {
  color: var(--text-subtle) !important;
}
.single-share__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.6rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.single-share__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 3.8rem;
  height: 3.8rem;
  padding: 1rem;
  border: 1px solid #3a4149;
  border-radius: 0.5rem;
  background: #2c333b;
  -webkit-transition: border-color 0.3s ease, background-color 0.3s ease;
  transition: border-color 0.3s ease, background-color 0.3s ease;
}
.single-share__btn img {
  display: block;
  width: 1.8rem;
  height: 1.8rem;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
.single-share__btn:hover {
  border-color: var(--orange);
  background: #323a43;
}

.single-audio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1rem;
  width: 28rem;
  padding: 1.6rem;
  border: 1px solid #3a4149;
  border-radius: 0.5rem;
  background: #2c333b;
}
.single-audio__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 0.8rem;
}
.single-audio__label {
  margin: 0;
  font-size: 1.3rem;
  line-height: normal;
  font-weight: 600;
  color: var(--white) !important;
}
.single-audio__label font {
  color: var(--white) !important;
}
.single-audio__badge {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding: 0.2rem 0.6rem;
  border-radius: 999px;
  background: rgba(255, 128, 0, 0.16);
  font-size: 0.9rem;
  line-height: 1.2;
  font-weight: 600;
  color: var(--orange) !important;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.single-audio__badge font {
  color: var(--orange) !important;
}
.single-audio__toolbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.6rem;
  width: 100%;
}
.single-audio__voice-wrap {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-width: 0;
}
.single-audio__voice-wrap[hidden] {
  display: none;
}
.single-audio__voice {
  width: 100%;
  height: 3.6rem;
  min-height: 3.6rem;
  padding: 0 2.4rem 0 0.8rem;
  border: 1px solid #5a6470;
  border-radius: 0.4rem;
  background-color: #3f4852;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23ADB3B8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.7rem center;
  color: #adb3b8;
  font-family: inherit;
  font-size: 1.1rem;
  line-height: 1.2;
  font-weight: 500;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-overflow: ellipsis;
}
.single-audio__voice option {
  color: #2c333b;
  background: #f4f5f6;
}
.single-audio__voice:focus-visible {
  border-color: var(--orange);
  color: #d7dde3;
  outline: none;
}
.single-audio__element {
  display: none;
}
.single-audio__controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.6rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.single-audio__controls--file {
  width: 100%;
}
.single-audio__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 3.6rem;
  height: 3.6rem;
  padding: 0;
  border: 1px solid #5a6470;
  border-radius: 0.4rem;
  background: #4a5560;
  color: var(--white);
  cursor: pointer;
  -webkit-transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease, -webkit-transform 0.2s ease;
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease, -webkit-transform 0.2s ease;
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, -webkit-transform 0.2s ease;
}
.single-audio__btn:hover, .single-audio__btn:focus-visible {
  border-color: #8b96a3;
  background: #56616d;
  outline: none;
}
.single-audio__btn--primary {
  border-color: var(--orange);
  background: var(--orange);
  color: var(--white);
}
.single-audio__btn--primary:hover, .single-audio__btn--primary:focus-visible {
  border-color: #ff9a33;
  background: #ff9a33;
}
.single-audio__btn--secondary {
  border-color: #6b7682;
  background: #3f4852;
  color: var(--white);
}
.single-audio__btn--secondary:hover, .single-audio__btn--secondary:focus-visible {
  border-color: #8b96a3;
  background: #4a5560;
}
.single-audio__btn[hidden] {
  display: none;
}
.single-audio__btn[disabled] {
  opacity: 0.45;
  cursor: not-allowed;
}
.single-audio__icon {
  display: block;
}
.single-audio__icon--play {
  width: 0;
  height: 0;
  margin-left: 0.15rem;
  border-style: solid;
  border-width: 0.5rem 0 0.5rem 0.85rem;
  border-color: transparent transparent transparent currentColor;
}
.single-audio__icon--pause {
  width: 0.85rem;
  height: 1rem;
  border-left: 0.28rem solid currentColor;
  border-right: 0.28rem solid currentColor;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.single-audio__icon--stop {
  width: 0.85rem;
  height: 0.85rem;
  background: currentColor;
}
.single-audio.is-playing .single-audio__btn[data-single-audio-play] .single-audio__icon--play {
  width: 0.85rem;
  height: 1rem;
  margin-left: 0;
  border: 0;
  border-left: 0.28rem solid currentColor;
  border-right: 0.28rem solid currentColor;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.single-audio__track-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 0;
}
.single-audio__track {
  --single-audio-progress: 0%;
  width: 100%;
  height: 0.35rem;
  margin: 0;
  border-radius: 999px;
  background: linear-gradient(to right, var(--orange) var(--single-audio-progress), #4a5560 var(--single-audio-progress));
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
}
.single-audio__track::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 1rem;
  height: 1rem;
  border: 0;
  border-radius: 50%;
  background: var(--orange);
}
.single-audio__track::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  border: 0;
  border-radius: 50%;
  background: var(--orange);
}
.single-audio__time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.3rem;
  font-size: 1.1rem;
  line-height: normal;
  font-weight: 500;
  color: var(--text-subtle) !important;
}
.single-audio__time font {
  color: var(--text-subtle) !important;
}
.single-audio__status {
  min-height: 0;
  margin: 0;
  font-size: 1.1rem;
  line-height: 1.3;
  font-weight: 500;
  color: #adb3b8 !important;
}
.single-audio__status font {
  color: #adb3b8 !important;
}
.single-audio__status:empty {
  display: none;
}

.single-toc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
  width: 28rem;
  padding: 2.4rem;
  border: 1px solid #3a4149;
  border-radius: 0.5rem;
  background: #2c333b;
}
.single-toc.is-progress-only {
  gap: 0;
}
.single-toc.is-progress-only .single-toc__head,
.single-toc.is-progress-only .single-toc__nav {
  display: none;
}
.single-toc.is-progress-only .single-toc__progress {
  padding-top: 0;
  border-top: 0;
}
.single-toc__head {
  margin: 0;
  padding-bottom: 2.4rem;
  border-bottom: 1px solid #3a4149;
  font-size: 1.2rem;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--white) !important;
}
.single-toc__head font {
  color: var(--white) !important;
}
.single-toc__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.single-toc__link {
  display: block;
  font-size: 1.4rem;
  line-height: normal;
  font-weight: 500;
  color: var(--text-subtle) !important;
  text-decoration: none;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
.single-toc__link font {
  color: inherit !important;
}
.single-toc__link:hover {
  color: var(--white) !important;
}
.single-toc__link.is-active {
  color: var(--orange) !important;
}
.single-toc__progress {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  padding-top: 2.4rem;
  border-top: 1px solid #3a4149;
}
.single-toc__progress-label {
  margin: 0;
  font-size: 1.2rem;
  line-height: 1.5;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white) !important;
}
.single-toc__progress-label font {
  color: var(--white) !important;
}
.single-toc__progress-track {
  height: 0.6rem;
  border-radius: 999rem;
  background: var(--bg-blog);
  overflow: hidden;
}
.single-toc__progress-fill {
  display: block;
  width: 0;
  height: 100%;
  border-radius: 999rem;
  background: var(--orange);
  -webkit-transition: width 0.15s ease-out;
  transition: width 0.15s ease-out;
}

.single-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 4.8rem;
  max-width: 90.5rem;
}
.single-content__section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
}
.single-content h2 {
  margin: 0 0 2.4rem;
  font-size: 3.6rem;
  line-height: 4.32rem;
  font-weight: 900;
  color: var(--white) !important;
  scroll-margin-top: 10rem;
}
.single-content h2 font {
  color: var(--white) !important;
}
.single-content__body {
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-subtle) !important;
}
.single-content__body p,
.single-content__body li,
.single-content__body blockquote,
.single-content__body font,
.single-content__body span,
.single-content__body strong,
.single-content__body em {
  color: var(--text-subtle) !important;
}
.single-content__body h2,
.single-content__body h3,
.single-content__body h4 {
  margin: 3.2rem 0 1.6rem;
  color: var(--white) !important;
}
.single-content__body h2 font,
.single-content__body h3 font,
.single-content__body h4 font {
  color: var(--white) !important;
}
.single-content__body h2:first-child,
.single-content__body h3:first-child,
.single-content__body h4:first-child {
  margin-top: 0;
}
.single-content__body h2 {
  margin-bottom: 2.4rem;
}
.single-content__body p {
  margin: 0 0 2.56rem;
}
.single-content__body p:last-child {
  margin-bottom: 0;
}
.single-content__figure {
  height: 40rem;
  margin: 0;
  border-radius: 1rem;
  overflow: hidden;
}
.single-content__figure img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.single-related {
  position: relative;
  z-index: 2;
  margin-top: -12rem;
  padding-bottom: 12rem;
  background: var(--cream);
  overflow: visible;
}
.single-related::before {
  content: "";
  position: absolute;
  top: -12rem;
  right: 0;
  left: 0;
  height: 24rem;
  background: var(--bg-blog);
  pointer-events: none;
}
.single-related__outer {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 149.6rem;
  margin: 0 auto;
  padding: 0 1.5rem;
}
.single-related__panel {
  position: relative;
  z-index: 2;
  padding: 8rem 14rem;
  border-radius: 0.5rem;
  background: #2c333b;
}
.single-related__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  margin-bottom: 3.2rem;
}
.single-related__head .section-label {
  margin: 0;
}
.single-related__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: normal;
  font-weight: 900;
  color: var(--white) !important;
}
.single-related__head h2 font {
  color: var(--white) !important;
}
.single-related__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.6rem;
}

.page-migratemind {
  --mm-teal: #22E3C1;
  --mm-dark: #121B20;
  --mm-dark-alt: #121A1F;
  --mm-cream: #FFFDF6;
  --mm-section-teal: #395F65;
  --mm-tag-border: #EDEDED;
  --mm-font-display: 'Spline Sans', sans-serif;
  --mm-font-mono: 'Roboto Mono', monospace;
  background: var(--mm-dark);
}
.page-migratemind .migratemind-page {
  overflow: visible;
}
.page-migratemind .migratemind-page .mm-hero__tag {
  font-family: var(--mm-font-mono) !important;
}
.page-migratemind .migratemind-page .mm-hero h1,
.page-migratemind .migratemind-page .mm-hero h1 span {
  font-family: var(--mm-font-display) !important;
}
.page-migratemind .migratemind-page .mm-hero__title-line {
  color: var(--white) !important;
}
.page-migratemind .migratemind-page .mm-hero__title-accent {
  color: var(--mm-teal) !important;
}
.page-migratemind .migratemind-page .mm-hero__intro {
  font-family: var(--font-family) !important;
}
.page-migratemind .migratemind-page .mm-potential__title,
.page-migratemind .migratemind-page .mm-potential__title span {
  font-family: var(--mm-font-display) !important;
}
.page-migratemind .migratemind-page .mm-potential__title,
.page-migratemind .migratemind-page .mm-potential__title-line,
.page-migratemind .migratemind-page .mm-potential__title-accent {
  color: var(--mm-teal) !important;
}
.page-migratemind .migratemind-page .mm-potential__title-white {
  color: var(--white) !important;
}
.page-migratemind .migratemind-page .mm-potential__intro,
.page-migratemind .migratemind-page .mm-potential__card-title,
.page-migratemind .migratemind-page .mm-potential__card-text {
  font-family: var(--font-family) !important;
  color: var(--white) !important;
}
.page-migratemind .migratemind-page .mm-potential__card-title {
  font-family: var(--mm-font-display) !important;
}
.page-migratemind .migratemind-page .mm-llm__title,
.page-migratemind .migratemind-page .mm-llm__title span {
  font-family: var(--mm-font-display) !important;
}
.page-migratemind .migratemind-page .mm-llm__title {
  color: var(--white) !important;
}
.page-migratemind .migratemind-page .mm-llm__title-accent {
  color: var(--mm-teal) !important;
}
.page-migratemind .migratemind-page .mm-llm__intro,
.page-migratemind .migratemind-page .mm-llm__card-text {
  font-family: var(--font-family) !important;
  color: var(--white) !important;
}
.page-migratemind .migratemind-page .mm-scale__title,
.page-migratemind .migratemind-page .mm-scale__title span,
.page-migratemind .migratemind-page .mm-scale__step-title,
.page-migratemind .migratemind-page .mm-scale__compare-title,
.page-migratemind .migratemind-page .mm-scale__compare-card-title {
  font-family: var(--mm-font-display) !important;
}
.page-migratemind .migratemind-page .mm-scale__title {
  color: var(--mm-teal) !important;
}
.page-migratemind .migratemind-page .mm-scale__title-dark,
.page-migratemind .migratemind-page .mm-scale__intro,
.page-migratemind .migratemind-page .mm-scale__step-text {
  font-family: var(--font-family) !important;
  color: var(--mm-dark-alt) !important;
}
.page-migratemind .migratemind-page .mm-scale__step-title {
  color: var(--mm-teal) !important;
}
.page-migratemind .migratemind-page .mm-scale__compare-title,
.page-migratemind .migratemind-page .mm-scale__compare-card-title {
  color: var(--mm-teal) !important;
}
.page-migratemind .migratemind-page .mm-scale__compare-intro,
.page-migratemind .migratemind-page .mm-scale__compare-item-text {
  font-family: var(--font-family) !important;
  color: var(--white) !important;
}

.mm-hero {
  position: relative;
  z-index: 2;
  min-height: 68.5rem;
  overflow: visible;
  color: var(--white);
}
.mm-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.mm-hero__bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 112.42%;
  top: -6.21%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.mm-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(18, 27, 32, 0) 0%, var(--mm-dark) 100%);
}
.mm-hero__inner {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 68.5rem;
  padding: 11.8rem 0 4.8rem;
}
.mm-hero__tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-item-align: start;
  align-self: flex-start;
  padding: 1.2rem 2.4rem;
  border: 1px solid var(--mm-tag-border);
  border-radius: 6rem;
  background: var(--white);
  font-family: var(--mm-font-mono) !important;
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--gray) !important;
}
.mm-hero__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 65.9rem);
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 6rem;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-top: 4.8rem;
  margin-bottom: 4.8rem;
}
.mm-hero__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
  max-width: 49.7rem;
}
.mm-hero h1 {
  margin: 0;
  font-family: var(--mm-font-display) !important;
  font-size: 5rem;
  line-height: 110%;
  font-weight: 600;
  color: var(--white) !important;
}
.mm-hero h1 span {
  display: block;
}
.mm-hero__title-line {
  color: var(--white) !important;
}
.mm-hero__title-accent {
  color: var(--mm-teal) !important;
}
.mm-hero__intro {
  margin: 0;
  max-width: 49.7rem;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}
.mm-hero__brand {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  width: 100%;
  max-width: 65.9rem;
  height: 11.4rem;
}
.mm-hero__brand img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: right center;
  object-position: right center;
}
.mm-hero__logos {
  position: relative;
  z-index: 3;
  width: 100%;
  max-width: 121.6rem;
  margin-inline: auto;
  margin-top: auto;
  min-height: 11rem;
}
.mm-hero__logos-viewport {
  overflow: hidden;
  width: 100%;
}
.mm-hero__logos-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -webkit-animation: mm-hero-logos-marquee 35s linear infinite;
  animation: mm-hero-logos-marquee 35s linear infinite;
  -webkit-transition: none !important;
  transition: none !important;
  will-change: transform;
}
.mm-hero__logos:hover .mm-hero__logos-track, .mm-hero__logos:focus-within .mm-hero__logos-track {
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}
.mm-hero__logos-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 9.6rem;
  padding-right: 9.6rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.mm-hero__logos-group--clone {
  pointer-events: none;
}
.mm-hero__logos-group--clone .mm-hero__logo-item {
  pointer-events: auto;
}
.mm-hero__logo-item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 18rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  height: 2.9rem;
  z-index: 1;
}
.mm-hero__logo-item:hover, .mm-hero__logo-item:focus-within, .mm-hero__logo-item.is-tip-open {
  z-index: 5;
}
.mm-hero__logo-trigger {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.mm-hero__logo-trigger img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  pointer-events: none;
}
.mm-hero__logo-tip {
  position: absolute;
  top: calc(100% + 2.4rem);
  left: 50%;
  z-index: 20;
  width: 28.4rem;
  max-width: calc(100vw - 4.8rem);
  padding: 1.89rem 2rem 2rem;
  border-radius: 0.6rem;
  background: var(--white);
  -webkit-box-shadow: 0 1.2rem 3.2rem rgba(18, 27, 32, 0.18);
  box-shadow: 0 1.2rem 3.2rem rgba(18, 27, 32, 0.18);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  -webkit-transform: translateX(-50%) translateY(0.8rem);
  transform: translateX(-50%) translateY(0.8rem);
  -webkit-transition: opacity 0.25s ease, visibility 0.25s ease, -webkit-transform 0.25s ease !important;
  transition: opacity 0.25s ease, visibility 0.25s ease, -webkit-transform 0.25s ease !important;
  transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease !important;
  transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease, -webkit-transform 0.25s ease !important;
}
.mm-hero__logo-tip-arrow {
  position: absolute;
  top: -0.9rem;
  left: 50%;
  width: 1.8rem;
  height: 1.8rem;
  margin-left: -0.9rem;
  background: var(--white);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.mm-hero__logo-tip-quote {
  margin: 0 0 2rem;
  font-family: var(--font-family) !important;
  font-size: 1.21rem;
  line-height: 1.62;
  font-weight: 400;
  color: var(--gray) !important;
}
.mm-hero__logo-tip-author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1rem;
}
.mm-hero__logo-tip-avatar {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  -o-object-fit: cover;
  object-fit: cover;
}
.mm-hero__logo-tip-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
}
.mm-hero__logo-tip-name {
  font-family: var(--font-family) !important;
  font-size: 1.27rem;
  line-height: 1.54;
  font-weight: 700;
  color: var(--gray) !important;
}
.mm-hero__logo-tip-role {
  font-family: var(--font-family) !important;
  font-size: 1.27rem;
  line-height: 1.54;
  font-weight: 400;
  color: var(--gray) !important;
}

.mm-hero__logo-tip--portaled {
  position: fixed;
  top: var(--tip-top);
  left: var(--tip-left);
  z-index: 1000;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto;
  -webkit-transform: translateX(-50%) translateY(0) !important;
  transform: translateX(-50%) translateY(0) !important;
  -webkit-transition: opacity 0.25s ease, visibility 0.25s ease !important;
  transition: opacity 0.25s ease, visibility 0.25s ease !important;
}
.mm-hero__logo-tip--portaled.is-above > .mm-hero__logo-tip-arrow {
  top: auto;
  bottom: -0.9rem;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}

.mm-page-placeholder {
  min-height: 20rem;
  background: var(--mm-dark);
}

.mm-potential {
  position: relative;
  z-index: 1;
  background: var(--mm-section-teal);
  color: var(--white);
}
.mm-potential__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 7rem;
  padding: 10rem 0;
}
.mm-potential__header {
  display: grid;
  grid-template-columns: 56.1rem 54.7rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2.4rem;
}
.mm-potential__title {
  margin: 0;
  width: 100%;
  max-width: 56.1rem;
  font-family: var(--mm-font-display) !important;
  font-size: 5rem;
  line-height: 110%;
  font-weight: 600;
  color: var(--mm-teal) !important;
}
.mm-potential__title-line, .mm-potential__title-accent {
  color: var(--mm-teal) !important;
}
.mm-potential__title-white {
  color: var(--white) !important;
}
.mm-potential__intro {
  width: 100%;
  max-width: 54.7rem;
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}
.mm-potential__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.6rem;
}
.mm-potential__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 1.9rem;
  padding: 3.2rem;
  border-radius: 0.6rem;
  background: rgba(255, 255, 255, 0.05);
}
.mm-potential__card-icon {
  display: block;
  width: 3.6rem;
  height: 3.6rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.mm-potential__card-title {
  margin: 0;
  font-family: var(--mm-font-display) !important;
  font-size: 2.4rem;
  line-height: 110%;
  font-weight: 700;
  color: var(--white) !important;
}
.mm-potential__card-text {
  margin: 0;
  font-size: 1.6rem;
  line-height: 180%;
  font-weight: 500;
  color: var(--white) !important;
}

.mm-llm {
  background: var(--mm-dark-alt);
  color: var(--white);
}
.mm-llm__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 7rem;
  padding: 10rem 0;
}
.mm-llm__header {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
}
.mm-llm__title {
  margin: 0;
  font-family: var(--mm-font-display) !important;
  font-size: 5rem;
  line-height: 110%;
  font-weight: 600;
  color: var(--white) !important;
}
.mm-llm__title-accent {
  color: var(--mm-teal) !important;
}
.mm-llm__intro {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}
.mm-llm__cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.6rem;
}
.mm-llm__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 2rem;
  padding: 3.6rem 2.4rem;
  border-radius: 0.6rem;
  background: rgba(255, 255, 255, 0.05);
}
.mm-llm__card-icon {
  display: block;
  width: 3.6rem;
  height: 3.6rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.mm-llm__card-text {
  margin: 0;
  font-size: 1.7rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}

.mm-scale {
  background: var(--mm-cream);
  color: var(--mm-dark-alt);
}
.mm-scale__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 7rem;
  padding: 12rem 0;
}
.mm-scale__header {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
}
.mm-scale__title {
  margin: 0;
  font-family: var(--mm-font-display) !important;
  font-size: 5rem;
  line-height: 110%;
  font-weight: 600;
  color: var(--mm-teal) !important;
}
.mm-scale__title-dark {
  color: var(--mm-dark-alt) !important;
}
.mm-scale__intro {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--mm-dark-alt) !important;
}
.mm-scale__steps {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid var(--mm-tag-border);
  border-radius: 0.6rem;
  overflow: hidden;
}
.mm-scale__step {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 1.9rem;
  padding: 3.6rem;
  background: rgba(255, 255, 255, 0.05);
  border-right: 1px solid var(--mm-tag-border);
}
.mm-scale__step--last {
  border-right: none;
}
.mm-scale__step-icon {
  display: block;
  width: 3.6rem;
  height: 3.6rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.mm-scale__step-title {
  margin: 0;
  font-family: var(--mm-font-display) !important;
  font-size: 2.4rem;
  line-height: 110%;
  font-weight: 700;
  color: var(--mm-teal) !important;
}
.mm-scale__step-text {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--mm-dark-alt) !important;
}
.mm-scale__compare {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 6rem;
  padding: 8rem;
  border-radius: 0.6rem;
  background: var(--mm-dark-alt);
  color: var(--white);
}
.mm-scale__compare-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.6rem;
  text-align: center;
}
.mm-scale__compare-title {
  margin: 0;
  font-family: var(--mm-font-display) !important;
  font-size: 5rem;
  line-height: 110%;
  font-weight: 600;
  color: var(--mm-teal) !important;
}
.mm-scale__compare-intro {
  margin: 0;
  max-width: 100%;
  font-size: 1.6rem;
  line-height: 202.5%;
  font-weight: 500;
  color: var(--white) !important;
}
.mm-scale__compare-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.6rem;
}
.mm-scale__compare-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
  padding: 4.7rem 4.8rem;
  border-radius: 0.6rem;
  background: rgba(255, 255, 255, 0.05);
}
.mm-scale__compare-card-title {
  margin: 0;
  font-family: var(--mm-font-display) !important;
  font-size: 2.4rem;
  line-height: 110%;
  font-weight: 700;
  color: var(--mm-teal) !important;
}
.mm-scale__compare-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0.6rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.mm-scale__compare-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1rem;
  padding: 0.6rem 0 1.2rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.mm-scale__compare-item--last {
  border-bottom: none;
  padding-bottom: 0.6rem;
}
.mm-scale__compare-item-icon {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.mm-scale__compare-item-text {
  font-size: 1.7rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white) !important;
}

@-webkit-keyframes mm-hero-logos-marquee {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

@keyframes mm-hero-logos-marquee {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
.product-embed {
  --product-embed-header: 8.6rem;
  position: relative;
  width: 100%;
  height: calc(100dvh - var(--product-embed-header));
  min-height: 40rem;
  background: var(--bg-dark, #181c22);
  overflow: hidden;
}
.product-embed__frame {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  background: #fff;
}
.product-embed {
  /* Same-origin: iframe grows with content — only the page scrolls. */
}
.product-embed.is-fluid {
  height: auto;
  min-height: 0;
  overflow: visible;
}
.product-embed.is-fluid .product-embed__frame {
  height: auto;
  min-height: calc(100dvh - var(--product-embed-header));
}
.product-embed {
  /* Cross-origin: fill remaining viewport; parent scroll is locked via html class. */
}
.product-embed.is-fixed {
  height: calc(100dvh - var(--product-embed-header));
  overflow: hidden;
}

body:has(.product-embed) .site-footer {
  display: none;
}
body:has(.product-embed) main {
  padding: 0;
  margin: 0;
}

/* Cross-origin embed: single scrollbar inside the iframe. */
html.has-product-embed-fixed {
  height: 100%;
  overflow: hidden;
}
html.has-product-embed-fixed body {
  height: 100%;
  overflow: hidden;
}

@media (max-width: 1024px) {
  .product-embed {
    --product-embed-header: 7.6rem;
  }
}
@media (max-width: 768px) {
  .product-embed {
    --product-embed-header: 7.2rem;
  }
}
.ecosystem-page {
  background: var(--cream);
}
.ecosystem-page .divider-line {
  background: #eaebec;
}

/* ——— Hero ——— */
.eco-hero {
  padding: 7rem 0 0;
  background: var(--cream);
}
.eco-hero__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 5rem;
}
.eco-hero__head .section-label {
  display: block;
}
.eco-hero__body {
  display: grid;
  grid-template-columns: minmax(0, 59.4rem) minmax(0, 42rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
}
.eco-hero h1 {
  margin: 0;
  font-size: 6.3rem;
  line-height: 110%;
  font-weight: 900;
}
.eco-hero__intro {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.eco-hero__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-top: 4rem;
}
.eco-hero__btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1.2rem;
  padding: 1.6rem 3.2rem;
  border-radius: 0.5rem;
  font-size: 1.22rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  backdrop-filter: blur(5px);
  -webkit-transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
  transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
  transition: transform 0.2s ease, opacity 0.2s ease;
  transition: transform 0.2s ease, opacity 0.2s ease, -webkit-transform 0.2s ease;
  color: var(--white) !important;
}
.eco-hero__btn img {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 2.4rem;
  flex: 0 0 2.4rem;
  background: transparent;
}
.eco-hero__btn span {
  color: inherit !important;
}
.eco-hero__btn:hover {
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}
.eco-hero__btn--dark {
  border: 1px solid rgba(234, 235, 236, 0.3);
  background: var(--bg-dark);
}
.eco-hero {
  /* Figma 1304:615 — marquee infinito + fade 97px */
}
.eco-hero__logos {
  position: relative;
  overflow: hidden;
  margin: 5rem 0 0;
  min-height: 6.1rem;
}
.eco-hero__logos::before, .eco-hero__logos::after {
  content: "";
  position: absolute;
  top: 50%;
  z-index: 2;
  width: 9.7rem;
  height: 9.2rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  pointer-events: none;
}
.eco-hero__logos::before {
  left: 0;
  background: linear-gradient(to right, var(--cream) 0%, rgba(255, 253, 246, 0) 100%);
}
.eco-hero__logos::after {
  right: 0;
  background: linear-gradient(to left, var(--cream) 0%, rgba(255, 253, 246, 0) 100%);
}
.eco-hero__logos:hover .eco-hero__logos-track, .eco-hero__logos:focus-within .eco-hero__logos-track {
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}
.eco-hero__logos-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -webkit-animation: eco-logos-marquee 32s linear infinite;
  animation: eco-logos-marquee 32s linear infinite;
  will-change: transform;
}
.eco-hero__logos-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  gap: 5.2rem;
  padding-right: 5.2rem;
}
.eco-hero__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}
.eco-hero__logo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.eco-hero__logo--tractix {
  width: 16.8rem;
  height: 3.3rem;
}
.eco-hero__logo--migratemind {
  width: 20.7rem;
  height: 3.4rem;
}
.eco-hero__logo--opt3 {
  width: 14.9rem;
  height: 3.8rem;
}
.eco-hero__logo--radarai {
  width: 15.3rem;
  height: 4.1rem;
}
.eco-hero__logo--jhub {
  width: 7.7rem;
  height: 6.1rem;
}
.eco-hero__logo--taxflow {
  width: 17.4rem;
  height: 3.5rem;
}
.eco-hero__logo--nautilus {
  width: 19.5rem;
  height: 4.6rem;
}

@-webkit-keyframes eco-logos-marquee {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

@keyframes eco-logos-marquee {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
/* ——— Why ——— */
.eco-why {
  padding: 10rem 0 12rem;
}
.eco-why__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.9rem;
}
.eco-why__row {
  display: grid;
  grid-template-columns: minmax(0, 45rem) minmax(0, 68.7rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
}
.eco-why__row h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.eco-why__copy {
  margin: 0;
  font-size: 1.6rem;
  line-height: 180%;
  font-weight: 500;
  color: var(--text-muted);
}
.eco-why__copy strong {
  font-weight: 700;
  color: var(--text-muted);
}

/* ——— Pillars ——— */
.eco-pillars {
  position: relative;
  z-index: 2;
  margin-top: 0;
  padding: calc(12rem + var(--jump-section-edge-height)) 0 12rem;
  background: var(--bg-dark);
  color: var(--white);
}
.eco-pillars__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.9rem;
  margin-bottom: 6rem;
  max-width: 61.2rem;
}
.eco-pillars__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.eco-pillars__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.2rem;
}

.eco-pillar-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3.2rem;
  min-height: 25.3rem;
  padding: 2.4rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.5rem;
  background: #232a35;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.eco-pillar-card__icon {
  width: 2.4rem;
  height: 2.4rem;
}
.eco-pillar-card__icon img {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
}
.eco-pillar-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.eco-pillar-card__body h3 {
  margin: 0;
  font-size: 2.2rem;
  line-height: 1;
  font-weight: 700;
  color: var(--white);
}
.eco-pillar-card__body p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: #7a7d80;
}

/* ——— Products ——— */
.eco-products {
  padding: 12rem 0;
  background: var(--cream);
}
.eco-products__layout {
  display: grid;
  grid-template-columns: minmax(0, 48.1rem) minmax(0, 63.6rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 4rem;
}
.eco-products__intro {
  position: sticky;
  top: 12rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.9rem;
  padding-top: 0.2rem;
}
.eco-products__intro h2 {
  margin: 0;
  max-width: 57.2rem;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.eco-products__intro > p {
  margin: 0;
  max-width: 36.2rem;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.eco-products__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
}

.eco-product-card {
  border: 1px solid #eaebec;
  border-radius: 0.5rem;
  background: var(--cream);
}
.eco-product-card__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 3.2rem;
  padding: 3.2rem;
  text-decoration: none;
  color: inherit;
}
.eco-product-card__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 1.6rem;
}
.eco-product-card__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-width: 0;
  height: 4.6rem;
}
.eco-product-card__logo img {
  display: block;
  width: auto;
  max-width: 20.8rem;
  height: auto;
  max-height: 4.6rem;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: left center;
  object-position: left center;
}
.eco-product-card__category {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  font-size: 1.12rem;
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gray);
  white-space: nowrap;
}
.eco-product-card__tag {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0.6rem 1.6rem;
  border-radius: 0.5rem;
  background: var(--eco-tag-bg, var(--orange));
  color: var(--white);
  font-size: 1rem;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  white-space: nowrap;
}
.eco-product-card__tag.is-dark {
  color: var(--gray);
}
.eco-product-card__text {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}

/* ——— Personas ——— */
.eco-personas {
  padding: 12rem 0 24rem;
  background: rgba(255, 128, 0, 0.05);
}
.eco-personas__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  margin-bottom: 6rem;
}
.eco-personas__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.eco-personas__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2.4rem;
}

.eco-persona-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3.2rem;
  min-height: 27.2rem;
  padding: 2.5rem;
  border: 1px solid #eaebec;
  border-radius: 0.5rem;
  background: var(--cream);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.eco-persona-card h3 {
  margin: 0;
  font-size: 2rem;
  line-height: 130%;
  font-weight: 900;
  color: var(--gray);
}
.eco-persona-card__rows {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1rem;
}
.eco-persona-card__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0.6rem;
}
.eco-persona-card__row p {
  margin: 0;
  font-size: 1.5rem;
  line-height: 140%;
  font-weight: 500;
  color: var(--text-muted);
}
.eco-persona-card__rule {
  margin: 0;
  border: 0;
  border-top: 1px solid #eaebec;
}
.eco-persona-card__label {
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #5c6570;
}
.eco-persona-card__label--gain {
  color: var(--orange);
}

/* ——— ISO ——— */
.eco-iso {
  position: relative;
  z-index: 2;
  margin-top: -12rem;
  padding: 0 1.5rem 10rem;
  background: transparent;
}
.eco-iso__shell {
  width: 100%;
  max-width: 149.6rem;
  margin: 0 auto;
}
.eco-iso__panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: clamp(3.2rem, 8vw, 15.4rem);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 12rem clamp(2.4rem, 7vw, 14rem);
  border-radius: 1.5rem;
  background: var(--orange);
  color: var(--white);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.eco-iso__copy {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  max-width: 77.8rem;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 3.5rem;
}
.eco-iso__intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.eco-iso__intro .section-label {
  display: block;
  color: var(--white) !important;
}
.eco-iso__intro h2 {
  margin: 0;
  font-size: 4.8rem;
  line-height: 115%;
  font-weight: 900;
}
.eco-iso__intro h2 .text-white {
  color: var(--white) !important;
}
.eco-iso__intro h2 .text-gray {
  color: var(--gray) !important;
}
.eco-iso__intro > p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white);
}
.eco-iso__intro > p strong {
  font-weight: 700;
  color: var(--white);
}
.eco-iso__certs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
}
.eco-iso__certs-label {
  margin: 0;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--white);
}
.eco-iso__chips {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1.2rem;
}
.eco-iso__chip {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 11rem;
  flex: 1 1 11rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 0;
  padding: 1.3rem 1.2rem;
  border: 1px solid var(--white);
  border-radius: 0.5rem;
  font-size: 1.3rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.85) !important;
  background: transparent;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.eco-iso__chip span {
  color: inherit !important;
}
.eco-iso__chip.is-active {
  border-color: var(--gray);
  color: var(--gray) !important;
}
.eco-iso__seal {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 28.4rem;
  flex: 0 1 28.4rem;
  width: min(28.4rem, 100%);
  min-width: 0;
}
.eco-iso__seal img {
  display: block;
  width: 100%;
  height: auto;
}

/* ——— CTA ——— */
.eco-cta {
  padding: 0 1.5rem 12rem;
  background: var(--cream);
}
.eco-cta__shell {
  width: 100%;
  max-width: 149.6rem;
  margin: 0 auto;
}
.eco-cta__panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 4rem;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 12rem clamp(2.4rem, 7vw, 14rem);
  border: 1px solid #eaebec;
  border-radius: 0.5rem;
  background: var(--cream);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.eco-cta__heading {
  margin: 0;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 32rem;
  flex: 0 1 32rem;
  max-width: 32rem;
  font-size: 3.8rem;
  line-height: 110%;
  font-weight: 900;
}
.eco-cta__text {
  margin: 0;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 38.7rem;
  flex: 0 1 38.7rem;
  max-width: 38.7rem;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.eco-cta__btn {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 28.1rem;
  flex: 0 0 28.1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 28.1rem;
  height: 15.3rem;
  padding: 2.4rem;
  border: 1px solid var(--gray);
  border-radius: 0.5rem;
  background: var(--gray);
  text-decoration: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: background 0.2s ease, border-color 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease;
}
.eco-cta__btn:hover {
  background: var(--orange);
  border-color: var(--orange);
}
.eco-cta__btn-icon {
  width: 2.4rem;
  height: 2.4rem;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}
.eco-cta__btn-label {
  width: 100%;
  color: var(--white) !important;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
}

@media (max-width: 1024px) {
  .eco-hero {
    padding-top: 5rem;
  }
  .eco-hero__body {
    grid-template-columns: 1fr;
  }
  .eco-hero h1 {
    font-size: clamp(3.6rem, 8vw, 5.2rem);
  }
  .eco-why__row {
    grid-template-columns: 1fr;
  }
  .eco-why__row h2 {
    font-size: clamp(3.2rem, 7vw, 4.4rem);
  }
  .eco-pillars {
    padding: calc(8rem + var(--jump-section-edge-height)) 0 8rem;
  }
  .eco-pillars__grid {
    grid-template-columns: 1fr;
  }
  .eco-pillars__head h2 {
    font-size: clamp(3.2rem, 7vw, 4.4rem);
  }
  .eco-products {
    padding: 8rem 0;
  }
  .eco-products__layout {
    grid-template-columns: 1fr;
    gap: 4rem;
  }
  .eco-products__intro {
    position: static;
  }
  .eco-products__intro h2 {
    font-size: clamp(3.2rem, 7vw, 4.4rem);
  }
  .eco-product-card__head {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .eco-personas {
    padding: 8rem 0 16rem;
  }
  .eco-personas__grid {
    grid-template-columns: 1fr 1fr;
  }
  .eco-personas__head h2 {
    font-size: clamp(3.2rem, 7vw, 4.4rem);
  }
  .eco-iso {
    margin-top: -8rem;
    padding: 0 1.5rem 6rem;
  }
  .eco-iso__panel {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 4rem;
    padding: 6rem 3.2rem;
  }
  .eco-iso__chips {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .eco-iso__chip {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 calc(50% - 0.6rem);
    flex: 1 1 calc(50% - 0.6rem);
    min-width: 0;
  }
  .eco-iso__seal {
    width: 18rem;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
    -ms-flex-item-align: center;
    align-self: center;
  }
  .eco-iso__intro h2 {
    font-size: clamp(3.2rem, 7vw, 4rem);
  }
  .eco-cta {
    padding: 0 1.5rem 8rem;
  }
  .eco-cta__panel {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3.2rem;
    padding: 6rem 3.2rem;
  }
  .eco-cta__heading, .eco-cta__text {
    max-width: none;
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
  }
  .eco-cta__heading {
    font-size: clamp(2.8rem, 6vw, 3.4rem);
  }
  .eco-cta__btn {
    width: 28.1rem;
    max-width: 100%;
    aspect-ratio: 281/153;
    height: auto;
  }
}
@media (max-width: 992px) {
  .eco-personas__grid {
    grid-template-columns: 1fr;
  }
  .eco-hero__logos-group {
    gap: 3.2rem;
    padding-right: 3.2rem;
  }
  .eco-hero__logos::before, .eco-hero__logos::after {
    width: 4.8rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .eco-hero__logos-track {
    -webkit-animation: none;
    animation: none;
  }
}
/* Home — ecosystem teaser (grid de produtos) */
.eco-teaser {
  padding: 8rem 0 12rem;
}
.eco-teaser .section-head {
  margin-bottom: 6.4rem;
}
.eco-teaser .section-head h2 {
  margin: 1.6rem 0 0;
  max-width: 72rem;
  font-size: clamp(3.2rem, 4vw, 5.2rem);
  line-height: 110%;
  font-weight: 900;
}
.eco-teaser .section-head .section-head__desc {
  margin: 2rem 0 0;
  max-width: 56rem;
  font-size: 1.6rem;
  line-height: 160%;
  color: var(--text-muted);
}
.eco-teaser {
  /* Cards are narrower in a 3-col grid than on /ecossistema/ —
     stack logo above meta so category/tag never overlap the mark. */
}
.eco-teaser .eco-product-card__link {
  gap: 2.4rem;
  padding: 2.4rem;
}
.eco-teaser .eco-product-card__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: "logo logo" "category tag";
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 1.2rem;
  -moz-column-gap: 1.2rem;
  column-gap: 1.2rem;
  row-gap: 1.6rem;
}
.eco-teaser .eco-product-card__logo {
  grid-area: logo;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  width: 100%;
  max-width: 100%;
  height: 3.6rem;
}
.eco-teaser .eco-product-card__logo img {
  max-width: 100%;
  max-height: 3.6rem;
}
.eco-teaser .eco-product-card__category {
  grid-area: category;
  justify-self: start;
  font-size: 1rem;
  letter-spacing: 0.18em;
}
.eco-teaser .eco-product-card__tag {
  grid-area: tag;
  justify-self: end;
  padding: 0.5rem 1.2rem;
}
.eco-teaser .eco-product-card__text {
  font-size: 1.5rem;
}

.eco-teaser__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.4rem;
}

.eco-teaser__cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 4.8rem;
}
.eco-teaser__cta .btn {
  color: var(--gray) !important;
  border-color: var(--border-gray-light);
  background: transparent;
}
.eco-teaser__cta .btn img {
  -webkit-filter: none;
  filter: none;
}
.eco-teaser__cta .btn:hover {
  border-color: var(--orange);
  color: var(--orange) !important;
}

@media (max-width: 1024px) {
  .eco-teaser__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 992px) {
  .eco-teaser {
    padding: 8rem 0;
  }
  .eco-teaser__grid {
    grid-template-columns: 1fr;
  }
}
.governance-page {
  background: var(--cream);
}
.governance-page .divider-line {
  background: #eaebec;
}

/* ——— Hero (cream) ——— */
.gov-hero {
  padding: 7rem 0 9rem;
}
.gov-hero__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 5rem;
}
.gov-hero__head .section-label {
  display: block;
}
.gov-hero__body {
  display: grid;
  grid-template-columns: minmax(0, 59.4rem) minmax(0, 42rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
  width: 100%;
}
.gov-hero__title {
  margin: 0;
  font-size: 6.3rem;
  line-height: 110%;
  font-weight: 900;
}
.gov-hero__intro {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: #7a7d80;
}
.gov-hero__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-top: 4rem;
}
.gov-hero__btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1.2rem;
  padding: 1.6rem 3.2rem;
  border-radius: 0.5rem;
  font-size: 1.22rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  backdrop-filter: blur(5px);
  -webkit-transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
  transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
  transition: transform 0.2s ease, opacity 0.2s ease;
  transition: transform 0.2s ease, opacity 0.2s ease, -webkit-transform 0.2s ease;
  /* Beat global `* { color: var(--text) }` so label stays white */
  color: var(--white) !important;
}
.gov-hero__btn img {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 2.4rem;
  flex: 0 0 2.4rem;
  background: transparent;
}
.gov-hero__btn span {
  color: inherit !important;
}
.gov-hero__btn:hover {
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}
.gov-hero__btn--dark {
  border: 1px solid rgba(234, 235, 236, 0.3);
  background: var(--bg-dark);
}
.gov-hero__btn--orange {
  border: 1px solid var(--orange);
  background: var(--orange);
  letter-spacing: 0;
  font-size: 1.3rem;
}

/* ——— Shadow AI / problem ——— */
.gov-problem {
  position: relative;
  z-index: 1;
  margin-top: calc(-1 * var(--jump-section-edge-height));
  padding-top: calc(12rem + var(--jump-section-edge-height));
  padding-bottom: 10rem;
  background: var(--bg-dark);
  color: var(--white);
  overflow: visible;
}
.gov-problem__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 0;
}
.gov-problem__head .section-label {
  display: block;
}
.gov-problem__title-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 4rem;
}
.gov-problem__title-row h2 {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 59.4rem;
  flex: 0 1 59.4rem;
  max-width: 59.4rem;
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.gov-problem__lede {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 48.9rem;
  flex: 0 1 48.9rem;
  max-width: 48.9rem;
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white);
}
.gov-problem__lede strong {
  font-weight: 700;
  color: var(--orange);
}
.gov-problem__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.2rem;
  margin-top: 18.4rem;
}

.gov-problem-card {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  gap: 1.9rem;
  min-height: 24.6rem;
  padding: 2.5rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.5rem;
  background: #232a35;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: visible;
}
.gov-problem-card__icon {
  position: absolute;
  top: -11rem;
  left: 50%;
  width: 22rem;
  height: 22rem;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  pointer-events: none;
  z-index: 2;
  background: transparent;
}
.gov-problem-card__icon img {
  display: block;
  width: 22rem;
  height: 22rem;
  -o-object-fit: contain;
  object-fit: contain;
  background: transparent;
  mix-blend-mode: normal;
}
.gov-problem-card__number {
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.149em;
  color: var(--orange);
}
.gov-problem-card__title {
  margin: 0;
  font-size: 1.8rem;
  line-height: 140%;
  font-weight: 700;
  color: var(--white);
}

/* ——— Causas (2×2 split) ——— */
.gov-causes {
  padding: 12rem 0;
}
.gov-causes__layout {
  display: grid;
  grid-template-columns: minmax(0, 39.9rem) minmax(0, 72.7rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4.8rem;
}
.gov-causes__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
}
.gov-causes__head .section-label {
  display: block;
}
.gov-causes__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.gov-causes__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.2rem;
}

.gov-cause-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 6rem;
  min-height: 21.3rem;
  padding: 2.5rem;
  border: 1px solid #eaebec;
  border-radius: 0.5rem;
  background: #fffdf6;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.gov-cause-card__number {
  font-size: 1.22rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #7a7d80;
}
.gov-cause-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.gov-cause-card__body h3 {
  margin: 0;
  font-size: 2rem;
  line-height: 130%;
  font-weight: 900;
  color: var(--orange);
}
.gov-cause-card__body p {
  margin: 0;
  font-size: 1.5rem;
  line-height: 160%;
  font-weight: 500;
  color: #7a7d80;
}

/* ——— Solução (dark split) ——— */
.gov-solution {
  position: relative;
  z-index: 1;
  padding: 12rem 0;
  background: var(--bg-dark);
  color: var(--white);
}
.gov-solution__layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 4.8rem;
}
.gov-solution__head {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 46.3rem;
  flex: 0 1 46.3rem;
  max-width: 46.3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.9rem;
}
.gov-solution__head .section-label {
  display: block;
}
.gov-solution__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.gov-solution__desc {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white);
}
.gov-solution__cards {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 63rem;
  flex: 0 1 63rem;
  max-width: 63rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
}

.gov-layer-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.1rem;
  padding: 2.4rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.5rem;
  background: #232a35;
  color: var(--white);
}
.gov-layer-card h3 {
  margin: 0;
  font-size: 2.2rem;
  line-height: 130%;
  font-weight: 900;
  color: var(--white);
}
.gov-layer-card__lead {
  margin: 0;
  font-size: 1.5rem;
  line-height: 160%;
  font-weight: 500;
  /* Beat global `* { color: var(--text) }` */
  color: rgba(255, 255, 255, 0.85) !important;
}
.gov-layer-card p {
  margin: 0;
  font-size: 1.5rem;
  line-height: 160%;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.85) !important;
}
.gov-layer-card p strong {
  font-weight: 700;
  color: var(--orange) !important;
}
.gov-layer-card__badge {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-item-align: start;
  align-self: flex-start;
  padding: 0.8rem 1.8rem;
  border-radius: 0.5rem;
  background: rgba(255, 128, 0, 0.12);
  color: var(--orange);
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.4;
}
.gov-layer-card__steps {
  list-style: none;
  margin: 0;
  padding: 1rem 0 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.6rem;
}
.gov-layer-card__steps li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0.5rem;
  padding-top: 1.4rem;
  border-top: 2px solid var(--orange);
}
.gov-layer-card__steps li strong {
  font-size: 1.4rem;
  font-weight: 900;
  color: var(--white) !important;
}
.gov-layer-card__steps li span {
  font-size: 1.3rem;
  line-height: 150%;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.85) !important;
}
.gov-layer-card--radar {
  gap: 1.9rem;
}

/* ——— Pilares ——— */
.gov-pillars {
  padding: 10rem 0;
}
.gov-pillars__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.9rem;
  margin-bottom: 6rem;
}
.gov-pillars__head .section-label {
  display: block;
}
.gov-pillars__head h2 {
  margin: 0;
  max-width: 87rem;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.gov-pillars__desc {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: #7a7d80;
}
.gov-pillars__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.2rem;
}

.gov-pillar-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  min-height: 25.8rem;
  padding: 2.4rem;
  border: 1px solid #eaebec;
  background: transparent;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.gov-pillar-card__icon {
  width: 2.4rem;
  height: 2.4rem;
}
.gov-pillar-card__icon img {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
}
.gov-pillar-card h3 {
  margin: 0 0 1.2rem;
  font-size: 2.2rem;
  line-height: 100%;
  font-weight: 700;
  color: var(--orange);
}
.gov-pillar-card p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: #7a7d80;
}

/* ——— Jornada ——— */
.gov-journey {
  padding: 12rem 0 24rem;
  background: rgba(255, 128, 0, 0.05);
}
.gov-journey__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
  margin-bottom: 6rem;
}
.gov-journey__head .section-label {
  display: block;
}
.gov-journey__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
  color: var(--orange);
}
.gov-journey__desc {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: #7a7d80;
}
.gov-journey__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.4rem;
}

.gov-journey-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 4rem;
  min-height: 28.3rem;
  padding: 2.5rem;
  border: 1px solid #eaebec;
  border-radius: 0.5rem;
  background: #fffdf6;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.gov-journey-card__pill {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-item-align: start;
  align-self: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.6rem 1.4rem 0.7rem;
  border-radius: 999px;
  background: var(--orange);
  color: var(--white);
  font-size: 1.2rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.gov-journey-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1rem;
}
.gov-journey-card__body h3 {
  margin: 0;
  font-size: 2rem;
  line-height: 130%;
  font-weight: 900;
  color: var(--gray);
}
.gov-journey-card__body p {
  margin: 0;
  font-size: 1.5rem;
  line-height: 160%;
  font-weight: 500;
  color: #7a7d80;
}

/* ——— ISO (orange panel — Figma 1267:1423) ——— */
.gov-iso {
  position: relative;
  z-index: 2;
  margin-top: -12rem;
  padding: 0 1.5rem 10rem;
  background: transparent;
}
.gov-iso__shell {
  width: 100%;
  max-width: 149.6rem;
  margin: 0 auto;
}
.gov-iso__panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: clamp(3.2rem, 8vw, 15.4rem);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 12rem clamp(2.4rem, 7vw, 14rem);
  border-radius: 1.5rem;
  background: var(--orange);
  color: var(--white);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.gov-iso__copy {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  max-width: 77.8rem;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 3.5rem;
}
.gov-iso__intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.gov-iso__intro .section-label {
  display: block;
  color: var(--white) !important;
}
.gov-iso__intro h2 {
  margin: 0;
  font-size: 4.8rem;
  line-height: 115%;
  font-weight: 900;
}
.gov-iso__intro h2 .text-white {
  color: var(--white) !important;
}
.gov-iso__intro h2 .text-gray {
  color: var(--gray) !important;
}
.gov-iso__intro > p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white);
}
.gov-iso__intro > p strong {
  font-weight: 700;
  color: var(--white);
}
.gov-iso__certs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
}
.gov-iso__certs-label {
  margin: 0;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--white);
}
.gov-iso__chips {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1.2rem;
}
.gov-iso__chip {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 11rem;
  flex: 1 1 11rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 0;
  padding: 1.3rem 1.2rem;
  border: 1px solid var(--white);
  border-radius: 0.5rem;
  font-size: 1.3rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  /* Beat global `* { color: var(--text) }` on nested spans */
  color: var(--white) !important;
  background: transparent;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.gov-iso__chip span {
  color: inherit !important;
}
.gov-iso__chip.is-active {
  border-color: var(--white);
  background: transparent;
  color: var(--white) !important;
}
.gov-iso__seal {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 28.4rem;
  flex: 0 1 28.4rem;
  width: min(28.4rem, 100%);
  min-width: 0;
  height: auto;
}
.gov-iso__seal img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
}

/* ——— Expertise ——— */
.gov-expertise {
  padding: 10rem 0;
}
.gov-expertise__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 6.4rem;
}
.gov-expertise__head .section-label {
  display: block;
}
.gov-expertise__head h2 {
  margin: 0;
  max-width: 72rem;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.gov-expertise__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.2rem;
}

.gov-expertise-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 6.4rem;
  min-height: 28.1rem;
  padding: 2.5rem;
  border: 1px solid #eaebec;
  border-radius: 0.5rem;
  background: #fffdf6;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.gov-expertise-card__index {
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--orange);
}
.gov-expertise-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.1rem;
}
.gov-expertise-card__body h3 {
  margin: 0;
  font-size: 1.8rem;
  line-height: 130%;
  font-weight: 900;
  color: var(--gray);
}
.gov-expertise-card__body p {
  margin: 0;
  font-size: 1.45rem;
  line-height: 160%;
  font-weight: 500;
  color: #7a7d80;
}

/* ——— Próximos passos / Diagnóstico (Figma 1269:2236) ——— */
.gov-diagnosis {
  position: relative;
  z-index: 1;
  margin-top: calc(-1 * var(--jump-section-edge-height));
  padding-top: calc(12rem + var(--jump-section-edge-height));
  padding-bottom: 24rem;
  background: var(--bg-dark);
  color: var(--white);
  overflow: visible;
}
.gov-diagnosis__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.88rem;
  margin-bottom: 6.4rem;
}
.gov-diagnosis__head .section-label {
  display: block;
}
.gov-diagnosis__title-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 4rem;
}
.gov-diagnosis__title-row h2 {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 50.3rem;
  flex: 0 1 50.3rem;
  max-width: 50.3rem;
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.gov-diagnosis__lede {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 36.2rem;
  flex: 0 1 36.2rem;
  max-width: 36.2rem;
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: #7a7d80;
}
.gov-diagnosis {
  /* Cards scroll within the 1216px container (Figma Frame 3088). */
}
.gov-diagnosis__track {
  width: 100%;
  max-width: 121.6rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  cursor: -webkit-grab;
  cursor: grab;
  scrollbar-width: none;
  -ms-overflow-style: none;
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}
.gov-diagnosis__track::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
.gov-diagnosis__track.is-dragging {
  cursor: -webkit-grabbing;
  cursor: grabbing;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.gov-diagnosis__track.is-dragging a,
.gov-diagnosis__track.is-dragging button {
  pointer-events: none;
}
.gov-diagnosis__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
.gov-diagnosis__progress {
  margin-top: 4rem;
  margin-bottom: 4rem;
  background: rgba(255, 255, 255, 0.12);
  pointer-events: none;
}
.gov-diagnosis__progress span {
  width: 25%;
}

.gov-diagnosis-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 32.6rem;
  flex: 0 0 32.6rem;
  width: 32.6rem;
  height: 27.62rem;
  padding: 2.5rem;
  margin-right: -1px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: #232a35;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.gov-diagnosis-card:first-child {
  border-radius: 0.5rem 0 0 0.5rem;
}
.gov-diagnosis-card:last-child {
  margin-right: 0;
  border-radius: 0 0.5rem 0.5rem 0;
}
.gov-diagnosis-card__index {
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--orange);
}
.gov-diagnosis-card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.1rem;
}
.gov-diagnosis-card__body h3 {
  margin: 0;
  font-size: 1.8rem;
  line-height: 130%;
  font-weight: 700;
  color: var(--orange);
}
.gov-diagnosis-card__body p {
  margin: 0;
  font-size: 1.45rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--white);
}

/* ——— CTA ——— */
.gov-cta {
  position: relative;
  z-index: 2;
  margin-top: -6rem;
  padding: 0 1.5rem 10rem;
  background: transparent;
}
.gov-cta__shell {
  width: 100%;
  max-width: 149.6rem;
  margin: 0 auto;
}
.gov-cta__panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 6.8rem;
  width: 100%;
  max-width: 100%;
  padding: 12rem 14.2rem;
  border: 1px solid #eaebec;
  border-radius: 0.5rem;
  background: #fffdf6;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.gov-cta__heading {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 32rem;
  flex: 0 1 32rem;
  max-width: 32rem;
  margin: 0;
  font-size: 3.8rem;
  line-height: 1.1;
  font-weight: 900;
}
.gov-cta__text {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 38.7rem;
  flex: 0 1 38.7rem;
  max-width: 38.7rem;
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: #7a7d80;
}
.gov-cta__btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 28.1rem;
  flex: 0 0 28.1rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 28.1rem;
  height: 15.3rem;
  padding: 2.4rem;
  border: 1px solid var(--gray);
  border-radius: 0.5rem;
  background: var(--gray);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  text-decoration: none;
  -webkit-transition: background 0.25s ease, -webkit-transform 0.25s ease;
  transition: background 0.25s ease, -webkit-transform 0.25s ease;
  transition: background 0.25s ease, transform 0.25s ease;
  transition: background 0.25s ease, transform 0.25s ease, -webkit-transform 0.25s ease;
}
.gov-cta__btn::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(ellipse at 70% 20%, rgba(255, 255, 255, 0.08) 0%, transparent 55%), repeating-linear-gradient(-12deg, transparent 0, transparent 6px, rgba(0, 0, 0, 0.12) 6px, rgba(0, 0, 0, 0.12) 7px);
  opacity: 0.35;
  pointer-events: none;
  mix-blend-mode: soft-light;
}
.gov-cta__btn:hover {
  background: #232a35;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}
.gov-cta__btn-icon {
  position: relative;
  z-index: 1;
  display: block;
  -ms-flex-item-align: end;
  align-self: flex-end;
  width: 2.4rem;
  height: 2.4rem;
}
.gov-cta__btn-label {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1;
  text-align: left;
  text-transform: uppercase;
  color: var(--white);
}

/* ——— Responsive ——— */
@media (max-width: 1200px) {
  .gov-problem__grid,
  .gov-expertise__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .gov-problem-card {
    padding-top: 10rem;
  }
  .gov-problem-card__icon {
    top: 1.2rem;
    width: 14rem;
    height: 14rem;
  }
  .gov-problem-card__icon img {
    width: 14rem;
    height: 14rem;
  }
  .gov-problem__grid {
    margin-top: 2.4rem;
  }
  .gov-diagnosis__track {
    margin-right: 0;
    max-width: 100%;
  }
  .gov-diagnosis__grid {
    margin: 0;
    padding-right: 0;
  }
  .gov-diagnosis-card {
    -ms-flex-preferred-size: 28rem;
    flex-basis: 28rem;
    width: 28rem;
    height: auto;
    min-height: 27.62rem;
  }
  .gov-iso__panel {
    gap: 4rem;
    padding: 6.4rem 4.8rem;
  }
  .gov-iso__chips {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .gov-iso__chip {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 calc(33.333% - 0.8rem);
    flex: 1 1 calc(33.333% - 0.8rem);
    min-width: 0;
  }
  .gov-cta__panel {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 3.2rem;
    padding: 6.4rem 4.8rem;
  }
  .gov-cta__btn {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 28.1rem;
    flex: 0 0 28.1rem;
  }
}
@media (max-width: 996px) {
  .gov-hero {
    padding-top: 4.8rem;
  }
  .gov-hero__body {
    grid-template-columns: 1fr;
  }
  .gov-hero__title {
    font-size: 4.2rem;
    max-width: none;
  }
  .gov-hero__intro {
    max-width: none;
  }
  .gov-problem__title-row,
  .gov-diagnosis__title-row,
  .gov-solution__layout,
  .gov-causes__layout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    grid-template-columns: 1fr;
  }
  .gov-solution__layout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
  .gov-solution__head,
  .gov-solution__cards,
  .gov-problem__title-row h2,
  .gov-problem__lede,
  .gov-diagnosis__title-row h2,
  .gov-diagnosis__lede {
    max-width: none;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
  }
  .gov-problem__grid,
  .gov-pillars__grid,
  .gov-journey__grid,
  .gov-expertise__grid,
  .gov-causes__grid,
  .gov-layer-card__steps {
    grid-template-columns: 1fr;
  }
  .gov-diagnosis__track {
    margin-right: 0;
    max-width: 100%;
  }
  .gov-diagnosis__grid {
    margin: 0;
    padding-right: 0;
  }
  .gov-diagnosis-card {
    -ms-flex-preferred-size: min(32.6rem, 85vw);
    flex-basis: min(32.6rem, 85vw);
    width: min(32.6rem, 85vw);
    height: auto;
    min-height: 27.62rem;
    border-radius: 0.5rem;
    margin-right: 1.2rem;
  }
  .gov-diagnosis-card:last-child {
    margin-right: 0;
  }
  .gov-problem,
  .gov-solution,
  .gov-journey,
  .gov-diagnosis {
    padding: 8rem 0 6.4rem;
  }
  .gov-causes,
  .gov-pillars,
  .gov-expertise {
    padding: 6.4rem 0;
  }
  .gov-iso {
    margin-top: -4.8rem;
    padding: 0 1.5rem 6.4rem;
  }
  .gov-problem__title-row h2,
  .gov-causes__head h2,
  .gov-solution__head h2,
  .gov-pillars__head h2,
  .gov-journey__head h2,
  .gov-expertise__head h2,
  .gov-diagnosis__title-row h2,
  .gov-iso__intro h2 {
    font-size: 3.6rem;
  }
  .gov-iso__panel {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .gov-iso__copy {
    max-width: none;
  }
  .gov-iso__seal {
    -ms-flex-item-align: center;
    align-self: center;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
    width: min(28.4rem, 70vw);
    height: auto;
  }
  .gov-iso__seal img {
    width: 100%;
    height: auto;
  }
  .gov-cta {
    margin-top: -3rem;
    padding-bottom: 4.8rem;
  }
  .gov-cta__panel {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 2.4rem;
    padding: 3.2rem 2.4rem;
  }
  .gov-cta__heading {
    font-size: 3.2rem;
  }
  .gov-cta__heading,
  .gov-cta__text {
    max-width: none;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
  }
  .gov-cta__btn {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 28.1rem;
    flex: 0 0 28.1rem;
    width: 28.1rem;
    height: 15.3rem;
    max-width: 28.1rem;
  }
}
@media (max-width: 575px) {
  .gov-hero__title {
    font-size: 3.2rem;
  }
  .gov-hero__btn {
    width: 100%;
  }
  .gov-problem__grid {
    grid-template-columns: 1fr;
  }
  .gov-cta__panel {
    gap: 2rem;
    padding: 2.4rem 2rem;
  }
  .gov-cta__heading {
    font-size: 2.8rem;
  }
  /* Keep desktop CTA card proportions (281×153) */
  .gov-cta__btn {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: min(28.1rem, 100%);
    max-width: 28.1rem;
    height: auto;
    aspect-ratio: 281/153;
  }
}
.page-vertical {
  background: var(--cream);
}

.vertical-page .divider-line {
  background: #eaebec;
}

/* ——— Hero ——— */
.vertical-hero {
  padding: 7rem 0 0;
}
.vertical-hero__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 4.8rem;
}
.vertical-hero__head .section-label {
  display: block;
}
.vertical-hero__body {
  display: grid;
  grid-template-columns: minmax(0, 59.4rem) minmax(0, 42rem);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  gap: 3rem;
}
.vertical-hero h1 {
  margin: 0;
  font-size: 6.3rem;
  line-height: 110%;
  font-weight: 900;
}
.vertical-hero__intro {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}

/* ——— Resposta rápida ——— */
.vertical-answer {
  padding: 4.8rem 0 0;
}
.vertical-answer__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.5rem;
  padding: 3.2rem 3.3rem 3.3rem;
  border: 1px solid rgba(255, 128, 0, 0.1);
  border-radius: 0.5rem;
  background: rgba(255, 128, 0, 0.05);
}
.vertical-answer__title {
  margin: 0;
  font-size: 2.2rem;
  line-height: 130%;
  font-weight: 700;
  color: var(--orange);
}
.vertical-answer__text {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}

/* ——— Body + table ——— */
.vertical-body {
  padding: 2.4rem 0 0;
}
.vertical-body__copy {
  display: block;
  max-width: 96rem;
  margin-bottom: 6.4rem;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.vertical-body__copy > * + * {
  margin-top: 2.4rem;
}
.vertical-body__copy h2,
.vertical-body__copy h3 {
  margin: 0;
  color: var(--gray);
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 140%;
}
.vertical-body__copy h2 {
  font-size: 2rem;
  line-height: 140%;
  color: var(--orange);
}
.vertical-body__copy p {
  margin: 0;
}
.vertical-body__copy p + p {
  margin-top: 1.6rem;
}
.vertical-body__copy {
  /* Keep body copy continuous — no hero-scale headings mid-section. */
}
.vertical-body__copy h2 + p,
.vertical-body__copy p + h2 {
  margin-top: 1.6rem;
}
.vertical-body__copy strong {
  font-weight: 700;
  color: var(--gray);
}
.vertical-body__copy ul {
  margin: 0;
  padding-left: 1.8rem;
}
.vertical-body__copy li {
  margin-bottom: 0.8rem;
}

.vertical-table {
  margin-bottom: 0;
  padding-bottom: 10rem;
}
.vertical-table__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.5rem;
  margin-bottom: 3.2rem;
}
.vertical-table__head .section-label {
  display: block;
}
.vertical-table__head h2 {
  margin: 0;
  font-size: 3.4rem;
  line-height: 110%;
  font-weight: 900;
}
.vertical-table__scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #f7f5ee;
  border-radius: 0.5rem;
}
.vertical-table table {
  width: 100%;
  min-width: 56rem;
  border-collapse: collapse;
  background: var(--cream);
}
.vertical-table th,
.vertical-table td {
  padding: 1.6rem 2rem;
  text-align: left;
  font-size: 1.4rem;
  line-height: 150%;
  vertical-align: top;
  border-bottom: 1px solid #eaebec;
}
.vertical-table thead th {
  font-size: 1.12rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--orange);
  background: rgba(45, 53, 61, 0.04);
}
.vertical-table tbody th {
  font-weight: 700;
  color: var(--gray);
  white-space: nowrap;
}
.vertical-table tbody td {
  font-weight: 500;
  color: var(--text-muted);
}
.vertical-table tbody tr:last-child th,
.vertical-table tbody tr:last-child td {
  border-bottom: 0;
}

/* ——— Entregas ——— */
.vertical-deliverables {
  position: relative;
  z-index: 1;
  padding: 12rem 0 10rem;
  background: var(--bg-dark);
  color: var(--white);
}
.vertical-deliverables__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 4.8rem;
  max-width: 72rem;
}
.vertical-deliverables__head .section-label {
  display: block;
}
.vertical-deliverables__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.vertical-deliverables__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.1rem;
}

.vertical-deliverable {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  gap: 1.9rem;
  min-height: 24.9rem;
  padding: 2.5rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.5rem;
  background: #232a35;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.vertical-deliverable__number {
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--orange);
}
.vertical-deliverable__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.vertical-deliverable__body h3 {
  margin: 0;
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: 700;
  color: var(--white);
}
.vertical-deliverable__body p {
  margin: 0;
  font-size: 1.4rem;
  line-height: 160%;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.72);
}

/* ——— Cases ——— */
.vertical-cases {
  padding: 10rem 0;
}
.vertical-cases__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 4.8rem;
  max-width: 72rem;
}
.vertical-cases__head .section-label {
  display: block;
}
.vertical-cases__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.vertical-cases__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.6rem;
}

.vertical-case {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 48rem;
  overflow: hidden;
  border: 1px solid #2d2e35;
  border-radius: 0.5rem;
  text-decoration: none;
  color: inherit;
  background: var(--bg-dark);
}
.vertical-case__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.vertical-case__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center bottom;
  object-position: center bottom;
  -webkit-transition: -webkit-transform 0.45s ease;
  transition: -webkit-transform 0.45s ease;
  transition: transform 0.45s ease;
  transition: transform 0.45s ease, -webkit-transform 0.45s ease;
}
.vertical-case__shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(24, 28, 34, 0.15)), color-stop(35%, rgba(24, 28, 34, 0.2)), to(rgba(24, 28, 34, 0.92)));
  background: linear-gradient(180deg, rgba(24, 28, 34, 0.15) 0%, rgba(24, 28, 34, 0.2) 35%, rgba(24, 28, 34, 0.92) 100%);
  pointer-events: none;
}
.vertical-case__inner {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2rem;
  padding: 3rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.vertical-case__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.6rem;
  min-height: 1px;
}
.vertical-case__tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 1rem 1.6rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 0.5rem;
  backdrop-filter: blur(5px);
  font-size: 1.22rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  color: var(--white);
  white-space: nowrap;
}
.vertical-case__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.2rem;
}
.vertical-case__title {
  margin: 0;
  font-size: 3.4rem;
  line-height: 1.16;
  font-weight: 700;
  color: var(--white);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.vertical-case__excerpt {
  margin: 0;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  font-size: 1.4rem;
  line-height: 150%;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.8);
  -webkit-transition: max-height 0.35s ease, opacity 0.3s ease, margin 0.3s ease;
  transition: max-height 0.35s ease, opacity 0.3s ease, margin 0.3s ease;
}
.vertical-case:hover .vertical-case__media img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
.vertical-case:hover .vertical-case__title {
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}
.vertical-case:hover .vertical-case__excerpt {
  max-height: 12rem;
  margin-top: 0.4rem;
  opacity: 1;
}

/* ——— FAQ ——— */
.vertical-faq {
  position: relative;
  z-index: 1;
  padding: 12rem 0 14rem;
  background: var(--bg-dark);
  color: var(--white);
}
.vertical-faq__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.4rem;
  margin-bottom: 4.8rem;
  max-width: 64rem;
}
.vertical-faq__head .section-label {
  display: block;
}
.vertical-faq__head h2 {
  margin: 0;
  font-size: 5.2rem;
  line-height: 110%;
  font-weight: 900;
}
.vertical-faq__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.6rem;
  width: 100%;
}
.vertical-faq__item {
  border-radius: 0.5rem;
  background: var(--white);
  overflow: hidden;
}
.vertical-faq__item[open] .vertical-faq__chevron {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.vertical-faq__question {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2.4rem;
  list-style: none;
  cursor: pointer;
  padding: 2.3rem 3.2rem 2.4rem;
  font-size: 1.8rem;
  line-height: 140%;
  font-weight: 700;
  color: var(--gray);
}
.vertical-faq__question::-webkit-details-marker {
  display: none;
}
.vertical-faq__question-text {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-width: 0;
}
.vertical-faq__chevron {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 2.4rem;
  height: 2.4rem;
  margin-top: 0.1rem;
  -webkit-transition: -webkit-transform 0.25s ease;
  transition: -webkit-transform 0.25s ease;
  transition: transform 0.25s ease;
  transition: transform 0.25s ease, -webkit-transform 0.25s ease;
  /* Approximate #ff8000 from the gray stroke asset */
  -webkit-filter: invert(52%) sepia(98%) saturate(1846%) hue-rotate(360deg) brightness(102%) contrast(104%);
  filter: invert(52%) sepia(98%) saturate(1846%) hue-rotate(360deg) brightness(102%) contrast(104%);
}
.vertical-faq__answer {
  padding: 0 3.2rem 2.4rem;
}
.vertical-faq__answer p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}

/* ——— CTA (Figma 1226:1797) ——— */
.vertical-cta {
  position: relative;
  z-index: 2;
  margin-top: -8rem;
  padding: 0 1.5rem 10rem;
  background: transparent;
}
.vertical-cta__shell {
  max-width: 149.6rem;
  margin: 0 auto;
}
.vertical-cta__panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 6.8rem;
  padding: 12rem 14.2rem 12rem 14.2rem;
  border: 1px solid #eaebec;
  border-radius: 0.5rem;
  background: var(--cream);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.vertical-cta__heading {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 41.3rem;
  flex: 0 1 41.3rem;
  max-width: 41.3rem;
  margin: 0;
  font-size: 3.8rem;
  line-height: 1.1;
  font-weight: 900;
}
.vertical-cta__text {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 38.7rem;
  flex: 0 1 38.7rem;
  max-width: 38.7rem;
  margin: 0;
  font-size: 1.6rem;
  line-height: 160%;
  font-weight: 500;
  color: var(--text-muted);
}
.vertical-cta__btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 28.1rem;
  flex: 0 0 28.1rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 28.1rem;
  height: 15.3rem;
  padding: 2.4rem;
  border: 1px solid var(--gray);
  border-radius: 0.5rem;
  background: var(--gray);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  text-decoration: none;
  -webkit-transition: background 0.25s ease, border-color 0.25s ease, -webkit-transform 0.25s ease;
  transition: background 0.25s ease, border-color 0.25s ease, -webkit-transform 0.25s ease;
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease, -webkit-transform 0.25s ease;
}
.vertical-cta__btn::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(ellipse at 70% 20%, rgba(255, 255, 255, 0.08) 0%, transparent 55%), repeating-linear-gradient(-12deg, transparent 0, transparent 6px, rgba(0, 0, 0, 0.12) 6px, rgba(0, 0, 0, 0.12) 7px);
  opacity: 0.35;
  pointer-events: none;
  mix-blend-mode: soft-light;
}
.vertical-cta__btn:hover {
  background: #232a35;
  border-color: #232a35;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}
.vertical-cta__btn-icon {
  position: relative;
  z-index: 1;
  display: block;
  -ms-flex-item-align: end;
  align-self: flex-end;
  width: 2.4rem;
  height: 2.4rem;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 2.4rem;
  flex: 0 0 2.4rem;
}
.vertical-cta__btn-label {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1;
  text-align: left;
  text-transform: uppercase;
  color: var(--white);
}

/* ——— Responsive ——— */
@media (max-width: 1200px) {
  .vertical-deliverables__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .vertical-cta__panel {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 3.2rem;
    padding: 6.4rem 4.8rem;
  }
  .vertical-cta__heading,
  .vertical-cta__text {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 28rem;
    flex: 1 1 28rem;
    max-width: none;
  }
  .vertical-cta__btn {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 28.1rem;
    flex: 0 0 28.1rem;
  }
}
@media (max-width: 996px) {
  .vertical-hero {
    padding-top: 4.8rem;
  }
  .vertical-hero__body {
    grid-template-columns: 1fr;
    gap: 2.4rem;
  }
  .vertical-hero h1 {
    font-size: 4.2rem;
  }
  .vertical-deliverables__head h2,
  .vertical-cases__head h2,
  .vertical-faq__head h2 {
    font-size: 3.6rem;
  }
  .vertical-cta__heading {
    font-size: 3.2rem;
  }
  .vertical-deliverables__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .vertical-cases__grid {
    grid-template-columns: 1fr;
  }
  .vertical-case {
    min-height: 42rem;
  }
  .vertical-case__title {
    font-size: 2.8rem;
  }
  .vertical-deliverables,
  .vertical-faq {
    padding: 8rem 0 6.4rem;
  }
  .vertical-cases {
    padding: 6.4rem 0;
  }
  .vertical-table {
    padding-bottom: 6.4rem;
  }
  .vertical-cta {
    margin-top: -4rem;
    padding-bottom: 6.4rem;
  }
  .vertical-cta__panel {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 4.8rem 3.2rem;
  }
  .vertical-cta__heading,
  .vertical-cta__text {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
  }
  .vertical-cta__btn {
    width: 100%;
    max-width: 28.1rem;
  }
}
@media (max-width: 575px) {
  .vertical-hero h1 {
    font-size: 3.2rem;
  }
  .vertical-answer__card,
  .vertical-deliverable {
    padding: 2.4rem;
  }
  .vertical-deliverables__grid {
    grid-template-columns: 1fr;
  }
  .vertical-deliverable {
    min-height: 0;
  }
  .vertical-faq__question,
  .vertical-faq__answer {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .vertical-table th,
  .vertical-table td {
    padding: 1.2rem 1.4rem;
  }
  .vertical-case__inner {
    padding: 2.4rem;
  }
  .vertical-case__title {
    font-size: 2.4rem;
  }
  .vertical-cta__btn {
    max-width: none;
  }
}
@media (max-width: 1200px) {
  .cases--home .case-card-home,
  .cases--home .cases__cta {
    min-height: 44rem;
    height: 44rem;
  }
  .cases--home .case-card-home__title {
    font-size: 3rem;
  }
  .cases--home .case-card-home.is-title-compact .case-card-home__title {
    font-size: 2.6rem;
  }
  .cases--home .case-card-home.is-title-tight .case-card-home__title {
    font-size: 2.2rem;
  }
  .cases--home .cases__cta-title {
    font-size: 2.6rem;
  }
  .hero h1 {
    font-size: 8rem;
  }
  .case-hero h1 {
    font-size: 6.4rem;
  }
  .case-hero__body {
    grid-template-columns: 1fr 36rem;
  }
  .case-challenge__grid {
    gap: 2.4rem;
  }
  .case-client-card {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 44rem;
    flex: 0 1 44rem;
    max-width: 44rem;
  }
  .case-showcase__intro {
    grid-template-columns: 1fr 1fr;
  }
  .case-showcase__copy {
    padding-bottom: 0;
  }
  .case-showcase__video {
    height: auto;
    min-height: 32rem;
  }
  .case-results__grid {
    grid-template-columns: minmax(0, 1fr) 38rem;
    -webkit-column-gap: 4rem;
    -moz-column-gap: 4rem;
    column-gap: 4rem;
    row-gap: 6rem;
  }
  .case-results__stats {
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3.2rem;
  }
  .case-results__stats--count-1 {
    grid-template-columns: minmax(0, 1fr);
  }
  .case-results__stats--count-3, .case-results__stats--count-5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .case-results__stats--count-2, .case-results__stats--count-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .case-results .case-stat {
    width: auto;
  }
  .case-results__quote {
    width: 100%;
    margin-top: 0;
  }
  .case-results--no-quote .case-results__stats {
    grid-column: 1/-1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .case-results + .case-cta {
    margin-top: -10rem;
  }
  .case-cta__inner {
    grid-template-columns: 1fr 28.1rem;
    row-gap: 3.2rem;
  }
  .case-cta__title {
    grid-column: 1/-1;
  }
  .case-cta__desc {
    max-width: none;
  }
  .about-hero__body,
  .blog-hero__body,
  .press-hero__body,
  .cases-hero__body {
    grid-template-columns: 1fr 36rem;
  }
  .blog-featured__grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 38.4rem);
  }
  .blog-articles__highlight-media {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 48rem;
    flex: 0 0 48rem;
    width: 48rem;
    max-width: 48rem;
  }
  .blog-articles__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .single-related {
    margin-top: -8rem;
    padding-bottom: 8rem;
  }
  .single-related::before {
    top: -8rem;
    height: 16rem;
  }
  .single-related__panel {
    padding: 6rem 4rem;
  }
  .single-related__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .blog-newsletter__inner {
    gap: 4rem;
  }
  .blog-newsletter__form {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    height: auto;
  }
  .about-stats {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 3.2rem 3.6rem;
  }
  .about-stat {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 calc(50% - 1.8rem);
    flex: 1 1 calc(50% - 1.8rem);
  }
  .about-video__media {
    height: auto;
  }
  .about-clients__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .about-clients h2, .about-clients__desc {
    max-width: none;
  }
  .about-clients__card {
    width: calc(33.333% - 1.1rem);
  }
  .about-culture {
    padding: calc(8rem + var(--jump-section-edge-height)) 0 8rem;
  }
  .about-culture__head {
    margin-bottom: 5rem;
  }
  .about-culture__head h2 {
    max-width: none;
  }
  .about-culture__cards-shell {
    margin-bottom: 4rem;
  }
  .about-culture__cards .swiper-slide {
    width: min(39.4rem, 100vw - 3rem);
  }
  .about-culture-card {
    height: auto;
    min-height: 28rem;
  }
  .about-timeline {
    padding: 8rem 0;
  }
  .about-timeline__layout {
    grid-template-columns: 1fr;
    gap: 5rem;
  }
  .about-timeline__aside {
    position: static;
    padding-top: 0;
  }
  .about-timeline__intro h2 {
    max-width: none;
  }
  .about-timeline__list {
    padding-bottom: 0;
  }
  .about-timeline__item {
    position: static;
    padding-top: 0 !important;
    margin-bottom: 2.4rem;
  }
  .about-timeline__item:last-child {
    margin-bottom: 0;
  }
  .about-press {
    margin-top: -5rem;
  }
  .about-press__shell {
    padding: 8rem 0;
  }
  .about-press__bg {
    width: 100%;
    height: 100%;
    min-height: 100%;
  }
  .about-press__head {
    margin-bottom: 4rem;
  }
  .about-press__head-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2.4rem;
  }
  .about-press__title, .about-press__intro {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    max-width: none;
  }
  .about-press__grid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
  .about-press__side {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    width: 100%;
  }
  .about-press__cards {
    grid-template-columns: 1fr;
  }
  .about-press__cta {
    height: auto;
    min-height: 7.8rem;
  }
  .about-press-card--featured {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    width: 100%;
  }
  .about-press-card--archive {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    width: 100%;
  }
  .press-archive {
    padding-bottom: 8rem;
  }
  .press-archive__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cases-archive {
    padding-bottom: 8rem;
  }
  .about-team {
    padding: 8rem 0;
  }
  .about-team__head {
    margin-bottom: 5rem;
  }
  .about-team__title {
    white-space: normal;
  }
  .about-team__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    -webkit-column-gap: 2.4rem;
    -moz-column-gap: 2.4rem;
    column-gap: 2.4rem;
    row-gap: 3.2rem;
  }
  .services-cards .swiper-slide {
    /* 100vw minus the services-cards__viewport's own 1.5rem + 1.5rem padding,
       otherwise the card overflows the visible area and gets clipped by
       the viewport's overflow: hidden (UX-02). */
    width: min(39.5rem, 100vw - 6rem);
  }
  .methodology-extra {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .methodology-visual {
    grid-column: 1/-1;
    width: 100%;
  }
  .contact-grid {
    grid-template-columns: 1fr;
    gap: 2.4rem;
  }
  .contact {
    padding: 0 1.5rem;
  }
  .contact__shell {
    padding: 8rem 0;
  }
  .contact .container {
    padding-left: 0;
    padding-right: 0;
  }
  .contact .contact-intro__head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 1.6rem;
    margin-bottom: 4rem;
  }
  .contact .contact-intro__head h2 {
    font-size: 4.4rem;
    max-width: 100%;
  }
  .contact .contact-intro__head > p {
    max-width: 100%;
    color: var(--white) !important;
  }
  .contact .contact-intro__head > p strong,
  .contact .contact-intro__head > p .text-gray {
    color: var(--white) !important;
  }
  .contact .contact-left,
  .contact .contact-form-wrap {
    width: 100%;
    max-width: 100%;
  }
  .contact .contact-form-wrap {
    height: auto;
    min-height: 0;
  }
  .contact .contact-extra {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 2.4rem;
    min-height: 0;
  }
  .contact .contact-extra__item {
    width: 100%;
    max-width: 100%;
  }
  .contact .testimonials-slide .swiper-slide {
    width: min(33.6rem, 100% - 3.2rem);
  }
  .contact .contact-testimonials {
    position: relative;
  }
  .contact .contact-testimonials::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    width: 3.2rem;
    height: calc(100% - 3.2rem);
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 128, 0, 0)), to(rgba(255, 128, 0, 0.85)));
    background: linear-gradient(90deg, rgba(255, 128, 0, 0) 0%, rgba(255, 128, 0, 0.85) 100%);
    pointer-events: none;
  }
  .partners {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .partners .partners-shell {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .partners .partners-carousel {
    margin-left: 0;
    width: 100%;
  }
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 4rem;
  }
  .site-footer .footer-brand {
    max-width: 100%;
    width: 100%;
  }
  .site-footer .footer-brand p {
    max-width: 100%;
  }
  .site-footer .footer-menus {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 4rem;
  }
}
@media (max-width: 992px) {
  .site-header .header-nav {
    position: fixed;
    inset: 9rem 1.5rem auto;
    display: none;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 2.4rem;
    padding: 2.4rem;
    border: 1px solid var(--border-gray-light);
    border-radius: 0.5rem;
    background: var(--cream);
    -webkit-box-shadow: 0 2rem 5rem rgba(45, 53, 61, 0.12);
    box-shadow: 0 2rem 5rem rgba(45, 53, 61, 0.12);
  }
  .site-header.is-open .header-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .site-header .header-toggle {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
  .site-header .header-menu ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 1.6rem;
  }
  .site-header .header-actions {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
  }
  .site-header .header-actions .btn {
    width: 100%;
  }
  .site-header .header-actions .btn-lang {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .site-header .header-actions .lang-switcher__panel {
    left: 0;
    right: 0;
    min-width: 0;
  }
  .hero {
    min-height: auto;
    padding: 8rem 1.5rem 6rem;
  }
  .hero h1 {
    font-size: 5.2rem;
  }
  .hero .hero-bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .section-head__content,
  .contact-intro__head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 1.6rem;
  }
  .section-head.is-split .section-head__side,
  .section-head.is-inline .section-head__aside {
    max-width: 100%;
    margin-left: 0;
    text-align: left;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .case-card__top,
  .case-card__body,
  .case-card__details {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .case-card__details {
    grid-template-columns: 1fr;
  }
  .stats > .container {
    margin-left: auto;
    margin-right: auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .stats .stat-item .stat-head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 0.4rem;
  }
  .stats .stat-item .stat-head .number {
    font-size: 3.6rem;
  }
  .stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 2.4rem;
    -webkit-column-gap: 2rem;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }
  .about-stats {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 3.2rem 2.4rem;
  }
  .about-stat {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 calc(50% - 1.2rem);
    flex: 1 1 calc(50% - 1.2rem);
  }
  .case-card__metrics {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    width: 100%;
  }
  .cases .tag {
    min-height: 4.4rem;
    padding: 1rem 1.6rem;
  }
  .cases .case-card__body p {
    max-width: 100%;
  }
  .methodology-stages .swiper-slide {
    width: min(41.575rem, 100%);
  }
  .methodology-extra {
    grid-template-columns: 1fr;
    gap: 2.4rem;
    margin-top: 6rem;
  }
  .methodology-extra .scope-card {
    height: auto;
    min-height: 0;
  }
  .methodology-extra .methodology-visual {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 3rem;
    overflow: visible;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .methodology-extra .methodology-visual__glow-wrap, .methodology-extra .methodology-visual__device {
    left: 0.3rem;
  }
  .methodology-extra .methodology-visual__label {
    position: static;
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
    margin-bottom: 1.6rem;
  }
  .methodology-extra .methodology-visual__copy {
    position: static;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2.4rem;
  }
  .methodology-extra .methodology-visual__text p {
    color: var(--white) !important;
    overflow-wrap: anywhere;
    word-wrap: break-word;
  }
  .solution-card {
    grid-template-columns: 1fr;
    height: auto;
    max-height: none;
    min-height: 0;
    overflow: visible;
  }
  .solution-card .solution-card__text {
    color: #ADB3B8 !important;
  }
  .contact-grid {
    grid-template-columns: 1fr;
  }
  .contact-extra {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    max-width: 100%;
    min-height: 0;
  }
  .contact-extra__item {
    width: 100%;
    max-width: 100%;
  }
  .contact .contact-intro__head h2 {
    font-size: 4rem;
  }
  .contact .testimonials-slide .swiper-slide {
    width: min(33.6rem, 100% - 3.2rem);
  }
  .partners {
    margin-top: -4rem;
    padding: 0 1.5rem 8rem;
  }
  .partners .partners-shell {
    margin: 0;
    min-height: auto;
    padding: 7rem 3rem;
  }
  .partners .partners-carousel {
    margin-left: 0;
    width: 100%;
  }
  .partners .partners-carousel__viewport {
    padding-inline: 0.5rem;
  }
  .partners .partners-slide .swiper-slide {
    width: min(19.5rem, 50vw - 2.4rem);
  }
  .partners__head {
    margin-bottom: 3rem;
  }
  .partners__head .section-head__content {
    gap: 1.6rem;
  }
  .partners__head .section-head__content h2,
  .partners__head .section-head__content .section-head__aside {
    max-width: 100%;
  }
  .partners__head .section-head__aside {
    color: var(--gray) !important;
  }
  .stage:first-child, .stage:last-child {
    border-radius: 0;
  }
  .solution-card__media {
    height: auto;
    min-height: 28rem;
    border-radius: 0.4rem 0.4rem 0 0;
  }
  .solution-card__content {
    height: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border-left: 1px solid var(--bg-dark-border-alt);
    border-radius: 0 0 0.5rem 0.5rem;
  }
  .solutions-dark__swiper .swiper-slide {
    width: min(121.6rem, 100vw - 3rem);
  }
  .solutions-dark__carousel-shell,
  .solutions-dark__pin-inner {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .solutions-dark__scroller {
    height: auto !important;
    padding-bottom: 4rem;
  }
  .solutions-dark__head {
    margin-bottom: 4rem;
  }
  .solutions-dark__pin {
    position: static !important;
    top: auto;
    height: auto;
    min-height: auto;
    overflow: visible;
  }
  .methodology .section-head {
    margin-bottom: 4rem;
  }
  .methodology .section-head__content {
    gap: 1.6rem;
  }
  .cases {
    padding: 8rem 1.5rem;
  }
  .cases .section-head {
    margin-bottom: 2.4rem;
  }
  .cases .case-card {
    gap: 2.4rem;
    margin-bottom: 2.4rem;
  }
  .cases--home {
    padding: calc(8rem + var(--jump-section-edge-height)) 0 8rem;
  }
  .cases--home .cases__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cases--home .case-card-home,
  .cases--home .cases__cta {
    min-height: 42rem;
    height: 42rem;
  }
  .cases--home .section-head.is-split .section-head__side p {
    text-align: left;
  }
  .page-cases-archive .cases--archive {
    padding: 7rem 0 8rem;
  }
  .services {
    padding: 8rem 1.5rem 0;
  }
  .services:has(.stats) {
    padding-bottom: 0;
  }
  .services > .container,
  .services .services-cards > .container,
  .services .services-cards__viewport {
    width: min(121.7rem, 100vw - 3rem);
    max-width: 121.7rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .services .section-head.is-split .section-head__main {
    gap: 1.6rem;
  }
  .services .section-head h2 {
    font-size: 4rem;
  }
  .services .section-head__desc {
    color: var(--gray) !important;
  }
  .services .section-head__side .btn-secondary {
    min-height: 4.8rem;
    border-color: var(--border-gray);
  }
  .services .services-progress {
    margin-top: 4rem;
  }
  .services .stats {
    padding: 4rem 0 8rem;
  }
  .methodology {
    padding: 8rem 1.5rem 10rem;
  }
  .methodology .methodology-stages-shell {
    margin-bottom: 4rem;
  }
  .methodology .methodology-progress {
    margin-bottom: 4rem;
  }
  .office-banner__media {
    aspect-ratio: 16/9;
    height: auto;
  }
  .solutions-dark {
    padding: 5rem 0 4rem;
  }
  .contact {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .contact__shell {
    padding: 8rem 0;
  }
  .contact .contact-intro__head {
    gap: 1.6rem;
    margin-bottom: 3rem;
  }
  .contact .contact-intro__head > p {
    color: var(--white) !important;
  }
  .contact .contact-intro__head > p strong,
  .contact .contact-intro__head > p .text-gray {
    color: var(--white) !important;
  }
  .contact .contact-form-wrap {
    height: auto;
    min-height: 0;
  }
  .section-head.is-split .section-head__side {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    text-align: left;
    gap: 1.6rem;
  }
  .cases + .services {
    margin-top: -1.6rem;
  }
  .solution-card__copy,
  .solution-card .solution-bullets {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    max-width: 100%;
  }
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 4rem;
  }
  .site-footer .footer-brand {
    max-width: 100%;
    width: 100%;
  }
  .site-footer .footer-brand p {
    max-width: 100%;
  }
  .footer-menus {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 4rem;
  }
  .footer-badges__row {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 3.2rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .footer-badges__certs {
    gap: 2.4rem;
  }
}
@media (max-width: 768px) {
  h1 {
    font-size: 4.8rem;
  }
  h2 {
    font-size: 3.6rem;
  }
  .hero h1 {
    font-size: 4.4rem;
  }
  .cases,
  .services,
  .stats,
  .methodology {
    padding: 7rem 1.5rem;
  }
  .cases.has-section-edge,
  .services.has-section-edge,
  .stats.has-section-edge,
  .methodology.has-section-edge {
    margin-top: calc(-1 * var(--jump-section-edge-height));
    padding-top: calc(7rem + var(--jump-section-edge-height));
  }
  .cases .container,
  .services .container,
  .stats .container,
  .methodology .container {
    padding-left: 0;
    padding-right: 0;
  }
  .cases--home {
    padding: calc(6rem + var(--jump-section-edge-height)) 0 6rem;
  }
  .cases--home .container {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .cases--home .cases__grid {
    grid-template-columns: 1fr;
  }
  .cases--home .case-card-home {
    min-height: 40rem;
    height: 40rem;
  }
  .cases--home .cases__cta {
    height: auto;
    min-height: 32rem;
  }
  .cases--home .case-card-home__inner,
  .cases--home .cases__cta {
    padding: 2.4rem;
  }
  .cases--home .case-card-home__title {
    font-size: 2.8rem;
  }
  .cases--home .case-card-home.is-title-compact .case-card-home__title {
    font-size: 2.4rem;
  }
  .cases--home .case-card-home.is-title-tight .case-card-home__title {
    font-size: 2.1rem;
  }
  .cases--home .cases__cta-title {
    font-size: 2.4rem;
  }
  .methodology-visual__device {
    display: none;
  }
  .methodology-extra {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 4rem;
  }
  .methodology-extra__scopes {
    max-width: 100% !important;
  }
  .stats {
    padding: 0 1.5rem;
  }
  .stats .stats-grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .services {
    padding-bottom: 0;
  }
  .services .stats {
    padding: 3rem 1.5rem;
  }
  .methodology {
    padding-top: 0;
    padding-bottom: 8rem;
  }
  .contact {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .contact__shell {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
  .contact .container {
    padding-left: 0;
    padding-right: 0;
  }
  .contact .contact-intro__head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.6rem;
    margin-bottom: 2.4rem;
  }
  .contact .contact-intro__head h2,
  .contact .contact-intro__head > p {
    max-width: 100%;
  }
  .contact .contact-intro__head h2 {
    font-size: 3.6rem;
  }
  .contact .contact-intro__head > p {
    color: var(--white) !important;
  }
  .contact .contact-intro__head > p strong,
  .contact .contact-intro__head > p .text-gray {
    color: var(--white) !important;
  }
  .contact .contact-form-wrap {
    height: auto;
    min-height: 0;
    padding: 2.4rem;
  }
  .contact .contact-extra {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    min-height: auto;
    padding: 2.4rem;
  }
  .contact .contact-extra__item {
    max-width: 100%;
    width: 100%;
  }
  .contact .contact-extra p {
    color: var(--gray) !important;
  }
  .contact .contact-extra p strong {
    color: var(--gray) !important;
  }
  .contact .contact-grid,
  .contact .contact-left,
  .contact .contact-form-wrap {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .contact .testimonials-slide .swiper-slide {
    width: 100%;
  }
  .contact .contact-testimonials::after {
    display: none;
  }
  .partners {
    margin-top: -4rem;
    padding: 0 1.5rem 7rem;
  }
  .partners__head {
    margin-bottom: 3rem;
  }
  .partners__head .section-head__content {
    gap: 1.6rem;
  }
  .partners__head .section-head__aside {
    color: var(--gray) !important;
  }
  .partners .partners-carousel__viewport {
    padding-inline: 0.5rem;
  }
  .partners .partners-slide .swiper-slide {
    width: min(19.5rem, 50vw - 2.4rem);
  }
  .solutions-dark {
    padding: 4rem 0;
  }
  .solutions-dark .solutions-dark__pin-inner {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .services-cards .swiper-slide {
    /* 100vw minus the services-cards__viewport's own 1.5rem + 1.5rem padding,
       otherwise the card overflows the visible area and gets clipped by
       the viewport's overflow: hidden (UX-02). */
    width: min(39.5rem, 100vw - 6rem);
  }
  .services > .container,
  .services .services-cards > .container,
  .services .services-cards__viewport {
    width: min(121.7rem, 100vw - 3rem);
    max-width: 121.7rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .services .section-head.is-split .section-head__main {
    gap: 1.6rem;
  }
  .services .section-head h2 {
    font-size: 3.6rem;
  }
  .services .section-head__desc {
    color: var(--gray) !important;
  }
  .services .section-head__side .btn-secondary {
    min-height: 4.8rem;
    border-color: var(--border-gray);
  }
  .hero-top {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 1.6rem;
  }
  .hero-actions {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
  }
  .hero-actions .btn {
    width: 100%;
  }
  .about-hero__body,
  .blog-hero__body,
  .press-hero__body,
  .cases-hero__body {
    grid-template-columns: 1fr;
  }
  .blog-articles__grid,
  .press-archive__grid,
  .single-related__grid {
    grid-template-columns: 1fr;
  }
  .blog-articles__highlight-media {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 100%;
    max-width: 100%;
  }
  .about-team__grid {
    grid-template-columns: 1fr;
  }
  .case-hero__body,
  .case-results__grid,
  .case-showcase__intro,
  .case-cta__inner,
  .case-execution__tempos {
    grid-template-columns: 1fr !important;
  }
  .case-results__grid {
    row-gap: 4rem;
  }
  .single-article__layout {
    grid-template-columns: 1fr;
  }
  .single-sidebar {
    position: static;
    width: 100%;
    height: auto;
  }
  .single-sidebar__sticky {
    position: static;
  }
  .mm-hero__body,
  .mm-potential__header,
  .mm-potential__cards,
  .mm-llm__cards,
  .mm-scale__steps,
  .mm-scale__compare-grid {
    grid-template-columns: 1fr !important;
  }
  .about-stats {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 3.2rem 2.4rem;
  }
  .about-stat {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 calc(50% - 1.2rem);
    flex: 1 1 calc(50% - 1.2rem);
  }
  .methodology .stage {
    min-height: 4.4rem;
  }
  .office-banner__media {
    aspect-ratio: 16/9;
    height: auto;
  }
  .stats-grid {
    grid-template-columns: 1fr;
    row-gap: 3rem;
  }
  .partners .partners-shell {
    min-height: auto;
    padding: 7rem 1.5rem;
  }
  .partners .partners-carousel {
    margin-left: 0;
    width: 100%;
  }
  .contact-form .form-footer,
  .jump-mailchimp__footer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .jump-mailchimp__row {
    grid-template-columns: 1fr;
  }
  .contact-form .form-field--message,
  .contact-form .form-field--message .wpcf7-form-control-wrap,
  .contact-form .form-field--message textarea {
    min-height: 7.2rem;
  }
  .contact-form__submit,
  .contact-form .btn-submit,
  .contact-form .wpcf7-submit,
  .contact-form input[type=submit],
  .contact-form button[type=submit],
  .jump-mailchimp__submit,
  #mc-embedded-subscribe {
    width: 100% !important;
    min-width: 0;
    margin-left: 0 !important;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .site-footer {
    padding-top: 6rem;
  }
  .site-footer .footer-grid {
    grid-template-columns: 1fr;
  }
  .site-footer .footer-brand {
    max-width: 100%;
    width: 100%;
  }
  .site-footer .footer-brand p {
    max-width: 100%;
  }
  .site-footer .footer-geo {
    padding: 2rem 0;
  }
  .site-footer .footer-geo__trigger {
    width: 100%;
  }
  .site-footer .footer-bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 4rem;
  }
  .site-footer .footer-bottom p {
    text-align: center;
  }
}
@media (max-width: 576px) {
  .hero-actions {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
  }
  .hero-actions .btn {
    width: 100%;
  }
  .case-card__metrics {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .clients-marquee .item {
    font-size: 1.8rem;
  }
  .case-hero {
    padding-top: 4rem;
  }
  .case-hero__tags {
    margin-bottom: 4rem;
  }
  .case-hero__body {
    grid-template-columns: 1fr;
    margin-bottom: 5rem;
  }
  .case-hero h1 {
    font-size: 5.2rem;
  }
  .case-challenge {
    padding: 5rem 0 8rem;
  }
  .case-challenge__grid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .case-challenge__main {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    max-width: none;
  }
  .case-client-card {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    max-width: none;
    width: 100%;
  }
  .case-execution {
    padding: calc(8rem + var(--jump-section-edge-height)) 0 8rem;
  }
  .case-execution__head {
    margin-bottom: 5rem;
  }
  .case-execution__tempos {
    gap: 1.6rem;
    margin-bottom: 3rem;
  }
  .case-tempo {
    padding: 2.4rem;
  }
  .case-showcase {
    padding: 8rem 0 0;
  }
  .case-showcase__intro {
    grid-template-columns: 1fr;
    margin-bottom: 6rem;
  }
  .case-showcase__copy {
    -ms-flex-item-align: auto;
    align-self: auto;
    padding-bottom: 0;
  }
  .case-showcase__copy h2 {
    font-size: 3.6rem;
  }
  .case-showcase__video {
    height: auto;
    aspect-ratio: 800/441;
  }
  .case-showcase__gallery {
    grid-template-columns: 1fr;
  }
  .case-showcase__stack {
    grid-template-columns: 1fr 1fr;
  }
  .case-showcase__item--large {
    height: auto;
    aspect-ratio: 704/561;
  }
  .case-showcase__item:not(.case-showcase__item--large):not(.case-showcase__item--wide) {
    height: auto;
    aspect-ratio: 232/189;
  }
  .case-showcase__item--wide {
    height: auto;
    aspect-ratio: 488/348;
  }
  .case-results {
    padding: 0 1.5rem 8rem;
  }
  .case-results__shell {
    padding: calc(8rem + var(--jump-section-edge-height)) 0 8rem;
  }
  .case-results__grid {
    grid-template-columns: 1fr;
    row-gap: 4rem;
  }
  .case-results__title, .case-results__intro, .case-results__stats, .case-results__quote {
    grid-column: 1;
    grid-row: auto;
    max-width: none;
  }
  .case-results__quote {
    margin-top: 0;
  }
  .case-results__stats {
    grid-template-columns: minmax(0, 1fr);
    gap: 3.2rem;
  }
  .case-results--no-quote .case-results__stats {
    grid-template-columns: minmax(0, 1fr);
  }
  .case-results .case-stat {
    width: 100%;
  }
  .case-results .case-stat__value {
    font-size: 6.4rem;
  }
  .case-results__shell {
    padding-bottom: 12rem;
  }
  .case-cta {
    margin-top: 0;
    padding: 0 1.5rem 8rem;
  }
  .case-cta__shell {
    min-height: auto;
    padding: 4rem 0;
  }
  .case-cta__inner {
    grid-template-columns: 1fr;
    gap: 3.2rem;
  }
  .case-cta__title, .case-cta__desc, .case-cta__action {
    max-width: none;
    width: 100%;
  }
  .case-cta__action {
    height: auto;
    min-height: 15.3rem;
  }
  .about-hero,
  .blog-hero,
  .press-hero,
  .cases-hero,
  .single-hero {
    padding-top: 4rem;
  }
  .about-hero__head {
    margin-bottom: 6rem;
  }
  .about-hero__body {
    grid-template-columns: 1fr;
  }
  .about-hero h1 {
    font-size: 4.8rem;
  }
  .blog-hero,
  .press-hero,
  .cases-hero {
    padding-bottom: 8rem;
  }
  .blog-hero__body,
  .press-hero__body,
  .cases-hero__body {
    grid-template-columns: 1fr;
  }
  .blog-hero h1,
  .press-hero h1,
  .cases-hero h1 {
    font-size: 4.8rem;
  }
  .press-archive {
    padding-bottom: 5rem;
  }
  .press-archive__head h2 {
    font-size: 3.6rem;
  }
  .press-archive__grid {
    grid-template-columns: 1fr;
  }
  .press-archive__load {
    width: 100%;
    max-width: 100%;
  }
  .page-cases-archive .cases--archive {
    padding: 7rem 1.5rem 5rem;
  }
  .press-newsletter {
    margin-top: -2rem;
    padding-bottom: 8rem;
  }
  .press-newsletter__shell {
    min-height: 0;
    padding: 4rem 2.4rem;
  }
  .press-newsletter__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
  .press-newsletter__copy {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    max-width: none;
  }
  .press-newsletter__form {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100%;
    height: auto;
  }
  .press-newsletter__input {
    width: 100%;
  }
  .press-newsletter__submit {
    width: 100%;
  }
  .single-hero::before {
    bottom: 2.4rem;
  }
  .single-hero h1 {
    font-size: 3.6rem;
  }
  .single-hero__meta {
    gap: 2.4rem;
    margin-top: 2.4rem;
  }
  .single-hero__divider {
    display: none;
  }
  .single-hero__media {
    height: 24rem;
    margin-top: 2.4rem;
    margin-bottom: -2.4rem;
    margin-left: 2.4rem;
    margin-right: 2.4rem;
    max-width: none;
    width: auto;
  }
  .single-article {
    padding-top: 8.4rem;
    padding-bottom: 12rem;
  }
  .single-article__layout {
    grid-template-columns: 1fr;
  }
  .single-sidebar {
    position: static;
    width: 100%;
    height: auto;
  }
  .single-sidebar__sticky {
    position: static;
  }
  .single-toc {
    width: 100%;
  }
  .single-content {
    max-width: none;
  }
  .single-content h2 {
    font-size: 2.8rem;
    line-height: 1.2;
  }
  .single-content__figure {
    height: 24rem;
  }
  .single-related {
    margin-top: -6rem;
    padding-bottom: 6rem;
  }
  .single-related::before {
    top: -6rem;
    height: 12rem;
  }
  .single-related__panel {
    padding: 4rem 2.4rem;
  }
  .single-related__head h2 {
    font-size: 3.6rem;
  }
  .single-related__grid {
    grid-template-columns: 1fr;
  }
  .mm-hero {
    min-height: auto;
  }
  .mm-hero__inner {
    min-height: auto;
    padding: 8rem 0 4rem;
  }
  .mm-hero__body {
    grid-template-columns: 1fr;
    gap: 3.2rem;
    margin-top: 3.2rem;
    margin-bottom: 3.2rem;
  }
  .mm-hero__copy {
    max-width: none;
  }
  .mm-hero h1 {
    font-size: 3.6rem;
  }
  .mm-hero__intro {
    max-width: none;
  }
  .mm-hero__brand {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    max-width: none;
    height: auto;
  }
  .mm-hero__brand img {
    max-height: 8rem;
    -o-object-position: left center;
    object-position: left center;
  }
  .mm-hero__logos {
    min-height: 0;
    padding-bottom: 0;
  }
  .mm-hero__logos-group {
    gap: 6.4rem;
    padding-right: 6.4rem;
  }
  .mm-hero__logo-item {
    width: 16rem;
    height: auto;
    min-height: 2.9rem;
  }
  .mm-hero__logo-tip {
    width: min(28.4rem, 100vw - 4.8rem);
  }
  .mm-potential__inner {
    gap: 4.8rem;
    padding: 8rem 0;
  }
  .mm-potential__header {
    grid-template-columns: 1fr;
    gap: 2.4rem;
  }
  .mm-potential__title {
    max-width: none;
    font-size: 3.6rem;
  }
  .mm-potential__intro {
    max-width: none;
  }
  .mm-potential__cards {
    grid-template-columns: 1fr;
  }
  .mm-llm__inner {
    gap: 4.8rem;
    padding: 8rem 0;
  }
  .mm-llm__header {
    grid-template-columns: 1fr;
    gap: 2.4rem;
  }
  .mm-llm__title {
    font-size: 3.6rem;
  }
  .mm-llm__cards {
    grid-template-columns: 1fr;
  }
  .mm-scale__inner {
    gap: 4.8rem;
    padding: 8rem 0;
  }
  .mm-scale__header {
    grid-template-columns: 1fr;
    gap: 2.4rem;
  }
  .mm-scale__title {
    font-size: 3.6rem;
  }
  .mm-scale__steps {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .mm-scale__step {
    border-right: none;
    border-bottom: 1px solid var(--mm-tag-border);
  }
  .mm-scale__step--last {
    border-bottom: none;
  }
  .mm-scale__compare {
    gap: 4rem;
    padding: 4rem 2.4rem;
  }
  .mm-scale__compare-title {
    font-size: 3.6rem;
  }
  .mm-scale__compare-intro {
    line-height: 160%;
  }
  .mm-scale__compare-grid {
    grid-template-columns: 1fr;
  }
  .mm-scale__compare-card {
    padding: 3.2rem 2.4rem;
  }
  .blog-featured {
    padding-bottom: 8rem;
  }
  .blog-featured__label {
    margin-bottom: 2.4rem;
  }
  .blog-featured__grid {
    grid-template-columns: 1fr;
  }
  .blog-featured-card--main .blog-featured-card__media img, .blog-featured-card--side .blog-featured-card__media img {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-width: none;
  }
  .blog-featured-card__title {
    font-size: 2.8rem;
  }
  .blog-featured-card--side .blog-featured-card__title {
    font-size: 2.6rem;
  }
  .blog-featured-card__overlay {
    padding: 2.4rem;
  }
  .blog-articles {
    padding-bottom: 16rem !important;
  }
  .blog-articles.is-filtered .blog-articles__filters {
    margin-bottom: 3.2rem;
  }
  .blog-articles__filters {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 0.4rem;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .blog-articles__filters::-webkit-scrollbar {
    display: none;
  }
  .blog-articles__filter {
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  .blog-articles__head {
    margin-top: 3.2rem;
  }
  .blog-articles__head h2 {
    font-size: 3.6rem;
  }
  .blog-articles__highlight {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 3.2rem;
  }
  .blog-articles__highlight-media {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
    max-width: none;
    height: 24rem;
  }
  .blog-articles__highlight-body {
    padding: 2.4rem;
  }
  .blog-articles__highlight-copy h3 {
    font-size: 2rem;
  }
  .blog-articles__recent-label {
    margin-top: 3.2rem;
    margin-bottom: 2.4rem;
  }
  .blog-articles__grid {
    grid-template-columns: 1fr;
  }
  .blog-articles__load {
    width: 100%;
    max-width: 100%;
  }
  .blog-article-card__copy h3 {
    font-size: 2rem;
  }
  .blog-article-card__body {
    padding: 2.4rem;
  }
  .blog-articles {
    padding-bottom: 8rem;
  }
  .blog-newsletter {
    margin-top: -10rem;
    margin-bottom: -10rem;
  }
  .blog-newsletter__shell {
    min-height: 0;
    padding: 4rem 2.4rem;
  }
  .blog-newsletter__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
  .blog-newsletter__copy {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    max-width: none;
  }
  .blog-newsletter__copy h2 {
    font-size: 2.8rem;
  }
  .blog-newsletter__form {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    height: auto;
    width: 100%;
  }
  .blog-newsletter__input {
    width: 100%;
  }
  .blog-newsletter__submit {
    width: 100%;
  }
  .blog-newsletter__submit span {
    color: var(--white) !important;
  }
  .page-blog .site-footer {
    padding-top: 18rem;
  }
  .about-stats {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4rem;
    margin-bottom: 6rem;
  }
  .about-stat {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
  }
  .about-stat__value {
    font-size: 4.8rem;
  }
  .about-video {
    padding-bottom: 6rem;
  }
  .about-video__media {
    height: auto;
  }
  .about-clients {
    padding-bottom: 6rem;
  }
  .about-clients__head {
    margin-bottom: 4rem;
  }
  .about-clients h2 {
    font-size: 3.6rem;
  }
  .about-clients__card {
    width: calc(50% - 0.8rem);
    height: 12rem;
  }
  .about-culture {
    padding: calc(6rem + var(--jump-section-edge-height)) 0 6rem;
  }
  .about-culture__head {
    margin-bottom: 4rem;
  }
  .about-culture__head h2 {
    font-size: 3.6rem;
  }
  .about-culture__cards-shell {
    margin-bottom: 3.2rem;
  }
  .about-culture-card {
    min-height: 26rem;
    padding: 2.4rem;
  }
  .about-timeline {
    padding: 6rem 0;
  }
  .about-timeline__intro h2 {
    font-size: 3.6rem;
  }
  .about-timeline__item {
    margin-bottom: 2rem;
  }
  .about-timeline .about-timeline-card {
    padding: 2.4rem;
  }
  .about-timeline .about-timeline-card__media {
    height: 18rem;
  }
  .about-timeline .about-timeline-card h3 {
    font-size: 2rem;
  }
  .about-press {
    margin-top: -3rem;
  }
  .about-press__shell {
    padding: 6rem 0;
  }
  .about-press__head {
    margin-bottom: 3.2rem;
  }
  .about-press__title {
    font-size: 3.6rem;
  }
  .about-press-card {
    padding: 2rem;
  }
  .about-press-card--featured .about-press-card__body {
    padding: 2rem;
  }
  .about-press-card h3 {
    font-size: 1.8rem;
  }
  .press-hero h1 {
    font-size: 3.6rem;
  }
  .cases-hero h1 {
    font-size: 3.6rem;
  }
  .press-archive {
    padding-bottom: 6rem;
  }
  .page-cases-archive .cases--archive {
    padding-bottom: 6rem;
  }
  .press-newsletter {
    padding-bottom: 6rem;
  }
  .about-team {
    padding: 6rem 0;
  }
  .about-team__head {
    margin-bottom: 4rem;
  }
  .about-team__title {
    font-size: 3.6rem;
  }
  .about-team__grid {
    grid-template-columns: 1fr;
    row-gap: 2.4rem;
  }
}