@font-face {
    font-family: 'Clash Display';
    src: url('../webfonts/clash-display/ClashDisplay-Regular.woff2') format('woff2'),
         url('../webfonts/clash-display/ClashDisplay-Regular.woff') format('woff');
    font-weight: 400;
    font-display: swap;
    font-style: normal;
}
@font-face {
    font-family: 'Clash Display';
    src: url('../webfonts/clash-display/ClashDisplay-Medium.woff2') format('woff2'),
         url('../webfonts/clash-display/ClashDisplay-Medium.woff') format('woff');
    font-weight: 500;
    font-display: swap;
    font-style: normal;
}
:root{
    --font-global: 'Roboto', sans-serif;
    --font-alt: 'Clash Display', sans-serif;
    --section-padding-y: 160px;
    --color-dark-1: #111;
    --color-dark-2: #222;
    --color-dark-3: #2a2a2a;
    --color-dark-3a: #373737;;
    --color-gray-1: #777;
    --border-radius-default: 0;
    --border-radius-large: 0;
}
body{
    letter-spacing: 0;
}
.inner-nav ul{
    font-size: 17px;
    line-height: 1.6; 
    font-weight: 400;
    letter-spacing: 0;
}
.inner-nav > ul > li > a{
    opacity: .78;     
}
.inner-nav ul li a{
    position: relative;
}
.inner-nav > ul > li > a:not(.no-hover):before{
    content: "";
    position: absolute;
    top: calc(50% + 0.7em);
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: 0 50%;
    transition: transform .27s var(--ease-default);
}
.inner-nav > ul > li > a.active:before{
    transform: scaleX(1);
}
.main-nav.mobile-on .inner-nav > ul > li > a:not(.no-hover):before{
    display: none;
}
.form input[type="text"],
.form input[type="email"],
.form input[type="number"],
.form input[type="url"],
.form input[type="search"],
.form input[type="tel"],
.form input[type="password"],
.form input[type="date"],
.form input[type="color"],
.form select{
    padding-bottom: 1px;
}
.form input[type="text"].input-sm,
.form input[type="email"].input-sm,
.form input[type="number"].input-sm,
.form input[type="url"].input-sm,
.form input[type="search"].input-sm,
.form input[type="tel"].input-sm,
.form input[type="password"].input-sm,
.form input[type="date"].input-sm,
.form input[type="color"].input-sm,
.form select.input-sm,
.form textarea.input-sm{
    font-size: 16px;
}
.form input[type="text"].input-md,
.form input[type="email"].input-md,
.form input[type="number"].input-md,
.form input[type="url"].input-md,
.form input[type="search"].input-md,
.form input[type="tel"].input-md,
.form input[type="password"].input-md,
.form input[type="date"].input-md,
.form input[type="color"].input-md,
.form select.input-md,
.form textarea.input-md{
    font-size: 17px;
}
.form input[type="text"]::placeholder,
.form input[type="email"]::placeholder,
.form input[type="number"]::placeholder,
.form input[type="url"]::placeholder,
.form input[type="search"]::placeholder,
.form input[type="tel"]::placeholder,
.form input[type="password"]::placeholder,
.form input[type="date"]::placeholder,
.form input[type="color"]::placeholder,
.form select::placeholder,
.form textarea::placeholder{
    color: #999;
}
.form label{
    margin-bottom: 14px;
    font-family: var(--font-alt);
    font-size: 22px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.form .form-group{
    margin-bottom: 45px;
}
.form-tip,
.form-tip a{
    font-size: 13px;
}
.btn-mod,
a.btn-mod{
    font-size: 17px;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}
.btn-mod .icon{
    margin-left: 2px;
}
.btn-mod.btn-small{
    padding: 4px 14px;
    font-size: 17px;
    font-weight: 400;
    letter-spacing: 0;
}
.btn-mod.btn-medium{
    padding: 12px 26px;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: -0.007em;
} 
.btn-mod.btn-large{
    padding: 15px 32px;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: -0.007em;
} 
.btn-mod.btn-ellipse{
    font-family: var(--font-alt);
    letter-spacing: 0.14em;
}
.btn-border,
.btn-border-w,
.btn-border-c{
    border-width: 2px !important;
}
hr{
    opacity: .2;
}
.hs-title-1{
    letter-spacing: -0.0125em;
}
.hs-title-12{
    letter-spacing: -0.0125em;
}
.hs-title-13{
    letter-spacing: -0.0125em;
}
.section-title-small{
    font-size: 32px;
}
.section-title-tiny{
    font-size: 18px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.15em;
}
.section-title-inline{
    padding-top: 3px;
    font-family: var(--font-alt);
    letter-spacing: 0.15em;
}
.link-strong{
    font-family: var(--font-alt);
    font-size: 18px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.marquee-style-2{
    font-family: var(--font-alt);
    letter-spacing: 0.15em;
}
.accordion-1,
.accordion-1 > dt > a{
    border-width: 2px;
}
.accordion-1 > dt{
    font-family: var(--font-alt);
    letter-spacing: 0.08em;
}
.steps-1-title{
    font-family: var(--font-alt);
    letter-spacing: 0;
}
.number-2-title{
    margin-bottom: 5px;
    font-family: var(--font-alt);
    letter-spacing: -0.025em;
}
.portfolio-2-title{
    letter-spacing: -0.008em;
}
.testimonials-slider-2 blockquote p{
    font-family: var(--font-alt);
    letter-spacing: 0.01em;
}
.ts2-author{
    font-family: var(--font-alt);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.ts2-author .small{
    font-family: var(--font-global);
    text-transform: none;
    letter-spacing: 0;
}
.post-prev-2-title{
    margin-bottom: 10px;
    font-size: 26px;
    line-height: 1.5;
}
.post-prev-2-info{
    font-size: 16px;
    text-transform: unset;
    letter-spacing: 0;
}
.pagination a,
.pagination span{
    font-weight: 400;
}
.form-tip{
    font-size: 14px;
    line-height: 1.714;
}
.footer-1{
    font-family: var(--font-alt);
    font-size: 18px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.075em;
}
.fw-social-inline .link-strong:before{
    display: none;
}
.light-content .fw-top-link .icon{
    width: 38px;
    height: 38px;
    border-width: 2px;
}
.footer-text{
    font-family: var(--font-global);
    font-size: 16px;
    font-weight: 400;
    text-transform: none;
    letter-spacing: -0.01em;
}
.footer-text a{
    color: inherit;
    text-decoration: underline;
}
.footer-text .small{
    font-size: 14px;
}
.light-content .footer-text{
    color: var(--color-gray-3);
}
.fw-top-link-underline:before{
    height: 2px;
    opacity: 1;
}
.features-2-item:before{
    border: 1px solid var(--color-dark-1);
	background:	none;
    opacity: 0.15;
    transition: opacity .27s var(--ease-default);
    z-index: -1;
}
.features-2-item:hover:before{
    opacity: 1;
}
.features-2-label{
    font-weight: 500;
    color: var(--color-dark-1);
    background: none;
    -webkit-background-clip: unset;
    -webkit-text-fill-color: unset;
}
.features-2-icon:before{
    background: var(--color-gray-light-1);
    opacity: 1;
    z-index: -1;
}
.features-2-icon svg{
    fill: var(--color-dark-1);
}
.light-content .features-2-item:before{    
	background: var(--color-dark-mode-gray-2);
    border: 1px solid var(--color-dark-mode-gray-2);
    transition: border-color .27s var(--ease-default);
    opacity: 1;
    z-index: -1;
}
.light-content .features-2-item:hover:before{
    background: var(--color-dark-mode-gray-2);
    opacity: 1;
}
.light-content .features-2-label{
    color: #fff;
    background: none;
    -webkit-background-clip: unset;
    -webkit-text-fill-color: unset;
}
.light-content .features-2-icon{
    color: #fff;
}
.light-content .features-2-icon svg{
    fill: #fff;
}
.light-content .features-2-icon:before{
    background: var(--color-dark-mode-gray-2);
    opacity: 1;
    z-index: -1;
}
.light-content .features-2-descr{
    color: var(--color-dark-mode-gray-1);
}
.bg-border-gradient:before{
    background: none;
    border: 1px solid var(--color-dark-1);
    opacity: 0.15;
}
.light-content .bg-border-gradient:before{
    background: none;
    border: 1px solid #fff;
    opacity: 0.25;
}
.bg-gradient-dark-alpha-1:before{
    opacity: .9;
}
.bg-gradient-dark-alpha-2:before{
    opacity: .9;
}
.work-navigation a, .work-navigation a:visited{
    color: var(--color-dark-1);
}
/* Language switcher */
.lang-switcher {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    margin-right: 16px;
    padding: 0;
    font-family: var(--font-alt);
    font-size: 14px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.lang-switcher button {
    background: none;
    border: none;
    color: #fff;
    opacity: 0.5;
    padding: 0 6px;
    cursor: pointer;
    transition: opacity .2s;
    font: inherit;
    letter-spacing: inherit;
    text-transform: inherit;
    line-height: 1;
}
.main-nav:not(.dark) .lang-switcher button {
    color: var(--color-dark-1);
}
.lang-switcher button:hover,
.lang-switcher button.active {
    opacity: 1;
}
.lang-switcher span {
    opacity: 0.3;
    color: #fff;
    user-select: none;
    line-height: 1;
}
.main-nav:not(.dark) .lang-switcher span {
    color: var(--color-dark-1);
}
.inner-nav > ul.items-end > li.lang-switcher {
    display: inline-flex;
    align-items: center;
    height: var(--menu-bar-height);
    margin-right: 16px;
}
.main-nav:not(.mobile-on).small-height .inner-nav > ul.items-end > li.lang-switcher {
    height: var(--menu-bar-height-scrolled);
}
.mobile-on .inner-nav .lang-switcher {
    margin: 12px auto 20px;
    justify-content: center;
}
.lang-switcher--mobile {
    display: none;
}
.mobile-on .lang-switcher--mobile {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 15px 10px;
    border-bottom: 1px solid rgba(255,255,255,.065);
}
.mobile-on .items-end .lang-switcher:not(.lang-switcher--mobile) {
    display: none;
}

/* Mobile menu — centered items */
.mobile-on .desktop-nav ul li a {
    text-align: center;
}
.mobile-on .inner-nav > ul.items-end {
    position: static;
    top: auto;
    right: auto;
    width: 100%;
}
.mobile-on .inner-nav > ul.items-end > li > a {
    display: flex;
    justify-content: center;
    align-items: center;
}
.mobile-on .inner-nav > ul.items-end > li > a .btn {
    margin: 0 auto;
}

/* Cases grid */
.cases-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}
.cases-card {
    position: relative;
    display: block;
    min-height: 360px;
    overflow: hidden;
    color: #fff;
    text-decoration: none;
    background-color: #1a1a1a;
    box-shadow: 0 4px 24px rgba(0,0,0,.2);
    transition: box-shadow .35s var(--ease-default);
    border-radius: 20px !important;
    border: 1px solid rgba(255,255,255, .1);
}
.cases-card--hidden {
    display: none !important;
}
.cases-card:hover {
    box-shadow: 0 12px 40px rgba(0,0,0,.45);
    color: #fff;
    text-decoration: none;
}
.cases-card__media {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    background: #1a1a1a;
}
.cases-card__img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform .5s var(--ease-default);
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
}
.cases-card:hover .cases-card__img {
    transform: scale(1.05) translateZ(0);
}
.cases-card__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(180deg, rgba(0,0,0,.62) 0%, rgba(0,0,0,.5) 35%, rgba(0,0,0,.94) 100%);
    pointer-events: none;
}
.cases-card__body {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 360px;
    padding: 28px;
}
.cases-card__title {
    font-size: 22px;
    line-height: 1.25;
    margin-bottom: 12px;
    text-shadow: 0 1px 4px rgba(0,0,0,.85), 0 4px 16px rgba(0,0,0,.55);
}
.cases-card__desc {
    font-size: 15px;
    line-height: 1.5;
    opacity: .95;
    margin-bottom: 16px;
    text-shadow: 0 1px 3px rgba(0,0,0,.8), 0 2px 10px rgba(0,0,0,.5);
}
.cases-card__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}
.cases-card__tag {
    font-size: 12px;
    opacity: .75;
    letter-spacing: 0.02em;
}
.cases-card__link {
    font-size: 14px;
    align-self: flex-start;
    opacity: .9;
    text-decoration: none;
}
.cases-card:hover .cases-card__link {
    text-decoration: none;
}

/* Case detail page */
.case-detail {
    max-width: 900px;
    margin: 0 auto;
}
.case-detail__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 24px;
}
.case-detail__tag {
    font-size: 13px;
    letter-spacing: 0.02em;
    opacity: .75;
    padding: 6px 12px;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 999px;
}
.case-detail__hero-img {
    width: 100%;
    border-radius: 12px;
    margin-bottom: 40px;
    display: block;
}
.case-detail__video-wrap {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    margin-bottom: 40px;
    border-radius: 12px;
    overflow: hidden;
    background: #000;
}
.case-detail__video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
.case-detail__meta {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    padding: 28px 0;
    margin-bottom: 48px;
    border-top: 1px solid rgba(255,255,255,.12);
    border-bottom: 1px solid rgba(255,255,255,.12);
}
.case-detail__meta-label {
    font-family: var(--font-alt);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    opacity: .55;
    margin-bottom: 8px;
}
.case-detail__meta-value {
    font-size: 16px;
}
.case-detail__meta-value--budget {
    line-height: 1.6;
}

.hs-status {
    width: auto;
    max-width: min(300px, calc(100vw - 60px));
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 5;
    font-size: 16px;
    line-height: 1.4;
    animation: none !important;
    transform: none !important;
}

#home.home-section {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

#home.home-section > .container {
    flex: 1 1 auto;
    width: 100%;
}

.portfolio-section-head .section-title-medium {
    white-space: nowrap;
}

@media only screen and (max-width: 767px) {
    .portfolio-section-head .section-title-medium {
        white-space: normal;
    }
}

.case-detail__block {
    margin-bottom: 56px;
}
.case-detail__heading {
    font-size: 28px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255,255,255,.1);
}
.case-detail__text {
    font-size: 17px;
    line-height: 1.75;
    opacity: .92;
}
.case-detail__text p {
    margin-bottom: 1.2em;
}
.case-detail__text ol,
.case-detail__text ul {
    margin-bottom: 1.2em;
    padding-left: 1.4em;
}
.case-detail__figure {
    margin: 32px 0;
}
.case-detail__image {
    width: 100%;
    height: auto;
    border-radius: 8px;
    display: block;
}
.case-detail__caption {
    margin-top: 12px;
    font-size: 14px;
    opacity: .7;
    line-height: 1.5;
}
.case-detail__quote {
    margin: 48px 0;
    padding: 28px 32px;
    border-left: 3px solid rgba(255,255,255,.35);
    font-size: 18px;
    line-height: 1.65;
    font-style: italic;
    opacity: .9;
    white-space: pre-line;
}
.case-detail__project-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    text-decoration: none;
    padding: 14px 24px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 999px;
    transition: border-color .2s, background .2s;
}
.case-detail__project-link:hover {
    border-color: rgba(255,255,255,.5);
    background: rgba(255,255,255,.06);
    text-decoration: none;
}

.case-detail__back {
    margin-top: 60px;
}

.case-page-top-link {
    position: fixed;
    right: max(24px, var(--full-wrapper-margin-x, 24px));
    bottom: 24px;
    z-index: 2000;
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition: opacity .35s var(--ease-out-medium, ease), visibility .35s, transform .35s var(--ease-out-medium, ease);
    pointer-events: none;
}
.case-page-top-link.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}
.case-page-top-link .fw-top-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
}
.case-page-top-link .fw-top-link .icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    border: 1px solid #fff;
    border-radius: 50%;
    color: #fff;
    transition: all .4s var(--ease-out-medium, ease);
}
.case-page-top-link .fw-top-link:hover .icon {
    background: #fff;
    color: var(--color-dark-1, #111);
}

@media only screen and (max-width: 991px) {
    .cases-grid {
        grid-template-columns: 1fr;
    }
    .cases-card,
    .cases-card__body {
        min-height: 300px;
    }
    .case-detail__meta {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media only screen and (max-width: 1366px) {
    .section-title-small{
        font-size: calc(1.159rem + 0.98vw);
    }
    .post-prev-2-title{
        font-size: calc(1.135rem + 0.57vw);
    }
}

a:focus,
a:focus-visible,
a.focus-visible,
button:focus,
button:focus-visible,
button.focus-visible {
    outline: none !important;
}

/* ===== Prices page ===== */
.prices-packs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}
.prices-pack {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: 32px 28px 28px;
    border: 1px solid rgba(255,255,255,.14);
    background:
        linear-gradient(165deg, rgba(255,255,255,.055), transparent 48%),
        rgba(255,255,255,.02);
    transition: border-color .28s ease, transform .28s ease, background .28s ease;
}
.prices-pack:hover {
    border-color: rgba(255,255,255,.32);
    transform: translateY(-3px);
    background:
        linear-gradient(165deg, rgba(255,255,255,.08), transparent 48%),
        rgba(255,255,255,.025);
}
.prices-pack__title {
    margin: 0 0 12px;
    font-size: clamp(24px, 2vw, 30px);
    line-height: 1.12;
    letter-spacing: -.03em;
}
.prices-pack__desc {
    margin: 0 0 28px;
    font-size: 15px;
    line-height: 1.55;
    opacity: .7;
    max-width: 28em;
}
.prices-pack__price {
    margin-bottom: 26px;
}
.prices-pack__byn {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    font-family: var(--font-alt);
    font-size: clamp(32px, 3.2vw, 44px);
    line-height: 1;
    letter-spacing: -.03em;
}
.prices-pack__from {
    font-size: .36em;
    letter-spacing: .04em;
    text-transform: lowercase;
    opacity: .7;
    margin-right: 8px;
}
.prices-pack__value {
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1;
}
.prices-pack__currency {
    font-size: .36em;
    letter-spacing: .06em;
    opacity: .7;
    margin-left: 8px;
}
.prices-pack__period {
    margin-left: 10px;
    font-size: .36em;
    letter-spacing: .02em;
    opacity: .55;
    white-space: nowrap;
}
.prices-pack__subs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    font-size: 13px;
    line-height: 1.35;
    opacity: .48;
    font-variant-numeric: tabular-nums;
}
.prices-pack__variants {
    display: grid;
    gap: 18px;
    margin-bottom: 26px;
}
.prices-pack__variant-name {
    margin-bottom: 8px;
    font-size: 13px;
    letter-spacing: .04em;
    text-transform: uppercase;
    opacity: .55;
}
.prices-pack__list {
    list-style: none;
    margin: 0 0 28px;
    padding: 0;
    display: grid;
    gap: 10px;
}
.prices-pack__list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 15px;
    line-height: 1.45;
    opacity: .78;
}
.prices-pack__list .icon-info {
    margin-top: 2px;
    flex-shrink: 0;
    opacity: .8;
}
.prices-pack__examples {
    margin: 0 0 24px;
    font-size: 13px;
    line-height: 1.55;
    opacity: .62;
}
.prices-pack__examples-label {
    display: block;
    margin-bottom: 8px;
    font-size: 12px;
    letter-spacing: .04em;
    text-transform: uppercase;
    opacity: .75;
}
.prices-pack__examples-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}
.prices-pack__examples a {
    display: block;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.prices-pack__examples a:hover {
    opacity: .85;
}
.prices-pack__cta {
    margin-top: auto;
}
@media only screen and (min-width: 992px) {
    .prices-packs {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
    .prices-packs > .prices-pack {
        grid-column: span 2;
    }
}
@media only screen and (max-width: 991px) {
    .prices-packs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media only screen and (max-width: 767px) {
    .prices-packs {
        grid-template-columns: 1fr;
    }
    .prices-pack {
        padding: 28px 22px;
    }
}

.prices-support {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}
.prices-support .prices-pack {
    grid-column: auto;
    min-width: 0;
}
.prices-support .prices-pack.is-featured {
    border-color: rgba(255,255,255,.36);
    background:
        linear-gradient(165deg, rgba(255,255,255,.08), rgba(255,255,255,.02) 50%),
        var(--color-dark-3, #2a2a2a);
}
.prices-aivideo__slogan {
    margin: 28px 0 0;
    font-size: clamp(18px, 2.1vw, 26px);
    line-height: 1.35;
    letter-spacing: -.02em;
    opacity: .92;
}
.prices-aivideo__example {
    margin: 18px 0 0;
}
.prices-aivideo__example a {
    text-decoration: underline;
    text-underline-offset: 3px;
}
.prices-aivideo__example a:hover {
    opacity: .85;
}
@media only screen and (max-width: 575px) {
    .prices-support {
        grid-template-columns: 1fr;
    }
}

/* Standalone Design / SEO offer panels */
.prices-offer {
    border: 1px solid rgba(255,255,255,.14);
    background:
        linear-gradient(145deg, rgba(255,255,255,.05), transparent 42%),
        rgba(255,255,255,.02);
    padding: 28px 36px 40px;
}
.prices-offer__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(260px, .8fr);
    gap: 36px 48px;
    align-items: stretch;
}
.prices-offer__eyebrow {
    display: block;
    margin: 0 0 22px;
    font-family: var(--font-alt);
    font-size: clamp(28px, 3.4vw, 42px);
    line-height: 1.05;
    letter-spacing: -.03em;
    text-transform: none;
    opacity: .92;
}
.prices-offer__copy {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}
.prices-offer__text {
    font-size: 18px;
    line-height: 1.55;
    opacity: .82;
    margin: 0 0 24px;
    max-width: 38em;
}
.prices-offer__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 10px;
}
.prices-offer__list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 15px;
    line-height: 1.45;
    opacity: .78;
}
.prices-offer__list .icon-info {
    margin-top: 2px;
    flex-shrink: 0;
    opacity: .8;
}
.prices-offer__aside {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    gap: 22px;
    height: 100%;
    min-height: 0;
    padding: 28px 24px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 24px;
    background: rgba(0,0,0,.18);
}
.prices-offer__price {
    width: 100%;
}
.prices-offer__from {
    font-size: .38em;
    letter-spacing: .04em;
    text-transform: lowercase;
    opacity: .7;
    margin-right: 8px;
    vertical-align: .55em;
}
.prices-offer__byn {
    display: flex;
    flex-wrap: nowrap;
    align-items: baseline;
    white-space: nowrap;
    font-family: var(--font-alt);
    font-size: clamp(22px, 2.6vw, 34px);
    line-height: 1;
    letter-spacing: -.03em;
}
.prices-offer__value {
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1;
    min-width: 3.2ch;
}
.prices-offer__currency {
    font-size: .38em;
    letter-spacing: .06em;
    opacity: .7;
    margin-left: 8px;
    vertical-align: .55em;
}
.prices-offer__period {
    margin-left: 10px;
    font-size: .42em;
    letter-spacing: .02em;
    opacity: .55;
    white-space: nowrap;
}
.prices-offer__subs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.3;
    opacity: .5;
    font-variant-numeric: tabular-nums;
}
.prices-offer__aside .prices-discuss .btn {
    width: auto;
}

@media only screen and (max-width: 991px) {
    .prices-offer {
        padding: 28px 22px;
    }
    .prices-offer__grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .prices-offer__aside {
        width: 100%;
    }
}

/* Brutalist-like rounding on prices page */
body[data-page="prices"] .prices-round,
body[data-page="prices"] .pricing-item-inner.prices-round {
    border-radius: 30px !important;
    overflow: hidden;
}
body[data-page="prices"] .prices-calc__option.prices-round {
    border-radius: 22px !important;
}
body[data-page="prices"] .prices-calc__summary-inner {
    border-radius: 30px;
}

.prices-stack {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}
@media only screen and (max-width: 1199px) {
    .prices-stack {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media only screen and (max-width: 767px) {
    .prices-stack {
        grid-template-columns: 1fr;
    }
}
.prices-stack__card {
    position: relative;
    height: 100%;
    padding: 34px 28px 30px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.02);
    transition: border-color .25s ease, transform .25s ease, background .25s ease;
}
.prices-stack__card:hover {
    border-color: rgba(255,255,255,.3);
    transform: translateY(-3px);
}
.prices-stack__card.is-featured {
    border-color: rgba(255,255,255,.36);
    background: linear-gradient(165deg, rgba(255,255,255,.08), rgba(255,255,255,.02) 50%), var(--color-dark-3, #2a2a2a);
}
.prices-stack__badge {
    display: inline-block;
    margin-bottom: 16px;
    padding: 6px 12px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 999px;
    font-size: 12px;
    letter-spacing: .06em;
    text-transform: uppercase;
    opacity: .85;
}
.prices-stack__title {
    font-size: 24px;
    margin: 0 0 22px;
}
.prices-stack__list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.prices-stack__list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 12px;
    font-size: 15px;
    line-height: 1.45;
}
.prices-stack__list li:last-child {
    margin-bottom: 0;
}
.prices-stack__list i {
    margin-top: 2px;
    flex-shrink: 0;
}
.prices-stack__list li.is-muted {
    opacity: .48;
}

.prices-calc {
    display: flex;
    flex-direction: column;
    gap: 48px;
}
.prices-calc__group {
    margin-bottom: 36px;
}
.prices-calc__group:last-child {
    margin-bottom: 0;
}
.prices-calc__group-title {
    font-size: 18px;
    margin: 0 0 14px;
    letter-spacing: .03em;
}
.prices-calc__options {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.prices-calc__option {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    width: 100%;
    text-align: left;
    color: inherit;
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.12);
    padding: 16px 18px;
    cursor: pointer;
    transition: border-color .25s ease, background .25s ease, transform .25s ease;
}
.prices-calc__option:hover {
    border-color: rgba(255,255,255,.3);
    background: rgba(255,255,255,.04);
}
.prices-calc__option.is-active {
    border-color: rgba(255,255,255,.42);
    background: rgba(255,255,255,.06);
}
.prices-calc__option-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    flex-shrink: 0;
    border: 1px solid rgba(255,255,255,.28);
    color: rgba(255,255,255,.55);
    transition: border-color .25s ease, background .25s ease, color .25s ease;
}
.prices-calc__option-mark.is-radio {
    border-radius: 50%;
}
.prices-calc__option-mark.is-check {
    border-radius: 4px;
}
.prices-calc__option-mark i {
    font-size: 16px;
    line-height: 1;
}
.prices-calc__option.is-active .prices-calc__option-mark {
    border-color: #fff;
    background: #fff;
    color: #111;
}
.prices-calc__option-title {
    display: block;
    font-size: 16px;
    margin-bottom: 4px;
}
.prices-calc__option-desc {
    display: block;
    font-size: 13px;
    line-height: 1.45;
    opacity: .58;
}
.prices-calc__price {
    font-size: 13px;
    white-space: nowrap;
    text-align: right;
    opacity: .72;
    letter-spacing: .02em;
    line-height: 1.4;
}
.prices-calc__summary {
    position: static;
    width: 100%;
}
.prices-calc__summary-inner {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    border: 1px solid rgba(255,255,255,.16);
    padding: 32px 28px;
    background:
        linear-gradient(165deg, rgba(255,255,255,.06), transparent 50%),
        var(--color-dark-3, #2a2a2a);
}
.prices-calc__summary-copy {
    min-width: 0;
    flex: 1;
}
.prices-calc__summary-action {
    flex-shrink: 0;
    padding-bottom: 4px;
}
.prices-calc__summary-label {
    font-size: 13px;
    letter-spacing: .06em;
    text-transform: uppercase;
    opacity: .65;
    margin-bottom: 14px;
}
.prices-calc__total-line {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px 16px;
    font-family: var(--font-global);
    font-size: clamp(20px, 2.1vw, 26px);
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 0;
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1;
}
.prices-calc__total-line span + span::before {
    content: "·";
    margin-right: 16px;
    opacity: .45;
    font-weight: 400;
}
.prices-calc__monthly {
    margin-top: 14px;
    padding: 12px 14px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 16px;
    background: rgba(255,255,255,.04);
}
.prices-calc__monthly-text {
    font-size: 14px;
    line-height: 1.45;
    opacity: .9;
}
.prices-calc__hint {
    font-size: 13px;
    opacity: .55;
    margin: 18px 0 0;
    line-height: 1.45;
    max-width: none;
}
.prices-calc__hint + .prices-calc__hint {
    margin-top: 8px;
}
.prices-calc__desc {
    font-size: 13px;
    line-height: 1.5;
    opacity: .72;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid rgba(255,255,255,.1);
}
.prices-calc__cta {
    display: inline-flex;
    width: 100%;
    justify-content: center;
}

.light-content .mark-decoration-2:before {
    border-color: #fff;
}

.prices-factor {
    height: 100%;
    padding-right: 10px;
}
.prices-factor__num {
    font-size: 13px;
    letter-spacing: .12em;
    opacity: .4;
    margin-bottom: 14px;
}
.prices-factor__title {
    font-size: 20px;
    margin: 0 0 12px;
}
.prices-factor__text {
    font-size: 15px;
    line-height: 1.55;
    opacity: .7;
    margin: 0;
}

body[data-page="prices"] #calculator {
    scroll-margin-top: calc(var(--menu-bar-height-scrolled, 65px) + 16px);
}

.prices-calc-mobile-bar {
    display: none;
}

.prices-discuss {
    display: inline-block;
}
body[data-page="prices"] .prices-discuss .btn {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    padding-left: 16px;
    padding-right: 18px;
}
body[data-page="prices"] .prices-discuss .btn .btn-animate-y,
body[data-page="prices"] .prices-discuss .btn .btn-animate-y-1,
body[data-page="prices"] .prices-discuss .btn .btn-animate-y-2 {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}
body[data-page="prices"] .prices-discuss .btn i {
    margin-left: 8px;
    flex-shrink: 0;
}

body[data-page="prices"] .prices-hero-cta,
body[data-page="prices"] .prices-hero-cta .link-strong {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    max-width: none;
}
body[data-page="prices"] .prices-hero-cta .link-strong-hovered {
    display: inline-flex;
    width: 100%;
    box-sizing: border-box;
}
body[data-page="prices"] .prices-hero-cta .link-strong i {
    flex-shrink: 0;
    margin-left: .45em;
}

.prices-consult {
    margin-top: 8px;
    padding: 32px 28px 30px;
    border: 1px solid rgba(255,255,255,.14);
    background:
        linear-gradient(165deg, rgba(255,255,255,.06), transparent 52%),
        rgba(255,255,255,.02);
}
.prices-consult__eyebrow {
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: .55;
    margin-bottom: 12px;
}
.prices-consult__title {
    font-size: 24px;
    margin: 0 0 14px;
}
.prices-consult__lead {
    font-size: 17px;
    line-height: 1.5;
    margin: 0 0 12px;
    max-width: 42em;
}
.prices-consult__text {
    font-size: 15px;
    line-height: 1.6;
    opacity: .72;
    margin: 0 0 24px;
    max-width: 46em;
}
.prices-consult__rates {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 28px;
    margin-bottom: 20px;
}
.prices-consult__rate-label {
    font-size: 13px;
    letter-spacing: .04em;
    text-transform: uppercase;
    opacity: .55;
    margin-bottom: 6px;
}
.prices-consult__rate-value {
    font-family: var(--font-global);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    font-variant-numeric: tabular-nums;
}
.prices-consult__note {
    font-size: 14px;
    line-height: 1.55;
    opacity: .68;
    margin: 0 0 22px;
    max-width: 44em;
}

@media only screen and (max-width: 767px) {
    .prices-consult {
        padding: 26px 20px;
    }
    .prices-consult__rates {
        grid-template-columns: 1fr;
    }
}

.contact-form .form-tip {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    line-height: 1.45;
}
.contact-form .form-tip i {
    margin-top: 2px;
    flex-shrink: 0;
}
.contact-form .form-tip__text {
    min-width: 0;
    flex: 1;
}

@media only screen and (max-width: 991px) {
    .prices-calc__summary-inner {
        flex-direction: column;
        align-items: stretch;
        gap: 24px;
    }
    .prices-calc__summary-action .btn {
        width: auto;
    }
    .prices-calc-mobile-bar {
        display: flex;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1900;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
        background: rgba(17,17,17,.94);
        border-top: 1px solid rgba(255,255,255,.14);
        backdrop-filter: blur(10px);
    }
    .prices-calc-mobile-bar__top {
        flex-shrink: 0;
        color: #fff;
        text-decoration: none;
    }
    .prices-calc-mobile-bar__top .icon {
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 38px;
        height: 38px;
        border: 2px solid #fff;
        border-radius: 50%;
        transition: all .4s var(--ease-out-medium);
    }
    .prices-calc-mobile-bar__top .icon:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 100%;
        background: #fff;
        border-radius: 50%;
        opacity: 0;
        transform: scale(.25);
        transition: all .4s var(--ease-elastic-1);
    }
    .prices-calc-mobile-bar__top .icon i {
        position: relative;
        z-index: 1;
    }
    .prices-calc-mobile-bar__top:hover {
        color: #111;
        text-decoration: none;
    }
    .prices-calc-mobile-bar__top:hover .icon:before {
        opacity: 1;
        transform: none;
    }
    .prices-calc-mobile-bar__byn {
        font-family: var(--font-alt);
        font-size: 18px;
        flex: 1;
        min-width: 0;
        text-align: center;
    }
    .prices-calc-mobile-bar__cta {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        padding: 10px 16px;
        border: 1px solid rgba(255,255,255,.35);
        border-radius: 999px;
        color: #fff;
        text-decoration: none;
        font-size: 14px;
        white-space: nowrap;
    }
    .prices-calc-mobile-bar__cta:hover {
        border-color: #fff;
        text-decoration: none;
        color: #fff;
    }
    body[data-page="prices"] .page {
        padding-bottom: 72px;
    }
}

@media only screen and (max-width: 575px) {
    .prices-calc__option {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 12px;
    }
    .prices-calc__option-mark {
        width: 30px;
        height: 30px;
    }
    .prices-calc__price {
        grid-column: 2;
        margin-top: 2px;
        white-space: normal;
    }
    .prices-calc__total-line {
        font-size: 20px;
    }
}