.hero {
position: relative;
min-height: clamp(620px, 39vw, 748px);
overflow: hidden;
}
.hero__bg {
position: absolute;
inset: 0;
z-index: 0;
pointer-events: none;
background:
radial-gradient(52% 62% at 74% 40%, rgba(30, 141, 233, 0.16) 0%, rgba(9, 9, 9, 0) 68%),
radial-gradient(38% 46% at 8% 10%, rgba(123, 47, 247, 0.07) 0%, rgba(9, 9, 9, 0) 72%);
} .hero__inner {
position: relative;
z-index: 1;
height: 100%;
} .hero__copy {
position: relative;
z-index: 2;
width: 52%;
padding-top: 104px;
padding-bottom: 96px;
} .hero__art {
position: absolute;
right: -70px;
top: 10px;
width: 940px;
height: 738px;
z-index: 1;
will-change: transform;
pointer-events: none;
}
.hero__stage {
position: absolute;
inset: 0;
animation: gm-art 1s var(--ease-main) both;
animation-delay: 0.15s;
}
.hero__eyebrow {
font-family: var(--font-body);
font-size: clamp(12px, 0.98vw, 15px);
font-weight: 600;
letter-spacing: 0.32em;
text-transform: uppercase;
color: rgba(245, 245, 245, 0.85);
margin: 0 0 26px;
display: flex;
align-items: center;
gap: 2px;
}
.hero__eyebrow .star {
color: var(--c-accent);
}
.hero__title {
margin: 0;
font-size: var(--fs-hero);
line-height: 1.1;
letter-spacing: -0.01em;
}
.hero__lead {
margin: 34px 0 0;
max-width: 430px;
font-size: clamp(16px, 1.24vw, 19px);
line-height: 1.55;
color: rgba(245, 245, 245, 0.72);
}
.hero .btn-row {
display: flex;
align-items: center;
gap: 18px;
margin-top: 42px;
}
.hero .btn-row .btn {
flex: 1 1 0;
min-width: 0;
height: 58px;
padding-inline: 20px;
justify-content: center;
} .hero .btn-row .btn:hover,
.hero .btn-row .btn:focus-visible,
.hero .btn-row .btn:active {
transform: none;
}
html[lang|="uk"] .hero__note,
.hero__note {
position: absolute;
top: 196px;
right: 686px;
z-index: 3;
width: 150px;
font-size: 23px;
line-height: 1.05;
letter-spacing: 0.03em;
color: rgba(245, 245, 245, 0.7);
transform: rotate(-6deg)!important;
}
.hero__scroll {
margin-top: 58px;
height: 100px;
}
.hero__splash {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: contain;
object-position: right top;
opacity: 0.85;
animation: gm-splash 1.1s var(--ease-main) both;
animation-delay: 0.05s;
}
.hero__mascot {
position: absolute;
right: 84px;
bottom: -26px;
height: 88%;
width: auto;
max-width: none;
filter: drop-shadow(0 30px 60px rgba(0, 0, 0, 0.6));
}
.hero__bolt {
position: absolute;
right: 566px;
top: 92px;
width: 46px;
color: var(--c-accent);
transform: rotate(-8deg)!important;
}
.hero__arrow {
position: absolute;
right: 480px;
top: 214px;
width: 74px;
color: var(--c-violet);
transform: rotate(24deg) scaleX(-1)!important;
opacity: 0.9;
} .trusted {
padding-block: clamp(36px, 3.8vw, 54px) clamp(44px, 5vw, 72px);
}
.trusted__label {
margin-bottom: 24px;
font-family: var(--font-ui);
font-weight: 500;
font-size: 12px;
letter-spacing: 0.22em;
line-height: 1.55;
color: #7e7e7e;
} .services__grid {
display: grid; grid-template-columns: 1.5fr 0.58fr;
gap: clamp(32px, 3.4vw, 48px);
align-items: start;
}
.services__aside {
grid-column: 2;
grid-row: 1;
}
.services__list {
grid-column: 1;
grid-row: 1;
} @media (max-width: 1024px) {
.services__grid {
grid-template-columns: 1fr;
}
.services__aside,
.services__list {
grid-column: 1;
grid-row: auto;
}
} .services__aside {
position: sticky;
top: calc(var(--header-h) + 48px);
}
@media (max-width: 1024px) {
.services__aside {
position: static;
}
}
.services__title {
margin-bottom: 38px;
font-size: var(--fs-h2);
line-height: 1.1;
letter-spacing: -0.005em;
}
.services__title span {
display: block;
} .services__list {
position: relative;
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 0 clamp(28px, 2.6vw, 44px);
align-items: start;
}
.services__col {
min-width: 0;
} @media (max-width: 1399px) {
.services__list {
grid-template-columns: 1fr;
}
}
html[lang|="uk"] .services__note,
.services__note {
position: absolute;
right: clamp(24px, calc((100% - var(--container)) / 2 - 24px), 96px);
top: 58px;
z-index: 2;
width: 200px;
font-size: 22px;
line-height: 1.28;
color: rgba(245, 245, 245, 0.22);
transform: rotate(-4deg)!important;
text-align: right;
pointer-events: none;
}
@media (max-width: 1279px) {
.services__note {
display: none !important;
}
} .cases__head {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 32px;
flex-wrap: wrap;
margin-bottom: 48px;
}
.cases__head > div:first-child {
max-width: 640px;
}
.cases__head .btn {
margin-top: 34px;
}
.cases__nav {
display: flex;
gap: 14px;
}
.cases__viewport {
display: flex;
gap: 24px;
overflow-x: auto;
overscroll-behavior-x: contain;
scroll-snap-type: x mandatory;
scrollbar-width: none;
padding: 4px 2px 14px;
cursor: grab;
}
.cases__viewport.is-grabbing {
cursor: grabbing;
}
.cases__viewport img {
-webkit-user-drag: none;
user-select: none;
}
.cases__viewport::-webkit-scrollbar {
display: none;
}
.cases__track {
display: contents;
}
.cases__viewport > .cases__track > * {
flex: 0 0 40%;
scroll-snap-align: center;
opacity: 0.88;
transition: opacity 0.35s ease, transform 0.35s var(--ease-main);
}
.cases__viewport > .cases__track > .is-active {
opacity: 1;
transform: scale(1.03);
}
@media (max-width: 900px) {
.cases__viewport > .cases__track > * { flex: 0 0 62%; }
}
@media (max-width: 560px) {
.cases__viewport > .cases__track > * { flex: 0 0 86%; }
.cases__viewport > .cases__track > .is-active { transform: none; }
} .about-home__grid {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
gap: clamp(36px, 5vw, 80px);
align-items: center;
}
.about-home__art {
position: relative;
aspect-ratio: 1 / 1;
}
.about-home__art .splash {
position: absolute;
inset: -6%;
width: 112%;
height: 112%;
max-width: none;
opacity: 0.62;
object-fit: contain;
}
.about-home__art .mascot {
position: absolute;
left: 50%;
bottom: 4%;
transform: translateX(-50%)!important;
width: 100%;
height: auto;
max-width: none;
filter: drop-shadow(0 24px 50px rgba(0, 0, 0, 0.55));
}
.about-home__art .note {
position: absolute;
right: -4%;
top: 6%;
z-index: 3;
width: 170px;
text-align: right;
line-height: 1.15;
color: rgba(245, 245, 245, 0.3);
transform: rotate(-5deg)!important;
pointer-events: none;
}
.about-home__art .note {
position: absolute;
right: -2%;
top: 16%;
max-width: 170px;
transform: rotate(-7deg)!important;
text-align: center;
}
.about-home__values {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 22px 32px;
margin: clamp(28px, 3vw, 40px) 0 clamp(28px, 3vw, 40px);
} .process__strip {
display: flex;
align-items: center;
gap: 14px;
margin-top: 60px;
}
.process__strip > .comic {
flex: 1 1 0;
min-width: 0;
}
.comic {
position: relative;
display: flex;
flex-direction: column;
height: 448px;
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 4px;
background: var(--c-surface);
overflow: hidden;
transition: transform var(--dur-main) var(--ease-main), border-color var(--dur-main) ease;
}
.comic:hover {
transform: translateY(-8px) rotate(-1.4deg)!important;
border-color: rgba(30, 141, 233, 0.4);
}
.comic__art {
position: relative;
flex: 1;
overflow: hidden;
background: #0c0c0f;
}
.comic__art .splash {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: contain;
}
.comic__art .glyph {
position: absolute;
inset: 0;
display: grid;
place-items: center;
color: #fff;
}
.comic__art .glyph svg {
width: 42%;
height: 42%;
filter: drop-shadow(0 8px 26px rgba(0, 0, 0, 0.55));
}
.comic__cap {
flex: none;
display: flex;
align-items: center;
gap: 11px;
padding: 15px 18px;
border-top: 1px solid var(--c-line);
font-family: var(--font-ui);
font-size: 15px;
font-weight: 700;
letter-spacing: 0.03em;
text-transform: uppercase;
color: var(--c-text);
line-height: 1.25;
}
.comic__cap .num {
font-family: var(--font-mono);
font-size: 12px;
letter-spacing: 0.06em;
color: var(--c-text-3);
flex: none;
}
.process__arrow {
flex: none;
align-self: center;
width: 42px;
color: var(--c-violet);
} .final-cta {
padding-block: clamp(72px, 8vw, 118px);
}
.final-cta .h2 {
font-size: var(--fs-h1);
line-height: 0.86;
}
.final-cta__note {
margin-top: clamp(26px, 3vw, 42px);
max-width: 30ch;
transform: rotate(-3deg)!important;
color: rgb(30 141 233);
}  @media (min-width: 1281px) and (max-width: 1600px) {
.hero {
min-height: 620px;
}
.hero__copy {
padding-top: 56px;
padding-bottom: 48px;
}
.hero__eyebrow {
margin-bottom: 18px;
}
.hero__lead {
margin-top: 24px;
}
.hero .btn-row {
margin-top: 28px;
}
.hero .btn-row .btn {
height: 54px;
}
.hero__scroll {
margin-top: 30px;
}
.hero__art {
right: -30px;
top: 0;
width: 800px;
height: 628px;
}
html[lang|="uk"] .hero__note,
.hero__note {
top: 164px;
right: 582px;
font-size: 21px;
}
.hero__mascot {
right: 68px;
bottom: -18px;
height: 90%;
}
}
@media (max-width: 1280px) {
.hero {
min-height: 620px;
}
.hero__copy {
padding-top: clamp(64px, 7vw, 88px);
padding-bottom: 60px;
}
}
@media (max-width: 1024px) {
.process__strip {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: clamp(16px, 2vw, 24px);
align-items: stretch;
}
.process__strip > .comic {
flex: none;
height: auto;
min-height: 0;
border-radius: 6px;
}
.comic__art {
aspect-ratio: 1 / 1;
}
.comic__art .splash {
object-fit: contain;
}
.process__arrow {
display: none;
}
.services__grid {
grid-template-columns: 1fr;
gap: var(--space-xl);
}
.services__aside {
position: static;
}
.services__note {
display: none;
}
.about-home__grid {
grid-template-columns: 1fr;
}
.about-home__art {
max-width: 460px;
margin-inline: auto;
order: 1;
width: 100%;
}
}
@media (max-width: 1279px) {
.hero__note {
display: none;
}
.hero__art {
right: -50px;
top: 0;
width: min(70vw, 720px);
height: min(65vw, 660px);
}
} @media (max-width: 900px) {
.hero {
min-height: 0;
height: auto;
}
.hero__inner {
display: flex;
flex-direction: column;
padding-block: 32px 56px;
}
.hero__copy {
order: 1;
width: 100%;
padding-top: 8px;
}
.hero__art {
position: relative;
order: 2;
right: auto;
top: auto;
width: 100%;
height: min(84vw, 520px);
max-width: 460px;
margin-top: 8px;
}
.hero__mascot {
right: 50%;
bottom: 0;
height: 96%;
transform: translateX(50%)!important;
}
.hero__splash {
object-position: center;
}
.hero__bolt,
.hero__arrow {
display: none;
}
.hero__scroll {
margin-top: 40px;
}
}
@media (max-width: 640px) {
.hero .btn-row {
flex-direction: column;
align-items: stretch;
gap: 12px;
}
.hero .btn-row .btn {
flex: none;
width: 100%;
}
}
@media (max-width: 640px) {
.about-home__values {
grid-template-columns: 1fr;
}
.process__strip > .comic {
height: auto;
min-height: 0;
}
.process__strip .comic__art{aspect-ratio:1/1;height:auto}
.process__strip .comic__cap{overflow-wrap:anywhere}
.hero__art {
max-width: 340px;
}} @media (min-width: 1400px) {
.services__col .srow {
flex-wrap: wrap;
align-items: center;
gap: 8px 16px;
min-height: 116px;
padding-block: 20px;
}
.services__col .srow__title {
width: auto;
flex: 1 1 auto;
font-size: clamp(17px, 1.16vw, 20px);
}
.services__col .srow__desc {
flex: 1 1 100%;
max-width: 46ch;
padding-left: 46px;
}
} .comic--link {
cursor: pointer;
text-decoration: none;
color: inherit;
}
.comic--link:focus-visible {
outline: 2px solid var(--c-accent);
outline-offset: 3px;
}
.comic--link:hover .comic__cap,
.comic--link:focus-visible .comic__cap {
color: var(--c-accent);
}