
  @font-face {
    font-family: 'Thmanyah Serif Display';
    src: url('/fonts/font-1.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
  }

  @font-face {
    font-family: 'ABC Favorit Arabic';
    src: url('/fonts/font-2.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: 'ABC Favorit Arabic';
    src: url('/fonts/font-3.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
  }

  @media(max-width:900px){
    .nav-wrap{padding:22px 20px;}
    .logo svg{height:44px;}
    header.scrolled .logo svg{height:38px;}
    .nav-dropdown-top{ display:flex;align-items:center;justify-content:space-between; max-width:100%;margin:0; padding:62px 100px 14px; }
    .nav-dropdown-bottom-inner{padding:20px 20px;}
  }
  @media(max-width:480px){
    .container{padding:0 20px;}
    .nav-wrap{padding:18px 16px;}
    .nav-dropdown-top{padding:18px 16px 14px;}
    .nav-dropdown-body{ flex:1;display:grid;grid-template-columns:1fr 1.3fr;gap:0; max-width:100%;margin:0;width:100%; padding:60px 100px 40px;align-items:stretch; border:1px solid var(--border); }
    .nav-dropdown-bottom-inner{padding:16px 16px;}
  }

/* ================= MOBILE REDESIGN (comprehensive) ================= */
@media(max-width:768px){
  html,body{overflow-x:hidden;width:100%;}
  .container{width:100%;padding:0 20px;box-sizing:border-box;}

  /* Universal: force every *-grid layout to a single column on mobile */
  [class$="-grid"], [class*="-grid "], [class*=" grid"]{
    grid-template-columns:1fr !important;
  }

  /* Known flex "row" layouts that should stack vertically */
  .report-actions, .detail-actions{
    flex-direction:column;align-items:stretch;
  }
  .report-actions a, .detail-actions a{
    width:100%;text-align:center;justify-content:center;
  }
  .cf-row{grid-template-columns:1fr !important;}
  .board-grid{justify-content:center;}
  .board-card{width:100% !important;max-width:340px;margin:0 auto;}

  /* Typography: scale everything down and guarantee wrapping */
  h1{font-size:30px !important;line-height:1.35 !important;}
  h2{font-size:22px !important;line-height:1.4 !important;}
  h3{font-size:18px !important;line-height:1.5 !important;}
  .hero h1,.hero .en-sub{font-size:28px !important;}
  .about-text h2{font-size:22px !important;}
  .section-head h2{font-size:20px !important;}
  .mc-hero h1{font-size:28px !important;}
  p, li, a, span, div{word-break:break-word;overflow-wrap:break-word;}

  /* Sector label banner */
  .sector-label{font-size:17px !important;padding:14px 14px 22px !important;white-space:normal;}

  /* Stats */
  .stats-grid{grid-template-columns:1fr !important;gap:36px;}
  .stat-card .stat-inner{max-width:100%;}
  .stat-card .lbl-top,.stat-card .lbl{text-align:center !important;}
  .stat-card .num{font-size:40px !important;}

  /* Services */
  .services-grid{flex-direction:column !important;height:auto !important;}
  .service-card{flex-grow:0 !important;height:auto !important;min-height:180px;padding:10px 0;}
  .service-card h3{white-space:normal !important;max-height:none !important;overflow:visible !important;}
  .service-card ul{max-height:none !important;opacity:1 !important;margin-top:10px;}

  /* Team photo full-bleed reveal text */
  .team-photo-text{width:92% !important;}
  .team-photo-text h2{font-size:24px !important;}
  .team-photo-text .tp-sub span{font-size:12.5px !important;}

  /* Partners / logos */
  .partners-grid{grid-template-columns:repeat(2,1fr) !important;}

  /* Footer */
  .footer-grid{grid-template-columns:1fr 1fr !important;gap:28px;}
  .footer-bottom-row{flex-direction:column;text-align:center;gap:14px;}
  .footer-brand{flex-direction:column;text-align:center;}

  /* Forms */
  .register-card{padding:30px 22px;}
  .contact-form-card{padding:26px 20px;}

  /* Nav dropdown */
  .nav-dropdown-links ul li a{font-size:20px !important;}
  .nav-news-grid{grid-template-columns:1fr !important;}

  /* Floating buttons stay usable */
  .float-actions{right:16px;bottom:16px;}
  .side-cta{left:16px !important;font-size:12px;padding:10px 16px;}

  /* Maps / media */
  .contact-map-wrap,.sync-map{width:100%;}
  iframe{max-width:100%;}
}

@media(max-width:480px){
  .container{padding:0 16px;}
  h1{font-size:26px !important;}
  h2{font-size:20px !important;}
  .hero h1,.hero .en-sub{font-size:24px !important;}
  .stat-card .num{font-size:34px !important;}
  .footer-grid{grid-template-columns:1fr !important;}
  .partners-grid{grid-template-columns:repeat(2,1fr) !important;}
  .team-photo-text h2{font-size:20px !important;}
}
/* ================= END MOBILE REDESIGN ================= */




  :root{
    --bg-darker:#0d1620;
    --bg-dark:#132230;
    --bg-card:#1b2e3d;
    --bg-card2:#203547;
    --gold:#c9a876;
    --gold-light:#e0c99a;
    --text-light:#f4f2ec;
    --text-muted:#93a3b0;
    --border:rgba(255,255,255,0.08);
    --teal:#7fa89a;
    --mint:#bee5e1;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  @media(hover:hover) and (pointer:fine){
    *{cursor:none;}
  }
  .cursor-dot, .cursor-ring{
    position:fixed;top:0;left:0;pointer-events:none;z-index:9999;
    border-radius:50%;transform:translate(-50%,-50%);
  }
  .cursor-dot{
    width:10.5px;height:10.5px;background:#a8ddff;
  }
  .cursor-ring{
    width:51px;height:51px;border:1.5px solid #a8ddff;
    transition:width .2s ease, height .2s ease, opacity .2s ease, border-color .2s ease, background .2s ease;
  }
  .cursor-ring.hovering{
    width:78px;height:78px;background:rgba(168,221,255,.15);border-color:#ffffff;
  }
  @media(hover:none), (pointer:coarse){
    .cursor-dot,.cursor-ring{display:none;}
  }
  html{scroll-behavior:smooth;}
  body{
    font-family:'ABC Favorit Arabic', sans-serif;
    background:var(--bg-dark);
    color:var(--text-light);
    line-height:1.7;
    overflow-x:hidden;
  }
  a{text-decoration:none;color:inherit;}
  h1,h2,h3{font-family:'ABC Favorit Arabic', sans-serif;}
  ul{list-style:none;}
  img{max-width:100%;display:block;}
  .container{max-width:1200px;margin:0 auto;padding:0 32px;}
  .eyebrow{
    display:flex;align-items:center;gap:10px;
    color:var(--gold);font-size:14px;letter-spacing:.5px;margin-bottom:14px;
    font-weight:500;font-family:'ABC Favorit Arabic', sans-serif;
  }

  /* Header */
  header{
    position:fixed;top:0;left:0;right:0;z-index:100;
    background:transparent;
    backdrop-filter:none;
    border-bottom:1px solid transparent;
    transition:background .35s ease, border-color .35s ease, backdrop-filter .35s ease;
  }
  header.scrolled{
    background:transparent;
    backdrop-filter:none;
    border-bottom:1px solid transparent;
  }
  .nav-wrap{
    display:flex;align-items:center;justify-content:space-between;
    padding:62px 100px 14px;max-width:100%;margin:0;
  }
  .logo{
    display:flex;align-items:center;
  }
  .logo svg{height:69px;width:auto;display:block;transition:height .35s ease;}
  header.scrolled .logo svg{height:44px;}
  .nav-actions{display:flex;align-items:center;gap:18px;}
  .icon-btn{
    width:38px;height:38px;border-radius:0;border:1px solid var(--border);
    display:flex;align-items:center;justify-content:center;font-size:15px;color:var(--text-muted);
    cursor:pointer;transition:.2s;
  }
  .icon-btn:hover{border-color:var(--gold);color:var(--gold);}
  .menu-toggle{
    display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;
    width:44px;height:38px;background:none;border:1px solid var(--border);cursor:pointer;
    transition:border-color .2s;padding:0;
  }
  .menu-toggle:hover{border-color:var(--gold);}
  .menu-toggle span{
    display:block;width:20px;height:2px;background:var(--text-light);transition:.3s;
  }
  .menu-toggle:hover span{background:var(--gold);}
  .nav-dropdown{
    position:fixed;inset:0;width:100%;height:100vh;
    background:var(--bg-darker);z-index:150;
    transform:translateY(-100%);transition:transform .5s cubic-bezier(.65,0,.35,1);
    overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;
  }
  .nav-dropdown::before{
    content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
    background-image:url('/images/image-11.svg');
    background-repeat:no-repeat;background-size:75vw auto;background-position:left 78%;
    opacity:.18;
  }
  .nav-dropdown::after{
    content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
    background-image:url('/images/image-12.svg');
    background-repeat:no-repeat;background-size:75vw auto;background-position:left 78%;
    opacity:.6;
    -webkit-mask-image:linear-gradient(115deg, transparent 25%, rgba(255,255,255,.95) 50%, transparent 75%);
    mask-image:linear-gradient(115deg, transparent 25%, rgba(255,255,255,.95) 50%, transparent 75%);
    -webkit-mask-size:280% 280%;mask-size:280% 280%;
    -webkit-mask-position:-40% -40%;mask-position:-40% -40%;
    animation:patternGlow 9s linear infinite;
  }
  @keyframes patternGlow{
    0%{-webkit-mask-position:-60% -60%;mask-position:-60% -60%;}
    100%{-webkit-mask-position:160% 160%;mask-position:160% 160%;}
  }
  .nav-dropdown-top,.nav-dropdown-body,.nav-dropdown-bottom{position:relative;z-index:1;}
  .nav-dropdown.open{transform:translateY(0);}
  .nav-dropdown-top{
    display:flex;align-items:center;justify-content:space-between;
    max-width:100%;margin:0;
    padding:62px 100px 14px;
  }
  .nav-dropdown-top .logo svg{height:38px;width:auto;}
  .nav-dropdown-close{
    display:flex;align-items:center;gap:12px;background:none;border:none;
    color:var(--text-light);font-size:14px;cursor:pointer;transition:.2s;
  }
  .nav-dropdown-close:hover{color:var(--gold);}
  .nav-dropdown-close .close-bar{width:26px;height:1px;background:currentColor;display:inline-block;}
  .nav-dropdown-body{
    flex:1;display:grid;grid-template-columns:1fr 1.3fr;gap:0;
    max-width:100%;margin:0;width:100%;
    padding:60px 100px 40px;align-items:stretch;
    border:1px solid var(--border);
  }
  .nav-dropdown-links{order:1;padding-left:40px;border-left:1px solid var(--border);}
  .nav-dropdown-news{order:2;padding-right:40px;}
  .nav-dropdown-news .eyebrow{margin-bottom:26px;font-size:16px;}
  .nav-news-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;max-width:100%;margin-right:0;margin-left:auto;}
  .nav-dropdown-news{display:flex;flex-direction:column;height:100%;}
  .nav-news-card{ border:1px solid var(--border); opacity:0;transform:translateY(30px); transition:opacity .6s cubic-bezier(.22,.61,.36,1), transform .6s cubic-bezier(.22,.61,.36,1); }
  .nav-dropdown.open .nav-news-card{opacity:1;transform:translateY(0);}
  .nav-dropdown.open .nav-news-card:nth-child(1){transition-delay:.15s;}
  .nav-dropdown.open .nav-news-card:nth-child(2){transition-delay:.28s;}
  .nav-dropdown.open .nav-news-card:nth-child(3){transition-delay:.41s;}
  .nav-news-card .nav-news-img{height:170px;background-size:cover;background-position:center;}
  .nav-news-card p{padding:16px;font-size:14.5px;line-height:1.7;color:var(--text-light);font-weight:500;}
  .nav-dropdown-links ul{display:flex;flex-direction:column;gap:20px;text-align:right;}
  .nav-dropdown-links ul li a{
    font-size:26px;font-weight:300;color:var(--text-light);transition:color .2s, font-weight .2s;
    font-family:'ABC Favorit Arabic', sans-serif;
  }
  .nav-dropdown-links ul li a:hover{color:var(--gold);font-weight:700;}
  .nav-dropdown-bottom{
    border-top:1px solid var(--border);
  }
  .nav-dropdown-bottom-inner{
    max-width:100%;margin:0;width:100%;
    padding:24px 100px;
    display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;
  }
  .nav-dropdown-bottom .socials{display:flex;gap:12px;}
  .nav-dropdown-bottom .legal-links{display:flex;gap:28px;font-size:13px;color:var(--text-muted);flex-wrap:wrap;}
  .nav-dropdown-bottom .legal-links a{transition:.2s;}
  .nav-dropdown-bottom .legal-links a:hover{color:var(--gold);}
  .nav-dropdown-copy{font-size:13px;color:var(--text-muted);}

  /* Hero */
  .hero-pin-wrap{position:relative;}
  .hero{
    position:sticky;top:0;height:100vh;display:flex;align-items:flex-end;
    overflow:hidden;
    padding-bottom:90px;
    background:var(--bg-darker);
    z-index:1;
  }
  .hero-video{
    position:absolute;inset:0;width:100%;height:100%;overflow:hidden;
  }
  .hero-video iframe{
    position:absolute;top:50%;left:50%;
    width:100vw;height:56.25vw;      /* 16:9 */
    min-height:100vh;min-width:177.78vh; /* 16:9 */
    transform:translate(-50%,-50%);
    pointer-events:none;
    border:none;
  }
  .hero-overlay{
    position:absolute;inset:0;z-index:1;
    background:linear-gradient(180deg, rgba(13,22,32,.15) 0%, rgba(13,22,32,.3) 55%, rgba(13,22,32,.6) 100%);
  }
  .hero-content{position:absolute;z-index:2;right:0;left:0;top:50%;transform:translateY(-50%);transition:opacity .1s linear;}
  #heroTagline{opacity:1;}
  #heroTagline h1, #heroTagline .en-sub,
  #heroSecondary .hero-secondary-p{
    overflow:hidden;
  }
  #heroTagline h1 span, #heroTagline .en-sub span{
    display:inline-block;
    animation:heroLineUp .8s cubic-bezier(.22,.61,.36,1) both;
  }
  #heroSecondary .hero-secondary-p span{
    display:inline-block;
    transform:translateY(100%);
    opacity:0;
  }
  #heroSecondary.reveal .hero-secondary-p span{
    animation:heroLineUp .8s cubic-bezier(.22,.61,.36,1) both;
  }
  #heroTagline h1 span{animation-delay:1.3s;}
  #heroTagline .en-sub span{animation-delay:1.5s;}
  #heroSecondary.reveal .hero-secondary-p span{animation-delay:.15s;}
  @keyframes heroLineUp{
    from{transform:translateY(100%);opacity:0;}
    to{transform:translateY(0);opacity:1;}
  }
  #heroSecondary .hero-secondary-p{
    font-family:'ABC Favorit Arabic', sans-serif;
    font-size:21.6px;font-weight:400;color:var(--text-light);line-height:1.85;
    max-width:820px;white-space:normal;margin-top:0;
  }
  .hero h1{
    font-size:57px;font-weight:700;line-height:1.25;margin-bottom:6px;color:var(--text-light);
    white-space:nowrap;
  }
  .hero .en-sub{
    font-family:'ABC Favorit Arabic', sans-serif;font-weight:300;font-size:57px;color:var(--text-light);
    letter-spacing:.5px;white-space:nowrap;
  }
  .hero-pin-spacer{height:90vh;}
  .side-cta{
    position:fixed;left:0;top:78%;transform:translateY(-50%) rotate(180deg);
    writing-mode:vertical-rl;white-space:nowrap;
    background:var(--mint);color:var(--bg-darker);
    padding:26px 12px;font-weight:700;font-size:14px;letter-spacing:1px;
    border-radius:0;cursor:pointer;z-index:90;
    box-shadow:0 6px 18px rgba(0,0,0,.35);
  }

  /* About */
  .about-reveal{padding:120px 0 96px;background:var(--bg-dark);}
  .about-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:70px;align-items:center;max-width:1150px;margin:0 auto;}
  .geo-collage{width:100%;max-width:650px;aspect-ratio:1/1;margin:0 auto;}
  .about-reveal .container{max-width:100%;padding:0 4vw;}
  .geo-collage svg{width:100%;height:100%;display:block;}
  .geo-blade{opacity:0;transform:translateX(70px);transition:transform .35s ease;}
  .geo-collage.in-view .geo-blade{
    animation:slideInBlade .8s cubic-bezier(.22,.61,.36,1) forwards;
  }
  .geo-collage.in-view .geo-blade:nth-of-type(1){animation-delay:.45s;}
  .geo-collage.in-view .geo-blade:nth-of-type(2){animation-delay:.3s;}
  .geo-collage.in-view .geo-blade:nth-of-type(3){animation-delay:.15s;}
  .geo-collage.in-view .geo-blade:nth-of-type(4){animation-delay:0s;}
  .geo-collage.in-view .geo-blade:nth-of-type(5){animation-delay:.55s;}
  .geo-blade-img{
    transform-origin:center;transform-box:fill-box;
    transform:scale(1);
  }
  .geo-collage.in-view .geo-blade-img{
    animation:geoImgZoom 12s ease-in-out infinite alternate;
  }
  @keyframes geoImgZoom{
    from{transform:scale(1);}
    to{transform:scale(1.15);}
  }
  @keyframes slideInBlade{
    from{opacity:0;transform:translateX(70px);}
    to{opacity:1;transform:translateX(0);}
  }
  .about-text h2{font-size:70.4px;font-weight:700;margin-bottom:22px;color:var(--mint);}
  .about-text p{color:var(--text-muted);font-size:16px;max-width:520px;}

  /* Section heading pattern */
  .section-head{
    display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px;flex-wrap:wrap;gap:16px;
  }
  .section-head h2{font-size:70.4px;font-weight:700;color:var(--mint);}
  .view-all{
    display:inline-flex;align-items:center;gap:8px;color:var(--text-muted);font-size:14px;
    border:1px solid var(--border);padding:10px 18px;transition:.2s;
  }
  .view-all:hover{border-color:var(--gold);color:var(--gold);}

  /* Stats */
  .stats{padding:24px 0 104px;}
  .stats-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:24px;
  }
  .stat-card{
    background:var(--bg-card);border:1px solid var(--border);border-radius:0;
    padding:36px 24px;text-align:center;
  }
  .stat-card .lbl-top{color:var(--text-muted);font-size:15px;margin-bottom:14px;}
  .stat-card .num{font-family:'Thmanyah Serif Display','ABC Favorit Arabic', sans-serif;font-size:30px;font-weight:400;font-style:normal;color:var(--gold);}
  .stat-card .lbl{color:var(--text-muted);font-size:14px;margin-top:8px;}

  /* Services */
  .services{padding:24px 0 104px;background:var(--bg-darker);}
  .services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .service-card{
    background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:38px 28px;
    transition:.25s;
  }
  .service-card:hover{border-color:var(--gold);transform:translateY(-6px);}
  .service-card .ic{
    width:56px;height:56px;border-radius:0;background:rgba(127,168,154,0.15);color:var(--teal);
    display:flex;align-items:center;justify-content:center;font-size:26px;margin-bottom:22px;
  }
  .service-card h3{font-size:19px;font-weight:700;margin-bottom:10px;}
  .service-card p{color:var(--text-muted);font-size:14.5px;}

  /* Sectors */
  .sectors{padding:104px 0;}
  .sectors-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
  .sector-card{
    border:1px solid var(--border);overflow:hidden;
    display:flex;flex-direction:column;background:var(--bg-card);
  }
  .sector-photo{
    height:280px;background-size:cover;background-position:center;
  }
  .sector-info{
    background:var(--bg-darker);padding:26px 22px;
    display:flex;align-items:center;gap:20px;flex:1;
  }
  .sector-logo{flex:0 0 auto;}
  .sector-logo svg{height:58px;width:auto;display:block;}
  .sector-info p{font-size:12.5px;line-height:1.85;color:var(--text-muted);margin:0;}

  /* Projects */
  .projects{padding:24px 0 112px;background:var(--bg-darker);}
  .filter-tab{
    display:inline-flex;align-items:center;gap:10px;border:1px solid var(--border);
    border-radius:0;padding:10px 18px;font-size:14px;color:var(--text-muted);margin-bottom:36px;
  }
  .projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .project-card{
    background:var(--bg-card);border:1px solid var(--border);border-radius:0;overflow:hidden;
  }
  .project-img{
    height:220px;background-size:cover;background-position:center;position:relative;
    display:flex;align-items:center;justify-content:center;
  }
  .project-img::before{
    content:"";position:absolute;inset:0;background:rgba(13,22,32,.5);
  }
  .badge-row{
    position:absolute;top:16px;right:16px;left:16px;z-index:2;
    display:flex;gap:8px;
  }
  .badge-status, .badge-type{
    padding:6px 26.4px;font-size:12px;font-weight:700;border-radius:0;
  }
  .badge-type{background:rgba(13,22,32,.75);color:var(--text-light);border:1px solid var(--border);}
  .badge-status.status-ongoing{background:#3d6b53;color:#c9f0d8;}
  .badge-status.status-soon{background:#7a5a2a;color:#f3dcaa;}
  .project-mark{position:relative;z-index:2;text-align:center;color:#fff;}
  .project-mark .mark-icon{font-size:26px;line-height:1;margin-bottom:8px;color:var(--gold-light);}
  .project-mark .mark-ar{font-size:22px;font-weight:700;margin-bottom:2px;}
  .project-mark .mark-en{
    font-family:'ABC Favorit Arabic', sans-serif;font-size:12px;letter-spacing:2px;
    color:#d8dee3;text-transform:uppercase;
  }
  .project-body{padding:22px;}
  .project-body h3{font-size:19px;font-weight:700;margin-bottom:6px;}
  .project-loc{color:var(--text-muted);font-size:13.5px;margin-bottom:18px;display:flex;align-items:center;gap:6px;}
  .project-divider{border-top:1px solid var(--border);margin-bottom:16px;}
  .btn-outline{
    display:inline-block;width:100%;text-align:center;border:1px solid var(--border);border-radius:0;
    padding:12px;font-size:14px;transition:.2s;
  }
  .btn-outline:hover{border-color:var(--gold);color:var(--gold);}

  /* News */
  .news{padding:104px 0 112px;background:var(--bg-dark);}
  .news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .news-card{
    background:var(--bg-card);border:1px solid var(--border);overflow:hidden;
    display:flex;flex-direction:column;transition:.25s;
  }
  .news-card:hover{border-color:var(--gold);transform:translateY(-6px);}
  .news-img{height:260px;background-size:cover;background-position:center;}
  .news-body{padding:24px;}
  .news-date{color:var(--gold);font-size:12.5px;font-weight:700;letter-spacing:.5px;margin-bottom:10px;}
  .news-body h3{font-size:17px;font-weight:700;line-height:1.5;margin-bottom:10px;}
  .news-body p{color:var(--text-muted);font-size:13.5px;line-height:1.75;margin-bottom:16px;}
  .news-link{color:var(--gold);font-size:13.5px;font-weight:600;transition:.2s;}
  .news-link:hover{color:var(--gold-light);}

  /* Partners */
  .partners{padding:88px 0 104px;}
  .partners-grid{
    display:grid;grid-template-columns:repeat(6,1fr);gap:18px;
  }
  .partner-chip{
    background:var(--bg-card);border:1px solid var(--border);border-radius:0;
    height:76px;display:flex;align-items:center;justify-content:center;
    color:var(--text-muted);font-size:12px;text-align:center;padding:8px;
  }
  .partner-logo{
    background:var(--bg-card);border:1px solid var(--border);
    height:84px;display:flex;align-items:center;justify-content:center;
    padding:14px;transition:transform .2s, box-shadow .2s, border-color .2s;
  }
  .partner-logo:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.25);border-color:var(--gold);}
  .partner-logo svg, .partner-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;}

  /* Map / CTA */
  .map-section{
    height:340px;position:relative;
    background:linear-gradient(180deg, rgba(13,22,32,.4), rgba(13,22,32,.85)),
      url('https://images.unsplash.com/photo-1580746738099-1def1a8e93c3?q=80&w=1400&auto=format&fit=crop') center/cover;
    display:flex;align-items:center;justify-content:center;
  }
  .map-pin{
    width:50px;height:50px;border-radius:0;background:var(--gold);
    display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--bg-darker);
    box-shadow:0 0 0 10px rgba(201,168,118,.15);
  }

  /* Footer */
  footer{background:var(--bg-darker);border-top:1px solid var(--border);}
  .footer-top{padding:72px 0 48px;}
  .footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.3fr;gap:40px;}
  .footer-col h4{font-size:15px;font-weight:700;color:var(--text-light);margin-bottom:22px;}
  .footer-col ul{display:flex;flex-direction:column;gap:13px;}
  .footer-col ul li a{font-size:14px;color:var(--text-muted);transition:.2s;}
  .footer-col ul li a:hover{color:var(--gold);}
  .newsletter-field{position:relative;margin-top:8px;max-width:320px;}
  .newsletter-field input{
    width:100%;background:transparent;border:none;border-bottom:1px solid var(--border);
    padding:10px 34px 10px 0;color:var(--text-light);font-family:inherit;font-size:14px;
  }
  .newsletter-field input::placeholder{color:var(--text-muted);}
  .newsletter-field input:focus{outline:none;border-color:var(--gold);}
  .newsletter-field button{
    position:absolute;left:0;top:50%;transform:translateY(-50%);
    background:none;border:none;color:var(--gold);font-size:18px;cursor:pointer;padding:4px;
  }
  .footer-contact-mini{margin-top:22px;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-muted);}
  .footer-divider{border-top:1px solid var(--border);}
  .footer-bottom-row{
    padding:26px 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;
  }
  .footer-brand{display:flex;align-items:center;gap:18px;}
  .footer-brand svg{height:26px;width:auto;display:block;}
  .footer-brand span{font-size:13px;color:var(--text-muted);}
  .socials{display:flex;gap:12px;}
  .socials a{
    width:36px;height:36px;border-radius:0;border:1px solid var(--border);
    display:flex;align-items:center;justify-content:center;color:var(--text-muted);
    transition:.2s;
  }
  .socials a svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
  .socials a:hover{border-color:var(--gold);color:var(--gold);}

  /* Registration modal-ish inline form band (register interest) */
  .register-band{
    padding:112px 0;position:relative;
    background:linear-gradient(90deg, rgba(13,22,32,.97) 0%, rgba(13,22,32,.55) 55%, rgba(13,22,32,.15) 100%),
      url('/images/image-3.jpg') center/cover;
  }
  .register-card{
    max-width:420px;background:rgba(20,33,45,.85);backdrop-filter:blur(6px);
    border:1px solid var(--border);border-radius:0;padding:38px;
  }
  .register-card h3{font-size:24px;font-weight:700;margin-bottom:24px;}

  /* Divider band above partners */
  .divider-band{
    height:75vh;position:relative;
    background-image: url('/images/image-3.jpg');
    background-size:cover;background-position:center;background-attachment:fixed;
  }
  .divider-band::after{
    content:"";position:absolute;inset:0;background:rgba(13,22,32,.45);
  }
  @media(max-width:900px){
    .divider-band{background-attachment:scroll;height:50vh;}
  }
  .team-photo-reveal{
    position:relative;z-index:3;
    margin-top:-18.75vh;
    display:flex;justify-content:center;
    padding-bottom:70px;
  }
  .team-photo-inner{
    width:50%;
    max-width:1200px;
    box-shadow:0 25px 70px rgba(0,0,0,.45);
    border:1px solid var(--border);
    overflow:hidden;
    will-change:width;
  }
  .team-photo-inner img{width:100%;display:block;}
  @media(max-width:900px){
    .team-photo-reveal{margin-top:-10vh;padding-bottom:40px;}
  }
  .field{
    width:100%;padding:13px 16px;margin-bottom:14px;border-radius:0;
    border:1px solid var(--border);background:rgba(255,255,255,.03);color:var(--text-light);font-family:inherit;font-size:14px;
  }
  .field::placeholder{color:var(--text-muted);}
  .submit-btn{
    width:100%;padding:13px;border:none;border-radius:0;background:var(--gold);color:var(--bg-darker);
    font-weight:700;font-size:15px;cursor:pointer;transition:.2s;font-family:inherit;
  }
  .submit-btn:hover{background:var(--gold-light);}

  @media(max-width:900px){
    .services-grid,.sectors-grid,.projects-grid,.news-grid{grid-template-columns:1fr;}
    .stats-grid{grid-template-columns:1fr;}
    .partners-grid{grid-template-columns:repeat(3,1fr);}
    .hero h1{font-size:36px;}
    .hero .en-sub{font-size:36px;}
    .section-head h2{font-size:34px;}
    .about-text h2{font-size:34px;}
    .footer-grid{grid-template-columns:1fr 1fr;}
    .footer-bottom-row{flex-direction:column;text-align:center;}
    .nav-dropdown-body{grid-template-columns:1fr;padding:40px 24px;}
    .nav-dropdown-links{padding-left:0;border-left:none;padding-bottom:30px;border-bottom:1px solid var(--border);}
    .nav-dropdown-news{height:auto;padding-right:0;padding-top:30px;}
    .nav-news-grid{grid-template-columns:1fr;}
    .nav-news-card .nav-news-img{height:150px;}
    .nav-dropdown-links ul li a{font-size:22px;}
    .nav-news-grid{max-width:100%;}
    .nav-dropdown-bottom-inner{padding:20px 24px;flex-direction:column;align-items:flex-start;}
  }

  /* Site-wide scroll reveal — same feel as the hero slogan line-up */
  .reveal-mask{overflow:hidden;display:block;}
  .reveal-mask > *{
    display:inline-block;transform:translateY(115%);opacity:0;
  }
  .reveal-mask.in-view > *{
    animation:heroLineUp .8s cubic-bezier(.22,.61,.36,1) forwards;
  }
  .reveal-item{
    opacity:0;transform:translateY(36px);
    transition:opacity .7s cubic-bezier(.22,.61,.36,1), transform .7s cubic-bezier(.22,.61,.36,1);
  }
  .reveal-item.in-view{opacity:1;transform:translateY(0);}



  /* Media Center Hero */
  .mc-hero{
    position:relative;min-height:60vh;overflow:hidden;
  }
  .mc-hero-bg{
    position:absolute;inset:0;background-size:cover;background-position:center;
  }
  .mc-hero-overlay{
    position:absolute;inset:0;z-index:1;
    background:linear-gradient(180deg, rgba(13,22,32,.25) 0%, rgba(13,22,32,.55) 55%, rgba(13,22,32,.92) 100%);
  }
  .mc-hero-content{position:absolute;z-index:2;right:0;left:0;top:50%;transform:translateY(-50%);}
  .mc-hero-content .container{max-width:1200px;}
  .mc-hero h1{font-size:44px;font-weight:700;color:#bee3e0;margin-bottom:6px;}

  /* Permanent thin line under header for this page */

  .mc-section{padding:70px 0 110px;background:var(--bg-dark);}

  /* Filters row */
  .mc-filters{
    display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:34px;
  }
  .mc-filter{
    display:inline-flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--border);
    color:var(--text-muted);font-size:13px;padding:9px 16px;cursor:pointer;transition:.2s;
  }
  .mc-filter:hover{border-color:var(--gold);color:var(--gold);}

  /* News grid */
  .mc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
  .mc-card{background:var(--bg-card);border:1px solid var(--border);overflow:hidden;transition:.25s;}
  .mc-card:hover{border-color:var(--gold);transform:translateY(-4px);}
  .mc-card-img{height:220px;background-size:cover;background-position:center;position:relative;}
  .mc-card-body{padding:26px;}
  .mc-card-date{color:var(--gold);font-size:12.5px;margin-bottom:10px;display:block;}
  .mc-card h4{font-size:17px;font-weight:700;margin-bottom:10px;line-height:1.5;}
  .mc-card p{color:var(--text-muted);font-size:13.5px;line-height:1.7;margin-bottom:16px;}
  .mc-card-link{color:var(--text-light);font-size:13.5px;display:inline-flex;align-items:center;gap:6px;transition:.2s;}
  .mc-card-link:hover{color:var(--gold);}

  /* Pagination */
  .mc-pagination{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:48px;}
  .mc-page{
    width:34px;height:34px;display:flex;align-items:center;justify-content:center;
    border:1px solid var(--border);color:var(--text-muted);font-size:13px;cursor:pointer;transition:.2s;
    background:var(--bg-card);
  }
  .mc-page:hover{border-color:var(--gold);color:var(--gold);}
  .mc-page.active{background:var(--gold);color:var(--bg-darker);border-color:var(--gold);font-weight:700;}
  .mc-page-arrow{border:none;background:none;color:var(--text-muted);font-size:16px;cursor:pointer;padding:0 6px;}
  .mc-page-arrow:hover{color:var(--gold);}

  @media(max-width:900px){
    .mc-hero h1{font-size:32px;}
    .mc-grid{grid-template-columns:1fr;}
    .mc-filters{flex-direction:column;align-items:flex-start;}
  }


.st0{fill:#fff;}

.st0{fill:#fff;}

.st0{fill:#fff;}
  @media(max-width:900px){
    .mc-grid{grid-template-columns:1fr;}
  }



  .soon-toast{
    position:fixed;bottom:30px;left:50%;transform:translateX(-50%) translateY(20px);
    background:var(--bg-card);border:1px solid var(--gold);color:var(--text-light);
    padding:14px 24px;font-size:14px;z-index:9999;opacity:0;transition:opacity .3s,transform .3s;
    pointer-events:none;white-space:nowrap;
  }
  .soon-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

/* nav dropdown — unified across the site */
.nav-dropdown-links ul li a{font-size:20px !important;}
.nav-dropdown.open .nav-news-card{opacity:1;transform:none;}
.nav-dropdown.open .nav-news-card:nth-child(2){transition-delay:.08s}
.nav-dropdown.open .nav-news-card:nth-child(3){transition-delay:.16s}
@media(max-width:900px){
  .nav-dropdown-top{padding:40px 24px 12px;}
  .nav-dropdown-body{grid-template-columns:1fr;padding:24px;border:0;}
  .nav-dropdown-links,.nav-dropdown-news{padding:0 !important;border:0 !important;}
  .nav-dropdown-links{margin-bottom:28px}
  .nav-dropdown-links ul li a{font-size:17px !important;}
}

/* ===== العربية خط متّصل: لا تباعد بين حروفها =====
   letter-spacing يفصل الحروف عن بعضها، فتُقرأ الكلمة العربية أشلاءً بدل كلمة
   واحدة — وأسوأ ما يكون في الأحجام الصغيرة، ولذلك بدا تبويب «سجل اهتمامك»
   الجانبي مقطّعاً. يُلغى أينما جرى نصّ عربي، ويبقى حيث النصّ لاتيني. */
html[dir="rtl"] body *:not([dir="ltr"]):not([lang="en"]):not(.mark-en):not(.ab-hero-en):not(.admin-login-brand-en){
  letter-spacing:normal;
}
/* ===== الترويسة على الجوال — مطابقة للصفحة الرئيسية =====
   كتلة الجوال في هذا الملف مكتوبة في أعلاه، وقاعدة سطح المكتب (69px) تأتي
   بعدها بنفس الترجيح فتغلبها بحكم الترتيب وحده — فبقي الشعار بحجمه الكامل
   على الجوال، ودفع زرّ القائمة خارج الشاشة. تُعاد هنا في آخر الملف لتفوز،
   بنفس القيم التي تستعملها الصفحة الرئيسية. */
@media(max-width:900px){
  .nav-wrap{ padding:22px 20px; }
  .logo svg{ height:44px; }
  header.scrolled .logo svg{ height:38px; }
  .nav-dropdown-top{ padding:22px 20px 14px; }
}
@media(max-width:480px){
  .container{ padding:0 20px; }
  .nav-wrap{ padding:18px 16px; }
}
/* ===== نسبة صور الأخبار موحّدة: 16:9 =====
   كانت الارتفاعات ثابتة ومختلفة من موضع لآخر — 260 و220 و190 و170 و130
   بكسل — فيتغيّر مقدار القصّ مع عرض البطاقة، وتظهر الصورة منقوصة الأطراف
   وبنِسب متباينة بين الصفحة الرئيسية والمركز الإعلامي وقائمة التنقل.
   النسبة الآن واحدة والارتفاع يتبع العرض، فتُعرض الصورة كما صُمّمت.
   الترجيح هنا يطابق القواعد الأصلية (مثل .nav-news-card .nav-news-img)
   وإلا لغلبته وبقيت بارتفاعها القديم. */
.news-img,
.mc-card-img,
.nav-news-img,
.nav-news-card .nav-news-img,
.rel-img,
.article-related-card .rel-img{
  height:auto;
  aspect-ratio:16 / 9;
  background-size:cover;
  background-position:center;
}
/* صورة الخبر فوق نصّه تتبع النسبة نفسها */
.article-figure img{
  aspect-ratio:16 / 9;
  height:auto;
  object-fit:cover;
}
/* ===== أيقونات التواصل الرسمية =====
   الأيقونات الجديدة مصمتة (fill) بينما القاعدة العامة ترسم الأيقونات
   بالخطوط (stroke) — وتركها على القاعدة العامة يجعلها تختفي، لأن مسارات
   مصمتة بلا تعبئة لا تُرى. */
.socials a svg.brand-icon{
  fill:currentColor;
  stroke:none;
  width:16px; height:16px;
}
/* رسالة نتيجة الاشتراك في النشرة */
.newsletter-note{ font-size:12px; margin-top:8px; min-height:1em; color:var(--text-muted); }
.newsletter-note.ok{ color:#8fd3a8 }
.newsletter-note.bad{ color:#e0a09a }

/* ===== الفلاتر على الجوال — صفٌّ واحد =====
   كانت تُقلب إلى عمود، فيأخذ كل فلتر سطره. ومجموع عرضها أضيق من
   الشاشة: ٢٩٢px في المشاريع و١٧٥px في الأخبار مقابل ٣٥٠px متاحة على
   جهاز 390px — فالصفّ يسعها دون ازدحام. تبقى wrap صمّام أمان للشاشات
   الأضيق أو النصوص الأطول. */
@media(max-width:768px){
  .proj-filters,
  .mc-filters{
    flex-direction:row;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
  }
  .proj-filter-group,
  .mc-filter-group{ flex-wrap:nowrap; }
  .proj-filter,
  .mc-filter{ white-space:nowrap; }
}

/* أرقام الترقيم صارت <button> بعد أن كانت <div>، فتُلغى افتراضات
   المتصفّح لها؛ والشريط يختفي كلّياً متى وسعت صفحةٌ واحدة كلَّ الأخبار. */
.mc-pagination .mc-page{ padding:0; font-family:inherit; background:none; border:0; cursor:pointer; }
.mc-pagination .mc-page-arrow[disabled]{ opacity:.28; cursor:default; }
.mc-pagination[hidden]{ display:none; }
