:root {
    --idx-ease: cubic-bezier(.22, 1, .36, 1);
    --idx-fast: .35s var(--idx-ease);
    --idx-base: .55s var(--idx-ease);
    --idx-slow: .8s var(--idx-ease);
    --idx-lift: 0 18px 38px -16px rgba(15, 23, 42, .22),0 8px 16px -10px rgba(15, 23, 42, .14);
    --idx-lift-soft: 0 10px 24px -14px rgba(15, 23, 42, .18);
    --idx-accent: #1f419b
}

[data-aos] {
    transition-timing-function: var(--idx-ease)!important;
    transition-duration: .7s;
    will-change: transform,opacity
}

[data-aos].aos-animate {
    will-change: auto
}

[data-aos=fade-up] {
    transform: translate3d(0,24px,0);
    opacity: 0
}

[data-aos=fade-down] {
    transform: translate3d(0,-20px,0);
    opacity: 0
}

[data-aos=fade-right] {
    transform: translate3d(-20px,0,0);
    opacity: 0
}

[data-aos=fade-left] {
    transform: translate3d(20px,0,0);
    opacity: 0
}

[data-aos=zoom-in-soft] {
    transform: scale(.97);
    opacity: 0
}

[data-aos].aos-animate {
    transform: translate3d(0,0,0) scale(1);
    opacity: 1
}

@media (prefers-reduced-motion:reduce) {
    [data-aos],[data-aos].aos-animate {
        transform: none!important;
        opacity: 1!important;
        transition: none!important
    }
}

.vah-brand__card {
    transition: transform var(--idx-fast),border-color var(--idx-fast),box-shadow var(--idx-fast),background-color var(--idx-fast);
    will-change: transform
}

.vah-brand__card .vah-brand__logo img {
    transition: transform var(--idx-base),filter var(--idx-base);
    filter: saturate(.85)
}

a.vah-brand__card:focus-visible,a.vah-brand__card:hover {
    transform: translateY(-4px);
    border-color: rgba(31,65,155,.55);
    box-shadow: var(--idx-lift-soft);
    background-color: #fff
}

a.vah-brand__card:focus-visible .vah-brand__logo img,a.vah-brand__card:hover .vah-brand__logo img {
    transform: scale(1.06);
    filter: saturate(1.1)
}

a.vah-brand__card:active {
    transform: translateY(-2px) scale(.99);
    transition-duration: .14s
}

.vah-about__photo-wrap {
    border-radius: inherit
}

.vah-about__photo-wrap .about__photo,.vah-about__photo-wrap img.about__photo {
    transition: transform 1.1s var(--idx-ease),filter var(--idx-base);
    will-change: transform
}

.vah-about__media:hover .about__photo,.vah-about__photo-wrap:hover .about__photo {
    transform: scale(1.045)
}

.vah-about__badge {
    transition: transform var(--idx-base),box-shadow var(--idx-base)
}

.vah-about__media:hover .vah-about__badge,.vah-about__photo-wrap:hover .vah-about__badge {
    transform: translateY(-3px) rotate(-2deg)
}

.vah-about__btn {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: transform var(--idx-fast),box-shadow var(--idx-fast),background-color var(--idx-fast)
}

.vah-about__btn::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(135deg,#2b5cd4 0,#1f419b 100%);
    opacity: 0;
    transition: opacity var(--idx-fast)
}

.vah-about__btn:focus-visible,.vah-about__btn:hover {
    transform: translateY(-2px);
    color: #fff;
    opacity: 1;
    box-shadow: 0 12px 28px -14px rgba(31,65,155,.55)
}

.vah-about__btn:focus-visible::after,.vah-about__btn:hover::after {
    opacity: 1
}

.vah-about__btn img {
    transition: transform var(--idx-fast)
}

.vah-about__btn:hover img {
    transform: translateX(4px)
}

.vah-about__btn:active {
    transform: translateY(0) scale(.98);
    transition-duration: .12s
}

.vah-about__call-ring {
    transition: transform var(--idx-base)
}

.vah-about__call:hover .vah-about__call-ring {
    transform: scale(1.06) rotate(-6deg)
}

.vah-about__call-ring-bg {
    animation: vah-ring-spin 14s linear infinite;
    transform-origin: center;
    will-change: transform
}

.vah-about__call-handset {
    animation: vah-ring-shake 2.6s var(--idx-ease) infinite;
    transform-origin: center;
    will-change: transform
}

@keyframes vah-ring-spin {
    to {
        transform: rotate(360deg)
    }
}

@keyframes vah-ring-shake {
    0%,100%,20%,8% {
        transform: rotate(0)
    }

    10%,14% {
        transform: rotate(-12deg)
    }

    12%,16% {
        transform: rotate(12deg)
    }

    18% {
        transform: rotate(-6deg)
    }
}

.vah-about__ceo-sign {
    transition: transform var(--idx-base),opacity var(--idx-base)
}

.vah-about__ceo:hover .vah-about__ceo-sign {
    transform: translateX(2px);
    opacity: .92
}

.vah-about__list li {
    transition: transform var(--idx-fast),color var(--idx-fast)
}

.vah-about__list li:hover {
    transform: translateX(4px);
    color: var(--idx-accent)
}

.vah-about__list li img {
    transition: transform var(--idx-fast)
}

.vah-about__list li:hover img {
    transform: scale(1.18) rotate(8deg)
}

.vah-product__trigger {
    transition: opacity var(--idx-fast),letter-spacing var(--idx-base),color var(--idx-fast)
}

.vah-product__trigger:hover {
    opacity: 1;
    color: #fff;
    letter-spacing: .01em
}

.vah-product__trigger:hover .vah-product__cat-arrow {
    transform: translateX(6px)
}

.vah-product__item.is-open .vah-product__trigger:hover .vah-product__cat-arrow {
    transform: rotate(90deg) translateX(4px)
}

.vah-product__card {
    position: relative;
    overflow: hidden
}

.vah-product__card img.vah-product__card-photo,.vah-product__card-photo {
    transition: transform 1s var(--idx-ease),filter var(--idx-base);
    will-change: transform
}

.vah-product__card:hover .vah-product__card-photo {
    transform: scale(1.04);
    filter: brightness(1.04)
}

.vah-product__card-panel {
    transition: transform var(--idx-base)
}

.vah-product__card:hover .vah-product__card-panel {
    transform: translateY(-3px)
}

.vah-product__card-btn {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: transform var(--idx-fast),box-shadow var(--idx-fast),letter-spacing var(--idx-base)
}

.vah-product__card-btn::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg,rgba(255,255,255,.14),rgba(255,255,255,0));
    transform: translateX(-100%);
    transition: transform var(--idx-slow)
}

.vah-product__card-btn:focus-visible,.vah-product__card-btn:hover {
    transform: translateY(-2px);
    letter-spacing: .02em;
    box-shadow: 0 10px 24px -14px rgba(0,0,0,.35)
}

.vah-product__card-btn:focus-visible::after,.vah-product__card-btn:hover::after {
    transform: translateX(100%)
}

.vah-product__card-btn:active {
    transform: translateY(0) scale(.98);
    transition-duration: .12s
}

.vah-project__lead,.vah-project__title.mask--title {
    transition: transform var(--idx-base)
}

.vah-project__card {
    position: relative;
    overflow: hidden;
    transition: transform var(--idx-base),box-shadow var(--idx-base);
    will-change: transform
}

.vah-project__media {
    overflow: hidden
}

.vah-project__grad img,.vah-project__media img {
    transition: transform 1.1s var(--idx-ease),filter var(--idx-base);
    will-change: transform
}

.ProjectDesign__item:focus-visible .vah-project__card,.ProjectDesign__item:hover .vah-project__card {
    border: 1px solid #000;
}

.ProjectDesign__item:focus-visible .vah-project__grad img,.ProjectDesign__item:focus-visible .vah-project__media img,.ProjectDesign__item:hover .vah-project__grad img,.ProjectDesign__item:hover .vah-project__media img {
    transform: scale(1.06);
    filter: brightness(1.04) saturate(1.05)
}

.vah-project__body {
    transition: transform var(--idx-base)
}

.ProjectDesign__item:hover .vah-project__body {
    transform: translate(5px,-5px);
}

.vah-project__name {
    transition: color var(--idx-fast)
}

.ProjectDesign__item:hover .vah-project__name {
    color: #ffffff;
}

.vah-project__loc img {
    transition: transform var(--idx-fast)
}

.ProjectDesign__item:hover .vah-project__loc img {
    transform: translateY(-2px) scale(1.1)
}

.control-project.control-owl .owl-next,.control-project.control-owl .owl-prev {
    transition: transform var(--idx-fast),filter var(--idx-fast)
}

.control-project.control-owl .owl-next:hover,.control-project.control-owl .owl-prev:hover {
    transform: translateY(-2px);
    filter: drop-shadow(0 6px 12px rgba(15, 23, 42, .18))
}

.control-project.control-owl .owl-next:active,.control-project.control-owl .owl-prev:active {
    transform: translateY(0) scale(.95)
}

.vah-blog__card {
    position: relative;
    transition: transform var(--idx-base);
    will-change: transform
}

.vah-blog__media {
    position: relative;
    overflow: hidden;
    display: block
}

.vah-blog__img,.vah-blog__media img {
    transition: transform 1.1s var(--idx-ease),filter var(--idx-base);
    will-change: transform
}

.vah-blog__card:hover {
    transform: translateY(-6px)
}

.vah-blog__card:hover .vah-blog__img,.vah-blog__card:hover .vah-blog__media img,.vah-blog__media:hover .vah-blog__img,.vah-blog__media:hover img {
    transform: scale(1.06);
    filter: brightness(1.03)
}

.vah-blog__date {
    transition: transform var(--idx-fast),background-color var(--idx-fast)
}

.vah-blog__card:hover .vah-blog__date {
    transform: translateY(-2px)
}

.vah-blog__name a {
    background-image: linear-gradient(var(--idx-accent),var(--idx-accent));
    background-size: 0 1px;
    background-repeat: no-repeat;
    background-position: 0 100%;
    transition: background-size var(--idx-base),color var(--idx-fast)
}

.vah-blog__card:hover .vah-blog__name a,.vah-blog__name a:hover {
    color: var(--idx-accent);
    background-size: 100% 1px
}

.vah-blog__meta-ico {
    transition: transform var(--idx-fast),color var(--idx-fast);
    display: inline-flex
}

.vah-blog__card:hover .vah-blog__meta-ico {
    transform: rotate(-12deg);
    color: var(--idx-accent)
}

.vah-blog__all {
    transition: transform var(--idx-fast),color var(--idx-fast)
}

.vah-blog__all:hover {
    transform: translateX(4px);
    color: var(--idx-accent)
}

.vah-blog__all-icon {
    display: inline-flex;
    transition: transform var(--idx-base)
}

.vah-blog__all:hover .vah-blog__all-icon {
    transform: translateX(6px)
}

@media (prefers-reduced-motion:reduce) {
    .vah-about__badge,.vah-about__btn,.vah-about__btn img,.vah-about__call-handset,.vah-about__call-ring,.vah-about__call-ring-bg,.vah-about__ceo-sign,.vah-about__list li,.vah-about__list li img,.vah-about__photo-wrap .about__photo,.vah-blog__all,.vah-blog__all-icon,.vah-blog__card,.vah-blog__date,.vah-blog__img,.vah-blog__media img,.vah-blog__meta-ico,.vah-blog__name a,.vah-brand__card,.vah-brand__card .vah-brand__logo img,.vah-product__card-btn,.vah-product__card-panel,.vah-product__card-photo,.vah-product__cat-arrow,.vah-product__trigger,.vah-project__body,.vah-project__card,.vah-project__grad img,.vah-project__loc img,.vah-project__media img,.vah-project__name {
        transition: none!important;
        animation: none!important;
        transform: none!important
    }
}

::before {}

article.vah-project__card:after {
    position: absolute;
    content: '';
    width: calc(100% - 30px);
    height: calc(100% - 30px);
    border: 1px solid #ffff;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 99;
    border-radius: 10px;
    opacity: 0;
    transition: all .3s;
}

article.vah-project__card:hover:after {
    opacity: 1;
}

article.vah-project__card .vah-project__body:hover {
}

h3.vah-project__name {}

h3.vah-project__name {}