/*!
Theme Name: icnx2
Author: 

Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: icnx2
*/
@import url('/wp-content/themes/icnx2/css/tw.css');

@font-face {
    font-family: 'Gotham';
    src: url('/wp-content/themes/icnx2/fonts/GothaProBol.otf') format('opentype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Gotham';
    src: url('/wp-content/themes/icnx2/fonts/GothaProReg.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Gotham';
    src: url('/wp-content/themes/icnx2/fonts/GothaProIta.otf') format('opentype');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Gotham';
    src: url('/wp-content/themes/icnx2/fonts/GothaProBolIta.otf') format('opentype');
    font-weight: bold;
    font-style: italic;
}

@font-face {
    font-family: 'Gotham';
    src: url('/wp-content/themes/icnx2/fonts/GothaProLig.otf') format('opentype');
    font-weight: lighter;
    font-style: normal;
}

@font-face {
    font-family: 'Gotham';
    src: url('/wp-content/themes/icnx2/fonts/GothaProLigIta.otf') format('opentype');
    font-weight: lighter;
    font-style: italic;
}

html {
    scroll-behavior: smooth;
    font-family: "Gotham", Helvetica;
}

a {
    text-decoration: none;
}

@layer theme {
    :root {
        --font-sans: "Gotham";
        --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
        --color-gray-200: oklch(92.8% .006 264.531);
        --color-gray-300: oklch(87.2% .01 258.338);
        --color-gray-400: oklch(70.7% .022 261.325);
        --color-gray-500: oklch(55.1% .027 264.364);
        --color-zinc-200: oklch(92% .004 286.32);
        --color-zinc-500: oklch(55.2% .016 285.938);
        --color-zinc-600: oklch(44.2% .017 285.786);
        --color-zinc-700: oklch(37% .013 285.805);
        --color-zinc-800: oklch(27.4% .006 286.033);
        --color-zinc-900: oklch(21% .006 285.885);
        --color-zinc-950: oklch(14.1% .005 285.823);
        --color-neutral-100: oklch(97% 0 0);
        --color-black: #000;
        --color-white: #fff;
        --spacing: .25rem;
        --container-sm: 24rem;
        --container-2xl: 42rem;
        --container-3xl: 48rem;
        --container-4xl: 56rem;
        --container-5xl: 64rem;
        --text-sm: var(--wp--preset--font-size--sm, .875rem);
        --text-sm--line-height: calc(1.25/.875);
        --text-base: var(--wp--preset--font-size--base, 1rem);
        --text-base--line-height: 1.5;
        --text-lg: var(--wp--preset--font-size--lg, 1.125rem);
        --text-lg--line-height: calc(1.75/1.125);
        --text-2xl: var(--wp--preset--font-size--2-xl, 1.5rem);
        --text-2xl--line-height: calc(2/1.5);
        --text-3xl: var(--wp--preset--font-size--3-xl, 1.875rem);
        --text-3xl--line-height: 1.2;
        --text-5xl: var(--wp--preset--font-size--5-xl, 3rem);
        --text-5xl--line-height: 1;
        --text-6xl: var(--wp--preset--font-size--6-xl, 3.75rem);
        --text-6xl--line-height: 1;
        --font-weight-light: 300;
        --font-weight-medium: 500;
        --font-weight-semibold: 600;
        --font-weight-bold: 700;
        --tracking-tight: -.025em;
        --leading-relaxed: 1.625;
        --radius-md: .375rem;
        --radius-xl: .75rem;
        --radius-4xl: 2rem;
        --default-transition-duration: .15s;
        --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
        --default-font-family: "Gotham";
        --default-mono-font-family: var(--font-mono);
        --color-dark: var(--wp--preset--color--dark);
        --color-light: var(--wp--preset--color--light)
    }
}

.alignwide,
.alignfull {
    width: 100%;
    max-width: none;
    margin: 0;
    position: relative;
    padding: 0 !important
}

.wide-100 {
    width: 100%;
}

header.top-header {
    color: #fff;
    padding-inline: calc(var(--spacing)*4);
    position: absolute;
    top: 0;
    left: 0;
    height: 100px;
    z-index: 3;
}

#primary-navigation {
    position: fixed;
    left: 50%;
    transform: translateX(-50%);
    z-index: 900;
}

#menu-top-menu {
    display: flex;
    justify-content: center;
    align-items: center;
    justify-content: center;
    align-items: center;
    backdrop-filter: blur(10px);
    background-color: #0a0a0a3d;
    background-image: linear-gradient(300deg, #ffffff38, #fff0 55%);
    border-radius: .2em;
}

#menu-top-menu li {
    white-space: nowrap;
    padding: 12px 18px 10px;
}

#primary-menu {
    position: relative
}

#primary-menu a {
    text-decoration: none;
}

#primary-menu>ul>li:hover {
    background-image: radial-gradient(circle, rgba(255, 255, 255, .3) 0%, rgba(120, 120, 120, 0) 80%);
}

:is(#primary-menu>ul>li:hover, #primary-menu>ul>li:focus-within) ul.sub-menu {
    display: flex
}

#primary-menu>ul>li>ul.sub-menu {
    z-index: 1;
    flex-direction: column;
    min-width: 160px;
    display: none;
    position: absolute;
    top: 40px;
    color: #000;
    background: #ffffffdd;
    border-radius: .2em;
}

#primary-menu>ul>li>ul.sub-menu>li {
    white-space: nowrap;
    flex-wrap: nowrap;
    display: flex;
    padding: 4px 12px;
}

#lang-switcher-container {
    position: relative;
}

#lang-switcher-button {}

#lang-switcher-popup {
    display: flex;
    z-index: 1;
    flex-direction: row;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    gap: 4px;
}

#lang-switcher-popup a {
    height: 16px;
    width: 24px;
}

#lang-switcher-popup.hidden {
    display: none;
}

footer.colophon {
    min-height: 100vh;
}

.footer-parallax-img {
    background-position: 50% 50%;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100vh;
    border: none;
    bottom: 0;
    box-shadow: none;
    height: 100%;
    left: 0;
    margin: 0;
    max-height: none;
    max-width: none;
    object-fit: cover;
    outline: none;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
}

.footer-contact-form {
    align-items: center;
    gap: calc(var(--spacing)*8);
    flex-direction: column;
    display: flex
}

.footer-contact-form label {
    color: #000000b3
}

.footer-contact-form .text-input {
    margin-top: calc(var(--spacing)*2);
    height: calc(var(--spacing)*12);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-gray-400);
    width: 100%;
    padding: calc(var(--spacing)*2);
    --tw-outline-style: none;
    border-radius: .25rem;
    outline-style: none
}

.footer-contact-form .text-input:focus {
    border-color: var(--color-gray-300)
}

.footer-contact-form .submit {
    margin-top: calc(var(--spacing)*5);
    height: calc(var(--spacing)*12);
    width: calc(var(--spacing)*56);
    background-color: var(--color-gray-500);
    padding-inline: calc(var(--spacing)*4);
    color: var(--color-white);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    border-radius: .25rem
}

.footer-contact-form .submit:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x)var(--tw-scale-y)
}

.service-block {
    border-radius: var(--radius-md);
    padding: calc(var(--spacing)*6);
    align-content: space-between
}

.vertical-center-flex {
    align-items: center;
    display: flex
}

.front-awards-grid ul.wp-block-post-template.is-layout-grid {
    gap: 0
}

.front-awards-grid li {
    filter: grayscale();
    border: 1px solid #ebebeb
}

.front-awards-grid li:hover {
    filter: none
}

.front-awards-grid li .wp-block-post-featured-image :where(img.wp-post-image) {
	margin: 0 auto;
    width: auto !important
}

.red-tab {
    flex-flow: wrap;
    align-content: space-between;
    align-items: center;
    display: flex;
    overflow: hidden;
    justify-content: flex-start !important;
    gap: 8px !important;
    margin-bottom: 8px !important
}

.red-tab div {
    cursor: pointer;
    border-bottom: 3px solid #0000;
    border-radius: 6px;
    font-size: 17px;
    transition: all .3s;
    color: #fff !important;
    background-color: #a3a798 !important
}

.red-tab div a {
    background-color: #a3a798 !important;
    padding: 20px 40px !important
}

.red-tab div:hover a,
.red-tab div.active a {
    color: #000 !important;
    background-color: #fff !important
}

.red-tab div.active,
.red-tab div:hover {
    z-index: 3;
    color: #000 !important;
    background-color: #fff !important
}

.tab-content {
    background-color: rgba(255, 255, 255, .6);
    border-top: none;
    border-radius: 6px;
    padding: 35px 15px;
    display: none;
    margin: 0;
	backdrop-filter: blur(3px);
}

:where(.editor-styles-wrapper) .wp-block.tab-content {
    display: block !important
}

.tab-content.active {
    display: block
}

.frontpage-client-block .icnx_client {
    position: relative;
    cursor: pointer;
}

.frontpage-client-block .icnx_client .frontpage-client-block-description {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
    padding: .25rem;
	height: 100%;
	background-color: rgba(255,255,255,0.8) !important;
	backdrop-filter: blur(2px);
}

.frontpage-client-block .icnx_client:hover .frontpage-client-block-description {
    opacity: 1;
    visibility: visible;
}

.frontpage-partner-block .icnx_partner {
    position: relative;
    cursor: pointer;
}

.frontpage-partner-block .icnx_partner .frontpage-partner-block-description {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
    padding: .25rem;
	height: 100%;
	background-color: rgba(255,255,255,0.8) !important;
	backdrop-filter: blur(2px);
}

.frontpage-partner-block .icnx_partner:hover .frontpage-partner-block-description {
    opacity: 1;
    visibility: visible;
}

.stat-box {
    grid-column-gap: 5em;
    grid-row-gap: 5em;
    background-color: #7e7e7e;
    border-radius: .3em;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    min-height: 21.5em;
    padding: 1.2em 1.2em .9em;
    display: flex;
    position: relative;
}

.hero-title {
    text-transform: uppercase;
}

.stat-content {
    border-top: 1px solid #ffffff1f;
    flex-flow: column;
    justify-content: flex-end;
    align-items: flex-start;
    width: 100%;
    padding-top: 15px;
}

.btn {
    grid-column-gap: .3em;
    grid-row-gap: .3em;
    border-radius: 3rem;
    justify-content: center;
    align-items: center;
    padding: 8px 12px 5px;
    font-weight: 500;
    text-decoration: none;
    display: flex;
    color: var(--wp--preset--color--white, #fff);
    background-color: var(--wp--preset--color--dark, #000);
    font-size: var(--text-base);
    line-height: var(--text-base--line-height);
    height: 2.5rem;
    white-space: nowrap;
}

.btn::after {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='8' height='8' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 5.48004L5.12878 0L30 0V24.6605L24.3272 30V17.7874C24.3272 14.8148 24.3567 12.1218 24.4182 9.70593L4.49358 29.4432L0.544933 25.124L20.4695 5.38767C18.1093 5.44982 15.4614 5.48004 12.5267 5.48004L0 5.48004Z' fill='%23fff' /%3e%3c/svg%3e");
}

.btn.btn-light {
    background-color: var(--wp--preset--color--white, #fff);
    color: var(--wp--preset--color--dark, #000);
}

.btn.btn-light::after {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='8' height='8' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 5.48004L5.12878 0L30 0V24.6605L24.3272 30V17.7874C24.3272 14.8148 24.3567 12.1218 24.4182 9.70593L4.49358 29.4432L0.544933 25.124L20.4695 5.38767C18.1093 5.44982 15.4614 5.48004 12.5267 5.48004L0 5.48004Z' fill='%23000' /%3e%3c/svg%3e");
}

.btn.btn-primary {
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--light);
}

.btn.btn-success {
    background-color: var(--wp--preset--color--green);
    color: var(--wp--preset--color--light);
}

.btn.btn-no-arrow::after {
    display: none;
}

.btn:hover::after {
    animation: blink 0.5s ease-in infinite alternate;
}

#contact-form-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    background-color: var(--wp--preset--color--light);
    padding: 2rem;
    border-radius: .2rem;
}

#contact-form-popup>div {
    flex-direction: column;
    gap: calc(var(--spacing)*5);
}

#contact-form-popup::backdrop {
    background: rgb(0 0 0 / 50%);
}

#contact-form-popup input {
    border: 1px solid var(--wp--preset--color--dark-gray);
    margin: var(--spacing);
    padding: var(--spacing);
    border-radius: .1rem;
}

#contact-form-popup .wpcf7-list-item {
    margin: 0;
}

@keyframes blink {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Оптимизация для мобильных */
@media (max-width: 767px) {
    .parallax .wp-block-cover {
        min-height: 300px;
    }
}

.relative {
    position: relative;
}

.hero-link {
    z-index: 50;
    background-color: var(--wp--preset--color--blue);
    justify-content: space-between;
    align-items: center;
    width: 33.2vw;
    text-decoration: none;
    display: flex;
    position: absolute;
    bottom: 0;
    left: 0;
}

.hero-link a {
    color: var(--wp--preset--color--white);
    letter-spacing: -.01em;
    text-transform: none;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 1.6em;
    font-weight: 400;
    line-height: 2.95em;
    text-decoration: none;
    border: none;
    padding-left: 1.3em;
    width: 100%;
}

.news-grid li:nth-child(2)>div {
    background-color: var(--wp--preset--color--orange) !important;
}

.news-grid li:nth-child(3)>div {
    background-color: var(--wp--preset--color--gray-button) !important;
}

.news-grid li {
    min-height: 50vh;
}
.search-form input:focus-visible {
    outline: none;
}
.slide-with-footer-button {
    display: flex;
    flex-direction: column;
    align-content: space-between;
    position: relative;
}

.slide-with-footer-button .wp-block-buttons {
    margin: auto 0 0 0 !important;
    position: relative;
}

.slide-with-footer-button .wp-block-buttons .wp-block-button a {
    color: var(--wp--preset--color--white);
    letter-spacing: -.01em;
    text-transform: none;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 1.6em;
    font-weight: 400;
    text-decoration: none;
    border: none;
    padding-left: 1.3em;
    width: 100%;
    border-radius: 0;
}