/* ==========================================================
   Veritas version 4 layer
   ========================================================== */
:root {
  --font-inter: "Kanit", sans-serif;
  --font-kanit: "Kanit", sans-serif;
  --vx-r: 6px;
  --vx-r-sm: 4px;
  --vx-bd: rgba(0, 157, 252, .22);
  --vx-bd-soft: rgba(0, 157, 252, .14);
}

/* ---------- one font everywhere ---------- */
body, button, input, select, textarea, h1, h2, h3, h4, h5, h6, p, a, li, span, small, b, strong, label, blockquote, td, th {
  font-family: "Kanit", sans-serif;
}
.bi, [class^="bi-"], [class*=" bi-"], .bx, [class^="bx-"], [class*=" bx-"] { font-family: "bootstrap-icons" !important; }
.bx, [class^="bx-"], [class*=" bx-"] { font-family: "boxicons" !important; }
p, .vx-lead, li p, .vx-acc__body { font-weight: 300; }
h1, h2, h3, .vx-h2, .vx-hs__title, .section-title h2 { font-weight: 500 !important; letter-spacing: -.01em !important; }
.vx-hs__title { letter-spacing: -.015em !important; }

/* capitals on menus and buttons only */
header.style-1 .main-menu ul.menu-list > li > a,
header.style-1 .main-menu ul.sub-menu li a,
.vx-pill, .primary-btn, .primary-btn2, .vx-hs__link, .vx-link, .vx-svc__more, .vx-pbox__go, button.vx-sx__btn .nm,
.footer-section .widget-list a, .footer-bottom-right a { text-transform: uppercase; letter-spacing: .04em; }
button.vx-sx__btn .nm { text-transform: none; letter-spacing: 0; }

/* ---------- logo a little bigger ---------- */
.veritas-logo img { width: 56px !important; }
.veritas-logo .logo-text, .footer-logo .logo-text { font-family: "Kanit", sans-serif !important; font-weight: 500 !important; font-size: 30px !important; letter-spacing: .01em; }
header.style-1 .header-logo a, header.style-1 .mobile-logo-wrap a { gap: 12px; }
@media (max-width: 991px) {
  .veritas-logo img { width: 48px !important; }
  .veritas-logo .logo-text { font-size: 26px !important; }
}

/* ---------- header: same on every page, faint blue line when scrolling ---------- */
header.style-1 { border-bottom: 1px solid transparent; transition: border-color .3s, background .3s, box-shadow .3s; }
header.style-1.sticky, header.style-1.vx-scrolled { border-bottom-color: var(--vx-bd) !important; }
header.style-1.sticky { box-shadow: 0 6px 24px rgba(0, 40, 80, .05) !important; }
body.vx-inner header.style-1 { background: transparent; }
body.vx-inner header.style-1.sticky { background: #fff !important; }
body.vx-inner header.style-1 .main-menu ul.menu-list > li > a { color: var(--vx-ink); }

/* ---------- boxier buttons ---------- */
.vx-pill { border-radius: 3px !important; }
.vx-hero__arrows button, .vx-pill .bi { border-radius: 3px; }

/* ---------- faint blue borders on white boxes ---------- */
.vx-ccard, .vx-icard, .vx-formcard, .vx-acc__item, .vx-flist__items li, .vx-capg__item, .vx-smap,
.vx-inner .legal-page .legal-content, .vx-inner .legal-page .legal-help, .vx-record, .vx-net, .vx-quad__item,
.vx-why__pill, .vx-solintro__for { border: 1px solid var(--vx-bd) !important; box-shadow: none; }
.vx-why__pill { border-color: rgba(255,255,255,.22) !important; }
.vx-ccard:hover, .vx-icard:hover, .vx-flist__items li:hover { border-color: var(--vx-blue) !important; }
.contact-form-wrap input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.contact-form-wrap textarea, .contact-form-wrap select, .contact-form-wrap .nice-select {
  border: 1px solid var(--vx-bd) !important; border-radius: 4px !important; background: #fff !important; transition: border-color .25s, box-shadow .25s;
}
.contact-form-wrap input:focus, .contact-form-wrap textarea:focus, .contact-form-wrap .nice-select.open {
  border-color: var(--vx-blue) !important; box-shadow: 0 0 0 3px rgba(0, 157, 252, .12) !important; outline: 0;
}
.vx-formcard { background: #fff; }
.vx-contact__h6 { color: #fff; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; margin: 26px 0 12px; opacity: .7; }
.vx-contact__list li i { color: var(--vx-blue); }

/* ---------- home hero ---------- */
.vx-hero__dots { gap: 10px !important; max-width: none !important; flex: 0 0 auto !important; align-items: center; }
.vx-hero__dots .vx-hero__bar { flex: 0 0 auto; width: 12px; height: 12px; padding: 0; transition: width .5s var(--vx-ease); }
.vx-hero__dots .vx-hero__bar i { height: 12px; margin: 0; border-radius: 2px; background: rgba(255,255,255,.35); }
.vx-hero__dots .vx-hero__bar.is-active { width: 64px; }
.vx-hero__dots .vx-hero__bar.is-done i::after { transform: scaleX(0); }
.vx-hero__dots .vx-hero__bar:hover i { background: rgba(255,255,255,.6); }
.vx-hs__title span { color: var(--vx-blue); }
.vx-hs--left .vx-hs__link, .vx-hs--center .vx-hs__link { margin-top: 4px; }
/* tiles slide */
.vx-hs--tiles { align-items: flex-end; }
.vx-hs--tiles .vx-hs__inner { padding-bottom: 140px; }
.vx-hs--tiles .vx-hs__shade { background: linear-gradient(0deg, rgba(5,8,13,.9) 0%, rgba(5,8,13,.45) 55%, rgba(5,8,13,.15) 100%); }
.vx-hs--tiles .vx-hs__title { font-size: clamp(48px, 6.4vw, 100px); }
.vx-hs--tiles .vx-hs__text { max-width: 560px; margin-bottom: 34px; }
.vx-hs__tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; max-width: 900px; border: 1px solid rgba(255,255,255,.25); }
.vx-hs__tile { display: flex; align-items: center; gap: 14px; padding: 22px 24px; color: #fff; background: rgba(8,12,18,.35); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border-right: 1px solid rgba(255,255,255,.2); transition: background .35s; }
.vx-hs__tile:last-child { border-right: 0; }
.vx-hs__tile > i:first-child { font-size: 24px; color: var(--vx-blue); transition: color .35s; }
.vx-hs__tile span { flex: 1; font-size: 16px; line-height: 1.3; }
.vx-hs__tile:hover { background: var(--vx-blue); color: #fff; }
.vx-hs__tile:hover > i:first-child { color: #fff; }
/* card slide */
.vx-hs__card { border-radius: 4px !important; border-left: 3px solid var(--vx-blue) !important; position: relative; overflow: hidden; }
.vx-hs__mark { position: absolute; right: -40px; bottom: -30px; width: 200px; opacity: .08; pointer-events: none; }
.vx-hs__mark .vx-l1, .vx-hs__mark .vx-l2 { stroke: #fff; } .vx-hs__mark .vx-l3 { fill: #fff; }
@media (max-width: 991px) {
  .vx-hs--tiles .vx-hs__inner { padding-bottom: 210px !important; }
  .vx-hs__tiles { grid-template-columns: 1fr; max-width: none; }
  .vx-hs__tile { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.2); padding: 14px 18px; }
  .vx-hs__tile:last-child { border-bottom: 0; }
}
@media (max-width: 576px) {
  .vx-hs--tiles .vx-hs__title { font-size: 42px; }
  .vx-hs--tiles .vx-hs__text { margin-bottom: 20px; }
  .vx-hs__tile span { font-size: 14px; }
}

/* ---------- interactive about image ---------- */
.vx-tilt { --rx: 0deg; --ry: 0deg; --mx: 50%; --my: 50%; position: relative; transform: perspective(1100px) rotateX(var(--rx)) rotateY(var(--ry)); transition: transform .5s var(--vx-ease); transform-style: preserve-3d; }
.vx-tilt.is-tilting { transition: transform .12s linear; }
.vx-tilt img { transition: transform 1.2s var(--vx-ease), filter .6s; }
.vx-tilt:hover img { transform: scale(1.06); }
.vx-tilt__shine { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at var(--mx) var(--my), rgba(255,255,255,.28), transparent 45%); opacity: 0; transition: opacity .4s; z-index: 2; }
.vx-tilt:hover .vx-tilt__shine { opacity: 1; }
.about-img.vx-tilt { overflow: hidden; border-radius: 4px; }
.about-img.vx-tilt::after { content: ""; position: absolute; inset: 14px; border: 1px solid rgba(255,255,255,.55); pointer-events: none; z-index: 2; transform: translateZ(30px); transition: inset .5s var(--vx-ease); }
.about-img.vx-tilt:hover::after { inset: 24px; }
.vx-about__tag { position: absolute; left: 24px; bottom: 24px; z-index: 3; display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; background: #fff; color: var(--vx-ink); font-size: 14px; letter-spacing: .06em; text-transform: uppercase; border-left: 3px solid var(--vx-blue); transform: translateY(8px); opacity: .92; transition: transform .5s var(--vx-ease), opacity .5s; }
.vx-about__tag i { color: var(--vx-blue); }
.about-img.vx-tilt:hover .vx-about__tag { transform: none; opacity: 1; }

/* ---------- what we do cards ---------- */
.vx-svc { border-radius: 4px !important; }
.vx-svc__no { display: none !important; }
.vx-svc__more { font-size: 13px; }

/* ---------- why pills with icons ---------- */
.vx-why__pill .no { display: grid; place-items: center; font-size: 18px; }

/* ---------- platforms, boxed ---------- */
.vx-pgrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid rgba(255,255,255,.14); }
.vx-pgrid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.vx-pbox { position: relative; display: flex; flex-direction: column; min-height: 360px; padding: 34px 30px; color: #fff; border-right: 1px solid rgba(255,255,255,.14); overflow: hidden; isolation: isolate; }
.vx-pbox:last-child { border-right: 0; }
.vx-pbox__fill { position: absolute; inset: 0; z-index: -1; background: linear-gradient(160deg, var(--vx-blue), #0068b0); transform: translateY(101%); transition: transform .6s var(--vx-ease); }
.vx-pbox:hover .vx-pbox__fill { transform: none; }
.vx-pbox__ic { width: 56px; height: 56px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.25); font-size: 24px; color: var(--vx-blue); margin-bottom: 40px; transition: all .4s; }
.vx-pbox:hover .vx-pbox__ic { color: #fff; border-color: #fff; }
.vx-pbox h3 { color: #fff; font-size: 34px; margin-bottom: 6px; }
.vx-pbox__sub { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--vx-blue); margin-bottom: 18px; transition: color .4s; }
.vx-pbox:hover .vx-pbox__sub { color: rgba(255,255,255,.85); }
.vx-pbox p { color: rgba(255,255,255,.7); font-size: 15px; line-height: 1.7; margin-bottom: 26px; transition: color .4s; }
.vx-pbox:hover p { color: #fff; }
.vx-pbox__go { margin-top: auto; display: inline-flex; gap: 8px; align-items: center; font-size: 13px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.18); }
.vx-platforms:not(.vx-dark) .vx-pgrid { border-color: var(--vx-bd); background: #fff; }
.vx-platforms:not(.vx-dark) .vx-pbox { color: var(--vx-ink); border-color: var(--vx-bd); }
.vx-platforms:not(.vx-dark) .vx-pbox h3 { color: var(--vx-ink); }
.vx-platforms:not(.vx-dark) .vx-pbox p { color: var(--paragraph-color); }
.vx-platforms:not(.vx-dark) .vx-pbox__ic { border-color: var(--vx-bd); }
.vx-platforms:not(.vx-dark) .vx-pbox__go { border-color: var(--vx-bd); }
.vx-platforms:not(.vx-dark) .vx-pbox:hover, .vx-platforms:not(.vx-dark) .vx-pbox:hover h3 { color: #fff; }
.vx-platforms:not(.vx-dark) .vx-pbox:hover .vx-pbox__go { border-color: rgba(255,255,255,.3); }
@media (max-width: 1199px) { .vx-pgrid, .vx-pgrid.three { grid-template-columns: repeat(2, minmax(0, 1fr)); } .vx-pbox:nth-child(2n) { border-right: 0; } .vx-pbox { border-bottom: 1px solid rgba(255,255,255,.14); } }
@media (max-width: 576px) { .vx-pgrid, .vx-pgrid.three { grid-template-columns: 1fr; } .vx-pbox { border-right: 0; min-height: 0; padding: 28px 22px; } .vx-pbox__ic { margin-bottom: 24px; } }

/* ---------- always looking out for you ---------- */
.vx-care__badge { display: none !important; }
.vx-care__visual { position: relative; }
.vx-care__img { border-radius: 4px !important; overflow: hidden; }
.vx-care__frame { position: absolute; inset: 0; border: 2px solid var(--vx-blue); transform: translate(18px, 18px); z-index: -1; transition: transform .6s var(--vx-ease); }
.vx-care__visual:hover .vx-care__frame { transform: translate(10px, 10px); }
.vx-care__steps li b { font-weight: 500; }
@media (max-width: 576px) { .vx-care__frame { transform: translate(8px, 8px); } }

/* ---------- plain FAQ ---------- */
.vx-faq--plain .vx-acc__item { background: #fff; border-radius: 4px !important; }
.vx-faq--plain .vx-acc__btn .no { display: none; }
.vx-faq--plain .section-title { margin-bottom: 20px; }
.vx-faq--plain .vx-lead { margin-bottom: 24px; }

/* ---------- services explorer ---------- */
.vx-sx { padding: 120px 0; }
.vx-sx__wrap { display: grid; grid-template-columns: 420px 1fr; gap: 40px; align-items: start; }
.vx-sx__group + .vx-sx__group { margin-top: 30px; }
.vx-sx__ghead { display: flex; justify-content: space-between; align-items: baseline; gap: 14px; padding-bottom: 12px; border-bottom: 2px solid var(--vx-ink); margin-bottom: 6px; }
.vx-sx__ghead h6 { margin: 0; font-size: 14px; letter-spacing: .14em; text-transform: uppercase; color: var(--vx-blue); }
.vx-sx__ghead p { margin: 0; font-size: 13px; color: var(--paragraph-color); text-align: right; }
.vx-sx__list { list-style: none; padding: 0; margin: 0; }
.vx-sx__item { border-bottom: 1px solid var(--vx-bd); }
.vx-sx__btn { width: 100%; display: flex; align-items: center; gap: 16px; padding: 16px 12px; background: none; border: 0; text-align: left; color: var(--vx-ink); position: relative; transition: background .3s, color .3s, padding .4s var(--vx-ease); }
.vx-sx__btn::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--vx-blue); transform: scaleY(0); transition: transform .4s var(--vx-ease); }
.vx-sx__btn .ic { flex: 0 0 40px; height: 40px; display: grid; place-items: center; border: 1px solid var(--vx-bd); color: var(--vx-blue); font-size: 18px; transition: all .3s; }
.vx-sx__btn .nm { flex: 1; font-size: 18px; line-height: 1.3; }
.vx-sx__btn .go { opacity: 0; transform: translateX(-8px); transition: all .35s; color: var(--vx-blue); }
.vx-sx__item.is-active .vx-sx__btn, .vx-sx__btn:hover { background: #fff; padding-left: 20px; }
.vx-sx__item.is-active .vx-sx__btn::before { transform: none; }
.vx-sx__item.is-active .vx-sx__btn .ic { background: var(--vx-blue); color: #fff; border-color: var(--vx-blue); }
.vx-sx__item.is-active .vx-sx__btn .go, .vx-sx__btn:hover .go { opacity: 1; transform: none; }
.vx-sx__detail { display: none; }
.vx-sx__cta { display: flex; flex-direction: column; gap: 4px; margin-top: 30px; padding: 22px 24px; background: var(--vx-ink); color: #fff; font-size: 18px; text-transform: uppercase; letter-spacing: .04em; transition: background .35s; }
.vx-sx__cta small { font-size: 13px; color: rgba(255,255,255,.6); text-transform: none; letter-spacing: 0; }
.vx-sx__cta:hover { background: var(--vx-blue); color: #fff; }
.vx-sx__stage { position: sticky; top: 110px; background: #fff; border: 1px solid var(--vx-bd); min-height: 640px; }
.vx-sx__stage .vx-sx__img { position: relative; height: 320px; overflow: hidden; }
.vx-sx__stage .vx-sx__img img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.08); transition: transform 1.2s var(--vx-ease); }
.vx-sx__stage.is-in .vx-sx__img img { transform: none; }
.vx-sx__txt { padding: 34px 40px 40px; }
.vx-sx__stage .vx-sx__txt > * { opacity: 0; transform: translateY(14px); transition: opacity .6s var(--vx-ease), transform .6s var(--vx-ease); }
.vx-sx__stage.is-in .vx-sx__txt > * { opacity: 1; transform: none; }
.vx-sx__stage.is-in .vx-sx__txt > :nth-child(2) { transition-delay: .06s; } .vx-sx__stage.is-in .vx-sx__txt > :nth-child(3) { transition-delay: .12s; }
.vx-sx__stage.is-in .vx-sx__txt > :nth-child(4) { transition-delay: .18s; } .vx-sx__stage.is-in .vx-sx__txt > :nth-child(5) { transition-delay: .24s; } .vx-sx__stage.is-in .vx-sx__txt > :nth-child(6) { transition-delay: .3s; }
.vx-sx__prac { display: inline-block; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--vx-blue); margin-bottom: 10px; }
.vx-sx__txt h3 { font-size: 34px; margin-bottom: 12px; }
.vx-sx__lead { font-size: 18px; color: var(--vx-ink); font-weight: 400; }
.vx-sx__txt .vx-checks { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 20px; list-style: none; padding: 0; margin: 20px 0 28px; }
.vx-sx__txt .vx-checks li { display: flex; gap: 8px; font-size: 15px; }
.vx-sx__txt .vx-checks i { color: var(--vx-blue); }
@media (max-width: 991px) {
  .vx-sx { padding: 70px 0; }
  .vx-sx__wrap { grid-template-columns: 1fr; }
  .vx-sx__stage { display: none; }
  .vx-sx__item.is-active .vx-sx__detail { display: block; background: #fff; border: 1px solid var(--vx-bd); border-top: 0; margin-bottom: 10px; animation: vxDrop .45s var(--vx-ease); }
  .vx-sx__detail .vx-sx__img { height: 220px; overflow: hidden; } .vx-sx__detail .vx-sx__img img { width: 100%; height: 100%; object-fit: cover; }
  .vx-sx__txt { padding: 22px 20px 26px; }
  .vx-sx__txt h3 { font-size: 26px; }
  .vx-sx__txt .vx-checks { grid-template-columns: 1fr; }
  .vx-sx__ghead { flex-direction: column; gap: 4px; } .vx-sx__ghead p { text-align: left; }
}
@keyframes vxDrop { from { opacity: 0; transform: translateY(-8px); } }

/* ---------- sector pages ---------- */
.vx-sintro { padding: 120px 0 80px; }
.vx-sintro__grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 60px; align-items: center; }
.vx-sintro__text p { font-size: 16.5px; line-height: 1.8; }
.vx-sintro__quote { display: flex; gap: 14px; margin-top: 26px; padding: 22px 24px; background: #fff; border-left: 3px solid var(--vx-blue); border-top: 1px solid var(--vx-bd); border-right: 1px solid var(--vx-bd); border-bottom: 1px solid var(--vx-bd); }
.vx-sintro__quote i { font-size: 30px; color: var(--vx-blue); line-height: 1; }
.vx-sintro__quote p { margin: 0; font-size: 19px; line-height: 1.45; color: var(--vx-ink); font-weight: 400; }
.vx-sintro__media { position: relative; height: 560px; overflow: hidden; }
.vx-sintro__media .vx-media { position: absolute; inset: 0; }
.vx-sintro__media img { width: 100%; height: 100%; object-fit: cover; }
.vx-sintro__label { position: absolute; left: 0; bottom: 0; z-index: 2; display: inline-flex; gap: 10px; align-items: center; padding: 16px 22px; background: var(--vx-ink); color: #fff; font-size: 15px; letter-spacing: .08em; text-transform: uppercase; }
.vx-sintro__label i { color: var(--vx-blue); }
@media (max-width: 991px) { .vx-sintro__grid { grid-template-columns: 1fr; gap: 34px; } .vx-sintro__media { height: 380px; } }
@media (max-width: 576px) { .vx-sintro { padding: 70px 0 50px; } .vx-sintro__media { height: 280px; } }

.vx-cx { padding: 80px 0 110px; }
.vx-cx__list { border: 1px solid var(--vx-bd); background: #fff; }
.vx-cx__row { display: grid; grid-template-columns: 1fr 70px 1fr; align-items: stretch; border-bottom: 1px solid var(--vx-bd); }
.vx-cx__row:last-child { border-bottom: 0; }
.vx-cx__c, .vx-cx__r { padding: 30px 32px; transition: background .4s; }
.vx-cx__r { background: rgba(0, 157, 252, .05); }
.vx-cx__row:hover .vx-cx__r { background: rgba(0, 157, 252, .1); }
.vx-cx__tag { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--paragraph-color); margin-bottom: 10px; }
.vx-cx__r .vx-cx__tag { color: var(--vx-blue); }
.vx-cx__row h4 { font-size: 21px; font-weight: 500; margin-bottom: 6px; }
.vx-cx__row p { margin: 0; font-size: 15.5px; line-height: 1.7; }
.vx-cx__arrow { display: grid; place-items: center; border-left: 1px solid var(--vx-bd); border-right: 1px solid var(--vx-bd); }
.vx-cx__arrow i { width: 40px; height: 40px; display: grid; place-items: center; background: var(--vx-ink); color: #fff; transition: background .35s, transform .35s; }
.vx-cx__row:hover .vx-cx__arrow i { background: var(--vx-blue); transform: translateX(4px); }
@media (max-width: 767px) {
  .vx-cx { padding: 50px 0 70px; }
  .vx-cx__row { grid-template-columns: 1fr; }
  .vx-cx__arrow { border: 0; padding: 0; height: 0; position: relative; z-index: 2; }
  .vx-cx__arrow i { transform: rotate(90deg); } .vx-cx__row:hover .vx-cx__arrow i { transform: rotate(90deg); }
  .vx-cx__c, .vx-cx__r { padding: 24px 20px; }
}

.vx-capx { padding: 110px 0; background: #fff; }
.vx-capx__row { display: flex; gap: 10px; height: 460px; }
.vx-capx__item { position: relative; flex: 1 1 0; min-width: 0; overflow: hidden; color: #fff; cursor: pointer; display: flex; flex-direction: column; justify-content: flex-end; padding: 26px 22px; isolation: isolate; transition: flex-grow .7s var(--vx-ease); outline: 0; }
.vx-capx__item.is-open { flex-grow: 3.2; }
.vx-capx__img { position: absolute !important; inset: 0; z-index: -2; }
.vx-capx__img img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.1); transition: transform 1s var(--vx-ease); }
.vx-capx__item.is-open .vx-capx__img img { transform: none; }
.vx-capx__shade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, rgba(5,8,13,.92) 15%, rgba(5,8,13,.55) 100%); transition: background .6s; }
.vx-capx__item.is-open .vx-capx__shade { background: linear-gradient(0deg, rgba(0,70,125,.92) 10%, rgba(5,8,13,.15) 80%); }
.vx-capx__ic { width: 50px; height: 50px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.4); font-size: 22px; margin-bottom: 18px; transition: background .4s, border-color .4s; }
.vx-capx__item.is-open .vx-capx__ic { background: var(--vx-blue); border-color: var(--vx-blue); }
.vx-capx__item h4 { color: #fff; font-size: 19px; line-height: 1.3; margin: 0; max-width: 340px; }
.vx-capx__item:not(.is-open) h4 { font-size: 16px; }
@media (max-width: 991px) {
  .vx-capx { padding: 70px 0; }
  .vx-capx__row { flex-direction: column; height: auto; }
  .vx-capx__item { flex: none !important; min-height: 92px; padding: 20px; flex-direction: row; align-items: center; gap: 16px; justify-content: flex-start; transition: min-height .6s var(--vx-ease); }
  .vx-capx__item.is-open { min-height: 220px; align-items: flex-end; }
  .vx-capx__ic { margin: 0; flex: 0 0 46px; height: 46px; }
  .vx-capx__item h4, .vx-capx__item:not(.is-open) h4 { font-size: 17px; }
}

.vx-chev { padding: 110px 0; }
.vx-chev__list { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.vx-chev__head { position: relative; display: flex; flex-direction: column; justify-content: center; height: 110px; padding: 0 44px 0 34px; background: var(--vx-ink); color: #fff; clip-path: polygon(0 0, calc(100% - 26px) 0, 100% 50%, calc(100% - 26px) 100%, 0 100%, 26px 50%); transition: background .4s; }
.vx-chev__item:first-child .vx-chev__head { clip-path: polygon(0 0, calc(100% - 26px) 0, 100% 50%, calc(100% - 26px) 100%, 0 100%); padding-left: 26px; }
.vx-chev__head small { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--vx-blue); transition: color .4s; }
.vx-chev__head b { font-size: 24px; font-weight: 500; }
.vx-chev__item:hover .vx-chev__head { background: var(--vx-blue); }
.vx-chev__item:hover .vx-chev__head small { color: rgba(255,255,255,.85); }
.vx-chev__item p { margin: 18px 26px 0 26px; font-size: 15.5px; line-height: 1.7; }
@media (max-width: 991px) {
  .vx-chev { padding: 70px 0; }
  .vx-chev__list { grid-template-columns: 1fr; gap: 14px; }
  .vx-chev__head, .vx-chev__item:first-child .vx-chev__head { clip-path: none; height: auto; padding: 18px 22px; border-left: 3px solid var(--vx-blue); }
  .vx-chev__item p { margin: 12px 4px 0; }
}

.vx-pspot__icon { display: inline-grid; place-items: center; width: 110px; height: 110px; border: 1px solid rgba(255,255,255,.18); font-size: 48px; color: var(--vx-blue); margin-bottom: 26px; }
.vx-pspot__head h2 { margin-bottom: 4px; }
@media (max-width: 991px) { .vx-pspot__icon { display: none; } }

.vx-osec { justify-content: space-between !important; }
.vx-osec b { margin-top: auto; }
.vx-osec .go { position: absolute; right: 18px; top: 18px; width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.4); transition: all .35s; }
.vx-osec:hover .go { background: #fff; color: var(--vx-ink); }

/* ---------- small tidy ups ---------- */
.vx-collage__mono { display: none !important; }
.vx-pagehero__frame { border-radius: 6px !important; }

/* big headings in normal case, capitals only on menus and buttons */
h1, h2, h3, h4, .vx-hs__title, .vx-pagehero h1, .vx-why h2, .vx-know__head h2, .section-title h2 { text-transform: none !important; }
@media (max-width: 767px) { .vx-cx__arrow { justify-items: end; padding-right: 20px; top: -20px; } }
.vx-sx__cta { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; } .vx-sx__cta small { flex: 0 0 100%; }
