@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
    scroll-behavior: smooth;
}
body{
    background-color: #181818;
    color: #f1f1f1;   
    overflow-x: hidden; /* إضافة بسيطة لمنع السكرول العرضي */
}
/* header section  */
header{
    background-color: rgb(70, 49, 5);
    position: fixed;
    width: 100%;
    z-index: 1000;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 30px;
}
/*-- photo style -- */
.photo{
    display: inline-block;
    vertical-align: middle;
    width: 90px;
    height: 90px;
    border-radius: 60%;
    object-fit: cover;
    margin: 10px 20px 0 40px;
    transition: 1s;
    box-shadow: 0 0 0 8px rgba(0,0,0,0.1), 0 0 0 4px rgba(0,0,0,0.1);
}
.photo:hover{
    transform: scale(1.1);
    transition: 1s;
}
/* #--------logo style-----#  */
.logo{
    font-size: 28px;
    font-weight: bold;
    color: rgb(255, 255, 255);
    transition: 1s;
}
.logo:hover{
    color: black;
    transition: 1s;
}
a{
    text-decoration: none;
}
/* #--------navigation style-----#  */
.nav{
    display: flex;
    gap: 25px;
    font-size: 18px;
    font-weight: bold;
    padding-left: 20px;
}
.nav a{
    color: rgb(255, 255, 255);
    transition: 0.5s;
}
.nav a:hover{
    color: rgb(0, 0, 0);
    transform: scale(1.1);
}
section{
    padding: 80px 80px;    
}
/* #-------- main -----#  */
.main{
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    background: url(images/WhatsApp\ Image\ 2025-03-15\ at\ 16.30.15_476c803c.jpg) no-repeat;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}
.main h2{
    font-size: 42px;
    color: rgb(255, 255, 255);
    font-weight: bold;
}
.main h2 span{
    color: cornsilk;
    display: inline-block;
    margin-top: 10px;
    margin-bottom: 10px;
}
.main h3{
    font-size: 26px;
    color: rgb(255, 255, 255);
    font-weight: bold;
    margin-bottom: 12px;
    margin-top: 8px;
    letter-spacing: 0.5px;
}
.main a.btn{
    display: inline-block;
    margin-top: 20px;
    margin-bottom: 20px;
    letter-spacing: 1px;
    font-size: 22px;
    color: rgb(255, 255, 255);
    background-color: rgb(114, 81, 10);
    border-radius: 30px;
    font-weight: bold;
    padding: 12px 28px;
    transition: 0.7s ease;
}
.main a.btn:hover{
    background-color: rgb(191, 161, 126);
    color: rgb(0, 0, 0);
    transform: scale(1.05);
}
.social-icon{
    display: flex;
    gap: 15px;
    font-size: 32px;
    color: rgb(255, 255, 255);
}
.social-icon a{
    color: seashell;
    transition: 0.5s;
}
.social-icon a:hover{
    color: rgb(114, 81, 10);
    transform: scale(1.1);
}
/* #-------- Aboutme  Section -----#  */
.container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 50px;
}
.aboutme {
    
    background-color: #1f1f1f;
    color: #f1f1f1;
    border: 2px solid #d4af37;
    border: 2px solid;
    border-radius: 30px;     
    padding: 25px 30px;      
    box-shadow: 0 10px 20px rgb(207, 200, 200); 
    width: 800px;           
    margin: 30px ;
    line-height: 2;
    transition: .5s;
}
.aboutme:hover {
    transform: scale(1.05);
    transition: .5s;
    box-shadow: 0 15px 30px rgb(14, 12, 9); 
}
.aboutme h1 {
    font-size: 28px;
    margin-bottom: 15px;
     color: #cfcfcf;

}
.aboutme h2 {
    color: #cfcfcf;
    font-size: 18px;
    margin: 10px 0;
    font-weight: 400;
}
.aboutme .bond {
    
    color: #d4af37;
    font-weight: 700;
}
.right{
    background-color: #1f1f1f;
    border: 3px solid #d4af37;
    font-size: 25px;
    border-radius: 30px;
    text-align: center;
    
}
.info-table {
    width: 100%;
    margin-bottom: 25px;
    
}
.info-table td {
    color: #f1f1f1;
    border-bottom: 2px solid #555;
    padding: 12px 0;
}
.info-table .name {
    color: #d4af37;
    font-weight: bold;
    width: 30%;
    font-weight: bold;
    padding: 10px;
}
.info-table a {
   color: #d4af37;
    font-weight: bold;
    padding: 10px ;
    transform: scale(1.1);
    transition: .5s;
}
.info-table a:hover {
    color: #ffffff;
}
.btn-cv {
    display: inline-block;
    margin-top: 20px;
    margin-bottom: 20px;
    letter-spacing: 1px;
    font-size: 22px;
     background-color: #d4af37;
    color: #000000;
    border-radius: 30px;
    font-weight: bold;
    padding: 12px 28px;
    transition: 0.5s ;
}
 .btn-cv:hover{
    background-color: #b8962e;
    color: #000000;
    transform: scale(1.1);
}
/* #-------- Education section--# */

.education {
    display:flex ;
    align-items: center;
    flex-direction: column;
    align-items: center;
}
h2{
    display: block;
}

.education h2 {
    display: block;
    text-align: center;
    width: 100%;
    padding: 8px;
    margin-bottom: 40px;
    color: #ffffff;
    background-color: rgb(114, 81, 10);
    font-size: 32px;
    font-weight: bold;
    border-radius: 30px;
    transition: 0.7s;
}

.education h2:hover {
    background-color: #ffffff;
    color: rgb(114, 81, 10);
    box-shadow: 0 0 15px 4px rgb(146, 91, 15);
}

.education-item {
    background-color: #1f1f1f;
    border: 2px solid #d4af37;
    border-radius: 25px;
    padding: 25px;
    margin: 20px 0;
    width: 70%;
    transition: 1s;
}

.education-item:hover {
    transform: scale(1.04);
    box-shadow: 0 0 18px 4px rgb(203, 200, 197);
}

.education-item h3 {
    color: #d4af37;
    font-size: 22px;
    margin-bottom: 8px;
}

.education-place {
    display: block;
    color: #ffffff;
    font-weight: bold;
    margin-bottom: 5px;
}

.education-date {
    display: block;
    color: #bbbbbb;
    font-size: 14px;
    margin-bottom: 12px;
}

.education-item p {
    color: #e5e5e5;
    line-height: 1.8;
}

/* #-------- Skill Section -----#  */
.title{
    text-align: center;
    display: block;
    width: 100%;
    padding: 8px;
    margin-bottom: 25px;
    color: rgb(255, 255, 255);
    background-color: rgb(114, 81, 10);
    font-size: 32px;
    font-weight: bold;
    transition: 0.7s;
    border-radius: 30px;
}
.title:hover{
    color: rgb(114, 81, 10);
    background-color: rgb(255, 255, 255);
    box-shadow: 0 0 15px 4px rgb(146, 91, 15);
}
.content{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.cards{
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.card{
     background-color: #1f1f1f;
    border: 1px solid #d4af37;
    margin: 20px;
    padding: 25px;
    border-radius: 25px;
    width: 260px;
    height: 300px;
    transition: 0.7s;
}
.card p {
    color: #e5e5e5;
}
.card:hover{
    transform: scale(1.04);
    box-shadow: 0 0 18px 4px rgb(146, 91, 15);
}
.info{
    text-align: center;
    letter-spacing: 1px;
}
.info h3{
    color: #d4af37;
    font-size: 18px;
    margin-bottom: 5px;
    font-weight: bold;
}
.icon{
    display: flex;
    justify-content: center;
    font-size: 40px;
    color: white;
    margin-top: 8px;
    margin-bottom: 12px;
}
.card p{
    color: rgb(255, 255, 255);
    font-size: 15px;
    margin-top: 8px;
    margin-bottom: 10px;
    font-weight: bold;
}
/* #-------- Service Section -----#  */
.services-section {
    padding: 60px ;
}

.service-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 10px;
    border-radius: 20px;
    border-bottom: 3px solid rgba(255, 255, 255, 0.1); 
    gap :20px;
    transition: 1s;
    
}
.service-row:hover{
    background-color: #ffffff;
    color: #000000;
    transform: scale(1.05);
    transition: 1s;

}

.service-details h3 {
    margin-bottom: 10px;
    font-size: 20px;
}


.service-action .btn-cv {
    padding: 6px 16px;   
    font-size: 14px;    
    border-radius: 6px;  
}

.service-action .btn-cv:hover{
    transform: scale(1.05);

}


/* #-------- Projects Section -----#  */
.projects{
    background-color: rgb(130, 100, 45);
    padding: 60px 40px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
}
.projects .title{
    color: rgb(197, 128, 80);
    background-color: rgb(255, 255, 255);
    padding: 10px;
    border-radius: 50px;
    margin-bottom: 30px;
}
.projects .title:hover{
    box-shadow: 0 0 20px 5px rgb(255, 255, 255);
    background-color: rgb(226, 223, 218);
    color: rgb(114, 81, 10);
}
.content{
    margin-top: 20px;
    border-radius: 30px;
}
.project-card{
    background-color: rgb(221, 188, 152);
    border-radius: 30px;
    border: 5px solid rgb(255, 255, 255);
    padding: 30px;
    margin: 15px;
    transition: 1s;
}
.project-card:hover{
    box-shadow: 0 0 20px 5px rgb(255, 255, 255);
    transform: scale(1.03);
}
.project-card img{
    width: 100%;
    height: 220px;
    display: block;
    border-radius: 30px;
    object-fit: cover;
    margin-bottom: 15px;
}
.project-card img:hover{
    box-shadow: 0 0 20px 5px rgb(146, 91, 15);
    transform: scale(1.05);
    transition: 0.5s;
}
.project-info p{
    font-size: 18px;     
    margin-top: 12px;
    margin-bottom: 18px;
    display: flex;
    justify-content: center;
    font-weight: bold;
}
.project-name{
    display: flex;
    justify-content: space-between;
    font-size: 18px;       
    margin-top: 15px;
}
.project-name a{
    font-size: 16px;
    color: rgb(114, 81, 10);
    background-color: white;
    transition: 1s;
    border: 2px solid rgb(0, 0, 0);
    border-radius: 20px;
    width: 130px;
    display: flex;
    justify-content: center;
}
.project-name a:hover{
    color: rgb(0, 0, 0);
    transform: scale(1.05);
    box-shadow: 0 0 20px 5px rgb(255, 255, 255);
}
.project-name span{
    font-size: 16px;
    color: rgb(114, 81, 10);
    background-color: white;
    border: 2px solid rgb(0, 0, 0);
    border-radius: 40px;
    width: 180px;
    display: flex;
    justify-content: center;
    transition: 1s;
    padding-left: 10px;
}
.project-name span:hover{
    color: rgb(0, 0, 0);
    box-shadow: 0 0 20px 5px rgb(255, 255, 255);
    transform: scale(1.05);
}
/* #-------- content section -----#  */
.click {
    display: flex;
    justify-content: center;
    color: rgb(114, 81, 10);
    background-color: white;
    border-radius: 70px;
    margin-top: 30px; 
    font-size: 22px; 
    font-weight: bold;
    transition: 1s;
}
.click:hover {
    box-shadow: 0 0 20px 5px rgb(191, 161, 126);
    transition: 1s;
    transform: scale(1.1);
}
.content-icon {
    display: flex;
    justify-content: center;
    font-size: 60px; 
    color: white;
    margin-top: 15px; 
    margin-bottom: 20px; 
}
.con {
    display: block;
    text-align: center;
    color: rgb(151, 115, 30);
    font-size: 25px; 
    margin-bottom: 30px; 
    font-weight: bold;
    width: 100%;
}

.form-card {
    width: 100%;
    max-width: 600px;
    height: auto;
}


.contact-form {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-top: 15px;
}

.contact-form input,
.contact-form textarea {
    padding: 12px;
    border-radius: 15px;
    border: 1px solid #d4af37;
    background-color: #1f1f1f;
    color: white;
    font-size: 14px;
}

.contact-form input:focus,
.contact-form textarea:focus {
    outline: none;
    box-shadow: 0 0 10px #d4af37;
}

/* #-------- footer  section -----#  */
.footer{

    background-color: #121212;
    color: #d4af37;
    height: 80px;
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 20px;
    font-weight: bold;
}
hr{
    border: 2px solid;
}
.footer .social-icon:hover{
    color: #d4af37;
    

}

/* ========================= */
/* ====== Responsive ======= */
/* ========================= */


/* --------- Tablets (max 1024px) --------- */
@media (max-width: 1024px) {

    section {
        padding: 60px 40px;
    }

    .container {
        flex-direction: column;
        align-items: center;
    }

    .aboutme {
        width: 100%; /* Override 800px width */
        margin: 20px 0;
    }

    .right {
        width: 100%;
        margin-top: 20px;
    }

    .education-item {
        width: 90%;
    }

    .service-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
}


/* --------- Mobile (max 768px) --------- */
@media (max-width: 768px) {

    header {
        flex-direction: column;
        align-items: center;
        padding: 15px;
        position: relative; /* Better for mobile scrolling */
        height: auto;
    }

    .photo {
        width: 70px;
        height: 70px;
        margin: 10px;
    }

    .nav {
        flex-direction: column;
        gap: 10px;
        margin-top: 10px;
        padding-left: 0;
        align-items: center;
    }

    .main {
        text-align: center;
        background-attachment: scroll; /* Fixed causes issues on some mobiles */
        padding-top: 20px;
    }

    .main h2 {
        font-size: 28px;
    }

    .main h3 {
        font-size: 18px;
    }

    .main a.btn {
        font-size: 16px;
        padding: 10px 20px;
    }

    .social-icon {
        justify-content: center;
        font-size: 24px;
    }
    
    .aboutme {
        width: 100%; /* Ensure width is flexible */
        margin: 10px 0;
        padding: 20px;
    }

    .cards {
        flex-direction: column;
        align-items: center;
    }

    .card {
        width: 90%;
        height: auto;
    }
    
    .service-row {
        align-items: center;
        text-align: center;
    }

    .projects {
        padding: 40px 20px;
    }

    .project-card {
        width: 100%; /* Ensure card fits screen */
    }

    .project-card img {
        height: 180px;
    }

    .project-name {
        flex-direction: column;
        gap: 10px;
        align-items: center;
    }
    
    /* Override fixed widths for buttons */
    .project-name a, .project-name span {
        width: 100%;
    }

    .contact-form input,
    .contact-form textarea {
        font-size: 13px;
    }
    
    .footer {
        flex-direction: column;
        height: auto;
        gap: 10px;
        text-align: center;
    }

}


/* --------- Small Mobile (max 480px) --------- */
@media (max-width: 480px) {
    
    section {
        padding: 40px 20px;
    }

    .main h2 {
        font-size: 22px;
    }

    .main h3 {
        font-size: 16px;
    }

    .logo {
        font-size: 20px;
    }

    .title {
        font-size: 22px;
        padding: 6px;
    }

    .education h2 {
        font-size: 22px;
    }
    
    .education-item {
        width: 100%;
        padding: 15px;
    }

    .btn-cv {
        font-size: 16px;
        padding: 8px 18px;
    }

    .footer {
        font-size: 14px;
        text-align: center;
        padding: 10px;
    }
}