@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap');

:root{
    --light-color: #fff;
    --light-color-alt: #afb6cd;
    --primary-background-color: #131417;
    --secondary-background-color: #252830;
    --hover-light-color: var(--light-color);
    --hover-dark-color: var(--primary-background-color);
    --gradient-color: linear-gradient(
        115deg,#4fcf70,#fad648,#a767e5,#12bcfe,#44ce7b);
    --transparent-light-color: rgba(255,255,255,.05);
    --transparent-dark-color: rgba(0,0,0,.75);
    --font-family: 'Poppins', sans-serif;
    --font-size-xsm: 1.2rem;
    --font-size-sm: 1.6rem;
    --font-size-md: 2.4rem;
    --font-size-lg: 3rem;
    --font-size-xl: 4rem;
    --gap: 2rem;
    --margin-sm: 2rem;
    --margin-md: 3rem;
    --item-min-height-sm: 20rem;
    --item-min-height-md: 30rem;
}

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html{
    font-size: 62.5%;
}

body{
    font-family: var(--font-family);
    font-size: var(--font-size-sm);
    color: var(--light-color-alt);
    background-color: var(--primary-background-color);
    letter-spacing: 1px;
    transition: background-color .25s,color .25s;
}

a{
    color: inherit;
    text-decoration: none;
}

ul{
    list-style: none;
}

img{
    max-width: 100%;
}

input,
button {
  font: inherit;
  color: inherit;
  border: none;
  background-color: transparent;
}

i{
    font-size: var(--font-size-md);
}

body.light-theme{
    --light-color: #3d3d3d;
    --light-color-alt: rgba(0,0,0,.6);
    --primary-background-color: #fff;
    --secondary-background-color: #f1f1f1;
    --hover-light-color: #fff;
    --transparent-dark-color: var(--secondary-background-color);
    --transparent-light-color: rgba(0,0,0,.1);
}

.container{
    max-width: 160rem;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.place-items-center{
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.section:not(.featured-articles){
    padding-block: 5rem;
}

.d-grid{
    display: grid;
}

.screen-sm-hidden{
    display: none;
}

.header{
    background-color: var(--secondary-background-color);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}

.navbar{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-block: 1.5rem;
}

.logo{
    font-size: var(--font-size-md);
    color: var(--light-color);
}

.menu{
    position: absolute;
    top: 8.5rem;
    right: 1.5rem;
    width: 23rem;
    padding: 1.5rem;
    background-color:var(--secondary-background-color);
    opacity: 0;
    transform: scale(0);
    transition: opacity .25s ease-in;
}

.list{
    display: flex;
    align-items: center;
    gap: var(--gap);
}

.menu > .list{
    flex-direction: column;
}

/* .list-link.current{
    color: var(--light-color);
    background-color: var(--secondary-background-color);
} */

.list-link.active {
    color: white; 
    background-color: #333;
}

.close-menu-icon{
    display: none;
}

.btn{
    cursor: pointer;
}

.list-link:hover,
.btn:hover,
.btn:hover span{
    color: var(--light-color);
}

/* Header JavaScript Styles */
.header.activated{
    box-shadow: 0 1px .5rem var(--transparent-light-color);
}

.menu.activated{
    box-shadow: 1px 1px 1rem var(--transparent-light-color);
    opacity: 1;
    transform: scale(1);
}

.menu-toggle-icon.activated .open-menu-icon{
    display: none;
}

.menu-toggle-icon.activated .close-menu-icon{
    display: block;
}

.container-despre {
    display: flex;
    justify-content: center;
    background-color: var(--primary-background-color);
    padding: 28px;
    position: relative;
}

.scroll-down-arrow-despre {

    position: absolute;
    bottom: 10px;
    left: 2%; 
    font-size: 2rem;
    color: white;
    animation: bounce 2s infinite;
    cursor: pointer;
}

.scroll-down-arrow-despre i {
    font-size: 8rem; 
    color: white;
    animation: bounce 2s infinite;
    cursor: pointer;
}

/* @keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateX(0) translateY(0);
    }
    40% {
        transform: translateX(0) translateY(-10px);
    }
    60% {
        transform: translateX(0) translateY(-5px);
    }
} */

@keyframes bounce {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(10px);
    }
}

.text-despre {
    display: grid;
    grid-template-columns: 1fr 1fr; 
    grid-template-areas: "left right"; 
    align-items: center;
    justify-content: center;
    max-width: 1300px;
    gap: 20px;
}

.photo-despre {
    grid-area: left; 
    margin-top: 13%;
}

.photo-despre img {
    width: auto; 
    max-width: 638px; 
    height: auto; 
    object-fit: cover; 
}

.text-despre-coloana {
    margin-top: 5rem;
    display: flex;
    flex-direction: column;
    gap: 40px; 
    grid-area: right; 
}

.despre.first {
    grid-area: right;
}

.despre.second {
    grid-area: right;
}

.despre {
    color: var(--light-color);
    width: 100%; 
}

.despre h2 {
    font-size: var(--font-size-md);
    font-weight: 700;
    color: var(--light-color);
    margin-bottom: 1rem;
}

.despre hr {
    border: none;
    height: 2px;
    background: var(--light-color-alt);
    margin-bottom: 1.5rem;
    width: 100%;
    word-wrap: break-word;
}

.despre p {
    font-size: var(--font-size-sm);
    line-height: 1.6;
    text-align: justify;
    gap: 20px;
}

@media (min-width: 1024px) {
    .text-despre {
        grid-template-columns: 1fr 2fr;  
        grid-template-areas: "left right"; 
        gap: 40px; 
    }

    .photo-despre {
        margin-top: 13%;
    }

    .text-despre-coloana {
        margin-top: 5rem;
        flex-direction: column; 
        justify-content: flex-start; 
        gap: 40px; 
    }

    .despre.first, .despre.second {
        width: 100%; 
    }
} 

@media only screen and (max-width: 768px) {
    .text-despre {
        grid-template-columns: 1fr;  
        grid-template-areas: "left" "right";  
        gap: 0px; 
        align-items: center;
        justify-content: center;
    }

    .photo-despre {
        margin-top: 30%; 
        display: flex;
        justify-content: center; 
    }

    .photo-despre img {
        max-width: 100%; 
        height: auto;
        object-fit: cover;
    }

    .text-despre-coloana {
        flex-direction: column; 
        gap: 205x; 
    }

    .despre {
        text-align: center; 
        padding: 0px; 
    }

    .despre h2 {
        font-size: 1.5rem; 
        margin-bottom: 1rem;
    }

    .despre p {
        font-size: 1.4rem; 
        text-align: center; 
        text-align: justify;
    }

    .scroll-down-arrow-despre {
        display: none;
    }
}

.education {
    display: flex;
    justify-content: center;
    padding: 28px;
    background-color: #edf0f2;
}

.container-education {
    display: grid;
    grid-template-columns: 1.5fr 2fr;
    grid-template-areas: "left right";
    align-items: center;
    justify-content: center;
    height: auto;
    margin: 0rem auto 0rem auto;
    padding: 1rem 2rem 0rem 2rem;
    background-color: #edf0f2;
    gap: 2rem;
}

.edu.left {
    grid-area: left;
    transform: translateY(-16%);
}

.edu.left h1 {
    font-size: 32px;
    font-weight: bold;
    color: black;
    text-align: center;
    transform: translateY(20%);
}

.edu.left p {
    width: 72%;
    font-size: 1.6rem;
    line-height: 1.6;
    margin-bottom: 2rem;
    color: black;
    text-align: justify;
    transform: translateX(20%) translateY(20%);
}

.edu.right {
    grid-area: right;
    display: flex;  
    flex-direction: column; 
    align-items: flex-start; 
    width: 100%; 
    color: black;
    transform: translateY(9%);
}

.education-entry {
    width: 100%; 
    padding: 1rem;
    margin-bottom: 20px;
}

.education-entry h2 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 5px;
}

.education-entry p {
    font-size: 14px;
    margin: 5px 0;
}

.edu.right hr {
    border: black;
    height: 1px;
    width: 85%;
    background-color: black; 
}

.certifications {
    display: flex;
    justify-content: center;
    padding: 28px;
    background-color: #edf0f2;
}

.insigne {
    display: grid;
    grid-template-columns: 1fr 1fr; 
    grid-template-areas: "left right"; 
    align-items: center;
    justify-content: center;
    max-width: 1300px;
    gap: 200px;
}

.poza {
    color: black;
    flex-direction: row;
    object-fit: cover;
    aspect-ratio: 1/1;
    width: 100%;
    max-width: 200px;
    height: auto;
}

.poza.left {
    text-align: center;
}

.poza.right {
    text-align: center;
    margin-top: 10%;
}

/* ✅ Desktop Layout (Grid) */
@media (min-width: 1024px) {
    .container-education {
        max-width: 80vw;
        gap: 3rem; 
    }

    .edu.left {
        transform: translateY(-10%);
    }

    .edu.left h1 {
        font-size: 3rem; 
    }

    .edu.left p {
        width: 80%;
        font-size: 1.8rem;
        transform: translateX(10%) translateY(10%);
    }

    .edu.right {
        transform: translateY(5%);
    }

    .edu.right hr {
        border: black;
        height: 1px;
        width: 82%;
        background-color: black; 
    }

    .education-entry h2 {
        font-size: 2rem; 
    }

    .education-entry p {
        font-size: 1.4rem;
    }

    .certifications {
        padding: 3rem;
    }

    .insigne {
        max-width: 80vw;
        gap: 150px; 
    }

    .poza {
        max-width: 250px; 
    }
}


@media only screen and (max-width: 768px) {

    .education {
        padding: 28px 28px 2px 28px;
    }

    .container-education {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 2rem; 
        padding: 1rem 1rem;
    }

    .edu.left,
    .edu.right {
        width: 100%;
        transform: none;
    }

    .edu.left h1 {
        font-size: 2rem; 
    }

    .edu.left p {
        font-size: 1.4rem;
        width: 90%;
        margin: 2rem auto;
        transform: translateX(0%);
    }

    .edu.right {
        align-items: center; 
    }

    .education-entry {
        text-align: center; 
    }

    .certifications {
        padding: 0px;
    }

    .insigne {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 7rem; 
        padding-bottom: 65px;
    }

    .poza {
        max-width: 150px; 
        width: 100%;
    }

    .poza p {
        font-size: 1.2rem;
    }
}


.personal-section {
    display: flex;
    justify-content: center;
    flex-direction: row;
    background-color: var(--primary-background-color);
    padding: 28px;
    position: relative;
}

.personal-section h1{
    color: white;
    text-align: center;
    font-size: 3rem;
    position: absolute;
}

.content {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr; 
    grid-template-areas: "left middle right"; 
    align-items: center;
    justify-content: center;
    max-width: 1300px;
    gap: 70px;
    padding-top: 8rem;
}

.card {
    background-color: var(--secondary-background-color);
    border-radius: 10px;
    padding: 1.5rem;
    text-align: center;
    width: 100%;
    min-width: 250px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.card.left {
    grid-area: left;
    height: 100%;
}

.card.middle {
    grid-area: middle;
}

.card.right {
    grid-area: right;
}

.card img {
    width: 100%; 
    height: 230px; 
    max-height: 194px; 
    object-fit: cover; 
    margin-bottom: 1rem;
    aspect-ratio: 1/1;
}

.card p {
    font-size: var(--font-size-sm);
    color: var(--light-color-alt);
}

@media (min-width: 1024px) {
    .content {
        grid-template-columns: repeat(3, 1fr); /* Keeps 3-column layout */
    }
    
}

/* 🔹 Responsive for Smaller Screens (max-width: 768px) */
@media only screen and (max-width: 768px) {
    .content {
        grid-template-columns: 1fr; 
        grid-template-areas:
            "left"
            "middle"
            "right"; 
        gap: 15px;
    }
}


.custom-calendly-badge .calendly-badge-content {
    background: linear-gradient(115deg, #4fcf70, #fad648, #a767e5, #12bcfe, #44ce7b) !important;
    color: #252830 !important; 
    padding: 0 20px !important;
}


/* Footer */
.footer {
    background-color: var(--secondary-background-color);
    position: relative;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 1rem;
    z-index: 1000;
    display: flex;
    justify-content: center; 
    align-items: center; 
    text-align: center;
}

.footer-container {
    gap: 1rem; 
    display: flex; 
    flex-direction: column;
    align-items: center; 
}

.company-data{
    display: flex;
    flex-direction: column;
    order: 1;
    justify-content: center;
    align-items: center;
}

.company-description {
    margin-block: 0.5rem; 
    max-width: 60%; 
}

.social-media {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.copyright-notice {
    font-size: var(--font-size-xsm); 
    opacity: 0.8;
}

/* Scrollbar styles */
::-webkit-scrollbar {
    width: 1rem;
}
  
::-webkit-scrollbar-track {
    background: #f1f1f1;
}
  
::-webkit-scrollbar-thumb {
    background: #3f4254;
}
  
::-webkit-scrollbar-thumb:hover {
    background: #2e303b;
}

@media screen and (min-width: 1024px) {
    .menu{
        position: static;
        width: initial;
        padding: initial;
        background-color: transparent;
        opacity: 1;
        transform: scale(1);
    }

    .menu > .list{
        flex-direction: row;
    }

    .screen-lg-hidden{
        display: none;
    }

    .screen-sm-hidden{
        display: block;
    }

    .sign-up-btn{
        padding: 4px;
    }

    /* Fancy button animation effect */
    .btn.fancy-border:hover::before{
        animation: animate_border .75s linear infinite
    }

    @keyframes animate_border{
        to{
            transform:translateX(-50%)
        }
    }

    .featured-articles-container{
        grid-template-columns: 1fr 40rem;
    }

    .trending-news-img-box{
        width: 10rem;
        height: 10rem;
    }

    .popular-tags-container{
        grid-template-columns: repeat(3, 1fr);
    }

    .footer-container{
        grid-template-columns: repeat(5, 1fr);
    }

    .company-data{
        grid-column: span 2;
    }

    .company-description{
        max-width: 85%;
    }

    .copyright-notice{
        margin-top: auto;
    }

    .blog-post-data img{
        height: 40rem;
    }
}