/* Volynets IT — Implementation Pass v1 (sandbox only)
 * Canonical implementation layer built from the approved Brand / Visual / Component / Responsive systems.
 */

:root {
  --vit-navy-950: #0b1220;
  --vit-navy-900: #0f172a;
  --vit-navy-800: #17233b;
  --vit-blue-600: #2563eb;
  --vit-blue-700: #1d4ed8;
  --vit-blue-400: #60a5fa;
  --vit-blue-300: #93c5fd;
  --vit-blue-50: #eff6ff;
  --vit-bg: #f5f8fc;
  --vit-surface: #ffffff;
  --vit-text: #111827;
  --vit-muted: #526071;
  --vit-border: #d9e6f5;
  --vit-radius-hero: 28px;
  --vit-radius-section: 22px;
  --vit-radius-card: 16px;
  --vit-shadow-card: 0 10px 30px rgba(15, 23, 42, .06);
  --vit-shadow-hover: 0 20px 50px rgba(37, 99, 235, .12);
  --vit-shadow-hero: 0 24px 64px rgba(15, 23, 42, .09);
  --vit-max: 1160px;
  --vit-motion-fast: 180ms;
  --vit-motion-base: 320ms;
}

html { scrollbar-gutter: stable; }

body {
  background: var(--vit-bg) !important;
  color: var(--vit-text);
  font-family: var(--wp--preset--font-family--manrope, "Manrope", sans-serif) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

a { text-underline-offset: 3px; }

/* ---------- Header / brand lockup ---------- */
.vit-global-header {
  border-bottom: 1px solid rgba(217, 230, 245, .92) !important;
  background: rgba(255, 255, 255, .96) !important;
  box-shadow: 0 7px 24px rgba(15, 23, 42, .045) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.vit-global-header__inner {
  width: min(1240px, calc(100% - 36px)) !important;
  max-width: 1240px !important;
  min-height: 72px;
  margin-inline: auto !important;
  gap: 28px !important;
}

.vit-brand-lockup {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 11px !important;
  flex: 0 0 auto;
}

.vit-brand-lockup::before { display: none !important; content: none !important; }

.vit-brand-mark,
.vit-footer-brand-mark {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  text-decoration: none !important;
}

.vit-brand-mark {
  width: 56px;
  height: 42px;
  border: 1px solid rgba(147, 197, 253, .68);
  border-radius: 12px;
  background: linear-gradient(145deg, #ffffff 0%, #edf6ff 100%);
  box-shadow: 0 8px 22px rgba(37, 99, 235, .10), inset 0 0 0 1px rgba(255,255,255,.9);
}

.vit-brand-mark svg { width: 44px; height: 27px; display: block; }

.vit-brand-copy,
.vit-footer-brand-copy {
  gap: 0 !important;
  margin: 0 !important;
}

.vit-brand-lockup .wp-block-site-title,
.vit-brand-lockup .wp-block-site-title a {
  margin: 0 !important;
  color: var(--vit-navy-950) !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  line-height: 1.02 !important;
  letter-spacing: -.035em !important;
  text-decoration: none !important;
}

.vit-brand-tag {
  margin: 4px 0 0 !important;
  color: var(--vit-blue-600) !important;
  font-size: 8.5px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .18em !important;
}

.vit-main-nav .wp-block-navigation__container { gap: 2px !important; }
.vit-main-nav .wp-block-navigation-item__content {
  position: relative;
  padding: 10px 11px !important;
  color: #26344a !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  white-space: nowrap;
  text-decoration: none !important;
  transition: color var(--vit-motion-fast) ease, background var(--vit-motion-fast) ease;
}
.vit-main-nav .wp-block-navigation-item__content:hover { color: var(--vit-blue-600) !important; }
.vit-main-nav .wp-block-navigation__container > li:last-child > .wp-block-navigation-item__content {
  margin-left: 5px;
  padding: 11px 17px !important;
  border-radius: 11px;
  color: #fff !important;
  background: linear-gradient(135deg, var(--vit-blue-600), #3478f6) !important;
  box-shadow: 0 9px 22px rgba(37,99,235,.22);
}
.vit-main-nav .wp-block-navigation__container > li:last-child > .wp-block-navigation-item__content:hover {
  color: #fff !important;
  background: linear-gradient(135deg, var(--vit-blue-700), var(--vit-blue-600)) !important;
  transform: translateY(-1px);
}

/* ---------- Current navigation state ---------- */
.vit-main-nav .wp-block-navigation-item.is-current > .wp-block-navigation-item__content {
  color: var(--vit-blue-600) !important;
}
@media (min-width: 901px) {
  .vit-main-nav .wp-block-navigation__container > li.is-current:not(:last-child) > .wp-block-navigation-item__content::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 3px;
    width: 18px;
    height: 2px;
    border-radius: 999px;
    background: var(--vit-blue-600);
    transform: translateX(-50%);
  }
}

/* ---------- Shared hero atmosphere ---------- */
.vit-hero-v32-shell,
body.page:not(.page-id-40) .vit-inner-hero {
  position: relative;
  isolation: isolate;
}

.page-id-40 .vit-hero-v32-shell,
body.page:not(.page-id-40) .vit-inner-hero {
  overflow: hidden !important;
  border: 1px solid var(--vit-border) !important;
  border-radius: var(--vit-radius-hero) !important;
  background:
    radial-gradient(circle at 88% 22%, rgba(96,165,250,.16), transparent 26rem),
    radial-gradient(circle at 65% 110%, rgba(147,197,253,.15), transparent 23rem),
    linear-gradient(135deg, #ffffff 0%, #f8fbff 54%, #eef6ff 100%) !important;
  box-shadow: var(--vit-shadow-hero) !important;
}

/* Homepage .vit-hero-v32 is the grid inside the shell, not a second card. */
.page-id-40 .vit-hero-v32 {
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.page-id-40 .vit-hero-v32-shell::before,
body.page:not(.page-id-40) .vit-inner-hero::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0 0 0 52%;
  pointer-events: none;
  opacity: .42;
  background-image:
    linear-gradient(rgba(37,99,235,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(37,99,235,.08) 1px, transparent 1px),
    radial-gradient(circle, rgba(37,99,235,.32) 1px, transparent 1.6px);
  background-size: 42px 42px, 42px 42px, 84px 84px;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 22%, #000 100%);
  mask-image: linear-gradient(90deg, transparent, #000 22%, #000 100%);
}

.vit-hero-v32 > *,
body.page:not(.page-id-40) .vit-inner-hero > * { position: relative; z-index: 2; }

.vit-hero-v32__eyebrow,
.vit-inner-eyebrow {
  color: var(--vit-blue-600) !important;
  font-weight: 800 !important;
  letter-spacing: .145em !important;
}

.vit-hero-v32 h1,
body.page:not(.page-id-40) .vit-inner-hero__copy > h1.wp-block-heading {
  color: var(--vit-navy-950) !important;
  font-weight: 700 !important;
  letter-spacing: -.04em !important;
  text-wrap: balance;
}

.vit-hero-v32__lead,
.vit-hero-v32__sub,
body.page:not(.page-id-40) .vit-inner-hero__copy > p {
  color: var(--vit-muted) !important;
}

/* Homepage quick selector: balanced slightly higher, approved direction. */
@media (min-width: 901px) {
  .page-id-40 .vit-quick-nav { transform: translateY(-30px) !important; }
}

.vit-quick-nav,
.vit-inner-signature {
  border: 1px solid rgba(147,197,253,.16) !important;
  background:
    radial-gradient(circle at 86% 10%, rgba(59,130,246,.24), transparent 12rem),
    linear-gradient(145deg, var(--vit-navy-950) 0%, #142448 100%) !important;
  box-shadow: 0 24px 54px rgba(15,23,42,.18) !important;
}

.vit-quick-nav__list a,
.vit-inner-signature {
  transition: transform var(--vit-motion-fast) ease, border-color var(--vit-motion-fast) ease, box-shadow var(--vit-motion-fast) ease;
}

.vit-quick-nav__list a:hover { transform: translateX(2px); border-color: rgba(147,197,253,.34) !important; }

.vit-inner-signature__mark {
  border-color: rgba(147,197,253,.30) !important;
  background: rgba(255,255,255,.055) !important;
  color: transparent !important;
  background-image: linear-gradient(135deg, #93c5fd 0%, #3b82f6 48%, #2563eb 72%, #b8d7ff 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  font-weight: 850 !important;
}
.vit-inner-signature__name { color: #fff !important; }
.vit-inner-signature__rule { background: linear-gradient(90deg, var(--vit-blue-400), var(--vit-blue-600)) !important; }

/* ---------- Shared sections / cards ---------- */
body.page:not(.page-id-40) .vit-inner-section,
.page-id-40 .vit-audience,
.page-id-40 .vit-services,
.page-id-40 .vit-process {
  border: 1px solid rgba(217,230,245,.96) !important;
  border-radius: var(--vit-radius-section) !important;
  box-shadow: var(--vit-shadow-card) !important;
}

body.page:not(.page-id-40) .vit-inner-section.vit-unified-section--alt {
  background:
    radial-gradient(circle at 96% 5%, rgba(96,165,250,.08), transparent 20rem),
    linear-gradient(180deg, #fbfdff 0%, #f2f7ff 100%) !important;
}

body.page:not(.page-id-40) .vit-inner-section > .wp-block-columns > .wp-block-column,
.page-id-40 .vit-services-card,
.page-id-40 .vit-audience-card,
.vit-link-list a {
  border-color: var(--vit-border) !important;
  border-radius: var(--vit-radius-card) !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: 0 4px 16px rgba(15,23,42,.028);
}

.page-id-40 .vit-services-card:hover,
.page-id-40 .vit-audience-card:hover,
.vit-link-list a:hover {
  transform: translateY(-2px) !important;
  border-color: #b9d4fb !important;
  box-shadow: var(--vit-shadow-hover) !important;
}

body.page:not(.page-id-40) .vit-inner-section > h2.wp-block-heading,
.page-id-40 h2 {
  color: var(--vit-navy-950) !important;
  font-weight: 700 !important;
  letter-spacing: -.03em !important;
}

/* Dark quick selector keeps its own inverse heading color. */
.page-id-40 .vit-quick-nav h2 {
  color: #ffffff !important;
}

/* ---------- Service visual layer ---------- */
.vit-inner-signature {
  position: relative;
}

.vit-service-glyph {
  position: absolute !important;
  z-index: 2 !important;
  top: 24px;
  right: 24px;
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border: 1px solid rgba(147,197,253,.20);
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(255,255,255,.08), rgba(96,165,250,.06));
  color: #60a5fa;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
}

.vit-service-glyph svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.vit-inner-signature__name,
.vit-inner-signature__stack {
  padding-right: 58px;
}

/* Stable component proportions across catalog/process/FAQ pages. */
.vit-catalog-grid {
  align-items: stretch;
}

.vit-catalog-grid .wp-block-column {
  display: flex;
  min-height: 245px;
}

.vit-catalog-card {
  width: 100%;
}

.vit-inner-process .wp-block-column {
  min-height: 190px;
}

.vit-faq-item {
  border-color: var(--vit-border) !important;
  border-radius: var(--vit-radius-card) !important;
  background: #f8fbff !important;
}

@media (max-width: 900px) {
  .vit-service-glyph {
    top: 18px;
    right: 18px;
    width: 44px;
    height: 44px;
  }
  .vit-service-glyph svg { width: 21px; height: 21px; }
}

@media (max-width: 620px) {
  .vit-service-glyph {
    top: 14px;
    right: 14px;
    width: 38px;
    height: 38px;
    border-radius: 11px;
  }
  .vit-service-glyph svg { width: 19px; height: 19px; }
  .vit-inner-signature__name,
  .vit-inner-signature__stack { padding-right: 42px; }
}

/* ---------- About-page service links / static-card clarity ---------- */
.page-id-25 .vit-feature-link-list {
  display: grid;
  gap: 7px;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.page-id-25 .vit-feature-link-list li { margin: 0 !important; }
.page-id-25 .vit-feature-link-list li::before { display: none !important; content: none !important; }
.page-id-25 .vit-feature-link-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid #e3ebf5;
  border-radius: 9px;
  background: #f8fbff;
  color: #475569 !important;
  font-size: 13px;
  font-weight: 620;
  line-height: 1.35;
  text-decoration: none !important;
  transition: border-color var(--vit-motion-fast) ease, background var(--vit-motion-fast) ease, color var(--vit-motion-fast) ease;
}
.page-id-25 .vit-feature-link-list a span:last-child { color: var(--vit-blue-600); font-weight: 800; }
.page-id-25 .vit-feature-link-list a:hover,
.page-id-25 .vit-feature-link-list a:focus-visible {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: var(--vit-blue-700) !important;
}

/* Informational cards must not pretend to be buttons. */
.vit-service-scope .wp-block-column,
.vit-inner-process .wp-block-column,
.vit-feature-card,
.vit-check-list li {
  cursor: default !important;
}
.vit-service-scope .wp-block-column:hover,
.vit-inner-process .wp-block-column:hover,
.vit-feature-card:hover {
  transform: none !important;
  border-color: var(--vit-border) !important;
  box-shadow: 0 4px 16px rgba(15,23,42,.028) !important;
}

/* Process cards are informational. Keep the step badge and title in an explicit grid so text can never sit under the number. */
.vit-inner-process .wp-block-column {
  display: grid !important;
  grid-template-columns: 40px minmax(0, 1fr) !important;
  grid-template-rows: auto 1fr;
  column-gap: 12px !important;
  align-content: start;
}
.vit-inner-process-number {
  position: static !important;
  grid-column: 1;
  grid-row: 1;
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
  transform: none !important;
  float: none !important;
  border-radius: 9px !important;
}
.vit-inner-process .wp-block-column > h3.wp-block-heading {
  position: static !important;
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  text-indent: 0 !important;
  overflow: visible !important;
  white-space: normal !important;
}
.vit-inner-process .wp-block-column > p {
  grid-column: 1 / -1;
  margin: 16px 0 0 !important;
}

/* ---------- Buttons ---------- */
.vit-btn,
.wp-block-button__link,
.vit-footer-cta .wp-block-button__link {
  border-radius: 12px !important;
  transition: transform var(--vit-motion-fast) ease, box-shadow var(--vit-motion-fast) ease, background var(--vit-motion-fast) ease, border-color var(--vit-motion-fast) ease !important;
}

.vit-btn--primary,
.wp-block-button:not(.is-style-outline) > .wp-block-button__link,
.vit-footer-cta .wp-block-button__link {
  border: 1px solid transparent !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--vit-blue-600), #3478f6) !important;
  box-shadow: 0 9px 22px rgba(37,99,235,.20);
}

.vit-btn--primary:hover,
.wp-block-button:not(.is-style-outline) > .wp-block-button__link:hover,
.vit-footer-cta .wp-block-button__link:hover {
  transform: translateY(-1px);
  background: linear-gradient(135deg, var(--vit-blue-700), var(--vit-blue-600)) !important;
  box-shadow: 0 13px 28px rgba(37,99,235,.26);
}

/* ---------- Final CTA ---------- */
body.page:not(.page-id-40) .vit-inner-final,
.page-id-40 .vit-final-cta {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(96,165,250,.20) !important;
  background:
    radial-gradient(circle at 88% 8%, rgba(59,130,246,.25), transparent 18rem),
    linear-gradient(135deg, var(--vit-navy-950) 0%, #142448 100%) !important;
  box-shadow: 0 22px 54px rgba(15,23,42,.16) !important;
}

body.page:not(.page-id-40) .vit-inner-final > h2.wp-block-heading,
.page-id-40 .vit-final-cta > h2 {
  position: relative;
  z-index: 2;
  color: #ffffff !important;
}
body.page:not(.page-id-40) .vit-inner-final > p,
.page-id-40 .vit-final-cta > p {
  position: relative;
  z-index: 2;
  color: #c8d5e8 !important;
}
body.page:not(.page-id-40) .vit-inner-final > .wp-block-buttons,
.page-id-40 .vit-final-cta .wp-block-buttons {
  position: relative;
  z-index: 2;
}

body.page:not(.page-id-40) .vit-inner-final::after,
.page-id-40 .vit-final-cta::after {
  content: "";
  position: absolute;
  right: -80px;
  bottom: -130px;
  width: 360px;
  height: 260px;
  pointer-events: none;
  opacity: .55;
  background-image: radial-gradient(circle, rgba(96,165,250,.85) 1.15px, transparent 1.6px);
  background-size: 18px 18px;
  transform: rotate(-10deg);
  -webkit-mask-image: radial-gradient(ellipse, #000 0%, transparent 70%);
  mask-image: radial-gradient(ellipse, #000 0%, transparent 70%);
}

/* ---------- Footer ---------- */
.vit-global-footer {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 0%, rgba(37,99,235,.14), transparent 22rem),
    linear-gradient(180deg, #0b1220 0%, #0a1324 100%) !important;
}
.vit-global-footer::after {
  content: "";
  position: absolute;
  right: -120px;
  bottom: -130px;
  width: 440px;
  height: 320px;
  opacity: .20;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(96,165,250,.11) 1px, transparent 1px),
    linear-gradient(90deg, rgba(96,165,250,.11) 1px, transparent 1px);
  background-size: 38px 38px;
  transform: rotate(-8deg);
  -webkit-mask-image: radial-gradient(circle, #000 0%, transparent 72%);
  mask-image: radial-gradient(circle, #000 0%, transparent 72%);
}

.vit-global-footer__inner { position: relative; z-index: 2; }
.vit-footer-brand .wp-block-site-title::before { display: none !important; content: none !important; }
.vit-footer-brand-lockup { gap: 12px !important; margin: 0 0 20px !important; }
.vit-footer-brand-mark {
  width: 58px;
  height: 42px;
  border: 1px solid rgba(147,197,253,.22);
  border-radius: 12px;
  background: rgba(255,255,255,.045);
}
.vit-footer-brand-mark svg { width: 45px; height: 28px; display: block; }
.vit-footer-brand-copy .wp-block-site-title,
.vit-footer-brand-copy .wp-block-site-title a {
  margin: 0 !important;
  color: #fff !important;
  font-size: 21px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: -.03em !important;
  text-decoration: none !important;
}
.vit-footer-kicker {
  margin: 5px 0 0 !important;
  color: var(--vit-blue-400) !important;
  font-size: 8.5px !important;
  font-weight: 800 !important;
  letter-spacing: .17em !important;
}
.vit-footer-col h3 { color: #fff !important; }
.vit-footer-nav a { transition: color var(--vit-motion-fast) ease, transform var(--vit-motion-fast) ease; }
.vit-footer-nav a:hover { color: #fff !important; transform: translateX(2px); }

/* ---------- Motion layer: enhanced only after JS opts in ---------- */
.vit-motion-ready .vit-reveal {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 420ms cubic-bezier(.2,.7,.2,1), transform 420ms cubic-bezier(.2,.7,.2,1);
}
.vit-motion-ready .vit-reveal.is-visible { opacity: 1; transform: none; }

/* ---------- Responsive ---------- */
@media (max-width: 1080px) {
  .vit-global-header__inner { width: min(100% - 28px, 1000px) !important; gap: 18px !important; }
  .vit-main-nav .wp-block-navigation-item__content { padding-inline: 8px !important; font-size: 13px !important; }
}

@media (max-width: 900px) {
  .vit-global-header__inner { min-height: 66px; width: calc(100% - 24px) !important; }
  .vit-brand-mark { width: 49px; height: 38px; border-radius: 11px; }
  .vit-brand-mark svg { width: 39px; }
  .vit-brand-lockup .wp-block-site-title,
  .vit-brand-lockup .wp-block-site-title a { font-size: 20px !important; }
  .page-id-40 .vit-hero-v32-shell::before,
  body.page:not(.page-id-40) .vit-inner-hero::before { inset: 0 0 0 35%; opacity: .30; }
  .vit-inner-signature { transform: none !important; }
}

@media (max-width: 620px) {
  .vit-global-header__inner { width: calc(100% - 20px) !important; min-height: 62px; }
  .vit-brand-lockup { gap: 8px !important; }
  .vit-brand-mark { width: 44px; height: 34px; border-radius: 10px; }
  .vit-brand-mark svg { width: 35px; height: 23px; }
  .vit-brand-lockup .wp-block-site-title,
  .vit-brand-lockup .wp-block-site-title a { font-size: 18px !important; }
  .vit-brand-tag { display: none; }
  .page-id-40 .vit-hero-v32-shell,
  body.page:not(.page-id-40) .vit-inner-hero { border-radius: 20px !important; }
  .page-id-40 .vit-hero-v32-shell::before,
  body.page:not(.page-id-40) .vit-inner-hero::before { inset: 0; opacity: .18; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 28%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0%, #000 28%, transparent 100%); }
  .vit-footer-brand-lockup { margin-bottom: 16px !important; }
  .vit-footer-brand-mark { width: 52px; height: 38px; }
}

/* ---------- QA corrections v5.0.1 ---------- */
/* Neutralize legacy internal-hero pseudo-panel geometry that leaked through v4 layers. */
@media (min-width: 901px) {
  .page-id-40 .vit-hero-v32-shell::before,
  body.page:not(.page-id-40) .vit-inner-hero::before {
    display: block !important;
    inset: 0 0 0 52% !important;
    width: auto !important;
    height: auto !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 52% !important;
    transform: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
  }

  body.page:not(.page-id-40) main#wp--skip-link--target {
    margin-top: 0 !important;
    padding-top: 122px !important;
  }
}

@media (min-width: 621px) and (max-width: 900px) {
  body.page:not(.page-id-40) main#wp--skip-link--target {
    margin-top: 0 !important;
    padding-top: 108px !important;
  }
}

@media (max-width: 620px) {
  /* Remove block-theme global side padding from full-width wrappers before sizing cards to the viewport. */
  .vit-global-header,
  main#wp--skip-link--target,
  main#wp--skip-link--target > .wp-block-group.alignfull.has-global-padding {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.page .wp-block-post-content,
  body.page:not(.page-id-40) .wp-block-post-content.vit-inner-page {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body.page:not(.page-id-40) main#wp--skip-link--target {
    margin-top: 0 !important;
    padding-top: 94px !important;
  }

  .vit-global-header__inner {
    position: relative !important;
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .vit-brand-lockup {
    min-width: 0 !important;
    padding-right: 54px;
  }

  .vit-main-nav {
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    margin-left: 0 !important;
    transform: translateY(-50%);
  }

  .vit-main-nav .wp-block-navigation__responsive-container-open {
    display: flex !important;
    flex: 0 0 42px !important;
  }

  .page-id-40 .vit-hero-v32-shell,
  body.page:not(.page-id-40) .vit-inner-hero,
  .vit-inner-page > .wp-block-group,
  .page-id-40 .vit-audience-section,
  .page-id-40 .vit-services-section,
  .page-id-40 .vit-process-section,
  .page-id-40 .vit-final-cta {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  .vit-hero-v32__copy,
  body.page:not(.page-id-40) .vit-inner-hero__copy {
    width: 100% !important;
    min-width: 0 !important;
  }

  .vit-hero-v32 h1,
  body.page:not(.page-id-40) .vit-inner-hero__copy > h1.wp-block-heading,
  body.page:not(.page-id-40) .vit-inner-hero__copy > h2.wp-block-heading,
  .vit-hero-v32__lead,
  .vit-hero-v32__sub,
  body.page:not(.page-id-40) .vit-inner-hero__copy > p {
    max-width: 100% !important;
    overflow-wrap: break-word;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  .vit-motion-ready .vit-reveal { opacity: 1 !important; transform: none !important; }
}
