  @import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&family=Zalando+Sans+Expanded:ital,wght@0,200..900;1,200..900&display=swap');


  /* Base Global Styles Start */
  * {
      font-family: 'Zalando Sans Expanded', sans-serif;
      margin: 0;
      padding: 0;
      box-sizing: border-box;
  }

  body {
      background-color: #ffffff;
      /* color: #ffffff; */
      overflow-x: hidden;
      -webkit-font-smoothing: antialiased; /* Text ko sharp rakhne ke liye */
  }


  .content-width-btn {
    width: fit-content !important;
    background-color: #ec1e24 !important;
    margin-top: 40px !important;
}

  .black{
    color: #000 !important;
  }


  body {
      /* Primary font 'Roboto' rakha hai, backup ke liye sans-serif */
      font-family: 'Roboto', sans-serif;
  }

  h1,
  h2,
  h3 {
      /* Heading ke liye 'Zalando Sans Expanded' use kar sakte hain */
      font-family: 'Zalando Sans Expanded', sans-serif;
      font-weight: 700;
  }

    .h-two{
    font-size: clamp(38px, 6vw, 72px);
    font-weight: 600;
    line-height: 0.95;
    margin-bottom: 70px;
    color: #000;
    letter-spacing: -1.5px;
  }


  @media (max-width: 768px) {
     .content-width-btn {
    
    margin-top: 30px !important;
}
  }

















  /* all title reveal css--------- */
/* 1. Default State: Jab tak JS process na kar le, text ko bilkul gayab rakho */
.reveal-text:not(.processed) {
    opacity: 0;
    visibility: hidden;
}

/* 2. Processed State: JS chalne ke baad container show ho jaye */
.reveal-text.processed {
    opacity: 1;
    visibility: visible !important;
}

/* 3. Word State: Har lafz shuru mein invisible aur blurred rahega */
.reveal-word {
    display: inline-block;
    opacity: 0;
    filter: blur(12px);
    transform: translateY(15px);
    white-space: pre; /* Spaces maintain karne ke liye */
    transition: none !important;
    will-change: opacity, filter, transform; /* Performance ke liye behtar hai */
}

/* 4. Animation Trigger: Jab scroll par 'start-animation' class aaye */
.start-animation .reveal-word {
    animation: blurReveal 0.8s ease forwards;
}

/* 5. Keyframes */
@keyframes blurReveal {
    0% {
        filter: blur(12px);
        opacity: 0;
        transform: translateY(15px);
    }
    100% {
        filter: blur(0px);
        opacity: 1;
        transform: translateY(0px);
    }
}

/* Highlight style */
.highlight {
    color: #ec1e24;
    font-weight: bold;
    display: inline-block;
}



   /* --------------------------- header aur nav ke liye dark mode ke liye extra classes ---------------------------  */

/* Purani classes waisi hi rahengi, bas ye extra power add karega */
.dark-glass-nav {
    background-color: rgb(135 135 135 / 12%) !important;
    border: 1px solid rgb(231 231 231 / 29%) !important;
}

.dark-glass-nav .nav-item {
    color: #000 !important;     
}

.dark-header-btn{
    background-color: rgb(135 135 135 / 12%) !important;
    border: 1px solid rgb(231 231 231 / 29%) !important;
}

.dark-header-btn .slide-up-text {
    color: #000 !important;

}
.dark-header-btn svg{
    filter: invert(1);
}

.dark-header-btn span {
    color: #000 !important;
}

.dark-header-btn .bg-white{
    background-color: #000 !important;
}


 /* --------------------------- header aur nav ke liye dark mode ke liye extra classes ---------------------------  */












          /* -------------------------------  about hero section css start ----------------------------  */

        .page-title-container {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            padding: 180px 0% 40px 0%;
            background-color: #fff;
            min-height: 300px;
        }

        /* Left side: Pill badge */
        .badge {
               display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    width: min-content;
    height: min-content;
    padding: 8px 18px 8px 8px;
    position: relative;
    overflow: visible;
    /* background-color: var(--token-f28c16f6-e724-4568-b432-898882b2a7b2, rgb(249, 249, 249)); */
    border-radius: 100px;
    /* opacity: 1; */
    border-radius: 100px !important;
    box-shadow: inset 0px 0px 8px 0px rgba(255, 255, 255, 0.25) !important;
    color: #000000 !important;
    font-size: 13px;
    font-weight: 600;
    text-transform: capitalize;
    letter-spacing: 1px;
    white-space: nowrap;
        }





         .contact-badge{
           color: #fff !important;
        }


        .icon-circle {
            background: #111;
            color: white;
            width: 24px;
            height: 24px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 12px;
        }

        /* Right side: Text content */
        .text-section {
            text-align: right;
        }

       .page-title-container .heading-top {
            font-size: 88px;
            color: #000;
            line-height: 0.9;
            text-transform: uppercase;
            position: relative;
            font-weight: 700;
              
        }

         .page-title-container .year-tag {
            font-size: 18px;
            vertical-align: super;
            margin-left: 5px;
            font-weight: 700;
        }

       .page-title-container .heading-bottom {
            font-size: 88px;
            color: #ec1e24; /* Orange-red color */
            line-height: 0.9;
            text-transform: uppercase;
            letter-spacing: -2px;
            font-weight: 700;
        }

        /* --- Responsive Settings for Mobile --- */
        @media (max-width: 768px) {

 
            .page-title-container {
                flex-direction: column; /* Stack vertically */
                align-items: left;    /* Center everything */
                text-align: left;
                gap: 20px;
                 padding: 150px 0% 60px 0%;
            }

            .text-section {
                text-align: center;
            }

            .page-title-container {
 
    flex-direction: column;
}

              .page-title-container .heading-top {
            font-size: 44px; /* Smaller font for mobile */
              text-align: left;
        }
           .page-title-container .heading-bottom {
            font-size: 44px; /* Smaller font for mobile */
              text-align: left;
        }
            .heading-top, .heading-bottom {
                font-size: 40px; /* Smaller font for mobile */
            }
        }

           /* -------------------------------  about hero section css end ----------------------------  */














              /* -------------------------------  Info section css start ----------------------------  */



  .info-container {
            max-width: 1800px;
            margin: 0 auto;
            display: grid;
            grid-template-columns: 1fr; 
            gap: 30px;
        }

        @media (min-width: 1024px) {
            .info-container {
                grid-template-columns: 1.2fr 1.8fr;
                padding: 80px 0;
            }
        }

        /* Left Column Styles */
        .about-label {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-bottom: 30px;
        }

        .dot {
            width: 8px;
            height: 8px;
            background-color: #000;
            border-radius: 50%;
        }

        .label-text {
            font-weight: 700;
            font-size: 14px;
            text-transform: uppercase;
             color: #000000;
        }

        .description {
            color: #555;
            font-size: 16px;
            line-height: 1.3;
            max-width: 450px;
            margin-bottom: 40px;
        }

        /* Founder Section - Reordered: Text then Image */
        .founder-wrapper {
            display: flex;
            align-items: center;
            gap: 15px;
        }

        #founder-text {
            opacity: 0; 
            text-align: left;
        }

        #founder-text h4 {
            font-weight: 900;
            font-size: 14px;
            text-transform: uppercase;
            line-height: 1;
            color: #000000;
        }

        #founder-text p {
            color: #9ca3af;
            font-size: 14px;
            margin-top: 5px;
        }

        #founder-img {
            width: 64px;
            height: 64px;
            border-radius: 50%;
            overflow: hidden;
            opacity: 0; 
        }

        #founder-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        /* Right Column Styles */
        .right-col-about {
            opacity: 0; /* Initially hidden for fade-in */
            flex-direction: column;
        }

        .details-row {
            border-bottom: 1px solid #e5e7eb;
            padding: 14px 0;
        }

        .details-row:last-of-type {
            border-bottom: 1px solid #e5e7eb;
        }

        .details-row h3 {
            font-weight: 900;
            font-size: 14px;
            text-transform: uppercase;
            color: #000000;
        }

        .details-row p {
            color: #9ca3af;
            font-size: 16px;
            margin-top: 5px;
        }

        /* Button Style */
        .view-works-btn {
            display: inline-flex;
            align-items: center;
            gap: 15px;
            background-color: #FF4D30;
            color: #fff;
            padding: 15px 32px;
            border-radius: 50px;
            text-decoration: none;
            font-weight: 700;
            font-size: 14px;
            margin-top: 40px;
            transition: opacity 0.3s ease;
        }

        
        .btn-dot {
            width: 8px;
            height: 8px;
            background-color: #fff;
            border-radius: 50%;
        }

        .btn-arrow {
            background-color: #fff;
            width: 36px;
            height: 36px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: transform 0.3s ease;
        }

        .view-works-btn:hover .btn-arrow {
            transform: rotate(45deg);
        }

        .btn-arrow svg {
            width: 16px;
            height: 16px;
            stroke: #FF4D30;
        }



           /* -------------------------------  Info  hero section css end ----------------------------  */












/* ---------------------------------------------------------      work page css          ---------------------------------------------------------------- */




















.work-grid-container{
    background-color: #f4f4f4 !important;
}




























 /* .>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>         blog page css start         <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< */





















  /* Desktop Cursor Logic: Sirf mouse wale devices par default cursor hide hoga */
      .blog-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 60px 30px;
            max-width: 1800px;
            margin: 60px auto;
        }

        .card-link {
            text-decoration: none;
            display: block;
            color: inherit;
            /* Card ke upar normal arrow hide karne ke liye */
            cursor: none !important; 
        }

        /* Card ke har child element par bhi cursor none apply kiya */
        .card-link * {
            cursor: none !important;
        }

        .image-wrapper {
            position: relative;
            width: 100%;
            height: 480px; 
            border-radius: 40px;
            overflow: hidden;
            background: #f0f0f0;
            margin-bottom: 0px;
            border: 1px solid rgba(0,0,0,0.05);
        }

        .card-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
        }

        .card-link:hover .card-img {
            transform: scale(1.1);
            filter: blur(10px) brightness(0.9);
        }

        .card-info {
    padding-left: 15px;
}

        .card-info h2 {
            font-size: 16px;
            font-weight: 700;
            text-transform: uppercase;
            color: #000000;
            letter-spacing: 0.5px;
            margin-bottom: 6px;
        }

        .card-info p {
            font-size: 14px;
            color: #7a7a7a;
        }

        /* --- Custom Red Cursor --- */
        #custom-cursor {
            position: fixed;
            width: 80px;
            height: 80px;
            background-color: #eb4432;
            border-radius: 50%;
            pointer-events: none;
            z-index: 9999;
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 0;
            transform: scale(0);
            transition: opacity 0.3s ease, transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        }

        #custom-cursor svg {
            width: 30px;
            height: 30px;
            color: #ffffff;
            transform: rotate(-45deg); 
        }

        /* --- Mobile Styles --- */
        @media (max-width: 900px) {
            body { padding: 30px 20px; }
            .blog-grid { grid-template-columns: 1fr; gap: 40px; }
            .image-wrapper { height: 60vh !important; border-radius: 40px; }
            #custom-cursor { display: none !important; }
            .card-link, .card-link * { cursor: auto !important; }
        }
























/* --------------------------------------------------------- single blog page css start ----------------------------------------------------------------- */





  .blog-title .reveal-word{
  color:  #000 !important;
  }


   .blog-title  .red-color span{
   color: #FF4723 !important;
   }


 .header-container {
            max-width: 1800px;
            margin: 0 auto;
            padding: 100px 0%;
            display: flex;
            justify-content: space-between;
            align-items: flex-end; /* Desktop par niche se align */
            min-height: 450px;
        }

        /* Typography Fixes */
        .title-section h1 {
            color: #000000 !important;
            font-size: clamp(50px, 8.5vw, 105px); /* Size thoda bada kiya hai */
            line-height: 0.85; /* Lines ko kareeb kiya */
            margin: 0;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: -4px; /* Alphabet ke darmiyan kam jagah */
            
        }

        .title-section h1 span {
            /* display: block; */
            color: #FF4723;
            /* Yahan space increase kiya hai */
            word-spacing: 15px; 
            letter-spacing: -2px; /* Orange text thoda khula rakha hai */
            margin-top: 5px;
        }

        /* Author Section */
       .author-card {
    max-width: 350px;
    margin-bottom: 10px;
    background-color: rgb(243 243 243 / 46%);
    padding: 15px;
    border-radius: 20px;
}
        .author-meta {
            display: flex;
            align-items: center;
            gap: 15px;
            margin-bottom: 15px;
        }

        /* Image Quality & Pixel Fix */
        .author-img {
            width: 70px;
            height: 70px;
            border-radius: 50%;
            object-fit: cover;
            display: block;
            /* Pixel quality behtar karne ke liye */
            image-rendering: -webkit-optimize-contrast; 
            image-rendering: crisp-edges;
            border: 1px solid rgba(0,0,0,0.05); /* Halki boundary for sharpness */
        }

        .author-info h3 {
            margin: 0;
            font-size: 17px;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            color: #000000 !important;
        }

        .author-info p {
            margin: 0;
            font-size: 14px;
            color: #777;
        }

        .author-description {
            font-size: 15px;
            color: #666;
            line-height: 1.4;
            margin: 0;
            font-weight: 400;
        }

        /* --- Mobile Responsiveness --- */
        @media (max-width: 992px) {
            .header-container {
                flex-direction: column;
                align-items: flex-start;
                padding: 90px 0px 30px;
                gap: 1px !important;
            }
            .header-container {
 
    min-height: 420px;
}

            .title-section h1 {
                font-size: 44px;
                letter-spacing: -2px;
            }

            .title-section h1 span {
                word-spacing: 8px;
            }

            .author-card {
                max-width: 100%;
            }
        }







/* ----------------------------------------------------------------- single blog page css end -----------------------------------------------------------------  */






  /* ----------------------  banner iamge section css start   ---------------------------- */






 /* Container styling */
        .blog-image-section {
            width: 100%;
            max-width: 1800px; /* Desktop size limit */
            margin: 20px auto;
            /* padding: 10px; */
            /* Border design */
           
            border-radius: 60px; /* Pill shape for desktop */
            overflow: hidden;
            
            display: flex;
            justify-content: center;
        }

        /* Image styling */
        .responsive-img {
            width: 100%;
            height: auto;
            display: block;
            object-fit: cover;
            /* Match border radius of container */
            border-radius: 50px; 
        }

        /* Mobile Optimization (Jesa aapne screenshot me bheja) */
        @media (max-width: 768px) {
            .blog-image-section {
                width: 100%;
                border-radius: 40px; /* Mobile par thoda kam radius */
                
            }
            
            .responsive-img {
                border-radius: 35px;
                /* Agar mobile pe image ki height barhani ho */
                min-height: 200px; 
                object-position: center;
            }
        }




    /* ----------------------  banner iamge section css End   ---------------------------- */



    /* ------------------------- blog content section css start ----------------------------   */


/* Main blog-text-box to center content */
.blog-text-box {
    max-width: 1000px;
    margin: 0 auto;
}

/* Section Spacing */
.content-block {
    margin-bottom: 60px;
}

/* Heading Styling (Matching the Image) */
.heading {
 color: #050505;
    font-size: 1.2rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 15px;
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 10px;
}

/* Paragraph Styling */
.text-content p {
    font-size: 0.95rem;
    line-height: 1.5;
    color: #444;
    margin-bottom: 15px;
    text-align: justify; /* Layout ko clean rakhne ke liye */
}

/* Image Section Styling */
.image-wrapper {
    /* margin-bottom: 60px; */
    width: 100%;
    border-radius: 25px; /* Rounded corners as seen in image */
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.image-wrapper img {
    width: 100%;
    height: auto;
    display: block;
}

/* RESPONSIVE DESIGN - Har screen ke liye adjustment */

/* Medium Screens (Tablets) */
@media (max-width: 768px) {
    .blog-text-box {
        padding: 0 10px;
    }
    .heading {
        font-size: 1rem;
    }
    .content-block {
        margin-bottom: 40px;
    }
}

/* Small Screens (Mobile) */
@media (max-width: 480px) {
    body {
        padding: 20px 15px;
    }
    .heading {
        font-size: 0.9rem;
        letter-spacing: 1px;
    }
    .text-content p {
        font-size: 0.85rem;
    }
}





    /* -----------------------   blog content section css end ----------------------------    */