 :root{
      /* Premium light gradient and theme colors */
      --bg: #f7f8fa;
      --panel: #ffffff;
      --muted: #6c7a89;
      --accent: #7b2ff2; /* Premium purple */
      --accent2: #f357a8; /* Premium pink */
      --white: #222;
      --radius: 18px;
      --glass: rgba(123,47,242,0.07);
    }
    
    /* Performance optimizations */
    * {
      box-sizing: border-box;
    }
    
    /* Mobile overflow fixes */
    html, body {
      overflow-x: hidden;
      max-width: 100%;
    }
    
    video {
      will-change: transform;
      transform: translateZ(0);
      backface-visibility: hidden;
    }
    
    /* Optimize animations for GPU */
    .card, .service-video-item, .workflow-step {
      will-change: transform, opacity;
      transform: translateZ(0);
    }
    
    /* Prevent layout thrashing */
    img, video {
      display: block;
      max-width: 100%;
      height: auto;
    }
    
    /* Loading Spinner */
    .loading-spinner {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.9);
      display: flex;
      justify-content: center;
      align-items: center;
      z-index: 10000;
      transition: opacity 0.5s ease;
    }
    
    .loading-spinner::after {
      content: '';
      width: 50px;
      height: 50px;
      border: 4px solid #333;
      border-top: 4px solid #00bcd4;
      border-radius: 50%;
      animation: spin 1s linear infinite;
    }
    
    @keyframes spin {
      0% { transform: rotate(0deg); }
      100% { transform: rotate(360deg); }
    }
    
    .loading-spinner.hidden {
      opacity: 0;
      pointer-events: none;
    }

    /* Video lazy loading placeholder */
    .video-placeholder {
      width: 100%;
      height: 200px;
      background: #1a1a1a;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #666;
      font-size: 14px;
      border-radius: 15px;
      margin: 10px 0;
    }
    
    .video-placeholder::after {
      content: 'Loading video...';
    }
    
    html,body{height:100%}
    body{
      margin:0;
      background:linear-gradient(135deg, #f7f8fa 0%, #e3e6ee 50%, #f357a8 100%);
      color:var(--white);
      font-family:Inter,system-ui,Segoe UI,Roboto,-apple-system;
      line-height:1.45;
      -webkit-font-smoothing:antialiased;
      -moz-osx-font-smoothing:grayscale;
      opacity: 0;
      transition: opacity 0.3s ease;
    }
    body.loaded { opacity: 1; }
    a{color:var(--accent);text-decoration:none}
    .container{
      max-width:1100px;
      margin:0 auto;
      padding:36px;
    }
    
    /* Prevent text spread on ultra-wide screens */
    @media(min-width:1600px){
      .container{
        max-width:1200px;
      }
      .hero{
        max-width:1100px;
      }
    }

    /* Header - Advanced Video Editor Style */
    header{
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding:20px 9px;
      position:sticky;
      top:0;
      background:rgba(6, 7, 9, 0.95);
      color:white;
      font-size: medium;
      font-weight: bold;
      -webkit-backdrop-filter:blur(20px);
      backdrop-filter:blur(20px);
      border-radius:25px 25px 25px 25px;
      margin-bottom:20px;
      z-index:100;
      transition:all 0.3s ease;
      border:1px solid rgba(123,47,242,0.1);
      box-shadow:0 8px 32px rgba(123,47,242,0.1);
      position:relative;
    }
    header:hover{
      box-shadow:0 12px 40px rgba(123,47,242,0.15);
    }
    
    /* Enhanced Header Brand with Logo on Left */
    header .brand{
      display:flex;
      align-items:center;
      gap:16px;
      transition:transform 0.3s ease;
      position:relative;
    }
    header .brand::before{
      content:'';
      position:absolute;
      left:-10px;
      top:-10px;
      right:-10px;
      bottom:-10px;
      background:linear-gradient(135deg,transparent,rgba(123,47,242,0.1),transparent);
      border-radius:20px;
      opacity:0;
      transition:opacity 0.3s ease;
      z-index:-1;
    }
    header .brand:hover::before{
      opacity:1;
    }
    header .brand:hover{
      transform:scale(1.02);
    }
    
    /* Show header logo on the left */
    header .brand .logo{
      display:flex !important;
      align-items:center;
      justify-content:center;
      width:48px;
      height:48px;
      border-radius:12px;
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      box-shadow:0 4px 16px rgba(123,47,242,0.3);
      position:relative;
      overflow:hidden;
      animation:headerLogoGlow 3s ease-in-out infinite;
    }
    
    header .brand .logo .logo-img{
      width:44px;
      height:44px;
      border-radius:10px;
      object-fit:cover;
      transition:all 0.3s ease;
    }
    
    @keyframes headerLogoGlow{
      0%,100%{box-shadow:0 4px 16px rgba(123,47,242,0.3)}
      50%{box-shadow:0 6px 24px rgba(123,47,242,0.5)}
    }
    
    header .brand .logo:hover .logo-img{
      transform:scale(1.05);
      filter:brightness(1.1);
    }
    
    /* Ensure navbar logo is always visible */
    nav .brand{
      display:block !important;
      visibility:visible !important;
    }
    
    nav .brand .logo{
      display:block !important;
      visibility:visible !important;
    }
    
    /* Logo and Brand Improvements */
    .logo{
      width:52px;
      height:52px;
      border-radius:16px;
      overflow:hidden;
      display:flex;
      align-items:center;
      justify-content:center;
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      box-shadow:0 6px 20px rgba(123,47,242,0.3);
      position:relative;
      z-index:10;
      transform:translateY(-5px);
      border:3px solid rgba(255,255,255,0.3);
      transition:all 0.3s ease;
    }
    .logo:hover{
      transform:translateY(-8px) scale(1.05);
      box-shadow:0 12px 30px rgba(123,47,242,0.4);
      border-color:rgba(255,255,255,0.5);
    }
    .logo::after{
      content:'';
      position:absolute;
      inset:2px;
      border-radius:14px;
      background:var(--panel);
      z-index:1;
    }
    .logo-img{
      width:calc(100% - 4px);
      height:calc(100% - 4px);
      border-radius:14px;
      object-fit:cover;
      position:relative;
      z-index:2;
    }
    .brand-text h1{
      font-size:20px;
      margin:0;
      color:var(--accent);
      font-weight:700;
      font-family:'Poppins',sans-serif;
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      -webkit-background-clip:text;
      -webkit-text-fill-color:transparent;
      background-clip:text;
    }
    
    /* Enhanced Tagline with Box Design */
    .tagline{
      font-size:12px;
      color:var(--white);
      font-weight:600;
      text-transform:uppercase;
      letter-spacing:1.5px;
      position:relative;
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      padding:8px 16px;
      border-radius:20px;
      display:inline-flex;
      align-items:center;
      gap:8px;
      margin-top:8px;
      box-shadow:0 4px 15px rgba(123,47,242,0.3);
      overflow:hidden;
      animation:taglineGlow 3s ease-in-out infinite;
    }
    
    .tagline::before{
      content:'';
      position:absolute;
      top:0;
      left:-100%;
      width:100%;
      height:100%;
      background:linear-gradient(90deg,transparent,rgba(255,255,255,0.3),transparent);
      animation:shimmer 2s infinite;
      z-index:1;
    }
    
    .tagline::after{
      content:'✨';
      font-size:14px;
      animation:sparkle 2s ease-in-out infinite;
      z-index:2;
    }
    
    @keyframes taglineGlow{
      0%,100%{box-shadow:0 4px 15px rgba(123,47,242,0.3)}
      50%{box-shadow:0 6px 25px rgba(123,47,242,0.5)}
    }
    
    @keyframes shimmer{
      0%{left:-100%}
      100%{left:100%}
    }
    
    @keyframes sparkle{
      0%,100%{transform:scale(1) rotate(0deg)}
      50%{transform:scale(1.2) rotate(180deg)}
    }
    
    @keyframes pulse{
      0%,100%{opacity:1;transform:scale(1)}
      50%{opacity:0.7;transform:scale(1.1)}
    }

    /* Enhanced Navbar Hover Effects */
    nav{
      display:flex;
      align-items:center;
      gap:20px;
      background:rgba(255,255,255,0.1);
      padding:8px 20px 8px 40px;
      border-radius:50px;
      -webkit-backdrop-filter:blur(20px);
      backdrop-filter:blur(20px);
      border:1px solid rgba(255,255,255,0.2);
      position:relative;
      overflow:visible;
      transition:all 0.3s ease;
    }
    
    nav:hover{
      background:rgba(255,255,255,0.15);
      border-color:rgba(255,255,255,0.3);
      box-shadow:0 8px 32px rgba(123,47,242,0.2);
    }
    
    /* Logo Breaking Out of Navbar - Advanced Animations */
    /* nav::before{
      content:'';
      position:absolute;
      left:-28px;
      top:50%;
      transform:translateY(-50%);
      width:56px;
      height:56px;
      background:conic-gradient(from 0deg, var(--accent), var(--accent2), #ff6b9d, var(--accent));
      border-radius:16px;
      z-index:1;
      animation:advancedLogoMotion 4s ease-in-out infinite, logoColorShift 6s linear infinite;
      box-shadow:
        0 0 20px rgba(123,47,242,0.4),
        0 8px 32px rgba(123,47,242,0.3),
        inset 0 1px 0 rgba(255,255,255,0.2);
      border:2px solid rgba(255,255,255,0.4);
    } */
    
    nav::after{
      content:'';
      position:absolute;
      left:-30px;
      top:50%;
      transform:translateY(-50%);
      width:60px;
      height:60px;
      background:linear-gradient(45deg, transparent, rgba(123,47,242,0.1), transparent);
      border-radius:18px;
      z-index:0;
      animation:outerGlow 3s ease-in-out infinite alternate;
    }
    
    /* Advanced Animation Keyframes */
    @keyframes advancedLogoMotion{
      0%{
        transform:translateY(-50%) scale(1) rotate(0deg);
        box-shadow:0 0 20px rgba(123,47,242,0.4), 0 8px 32px rgba(123,47,242,0.3);
      }
      25%{
        transform:translateY(-58%) scale(1.08) rotate(2deg);
        box-shadow:0 0 25px rgba(123,47,242,0.6), 0 12px 40px rgba(123,47,242,0.4);
      }
      50%{
        transform:translateY(-54%) scale(1.12) rotate(0deg);
        box-shadow:0 0 30px rgba(123,47,242,0.8), 0 16px 48px rgba(123,47,242,0.5);
      }
      75%{
        transform:translateY(-58%) scale(1.08) rotate(-2deg);
        box-shadow:0 0 25px rgba(123,47,242,0.6), 0 12px 40px rgba(123,47,242,0.4);
      }
      100%{
        transform:translateY(-50%) scale(1) rotate(0deg);
        box-shadow:0 0 20px rgba(123,47,242,0.4), 0 8px 32px rgba(123,47,242,0.3);
      }
    }
    
    @keyframes logoColorShift{
      0%{background:conic-gradient(from 0deg, var(--accent), var(--accent2), #ff6b9d, var(--accent))}
      25%{background:conic-gradient(from 90deg, var(--accent), var(--accent2), #ff6b9d, var(--accent))}
      50%{background:conic-gradient(from 180deg, var(--accent), var(--accent2), #ff6b9d, var(--accent))}
      75%{background:conic-gradient(from 270deg, var(--accent), var(--accent2), #ff6b9d, var(--accent))}
      100%{background:conic-gradient(from 360deg, var(--accent), var(--accent2), #ff6b9d, var(--accent))}
    }
    
    @keyframes outerGlow{
      0%{
        opacity:0.3;
        transform:translateY(-50%) scale(0.8);
      }
      100%{
        opacity:0.7;
        transform:translateY(-50%) scale(1.1);
      }
    }
    
    /* Advanced Logo Container with Particle Effects */
    nav .brand{
      position:absolute;
      left:-28px;
      top:50%;
      transform:translateY(-50%);
      z-index:5;
      cursor:pointer;
      transition:all 0.4s cubic-bezier(0.25,0.8,0.25,1);
    }
    
    nav .brand::before{
      content:'';
      position:absolute;
      top:-4px;
      left:-4px;
      right:-4px;
      bottom:-4px;
      background:linear-gradient(45deg, var(--accent), transparent, var(--accent2), transparent);
      border-radius:20px;
      opacity:0;
      animation:logoHalo 2s linear infinite;
      z-index:-1;
    }
    
    @keyframes logoHalo{
      0%{opacity:0; transform:rotate(0deg) scale(0.8)}
      50%{opacity:0.6; transform:rotate(180deg) scale(1.1)}
      100%{opacity:0; transform:rotate(360deg) scale(0.8)}
    }
    
    nav .brand:hover{
      animation:advancedHover 0.6s ease-out;
    }
    
    @keyframes advancedHover{
      0%{transform:translateY(-50%) scale(1)}
      25%{transform:translateY(-50%) scale(1.2) rotate(5deg)}
      50%{transform:translateY(-50%) scale(1.15) rotate(-5deg)}
      75%{transform:translateY(-50%) scale(1.1) rotate(2deg)}
      100%{transform:translateY(-50%) scale(1)}
    }
    
    nav .brand .logo{
      position:relative;
      width:52px;
      height:52px;
      border-radius:14px;
      overflow:hidden;
      display:block !important;
      background:transparent;
      border:none;
      box-shadow:none;
    }
    
    /* Enhanced Logo Image with Matrix Effect */
    nav .brand .logo .logo-img{
      width:100%;
      height:100%;
      border-radius:14px;
      object-fit:cover;
      position:relative;
      z-index:3;
      transition:all 0.4s ease;
      display:block !important;
      opacity:1 !important;
      visibility:visible !important;
    }
    
    nav .brand .logo::before{
      content:'';
      position:absolute;
      top:0;
      left:-100%;
      width:100%;
      height:100%;
      background:linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.6),
        transparent
      );
      animation:advancedShimmer 3s infinite;
      z-index:4;
    }
    
    nav .brand .logo::after{
      content:'';
      position:absolute;
      inset:0;
      border-radius:14px;
      background:linear-gradient(45deg, transparent, rgba(123,47,242,0.1), transparent);
      opacity:0;
      transition:opacity 0.3s ease;
      z-index:2;
    }
    
    @keyframes advancedShimmer{
      0%{left:-100%; opacity:0}
      20%{opacity:1}
      80%{opacity:1}
      100%{left:100%; opacity:0}
    }
    
    nav .brand:hover .logo-img{
      transform:scale(1.05);
      filter:brightness(1.3) contrast(1.2) saturate(1.1);
    }
    
    nav .brand:hover .logo::after{
      opacity:1;
    }
    
    .nav-link{
      display:flex;
      align-items:center;
      gap:8px;
      padding:12px 20px;
      color:var(--text);
      text-decoration:none;
      border-radius:30px;
      font-weight:500;
      font-size:14px;
      transition:all 0.3s cubic-bezier(0.25,0.8,0.25,1);
      position:relative;
      overflow:hidden;
    }
    
    .nav-link:before{
      content:'';
      position:absolute;
      top:0;
      left:0;
      width:100%;
      height:100%;
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      opacity:0;
      transition:opacity 0.3s ease;
      z-index:-1;
    }
    
    .nav-link:hover{
      color:var(--dark);
      transform:translateY(-2px);
    }
    
    .nav-link:hover:before{
      opacity:1;
    }
    
    .nav-icon{
      font-size:16px;
      transition:transform 0.3s ease;
    }
    
    .nav-link:hover .nav-icon{
      transform:scale(1.2);
    }
    
    .nav-cta{
      display:flex;
      align-items:center;
      gap:8px;
      padding:12px 24px;
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      color:var(--dark);
      text-decoration:none;
      border-radius:30px;
      font-weight:600;
      font-size:14px;
      transition:all 0.3s ease;
      margin-left:8px;
      box-shadow:0 4px 15px rgba(255,168,76,0.3);
    }
    
    .nav-cta:hover{
      transform:translateY(-3px);
      box-shadow:0 8px 25px rgba(255,168,76,0.4);
    }
    
    .cta-icon{
      font-size:16px;
      transition:transform 0.3s ease;
    }
    
    .nav-cta:hover .cta-icon{
      transform:translateX(4px);
    }

    /* Hero Section with Better Layout */
    .hero{
      display:grid;
      grid-template-columns:1.2fr 0.8fr;
      gap:40px;
      align-items:center;
      padding:60px 0;
      max-width:1200px;
      margin:0 auto;
      min-height:80vh;
    }
    .hero-left{
      max-width:650px;
      z-index:2;
    }
    .hero-left h2{
      font-family:'Poppins',sans-serif;
      font-size:clamp(28px,4vw,42px);
      margin:0 0 20px;
      color:var(--text);
      line-height:1.2;
      font-weight:700;
      word-spacing:0.1em;
      letter-spacing:-0.02em;
      position:relative;
      overflow:hidden;
    }
    
    /* Moving Animation for Main Headline */
    .hero-left h2 .highlight{
      background:linear-gradient(270deg,var(--accent),var(--accent2),var(--accent),var(--accent2));
      background-size:400% 400%;
      -webkit-background-clip:text;
      -webkit-text-fill-color:transparent;
      background-clip:text;
      font-weight:800;
      animation:gradientMove 4s ease-in-out infinite;
      position:relative;
    }
    
    .hero-left h2 .highlight::after{
      content:'';
      position:absolute;
      top:0;
      left:-100%;
      width:100%;
      height:100%;
      background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent);
      animation:textShine 3s infinite;
    }
    
    @keyframes gradientMove{
      0%,100%{background-position:0% 50%}
      50%{background-position:100% 50%}
    }
    
    @keyframes textShine{
      0%{left:-100%}
      100%{left:100%}
    }
    
    /* Enhanced Subtitle with Advanced Styling */
    .hero-subtitle{
      color:var(--muted);
      margin:0 0 28px;
      font-size:clamp(14px,1.2vw,17px);
      line-height:1.6;
      max-width:500px;
      font-weight:400;
      position:relative;
      padding:20px;
      background:linear-gradient(135deg,rgba(123,47,242,0.05),rgba(243,87,168,0.05));
      border-radius:16px;
      border:1px solid rgba(123,47,242,0.1);
      -webkit-backdrop-filter:blur(10px);
      backdrop-filter:blur(10px);
    }
    
    .hero-subtitle::before{
      content:'';
      position:absolute;
      top:0;
      left:0;
      right:0;
      height:2px;
      background:linear-gradient(90deg,var(--accent),var(--accent2),var(--accent));
      background-size:200% 100%;
      animation:borderFlow 3s linear infinite;
      border-radius:16px 16px 0 0;
    }
    
    .hero-subtitle .subtitle-item{
      display:inline-block;
      margin:0 8px;
      padding:4px 8px;
      background:rgba(123,47,242,0.1);
      border-radius:8px;
      font-weight:500;
      transition:all 0.3s ease;
      animation:fadeInUp 0.8s ease-out forwards;
      opacity:0;
    }
    
    .hero-subtitle .subtitle-item:nth-child(1){animation-delay:0.2s}
    .hero-subtitle .subtitle-item:nth-child(2){animation-delay:0.4s}
    .hero-subtitle .subtitle-item:nth-child(3){animation-delay:0.6s}
    .hero-subtitle .subtitle-item:nth-child(4){animation-delay:0.8s}
    
    .hero-subtitle .subtitle-item:hover{
      background:var(--accent);
      color:white;
      transform:translateY(-2px);
    }
    
    @keyframes borderFlow{
      0%{background-position:0% 0%}
      100%{background-position:200% 0%}
    }
    
    @keyframes fadeInUp{
      from{
        opacity:0;
        transform:translateY(20px);
      }
      to{
        opacity:1;
        transform:translateY(0);
      }
    }
    .ctas{display:flex;gap:16px;margin-bottom:32px;flex-wrap:wrap}
    .btn{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:14px 24px;
      border-radius:25px;
      font-weight:700;
      border:none;
      cursor:pointer;
      transition:all 0.3s ease;
      font-size:15px;
      text-decoration:none;
      position:relative;
      overflow:hidden;
    }
    .btn.primary{
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      color:white;
      box-shadow:0 4px 15px rgba(123,47,242,0.3);
    }
    .btn.primary:hover{
      transform:translateY(-2px);
      box-shadow:0 8px 25px rgba(123,47,242,0.4);
    }
    .btn.secondary{
      background:transparent;
      border:2px solid var(--accent);
      color:var(--accent);
    }
    .btn.secondary:hover{
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      color:white;
    }
    .arrow,.spark{
      font-size:16px;
      transition:transform 0.3s ease;
    }
    .btn:hover .arrow{
      transform:translateX(4px);
    }
    .btn:hover .spark{
      transform:rotate(180deg);
    }

    /* Services Preview */
    .services-preview{
      background:var(--glass);
      padding:20px;
      border-radius:16px;
      border:1px solid rgba(123,47,242,0.1);
      -webkit-backdrop-filter:blur(10px);
      backdrop-filter:blur(10px);
    }
    .services-label{
      font-weight:600;
      color:var(--accent);
      font-size:14px;
      margin-bottom:12px;
      text-transform:uppercase;
      letter-spacing:1px;
    }
    .services-tags{
      display:flex;
      gap:12px;
      flex-wrap:wrap;
      align-items:center;
    }
    .tag{
      background:rgba(123,47,242,0.1);
      color:var(--accent);
      padding:8px 16px;
      border-radius:25px;
      font-size:13px;
      font-weight:500;
      border:1px solid rgba(123,47,242,0.2);
      transition:all 0.3s ease;
      white-space:nowrap;
      display:inline-block;
    }
    .tag:hover{
      background:var(--accent);
      color:var(--dark);
      transform:translateY(-2px);
      box-shadow:0 4px 15px rgba(123,47,242,0.3);
    }

    /* Hero Video Container */
    .hero-video-container{
      padding:15px 12px;
      border-radius:15px;
      font-size:12px;
      font-weight:600;
    }

    /* Hero Video - Full Content Display */
    .hero-video-container{
      position:relative;
      width:100%;
      aspect-ratio:9/16;
      max-height:450px;
      border-radius:24px;
      overflow:hidden;
      background:var(--glass);
      box-shadow:0 16px 48px rgba(123,47,242,0.2);
      border:2px solid rgba(123,47,242,0.1);
      transition:all 0.3s ease;
    }
    .hero-video-container:hover{
      transform:translateY(-4px);
      box-shadow:0 20px 60px rgba(123,47,242,0.25);
      border-color:var(--accent);
    }
    .hero-video{
      width:100%;
      height:100%;
      object-fit:contain;
      background:linear-gradient(135deg,#f7f8fa,#e3e6ee);
      position:relative;
      z-index:1;
    }
    
    /* Ensure video always plays */
    .hero-video::-webkit-media-controls {
      display: none !important;
    }
    
    .hero-video::-webkit-media-controls-enclosure {
      display: none !important;
    }
    .video-overlay{
      position:absolute;
      top:0;
      left:0;
      right:0;
      bottom:0;
      background:linear-gradient(transparent 60%,rgba(0,0,0,0.3));
      display:flex;
      align-items:flex-end;
      justify-content:center;
      padding:20px;
      opacity:0;
      transition:opacity 0.3s ease;
    }
    .hero-video-container:hover .video-overlay{
      opacity:1;
    }
    .play-indicator{
      background:rgba(255,255,255,0.9);
      color:var(--accent);
      padding:8px 12px;
      border-radius:20px;
      font-size:12px;
      font-weight:700;
    }

    /* Hero Stats */
    .hero-stats{
      display:flex;
      gap:12px;
      margin-top:16px;
    }
    .stat-item{
      background:var(--panel);
      padding:12px;
      border-radius:12px;
      display:flex;
      align-items:center;
      gap:8px;
      flex:1;
      box-shadow:0 2px 8px rgba(123,47,242,0.08);
    }
    .stat-icon{
      font-size:16px;
    }
    .stat-text{
      font-size:11px;
      color:var(--accent);
      font-weight:600;
    }

    /* Portfolio */
    .section{padding:48px 0}
    .section h3{
      font-family:'Poppins',sans-serif;
      margin:0 0 24px;
      color:var(--accent);
      font-size:32px;
      font-weight:700;
      text-align:center;
    }
    .filters{
      display:flex;
      gap:12px;
      margin-bottom:32px;
      justify-content:center;
      flex-wrap:wrap;
    }
    .filter{
      background:transparent;
      border:2px solid var(--accent);
      padding:12px 20px;
      border-radius:25px;
      color:var(--accent);
      cursor:pointer;
      font-weight:600;
      transition:all 0.3s ease;
      font-size:14px;
      position:relative;
      overflow:hidden;
    }
    .filter:hover,
    .filter.active{
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      color:white;
      transform:translateY(-2px);
      box-shadow:0 6px 20px rgba(123,47,242,0.3);
    }
    .filter::before{
      content:'';
      position:absolute;
      top:0;
      left:-100%;
      width:100%;
      height:100%;
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      transition:left 0.3s ease;
      z-index:-1;
    }
    .filter:hover::before{
      left:0;
    }
    .grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
      gap:32px;
      max-width:1200px;
      margin:0 auto;
      padding:24px;
    }
    .card{
      background:var(--panel);
      border-radius:24px;
      overflow:hidden;
      position:relative;
      box-shadow:0 12px 40px rgba(123,47,242,0.12);
      transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
      cursor:pointer;
      border:2px solid transparent;
      margin:12px;
      padding:8px;
      /* Enhanced gradient border effect */
      background:linear-gradient(var(--panel), var(--panel)) padding-box,
                 linear-gradient(135deg, rgba(123,47,242,0.3), rgba(243,87,168,0.3)) border-box;
    }
    .card:hover{
      transform:translateY(-12px) scale(1.02);
      box-shadow:0 24px 60px rgba(123,47,242,0.25);
      border:2px solid transparent;
      /* Enhanced gradient border on hover */
      background:linear-gradient(var(--panel), var(--panel)) padding-box,
                 linear-gradient(135deg, var(--accent), var(--accent2)) border-box;
    }
    .thumb{
      width:100%;
      aspect-ratio:9/16; /* 9:16 aspect ratio for all devices */
      background:var(--glass);
      display:flex;
      align-items:center;
      justify-content:center;
      position:relative;
      overflow:hidden;
      margin:4px;
      padding:4px;
      border-radius:20px;
      /* Inner border effect */
      border:1px solid rgba(123,47,242,0.1);
    }
    .thumb video{
      width:100%;
      height:100%;
      object-fit:cover;
      transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
      border-radius:16px;
      filter:brightness(0.95) contrast(1.05);
      /* Ensure 9:16 aspect ratio is maintained */
      aspect-ratio: 9/16;
    }
    .card:hover .thumb{
      border:1px solid rgba(123,47,242,0.3);
      background:rgba(123,47,242,0.08);
    }
    .card:hover .thumb video{
      transform:scale(1.08);
      filter:brightness(1) contrast(1.1) saturate(1.1);
    }
    .play{
      position:absolute;
      top:20px;
      left:20px;
      background:rgba(123,47,242,0.95);
      padding:10px 16px;
      border-radius:25px;
      color:white;
      font-weight:700;
      font-size:12px;
      -webkit-backdrop-filter:blur(15px);
      backdrop-filter:blur(15px);
      transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
      border:2px solid rgba(255,255,255,0.2);
      box-shadow:0 8px 25px rgba(123,47,242,0.3);
    }
    .card:hover .play{
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      transform:scale(1.1);
      box-shadow:0 12px 35px rgba(123,47,242,0.4);
      border:2px solid rgba(255,255,255,0.4);
    }
    .overlay{
      position:absolute;
      bottom:0;
      left:0;
      right:0;
      background:linear-gradient(transparent,rgba(0,0,0,0.7));
      padding:20px;
      transform:translateY(100%);
      transition:transform 0.3s ease;
    }
    .card:hover .overlay{
      transform:translateY(0);
    }
    .overlay .category{
      color:white;
      font-size:12px;
      font-weight:600;
      background:var(--accent);
      padding:4px 8px;
      border-radius:12px;
    }
    .card .meta{
      padding:20px;
      background:var(--panel);
      margin:6px;
      border-radius:16px;
      border-top:1px solid rgba(123,47,242,0.1);
    }
    .card .meta h4{
      margin:0 0 12px;
      font-size:18px;
      color:var(--accent);
      font-weight:600;
      transition:color 0.3s ease;
    }
    .card:hover .meta h4{
      color:var(--accent2);
    }
    .card .meta p{
      margin:0;
      color:var(--muted);
      font-size:14px;
      line-height:1.5;
    }

    /* Animation keyframes */
    @keyframes fadeIn{
      from{
        opacity:0;
        transform:translateY(20px);
      }
      to{
        opacity:1;
        transform:translateY(0);
      }
    }

    /* Services Section Redesign */
    /* Advanced Services Section with Animations */
    .services-container{
      display:grid;
      grid-template-columns:1fr 1.2fr;
      gap:50px;
      max-width:1200px;
      color: #222;
      margin:0 auto;
      position:relative;
    }
    
    .service-category,
    .workflow-section{
      background:linear-gradient(135deg, 
        rgba(123,47,242,0.1) 0%, 
        rgba(123,47,242,0.05) 100%);
      -webkit-backdrop-filter:blur(20px);
      backdrop-filter:blur(20px);
      padding:40px;
      border-radius:24px;
      border:1px solid rgba(123,47,242,0.2);
      box-shadow:0 20px 60px rgba(123,47,242,0.1);
      transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
      position:relative;
      overflow:hidden;
      color: #790000;
    }
    
    .service-category::before,
    .workflow-section::before{
      content:'';
      position:absolute;
      top:0;
      left:-100%;
      width:100%;
      height:100%;
      background:linear-gradient(135deg,
        rgba(123,47,242,0.1) 0%,
        rgba(255,107,107,0.1) 50%,
        rgba(123,47,242,0.1) 100%);
      transition:left 0.8s ease;
      z-index:0;
    }
    
    .service-category:hover::before,
    .workflow-section:hover::before{
      left:0;
    }
    
    .service-category:hover,
    .workflow-section:hover{
      transform:translateY(-8px) scale(1.02);
      box-shadow:0 30px 80px rgba(123,47,242,0.2);
      border-color:rgb(195, 8, 8);
    }
    
    .service-header,
    .workflow-header{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:32px;
      position:relative;
      z-index:1;
    }
    
    .service-icon,
    .workflow-icon{
      font-size:32px;
      background:linear-gradient(135deg,#7b2ff2,#ff6b6b);
      -webkit-background-clip:text;
      -webkit-text-fill-color:transparent;
      background-clip:text;
      animation:iconPulse 3s ease-in-out infinite;
      filter:drop-shadow(0 4px 8px rgba(123,47,242,0.3));
    }
    
    @keyframes iconPulse{
      0%, 100%{ transform:scale(1); }
      50%{ transform:scale(1.1); }
    }
    
    .service-header h4,
    .workflow-header h4{
      margin:0;
      color:#000000;
      font-size:24px;
      font-weight:900;
      letter-spacing:0.5px;
      text-shadow:0 2px 10px rgba(255,255,255,0.8);
    }
    
    /* Enhanced Service List */
    .service-list{
      display:flex;
      flex-direction:column;
      gap:16px;
      margin-bottom:24px;
      position:relative;
      z-index:1;
      color:#000000;
    }
    
    .service-item{
      display:flex;
      align-items:center;
      gap:16px;
      padding:16px 20px;
      background:rgba(255,255,255,0.05);
      border-radius:16px;
      border:1px solid rgba(255,255,255,0.1);
      transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
      position:relative;
      overflow:hidden;
      opacity:0;
      animation:slideInUp 0.6s ease forwards;
      cursor:pointer;
    }
    
    .service-item:nth-child(1){ animation-delay:0.1s; }
    .service-item:nth-child(2){ animation-delay:0.2s; }
    .service-item:nth-child(3){ animation-delay:0.3s; }
    .service-item:nth-child(4){ animation-delay:0.4s; }
    
    @keyframes slideInUp{
      from{
        opacity:0;
        transform:translateY(20px);
      }
      to{
        opacity:1;
        transform:translateY(0);
      }
    }
    
    .service-item:hover{
      background:rgba(255,255,255,0.1);
      transform:translateX(8px) scale(1.02);
      border-color:rgba(123,47,242,0.3);
      box-shadow:0 8px 25px rgba(123,47,242,0.2);
    }
    
    .service-item.active{
      background:rgba(123,47,242,0.15);
      border-color:rgba(123,47,242,0.6);
      box-shadow:0 12px 35px rgba(123,47,242,0.3);
    }
    
    .service-item::before{
      content:'';
      position:absolute;
      left:-100%;
      top:0;
      width:100%;
      height:100%;
      background:linear-gradient(135deg,
        rgba(123,47,242,0.1) 0%,
        rgba(255,255,255,0.05) 100%);
      transition:left 0.5s ease;
      z-index:-1;
    }
    
    .service-item:hover::before{
      left:0;
    }
    
    /* Service Video Showcase */
    .service-video-showcase{
      margin-top:24px;
      background:rgba(0,0,0,0.8);
      border-radius:20px;
      padding:24px;
      border:2px solid rgba(123,47,242,0.3);
      opacity:0;
      max-height:0;
      overflow:hidden;
      transition:all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
      position:relative;
    }
    
    .service-video-showcase.active{
      opacity:1;
      max-height:400px;
      animation:showcaseSlideIn 0.8s ease forwards;
    }
    
    @keyframes showcaseSlideIn{
      from{
        opacity:0;
        transform:translateY(-20px) scale(0.95);
      }
      to{
        opacity:1;
        transform:translateY(0) scale(1);
      }
    }
    
    .showcase-header{
      display:flex;
      align-items:center;
      gap:12px;
      margin-bottom:16px;
    }
    
    .showcase-icon{
      font-size:24px;
      background:linear-gradient(135deg,#7b2ff2,#ff6b6b);
      -webkit-background-clip:text;
      -webkit-text-fill-color:transparent;
      background-clip:text;
    }
    
    .showcase-title{
      color:#fff;
      font-size:18px;
      font-weight:700;
      text-shadow:0 2px 8px rgba(0,0,0,0.8);
    }
    
    .showcase-videos{
      display:grid;
      grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
      gap:16px;
    }
    
    .showcase-video-item{
      position:relative;
      background:linear-gradient(135deg,#7b2ff2,#ff6b6b);
      border-radius:16px;
      overflow:hidden;
      aspect-ratio:9/16;
      cursor:pointer;
      transition:all 0.4s ease;
    }
    
    .showcase-video-item:hover{
      transform:scale(1.05);
      box-shadow:0 15px 40px rgba(123,47,242,0.4);
    }
    
    .showcase-video{
      width:100%;
      height:100%;
      object-fit:cover;
      transition:transform 0.4s ease;
    }
    
    .showcase-video-item:hover .showcase-video{
      transform:scale(1.1);
    }
    
    .showcase-play-btn{
      position:absolute;
      top:50%;
      left:50%;
      transform:translate(-50%,-50%);
      width:50px;
      height:50px;
      background:rgba(255,255,255,0.9);
      border-radius:50%;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:18px;
      color:#7b2ff2;
      opacity:0;
      transition:all 0.4s ease;
      -webkit-backdrop-filter:blur(10px);
      backdrop-filter:blur(10px);
    }
    
    .showcase-video-item:hover .showcase-play-btn{
      opacity:1;
      transform:translate(-50%,-50%) scale(1.2);
    }
    
    .showcase-video-title{
      position:absolute;
      bottom:0;
      left:0;
      right:0;
      background:linear-gradient(transparent, rgba(0,0,0,0.8));
      color:#fff;
      padding:16px 12px 12px;
      font-size:12px;
      font-weight:600;
      text-align:center;
    }
    
    /* Responsive Showcase Styles */
    @media (max-width: 768px){
      .showcase-videos{
        grid-template-columns:1fr;
        gap:12px;
      }
      
      .showcase-video-item{
        aspect-ratio:16/9;
      }
      
      .service-video-showcase{
        padding:16px;
        margin-top:16px;
      }
      
      .showcase-header{
        flex-direction:column;
        align-items:flex-start;
        gap:8px;
      }
      
      .showcase-title{
        font-size:16px;
      }
      
      .showcase-play-btn{
        width:40px;
        height:40px;
        font-size:14px;
      }
      
      .showcase-video-title{
        font-size:11px;
        padding:12px 8px 8px;
      }
    }
    
    .bullet{
      color:#ff6b6b;
      font-weight:800;
      font-size:20px;
      filter:drop-shadow(0 2px 4px rgba(255,107,107,0.5));
      animation:bulletGlow 2s ease-in-out infinite;
    }
    
    @keyframes bulletGlow{
      0%, 100%{ filter:drop-shadow(0 2px 4px rgba(255,107,107,0.5)) brightness(1); }
      50%{ filter:drop-shadow(0 4px 8px rgba(255,107,107,0.8)) brightness(1.2); }
    }
    
    .service-item span:last-child{
      color:#000000;
      font-weight:900;
      font-size:16px;
      text-shadow:0 2px 6px rgba(255,255,255,0.8);
      letter-spacing:0.3px;
    }
    
    .service-note{
      display:flex;
      align-items:flex-start;
      gap:12px;
      background:rgb(225, 20, 129);
      -webkit-backdrop-filter:blur(10px);
      backdrop-filter:blur(10px);
      padding:20px;
      border-radius:16px;
      margin-top:20px;
      border:1px solid rgb(199, 185, 185);
      position:relative;
      z-index:1;
      color:#d00b0b;
      transition:all 0.3s ease;
    }
    
    .service-note:hover{
      background:rgba(232, 5, 153, 0.956);
      border-color:rgb(212, 50, 31);
      color:#d00b0b;
    }
    
    .note-icon{
      color:#ff6b6b;
      font-weight:800;
      flex-shrink:0;
      font-size:16px;
      filter:drop-shadow(0 2px 4px rgba(255,107,107,0.5));
    }
    
    .service-note span:last-child{
      color:#1b0404;
      font-size:17px;
      /* font-; */
      font-family: Verdana, Geneva, Tahoma, sans-serif;
      line-height:1.5;
      font-weight:5000;
      text-shadow:0 2px 6px rgba(197, 143, 143, 0.8);
    }

    /* Advanced Animated Workflow Graph */
    .workflow-steps{
      display:flex;
      flex-direction:column;
      gap:20px;
      position:relative;
      z-index:1;
    }
    
    /* Connecting Line Animation */
    .workflow-steps::before{
      content:'';
      position:absolute;
      left:20px;
      top:40px;
      bottom:40px;
      width:4px;
      background:linear-gradient(180deg,
        transparent 0%,
        #7b2ff2 20%,
        #ff6b6b 50%,
        #7b2ff2 80%,
        transparent 100%);
      border-radius:2px;
      animation:flowingGradient 3s ease-in-out infinite;
      z-index:0;
    }
    
    @keyframes flowingGradient{
      0%, 100%{
        background:linear-gradient(180deg,
          transparent 0%,
          #7b2ff2 20%,
          #ff6b6b 50%,
          #7b2ff2 80%,
          transparent 100%);
      }
      50%{
        background:linear-gradient(180deg,
          transparent 0%,
          #ff6b6b 20%,
          #7b2ff2 50%,
          #ff6b6b 80%,
          transparent 100%);
      }
    }
    
    .workflow-step{
      display:flex;
      align-items:flex-start;
      gap:20px;
      padding:24px;
      background:rgba(255,255,255,0.08);
      -webkit-backdrop-filter:blur(15px);
      backdrop-filter:blur(15px);
      border-radius:20px;
      border:1px solid rgba(255,255,255,0.1);
      transition:all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
      position:relative;
      overflow:hidden;
      opacity:0;
      animation:workflowSlideIn 0.8s ease forwards;
      z-index:1;
    }
    
    .workflow-step:nth-child(1){ animation-delay:0.2s; }
    .workflow-step:nth-child(2){ animation-delay:0.4s; }
    .workflow-step:nth-child(3){ animation-delay:0.6s; }
    .workflow-step:nth-child(4){ animation-delay:0.8s; }
    .workflow-step:nth-child(5){ animation-delay:1.0s; }
    
    @keyframes workflowSlideIn{
      from{
        opacity:0;
        transform:translateX(-30px) scale(0.9);
      }
      to{
        opacity:1;
        transform:translateX(0) scale(1);
      }
    }
    
    .workflow-step:hover{
      background:rgba(255,255,255,0.15);
      transform:translateX(12px) scale(1.03);
      border-color:rgba(123,47,242,0.4);
      box-shadow:0 15px 40px rgba(123,47,242,0.25);
    }
    
    .workflow-step::before{
      content:'';
      position:absolute;
      top:0;
      left:-100%;
      width:100%;
      height:100%;
      background:linear-gradient(135deg,
        rgba(123,47,242,0.1) 0%,
        rgba(255,255,255,0.05) 50%,
        rgba(123,47,242,0.1) 100%);
      transition:left 0.6s ease;
      z-index:-1;
    }
    
    .workflow-step:hover::before{
      left:0;
    }
    
    .step-number{
      background:linear-gradient(135deg,#7b2ff2,#ff6b6b);
      color:white;
      width:44px;
      height:44px;
      border-radius:50%;
      display:flex;
      align-items:center;
      justify-content:center;
      font-weight:800;
      font-size:18px;
      flex-shrink:0;
      position:relative;
      box-shadow:0 8px 25px rgba(123,47,242,0.4);
      transition:all 0.4s ease;
      animation:numberPulse 2s ease-in-out infinite;
    }
    
    @keyframes numberPulse{
      0%, 100%{ 
        transform:scale(1); 
        box-shadow:0 8px 25px rgba(123,47,242,0.4);
      }
      50%{ 
        transform:scale(1.1); 
        box-shadow:0 12px 35px rgba(123,47,242,0.6);
      }
    }
    
    .workflow-step:hover .step-number{
      transform:scale(1.2) rotate(360deg);
      box-shadow:0 15px 40px rgba(123,47,242,0.6);
    }
    
    .step-number::after{
      content:'';
      position:absolute;
      inset:-4px;
      border:2px solid transparent;
      border-radius:50%;
      background:linear-gradient(135deg,#7b2ff2,#ff6b6b) border-box;
      -webkit-mask:linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
      -webkit-mask-composite:exclude;
      animation:rotateBorder 3s linear infinite;
    }
    
    @keyframes rotateBorder{
      from{ transform:rotate(0deg); }
      to{ transform:rotate(360deg); }
    }
    
    .step-content{
      display:flex;
      flex-direction:column;
      gap:8px;
      flex:1;
    }
    
    .step-title{
      font-weight:900;
      color:#000000;
      font-size:16px;
      letter-spacing:0.3px;
      text-shadow:0 2px 8px rgba(255,255,255,0.8);
    }
    
    .step-desc{
      color:#000000;
      font-size:14px;
      line-height:1.6;
      font-weight:700;
      text-shadow:0 2px 6px rgba(255,255,255,0.8);
    }
    
    /* Interactive Elements */
    .workflow-section:hover .step-number{
      animation-play-state:paused;
      transform:scale(1.1);
    }
    
    .service-category:hover .service-icon,
    .workflow-section:hover .workflow-icon{
      animation-play-state:paused;
      transform:scale(1.2) rotate(5deg);
    }
    
    /* Particle Effect on Hover */
    .service-category::after,
    .workflow-section::after{
      content:'';
      position:absolute;
      top:50%;
      left:50%;
      width:0;
      height:0;
      background:radial-gradient(circle,
        rgba(123,47,242,0.3) 0%,
        rgba(255,107,107,0.2) 50%,
        transparent 100%);
      border-radius:50%;
      transform:translate(-50%, -50%);
      transition:all 0.6s ease;
      opacity:0;
      z-index:0;
    }
    
    .service-category:hover::after,
    .workflow-section:hover::after{
      width:200px;
      height:200px;
      opacity:0.3;
    }
    
    /* Progress Indicator for Workflow */
    .workflow-progress{
      position:absolute;
      top:0;
      left:0;
      width:100%;
      height:4px;
      background:rgba(255,255,255,0.1);
      border-radius:2px;
      overflow:hidden;
    }
    
    .workflow-progress::after{
      content:'';
      position:absolute;
      top:0;
      left:-100%;
      width:100%;
      height:100%;
      background:linear-gradient(90deg,#7b2ff2,#ff6b6b);
      animation:progressFlow 4s ease-in-out infinite;
    }
    
    @keyframes progressFlow{
      0%, 100%{ left:-100%; }
      50%{ left:100%; }
    }

    /* Contact Section Redesign */
    .contact-container{
      display:grid;
      grid-template-columns:1fr 1.2fr;
      gap:40px;
      max-width:1200px;
      margin:0 auto;
    }
    .contact-info{
      background:var(--panel);
      padding:32px;
      border-radius:20px;
      box-shadow:0 8px 32px rgba(123,47,242,0.1);
      height:fit-content;
    }
    .contact-header h4{
      margin:0 0 12px;
      color:var(--accent);
      font-size:22px;
      font-weight:700;
    }
    .contact-subtitle{
      color:var(--muted);
      margin:0 0 32px;
      line-height:1.5;
    }
    .contact-person{
      display:flex;
      align-items:center;
      gap:16px;
      margin-bottom:32px;
      padding:20px;
      background:var(--glass);
      border-radius:16px;
    }
    .person-avatar{
      width:60px;
      height:60px;
      border-radius:50%;
      overflow:hidden;
      border:3px solid var(--accent);
    }
    .avatar-img{
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .person-info{
      display:flex;
      flex-direction:column;
      gap:4px;
    }
    .person-info h5{
      margin:0;
      color:var(--accent);
      font-size:16px;
      font-weight:700;
    }
    .person-title{
      color:var(--white);
      font-size:13px;
      font-weight:500;
    }
    .person-brand{
      color:var(--muted);
      font-size:12px;
      font-style:italic;
    }

    /* Contact Methods */
    .contact-methods{
      display:flex;
      flex-direction:column;
      gap:16px;
      margin-bottom:24px;
    }
    .contact-method{
      display:flex;
      align-items:center;
      gap:16px;
      padding:16px;
      background:var(--glass);
      border-radius:12px;
      transition:all 0.3s ease;
      border:2px solid transparent;
    }
    .contact-method:hover{
      background:rgba(123,47,242,0.1);
      border-color:var(--accent);
      transform:translateY(-2px);
    }
    .primary-method{
      border-color:var(--accent);
      background:rgba(123,47,242,0.05);
    }
    .method-icon{
      font-size:20px;
      width:40px;
      height:40px;
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      border-radius:50%;
      display:flex;
      align-items:center;
      justify-content:center;
      flex-shrink:0;
    }
    .method-content{
      display:flex;
      flex-direction:column;
      gap:4px;
    }
    .method-label{
      font-size:12px;
      color:var(--muted);
      font-weight:600;
      text-transform:uppercase;
      letter-spacing:0.5px;
    }
    .method-link{
      color:var(--accent);
      font-weight:600;
      text-decoration:none;
      transition:color 0.3s ease;
    }
    .method-link:hover{
      color:var(--accent2);
    }
    .contact-cta{
      display:flex;
      align-items:center;
      gap:12px;
      padding:16px;
      background:linear-gradient(135deg,rgba(123,47,242,0.1),rgba(243,87,168,0.1));
      border-radius:12px;
      border-left:4px solid var(--accent);
    }
    .cta-icon{
      font-size:18px;
      flex-shrink:0;
    }
    .contact-cta span{
      color:var(--muted);
      font-size:13px;
      line-height:1.4;
    }

    /* Contact Form */
    .contact-form-container{
      background:var(--panel);
      padding:32px;
      border-radius:20px;
      box-shadow:0 8px 32px rgba(123,47,242,0.1);
    }
    .form-header{
      margin-bottom:24px;
    }
    .form-header h4{
      margin:0 0 8px;
      color:var(--accent);
      font-size:20px;
      font-weight:700;
    }
    .form-header p{
      margin:0;
      color:var(--muted);
      font-size:14px;
    }
    .form-group{
      margin-bottom:20px;
    }
    .form-group label{
      display:block;
      margin-bottom:8px;
      color:var(--accent);
      font-weight:600;
      font-size:14px;
    }
    .contact-form input,
    .contact-form textarea{
      width:100%;
      padding:12px 16px;
      border:2px solid rgba(123,47,242,0.2);
      border-radius:12px;
      background:var(--glass);
      color:var(--white);
      font-size:14px;
      transition:all 0.3s ease;
      font-family:inherit;
    }
    .contact-form input:focus,
    .contact-form textarea:focus{
      outline:none;
      border-color:var(--accent);
      background:rgba(123,47,242,0.05);
    }
    .contact-form input::placeholder,
    .contact-form textarea::placeholder{
      color:var(--muted);
    }
    .submit-btn{
      width:100%;
      background:linear-gradient(135deg,var(--accent),var(--accent2));
      color:white;
      border:none;
      padding:16px 24px;
      border-radius:12px;
      font-weight:700;
      font-size:15px;
      cursor:pointer;
      display:flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      transition:all 0.3s ease;
    }
    .submit-btn:hover{
      transform:translateY(-2px);
      box-shadow:0 8px 25px rgba(123,47,242,0.4);
    }
    .btn-icon{
      font-size:16px;
      transition:transform 0.3s ease;
    }
    .submit-btn:hover .btn-icon{
      transform:translateX(4px);
    }
    .form-message{
      margin-top:16px;
      padding:12px;
      border-radius:8px;
      background:rgba(123,47,242,0.1);
      color:var(--muted);
      font-size:13px;
      text-align:center;
    }

    /* Simplified Footer */
    .footer{
      position:relative;
      margin-top:60px;
      color:#fff;
      border-top:1px solid rgba(123,47,242,0.3);
      overflow:hidden;
      min-height:120px; /* Much smaller */
      padding: 20px 0; /* Reduced padding */
      background: linear-gradient(135deg, 
        rgba(123,47,242,0.9) 0%, 
        rgba(123,47,242,0.7) 50%, 
        rgba(123,47,242,0.8) 100%);
    }
    
    /* Footer Video Background */
    .footer-video-background{
      position:absolute;
      top:0;
      left:0;
      width:100%;
      height:100%;
      z-index:1;
      overflow:hidden;
    }
    
    .footer-bg-video{
      width:100%;
      height:100%;
      object-fit:cover;
      filter:brightness(0.6) contrast(1.2) saturate(1.3);
      transition:all 0.8s ease;
      opacity:1;
    }
    
    .footer:hover .footer-bg-video{
      filter:brightness(0.7) contrast(1.3) saturate(1.4);
      transform:scale(1.02);
    }
    
    .footer-bg-overlay{
      position:absolute;
      top:0;
      left:0;
      width:100%;
      height:100%;
      background:linear-gradient(
        135deg,
        rgba(123,47,242,0.4) 0%,
        rgba(123,47,242,0.2) 25%,
        rgba(123,47,242,0.3) 50%,
        rgba(123,47,242,0.5) 100%
      );
      -webkit-backdrop-filter:saturate(1.5);
      backdrop-filter:saturate(1.5);
      z-index:2;
    }
    
    /* Advanced Text Visibility Enhancement */
    .footer-content{
      position:relative;
      z-index:3;
      display:flex;
      justify-content:space-between;
      align-items:flex-start;
      max-width:1200px;
      margin:0 auto;
      padding:40px 36px 30px;
      margin-bottom:20px;
      background:rgba(0,0,0,0.1);
      -webkit-backdrop-filter:blur(10px) saturate(1.8);
      backdrop-filter:blur(10px) saturate(1.8);
      border-radius:20px;
      margin:40px auto 32px;
      border:1px solid rgba(255,255,255,0.1);
      box-shadow:0 20px 40px rgba(0,0,0,0.3);
    }
    
    .footer-brand{
      display:flex;
      align-items:center;
      gap:20px;
      position:relative;
    }
    
    .footer-brand::before{
      content:'';
      position:absolute;
      top:-10px;
      left:-10px;
      right:-10px;
      bottom:-10px;
      background:linear-gradient(135deg, 
        rgba(255,255,255,0.1) 0%, 
        rgba(255,255,255,0.05) 100%);
      border-radius:15px;
      z-index:-1;
    }
    
    .footer-logo{
      width:64px;
      height:64px;
      border-radius:16px;
      overflow:hidden;
      border:3px solid rgba(255,255,255,0.3);
      position:relative;
      background:linear-gradient(135deg, #7b2ff2, #ff6b6b);
      transition:all 0.4s ease;
    }
    
    .footer-logo:hover{
      transform:scale(1.1) rotate(5deg);
      border-color:rgba(255,255,255,0.6);
      box-shadow:0 10px 30px rgba(123,47,242,0.4);
    }
    
    .footer-logo-img{
      width:100%;
      height:100%;
      object-fit:cover;
      transition:transform 0.4s ease;
    }
    
    .footer-logo:hover .footer-logo-img{
      transform:scale(1.1);
    }
    
    .footer-info h6{
      margin:0 0 8px;
      font-size:24px;
      font-weight:800;
      background:linear-gradient(135deg, #fff, #e8e8e8);
      -webkit-background-clip:text;
      -webkit-text-fill-color:transparent;
      background-clip:text;
      text-shadow:0 2px 10px rgba(0,0,0,0.3);
      letter-spacing:0.5px;
    }
    
    .footer-info span{
      color:rgba(255,255,255,0.9);
      font-size:14px;
      font-weight:500;
      text-shadow:0 1px 3px rgba(0,0,0,0.5);
      letter-spacing:0.3px;
    }
    
    .footer-links{
      display:flex;
      gap:50px;
    }
    
    /* Enhanced Footer Services Showcase */
    .services-showcase{
      -webkit-backdrop-filter:blur(5px);
      backdrop-filter:blur(5px);
      background:rgba(255,255,255,0.05);
      border-radius:16px;
      padding:24px;
      border:1px solid rgba(255,255,255,0.1);
    }
    
    .services-showcase h6{
      margin:0 0 24px;
      font-size:18px;
      font-weight:700;
      text-align:center;
      background:linear-gradient(135deg, #fff, #e8e8e8);
      -webkit-background-clip:text;
      -webkit-text-fill-color:transparent;
      background-clip:text;
      text-shadow:0 2px 10px rgba(0,0,0,0.3);
      letter-spacing:0.5px;
    }
    
    .service-videos{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:20px;
      max-width:320px;
    }
    
    .service-video-item{
      display:flex;
      flex-direction:column;
      align-items:center;
      gap:12px;
      padding:16px;
      background:rgba(255,255,255,0.1);
      -webkit-backdrop-filter:blur(10px);
      backdrop-filter:blur(10px);
      border-radius:16px;
      transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
      cursor:pointer;
      position:relative;
      overflow:hidden;
      border:1px solid rgba(255,255,255,0.1);
    }
    
    .service-video-item:hover{
      background:rgba(255,255,255,0.15);
      transform:translateY(-8px) scale(1.02);
      box-shadow:0 15px 35px rgba(123,47,242,0.4);
      border-color:rgba(255,255,255,0.3);
    }
    
    .service-video-item::before{
      content:'';
      position:absolute;
      top:0;
      left:-100%;
      width:100%;
      height:100%;
      background:linear-gradient(135deg,
        rgba(255,255,255,0.1) 0%,
        rgba(123,47,242,0.2) 50%,
        rgba(255,255,255,0.1) 100%);
      transition:left 0.6s ease;
      z-index:0;
    }
    
    .service-video-item:hover::before{
      left:0;
    }
    
    .service-video-preview{
      position:relative;
      width:80px;
      height:80px;
      border-radius:16px;
      overflow:hidden;
      background:linear-gradient(135deg,#7b2ff2,#ff6b6b);
      display:flex;
      align-items:center;
      justify-content:center;
      z-index:1;
      border:2px solid rgba(255,255,255,0.2);
      transition:all 0.4s ease;
    }
    
    .service-video-item:hover .service-video-preview{
      border-color:rgba(255,255,255,0.4);
      box-shadow:0 8px 25px rgba(123,47,242,0.3);
    }
    
    .footer-video{
      width:100%;
      height:100%;
      object-fit:cover;
      border-radius:14px;
      transition:transform 0.4s ease;
    }
    
    .service-video-item:hover .footer-video{
      transform:scale(1.15);
    }
    
    .video-placeholder{
      font-size:32px;
      position:absolute;
      color:white;
      z-index:2;
      text-shadow:0 2px 8px rgba(0,0,0,0.5);
    }
    
    .video-play-btn{
      position:absolute;
      top:50%;
      left:50%;
      transform:translate(-50%,-50%);
      width:28px;
      height:28px;
      background:rgba(255,255,255,0.95);
      border-radius:50%;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:12px;
      color:#7b2ff2;
      opacity:0;
      transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
      z-index:3;
      border:2px solid rgba(123,47,242,0.3);
    }
    
    .service-video-item:hover .video-play-btn{
      opacity:1;
      transform:translate(-50%,-50%) scale(1.3);
      box-shadow:0 4px 15px rgba(0,0,0,0.3);
    }
    
    .service-name{
      color:rgba(255,255,255,0.9);
      font-size:13px;
      font-weight:600;
      text-align:center;
      transition:all 0.3s ease;
      z-index:1;
      position:relative;
      text-shadow:0 1px 3px rgba(0,0,0,0.5);
      letter-spacing:0.3px;
    }
    
    .service-video-item:hover .service-name{
      color:#fff;
      font-weight:700;
      transform:translateY(-2px);
    }
    
    .footer-section{
      -webkit-backdrop-filter:blur(5px);
      backdrop-filter:blur(5px);
      background:rgba(255,255,255,0.05);
      border-radius:16px;
      padding:24px;
      border:1px solid rgba(255,255,255,0.1);
    }
    
    .footer-section h6{
      margin:0 0 20px;
      font-size:16px;
      font-weight:700;
      background:linear-gradient(135deg, #fff, #e8e8e8);
      -webkit-background-clip:text;
      -webkit-text-fill-color:transparent;
      background-clip:text;
      text-shadow:0 2px 10px rgba(0,0,0,0.3);
      letter-spacing:0.5px;
    }
    
    .footer-section ul{
      list-style:none;
      padding:0;
      margin:0;
      display:flex;
      flex-direction:column;
      gap:12px;
    }
    
    .footer-section li{
      color:rgba(255,255,255,0.8);
      font-size:14px;
      font-weight:500;
    }
    
    .footer-section a{
      color:rgba(255,255,255,0.8);
      text-decoration:none;
      transition:all 0.3s ease;
      padding:8px 12px;
      border-radius:8px;
      display:inline-block;
      text-shadow:0 1px 3px rgba(0,0,0,0.3);
    }
    
    .footer-section a:hover{
      color:#fff;
      background:rgba(255,255,255,0.1);
      transform:translateX(5px);
      text-shadow:0 2px 8px rgba(0,0,0,0.4);
    }
    
    .footer-bottom{
      position:relative;
      z-index:3;
      display:flex;
      justify-content:space-between;
      align-items:center;
      max-width:1200px;
      margin:0 auto;
      padding:20px 36px 25px;
      border-top:1px solid rgba(255,255,255,0.15);
      background:rgba(0,0,0,0.1);
      -webkit-backdrop-filter:blur(10px);
      backdrop-filter:blur(10px);
      border-radius:0 0 20px 20px;
      margin-bottom:0;
    }
    
    .copyright{
      display:flex;
      align-items:center;
      gap:10px;
      color:rgba(255,255,255,0.9);
      font-size:13px;
      font-weight:600;
      text-shadow:0 1px 3px rgba(0,0,0,0.5);
    }
    
    .separator{
      color:rgba(255,255,255,0.6);
      font-weight:300;
    }
    
    .footer-tagline{
      display:flex;
      align-items:center;
      gap:6px;
      color:rgba(255,255,255,0.9);
      font-size:13px;
      font-weight:600;
      text-shadow:0 1px 3px rgba(0,0,0,0.5);
    }
    
    .heart{
      color:#ff6b6b;
      animation:heartbeat 2s infinite;
      filter:drop-shadow(0 2px 4px rgba(255,107,107,0.5));
    }
    .footer-bottom{
      position:relative;
      z-index:2;
      display:flex;
      justify-content:space-between;
      align-items:center;
      max-width:1200px;
      margin:0 auto;
      padding:20px 36px 30px;
      border-top:1px solid rgba(255,255,255,0.2);
    }
    .copyright{
      display:flex;
      align-items:center;
      gap:8px;
      color:rgba(255,255,255,0.8);
      font-size:12px;
      font-weight:500;
    }
    .separator{
      color:rgba(255,255,255,0.6);
    }
    .footer-tagline{
      display:flex;
      align-items:center;
      gap:4px;
      color:rgba(255,255,255,0.8);
      font-size:12px;
      font-weight:500;
    }
    .heart{
      color:#e74c3c;
      animation:heartbeat 2s infinite;
    }
    
    @keyframes heartbeat{
      0%,50%,100%{transform:scale(1)}
      25%,75%{transform:scale(1.1)}
    }

    /* Lightbox */
    .lightbox{position:fixed;inset:0;background:rgba(123,47,242,0.12);display:flex;align-items:center;justify-content:center;z-index:60;opacity:0;pointer-events:none;transition:opacity .2s}
    .lightbox.open{opacity:1;pointer-events:auto}
    .lightbox video{max-width:90%;max-height:80%;border-radius:12px}

    /* Responsive Design */
    @media(max-width:1024px){
      .hero{
        grid-template-columns:1fr;
        gap:32px;
        text-align:center;
      }
      .hero-right{
        max-width:350px;
        margin:0 auto;
      }
      .services-container{
        grid-template-columns:1fr;
        gap:32px;
      }
      .contact-container{
        grid-template-columns:1fr;
        gap:32px;
      }
      .footer-content{
        flex-direction:column;
        gap:32px;
        text-align:center;
      }
      .footer-links{
        justify-content:center;
      }
      .footer-bottom{
        flex-direction:column;
        gap:16px;
        text-align:center;
      }
    }

    /* Large Screen Optimizations */
    @media(min-width:1400px){
      .hero{
        max-width:1300px;
        grid-template-columns:1fr 450px;
        gap:60px;
      }
      .hero-left h2{
        font-size:48px;
        max-width:600px;
        word-spacing:0.05em;
      }
      .hero-subtitle{
        font-size:18px;
        max-width:550px;
      }
      .container{
        max-width:1400px;
      }
    }

    @media(max-width:768px){
      .container{
        padding:20px;
      }
      header{
        padding:12px 0;
        margin-bottom:16px;
      }
      nav{
        margin-left:0;
        padding:8px 16px;
        gap:12px;
      }
      nav .brand{
        left:-5px;
      }
      nav::before{
        left:-5px;
        width:45px;
        height:45px;
      }
      .hero{
        grid-template-columns:1fr;
        gap:30px;
        padding:40px 0;
        text-align:center;
        min-height:60vh;
      }
      .hero-left{
        max-width:100%;
        order:1;
      }
      .hero-right{
        order:2;
        max-width:100%;
      }
      .hero-left h2{
        font-size:clamp(24px,6vw,32px);
        margin-bottom:16px;
        line-height:1.3;
      }
      .hero-subtitle{
        font-size:clamp(14px,3vw,16px);
        margin-bottom:20px;
        max-width:100%;
      }
      .services-preview{
        margin-top:20px;
      }
      .services-tags{
        justify-content:center;
        gap:8px;
      }
      .tag{
        font-size:12px;
        padding:6px 12px;
      }
      .service-videos{
        grid-template-columns:1fr;
        gap:12px;
        max-width:100%;
      }
      .service-video-item{
        flex-direction:row;
        justify-content:flex-start;
        padding:16px;
      }
      .service-video-preview{
        width:50px;
        height:50px;
      }
      .footer-links{
        flex-direction:column;
        gap:24px;
        align-items:center;
      }
      nav{
        padding:6px;
        gap:4px;
      }
      .nav-link{
        padding:10px 16px;
        font-size:13px;
      }
      .nav-icon{
        font-size:14px;
      }
      .nav-cta{
        padding:10px 20px;
        font-size:13px;
        margin-left:4px;
      }
      .ctas{
        flex-direction:column;
        gap:12px;
      }
      .btn{
        justify-content:center;
        width:100%;
      }
      .section h3{
        font-size:28px;
        margin-bottom:20px;
      }
      .filters{
        gap:8px;
        margin-bottom:24px;
      }
      .filter{
        padding:10px 16px;
        font-size:13px;
      }
      .grid{
        grid-template-columns:repeat(2,1fr);
        gap:16px;
      }
      .service-category,
      .workflow-section{
        padding:24px;
      }
      .contact-info,
      .contact-form-container{
        padding:24px;
      }
      .footer-content{
        padding:0 20px;
      }
      .footer-bottom{
        padding:20px 20px 0;
      }
    }

    @media(max-width:480px){
      .container{
        padding:16px;
      }
      .tagline{
        display:none;
      }
      .hero-left h2{
        font-size:24px;
      }
      .section h3{
        font-size:24px;
      }
      .grid{
        grid-template-columns:1fr;
      }
      .filters{
        justify-content:flex-start;
        overflow-x:auto;
        padding-bottom:8px;
      }
      .filters::-webkit-scrollbar{
        height:4px;
      }
      .filters::-webkit-scrollbar-track{
        background:var(--glass);
        border-radius:2px;
      }
      .filters::-webkit-scrollbar-thumb{
        background:var(--accent);
        border-radius:2px;
      }
    }

/* Footer Animations and Enhancements */
footer{
  background:linear-gradient(135deg,rgba(25,25,25,0.95),rgba(35,35,35,0.95));
  -webkit-backdrop-filter:blur(20px);
  backdrop-filter:blur(20px);
  border-top:1px solid rgba(255,168,76,0.1);
  margin-top:80px;
  position:relative;
  overflow:hidden;
}

footer::before{
  content:'';
  position:absolute;
  top:0;
  left:-50%;
  width:200%;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--accent),var(--accent2),transparent);
  animation:footerGlow 3s ease-in-out infinite;
}

@keyframes footerGlow{
  0%,100%{transform:translateX(-100%)}
  50%{transform:translateX(100%)}
}

.footer-content{
  padding:60px 40px 40px;
  position:relative;
  z-index:2;
}

.footer-brand{
  text-align:center;
  margin-bottom:40px;
}

.footer-brand .brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  margin-bottom:16px;
}

.footer-brand .logo-container{
  width:60px;
  height:60px;
  border-radius:15px;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  padding:3px;
  animation:logoFloat 3s ease-in-out infinite;
}

@keyframes logoFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}

.footer-brand h1{
  font-size:24px;
  margin:0;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}

.footer-tagline{
  color:var(--muted);
  font-size:14px;
  font-weight:500;
  animation:taglinePulse 2s ease-in-out infinite;
}

@keyframes taglinePulse{
  0%,100%{opacity:0.7}
  50%{opacity:1}
}

.footer-links{
  display:flex;
  justify-content:center;
  gap:40px;
  margin-bottom:40px;
  flex-wrap:wrap;
}

.footer-links a{
  color:var(--text);
  text-decoration:none;
  font-weight:500;
  padding:8px 16px;
  border-radius:20px;
  transition:all 0.3s ease;
  position:relative;
  overflow:hidden;
}

.footer-links a:before{
  content:'';
  position:absolute;
  top:0;
  left:-100%;
  width:100%;
  height:100%;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  z-index:-1;
  transition:left 0.3s ease;
}

.footer-links a:hover{
  color:var(--dark);
  transform:translateY(-2px);
}

.footer-links a:hover:before{
  left:0;
}

.footer-bottom{
  text-align:center;
  padding:30px 40px;
  border-top:1px solid rgba(255,168,76,0.1);
  background:rgba(0,0,0,0.2);
}

.footer-bottom p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  animation:fadeInUp 0.8s ease-out;
}

@keyframes fadeInUp{
  from{
    opacity:0;
    transform:translateY(20px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}
      .filters::-webkit-scrollbar-thumb{
        background:var(--accent);
        border-radius:2px;
      }
      .filter{
        flex-shrink:0;
        padding:8px 14px;
        font-size:12px;
      }
      .nav{
        flex-direction:column;
        gap:8px;
      }
      .nav-btn{
        padding:6px 10px;
        font-size:12px;
      }
      .footer-links{
        flex-direction:column;
        gap:24px;
      }
    }

    /* @media rules end here */

/* Portfolio Video Controls Styling */
.card video::-webkit-media-controls {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.card:hover video::-webkit-media-controls {
  opacity: 1;
}

.card video {
  transition: all 0.3s ease;
}

.card:hover video {
  border-radius: 12px;
}

/* Mobile Video Touch Improvements */
@media (max-width: 768px) {
  .card video::-webkit-media-controls {
    opacity: 1;
  }
  
  .card .play {
    opacity: 0.7; /* Make custom play button more subtle on mobile */
  }
}

/* Mobile Responsiveness Fixes */
@media (max-width: 768px) {
  /* Container padding - responsive */
  .container {
    padding: 12px;
    max-width: 100%;
    overflow-x: hidden;
  }
  
  /* Header fixes - mobile first */
  header {
    padding: 12px 16px;
    flex-direction: column;
    gap: 12px;
    position: relative;
    background: rgba(6, 7, 9, 0.98);
    align-items: center;
    width: 100%;
    box-sizing: border-box;
  }
  
  /* Brand section - centered at top */
  header .brand {
    order: 1;
    justify-content: center;
    margin-bottom: 8px;
    flex-direction: row;
    align-items: center;
    gap: 12px;
  }
  
  header .brand .logo-img {
    width: 32px;
    height: 32px;
  }
  
  header .brand-text h1 {
    font-size: 1rem;
  }
  
  .tagline {
    font-size: 0.7rem;
  }
  
  /* Navigation - IMPROVED MOBILE NAVBAR */
  nav {
    order: 2;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 4px;
    flex-wrap: nowrap;
    padding: 6px 8px;
    border-radius: 25px;
    background: rgba(255,255,255,0.15);
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    width: calc(100% - 16px);
    max-width: 100%;
    box-sizing: border-box;
    border: 1px solid rgba(255,255,255,0.1);
  }
  
  .nav-link {
    padding: 6px 8px;
    font-size: 0.65rem;
    border-radius: 15px;
    background: rgba(255,255,255,0.1);
    transition: all 0.2s ease;
    white-space: nowrap;
    min-width: 45px;
    text-align: center;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
  }
  
  .nav-link:hover {
    background: rgba(255,255,255,0.25);
    transform: translateY(-1px);
  }
  
  .nav-icon {
    font-size: 14px;
    display: block;
  }
  
  .nav-text {
    font-size: 0.6rem;
    display: block;
  }
  
  .nav-cta {
    padding: 6px 10px;
    font-size: 0.65rem;
    white-space: nowrap;
    flex-shrink: 0;
    min-width: 65px;
    background: linear-gradient(135deg, #7b2ff2, #ff6b6b);
    border-radius: 15px;
    color: white;
    font-weight: 600;
  }
  
  .nav-cta:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(123,47,242,0.3);
  }
  
  /* Button fixes for mobile */
  .btn {
    padding: 12px 20px;
    font-size: 0.9rem;
    white-space: nowrap;
    min-width: 120px;
    text-align: center;
  }
  
  /* Hero section */
  .hero {
    flex-direction: column;
    gap: 24px;
    text-align: center;
    padding: 20px 0;
  }
  
  .hero-left {
    order: 2;
  }
  
  .hero-right {
    order: 1;
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
  }
  
  .hero-left h2 {
    font-size: 1.8rem;
    line-height: 1.3;
  }
  
  .hero-subtitle {
    font-size: 0.9rem;
    flex-direction: column;
    gap: 4px;
  }
  
  .ctas {
    flex-direction: column;
    gap: 12px;
  }
  
  .btn {
    width: 100%;
    padding: 12px;
    font-size: 0.9rem;
  }
  
  /* Video container */
  .hero-video-container {
    width: 100%;
    max-width: 280px;
    height: auto;
  }
  
  /* Portfolio section */
  .grid {
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 12px;
    justify-content: center;
  }
  
  .filters {
    flex-wrap: wrap;
    gap: 6px;
    justify-content: center;
  }
  
  .filter {
    padding: 6px 10px;
    font-size: 0.7rem;
    white-space: nowrap;
  }
  
  /* Services section */
  .services-container {
    flex-direction: column;
    gap: 24px;
  }
  
  .service-category,
  .workflow-section {
    width: 100%;
  }
  
  .showcase-videos {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  
  /* Workflow steps */
  .workflow-steps {
    gap: 16px;
  }
  
  .workflow-step {
    padding: 12px;
  }
  
  .step-number {
    width: 30px;
    height: 30px;
    font-size: 0.9rem;
  }
  
  .step-title {
    font-size: 0.9rem;
  }
  
  .step-desc {
    font-size: 0.8rem;
  }
  
  /* Contact section - CRITICAL MOBILE FIXES */
  .contact-container {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 0;
    max-width: 100%;
  }
  
  .contact-info,
  .contact-form-container {
    width: 100%;
    padding: 20px 16px;
    margin: 0;
    box-sizing: border-box;
  }
  
  .contact-header h4 {
    font-size: 1.3rem;
    text-align: center;
    margin-bottom: 8px;
  }
  
  .contact-subtitle {
    font-size: 0.9rem;
    text-align: center;
    margin-bottom: 20px;
  }
  
  .contact-person {
    flex-direction: column;
    text-align: center;
    padding: 16px;
    margin-bottom: 20px;
  }
  
  .person-avatar {
    width: 50px;
    height: 50px;
  }
  
  .person-info h5 {
    font-size: 1rem;
  }
  
  .person-title {
    font-size: 0.8rem;
  }
  
  .person-brand {
    font-size: 0.7rem;
  }
  
  .contact-methods {
    gap: 12px;
    margin-bottom: 16px;
  }
  
  .contact-method {
    padding: 12px;
    flex-direction: column;
    text-align: center;
    gap: 8px;
  }
  
  .method-icon {
    width: 35px;
    height: 35px;
    font-size: 16px;
    margin: 0 auto;
  }
  
  .method-content {
    align-items: center;
  }
  
  .method-label {
    font-size: 0.7rem;
  }
  
  .method-link {
    font-size: 0.9rem;
    word-break: break-all;
  }
  
  .contact-cta {
    padding: 12px;
    flex-direction: column;
    text-align: center;
    gap: 8px;
  }
  
  .contact-cta span {
    font-size: 0.8rem;
  }
  
  /* Contact form mobile */
  .form-header {
    text-align: center;
    margin-bottom: 20px;
  }
  
  .form-header h4 {
    font-size: 1.2rem;
  }
  
  .form-header p {
    font-size: 0.8rem;
  }
  
  .form-group {
    margin-bottom: 16px;
  }
  
  .form-group label {
    font-size: 0.8rem;
    margin-bottom: 6px;
  }
  
  .contact-form input,
  .contact-form textarea {
    padding: 10px 12px;
    font-size: 0.9rem;
    border-radius: 8px;
  }
  
  .submit-btn {
    padding: 12px 20px;
    font-size: 0.9rem;
  }
  
  /* Footer - REDUCE SIZE ON MOBILE */
  .footer {
    min-height: 200px; /* Reduced from 300px */
    margin-top: 40px;
    padding: 16px 12px 12px;
  }
  
  .footer-content {
    padding: 20px 16px 16px; /* Reduced padding */
    margin: 16px auto 12px; /* Reduced margins */
    gap: 16px;
    flex-direction: column;
    text-align: center;
  }
  
  .footer-brand {
    flex-direction: column;
    gap: 8px;
  }
  
  .footer-logo {
    width: 48px; /* Smaller logo */
    height: 48px;
  }
  
  .footer-info h6 {
    font-size: 1.2rem; /* Smaller text */
    margin-bottom: 4px;
  }
  
  .footer-info span {
    font-size: 0.8rem;
  }
  
  .footer-links {
    flex-direction: column;
    gap: 12px;
  }
  
  .services-showcase {
    padding: 16px;
    width: 100%;
    max-width: 100%;
  }
  
  .services-showcase h6 {
    font-size: 1rem;
    margin-bottom: 12px;
    text-align: center;
  }
  
  .service-videos {
    grid-template-columns: repeat(1, 1fr);
    gap: 8px;
    max-width: 200px;
    margin: 0 auto;
  }
  
  .service-video-item {
    padding: 8px;
    gap: 6px;
  }
  
  .service-video-preview {
    width: 60px;
    height: 60px;
  }
  
  .service-name {
    font-size: 0.7rem;
  }
  
  .footer-bottom {
    padding: 12px 16px; /* Reduced padding */
    flex-direction: column;
    gap: 6px;
    text-align: center;
    font-size: 0.7rem;
  }
  
  .footer-tagline {
    font-size: 0.7rem;
  }

  /* Contact section */
  .contact-container {
    flex-direction: column;
    gap: 24px;
  }
  
  .contact-info,
  .contact-form-container {
    width: 100%;
  }
  
  /* Footer fixes */
  .footer {
    padding: 24px 16px 16px;
  }
  
  .footer-content {
    flex-direction: column;
    gap: 20px;
    text-align: center;
  }
  
  .footer-brand {
    flex-direction: column;
    gap: 8px;
  }
  
  .footer-links {
    flex-direction: column;
    gap: 16px;
  }
  
  .service-videos {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
  
  .service-video-item {
    font-size: 0.8rem;
  }
  
  .service-video-preview {
    height: 80px;
  }
  
  .footer-bottom {
    flex-direction: column;
    gap: 8px;
    text-align: center;
    font-size: 0.8rem;
  }
  
  .separator {
    display: none;
  }
}

/* Extra small mobile devices */
@media (max-width: 480px) {
  .container {
    padding: 12px;
  }
  
  header {
    padding: 8px 12px;
  }
  
  .hero-left h2 {
    font-size: 1.5rem;
  }
  
  /* Contact section - extra small mobile */
  .contact-info,
  .contact-form-container {
    padding: 16px 12px;
  }
  
  .contact-header h4 {
    font-size: 1.1rem;
  }
  
  .contact-person {
    padding: 12px;
  }
  
  .method-link {
    font-size: 0.8rem;
  }
  
  /* Footer - EXTRA COMPACT for small screens */
  .footer {
    min-height: 160px; /* Even smaller */
    padding: 12px 8px 8px;
  }
  
  .footer-content {
    padding: 16px 12px 12px;
    margin: 12px auto 8px;
    gap: 12px;
  }
  
  .footer-brand {
    gap: 6px;
  }
  
  .footer-logo {
    width: 40px; /* Even smaller logo */
    height: 40px;
  }
  
  .footer-info h6 {
    font-size: 1rem;
    margin-bottom: 2px;
  }
  
  .footer-info span {
    font-size: 0.7rem;
  }
  
  .services-showcase {
    padding: 12px;
  }
  
  .services-showcase h6 {
    font-size: 0.9rem;
    margin-bottom: 8px;
  }
  
  .service-videos {
    grid-template-columns: 1fr;
    max-width: 150px;
    gap: 6px;
  }
  
  .service-video-item {
    padding: 6px;
  }
  
  .service-video-preview {
    width: 50px;
    height: 50px;
  }
  
  .service-name {
    font-size: 0.6rem;
  }
  
  .footer-bottom {
    padding: 8px 12px;
    gap: 4px;
    font-size: 0.6rem;
  }
  
  .footer-tagline {
    font-size: 0.6rem;
  }
}

    @media(max-width:480px){
      .footer{
        min-height:400px;
      }
      
      .footer-links{
        flex-direction:column;
        gap:20px;
      }
      
      .footer-content{
        padding:40px 20px 30px;
        flex-direction:column;
        align-items:center;
        text-align:center;
        gap:30px;
      }
      
      .footer-brand{
        flex-direction:column;
        text-align:center;
        gap:12px;
      }
      
      .service-videos{
        grid-template-columns:repeat(2,1fr);
        max-width:280px;
      }
      
      .footer-bottom{
        padding:20px;
        flex-direction:column;
        gap:15px;
        text-align:center;
      }
      
      .footer-bg-video{
        object-position:center;
      }
    }
    
    @media(max-width:768px){
      .footer-content{
        flex-direction:column;
        align-items:center;
        text-align:center;
        gap:40px;
      }
      
      .footer-brand{
        order:1;
      }
      
      .footer-links{
        order:2;
        width:100%;
        justify-content:center;
      }
      
      .service-videos{
        grid-template-columns:repeat(4,1fr);
        max-width:100%;
        gap:15px;
      }
      
      .service-video-preview{
        width:70px;
        height:70px;
      }
    }

/* Very small mobile devices - adjust grid for perfect fit */
@media (max-width: 480px) {
  .grid {
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 8px;
    max-width: 100%;
  }
  
  .card {
    min-width: 120px;
  }
  
  .thumb {
    aspect-ratio: 9/16;
    border-radius: 8px;
  }
  
  .card .meta h4 {
    font-size: 0.8rem;
  }
  
  .card .meta p {
    font-size: 0.7rem;
  }
}

/* Extra small mobile devices - under 480px */
@media (max-width: 480px) {
  .container {
    padding: 8px;
  }
  
  header {
    padding: 8px 12px;
  }
  
  header .brand {
    gap: 8px;
  }
  
  header .brand-text h1 {
    font-size: 0.9rem;
  }
  
  .tagline {
    font-size: 0.6rem;
  }
  
  nav {
    gap: 4px;
    padding: 6px 8px;
  }
  
  .nav-link {
    padding: 6px 8px;
    font-size: 0.65rem;
    min-width: 50px;
  }
  
  .nav-cta {
    padding: 6px 12px;
    font-size: 0.65rem;
    min-width: 70px;
  }
  
  .btn {
    padding: 10px 16px;
    font-size: 0.8rem;
    min-width: 100px;
  }
  
  .hero-left h2 {
    font-size: 1.5rem;
  }
}

/* Small Tablet devices (768px - 900px) - iPad and similar */
@media (min-width: 769px) and (max-width: 900px) {
  header {
    padding: 12px 14px;
    gap: 8px;
  }
  
  .brand {
    gap: 10px;
  }
  
  .brand-text h1 {
    font-size: 0.95rem;
  }
  
  .tagline {
    font-size: 0.65rem;
    padding: 5px 10px;
  }
  
  nav {
    gap: 4px;
    padding: 6px 12px 6px 24px;
  }
  
  .nav-link {
    padding: 6px 8px;
    font-size: 0.65rem;
    min-width: 50px;
  }
  
  .nav-cta {
    padding: 6px 12px;
    font-size: 0.65rem;
    min-width: 70px;
  }
  
  .cta-icon {
    font-size: 0.55rem;
  }
}

/* Medium Tablet devices (901px - 1024px) - Larger tablets */
@media (min-width: 901px) and (max-width: 1024px) {
  /* Header and Navigation for Tablets */
  header {
    padding: 15px 16px;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 12px;
  }
  
  .brand {
    flex-shrink: 0;
    gap: 12px;
  }
  
  .logo {
    width: 42px;
    height: 42px;
  }
  
  .logo-img {
    width: 42px;
    height: 42px;
  }
  
  .brand-text h1 {
    font-size: 1rem;
  }
  
  .tagline {
    font-size: 0.7rem;
    padding: 6px 12px;
  }
  
  nav {
    gap: 6px;
    padding: 6px 16px 6px 28px;
    flex-shrink: 1;
    min-width: 0;
  }
  
  .nav-link {
    padding: 6px 10px;
    font-size: 0.7rem;
    min-width: 55px;
    white-space: nowrap;
  }
  
  .nav-text {
    display: inline;
  }
  
  .nav-icon {
    display: none; /* Hide icons on tablets to save space */
  }
  
  .nav-cta {
    padding: 8px 14px;
    font-size: 0.7rem;
    min-width: 75px;
    white-space: nowrap;
    flex-shrink: 0;
  }
  
  .cta-text {
    display: inline;
  }
  
  .cta-icon {
    margin-left: 6px;
    font-size: 0.6rem;
  }

  /* Portfolio Grid for Tablets */
  .grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px;
    padding: 20px;
    margin: 0 auto;
    max-width: 100%;
  }
  
  .card {
    min-height: 320px;
    margin: 8px;
    padding: 8px;
  }
  
  .card video {
    min-height: 280px !important;
  }
  
  .thumb {
    min-height: 320px;
    aspect-ratio: 9/16; /* Consistent 9:16 ratio */
    margin: 6px;
    padding: 6px;
  }
  
  .card .meta h4 {
    font-size: 16px !important;
    margin: 0 0 8px;
  }
  
  .card .meta p {
    font-size: 13px !important;
  }
  
  .overlay .category {
    font-size: 11px !important;
    padding: 4px 8px;
  }
}

/* Mobile devices (up to 768px) - 1 video per line for 9:16 aspect ratio */
@media (max-width: 768px) {
  /* Mobile portfolio video improvements */
  .grid {
    /* Single column on mobile for optimal 9:16 video viewing */
    grid-template-columns: 1fr !important;
    gap: 20px;
    max-width: 100%;
    padding: 20px; /* Equal padding on all sides */
    margin: 0 auto;
    overflow: visible; /* Ensure content isn't clipped */
  }
  
  .card {
    min-width: unset;
    min-height: 400px; /* Larger for 9:16 single column */
    margin: 12px auto; /* Center and equal margins */
    padding: 8px;
    max-width: 300px; /* Limit width for better aspect ratio */
  }
  
  .card video {
    min-height: 350px !important; /* Much larger for 9:16 ratio */
  }
  
  .thumb {
    min-height: 400px; /* Match card height */
    aspect-ratio: 9/16; /* Enforce 9:16 aspect ratio */
    position: relative;
    margin: 6px;
    padding: 6px;
  }
  
  /* Responsive meta section for mobile */
  .card .meta {
    padding: 10px; /* Optimized padding for mobile */
    margin: 4px; /* Equal margin on all sides */
    border-radius: 12px;
    min-height: 45px; /* Ensure enough space for text */
  }
  
  .card .meta h4 {
    font-size: 13px !important; /* Better readable size for mobile */
    margin: 0 0 4px;
    line-height: 1.2;
    word-wrap: break-word; /* Prevent text overflow */
    overflow-wrap: break-word;
    hyphens: auto;
  }
  
  .card .meta p {
    font-size: 11px !important; /* Optimized size for mobile */
    line-height: 1.3;
    word-wrap: break-word; /* Prevent text overflow */
    overflow-wrap: break-word;
  }
  
  /* Mobile responsive category overlay */
  .overlay {
    padding: 12px; /* Reduced padding for mobile */
  }
  
  .overlay .category {
    font-size: 10px !important; /* Smaller for mobile */
    padding: 3px 6px;
    border-radius: 8px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 120px; /* Prevent overflow */
  }
  
  /* Enhanced mobile touch targets */
  .video-controls {
    opacity: 1; /* Always visible on mobile */
    background: rgba(0,0,0,0.3);
  }
  
  .play-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgba(123,47,242,0.9);
    color: white;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    z-index: 10;
    /* Enhanced visibility for mobile */
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
    border: 3px solid rgba(255,255,255,0.8);
  }
  
  .volume-control, .fullscreen-btn {
    width: 45px !important;
    height: 45px !important;
    font-size: 18px !important;
    /* Larger touch targets for mobile */
    background: rgba(0,0,0,0.7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .fullscreen-btn {
    right: 55px !important;
  }
}

/* Extra small mobile - maintain single column for 9:16 videos */
@media (max-width: 480px) {
  .grid {
    /* Keep single column for optimal 9:16 viewing */
    grid-template-columns: 1fr !important;
    gap: 16px;
    padding: 16px;
    margin: 0 auto;
  }
  
  .card {
    min-height: 350px;
    width: 100%;
    margin: 10px auto;
    padding: 6px;
    max-width: 280px; /* Smaller max width for tiny screens */
  }
  
  .card video {
    min-height: 300px !important;
  }
  
  .thumb {
    min-height: 350px;
    aspect-ratio: 9/16; /* Maintain 9:16 aspect ratio */
    border-radius: 12px;
    margin: 6px; /* Equal margin on all sides */
    padding: 6px; /* Equal padding on all sides */
  }
  
  /* Responsive meta section for small mobile */
  .card .meta {
    padding: 12px; /* Better padding for readability */
    margin: 6px; /* Equal margin on all sides */
    border-radius: 10px;
    min-height: 50px; /* More space for text */
  }
  
  .card .meta h4 {
    font-size: 14px !important; /* Larger font for better readability */
    margin: 0 0 6px;
    line-height: 1.2;
    word-wrap: break-word; /* Prevent text overflow */
    overflow-wrap: break-word;
    -webkit-hyphens: auto;
    hyphens: auto;
  }
  
  .card .meta p {
    font-size: 12px !important; /* Larger font for better readability */
    line-height: 1.3;
    word-wrap: break-word; /* Prevent text overflow */
    overflow-wrap: break-word;
  }
  
  /* Small mobile responsive category overlay */
  .overlay {
    padding: 10px; /* Optimized padding */
  }
  
  .overlay .category {
    font-size: 11px !important; /* Readable size for small mobile */
    padding: 4px 8px;
    border-radius: 10px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 140px; /* More space on single column */
  }
  
  /* Better spacing for single column layout */
  #portfolio .section {
    padding: 20px 12px;
  }
  
  .filters {
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
  }
  
  .filter {
    padding: 8px 12px;
    font-size: 13px;
  }
}
  
  /* Mobile portfolio video improvements */
  .card video {
    min-height: 200px !important; /* Increased mobile video size */
  }
  
  /* Enhanced mobile video controls */
  .video-controls {
    padding: 10px !important;
  }
  
  .volume-control,
  .fullscreen-btn {
    width: 40px !important;
    height: 40px !important;
    font-size: 16px !important;
    min-width: 40px !important;
    min-height: 40px !important;
  }
  
  .video-thumbnail {
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
  }
  
  .card video {
    cursor: pointer;
    pointer-events: auto;
  }
  
  /* Mobile touch indicator */
  @media (max-width: 768px) {
    .video-thumbnail::after {
      content: "👆 Tap to play • Double-tap for fullscreen";
      position: absolute;
      bottom: 10px;
      left: 50%;
      transform: translateX(-50%);
      background: rgba(0,0,0,0.8);
      color: white;
      padding: 4px 8px;
      border-radius: 12px;
      font-size: 11px;
      opacity: 0;
      transition: opacity 0.3s ease;
      pointer-events: none;
    }
    
    .video-thumbnail:hover::after {
      opacity: 1;
    }
  }
  
  /* Footer size reduction for mobile */
  .footer {
    min-height: 200px !important;
    padding: 20px 0 !important;
  }
  
  .services-showcase {
    padding: 20px 0 !important;
  }
  
  /* Mobile navbar tagline visibility */
  .brand .tagline {
    display: block !important;
    font-size: 0.7rem !important;
    margin-top: 2px !important;
    opacity: 0.8 !important;
  }
}

/* ========================================
   ENHANCED HERO SUBTITLE STYLING
======================================== */

/* Modern Box Design for Hero Subtitle */
.hero-subtitle {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 16px;
  margin: 24px 0 32px 0;
  max-width: 100%;
}

.subtitle-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(123, 47, 242, 0.2);
  border-radius: 12px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}

.subtitle-item::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(123, 47, 242, 0.1) 0%, rgba(123, 47, 242, 0.05) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.subtitle-item:hover {
  transform: translateY(-2px);
  border-color: rgba(123, 47, 242, 0.4);
  box-shadow: 0 8px 32px rgba(123, 47, 242, 0.15);
}

.subtitle-item:hover::before {
  opacity: 1;
}

.subtitle-icon {
  font-size: 20px;
  flex-shrink: 0;
  filter: drop-shadow(0 0 8px rgba(123, 47, 242, 0.3));
  z-index: 1;
  position: relative;
}

.subtitle-text {
  font-size: 15px;
  font-weight: 500;
  color: #fff;
  line-height: 1.4;
  z-index: 1;
  position: relative;
}

/* ========================================
   RESPONSIVE HERO SUBTITLE
======================================== */

/* Tablet Design */
@media (max-width: 1024px) {
  .hero-subtitle {
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    margin: 20px 0 28px 0;
  }
  
  .subtitle-item {
    padding: 14px 16px;
    gap: 10px;
  }
  
  .subtitle-icon {
    font-size: 18px;
  }
  
  .subtitle-text {
    font-size: 14px;
  }
}

/* Mobile Design */
@media (max-width: 768px) {
  .hero-subtitle {
    grid-template-columns: 1fr;
    gap: 12px;
    margin: 18px 0 24px 0;
  }
  
  .subtitle-item {
    padding: 12px 16px;
    gap: 12px;
    border-radius: 10px;
    min-height: 60px;
    justify-content: flex-start;
  }
  
  .subtitle-icon {
    font-size: 20px;
  }
  
  .subtitle-text {
    font-size: 14px;
    font-weight: 500;
  }
}

/* Extra Small Mobile */
@media (max-width: 480px) {
  .hero-subtitle {
    gap: 10px;
    margin: 16px 0 20px 0;
  }
  
  .subtitle-item {
    padding: 10px 14px;
    gap: 10px;
    min-height: 55px;
  }
  
  .subtitle-icon {
    font-size: 18px;
  }
  
  .subtitle-text {
    font-size: 13px;
  }
}

/* ========================================
   ENHANCED ANIMATIONS
======================================== */

.subtitle-item {
  animation: slideInUp 0.6s ease-out forwards;
  opacity: 0;
  transform: translateY(20px);
}

.subtitle-item:nth-child(1) { animation-delay: 0.1s; }
.subtitle-item:nth-child(2) { animation-delay: 0.2s; }
.subtitle-item:nth-child(3) { animation-delay: 0.3s; }
.subtitle-item:nth-child(4) { animation-delay: 0.4s; }

@keyframes slideInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Enhanced Video Controls */
.video-controls {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.1);
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 10;
}

.thumb:hover .video-controls,
.thumb.active .video-controls {
  opacity: 1;
}

.play-overlay {
  font-size: 3rem;
  color: white;
  text-shadow: 0 0 10px rgba(0,0,0,0.8);
  transition: opacity 0.3s ease;
}

.volume-control, .fullscreen-btn {
  position: absolute;
  background: rgba(0,0,0,0.8);
  color: white;
  border: none;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 16px;
  transition: all 0.3s ease;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.volume-control:hover, .fullscreen-btn:hover {
  background: rgba(123,47,242,0.9);
  transform: scale(1.1);
}

.volume-control {
  top: 10px;
  right: 10px;
}

.fullscreen-btn {
  top: 10px;
  right: 60px;
  font-size: 14px;
}

/* Mobile Fullscreen Modal */
.mobile-fullscreen-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,0.95);
  z-index: 10000;
  display: flex;
  flex-direction: column;
  padding: 20px;
}

.fullscreen-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: white;
  margin-bottom: 20px;
}

.fullscreen-header h3 {
  margin: 0;
  font-size: 1.2rem;
}

.close-fullscreen {
  background: none;
  border: none;
  color: white;
  font-size: 1.5rem;
  cursor: pointer;
  padding: 10px;
}

.fullscreen-video-container {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.fullscreen-controls {
  display: flex;
  align-items: center;
  gap: 15px;
  color: white;
  margin-top: 20px;
  padding: 15px;
  background: rgba(0,0,0,0.7);
  border-radius: 10px;
}

.fullscreen-controls button {
  background: none;
  border: none;
  color: white;
  font-size: 1.2rem;
  cursor: pointer;
  padding: 8px;
  border-radius: 5px;
  transition: background 0.3s;
}

.fullscreen-controls button:hover {
  background: rgba(123,47,242,0.5);
}

.fs-progress {
  flex: 1;
  height: 5px;
  background: rgba(255,255,255,0.3);
  border-radius: 5px;
  outline: none;
  cursor: pointer;
}

.fs-progress::-webkit-slider-thumb {
  appearance: none;
  width: 15px;
  height: 15px;
  background: #7B2FF2;
  border-radius: 50%;
  cursor: pointer;
}

.fs-time {
  font-size: 0.9rem;
  min-width: 100px;
}

/* Mobile Video Size Improvements */
@media (max-width: 768px) {
  .card {
    min-height: 250px; /* Increased from 200px */
  }
  
  .card video {
    min-height: 200px !important;
  }
  
  .play-overlay {
    font-size: 2.5rem; /* Slightly smaller for mobile */
  }
  
  .volume-control, .fullscreen-btn {
    width: 35px;
    height: 35px;
    font-size: 14px;
  }
  
  .fullscreen-btn {
    right: 50px;
  }
}

@media (max-width: 480px) {
  .card {
    min-height: 220px;
  }
  
  .card video {
    min-height: 180px !important;
  }
}

/* ===============================================
   REVIEWS SECTION - Advanced Styling
   =============================================== */

/* Reviews Section */
#reviews {
  /* background: linear-gradient(135deg, var(--bg) 0%, rgba(123,47,242,0.02) 100%); */
  position: relative;
  overflow: hidden;
}

#reviews::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(circle at 30% 20%, rgba(123,47,242,0.05) 0%, transparent 50%);
  pointer-events: none;
}

.reviews-container {
  position: relative;
  z-index: 1;
}

.reviews-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
  flex-wrap: wrap;
  gap: 20px;
}

.reviews-stats {
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
}

.reviews-stats .stat-item {
  text-align: center;
  padding: 25px 20px;
  background: var(--panel);
  border-radius: 16px;
  border: 1px solid rgba(123,47,242,0.1);
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  min-width: 190px;
}

.reviews-stats .stat-item::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(135deg, var(--accent), var(--accent2));
}

.reviews-stats .stat-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(123,47,242,0.15);
  border-color: rgba(123,47,242,0.2);
}

.stat-number {
  font-size: 2rem;
  font-weight: 700;
  color: var(--accent);
  margin-bottom: 5px;
  background: linear-gradient(135deg, var(--accent), var(--accent2));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.stat-label {
  font-size: 0.95rem;
  color: var(--muted);
  font-weight: 500;
  margin-top: 5px;
  line-height: 1.2;
}

.write-review-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: linear-gradient(135deg, var(--accent), var(--accent2));
  color: white;
  border: none;
  border-radius: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(123,47,242,0.3);
  position: relative;
  overflow: hidden;
}

.write-review-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
  transition: left 0.6s ease;
}

.write-review-btn:hover::before {
  left: 100%;
}

.write-review-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(123,47,242,0.4);
}

/* Reviews Grid */
.reviews-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: 25px;
  margin-bottom: 40px;
}

.review-card {
  background: var(--panel);
  border-radius: 20px;
  padding: 25px;
  border: 1px solid rgba(123,47,242,0.1);
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.review-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(135deg, var(--accent), var(--accent2));
  opacity: 0;
  transition: opacity 0.3s ease;
}

.review-card:hover::before {
  opacity: 1;
}

.review-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 40px rgba(123,47,242,0.15);
  border-color: rgba(123,47,242,0.2);
}

.review-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}

.reviewer-info {
  display: flex;
  align-items: center;
  gap: 12px;
}

.reviewer-avatar {
  width: 45px;
  height: 45px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--accent), var(--accent2));
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-weight: 700;
  font-size: 1.1rem;
}

.reviewer-details h5 {
  margin: 0;
  color: var(--white);
  font-weight: 600;
  font-size: 1rem;
}

.reviewer-details .project-type {
  font-size: 0.85rem;
  color: var(--muted);
  margin-top: 2px;
}

.review-rating {
  display: flex;
  gap: 2px;
}

.review-rating .star {
  color: #FFD700;
  font-size: 1.2rem;
}

.review-rating .star.empty {
  color: rgba(255,215,0,0.3);
}

.review-text {
  color: var(--muted);
  line-height: 1.6;
  margin-bottom: 15px;
  font-size: 0.95rem;
}

.review-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.8rem;
  color: var(--muted);
  border-top: 1px solid rgba(123,47,242,0.1);
  padding-top: 15px;
}

.review-date {
  opacity: 0.7;
}

.review-verified {
  display: flex;
  align-items: center;
  gap: 5px;
  color: var(--accent);
}

/* Loading State */
.loading-reviews {
  text-align: center;
  padding: 60px 20px;
  color: var(--muted);
}

.loading-spinner-reviews {
  width: 40px;
  height: 40px;
  border: 3px solid rgba(123,47,242,0.1);
  border-top: 3px solid var(--accent);
  border-radius: 50%;
  animation: spin 1s linear infinite;
  margin: 0 auto 15px;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* Pagination */
.reviews-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  margin-top: 40px;
}

.pagination-btn {
  padding: 10px 20px;
  background: var(--panel);
  border: 1px solid rgba(123,47,242,0.1);
  border-radius: 10px;
  color: var(--white);
  cursor: pointer;
  transition: all 0.3s ease;
  font-weight: 500;
}

.pagination-btn:hover:not(:disabled) {
  background: var(--accent);
  border-color: var(--accent);
  transform: translateY(-2px);
}

.pagination-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.pagination-info {
  color: var(--muted);
  font-weight: 500;
}

/* Review Modal */
.review-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.8);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.review-modal.active {
  display: flex;
}

.review-modal-content {
  background: var(--bg);
  border-radius: 20px;
  width: 90%;
  max-width: 500px;
  max-height: 90vh;
  overflow-y: auto;
  border: 1px solid rgba(123,47,242,0.2);
  box-shadow: 0 20px 60px rgba(0,0,0,0.5);
  position: relative;
}

.review-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 25px 25px 0;
  margin-bottom: 20px;
}

.review-modal-header h3 {
  margin: 0;
  color: var(--white);
  font-weight: 700;
  background: linear-gradient(135deg, var(--accent), var(--accent2));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.close-modal {
  background: none;
  border: none;
  color: var(--muted);
  font-size: 1.5rem;
  cursor: pointer;
  padding: 5px;
  border-radius: 8px;
  transition: all 0.3s ease;
}

.close-modal:hover {
  background: rgba(123,47,242,0.1);
  color: var(--accent);
}

.review-form {
  padding: 0 25px 25px;
}

.review-form .form-group {
  margin-bottom: 20px;
}

.review-form label {
  display: block;
  margin-bottom: 8px;
  color: var(--white);
  font-weight: 500;
}

.review-form input,
.review-form select,
.review-form textarea {
  width: 100%;
  padding: 12px 16px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(123,47,242,0.2);
  border-radius: 10px;
  color: var(--white);
  font-size: 0.95rem;
  transition: all 0.3s ease;
  box-sizing: border-box;
}

.review-form input:focus,
.review-form select:focus,
.review-form textarea:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(123,47,242,0.1);
  background: rgba(255,255,255,0.08);
}

.review-form input::placeholder,
.review-form textarea::placeholder {
  color: var(--muted);
}

/* Star Rating */
.star-rating {
  display: flex;
  gap: 5px;
  margin: 10px 0;
}

.star-rating .star {
  font-size: 2rem;
  color: rgba(255,215,0,0.3);
  cursor: pointer;
  transition: all 0.2s ease;
  -webkit-user-select: none;
  user-select: none;
}

.star-rating .star:hover,
.star-rating .star.active {
  color: #FFD700;
  transform: scale(1.1);
}

.star-rating .star.active {
  text-shadow: 0 0 10px rgba(255,215,0,0.5);
}

/* Checkbox */
.checkbox-label {
  display: flex !important;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  font-size: 0.9rem;
}

.checkbox-label input[type="checkbox"] {
  width: auto !important;
  margin: 0;
}

.checkmark {
  position: relative;
}

.submit-review-btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 15px;
  background: linear-gradient(135deg, var(--accent), var(--accent2));
  color: white;
  border: none;
  border-radius: 12px;
  font-weight: 600;
  font-size: 1rem;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-top: 20px;
}

.submit-review-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(123,47,242,0.4);
}

/* Empty State */
.reviews-empty {
  text-align: center;
  padding: 60px 20px;
  color: var(--muted);
}

.reviews-empty .empty-icon {
  font-size: 4rem;
  margin-bottom: 20px;
  opacity: 0.5;
}

.reviews-empty h4 {
  color: var(--white);
  margin-bottom: 10px;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
  .reviews-header {
    flex-direction: column;
    text-align: center;
  }
  
  .reviews-stats {
    justify-content: center;
  }
  
  .reviews-stats .stat-item {
    padding: 15px 20px;
  }
  
  .reviews-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .review-card {
    padding: 20px;
  }
  
  .review-modal-content {
    margin: 20px;
    width: calc(100% - 40px);
  }
  
  .reviews-pagination {
    flex-direction: column;
    gap: 15px;
  }
  
  .pagination-btn {
    width: 100%;
    max-width: 200px;
  }
}

@media (max-width: 480px) {
  .review-modal-content {
    margin: 10px;
    width: calc(100% - 20px);
  }
  
  .reviews-stats {
    flex-direction: column;
    width: 100%;
  }
  
  .reviews-stats .stat-item {
    width: 100%;
  }
}

/* Simplified Footer Styles */
.footer-content-simple {
  text-align: center;
  padding: 40px 20px;
  max-width: 600px;
  margin: 0 auto;
}

.footer-content-simple .copyright {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 15px;
  font-size: 1rem;
  color: rgba(255,255,255,0.9);
}

.footer-content-simple .separator {
  color: rgba(255,255,255,0.6);
}

.footer-content-simple .footer-tagline {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  font-size: 0.9rem;
  color: rgba(255,255,255,0.8);
}

.footer-content-simple .heart {
  color: #ff6b6b;
  font-size: 1.1rem;
  animation: heartbeat 2s ease-in-out infinite;
}

@keyframes heartbeat {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}

@media (max-width: 480px) {
  .footer-content-simple .copyright {
    flex-direction: column;
    gap: 5px;
    font-size: 0.9rem;
  }
  
  .footer-content-simple .separator {
    display: none;
  }
  
  .footer-content-simple .footer-tagline {
    font-size: 0.8rem;
    flex-wrap: wrap;
  }
}
}