/* Secondary pages only. The home page does not load this file. */
.secondary-site main {
  --secondary-bg: #fbfbf8;
  --secondary-paper: #fff;
  --secondary-ink: #101211;
  --secondary-muted: #5f6561;
  --secondary-line: #dedfd9;
  --secondary-soft: #f0f2ed;
  --secondary-green: var(--brand-green);
  --secondary-radius: 12px;
  color: var(--secondary-ink);
  background: var(--secondary-bg);
}

.secondary-site main h1,
.secondary-site main h2,
.secondary-site main h3,
.secondary-site main p { text-wrap: pretty; }

.secondary-site main h1,
.secondary-site main h2,
.secondary-site main h3 { color: var(--secondary-ink); }

.secondary-site main img,
.secondary-site main video { border-radius: var(--secondary-radius); }
.secondary-site main :where(section, article, figure, a) { box-shadow: none; }

.secondary-site main .page-hero,
.secondary-site main .page-hero.is-dark,
.secondary-site main .overview-hero,
.secondary-site main .v3-service-category-hero,
.secondary-site main .service-detail-hero {
  min-height: 0;
  display: block;
  padding: 176px 0 54px;
  color: var(--secondary-ink);
  background: var(--secondary-bg);
  border: 0;
}

.secondary-site main .page-hero::after { display: none; }
.secondary-site main .page-hero .content-shell { display: block; }
.secondary-site main .page-hero h1 {
  max-width: min(1100px, 94%);
  margin: 0;
  font-size: clamp(48px, 5vw, 64px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -.045em;
  overflow-wrap: anywhere;
}

.secondary-site main .secondary-intro {
  display: grid;
  grid-template-columns: minmax(0, 820px) minmax(180px, 1fr);
  align-items: end;
  gap: 72px;
  padding: 58px 0 104px;
  border-bottom: 1px solid var(--secondary-line);
}

.secondary-site main .secondary-intro > p {
  margin: 0;
  color: var(--secondary-ink);
  font-size: clamp(20px, 1.75vw, 25px);
  line-height: 1.72;
  letter-spacing: -.015em;
}

.secondary-site main .secondary-intro > .text-link { justify-self: end; }
.secondary-site main .secondary-intro-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.secondary-site main .secondary-intro-actions a { color: inherit; font-size: 15px; font-weight: 700; }
.secondary-site main .secondary-intro-actions strong { color: var(--secondary-muted); font-size: 13px; font-weight: 500; line-height: 1.65; }

.secondary-site main .material-visual,
.secondary-site main .secondary-media {
  width: var(--shell);
  margin: 0 auto 20px;
}

.secondary-site main .secondary-media { overflow: hidden; }
.secondary-site main .secondary-media video {
  width: 100%;
  aspect-ratio: 16 / 9;
  display: block;
  object-fit: cover;
  background: #e9ebe7;
}
.secondary-site main .secondary-media figcaption,
.secondary-site main .case-hero-media figcaption,
.secondary-site main .about-main-image figcaption {
  padding-top: 13px;
  color: var(--secondary-muted);
  font-size: 13px;
}

.secondary-site main .material-frame {
  padding: 12px;
  overflow: hidden;
  background: #eceee9;
  border: 1px solid var(--secondary-line);
  border-radius: var(--secondary-radius);
}
.secondary-site main .material-ui .material-frame { height: auto; }
.secondary-site main .material-ui .material-frame img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 10px;
  box-shadow: none;
  transform: none;
}
.secondary-site main .material-photo .material-frame { height: auto; padding: 0; }
.secondary-site main .material-photo .material-frame img {
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  filter: none;
  transform: none;
}
.secondary-site main .material-ui figcaption,
.secondary-site main .material-photo figcaption {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 72px;
  padding-top: 18px;
  color: var(--secondary-muted);
  font-size: 13px;
}
.secondary-site main .material-visual figcaption ul {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--secondary-line);
}
.secondary-site main .material-visual figcaption li {
  min-height: 48px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--secondary-line);
}
.secondary-site main .material-visual figcaption li span { color: var(--secondary-ink); font-size: 14px; }

.secondary-site main .material-abstract,
.secondary-site main .material-editorial {
  min-height: 440px;
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 8vw;
  padding: 56px 64px;
  overflow: hidden;
  background: var(--secondary-soft);
  border: 1px solid var(--secondary-line);
  border-radius: var(--secondary-radius);
}
.secondary-site main .material-abstract::before,
.secondary-site main .material-editorial::before { display: none; }
.secondary-site main .material-abstract header,
.secondary-site main .material-editorial header {
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 0;
}
.secondary-site main .material-abstract header > span,
.secondary-site main .material-editorial header > span {
  max-width: 320px;
  color: inherit;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0;
}
.secondary-site main .material-abstract header strong,
.secondary-site main .material-editorial header strong {
  max-width: 480px;
  color: var(--secondary-ink);
  font-size: clamp(34px, 3.2vw, 44px);
  font-weight: 600;
  line-height: 1.15;
}
.secondary-site main .material-abstract > ul,
.secondary-site main .material-editorial > ul {
  align-self: center;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid #bfc3bd;
}
.secondary-site main .material-abstract > ul li,
.secondary-site main .material-editorial > ul li {
  min-height: 72px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #bfc3bd;
  opacity: 1;
  transform: none;
}
.secondary-site main .material-abstract > ul span,
.secondary-site main .material-editorial > ul span { font-size: 18px; font-weight: 600; }

.secondary-site main .plain-section-heading { display: block; padding-bottom: 38px; }
.secondary-site main .plain-section-heading h2,
.secondary-site main .secondary-problems h2,
.secondary-site main .secondary-use-cases h2,
.secondary-site main .secondary-capabilities h2,
.secondary-site main .secondary-delivery h2,
.secondary-site main .secondary-proof h2,
.secondary-site main .secondary-faq > h2 {
  max-width: 760px;
  margin: 0;
  font-size: clamp(32px, 3.3vw, 44px);
  font-weight: 600;
  line-height: 1.18;
  letter-spacing: -.035em;
}
.secondary-site main .plain-section-heading p,
.secondary-site main .secondary-capabilities header p,
.secondary-site main .secondary-proof header p {
  max-width: 680px;
  margin: 18px 0 0;
  color: var(--secondary-muted);
  font-size: 17px;
  line-height: 1.75;
}

.secondary-site main .secondary-problems {
  display: grid;
  grid-template-columns: .65fr 1.35fr;
  gap: 8vw;
  padding: 108px 0;
}
.secondary-site main .secondary-problems > div { border-top: 1px solid var(--secondary-line); }
.secondary-site main .secondary-problems article { min-height: 92px; display: flex; align-items: center; border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .secondary-problems article p { margin: 0; color: var(--secondary-ink); font-size: 19px; line-height: 1.55; }

.secondary-site main .secondary-use-cases { padding: 100px 0; background: var(--secondary-soft); }
.secondary-site main .secondary-use-cases .content-shell { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8vw; }
.secondary-site main .secondary-use-cases ul { border-top: 1px solid #c4c7c1; }
.secondary-site main .secondary-use-cases li {
  min-height: 78px;
  display: flex;
  align-items: center;
  padding-left: 22px;
  position: relative;
  border-bottom: 1px solid #c4c7c1;
  color: var(--secondary-ink);
  font-size: 17px;
}
.secondary-site main .secondary-use-cases li::before {
  content: '';
  width: 7px;
  height: 7px;
  position: absolute;
  left: 0;
  border-radius: 50%;
  background: var(--secondary-green);
}

.secondary-site main .secondary-capabilities { padding: 108px 0; }
.secondary-site main .secondary-capabilities header { display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; margin-bottom: 52px; }
.secondary-site main .secondary-capabilities > div { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--secondary-line); border-left: 1px solid var(--secondary-line); }
.secondary-site main .secondary-capabilities article {
  min-height: 104px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 24px;
  padding: 24px;
  background: transparent;
  border-right: 1px solid var(--secondary-line);
  border-bottom: 1px solid var(--secondary-line);
}
.secondary-site main .secondary-capabilities h3 { margin: 0; font-size: 21px; }
.secondary-site main .secondary-capabilities article span { color: var(--secondary-muted); font-size: 13px; line-height: 1.6; }

.secondary-site main .secondary-delivery { padding: 108px 0; border-top: 1px solid var(--secondary-line); }
.secondary-site main .secondary-delivery header { margin-bottom: 54px; }
.secondary-site main .secondary-delivery > div { border-top: 1px solid var(--secondary-ink); }
.secondary-site main .secondary-delivery article {
  min-height: 126px;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  align-items: center;
  gap: 8vw;
  border-bottom: 1px solid var(--secondary-line);
}
.secondary-site main .secondary-delivery h3 { margin: 0; font-size: clamp(24px, 2.2vw, 32px); font-weight: 600; }
.secondary-site main .secondary-delivery p { max-width: 670px; margin: 0; color: var(--secondary-muted); font-size: 16px; line-height: 1.75; }

.secondary-site main .secondary-proof { padding: 108px 0; }
.secondary-site main .secondary-proof header { display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; margin-bottom: 48px; }
.secondary-site main .secondary-proof > div { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.secondary-site main .related-case { display: block; background: transparent; border: 0; }
.secondary-site main .related-case figure { height: auto; margin: 0 0 22px; overflow: hidden; border-radius: var(--secondary-radius); }
.secondary-site main .related-case figure img { aspect-ratio: 3 / 2; object-fit: cover; transition: transform .55s ease; }
.secondary-site main .related-case:hover figure img { transform: scale(1.02); }
.secondary-site main .related-case > div { display: grid; grid-template-columns: 1fr auto; gap: 10px 24px; padding: 0; }
.secondary-site main .related-case h3 { margin: 0; font-size: 26px; }
.secondary-site main .related-case p { grid-column: 1; margin: 0; color: var(--secondary-muted); }
.secondary-site main .related-case span { grid-column: 2; grid-row: 1 / 3; align-self: center; color: inherit; font-size: 14px; }
.secondary-site main .no-public-case { grid-column: 1 / -1; padding: 36px 0; border-top: 1px solid var(--secondary-line); border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .no-public-case h3 { margin: 0 0 10px; font-size: 24px; }
.secondary-site main .no-public-case p { max-width: 720px; color: var(--secondary-muted); font-size: 16px; line-height: 1.7; }

.secondary-site main .secondary-faq { padding: 108px 0 128px; }
.secondary-site main .secondary-faq > h2 { margin-bottom: 44px; }
.secondary-site main .secondary-faq details { border-top: 1px solid var(--secondary-line); }
.secondary-site main .secondary-faq details:last-child { border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .secondary-faq summary {
  min-height: 90px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  cursor: pointer;
  list-style: none;
}
.secondary-site main .secondary-faq summary::-webkit-details-marker { display: none; }
.secondary-site main .secondary-faq summary span { font-size: 20px; font-weight: 600; }
.secondary-site main .secondary-faq summary i { color: inherit; font-size: 28px; font-style: normal; transition: transform .3s; }
.secondary-site main .secondary-faq details[open] summary i { transform: rotate(45deg); }
.secondary-site main .secondary-faq details > p { max-width: 760px; margin: -4px 0 36px; color: var(--secondary-muted); font-size: 17px; line-height: 1.8; }
@supports selector(details::details-content) {
  .secondary-site main details::details-content { block-size: 0; overflow: hidden; transition: block-size .35s ease, content-visibility .35s allow-discrete; }
  .secondary-site main details[open]::details-content { block-size: auto; }
}

.secondary-site main .big-cta {
  min-height: 400px;
  padding-block: 82px;
  background: #111412;
}
.secondary-site main .big-cta h2 { font-size: clamp(40px, 4.4vw, 56px); }

/* Service directory and category pages */
.secondary-site main .business-directory-nav { margin-top: 0; padding: 0 0 54px; border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .business-directory-nav a { border-color: var(--secondary-line); }
.secondary-site main .business-directory { padding: 42px 0 118px; }
.secondary-site main .business-directory-group { padding: 68px 0; border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .business-directory-group > header { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8vw; margin-bottom: 38px; }
.secondary-site main .business-directory-group h2 { margin: 0; font-size: clamp(32px, 3vw, 42px); }
.secondary-site main .business-directory-group header p { max-width: 620px; margin: 0; color: var(--secondary-muted); font-size: 17px; line-height: 1.7; }
.secondary-site main .business-directory-list { border-top: 1px solid var(--secondary-line); }
.secondary-site main .business-directory-list a { min-height: 94px; grid-template-columns: 1fr 1.25fr 36px; background: transparent; border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .business-directory-list h3 { font-size: 22px; }

.secondary-site main .service-catalog { padding: 100px 0 112px; }
.secondary-site main .service-catalog > div { border-top: 1px solid var(--secondary-line); }
.secondary-site main .service-catalog-item,
.secondary-site main .group-web-experience .service-catalog-item,
.secondary-site main .group-content-growth .service-catalog-item {
  min-height: 108px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 40px;
  margin: 0;
  padding: 24px 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--secondary-line);
}
.secondary-site main .service-catalog-item h2 { margin: 0 0 8px; font-size: 25px; }
.secondary-site main .service-catalog-item p { max-width: 760px; margin: 0; color: var(--secondary-muted); font-size: 15px; line-height: 1.65; }
.secondary-site main .service-catalog-item > span { color: inherit; font-size: 14px; }
.secondary-site main .service-category-fit { padding: 96px 0; color: var(--secondary-ink); background: var(--secondary-soft); }
.secondary-site main .service-category-fit .content-shell { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8vw; }
.secondary-site main .service-category-fit h2 { margin: 0; font-size: clamp(32px, 3.3vw, 44px); }
.secondary-site main .service-category-fit ul { border-top: 1px solid #c4c7c1; }
.secondary-site main .service-category-fit li { min-height: 76px; display: flex; align-items: center; padding: 0; color: var(--secondary-ink); border-bottom: 1px solid #c4c7c1; font-size: 17px; }

/* Family rhythm */
.secondary-site.layout-product-flow main .secondary-problems,
.secondary-site.layout-product-modules main .secondary-problems,
.secondary-site.layout-product-operations main .secondary-problems,
.secondary-site.layout-product-pipeline main .secondary-problems {
  display: block;
}
.secondary-site.layout-product-flow main .secondary-problems header,
.secondary-site.layout-product-modules main .secondary-problems header,
.secondary-site.layout-product-operations main .secondary-problems header,
.secondary-site.layout-product-pipeline main .secondary-problems header { margin-bottom: 46px; }
.secondary-site.layout-product-flow main .secondary-problems > div,
.secondary-site.layout-product-modules main .secondary-problems > div,
.secondary-site.layout-product-operations main .secondary-problems > div,
.secondary-site.layout-product-pipeline main .secondary-problems > div { display: grid; grid-template-columns: repeat(3, 1fr); border-left: 1px solid var(--secondary-line); }
.secondary-site.layout-product-flow main .secondary-problems article,
.secondary-site.layout-product-modules main .secondary-problems article,
.secondary-site.layout-product-operations main .secondary-problems article,
.secondary-site.layout-product-pipeline main .secondary-problems article { min-height: 170px; align-items: flex-end; padding: 24px; border-right: 1px solid var(--secondary-line); }
.secondary-site.layout-product-device main .material-frame { max-width: 920px; margin-inline: auto; padding: 18px; }
.secondary-site.layout-product-device main .material-frame img { aspect-ratio: 16 / 10; object-fit: contain; }
.secondary-site.layout-visual-commerce main .secondary-media video { aspect-ratio: 2 / 1; }
.secondary-site.layout-visual-editorial main .secondary-media { width: min(1120px, calc(100vw - 80px)); }
.secondary-site.layout-editorial-samples main .secondary-intro { border-bottom: 0; }
.secondary-site.layout-editorial-samples main .material-visual { margin-bottom: 68px; }
.secondary-site.layout-conversion-path main .secondary-capabilities > div { grid-template-columns: 1fr; }
.secondary-site.family-growth main .secondary-problems { display: block; }
.secondary-site.family-growth main .secondary-problems header { margin-bottom: 42px; }
.secondary-site.family-growth main .secondary-problems > div { display: grid; grid-template-columns: repeat(3, 1fr); border-left: 1px solid var(--secondary-line); }
.secondary-site.family-growth main .secondary-problems article { min-height: 150px; align-items: flex-end; padding: 24px; border-right: 1px solid var(--secondary-line); }
.secondary-site.family-growth main .secondary-capabilities header,
.secondary-site.family-growth main .secondary-proof header { display: block; }
.secondary-site.family-growth main .secondary-capabilities header p,
.secondary-site.family-growth main .secondary-proof header p { margin-top: 20px; }
.secondary-site.family-support main .secondary-problems { display: block; }
.secondary-site.family-support main .secondary-problems header { margin-bottom: 36px; }
.secondary-site.family-support main .secondary-problems article { min-height: 76px; }
.secondary-site.family-support main .secondary-use-cases .content-shell { grid-template-columns: 1fr; }
.secondary-site.family-support main .secondary-use-cases h2 { margin-bottom: 40px; }
.secondary-site.layout-ops-status main .material-abstract,
.secondary-site.layout-ops-ledger main .material-abstract { min-height: 360px; background: #eef1ec; }
.secondary-site.layout-ops-status main .secondary-capabilities > div,
.secondary-site.layout-ops-ledger main .secondary-capabilities > div { grid-template-columns: 1fr; }
.secondary-site.layout-ops-status main .secondary-capabilities article,
.secondary-site.layout-ops-ledger main .secondary-capabilities article { min-height: 82px; grid-template-columns: 1fr 1fr; }

/* Cases and products */
.secondary-site main .case-note { margin-top: 0; padding: 28px 0; border-top: 1px solid var(--secondary-line); border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .case-grid { gap: 72px 20px; padding: 92px 0 128px; }
.secondary-site main .case-card figure { border-radius: var(--secondary-radius); }
.secondary-site main .case-card figure img { aspect-ratio: 3 / 2; object-fit: cover; }
.secondary-site main .case-card small { color: inherit; }
.secondary-site main .case-card h2 { font-size: clamp(28px, 3vw, 40px); }
.secondary-site main .case-hero-media { margin-top: 0; padding: 0; }
.secondary-site main .case-hero-media img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.secondary-site main .case-project-info { display: grid; grid-template-columns: repeat(4, 1fr); margin-bottom: 90px; border-top: 1px solid var(--secondary-line); border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .case-project-info div { min-height: 116px; padding: 24px; border-right: 1px solid var(--secondary-line); }
.secondary-site main .case-project-info div:last-child { border-right: 0; }
.secondary-site main .case-project-info span { display: block; margin-bottom: 15px; color: var(--secondary-muted); font-size: 13px; }
.secondary-site main .case-project-info strong { font-size: 16px; line-height: 1.6; }
.secondary-site main .case-story { padding: 84px 0; border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .case-story h2 { font-size: clamp(32px, 3.2vw, 44px); }
.secondary-site main .case-story > p { color: var(--secondary-ink); font-size: 19px; }
.secondary-site main .case-strategy { padding: 100px 0; }
.secondary-site main .case-strategy article { min-height: 110px; display: flex; align-items: center; border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .case-strategy article h2 { font-size: clamp(25px, 2.6vw, 36px); }
.secondary-site main .case-system { padding: 100px 0; color: var(--secondary-ink); background: var(--secondary-soft); }
.secondary-site main .case-system h2 { color: var(--secondary-ink); font-size: clamp(32px, 3.2vw, 44px); }
.secondary-site main .case-public-media { padding: 108px 0; }
.secondary-site main .case-client-quote { padding: 100px 0; color: var(--secondary-ink); background: #fff; border-top: 1px solid var(--secondary-line); border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .case-client-quote blockquote { color: var(--secondary-ink); font-size: clamp(28px, 3.5vw, 46px); }
.secondary-site main .verified-result { padding: 100px 0; }

.secondary-site main .product-section { padding: 98px 0; }
.secondary-site main .app-product-grid { gap: 20px; }
.secondary-site main .product-card { background: transparent; border: 0; }
.secondary-site main .product-card figure { border-radius: var(--secondary-radius); }
.secondary-site main .enterprise-products { padding: 96px 0 118px; background: var(--secondary-soft); }
.secondary-site main .enterprise-row { min-height: 116px; grid-template-columns: 1fr 220px 40px; border-color: #c4c7c1; }
.secondary-site main .product-hero-media { margin-top: 0; padding: 0; overflow: hidden; background: #eceee9; border-radius: var(--secondary-radius); }
.secondary-site main .product-hero-media img { width: 100%; height: auto; max-height: 760px; aspect-ratio: 16 / 10; object-fit: contain; }
.secondary-site main .product-meta,
.secondary-site main .article-meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
.secondary-site main .product-meta span,
.secondary-site main .article-meta span { padding: 8px 12px; color: var(--secondary-muted); border: 1px solid var(--secondary-line); border-radius: 999px; font-size: 12px; }
.secondary-site main .product-position { padding: 96px 0; }
.secondary-site main .product-position h2 { max-width: 1020px; font-size: clamp(32px, 3.4vw, 46px); }
.secondary-site main .feature-grid { grid-template-columns: repeat(3, 1fr); gap: 0; margin-bottom: 110px; border-top: 1px solid var(--secondary-line); border-left: 1px solid var(--secondary-line); }
.secondary-site main .feature-grid article { min-height: 126px; justify-content: flex-end; padding: 24px; background: transparent; border-right: 1px solid var(--secondary-line); border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .feature-grid article h2 { font-size: 22px; }
.secondary-site main .product-scenarios { padding: 96px 0; color: var(--secondary-ink); background: var(--secondary-soft); }
.secondary-site main .product-scenarios h2 { color: var(--secondary-ink); }
.secondary-site main .privacy-card { margin-block: 106px; padding: 54px; background: #fff; border: 1px solid var(--secondary-line); border-radius: var(--secondary-radius); }

/* Editorial, company and information pages */
.secondary-site main .featured-article { padding: 86px 0 40px; }
.secondary-site main .featured-article > a { min-height: 520px; padding: 48px; background: var(--secondary-soft); border-radius: var(--secondary-radius); }
.secondary-site main .article-list { padding-bottom: 100px; }
.secondary-site main .article-row { padding: 42px 0; border-color: var(--secondary-line); }
.secondary-site main .category-cloud { padding: 60px 0 110px; }
.secondary-site main .article-page > .material-visual { margin-bottom: 0; }
.secondary-site main .article-layout { grid-template-columns: 260px minmax(0, 760px); justify-content: center; gap: 78px; padding: 98px 0 118px; }
.secondary-site main .article-layout aside { position: sticky; top: 108px; align-self: start; }
.secondary-site main .article-layout aside a { min-height: 48px; display: flex; align-items: center; padding: 0; border-bottom: 1px solid var(--secondary-line); color: var(--secondary-muted); font-size: 13px; }
.secondary-site main .article-body { max-width: 760px; }
.secondary-site main .article-body p { color: #242725; font-size: 18px; line-height: 1.95; }
.secondary-site main .article-body h2 { margin: 72px 0 24px; font-size: clamp(30px, 3vw, 40px); }
.secondary-site main .related-articles { padding: 92px 0 118px; border-top: 1px solid var(--secondary-line); }

.secondary-site main .about-main-image { margin-top: 0; }
.secondary-site main .about-main-image img { height: auto; aspect-ratio: 16 / 6; object-fit: cover; }
.secondary-site main .about-position { padding: 108px 0; }
.secondary-site main .about-position h2 { font-size: clamp(34px, 3.5vw, 46px); }
.secondary-site main .about-position p { color: var(--secondary-ink); font-size: 20px; }
.secondary-site main .about-numbers { grid-template-columns: repeat(4, 1fr); margin-bottom: 108px; border-top: 1px solid var(--secondary-line); border-bottom: 1px solid var(--secondary-line); }
.secondary-site main .about-numbers > div { min-height: 160px; border-right: 1px solid var(--secondary-line); }
.secondary-site main .about-numbers > div:last-child { border-right: 0; }
.secondary-site main .about-numbers strong { color: var(--secondary-ink); font-size: clamp(36px, 4vw, 54px); }
.secondary-site main .about-numbers b { color: inherit; }
.secondary-site main .about-office-grid { padding-bottom: 108px; }
.secondary-site main .about-method { padding: 108px 0; }
.secondary-site main .about-method article { grid-template-columns: 160px 1fr; min-height: 116px; }
.secondary-site main .about-notes { display: grid; grid-template-columns: .7fr 1.3fr; gap: 8vw; padding: 108px 0; }
.secondary-site main .about-notes > div { display: block; margin: 0; }
.secondary-site main .about-notes article,
.secondary-site main .about-notes .note-1,
.secondary-site main .about-notes .note-2,
.secondary-site main .about-notes .note-3 { min-height: 126px; margin: 0; padding: 24px 0; border-top: 1px solid var(--secondary-line); }
.secondary-site main .about-credit { padding: 96px 0; }

.secondary-site main .team-gallery { gap: 16px; padding: 0 0 20px; }
.secondary-site main .team-gallery figure { border-radius: var(--secondary-radius); }
.secondary-site main .center-list { padding: 98px 0; }
.secondary-site main .center-list article { grid-template-columns: .8fr 1.2fr; min-height: 112px; }
.secondary-site main .team-principle { padding: 90px 0; color: var(--secondary-ink); background: var(--secondary-soft); }
.secondary-site main .team-principle h2 { color: var(--secondary-ink); font-size: clamp(32px, 3.4vw, 46px); }

.secondary-site main .process-proof { gap: 18px; padding: 0 0 30px; }
.secondary-site main .process-proof figure { height: auto; }
.secondary-site main .process-proof figure img { aspect-ratio: 3 / 2; object-fit: cover; }
.secondary-site main .process-proof div { padding: 78px 0; }
.secondary-site main .process-proof h2 { font-size: clamp(34px, 3.8vw, 50px); }
.secondary-site main .process-principles { padding: 108px 0; }
.secondary-site main .process-principles > div { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--secondary-line); border-left: 1px solid var(--secondary-line); }
.secondary-site main .process-principles article { min-height: 180px; padding: 28px; background: transparent; border-right: 1px solid var(--secondary-line); border-bottom: 1px solid var(--secondary-line); }

.secondary-site main .history-track { color: var(--secondary-ink); background: var(--secondary-bg); }
.secondary-site main .history-track article { min-height: 640px; padding: 82px 0; border-color: var(--secondary-line); }
.secondary-site main .history-track h2 { color: var(--secondary-ink); }
.secondary-site main .history-track p { color: var(--secondary-muted); }

.secondary-site main .office-block { padding: 92px 0; }
.secondary-site main .office-copy small { color: inherit; }
.secondary-site main .office-gallery { gap: 16px; }
.secondary-site main .office-gallery figure { border-radius: var(--secondary-radius); }

.secondary-site main .careers-photo { padding: 0 0 20px; }
.secondary-site main .careers-photo figure { border-radius: var(--secondary-radius); }
.secondary-site main .job-list { padding: 96px 0 120px; }
.secondary-site main .job-card { border-color: var(--secondary-line); }
.secondary-site main .job-card small { color: inherit; }

.secondary-site main .contact-visuals { gap: 18px; padding: 0 0 92px; }
.secondary-site main .contact-visuals figure { border-radius: var(--secondary-radius); }
.secondary-site main .contact-routes { background: var(--secondary-line); }
.secondary-site main .contact-routes a { background: var(--secondary-bg); }
.secondary-site main .contact-routes small,
.secondary-site main .contact-routes span { color: inherit; }

.secondary-site main .faq-search { padding: 72px 0 34px; }
.secondary-site main .faq-list { padding-bottom: 118px; }
.secondary-site main .faq-item summary { grid-template-columns: 140px 1fr 40px; }
.secondary-site main .faq-item summary > span { color: inherit; }
.secondary-site main .faq-item > p { color: var(--secondary-muted); }
.secondary-site main .legal-content { max-width: 820px; padding: 78px 0 128px; }
.secondary-site main .legal-updated { margin-bottom: 42px; color: var(--secondary-muted); font-size: 14px; }
.secondary-site main .legal-content section { padding: 38px 0; border-color: var(--secondary-line); }
.secondary-site main .legal-content h2 { font-size: 27px; }
.secondary-site main .legal-content p { color: #2f3330; font-size: 17px; line-height: 1.95; }
.secondary-site main .not-found { min-height: calc(100vh - 88px); padding-top: 120px; background: var(--secondary-bg); }
.secondary-site main .not-found h1 { max-width: 760px; font-size: clamp(46px, 5.5vw, 70px); }
.secondary-site main .not-found-number { color: inherit; opacity: .15; }

@media (prefers-reduced-motion: reduce) {
  .secondary-site main *,
  .secondary-site main *::before,
  .secondary-site main *::after { animation: none !important; transition-duration: .01ms !important; }
}

@media (max-width: 820px) {

  body.secondary-site #main [data-inner-v3]:where([data-page="/services/software-ai/"]) :is(.compact-scope,.compact-evidence,.secondary-intro,.secondary-delivery > div) { grid-template-columns:minmax(0,1fr); }
  body.secondary-site #main [data-inner-v3]:where([data-page="/services/software-ai/"]) :is(.compact-scope article:nth-of-type(n),.compact-evidence article:nth-child(n)) { margin:0; }
  body.secondary-site #main [data-inner-v3]:where([data-page="/services/software-ai/"]) :is(.big-cta,.refined-cta) { padding:32px; flex-wrap:wrap; }

  .secondary-site main .page-hero,
  .secondary-site main .page-hero.is-dark,
  .secondary-site main .overview-hero,
  .secondary-site main .v3-service-category-hero,
  .secondary-site main .service-detail-hero { padding: 112px 0 42px; }
  .secondary-site main .page-hero h1 { max-width: 100%; font-size: clamp(38px, 10.5vw, 48px); }
  .secondary-site main .secondary-intro,
  .secondary-site main .secondary-problems,
  .secondary-site main .secondary-use-cases .content-shell,
  .secondary-site main .secondary-capabilities header,
  .secondary-site main .secondary-proof header,
  .secondary-site main .business-directory-group > header,
  .secondary-site main .service-category-fit .content-shell,
  .secondary-site main .about-notes { grid-template-columns: 1fr; gap: 28px; }
  .secondary-site main .secondary-intro { padding: 38px 0 68px; }
  .secondary-site main .secondary-intro > p { font-size: 18px; }
  .secondary-site main .secondary-intro > .text-link { justify-self: start; }
  .secondary-site main .material-visual,
  .secondary-site main .secondary-media,
  .secondary-site.layout-visual-editorial main .secondary-media { width: var(--shell); }
  .secondary-site main .material-abstract,
  .secondary-site main .material-editorial { min-height: 0; grid-template-columns: 1fr; gap: 42px; padding: 34px 24px; }
  .secondary-site main .material-abstract header strong,
  .secondary-site main .material-editorial header strong { margin-top: 60px; }
  .secondary-site main .material-ui figcaption,
  .secondary-site main .material-photo figcaption { grid-template-columns: 1fr; gap: 16px; }
  .secondary-site main .secondary-problems,
  .secondary-site main .secondary-capabilities,
  .secondary-site main .secondary-delivery,
  .secondary-site main .secondary-proof,
  .secondary-site main .secondary-faq { padding: 72px 0; }
  .secondary-site main .secondary-capabilities > div,
  .secondary-site main .secondary-proof > div,
  .secondary-site main .process-principles > div,
  .secondary-site.layout-product-flow main .secondary-problems > div,
  .secondary-site.layout-product-modules main .secondary-problems > div,
  .secondary-site.layout-product-operations main .secondary-problems > div,
  .secondary-site.layout-product-pipeline main .secondary-problems > div { grid-template-columns: 1fr; }
  .secondary-site main .secondary-delivery article { grid-template-columns: 1fr; gap: 14px; padding: 24px 0; }
  .secondary-site main .case-project-info { grid-template-columns: 1fr 1fr; }
  .secondary-site main .article-layout { grid-template-columns: 1fr; gap: 42px; }
  .secondary-site main .article-layout aside { position: static; }
  .secondary-site main .about-numbers { grid-template-columns: 1fr 1fr; }
  .secondary-site main .center-list article { grid-template-columns: 1fr; gap: 12px; }
}
