﻿/*
Theme Name: Mabany Al-Watan Theme v3.7
Theme URI: https://nhb.sa
Author: Suleiman Al-Hosayni
Author URI: https://nhb.sa
Description: Official website theme for Mabani Al-Watan Al-Turathia Contracting Co. — a first-class heritage building restoration and contracting company in Saudi Arabia. Version 3.7.
Version: 3.7.6
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mabany-theme-v3
Tags: rtl-language-support, custom-logo, full-width-template, one-column, custom-colors, custom-header, featured-images, translation-ready, business
*/

    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    :root {
      --seif-dark:    #1e1e1e;
      --seif-nav:     #2D2D2D;
      --seif-red:     #d9dbbd;
      --seif-red-hover: #c4c7a5;
      --seif-gold:    #d9dbbd;
      --seif-sand:    #d9dbbd;
      --seif-bg:      #f7f4f0;
      --heritage-bg:  #1e1a16;
      --heritage-mid: #2a2520;
      --heritage-old: #151210;
    }

    html { overflow-x: hidden; }
    body {
      font-family: 'Amiri', serif;
      background: #ffffff;
      color: #333;
      direction: rtl;
      overflow-x: hidden;
    }

    a { text-decoration: none; color: inherit; }
    img { max-width: 100%; height: auto; display: block; }

    /* ===================================================
       TOP BAR
       =================================================== */
    .top-bar {
      background: var(--seif-dark);
      color: #ccc;
      font-family: 'Poppins', sans-serif;
      font-size: 13px;
      padding: 8px 0;
    }
    .top-bar-inner {
      max-width: 1440px;
      margin: 0 auto;
      padding: 0 24px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 8px;
    }
    .top-bar-contact { display: flex; align-items: center; gap: 24px; }
    .top-bar-contact a {
      color: #ccc;
      display: flex;
      align-items: center;
      gap: 6px;
      transition: color .2s;
    }
    .top-bar-contact a:hover { color: #fff; }
    .top-bar-contact svg { width: 14px; height: 14px; fill: var(--seif-gold); flex-shrink: 0; }
    .top-bar-social { display: flex; align-items: center; gap: 14px; }
    .top-bar-social a {
      color: #999;
      font-size: 13px;
      transition: color .2s;
    }
    .top-bar-social a:hover { color: var(--seif-gold); }

    /* ===================================================
       MAIN HEADER / NAV
       =================================================== */
    .site-header {
      background: transparent;
      position: fixed;
      top: var(--wp-admin--admin-bar--height, 0px);
      left: 0;
      right: 0;
      z-index: 1000;
      box-shadow: none;
      transition: background .35s ease, box-shadow .35s ease;
    }
    .site-header.scrolled {
      background: var(--seif-nav);
      box-shadow: 0 2px 10px rgba(0,0,0,.4);
    }
    .header-inner {
      max-width: 1440px;
      margin: 0 auto;
      padding: 0 24px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      height: 72px;
    }

    /* Logo */
    .site-logo {
      display: flex;
      align-items: center;
      flex-shrink: 0;
    }
    .site-logo img {
      height: 72px;
      width: auto;
      object-fit: contain;
      background: rgba(255,255,255,0.9);
      border-radius: 6px;
      padding: 4px 10px;
    }

    /* Navigation */
    .main-nav { display: flex; align-items: center; gap: 4px; }
    .nav-item { position: relative; }
    .nav-link {
      display: flex;
      align-items: center;
      gap: 5px;
      padding: 8px 16px;
      color: #ddd;
      font-family: 'Poppins', sans-serif;
      font-size: 14px;
      font-weight: 500;
      border-radius: 4px;
      transition: color .2s, background .2s;
      white-space: nowrap;
    }
    .nav-link:hover, .nav-link.active { color: #fff; background: rgba(255,255,255,.08); }
    .nav-link svg { width: 12px; height: 12px; fill: #999; transition: transform .2s; }
    .nav-item:hover .nav-link svg { transform: rotate(180deg); fill: var(--seif-gold); }

    /* Dropdown */
    .nav-dropdown {
      position: absolute;
      top: 100%;
      right: 0;
      background: #fff;
      min-width: 200px;
      box-shadow: 0 8px 24px rgba(0,0,0,.18);
      border-radius: 4px;
      border-top: 3px solid var(--seif-red);
      opacity: 0;
      pointer-events: none;
      transform: translateY(8px);
      transition: opacity .2s, transform .2s;
      z-index: 200;
    }
    .nav-item:hover .nav-dropdown { opacity: 1; pointer-events: all; transform: translateY(0); }
    .nav-dropdown a {
      display: block;
      padding: 10px 20px;
      font-size: 13px;
      color: #444;
      font-family: 'Poppins', sans-serif;
      border-bottom: 1px solid #f0f0f0;
      transition: background .15s, color .15s, padding-right .15s;
    }
    .nav-dropdown a:last-child { border-bottom: none; }
    .nav-dropdown a:hover { background: #f8f8f8; color: var(--seif-red); padding-right: 26px; }

    /* Contact CTA in header */
    .header-cta {
      background: var(--seif-red);
      color: #1e1a16;
      padding: 9px 20px;
      border-radius: 4px;
      font-family: 'Poppins', sans-serif;
      font-size: 13px;
      font-weight: 600;
      transition: background .2s, transform .2s;
      white-space: nowrap;
    }
    .header-cta:hover { background: var(--seif-red-hover); color: #1e1a16; transform: translateY(-1px); }

    /* Mobile hamburger */
    .hamburger {
      display: none;
      flex-direction: column;
      gap: 5px;
      cursor: pointer;
      padding: 6px;
      background: none;
      border: none;
      outline: none;
    }
    .hamburger span {
      display: block;
      width: 24px;
      height: 2px;
      background: #fff;
      border-radius: 2px;
      transition: all .3s;
    }

    /* ===================================================
       HERO
       =================================================== */
    .hero-alt-section {
      position: relative;
      height: calc(100vh - var(--wp-admin--admin-bar--height, 0px) - var(--topbar-h, 37px));
      min-height: 620px;
      display: flex;
      align-items: stretch;
      overflow: hidden;
    }
    .hero-alt-bg {
      position: absolute;
      inset: 0;
    }
    .hero-bg-slide {
      position: absolute;
      inset: 0;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      opacity: 0;
      transition: opacity 1.5s ease-in-out;
    }
    .hero-bg-slide.active {
      opacity: 1;
    }
    /* Dot indicators */
    .hero-bg-dots {
      position: absolute;
      left: 32px;
      top: 50%;
      transform: translateY(-50%);
      display: flex;
      flex-direction: column;
      gap: 10px;
      z-index: 10;
    }
    /* In LTR (English) — dots on the right side */
    [dir="ltr"] .hero-bg-dots {
      left: auto;
      right: 32px;
    }
    /* In LTR (English) — scroll indicator on RIGHT, text on LEFT */
    [dir="ltr"] .hero-alt-scroll {
      left: auto;
      right: 48px;
    }
    .hero-bg-dot {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: rgba(255,255,255,.35);
      border: 2px solid rgba(255,255,255,.5);
      cursor: pointer;
      padding: 0;
      transition: background .3s, transform .3s, border-color .3s;
    }
    .hero-bg-dot.active {
      background: #d9dbbd;
      border-color: #d9dbbd;
      transform: scale(1.3);
    }
    .hero-alt-overlay {
      position: absolute;
      inset: 0;
      /* Arabic (RTL default): dark on RIGHT where text is */
      background: linear-gradient(
        to right,
        rgba(10,8,6,0.3) 0%,
        rgba(10,8,6,0.75) 45%,
        rgba(10,8,6,0.92) 100%
      );
    }
    /* English (LTR): dark on LEFT where text is */
    [dir="ltr"] .hero-alt-overlay {
      background: linear-gradient(
        to left,
        rgba(10,8,6,0.3) 0%,
        rgba(10,8,6,0.75) 45%,
        rgba(10,8,6,0.92) 100%
      );
    }
    .hero-alt-inner {
      position: relative;
      z-index: 1;
      width: 100%;
      max-width: 1440px;
      margin: 0 auto;
      padding: 0 24px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: flex-start;
    }
    .hero-alt-label {
      position: absolute;
      top: 18px;
      left: 50%;
      transform: translateX(-50%);
      background: rgba(217,219,189,.15);
      border: 1px solid rgba(217,219,189,.4);
      color: #d9dbbd;
      font-family: 'Poppins', sans-serif;
      font-size: 12px;
      padding: 5px 16px;
      border-radius: 20px;
      white-space: nowrap;
    }
    .hero-alt-content {
      max-width: 640px;
      width: 100%;
      margin-left: auto;
      margin-right: 0;
    }
    [dir="ltr"] .hero-alt-content {
      margin-left: 0;
      margin-right: auto;
    }
    .hero-alt-tag {
      display: block;
      font-family: 'Poppins', sans-serif;
      font-size: .78rem;
      letter-spacing: 4px;
      text-transform: uppercase;
      color: #d9dbbd;
      margin-bottom: 22px;
    }
    .hero-alt-title {
      font-family: 'Amiri', serif;
      font-size: clamp(3.5rem, 7vw, 3.5rem);
      font-weight: 700;
      color: #fff;
      line-height: 1.1;
      margin-bottom: 28px;
    }
    .hero-alt-title span {
      color: #d9dbbd;
    }
    .hero-alt-desc {
      font-family: 'Amiri', serif;
      font-size: 1.15rem;
      color: #c8bba0;
      line-height: 2;
      margin-bottom: 42px;
      max-width: 520px;
    }
    .hero-alt-btns { display: flex; gap: 16px; flex-wrap: wrap; }
    .hero-alt-cta-primary {
      padding: 14px 36px;
      background: #d9dbbd;
      color: #1e1a16;
      font-family: 'Poppins', sans-serif;
      font-size: .95rem;
      font-weight: 700;
      border-radius: 4px;
      transition: background .2s, transform .2s;
    }
    .hero-alt-cta-primary:hover { background: #c4c7a5; transform: translateY(-2px); }
    .hero-alt-cta-outline {
      padding: 14px 36px;
      background: transparent;
      color: #fff;
      border: 2px solid rgba(255,255,255,.45);
      font-family: 'Poppins', sans-serif;
      font-size: .95rem;
      font-weight: 600;
      border-radius: 4px;
      transition: all .2s;
    }
    .hero-alt-cta-outline:hover { border-color: #d9dbbd; color: #d9dbbd; }
    /* Stats bar */
    .hero-alt-stats {
      position: absolute;
      bottom: 0;
      left: 0; right: 0;
      background: rgba(0,0,0,.55);
      backdrop-filter: blur(8px);
      border-top: 1px solid rgba(217,219,189,.2);
      padding: 22px 48px;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0;
    }
    .hero-alt-stat {
      display: flex;
      flex-direction: column;
      align-items: center;
      padding: 0 48px;
      gap: 4px;
    }
    .hero-alt-stat-num {
      font-family: 'Poppins', sans-serif;
      font-size: 1.9rem;
      font-weight: 700;
      color: #d9dbbd;
      line-height: 1;
    }
    .hero-alt-stat-label {
      font-family: 'Amiri', serif;
      font-size: .95rem;
      color: #ccc;
    }
    .hero-alt-stat-div {
      width: 1px;
      height: 40px;
      background: rgba(217,219,189,.3);
    }
    /* Scroll indicator */
    .hero-alt-scroll {
      position: absolute;
      bottom: 90px;
      left: 48px; /* Arabic: scroll indicator on LEFT, text on RIGHT */
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 6px;
      color: rgba(255,255,255,.5);
      font-family: 'Poppins', sans-serif;
      font-size: 11px;
      letter-spacing: 2px;
      animation: bounce 2s ease-in-out infinite;
    }
    .hero-alt-scroll svg {
      width: 20px; height: 20px;
      stroke: rgba(217,219,189,.7);
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
    }
    @keyframes bounce {
      0%,100% { transform: translateY(0); }
      50%      { transform: translateY(8px); }
    }

    /* ===================================================
       SECTION SHARED
       =================================================== */
    .section-tag {
      display: block;
      color: #5e4b1c;
      font-size: 1rem;
      letter-spacing: 4px;
      text-transform: uppercase;
      font-family: 'Poppins', sans-serif;
      margin-bottom: 14px;
    }
    .section-h2 {
      font-family: 'Amiri', serif;
      font-size: clamp(1.8rem, 3.5vw, 2.8rem);
      font-weight: 700;
      margin-bottom: 14px;
    }
    .section-sub {
      font-size: 1rem;
      line-height: 1.9;
      max-width: 640px;
      margin: 0 auto;
    }

    /* ===================================================
       SERVICES
       =================================================== */
    .services-section {
      background: var(--seif-sand);
      padding: 80px 24px;
      position: relative;
    }
    .services-section .section-tag { color: #8B2020; }
    .services-section .section-h2 { color: var(--heritage-bg); }
    .services-section::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 3px;
      background: linear-gradient(90deg, transparent, var(--seif-gold), transparent);
    }
    .services-inner { max-width: 1440px; margin: 0 auto; }
    .section-header { text-align: center; margin-bottom: 56px; }
    .section-header .section-h2 { color: #1a1a1a; }
    .section-header .section-sub { color: #2a2520; }

    .services-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
    }
    .service-card {
      background: var(--heritage-bg);
      border: 1px solid var(--seif-gold);
      border-radius: 12px;
      padding: 32px 24px;
      position: relative;
      overflow: hidden;
      transition: transform .25s, background .25s, box-shadow .25s;
      display: flex;
      flex-direction: column;
    }
    .service-card::before {
      content: '';
      position: absolute;
      top: 0; right: 0;
      width: 3px; height: 0;
      background: #8B2020;
      transition: height .3s;
    }
    .service-card:hover { transform: translateY(-4px); background: #3a2424; box-shadow: 0 10px 28px rgba(139,32,32,.25); }
    .service-card:hover::before { height: 100%; }
    .svc-icon {
      width: 56px;
      height: 56px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: rgba(217,219,189,.08);
      border: 1px solid rgba(217,219,189,.2);
      border-radius: 14px;
      margin-bottom: 20px;
      color: #d9b87c;
      transition: background .25s, border-color .25s;
    }
    .svc-icon svg { width: 28px; height: 28px; }
    .service-card:hover .svc-icon { background: rgba(139,32,32,.2); border-color: #8B2020; color: #e8c88a; }
    .svc-title { font-family: 'Amiri', serif; font-size: 1.35rem; color: #f5f1e8; margin-bottom: 12px; }
    .svc-desc { color: #c8bba0; font-size: .95rem; line-height: 1.85; flex: 1; }
    .svc-btn {
      display: inline-block;
      margin-top: 24px;
      padding: 10px 20px;
      background: transparent;
      border: 1px solid rgba(217,219,189,.3);
      border-radius: 8px;
      color: #d9dbbd;
      font-family: 'Poppins', sans-serif;
      font-size: .82rem;
      letter-spacing: 1px;
      text-align: center;
      transition: background .25s, border-color .25s, color .25s;
      align-self: flex-start;
    }
    .svc-btn:hover { background: #8B2020; border-color: #8B2020; color: #fff; }
    .service-card:hover .svc-btn { border-color: rgba(217,219,189,.5); }

    /* ===================================================
       ABOUT / STATS PANEL
       =================================================== */
    /* ===================================================
       VIDEO QUOTE SECTION
       =================================================== */
    .video-quote-section {
      position: relative;
      min-height: 520px;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      text-align: center;
    }
    .vq-bg {
      position: absolute;
      inset: 0;
      background-size: cover;
      background-position: center;
      transform: scale(1.04);
      transition: transform 6s ease;
    }
    .vq-section:hover .vq-bg { transform: scale(1); }
    .vq-overlay {
      position: absolute;
      inset: 0;
      background: linear-gradient(to bottom, rgba(15,10,5,.55) 0%, rgba(15,10,5,.72) 100%);
    }
    .vq-content {
      position: relative;
      z-index: 2;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 16px;
      padding: 80px 24px;
    }
    .vq-sub {
      font-family: 'Poppins', sans-serif;
      font-size: .875rem;
      letter-spacing: 4px;
      text-transform: uppercase;
      color: #d9b87c;
      opacity: .9;
    }
    .vq-heading {
      font-family: 'Amiri', serif;
      font-size: clamp(2rem, 5vw, 3.4rem);
      color: #fff;
      font-weight: 700;
      line-height: 1.2;
      margin: 0;
      text-shadow: 0 2px 20px rgba(0,0,0,.5);
    }
    .vq-play-btn {
      width: 76px;
      height: 76px;
      border-radius: 50%;
      background: #d9b87c;
      border: none;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 20px;
      color: #1a1208;
      box-shadow: 0 0 0 12px rgba(217,184,124,.18), 0 8px 32px rgba(0,0,0,.4);
      transition: transform .25s, background .25s, box-shadow .25s;
    }
    .vq-play-btn:hover {
      transform: scale(1.1);
      background: #e8cc8e;
      box-shadow: 0 0 0 18px rgba(217,184,124,.22), 0 12px 40px rgba(0,0,0,.45);
    }
    .vq-play-btn svg { width: 28px; height: 28px; margin-right: -3px; }

    /* Modal */
    .vq-modal {
      position: fixed;
      inset: 0;
      z-index: 9999;
      display: flex;
      align-items: center;
      justify-content: center;
      opacity: 0;
      pointer-events: none;
      transition: opacity .3s;
    }
    .vq-modal.active { opacity: 1; pointer-events: all; }
    .vq-modal-backdrop {
      position: absolute;
      inset: 0;
      background: rgba(0,0,0,.88);
    }
    .vq-modal-box {
      position: relative;
      z-index: 1;
      width: 90vw;
      max-width: 1000px;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 24px 80px rgba(0,0,0,.7);
      transform: scale(.95);
      transition: transform .3s;
    }
    .vq-modal.active .vq-modal-box { transform: scale(1); }
    .vq-modal-box video {
      width: 100%;
      display: block;
      max-height: 80vh;
      background: #000;
    }
    .vq-modal-close {
      position: absolute;
      top: 12px;
      left: 12px;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      background: rgba(0,0,0,.6);
      border: 1px solid rgba(255,255,255,.2);
      color: #fff;
      font-size: 1.3rem;
      line-height: 1;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 2;
      transition: background .2s;
    }
    .vq-modal-close:hover { background: rgba(139,32,32,.8); }
    @media (max-width: 600px) {
      .vq-play-btn { width: 60px; height: 60px; }
      .vq-play-btn svg { width: 22px; height: 22px; }
    }

    .about-section { background: var(--heritage-bg); padding: 80px 24px; }
    .about-inner { max-width: 1440px; margin: 0 auto; }
    .about-panel {
      background: linear-gradient(180deg, rgba(217,219,189,.07) 0%, transparent 60%), var(--heritage-mid);
      border: 1px solid rgba(255,255,255,.09);
      border-radius: 18px;
      padding: 36px;
      overflow: hidden;
    }
    .about-header { display: flex; gap: 20px; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; color: var(--seif-sand); margin-bottom: 28px; }
    .about-title { font-size: clamp(20px, 2.2vw, 28px); font-family: 'Amiri', serif; font-weight: 700; margin-bottom: 8px; }
    .about-sub { color: var(--seif-sand); font-size: 15px; line-height: 1.8; max-width: 680px; }

    /* Trust badges */
    .trust-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 14px; }
    .trust-badge {
      background: var(--seif-sand);
      border-radius: 14px;
      padding: 16px 14px;
      display: flex;
      gap: 12px;
      align-items: flex-start;
    }
    .trust-icon {
      width: 42px; height: 42px; flex: 0 0 42px;
      border-radius: 10px;
      background: rgba(217,219,189,.15);
      border: 1px solid rgba(217,219,189,.3);
      display: grid;
      place-items: center;
    }
    .trust-icon svg { width: 20px; height: 20px; fill: var(--heritage-bg); }
    .trust-badge h4 { font-size: 15px; margin-bottom: 4px; color: #2a2520; font-family: 'Amiri', serif; }
    .trust-badge p { font-size: 13px; color: #4a3f30; line-height: 1.5; }

    /* Counters */
    .counters-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
    .counter-box {
      background: rgba(255,255,255,.04);
      border: 1px solid rgba(255,255,255,.09);
      border-radius: 14px;
      padding: 20px 18px;
    }
    .counter-num { display: flex; align-items: baseline; gap: 8px; margin-bottom: 6px; }
    .counter-num strong { font-size: clamp(26px, 3vw, 40px); color: #fff; letter-spacing: .5px; }
    .counter-suffix { font-size: 14px; color: var(--seif-gold); font-weight: 700; }
    .counter-label { color: var(--seif-sand); font-size: 13px; line-height: 1.5; }

    /* ===================================================
       ACHIEVEMENTS COVER  (El-Seif dark cover with cols)
       =================================================== */
    .achievements-section {
      background: linear-gradient(rgba(42,37,32,.85), rgba(42,37,32,.85)),
                  url('https://nhb.sa/wp-content/uploads/2026/02/2206825005-1-1024x683.jpg') center/cover fixed no-repeat;
      padding: 80px 24px;
    }
    .achievements-inner {
      max-width: 1440px;
      margin: 0 auto;
    }
    .achievements-heading {
      text-align: center;
      color: var(--seif-sand);
      font-family: 'Amiri', serif;
      font-size: clamp(1.6rem, 3vw, 2.4rem);
      font-weight: 600;
      margin-bottom: 48px;
    }
    .achievements-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
    .achievement-item { text-align: center; }
    .achievement-item img { width: 64px; height: 64px; object-fit: contain; margin: 0 auto 18px; filter: brightness(0) invert(1) sepia(1) saturate(2) hue-rotate(10deg); }
    .achievement-item h3 { font-family: 'Poppins', sans-serif; font-size: 16px; font-weight: 600; color: var(--seif-gold); margin-bottom: 10px; }
    .achievement-item p { font-size: .9rem; color: #c8bba0; line-height: 1.7; }

    /* ===================================================
       ABOUT US IMAGES SECTION
       =================================================== */
    .aboutus-section {
      background: linear-gradient(rgba(30,26,22,.88), rgba(30,26,22,.88)),
                  url('https://nhb.sa/wp-content/uploads/2026/02/2243589591-1-1024x683.jpg') center/cover fixed;
      padding: 80px 24px;
    }
    .aboutus-inner { max-width: 1440px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
    .aboutus-images { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
    .aboutus-images img { border-radius: 10px; width: 100%; height: 200px; object-fit: cover; }
    .aboutus-img-tall { height: 412px !important; }
    .aboutus-content { color: #fff; }
    .aboutus-content .section-tag { margin-bottom: 8px; }
    .aboutus-content h2 { font-family: 'Amiri', serif; font-size: clamp(1.6rem, 2.5vw, 2.2rem); color: var(--seif-sand); margin-bottom: 20px; font-weight: 600; }
    .aboutus-content p { color: #c8bba0; font-size: 1.05rem; line-height: 1.9; margin-bottom: 28px; }
    .about-features { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }

    .about-feature h4 { font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 600; color: var(--seif-gold); margin-bottom: 6px; }
    .about-feature p { font-size: .88rem; color: #aaa; line-height: 1.6; }

    /* ===================================================
       CHAIRMAN MESSAGE
       =================================================== */
    .chairman-section {
      background: #fff;
      padding: 90px 24px;
    }
    .chairman-inner {
      max-width: 1440px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr 320px;
      gap: 64px;
      align-items: center;
    }
    .chairman-title {
      font-family: 'Amiri', serif;
      font-size: clamp(1.8rem, 3.5vw, 2.8rem);
      font-weight: 700;
      color: #1e1a16;
      margin-bottom: 18px;
      line-height: 1.3;
    }
    .chairman-divider {
      width: 50px;
      height: 3px;
      background: var(--seif-gold);
      border-radius: 2px;
      margin-bottom: 28px;
    }
    .chairman-body {
      font-family: 'Amiri', serif;
      font-size: 1.08rem;
      color: #444;
      line-height: 2;
      text-align: justify;
    }
    .chairman-photo-col {
      flex-shrink: 0;
    }
    .chairman-photo-col img {
      width: 300px;
      height: 420px;
      object-fit: cover;
      object-position: top center;
      border-radius: 12px;
      box-shadow: 0 20px 50px rgba(0,0,0,.15);
      display: block;
    }
    @media (max-width: 768px) {
      .chairman-inner {
        grid-template-columns: 1fr;
      }
      .chairman-photo-col img {
        width: 100%;
        height: 320px;
      }
    }

    /* ===================================================
       ABOUT US — OPTION B (split light layout)
       =================================================== */
    .aboutus-b { background: #f7f4f0; padding: 90px 24px; position: relative; }
    .about-option-label {
      position: absolute; top: 18px; left: 50%; transform: translateX(-50%);
      background: rgba(217,219,189,.12); border: 1px solid rgba(217,219,189,.35);
      color: #d9dbbd; font-family: 'Poppins', sans-serif; font-size: 12px;
      padding: 5px 18px; border-radius: 20px; white-space: nowrap; z-index: 2;
    }
    .ab-inner { max-width: 1440px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1.15fr; gap: 64px; align-items: start; }
    .ab-photos { display: flex; flex-direction: column; gap: 14px; }
    .ab-photo-main { width: 100%; height: 310px; object-fit: cover; border-radius: 12px; }
    .ab-photos-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .ab-photos-row img { width: 100%; height: 190px; object-fit: cover; border-radius: 10px; }
    .ab-tag { display: block; font-family: 'Poppins', sans-serif; font-size: 1rem; letter-spacing: 4px; text-transform: uppercase; color: #5e4b1c; margin-bottom: 14px; }
    .ab-title { font-family: 'Amiri', serif; font-size: 2rem; font-weight: 700; color: #1e1a16; margin-bottom: 16px; line-height: 1.35; }
    .ab-desc { font-family: 'Amiri', serif; font-size: 1.05rem; color: #555; line-height: 2; margin-bottom: 28px; }
    .ab-stats {
      display: grid; grid-template-columns: repeat(3, 1fr);
      background: #1e1a16; border-radius: 12px; padding: 24px 16px;
      margin-bottom: 28px; gap: 0;
    }
    .ab-stat { text-align: center; padding: 0 8px; border-left: 1px solid rgba(255,255,255,.08); }
    .ab-stat:last-child { border-left: none; }
    .ab-stat strong { display: block; font-family: 'Poppins', sans-serif; font-size: 1.7rem; font-weight: 700; color: #d9dbbd; line-height: 1; }
    .ab-stat-unit { font-family: 'Poppins', sans-serif; font-size: .78rem; color: #666; display: block; margin: 3px 0; }
    .ab-stat-label { font-family: 'Amiri', serif; font-size: .88rem; color: #aaa; }
    .ab-divider { height: 1px; background: #e0d8cc; margin-bottom: 24px; }
    .ab-features { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 28px; }
    .ab-feat { border-right: 3px solid #d9dbbd; padding-right: 14px; }
    .ab-feat h4 { font-family: 'Amiri', serif; font-size: 1.05rem; color: #1e1a16; margin-bottom: 6px; }
    .ab-feat p { font-family: 'Poppins', sans-serif; font-size: .9rem; color: #666; line-height: 1.7; }
    .ab-trust { display: flex; gap: 20px; flex-wrap: wrap; }
    .ab-trust-item { display: flex; align-items: center; gap: 8px; font-family: 'Poppins', sans-serif; font-size: .88rem; color: #555; }
    .ab-trust-item svg { width: 16px; height: 16px; fill: #d9dbbd; flex-shrink: 0; }

    /* ===================================================
       ABOUT US — OPTION C (dark bento grid)
       =================================================== */
    .aboutus-c { background: var(--heritage-bg); padding: 90px 24px; position: relative; }
    .ac-header { text-align: center; max-width: 680px; margin: 0 auto 52px; }
    .ac-tag { display: block; font-family: 'Poppins', sans-serif; font-size: .875rem; letter-spacing: 4px; text-transform: uppercase; color: #d9dbbd; margin-bottom: 14px; }
    .ac-title { font-family: 'Amiri', serif; font-size: 2.4rem; font-weight: 700; color: #fff; margin-bottom: 14px; }
    .ac-desc { font-family: 'Amiri', serif; font-size: 1.05rem; color: #c8bba0; line-height: 2; }
    .ac-grid { max-width: 1440px; margin: 0 auto; display: grid; grid-template-columns: 1.1fr 1fr 1fr; grid-template-rows: auto auto auto; gap: 14px; }
    .ac-img-main { grid-row: span 3; border-radius: 14px; overflow: hidden; min-height: 500px; }
    .ac-img-main img { width: 100%; height: 100%; object-fit: cover; display: block; }
    .ac-stat-card {
      background: var(--heritage-mid); border: 1px solid rgba(217,219,189,.15);
      border-radius: 14px; padding: 28px 20px; display: flex; flex-direction: column;
      align-items: center; justify-content: center; text-align: center; gap: 4px;
      transition: border-color .25s;
    }
    .ac-stat-card:hover { border-color: rgba(217,219,189,.45); }
    .ac-stat-num { font-family: 'Poppins', sans-serif; font-size: 2.2rem; font-weight: 700; color: #d9dbbd; line-height: 1; }
    .ac-stat-unit { font-family: 'Poppins', sans-serif; font-size: .78rem; color: #666; }
    .ac-stat-label { font-family: 'Amiri', serif; font-size: .9rem; color: #ccc; }
    .ac-feat-card {
      background: var(--heritage-mid); border: 1px solid rgba(217,219,189,.12);
      border-radius: 14px; padding: 22px 20px; transition: border-color .25s, background .25s;
    }
    .ac-feat-card:hover { border-color: #d9dbbd; background: rgba(217,219,189,.06); }
    .ac-feat-num { font-family: 'Cormorant Garamond', serif; font-size: 2.6rem; font-weight: 700; color: rgba(217,219,189,.2); line-height: 1; margin-bottom: 6px; }
    .ac-feat-title { font-family: 'Amiri', serif; font-size: 1.1rem; color: #fff; margin-bottom: 6px; }
    .ac-feat-desc { font-family: 'Poppins', sans-serif; font-size: 12px; color: #888; line-height: 1.7; }
    .ac-trust {
      grid-column: 1 / -1; background: rgba(217,219,189,.07);
      border: 1px solid rgba(217,219,189,.2); border-radius: 14px;
      padding: 22px 36px; display: flex; justify-content: space-around;
      align-items: center; flex-wrap: wrap; gap: 16px;
    }
    .ac-trust-item { display: flex; align-items: center; gap: 14px; }
    .ac-trust-icon { width: 42px; height: 42px; border-radius: 50%; background: rgba(217,219,189,.12); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
    .ac-trust-icon svg { width: 20px; height: 20px; fill: #d9dbbd; }
    .ac-trust-text h4 { font-family: 'Amiri', serif; font-size: 1rem; color: #fff; }
    .ac-trust-text p { font-family: 'Poppins', sans-serif; font-size: 11px; color: #888; }

    /* ===================================================
       VALUES
       =================================================== */
    .values-section { background: var(--heritage-bg); padding: 0; }
    .values-header {
      text-align: center;
      padding: 70px 24px 56px;
      border-bottom: 1px solid rgba(217,219,189,.18);
    }
    .values-header .section-h2 { color: var(--seif-sand); }
    .values-header .section-sub { color: #7a6e5c; }
    .values-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
    .value-card {
      padding: 56px 40px 50px;
      border-right: 1px solid rgba(217,219,189,.15);
      position: relative;
      text-align: center;
      transition: background .35s;
    }
    .value-card:first-child { border-right: none; }
    .value-card::before {
      content: '';
      position: absolute;
      top: 0; right: 0; left: 0;
      height: 3px;
      background: var(--seif-red);
      transform: scaleX(0);
      transform-origin: right;
      transition: transform .4s ease;
    }
    .value-card:hover { background: rgba(139,32,32,.05); }
    .value-card:hover::before { transform: scaleX(1); }
    .value-icon {
      width: 80px; height: 80px;
      border-radius: 50%;
      border: 1px solid rgba(217,219,189,.35);
      display: flex; align-items: center; justify-content: center;
      margin: 0 auto 28px;
      transition: border-color .3s, background .3s;
    }
    .value-card:hover .value-icon { border-color: var(--seif-red); background: rgba(196,18,48,.07); }
    .value-icon svg { width: 36px; height: 36px; fill: none; stroke: var(--seif-gold); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
    .value-name { color: var(--seif-sand); font-size: 1.35rem; font-weight: 700; margin-bottom: 16px; font-family: 'Amiri', serif; }
    .value-text { color: #7a6e5c; font-size: .97rem; line-height: 2; }

    /* ===================================================
       TIMELINE
       =================================================== */
    .timeline-section { background: var(--heritage-old); padding: 80px 24px; overflow: hidden; }
    .timeline-inner { max-width: 1440px; margin: 0 auto; text-align: center; }
    .timeline-header { text-align: center; margin-bottom: 64px; }
    .timeline-header .section-h2 { color: var(--seif-sand); font-family: 'Amiri', serif; }
    .tl-intro { color: var(--seif-sand); font-family: 'Amiri', serif; font-size: 1.1rem; line-height: 2; max-width: 860px; margin: 0 auto 48px; text-align: center; }
    .tl-track { position: relative; padding-top: 20px; }
    .tl-line {
      position: absolute;
      top: 27px; right: 0; left: 0;
      height: 1px;
      background: linear-gradient(to left, transparent, rgba(217,219,189,.4) 20%, rgba(217,219,189,.4) 80%, transparent);
    }
    .tl-items { display: flex; flex-direction: row; justify-content: center; gap: 0; width: 100%; }
    .tl-item { text-align: center; padding: 0 12px; position: relative; }
    .tl-dot-wrap { display: flex; justify-content: center; margin-bottom: 24px; position: relative; z-index: 2; }
    .tl-dot { width: 16px; height: 16px; border-radius: 50%; background: var(--seif-red); box-shadow: 0 0 0 5px rgba(196,18,48,.15); }
    .tl-year { color: var(--seif-red); font-size: 1.5rem; font-weight: 700; font-family: 'Cormorant Garamond', serif; display: block; margin-bottom: 10px; }
    .tl-title { color: var(--seif-sand); font-family: 'Amiri', serif; font-size: 1.15rem; font-weight: 700; margin-bottom: 8px; }
    .tl-desc { color: #a09080; font-size: .93rem; line-height: 1.8; font-family: 'Amiri', serif; }

    /* ===================================================
       VISION / MISSION
       =================================================== */
    .vision-section { background: var(--heritage-bg); }
    .vision-grid { display: grid; grid-template-columns: 1fr 1fr; min-height: 400px; }
    .vision-panel { padding: 70px 56px; position: relative; overflow: hidden; }
    .vision-panel--v { background: var(--heritage-mid); }
    .vision-panel--m { background: var(--heritage-bg); border-right: 1px solid rgba(217,219,189,.2); }
    .vision-panel::before { content: ''; position: absolute; top: 0; right: 0; width: 3px; height: 60px; background: var(--seif-red); }
    .vision-panel--m::before { right: auto; left: 0; }
    .vision-num { font-family: 'Cormorant Garamond', serif; font-size: 5rem; font-weight: 700; color: rgba(196,18,48,.07); line-height: 1; margin: 0 0 -28px; display: block; }
    .vision-label { color: var(--seif-red); font-size: .875rem; letter-spacing: 4px; font-family: 'Poppins', sans-serif; display: block; margin-bottom: 18px; }
    .vision-title { color: var(--seif-sand); font-size: 1.9rem; font-weight: 700; margin-bottom: 22px; line-height: 1.3; font-family: 'Amiri', serif; }
    .vision-text { color: #7a6e5c; font-size: .97rem; line-height: 2; }

    /* ===================================================
       FEATURED PROJECTS
       =================================================== */
    .projects-section {
      background: #d9dbbd;
      padding: 80px 24px;
    }
    .projects-inner {
      max-width: 1440px;
      margin: 0 auto;
    }
    .projects-header {
      text-align: center;
      margin-bottom: 52px;
    }
    .projects-tag {
      display: inline-block;
      font-family: 'Poppins', sans-serif;
      font-size: 1rem;
      letter-spacing: 4px;
      text-transform: uppercase;
      color: #5e4b1c;
      margin-bottom: 12px;
    }
    .projects-heading {
      font-family: 'Amiri', serif;
      font-size: clamp(1.8rem, 3.5vw, 2.8rem);
      color: #1e1a16;
      font-weight: 700;
      margin-bottom: 12px;
    }
    .projects-sub {
      font-family: 'Poppins', sans-serif;
      font-size: 15px;
      color: #3a3228;
    }
    .projects-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
    }
    .project-card {
      position: relative;
      border-radius: 12px;
      overflow: hidden;
      cursor: pointer;
      aspect-ratio: 4/3;
    }
    .project-card-img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
      transition: transform .5s ease;
    }
    .project-card:hover .project-card-img { transform: scale(1.06); }
    .project-card-overlay {
      position: absolute;
      inset: 0;
      background: linear-gradient(to top, rgba(10,6,2,.95) 0%, rgba(10,6,2,.6) 55%, rgba(10,6,2,.1) 100%);
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      padding: 24px 20px;
      opacity: 0;
      transform: translateY(12px);
      transition: opacity .35s ease, transform .35s ease;
    }
    .project-card:hover .project-card-overlay {
      opacity: 1;
      transform: translateY(0);
    }
    .project-client-badge {
      display: inline-flex;
      align-items: center;
      background: rgba(94,75,28,.75);
      border: 1px solid #d9b87c;
      border-radius: 20px;
      padding: 3px 10px;
      font-family: 'Poppins', sans-serif;
      font-size: .72rem;
      color: #d9b87c;
      width: fit-content;
      margin-bottom: 10px;
    }
    .project-card-title {
      font-family: 'Amiri', serif;
      font-size: 1.1rem;
      color: #fff;
      font-weight: 700;
      line-height: 1.5;
      margin-bottom: 8px;
    }
    .project-card-desc {
      font-family: 'Poppins', sans-serif;
      font-size: .78rem;
      color: #ccc;
      line-height: 1.6;
      margin-bottom: 12px;
    }
    .project-dates {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }
    .project-date-pill {
      font-family: 'Poppins', sans-serif;
      font-size: .72rem;
      padding: 3px 10px;
      border-radius: 6px;
      background: rgba(255,255,255,.1);
      border: 1px solid rgba(255,255,255,.15);
      color: #ddd;
      display: flex;
      align-items: center;
      gap: 4px;
    }
    .project-date-pill span { color: #d9b87c; font-weight: 600; }
    @media (max-width: 900px) {
      .projects-grid { grid-template-columns: 1fr 1fr; }
    }
    @media (max-width: 600px) {
      .projects-grid { grid-template-columns: 1fr; }
      .project-card { aspect-ratio: 16/9; }
      .project-card-overlay { opacity: 1; transform: none; }
    }

    /* ===================================================
       PHOTO GALLERY — category carousel
       =================================================== */
    .gallery-section {
      background: #f0ece6;
      padding: 80px 0 60px;
      overflow: hidden;
    }
    .gallery-inner { max-width: 1440px; margin: 0 auto; }
    .gallery-header { text-align: center; margin-bottom: 40px; padding: 0 24px; }
    .gallery-tag {
      display: inline-block;
      font-family: 'Poppins', sans-serif;
      font-size: 1rem;
      letter-spacing: 4px;
      text-transform: uppercase;
      color: #5e4b1c;
      margin-bottom: 12px;
    }
    .gallery-heading {
      font-family: 'Amiri', serif;
      font-size: clamp(1.8rem, 3.5vw, 2.8rem);
      color: #1e1a16;
      font-weight: 700;
      margin-bottom: 10px;
    }
    .gallery-heading-line {
      display: block;
      width: 60px; height: 3px;
      background: var(--seif-gold);
      margin: 0 auto;
      border-radius: 2px;
    }
    /* Filter tabs */
    .gallery-filters {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      justify-content: center;
      padding: 0 24px;
      margin-bottom: 44px;
    }
    .gf-tab {
      background: #fff;
      border: 1px solid #d4ccc2;
      color: #555;
      font-family: 'Amiri', serif;
      font-size: .95rem;
      padding: 9px 22px;
      border-radius: 100px;
      cursor: pointer;
      transition: border-color .2s, color .2s, background .2s;
      white-space: nowrap;
    }
    .gf-tab:hover { border-color: var(--seif-gold); color: #1e1a16; }
    .gf-tab.active {
      background: var(--heritage-bg);
      border-color: var(--heritage-bg);
      color: var(--seif-gold);
    }
    /* Carousel */
    .gc-wrap { position: relative; }
    .gc-arrow {
      position: absolute;
      top: 50%; transform: translateY(-52%);
      z-index: 10;
      width: 52px; height: 52px;
      border-radius: 50%;
      background: #1e1a16;
      border: 2px solid rgba(217,219,189,.35);
      color: #d9dbbd;
      cursor: pointer;
      display: flex; align-items: center; justify-content: center;
      transition: background .2s, border-color .2s, color .2s;
      flex-shrink: 0;
    }
    .gc-arrow:hover { background: var(--seif-gold); color: #1e1a16; border-color: var(--seif-gold); }
    .gc-arrow svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
    .gc-prev { left: 20px; }
    .gc-next { right: 20px; }
    .gc-viewport { overflow: hidden; width: 100%; }
    .gc-track {
      display: flex;
      align-items: center;
      transition: transform .5s cubic-bezier(.4,0,.2,1);
      will-change: transform;
    }
    .gc-track.single { justify-content: center; transform: none !important; }
    .gc-slide {
      flex: 0 0 68%;
      padding: 0 14px;
      transition: transform .4s ease, opacity .4s ease, filter .4s ease;
      transform: scale(.87);
      opacity: .42;
      filter: blur(2px);
      cursor: pointer;
    }
    .gc-slide.active { transform: scale(1); opacity: 1; filter: none; }
    .gc-slide.gc-hidden { display: none; }
    .gc-slide img {
      width: 100%; height: 500px;
      object-fit: cover;
      border-radius: 14px;
      display: block;
      pointer-events: none;
    }
    .gc-slide-label {
      text-align: center;
      font-family: 'Amiri', serif;
      font-size: .95rem;
      color: #999;
      margin-top: 14px;
      min-height: 1.4em;
      transition: color .3s;
    }
    .gc-slide.active .gc-slide-label { color: #1e1a16; font-weight: 700; }
    /* Footer */
    .gc-footer {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 22px;
      margin-top: 30px;
      padding: 0 24px;
    }
    .gc-counter { font-family: 'Poppins', sans-serif; font-size: 13px; color: #aaa; min-width: 50px; text-align: center; }
    .gc-counter strong { color: #1e1a16; font-size: 17px; }
    .gc-dots { display: flex; gap: 7px; align-items: center; flex-wrap: wrap; justify-content: center; }
    .gc-dot { width: 8px; height: 8px; border-radius: 50%; background: #c8c0b4; cursor: pointer; transition: background .2s, transform .2s; flex-shrink: 0; }
    .gc-dot.active { background: var(--seif-gold); transform: scale(1.35); }
    @media (max-width: 768px) {
      .gc-slide { flex: 0 0 82%; }
      .gc-slide img { height: 280px; }
      .gc-prev { left: 6px; }
      .gc-next { right: 6px; }
    }
    /* Lightbox */
    .lightbox {
      display: none;
      position: fixed;
      inset: 0;
      background: rgba(0,0,0,.92);
      z-index: 9999;
      align-items: center;
      justify-content: center;
    }
    .lightbox.open { display: flex; }
    .lightbox img { max-width: 90vw; max-height: 85vh; border-radius: 8px; object-fit: contain; }
    .lightbox-close {
      position: absolute;
      top: 20px; right: 24px;
      color: #fff; font-size: 36px;
      cursor: pointer; line-height: 1;
      background: none; border: none;
    }

    /* ===================================================
       CLIENTS  (El-Seif dark logo bar)
       =================================================== */
    .clients-section { background: #f7f4f0; padding: 70px 24px 80px; border-top: 4px solid var(--seif-red); }
    .clients-inner { max-width: 1440px; margin: 0 auto; }
    .clients-heading {
      text-align: center;
      font-family: 'Amiri', serif;
      font-size: clamp(1.8rem, 3.5vw, 2.8rem);
      font-weight: 700;
      color: #1e1a16;
      margin-bottom: 8px;
    }
    .clients-heading-line {
      display: block;
      width: 60px;
      height: 3px;
      background: var(--seif-red);
      margin: 10px auto 48px;
      border-radius: 2px;
    }

    .clients-row {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 20px;
    }
    .clients-row .client-card {
      background: #fff;
      border: 1px solid #e8e0d4;
      border-radius: 10px;
      padding: 24px 36px;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: border-color .2s, box-shadow .2s, transform .2s;
      width: calc(25% - 15px);
      min-width: 200px;
      box-sizing: border-box;
    }
    .clients-row .client-card:hover {
      border-color: var(--seif-gold);
      box-shadow: 0 4px 16px rgba(0,0,0,.1);
      transform: translateY(-2px);
    }
    .clients-row img { height: 90px; width: auto; object-fit: contain; filter: none; opacity: 1; display: block; margin: 0 auto; }
    @media (max-width: 1024px) {
      .clients-row .client-card { width: calc(50% - 10px); }
    }
    @media (max-width: 540px) {
      .clients-row .client-card { width: calc(50% - 10px); min-width: unset; }
    }

    /* ===================================================
       FOOTER  (El-Seif multi-column dark footer)
       =================================================== */
    .site-footer {
      background: #1a1a1a;
      color: #bbb;
      padding: 64px 24px 0;
    }
    .footer-inner {
      max-width: 900px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 48px;
      padding-bottom: 48px;
      border-bottom: 1px solid rgba(255,255,255,.08);
    }
    .footer-logo { display: flex; align-items: center; justify-content: center; margin-bottom: 18px; }
    .footer-logo img { height: 60px; width: auto; object-fit: contain; background: #fff; border-radius: 6px; padding: 6px 14px; }
    .footer-about { text-align: center; }
    .footer-about p { font-size: .9rem; line-height: 1.9; color: #888; margin-bottom: 20px; }
    .footer-socials { justify-content: center; }
    .footer-socials { display: flex; gap: 12px; }
    .footer-social-btn {
      width: 36px; height: 36px;
      border-radius: 50%;
      border: 1px solid rgba(255,255,255,.15);
      display: flex; align-items: center; justify-content: center;
      color: #888;
      font-size: 13px;
      font-family: 'Poppins', sans-serif;
      font-weight: 700;
      transition: background .2s, border-color .2s, color .2s;
    }
    .footer-social-btn:hover { background: var(--seif-red); border-color: var(--seif-red); color: #fff; }

    .footer-col h4 { color: #fff; font-family: 'Poppins', sans-serif; font-size: 14px; font-weight: 600; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 2px solid var(--seif-red); display: inline-block; }
    .footer-links { list-style: none; }
    .footer-links li { margin-bottom: 10px; }
    .footer-links a {
      color: #888;
      font-size: .88rem;
      font-family: 'Poppins', sans-serif;
      transition: color .2s, padding-right .2s;
      display: flex;
      align-items: center;
      gap: 8px;
    }
    .footer-links a::before { content: '‹'; color: var(--seif-red); font-size: 16px; }
    [dir="ltr"] .footer-links a::before { content: '›'; }
    .footer-links a:hover { color: #fff; padding-right: 6px; }

    .footer-contact-list { list-style: none; }
    .footer-contact-list li { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 14px; font-size: .88rem; color: #888; font-family: 'Poppins', sans-serif; }
    .footer-contact-list svg { width: 16px; height: 16px; fill: var(--seif-gold); flex-shrink: 0; margin-top: 2px; }


    /* Footer bottom bar */
    .footer-bottom {
      max-width: 900px;
      margin: 0 auto;
      padding: 18px 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .footer-bottom p { font-size: 12px; color: #555; font-family: 'Poppins', sans-serif; }
    .footer-bottom p a { color: var(--seif-gold); }
    .footer-bottom p a:hover { color: #fff; }

    /* ===================================================
       RESPONSIVE
       =================================================== */
    @media (max-width: 1024px) {
      .footer-inner { grid-template-columns: 1fr 1fr; }
      .services-grid { grid-template-columns: repeat(2, 1fr); }
      .hero-container { grid-template-columns: 1fr; gap: 40px; }
      .hero-image { order: -1; max-width: 480px; margin: 0 auto; }
      .hero-btns { justify-content: center; }
      .hero-desc { margin-left: 0; }
      .aboutus-inner { grid-template-columns: 1fr; }
      .ab-inner { grid-template-columns: 1fr; gap: 36px; }
      .vision-grid { grid-template-columns: 1fr; }
      .vision-panel--m { border-right: none; border-top: 1px solid rgba(217,219,189,.2); }
      .trust-grid, .counters-grid { grid-template-columns: 1fr; }
      .values-grid { grid-template-columns: 1fr; }
      .value-card { border-right: none; border-bottom: 1px solid rgba(217,219,189,.15); }
      .achievements-grid { grid-template-columns: 1fr 1fr; }
    }
    @media (max-width: 768px) {
      .main-nav { display: none; flex-direction: column; position: absolute; top: 72px; left: 0; right: 0; background: var(--seif-nav); padding: 16px; gap: 0; }
      .main-nav.open { display: flex; }
      .nav-dropdown { display: none; position: static; opacity: 1; pointer-events: all; transform: none; box-shadow: none; border-top: none; border-right: 3px solid var(--seif-red); margin-top: 4px; }
      .nav-item.open > .nav-dropdown { display: block; }
      .hamburger { display: flex; }
      .header-cta { display: none; }
      .site-logo img { height: 52px; }
      .top-bar { display: none; }
      .footer-inner { grid-template-columns: 1fr; }
      .tl-items { flex-wrap: wrap; }
      .tl-item { width: 50%; }
      .tl-line { display: none; }
      .services-grid { grid-template-columns: 1fr; }
      .achievements-grid { grid-template-columns: 1fr; }
      .about-features { grid-template-columns: 1fr; }
      /* A) Hero alt min-height */
      .hero-alt-section { height: calc(100vh - 72px); min-height: 500px; }
      /* B) Vision/Mission grid */
      .vision-grid { grid-template-columns: 1fr; }
      .vision-panel { padding: 40px 24px; }
      /* C) Values grid */
      .values-grid { grid-template-columns: 1fr 1fr; }
      /* D) About section */
      .aboutus-b { padding: 56px 20px; }
      .ab-title { font-size: 1.6rem; }
      .ab-photo-main { height: 220px; }
      .ab-photos-row img { height: 130px; }
      .ab-stats { grid-template-columns: repeat(3, 1fr); }
      .ab-features { grid-template-columns: 1fr 1fr; }
      .ab-trust { gap: 12px; }
      /* E) Stat units font size */
      .ab-stat-unit { font-size: .82rem; }
      .ac-stat-unit { font-size: .82rem; }
    }

    /* =====================================================
       LTR (ENGLISH) FULL-PAGE FLIP OVERRIDES
       ===================================================== */

    /* Body font */
    [dir="ltr"] body { direction: ltr; font-family: 'Poppins', sans-serif; }

    /* Nav dropdown: opens to left in LTR */
    [dir="ltr"] .nav-dropdown { right: auto; left: 0; }
    [dir="ltr"] .nav-dropdown a { transition: background .15s, color .15s, padding-left .15s; }
    [dir="ltr"] .nav-dropdown a:hover { padding-right: 20px; padding-left: 26px; }

    /* Mobile nav dropdown: accent border flips side */
    @media (max-width: 768px) {
      [dir="ltr"] .nav-dropdown { border-right: none; border-left: 3px solid var(--seif-red); }
    }

    /* Service card hover bar: right → left */
    [dir="ltr"] .service-card::before { right: auto; left: 0; }

    /* About-B feature accent border: right → left */
    [dir="ltr"] .ab-feat { border-right: none; padding-right: 0; border-left: 3px solid #d9dbbd; padding-left: 14px; }

    /* About-B stats separator: left border → right border */
    [dir="ltr"] .ab-stat { border-left: none; border-right: 1px solid rgba(255,255,255,.08); }
    [dir="ltr"] .ab-stat:last-child { border-right: none; }

    /* Values grid: right border → left border */
    [dir="ltr"] .value-card { border-right: none; border-left: 1px solid rgba(217,219,189,.15); }
    [dir="ltr"] .value-card:first-child { border-left: none; }
    [dir="ltr"] .value-card::before { transform-origin: left; }

    /* Vision / Mission panels */
    [dir="ltr"] .vision-panel--m { border-right: none; border-left: 1px solid rgba(217,219,189,.2); }
    [dir="ltr"] .vision-panel--v::before { right: auto; left: 0; }
    [dir="ltr"] .vision-panel--m::before { left: auto; right: 0; }

    /* Footer links hover indent flips */
    [dir="ltr"] .footer-links a { transition: color .2s, padding-left .2s; }
    [dir="ltr"] .footer-links a:hover { padding-right: 0; padding-left: 6px; }

    /* FAB side panel */
    [dir="ltr"] .fab-nav-panel { left: 0; right: auto; }

    /* ===================================================
       FLOATING ACTION BUTTONS (FAB)
       =================================================== */
    .fab-group {
      position: fixed;
      bottom: 28px;
      left: 28px;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 12px;
      z-index: 999;
      direction: ltr;
    }
    .fab-btn {
      width: 52px;
      height: 52px;
      border-radius: 50%;
      border: none;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 4px 14px rgba(0,0,0,.35);
      transition: transform .2s, box-shadow .2s;
      background: #1e1e1e;
      flex-shrink: 0;
    }
    .fab-btn:hover {
      transform: scale(1.1);
      box-shadow: 0 6px 20px rgba(0,0,0,.5);
    }
    .fab-btn svg { width: 22px; height: 22px; }
    /* Speed-dial wrapper */
    .fab-speed-dial { display: flex; flex-direction: column; align-items: center; gap: 12px; }
    .fab-speed-children {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
      opacity: 0;
      transform: translateY(12px);
      pointer-events: none;
      transition: opacity .25s ease, transform .25s ease;
    }
    .fab-speed-dial:hover .fab-speed-children {
      opacity: 1;
      transform: translateY(0);
      pointer-events: all;
    }
    .fab-child {
      width: 44px;
      height: 44px;
      border-radius: 50%;
      border: none;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 4px 12px rgba(0,0,0,.3);
      transition: transform .2s;
      background: #1e1e1e;
    }
    .fab-child:hover { transform: scale(1.12); }
    .fab-child svg { width: 20px; height: 20px; }

    /* Nav panel */
    .fab-nav-panel {
      position: absolute;
      bottom: 64px;
      left: 0;
      background: #1e1e1e;
      border: 1px solid rgba(217,219,189,.25);
      border-radius: 12px;
      padding: 10px 0;
      min-width: 190px;
      box-shadow: 0 8px 32px rgba(0,0,0,.5);
      opacity: 0;
      transform: translateY(10px) scale(.97);
      pointer-events: none;
      transition: opacity .25s, transform .25s;
    }
    .fab-nav-panel.open {
      opacity: 1;
      transform: translateY(0) scale(1);
      pointer-events: all;
    }
    .fab-nav-panel a {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 9px 18px;
      font-family: 'Amiri', serif;
      font-size: .95rem;
      color: #ccc;
      transition: background .15s, color .15s;
      white-space: nowrap;
    }
    .fab-nav-panel a:hover { background: rgba(217,219,189,.1); color: #d9dbbd; }
    .fab-nav-panel a svg { width: 14px; height: 14px; fill: #d9dbbd; flex-shrink: 0; }
    .fab-nav-panel .panel-divider {
      height: 1px;
      background: rgba(255,255,255,.07);
      margin: 5px 0;
    }
    .fab-nav-wrap { position: relative; }

    /* ===================================================
       ADDITIONAL MOBILE RESPONSIVE FIXES — v3.5
       =================================================== */

    /* C2) Values grid single column on very small screens */
    @media (max-width: 540px) {
      .values-grid { grid-template-columns: 1fr; }
    }

    /* D2) About features and stats on very small screens */
    @media (max-width: 540px) {
      .ab-features { grid-template-columns: 1fr; }
      .ab-stats { grid-template-columns: repeat(3, 1fr); padding: 16px 8px; }
      .ab-stat { padding: 0 4px; }
      .ab-stat strong { font-size: 1.1rem; }
      .ab-stat-label { font-size: .75rem; }
    }

    /* F) Timeline single column on small screens */
    @media (max-width: 600px) {
      .tl-items { flex-direction: column; align-items: center; }
      .tl-item { width: 100%; }
    }

    /* G) Project card image height on small screens */
    @media (max-width: 600px) {
      .project-card-img { height: 180px; }
    }

    /* H) FAB panel on small screens */
    @media (max-width: 480px) {
      .fab-nav-panel { min-width: 160px; }
      .fab-group { bottom: 16px; left: 16px; }
    }

    /* I) Hero dots hidden on small screens */
    @media (max-width: 480px) {
      .hero-bg-dots { display: none; }
    }

    /* J) Hero stats bar — 2×2 grid on mobile */
    @media (max-width: 600px) {
      .hero-alt-stats {
        display: grid;
        grid-template-columns: 1fr 1fr;
        padding: 16px 20px;
        gap: 12px 0;
      }
      .hero-alt-stat { padding: 8px 12px; }
      .hero-alt-stat-num { font-size: 1.3rem; }
      .hero-alt-stat-label { font-size: .8rem; }
      .hero-alt-stat-div { display: none; }
    }
