  /* ================= 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:#000;
--white:#fff;
--green:#22A006;
--green-soft:rgba(34,160,6,.25);
--muted:#9a9a9a;
}

*{margin:0;padding:0;box-sizing:border-box}

body{
background:#000;
color:#fff;
font-family:'Inter',sans-serif;
overflow-x:hidden;
}

/* ================= CURSOR ================= */
html, body{
cursor: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMicgaGVpZ2h0PSczMicgdmlld0JveD0nMCAwIDMyIDMyJz48cGF0aCBmaWxsPScjMjJBMDA2JyBkPSdNNCAyIEw0IDI2IEwxMCAyMCBMMTQgMzAgTDE4IDI4IEwxNCAxOCBMMjIgMTggWicvPjwvc3ZnPg==") 4 4, auto;
}

/* ================= GRAIN ================= */
#grain{
position:fixed;
inset:0;
pointer-events:none;
z-index:999;
background:url("https://grainy-gradients.vercel.app/noise.svg");
opacity:.07;
}

/* ================= HEADER ================= */
.main-header{
  position:fixed;
  top:0; left:0; right:0;
  height:90px;
  padding:0 10%;
  display:grid;
grid-template-columns:auto auto auto;
  align-items:center;
  background:linear-gradient(to bottom,rgb(2, 46, 11),transparent);
  z-index:1000;
}
.hamburger{
justify-self:end;
}
.logo img{height:80px}


/* NAV CENTER */
.main-nav{
  display:flex;
  justify-content:center;
  gap:48px;
}

.main-nav a{
  font-size:.8rem;
  letter-spacing:2px;
  color:var(--muted);
  text-decoration:none;
  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%;
}

/* SOCIALS RIGHT */
.socials{
  display:flex;
  gap:18px;
}

.socials a{
  font-size:18px;
  color:var(--muted);
  transition:color .3s ease, transform .3s ease, text-shadow .3s ease;
}

.socials a:hover{
  color:var(--green);
  transform:translateY(-2px);
  text-shadow:0 0 12px rgba(34,160,6,.45);
}

/* تأكيد أن الأيقونة ترث اللون */
.socials i{
  pointer-events:none;
}

.main-nav {
  display: flex;
  gap: 32px;
  align-items: center;
}

.main-nav a {
  text-decoration: none;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.08em;
  font-size: 14px;
  position: relative;
}

.dropdown {
  position: relative;
}

.dropbtn {
  display: flex;
  align-items: center;
  gap: 6px;
}

.arrow {
  font-size: 11px;
  transition: transform 0.3s ease;
}

.dropdown-content {
  position: absolute;
  top: 140%;
  left: 0;
  background: rgba(0, 0, 0, 0.85);
  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,0.6);
  z-index: 999;
}

.dropdown-content a {
  padding: 12px 24px;
  font-size: 13px;
  letter-spacing: 0.06em;
}

.dropdown-content a:hover {
  background: rgba(255,255,255,0.08);
}

.dropdown:hover .dropdown-content {
  display: flex;
}

.dropdown:hover .arrow {
  transform: rotate(180deg);
}

/* Active link */
.main-nav a.active {
  color: #fff;
}

/* خط سفلي سينمائي */
.main-nav a.active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, #ffffff, rgba(255,255,255,0.3));
}

/* Active داخل الدروب داون */
.dropdown-content a.active {
  background: rgba(255,255,255,0.12);
}

/* لما SERVICES تكون Active يلف السهم */
.dropbtn.active .arrow {
  transform: rotate(180deg);
}
/* ================= GLOBAL ================= */
section{
padding:140px 10%;
max-width:1600px;
margin:auto;
}

h1{
font-size:clamp(3rem,6vw,4.8rem);
font-weight:500;
margin-bottom:24px;
}

h2{
font-size:clamp(2.2rem,4vw,3rem);
font-weight:500;
margin-bottom:26px;
}

p{
color:var(--muted);
line-height:1.8;
max-width:900px;
font-size:1.05rem;
}

/* ================= HERO ================= */
#hero{
height:100vh;
display:flex;
align-items:flex-end;
padding-bottom:10%;
background:
radial-gradient(circle at center,rgba(34,160,6,.25),transparent 65%);
}

#hero .content{
max-width:900px;
}

/* ================= BLOCK ================= */
.block{
margin-bottom:120px;
position:relative;
}

.divider{
width:120px;
height:2px;
background:var(--green);
margin:32px 0 42px;
}

/* ================= VIDEO ================= */
.video{
aspect-ratio:16/9;
border:1px solid var(--green-soft);
overflow:hidden;
background:#000;
}
.video iframe{
width:100%;
height:100%;
border:0;
}


/* ================= REVEAL ================= */
.reveal{
opacity:0;
transform:translateY(80px);
filter:blur(14px);
}

/* hamburger icon + mobile drawer + dropdown styles live in mobile-nav.css */

/* ================= MOBILE ================= */

@media(max-width:768px){

.main-header{
grid-template-columns:auto auto auto auto;
column-gap:10px;
height:80px;
padding:0 6%;
}

.logo img{
height:70px;
}

/* .reveal covers the hero content and every .block section on this
   page - basically the whole page body - and only reaches opacity:1
   via a GSAP ScrollTrigger with no fallback at all. Unlike the other
   service pages (which already force their sections visible on mobile
   as a safety net), this page had none, so any mobile timing miss left
   the entire page looking empty. */
.reveal{
opacity:1 !important;
transform:none !important;
filter:none !important;
}

}

/* ================= 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:.7rem;
letter-spacing:2px;
color:var(--muted);
position:relative;
text-decoration:none;
}

.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;
}

}
