/************************ Default css ***************************/

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: #000000;
    overflow-x: hidden;
}

html {
    scroll-behavior: smooth;
}

input,
textarea,
select,
button {
    font: inherit;
    color: inherit;
    background: transparent;
    border: none;
    outline: none;
}

button {
    cursor: pointer;
}

.container {
    max-width: 1310px;
    margin: 0 auto;
    padding: 0 15px;
}

/* Hover Effect */

.theme_hover_effect_button .elementor-button {
    position: relative;
    overflow: hidden;
    z-index: 1;
}

/* .theme_hover_effect_button .elementor-button .elementor-button-text {
    position: relative;
    display: block;
    overflow: hidden;
    height: 20px;
    line-height: 20px;
    color: transparent;
} */

/* .theme_hover_effect_button .elementor-button .elementor-button-text::before,
.theme_hover_effect_button .elementor-button .elementor-button-text::after {
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    text-align: center;
    transition: all 0.5s ease;
    color: #ffffff;
} */

.theme_hover_effect_button .elementor-button .elementor-button-text::before {
    transform: translateY(0);
    opacity: 1;
}

.theme_hover_effect_button .elementor-button .elementor-button-text::after {
    transform: translateY(20px);
    opacity: 0;
}

.theme_hover_effect_button .elementor-button:hover .elementor-button-text::before {
    transform: translateY(-20px);
    opacity: 0;
}

.theme_hover_effect_button .elementor-button:hover .elementor-button-text::after {
    transform: translateY(0);
    opacity: 1;
}

.theme_hover_effect_button .elementor-button::before,
.theme_hover_effect_button .elementor-button::after {
    content: "";
    position: absolute;
    left: 14px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    transform: translateY(-50%);
    transition: all 0.8s ease;
}

.theme_hover_effect_button .elementor-button::before {
    background: #ffffff;
    z-index: 2;
}

.theme_hover_effect_button .elementor-button::after {
    background: #ffffff;
    transform: translateY(-50%) scale(0);
    opacity: 1;
    z-index: 0;
}

.theme_hover_effect_button.fade .elementor-button:hover::after {
    transform: translateY(-50%) scale(50);
    opacity: 0;
    background: rgba(255, 255, 255, 0.7);
}

.theme_hover_effect_button.stay .elementor-button:hover::after {
    transform: translateY(-50%) scale(25);
    opacity: 1;
    background: #ffffff;
}

.theme_hover_effect_button.stay .elementor-button:hover {
    background: #ffffff !important;
}

.theme_hover_effect_button .elementor-button:hover {
    color: #fff !important;
}

.theme_hover_effect_button.stay .elementor-button:hover::before {
    background: #000000;
}

.theme_hover_effect_button.stay .elementor-button:hover .elementor-button-text::after {
    color: #000000;
}

.theme_hover_effect_button .elementor-button .elementor-button-content-wrapper {
    position: relative;
    z-index: 1;
    transition: all .3s ease;
}

.theme_hover_effect_button.stay .elementor-button:hover .elementor-button-content-wrapper {
    color: #000000;
}

/************************ Header css ***************************/

header {
    position: fixed !important;
    top: 0;
    left: 0;
    z-index: 2 !important;
    width: 100%;
}

.header_logo_column {
    width: fit-content;
    min-width: 120px;
}

.header_button_part {
    width: fit-content;
}

.header_menu_column {
    justify-content: flex-end;
}

.header_logo a img {
    display: block;
    min-width: 120px;
}

.header_logo .elementor-widget-container {
    display: flex;
    align-items: center;
    justify-content: center;
}

.header_menu nav ul {
    flex-wrap: nowrap !important;
}

.header_menu nav ul li.log_in_link,
.header_menu nav ul li.get_in_touch_link {
    display: none;
}

.header_menu .elementor-widget-container {
    display: flex;
    align-items: center;
}

.header_menu nav ul li.case_study_link,
.header_menu nav ul li.blog_link {
    margin-right: 0 !important;
}

.header_login_btn .elementor-button {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.header_login_btn .elementor-button:hover {
    color: #0071e3 !important;
    background: #fff;
}

.header_get_in_touch_btn .elementor-button {
    display: block;
    background: linear-gradient(90deg, #59aae8 13.12%, #6636eb 126.49%);
    box-shadow: 0 0 4px 0 rgba(255, 255, 255, 0.3) inset;
}

header.sticky {
    background: #000000;
    box-shadow: 0 2px 5px rgba(255, 255, 255, 0.1);
    z-index: 2 !important;
}

body:has(.header_menu .hfe-nav-menu nav.menu-is-active) {
    overflow: hidden;
}

.header_menu nav ul li a::after,
.footer_menu nav ul li a::after {
    height: 1px !important;
}

@media (max-width: 1199px) {
    .site_header .e-con-inner {
        padding: 20px 0;
    }

    .header_logo_column {
        min-width: 100px;
        width: 100px;
    }

    .header_logo a img {
        display: block;
        min-width: 100px;
        width: 100px !important;
        height: 50px !important;
    }

    .header_menu nav ul li {
        margin-right: 40px !important;
    }
}

@media (max-width: 1024px) {
    .site_header .e-con-inner {
        padding: 15px 0;
    }

    .header_button_part {
        display: none;
    }

    .header_menu nav ul {
        display: block !important;
    }

    .header_menu_column {
        width: fit-content;
    }

    .header_logo_column {
        min-width: 90px;
        width: 90px;
    }

    .header_logo a img {
        min-width: 90px;
        height: 45px !important;
    }

    .header_menu .hfe-nav-menu {
        width: 30px;
    }

    .header_menu .hfe-nav-menu::before {
        display: none;
    }

    .header_menu .hfe-nav-menu__toggle {
        margin-right: 0 !important;
    }

    .header_menu .hfe-nav-menu__toggle .hfe-nav-menu-icon {
        display: block;
        padding: 0 !important;
    }

    .header_menu .hfe-nav-menu__toggle .hfe-nav-menu-icon svg {
        display: block;
        width: 30px;
        height: 30px;
        line-height: 30px;
    }

    .header_menu .hfe-nav-menu nav {
        position: fixed !important;
        top: 75px !important;
        left: 0 !important;
    }

    .header_menu .hfe-nav-menu nav ul {
        width: 100%;
        padding: 15px !important;
    }

    .header_menu nav ul li {
        margin-right: 0 !important;
    }

/*     .header_menu nav ul li a {
        color: #000000 !important;
    } */

    .header_menu nav ul li.log_in_link,
    .header_menu nav ul li.get_in_touch_link {
        display: block;
    }
}

/************************ Footer css ***************************/

.footer_top_part,
.footer_middle_part {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.site_footer form p {
    display: flex;
    align-items: center;
}

.footer_form form {
    position: relative;
    margin-right: 140px;
}

.footer_submit_field {
    width: fit-content;
    position: absolute;
    top: 0;
    left: 100%;
    z-index: 1;
    height: 100%;
    cursor: pointer;
}

.footer_submit_field .elementor-button {
    background-color: transparent;
    padding: 0;
}

.footer_submit_field.theme_hover_effect_button .elementor-button .elementor-button-text {
    height: 100%;
    line-height: 100%;
}

.footer_form form input.wpcf7-email {
    color: #ffffff;
    background: #000;
    border-radius: 8px 0 0 8px;
    padding: 10px;
    width: 321px;
    height: 48px;
}

.footer_form form input.wpcf7-email::placeholder {
    font-family: "Aeonik", Sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 28px !important;
    color: #afafb0;
    letter-spacing: 0.18px;
}

.footer_submit_field .wpcf7-spinner {
    display: none;
}

.footer_submit_field input {
    font-family: "Aeonik", Sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: normal;
    background: linear-gradient(90deg, #59aae8 13.12%, #6636eb 126.49%);
    border-radius: 8px;
    box-shadow: 0 0 4px 0 rgba(255, 255, 255, 0.3) inset;
    letter-spacing: 0.24px;
    padding: 14px 32px;
    cursor: pointer;
    z-index: 1;
}

/* .footer_submit_field.theme_hover_effect_button
    .elementor-button
    .elementor-button-text::before,
.footer_submit_field.theme_hover_effect_button
    .elementor-button
    .elementor-button-text::after {
    content: "Subscribe";
    top: 50%;
    font-family: "Aeonik", Sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: normal;
    letter-spacing: 0.24px;
} */

.footer_submit_field.theme_hover_effect_button .elementor-button .elementor-button-text::before,
.footer_submit_field.theme_hover_effect_button .elementor-button:hover .elementor-button-text::after {
    transform: translateY(-50%);
}

.footer_column {
    width: fit-content;
}

.footer_icon_list .elementor-icon-list-icon svg {
    margin: 0 !important;
}

.footer_bottom_column {
    width: fit-content;
}

.footer_icon_list .elementor-icon-list-text {
    padding: 0 !important;
}

.footer_submit_field.theme_hover_effect_button .elementor-button::after {
    display: none;
}

.footer_form form {
    position: relative;
}

.footer_form form .wpcf7-response-output {
    margin: 0;
    padding: 10px;
    color: #FFFFFF;
    text-align: center;
    font-family: "Aeonik", Sans-serif;
    z-index: 1;
    font-size: 14px;
    width: calc(100% + 140px);
}

.footer_form form .wpcf7-form-control-wrap .wpcf7-not-valid-tip {
    font-family: "Aeonik", Sans-serif;
    font-size: 14px;
}

.footer_form {
    max-width: 461px !important;
}

@media (max-width: 767px) {

    .footer_heading,
    .footer_form,
    .footer_form form .wpcf7-form-control-wrap,
    .footer_form form .wpcf7-form-control-wrap input {
        width: 100%;
    }

    .footer_heading {
        text-align: center;
    }
}

/************************ Hero Section css ***************************/

.hero_discuss_project_btn .elementor-button {
    display: block;
    background: linear-gradient(90deg, #59aae8 13.12%, #6636eb 126.49%);
    box-shadow: 0 0 4px 0 rgba(255, 255, 255, 0.3) inset;
}

@media (max-width: 767px) {
    .hero_heading .elementor-heading-title br {
        display: none;
    }
}

/************************ Feature Section css ***************************/

.feature_row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}

.feature_image_box {
    background: rgba(52, 61, 70, 0.5);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 14px;
    height: 100%;
}

@media (max-width: 991px) {
    .feature_row {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .feature_row {
        grid-template-columns: repeat(1, 1fr);
    }
}

/************************ Service Section css ***************************/

.service_row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.service_box {
    border-radius: 20px;
    border: 2px solid rgba(45, 45, 51, 1);
    background: linear-gradient(121deg,
            rgba(0, 0, 0, 0.1) 21.93%,
            rgba(37, 139, 255, 0.1) 114.01%);
    box-shadow: 0 0 100px 0 rgba(255, 255, 255, 0.04) inset;
    backdrop-filter: blur(25px);
    overflow: hidden;
    height: 100%;
    padding: 25px 25px 40px 25px;
}

.service_image {
    position: relative;
    padding-bottom: 53.96%;
}

.service_image img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 14px;
}

.service_detail {
    margin-top: 30px;
}

.service_title h3 {
    font-family: "Aeonik", Sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 34px;
    color: #fff;
    margin-bottom: 15px;
}

.service_desc p {
    font-family: "Aeonik", Sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 28px;
    color: #afafb0;
}

@media (max-width: 1199px) {
    .service_row {
        gap: 15px;
    }

    .service_box {
        padding: 20px 20px 35px 20px;
    }

    .service_detail {
        margin-top: 25px;
    }

    .service_title h3 {
        font-size: 22px;
        line-height: 32px;
        margin-bottom: 12px;
    }

    .service_desc p {
        line-height: 26px;
    }
}

@media (max-width: 991px) {
    .service_row {
        grid-template-columns: repeat(2, 1fr);
    }

    .service_box {
        padding: 20px 20px 30px 20px;
    }

    .service_detail {
        margin-top: 20px;
    }

    .service_title h3 {
        font-size: 20px;
        line-height: 30px;
        margin-bottom: 10px;
    }
}

@media (max-width: 767px) {
    .service_row {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
    }

    .service_box {
        padding: 15px 15px 20px 15px;
    }

    .service_detail {
        margin-top: 15px;
    }

    .service_title h3 {
        font-size: 18px;
        line-height: 26px;
    }

    .service_desc p {
        font-size: 16px;
        line-height: 24px;
    }
}

/************************ Tab Section css ***************************/

.team_work_tabs .eael-tabs-nav {
    max-width: 580px;
    margin: 0 auto;
}

.team_work_tabs .eael-tabs-nav ul {
    background: #0d0d14;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 50px;
    padding: 14px;
}

.team_work_tabs .eael-tabs-nav ul li {
    color: rgb(255 255 255 / 60%) !important;
    background-color: transparent !important;
    padding: 0 !important;
    display: block;
}

.team_work_tabs .eael-tabs-nav ul li:focus-visible {
    outline: none !important;
}

.team_work_tabs .eael-tabs-nav ul li h3 {
    padding: 16px 24px;
}

.team_work_tabs .eael-tabs-nav ul li.active h3 {
    color: rgb(255 255 255 / 100%) !important;
    background: linear-gradient(90deg, #59aae8 13.12%, #6636eb 126.49%);
    border-radius: 50px;
    box-shadow: 0 0 4px 0 rgba(255, 255, 255, 0.3) inset;
}

.team_work_tabs .eael-tabs-content {
    max-width: 917px;
    margin: 0 auto;
    margin-top: 50px;
}

.team_work_tabs .eael-tabs-content .eael-tab-content-item p {
    text-align: center;
}

@media (max-width: 1199px) {
    .team_work_tabs .eael-tabs-nav ul {
        padding: 12px;
    }

    .team_work_tabs .eael-tabs-nav ul li h3 {
        padding: 14px 20px;
    }

    .team_work_tabs .eael-tabs-content {
        margin-top: 40px;
    }
}

@media (max-width: 991px) {
    .team_work_tabs .eael-tabs-nav ul {
        padding: 10px;
    }

    .team_work_tabs .eael-tabs-nav ul li h3 {
        padding: 12px 15px;
    }

    .team_work_tabs .eael-tabs-content {
        margin-top: 30px;
    }
}

@media (max-width: 767px) {
    .team_work_tabs .eael-tabs-nav {
        max-width: 100%;
    }

    .team_work_tabs .eael-tabs-nav ul {
        flex-direction: column;
        gap: 10px;
        border-radius: 10px;
        padding: 15px;
    }

    .team_work_tabs .eael-tabs-nav ul li h3 {
        font-size: 16px !important;
        line-height: 24px !important;
        padding: 10px 15px;
    }

    .team_work_tabs .eael-tabs-content {
        margin-top: 20px;
    }
}

/************************ Blog Listing Section css ***************************/

.blog_column {
    margin-bottom: 30px;
}

.blog_column:last-child {
    margin-bottom: 0;
}

.blog_card {
    background: linear-gradient(185deg,
            rgba(121, 118, 141, 0.2) 44.19%,
            rgba(121, 118, 141, 0.1) 103.72%);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 10px;
    backdrop-filter: blur(25px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 20px 18px 25px;
    text-decoration: none !important;
}

.blog_title {
    max-width: 800px;
}

.blog_title h3 {
    font-family: "Aeonik", Sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 34px;
    color: #fff;
    position: relative;
    padding-left: 54px;
}

.blog_title h3::before {
    content: "";
    background-image: url('data:image/svg+xml,<svg width="34" height="34" viewBox="0 0 34 34" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.08325 2.83331C5.95608 2.83331 4.87508 3.28108 4.07805 4.07811C3.28102 4.87514 2.83325 5.95614 2.83325 7.08331V26.9166C2.83325 28.0438 3.28102 29.1248 4.07805 29.9219C4.87508 30.7189 5.95608 31.1666 7.08325 31.1666H19.8333V24.0833C19.8333 22.9561 20.281 21.8751 21.078 21.0781C21.8751 20.2811 22.9561 19.8333 24.0833 19.8333H31.1666V7.08331C31.1666 5.95614 30.7188 4.87514 29.9218 4.07811C29.1248 3.28108 28.0438 2.83331 26.9166 2.83331H7.08325ZM24.4983 29.9214C23.9891 30.4306 23.3588 30.8021 22.6666 31.0009V24.0833C22.6666 23.7076 22.8158 23.3473 23.0815 23.0816C23.3472 22.8159 23.7075 22.6666 24.0833 22.6666H31.0008C30.802 23.3588 30.4306 23.9891 29.9213 24.4984L24.4983 29.9214ZM9.91659 8.49998C9.54086 8.49998 9.18053 8.64924 8.91485 8.91491C8.64917 9.18059 8.49992 9.54092 8.49992 9.91665C8.49992 10.2924 8.64917 10.6527 8.91485 10.9184C9.18053 11.1841 9.54086 11.3333 9.91659 11.3333H24.0833C24.459 11.3333 24.8193 11.1841 25.085 10.9184C25.3507 10.6527 25.4999 10.2924 25.4999 9.91665C25.4999 9.54092 25.3507 9.18059 25.085 8.91491C24.8193 8.64924 24.459 8.49998 24.0833 8.49998H9.91659ZM9.91659 14.1666C9.54086 14.1666 9.18053 14.3159 8.91485 14.5816C8.64917 14.8473 8.49992 15.2076 8.49992 15.5833C8.49992 15.959 8.64917 16.3194 8.91485 16.585C9.18053 16.8507 9.54086 17 9.91659 17H24.0833C24.459 17 24.8193 16.8507 25.085 16.585C25.3507 16.3194 25.4999 15.959 25.4999 15.5833C25.4999 15.2076 25.3507 14.8473 25.085 14.5816C24.8193 14.3159 24.459 14.1666 24.0833 14.1666H9.91659ZM9.91659 19.8333C9.54086 19.8333 9.18053 19.9826 8.91485 20.2482C8.64917 20.5139 8.49992 20.8743 8.49992 21.25C8.49992 21.6257 8.64917 21.986 8.91485 22.2517C9.18053 22.5174 9.54086 22.6666 9.91659 22.6666H15.5833C15.959 22.6666 16.3193 22.5174 16.585 22.2517C16.8507 21.986 16.9999 21.6257 16.9999 21.25C16.9999 20.8743 16.8507 20.5139 16.585 20.2482C16.3193 19.9826 15.959 19.8333 15.5833 19.8333H9.91659Z" fill="%23258BFF"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 3px;
    left: 0;
    width: 34px;
    height: 34px;
}

.blog_tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.blog_tag {
    font-family: "Aeonik", Sans-serif;
    font-weight: 700;
    font-size: 22px;
    line-height: 32px;
    color: #fff;
    background: #272a46;
    border: 1px solid rgba(84, 87, 97, 1);
    border-radius: 40px;
    padding: 5px 20px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.blog_tag:hover {
    background: #161828;
}

@media (max-width: 1199px) {
    .blog_column {
        margin-bottom: 25px;
    }

    .blog_card {
        padding: 15px 15px 15px 15px;
    }

    .blog_title h3 {
        font-size: 20px;
        line-height: 30px;
        padding-left: 38px;
    }

    .blog_title h3::before {
        width: 28px;
        height: 28px;
    }

    .blog_tag {
        font-size: 18px;
        line-height: 26px;
        padding: 5px 15px;
    }
}

@media (max-width: 991px) {
    .blog_column {
        margin-bottom: 20px;
    }

    .blog_card {
        flex-wrap: wrap;
        gap: 15px;
    }

    .blog_title {
        width: 100%;
        max-width: 100%;
    }

    .blog_title h3 {
        font-size: 18px;
        line-height: 26px;
        padding-left: 30px;
    }

    .blog_title h3::before {
        width: 20px;
        height: 20px;
    }

    .blog_tag {
        font-size: 16px;
        line-height: 24px;
        padding: 5px 10px;
    }
}

@media (max-width: 767px) {
    .blog_column {
        margin-bottom: 15px;
    }

    .blog_tag {
        border-radius: 10px;
    }
}

/************************ 404 Page css ***************************/

.not_found_section {
    padding-top: 300px;
    padding-bottom: 200px;
}

.error_content h1 {
    font-family: "Instrument Serif", Sans-serif;
    font-weight: 400;
    font-size: 80px;
    line-height: 90px;
    color: #FFF;
    text-align: center;
}

.error_btn {
    margin-top: 50px;
    text-align: center;
}

.error_btn a {
    display: inline-block;
    font-family: "Aeonik", Sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 34px;
    color: #FFF;
    background: linear-gradient(90deg, #59AAE8 13.12%, #6636EB 126.49%);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 10px;
    backdrop-filter: blur(25px);
    padding: 10px 30px;
    text-align: center;
    text-decoration: none;
}

@media (max-width: 1199px) {
    .not_found_section {
        padding-top: 250px;
        padding-bottom: 150px;
    }

    .error_content h1 {
        font-size: 70px;
        line-height: 80px;
    }

    .error_btn {
        margin-top: 40px;
    }

    .error_btn a {
        font-size: 22px;
        line-height: 32px;
        padding: 10px 25px;
    }
}

@media (max-width: 991px) {
    .not_found_section {
        padding-top: 200px;
        padding-bottom: 100px;
    }

    .error_content h1 {
        font-size: 60px;
        line-height: 70px;
    }

    .error_btn {
        margin-top: 30px;
    }

    .error_btn a {
        font-size: 20px;
        line-height: 30px;
        padding: 10px 20px;
    }
}

@media (max-width: 767px) {
    .not_found_section {
        padding-top: 150px;
        padding-bottom: 50px;
    }

    .error_content h1 {
        font-size: 50px;
        line-height: 60px;
    }

    .error_btn {
        margin-top: 20px;
    }

    .error_btn a {
        font-size: 18px;
        line-height: 26px;
        padding: 10px 15px;
    }

}

/************************ Single Blog Detail Page css ***************************/

.single_blog_detail {
    max-width: 790px;
    margin: 0 auto;
}

.single_blog_section {
    padding: 160px 15px;
}

.single_blog_section .container {
    padding: 0;
}

.single_blog_feature_image img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: center;
    margin-bottom: 50px;
}

.single_blog_title h1 {
    font-family: "Instrument Serif", Sans-serif;
    font-weight: 400;
    font-size: 40px;
    line-height: 50px;
    color: #FFF;
    text-align: center;
    margin-bottom: 30px;
}

.single_blog_content h2 {
    font-family: "Aeonik", Sans-serif;
    font-weight: 400;
    font-size: 28px;
    line-height: 38px;
    color: #FFF;
    margin-top: 30px;
    margin-bottom: 15px;
}

.single_blog_content h3 {
    font-family: "Aeonik", Sans-serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 34px;
    color: #FFF;
    margin-top: 20px;
    margin-bottom: 15px;
}

.single_blog_content h4 {
    font-family: "Aeonik", Sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 32px;
    color: #FFF;
    margin-top: 20px;
    margin-bottom: 15px;
}

.single_blog_content h5 {
    font-family: "Aeonik", Sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
    color: #FFF;
    margin: 15px 0;
}

.single_blog_content h6 {
    font-family: "Aeonik", Sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
    color: #FFF;
    margin: 15px 0;
}

.single_blog_content p,
.single_blog_content ul li {
    font-family: "Aeonik", Sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
    color: #AFAFB0;
    margin-bottom: 15px;
}

.single_blog_content p strong,
.single_blog_content ul li strong {
    font-weight: 500;
    color: #FFFFFF;
}

.single_blog_content p:last-child {
    margin-bottom: 0px;
}

.single_blog_content ul {
    margin: 20px 0;
    padding-left: 20px;
}

.single_blog_content ul li {
    margin-bottom: 5px !important;
}

.single_blog_content ul li:last-child {
    margin-bottom: 0 !important;
}

.single_blog_content hr {
    margin: 30px 0;
}

.single_blog_content table th,
.single_blog_content table td {
    font-family: "Aeonik", Sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
    color: #FFFFFF;
    padding: 10px;
}

.single_blog_content table td {
    color: #AFAFB0;
}

@media (max-width: 1199px) {
    .single_blog_section {
        padding: 100px 15px;
    }

    .single_blog_feature_image img {
        margin-bottom: 40px;
    }

    .single_blog_title h1 {
        font-size: 36px;
        line-height: 46px;
        margin-bottom: 25px;
    }

    .single_blog_content h2 {
        font-size: 24px;
        line-height: 34px;
        margin-top: 25px;
        margin-bottom: 12px;
    }

    .single_blog_content h3 {
        font-size: 22px;
        line-height: 32px;
        margin-top: 15px;
        margin-bottom: 12px;
    }

    .single_blog_content h4 {
        font-size: 20px;
        line-height: 30px;
        margin-top: 15px;
        margin-bottom: 12px;
    }

    .single_blog_content ul {
        margin: 18px 0;
    }

    .single_blog_content p,
    .single_blog_content ul li {
        font-size: 18px;
        line-height: 26px;
        margin-bottom: 12px;
    }

    .single_blog_content hr {
        margin: 25px 0;
    }
}

@media (max-width: 991px) {
    .single_blog_section {
        padding: 100px 15px 50px 15px;
    }

    .single_blog_feature_image img {
        margin-bottom: 30px;
    }

    .single_blog_title h1 {
        font-size: 32px;
        line-height: 42px;
        margin-bottom: 20px;
    }

    .single_blog_content h2 {
        font-size: 22px;
        line-height: 32px;
        margin-top: 20px;
        margin-bottom: 10px;
    }

    .single_blog_content h3 {
        font-size: 20px;
        line-height: 30px;
        margin-top: 12px;
        margin-bottom: 10px;
    }

    .single_blog_content h4 {
        font-size: 18px;
        line-height: 26px;
        margin-top: 12px;
        margin-bottom: 10px;
    }

    .single_blog_content ul {
        margin: 15px 0;
    }

    .single_blog_content p,
    .single_blog_content ul li {
        margin-bottom: 10px;
    }

    .single_blog_content hr {
        margin: 20px 0;
    }
}

@media (max-width: 767px) {
    .single_blog_section {
        padding: 100px 15px 40px 15px;
    }

    .single_blog_feature_image img {
        margin-bottom: 20px;
    }

    .single_blog_title h1 {
        font-size: 28px;
        line-height: 38px;
        margin-bottom: 15px;
    }

    .single_blog_content h2 {
        font-size: 20px;
        line-height: 30px;
        margin-top: 15px;
    }

    .single_blog_content h3 {
        font-size: 18px;
        line-height: 26px;
    }

    .single_blog_content ul {
        margin: 12px 0;
    }

    .single_blog_content p,
    .single_blog_content ul li {
        font-size: 16px;
        line-height: 24px;
    }

    .single_blog_content hr {
        margin: 15px 0;
    }
}

/***************************************************/

.training_module_grid .elementor-icon {
    display: block;
    transition: all .2s ease;
}

.training_module_icon_box {
    overflow: hidden;
}

.training_module_icon_box:hover .elementor-icon {
    transform: scale(1.2);
}