/*------------------------------------------------------------------
  Project: Resume
  Author: The_Krishna
  Last change: 13/12/2024
  Primary use:
------------------------------------------------------------------ */
/*-----------------------[Table of contents]------------------------
1.Default CSS
2.Light Mode Colors CSS
3.Page Loader CSS
4.Whole Page Aniamtion CSS
5.Header CSS
6.Side Menu CSS
7.Section One CSS
8.Section Two CSS
9.Section Three CSS
10.Section Four CSS
11.Section Five CSS
12.Section Six CSS
13.coding-skill-section CSS
14.design-skill-section CSS
15.Award-section CSS
16.Section Seven CSS
17.Section Eight CSS
18.Section Nine CSS
19.Footer Section CSS
20.Bottom To Top Button
21.Custom CSS
------------------------------------------------------------------ */
/*-----------------------[ 1.Default CSS ]------------------------*/
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Space Grotesk", sans-serif;
    font-style: normal;
    scroll-behavior: smooth;
}
html {
    scroll-behavior: smooth;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
    margin: 0;
}
a {
    text-decoration: none;
}
ol,
ul {
    padding-left: 0rem !important;
}
dl,
ol,
ul {
    margin-top: 0;
    margin-bottom: 0rem;
}
ul li {
    list-style: none;
}
::-webkit-scrollbar {
    width: 4px;
}
::-webkit-scrollbar-corner {
    display: none;
}
::-webkit-scrollbar-thumb {
    background: var(--main-text);
    background-clip: content-box;
}
::-webkit-scrollbar-track {
    background-color: #0F141C;
}
.container{
    position: relative;
}
body {
    background: var(--primary-color);
}
/*-----------------------[ 2.Light Mode Colors CSS ]------------------------*/
:root {
    --primary-color: #EDF0F4;
    --side-menu-color: #000000;
    --section-background: #FFFFFF;
    --card-background: #FFF;
    --icons-background: #1E1F21;
    --main-text: #000000;
    --sub-text: #838485;
    --btn-border: #000000;
    --icons-filter: brightness(0) saturate(100%) invert(0%) sepia(97%) saturate(7486%) hue-rotate(54deg) brightness(99%) contrast(103%);
    --icons-hover: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(221deg) brightness(101%) contrast(101%);
}
.dark-mode {
    --primary-color: #000000;
    --side-menu-color: #1E1F21;
    --section-background: #1E1F21;
    --icons-background: #000000;
    --main-text: #FFFFFF;
    --sub-text: #838485;
    --btn-border: #FFFFFF;
    --icons-filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(221deg) brightness(101%) contrast(101%);
    --icons-hover: brightness(0) saturate(100%) invert(0%) sepia(100%) saturate(6%) hue-rotate(210deg) brightness(97%) contrast(101%);
}
/*-----------------------[ 3.Background Animation]------------------------*/
canvas {
    position: fixed !important;
    z-index: -1;
    top: 0;
}
.background-img-slider-SecOne {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100vh;
    width: 100%;
    position: fixed;
    top: 0;
    overflow: hidden;
}
.slick-slide {
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.slider-main,
.slick-list,
.slick-track {
    height: 100%;
}
.slider-section {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: -1;
}  
/*-----------------------[ 3.Page Loader 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(--primary-color);
}
.preloader .loading {
    font-size: 30px;
    font-weight: 400;
    color: var(--sub-text);
    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: #fff;
    opacity: 0;
    transform: rotateY(-90deg);
    animation: loading 5s infinite;
}
.loading span:nth-child(2)::after {
    animation-delay: 0.2s;
}
.loading span:nth-child(3)::after {
    animation-delay: 0.4s;
}
.loading span:nth-child(4)::after {
    animation-delay: 0.6s;
}
.loading span:nth-child(5)::after {
    animation-delay: 0.7s;
}
.loading span:nth-child(6)::after {
    animation-delay: 1s;
}
.loading span:nth-child(7)::after {
    animation-delay: 1.2s;
}
@keyframes loading {
    0%,
    75%,
    100% {
        transform: rotateY(-90deg);
        opacity: 0;
    }
    25%,
    50% {
        transform: rotateY(0);
        opacity: 1;
    }
}
/*-----------------------[ 4.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);
}
/*-----------------------[ 5.Header CSS ]------------------------*/
header {
    border-radius: 30px;
    background: var(--section-background);
    padding: 10px 30px;
    margin: 30px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.menu-toggle-button {
    display: none;
}
.side-menu::-webkit-scrollbar {
    display: none;
}
.logo {
    filter: var(--icons-filter);
}
.aryaBtn img {
    filter: var(--icons-filter);
}
.aryaBtn {
    color: var(--btn-border);
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
    border-radius: 20px;
    border-top: 2px solid var(--btn-border);
    border-right: 4px solid var(--btn-border);
    border-bottom: 4px solid var(--btn-border);
    border-left: 2px solid var(--btn-border);
    padding: 12px 24px;
    transition: all 0.3s ease-in-out;
    display: flex;
    align-items: center;
    gap: 10px;
}
.aryaBtn:hover {
    background: var(--main-text);
    color: var(--section-background);
    border-radius: 0;
}
.aryaBtn:hover img {
    filter: var(--icons-hover);
}
.aryaBtn-toggle-main {
    display: flex;
    align-items: center;
    gap: 10px;
}
/*-----------------------[ 6.Side Menu CSS ]------------------------*/
.side-menu-main {
    position: sticky;
    top: 30px;
    overflow: auto;
}
.list-menu {
    background: var(--side-menu-color);
    padding: 30px;
    border-radius: 30px;
    margin-bottom: 20px;
}
.side-menu-ul li a.active {
    background: #FFF;
    border-radius: 10px;
    color: #000;
}
.side-menu-ul li a.active img {
    filter: brightness(0) saturate(100%) invert(0%) sepia(0%) saturate(5%) hue-rotate(214deg) brightness(98%) contrast(102%);
}
.side-menu-ul li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--3, #838485);
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    padding: 12px 15px;
}
.phone-text {
    color: var(--3, #838485);
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
}
.phone-num {
    color: var(--1, #FFF);
    font-size: 20px;
    font-weight: 700;
    line-height: 30px;
    display: block;
    margin-bottom: 20px;
    border-bottom: 1px solid transparent;
}
.media-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.media-icons {
    width: 36px;
    height: 36px;
    background: var(--icons-background);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease-in-out;
}
.media-icons:hover {
    border-radius: 10px;
    background: #FFF;
    transition: all 0.3s ease-in-out;
}
.media-icons:hover img {
    filter: brightness(0) saturate(100%) invert(11%) sepia(1%) saturate(1367%) hue-rotate(161deg) brightness(98%) contrast(97%);
}
/*-----------------------[ 7.Section One CSS ]------------------------*/
.section-one,
.section-two,
.section-three,
.section-four,
.section-five,
.section-six,
.section-Seven,
.section-eight,
.section-nine {
    background: var(--section-background);
    padding: 60px;
    border-radius: 30px;
    margin-bottom: 30px;
}
.hi-there {
    color: var(--main-text);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    padding-bottom: 10px;
}
.hi-there span {
    transform-origin: 70% 70%;
    display: inline-block;
    animation-name: wave-animation;
    animation-duration: 2.5s;
    animation-iteration-count: infinite;
}
@keyframes wave-animation {
    0% {
        transform: rotate(0.0deg);
    }
    10% {
        transform: rotate(14.0deg);
    }
    20% {
        transform: rotate(-8.0deg);
    }
    30% {
        transform: rotate(14.0deg);
    }
    40% {
        transform: rotate(-4.0deg);
    }
    50% {
        transform: rotate(10.0deg);
    }
    60% {
        transform: rotate(0.0deg);
    }
    100% {
        transform: rotate(0.0deg);
    }
}
.creative {
    color: var(--main-text);
    font-size: 48px;
    font-weight: 700;
    line-height: 64px;
    padding-bottom: 20px;
}
.visionary {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
}
.portfolio-girl-img-col {
    display: flex;
    align-items: center;
    justify-content: end;
    position: relative;
}
.portfolio-girl-img {
    border-radius: 50%;
}
.girl-name {
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.60) 0%, rgba(0, 0, 0, 0.30) 100%);
    backdrop-filter: blur(3px);
    position: absolute;
    left: -10px;
    bottom: 30px;
    padding: 10px 24px;
    height: 44px;
}
.ityped-cursor {
    display: none;
}
.girl-name p {
    color: #FFF;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    text-align: center;
}
.download-btn {
    display: flex;
    align-items: start;
    margin-top: 30px;
}
/*-----------------------[ 8.Section Two CSS ]------------------------*/
.about-col {
    border-right: 2px solid var(--primary-color);
}
.arya-stack-about span {
    color: var(--main-text);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
}
.arya-stack-about {
    color: var(--main-text);
    font-size: 48px;
    font-weight: 700;
    line-height: 64px;
    max-width: 160px;
}
.WebExperts {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    padding-top: 20px;
}
.yer-exp-box-main {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 20px;
    margin-top: 150px;
}
.yer-exp-box {
    padding: 16px 18px;
    border-radius: 30px;
    border: 2px dashed var(--primary-color);
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: 240px;
}
.yer-exp-box:hover {
    border: 2px dashed var(--main-text);
    border-radius: 0;
}
.yer-exp-box .degit {
    color: var(--main-text);
    font-size: 48px;
    font-weight: 700;
    line-height: 48px;
}
.yer-exp-box div p {
    color: var(--main-text);
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
}
.self-taught {
    color: var(--sub-text);
    font-size: 24px;
    font-weight: 400;
    line-height: 36px;
    padding-bottom: 20px;
}
.self-taught span {
    color: var(--main-text);
    font-weight: 500;
}
.self-taught-col {
    padding-left: 60px;
}
.about-detail-main {
    display: flex;
    align-items: center;
    padding-bottom: 10px;
}
.about-detail {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    max-width: 160px;
    width: 100%;
}
.about-detail-info {
    color: var(--main-text);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    width: 340px;
}
.about-detail-info::before {
    content: ":";
    color: var(--sub-text);
    margin-right: 30px;
}
.about-deatils-head {
    margin-top: 20px;
}
.brand span {
    font-weight: 400;
}
/*-----------------------[ 9.Section Three CSS ]------------------------*/
.services-box {
    padding: 30px;
    background: linear-gradient(90deg, var(--section-background) 50%, var(--primary-color) 0) repeat-x,
        linear-gradient(90deg, var(--section-background) 50%, var(--primary-color) 0) repeat-x,
        linear-gradient(0deg, var(--section-background) 50%, var(--primary-color) 0) repeat-y,
        linear-gradient(0deg, var(--section-background) 50%, var(--primary-color) 0) repeat-y;
    background-size: 10px 2px, 10px 2px, 2px 10px, 2px 10px;
    background-position: 0 0, 0 100%, 0 0, 100% 0;
}
.services-box:hover {
    -webkit-animation: linearGradientMove 0.3s infinite linear;
    animation: linearGradientMove 0.3s infinite linear;
    border: none;
    border-radius: 0;
    background: linear-gradient(90deg, var(--section-background) 50%, var(--main-text) 0) repeat-x,
        linear-gradient(90deg, var(--section-background) 50%, var(--main-text) 0) repeat-x,
        linear-gradient(0deg, var(--section-background) 50%, var(--main-text) 0) repeat-y,
        linear-gradient(0deg, var(--section-background) 50%, var(--main-text) 0) repeat-y;
    background-size: 10px 2px, 10px 2px, 2px 10px, 2px 10px;
    background-position: 0 0, 0 100%, 0 0, 100% 0;
}
@-webkit-keyframes linearGradientMove {
    100% {
        background-position: 10px 0, -10px 100%, 0 -10px, 100% 10px;
    }
}
.services-box div {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-bottom: 15px;
}
.services-icon {
    filter: var(--icons-filter);
}
.web-dev-text {
    color: var(--main-text);
    font-size: 24px;
    font-weight: 500;
    line-height: 36px;
}
#services-box {
    margin-top: 40px;
}
.services-box {
    margin-bottom: 20px;
}
/*-----------------------[ 10.Section Four CSS ]------------------------*/
.tab-btn-main {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 20px 0 40px;
}
.tab-btn-main a:last-child {
    border: none;
}
.tab-btn {
    border-radius: 20px;
    border: 2px dashed #838485;
    color: var(--sub-text);
}
.tabContainer {
    overflow: hidden;
    position: relative;
}
.Tabcondent {
    position: absolute;
    width: 50%;
    height: 50%;
    opacity: 0;
    transition: all ease-in-out 0.3s;
}
.tab-btn.tab-active {
    border-right: 4px solid var(--btn-border) !important;
    border-bottom: 4px solid var(--btn-border) !important;
    border-left: 2px solid var(--btn-border) !important;
    border-top: 2px solid var(--btn-border) !important;
    color: var(--main-text) !important;
}
.tab-btn:hover {
    color: var(--main-text) !important;
    background: transparent;
    border: 2px dashed var(--main-text);
}
.Tabcondent.tab-active {
    width: 100%;
    height: 100%;
    opacity: 1;
    border-radius: 0px;
    transition: all ease-in-out 0.6s;
    margin: 0 auto;
    position: relative;
}
.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #1e1f21ab;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.6s ease-in-out;
}
.gallery-item-sub:hover .overlay {
    opacity: 1;
}
.vimeo-icon {
    width: 64px;
    height: 64px;
    margin-bottom: 10px;
    filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(181deg) brightness(103%) contrast(103%);
}
.overlay-text {
    color: #FFF;
    font-size: 18px;
    text-align: center;
    font-weight: 500;
    letter-spacing: 1px;
}
.gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 0 40px;
}
.gallery-item {
    margin-bottom: 30px;
    cursor: pointer;
}
.gallery-item-sub {
    position: relative;
}
.gallery-item-sub img {
    border-radius: 20px;
    max-width: 100%;
}
.gallery-item3 {
    margin-top: -60px;
}
.gallery-info h3 {
    color: var(--main-text);
    font-size: 20px;
    font-weight: 500;
    line-height: 32px;
    margin-top: 10px;
}
.gallery-info p {
    color: var(--sub-text);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}
.content-img {
    max-width: 100%;
    border-radius: 30px;
}
.modal {
    --bs-modal-width: 700px;
}
.plumbing-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin: 20px 0;
}
.plumbing-grid img {
    width: 100%;
    border-radius: 20px;
}
.btn-close:focus {
    box-shadow: none;
}
.spce-in-Content {
    color: #838485;
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    padding-top: 5px;
}
.spce-in-text {
    color: #000;
    font-size: 30px;
    font-weight: 600;
    line-height: 36px;
    margin-top: 20px;
}
.corporate_main {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin: 20px 0;
}
.cuberto_main {
    display: flex;
    gap: 10px;
}
.created_by {
    color: #000;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
}
.cuberto {
    color: #000;
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
}
.ipsum {
    color: var(--3, #838485);
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
}
.gallery-main-card {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 1rem;
    justify-content: center;
    align-items: center;
}
.text-gallery {
    text-align: center;
    margin-bottom: 30px;
    margin-top: 0;
}
.gallery-main-card img {
    max-width: 100%;
}
/*-----------------------[ 11.Section Five CSS ]------------------------*/
.testimonial-box {
    border-radius: 30px;
    border: 2px dashed var(--primary-color);
    padding: 20px;
    display: flex !important;
    gap: 20px;
    margin-top: 40px;
    transition: all 0.3s ease-in-out;
    margin-left: 5px;
    margin-right: 5px;
}
.testimonial-box:hover {
    border-radius: 0;
    border: 2px dashed var(--main-text);
}
.client-img {
    border-radius: 15px;
    width: 120px;
    height: auto;
    object-fit: cover;
}
.am-text-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 10px;
}
.am-text-main p {
    color: var(--main-text);
    font-size: 24px;
    font-weight: 500;
    line-height: 36px;
}
.am-text-main img {
    filter: var(--icons-filter);
}
.Neque {
    color: var(--sub-text);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    margin-bottom: 72px;
}
.client-name {
    color: var(--main-text);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
}
.client-name span {
    color: var(--sub-text);
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
}
ul.slick-dots {
    display: flex;
    justify-content: center;
    margin-top: 30px;
}
ul.slick-dots button {
    width: 10px;
    height: 10px;
    font-size: 0;
    border-radius: 50%;
    border: none;
    margin: 0 3px;
    outline: none;
    background: var(--primary-color);
}
.slick-active button {
    width: 30px !important;
    height: 10px;
    border-radius: 5px !important;
    background: var(--main-text) !important;
}
.section-title {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 40px 0 30px 0;
}
.line {
    flex-grow: 1;
    height: 2px;
    background-color: var(--main-text);
}
.title-box {
    display: inline-block;
    padding: 10px 20px;
    border: 2px solid var(--main-text);
    border-radius: 22px;
    color: var(--main-text);
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
}
.logos {
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    display: flex;
}
.logos-slide {
    animation: 30s slide infinite linear;
}
@keyframes slide {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-100%);
    }
}
.marquee__content {
    display: flex;
    align-items: center;
}
.marquee-img-main {
    padding: 0 20px;
    cursor: pointer;
}
.marquee-img-main img:hover {
    filter: var(--icons-filter);
}
/*-----------------------[ 12.Section Six CSS ]------------------------*/
.section-heading-text {
    color: var(--main-text);
    font-size: 48px;
    font-weight: 700;
    line-height: 64px;
}
.education-heading-text {
    color: var(--1, #FFF);
    font-size: 48px;
    font-weight: 700;
    line-height: 64px;
    margin-bottom: 30px;
    position: relative;
}
.education::before {
    content: "";
    border-left: 2px solid var(--main-text);
    position: absolute;
    top: 0;
    left: 11px;
    bottom: 0;
    z-index: -1;
}
.education {
    display: flex;
    position: relative;
    z-index: 1;
    margin-top: 20px;
}
.small_yellow_border {
    border: 2px solid var(--main-text);
    border-radius: 100%;
    padding: 5px;
    background-color: var(--section-background);
}
.small_yellow_circle {
    width: 10px;
    height: 10px;
    border-radius: 100%;
    background-color: var(--main-text);
}
.bachelor {
    color: var(--main-text);
    font-size: 20px;
    line-height: 28px;
    font-weight: 500;
    text-transform: uppercase;
    margin: 0;
    padding-bottom: 10px;
    transition: all 0.3s;
}
.university {
    padding-bottom: 15px;
    font-size: 18px !important;
}
.cursus {
    color: var(--sub-text);
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    transition: all 0.3s;
}
.education:hover .cursus {
    color: var(--main-text);
}
.small_yellow_border_main {
    padding-left: 20px;
}
/*-----------------------[ 13.coding-skill-section CSS ]------------------------*/
.coding-skill-section {
    padding: 60px 0;
}
#progress {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    margin-top: 30px;
    gap: 20px;
}
.progress-item {
    display: flex;
    width: 146px;
    height: 146px;
    border-radius: 50%;
    font-size: 0;
    animation: .4s ease-out reverse;
    position: relative;
}
.progress-item::after {
    content: attr(data-value)'%';
    display: flex;
    justify-content: center;
    flex-direction: column;
    width: 130px;
    margin: 8px;
    border-radius: 50%;
    background: var(--section-background);
    color: var(--main-text);
    text-align: center;
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: 32px;
    text-transform: uppercase;
}
.skill-label {
    position: absolute;
    bottom: -35px;
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    color: var(--main-text);
    text-align: center;
    width: 100%;
}
/*-----------------------[ 14.design-skill-section CSS ]------------------------*/
.design-skill-sub-section {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin: 30px 0 0 0;
    justify-content: space-between;
}
.design-skills-img-main {
    border-radius: 40px;
    border: 2px solid var(--8, #00CC97);
    background: rgba(0, 204, 151, 0.10);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    max-width: 179px;
    width: 100%;
    height: 80px;
}
.photoshop {
    border: 2px solid #31A8FF;
    background: rgba(49, 168, 255, 0.10);
}
.photoshop-text p:nth-of-type(2) {
    color: var(--1, #31A8FF) !important;
}
.adobe-xd {
    border: 2px solid #FF61F6;
    background: rgba(255, 97, 246, 0.10);
}
.adobe-xd-text p:nth-of-type(2) {
    color: var(--1, #FF61F6) !important;
}
.sketch {
    border: 2px solid #FFDB59;
    background: rgba(255, 219, 89, 0.10);
}
.sketch-text p:nth-of-type(2) {
    color: var(--1, #FFDB59) !important;
}
.skill-counter-main p:first-of-type {
    color: var(--main-text);
    font-size: 26px;
    font-weight: 700;
    line-height: 26px;
    text-transform: uppercase;
    padding-bottom: 5px;
}
.skill-counter-main p:nth-of-type(2) {
    color: var(--8, #00CC97);
    font-size: 14px;
    font-weight: 500;
    line-height: 14px;
}
/*-----------------------[ 15.Award-section CSS ]------------------------*/
.box-item {
    position: relative;
}
.awards-row {
    gap: 24px 0;
    padding-top: 30px;
}
.flip-box {
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
    perspective: 1000px;
    -webkit-perspective: 1000px;
}
.flip-box-front {
    -ms-transform: rotateY(0deg);
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
    -webkit-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
}
.flip-box-front,
.flip-box-back {
    background-size: cover;
    background-position: center;
    min-height: 180px;
    -ms-transition: transform 0.7s cubic-bezier(.4, .2, .2, 1);
    transition: transform 0.7s cubic-bezier(.4, .2, .2, 1);
    -webkit-transition: transform 0.7s cubic-bezier(.4, .2, .2, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background: var(--section-background);
    border: 2px dashed var(--primary-color);
    border-radius: 20px;
    transition: all 0.3s ease-in-out;
}
.flip-box-front:hover,
.flip-box-back:hover {
    border: 2px dashed var(--main-text);
    border-radius: 0;
}
.flip-box .inner {
    position: absolute;
    left: 0;
    width: 100%;
    -webkit-perspective: inherit;
    perspective: inherit;
    z-index: 2;
    padding: 20px;
    transform: translateY(-50%) translateZ(60px) scale(.94);
    -webkit-transform: translateY(-50%) translateZ(60px) scale(.94);
    -ms-transform: translateY(-50%) translateZ(60px) scale(.94);
    top: 50%;
}
.award-yer {
    color: var(--sub-text);
    text-align: right;
    font-size: 20px;
    font-weight: 400;
    line-height: 20px;
}
.winner-award {
    max-width: 100%;
    padding: 0 0 20px;
    filter: var(--icons-filter);
}
.years-award-img {
    display: flex;
    justify-content: space-between;
}
.award-interior {
    color: var(--main-text);
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
}
.award-winner-text {
    color: var(--sub-text);
    font-size: 18px;
    font-weight: 500;
    line-height: 18px;
    text-transform: uppercase;
    padding-top: 10px;
}
.flip-box-back {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    -ms-transform: rotateY(180deg);
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
    -webkit-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
}
.flip-back-text {
    font-size: 18px;
    color: var(--main-text);
    line-height: 28px;
    text-align: center;
}
.flip-box:hover .flip-box-front {
    -ms-transform: rotateY(-180deg);
    -webkit-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
    -webkit-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
}
.flip-box:hover .flip-box-back {
    -ms-transform: rotateY(0deg);
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
    -webkit-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
}
/*-----------------------[ 16.Section Seven CSS ]------------------------*/
.Pricing-section {
    padding: 80px 0;
}
.pricing-section-main {
    display: flex;
    align-items: stretch;
    margin: 30px 0 20px 0;
}
.basic-plain-box-main {
    background-color: var(--section-background);
    border: 2px dashed var(--primary-color);
    border-right: none;
}
.basic-plain-box {
    padding: 20px;
    text-align: center;
    max-width: 230px;
    width: 100%;
    border-bottom: 2px dashed var(--primary-color);
}
.basic-plain-box img {
    filter: var(--icons-filter);
}
.basic-plain-text {
    color: var(--main-text);
    text-align: center;
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
    padding-top: 20px;
}
.basic-plain-box-sub {
    padding: 44px 52px;
    max-width: 230px;
}
.mon {
    color: var(--main-text);
    text-align: center;
    font-size: 48px;
    font-weight: 700;
    line-height: 48px;
}
.mon sup {
    font-weight: 500;
    top: -15px;
}
.mon span {
    font-size: 20px;
}
.pricing-plaines-name {
    color: #838485;
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
    display: flex;
    align-items: center;
    align-items: stretch;
    gap: 15px;
    margin-bottom: 20px;
}
.pricing-plaines-name::before {
    content: url(../images/svg/check-mark.svg);
    height: 30px;
}
.taxes {
    color: #838485;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    margin-top: 40px;
    max-width: 177px;
}
.development-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 30px;
    background: var(--primary-color);
}
.choose-plain-btn-main {
    padding: 30px 0 30px 30px;
    border-left: 2px solid var(--section-background);
}
#select-plan input:focus {
    border: 2px dashed #000;
}
#select-plan input {
    color: #000;
}
.submit-btn-main {
    display: flex;
    align-items: center;
    justify-content: start;
    margin-top: 70px;
}
.submit-btn-main a {
    color: #000 !important;
    border-top: 2px solid #000;
    border-right: 4px solid #000;
    border-bottom: 4px solid #000;
    border-left: 2px solid #000;
}
.submit-btn-main a:hover {
    background: #FFF;
}
.submit-btn-main img {
    filter: brightness(0) saturate(100%) invert(0%) sepia(100%) saturate(6%) hue-rotate(210deg) brightness(97%) contrast(101%);
}
.submit-btn-main .aryaBtn:hover img {
    filter: brightness(0) saturate(100%) invert(0%) sepia(0%) saturate(7500%) hue-rotate(127deg) brightness(100%) contrast(101%) !important;
}
.wrapper {
    width: 100%;
    cursor: pointer;
}
.formDropDown {
    background: transparent;
    border-radius: 20px;
    border: 2px dashed var(--primary-color);
    height: 64px;
    outline: none;
    padding: 10px 20px;
    color: #000;
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    width: 100%;
    transition: all 0.3s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.formDropDown-ul-list {
    display: none;
    margin-top: -1px;
    background: #FFF;
    padding-left: 0;
    position: absolute;
    top: 10px;
    width: 100%;
    z-index: 5;
    border: 2px dashed #000;
    border-radius: 10px;
}
.formDropDown-ul-list a {
    color: #000;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
}
.formDropDown-ul-list li {
    border-bottom: 1px solid #FFF;
    padding: 12px 12px 8px;
}
/*-----------------------[ 17.Section Eight CSS ]------------------------*/
.blog-box {
    border-radius: 20px;
    border: 2px dashed var(--primary-color);
    padding: 20px;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}
.blog-box:hover {
    border: 2px dashed var(--main-text);
    border-radius: 0;
}
.date-blog {
    color: var(--3, #838485);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}
.blog-title {
    color: var(--main-text);
    font-size: 20px;
    font-weight: 500;
    line-height: 32px;
    padding: 10px 0 15px 0;
}
.Integer-blog {
    color: var(--3, #838485);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: ellipsis;
}
.blog-img {
    width: 100%;
    border-radius: 10px;
    margin-top: 20px;
}
.blog-row {
    gap: 24px 0;
    margin-top: 30px;
}
.date-tag-eye-main {
    display: flex;
    align-items: center;
    gap: 50px;
}
.modal-body .date-blog {
    color: #000;
    font-weight: 500;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 5px;
}
.simple-steps {
    color: #000;
    font-size: 28px;
    font-weight: 700;
    line-height: 35px;
    margin-top: 15px;
}
.single-blog {
    width: 100%;
    border-radius: 30px;
    margin: 20px 0;
}
.fusc {
    color: #838485;
    font-size: 18px;
    font-weight: 400;
    line-height: 30px;
    margin-top: 15px;
}
.plan-body {
    margin-top: 15px;
}
.plan-body ul li {
    color: #838485;
    font-size: 18px;
    font-weight: 400;
    line-height: 32px;
    display: flex;
    align-items: flex-start;
}
.plan-body ul li::before {
    content: "•";
    font-size: 22px;
    padding-right: 10px;
}
.single-blog-media {
    gap: 20px;
    justify-content: center;
    margin-top: 20px;
}
.load-more-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 30px;
}
.qoute-box {
    padding: 20px;
    border: 2px solid rgba(0, 0, 0, 0.1);
    position: relative;
    margin-top: 20px;
}
.qoute-box h2 {
    color: var(--3, #000);
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
}
.Michel {
    background: #000;
    text-align: center;
    max-width: 150px;
    color: var(--5, #FFF);
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    padding: 10px 0;
    margin-top: 20px;
}
/*-----------------------[ 18.Section Nine CSS ]------------------------*/
.contact-box-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    margin: 30px 0;
}
.contact-sec-box {
    padding: 15px 25px;
    border: 2px dashed var(--primary-color);
    border-radius: 15px;
}
.contact-sec-box:hover {
    border: 2px dashed var(--main-text);
    border-radius: 0;
}
.call-us-contact {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--main-text);
    font-size: 24px;
    font-weight: 500;
    line-height: 36px;
}
.call-us-contact-img {
    filter: var(--icons-filter);
}
.day-time {
    color: var(--3, #838485);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    padding: 10px 0;
}
.call-num {
    color: var(--main-text);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
}
.map-iframe {
    width: 100%;
    height: 400px;
    border-radius: 30px;
}
.got {
    margin-top: 60px;
}
.labal-input {
    position: relative;
    width: 100%;
}
.input-main {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-bottom: 30px;
    margin-top: 40px;
    width: 100%;
}
.input-main input {
    background: transparent;
    border-radius: 20px;
    border: 2px dashed var(--primary-color);
    height: 64px;
    outline: none;
    padding: 10px 20px;
    color: var(--main-text);
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    width: 100%;
    transition: all 0.3s ease-in-out;
}
.input-main input:focus {
    border: 2px dashed var(--main-text);
    border-radius: 0;
}
.labal {
    color: var(--main-text);
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    padding: 2px 10px;
    border-radius: 10px;
    background: var(--primary-color);
    position: absolute;
    top: -11px;
    left: 20px;
}
/*-----------------------[ 19.Footer Section CSS ]------------------------*/
footer {
    border-radius: 30px;
    background: var(--section-background);
    padding: 18px 30px;
    margin-bottom: 30px;
}
.rights-reserved {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.rights-reserved h2,
.rights-reserved a {
    color: var(--3, #838485);
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
}
.rights-reserved a:hover {
    color: var(--main-text);
}
.home-media-icon-main-head {
    display: flex;
    align-items: center;
    gap: 30px;
}
/*-----------------------[ 20.Bottom top button CSS ]------------------------*/
button.bottom-top-button {
    position: fixed;
    right: 30px;
    bottom: 20px;
    z-index: 200;
    width: 50px;
    height: 50px;
    transition: ease-out 200ms;
    background-color: var(--section-background);
    border: 2px dashed var(--main-text);
}
button.bottom-top-button img {
    filter: var(--icons-filter);
}
button.bottom-top-button:hover {
    animation: animate-pulse 3s linear infinite;
}
/*-----------------------[ 21.Custom CSS ]------------------------*/
.logo { 
    filter: none; 
}

@media (max-width: 991px) {
    .hire-me-btn {
        display: none;
    }
}

.arya-stack-about {
    max-width: none;
}
.arya-stack-about span {
    display: block;
}

.visionary.pb {
    padding-bottom: 20px;
}

ul.custom-list {
    list-style: none; /* nasconde i marcatori predefiniti */
}
ul.custom-list li {
    padding-left: 27px;
}
ul.custom-list li::before {
    content: "🏠";
    display: inline-block;
    width: 30px;
    margin-left: -30px;
    text-align: left;
}

.about-detail-info a {
    color: inherit;
}

/* main color of the pill: green */
.blue-pill {
    border: 2px solid #31A8FF;
    background: rgba(49, 168, 255, 0.10);
}
.blue-pill-text p:nth-of-type(2) {
    color: var(--1, #31A8FF) !important;
}
.pink-pill {
    border: 2px solid #FF61F6;
    background: rgba(255, 97, 246, 0.10);
}
.pink-pill-text p:nth-of-type(2) {
    color: var(--1, #FF61F6) !important;
}
.yellow-pill {
    border: 2px solid #FFC800;
    background: rgba(255, 219, 89, 0.10);
}
.yellow-pill-text p:nth-of-type(2) {
    color: var(--1, #FFC800) !important;
}

/* centra le icone nelle pillole */
.design-skills-img-main i {
    font-size: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
}
/* applica i colori alle icone delle pillole */
.icona-trasparenza { color: rgb(0, 204, 151); }
.icona-affidabilita { color: rgb(49, 168, 255); }
.icona-dedizione { color: rgb(255, 97, 246); }
.icona-disponibilita { color: rgb(255, 200, 0); }

/*---------- Fix: spaziatura skill radiali per evitare sovrapposizioni con label lunghe ----------*/
.coding-skill-section.radial { /* aggiunto classe radial */
    padding: 60px 0 80px 0;    /* valore precedente: 60px 0 */
}
@media (max-width: 767px) {
    .coding-skill-section.radial { /* aggiunto classe radial */
        padding: 30px 0 50px 0;    /* valore precedente: 30px 0 */
    }
}
@media (max-width: 991px) {
    .coding-skill-section.radial { /* aggiunto classe radial */
        padding: 40px 0 60px 0;    /* valore precedente: 40px 0 */
    }
}

#progress.radial {  /* aggiunto classe radial */
    gap: 40px 20px; /* valore precedente: 20px */
}
@media (max-width: 767px) {
    #progress.radial {  /* aggiunto classe radial */
        gap: 70px 10px; /* valore precedente: 50px 10px */
    }
}
@media (max-width: 1399px) {
    #progress.radial {  /* aggiunto classe radial */
        gap: 80px 20px; /* 60px 20px */
    }
}

.skill-label {
    bottom: -52px; /* valore precedente: -35px */
    /* nuove dichiarazioni */
    height: 48px;            /* fissa l'altezza della label (crea un "box" prevedibile) */
    display: flex;           /* allinea il testo verticalmente */
    align-items: center;     /* centra il testo verticalmente nel box */
    justify-content: center; /* centra il testo orizzontalmente nel box */
    overflow: hidden;        /* opzionale: taglia il testo se eccede l'altezza del box */
}
/*---------- Fine fix: spaziatura skill radiali ----------*/

/* Selettore per le icone dei box servizi */
.services-box .icon {
    font-size: 28px; /* dimensione dell'icona stessa */
    width: 36px;     /* larghezza del contenitore */
    height: 36px;    /* altezza del contenitore */
    display: flex;
    align-items: center;
    justify-content: center;
    /* color: #31A8FF; */
    transition: transform 0.3s ease;
}
/* Effetto quando l'utente passa il mouse sul box */
.services-box:hover .icon {
    transform: scale(1.1); /* l'icona si ingrandisce leggermente */
    color: rgb(25, 135, 85); /* cambia in verde per un feedback visivo */
    text-shadow: 0px 4px 10px rgba(0,0,0,0.1); /* crea profondità */
}



.coding-skill-section.pills {
    padding-bottom: 20px;
}



.simple-steps.sub {
    font-size: 22px;
    line-height: 1.5em;
    margin-top: 25px;
}
.simple-steps.sub.sub1 {
    font-size: 20px;
    line-height: 1.5em;
}
.legal {
    z-index: 9999999;
}
@media (max-width: 575px) {
    .legal .simple-steps, .legal .simple-steps.sub.sub1 {
        line-height: 1.3em;
    }
}
.legal .qoute-box h2 {
    line-height: 1.3em;
}
.legal .fusc {
    line-height: 1.3em;
}
.legal .fusc.avviso {
    font-style: italic;
    border-left: 1px solid #838485;
    margin-left: 20px;
    padding-left: 10px;
}
.legal i {
    font-style: italic !important;
}
.legal .plan-body {
    margin-top: 0;
}
.legal .plan-body ul li {
    line-height: 1.3em;
    display: block;
    align-items: normal;
}
.single-blog-media {
    margin-top: 35px;
}


.riquadro-valutazione { background-color: #E6F7E7; border: 2px solid #4CAF50; }
.riquadro-visibilita { background-color: #E3F2FD; border: 2px solid #2196F3; }
.riquadro-referente { background-color: #FFF3E0; border: 2px solid #FF9800; }
.riquadro-burocrazia { background-color: #F3E5F5; border: 2px solid #9C27B0; }
.riquadro-valutazione:hover { border: 2px dashed #4CAF50; }
.riquadro-visibilita:hover { border: 2px dashed #2196F3; }
.riquadro-referente:hover { border: 2px dashed #FF9800; }
.riquadro-burocrazia:hover { border: 2px dashed #9C27B0; }
.yer-exp-box { max-width: 300px; }
.yer-exp-box div p { font-size: 18px; font-weight: 600; }
.yer-exp-box div p span { font-weight: 400; }



#cookie-banner {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100vw; /* Larghezza intera viewport */
    margin: 0;
    padding: 20px 0;
    background: #ffffff;
    border-top: 4px solid #007bff;
    z-index: 9999999;
    box-shadow: 0 -5px 20px rgba(0,0,0,0.3);
    font-family: sans-serif;
    /* Reset per evitare che erediti trasformazioni da GSAP o altro */
    transform: none;
    float: none;
}

#cookie-banner .col-md-4 {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: flex-end;
    align-items: center;
}

#cookie-banner button {
    flex: 0 1 auto;
    min-width: 160px;
    padding: 10px 20px;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 600;
    border: 1px solid #ccc;
    background: #f0f0f0;
    color: #333;
}

@media (max-width: 767px) {
    #cookie-banner .col-md-4 {
        justify-content: center;
        margin-top: 20px;
    }
    #cookie-banner button {
        width: 85%;
        max-width: 280px;
    }
}

#map-container {
    position: relative;
    width: 100%;
    height: 400px;
    border-radius: 30px;
    overflow: hidden;
}
@media (max-width: 991px) {
    #map-container {
        height: 300px;
        border-radius: 20px;
    }
}
#map-overlay {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: rgba(240, 240, 240, 0.9);
    z-index: 2;
    padding: 20px;
    text-align: center;
}
#map-overlay i {
    font-size: 40px;
    color: #ccc;
    margin-bottom: 15px;
}
#map-overlay p {
    font-family: sans-serif;
    color: #555;
    font-size: 16px;
    margin-bottom: 15px;
}
#map-overlay button {
    background: #007bff;
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 4px;
    cursor: pointer;
}



.rights-reserved {
    gap: 30px;
}
.rights-reserved h2, .rights-reserved a {
    font-size: 17px;
    letter-spacing: -0.03em;
}



/* Sfondo oscurato */
.dc-modal-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0, 0, 0, 0.7);
    z-index: 9999;
    justify-content: center;
    align-items: center;
    backdrop-filter: blur(2px); /* Sfoca leggermente il sito dietro il pop-up */
    transition: all 0.3s ease;
}

/* Scatola del pop-up */
.dc-modal-content {
    background: white;
    padding: 2.5rem;
    border-radius: 20px;
    text-align: center;
    max-width: 420px;
    margin: 20px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.3);
    border-top: 5px solid #00CC97;
}

.dc-modal-content h2 {
    margin-top: 0;
    font-size: 1.4rem;
    color: #333;
}

.dc-modal-content p {
    color: #666;
    line-height: 1.5;
    margin-top: 15px;

}

/* Bottone stile Diana Case */
.dc-modal-btn {
    background: #00CC97;
    color: white;
    border: none;
    padding: 12px 30px;
    border-radius: 8px;
    cursor: pointer;
    font-weight: bold;
    margin-top: 20px;
    transition: background 0.3s;
}

.dc-modal-btn:hover { background: #00a87d; }
