@font-face {
    font-family: 'Sharp Grotesk';
    src: url("../fonts/Sharp-Grotesk/SharpGrotesk-Book20.otf") format("opentype");
    font-weight: 400;
}

:root {
    --font-primary: "DM Sans", sans-serif;
    --font-secondary: 'Sharp Grotesk', sans-serif;

    --black: #000;
    --white: #fff;
    --white-60: rgba(255, 255, 255, 0.60);
    --white-50: rgba(255, 255, 255, 0.50);
    --white-40: rgba(255, 255, 255, 0.40);
    --white-30: rgba(255, 255, 255, 0.30);
    --white-20: rgba(255, 255, 255, 0.20);
    --white-10: rgba(255, 255, 255, 0.10);
   
    --primary: #2E59FC;
    --gray: #BFC7D6;
    --lblue: #A6BAF2;
}

/* Reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	font-family: var(--font-primary);
    font-weight: 400;
    font-size: 18px;
    line-height: 1.4;
    color: var(--white);
    background: var(--black);
}
ol, ul { 
	list-style: none;
}
blockquote, q { 
	quotes: none; 
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
.layouts-title {
	font-size: 26px;
	margin:15px 0;
}
.layouts ul li {
	margin-bottom:5px;
}
.layouts ul li a {
	font-size: 17px;
	display: inline-block;
	padding:3px 10px;
}
.layouts ul li a:hover {
	background:#000;
	color:#fff;
}
/* -- END RESET -- */

.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
    float: left;
}
.nopad {
	padding:0;
}
.nopadleft {
	padding-left:0;
}
.nopadright {
	padding-right:0;
}
strong, b {
	font-weight: bold;
}
i {
	font-style: italic;
}
em {
	font-style: italic;
}
.clear {
	clear:both;
}
.left {
	float:left;
	margin-right:15px;
	margin-bottom:15px;
}
.right {
	float:right;
	margin-left:15px;
	margin-bottom:15px;
}
.alignleft {
	float:left;
	margin-right:15px;
	margin-bottom:15px;
}
.alignright {
	float:right;
	margin-left:15px;
	margin-bottom:15px;
}
.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}
a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}
.wp-caption {
	max-width: 100%;
    margin-bottom: 15px;
}
.invi {
	visibility: hidden;
	opacity: 0;
}
.object-fit {
	position: relative;
}
.object-fit > img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
   object-fit: cover;
}
.object-fit.object-contain > img {
    -o-object-fit: contain;
    object-fit: contain;
}
.object-fit > video {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
    object-fit: cover;
}

.fancybox__content :focus:not(.carousel__button.is-close) {
    outline: none;
}

/* preloader */
.preloader {
    display: inline-block;
	width: 25px;
	height: 25px;
	border: 3px solid hsla(0,0%,100%,.3);
    border-top-color: rgba(255, 255, 255, 0.3);
    border-right-color: rgba(255, 255, 255, 0.3);
    border-bottom-color: rgba(255, 255, 255, 0.3);
    border-left-color: rgba(255, 255, 255, 0.3);
	border-radius: 50%;
	border-top-color: #ccc !important;
	-webkit-animation: a 1s ease-in-out infinite;
	animation: a 1s ease-in-out infinite;
	z-index: 50;
}
@-webkit-keyframes a {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}
@keyframes a {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

/*   hamburger   */
.hamburger {
    display: none;
}
.hamburger-box {
    width: 24px;
    height: 24px;
    position: relative;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.hamburger-box span {
    display: block;
    height: 1px;
    background: var(--white);
    transition: all 0.2s ease-in-out;
    transform-origin: center center;
    position: absolute;
}
.hamburger-box span:nth-child(1) {
    width: 16px;
    top: 6px;
}
.hamburger-box span:nth-child(2) {
    width: 8px;
    top: 12px;
}
.hamburger-box span:nth-child(3) {
    width: 16px;
    top: 18px;
}
.hamburger-box.is-active span:nth-child(1) {
    transform: rotate(45deg);
    width: 18px;
    top: 12px;
}
.hamburger-box.is-active span:nth-child(2) {
    opacity: 0;
}
.hamburger-box.is-active span:nth-child(3) {
    transform: rotate(-45deg);
    width: 18px;
    top: 12px;
}

.tabs {
    margin: 0;
    border: none;
    background: transparent;
}
.tabs-content {
    border: none;
    background: transparent;
    color: inherit;
}
.tabs-panel {
    padding: 0;
}

.accordion {
    background: none;
}
.accordion-title {
    border: none;
}
.accordion-title:hover {
    background: none;
}
.accordion-content {
    padding: 0;
    border: none;
    background: none;
    color: inherit;
}
:last-child > .accordion-content:last-child {
    border: none;
}

.prev-scroll {
    overflow: hidden;
    height: 100%;
    position: relative;
}

.grid-container {
    width: 100%;
    max-width: 1692px;
    padding: 0 48px;
}
.grid-container-full {
    max-width: 100%;
    padding: 0 !important;
}

.heading-1,
.heading-1-3 {
    font-family: var(--font-secondary);
    font-weight: 400;
    font-size: 64px;
    line-height: 1.2;
    letter-spacing: -3.2px;
}
.heading-1 strong,
.heading-1-3 strong {
    color: var(--primary);
    font-weight: 400;
}
.heading-2 {
    font-family: var(--font-secondary);
    font-weight: 400;
    font-size: 48px;
    line-height: 1.2;
    letter-spacing: -2.4px;
}
.heading-2 strong {
    color: var(--primary);
    font-weight: 400;
}
.heading-3 {
    font-family: var(--font-secondary);
    font-weight: 400;
    font-size: 32px;
    line-height: 1.25;
    letter-spacing: -0.64px;
}
.heading-3 strong {
    color: var(--primary);
    font-weight: 400;
}
.heading-3 a {
    display: inline-block;
    color: var(--white);
    text-wrap: nowrap;
    position: relative;
    overflow: hidden;
}
.heading-3 a::after {
    content: '';
    width: 100%; height: 2px;
    background: var(--white);
    position: absolute;
    bottom: 5px; left: 0;
    transition: 0.3s ease;
    transform: translateX(-100%);
}
.heading-3 a:hover::after {
    transform: translateX(0);
}

.text-lg,
.text-lg-base,
.text-lg-md {
    font-size: 24px;
    line-height: 1.4;
    letter-spacing: -0.72px;
}
.text-lg-base-dot span {
    display: inline-block;
    padding-left: 15px;
    position: relative;
}
.text-lg-base-dot span::before {
    content: '';
    width: 7px; height: 7px;
    border-radius: 50%;
    background: var(--primary);
    position: absolute;
    top: 50%; left: 0;
    transform: translateY(-50%);
}
.text-base {
    font-size: 18px;
    line-height: 1.4;
    letter-spacing: -0.54px;
}
.text-sm {
    font-size: 15px;
    line-height: 1.4;
    letter-spacing: -0.45px;
}

.section-btns ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    gap: 16px;
}

.mb-32 {
    margin-bottom: 32px;
}
.mb-40 {
    margin-bottom: 40px;
}
.mb-48 {
    margin-bottom: 48px;
}

.title-display {
    font-family: var(--font-secondary);
    font-weight: 400;
    font-size: 180px;
    line-height: 1.2;
    letter-spacing: -9px;
}

.btn-main,
.btn-main:focus,
.btn-main:active {
    display: inline-block;
    cursor: pointer;
    position: relative;
    transition: 0.3s ease;
    font-size: 18px;
    line-height: 1;
    letter-spacing: -0.54px;
    border-radius: 48px;
    padding: 19px 40px;
    white-space: nowrap;
    outline: 1px solid transparent;
    overflow: hidden;
    text-align: center;
}

.btn-primary,
.btn-primary:focus,
.btn-primary:active {
    background: var(--white);
    color: var(--black);
    transition: background-color 0s ease 0s, color 0.2s ease,outline-color 0.3s ease;
}
.btn-primary:hover {
    outline-color: var(--primary);
    background: var(--primary);
    color: var(--white);
    transition: background-color 0.1s ease 0.3s, color 0.2s ease,outline-color 0.3s ease;
}
.btn-primary:not(.btn-has-dot):hover {
    color: var(--white);
    background: var(--primary);
}

a:hover .btn-primary {
    outline-color: var(--primary);
}
a:hover .btn-primary:not(.btn-has-dot) {
    color: var(--white);
    background: var(--primary);
}

.btn-secondary,
.btn-secondary:focus,
.btn-secondary:active {
    background: transparent;
    color: var(--white);
    outline-color: var(--white-30);
}
.btn-secondary:hover {
    outline-color: var(--white);
    color: var(--white);
}
a:hover .btn-secondary {
    outline-color: var(--white);
    color: var(--white);
}

.btn-secondary.btn-has-dot:hover {
    outline-color: var(--primary);
}
a:hover .btn-secondary.btn-has-dot {
    outline-color: var(--primary);
}
.btn-secondary.btn-has-dot .btn-has-dot-text-1 {
    color: var(--white);
    top: 0; 
}
.btn-secondary.btn-has-dot .btn-has-dot-text-2 {
    top: -160%;
    color: var(--white);
}

.btn-main.btn-has-dot,
.btn-main.btn-has-dot:focus,
.btn-main.btn-has-dot:active {
    padding: 19px 40px 19px 57px;
}

.btn-dot {
    display: inline-block;
    width: 7px; height: 7px;
    border-radius: 50%;
    position: absolute;
    top: 50%; left: 30px;
    transform: translateY(-50%);
    transition: 0.5s ease;
}
.btn-dot::before {
    content: '';
    width: 7px; height: 7px;
    position: absolute;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-35%, -50%);
    border-radius: 50%;
    transition: 0.6s ease;
    background: var(--primary);
}
.btn-dot::after {
    content: '';
    width: 100%; height: 100%;
    border-radius: 50%;
    background: var(--primary);
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-35%, -50%);
    transition: 0.5s ease;
}
a:hover .btn-has-dot .btn-dot::before,
.btn-has-dot:hover .btn-dot::before {
    width: 500px; height: 500px;
    transition: 1s ease;
}
a:hover .btn-has-dot .btn-dot::after,
.btn-has-dot:hover .btn-dot::after {
    background: var(--white);
}
.btn-has-dot-textbox {
    position: relative;
}
.btn-has-dot-text-hidden {
    opacity: 0;
    visibility: hidden;
}
.btn-has-dot-text {
    width: 100%; height: 100%;
    position: absolute;
    top: 0; left: 0;
    overflow: hidden;
}
.btn-has-dot-text > div {
    width: 100%; height: 100%;
    position: absolute;
    left: 0;
    transition: 0.25s ease-in-out;
}
/* .btn-has-dot-text-1 {
    color: var(--black);
    top: 0; 
}
.btn-has-dot-text-2 {
    top: -160%;
    color: var(--white);
} */
/* .btn-has-dot:hover .btn-has-dot-text-1 {
    top: 160%;
}
.btn-has-dot:hover .btn-has-dot-text-2 {
    top: 0;
}
a:hover .btn-has-dot .btn-has-dot-text-1 {
    top: 160%;
}
a:hover .btn-has-dot .btn-has-dot-text-2 {
    top: 0;
} */

.btn-main.btn-small,
.btn-main.btn-small:focus,
.btn-main.btn-small:active {
    font-size: 15px;
    letter-spacing: -0.45px;
    padding: 16px 16px;
}
.btn-main.btn-has-dot.btn-small,
.btn-main.btn-has-dot.btn-small:focus,
.btn-main.btn-has-dot.btn-small:active {
    padding: 16px 16px 16px 33px;
}
.btn-main.btn-has-dot.btn-small .btn-dot {
    left: 16px;
}
.btn-full-box {
    display: inline-block;
    position: relative;
    padding-left: 17px;
    margin-left: -17px;
}
.btn-full-box .btn-dot {
   left: 0 !important;
}
.btn-main.btn-small-2,
.btn-main.btn-small-2:focus,
.btn-main.btn-small-2:active {
    padding: 16px 24px;
}
.btn-main.btn-has-dot.btn-small-2,
.btn-main.btn-has-dot.btn-small-2:focus,
.btn-main.btn-has-dot.btn-small-2:active {
    padding: 16px 16px 16px 41px;
}
.btn-main.btn-has-dot.btn-small-2 .btn-dot {
    left: 24px;
}

.custom-pointer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;

    width: 206px;
    height: 206px;
    border-radius: 50%;
    background: var(--primary);
    color: var(--white);
    position: fixed;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
}
.custom-pointer > div {
    display: none;
}
.custom-pointer.is-active {
    opacity: 1;
    visibility: visible;
}
.custom-pointer.is-book #custom-pointer-book,
.custom-pointer.is-case #custom-pointer-case {
    display: block;
}

.custom-pointer-grad {
    width: 325px; height: 325px;
    border-radius: 50%;
    background: -o-radial-gradient(50% 50%, 50% 50%, #2E59FC 0%, rgba(27, 53, 150, 0.00) 100%);
    background: radial-gradient(50% 50% at 50% 50%, #2E59FC 0%, rgba(27, 53, 150, 0.00) 100%);
    position: fixed;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
}
.custom-pointer-grad.is-active {
    opacity: 0.5;
    visibility: visible;
}

header {
    position: absolute;
    top: 0; right: 0; left: 0;
    z-index: 999;
    padding: 24px 0;
}
header::after {
    content: '';
    width: 100%; height: 1px;
    position: absolute;
    right: 0; bottom: 0; left: 0;
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.2)), color-stop(50%, rgba(255, 255, 255, 0.2)), to(rgba(255, 255, 255, 0)));
    background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0) 100%);
}
.header-box {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.header-logo {
    line-height: 0;
    transition: 0.4s;
}
.header-logo a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: 107px;
    transition: 0.4s;
}
.header-logo a img {
    max-height: 25px;
}
.header-nav {
    padding: 0 20px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.header-nav ul {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    gap: 24px;
}
.header-nav ul:hover a {
    color: var(--white-50);
}
.header-nav ul li a {
    display: inline-block;
    font-size: 15px;
    line-height: 1.4;
    letter-spacing: -0.45px;
    color: var(--white);
    transition: 0.2s ease-in-out;
    position: relative;
    white-space: nowrap;
}
.header-nav ul li a::after {
    content: '';
    width: 7px; height: 7px;
    border-radius: 50%;
    background: var(--primary);
    position: absolute;
    bottom: -11px; left: 50%;
    transform: translateX(-50%);
    transition: 0.2s ease-in-out;
    opacity: 0;
    pointer-events: none;
}
.header-nav ul li a:hover {
    color: var(--white);
}
.header-nav ul li a:hover::after {
    opacity: 1;
}
.header-nav ul li a:active::after {
    opacity: 0;
}

.header-btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;

    gap: 23px;
}

.dekstop-header-hold {
    position: fixed;
    bottom: 12px;
    left: 50%; transform: translateX(-50%);
    z-index: 9999;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: 0.2s ease-in-out;
}
.dekstop-header-hold.is-active {
    opacity: 1;
    visibility: visible;
}
.dekstop-header {
    pointer-events: all;
    padding: 8px 8px 8px 24px;
    background: var(--primary);
    border-radius: 51px;
    -webkit-box-shadow: 0px 4px 40px 0px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 4px 40px 0px rgba(0, 0, 0, 0.25);
    transition: 0.2s ease-in-out;
    transform: translateY(100%);

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.dekstop-header-hold.is-active .dekstop-header {
    transform: translateY(0);
}
.dekstop-header-left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    padding-right: 32px;
    position: relative;
}
.dekstop-header-left::after {
    content: '';
    width: 1px;
    height: 16px;
    background: var(--white-20);
    position: absolute;
    top: 50%; right: 16px;
    transform: translateY(-50%);
}
.dekstop-header-nav {
    max-width: 0;
    overflow: hidden;
    transition: 0.4s;
}
.dekstop-header.is-active .dekstop-header-nav {
    max-width: 600px;
}
.dekstop-header-nav .header-nav {
    padding: 0 16px 0 0;
}
.hamburger.dekstop-header-js {
    display: inline-block;
}
.dekstop-header .header-logo {
    width: 0;
    overflow: hidden;
}
.dekstop-header .header-logo a {
    padding-left: 16px;
}
.dekstop-header.is-active .header-logo {
    width: 107px;
}
.dekstop-header .header-nav ul li a::after {
    display: none;
}
.dekstop-header .btn-primary,
.dekstop-header .btn-primary:focus,
.dekstop-header .btn-primary:active {
    border: 1px solid var(--white);
    background: var(--white) !important;
}
/* .dekstop-header .btn-primary:hover {
    color: var(--black);
    background: var(--white);
}
.dekstop-header .btn-primary:hover {
    color: var(--black);
    background: var(--white);
}
.dekstop-header .btn-dot::before {
    display: none;
}
.dekstop-header .btn-primary:hover .btn-dot::after {
    background: var(--primary);
} */
.dekstop-header .btn-has-dot-text-2 {
    color: var(--black);
}

.mobile-menu {
    padding: 80px 0 72px;
    display: none;
}
.mobile-menu ul li:not(:last-child) {
    margin-bottom: 24px;
}
.mobile-menu ul li a {
    color: var(--white);
}

.acceptance-bar {
    position: fixed;
    bottom: 12px; right: 28px;
    z-index: 99999;
    border-radius: 51px;
    background: var(--primary);
    -webkit-box-shadow: 0px 4px 40px 0px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 4px 40px 0px rgba(0, 0, 0, 0.25);
    padding: 9px 8px 9px 24px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%);
    transition: 0.2s ease-in-out;
}
.acceptance-bar.is-active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.acceptance-bar-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    gap: 16px;
    font-size: 15px;
    line-height: 1.4;
    letter-spacing: -0.45px;
}
.acceptance-bar-box a {
    color: var(--white);
    text-decoration: underline;
    transition: 0.2s ease-in-out;
}
.acceptance-bar-box a:hover {
    color: var(--white);
    opacity: 0.7;
}
.acceptance-bar-box span {
    display: inline-block;
    cursor: pointer;
    padding: 12px 16px;
    border-radius: 80px;
    background: var(--black);
    transition: 0.2s ease-in-out;
}
.acceptance-bar-box span:hover {
    opacity: 0.7;
}

footer {
    padding: 0 0 40px;
    position: relative;
    overflow: hidden;
    background: url(../img/bg-footer.png) no-repeat bottom center / cover;
}
.footer-img {
    border-top: 1px solid var(--white-10);
    padding: 40px 0;
    border-bottom: 1px solid var(--white-10);
}
.footer-img img {
    width: 100%;
}
.footer-content {
    padding: 40px 0;
}
.footer-copywrite {
    border-top: 1px solid var(--white-10);
    padding: 40px 0 0;
}
.footer-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

    gap: 36px;
}
.footer-content-left .heading-3 + .heading-3 {
    margin-top: 12px;
}
.footer-content-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

    gap: 40px;
}
.footer-content-nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    gap: 48px;
}
.footer-content-nav ul li a {
    display: inline-block;
    color: var(--white);
    white-space: nowrap;
    position: relative;
}
.footer-content-nav ul li a::after {
    content: '';
    width: 100%; height: 1px;
    background: var(--white);
    position: absolute;
    bottom: 0; left: 0;
    opacity: 0;
    transition: 0.2s ease-in-out;
}
.footer-content-nav ul li.footer-highlighted a {
    padding-left: 17px;
}
.footer-content-nav ul li.footer-highlighted a::before {
    content: '';
    width: 7px; height: 7px;
    border-radius: 50%;
    background: var(--primary);
    position: absolute;
    top: 50%; left: 0;
    transform: translateY(-50%);
}
.footer-content-nav ul li a:hover {
    color: var(--white);
}
.footer-content-nav ul li a:hover::after {
    opacity: 1;
}
.footer-content-socials ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    gap: 16px;
}
.footer-content-socials ul li a {
    display: block;
    width: 48px; height: 48px;
    border: 1px solid var(--white-20);
    border-radius: 50%;
    position: relative;
    transition: 0.2s ease-in-out;
}
.footer-content-socials ul li a img {
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
}
.footer-content-socials ul li a:hover {
    border-color: var(--white);
}

.home-hero {
    padding: 154px 0 0;
    min-height: 676px;
    position: relative;
    margin-bottom: 443px;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(46.59%, rgba(3, 0, 77, 0.60)), to(#000));
    background: -o-linear-gradient(top, rgba(3, 0, 77, 0.60) 46.59%, #000 100%);
    background: linear-gradient(180deg, rgba(3, 0, 77, 0.60) 46.59%, #000 100%);
}
.home-hero-bg-hold {
    position: absolute;
    top: 0; right: 0; left: 0;
    overflow: hidden;
    z-index: 0;
    height: 100vh;
    pointer-events: none;
}
.home-hero-bg-box {
    position: absolute;
    top: 0; left: 50%; bottom: 0;
    transform: translateX(-50%);
    width: 140%;
}
.home-hero-bg {
    position: absolute;
    top: 0; right: 0; left: 0;
    height: 100%;
    background: url(../img/bg-home-intro.jpg) no-repeat bottom center / cover;
    transition: 0.1s ease;
}
.home-hero .heading-1 {
    max-width: 888px;
    margin: 0 auto 16px;
}
.home-hero .text-base {
    max-width: 660px;
    margin: 0 auto;
}
.home-hero .section-btns ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;

    margin-top: 32px;
}
.home-hero .section-btns ul li {
    line-height: 0;
}
.home-hero-lottie {
    width: 100%;
    max-width: 1064px;
    padding: 0 16px;
    margin: 0 auto;
    position: absolute;
    top: calc(100% - 186px); left: 50%;
    transform: translateX(-50%) translateZ(0);
    will-change: transform, opacity;
}
.home-hero-lottie svg {
    transform: translateZ(0);
    will-change: transform;
    shape-rendering: geometricPrecision;
}
.home-hero-lottie path {
    shape-rendering: geometricPrecision;
    vector-effect: non-scaling-stroke;
    transform-box: fill-box;
    transform-origin: center;
}

.home-sticky-section {
    position: relative;
    z-index: 2;
    padding-bottom: 120px;
}
.home-sticky-section .grid-container > .heading-2 {
    max-width: 580px;
    margin: 0 auto 90px;
}
.home-sticky-section-hold {
    max-width: 1150px;
    margin: 0 auto;
}
.home-sticky-section-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.home-sticky-section-left {
    width: 48.6%;
    padding: 0 127px 16px 0;
    position: relative;
}
.home-sticky-section-left::after {
    content: '';
    width: 1px; height: calc(100% - 103px);
    background: url(../img/icon-sticky-line.svg) no-repeat center center / cover;
    position: absolute;
    top: 0; right: -6px; bottom: 0;
}
.home-sticky-section-right {
    width: 51.4%;
    padding: 0 0 0 127px;
}
.home-sticky-section-left-item {
    position: relative;
    min-height: 100vh;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.home-sticky-section-left-item::after {
    content: '';
    width: 106px; height: 1px;
     background: -webkit-gradient(linear, left top, right top, from(#000), to(#819BFF));
    background: -o-linear-gradient(left, #000 0%, #819BFF 100%);
    background: linear-gradient(90deg, #000 0%, #819BFF 100%);
    position: absolute;
    top: 50%; right: -114px;
    transform: translateY(-50%);
    opacity: 0;
    transition: 0.2s ease-in-out;
}
.home-sticky-section-left-item > span {
    display: inline-block;
    width: 9px; height: 9px;
    border: 1px solid #819BFF;
    border-radius: 50%;
    background: var(--black);
    -webkit-filter: drop-shadow(0px 0px 8px #4E68FF);
    filter: drop-shadow(0px 0px 8px #4E68FF);
    position: absolute;
    top: 50%; right: -137px;
    transform: translateY(-50%);
    z-index: 2;
}
.home-sticky-section-left-item > span::before {
    content: '';
    width: 16px; height: 16px;
    border-radius: 50%;
    background: #D9E0FF;
    -webkit-filter: drop-shadow(0px 0px 8px #4E68FF);
    filter: drop-shadow(0px 0px 8px #4E68FF);
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    opacity: 0;
    transition: 0.2s ease-in-out;
}
.home-sticky-section-left-item > span::after {
    content: '';
    width: 38px; height: 38px;
    border: 1px solid #819BFF;
    border-radius: 50%;
    background: #171F4B;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    transition: 0.2s ease-in-out;
}
.home-sticky-section-left-item.is-active::after,
.home-sticky-section-left-item.is-active > span::before,
.home-sticky-section-left-item.is-active > span::after {
    opacity: 1;
}
.home-sticky-section-left-item-box {
    border-radius: 16px;
    background: -o-radial-gradient(50% 50%, 105% 50%, #02062B 0%, rgba(2, 6, 43, 0.00) 100%), rgba(3, 0, 81, 0.89);
    background: radial-gradient(105% 50% at 50% 50%, #02062B 0%, rgba(2, 6, 43, 0.00) 100%), rgba(3, 0, 81, 0.89);
    padding: 24px;
    min-height: 321px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -ms-flex-line-pack: justify;
    align-content: space-between;
}
.home-sticky-section-left-item-box > div {
    width: 100%;
}
.home-sticky-section-left-item-icon {
    margin-bottom: 32px;
}
.home-sticky-section-left-item-icon img {
    width: 24px; height: 24px;
}
.home-sticky-section-left-item-icon span {
    display: inline-block;
    border-radius: 16px;
    background: var(--primary);
    padding: 13px;
}
.home-sticky-section-left-item-box .heading-3 {
    margin-bottom: 16px;
}
.home-sticky-section-right-sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 24px;
    min-height: 100vh;
}
.home-sticky-section-right-sticky::before {
    content: '';
    width: 7px; height: 50vh;
    background: url(../img/orn-sticky-progress.svg) no-repeat center center / cover;
    position: absolute;
    top: -14px; left: -125px;
    border-radius: 10px;
}
.home-sticky-section-right-item {
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    visibility: hidden;
    transition: 0.2s ease-in-out;
    width: 100%;
}
.home-sticky-section-right-item.is-active {
    opacity: 1;
    visibility: visible;
}

.home-logo-section {
    padding: 30px 0;
}
.home-logo-section .logo-infinite-owl {
  padding-top: 0;
}

.home-case-section {
    padding: 80px 0 40px;
}
.home-case-section-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    gap: 80px;
    padding-right: 80px;
    margin-bottom: 48px;
    white-space: nowrap;
    position: relative;
}
.home-case-section-title span {
    display: block;
    width: 100%; height: 1px;
    background: var(--white-20);
}
.home-case-section-title::after {
    content: '';
    width: 16px; height: 17px;
    background: url(../img/icon-arrow-down-white.svg) no-repeat center center / contain;
    position: absolute;
    top: 50%; right: 0;
    transform: translateY(-50%);
}

.case-list-item {
    margin-bottom: 24px;
}
.case-list-item a {
    display: block;
    border-radius: 16px;
    position: relative;
    overflow: hidden;
    color: var(--white);
}
.case-list-item a::before,
.case-list-item a::after {
    content: '';
    width: 100%; height: 100%;
    position: absolute;
    top: 0; left: 0;
    pointer-events: none;
    transition: 0.2s ease-in-out;
}
.case-list-item a::before {
    background: -o-radial-gradient(50% 50%, 105% 50%, rgba(3, 0, 97, 0.00) 48.06%, #000858 100%);
    background: radial-gradient(105% 50% at 50% 50%, rgba(3, 0, 97, 0.00) 48.06%, #000858 100%);
}
.case-list-item a::after {
    background: -o-radial-gradient(50% 50%, 105% 50%, rgba(3, 0, 97, 0.00) 48.06%, #140F94 100%);
    background: radial-gradient(105% 50% at 50% 50%, rgba(3, 0, 97, 0.00) 48.06%, #140F94 100%);
    opacity: 0;
}
.case-list-item a:hover::before {
    opacity: 0;
}
.case-list-item a:hover::after {
    opacity: 1;
}
.case-list-item-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -ms-flex-line-pack: justify;
    align-content: space-between;

    min-height: 369px;
    padding: 24px;
}
.case-list-item .heading-2 {
    margin-bottom: 12px;
}
.case-list-item-tags {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    gap: 4px 8px;
}
.case-list-item-tags strong {
    display: inline-block;
    font-weight: 300;
    position: relative;
    padding: 4px 4px 4px 15px;
}
.case-list-item-tags strong::before {
    content: '';
    width: 7px; height: 7px;
    background: var(--primary);
    border-radius: 50%;
    position: absolute;
    top: 48%; left: 0;
    transform: translateY(-50%);
}
.case-list-item-tags span {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 20px;
    border: 1px solid rgba(166, 186, 242, 0.40);
    color: var(--lblue);
}
.case-list-item-top {
    width: 100%;
    position: relative;
    z-index: 2;
}
.case-list-item-bottom {
    width: 100%;
    padding: 24px 0;
    position: relative;
    z-index: 2;
}
.case-list-item-bottom-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    gap: 80px;
}
.case-list-item-bottom-list > div {
    width: calc(33.333% - 54px);
    position: relative;
}
.case-list-item-bottom-list > div::after {
    content: '';
    width: 1px; height: 100%;
    background: var(--white-20);
    position: absolute;
    top: 0; right: -40px;
}
.case-list-item-bottom-list > div:nth-child(3n)::after {
    display: none;
}
.case-list-item-btn {
    position: absolute;
    top: 45px; right: 24px;
    line-height: 0;
    z-index: 2;
}
.case-list-item-img {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: -1;
}
.case-list-item-img::after {
    content: '';
    width: 100%; height: 100%;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(2, 7, 54, 0.77)), to(rgba(2, 7, 54, 0.77)));
    background: -o-linear-gradient(bottom, rgba(2, 7, 54, 0.77) 0%, rgba(2, 7, 54, 0.77) 100%);
    background: linear-gradient(0deg, rgba(2, 7, 54, 0.77) 0%, rgba(2, 7, 54, 0.77) 100%);
    position: absolute;
    top: 0; left: 0;
}
.home-case-section .section-btns {
    padding-top: 48px;
}


.home-accordion-section {
    padding: 120px 0 80px;
    background: -o-radial-gradient(50% 50%, 105% 50%, #02062B 0%, rgba(2, 6, 43, 0.00) 100%), #000;
    background: radial-gradient(105% 50% at 50% 50%, #02062B 0%, rgba(2, 6, 43, 0.00) 100%), #000;
    overflow: hidden;
}
.home-accordion-section .accordion-items {
    max-width: 1272px;
    margin: 0 auto;
}
.accordion-items .accordion-item {
    border-bottom: 1px solid transparent !important;
    background: transparent;
    transition: 0.2s ease-in-out;
    padding: 0 24px;
    width: calc(100% + 48px);
    margin-left: -24px;
}
.accordion-items .accordion-item.is-active {
    border-color: var(--primary) !important;
    background: -o-radial-gradient(50% 99.99%, 84.94% 100%, rgba(20, 15, 148, 0.30) 0%, rgba(0, 0, 0, 0.00) 100%);
    background: radial-gradient(84.94% 100% at 50% 99.99%, rgba(20, 15, 148, 0.30) 0%, rgba(0, 0, 0, 0.00) 100%);
}
.accordion-items .accordion-title {
    padding: 17px 72px 17px 0;
    border-bottom: 1px solid var(--white-20) !important;
    font-size: 24px;
    line-height: 1.4;
    letter-spacing: -0.72px;
    color: var(--white);
    background: transparent !important;
    transition: 0.2s ease-in-out;
}
.accordion-items .accordion-title:hover {
    border-color: var(--white) !important;
}
.accordion-items .accordion-item.is-active .accordion-title {
    border: none !important;
}
.accordion-items .accordion-item.is-active .accordion-title span::after {
    opacity: 0;
}
.accordion-items .accordion-title::before,
.accordion-items .accordion-title::after {
    display: none;
}
.accordion-items .accordion-title span {
    display: inline-block;
    position: relative;
    width: 36px; height: 36px;
    border: 1px solid var(--white-20);
    border-radius: 50%;
    position: absolute;
    top: 50%; right: 0;
    transform: translateY(-50%);
    transition: 0.2s ease-in-out;
}
.accordion-items .accordion-title span:hover {
    border-color: var(--white);
}
.accordion-items .accordion-title span::before,
.accordion-items .accordion-title span::after {
    content: '';
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    background: var(--white);
    transition: 0.2s ease-in-out;
}
.accordion-items .accordion-title span::before {
    width: 16px; height: 2px;
}
.accordion-items .accordion-title span::after {
    height: 16px; width: 2px;
}

.accordion-items .accordion-content {
    padding: 0 0 48px;
}

.home-fuel-section {
    padding: 120px 0;
}
.home-fuel-section-list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    gap: 24px;
    max-width: 1272px;
    margin: 0 auto;
}
.home-fuel-section-list ul li {
    width: calc(50% - 12px);
}
.home-fuel-section-box {
    border-radius: 16px;
    background: -o-radial-gradient(50% 50%, 105% 50%, #02062B 0%, rgba(2, 6, 43, 0.00) 100%), rgba(3, 0, 81, 0.89);
    background: radial-gradient(105% 50% at 50% 50%, #02062B 0%, rgba(2, 6, 43, 0.00) 100%), rgba(3, 0, 81, 0.89);
    padding: 24px;
    height: 100%;
}
.home-fuel-section-box-img {
    margin-bottom: 16px;
}
.home-fuel-section-box-img img {
    max-height: 199px;
}
.home-fuel-section-box .text-lg{
    margin-bottom: 8px;
}
.home-fuel-section-box .text-base {
    color: var(--white-60);
    max-width: 80%;
    margin: 0 auto;
}

.footer-book-slider {
    padding: 40px 0 80px;
}
.book-call-owl .item {
    font-family: var(--font-secondary);
    font-weight: 400;
    font-size: 180px;
    line-height: 1.2;
    letter-spacing: -9px;
    padding-right: 201px;
    white-space: nowrap;
}
.book-call-owl .item::after {
    content: '';
    width: 122px; height: 42px;
    background: url(../img/orn-book-a-call.svg) no-repeat left center / contain;
    position: absolute;
    top: 50%; right: 35px;
    transform: translateY(-50%);
}
.book-call-owl .item a {
    color: var(--white);
    cursor: none;
}

.footer-talk-section {
    padding-bottom: 120px;
}
.footer-talk-section-left {
    padding-right: 12px;
}
.footer-talk-section-img {
    padding-bottom: 90.456%;
    border-radius: 16px;
    overflow: hidden;
}
.footer-talk-section-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    padding: 0 24px 0 36px;
}
.footer-talk-section-right-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

    gap: 40px;
    margin-top: 48px;
}
.footer-talk-section-right-box .text-sm {
    color: var(--white-60);
}

.footer-trusted-section {
    padding: 120px 0 80px;
    border-top: 1px solid var(--white-10);
    overflow: hidden;
}
.footer-trusted-section .heading-2 {
    margin-bottom: 80px;
}
.trusted-testimonials-owl {
    padding: 0 16px;
}
.trusted-testimonials-owl .owl-stage-outer {
    overflow: visible;
}
.trusted-testimonials-owl .item {
    width: 546px;
    border-radius: 16px;
    border: 1px solid var(--white-20);
    padding: 32px 32px;
    transition: 0.2s ease-in-out;
}
.trusted-testimonials-owl .item:hover {
    border-color: var(--white-40);
}
.trusted-testimonials-owl .item .text-lg {
    margin-bottom: 8px;
}
.trusted-testimonials-owl .item > .text-base {
    color: var(--white-60);
}
.trusted-testimonials-owl-person {
    margin-top: 32px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.trusted-testimonials-owl-img {
    width: 59px; height: 59px;
    min-width: 59px; min-height: 59px;
    border-radius: 50%;
    overflow: hidden;
    margin-right: 16px;
}
.trusted-testimonials-owl-person .text-sm {
    margin-top: 4px;
    color: var(--gray);
    opacity: 0.6;
}
.logo-infinite-owl {
    padding-top: 80px;
}
.logo-infinite-owl .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    gap: 260px;
}
.logo-infinite-owl .item img {
    width: auto !important;
    max-height: 50px;
    max-width: 212px;
}

.main-preloader {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 99999999999;
    overflow: hidden;
}
.main-preloader-bg {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: var(--black);
}
.main-preloader-hold {
    padding: 48px;
    height: 100vh;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.main-preloader-hold img {
    width: 100%;
}
.main-preloader-wave-lines {
    width: 100%;
    position: relative;
}
.main-preloader-wave-lines-cover {
    position: absolute;
    top: 0; right: 0; bottom: 0;
    width: 100%;
    background: var(--black);
    z-index: 3;
    font-size: 16px;
    line-height: 1.4375;
    letter-spacing: -0.8px;
    color: var(--white);
    white-space: nowrap;
}
.main-preloader-wave-lines-cover-texthold {
    position: absolute;
    top: 50%; left: 0;
    transform: translateY(-50%);
    padding-left: 80px;
}
.main-preloader-grad-img {
    position: absolute !important;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    opacity: 0;
    transition: 0.6s ease-in-out;
}

.text-page-hero-section {
    padding: 218px 0 120px;
    position: relative;
    background: url(../img/bg-text-page.jpg) no-repeat top center / 100% auto;
}
.text-page-hero-section .entry {
    padding: 80px 0 0;
}

.entry > :last-child {
    margin-bottom: 0 !important;
}
.entry > :first-child {
    margin-top: 0 !important;
}
.entry h1,
.entry h2,
.entry h3,
.entry h4,
.entry h4,
.entry h6 {
    font-family: var(--font-secondary);
    font-weight: 400;
    line-height: 1.2;
    margin-bottom: 24px;
}
.entry h1 {
    font-size: 64px; 
    letter-spacing: -3.2px;
}
.entry h2 {
    font-size: 48px;
    letter-spacing: -2.4px;
}
.entry h3 {
    font-size: 32px;
    letter-spacing: -0.64px;
}
.entry h4 {
    font-size: 24px;
    letter-spacing: -0.72px; 
}
.entry h5 {
    font-size: 20px;
    letter-spacing: -0.54px;
}
.entry h6 {
    font-size: 18px;
    letter-spacing: -0.54px;
}
.entry p {
   margin-bottom: 24px;
}
.entry p + h1, .entry p + h2, .entry p + h3, .entry p + h4, .entry p + h5, .entry p + h6,
.entry ul + h1, .entry ul + h2, .entry ul + h3, .entry ul + h4, .entry ul + h5, .entry ul + h6,
.entry ol + h1, .entry ol + h2, .entry ol + h3, .entry ol + h4, .entry ol + h5, .entry ol + h6,
.entry table + h1, .entry table + h2, .entry table + h3, .entry table + h4, .entry table + h5, .entry table + h6 {
    margin-top: 48px;
}
.entry a {
    color: var(--white);
    transition: 0.2s ease-in-out;
    text-decoration: underline;
}
.entry a:hover {
    color: var(--white);
    opacity: 0.7;
}

.entry ul,
.entry ol {
    margin-top: 24px;
    margin-left: 0;
}
.entry > ul,
.entry > ol {
    margin-bottom: 24px;
}
.entry ul li,
.entry ol li  {
    position: relative;
    margin-bottom: 24px;
    padding-left: 27px;
}
.entry ol {
    counter-reset: item;
}
.entry ul li:before  {
    content: '';
    position: absolute;
    top: 9px;
    left: 10px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--primary);
}
.entry ol > li:before {
    content: counters(item, ".") ".";
    counter-increment: item;
    position: absolute;
    top: 0;
    left: 0;
}
.entry ol ol > li {
    padding-left: 37px;
}
.entry .table-scroll {
    margin-bottom: 48px;
}
.entry table {
    width: 100%;
    min-width: 400px;
    color: #353535;
}
.entry table th,
.entry table td {
    font-size: 15px;
    line-height: 1.4;
    letter-spacing: -0.45px;
    font-weight: 300;
    text-align: left;
    color: var(--white);
    padding: 16px 24px;
    border-bottom: 1px solid var(--primary);
    border-right: 1px solid var(--primary);
}
.entry table th:last-child,
.entry table td:last-child {
    border-right: none;
}
.entry table tbody tr {
    background-color: transparent !important;
}
.entry table tbody tr:nth-child(odd) {
    background-color: #f3f3f3;
}
.entry table tbody, table tfoot, table thead {
    border: none;
    background-color: transparent;
}
.entry table tr td:first-child {
    font-weight: 500;
}
.entry table tr td:last-child {
    border-right: none;
}
.entry table p {
    margin-bottom: 0;
}
.entry strong {
    font-weight: 500;
}
.entry blockquote {
    font-size: 20px;
    line-height: 28px;
    padding-left: 40px;
    border-left: 4px solid #4454a0;
    margin-bottom: 70px;
    color: #353535;
}
.entry blockquote span {
    display: block;
    padding-top: 54px;
    font-size: 14px;
    font-weight: 500;
    line-height: 22px;
    color: #353535;
}

.contact-hero-section {
    padding: 218px 0 104px;
    position: relative;
}
.contact-hero-section .home-hero-bg-hold {
    top: -10vh;
}
.contact-hero-section .home-hero-bg {
    background: url(../img/bg-contact-page.jpg) no-repeat top center / 100% auto;
    height: 100%;
}
.contact-hero-section .home-hero-bg-box {
    width: 120%;
}
.contact-hero-section-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

    gap: 24px;
    margin-bottom: 90px;
}

.contact-hero-section-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

    gap: 24px;
    padding: 32px 0;
}

.contact-hero-section-content {
    padding: 48px 0 0;
    position: relative;
}
.contact-hero-section-content::before {
    content: '';
    width: 100%; height: 1px;
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.2)), color-stop(50%, rgba(255, 255, 255, 0.2)), to(rgba(255, 255, 255, 0)));
    background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0) 100%);
    position: absolute;
    top: 0; left: 0;
}

.case-section {
    padding: 168px 0 120px;
    position: relative;
}
.case-section .home-hero-bg-hold {
    top: -10vh;
}
.case-section .home-hero-bg {
    background: url(../img/bg-projects.png) no-repeat top right / contain;
    height: 100%;
}
.case-section .home-hero-bg-box {
    width: 120%;
}
.case-section-titlebox {
    padding-bottom: 80px;
    border-bottom: 1px solid var(--white-20);
    margin-bottom: 48px;
}
.case-section-filter {
    margin-bottom: 48px;
}
.case-section-filter ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;

    gap: 8px;
}
.case-section-filter ul li {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    border: 1px solid rgba(166, 186, 242, 0.40);
    color: var(--lblue);
    cursor: pointer;
    transition: 0.2s ease-in-out;
}
.case-section-filter ul li:hover {
    border-color: var(--white);
}
.case-section-filter ul li.is-active {
    background: var(--primary);
    border-color: var(--primary);
    color: var(--white);
}

.projects-single-intro {
    min-height: calc(100vh + 20px);
    position: relative;
    padding: 126px 160px 80px 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -ms-flex-line-pack: end;
    align-content: end;
}
.projects-single-intro-bg {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: -1;
    overflow: hidden;
}
.projects-single-intro-img {
    width: 100%; height: 100%;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%) scale(1.4);
}
.projects-single-intro-bg::after {
    content: '';
    width: 100%; height: 100%;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(2, 7, 54, 0.80)), to(rgba(2, 7, 54, 0.80)));
    background: -o-linear-gradient(bottom, rgba(2, 7, 54, 0.80) 0%, rgba(2, 7, 54, 0.80) 100%);
    background: linear-gradient(0deg, rgba(2, 7, 54, 0.80) 0%, rgba(2, 7, 54, 0.80) 100%);
    position: absolute;
    top: 0; left: 0;
}
.projects-single-intro-top {
    margin-bottom: 24px;
}
.projects-single-intro-top span {
    display: inline-block;
    margin-right: 24px;
    color: var(--white-40);
}
.projects-single-intro-tags {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    gap: 4px;
    margin-top: 24px;
}
.projects-single-intro-tags span {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 20px;
    border: 1px solid rgba(166, 186, 242, 0.40);
    color: var(--lblue);
    font-size: 15px;
    line-height: 1.4;
    letter-spacing: -0.45px;
}
.projects-single-intro-down {
    position: absolute;
    bottom: 80px; right: 48px;
}
.scroll-down,
.scroll-down:focus,
.scroll-down:active {
    display: inline-block;
    width: 64px; height: 64px;
    border: 1px solid var(--white-20);
    border-radius: 50%;
    background: url(../img/icon-arrow-down-white.svg) no-repeat center center / 16px;
    transition: 0.2s ease-in-out;
}
.scroll-down:hover {
    border-color: var(--white);
}

.projects-single-challange {
    padding: 120px 0;
    background: #140F94;
    border-radius: 24px 24px 0px 0px;
    margin-top: -20px;
}
.projects-single-challange-left {
    padding-right: 40px;
}
.projects-single-challange-left .text-base {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    gap: 24px;
    margin-top: 40px;
}
.projects-single-challange-left .text-base span {
    color: var(--white-40);
}
.projects-single-challange-left .text-base img {
    max-height: 40px;
}

.projects-single-imgfull {
    padding-bottom: 45%;
    min-height: 648px;
}

.projects-single-min {
    min-height: 510px;
    padding: 40px 0;
}

.projects-single-boximg-box {
    padding-bottom: 37.278%;
    overflow: hidden;
    border-radius: 16px;
}

.projects-single-result-right ul li:not(:last-child) {
    padding-bottom: 24px;
    border-bottom: 1px solid var(--white-20);
    margin-bottom: 24px;
}

.projects-single-key {
    padding: 40px 0 120px;
}
.projects-single-key .heading-3 {
    margin-bottom: 40px;
}
.projects-single-key-list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    padding: 0 8px;
    border-top: 1px solid var(--white-20);
    border-bottom: 1px solid var(--white-20);
}
.projects-single-key-list ul li {
    width: 33.333%;
    padding: 32px 24px 24px;
    min-height: 443px;
    border-right: 1px solid var(--white-20);

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -ms-flex-line-pack: justify;
    align-content: space-between;
}
.projects-single-key-list ul li > div {
    width: 100%;
}
.projects-single-key-list ul li:nth-child(3n) {
    border-right: none;
}
.projects-single-key-list-title {
    font-family: var(--font-secondary);
    font-weight: 400;
    font-size: 48px;
    line-height: 120%;
    letter-spacing: -2.4px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--white-20);
    margin-bottom: 8px;
}

.projects-single-next a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    position: relative;
    padding: 48px 0;
    min-height: 700px;
    color: var(--white);
    cursor: none;
}
.projects-single-next a .heading-3 {
    margin-bottom: 24px;
}

.projects-single-book + .footer-book-section {
    padding-top: 120px;
}

.four-o-four {
    min-height: 100vh;
    padding: 126px 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    background: -webkit-gradient(linear, left top, left bottom, color-stop(-12.19%, rgba(3, 0, 77, 0.60)), to(#000)), url(../img/404.png) no-repeat center center / cover;
    background: -o-linear-gradient(top, rgba(3, 0, 77, 0.60) -12.19%, #000 100%), url(../img/404.png) no-repeat center center / cover;
    background: linear-gradient(180deg, rgba(3, 0, 77, 0.60) -12.19%, #000 100%), url(../img/404.png) no-repeat center center / cover;
}
.four-o-four .grid-container > div:not(:last-child) {
    margin-bottom: 32px;
}
.four-o-four .text-lg {
    max-width: 405px;
    margin-left: auto;
    margin-right: auto;
}

.from-style .form-element {
    margin-bottom: 48px;
    position: relative;
    transition: 0.2s ease-in-out;
}
.from-style .form-element-label {
    font-size: 24px;
    font-style: normal;
    line-height: 1.4;
    letter-spacing: -0.72px;
    position: absolute;
    top: 18px; left: 0;
    pointer-events: none;
    transition: 0.3s ease;
    color: var(--white);
    opacity: 0.6;
}
.from-style .form-element-label.is-active {
    top: -8px;
    font-size: 18px;
}
.from-style .form-element > label {
    display: block;
    font-size: 24px;
    font-style: normal;
    line-height: 1.4;
    letter-spacing: -0.72px;
    margin: 0 0 24px;
    color: var(--white);
}
.from-style .form-element input,
.from-style .form-element input:focus {
    box-shadow: none;
    background: transparent;
    outline: none;
    border: none;
    border-bottom: 1px solid var(--white-60);
    height: 74px;
    padding: 24px 0;
    font-size: 24px;
    line-height: 1.4;
    letter-spacing: -0.72px;
    color: var(--white);
    transition: 0.2s ease-in-out;
}
.from-style .form-element input:focus {
    border-color: var(--white);
}
.from-style .form-element input::placeholder {
    color: var(--white-60);
    opacity: 1;
}
.from-style .form-element input::-webkit-input-placeholder {
    opacity: 1;
}
.from-style .form-element input::-moz-placeholder {
    color: var(--white-60);
    opacity: 1;
}
.from-style .form-element input:-ms-input-placeholder {
    color: var(--white-60);
    opacity: 1;
}
.from-style .form-element input:-moz-placeholder {
    color: var(--white-60);
    opacity: 1;
}
.from-style .form-element-multi-scheckbox .wpcf7-checkbox  {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    gap: 12px 8px;
}
.from-style .form-element-multi-scheckbox label input {
    display: none !important;
}
.from-style .form-element-multi-scheckbox .wpcf7-list-item {
    margin: 0 !important;
}
.from-style .form-element-multi-scheckbox .wpcf7-list-item-label {
    display: inline-block;
    font-size: 24px;
    font-style: normal;
    line-height: 1.4;
    letter-spacing: -0.72px;
    color: var(--white);
    border: 1px solid var(--white);
    transition: 0.2s ease-in-out;
    padding: 24px 40px;
    border-radius: 48px;
    cursor: pointer;
}
.from-style .form-element-multi-scheckbox .wpcf7-list-item-label:hover {
    border-color: var(--white);
    color: var(--black);
    background: var(--white);
}
.from-style .form-element-multi-scheckbox input:checked + .wpcf7-list-item-label {
    border-color: var(--primary) !important;
    color: var(--white) !important;
    background: var(--primary) !important;
}
.from-style .form-element-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    gap: 48px;
}
.from-style .form-element-btn button,
.from-style .form-element-btn button:focus,
.from-style .form-element-btn button:active {
    padding: 24px 40px !important;
    font-size: 24px;
    font-style: normal;
    line-height: 1.4;
    letter-spacing: -0.72px;
    transition: 0.3s ease !important;
    min-width: 190px;
}
.from-style .form-element-btn p {
    font-size: 18px;
    font-style: normal;
    line-height: 1.4;
    letter-spacing: -0.54px;
    max-width: 304px;
}
.from-style .form-element-btn p a {
    color: #A6BAF2;
    text-decoration: underline;
}
.from-style .form-element-btn p a:hover {
    color: var(--white);
}
.projects-single-next-box {
    padding: 40px;
}

.contact-hero-section-content-sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 40px;
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing,
div.wpcf7-mail-sent-ng {
   border: none !important;
   float: left !important;
   margin: 10px 0 !important;
   padding: 0 !important;
   color: #df0631 !important;
}
div.wpcf7-mail-sent-ok {
   float: left !important;
   border: none !important;
   padding: 0 !important;
   margin: 10px 0 !important;
}
/* span.wpcf7-not-valid-tip {
    display: none !important;
} */
span.wpcf7-list-item {
   margin: 0 !important;
}
.form-element input.wpcf7-not-valid,
.form-element input.wpcf7-not-valid:focus {
   border-color: #df0631;
}
.wpcf7 form .wpcf7-response-output {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}
.wpcf7-not-valid-tip {
    margin-top: 24px;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: -0.45px;
    color: rgba(223, 6, 49, 1) !important;
}

.contact-form {
    position: relative;
}
.contact-form-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;

    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    background: var(--black);
    z-index: 10;
    transition: 0.4s ease;
    opacity: 0;
    visibility: hidden;
}
.contact-form.is-active .contact-form-form {
    opacity: 1;
    visibility: visible;
}
.contact-form-form .heading-1 {
    font-size: 84px;
}

.submitting button,
.submitting input[type="button"] {
    pointer-events: none;
}
.submitting {
    position: relative;
}
@-webkit-keyframes formSpinner {
    to {-webkit-transform: rotate(360deg);transform: rotate(360deg);}
}
@keyframes formSpinner {
    to {-webkit-transform: rotate(360deg);transform: rotate(360deg);}
}
.submitting .form-element {
    opacity: 0.2;
    pointer-events: none;
}
.submitting .form-element-btn button {
    background: var(--white);
    pointer-events: none;
    color: var(--white);
}
.submitting .form-element-btn button span {
    opacity: 1;
    visibility: visible;
}
.form-element-btn button span {
    display: inline-block;
    width: 32px; height: 32px;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    visibility: hidden;
    border-radius: 50%;
    border: 3px solid #A6BAF2;
    transition: 0.2s ease-in-out;
}
.form-element-btn button span::before {
    content: '';
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 32px;
    height: 32px;
    margin-top: -16px;
    margin-left: -16px;
    border-radius: 50%;
    border-top: 3px solid var(--primary);
    border-right: 3px solid transparent;
    -webkit-animation: formSpinner .6s linear infinite;
    animation: formSpinner .6s linear infinite;
    z-index: 12;
    opacity: 0;
}
.submitting .form-element-btn button span::before {
    opacity: 1;
}

.case-section-grid {
    max-width: 1272px;
    margin: 0 auto;
}
.case-list-item-v2:not(:last-child) {
    margin-bottom: 64px;
}
.case-list-item-v2 a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    gap: 24px;
    color: var(--white);
}
.case-list-item-v2 a > div {
    width: calc(50% - 12px);
}
.case-list-item-v2:nth-child(even) a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.case-list-item-v2-imgbox {
    padding-bottom: 34.375%;
    border-radius: 16px;
    overflow: hidden;
}
.case-list-item-v2-textbox-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

    gap: 24px;
}
.case-list-item-v2-textbox-top img {
    max-height: 40px;
}
.case-list-item-v2-textbox-mid {
    border-top: 1px solid rgba(255, 255, 255, 0.20);
    border-bottom: 1px solid rgba(255, 255, 255, 0.20); 
    padding: 24px 0;
    margin: 24px 0;

    -webkit-box-flex: 1;
    -ms-flex: 1 1 0px;
    flex: 1 1 0; 
}
.case-list-item-v2-textbox-mid > div:not(:last-child) {
    margin-bottom: 16px;
}
.case-list-item-v2-textbox-bot {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

    gap: 24px;
}
.case-list-item-v2-textbox > div {
    width: 100%;
}
.case-list-item-v2-btn {
    line-height: 0;
}
.case-list-item-v2-textbox-box {
    width: 100%;
}
.case-list-item-v2-textbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.home-sticky-section-v2-hold {
    min-height: 400vh;
}
.home-sticky-section-v2-sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    height: 100vh;
    padding: 90px 0;
    background: -o-radial-gradient(50% 50%, 105% 50%, #02062B 0%, rgba(2, 6, 43, 0.00) 100%);
    background: radial-gradient(105% 50% at 50% 50%, #02062B 0%, rgba(2, 6, 43, 0.00) 100%);
}
.home-sticky-section-v2-sticky > div {
    height: 100%;
}
.home-sticky-section-v2-sticky-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    height: 100%;
    max-width: 1272px;
    margin: 0 auto;
}
.home-sticky-section-v2-sticky-left {
    width: 50%;
    padding-right: 11%;
    height: 100%;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.home-sticky-section-v2-sticky-right {
    width: 50%;
    padding-left: 11%;
    height: 100%;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.home-sticky-section-v2-sticky-progress {
    position: absolute;
    top: 50%; left: calc(50% - 11px);
    transform: translate(-50%, -50%);
    width: 38px; height: 60%;
    min-height: 430px;
}
.home-sticky-section-v2-sticky-progress::before {
    content: '';
    width: 4px; height: 80%;
    background: linear-gradient(to top,black 0%,#2E59FC 50.4%,#010315 100%);
    opacity: 0.2;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
}
.home-sticky-section-v2-sticky-progress > span {
    display: inline-block;
    width: 6px; height: 0;
    background: var(--primary);
    border-radius: 8px;
    position: absolute;
    top: 0; left: 50%;
    transform: translateX(-50%);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.home-sticky-section-v2-sticky-progress > span span {
    display: inline-block;
    width: 38px; height: 38px;
    border-radius: 50px;
    border: 1px solid #819BFF;
    border-radius: 50%;
    -webkit-filter: drop-shadow(0px 0px 16px #4E68FF);
    filter: drop-shadow(0px 0px 16px #4E68FF);
    position: absolute;
    top: 100%; left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    transition: 0.2s ease;
    background: var(--black);
}
.home-sticky-section-v2-sticky-progress > span span::before {
    content: '';
    width: 16px; height: 16px;
    border-radius: 50%;
    background: #D9E0FF;
    -webkit-filter: drop-shadow(0px 0px 8px #4E68FF);
    filter: drop-shadow(0px 0px 8px #4E68FF);
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
}
.home-sticky-section-v2-sticky-progress span.is-active span {
    opacity: 1;
}
.home-sticky-section-v2-sticky-title.heading-2 {
    margin-bottom: 8px;
}
.home-sticky-section-v2-sticky-left ul {
    width: 100%;
}
.home-sticky-section-v2-sticky-left ul li {
    opacity: 0.2;
}
.home-sticky-section-v2-sticky-left ul li:not(:last-child) {
    margin-bottom: 48px;
}
.home-sticky-section-v2-sticky-btn {
    line-height: 0;
    margin-top: 24px;
}
.home-sticky-section-v2-sticky-imgs {
    position: relative;
    width: 100%;
    padding-bottom: 100%;
}
.home-sticky-section-v2-sticky-img {
    width: 100%; height: 100%;
    position: absolute;
    top: 0; left: 0;
    opacity: 0;
}
.home-sticky-section-v2-sticky-img.is-active {
    opacity: 0.05;
}


/* Animations */
.fade-up {
    transform: translateY(30px);
    opacity: 0;
    transition: transform .7s cubic-bezier(0.5, 1, 0.89, 1), opacity 0.6s cubic-bezier(0.5, 1, 0.89, 1);
}
.fade-up.in-view {
    transform: translateY(0px);
    opacity: 1;
}
.fade-up-later {
    transform: translateY(30px);
    opacity: 0;
    transition: transform .7s 0.25s cubic-bezier(0.5, 1, 0.89, 1), opacity 0.6s 0.25s cubic-bezier(0.5, 1, 0.89, 1);
}
.fade-up-later.in-view {
    transform: translateY(0px);
    opacity: 1;
}
.fade-up-late {
    transform: translateY(30px);
    opacity: 0;
    transition: transform .7s 0.5s cubic-bezier(0.5, 1, 0.89, 1), opacity 0.6s 0.5s cubic-bezier(0.5, 1, 0.89, 1);
}
.fade-up-late.in-view {
    transform: translateY(0px);
    opacity: 1;
}

.fade-in {
    opacity: 0;
    transition: opacity 0.6s cubic-bezier(0.5, 1, 0.89, 1);
}
.fade-in.in-view {
    opacity: 1;
}

/* Media */
@media only screen and (min-width: 1024px) {
   .mobile-menu {
        display: none !important;
    }
} /* end of min-width 1024 */

@media only screen and (min-width: 1024px) and (max-height: 740px) {
    .heading-2.home-sticky-section-v2-sticky-title {
        font-size: 6vh;
    }
    .text-lg.home-sticky-section-v2-sticky-text {
        font-size: 2.8vh;
    }
    .home-sticky-section-v2-sticky-left ul li:not(:last-child) {
        margin-bottom: 32px;
    }
}

@media only screen and (max-width: 1239px) {
    .case-list-item-bottom-list.text-lg {
        font-size: 20px;
    }
    .title-display {
        font-size: 140px;
    }
    .home-sticky-section-v2-sticky-left {
        padding-right: 48px;
    }
    .home-sticky-section-v2-sticky-right {
        padding-left: 48px;
    }
    .from-style .form-element-btn button,
    .from-style .form-element-btn button:focus,
    .from-style .form-element-btn button:active {
        padding: 24px 24px !important;
    }
} /* end of max-width 1239 */

@media only screen and (max-width: 1139px) {
    .case-list-item-bottom-list.text-lg {
        font-size: 18px;
    }
} /* end of max-width 1139 */

@media only screen and (max-width: 1023px) {
    .grid-container {
        padding: 0 16px;
    }
    .hamburger {
        display: inline-block;
    }
    .dekstop-header-hold {
        display: none;
    }
    header {
        position: fixed;
    }
    header::after {
        display: none;
    }
    header .header-nav {
        display: none;
    }
    header.is-active .header-box {
        border-radius: 28px;
        background: var(--primary);
    }
    .header-box {
        padding: 8px 24px;
        border-radius: 48px;
        background: rgba(84, 84, 84, 0.25);
        -webkit-backdrop-filter: blur(50px);
        backdrop-filter: blur(50px);
        transition: 0.2s ease-in-out;
    }
    .header-box .header-logo {
        padding-right: 23px;
    }

    header.is-active .btn-secondary,
    header.is-active .btn-secondary:focus,
    header.is-active .btn-secondary:active {
        background: var(--white) !important;
        color: var(--black) !important;
    }
    header.is-active .btn-secondary * {
        color: var(--black) !important;
    }
    header.is-active .btn-secondary .btn-dot::before {
        display: none;
    }
    header.is-active .btn-secondary .btn-dot::after {
        background: var(--primary) !important;
    }

    .footer-content {
        display: block;
    }
    .footer-content-left {
        text-align: center;
        margin-bottom: 48px;
    }
    .logo-infinite-owl .item {
        gap: 130px;
    }
    .book-call-owl .item {
        font-size: 100px;
    }
    .footer-talk-section-left {
        padding-right: 0;
        margin-bottom: 24px;
    }
    .footer-talk-section-right {
        padding: 0;
    }
    .footer-talk-section {
        padding-bottom: 40px;
    }
    .custom-pointer {
        width: 160px;
        height: 160px;
    }
    .home-fuel-section {
        padding: 80px 0;
    }
    .home-logo-section {
        padding: 80px 0;
    }
    .home-accordion-section {
        padding: 80px 0 54px;
    }
    .home-case-section-title span,
    .case-list-item a::before,
    .case-list-item a::after,
    .case-list-item-img::after {
        display: none;
    }
    .case-list-item-img {
        width: 100%;
        position: relative;
        padding-bottom: 48.6%;
        border-radius: 16px;
        overflow: hidden;
        margin-bottom: 12px;
        z-index: 2;
    }
    .case-list-item-box {
        border-radius: 16px;
        background: -o-radial-gradient(50% 50%, 105% 50%, rgba(3, 0, 97, 0.00) 48.06%, #000858 100%), -o-linear-gradient(328deg, rgba(2, 7, 54, 0.60) 0.89%, #020736 69.14%), #020736;
        background: radial-gradient(105% 50% at 50% 50%, rgba(3, 0, 97, 0.00) 48.06%, #000858 100%), linear-gradient(122deg, rgba(2, 7, 54, 0.60) 0.89%, #020736 69.14%), #020736;
        background-blend-mode: normal, normal, multiply, normal;
        min-height: 1px;
    }
    .case-list-item-btn {
        position: relative;
        width: 100%;
        top: 0; right: 0;
    }
    .case-list-item-btn > span {
        width: 100%;
        padding-left: 16px !important;
    }
    .case-list-item-tags strong {
        display: block;
        width: 100%;
    }
    .case-list-item-bottom-list {
        display: block;
    }
    .case-list-item-bottom-list > div {
        width: 100%;
    }
    .case-list-item-bottom-list > div::after {
        display: none;
    }
    .case-list-item-bottom-list > div:not(:last-child) {
        padding-bottom: 12px;
        border-bottom: 1px solid var(--white-20);
        margin-bottom: 12px;
    }
    .case-list-item-bottom {
        padding-bottom: 16px;
    }
    .case-list-item {
        margin-bottom: 16px;
    }
    .text-lg-md {
        font-size: 20px;
        letter-spacing: -0.6px;
    }
    .text-lg-base {
        font-size: 18px;
        letter-spacing: -0.54px;
    }
    .home-hero {
        padding: 126px 0 0;
        min-height: 1px;
        margin-bottom: 0;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(12.69%, rgba(3, 0, 77, 0.60)), to(#000));
        background: -o-linear-gradient(top, rgba(3, 0, 77, 0.60) 12.69%, #000 100%);
        background: linear-gradient(180deg, rgba(3, 0, 77, 0.60) 12.69%, #000 100%);
    }
    .home-hero-bg-hold {
        display: none;
    }
    .home-hero-content {
        padding-bottom: 24px;
    }
    .home-hero-lottie {
        top: 0;
        position: relative;
        padding-bottom: 85%;
        margin-bottom: -30%;
    }
    .home-hero-lottie > div {
        width: 100%; height: 100%;
        position: absolute;
        top: 0; left: 0;
    }
    .home-sticky-section {
        padding-bottom: 48px;
    }
    .home-sticky-section .grid-container > .heading-2 {
        margin-bottom: 0;
    }
    .home-sticky-section-mobile-items,
    .home-sticky-section-mobile-items-box {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    .home-sticky-section-mobile-item {
        min-width: calc(100vw - 64px);
        padding: 124px 16px 0;
        margin-right: 48px;
        transition: 0.2s ease-in-out;
        opacity: 0.2;
    }
    .home-sticky-section-mobile-item.is-active {
        opacity: 1;
    }
    .home-sticky-section-mobile-item:last-child {
        margin-right: 128px;
    }
    .home-sticky-section-mobile-item-img {
        height: 323px;
        margin-bottom: 102px;
    }
    .home-sticky-section-mobile-item-img img {
        max-height: 100%;
    }
    .home-sticky-section-mobile-item .heading-3 {
        max-width: 260px;
    }
    .home-sticky-section-mobile-item .text-lg-base {
        margin-top: 16px;
    }
    .home-sticky-section-mobile {
        position: relative;
        overflow: hidden;
    }
    .home-sticky-section-mobile-dots-hold {
        height: 447px; width: 100%;   
        position: absolute;
        top: 0; left: -16px;
    }
    .home-sticky-section-mobile-dots-box {
        position: absolute !important;
        top:calc(100% + 32px); left: 0; right: 0;
        width: 100vw;
    }
    .home-sticky-section-mobile-dots-box-bar {
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        width: 0%;
        height: 6px;
        background: url(../img/orn-sticky-progress-mobile-bar.png) no-repeat center right / cover;
        z-index: 1;
        transition: width 0.1s ease-out;
    }
    .home-sticky-section-mobile-dots {
        position: relative;
        top: calc(100% + 16px);
        left: 0; right: 0;
        height: 38px;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;

        -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
        justify-content: space-evenly;

    }
    .home-sticky-section-mobile-dots::after {
        content: '';
        width: 100%; height: 1px;
        background: url(../img/orn-sticky-progress-mobile.png) no-repeat center center / cover;
        position: absolute;
        top: 50%; left: 0;
        transform: translateY(-50%);
    }

    .home-sticky-section-mobile-dot {
        display: inline-block;
        width: 9px; height: 9px;
        border: 1px solid #819BFF;
        border-radius: 50%;
        background: var(--black);
        -webkit-filter: drop-shadow(0px 0px 8px #4E68FF);
        filter: drop-shadow(0px 0px 8px #4E68FF);
        position: relative;
        z-index: 2;
        will-change: transform, border-radius;
    }
    .home-sticky-section-mobile-dot::before {
        content: '';
        width: 16px; height: 16px;
        border-radius: 50%;
        background: #D9E0FF;
        -webkit-filter: drop-shadow(0px 0px 8px #4E68FF);
        filter: drop-shadow(0px 0px 8px #4E68FF);
        position: absolute;
        top: 50%; left: 50%;
        transform: translate(-50%, -50%);
        z-index: 2;
        opacity: 0;
        transition: 0.2s ease-in-out;
        will-change: transform, border-radius;
    }
    .home-sticky-section-mobile-dot.is-passed {
        background: #5072FC;
    }
    .home-sticky-section-mobile-dot::after {
        content: '';
        width: 38px; height: 38px;
        border: 1px solid #819BFF;
        border-radius: 50%;
        background: #171F4B;
        position: absolute;
        top: 50%; left: 50%;
        transform: translate(-50%, -50%);
        opacity: 0;
        transition: 0.2s ease-in-out;
        z-index: 1;
        will-change: transform, border-radius;
    }
    .home-sticky-section-mobile-dot.is-active::before,
    .home-sticky-section-mobile-dot.is-active::after {
        opacity: 1;
    }
    .btn-main.btn-has-dot, .btn-main.btn-has-dot:focus, .btn-main.btn-has-dot:active {
        padding: 19px 30px 19px 45px;
    }
    .btn-main, .btn-main:focus, .btn-main:active {
        padding: 19px 32px;
    }
    .title-display {
        font-size: 100px;
    }
    .text-page-hero-section {
        padding: 128px 0 80px;
    }

     .case-section {
        padding-bottom: 80px;
    }
    .projects-single-intro {
        padding: 126px 0 40px 0;
        text-align: center;
    }
    .projects-single-intro-tags {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;

        margin-top: 16px;
    }
    .projects-single-intro-down {
        position: relative;
        bottom: 0; right: 0;
        margin-top: 32px;
    }
    .projects-single-intro-top {
        margin-bottom: 16px;
    }
    .projects-single-challange {
        padding: 80px 0;
        border-radius: 0;
    }
    .projects-single-challange-left {
        padding-right: 0;
        margin-bottom: 40px;
    }
    .projects-single-book + .footer-book-section {
        padding-top: 80px;
    }
    .projects-single-min {
        min-height: 500px;
        padding: 48px 0;
    }
    .projects-single-boximg-box {
        padding-bottom: 50.278%;
    }
    .projects-single-key-list ul li {
        width: 100%;
        padding: 24px 0;
        min-height: 300px;
        border-right: none;
    }
    .projects-single-key-list ul li:not(:last-child) {
        border-bottom: 1px solid var(--white-20);
    }
    .projects-single-key-list-title {
        padding-bottom: 12px;
        margin-bottom: 12px;
    }

    .projects-single-next a {
        display: block;
        padding: 16px 0;
        min-height: 625px;
        cursor: pointer;
        position: relative;
    }
    .projects-single-next a .case-list-item-btn {
        position: absolute;
        bottom: 40px; right: 16px; left: 16px; top: auto;
        width: auto;
    }
    .projects-single-next a .projects-single-intro-tags {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;

        margin-top: 24px;
    }
    .projects-single-next-box {
        padding: 40px 0 100px;
    }

    .custom-pointer,
    .custom-pointer-grad {
        display: none;
    }

    .contact-hero-section {
        padding: 126px 0 80px;
        background: url(../img/bg-contact-page-mobile.png) no-repeat top center / contain;
    }
    .contact-hero-section-content .heading-3 {
        margin-bottom: 48px;
    }
    .from-style .form-element > label {
        font-size: 18px;
        letter-spacing: -0.54px;
    }
    .from-style .form-element-multi-scheckbox .wpcf7-list-item-label {
        font-size: 18px;
        letter-spacing: -0.54px;
        padding: 16px 32px;
    }
    .from-style .form-element {
        margin-bottom: 40px;
    }
    .from-style .form-element input,
    .from-style .form-element input:focus {
        font-size: 18px;
        letter-spacing: -0.54px;
    }
    .from-style .form-element-label {
        font-size: 18px;
        letter-spacing: -0.54px;
        top: 24px;
    }
    .from-style .form-element-btn button,
    .from-style .form-element-btn button:focus,
    .from-style .form-element-btn button:active {
        padding: 16px 24px !important;
        font-size: 18px;
        letter-spacing: -0.54px;
        min-width: 1px;
    }
    .case-list-item-v2-imgbox {
        padding-bottom: 58.31%;
    }
    .case-list-item-v2 a > div {
        width: 100%;
    }
    .case-list-item-v2-textbox {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    .case-list-item-v2-imgbox {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
    .case-list-item-v2-btn .btn-main,
    .case-list-item-v2-btn .btn-main:focus,
    .case-list-item-v2-btn .btn-main:active {
        width: 100%;
    }
    .case-list-item-v2-textbox-mid {
        padding: 16px 0;
        margin: 16px 0;
    }
    .case-list-item-v2-btn {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }

} /* end of max-width 1023 */

@media screen and (max-width:639px) {
    .footer-content-right {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
    .footer-content-nav ul {
        gap: 24px;
    }
    .footer-content-nav ul li {
        width: 100%;
    }
    .footer-trusted-section .heading-2 {
        padding: 0 32px;
        margin-bottom: 40px;
    }
    .heading-2 {
        font-size: 32px;
        line-height: 1.25;
        letter-spacing: -0.64px;
    }
    .trusted-testimonials-owl .item {
        width: 100%;
    }
    .logo-infinite-owl {
        padding-top: 40px;
    }
    .footer-trusted-section {
        padding: 40px 0 40px;
    }
    .logo-infinite-owl .item {
        gap: 80px;
    }
    .book-call-owl .item {
        font-size: 64px;
        letter-spacing: -3.2px;
        padding-right: 71px;
    }
    .book-call-owl .item::after {
        width: 42px; height: 15px;
        right: 11px;
    }
    .footer-talk-section-right-box {
        display: block;
    }
    .footer-talk-section-right-box-btn {
        margin-top: 16px;
    }
    .footer-talk-section-right-box-btn a {
        width: 100%;
    }
    .heading-1 {
        font-size: 48px;
        letter-spacing: -2.4px;
    }
    .heading-1-3 {
        font-size: 32px;
        line-height: 1.25;
        letter-spacing: -0.64px;
    }
    .home-fuel-section-list ul {
        gap: 16px;
    }
    .home-fuel-section-list ul li {
        width: 100%;
    }
    .home-fuel-section-box .text-base {
        max-width: 100%;
    }
    .accordion-items .accordion-item {
        padding: 0 0;
        width: 100%;
        margin: 0;
    }
    .accordion-items .accordion-title {
        padding: 21px 36px 21px 0;
        font-size: 18px;
        letter-spacing: -0.54px;
    }
    .accordion-items .accordion-content {
        padding: 0 0 48px;
    }
    .case-list-item-box {
        padding: 16px;
    }
    .case-list-item-tags {
        font-size: 15px;
        letter-spacing: -0.54px
    }
    .case-list-item .heading-2 {
        margin-bottom: 8px;
    }
    .title-display {
        font-size: 64px;
        letter-spacing: -3.2px;
    }
    .entry h1 {
        font-size: 48px;
        letter-spacing: -2.4px;
    }
    .entry h2 {
        font-size: 32px;
        line-height: 1.25;
        letter-spacing: -0.64px;
    }
    .entry h3 {
        font-size: 24px;
        letter-spacing: -0.72px;
    }
    .entry h4 {
        font-size: 20px;
        letter-spacing: -0.72px; 
    }
    .entry h5 {
        font-size: 18px;
        letter-spacing: -0.54px;
    }
    .entry h6 {
        font-size: 15px;
        letter-spacing: -0.45px;
    }

    .case-section {
        padding: 126px 0 80px;
    }
    .case-section::before {
        background: url(../img/bg-projects-mobile.png) no-repeat top right / cover;
    }
    .case-section-titlebox {
        padding-bottom: 40px;
    }
    .case-section-filter {
        margin-bottom: 40px;
    }
    .case-section-filter ul {
        display: block;
        white-space: nowrap;
        overflow: auto;
        padding-bottom: 8px;
    }
    .case-section-filter ul li {
        display: inline-block;
        white-space: nowrap;
        margin-right: 8px;
    }
    .projects-single-challange {
        padding: 48px 0;
        margin-top: 0;
    }
    .projects-single-boximg .grid-container {
        padding: 0;
    }
    .projects-single-boximg-box {
        border-radius: 0;
        padding-bottom: 170.67%;
    }
    .four-o-four {
        padding: 126px 0 48px;
    }
    .heading-3-to-4 {
        font-size: 24px;
        line-height: 1.4;
        letter-spacing: -0.72px;
    }
    .contact-hero-section {
        padding: 126px 0 40px;
    }
    .contact-hero-section-top {
        display: block;
        margin-bottom: 80px;
        text-align: center;
    }
    .contact-hero-section-top .title-display {
        margin-bottom: 24px;
    }
    .contact-hero-section-center {
        padding: 24px 0;
        display: block;
        text-align: center;
    }
    .contact-hero-section-center .heading-3 {
        margin-bottom: 24px;
    }
    .from-style .form-element-btn {
        display: block;
    }
    .from-style .form-element-btn button,
    .from-style .form-element-btn button:focus,
    .from-style .form-element-btn button:active {
       width: 100%;
    }
    .from-style .form-element-btn p {
        max-width: 100%;
        margin-top: 24px;
    }
    .text-lg.contact-hero-section-content-sticky {
        font-size: 18px;
        color: #FFF;
        letter-spacing: -0.54px;
    }
    .from-style .form-element-label.is-active {
        top: -4px;
        font-size: 16px;
    }
    .contact-form-form .heading-1 {
        font-size: 48px;
    }
    .case-list-item-v2:not(:last-child) {
        margin-bottom: 48px;
    }
    .case-list-item-v2-textbox-bot {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;

        gap: 12px;
    }
    .case-list-item-v2-textbox-bot > div {
        width: 100%;
    }
} /* end of max-width 639 */