    /* ─── TOKENS ─────────────────────────────────────────── */
    :root {
      --navy:      #0A1628;
      --navy-mid:  #122040;
      --amber:     #F5A623;
      --amber-dim: #D4891A;
      --white:     #FFFFFF;
      --off-white: #F8F7F4;
      --slate:     #4A5568;
      --slate-lt:  #8A9AB5;
      --border:    rgba(245,166,35,0.18);
      --font-head: 'Rajdhani', sans-serif;
      --font-body: 'Inter', sans-serif;
      --radius:    6px;
      --transition: 0.3s ease;
    }

    /* ─── RESET ──────────────────────────────────────────── */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      font-family: var(--font-body);
      background: var(--white);
      color: var(--navy);
      line-height: 1.6;
    }
    a { text-decoration: none; color: inherit; }
    img { max-width: 100%; display: block; }
    ul { list-style: none; }

    /* ─── NAV ────────────────────────────────────────────── */
    #navbar {
      position: fixed;
      top: 0; left: 0; right: 0;
      z-index: 1000;
      background: #0a1628;
      transition: background var(--transition), box-shadow var(--transition);
      padding: 0 5%;
    }
    #navbar.scrolled {
      background: var(--navy);
      box-shadow: 0 2px 20px rgba(0,0,0,0.4);
    }
    .nav-inner {
      max-width: 1200px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      height: 72px;
    }
    .nav-logo {
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .nav-logo .logo-mark {
      width: 40px; height: 40px;
      background: var(--amber);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }
    .nav-logo .logo-mark svg { width: 22px; height: 22px; }
    .nav-logo .logo-text {
      font-family: var(--font-head);
      font-weight: 700;
      font-size: 1.25rem;
      color: var(--white);
      line-height: 1.1;
    }
    .nav-logo .logo-text span {
      display: block;
      font-size: 0.65rem;
      font-weight: 400;
      color: var(--amber);
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }
    .nav-links {
      display: flex;
      gap: 2rem;
      align-items: center;
    }
    .nav-links a {
      font-family: var(--font-head);
      font-weight: 500;
      font-size: 0.95rem;
      color: rgba(255,255,255,0.85);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      position: relative;
      transition: color var(--transition);
    }
    .nav-links a::after {
      content: '';
      position: absolute;
      bottom: -4px; left: 0;
      width: 0; height: 2px;
      background: var(--amber);
      transition: width var(--transition);
    }
    .nav-links a:hover { color: var(--amber); }
    .nav-links a:hover::after { width: 100%; }
    .nav-cta {
      background: var(--amber);
      color: var(--navy) !important;
      padding: 8px 20px;
      border-radius: var(--radius);
      font-weight: 700 !important;
      transition: background var(--transition) !important;
    }
    .nav-cta::after { display: none !important; }
    .nav-cta:hover { background: var(--amber-dim) !important; color: var(--white) !important; }

    /* hamburger */
    .hamburger {
      display: none;
      flex-direction: column;
      gap: 5px;
      cursor: pointer;
      padding: 4px;
    }
    .hamburger span {
      display: block;
      width: 24px; height: 2px;
      background: var(--white);
      transition: var(--transition);
    }
    .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
    .hamburger.open span:nth-child(2) { opacity: 0; }
    .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

    /* mobile menu */
    .mobile-menu {
      display: none;
      position: fixed;
      top: 72px; left: 0; right: 0;
      background: var(--navy);
      padding: 1.5rem 5%;
      z-index: 999;
      border-top: 1px solid var(--border);
    }
    .mobile-menu.open { display: block; }
    .mobile-menu a {
      display: block;
      font-family: var(--font-head);
      font-size: 1.05rem;
      font-weight: 500;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.85);
      padding: 0.75rem 0;
      border-bottom: 1px solid var(--border);
      transition: color var(--transition);
    }
    .mobile-menu a:last-child { border-bottom: none; }
    .mobile-menu a:hover { color: var(--amber); }

    /* ─── HERO ───────────────────────────────────────────── */
    #home {
      position: relative;
      min-height: 100vh;
      background: var(--navy);
      display: flex;
      align-items: center;
      overflow: hidden;
    }

    /* Animated sun rays – signature element */
    .sun-rays {
      position: absolute;
      top: -10%;
      right: -8%;
      width: min(700px, 80vw);
      aspect-ratio: 1;
      pointer-events: none;
    }
    .sun-core {
      position: absolute;
      top: 50%; left: 50%;
      transform: translate(-50%, -50%);
      width: 28%;
      aspect-ratio: 1;
      background: radial-gradient(circle, #FFD770 0%, var(--amber) 60%, transparent 100%);
      border-radius: 50%;
      filter: blur(2px);
      animation: pulse-core 4s ease-in-out infinite;
    }
    @keyframes pulse-core {
      0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.9; }
      50% { transform: translate(-50%, -50%) scale(1.12); opacity: 1; }
    }
    .ray {
      position: absolute;
      top: 50%; left: 50%;
      width: 50%; height: 2px;
      transform-origin: 0 50%;
      background: linear-gradient(90deg, var(--amber) 0%, transparent 100%);
      opacity: 0.25;
      animation: spin-rays 18s linear infinite;
    }
    .ray:nth-child(odd) { animation-direction: reverse; opacity: 0.18; }
    @keyframes spin-rays { to { transform: rotate(360deg); } }
    /* Generate 16 rays */
    .ray:nth-child(1)  { transform: rotate(0deg); }
    .ray:nth-child(2)  { transform: rotate(22.5deg); }
    .ray:nth-child(3)  { transform: rotate(45deg); }
    .ray:nth-child(4)  { transform: rotate(67.5deg); }
    .ray:nth-child(5)  { transform: rotate(90deg); }
    .ray:nth-child(6)  { transform: rotate(112.5deg); }
    .ray:nth-child(7)  { transform: rotate(135deg); }
    .ray:nth-child(8)  { transform: rotate(157.5deg); }
    .ray:nth-child(9)  { transform: rotate(180deg); }
    .ray:nth-child(10) { transform: rotate(202.5deg); }
    .ray:nth-child(11) { transform: rotate(225deg); }
    .ray:nth-child(12) { transform: rotate(247.5deg); }
    .ray:nth-child(13) { transform: rotate(270deg); }
    .ray:nth-child(14) { transform: rotate(292.5deg); }
    .ray:nth-child(15) { transform: rotate(315deg); }
    .ray:nth-child(16) { transform: rotate(337.5deg); }

    /* solar panel grid in background */
    .panel-grid {
      position: absolute;
      bottom: 0; right: 0;
      width: min(560px, 55vw);
      height: min(340px, 40vw);
      opacity: 0.07;
      display: grid;
      grid-template-columns: repeat(6, 1fr);
      grid-template-rows: repeat(4, 1fr);
      gap: 4px;
      padding: 4px;
    }
    .panel-cell {
      background: var(--amber);
      border-radius: 2px;
      animation: cell-glow 3s ease-in-out infinite;
    }
    .panel-cell:nth-child(3n) { animation-delay: -1s; }
    .panel-cell:nth-child(5n) { animation-delay: -2s; }
    @keyframes cell-glow {
      0%, 100% { opacity: 0.6; }
      50% { opacity: 1; }
    }

    .hero-content {
      position: relative;
      z-index: 2;
      max-width: 1200px;
      margin: 0 auto;
      padding: 140px 5% 80px;
      width: 100%;
    }
    .hero-eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: var(--font-head);
      font-size: 0.8rem;
      font-weight: 600;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: var(--amber);
      margin-bottom: 1.5rem;
    }
    .hero-eyebrow::before {
      content: '';
      display: block;
      width: 28px; height: 2px;
      background: var(--amber);
    }
    .hero-h1 {
      font-family: var(--font-head);
      font-weight: 700;
      font-size: clamp(2.6rem, 6vw, 5rem);
      line-height: 1.05;
      color: var(--white);
      max-width: 700px;
      margin-bottom: 1.5rem;
    }
    .hero-h1 em {
      font-style: normal;
      color: var(--amber);
    }
    .hero-sub {
      font-size: 1.05rem;
      font-weight: 300;
      color: var(--slate-lt);
      max-width: 500px;
      margin-bottom: 2.5rem;
      line-height: 1.75;
    }
    .hero-actions {
      display: flex;
      gap: 1rem;
      flex-wrap: wrap;
      align-items: center;
    }
    .btn-primary {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: var(--amber);
      color: var(--navy);
      font-family: var(--font-head);
      font-weight: 700;
      font-size: 1rem;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      padding: 14px 30px;
      border-radius: var(--radius);
      transition: background var(--transition), transform 0.2s;
    }
    .btn-primary:hover {
      background: var(--amber-dim);
      color: var(--white);
      transform: translateY(-2px);
    }
    .btn-outline {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      border: 1.5px solid rgba(255,255,255,0.3);
      color: var(--white);
      font-family: var(--font-head);
      font-weight: 600;
      font-size: 1rem;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      padding: 14px 28px;
      border-radius: var(--radius);
      transition: border-color var(--transition), background var(--transition);
    }
    .btn-outline:hover {
      border-color: var(--amber);
      background: rgba(245,166,35,0.08);
      color: var(--amber);
    }
    .hero-stats {
      display: flex;
      gap: 2.5rem;
      margin-top: 4rem;
      padding-top: 2.5rem;
      border-top: 1px solid var(--border);
      flex-wrap: wrap;
    }
    .stat-item { line-height: 1.15; }
    .stat-num {
      font-family: var(--font-head);
      font-size: 2.2rem;
      font-weight: 700;
      color: var(--amber);
    }
    .stat-label {
      font-size: 0.78rem;
      color: var(--slate-lt);
      text-transform: uppercase;
      letter-spacing: 0.08em;
    }

    /* ─── SECTIONS SHARED ─────────────────────────────────── */
    .section {
      padding: 100px 5%;
    }
    .section-inner {
      max-width: 1200px;
      margin: 0 auto;
    }
    .section-tag {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: var(--font-head);
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--amber);
      margin-bottom: 1rem;
    }
    .section-tag::before {
      content: '';
      display: block;
      width: 20px; height: 2px;
      background: var(--amber);
    }
    .section-heading {
      font-family: var(--font-head);
      font-size: clamp(1.8rem, 3.5vw, 2.8rem);
      font-weight: 700;
      line-height: 1.15;
      color: var(--navy);
      margin-bottom: 1rem;
    }
    .section-heading.light { color: var(--white); }
    .section-sub {
      font-size: 1rem;
      color: var(--slate);
      line-height: 1.75;
    }
    .section-sub.light { color: var(--slate-lt); }

    /* ─── SERVICES ───────────────────────────────────────── */
    #services { background: var(--off-white); }
    .services-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap: 1.5rem;
      margin-top: 3.5rem;
    }
    .service-card {
      background: var(--white);
      border: 1px solid rgba(10,22,40,0.07);
      border-radius: 10px;
      padding: 2rem;
      transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
      position: relative;
      overflow: hidden;
    }
    .service-card::before {
      content: '';
      position: absolute;
      top: 0; left: 0;
      width: 3px; height: 0;
      background: var(--amber);
      transition: height var(--transition);
    }
    .service-card:hover { transform: translateY(-6px); box-shadow: 0 16px 40px rgba(10,22,40,0.1); border-color: transparent; }
    .service-card:hover::before { height: 100%; }
    .service-icon {
      width: 52px; height: 52px;
      background: rgba(245,166,35,0.12);
      border-radius: 10px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 1.25rem;
    }
    .service-icon svg { width: 26px; height: 26px; stroke: var(--amber); fill: none; stroke-width: 1.8; }
    .service-card h3 {
      font-family: var(--font-head);
      font-size: 1.15rem;
      font-weight: 700;
      color: var(--navy);
      margin-bottom: 0.6rem;
    }
    .service-card p {
      font-size: 0.9rem;
      color: var(--slate);
      line-height: 1.7;
    }
    .service-link {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      margin-top: 1rem;
      font-family: var(--font-head);
      font-size: 0.85rem;
      font-weight: 600;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: var(--amber);
      transition: gap var(--transition);
    }
    .service-link:hover { gap: 10px; }

    /* ─── WHY US ──────────────────────────────────────────── */
    #why-us {
      background: var(--navy);
    }
    .why-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 5rem;
      align-items: center;
      margin-top: 3.5rem;
    }
    .why-features { display: flex; flex-direction: column; gap: 1.75rem; }
    .why-feature {
      display: flex;
      gap: 1.25rem;
      align-items: flex-start;
    }
    .why-num {
      font-family: var(--font-head);
      font-size: 2.5rem;
      font-weight: 700;
      color: var(--border);
      line-height: 1;
      min-width: 56px;
      color: rgba(245,166,35,0.2);
    }
    .why-text h4 {
      font-family: var(--font-head);
      font-size: 1.1rem;
      font-weight: 700;
      color: var(--white);
      margin-bottom: 0.35rem;
    }
    .why-text p {
      font-size: 0.9rem;
      color: var(--slate-lt);
      line-height: 1.7;
    }
    .why-visual {
      position: relative;
      border-radius: 12px;
      overflow: hidden;
      background: var(--navy-mid);
      border: 1px solid var(--border);
      aspect-ratio: 4/5;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    /* Animated solar panel illustration */
    .panel-illustration {
      width: 85%;
      height: 85%;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(4, 1fr);
      gap: 6px;
    }
    .pi-cell {
      background: linear-gradient(135deg, #1a3a6e 0%, #0e2a52 100%);
      border-radius: 4px;
      border: 1px solid rgba(245,166,35,0.15);
      position: relative;
      overflow: hidden;
      animation: pi-shimmer 4s ease-in-out infinite;
    }
    .pi-cell::after {
      content: '';
      position: absolute;
      top: -100%; left: -100%;
      width: 50%; height: 50%;
      background: rgba(245,166,35,0.15);
      transform: rotate(45deg);
      animation: pi-sweep 4s ease-in-out infinite;
    }
    .pi-cell:nth-child(3n+1)::after { animation-delay: 0s; }
    .pi-cell:nth-child(3n+2)::after { animation-delay: -1.3s; }
    .pi-cell:nth-child(3n)::after   { animation-delay: -2.6s; }
    @keyframes pi-shimmer { 0%, 100% { border-color: rgba(245,166,35,0.1); } 50% { border-color: rgba(245,166,35,0.35); } }
    @keyframes pi-sweep { 0% { top: -100%; left: -100%; } 100% { top: 200%; left: 200%; } }
    .why-visual-label {
      position: absolute;
      bottom: 1.5rem; left: 50%;
      transform: translateX(-50%);
      background: rgba(10,22,40,0.85);
      border: 1px solid var(--border);
      border-radius: 30px;
      padding: 6px 18px;
      font-family: var(--font-head);
      font-size: 0.8rem;
      font-weight: 600;
      color: var(--amber);
      letter-spacing: 0.06em;
      text-transform: uppercase;
      white-space: nowrap;
    }

    /* ─── ONGOING PROJECT ─────────────────────────────────── */
    #ongoing {
      background: var(--white);
    }
    .project-strip {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      gap: 1.25rem;
      margin-top: 3rem;
    }
    .project-card {
      border: 1px solid rgba(10,22,40,0.08);
      border-radius: 10px;
      overflow: hidden;
      transition: box-shadow var(--transition), transform var(--transition);
    }
    .project-card:hover { box-shadow: 0 12px 36px rgba(10,22,40,0.1); transform: translateY(-4px); }
    .project-thumb {
      height: 180px;
      background: var(--navy-mid);
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }
    .project-thumb .thumb-icon { opacity: 0.25; }
    .project-thumb .thumb-icon svg { width: 80px; height: 80px; stroke: var(--amber); fill: none; stroke-width: 1; }
    .project-badge {
      position: absolute;
      top: 12px; right: 12px;
      background: var(--amber);
      color: var(--navy);
      font-family: var(--font-head);
      font-size: 0.7rem;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      padding: 4px 10px;
      border-radius: 20px;
    }
    .project-body { padding: 1.25rem 1.5rem; }
    .project-body h4 {
      font-family: var(--font-head);
      font-size: 1.05rem;
      font-weight: 700;
      color: var(--navy);
      margin-bottom: 0.35rem;
    }
    .project-body p {
      font-size: 0.85rem;
      color: var(--slate);
      line-height: 1.6;
    }
    .project-meta {
      display: flex;
      gap: 1rem;
      margin-top: 1rem;
      padding-top: 0.75rem;
      border-top: 1px solid rgba(10,22,40,0.07);
    }
    .meta-chip {
      font-family: var(--font-head);
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: var(--amber);
      background: rgba(245,166,35,0.1);
      padding: 3px 10px;
      border-radius: 20px;
    }

    /* ─── CLIENTS ─────────────────────────────────────────── */
    #clients { background: var(--off-white); }
    .clients-intro {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 4rem;
      align-items: start;
      margin-bottom: 3.5rem;
    }
    .testimonial-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      gap: 1.25rem;
    }
    .testimonial-card {
      background: var(--white);
      border-radius: 10px;
      padding: 1.75rem;
      border: 1px solid rgba(10,22,40,0.06);
      transition: box-shadow var(--transition);
    }
    .testimonial-card:hover { box-shadow: 0 8px 28px rgba(10,22,40,0.08); }
    .stars {
      display: flex;
      gap: 3px;
      margin-bottom: 1rem;
    }
    .stars span { color: var(--amber); font-size: 1rem; }
    .testimonial-card blockquote {
      font-size: 0.92rem;
      color: var(--slate);
      line-height: 1.75;
      font-style: italic;
      margin-bottom: 1.25rem;
    }
    .testimonial-author {
      display: flex;
      align-items: center;
      gap: 0.75rem;
    }
    .author-avatar {
      width: 38px; height: 38px;
      border-radius: 50%;
      background: var(--navy);
      display: flex;
      align-items: center;
      justify-content: center;
      font-family: var(--font-head);
      font-size: 1rem;
      font-weight: 700;
      color: var(--amber);
    }
    .author-info strong {
      display: block;
      font-family: var(--font-head);
      font-size: 0.9rem;
      font-weight: 700;
      color: var(--navy);
    }
    .author-info span {
      font-size: 0.78rem;
      color: var(--slate-lt);
    }

    /* ─── ABOUT US ────────────────────────────────────────── */
    #about { background: var(--navy); }
    .about-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 5rem;
      align-items: center;
    }
    .about-text .section-sub { margin-bottom: 2rem; margin-top: 1rem; }
    .about-list {
      display: flex;
      flex-direction: column;
      gap: 0.9rem;
    }
    .about-list li {
      display: flex;
      align-items: center;
      gap: 0.75rem;
      font-size: 0.93rem;
      color: rgba(255,255,255,0.8);
    }
    .about-list li::before {
      content: '';
      width: 8px; height: 8px;
      border-radius: 50%;
      background: var(--amber);
      flex-shrink: 0;
    }
    .cert-badges {
      display: flex;
      flex-wrap: wrap;
      gap: 0.75rem;
      margin-top: 2rem;
    }
    .cert-badge {
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 8px 16px;
      font-family: var(--font-head);
      font-size: 0.78rem;
      font-weight: 600;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: var(--slate-lt);
    }
    .about-numbers {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 1.5rem;
    }
    .about-num-card {
      background: var(--navy-mid);
      border: 1px solid var(--border);
      border-radius: 10px;
      padding: 1.75rem 1.5rem;
      text-align: center;
    }
    .about-num-card .num {
      font-family: var(--font-head);
      font-size: 2.5rem;
      font-weight: 700;
      color: var(--amber);
      line-height: 1;
    }
    .about-num-card .lbl {
      font-size: 0.8rem;
      color: var(--slate-lt);
      margin-top: 0.4rem;
      text-transform: uppercase;
      letter-spacing: 0.06em;
    }

    /* ─── CTA BAND ────────────────────────────────────────── */
    #cta-band {
      background: linear-gradient(135deg, var(--amber) 0%, var(--amber-dim) 100%);
      padding: 80px 5%;
      text-align: center;
    }
    #cta-band h2 {
      font-family: var(--font-head);
      font-size: clamp(1.8rem, 3vw, 2.5rem);
      font-weight: 700;
      color: var(--navy);
      margin-bottom: 0.75rem;
    }
    #cta-band p {
      font-size: 1rem;
      color: rgba(10,22,40,0.7);
      margin-bottom: 2rem;
    }
    .cta-actions { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; }
    .btn-dark {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: var(--navy);
      color: var(--white);
      font-family: var(--font-head);
      font-weight: 700;
      font-size: 1rem;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      padding: 14px 30px;
      border-radius: var(--radius);
      transition: background var(--transition), transform 0.2s;
    }
    .btn-dark:hover { background: var(--navy-mid); transform: translateY(-2px); }

    /* ─── CONTACT ─────────────────────────────────────────── */
    #contact { background: var(--white); }
    .contact-grid {
      display: grid;
      grid-template-columns: 1fr 1.4fr;
      gap: 5rem;
      margin-top: 3.5rem;
      align-items: start;
    }
    .contact-info { display: flex; flex-direction: column; gap: 1.5rem; }
    .contact-item {
      display: flex;
      gap: 1rem;
      align-items: flex-start;
    }
    .contact-icon {
      width: 44px; height: 44px;
      border-radius: 50%;
      background: rgba(245,166,35,0.1);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }
    .contact-icon svg { width: 20px; height: 20px; stroke: var(--amber); fill: none; stroke-width: 2; }
    .contact-item strong {
      display: block;
      font-family: var(--font-head);
      font-size: 0.8rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--slate-lt);
      margin-bottom: 0.25rem;
    }
    .contact-item a, .contact-item span {
      font-size: 0.95rem;
      color: var(--navy);
      display: block;
      line-height: 1.6;
      transition: color var(--transition);
    }
    .contact-item a:hover { color: var(--amber); }
    .contact-form {
      background: var(--off-white);
      border-radius: 12px;
      padding: 2.5rem;
    }
    .contact-form h3 {
      font-family: var(--font-head);
      font-size: 1.4rem;
      font-weight: 700;
      color: var(--navy);
      margin-bottom: 1.5rem;
    }
    .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
    .form-group { display: flex; flex-direction: column; gap: 0.4rem; margin-bottom: 1rem; }
    .form-group label {
      font-family: var(--font-head);
      font-size: 0.78rem;
      font-weight: 600;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: var(--slate);
    }
    .form-group input,
    .form-group select,
    .form-group textarea {
      width: 100%;
      padding: 11px 14px;
      border: 1.5px solid rgba(10,22,40,0.12);
      border-radius: var(--radius);
      font-family: var(--font-body);
      font-size: 0.93rem;
      color: var(--navy);
      background: var(--white);
      outline: none;
      transition: border-color var(--transition);
    }
    .form-group input:focus,
    .form-group select:focus,
    .form-group textarea:focus { border-color: var(--amber); }
    .form-group textarea { resize: vertical; min-height: 100px; }

    /* ─── FOOTER ──────────────────────────────────────────── */
    footer {
      background: var(--navy);
      color: rgba(255,255,255,0.6);
      padding: 60px 5% 28px;
    }
    .footer-grid {
      max-width: 1200px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1.8fr 1fr 1fr;
      gap: 3rem;
      padding-bottom: 3rem;
      border-bottom: 1px solid var(--border);
    }
    .footer-brand .nav-logo { margin-bottom: 1rem; }
    .footer-brand p {
      font-size: 0.88rem;
      line-height: 1.75;
      max-width: 300px;
    }
    .footer-col h5 {
      font-family: var(--font-head);
      font-size: 0.8rem;
      font-weight: 700;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--white);
      margin-bottom: 1.25rem;
    }
    .footer-col ul { display: flex; flex-direction: column; gap: 0.6rem; }
    .footer-col ul li a {
      font-size: 0.88rem;
      transition: color var(--transition);
    }
    .footer-col ul li a:hover { color: var(--amber); }
    .footer-bottom {
      max-width: 1200px;
      margin: 0 auto;
      padding-top: 1.5rem;
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 0.75rem;
    }
    .footer-bottom p { font-size: 0.8rem; }
    .footer-bottom a { color: var(--amber); }

    /* ─── RESPONSIVE ──────────────────────────────────────── */
    @media (max-width: 900px) {
      .nav-links { display: none; }
      .hamburger { display: flex; }
      .why-grid, .about-grid, .clients-intro, .contact-grid { grid-template-columns: 1fr; gap: 2.5rem; }
      .why-visual { aspect-ratio: 16/9; }
      .footer-grid { grid-template-columns: 1fr 1fr; }
    }
    @media (max-width: 640px) {
      .hero-stats { gap: 1.5rem; }
      .form-row { grid-template-columns: 1fr; }
      .footer-grid { grid-template-columns: 1fr; }
      .footer-bottom { flex-direction: column; text-align: center; }
      .about-numbers { grid-template-columns: 1fr 1fr; gap: 1rem; }
      .sun-rays { width: 70vw; }
      .section { padding: 70px 5%; }
    }
    @media (prefers-reduced-motion: reduce) {
      .ray, .sun-core, .panel-cell, .pi-cell, .pi-cell::after { animation: none; }
    }
	.fab-container{
  position: fixed;
  right: 20px;
  bottom: 120px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.fab-btn{
  width: 55px;
  height: 55px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 22px;
  text-decoration: none;
  box-shadow: 0 4px 10px rgba(0,0,0,0.3);
  transition: 0.3s;
}

.fab-btn:hover{
  transform: scale(1.1);
}

/* WhatsApp */
.whatsapp{
  background: #25D366;
}

/* Call */
.call{
  background: #007bff;
}

/* Enquiry */
.enquiry{
  background: #ff5722;
}

/* Enquiry Form Popup */
#enquiryBox{
  display:none;
  position:fixed;
  right:90px;
  bottom:120px;
  width:280px;
  background:#fff;
  padding:15px;
  box-shadow:0 5px 15px rgba(0,0,0,0.3);
  border-radius:10px;
  z-index:10000;
}

#enquiryBox input, #enquiryBox textarea{
  width:100%;
  margin-bottom:10px;
  padding:8px;
}

#enquiryBox button{
  background:#ff5722;
  color:#fff;
  border:none;
  padding:10px;
  width:100%;
}