/*
Theme Name: الأهرام العمرانية
Theme URI: https://alahram.ly
Author: AL Ahram AL Omrania
Description: ثيم مخصص لشركة الأهرام العمرانية للخدمات التقنية والهندسية. حلول هندسية وبيئية ولوجستية متكاملة لقطاع النفط والغاز والطاقة والصناعة في ليبيا.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: alahram-omrania
*/

:root{
  --ink:#12211A;
  --brand:#2E7D32;
  --brand-dark:#1F5A24;
  --leaf:#7CC142;
  --sand:#EFE9DA;
  --steel:#45564C;
  --paper:#FBFAF6;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Tajawal', sans-serif;
  background:var(--paper);
  color:var(--ink);
  direction:rtl;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.font-mono{font-family:'IBM Plex Mono', monospace}
.container{max-width:1180px;margin:0 auto;padding:0 20px}
::selection{background:var(--leaf);color:var(--ink)}

/* Header */
.site-header{
  position:fixed;top:0;right:0;left:0;z-index:50;
  background:rgba(251,250,246,.92);backdrop-filter:blur(6px);
  border-bottom:1px solid rgba(0,0,0,.05);
}
.site-header .inner{height:80px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:48px;width:48px;border-radius:999px;object-fit:cover;border:1px solid rgba(0,0,0,.1)}
.brand .name{font-weight:800;font-size:15px}
.brand .sub{font-size:11px;color:var(--steel);font-family:'IBM Plex Mono',monospace}
.main-nav{display:none;gap:32px;font-weight:500;font-size:15px}
.main-nav a:hover{color:var(--brand)}
.header-actions{display:flex;align-items:center;gap:12px}
.btn-cta{background:var(--brand);color:#fff;font-weight:700;font-size:14px;padding:10px 22px;border-radius:999px}
.btn-cta:hover{background:var(--brand-dark)}
.menu-toggle{display:flex;width:40px;height:40px;border-radius:999px;border:1px solid rgba(0,0,0,.1);align-items:center;justify-content:center;background:none;cursor:pointer}
@media(min-width:1024px){
  .main-nav{display:flex}
  .menu-toggle{display:none}
}

/* Hero */
.hero{
  position:relative;min-height:92vh;display:flex;align-items:flex-end;
  background-size:cover;background-position:center 40%;
}
.hero .inner{padding:160px 20px 80px;max-width:1180px;margin:0 auto;position:relative;z-index:2}
.hero .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--leaf);font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.2em;text-transform:uppercase;border:1px solid rgba(124,193,66,.4);border-radius:999px;padding:6px 16px}
.hero h1{color:#fff;font-weight:900;line-height:1.05;font-size:2.4rem;max-width:780px;margin:24px 0 0}
.hero h1 span{color:var(--leaf)}
.hero p{color:rgba(255,255,255,.8);font-size:1.1rem;max-width:600px;margin-top:24px;line-height:1.7}
.hero .actions{margin-top:36px;display:flex;flex-wrap:wrap;gap:16px}
.btn-leaf{background:var(--leaf);color:var(--ink);font-weight:700;padding:14px 28px;border-radius:999px}
.btn-outline{border:1px solid rgba(255,255,255,.4);color:#fff;font-weight:700;padding:14px 28px;border-radius:999px}
.stamp{
  display:none;position:absolute;left:32px;bottom:32px;width:128px;height:128px;
  border:2px dashed var(--leaf);border-radius:999px;align-items:center;justify-content:center;
  animation:spin 22s linear infinite;
}
.stamp span{color:var(--leaf);font-family:'IBM Plex Mono',monospace;font-size:10px;text-align:center;line-height:1.3;padding:0 12px}
@media(min-width:768px){.stamp{display:flex}}
@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:640px){.hero h1{font-size:3rem}}
@media(min-width:768px){.hero h1{font-size:3.75rem}}

/* Marquee */
.marquee{background:var(--ink);padding:12px 0;overflow:hidden;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.marquee-track{display:flex;width:max-content;animation:marquee 26s linear infinite;gap:40px}
.marquee-track span{color:rgba(255,255,255,.65);font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap}
.marquee-track .dot{color:var(--leaf)}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Sections generic */
section{padding:96px 0}
.section-head .num{font-family:'IBM Plex Mono',monospace;color:var(--brand);font-size:14px}
.section-head h2{font-size:2rem;font-weight:900;margin:10px 0 0}
.dark section, .dark{background:var(--ink);color:#fff}
.dark .section-head .num{color:var(--leaf)}
.rule{width:64px;height:1px;background:var(--leaf);margin:24px 0}

/* About */
.about-grid{display:grid;gap:56px;grid-template-columns:1fr}
@media(min-width:1024px){.about-grid{grid-template-columns:5fr 7fr}}
.about-grid p{color:var(--steel);line-height:1.9;font-size:15.5px;margin-top:18px}
.vm-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}
.vm-cards .card{border:1px solid rgba(0,0,0,.1);border-radius:18px;padding:20px;background:var(--paper)}
.vm-cards .card b{color:var(--brand);font-weight:900;font-size:22px;display:block}
.vm-cards .card p{margin-top:8px;font-size:13px}
.about-media{position:relative;border-radius:24px;overflow:hidden}
.about-media img{width:100%;height:420px;object-fit:cover}
.about-media .tags{position:absolute;bottom:20px;right:20px;left:20px;display:flex;flex-wrap:wrap;gap:10px}
.about-media .tags span{background:rgba(255,255,255,.95);border-radius:999px;padding:8px 16px;font-size:12px;font-weight:700}
.values{display:grid;grid-template-columns:1fr;gap:12px;margin-top:32px}
@media(min-width:640px){.values{grid-template-columns:1fr 1fr}}
.values div{display:flex;gap:10px;border-bottom:1px solid rgba(0,0,0,.1);padding-bottom:12px;font-size:14px;color:var(--steel)}
.values div b{color:var(--leaf)}

/* Services */
.services-grid{display:grid;grid-template-columns:1fr;gap:24px;margin-top:56px}
@media(min-width:768px){.services-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.services-grid{grid-template-columns:1fr 1fr 1fr}}
.service-card{border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:28px;background:rgba(255,255,255,.03);transition:border-color .3s}
.service-card:hover{border-color:rgba(124,193,66,.6)}
.service-card .idx{font-family:'IBM Plex Mono',monospace;color:var(--leaf);font-size:12px}
.service-card h3{margin:16px 0 0;font-size:1.2rem;font-weight:700}
.service-card p{margin-top:12px;color:rgba(255,255,255,.6);font-size:14px;line-height:1.8}

/* Why us */
.why-grid{display:grid;gap:56px;grid-template-columns:1fr}
@media(min-width:1024px){.why-grid{grid-template-columns:1fr 1fr}}
.why-imgs{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.why-imgs img{border-radius:18px;height:256px;object-fit:cover}
.why-imgs img:first-child{margin-top:32px}
.reason{display:flex;gap:16px;margin-top:24px}
.reason .n{width:44px;height:44px;flex:none;border-radius:999px;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900}
.reason h4{margin:0;font-size:1.05rem;font-weight:700}
.reason p{margin-top:6px;color:var(--steel);font-size:14px;line-height:1.8}

/* Partners */
.partners-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-top:48px}
@media(min-width:640px){.partners-grid{grid-template-columns:1fr 1fr 1fr}}
.partner-card{border:1px solid rgba(0,0,0,.1);border-radius:18px;padding:32px;text-align:center;transition:transform .3s}
.partner-card:hover{transform:translateY(-4px)}
.partner-card .name{font-weight:700;font-size:1.05rem}
.partner-card .sub{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--steel);margin-top:4px}

/* Gallery */
.gallery-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:40px}
@media(min-width:768px){.gallery-grid{grid-template-columns:1fr 1fr 1fr}}
.gallery-grid a{display:block;border-radius:18px;overflow:hidden;height:320px}
.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.gallery-grid a:hover img{transform:scale(1.06)}

/* Contact */
.contact-grid{display:grid;gap:48px;grid-template-columns:1fr}
@media(min-width:1024px){.contact-grid{grid-template-columns:5fr 7fr}}
.contact-item{display:flex;gap:16px;margin-top:22px}
.contact-item .ico{width:44px;height:44px;flex:none;border-radius:999px;background:#fff;border:1px solid rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center}
.contact-item b{display:block}
.contact-item span{color:var(--steel);font-size:14px}
.contact-actions{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}
.btn-dark{background:var(--ink);color:#fff;font-weight:700;padding:12px 24px;border-radius:999px;font-size:14px}
.btn-whatsapp{background:#25D366;color:#fff;font-weight:700;padding:12px 24px;border-radius:999px;font-size:14px}
.btn-line{border:1px solid rgba(0,0,0,.15);font-weight:700;padding:12px 24px;border-radius:999px;font-size:14px}

form.alahram-form{background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:24px;padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:20px}
form.alahram-form .full{grid-column:1/-1}
form.alahram-form label{font-size:14px;font-weight:700;display:block;margin-bottom:8px}
form.alahram-form input,form.alahram-form textarea{width:100%;border:1px solid rgba(0,0,0,.15);border-radius:12px;padding:12px 16px;font-size:14px;font-family:inherit}
form.alahram-form textarea{resize:none}
form.alahram-form button{background:var(--brand);color:#fff;font-weight:700;padding:14px 32px;border:0;border-radius:999px;cursor:pointer;font-size:15px}
form.alahram-form button:hover{background:var(--brand-dark)}
.form-msg{margin-top:14px;font-size:14px;font-weight:700}
.form-msg.success{color:var(--brand)}
.form-msg.error{color:#c0392b}
@media(max-width:640px){form.alahram-form{grid-template-columns:1fr}}

/* Footer */
.site-footer{background:var(--ink);color:#fff;padding:64px 0 28px}
.footer-grid{display:grid;grid-template-columns:1fr;gap:40px}
@media(min-width:768px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}
.footer-grid .brand-block{display:flex;gap:12px;align-items:center}
.footer-grid .brand-block img{height:48px;width:48px;border-radius:999px;object-fit:cover}
.footer-grid p{color:rgba(255,255,255,.5);font-size:14px;line-height:1.8;margin-top:18px;max-width:420px}
.footer-grid h5{font-size:14px;margin-bottom:16px}
.footer-grid ul{list-style:none;padding:0;margin:0;color:rgba(255,255,255,.6);font-size:14px}
.footer-grid ul li{margin-bottom:8px}
.footer-bottom{margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.4);font-size:12px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

/* Mobile menu */
.mobile-menu{display:none;border-top:1px solid rgba(0,0,0,.05);background:var(--paper)}
.mobile-menu.open{display:block}
.mobile-menu .container{padding:20px;display:flex;flex-direction:column;gap:16px;font-weight:500}

/* Scroll reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease}
.reveal.in{opacity:1;transform:translateY(0)}
@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}}
