  /* ================= CINEMATIC SCROLLBAR ================= */

/* Chrome / Edge / Safari */

::-webkit-scrollbar{
width:10px;
}

::-webkit-scrollbar-track{
background:#050505;
}

::-webkit-scrollbar-thumb{
background:linear-gradient(
180deg,
#22A006,
#0f5a02
);
border-radius:8px;
box-shadow:0 0 10px rgba(34,160,6,.6);
}

::-webkit-scrollbar-thumb:hover{
background:linear-gradient(
180deg,
#2ed60a,
#22A006
);
}

/* Firefox */

*{
scrollbar-width:thin;
scrollbar-color:#22A006 #050505;
}
:root{
--black:#0a0a0a;
--white:#ffffff;
--green:#22A006;
--muted:#9a9a9a;
--soft:rgba(255,255,255,.08);
}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html,body{
background:var(--black);
color:var(--white);
font-family:'Inter',sans-serif;
overflow-x:hidden;
}

/* ================= HEADER ================= */

header{
position:fixed;
top:0;
left:0;
width:100%;
height:90px;
padding:0 10%;
display:grid;
grid-template-columns:auto 1fr auto;
align-items:center;
background:linear-gradient(to bottom,rgb(2, 46, 11),transparent);
z-index:1000;
}

.logo img{
height:80px;
}

/* ================= NAV ================= */

.main-nav{
display:flex;
justify-content:center;
gap:48px;
align-items:center;
}

.main-nav a {
  text-decoration: none;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.08em;
  font-size: 14px;
  position: relative;
}

.main-nav a::after{
content:"";
position:absolute;
left:0;
bottom:-6px;
width:0;
height:2px;
background:var(--green);
transition:.3s;
}

.main-nav a:hover{
color:#fff;
}
.main-nav a:hover::after{
width:100%;
}

/* ACTIVE LINK */

.main-nav a.active{
color:#fff;
}

.main-nav a.active::after{
width:100%;
background:linear-gradient(90deg,#fff,rgba(255,255,255,.3));
}

/* ================= DROPDOWN ================= */

.dropdown{
position:relative;
}

.dropbtn{
display:flex;
align-items:center;
gap:6px;
}

.arrow{
font-size:11px;
transition:transform .3s ease;
}

.dropdown-content{
position:absolute;
top:140%;
left:0;
background:rgba(0,0,0,.9);
backdrop-filter:blur(8px);
min-width:260px;
padding:12px 0;
display:none;
flex-direction:column;
border-radius:8px;
box-shadow:0 15px 40px rgba(0,0,0,.6);
z-index:999;
}

.dropdown-content a{
padding:12px 24px;
font-size:13px;
letter-spacing:.06em;
}

.dropdown-content a:hover{
background:rgba(255,255,255,.08);
}

.dropdown:hover .dropdown-content{
display:flex;
}

.dropdown:hover .arrow{
transform:rotate(180deg);
}

.dropdown-content a.active{
background:rgba(255,255,255,.12);
}

.dropbtn.active .arrow{
transform:rotate(180deg);
}

/* ================= SOCIALS ================= */

.socials{
display:flex;
gap:18px;
}

.socials a{
font-size:18px;
color:var(--muted);
transition:.3s;
}

.socials a:hover{
color:var(--green);
transform:translateY(-2px);
text-shadow:0 0 12px rgba(34,160,6,.45);
}

.socials i{
pointer-events:none;
}

/* ================= CONTACT LAYOUT ================= */

.contact-section{
min-height:100vh;
padding:160px 10% 120px;
display:grid;
grid-template-columns:1.1fr .9fr;
gap:120px;
align-items:center;
}

/* LEFT SIDE */

.contact-left span{
display:block;
font-size:.75rem;
letter-spacing:3px;
color:var(--green);
margin-bottom:26px;
}

.contact-left h1{
font-size:clamp(2.4rem,4.2vw,3.4rem);
font-weight:500;
line-height:1.25;
margin-bottom:28px;
}

.contact-left p{
color:var(--muted);
max-width:460px;
line-height:1.75;
}

/* CTA BUTTONS */

.contact-actions{
margin-top:56px;
display:flex;
gap:22px;
}

.primary-btn{
border:1px solid var(--green);
background:transparent;
color:var(--green);
padding:18px 46px;
font-size:.8rem;
letter-spacing:3px;
cursor:pointer;
transition:.35s ease;
}

.primary-btn:hover{
background:var(--green);
color:#000;
box-shadow:0 0 26px rgba(34,160,6,.45);
transform:translateY(-2px);
}

.secondary-btn{
border:1px solid var(--soft);
background:transparent;
color:#fff;
padding:18px 42px;
font-size:.75rem;
letter-spacing:2px;
cursor:pointer;
transition:.35s ease;
}

.secondary-btn:hover{
border-color:var(--green);
color:var(--green);
}

/* RIGHT SIDE */

.contact-right{
border-left:1px solid var(--soft);
padding-left:70px;
}

.contact-item{
margin-bottom:42px;
}

.contact-item span{
display:block;
font-size:.7rem;
letter-spacing:2px;
color:var(--muted);
margin-bottom:10px;
}

.contact-item strong{
display:block;
font-size:1.1rem;
font-weight:500;
margin-bottom:6px;
}

.contact-item a{
display:block;
color:#fff;
text-decoration:none;
margin-bottom:4px;
}

.contact-item a:hover{
color:var(--green);
}

/* ================= POPUP ================= */

.overlay{
position:fixed;
inset:0;
background:rgba(0,0,0,.75);
backdrop-filter:blur(6px);
display:flex;
align-items:center;
justify-content:center;
opacity:0;
pointer-events:none;
transition:.45s ease;
z-index:2000;
}

.overlay.active{
opacity:1;
pointer-events:auto;
}

.modal{
background:#0a0a0a;
border:1px solid var(--soft);
padding:64px;
width:100%;
max-width:520px;
text-align:center;
transform:scale(.9) translateY(40px);
opacity:0;
transition:.45s ease;
box-shadow:0 0 80px rgba(34,160,6,.25);
}

.overlay.active .modal{
transform:scale(1) translateY(0);
opacity:1;
}

.modal h3{
font-size:1.9rem;
font-weight:500;
margin-bottom:36px;
}

.modal input,
.modal textarea{
width:100%;
background:#050505;
border:1px solid var(--soft);
padding:14px 16px;
color:#fff;
margin-bottom:18px;
font-family:inherit;
}

.modal textarea{
height:120px;
}

.modal input:focus,
.modal textarea:focus{
outline:none;
border-color:var(--green);
}

.modal button{
width:100%;
margin-top:10px;
border:1px solid var(--green);
background:transparent;
color:var(--green);
padding:16px;
letter-spacing:3px;
cursor:pointer;
transition:.35s ease;
}

.modal button:hover{
background:var(--green);
color:#000;
}

/* ================= MOBILE ================= */

@media(max-width:900px){

header{
padding:0 20px;
grid-template-columns:auto auto;
height:70px;
}

@media(max-width:900px){

.main-nav{
position:fixed;
top:0;
right:-100%;
width:80%;
height:100vh;
background:#050505;
flex-direction:column;
align-items:flex-start;
justify-content:center;
padding:80px 40px;
gap:26px;
transition:right .45s cubic-bezier(.77,0,.18,1);
z-index:1500;
}

.main-nav.active{
right:0;
}

}

.logo img{
height:70px;
}

.socials{
gap:12px;
}

.contact-section{
grid-template-columns:1fr;
gap:60px;
padding:120px 20px 80px;
}

.contact-right{
border-left:none;
border-top:1px solid var(--soft);
padding-left:0;
padding-top:40px;
}

.contact-left h1{
font-size:2rem;
line-height:1.4;
}

.contact-left p{
max-width:100%;
}

.contact-actions{
flex-direction:column;
gap:16px;
}

.primary-btn,
.secondary-btn{
width:100%;
text-align:center;
padding:16px;
}

}

@media(max-width:500px){

.contact-left h1{
font-size:1.6rem;
}

.modal{
padding:40px 24px;
margin:20px;
}

}

/* ================= MOBILE HEADER FIX ================= */

@media(max-width:768px){

header{
grid-template-columns:auto 1fr auto;
padding:0 20px;
height:70px;
}

/* الشعار */
.logo img{
height:60px;
}

/* زر SERVICES / WORK */
.mobile-quick{
display:flex;
gap:16px;
justify-self:center;
}

/* زر الهامبرغر */
.hamburger{
display:flex;
justify-self:end;
position:relative;
z-index:2000;
}

/* اخفاء السوشيال */
.socials{
display:none;
}

}



/* زر الهامبرغر */

.hamburger{
display:none;
flex-direction:column;
justify-content:center;
align-items:center;
gap:6px;

width:36px;
height:32px;

cursor:pointer;
background:none;
border:none;

justify-self:end;
z-index:2000;
}

.hamburger span{
width:28px;
height:2px;
background:#fff;
display:block;

transition:
transform .4s cubic-bezier(.77,0,.18,1),
opacity .3s ease;
}

/* شكل X */

.hamburger.active span:nth-child(1){
transform:translateY(8px) rotate(45deg);
}

.hamburger.active span:nth-child(2){
opacity:0;
}

.hamburger.active span:nth-child(3){
transform:translateY(-8px) rotate(-45deg);
}

/* ================= MOBILE ================= */

@media(max-width:768px){

.hamburger{
display:flex;
}

/* المينيو */

.main-nav{
position:fixed;
top:0;
right:-100%;

width:80%;
height:100vh;

background:#050505;

flex-direction:column;
align-items:flex-start;
justify-content:center;

padding:80px 40px;
gap:26px;

transition:
right .45s cubic-bezier(.77,0,.18,1),
opacity .45s ease,
transform .45s ease;

opacity:0;
transform:translateX(60px);

z-index:1500;
}

.main-nav.active{
right:0;
opacity:1;
transform:translateX(0);
}

/* روابط المينيو */

.main-nav a{
font-size:18px;
opacity:0;
transform:translateX(40px);
transition:.4s ease;
}

.main-nav.active a{
opacity:1;
transform:translateX(0);
}

.main-nav.active a:nth-child(1){transition-delay:.10s}
.main-nav.active a:nth-child(2){transition-delay:.15s}
.main-nav.active a:nth-child(3){transition-delay:.20s}
.main-nav.active a:nth-child(4){transition-delay:.25s}
.main-nav.active a:nth-child(5){transition-delay:.30s}

/* dropdown */

.dropdown-content{
position:relative;
top:auto;

background:none;
box-shadow:none;

display:none;
flex-direction:column;
padding-left:15px;
}

.dropdown.active .dropdown-content{
display:flex;
}

}

/* ================= MOBILE SOCIALS ================= */

.mobile-socials{
display:none;
margin-top:40px;
gap:20px;
font-size:22px;
}

.mobile-socials a{
color:#9a9a9a;
transition:.3s;
}

.mobile-socials a:hover{
color:#22A006;
transform:translateY(-3px);
}

@media(max-width:768px){

.mobile-socials{
display:flex;
}

.socials{
display:none;
}

}
.mobile-quick{
display:none;
gap:18px;
justify-self:center;
}

.mobile-quick a{
font-size:.8rem;
letter-spacing:2px;
color:var(--muted);
text-decoration:none;
position:relative;
}

.mobile-quick a::after{
content:"";
position:absolute;
left:0;
bottom:-6px;
width:0;
height:2px;
background:var(--green);
transition:.3s;
}

.mobile-quick a:hover{
color:#fff;
}

.mobile-quick a:hover::after{
width:100%;
}

@media(max-width:768px){
.mobile-quick{
display:flex;
}
}
  .primary-btn{
text-decoration:none;
}
