@media (max-width: 1620px) {
    .container {
        max-width: 92vw;
    }
    .e-con > .e-con-inner {
        max-width: 92vw !important;
    }
    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 92vw !important;
    }
    main {
        padding-top: 77px;
    }
    .home main,
    .error404 main,
    .single-post main,
    .single-services main {
        padding-top: 0;
    }
    .footer-lower:before {
        left: calc(((100vw - 92vw) / 2) * -1);
    }
    .image-acc-images {
        width: 600px;
    }
}
/* 1620px */

@media (max-width: 1550px) {
    .paralax-title > span {
        font-size: 8rem;
    }
}
/* 1550px */

@media (max-width: 1400px) {
    .image-acc-texts {
        width: 450px;
    }
    .post-container {
        max-width: 92vw;
    }
}
/* 1400px */

@media (max-width: 1300px) {
    .footer-upper-wrapper {
        gap: 60px;
    }
}
/* 1300px */

@media (max-width: 1200px) {
    .image-acc-images {
        width: 500px;
    }
    .related-posts-list {
        display: block;
    }
}
/* 1200px */

@media (max-width: 1100px) {
    .header-navigation {
        display: none;
    }
    .mobile-menu-btn {
        display: flex;
    }
    .header-wrapper {
        justify-content: space-between;
    }
    .header-logo {
        width: initial;
    }
    .header-right {
        width: initial;
    }
    .paralax-title > span {
        font-size: 7rem;
    }
    .icon-item {
        padding: 12px;
    }
    .cta-title {
        font-size: 5.8rem;
    }
    .image-text-image {
        aspect-ratio: 1 / 1;
        height: 100%;
    }
    .image-text-content {
        padding-left: 50px;
    }
    .image-text-wrapper.image-on-right .image-text-content {
        padding-right: 50px;
    }
    .quote-text p {
        font-size: 3.8rem;
    }
    h1.our-services-title {
        font-size: 5rem;
    }
    .narrow-container {
        max-width: 92vw;
    }
}
/* 1100px */

@media (max-width: 1050px) {
    .image-acc-wrapper {
        display: none;
    }
    .image-acc-resp {
        display: block;
    }
}
/* 1050px */

@media (max-width: 1000px) {
    .footer-upper-wrapper {
        flex-direction: column;
        gap: 50px;
    }
    .footer-upper {
        padding: 60px 0;
    }
    .footer-columns {
        gap: 30px;
    }
    .parallax-statistics {
        right: initial;
        left: 50%;
        transform: translateX(-50%);
        top: 70px;
            width: 100%;
        justify-content: center;
    }
    .paralax-title > span {
        font-size: 5rem;
    }
    .parallax-icon svg {
        width: 70px;
        height: 70px;
    }
    .about-cta-wrapper {
        flex-direction: column;
        gap: 20px;
    }
    .about-cta-left {
        width: 100%;
    }
    .about-cta-right {
        width: 100%;
    }
    .latest-posts-list {
        display: block;
    }
    .statistics-title {
        font-size: 6rem;
    }
    .statistics-description {
        font-size: 1.8rem;
    }
    .quote-wrapper {
        flex-direction: column;
    }
    .quote-left {
        width: 435px;
    }
    .quote-right {
        width: 100%;
    }
    .post-archive-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .contacts-form {
        flex-direction: column;
        gap: 40px;
        padding: 50px;
    }
    .contacts-left {
        width: 100%;
    }
    .contacts-right {
        width: 100%;
    }
}
/* 1000px */

@media (max-width: 900px) {
    .icons-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
/* 900px */

@media (max-width: 800px) {
    .video-wrapper a {
        width: 100%;
    }
    .popup-form-wrapper {
        width: 90vw;
        padding: 50px 20px;
    }
}

@media (max-width: 768px) {
    h1 {
        font-size: 5.6rem;
    }
    h2 {
        font-size: 4.8rem;
    }
    h3 {
        font-size: 3.6rem;
    }
    h4 {
        font-size: 2.8rem;
    }
    h5 {
        font-size: 2.6rem;
    }
    h6 {
        font-size: 2.1rem;
    }
    p {
        font-size: 1.6rem;
    }
    .elementor-widget-text-editor ul li {
        font-size: 1.6rem;
    }
    .footer-columns {
        grid-template-columns: minmax(0, 1fr);
    }
    .footer-column:not(.footer-column-contact) {
        border-bottom: 1px solid rgba(255, 255, 255, 0.10);
        padding: 15px 0;
    }
    .footer-column-title:not(.footer-column-contact) {
        padding: 15px 0;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
    }
    .footer-columns {
        gap: 0;
    }
    .footer-column-contact .footer-column-title {
        display: none;
    }
    .footer-column-contacts {
        padding-top: 45px;
    }
    .footer-column-acc .footer-column-title {
        font-size: 2.6rem;
        color: var(--color-white);
        font-weight: 500;
        line-height: 130%;
    }
    .footer-column-acc .footer-column-title:hover {
        cursor: pointer;
    }
    .footer-column-acc .footer-column-nav li a {
        color: rgba(255, 255, 255, 0.70);
        font-size: 1.7rem;
        font-weight: 500;
        line-height: 120%;
    }
    .footer-acc-arrow {
        display: block;
        flex-shrink: 0;
    }
    .footer-column-acc .footer-column-nav {
        display: none;
    }
    .footer-column-nav {
        padding: 10px 0;
    }
    .hero-description {
        font-size: 1.7rem;
    }
    @keyframes logo {
        0% { 
            bottom: -100px;
            opacity: .06;
            width: 50vw;
            display: none;
        }
        75% {
            opacity: 0;
        }
        100% { 
            opacity: 0;
            bottom: 100%;
            width: 120vw;
            filter: blur(3px);
        }
    }
    .parallax-statistics-value {
        font-size: 4.2rem;
    }
    .parallax-statistics-description {
        font-size: 1.7rem;
    }
    .about-cta-description {
        font-size: 2rem;
    }
    .services-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .service-card {
        height: 380px;
    }
    .service-card-title {
        font-size: 2.6rem;
    }
    .services {
        padding: 20px 0 40px;
    }
    .icons {
        padding: 80px 0 60px;
        margin-top: 40px;
    }
    .icons.icons-mb-yes {
        margin-bottom: 40px;
    }
    .icon-item-title {
        font-size: 2.6rem;
    }
    .icon-item-description {
        font-size: 1.5rem;
    }
    .icon-item-description {
        font-size: 1.5rem;
    }
    .why {
        height: 400px;
        padding-bottom: 50px;
    }
    .why-wrapper {
        max-width: 520px;
    }
    .why-title {
        font-size: 3.2rem;
    }
    .why-upper-title {
        font-size: 1.5rem;
    }
    .why {
        margin-bottom: 40px;
    }
    .latest-posts {
        padding: 40px 0;
    }
    .cta-title {
        font-size: 5.2rem;
    }
    .cta-description {
        font-size: 1.7rem;
    }
    .cta-wrapper {
        padding: 80px 0;
    }
    .cta {
        margin-top: 40px;
    }
    .latest-posts {
        padding: 40px 0;
    }
    .mobile-nav li a {
        font-size: 4rem;
    }
    .header-type-simple {
        padding: 90px 20px;
    }
    .header-type-simple {
        margin-bottom: 40px;
    }
    .intro-text {
        margin: 40px 0;
    }
    .statistics {
        padding: 40px 0;
    }
    .statistics-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .statistics-item:nth-child(2n) {
        border-right: none;
    }
    .statistics-item:nth-child(3n) {
        border-top: none;
    }
    .statistics-item:nth-child(4n) {
        border-top: none;
    }
    .image-text-wrapper {
        grid-template-columns: minmax(0, 1fr);
        gap: 30px;
    }
    .image-text-wrapper .image-text-image {
        order: 1 !important;
    }
    .image-text-wrapper .image-text-content {
        order: 2 !important;
    }
    .image-text .elementor-widget-text-editor p {
        font-size: 1.8rem;
    }
    .image-text.has-mt-yes {
        padding-top: 40px;
    }
    .image-text.has-mb-yes {
        padding-bottom: 40px;
    }
    .image-text-content {
        padding: 0 !important;
    }
    .icons.icons-bg-grey {
        margin-top: 40px;
    }
    .quote {
        padding: 40px 0;
    }
    .quote-left-upper-title {
        font-size: 1.6rem;
    }
    p.quote-left-description {
        font-size: 1.6rem;
    }
    .our-services-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .our-services {
        padding: 60px 0 40px;
    }
    h1.our-services-title {
        font-size: 4.8rem;
    }
    .icons.icons-bg-white {
        padding: 40px 0;
    }
    .post-archive-header {
        flex-direction: column;
        align-items: flex-start;
    }
    .post-archive {
        padding: 60px 0 40px;
    }
    .contacts {
        padding: 60px 0 40px;
    }
    .contacts-information {
        grid-template-columns: minmax(0, 1fr);
    }
    .contacts {
        padding: 40px 0;
    }
    .about-grid {
        padding: 40px 0;
    }
    .about-grid-wrapper {
        grid-template-columns: minmax(0, 1fr);
    }
    .about-grid-item {
        padding: 30px;
    }
    .about-grid-item-icon {
        width: 68px;
        height: 68px;
    }
    .about-grid-item-description p {
        font-size: 1.7rem;
    }
    .vr-cta {
        margin: 40px 0;
        height: 620px;
    }
    .vr-cta-wrapper {
        max-width: 526px;
    }
    .vr-cta-wrapper p {
        font-size: 1.7rem;
    }
    .faq {
        padding: 40px 0;
    }
    .single-post {
        padding: 60px 0 40px;
    }
    h1.single-post-title {
        font-size: 5.6rem;
    }
    .single-post-share {
        padding-top: 40px;
    }
    .post-share-title {
        font-size: 1.5rem;
    }
    .related-posts-wrapper {
        padding: 40px 0;
    }
    .hightlighted {
        padding: 20px 0;
    }
    .popup-form-title {
        font-size: 2.6rem;
    }
    .popup-form-wrapper p {
        font-size: 1.5rem;
    }
}
/* 768px */

@media (max-width: 600px) {
    .header-logo svg {
        width: 150px;
    }
    .footer-lower {
        flex-direction: column;
        justify-content: center;
        gap: 10px;  
    }
    .parallax-statistics {
        flex-direction: column;
    }
    .paralax-title > span {
        font-size: 4rem;
    }
    .paralax-title {
        bottom: 80px;
    }
    .service-card-title {
        font-size: 2.2rem;
    }
    .why-wrapper {
        max-width: 420px;
    }
    .why-title {
        font-size: 2.6rem;
    }
    .why {
        height: 340px;
    }
    .cta-wrapper {
        padding: 60px 0;
    }
    .cta-title {
        font-size: 4.8rem;
    }
    .cta-description {
        font-size: 1.6rem;
    }
    .cta-icon svg {
        width: 78px;
        height: 78px;
    }
    .post-card-title {
        font-size: 2.1rem;
    }
    .post-card-date {
        font-size: 1.4rem;
    }
    .post-card-bottom-button span {
        font-size: 1.4rem;
    }
    .card-post-inner {
        padding: 12px;
    }
    .post-card-image {
        height: 200px;
    }
    .post-card-bottom-button {
        padding-left: 12px;
        padding-right: 8px;
    }
    .post-card-bottom-arrow {
        top: 10px;
    }
    .header-wrapper {
        padding: 14px 0;
    }
    .mobile-nav li a {
        font-size: 3.2rem;
    }
    .header-type-simple {
        height: 520px;
    }
    h1.inner-header-title {
        font-size: 4.8rem;
    }
    .intro-text .elementor-widget-text-editor p {
        font-size: 1.8rem;
    }
    .quote-text p {
        font-size: 3rem;
    }
    .author-img {
        width: 64px;
        height: 64px;
    }
    .author-name {
        font-size: 1.7rem;
        padding-bottom: 5px;
    }
    .author-position {
        font-size: 1.6rem;
    }
    h1.our-services-title {
        font-size: 3.8rem;
    }
    .post-archive-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    h5.contact-information-title {
        font-size: 2.2rem;
    }
    .contact-information-description {
        font-size: 1.4rem;
    }
    .contact-information-block {
        padding: 30px;
    }
    .contacts-form {
        padding: 24px;
    }
    .video-wrapper a {
        height: 300px;
    }
    .single-post-featured {
        aspect-ratio: 1 / 1;
        width: 100%;
        height: auto;
    }
}
/* 600px */

@media (max-width: 550px) {
    h1 {
        font-size: 4.8rem;
    }
    h2 {
        font-size: 4rem;
    }
    h3 {
        font-size: 3.2rem;
    }
    h4 {
        font-size: 2.4rem;
    }
    h5 {
        font-size: 2.2rem;
    }
    h6 {
        font-size: 1.9rem;
    }
    p {
        font-size: 1.5rem;
    }
    .elementor-widget-text-editor ul li {
        font-size: 1.5rem;
    }
    .footer-upper {
        padding: 50px 0;
    }
    .footer-upper-wrapper {
        gap: 30px;
    }
    .hero {
        height: 640px;
        padding-bottom: 100px;
        padding-left: 15px;
        padding-right: 15px;
    }
    .hero-description {
        font-size: 1.6rem;
    }
    .vr-cta-wrapper {
        max-width: 100%;
    }
    .vr-cta {
        height: 520px;
    }
    .vr-cta-wrapper p {
        font-size: 1.5rem;
    }
    .faq-item-content p {
        font-size: 1.5rem;
    }
    h1.single-post-title {
        font-size: 4rem;
    }
}
/* 550px */

@media (max-width: 520px) {
    .header-right > .btn {
        display: none;
    }
    main {
        padding-top: 73px;
    }
    .home main,
    .error404 main,
    .single-post main,
    .single-services main {
        padding-top: 0;
    }
    .container {
        max-width: 90vw;
    }
    .e-con > .e-con-inner {
        max-width: 90vw !important;
    }
    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 90vw !important;
    }
    .narrow-container {
        max-width: 90vw;
    }
    .post-container {
        max-width: 90vw;
    }
    .about-cta-description {
        font-size: 1.8rem;
    }
    .service-card {
        height: 320px;
    }
    .service-card-title {
        font-size: 2rem;
    }
    .service-card-wrapper {
        padding: 12px;
    }
    .service-card-icon {
        width: 36px;
        height: 36px;
    }
    .service-card .service-card-icon img {
        width: 20px;
        height: 20px;
    }
    .service-card {
        height: 280px;
    }
    .service-tag {
        font-size: 1.2rem;
    }
    .icons-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .icon-item-icon {
        width: 60px;
        height: 60px;
    }
    .icon-item-title {
        font-size: 2.2rem;
    }
    .icon-item-description {
        font-size: 1.4rem;
    }
    .icons-upper-title {
        font-size: 1.3rem;
    }
    .why-wrapper {
        max-width: 75vw;
    }
    .why-title {
        font-size: 2.2rem;
    }
    .why {
        height: 260px;
        padding-bottom: 30px;
    }
    .why-upper-title {
        font-size: 1.3rem;
    }
    .cta-title {
        font-size: 4rem;
    }
    .cta-description {
        font-size: 1.5rem;
    }
    .cta-icon svg {
        width: 68px;
        height: 68px;
    }
    .cta-title {
        padding-left: 15px;
        padding-right: 15px;
    }
    .cta-description {
        padding-left: 15px;
        padding-right: 15px;
    }
    .cta-button .btn {
        font-size: 1.6rem;
    }
    .latest-posts-list {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }
    .post-card-image {
        height: 180px;
    }
    .element-header {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        padding-bottom: 30px;
        gap: 15px;
    }
    .mobile-nav li a {
        font-size: 2.8rem;
    }
    .mobile-menu {
        top: 72px;
        height: calc(100vh - 72px);
    }
    .footer-column-acc .footer-column-title {
        font-size: 2rem;
    }
    h1.inner-header-title {
        font-size: 3.8rem;
    }
    .statistics-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .statistics-item {
        border-bottom: 1px solid rgba(0, 0, 0, 0.10) !important;
        border-left: none !important;
        border-right: none !important; 
        border-top: none !important;
    }
    .statistics-item:first-child {
        border-top: 1px solid rgba(0, 0, 0, 0.10) !important;
        border-bottom: 1px solid rgba(0, 0, 0, 0.10) !important;
        border-left: none !important;
        border-right: none !important; 
    }
    .quote-left {
        width: 100%;
    }
    .form-input-2 {
        grid-template-columns: minmax(0, 1fr);
    }
    .image-acc-resp-item p {
        font-size: 1.5rem;
    }
    .about-grid-item-description p {
        font-size: 1.5rem;
    }
    h1.single-post-title {
        font-size: 3rem;
    }
}
/* 520px */

@media (max-width: 400px) {
    h1 {
        font-size: 4.2rem;
    }
    h2 {
        font-size: 3.8rem;
    }
    h3 {
        font-size: 2.8rem;
    }
    h4 {
        font-size: 2.2rem;
    }
    h5 {
        font-size: 2rem;
    }
    h6 {
        font-size: 1.8rem;
    }
    .footer-information {
        width: 100%;
    }
    .footer-logo svg {
        width: 200px;
    }
    .footer-column-acc .footer-column-title {
        font-size: 2rem;
    }
    .footer-column-acc .footer-column-nav li a {
        font-size: 1.5rem;
    }
    .hero-buttons {
        flex-direction: column;
    }
    .hero {
        padding-bottom: 50px;
    }
    .paralax-title > span {
        font-size: 2.8rem;
    } 
    .parallax-icon svg {
        width: 55px;
        height: 55px;
    }
    .cta-title {
        font-size: 3rem;
    }
    .cta-button .btn {
        font-size: 1.5rem;
    }
    .post-card-title {
        font-size: 1.8rem;
    }
    .post-card-bottom-button span {
        font-size: 1.3rem;
    }
    .post-card-date {
        font-size: 1.3rem;
    }
    .post-card-bottom-arrow {
        width: 30px;
        height: 30px;
    }
    .post-card-bottom-arrow {
        top: 14px;
    }
    .post-card-bottom-button span {
        position: relative;
        top: 10px;
    }
    .mobile-menu-footer-item,
    .mobile-menu-footer-item a {
        font-size: 1.7rem;
    }
    .mobile-menu-footer {
        gap: 10px;
    }
    .footer-copyright span {
        font-size: 1.3rem;
    }
    .footer-lower-menu ul a {
        font-size: 1.3rem;
    }
    .single-post-metas span {
        font-size: 1.3rem;
    }
}
/* 400px */

@media (max-width: 350px) {
    .header-logo svg {
        width: 120px;
    }
    .footer-copyright span {
        font-size: 1.2rem;
    }
    .footer-lower-menu ul a {
        font-size: 1.2rem;
    }
    .footer-contacts-row,
    .footer-contacts-row a {
        font-size: 1.4rem;
    }
}
/* 350px */