:root {
  --green-950:#063a2c;
  --green-900:#084b38;
  --green-800:#0b5d46;
  --green-700:#0f7658;
  --green-500:#25a076;
  --gold-700:#a86a1b;
  --gold-600:#bf7f2b;
  --gold-500:#d0a05b;
  --gold-300:#e8c994;
  --blue-700:#0b5c8b;
  --blue-500:#158caf;
  --teal-500:#18a7aa;
  --ink:#12251f;
  --muted:#66746f;
  --paper:#f8faf7;
  --cream:#f3efe6;
  --white:#fff;
  --border:rgba(10,76,56,.12);
  --shadow:0 25px 80px rgba(8,75,56,.12);
  --radius-xl:34px;
  --radius-lg:26px;
  --radius-md:20px;
  --container:1200px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Cairo","Tajawal",Arial,sans-serif;line-height:1.85;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
img{max-width:100%;display:block}
::selection{background:var(--gold-300);color:var(--green-950)}
.container{width:min(calc(100% - 44px),var(--container));margin-inline:auto}
.section{padding:110px 0;position:relative}
.grain{position:fixed;inset:0;pointer-events:none;z-index:999;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E")}

.page-loader{position:fixed;inset:0;background:#fff;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transition:opacity .55s ease,visibility .55s ease}
.page-loader.hidden{opacity:0;visibility:hidden}
.page-loader img{width:155px;max-height:145px;object-fit:contain}
.page-loader span{width:95px;height:3px;background:rgba(8,75,56,.12);position:relative;overflow:hidden;border-radius:99px}
.page-loader span:after{content:"";position:absolute;inset:0;width:40%;background:linear-gradient(90deg,var(--green-700),var(--gold-500));animation:loader 1s infinite ease-in-out}
@keyframes loader{from{transform:translateX(180%)}to{transform:translateX(-250%)}}

.site-header{position:fixed;inset:0 0 auto;z-index:1000;padding:18px 0;transition:.35s ease}
.site-header.scrolled{background:rgba(248,250,247,.88);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 8px 35px rgba(7,55,42,.08);padding:10px 0;border-bottom:1px solid rgba(8,75,56,.06)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;gap:12px;z-index:2}
.brand img{width:67px;height:64px;object-fit:contain;transition:.35s ease}
.site-header.scrolled .brand img{width:55px;height:52px}
.brand-copy{display:grid;line-height:1.25}
.brand-copy strong{font-size:18px;color:var(--green-900);font-weight:900}
.brand-copy span{font-size:10px;color:var(--gold-700);letter-spacing:.2px;margin-top:4px}
.main-nav{display:flex;align-items:center;gap:9px}
.main-nav a{font-size:13px;font-weight:700;color:#3d514a;padding:11px 12px;border-radius:12px;transition:.25s ease;position:relative;white-space:nowrap}
.main-nav a:not(.nav-cta):after{content:"";position:absolute;right:12px;left:12px;bottom:5px;height:2px;background:var(--gold-500);border-radius:99px;transform:scaleX(0);transition:.25s ease}
.main-nav a:hover,.main-nav a.active{color:var(--green-800)}
.main-nav a:hover:after,.main-nav a.active:after{transform:scaleX(1)}
.main-nav .nav-cta{background:var(--green-900);color:#fff;padding:11px 20px;margin-right:8px;box-shadow:0 12px 30px rgba(8,75,56,.18)}
.main-nav .nav-cta:hover{transform:translateY(-2px);background:var(--green-700)}
.nav-toggle{display:none;width:46px;height:46px;border:0;border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(8,75,56,.1);padding:12px;z-index:3}
.nav-toggle span{display:block;height:2px;background:var(--green-900);margin:5px 0;border-radius:99px;transition:.3s}

.hero{min-height:100vh;padding:155px 0 85px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 80% 26%,rgba(211,166,95,.18),transparent 25%),radial-gradient(circle at 12% 75%,rgba(22,141,174,.12),transparent 27%),linear-gradient(135deg,#fbfcf9 0%,#f6f9f4 48%,#f2f0e8 100%)}
.hero:before{content:"";position:absolute;width:780px;height:780px;border:1px solid rgba(9,92,69,.08);border-radius:50%;left:-380px;top:-250px}
.hero:after{content:"";position:absolute;width:420px;height:200px;right:-70px;bottom:30px;background:repeating-radial-gradient(ellipse at center,transparent 0 13px,rgba(21,140,175,.07) 14px 16px);transform:rotate(-8deg);opacity:.8}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:80px;position:relative;z-index:2}
.eyebrow{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.62);border:1px solid rgba(9,92,69,.1);border-radius:999px;padding:8px 14px 8px 18px;color:var(--green-800);font-size:12px;font-weight:800;box-shadow:0 10px 35px rgba(8,75,56,.07);backdrop-filter:blur(10px)}
.eyebrow span{width:8px;height:8px;border-radius:50%;background:var(--gold-500);box-shadow:0 0 0 7px rgba(208,160,91,.14)}
.hero h1{font-size:clamp(46px,5.15vw,78px);line-height:1.25;margin:28px 0 22px;letter-spacing:-2.3px;color:var(--green-950);font-weight:900}
.hero h1 em{font-style:normal;color:var(--gold-700);position:relative}
.hero h1 em:after{content:"";position:absolute;height:10px;right:-2%;left:-2%;bottom:3px;background:rgba(208,160,91,.22);z-index:-1;transform:skew(-15deg)}
.hero h1 span{color:var(--blue-700)}
.hero-lead{font-size:17px;color:#53645e;max-width:690px;margin:0;line-height:2.05}
.hero-actions{display:flex;gap:12px;align-items:center;margin-top:34px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:14px 23px;border-radius:15px;font-size:14px;font-weight:800;transition:.3s ease}
.btn-primary{background:linear-gradient(135deg,var(--green-900),var(--green-700));color:#fff;box-shadow:0 16px 38px rgba(8,75,56,.23)}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 22px 42px rgba(8,75,56,.28)}
.btn-primary i{font-style:normal;font-size:20px;transition:.3s}
.btn-primary:hover i{transform:translateX(-5px)}
.btn-ghost{border:1px solid rgba(8,75,56,.15);background:rgba(255,255,255,.52);color:var(--green-900)}
.btn-ghost:hover{background:#fff;border-color:rgba(8,75,56,.28)}
.hero-micro{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:46px;max-width:680px}
.hero-micro div{border-right:2px solid var(--gold-500);padding-right:14px;display:grid;align-content:start}
.hero-micro b{font-size:30px;line-height:1;color:var(--green-800);font-weight:900;font-family:"Tajawal",sans-serif}
.hero-micro span{font-size:10.5px;color:var(--muted);margin-top:8px;line-height:1.7}

.hero-visual{position:relative;min-height:580px;display:grid;place-items:center}
.visual-shell{width:min(100%,540px);aspect-ratio:1;position:relative;display:grid;place-items:center}
.logo-halo{position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.94) 0 47%,rgba(255,255,255,.35) 48% 60%,transparent 61%);filter:drop-shadow(0 28px 60px rgba(8,75,56,.14))}
.logo-halo:before,.logo-halo:after{content:"";position:absolute;border-radius:50%;inset:-5%;border:1px dashed rgba(8,75,56,.22);animation:spin 28s linear infinite}
.logo-halo:after{inset:8%;border-color:rgba(191,127,43,.28);animation-direction:reverse;animation-duration:20s}
@keyframes spin{to{transform:rotate(360deg)}}
.logo-stage{position:relative;width:72%;z-index:2;filter:drop-shadow(0 22px 28px rgba(8,75,56,.13));animation:float 6s ease-in-out infinite}
.logo-stage img{width:100%;object-fit:contain}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.hero-card{position:absolute;z-index:5;background:rgba(255,255,255,.82);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.92);border-radius:18px;padding:13px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 18px 55px rgba(8,75,56,.13);animation:floatCard 7s ease-in-out infinite}
.card-top{top:11%;left:-2%}.card-bottom{bottom:14%;right:-4%;animation-delay:-3s}
@keyframes floatCard{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-10px) rotate(1deg)}}
.card-icon{width:39px;height:39px;border-radius:13px;background:rgba(14,117,88,.09);display:grid;place-items:center;color:var(--green-700);font-size:24px}
.hero-card div{display:grid;line-height:1.35}.hero-card strong{font-size:12px;color:var(--green-900)}.hero-card small{font-size:9px;color:var(--muted);margin-top:4px}
.water-lines{position:absolute;left:6%;right:6%;bottom:7%;height:85px;z-index:1;transform:rotate(-4deg)}
.water-lines i{position:absolute;left:0;right:0;height:28px;border-radius:50%;border-top:7px solid var(--blue-700);opacity:.82}
.water-lines i:nth-child(2){top:18px;border-color:var(--blue-500);right:8%;left:-2%}.water-lines i:nth-child(3){top:36px;border-color:var(--teal-500);right:18%;left:3%}
.hero-orbit{position:absolute;border-radius:50%;border:1px solid rgba(8,75,56,.07)}
.orbit-one{width:500px;height:500px;right:-180px;top:5%}.orbit-two{width:220px;height:220px;right:15%;bottom:-90px;border-color:rgba(208,160,91,.16)}
.scroll-hint{position:absolute;bottom:24px;right:50%;transform:translateX(50%);z-index:5;font-size:9px;color:#708078;display:flex;align-items:center;gap:10px;writing-mode:vertical-rl;letter-spacing:.8px}
.scroll-hint span{width:1px;height:44px;background:linear-gradient(var(--gold-500),transparent);position:relative}.scroll-hint span:after{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold-500);position:absolute;top:0;right:-2px;animation:scrollDot 1.8s infinite}
@keyframes scrollDot{0%{transform:translateY(0);opacity:0}25%{opacity:1}80%{opacity:1}100%{transform:translateY(35px);opacity:0}}

.kicker{display:inline-block;color:var(--gold-700);font-size:11px;letter-spacing:1.4px;text-transform:uppercase;font-weight:900;margin-bottom:14px}
.kicker.light{color:var(--gold-300)}
.section-heading{max-width:860px;margin:0 auto 55px;text-align:center}
.section-heading.compact{margin-bottom:45px}
.section-heading h2,.labs-head h2,.network-copy h2,.roadmap-intro h2,.contact-copy h2{font-size:clamp(34px,4vw,57px);line-height:1.38;letter-spacing:-1.5px;margin:0;color:var(--green-950);font-weight:900}
.section-heading h2 span,.labs-head h2 span,.network-copy h2 span,.roadmap-intro h2 span,.contact-copy h2 span{color:var(--gold-700)}
.section-heading p{font-size:16px;color:var(--muted);max-width:780px;margin:24px auto 0;line-height:2.05}

.intro{background:#fff}
.definition-grid{display:grid;grid-template-columns:1.35fr .825fr .825fr;gap:18px}
.definition-card{min-height:365px;padding:34px;border-radius:var(--radius-lg);background:linear-gradient(180deg,#fbfcfa,#f4f7f2);border:1px solid var(--border);position:relative;overflow:hidden;transition:.35s ease}
.definition-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.definition-card.large{background:linear-gradient(145deg,#f2f7f1,#eaf2eb)}
.definition-card.dark{background:linear-gradient(150deg,var(--green-950),var(--green-800));color:#fff;border-color:transparent}
.definition-card:before{content:"";position:absolute;width:190px;height:190px;border-radius:50%;border:1px solid rgba(8,75,56,.08);left:-70px;bottom:-85px}
.definition-card.dark:before{border-color:rgba(255,255,255,.12)}
.card-number{position:absolute;top:22px;left:24px;font:900 48px/1 "Tajawal",sans-serif;color:rgba(8,75,56,.08)}
.dark .card-number{color:rgba(255,255,255,.09)}
.mini-label{font-size:10px;font-weight:900;color:var(--gold-700);letter-spacing:.5px}
.dark .mini-label{color:var(--gold-300)}
.definition-card h3{font-size:25px;line-height:1.55;margin:28px 0 14px;color:var(--green-950)}
.definition-card.dark h3{color:#fff}
.definition-card p{font-size:13.5px;color:#66746f;margin:0;line-height:2.05}
.definition-card.dark p{color:rgba(255,255,255,.7)}
.quote-line{margin-top:28px;display:inline-block;padding:7px 12px;border-radius:10px;border:1px solid rgba(8,75,56,.1);font-size:10px;color:var(--green-800);font-weight:800;background:rgba(255,255,255,.7);direction:ltr}

.network{background:linear-gradient(180deg,#f7f8f4,#f0f4ef);overflow:hidden}
.network:before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(208,160,91,.15),transparent 65%);left:-200px;top:-200px}
.network-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:65px;position:relative}
.network-copy p{font-size:15px;color:var(--muted);margin:24px 0 27px;line-height:2.1}
.network-legend{display:grid;gap:13px;font-size:12px;font-weight:700;color:#52645e}
.network-legend span{display:flex;align-items:center;gap:10px}.dot{width:9px;height:9px;border-radius:50%;display:inline-block}.dot.green{background:var(--green-700);box-shadow:0 0 0 7px rgba(15,118,88,.1)}.dot.gold{background:var(--gold-600);box-shadow:0 0 0 7px rgba(191,127,43,.1)}
.network-map{height:590px;position:relative;direction:ltr}
.map-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.88);border:1px solid rgba(8,75,56,.1);box-shadow:0 28px 70px rgba(8,75,56,.14);z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;backdrop-filter:blur(15px)}
.map-core img{width:130px;height:120px;object-fit:contain}.map-core strong{font-size:16px;color:var(--green-900);margin-top:-5px}.map-core small{font-size:8px;color:var(--gold-700);direction:ltr}
.core-pulse{position:absolute;inset:-28px;border-radius:50%;border:1px solid rgba(8,75,56,.13);animation:pulse 2.8s infinite}
.core-pulse:after{content:"";position:absolute;inset:-30px;border-radius:50%;border:1px solid rgba(191,127,43,.1);animation:pulse 2.8s infinite .8s}
@keyframes pulse{0%{transform:scale(.8);opacity:0}35%{opacity:1}100%{transform:scale(1.15);opacity:0}}
.link-cluster{position:absolute;top:34px;bottom:34px;width:210px;display:flex;flex-direction:column;justify-content:space-between;z-index:2}
.cluster-back{left:0}.cluster-forward{right:0}
.link-cluster span{background:#fff;border:1px solid var(--border);box-shadow:0 12px 36px rgba(8,75,56,.07);padding:12px 15px;border-radius:15px;text-align:center;font-size:11px;font-weight:800;color:var(--green-900);direction:rtl}
.cluster-forward span{color:#805018;border-color:rgba(191,127,43,.16)}
.network-lines{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:visible}
.network-lines path{fill:none;stroke:rgba(15,118,88,.25);stroke-width:1.8;stroke-dasharray:6 7;animation:dash 18s linear infinite}.network-lines .gold-line{stroke:rgba(191,127,43,.28)}
@keyframes dash{to{stroke-dashoffset:-100}}

.governance{background:#fff}
.governance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}
.gov-card{padding:38px 32px 30px;border-radius:var(--radius-lg);border:1px solid var(--border);background:#fcfdfb;position:relative;overflow:hidden;min-height:345px;transition:.35s ease}
.gov-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.gov-card.featured{background:linear-gradient(145deg,var(--green-950),var(--green-800));color:#fff;border-color:transparent;transform:translateY(-12px)}
.gov-card.featured:hover{transform:translateY(-19px)}
.gov-index{position:absolute;top:25px;left:27px;font:900 58px/1 "Tajawal",sans-serif;color:rgba(8,75,56,.06)}
.featured .gov-index{color:rgba(255,255,255,.08)}
.gov-icon{width:58px;height:58px;border-radius:19px;display:grid;place-items:center;background:rgba(8,75,56,.07);color:var(--green-800);font-size:28px}
.featured .gov-icon{background:rgba(255,255,255,.11);color:var(--gold-300)}
.gov-card h3{font-size:21px;color:var(--green-950);margin:26px 0 14px}.featured h3{color:#fff}
.gov-card p{font-size:13px;color:var(--muted);line-height:2;margin:0}.featured p{color:rgba(255,255,255,.72)}
.gov-card small{position:absolute;bottom:26px;right:32px;font-size:9px;color:var(--gold-700);font-weight:800;direction:ltr}.featured small{color:var(--gold-300)}

.labs{background:var(--green-950);overflow:hidden}
.labs:before{content:"";position:absolute;width:650px;height:650px;border-radius:50%;border:1px solid rgba(255,255,255,.05);right:-290px;top:-270px;box-shadow:0 0 0 90px rgba(255,255,255,.018),0 0 0 180px rgba(255,255,255,.012)}
.labs-head{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end;margin-bottom:38px;position:relative}
.labs-head h2{color:#fff}.labs-head h2 span{color:var(--gold-300)}
.labs-head p{color:rgba(255,255,255,.62);font-size:14px;line-height:2.05;margin:0}
.labs-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px;position:relative}
.labs-filter button{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.04);color:rgba(255,255,255,.7);border-radius:999px;padding:8px 15px;font-size:11px;font-weight:700;cursor:pointer;transition:.25s}
.labs-filter button:hover,.labs-filter button.active{background:var(--gold-500);border-color:var(--gold-500);color:var(--green-950)}
.labs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;position:relative}
.lab-card{padding:29px 26px 25px;min-height:295px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);color:#fff;position:relative;overflow:hidden;transition:opacity .3s,transform .35s,background .35s,border .35s}
.lab-card:hover{transform:translateY(-7px);background:rgba(255,255,255,.075);border-color:rgba(232,201,148,.3)}
.lab-card.hidden-card{display:none}
.lab-no{position:absolute;left:20px;top:20px;font:900 38px/1 "Tajawal",sans-serif;color:rgba(255,255,255,.07)}
.lab-symbol{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:rgba(208,160,91,.12);color:var(--gold-300);font-size:23px}
.lab-card h3{font-size:17px;line-height:1.7;margin:22px 0 10px;color:#fff;max-width:90%}
.lab-card p{font-size:11.5px;line-height:2;color:rgba(255,255,255,.58);margin:0 0 20px}
.lab-card b{font-size:9px;color:var(--gold-300);border-top:1px solid rgba(255,255,255,.08);padding-top:12px;display:block;direction:rtl}

.roadmap{background:linear-gradient(135deg,#fbfbf7,#f1f5f0)}
.roadmap-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:80px;align-items:start}
.roadmap-intro{position:sticky;top:145px}
.roadmap-intro p{font-size:14px;color:var(--muted);line-height:2.05;margin:24px 0}
.roadmap-quote{border-right:3px solid var(--gold-500);padding:7px 17px 7px 0;font-size:13px;color:var(--green-800);font-weight:800}
.timeline{position:relative}.timeline:before{content:"";position:absolute;top:32px;bottom:32px;right:39px;width:1px;background:linear-gradient(var(--green-700),var(--gold-500),var(--blue-500))}
.timeline-item{display:grid;grid-template-columns:80px 1fr;gap:20px;position:relative;margin-bottom:28px}
.timeline-item:last-child{margin-bottom:0}
.step-marker{position:relative;z-index:2;width:80px;height:80px;border-radius:50%;background:#fff;border:1px solid var(--border);display:grid;place-items:center;box-shadow:0 10px 35px rgba(8,75,56,.09)}
.step-marker span{width:52px;height:52px;border-radius:50%;background:var(--green-900);display:grid;place-items:center;color:#fff;font:800 15px/1 "Tajawal",sans-serif}
.timeline-item:nth-child(2) .step-marker span{background:var(--gold-600)}.timeline-item:nth-child(3) .step-marker span{background:var(--blue-700)}
.step-card{background:#fff;border:1px solid var(--border);border-radius:24px;padding:29px 31px;min-height:210px;box-shadow:0 18px 55px rgba(8,75,56,.06)}
.step-card small{font-size:9px;color:var(--gold-700);font-weight:900}.step-card h3{font-size:23px;color:var(--green-950);margin:8px 0 10px}.step-card p{font-size:12.5px;color:var(--muted);line-height:2;margin:0}

.sustainability{padding-top:50px;background:#fff}
.sustainability-panel{min-height:510px;border-radius:38px;background:linear-gradient(130deg,#063a2c 0%,#09523e 55%,#0b6a50 100%);padding:65px 72px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:50px;overflow:hidden;position:relative;box-shadow:0 35px 90px rgba(8,75,56,.2)}
.sustainability-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 20%,rgba(208,160,91,.22),transparent 23%),repeating-linear-gradient(120deg,transparent 0 44px,rgba(255,255,255,.012) 45px 46px)}
.sustainability-copy{position:relative;z-index:2}.sustainability-copy h2{font-size:clamp(35px,4vw,57px);line-height:1.45;color:#fff;margin:0;font-weight:900}.sustainability-copy h2 span{color:var(--gold-300)}
.sustainability-copy p{font-size:14px;color:rgba(255,255,255,.7);line-height:2.1;margin:25px 0 0;max-width:690px}
.sustainability-mark{position:relative;z-index:2;display:grid;place-items:center;min-height:330px}
.sustainability-mark img{width:260px;position:relative;z-index:2;filter:drop-shadow(0 25px 35px rgba(0,0,0,.15));background:rgba(255,255,255,.95);border-radius:50%;padding:25px}
.mark-ring{position:absolute;width:330px;height:330px;border-radius:50%;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 90px rgba(255,255,255,.018);animation:spin 35s linear infinite}
.mark-ring:before,.mark-ring:after{content:"";position:absolute;border-radius:50%;background:var(--gold-500)}.mark-ring:before{width:13px;height:13px;top:10px;left:75px;box-shadow:0 0 0 8px rgba(208,160,91,.12)}.mark-ring:after{width:8px;height:8px;bottom:28px;right:43px;background:var(--blue-500);box-shadow:0 0 0 7px rgba(21,140,175,.12)}

.contact{background:#fff}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.contact-copy p{font-size:14px;color:var(--muted);line-height:2.05;max-width:570px;margin:24px 0 0}
.contact-card{border-radius:var(--radius-xl);border:1px solid var(--border);background:linear-gradient(145deg,#f8faf7,#eef4ef);padding:34px;box-shadow:var(--shadow)}
.contact-person{display:flex;align-items:center;gap:15px;padding-bottom:22px;margin-bottom:7px;border-bottom:1px solid var(--border)}
.avatar{width:62px;height:62px;border-radius:19px;background:linear-gradient(135deg,var(--green-900),var(--green-700));color:#fff;display:grid;place-items:center;font:800 18px/1 "Tajawal",sans-serif;direction:ltr}
.contact-person div{display:grid}.contact-person strong{font-size:17px;color:var(--green-950);direction:ltr;text-align:right}.contact-person small{font-size:9px;color:var(--gold-700);direction:ltr;text-align:right}
.contact-card>a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 4px;border-bottom:1px solid var(--border);transition:.25s}.contact-card>a:last-child{border-bottom:0}.contact-card>a:hover{padding-right:10px;color:var(--green-700)}.contact-card>a span{font-size:10px;color:var(--muted)}.contact-card>a b{font-size:12px;direction:ltr;text-align:left}

.site-footer{background:#061f18;color:#fff;padding:52px 0 25px}
.footer-top{display:grid;grid-template-columns:.8fr 1.6fr auto;gap:50px;align-items:center;padding-bottom:35px;border-bottom:1px solid rgba(255,255,255,.08)}
.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand img{width:76px;height:72px;object-fit:contain;background:#fff;border-radius:18px;padding:6px}.footer-brand div{display:grid}.footer-brand strong{font-size:20px}.footer-brand span{font-size:9px;color:var(--gold-300);direction:ltr;text-align:right}
.footer-top p{font-size:11px;color:rgba(255,255,255,.58);line-height:2;margin:0;max-width:570px}
.back-top{width:50px;height:50px;border:1px solid rgba(255,255,255,.12);border-radius:16px;display:grid;place-items:center;font-size:22px;color:var(--gold-300);transition:.3s}.back-top:hover{background:var(--gold-500);color:var(--green-950);transform:translateY(-5px)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:22px;font-size:9px;color:rgba(255,255,255,.35)}

.reveal{opacity:0;transform:translateY(32px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}
.reveal.is-visible{opacity:1;transform:none}.reveal.delay-1{transition-delay:.12s}.reveal.delay-2{transition-delay:.24s}

@media (max-width:1050px){
  .main-nav a{font-size:11.5px;padding:10px 8px}.main-nav .nav-cta{padding:10px 14px}
  .hero-grid{gap:35px}.hero h1{font-size:56px}.hero-visual{min-height:500px}
  .definition-grid{grid-template-columns:1fr 1fr}.definition-card.large{grid-column:1/-1;min-height:320px}
  .network-grid,.roadmap-grid{grid-template-columns:1fr;gap:50px}.network-copy{max-width:760px}.roadmap-intro{position:relative;top:auto;max-width:760px}
  .labs-grid{grid-template-columns:repeat(2,1fr)}
  .sustainability-panel{padding:55px 48px}
}

@media (max-width:820px){
  .section{padding:82px 0}.container{width:min(calc(100% - 32px),var(--container))}
  .site-header{padding:12px 0}.brand img{width:56px;height:54px}.brand-copy span{display:none}
  .nav-toggle{display:block}.nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .main-nav{position:fixed;inset:0;background:rgba(248,250,247,.98);backdrop-filter:blur(20px);display:flex;flex-direction:column;align-items:stretch;justify-content:center;padding:100px 35px 40px;gap:4px;transform:translateY(-100%);opacity:0;visibility:hidden;transition:.4s ease}
  .main-nav.open{transform:none;opacity:1;visibility:visible}.main-nav a{font-size:20px;padding:11px 16px;text-align:center}.main-nav a:not(.nav-cta):after{display:none}.main-nav .nav-cta{margin:17px 0 0;padding:14px}
  .hero{padding:130px 0 65px}.hero-grid{grid-template-columns:1fr;text-align:center}.hero-content{order:1}.hero-visual{order:0;min-height:410px}.visual-shell{max-width:420px}.hero h1{font-size:clamp(41px,10vw,60px);letter-spacing:-1.5px}.hero-lead{font-size:15px}.eyebrow{font-size:10px}.hero-actions{justify-content:center}.hero-micro{margin-inline:auto;text-align:right}.scroll-hint{display:none}
  .section-heading h2,.labs-head h2,.network-copy h2,.roadmap-intro h2,.contact-copy h2{font-size:38px}
  .definition-grid{grid-template-columns:1fr}.definition-card.large{grid-column:auto}.definition-card{min-height:auto}
  .governance-grid{grid-template-columns:1fr}.gov-card{min-height:300px}.gov-card.featured{transform:none}.gov-card.featured:hover{transform:translateY(-7px)}
  .labs-head{grid-template-columns:1fr;gap:20px}.labs-grid{grid-template-columns:1fr 1fr}
  .sustainability-panel{grid-template-columns:1fr;text-align:center;padding:48px 35px}.sustainability-copy p{margin-inline:auto}.sustainability-mark{min-height:290px}.sustainability-mark img{width:220px}.mark-ring{width:290px;height:290px}
  .contact-grid{grid-template-columns:1fr;gap:35px}.contact-copy{text-align:center}.contact-copy p{margin-inline:auto}
  .footer-top{grid-template-columns:1fr;text-align:center;gap:25px}.footer-brand{justify-content:center}.footer-brand span{text-align:center}.footer-top p{margin-inline:auto}.back-top{margin-inline:auto}.footer-bottom{flex-direction:column;gap:5px}
}

@media (max-width:560px){
  .section{padding:68px 0}.hero{padding-top:115px}.hero-visual{min-height:335px}.visual-shell{max-width:325px}.logo-stage{width:75%}.hero-card{padding:9px 10px;border-radius:13px}.hero-card strong{font-size:9px}.hero-card small{font-size:7px}.card-icon{width:31px;height:31px;font-size:18px}.card-top{left:-3%;top:6%}.card-bottom{right:-3%;bottom:11%}
  .hero h1{font-size:39px;line-height:1.35}.hero-lead{font-size:13px;line-height:2}.hero-actions{flex-direction:column}.btn{width:100%}.hero-micro{grid-template-columns:1fr;gap:15px;margin-top:32px}.hero-micro div{display:grid;grid-template-columns:52px 1fr;align-items:center}.hero-micro b{font-size:27px}.hero-micro span{margin-top:0}
  .section-heading{margin-bottom:36px}.section-heading h2,.labs-head h2,.network-copy h2,.roadmap-intro h2,.contact-copy h2{font-size:31px;letter-spacing:-.8px}.section-heading p{font-size:13px}
  .definition-card{padding:28px 24px}.definition-card h3{font-size:21px}.definition-card p{font-size:12.5px}
  .network-map{height:790px}.map-core{width:175px;height:175px}.map-core img{width:105px;height:95px}.link-cluster{width:160px;top:25px;bottom:25px}.cluster-back{left:0}.cluster-forward{right:0}.link-cluster span{font-size:9px;padding:9px 8px}.network-lines{display:none}.map-core{left:50%;top:50%}
  .labs-filter{gap:6px}.labs-filter button{padding:7px 11px;font-size:9px}.labs-grid{grid-template-columns:1fr}.lab-card{min-height:auto}
  .timeline:before{right:28px}.timeline-item{grid-template-columns:58px 1fr;gap:13px}.step-marker{width:58px;height:58px}.step-marker span{width:42px;height:42px;font-size:12px}.step-card{padding:23px 20px;min-height:auto}.step-card h3{font-size:19px}.step-card p{font-size:11.5px}
  .sustainability{padding-top:25px}.sustainability-panel{border-radius:28px;padding:38px 23px}.sustainability-copy h2{font-size:31px}.sustainability-copy p{font-size:12px}.sustainability-mark{min-height:230px}.sustainability-mark img{width:180px}.mark-ring{width:230px;height:230px}
  .contact-card{padding:24px 20px}.contact-card>a{align-items:flex-start;flex-direction:column;gap:4px}.contact-person strong{font-size:14px}.avatar{width:54px;height:54px}
}

@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}


/* =========================
   NEWS & INNER PAGES
   ========================= */
.news-home{background:linear-gradient(180deg,#fff 0%,#f7faf7 100%);position:relative;overflow:hidden}
.news-home:before{content:"";position:absolute;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(208,160,91,.11),transparent 68%);left:-220px;top:-210px;pointer-events:none}
.news-home-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px;position:relative;z-index:1}
.news-home-head h2,.inner-hero h1{font-size:clamp(38px,4.4vw,61px);line-height:1.35;color:var(--green-950);margin:7px 0 0;font-weight:900;letter-spacing:-1.4px}
.news-home-head h2 span,.inner-hero h1 span{color:var(--gold-700)}
.news-more{flex:0 0 auto;display:inline-flex;align-items:center;gap:10px;color:var(--green-800);font-size:11px;font-weight:900;border-bottom:1px solid rgba(8,75,56,.25);padding:9px 0;transition:.25s}
.news-more:hover{color:var(--gold-700);gap:16px}
.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative;z-index:1}
.news-card{background:#fff;border:1px solid var(--border);border-radius:24px;overflow:hidden;box-shadow:0 14px 45px rgba(8,75,56,.06);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;display:flex;flex-direction:column;min-width:0}
.news-card:hover{transform:translateY(-8px);box-shadow:0 28px 65px rgba(8,75,56,.12);border-color:rgba(208,160,91,.34)}
.news-card-image{display:block;position:relative;aspect-ratio:1.45/1;overflow:hidden;background:linear-gradient(135deg,var(--green-900),var(--green-700))}
.news-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.news-card:hover .news-card-image img{transform:scale(1.055)}
.news-card-image.placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#063a2c,#0b6a50)}
.news-card-image.placeholder img{width:48%;height:48%;object-fit:contain;filter:brightness(0) invert(1);opacity:.82}
.news-card-date{position:absolute;right:14px;bottom:14px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-radius:11px;padding:7px 10px;font-size:8.5px;font-weight:900;color:var(--green-900);box-shadow:0 8px 25px rgba(0,0,0,.08)}
.news-card-body{padding:21px 20px 22px;display:flex;flex-direction:column;flex:1}
.news-card-body h3{font-size:16px;line-height:1.75;color:var(--green-950);margin:0 0 9px;font-weight:900;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-card-body p{font-size:10.8px;line-height:1.95;color:var(--muted);margin:0 0 18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.news-card-link{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding-top:14px;color:var(--green-800);font-size:9.5px;font-weight:900}
.news-card-link i{font-style:normal;font-size:17px;transition:transform .25s}.news-card:hover .news-card-link i{transform:translateX(-5px)}
.news-empty{grid-column:1/-1;text-align:center;border:1px dashed rgba(8,75,56,.2);border-radius:28px;padding:55px 25px;background:rgba(255,255,255,.7)}
.news-empty img{width:100px;height:100px;object-fit:contain;opacity:.6}.news-empty h3{margin:14px 0 6px;color:var(--green-950)}.news-empty p{margin:0;color:var(--muted);font-size:11px}

.inner-header-space{height:102px}
.inner-hero{padding:72px 0 54px;background:linear-gradient(135deg,#f8faf7,#eef4ef);position:relative;overflow:hidden}
.inner-hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;border:1px solid rgba(8,75,56,.06);box-shadow:0 0 0 70px rgba(8,75,56,.025),0 0 0 140px rgba(8,75,56,.014);left:-140px;top:-310px}
.inner-hero .container{position:relative;z-index:1}.inner-hero p{font-size:13px;color:var(--muted);line-height:2;max-width:720px;margin:18px 0 0}
.news-archive{background:#fff}.news-archive .news-grid{grid-template-columns:repeat(3,1fr)}
.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:45px;direction:ltr}
.pagination a,.pagination span{width:43px;height:43px;border-radius:13px;border:1px solid var(--border);display:grid;place-items:center;font:800 11px/1 "Tajawal",sans-serif;color:var(--green-800);background:#fff;transition:.25s}
.pagination a:hover,.pagination .current{background:var(--green-800);color:#fff;border-color:var(--green-800);transform:translateY(-2px)}
.article-page{padding:55px 0 100px;background:#fff}.article-wrap{max-width:940px;margin:0 auto}
.article-meta{display:flex;align-items:center;gap:11px;flex-wrap:wrap;color:var(--muted);font-size:9.5px;margin-bottom:15px}.article-meta span{display:inline-flex;align-items:center;gap:7px}.article-meta i{width:6px;height:6px;border-radius:50%;background:var(--gold-500)}
.article-title{font-size:clamp(34px,5vw,64px);line-height:1.42;color:var(--green-950);margin:0 0 35px;font-weight:900;letter-spacing:-1.4px}
.article-main-image{border-radius:32px;overflow:hidden;box-shadow:0 30px 80px rgba(8,75,56,.12);margin-bottom:42px;background:#f3f6f3}.article-main-image img{display:block;width:100%;max-height:620px;object-fit:cover}
.article-content{font-size:15px;line-height:2.35;color:#33463f;white-space:pre-line}.article-content p{margin:0 0 20px}
.article-gallery{margin-top:55px;padding-top:38px;border-top:1px solid var(--border)}.article-gallery h2{font-size:27px;color:var(--green-950);margin:0 0 22px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-grid a{display:block;aspect-ratio:1/1;border-radius:20px;overflow:hidden;background:#eef4ef}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.45s}.gallery-grid a:hover img{transform:scale(1.06)}
.article-back{display:inline-flex;align-items:center;gap:10px;margin-bottom:28px;color:var(--green-800);font-size:10px;font-weight:900}.article-back:hover{gap:15px;color:var(--gold-700)}
.lightbox{position:fixed;inset:0;background:rgba(1,18,13,.94);z-index:9999;display:none;align-items:center;justify-content:center;padding:30px}.lightbox.open{display:flex}.lightbox img{max-width:min(1200px,92vw);max-height:88vh;object-fit:contain;border-radius:18px}.lightbox-close{position:absolute;top:22px;left:22px;width:48px;height:48px;border:1px solid rgba(255,255,255,.18);border-radius:14px;color:#fff;background:rgba(255,255,255,.08);font-size:25px;cursor:pointer}
.simple-footer-link{color:var(--gold-300);font-weight:800}

@media(max-width:1050px){.news-grid{grid-template-columns:repeat(2,1fr)}.news-archive .news-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.news-home-head{align-items:start;flex-direction:column}.news-home-head h2,.inner-hero h1{font-size:38px}.inner-header-space{height:80px}.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.news-grid,.news-archive .news-grid{grid-template-columns:1fr}.news-home-head{margin-bottom:28px}.news-card-body h3{font-size:17px}.inner-hero{padding:50px 0 38px}.article-page{padding-top:35px}.article-title{font-size:34px}.article-main-image{border-radius:20px;margin-bottom:30px}.article-content{font-size:14px;line-height:2.2}.gallery-grid{grid-template-columns:1fr 1fr;gap:8px}.gallery-grid a{border-radius:14px}}


/* =========================================================
   BILINGUAL + GIZ / SET + PARTNERS ENHANCEMENTS
   ========================================================= */

html[dir="ltr"] body {
  font-family: "Inter", "Cairo", sans-serif;
}

html[dir="ltr"] .brand-copy span,
html[dir="ltr"] .footer-brand span {
  letter-spacing: .01em;
}

html[dir="ltr"] .section-heading h2,
html[dir="ltr"] .labs-head h2,
html[dir="ltr"] .network-copy h2,
html[dir="ltr"] .roadmap-intro h2,
html[dir="ltr"] .contact-copy h2,
html[dir="ltr"] .news-home-head h2,
html[dir="ltr"] .inner-hero h1,
html[dir="ltr"] .article-title {
  letter-spacing: -.035em;
}

.main-nav .nav-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  background: var(--green-700) !important;
  color: #fff !important;
  border: 1px solid var(--green-700);
}

.main-nav .nav-cta:hover,
.main-nav .nav-cta.active {
  background: var(--green-900) !important;
  color: #fff !important;
}

.main-nav .nav-cta .nav-contact-icon {
  width: 29px;
  height: 29px;
  border-radius: 9px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 29px;
  background: #fff;
  color: var(--green-700);
  font-size: 15px;
  line-height: 1;
}

.language-switch {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  min-width: 58px;
  justify-content: center;
  color: var(--green-900) !important;
  background: rgba(8, 75, 56, .06);
  border: 1px solid rgba(8, 75, 56, .1);
}

.language-switch span {
  color: var(--gold-700);
  font-size: 14px;
}

.language-switch strong {
  font-size: 10px;
  font-weight: 900;
}

/* Hero initiative origin */
.initiative-origin-pill {
  width: fit-content;
  max-width: 100%;
  min-height: 58px;
  display: inline-flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 20px;
  padding: 9px 16px;
  border: 1px solid rgba(205, 0, 0, .13);
  border-radius: 18px;
  background: rgba(255, 255, 255, .86);
  box-shadow: 0 15px 42px rgba(8, 75, 56, .07);
  backdrop-filter: blur(14px);
}

.initiative-origin-pill img {
  width: 104px;
  max-height: 38px;
  object-fit: contain;
}

.initiative-origin-pill > div {
  display: grid;
  line-height: 1.35;
  padding-inline-start: 14px;
  border-inline-start: 1px solid rgba(205, 0, 0, .12);
}

.initiative-origin-pill small {
  color: var(--muted);
  font-size: 8px;
}

.initiative-origin-pill strong {
  color: #c90000;
  font-size: 12px;
  direction: ltr;
}

.hero-giz-badge {
  position: absolute;
  z-index: 5;
  left: -7%;
  top: 48%;
  width: 155px;
  min-height: 100px;
  padding: 12px 14px;
  border-radius: 18px;
  display: grid;
  align-content: center;
  gap: 6px;
  background: rgba(255, 255, 255, .95);
  border: 1px solid rgba(205, 0, 0, .12);
  box-shadow: 0 18px 45px rgba(7, 48, 37, .12);
  transform: rotate(-3deg);
}

.hero-giz-badge span {
  color: var(--muted);
  font-size: 7px;
  font-weight: 800;
}

.hero-giz-badge img {
  width: 112px;
  max-height: 32px;
  object-fit: contain;
}

.hero-giz-badge b {
  color: var(--green-900);
  font: 800 9px/1.3 "Inter", "Cairo", sans-serif;
  direction: ltr;
}

/* Keep the moved innovation card position */
.card-bottom {
  top: 36%;
  right: -7%;
  bottom: auto;
  animation-delay: -3s;
}

/* Initiative credentials */
.initiative-credentials {
  padding-top: 20px;
  background:
    radial-gradient(circle at 5% 95%, rgba(208, 160, 91, .09), transparent 25%),
    #fff;
}

.credentials-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}

.credential-card {
  position: relative;
  min-height: 370px;
  padding: 42px;
  border-radius: 32px;
  border: 1px solid var(--border);
  overflow: hidden;
  display: grid;
  grid-template-columns: 160px 1fr;
  gap: 34px;
  align-items: center;
  background: #fff;
  box-shadow: 0 18px 55px rgba(8, 75, 56, .07);
}

.credential-card::after {
  content: "";
  position: absolute;
  width: 250px;
  height: 250px;
  border-radius: 50%;
  left: -100px;
  bottom: -125px;
  border: 1px solid rgba(8, 75, 56, .06);
  box-shadow:
    0 0 0 42px rgba(8, 75, 56, .018),
    0 0 0 84px rgba(8, 75, 56, .012);
  pointer-events: none;
}

.credential-giz {
  border-color: rgba(205, 0, 0, .13);
  background:
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(255,248,248,.96));
}

.credential-council {
  color: #fff;
  border-color: transparent;
  background:
    radial-gradient(circle at 85% 15%, rgba(208, 160, 91, .22), transparent 25%),
    linear-gradient(135deg, var(--green-950), var(--green-800));
}

.credential-logo-wrap {
  width: 150px;
  height: 150px;
  border-radius: 28px;
  padding: 22px;
  background: #fff;
  display: grid;
  place-items: center;
  border: 1px solid rgba(205, 0, 0, .08);
  box-shadow: 0 22px 52px rgba(205, 0, 0, .08);
}

.credential-logo-wrap img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.council-seal {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  align-content: center;
  color: var(--green-950);
  background: linear-gradient(145deg, var(--gold-300), var(--gold-500));
  border: 8px solid rgba(255,255,255,.1);
  outline: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 24px 55px rgba(0,0,0,.2);
  line-height: 1.18;
}

.council-seal span {
  font-size: 12px;
  font-weight: 800;
}

.council-seal b {
  font-size: 24px;
  font-weight: 900;
}

.council-seal small {
  margin-top: 6px;
  font: 800 9px/1 "Inter", sans-serif;
  letter-spacing: .16em;
}

.credential-card .mini-label {
  display: inline-flex;
  margin-bottom: 9px;
}

.credential-card h2 {
  margin: 0;
  color: var(--green-950);
  font-size: clamp(24px, 2.45vw, 36px);
  line-height: 1.65;
  font-weight: 900;
  letter-spacing: -1px;
}

.credential-card p {
  margin: 16px 0 0;
  color: var(--muted);
  font-size: 11.5px;
  line-height: 2;
}

.credential-council .mini-label {
  color: var(--gold-300);
}

.credential-council h2 {
  color: #fff;
}

.credential-council p {
  color: rgba(255,255,255,.68);
}

/* Partners */
.partners {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(180deg, #f8faf7 0%, #fff 100%);
}

.partners::before {
  content: "";
  position: absolute;
  width: 560px;
  height: 560px;
  border-radius: 50%;
  right: -330px;
  top: -310px;
  border: 1px solid rgba(8, 75, 56, .05);
  box-shadow:
    0 0 0 70px rgba(8, 75, 56, .018),
    0 0 0 140px rgba(8, 75, 56, .012);
}

.partners-head {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 70px;
  align-items: end;
  margin-bottom: 44px;
}

.partners-head h2 {
  margin: 0;
  color: var(--green-950);
  font-size: clamp(35px, 4vw, 58px);
  line-height: 1.4;
  font-weight: 900;
  letter-spacing: -1.4px;
}

.partners-head h2 span {
  color: var(--gold-700);
}

.partners-head p {
  margin: 0 0 7px;
  color: var(--muted);
  font-size: 13px;
  line-height: 2.05;
}

.partners-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.partner-card {
  min-height: 250px;
  display: flex;
  flex-direction: column;
  padding: 24px;
  border-radius: 24px;
  border: 1px solid var(--border);
  background: #fff;
  box-shadow: 0 12px 38px rgba(8, 75, 56, .05);
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

.partner-card:hover {
  transform: translateY(-7px);
  border-color: rgba(208, 160, 91, .35);
  box-shadow: 0 24px 60px rgba(8, 75, 56, .11);
}

.partner-logo,
.institution-mark {
  width: 100%;
  height: 128px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  padding: 18px;
  margin-bottom: 22px;
  background: linear-gradient(145deg, #fbfcfa, #f1f5f1);
  border: 1px solid rgba(8, 75, 56, .06);
}

.partner-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.partner-logo-giz img {
  max-width: 190px;
}

.partner-logo-alsabil img {
  max-width: 112px;
  border-radius: 14px;
}

.partner-logo-dream img {
  max-width: 112px;
}

.partner-logo-council img {
  max-width: 172px;
  max-height: 98px;
}

.partner-logo-governorate img {
  max-width: 190px;
  max-height: 100px;
}

.partner-logo-industry img {
  max-width: 118px;
  max-height: 108px;
}

.partner-logo-ibmu img {
  max-width: 116px;
  max-height: 108px;
}

.partner-logo-university img {
  max-width: 112px;
  max-height: 108px;
}

.partner-logo-gcpi img {
  max-width: 108px;
  max-height: 108px;
}

.institution-mark span {
  min-width: 88px;
  height: 70px;
  border-radius: 20px;
  display: grid;
  place-items: center;
  color: #fff;
  background: var(--green-900);
  box-shadow: 0 14px 32px rgba(8, 75, 56, .18);
  font: 900 17px/1 "Inter", sans-serif;
  letter-spacing: .1em;
}

.partner-card > span {
  color: var(--gold-700);
  font-size: 8.5px;
  font-weight: 900;
  margin-top: auto;
}

.partner-card > b {
  color: var(--green-950);
  font-size: 13px;
  line-height: 1.7;
  margin-top: 6px;
}

/* Larger sustainability logo circle, keeping the full logo visible */
.sustainability-mark {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  min-height: 440px !important;
  isolation: isolate;
}

.sustainability-mark::before {
  content: "";
  position: absolute;
  width: 380px;
  height: 380px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .98);
  box-shadow:
    0 28px 55px rgba(0, 0, 0, .14),
    inset 0 0 0 1px rgba(8, 75, 56, .04);
  z-index: 1;
}

.sustainability-mark img {
  width: 285px !important;
  height: auto !important;
  max-height: 330px !important;
  object-fit: contain !important;
  position: relative;
  z-index: 3;
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  filter: drop-shadow(0 14px 22px rgba(0, 0, 0, .08)) !important;
}

.sustainability-mark .mark-ring {
  width: 440px !important;
  height: 440px !important;
  z-index: 0;
}

.sustainability-giz {
  width: fit-content;
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 20px;
  padding: 9px 13px;
  border-radius: 15px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 14px 38px rgba(0,0,0,.12);
}

.sustainability-giz img {
  width: 108px;
  max-height: 30px;
  object-fit: contain;
}

.sustainability-giz span {
  color: var(--green-950);
  font: 800 9px/1 "Inter", sans-serif;
  direction: ltr;
  padding-inline-start: 12px;
  border-inline-start: 1px solid rgba(8,75,56,.12);
}

/* Contact form */
.contact-form {
  display: grid;
  gap: 16px;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.form-group {
  display: grid;
  gap: 8px;
}

.form-group label {
  font-size: 11px;
  font-weight: 800;
  color: var(--green-950);
}

.form-group input,
.form-group textarea {
  width: 100%;
  border: 1px solid rgba(8, 75, 56, .14);
  background: rgba(255, 255, 255, .92);
  color: var(--ink);
  border-radius: 15px;
  padding: 13px 15px;
  outline: none;
  transition: .25s ease;
  resize: vertical;
}

.form-group input {
  min-height: 50px;
}

.form-group textarea {
  min-height: 145px;
}

.form-group input::placeholder,
.form-group textarea::placeholder {
  color: #92a09b;
}

.form-group input:focus,
.form-group textarea:focus {
  border-color: var(--green-700);
  box-shadow: 0 0 0 4px rgba(15, 118, 88, .09);
  background: #fff;
}

.contact-submit {
  width: 100%;
  border: 0;
  cursor: pointer;
  margin-top: 3px;
  min-height: 54px;
}

.contact-submit span {
  font-size: 18px;
  line-height: 1;
  transition: transform .25s ease;
}

.contact-submit:hover span {
  transform: translateX(-5px);
}

.contact-note {
  margin: 0;
  font-size: 9.5px;
  line-height: 1.8;
  color: var(--muted);
  text-align: center;
}

/* GIZ prominence in footer */
.footer-partner-banner {
  min-height: 108px;
  margin-bottom: 42px;
  padding: 20px 28px;
  border-radius: 23px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  background: #fff;
  border: 1px solid rgba(205, 0, 0, .11);
  box-shadow: 0 20px 50px rgba(0,0,0,.11);
}

.footer-giz-copy {
  display: grid;
  line-height: 1.4;
}

.footer-giz-copy span {
  color: var(--muted);
  font-size: 9px;
}

.footer-giz-copy strong {
  color: var(--green-950);
  font: 900 18px/1.4 "Inter", "Cairo", sans-serif;
  direction: ltr;
}

.footer-giz-logo {
  width: min(330px, 45vw);
  max-height: 66px;
  object-fit: contain;
}

/* LTR directional corrections */
html[dir="ltr"] .main-nav .nav-cta {
  margin-right: 0;
  margin-left: 8px;
}

html[dir="ltr"] .hero h1,
html[dir="ltr"] .hero-lead,
html[dir="ltr"] .hero-content {
  text-align: left;
}

html[dir="ltr"] .hero-actions,
html[dir="ltr"] .hero-micro {
  direction: ltr;
}

html[dir="ltr"] .hero-actions .btn i,
html[dir="ltr"] .news-more span,
html[dir="ltr"] .news-card-link i,
html[dir="ltr"] .contact-submit span {
  transform: scaleX(-1);
}

html[dir="ltr"] .news-card:hover .news-card-link i {
  transform: scaleX(-1) translateX(-5px);
}

html[dir="ltr"] .news-card-date {
  right: auto;
  left: 14px;
}

html[dir="ltr"] .gov-index,
html[dir="ltr"] .lab-no {
  left: auto;
  right: 20px;
}

html[dir="ltr"] .gov-card small {
  right: auto;
  left: 32px;
}

html[dir="ltr"] .roadmap-quote {
  border-right: 0;
  border-left: 3px solid var(--gold-500);
  padding: 7px 0 7px 17px;
}

html[dir="ltr"] .timeline::before {
  right: auto;
  left: 39px;
}

html[dir="ltr"] .article-back span {
  transform: scaleX(-1);
}

html[dir="ltr"] .lightbox-close {
  left: auto;
  right: 22px;
}

/* Responsive additions */
@media (max-width: 1180px) {
  .partners-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .credential-card {
    grid-template-columns: 130px 1fr;
    padding: 34px;
  }

  .credential-logo-wrap,
  .council-seal {
    width: 130px;
    height: 130px;
  }

  .hero-giz-badge {
    left: -2%;
    top: 54%;
  }
}

@media (max-width: 980px) {
  .credentials-grid,
  .partners-head {
    grid-template-columns: 1fr;
  }

  .partners-head {
    gap: 24px;
  }

  .partners-head p {
    max-width: 720px;
  }

  .partners-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .hero-giz-badge {
    left: 2%;
  }
}

@media (max-width: 820px) {
  .initiative-origin-pill {
    margin-inline: auto;
  }

  .hero-giz-badge {
    left: 3%;
    top: 50%;
    width: 140px;
  }

  .sustainability-mark {
    min-height: 380px !important;
  }

  .sustainability-mark::before {
    width: 325px;
    height: 325px;
  }

  .sustainability-mark img {
    width: 245px !important;
    max-height: 285px !important;
  }

  .sustainability-mark .mark-ring {
    width: 370px !important;
    height: 370px !important;
  }

  .sustainability-giz {
    margin-inline: auto;
  }

  .footer-partner-banner {
    flex-direction: column;
    text-align: center;
  }

  .footer-giz-logo {
    width: min(330px, 75vw);
  }
}

@media (max-width: 620px) {
  .language-switch {
    min-width: auto;
    margin: 8px 0 !important;
  }

  .initiative-origin-pill {
    width: 100%;
    justify-content: center;
    padding: 10px 12px;
  }

  .initiative-origin-pill img {
    width: 92px;
  }

  .initiative-origin-pill strong {
    font-size: 10px;
  }

  .hero-giz-badge {
    left: 0;
    top: 51%;
    width: 124px;
    min-height: 88px;
    padding: 10px 11px;
  }

  .hero-giz-badge img {
    width: 96px;
  }

  .card-bottom {
    top: 39%;
    right: -1%;
    bottom: auto;
  }

  .credential-card {
    min-height: auto;
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 28px 23px;
    text-align: center;
  }

  .credential-logo-wrap,
  .council-seal {
    width: 125px;
    height: 125px;
    margin-inline: auto;
  }

  .credential-card h2 {
    font-size: 24px;
    line-height: 1.6;
  }

  .partners-grid {
    grid-template-columns: 1fr;
  }

  .partner-card {
    min-height: 225px;
  }

  .partners-head h2 {
    font-size: 32px;
  }

  .sustainability-mark {
    min-height: 300px !important;
  }

  .sustainability-mark::before {
    width: 255px;
    height: 255px;
  }

  .sustainability-mark img {
    width: 190px !important;
    max-height: 225px !important;
  }

  .sustainability-mark .mark-ring {
    width: 290px !important;
    height: 290px !important;
  }

  .form-row {
    grid-template-columns: 1fr;
  }

  .contact-card {
    padding: 24px 20px;
  }

  .footer-partner-banner {
    padding: 24px 18px;
  }

  .footer-giz-copy strong {
    font-size: 15px;
  }
}


/* =========================================================
   إصلاح الموقع الرئيسي بأسلوب منصة بيت الحلم التدريبية
   ========================================================= */

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body,
main,
section,
header,
footer,
.container,
.nav-wrap {
  min-width: 0;
  max-width: 100%;
}

img,
svg,
video,
iframe,
canvas {
  max-width: 100%;
}

button,
a,
input,
select,
textarea {
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

/* لا تعتمد الصفحة على JavaScript لإظهار المحتوى */
.reveal,
.js .reveal,
.reveal.is-visible,
.js .reveal.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

/* إلغاء شاشة التحميل القديمة نهائياً */
.page-loader {
  display: none !important;
}

/* رابط المنصة في قائمة سطح المكتب */
.nav-platform-link {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 8px 12px !important;
  border: 1px solid rgba(208,160,91,.42);
  border-radius: 12px;
  color: var(--green-800) !important;
  background: linear-gradient(135deg,rgba(232,201,148,.2),#fff);
  font-size: 11px !important;
  font-weight: 800;
}

.nav-platform-icon {
  width: 28px;
  height: 28px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  border-radius: 9px;
  color: #fff;
  background: var(--green-800);
}

.nav-platform-icon svg,
.mobile-platform-shortcut svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.mobile-header-actions,
.mobile-main-menu {
  display: none;
}

#trainers-capacity {
  scroll-margin-top: 100px;
}

/* زر التسجيل داخل بطاقة المدربين بدون تغيير لون البطاقة */
.lab-platform-register {
  position: relative;
  z-index: 2;
  width: 100%;
  min-height: 56px;
  margin-top: 20px;
  padding: 10px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg,var(--green-800),var(--green-950));
  box-shadow: 0 14px 30px rgba(11,93,70,.18);
  transition: transform .25s ease,box-shadow .25s ease;
}

.lab-platform-register:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 36px rgba(11,93,70,.24);
}

.lab-platform-register-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.lab-platform-register-copy small {
  color: rgba(255,255,255,.72);
  font-size: 10px;
  line-height: 1.6;
}

.lab-platform-register-copy strong {
  color: #fff;
  font-size: 13px;
  line-height: 1.6;
}

.lab-platform-register-icon {
  width: 40px;
  height: 40px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  border-radius: 11px;
  color: var(--green-800);
  background: var(--gold-300);
}

.lab-platform-register-icon svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@supports not (backdrop-filter: blur(1px)) {
  .site-header,
  .site-header.scrolled,
  .mobile-main-menu {
    background: rgba(248,250,247,.99);
  }
}

/* نسخة الهاتف: نفس منطق رأس المنصة التدريبية */
@media (max-width: 1050px) {
  .site-header,
  .site-header.scrolled {
    width: 100% !important;
    right: 0 !important;
    left: 0 !important;
    padding: 9px 0 !important;
    background: rgba(255,255,255,.97) !important;
    border-bottom: 1px solid var(--border);
    box-shadow: 0 7px 24px rgba(7,55,42,.07);
  }

  .site-header .nav-wrap {
    width: min(calc(100% - 20px),var(--container)) !important;
    max-width: calc(100% - 20px) !important;
    min-height: 58px;
    margin-inline: auto !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
  }

  .site-header .brand {
    min-width: 0 !important;
    max-width: calc(100% - 122px) !important;
    gap: 8px !important;
    overflow: hidden;
    z-index: auto;
  }

  .site-header .brand img,
  .site-header.scrolled .brand img {
    width: 52px !important;
    height: 50px !important;
    flex: 0 0 52px;
  }

  .site-header .brand-copy {
    min-width: 0;
    overflow: hidden;
  }

  .site-header .brand-copy strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 15px !important;
  }

  .site-header .brand-copy span {
    display: none !important;
  }

  .desktop-nav {
    display: none !important;
  }

  .mobile-header-actions {
    display: flex !important;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
  }

  .mobile-platform-shortcut {
    width: 64px;
    height: 44px;
    padding: 4px 6px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border: 1px solid rgba(208,160,91,.48);
    border-radius: 13px;
    color: #fff;
    background: linear-gradient(145deg,var(--green-800),var(--green-950));
    box-shadow: 0 8px 20px rgba(11,93,70,.18);
    font-size: 8px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
  }

  .nav-toggle,
  .site-header .nav-toggle {
    width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 10px !important;
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 4px;
    position: relative !important;
    inset: auto !important;
    border: 1px solid var(--border);
    background: #fff;
    box-shadow: 0 7px 20px rgba(8,75,56,.08);
    z-index: auto !important;
  }

  .nav-toggle span,
  .site-header .nav-toggle span {
    width: 100%;
    height: 2px;
    margin: 0 !important;
    background: var(--green-900);
  }

  .nav-toggle.active span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
  }

  .nav-toggle.active span:nth-child(2) {
    opacity: 0;
  }

  .nav-toggle.active span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
  }

  .mobile-main-menu {
    position: fixed !important;
    top: 77px !important;
    right: 10px !important;
    left: 10px !important;
    bottom: auto !important;
    width: auto !important;
    max-width: none !important;
    max-height: 0;
    padding: 0 14px;
    display: grid !important;
    gap: 3px;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    border: 1px solid var(--border);
    border-radius: 0 0 20px 20px;
    background: rgba(255,255,255,.99);
    box-shadow: 0 20px 45px rgba(7,55,42,.13);
    transition: max-height .28s ease,opacity .2s ease,transform .2s ease,padding .28s ease,visibility .2s ease;
    z-index: 999;
    -webkit-overflow-scrolling: touch;
  }

  .mobile-main-menu.open {
    max-height: calc(100vh - 92px);
    max-height: calc(100dvh - 92px);
    padding: 12px 14px 18px;
    overflow-y: auto;
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  .mobile-main-menu a {
    min-height: 44px;
    padding: 9px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid rgba(10,76,56,.08);
    border-radius: 10px;
    color: #385049;
    font-size: 14px;
    font-weight: 800;
    text-align: center;
  }

  .mobile-main-menu a.active {
    color: var(--green-800);
    background: rgba(11,93,70,.07);
  }

  .mobile-main-menu .mobile-menu-platform {
    margin-top: 5px;
    color: #fff;
    background: var(--green-800);
    border-bottom: 0;
  }

  .mobile-main-menu .mobile-menu-contact {
    color: #fff;
    background: var(--green-700);
    border-bottom: 0;
  }

  body.menu-open {
    overflow: hidden;
  }

  /* منع انزياح القسم الرئيسي على Android */
  .hero,
  .hero .container,
  .hero-grid,
  .hero-content,
  .hero-visual,
  .visual-shell {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .hero {
    min-height: auto !important;
    padding: 112px 0 60px !important;
  }

  .hero-grid {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 28px !important;
    margin-inline: auto !important;
    text-align: center;
  }

  .hero-content {
    order: 1;
  }

  .hero-visual {
    order: 0;
    min-height: 390px !important;
  }

  .hero-actions {
    justify-content: center;
  }

  .hero-micro {
    margin-inline: auto;
    text-align: start;
  }

  .lab-platform-register-copy small,
  .lab-platform-register-copy strong {
    white-space: normal;
    overflow-wrap: anywhere;
  }

  input,
  select,
  textarea {
    font-size: 16px !important;
  }
}

@media (max-width: 440px) {
  .site-header .brand {
    max-width: calc(100% - 116px) !important;
  }

  .site-header .brand img,
  .site-header.scrolled .brand img {
    width: 48px !important;
    height: 47px !important;
    flex-basis: 48px;
  }

  .site-header .brand-copy strong {
    font-size: 13px !important;
  }

  .mobile-platform-shortcut {
    width: 60px;
    height: 42px;
  }

  .nav-toggle,
  .site-header .nav-toggle {
    width: 42px !important;
    height: 42px !important;
  }

  .mobile-main-menu {
    top: 73px !important;
  }
}

@media (max-width: 340px) {
  .site-header .brand-copy {
    display: none !important;
  }

  .site-header .brand {
    max-width: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}
