/*------------------------------------------------------------------
Project: Jon stark
Author: 
Last change: 07/04/2025
Primary use:
------------------------------------------------------------------ */
/*-----------------------[Table of contents]------------------------
1.Default CSS
2.Preloader CSS
3.Background Lines CSS
4.Whole Site Image Animtion CSS
5.Whole Page Aniamtion CSS
6.Dark Light Mode toggle CSS
7.Header CSS
8.Section One CSS
9.Section Services CSS
10.Section About CSS
11.Section Portfolio CSS
12.Section Testimonials CSS
13.Section Resume CSS
14.Section Pricing CSS
15.Section Blog CSS
16.Section Contact CSS
17.Section Content Page CSS
18.Single Blog Page CSS 
------------------------------------------------------------------ */
/*-----------------------[ 1.Default CSS ]------------------------*/
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    scroll-behavior: smooth;
    font-family: "IBM Plex Sans", sans-serif;
    font-style: normal;
}
html {
    scroll-behavior: smooth;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
    margin: 0;
}
a {
    text-decoration: none;
}
dl,
ol,
ul {
    margin-top: 0;
    margin-bottom: 0rem;
}
ul {
    padding-left: 0;
}
ul li {
    list-style: none;
}
button {
    border: none;
}
::-webkit-scrollbar {
    width: 4px;
}
::-webkit-scrollbar-corner {
    display: none;
}
::-webkit-scrollbar-thumb {
    background: transparent;
    background-clip: content-box;
}
::-webkit-scrollbar-track {
    background-color: transparent;
}
body {
    background: var(--primary-color);
}
.container,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    max-width: 860px !important;
}
:root {
    --primary-color: #FFFFFF;
    --border-colors: #E5E5E5;
    --section-heading: #000000;
    --text-color: #000000;
    --icons-filter: brightness(0) saturate(100%) invert(0%) sepia(94%) saturate(7500%) hue-rotate(340deg) brightness(97%) contrast(106%);
    --fix-grid-lines: linear-gradient(180deg, #E5E5E5 0%, #000 100%);
    --sub-text: #595959;
    --media-icons: brightness(0) saturate(100%) invert(35%) sepia(2%) saturate(0%) hue-rotate(152deg) brightness(97%) contrast(95%);
    --form-input-bg: #F5F6F7;
    --preloader-bg: #E5E5E5;
    --modal: #FFFFFF;
    --modal-form-input: #F5F6F7;
}
.dark-mode {
    --primary-color: #000000;
    --border-colors: #212121;
    --section-heading: #212121;
    --text-color: #FFFFFF;
    --icons-filter: brightness(0) saturate(100%) invert(99%) sepia(15%) saturate(85%) hue-rotate(344deg) brightness(111%) contrast(100%);
    --fix-grid-lines: linear-gradient(180deg, #212121 0%, #FFF 100%);
    --sub-text: #707070;
    --media-icons: brightness(0) saturate(100%) invert(47%) sepia(0%) saturate(483%) hue-rotate(331deg) brightness(93%) contrast(91%);
    --form-input-bg: #212121;
    --preloader-bg: #131313;
    --modal: #212121;
    --modal-form-input: #0000005e;
}
/*-----------------------[ 2.Preloader CSS ]------------------------*/
.preloader {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: transparent;
    overflow: hidden;
    z-index: 99999;
}
.preloader svg {
    position: absolute;
    top: 0;
    height: 110vh;
    width: 100vw;
    fill: var(--border-colors);
}
.preloader .loading {
    font-size: 30px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 8px;
    z-index: 99;
}
.loading span {
    position: relative;
    color: rgba(0, 0, 0, 0.2);
}
.loading span::after {
    position: absolute;
    top: 0;
    left: 0;
    content: attr(data-text);
    color: var(--text-color);
    opacity: 0;
    transform: rotateY(-90deg);
    animation: loading 3s infinite;
}
.loading span::after {
    animation: loading 1.5s infinite;
}
.loading span:nth-child(2)::after {
    animation-delay: 0.1s;
}
.loading span:nth-child(3)::after {
    animation-delay: 0.2s;
}
.loading span:nth-child(4)::after {
    animation-delay: 0.3s;
}
.loading span:nth-child(5)::after {
    animation-delay: 0.35s;
}
.loading span:nth-child(6)::after {
    animation-delay: 0.5s;
}
.loading span:nth-child(7)::after {
    animation-delay: 0.6s;
}
@keyframes loading {
    0%,
    75%,
    100% {
        transform: rotateY(-90deg);
        opacity: 0;
    }
    25%,
    50% {
        transform: rotateY(0);
        opacity: 1;
    }
}
/*-----------------------[ 3.Background Lines CSS ]------------------------*/
.grid-lines {
    position: fixed;
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
    z-index: -1;
    height: 100%;
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 760px;
    margin: 0px auto;
}
.grid-line-5,
.grid-line-4,
.grid-line-3,
.grid-line-2,
.grid-line-1 {
    position: relative;
    height: 100%;
}
.grid-line-5::before,
.grid-line-4::before,
.grid-line-3::before,
.grid-line-2::before,
.grid-line-1::before {
    content: "";
    position: absolute;
    top: 0px;
    height: 100%;
    right: -1px;
    width: 1px;
    background: var(--border-colors);
}
.grid-line-5::after,
.grid-line-4::after,
.grid-line-3::after,
.grid-line-2::after,
.grid-line-1::after {
    content: "";
    position: absolute;
    top: -80px;
    right: -1px;
    opacity: 0.5;
    width: 2px;
    height: 60px;
    background: var(--fix-grid-lines);
    border-radius: 1px;
}
.grid-lines .grid-line-1:after {
    animation: gridline 8s linear infinite;
}
.grid-lines .grid-line-2:after {
    animation: gridline 9s linear infinite;
    animation-delay: 3s;
}
.grid-lines .grid-line-3:after {
    animation: gridline 7s linear infinite;
    animation-delay: 6s;
}
.grid-lines .grid-line-4:after {
    animation: gridline 10s linear infinite;
    animation-delay: 4s;
}
.grid-lines .grid-line-5:after {
    animation: gridline 8s linear infinite;
    animation-delay: 8s;
}
@keyframes gridline {
    0% {
        top: -50px;
    }
    100% {
        top: 100%;
    }
}
/*-----------------------[ 4.Whole Site Image Animtion CSS ]------------------------*/
.img-animation-style1,
.img-animation-style2,
.img-animation-style3,
.img-animation-style4,
.img-animation-style5,
.img-animation-style6 {
    display: inline-block;
    position: relative;
    overflow: hidden;
    transition: 2s cubic-bezier(0.5, 0.5, 0, 1);
}
.img-animation-style1 img,
.img-animation-style2 img,
.img-animation-style3 img,
.img-animation-style4 img,
.img-animation-style5 img,
.img-animation-style6 img {
    transform-origin: 50% 50%;
    transition: 2s cubic-bezier(0.5, 0.5, 0, 1);
}
.img-animation-style1.active,
.img-animation-style2.active,
.img-animation-style3.active,
.img-animation-style4.active,
.img-animation-style5.active,
.img-animation-style6.active {
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}
.img-animation-style1.active img,
.img-animation-style2.active img,
.img-animation-style3.active img,
.img-animation-style4.active img,
.img-animation-style5.active img,
.img-animation-style6.active img {
    transform: scale(1) translate(0px, 0px);
}
.img-animation-style1 {
    clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
}
.img-animation-style1 img {
    transform: scale(1.5) translate(-100px, 0px);
}
.img-animation-style2 {
    clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
}
.img-animation-style2 img {
    transform: scale(1.5) translate(100px, 0px);
}
.img-animation-style3 {
    clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0 100%);
}
.img-animation-style3 img {
    transform: scale(1.5) translate(0, 100px);
}
.img-animation-style4 {
    clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}
.img-animation-style4 img {
    transform: scale(1.5) translate(0, -100px);
}
.img-animation-style5 {
    clip-path: inset(0 15%);
    transform: translate3d(0, 150px, 0);
}
.img-animation-style5.active {
    clip-path: inset(0 0);
    transform: translate3d(0, 0, 0);
}
.img-animation-style5 img {
    transform: scale(1.5) translate(0, -10%);
}
.img-animation-style6 {
    clip-path: circle(15% at 50% 50%);
}
.img-animation-style6.active {
    clip-path: circle(100% at 50% 50%);
}
.img-animation-style6 img {
    transform: scale(1.5) translate(0, 0);
}
/*-----------------------[ 5.Whole Page Aniamtion CSS ]------------------------*/
.fade_up,
.fade_down,
.zoom_in,
.zoom_out {
    opacity: 0;
    transition: all 2s;
}
.fade_up {
    transform: translateY(-100%);
}
.fade_down {
    transform: translateY(100%);
}
.zoom_in {
    transform: scale(0.5);
}
.zoom_out {
    transform: scale(1.5);
}
.fade_right {
    opacity: 0;
    transform: translateX(-100%);
    transition: all 2s;
}
.fade_left {
    opacity: 0;
    transform: translateX(100%);
    transition: all 2s;
}
.flip_left {
    opacity: 0;
    transform: perspective(400px) rotateY(-90deg);
    transition: all 2s;
}
.flip_right {
    opacity: 0;
    transform: perspective(400px) rotateY(90deg);
    transition: all 2s;
}
.flip_up {
    opacity: 0;
    transform: perspective(400px) rotateX(-90deg);
    transition: all 2s;
}
.flip_down {
    opacity: 0;
    transform: perspective(400px) rotateX(90deg);
    transition: all 2s;
}
.show {
    opacity: 1;
    transform: translateY(0) scale(1);
}
/*-----------------------[ 6.Dark Light Mode toggle CSS ]------------------------*/
.ul-header a {
    cursor: pointer;
    transition: background-color 0.5s, color 0.5s;
}
.icon-container {
    position: relative;
    width: 24px;
    height: 24px;
}
.icon {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 1;
    transition: opacity 0.8s ease;
    filter: var(--icons-filter);
}
.icon.hidden {
    opacity: 0;
}
.dark-toggle {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}
/*-----------------------[ 7.Header CSS ]------------------------*/
header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px;
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    margin-top: 30px;
    position: sticky;
    top: 30px;
    z-index: 100;
}
.logo-jon {
    color: var(--1, #1F75FE);
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    line-height: 32px;
}
.side-menu2,
.menu-icon,
.close-icon,
.btn-close,
.basic-plan {
    filter: var(--icons-filter);
}
.menu-list-main {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    background: var(--primary-color);
    width: 100%
}
.menu-list-main li {
    padding: 15px;
    border: 1px solid var(--border-colors);
}
.menu-list-main li a {
    color: var(--text-color);
    text-align: center;
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    display: block;
    transition: all 0.4s ease-in-out;
}
.menu-list-main li:hover a {
    color: #1F75FE;
}
.menu-toggle {
    background: none;
    border: none;
    position: relative;
    width: 24px;
    height: 24px;
}
.menu-icon,
.close-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    background-size: contain;
    background-repeat: no-repeat;
}
.menu-icon {
    background-image: url('../images/svg/menu.svg');
    opacity: 1;
}
.close-icon {
    background-image: url('../images/svg/close-menu.svg');
    opacity: 0;
    transform: translate(-50%, -50%) rotate(90deg);
}
/* Menu container animation */
.menu-container {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--primary-color);
    z-index: 99;
    margin-top: 20px;
}
.menu-container.open {
    max-height: 100vh;
    transition: max-height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
/* Menu list styles */
.menu-list-main {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    background: var(--primary-color);
    width: 100%;
    margin: 0;
    padding: 0;
    opacity: 0;
    transform: translateY(-20px);
    transition: opacity 0.3s ease-out, transform 0.3s ease-out;
}
.menu-container.open .menu-list-main {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.3s 0.2s ease-out, transform 0.3s 0.2s ease-out;
}
/* When menu is active */
.menu-toggle.active .menu-icon {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(-90deg);
}
.menu-toggle.active .close-icon {
    opacity: 1;
    transform: translate(-50%, -50%) rotate(0deg);
}
.offcanvas,
.offcanvas.offcanvas-end {
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
}
.btn-close:focus {
    box-shadow: none;
}
.offcanvas.offcanvas-end {
    top: 0;
    right: 0;
    width: 100% !important;
    max-width: 375px;
}
.offcanvas-header {
    padding: 30px 30px 20px 30px;
}
.offcanvas-body {
    padding: 0 30px 30px 30px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.jon-offcanvas {
    color: var(--1, #1F75FE);
    font-size: 32px;
    font-weight: 700;
    line-height: 48px;
}
.iquam {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 400;
    line-height: 30px;
}
.footer-offancavs {
    padding-top: 30px;
}
.ofan-contac {
    color: var(--text-color);
    font-size: 24px;
    font-weight: 600;
    line-height: 32px;
    padding-bottom: 10px;
}
.offacn-details-con {
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    padding: 20px;
    margin-bottom: 30px;
}
.offacn-details-con li,
.offacn-details-con li a {
    display: flex;
    align-items: center;
    color: var(--text-color);
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
}
.offacn-details-con li:hover,
.offacn-details-con li a:hover {
    color: #1F75FE;
}
.offacn-details-con li {
    border-bottom: 1px solid var(--border-colors);
    padding: 20px 0;
}
.offacn-details-con li img {
    margin-right: 10px;
}
.offcanva-media {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    padding: 12px;
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
}
.offcanva-media img {
    filter: var(--media-icons);
}
.offcanva-media img:hover {
    filter: brightness(0) saturate(100%) invert(29%) sepia(99%) saturate(1475%) hue-rotate(205deg) brightness(102%) contrast(99%);
}
/*-----------------------[ 8.Section One CSS ]------------------------*/
.secOneImg-main {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 30px 0;
}
.secOneImg-main img {
    max-width: 100%
}
.secOneImg-main h1 {
    color: var(--text-color);
    text-align: right;
    font-size: 96px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    animation: floatText 6s ease-in-out infinite alternate;
    transform-origin: center;
}
.secOneImg-main h1 {
    position: absolute;
    left: 155px;
    top: 80px;
}
.secOneImg-main span {
    -webkit-text-stroke-width: 2px;
    -webkit-text-stroke-color: var(--text-color);
    color: transparent;
    position: absolute;
    left: 360px;
    bottom: -140px;
    animation: floatSpan 5s ease-in-out infinite alternate;
    transform-origin: left center;
}
@keyframes floatText {
    0%,
    100% {
        transform: translateY(0) rotateZ(-1deg);
    }
    50% {
        transform: translateY(-15px) rotateZ(1deg);
    }
}
@keyframes floatSpan {
    0%,
    100% {
        transform: translateY(0) rotateZ(1deg) scale(1);
    }
    50% {
        transform: translateY(20px) rotateZ(-2deg) scale(1.05);
    }
}
.heloo::after {
    content: '';
    width: 260px;
    height: 260px;
    background: var(--border-colors);
    display: block;
    position: absolute;
    bottom: 0;
    z-index: -1;
}
.sionate {
    color: var(--sub-text);
    text-align: center;
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
}
.elop-main {
    padding: 30px;
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
}
.sec-one-btns {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-top: 30px;
}
.sec-one-btns a {
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    width: 100%;
    max-width: 200px;
    padding: 12px;
    transition: all 0.3s ease-in-out;
}
.cvDownload {
    border: 1px solid var(--text-color);
    background: var(--primary-color);
    color: var(--text-color);
}
.cvDownload:hover {
    background: #1F75FE;
    color: #FFF;
    border: 1px solid transparent;
}
.hire-me {
    border: 1px solid transparent;
    padding: 12px;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    width: 100%;
    max-width: 200px;
    padding: 12px;
    transition: all 0.3s ease-in-out;
    border: 1px solid transparent;
    background: #1F75FE;
    color: #FFF;
}
.hire-me:hover {
    background: transparent;
    color: var(--text-color);
    border: 1px solid var(--text-color);
}
/*-----------------------[ 9.Section Services CSS ]------------------------*/
.section-services {
    padding: 60px 0;
}
.sec-heading {
    padding: 10px;
    background: var(--section-heading);
    color: #FFF;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    display: inline-block;
    margin-bottom: 20px;
}
.ealitiesBy {
    text-align: left;
}
.adewd {
    color: var(--text-color);
    font-size: 32px;
    font-weight: 600;
    padding-bottom: 20px;
    line-height: normal;
}
.service-box {
    border: 1px solid var(--border-colors);
    padding: 30px;
    background: var(--primary-color);
    transition: 0.25s;
    cursor: pointer;
}
.service-box:hover,
.service-box:focus {
    box-shadow: inset 30em 0 0 0 var(--border-colors);
}
.web-dev {
    color: var(--text-color);
    font-size: 24px;
    font-weight: 600;
    padding-bottom: 10px;
    padding-top: 20px;
}
.yet {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    max-width: 360px;
}
.service-box-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 30px;
}
.services-im1 {
    max-width: 100%;
    margin-right: 35px;
}
.services-im2 {
    max-width: 100%;
    margin-left: 35px;
}
.svg-path {
    stroke: var(--text-color);
}
#service-box-main2 {
    justify-content: center;
}
/*-----------------------[ 10.Section About CSS ]------------------------*/
.section-about {
    padding: 60px 0;
}
.about-img {
    max-width: 100%;
}
.about-me-datils-main {
    padding: 30px;
    border: 1px solid var(--border-colors);
    margin: 30px auto;
    background: var(--primary-color);
    display: flex;
    align-items: center;
    gap: 30px;
    max-width: 725px;
}
.about-detail-main {
    display: flex;
    align-items: center;
    padding-bottom: 10px;
}
.about-detail {
    color: var(--sub-text);
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
    max-width: 130px;
    width: 100%;
}
.about-detail-info {
    color: var(--text-color);
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
    width: 250px;
}
.about-detail-info::before {
    content: ":";
    color: var(--sub-text);
    margin-right: 30px;
}
.awrd-box {
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    padding: 20px;
}
.awrd-projects-main {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.awrd-box h3 {
    color: var(--text-color);
    text-align: center;
    font-size: 64px;
    font-style: normal;
    font-weight: 700;
    line-height: 80px;
    padding-bottom: 20px;
}
.awrd-box p {
    color: var(--sub-text);
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px;
}
.projectK::after {
    content: 'K';
}
.eprYer::after {
    content: '+';
}
/*-----------------------[ 11.Section Portfolio CSS ]------------------------*/
.portfoilo-box {
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    padding: 20px;
    margin-bottom: 30px;
    position: relative;
    display: block;
}
.portfoilo-box img {
    max-width: 100%;
    transition: all 0.3s ease;
    display: block;
}
.portfoilo-box:hover img {
    transform: scale(1.05);
    opacity: 0.9;
}
.portfoilo-box h3,
.portfoilo-box p {
    transition: all 0.3s ease;
}
.hecontent {
    color: var(--primary-color);
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    background: var(--text-color);
    padding: 10px;
    position: absolute;
    top: 30px;
    left: 30px;
    z-index: 1;
}
.appFor {
    color: var(--text-color);
    font-size: 32px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    padding: 20px 0 10px 0;
}
.portfoilo-box:hover .appFor {
    color: #1F75FE;
}
.lacerat {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--sub-text);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}
.portfoilo-box-main {
    column-count: 2;
    column-gap: 60px;
    margin-top: 30px;
}
.load-more-main {
    display: flex;
    align-items: center;
    justify-content: center;
}
.load-more-main a {
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    width: 100%;
    max-width: 200px;
    padding: 12px;
    transition: all 0.3s ease-in-out;
    border: 1px solid transparent;
    background: #1F75FE;
    color: #FFF;
}
.load-more-main a:hover {
    background: var(--primary-color);
}
/*-----------------------[ 12.Section Testimonials CSS ]------------------------*/
.section-testimonials {
    padding: 60px 0;
}
.container-slider {
    width: 100%;
    max-width: 620px;
    margin: 30px auto;
}
.container-slider .slick-slide {
    padding: 0 10px;
}
.container-slider .slick-list {
    margin: 0 -10px;
}
.testimonila-box {
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
}
.testimonila-box-sub {
    padding: 20px 20px 30px 20px;
}
.heigf {
    color: var(--text-color);
    font-size: 20px;
    font-weight: 600;
    line-height: 30px;
    padding: 20px 0 10px 0;
}
.kjrhiee {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
}
.client-details-main {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 20px;
    border-top: 1px solid var(--border-colors);
}
.client-details-main h3 {
    color: var(--text-color);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    padding-bottom: 8px;
}
.client-details-main p {
    color: var(--sub-text);
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
}
.single-slick-arrow {
    width: 80px;
    height: 80px;
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    transition: all 0.3s ease-in-out;
}
.single-slick-arrow:hover {
    background: #1F75FE;
    border: 1px solid transparent;
}
.single-slick-arrow img {
    filter: var(--icons-filter);
}
.single-slick-arrow:hover img {
    filter: brightness(0) saturate(100%) invert(99%) sepia(15%) saturate(85%) hue-rotate(344deg) brightness(111%) contrast(100%);
}
.slick-prev {
    position: absolute;
    left: -108px;
    top: 50%;
    transform: translate(0%, -50%);
}
.slick-next {
    position: absolute;
    right: -108px;
    top: 50%;
    transform: translate(0%, -50%);
}
.clients-logos {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.client-style {
    position: relative;
}
.client-style .client-wrapper {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
}
.client-style .client-hover-img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    transform: translateY(-100%);
    visibility: hidden;
    padding: 30px 37px;
    filter: var(--icons-filter);
}
.client-style .featured-wrapper,
.client-hover-img {
    transition: transform .4s ease;
    padding: 30px 37px;
    text-align: center;
    filter: var(--media-icons);
}
.client-style .featured-wrapper {
    transform: translateY(0);
}
.client-style .client-wrapper:hover .client-hover-img {
    visibility: visible;
    transform: translateY(0);
}
.client-style .client-wrapper:hover .featured-wrapper {
    transform: translateY(100%);
}
/*-----------------------[ 13.Section Resume CSS ]------------------------*/
.group-split-main {
    display: flex;
    align-items: center;
    gap: 20px;
}
.cambgde-uni {
    display: flex;
    align-items: center;
    gap: 10px;
}
.educ-box {
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    padding: 20px;
    margin-top: 30px;
}
.cambgde-uni h3 {
    color: var(--sub-text);
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px;
    background: var(--border-colors);
    padding: 10px;
}
.cambgde-uni p {
    color: var(--sub-text);
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
}
.mashja {
    color: var(--text-color);
    font-size: 20px;
    font-weight: 600;
    line-height: 30px;
    padding: 20px 0 10px;
}
.matti {
    color: var(--sub-text);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}
.expe-main,
.rispu {
    text-align: right;
}
.exper-env {
    justify-content: end;
}
.skilsss {
    margin-top: 60px;
}
.progresbar-counter {
    margin-bottom: 20px;
}
.skill-bars {
    margin: 30px 0 50px 0;
    border: 1px solid var(--border-colors);
    padding: 20px;
    background: var(--primary-color);
}
.progress-title {
    color: var(--text-color);
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    margin-bottom: 15px;
    float: left;
}
.progress-value {
    font-weight: 400;
    font-size: 18px;
    line-height: 18px;
    color: var(--sub-text);
    float: right;
}
.reveal.active .progress-value {
    animation: animate-counter 4.5s;
    -webkit-animation: animate-counter 4.5s;
    -moz-animation: animate-counter 4.5s;
    -ms-animation: animate-counter 4.5s;
    -o-animation: animate-counter 4.5s;
}
.skil-progressbar {
    height: 4px;
    background-color: var(--border-colors);
    margin-top: 20px;
    clear: both;
}
#skil-progressbar1 span {
    width: 92%;
}
#skil-progressbar2 span {
    width: 70%;
}
#skil-progressbar3 span {
    width: 85%;
}
#skil-progressbar4 span {
    width: 90%;
}
.skil-progressbar span {
    display: inline-block;
    position: absolute;
    height: 4px;
    background-color: var(--text-color);
}
.reveal.active .skil-progressbar span {
    animation: animate-positive 4.5s;
    -webkit-animation: animate-positive 4.5s;
    -moz-animation: animate-positive 4.5s;
    -ms-animation: animate-positive 4.5s;
    -o-animation: animate-positive 4.5s;
}
@keyframes animate-counter {
    0% {
        left: 0;
    }
}
@-webkit-keyframes animate-counter {
    0% {
        left: 0;
    }
}
@keyframes animate-positive {
    0% {
        width: 0;
    }
}
@-webkit-keyframes animate-positive {
    0% {
        width: 0;
    }
}
/*--------- Dots Skill Bars ---------*/
.skill {
    margin-bottom: 20px;
}
.skill-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}
.label {
    color: var(--text-color);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
}
.count {
    color: var(--sub-text);
    text-align: right;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    min-width: 50px;
}
.dots {
    display: flex;
    gap: 18px;
    flex-wrap: nowrap;
}
.dot {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: var(--border-colors);
    transition: background-color 0.3s ease;
}
.dot.active {
    background-color: var(--text-color)
}
/*--------- Circular Skill Bars ---------*/
.circular-skills {
    display: flex;
    justify-content: center;
    gap: 20px;
}
.circle {
    width: 144px;
    height: 144px;
    border-radius: 50%;
    background: conic-gradient(var(--color) 0%, var(--border-colors) 0%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: background 1.5s ease;
}
.circle::before {
    content: "";
    position: absolute;
    width: 125px;
    height: 125px;
    background: var(--primary-color);
    border-radius: 50%;
    z-index: 1;
}
.inner {
    text-align: center;
    z-index: 2;
}
.number {
    color: var(--text-color);
    text-align: center;
    font-size: 32px;
    font-weight: 700;
    line-height: 48px;
}
.export-naem {
    color: var(--text-color);
    text-align: center;
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    margin-top: 10px;
}
/*--------- My Interests ---------*/
.interests-box-main {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 30px;
}
.interests-box {
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    padding: 20px;
}
.interests-box h2 {
    color: var(--text-color);
    font-size: 24px;
    font-weight: 600;
    line-height: normal;
    padding: 20px 0 10px 0;
}
.interests-box p {
    color: var(--sub-text);
    font-size: 17px;
    font-weight: 400;
    line-height: 24px;
}
/*-----------------------[ 14.Section Pricing CSS ]------------------------*/
.section-pricing {
    padding: 60px 0;
}
.basic-plan-main {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-bottom: 20px;
}
.basic-plan-main h3 {
    color: var(--text-color);
    font-size: 24px;
    font-weight: 600;
    line-height: 32px;
}
.month-plan {
    color: var(--1, #1F75FE);
    font-size: 36px;
    font-weight: 600;
    line-height: normal;
}
.month-plan sub {
    font-size: 20px;
}
.plan-boxes-miannn {
    display: flex;
    align-items: center;
    margin-top: 30px
}
.plan-boxes-miannn-subb {
    width: 100%;
}
.plan-box {
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    width: 100%;
    max-width: 360px;
}
.plan-box2 {
    margin-left: 90px;
    margin-top: 30px;
}
.plan-header {
    padding: 30px;
    border-bottom: 1px solid var(--border-colors);
}
.plan-body {
    padding: 30px;
}
.plan-body ul li {
    color: var(--text-color);
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
    padding-bottom: 15px;
    display: flex;
    align-items: flex-start;
    gap: 15px;
}
.plan-body ul .plan-Offercheck::before {
    content: url(../images/svg/checkSvg.svg);
    filter: var(--icons-filter);
}
.plan-body ul .plan-NotOffercheck::before {
    content: url(../images/svg/checkSvg2.svg);
    filter: var(--media-icons);
}
.plan-NotOffercheck {
    color: var(--sub-text) !important;
}
.choosplan {
    width: 100%;
    max-width: 100% !important;
    margin-top: 30px;
}
#pricingModal input,
#pricingModal select,
#pricingModal textarea {
    background-color: var(--modal-form-input);
}
/*-----------------------[ 15.Section Blog CSS ]------------------------*/
.section-blog {
    padding: 60px 0;
}
.blog-card {
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease;
    margin-top: 20px;
    display: block;
    height: 240px;
}
.overlay {
    position: absolute;
    inset: 0;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.90) 100%);
    transition: all 0.3s ease-in-out;
}
.blog-card:hover .overlay {
    background: linear-gradient(180deg, rgba(31, 117, 254, 0.1) 0%, rgba(31, 117, 254, 0.9) 100%);
}
.category {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.60) 0%, rgba(0, 0, 0, 0.40) 100%);
    backdrop-filter: blur(4px);
    padding: 5px 10px;
    color: #FFF;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    align-self: flex-start;
}
.title {
    color: var(--2, #FFF);
    font-size: 24px;
    font-weight: 600;
    line-height: normal;
    padding-bottom: 10px;
}
.desc {
    overflow: hidden;
    color: var(--2, #FFF);
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}
/*-----------------------[ 16.Section Contact CSS ]------------------------*/
.contact-form-box {
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    padding: 20px;
    max-width: 530px;
    width: 100%;
}
.img-sec-contact {
    max-width: 300px;
    width: 100%;
}
.send-mess {
    padding-bottom: 10px;
}
.eget {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
}
.contact-form-img {
    display: flex;
    gap: 30px;
    margin: 30px 0;
}
.form-row {
    display: flex;
    gap: 20px;
    margin-top: 30px;
}
input,
select,
textarea {
    width: 100%;
    padding: 12px 15px;
    font-size: 18px;
    background-color: var(--form-input-bg);
    border: none;
    outline: none;
    margin-bottom: 20px;
    color: var(--text-color);
    font-weight: 400;
    line-height: 24px;
    resize: none;
}
select {
    appearance: none;
    background-image: url("../images/svg/arrow-down.svg");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 24px;
}
body.dark-mode select {
    background-image: url("../images/svg/arrow-down-white.svg");
}
.custom-select {
    color: var(--sub-text);
}
.custom-select:valid {
    color: var(--text-color);
}
.interest {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    padding-bottom: 10px;
}
.heloos-img-main {
    display: flex;
    justify-content: center;
}
.submit-main {
    justify-content: flex-start;
}
.contact-media {
    margin: 20px 0;
}
.map-iframe img{
    width: 100%;
}
.rights-reserved {
    padding: 20px;
    border: 1px solid var(--border-colors);
    margin: 30px 0;
    background: var(--primary-color);
}
.rights-reserved h2,
.rights-reserved a {
    color: var(--sub-text);
    text-align: center;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
}
.rights-reserved a:hover {
    color: #1F75FE;
}
/*-----------------------[ 17.Section Content Page CSS ]------------------------*/
.conten-mian-tex {
    text-align: center;
}
.content-elop-main {
    margin-top: 30px;
}
.asdcontr {
    color: var(--sub-text);
    text-align: center;
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
    padding-bottom: 10px;
}
.yct-box-main {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    width: 100%;
    max-width: 600px;
    margin: 30px auto;
}
.yct-box {
    padding: 20px;
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
}
.yct-box p {
    color: var(--sub-text);
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    padding-bottom: 10px;
}
.yct-box h3 {
    color: var(--text-color);
    text-align: center;
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
}
.single-content-img1 {
    max-width: 100%;
}
.content-more-box {
    padding: 30px;
    border: 1px solid var(--border-colors);
    background: var(--primary-color);
    margin: 30px 0;
}
.content-more-box p {
    color: var(--sub-text);
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
}
.imgs-group-content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}
.imgs-group-content img {
    max-width: 100%;
}
.theChlaa {
    color: var(--text-color);
    font-size: 24px;
    font-weight: 600;
    line-height: 32px;
    padding-bottom: 15px;
}
.order-list {
    padding-left: 1rem;
}
.order-list li {
    color: var(--sub-text);
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
}
.next-prev-cont-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 30px;
}
.next-prev-cont {
    position: unset;
    font-size: 20px;
    text-transform: uppercase;
}
.contrn-dhj {
    margin-bottom: 0;
}
/*-----------------------[ 18.Single Blog Page CSS ]------------------------*/
.asdcontr span {
    font-weight: 500;
}
.blogimg1Single {
    margin-top: 30px;
}
.single-blog-img5 {
    margin-top: 30px;
}
.cottss {
    color: var(--sub-text);
    font-size: 20px;
    font-style: italic;
    font-weight: 400;
    line-height: 30px;
}
.cottss-main {
    border-left: 2px solid #1F75FE;
    padding-left: 20px;
}
.cottss-writer {
    color: var(--text-color);
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    position: relative;
    padding-left: 35px;
    padding-top: 20px;
}
.cottss-writer::before {
    content: '';
    width: 30px;
    height: 2px;
    background: var(--text-color);
    position: absolute;
    left: 0;
    top: 30px;
}
.tgs-box {
    padding: 20px;
}
.tags {
    color: var(--text-color);
    font-size: 20px;
    font-weight: 600;
    line-height: 30px;
}
.tag-list-main {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
}
.tag-list-main li a {
    color: var(--sub-text);
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
}
.tag-list-main li:hover a {
    color: var(--primary-color);
}
.tag-list-main li {
    padding: 5px 10px;
    background: var(--border-colors);
    display: flex;
    align-items: center;
    justify-content: center;
}
.tag-list-main li:hover {
    background: var(--text-color);
}
.tag-list-main li svg {
    fill: var(--sub-text);
}
.tag-list-main li:hover svg {
    fill: var(--primary-color);
}
.tag-list-medi-list-main {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-bottom: 60px;
}
.tgs-box {
    width: 100%;
}
.video-container iframe {
    width: 100%;
    height: 500px;
}
.card-image img {
    max-width: 100%;
}
.main {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}
button.bottom-top-button {
    position: fixed;
    right: 30px;
    bottom: 20px;
    z-index: 200;
    width: 50px;
    height: 50px;
    transition: ease-out 200ms;
    background-color: #FFF;
    border: 2px solid var(--text-color);
}
/*-----------------------[ Services Modal CSS ]------------------------*/
.modal-content {
    background-color: var(--modal);
}
.web-modal-title {
    color: var(--text-color);
}
.web-modal-main-text {
    color: var(--text-color);
    font-size: 24px;
    font-weight: 600;
    padding-bottom: 8px;
    line-height: normal;
}
.web-modal-sub-text {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 400;
    line-height: 26px;
}
.modal-ul-list-mian {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 400;
    line-height: 26px;
    padding: 15px 0 0;
}
.modal-ul-list-mian li::before {
    content: "\2022";
    padding-right: 10px;
}
.webImg {
    padding-top: 20px;
}

/* Form Submit Notification  */

#contactForm {
    position: relative;
}

.notification {
    display: none;
    background-color: #1F75FE;
    color: #FFF;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    text-align: center;
    padding: 15px;
    margin-top: 20px;
    border-radius: 4px;
    opacity: 0;
    animation: fadeIn 0.5s forwards;
    transition: opacity 0.5s ease;
    position: absolute;
    bottom: -90px;
    left: 80px;
}

.notification.fade-out {
    opacity: 0;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/*-----------------------[ 19.Setting Buttons CSS ]------------------------*/
.setting-main {
    position: fixed;
    right: 0;
    top: 50%;
}
.box-fix-setting {
    width: 40px;
    height: 40px;
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    cursor: pointer;
}
.box-fix-setting:nth-child(1) {
    margin-bottom: 10px;
}
.setting {
    animation: rotation 3s infinite linear;
    filter: var(--icons-filter);
}
@keyframes rotation {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
.demo-box {
    display: block;
    background: var(--form-input-bg);
    border-radius: 10px;
    margin-bottom: 20px;
}
.demo-box p {
    color: var(--text-color);
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    padding-bottom: 15px;
    text-align: center;
}