/* Home: editorial architecture, image-led and intentionally asymmetric. */
.vios-hero { position: relative; display: grid; min-height: max(47rem, 100svh); overflow: hidden; background: var(--vios-navy); color: var(--vios-white); isolation: isolate; }
.vios-hero__media, .vios-hero__shade { position: absolute; inset: 0; }
.vios-hero__media { z-index: -3; background-image: var(--vios-hero-image); background-position: 62% center; background-size: cover; transform: translate3d(0, var(--vios-parallax-y, 0), 0) scale(1.08); }
.vios-hero__shade { z-index: -2; background: linear-gradient(90deg, rgba(9,20,37,.92) 0%, rgba(9,20,37,.68) 43%, rgba(9,20,37,.12) 78%), linear-gradient(0deg, rgba(9,20,37,.62) 0%, transparent 35%); }
.vios-hero__brand-shape { position: absolute; z-index: -1; inset-block: -18% 15%; inset-inline-end: -12%; width: min(34vw, 33rem); border-inline: 1px solid rgba(255,255,255,.18); pointer-events: none; transform: skewX(-20deg); }
.vios-hero__inner { display: grid; min-height: max(47rem, 100svh); align-content: end; gap: clamp(3rem,9vh,7rem); padding-block: calc(var(--vios-header-height) + 5rem) clamp(2rem,5vh,3.5rem); }
.vios-hero__content { max-width: 49rem; }
.vios-hero h1 { max-width: 11ch; color: var(--vios-white); font-family: Georgia,"Times New Roman",serif; font-size: clamp(3.4rem,7.7vw,7.35rem); letter-spacing: -.055em; line-height: .88; }
.vios-hero h1 em { color: #d7c39a; font-weight: 400; }
.vios-hero__copy { max-width: 36rem; margin-block: 1.75rem 2.25rem; color: rgba(255,255,255,.82); font-size: clamp(1.05rem,1.6vw,1.25rem); line-height: 1.55; }
.vios-hero__foot { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; color: rgba(255,255,255,.72); font-family: "Montserrat",Arial,sans-serif; font-size: .65rem; letter-spacing: .22em; text-transform: uppercase; }
.vios-hero__scroll { display: inline-flex; align-items: center; gap: .9rem; }
.vios-hero__scroll::before { width: 1px; height: 2rem; background: currentColor; content: ""; }

.vios-chapter { display: flex; align-items: center; gap: .8rem; margin-block-end: 1.5rem; color: var(--vios-navy); font-family: "Montserrat",Arial,sans-serif; font-size: .64rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.vios-chapter::before { flex: 0 0 auto; width: 1.7rem; height: 1px; background: var(--vios-gold); content: ""; }
.vios-chapter--light { color: rgba(255,255,255,.78); }

.vios-perspective { overflow: hidden; background: var(--vios-ivory); }
.vios-perspective__grid { display: grid; gap: 3rem; }
.vios-perspective__copy { position: relative; z-index: 3; }
.vios-perspective h2, .vios-services h2, .vios-properties-showcase h2, .vios-origin h2, .vios-value h2 { font-family: Georgia,"Times New Roman",serif; font-weight: 400; letter-spacing: -.045em; }
.vios-perspective h2 { max-width: 10.5ch; font-size: clamp(2.9rem,5.3vw,5.8rem); line-height: .96; }
.vios-perspective__lead { max-width: 29rem; margin-block: 1.75rem 2rem; color: #344257; font-size: 1.1rem; line-height: 1.62; }
.vios-perspective__gallery { position: relative; min-height: 32rem; }
.vios-perspective__gallery::before, .vios-perspective__gallery::after { position: absolute; inset-block-start: -4rem; width: 27%; height: 12rem; background: rgba(27,42,74,.08); clip-path: polygon(28% 0,100% 0,72% 100%,0 100%); content: ""; }
.vios-perspective__gallery::before { inset-inline-start: 18%; }
.vios-perspective__gallery::after { inset-inline-end: 2%; background: rgba(15,84,97,.12); }
.vios-perspective__image { position: absolute; margin: 0; overflow: hidden; }
.vios-perspective__image img { width: 100%; height: 100%; object-fit: cover; transition: transform 900ms var(--vios-ease); }
.vios-perspective__gallery:hover .vios-perspective__image--main img { transform: scale(1.025); }
.vios-perspective__image--main { inset: 0 3rem 3.5rem 0; clip-path: polygon(23% 0,100% 0,78% 100%,0 100%); }
.vios-perspective__image--main img { object-position: 54% center; }
.vios-perspective__image--detail { z-index: 2; inset: auto 0 0 auto; width: 38%; height: 43%; border: .5rem solid var(--vios-ivory); }
.vios-perspective__pillars { display: grid; align-content: center; gap: 0; }
.vios-perspective__pillars article { padding-block: 1.65rem; border-block-end: 1px solid rgba(27,42,74,.16); }
.vios-perspective__pillars article:first-child { border-block-start: 1px solid rgba(27,42,74,.16); }
.vios-perspective__pillars svg { width: 1.85rem; height: 1.85rem; color: var(--vios-teal); }
.vios-perspective__pillars h3 { margin-block: .85rem .45rem; font-size: .78rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.vios-perspective__pillars p { max-width: 15rem; color: var(--vios-muted); font-size: .9rem; line-height: 1.45; }

.vios-services { background: var(--vios-sand); scroll-margin-top: var(--vios-header-height); }
.vios-services__layout { display: grid; gap: clamp(3rem,6vw,6rem); }
.vios-services__heading { align-self: start; }
.vios-services h2 { max-width: 10ch; font-size: clamp(2.8rem,4.6vw,4.7rem); line-height: .96; }
.vios-services__heading > p:not(.vios-chapter) { max-width: 26rem; margin-block-start: 1.6rem; color: var(--vios-muted); font-size: 1.05rem; }
.vios-services__button { margin-block-start: 2rem; }
.vios-services__grid { display: grid; grid-template-columns: 1fr; gap: 0; }
.vios-service { position: relative; display: grid; min-width: 0; grid-template-rows: auto 1fr; align-content: start; background: transparent; color: var(--vios-navy); text-decoration: none; }
.vios-service__image { position: relative; z-index: 1; display: block; width: calc(100% + 1rem); height: clamp(18rem,30vw,23rem); margin-inline-start: -.5rem; overflow: hidden; clip-path: polygon(12% 0,100% 0,88% 100%,0 100%); }
.vios-service:first-child .vios-service__image { width: calc(100% + .5rem); margin-inline-start: 0; }
.vios-service:last-child .vios-service__image { width: calc(100% + .5rem); }
.vios-service__image img { width: 100%; height: 100%; object-fit: cover; transition: filter 400ms ease,transform 700ms var(--vios-ease); }
.vios-service:nth-child(2) img { object-position: 48% center; }
.vios-service:nth-child(3) img { object-position: 55% center; }
.vios-service:hover .vios-service__image img,.vios-service:focus-visible .vios-service__image img { filter: saturate(1.08); transform: scale(1.045); }
.vios-service__meta { position: relative; display: flex; min-height: 13.5rem; flex-direction: column; align-items: flex-start; gap: .55rem; padding: 1.25rem clamp(1rem,2vw,1.5rem) 1.5rem; }
.vios-service__icon { display: none; }
.vios-service__title,.vios-service h3 { margin: 0; color: var(--vios-navy); font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.55rem,2.2vw,2rem); font-weight: 400; letter-spacing: -.02em; line-height: 1.05; }
.vios-service__desc { max-width: 27ch; margin: 0; color: var(--vios-muted); font-family: "Source Sans Pro",Arial,sans-serif; font-size: .88rem; font-weight: 400; line-height: 1.5; }
.vios-service__cta { display: inline-flex; align-items: center; gap: .45rem; margin-block-start: auto; padding-block-start: .65rem; color: var(--vios-teal); font-family: "Montserrat",Arial,sans-serif; font-size: .68rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.vios-service__cta svg { width: 1rem; transition: transform var(--vios-standard) var(--vios-ease); }
.vios-service:hover .vios-service__cta svg,.vios-service:focus-visible .vios-service__cta svg { transform: translateX(.3rem); }

.vios-value { position: relative; display: grid; min-height: clamp(42rem,72vw,55rem); align-items: center; overflow: hidden; background: var(--vios-navy); color: rgba(255,255,255,.78); isolation: isolate; }
.vios-value__media, .vios-value__veil { position: absolute; inset: 0; }
.vios-value__media { z-index: -3; background: url("../images/mountain-estate.jpg") center / cover no-repeat; transform: translate3d(0,var(--vios-parallax-y,0),0) scale(1.08); }
.vios-value__veil { z-index: -2; background: linear-gradient(90deg,rgba(15,84,97,.97) 0%,rgba(15,84,97,.88) 51%,rgba(10,60,72,.95) 100%); }
.vios-value__grid { display: grid; gap: clamp(3rem,8vw,8rem); padding-block: var(--vios-section-space); }
.vios-value h2 { max-width: 11ch; color: var(--vios-white); font-size: clamp(3rem,5.7vw,6.1rem); line-height: .94; }
.vios-value__list { margin: 0; padding: 0; list-style: none; }
.vios-value__list li { display: grid; grid-template-columns: 2.5rem 1fr; gap: 1.25rem; padding-block: 1.65rem; border-block-end: 1px solid rgba(255,255,255,.18); }
.vios-value__list li:first-child { border-block-start: 1px solid rgba(255,255,255,.18); }
.vios-value__list svg { width: 1.8rem; height: 1.8rem; color: #d7c39a; }
.vios-value__list strong { color: var(--vios-white); font-family: "Montserrat",Arial,sans-serif; font-size: .7rem; letter-spacing: .16em; text-transform: uppercase; }
.vios-value__list p { max-width: 19rem; margin-block-start: .35rem; font-size: .92rem; line-height: 1.45; }

.vios-properties-showcase { background: var(--vios-white); }
.vios-properties-showcase__header { display: grid; gap: 2rem; align-items: end; padding-block-end: clamp(2.5rem,5vw,4.5rem); border-block-end: 1px solid rgba(27,42,74,.16); }
.vios-properties-showcase h2 { max-width: 10ch; font-size: clamp(2.9rem,5vw,5.5rem); line-height: .96; }
.vios-properties-showcase__intro { max-width: 31rem; }
.vios-properties-showcase__intro p { margin-block-end: 1.5rem; color: var(--vios-muted); font-size: clamp(1rem,1.5vw,1.12rem); line-height: 1.6; }
.vios-properties-showcase__results { min-height: 12rem; padding-block-start: clamp(2rem,4vw,3.5rem); }
.vios-properties-showcase__unavailable { display: grid; gap: 2rem; align-items: center; min-height: 14rem; padding: clamp(1.5rem,4vw,3rem); background: var(--vios-sand); }
.vios-properties-showcase__unavailable h3 { color: var(--vios-navy); font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.8rem,3vw,2.7rem); font-weight: 400; line-height: 1.08; }
.vios-properties-showcase__unavailable p { max-width: 35rem; margin-block-start: .7rem; color: var(--vios-muted); }

.vios-origin { position: relative; overflow: hidden; background: var(--vios-forest); color: rgba(255,255,255,.78); isolation: isolate; }
.vios-origin__symbol { position: absolute; z-index: -1; inset: 50% -5rem auto auto; width: min(34rem,48vw); opacity: .055; pointer-events: none; transform: translateY(-50%) rotate(-5deg); }
.vios-origin__symbol img { width: 100%; height: auto; filter: brightness(0) invert(1); }
.vios-origin__grid { display: grid; gap: clamp(2.5rem,7vw,7rem); align-items: center; }
.vios-origin h2 { max-width: 13ch; color: var(--vios-white); font-size: clamp(2.7rem,4.8vw,5rem); line-height: .98; }
.vios-origin__story { max-width: 36rem; }
.vios-origin__story p { font-size: clamp(1rem,1.4vw,1.12rem); line-height: 1.65; }
.vios-origin__story p + p { margin-block-start: 1rem; }
.vios-origin__story .vios-text-link { margin-block-start: 2rem; }

/* Interior pages and WordPress content. */
.vios-contact { padding-block: calc(var(--vios-header-height) + clamp(3.5rem, 7vw, 6rem)) clamp(3.5rem, 7vw, 6rem); background: var(--vios-navy); color: var(--vios-white); }
.vios-contact, .vios-contact h1, .vios-contact h2, .vios-contact .vios-button { font-family: "Jost", sans-serif; }
.vios-contact__intro { display: grid; gap: 1.5rem; margin-block-end: clamp(2.5rem, 5vw, 4rem); }
.vios-contact .vios-kicker { margin-block-end: 1.25rem; }
.vios-contact h1 { max-width: 17ch; color: var(--vios-white); font-size: clamp(2.6rem, 5.2vw, 4.75rem); line-height: 1.06; }
.vios-contact__lead { max-width: 30rem; font-size: 1.125rem; line-height: 1.65; color: rgba(255, 255, 255, .76); }
.vios-contact__options { display: grid; gap: 1.25rem; }
.vios-contact__option { display: flex; flex-direction: column; min-width: 0; padding: clamp(1.5rem, 3vw, 2.5rem); background: var(--vios-white); border-block-start: 2px solid var(--vios-teal); }
.vios-contact__marker { display: flex; justify-content: space-between; align-items: center; margin-block-end: 2rem; color: var(--vios-teal); font-size: .8rem; letter-spacing: .12em; }
.vios-contact__marker svg { width: 1.75rem; height: 1.75rem; }
.vios-contact__option h2 { max-width: 17ch; font-size: clamp(1.7rem, 2.4vw, 2.2rem); line-height: 1.15; letter-spacing: -.025em; }
.vios-contact__option > p { margin-block: 1.25rem 2rem; color: var(--vios-muted); font-size: 1rem; line-height: 1.65; }
.vios-contact__option .vios-button { align-self: flex-start; margin-block-start: auto; max-width: 100%; font-size: .95rem; text-align: center; }
.vios-contact__direct { display: flex; flex-wrap: wrap; gap: .75rem 2rem; justify-content: space-between; margin-block-start: 2rem; color: rgba(255, 255, 255, .72); font-size: .95rem; }
.vios-contact__direct a { display: inline-flex; min-height: 2.75rem; align-items: center; color: var(--vios-white); overflow-wrap: anywhere; }
.vios-contact__direct p { align-self: center; }
@media (min-width: 60rem) {
  .vios-contact__intro { grid-template-columns: minmax(0, 1.4fr) minmax(0, .8fr); align-items: end; gap: 4rem; }
  .vios-contact__options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

.vios-page-main, .vios-index, .vios-error-page { padding-block-start: var(--vios-header-height); }
.vios-page-hero { padding-block: clamp(5rem,10vw,9rem) clamp(3rem,6vw,5rem); background: var(--vios-sand); }
.vios-page-hero h1 { max-width: 15ch; }
.vios-page-hero__lead { max-width: 42rem; margin-block-start: 1.5rem; color: var(--vios-muted); font-size: clamp(1.1rem,2vw,1.35rem); }
.vios-entry { padding-block: clamp(3rem,7vw,6rem); }
.vios-entry__content { max-width: 48rem; }
.vios-entry__content > * + * { margin-block-start: 1.5rem; }
.vios-entry__content h2, .vios-entry__content h3 { margin-block-start: 2.5rem; }
.vios-entry__content img, .vios-entry__content .alignwide, .vios-entry__content .alignfull { max-width: none; }
.vios-index { padding-block-end: var(--vios-section-space); }
.vios-index__item { padding-block: 3rem; border-block-end: 1px solid var(--vios-line); }
.vios-index__item h2 a { text-decoration: none; }
.vios-error-page { display: grid; min-height: 75vh; align-items: center; padding-block-end: var(--vios-section-space); background: var(--vios-sand); }
.vios-error-page h1 { max-width: 12ch; }
.vios-error-page p:not(.vios-kicker) { max-width: 36rem; margin-block: 1.5rem 2rem; color: var(--vios-muted); }

@media (min-width:48rem) {
  .vios-services__grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .vios-properties-showcase__header { grid-template-columns: minmax(0,1fr) minmax(20rem,.48fr); }
  .vios-properties-showcase__unavailable { grid-template-columns: minmax(0,1fr) auto; }
}

@media (min-width:52rem) {
  .vios-services__layout { grid-template-columns: minmax(13rem,.3fr) minmax(0,.7fr); align-items: start; gap: clamp(2rem,4vw,4rem); }
}

@media (min-width:68rem) {
  .vios-perspective__grid { grid-template-columns: repeat(12,minmax(0,1fr)); align-items: center; gap: 1.5rem; }
  .vios-perspective__copy { grid-column: 1/5; grid-row: 1; padding-inline-end: 1.5rem; }
  .vios-perspective__gallery { grid-column: 5/11; grid-row: 1; min-height: 46rem; }
  .vios-perspective__pillars { grid-column: 11/13; grid-row: 1; }
  .vios-value__grid { grid-template-columns: minmax(0,1.25fr) minmax(19rem,.55fr); align-items: center; }
  .vios-origin__grid { grid-template-columns: minmax(0,1.05fr) minmax(24rem,.7fr); }
}

@media (min-width:75rem) {
  .vios-services__layout { grid-template-columns: minmax(15rem,.28fr) minmax(0,.72fr); gap: clamp(2.5rem,4vw,4.5rem); }
  .vios-services__grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width:67.99rem) {
  .vios-perspective__grid { grid-template-columns: minmax(0,1fr) minmax(0,1.1fr); }
  .vios-perspective__copy { align-self: center; }
  .vios-perspective__pillars { grid-column: 1/-1; grid-template-columns: repeat(3,minmax(0,1fr)); }
  .vios-perspective__pillars article { padding-inline: 1.25rem; border-block-start: 1px solid rgba(27,42,74,.16); }
  .vios-perspective__pillars article:not(:last-child) { border-inline-end: 1px solid rgba(27,42,74,.16); }
}

@media (max-width:63.99rem) {
  .vios-hero__inner { grid-template-rows: 1fr auto; align-content: stretch; gap: 2rem; padding-block: calc(var(--vios-header-height) + 2rem) 2rem; }
  .vios-hero__content { width: min(100%,46rem); align-self: center; margin-inline: auto; padding-block-start: clamp(2rem,7vh,5rem); }
  .vios-hero h1 { font-size: clamp(4rem,8.4vw,5.5rem); }
}

@media (max-width:47.99rem) {
  .vios-hero { min-height: max(43rem,100svh); }
  .vios-hero__media { background-position: 68% center; }
  .vios-hero__shade { background: linear-gradient(0deg,rgba(8,21,34,.96) 0%,rgba(8,21,34,.58) 68%,rgba(8,21,34,.35) 100%); }
  .vios-hero__inner { min-height: max(43rem,100svh); gap: 1.75rem; padding-block: calc(var(--vios-header-height) + 1.5rem) 1.5rem; }
  .vios-hero__content { padding-block-start: 1.5rem; }
  .vios-hero h1 { font-size: clamp(3.35rem,15.5vw,5.1rem); }
  .vios-hero__foot > span:last-child { display: none; }
  .vios-perspective__grid { display: grid; grid-template-columns: 1fr; }
  .vios-perspective__gallery { min-height: 28rem; margin-inline: -1rem; }
  .vios-perspective__image--main { inset-inline: 0 2rem; }
  .vios-perspective__image--detail { width: 48%; height: 38%; border-width: .35rem; }
  .vios-perspective__pillars { grid-column: auto; grid-template-columns: 1fr; }
  .vios-perspective__pillars article { padding-inline: 0; }
  .vios-perspective__pillars article:not(:last-child) { border-inline-end: 0; }
  .vios-services__grid { margin-inline: -1rem; }
  .vios-service__image { width: 100%; height: 20rem; margin-inline: 0; }
  .vios-service__meta { min-height: 12rem; padding-inline: 1.25rem; }
  .vios-value { min-height: auto; }
  .vios-value__veil { background: linear-gradient(0deg,rgba(10,60,72,.98),rgba(15,84,97,.84)); }
  .vios-properties-showcase__header { padding-block-end: 2rem; }
  .vios-origin__symbol { inset-inline-end: -8rem; width: 24rem; }
}

.vios-value__media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .18;
}

.vios-value__origin {
  position: relative;
  display: grid;
  grid-column: 1 / -1;
  gap: clamp(3rem,7vw,7rem);
  margin-block-start: clamp(1rem,3vw,3rem);
  padding-block-start: clamp(3rem,5vw,5rem);
  border-top: 1px solid rgba(255,255,255,.15);
}

.vios-value .vios-value__origin-title {
  max-width: 11ch;
  margin-block-start: 1rem;
  color: #fff;
  font-family: Georgia,"Times New Roman",serif;
  font-size: clamp(3rem,5.2vw,5.8rem);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: .95;
}

.vios-value__origin-body {
  max-width: 38ch;
  margin-block-start: clamp(1.5rem,3vw,2.5rem);
  color: rgba(255,255,255,.76);
  font-size: clamp(1rem,1.4vw,1.16rem);
  line-height: 1.62;
}

.vios-value__origin-link {
  min-width: min(100%,20rem);
  min-height: 3.75rem;
  justify-content: space-between;
  margin-block-start: 2rem;
  padding-inline: 1.5rem;
  border: 1px solid rgba(215,195,154,.82);
  color: var(--vios-white);
}

.vios-value__origin-link:hover,
.vios-value__origin-link:focus-visible {
  background: rgba(255,255,255,.08);
}

.vios-value__principles {
  margin: 0;
  padding: 0;
  list-style: none;
}

.vios-value__principles li {
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  min-height: 8.75rem;
  padding-block: 1.75rem;
  border-block-end: 1px solid rgba(255,255,255,.18);
}

.vios-value__principles li:first-child {
  border-block-start: 1px solid rgba(255,255,255,.18);
}

.vios-value__principles h3 {
  position: relative;
  margin: 0;
  padding-inline-start: 3rem;
  color: var(--vios-white);
  font-family: "Montserrat",Arial,sans-serif;
  font-size: clamp(1rem,1.2vw,1.08rem);
  font-weight: 500;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.vios-value__principles h3::before {
  position: absolute;
  inset-block-start: .55em;
  inset-inline-start: 0;
  width: 2rem;
  height: 1px;
  background: #d7c39a;
  content: "";
}

.vios-value__principles p {
  max-width: 38rem;
  margin-block-start: .85rem;
  color: rgba(255,255,255,.72);
  font-size: clamp(1.08rem,1.5vw,1.25rem);
  line-height: 1.6;
}

@media (min-width:64rem) {
  .vios-value__origin {
    grid-template-columns: minmax(0,.82fr) minmax(30rem,1.18fr);
    align-items: center;
  }

  .vios-value__origin::before {
    position: absolute;
    inset-block: clamp(3rem,5vw,5rem) 0;
    inset-inline-start: calc(41% + clamp(1.5rem,3.5vw,3.5rem));
    width: 1px;
    background: linear-gradient(transparent,rgba(255,255,255,.34) 15%,rgba(255,255,255,.34) 85%,transparent);
    content: "";
  }
}

@media (max-width:47.99rem) {
  .vios-value__origin {
    gap: 2.75rem;
    padding-block-start: 3rem;
  }

  .vios-value .vios-value__origin-title {
    font-size: clamp(2.75rem,13vw,4.2rem);
  }

  .vios-value__origin-link {
    width: 100%;
  }

  .vios-value__principles li {
    min-height: 0;
    padding-block: 1.5rem;
  }
}

@media (max-width:63.99rem) {
  .vios-home .vios-chapter {
    justify-content: center;
  }

  .vios-hero__content {
    text-align: center;
  }

  .vios-hero h1,
  .vios-hero__copy {
    margin-inline: auto;
  }

  .vios-hero .vios-actions,
  .vios-hero__foot {
    justify-content: center;
  }

  .vios-hero__foot > span:last-child {
    display: none;
  }

  .vios-services__layout {
    grid-template-columns: 1fr;
  }

  .vios-services__heading {
    width: min(100%,36rem);
    justify-self: center;
    text-align: center;
  }

  .vios-services h2,
  .vios-services__heading > p:not(.vios-chapter) {
    margin-inline: auto;
  }

  .vios-service__meta {
    align-items: center;
    text-align: center;
  }

  .vios-service__desc {
    margin-inline: auto;
  }

  .vios-service__cta {
    justify-content: center;
  }

  .vios-value__statement,
  .vios-value__origin-copy {
    text-align: center;
  }

  .vios-value h2,
  .vios-value__origin-body {
    margin-inline: auto;
  }

  .vios-value__list li {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
  }

  .vios-value__list p {
    margin-inline: auto;
  }

  .vios-value__origin-link {
    margin-inline: auto;
  }

  .vios-value__principles li {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
  }

  .vios-value__principles h3 {
    padding-inline-start: 0;
    font-size: 1.05rem;
  }

  .vios-value__principles h3::before {
    position: static;
    display: block;
    margin: 0 auto .75rem;
  }

  .vios-value__principles p {
    margin-inline: auto;
    font-size: 1.125rem;
  }
}
