      /* --- Base and Font Styles --- */
      html { scroll-behavior: smooth; }
      body {
          font-family: 'TikTok Sans', sans-serif;
          background-color: #f9fafb; /* Changed default to light gray */
          color: #111827;
          overflow-x: hidden;
      }

      /* --- Dynamic Logo Styles --- */
       .fixed-logo-wrapper {
           position: fixed;
           top: 1.5rem;
           left: 1.5rem;
           z-index: 1000;
           cursor: pointer;
       }
       .logo-container {
           display: flex;
           align-items: center;
           gap: 0.75rem;
           padding: 0.6rem 1.25rem 0.6rem 0.6rem;
           border-radius: 50px;
           transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
       }
       .logo-mark { width: 45px; height: 45px; }
       .logo-piece { stroke-width: 6; stroke-linecap: round; transition: stroke 0.4s ease; }
       .logo-text { font-size: 1.2rem; font-weight: 500; transition: color 0.4s ease; }

      .logo-light-theme {
          background: rgba(255, 255, 255, 0.7);
          backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
          border: 1px solid rgba(0, 0, 0, 0.08);
          box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
      }
      .logo-light-theme .logo-piece { stroke: #111827; }
      .logo-light-theme .logo-text { color: #111827; }

      .logo-dark-theme {
          background: rgba(31, 41, 55, 0.5);
          backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
          border: 1.5px solid rgba(255, 255, 255, 0.2);
          box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
      }
      .logo-dark-theme .logo-piece { stroke: #f0f0f0; }
      .logo-dark-theme .logo-text { color: #f0f0f0; }

      /* --- Navbar Styles --- */
    

      /* --- Make in India Section --- */
      .make-in-india-section {
          background-color: #0a0a0a;
          color: #FFFFFF; padding: 8rem 0; position: relative; overflow: hidden;
      }
      .india-illustration-stroke { stroke: #FFFFFF; stroke-width: 1; fill: none; opacity: 0.5; }

      /* --- Footer Styles --- */
      #footer-section { font-family: 'Inter', sans-serif; color: #e5e7eb; background-color: #050505; }
      #main-footer-dark-section {
           --spotlight-x: 50%; --spotlight-y: 50%;
           position: relative; overflow: hidden; background-color: #0a0a0a;
      }
      #main-footer-dark-section::before {
           content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; pointer-events: none; z-index: 0;
           background: radial-gradient(circle at var(--spotlight-x) var(--spotlight-y), rgba(255, 255, 255, 0.05) 0%, transparent 35%);
      }
      .content-layer { position: relative; z-index: 1; }
      .gradient-text { background: linear-gradient(135deg, #ffffff 40%, #9ca3af 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
      .typewriter {
           overflow: hidden; border-right: 3px solid #ffffff; white-space: nowrap; margin: 1.5rem auto 0 auto;
           animation: typing 3.5s steps(40, end), blink-caret 0.75s step-end infinite;
      }
      @keyframes typing { from { width: 0 } to { width: 100% } }
      @keyframes blink-caret { from, to { border-color: transparent } 50% { border-color: #ffffff } }
      
      .glass-card-footer {
           background: rgba(25, 25, 25, 0.6);
           backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
           border: 1px solid rgba(255, 255, 255, 0.1);
           border-radius: 1.25rem; transition: all 0.4s ease;
       }
      .glass-card-footer:hover { transform: translateY(-8px); border-color: rgba(255, 255, 255, 0.25); }
      .morph-link { position: relative; color: #d1d5db; transition: color 0.4s ease; padding: 2px 4px; z-index: 1; }
      .morph-link::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #ffffff; transform: scaleY(0); transform-origin: bottom; transition: transform 0.4s ease; z-index: -1; }
      .morph-link:hover { color: #000000; }
      .morph-link:hover::before { transform: scaleY(1); }
      .project-image-placeholder { background-color: #1f2937; aspect-ratio: 16 / 9; border-radius: 0.75rem; margin-bottom: 1rem; overflow: hidden; }
      .case-study-link .arrow { transition: transform 0.3s ease; }
      .case-study-link:hover .arrow { transform: translateX(4px); }
      .light-theme-icon { transition: all 0.3s ease; color: #4b5563; }
      .light-theme-icon:hover { color: #000000; }
      
      /* General Animation */
      .reveal-item { opacity: 0; transform: translateY(25px); transition: all 0.6s ease-out; }
      .reveal-item.is-visible { opacity: 1; transform: translateY(0); }

      /* ======================================== */
      /* --- PHONE RESPONSIVE STYLES --- */
      /* ======================================== */
      @media (max-width: 767px) {
          /* Hide navbar on mobile to save space */
          .glassy-navbar {
              display: none;
          }

          /* Adjust section padding for mobile */
          .story-section, .quote-section {
              padding-top: 5rem;
              padding-bottom: 5rem;
          }
          .make-in-india-section, #main-footer-dark-section .py-20 {
              padding-top: 6rem;
              padding-bottom: 6rem;
          }

          /* Responsive typography */
          .story-section h1, .make-in-india-section h2, #main-footer-dark-section .gradient-text {
              font-size: 2.25rem; /* 36px */
              line-height: 2.5rem; /* 40px */
          }
          .story-section p {
              font-size: 1rem; /* 16px */
              line-height: 1.625rem; /* 26px */
          }
          .quote-text {
              font-size: 1.5rem; /* 24px */
              line-height: 1.5; /* 36px */
          }
           .quote-mark {
              font-size: 4rem;
          }

          /* Adjust footer contact info layout */
          .footer-contact-info {
              gap: 0.5rem; /* Reduce gap between items when stacked */
          }
          .footer-contact-info > * {
              white-space: normal; /* Allow text to wrap */
              text-align: center;
          }
          .footer-contact-info > span {
              display: none; /* Hide the vertical bar separators */
          }

          /* Adjust footer bottom layout */
          .footer-bottom-bar {
              flex-direction: column;
              gap: 1rem;
          }
      }

      @media (max-width: 640px) {
          /* Adjust logo for smaller screens */
          .fixed-logo-wrapper {
               top: 1rem;
               left: 1rem;
          }
          .logo-container {
              padding: 0.4rem 0.8rem 0.4rem 0.4rem;
          }
          .logo-mark {
              width: 38px;
              height: 38px;
          }
          .logo-text {
              font-size: 1rem;
          }
      }