<!DOCTYPE html><html lang="en" data-font-scheme="domine"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="shortcut icon" type="image/png" href="https://usc1.contabostorage.com/83226f3934d449eb8c821d388b39f7b1:nextbacklinks/favicon/favicons/KEITHSTON_23_UfcJ4iI_S2iWnCg_rTkIKts_ttvLNSS.png"> <title>Tech Insights & Digital Trends Blog | Latest Tech News</title> <meta name="description" content="Explore the latest in technology, digital trends, and innovative insights. Stay updated with expert analysis and practical tips for tech enthusiasts."> <link href="/static/blogapp/assets/css/themify-icons.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/flaticon.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/bootstrap.min.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/animate.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/owl.carousel.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/owl.theme.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/slick.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/slick-theme.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/swiper.min.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/owl.transitions.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/jquery.fancybox.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/odometer-theme-default.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/component.css" rel="stylesheet"> <link href="/static/blogapp/assets/sass/style.css" rel="stylesheet"> <link href="/static/blogapp/assets/sass/layout/navbar.css" rel="stylesheet"> <link href="/static/blogapp/assets/css/responsive.css" rel="stylesheet"> <link href="/static/blogapp/assets/sass/fonts.css" rel="stylesheet"> <link rel="canonical" href="https://889993044.xyz/"> <!-- Dynamic CSS Override --> <style> :root { /* Bootstrap 5 Color Overrides */ --bs-primary: #9333ea; --bs-primary-rgb: 9333ea; --bs-secondary: #a3bffa; --bs-success: #2dd4bf; --bs-danger: #f43f5e; --bs-warning: #f59e0b; --bs-info: #60a5fa; --bs-light: #ede9fe; --bs-dark: #2e1065; /* Your SCSS Variables Override */ --theme-primary-color: #9333ea; --theme-primary-color-s2: #9333ea; --body-bg-color: #0f172a; --section-bg-color: #f9faff; --text-color: #ede9fe; --text-light-color: #676767; --heading-color: #ede9fe; --border-color: #6d28d9; --border-color-s2: #eef0fc; --border-color-black: #3c3c40; --body-color: #777777; --small-black: #777777; --light: #8188a9; --cyan: #848892; --black-section-text-color: #CBCBCB; --black-bg-color: #202026; --black-bg-color-s2: #2C2C32; --dark-gray: #232f4b; /* Component Specific Colors (Bootstrap + Your SCSS) */ --navbar-bg: #2e1065; --nav-bg: #2e1065; --sub-nav: #4c1d95; --navbar-color: #ede9fe; --topbar-bg: #0f172a; --topbar-color: #ede9fe; --footer-bg: #2e1065; --footer-color: #ede9fe; --card-bg: rgba(46, 16, 101, 0.8); --card-border: #6d28d9; --card-radius: 14px; --link-color: #9333ea; --link-hover: #7e22ce; --blog-color: #ede9fe; --blog-bg: rgba(147, 51, 234, 0.1); /* Simplified Font System */ --border-radius: 12px; /* Bootstrap Font Override - Uses CSS font system from fonts.css */ --bs-font-sans-serif: var(--font-primary); } /* Font Override - Let CSS font system handle fonts via data-font-scheme */ body { /* Remove font-family override - let data-font-scheme handle it */ font-weight: 400; color: var(--text-color) !important; background-color: var(--body-bg-color) !important; min-height: 100vh; } /* Headings - Let CSS font system handle fonts via data-font-scheme */ h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { /* Remove font-family override - let data-font-scheme handle it */ font-weight: 600; color: var(--heading-color) !important; } /* Bootstrap Primary Color Throughout Site */ .btn-primary { background-color: var(--bs-primary) !important; border-color: var(--bs-primary) !important; transition: all 0.3s ease; } .btn-primary:hover { background-color: var(--theme-primary-color-s2) !important; border-color: var(--theme-primary-color-s2) !important; transform: translateY(-2px); box-shadow: 0 5px 15px rgba(var(--bs-primary-rgb), 0.4); } .btn-outline-primary { color: var(--bs-primary) !important; border-color: var(--bs-primary) !important; } .btn-outline-primary:hover { background-color: var(--bs-primary) !important; border-color: var(--bs-primary) !important; } .text-primary { color: var(--bs-primary) !important; } .bg-primary { background-color: var(--bs-primary) !important; } /* Your Navigation System */ .navigation.navbar, .navbar { background-color: var(--navbar-bg) !important ; /* Remove font-family override - let data-font-scheme handle it */ border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important ; } .navigation.navbar .fluid-container{ min-height: 60px; } .navigation .navbar-brand, .navigation .navbar-nav .nav-link, .navbar-brand, nav a, .navbar-nav .nav-link { color: var(--navbar-color) !important; /* Remove font-family override - let data-font-scheme handle it */ transition: all 0.3s ease; } .navigation .navbar-nav .nav-link:hover, .navbar-nav .nav-link:hover, nav a:hover, .navigation .navbar-nav .nav-link.active, .navbar-nav .nav-link.active { color: var(--navbar-color) !important; transform: translateY(-1px); opacity: 0.85; } /* Your existing navbar specific classes */ .navigation .sub-menu { background: var(--navbar-bg) !important; box-shadow: 0 5px 15px rgba(0,0,0,0.1); border: 1px solid var(--border-color); } .border-color{ border-color: var(--border-color) !important; } .navigation .sub-menu li a { color: var(--navbar-color) !important; /* Remove font-family override - let data-font-scheme handle it */ } .navigation .sub-menu li a:hover { background: var(--bs-primary) !important; color: #ffffff !important; } .card { background: rgba(46, 16, 101, 0.8) !important; backdrop-filter: blur(10px); border: 1px solid var(--border-color) !important; transition: all 0.3s ease; border-radius: 12px; color: var(--text-color) !important; } .navbar-brand img{ height: 70px; object-fit: contain; } .card:hover { transform: translateY(-5px); box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1); } .card-header { background-color: var(--section-bg-color) !important; border-color: var(--border-color) !important; color: var(--text-color) !important; } /* Bootstrap Form Controls */ .form-control { color: var(--text-color) !important; background-color: var(--body-bg-color) !important; border-color: var(--border-color) !important; /* Remove font-family override - let data-font-scheme handle it */ } .form-control:focus { border-color: var(--bs-primary) !important; box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary), 0.25) !important; } /* Links throughout site */ .nav1 a { color: var(--link-color) !important; text-decoration: none; transition: all 0.3s ease; } a:hover { color: var(--link-hover) !important; } /* Text color classes */ .text-muted { color: var(--body-color) !important; } .text-light { color: var(--light) !important; } /* Section backgrounds */ .section-bg, .bg-light { background-color: var(--section-bg-color) !important; } /* Dark sections */ .bg-dark, .dark-section { background-color: var(--black-bg-color) !important; color: var(--black-section-text-color) !important; } /* Footer styling */ .footer, footer { background-color: var(--footer-bg) !important; color: var(--footer-color) !important; } .footer h1, .footer h2, .footer h3, .footer h4, .footer h5, .footer h6, footer h1, footer h2, footer h3, footer h4, footer h5, footer h6 { color: var(--black-section-text-color) !important; /* Remove font-family override - let data-font-scheme handle it */ } .footer a, footer a { color: var(--black-section-text-color) !important; } .footer a:hover, footer a:hover { color: var(--bs-primary) !important; } /* Bootstrap Secondary Colors */ .btn-secondary { background-color: var(--bs-secondary) !important; border-color: var(--bs-secondary) !important; } .text-secondary { color: var(--bs-secondary) !important; } .bg-secondary { background-color: var(--bs-secondary) !important; } /* Bootstrap Success, Danger, Warning, Info */ .btn-success { background-color: var(--bs-success) !important; border-color: var(--bs-success) !important; } .btn-danger { background-color: var(--bs-danger) !important; border-color: var(--bs-danger) !important; } .btn-warning { background-color: var(--bs-warning) !important; border-color: var(--bs-warning) !important; } .btn-info { background-color: var(--bs-info) !important; border-color: var(--bs-info) !important; } .text-success { color: var(--bs-success) !important; } .text-danger { color: var(--bs-danger) !important; } .text-warning { color: var(--bs-warning) !important; } .text-info { color: var(--bs-info) !important; } .bg-success { background-color: var(--bs-success) !important; } .bg-danger { background-color: var(--bs-danger) !important; } .bg-warning { background-color: var(--bs-warning) !important; } .bg-info { background-color: var(--bs-info) !important; } /* Mobile menu styling */ .navbar-toggler, .open-btn { border-color: var(--navbar-color) !important; } .icon-bar { background-color: var(--navbar-color) !important; } /* Smooth Animations */ .fade-in-up { animation: fadeInUp 0.6s ease-out; } @keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } } /* Responsive adjustments */ @media (max-width: 768px) { .navbar { padding: 0.5rem 0; } .card:hover { transform: none; } } </style> <script> var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u = "//analytics.tech-vikings.com/"; _paq.push(['setTrackerUrl', u + 'matomo.php']); _paq.push(['setSiteId', '2']); var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0]; g.async = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s); })();</script></head> <body class="page-blogapp:homepage theme-theme_86"> <div id="healthcheck"></div> <!-- start page-wrapper --> <div class="page-wrapper"> <!-- start preloader --> <div class="preloader" style="z-index: 1025;"> <div class="angular-shape"> <div></div> <div></div> <div></div> </div> <div class="spinner"> <div class="double-bounce1"></div> <div class="double-bounce2"></div> </div></div> <!-- end preloader --> <!-- Start header --> <header id="header" class="wpo-site-header"> <header class="header-v2 mb-4"> <div class="main-header-v2"> <div class="container-fluid fluid-container"> <div class="row align-items-center"> <div class="col-lg-3 col-md-4 col-6"> <div class="logo-area-v2"> <a class="navbar-brand" href="/"> <img src="https://usc1.contabostorage.com/83226f3934d449eb8c821d388b39f7b1:nextbacklinks/site_logos/429af7bc-a39a-41d7-bb7c-1732a0fd72fc_logo.png" alt="TechSphere Blog"> </a> </div> </div> <div class="col-lg-6 col-md-8 col-6 d-none d-md-block"> <div class="search-area-v2"> <form class="search-wrapper-v2" action="#" method="get"> <input type="search" class="search-field-v2" placeholder="Search articles, news, tutorials..." name="q" id="search-input1"> <!-- <button type="submit" class="search-button-v2"> <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> <circle cx="11" cy="11" r="8"></circle> <path d="m21 21-4.35-4.35"></path> </svg> <span>Search</span> </button> --> <!-- The search results will be displayed here --> </form> <div id="search-results1" class="search-results-container search-v1"></div> </div> </div> </div> <!-- Mobile Search --> <div class="row d-md-none"> <div class="col-12"> <div class="search-area-v2"> <form class="search-wrapper-v2" action="#" method="get"> <input type="search" class="search-field-v2" placeholder="Search..." name="q" id="search-input"> <!-- <button type="submit" class="search-button-v2"> <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> <circle cx="11" cy="11" r="8"></circle> <path d="m21 21-4.35-4.35"></path> </svg> <span>Search</span> </button> --> <!-- The search results will be displayed here --> </form> <div id="search-results12" class="search-results-container search-v1"></div> </div> </div> </div> </div> </div> <!-- Navigation Bar --> <nav class="nav-bar-v2"> <div class="container-fluid fluid-container"> <div class="nav-container-v2 py-2"> <!-- Mobile Menu Toggle --> <button class="mobile-toggle d-lg-none" type="button" onclick="toggleMobileMenu()"> <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> <line x1="3" y1="6" x2="21" y2="6"></line> <line x1="3" y1="12" x2="21" y2="12"></line> <line x1="3" y1="18" x2="21" y2="18"></line> </svg> Menu </button> <!-- Navigation Menu --> <ul class="nav-menu-v2" id="navMenu"> <li class="nav-item-v2"> <a href="/" class="nav-link-v2 active-v2">Home</a> </li> <li class="nav-item-v2"> <a href="/category/all-posts/" class="nav-link-v2"> All Posts </a> </li> <li class="nav-item-v2"> <a href="/category/business/" class="nav-link-v2"> Business </a> </li> <li class="nav-item-v2"> <a href="/category/esports/" class="nav-link-v2"> Esports </a> </li> <li class="nav-item-v2"> <a href="/category/fashion/" class="nav-link-v2"> Fashion </a> </li> <li class="nav-item-v2"> <a href="/category/featured/" class="nav-link-v2"> Featured </a> </li> <li class="nav-item-v2" onclick="toggleDropdown(this, event)"> <a href="#" class="nav-link-v2"> More <svg class="d-lg-none" width="12" height="12" style="margin-left: 5px;" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> <path d="m6 9 6 6 6-6"></path> </svg> </a> <div class="dropdown-v2"> <a href="/category/gaming/" class="dropdown-link-v2"> Gaming </a> <a href="/category/health/" class="dropdown-link-v2"> Health </a> <a href="/category/life-fitness/" class="dropdown-link-v2"> Life & Fitness </a> <a href="/category/lifestyle/" class="dropdown-link-v2"> Lifestyle </a> <a href="/category/news/" class="dropdown-link-v2"> News </a> <a href="/category/others/" class="dropdown-link-v2"> Others </a> <a href="/category/politics/" class="dropdown-link-v2"> Politics </a> <a href="/category/sports/" class="dropdown-link-v2"> Sports </a> <a href="/category/tech/" class="dropdown-link-v2"> Tech </a> <a href="/category/travel/" class="dropdown-link-v2"> Travel </a> </div> </li> <li> <a href="/page/contact-us/"> Contact Us </a> </li> </ul> </div> </div> </nav></header> <script> function toggleMobileMenu() { const navMenu = document.getElementById('navMenu'); navMenu.classList.toggle('show'); } function toggleDropdown(element, event) { // Only handle dropdown toggle on mobile if (window.innerWidth < 992) { event.preventDefault(); element.classList.toggle('dropdown-open'); } } // Close mobile menu when clicking outside document.addEventListener('click', function (event) { const navMenu = document.getElementById('navMenu'); const mobileToggle = document.querySelector('.mobile-toggle'); if (!navMenu.contains(event.target) && !mobileToggle.contains(event.target)) { navMenu.classList.remove('show'); } }); // Handle window resize window.addEventListener('resize', function () { const navMenu = document.getElementById('navMenu'); if (window.innerWidth >= 992) { navMenu.classList.remove('show'); // Remove all dropdown-open classes document.querySelectorAll('.dropdown-open').forEach(item => { item.classList.remove('dropdown-open'); }); } });</script> <script> document.addEventListener("DOMContentLoaded", function () { console.log("loaded"); //const searchInput = document.getElementById("search-input1"); const searchInput = window.innerWidth <= 991 ? document.getElementById("search-input") : document.getElementById("search-input1"); const searchResults = window.innerWidth <= 991 ? document.getElementById("search-results12") :document.getElementById("search-results1"); if (!searchInput || !searchResults) { console.error("Search input/results not found"); return; } // Prevent form submission if (searchInput.form) { searchInput.form.addEventListener("submit", function (e) { e.preventDefault(); }); } // Add event listener for keyup searchInput.addEventListener("keyup", function (e) { console.log("Key pressed:", e.key); e.preventDefault(); const query = searchInput.value.trim(); console.log("User is typing: " + query); // If empty → clear and hide if (query === "") { searchResults.innerHTML = ""; searchResults.style.display = "none"; return; } // Show results searchResults.style.display = "block"; // Fetch search results fetch("/search-posts?version=v1&q=" + encodeURIComponent(query), { method: "GET", headers: { "X-Requested-With": "XMLHttpRequest" }, }) .then(response => { console.log("Response Status:", response.status); return response.json(); }) .then(data => { console.log("Data received:", data); if (data.html) { searchResults.innerHTML = data.html; } else { searchResults.innerHTML = "<p>No results found.</p>"; } }) .catch(error => { console.error("Error fetching search results:", error); }); }); // Close results when clicking outside document.addEventListener("click", function (e) { if (!searchInput.contains(e.target) && !searchResults.contains(e.target)) { searchResults.style.display = "none"; } }); // Close results on ESC key document.addEventListener("keydown", function (e) { if (e.key === "Escape") { searchResults.style.display = "none"; } }); });</script> <style> /* search field */ .search-results-container { position: absolute; top: 100%; /* Position it below the input field */ left: 10px; right: 10px; background-color: white; border: 1px solid #ddd; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); max-height: 300px; overflow-y: auto; z-index: 1000; display: none; /* Initially hidden */} .search-results-container p { margin: 0;} .search-results-container .result-item { padding: 10px; cursor: pointer;} .search-results-container .result-item:hover { background-color: #f0f0f0;}</style> </header> <!-- end of header --> <!-- start of wpo-blog-hero --> <!-- end of wpo-blog-hero --> <!-- start of wpo-breacking-news --> <!-- end of wpo-breacking-news --> <!-- start wpo-blog-highlights-section --> <style> /* General Section Styling */ .blog-highlights-v10 { padding: 20px 0; /* Adjusted padding for distinction */ position: relative; } /* Section Header */ .section-header-v10 { text-align: left; /* Left-aligned for uniqueness */ margin-bottom: 50px; padding-left: 15px; } .section-title-v10 { font-size: 2.9rem; /* Slightly smaller than v9 for variety */ font-weight: 800; color: #1a1a1a; margin-bottom: 15px; text-transform: none; /* No uppercase for modern look */ } .section-subtitle-v10 { font-size: 1.05rem; color: #555; max-width: 650px; line-height: 1.6; } /* Blog Card */ .blog-card-v10 { background: var(--card-bg); border-radius: 10px; /* Softer corners */ margin-bottom: 35px; overflow: hidden; opacity: 0; /* Initially hidden for animation */ transform: rotate(1.5deg); /* Subtle tilt for animation */ transition: opacity 0.6s ease, transform 0.6s ease, box-shadow 0.3s ease; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06); } .blog-card-v10.visible { opacity: 1; transform: rotate(0deg); /* Straighten on appearance */ } @keyframes fadeRotateIn { from { opacity: 0; transform: rotate(1.5deg); } to { opacity: 1; transform: rotate(0deg); } } .blog-card-v10:hover { box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1); /* Subtle hover shadow */ } /* Blog Image */ .blog-image-container-v10 { width: 100%; height: 240px; /* Unique height for v10 */ overflow: hidden; position: relative; } .blog-image-v10 img { width: 100%; height: 100%; object-fit: cover; } /* Blog Content */ .blog-content-v10 { padding: 20px 22px; /* Adjusted padding */ text-align: left; } .blog-title-v10 { font-size: 1.55rem; /* Slightly larger than v9 */ font-weight: 700; margin-bottom: 12px; color: #1a1a1a; } .blog-meta-v10 { font-size: 0.85rem; color: #777; margin-bottom: 12px; font-style: italic; /* Italic for distinction */ } .blog-excerpt-v10 { font-size: 0.95rem; color: #555; margin-bottom: 15px; line-height: 1.6; } .blog-actions-v10 { display: inline-block; } .blog-read-more-v10 { font-size: 0.95rem; color: #e74c3c; /* Red accent for uniqueness */ text-decoration: none; font-weight: 600; transition: color 0.3s ease; } .blog-read-more-v10:hover { color: #c0392b; /* Darker red on hover */ } /* Responsive Design */ @media (max-width: 768px) { .section-title-v10 { font-size: 2.4rem; } .section-header-v10 { padding-left: 10px; } .blog-card-v10 { margin-bottom: 20px; } .blog-meta-v10 { font-size: 0.75rem; } .blog-image-container-v10 { height: 170px; /* Adjusted for mobile */ } .sidebar-v10 { padding: 15px; } }</style> <section class="blog-highlights-v10"> <div class="container-fluid fluid-container"> <!-- Section Header --> <div class="row"> <div class="col-12 col-lg-10"> <div class="section-header-v10"> <h2 class="section-title-v10"> Today's Top Highlights </h2> <p class="section-subtitle-v10">Discover how technology and creativity intertwine to shape storytelling in the digital age.</p> </div> </div> </div> <!-- Blog Grid and Sidebar --> <div class="row"> <div class="col-lg-8"> <div class="row"> </div> </div> <!-- Sidebar --> <div class="col col-lg-4 col-12"> <div class="sidebar-v10"> <div class="blog-sidebar"> <div class="widget recent-post-widget mb-3"> <h3>Popular Post</h3> <div class="posts"> </div> </div> </div> </div> </div> </div> </div></section> <script> // Intersection Observer for Fade-in with Slight Rotation document.addEventListener('DOMContentLoaded', function() { const observerOptions = { threshold: 0.15, // Trigger when 15% of the card is visible rootMargin: '0px 0px -50px 0px', }; const observer = new IntersectionObserver(function(entries, observer) { entries.forEach(entry => { if (entry.isIntersecting) { entry.target.classList.add('visible'); observer.unobserve(entry.target); } }); }, observerOptions); document.querySelectorAll('.blog-card-v10').forEach(card => { observer.observe(card); }); });</script> <!-- end wpo-blog-highlights-section --> <!-- start wpo-blog-sponsored-section --> <!-- end wpo-blog-sponsored-section --> <!-- start wpo-subscribe-section --> <!-- end subscribe-section --> <!-- start of wpo-site-footer-section --> <!-- Footer V5 - Clean Minimalist Bootstrap Design --><footer class="footer-v5 bg-primary-gradient border-top"> <!-- Main Footer Content --> <div class="container-fluid py-5"> <!-- Top Section with Logo and Description --> <div class="row mb-5"> <div class="col-12 text-center"> <div class="footer-brand mb-4"> <img src="https://usc1.contabostorage.com/83226f3934d449eb8c821d388b39f7b1:nextbacklinks/site_logos/429af7bc-a39a-41d7-bb7c-1732a0fd72fc_logo.png" alt="TechSphere Blog" class="footer-logo mb-3" height="60"> <h4 class="fw-bold footer-color mb-2">TechSphere Blog</h4> <p class="footer-color opacity-50">Explore the latest in technology, digital trends, and innovative insights. Stay updated with expert analysis and practical tips for tech enthusiasts.</p> </div> </div> </div> <!-- Content Grid --> <div class="d-flex justify-content-between flex-wrap gap-2 px-3"> <!-- Quick Links Column --> <div class=""> <div class="footer-section"> <h6 class="fw-bold footer-color mb-3 d-flex align-items-center"> Quick Links </h6> <ul class="list-unstyled footer-links"> <li class="">No featured posts available</li> </ul> </div> </div> <!-- Resources Column --> <div class=""> <div class="footer-section"> <h6 class="fw-bold footer-color mb-3 d-flex align-items-center"> Resources </h6> <ul class="footer-links" id="footerLinks"> </ul> </div> </div> <!-- Categories Column --> <div class=""> <div class="footer-section"> <h6 class="fw-bold footer-color mb-3 d-flex align-items-center"> Categories </h6> <div class="category-tags"> <li> <a href="/category/all-posts/" class="footer-link footer-color"> All Posts </a> </li> <li> <a href="/category/business/" class="footer-link footer-color"> Business </a> </li> <li> <a href="/category/esports/" class="footer-link footer-color"> Esports </a> </li> <li> <a href="/category/fashion/" class="footer-link footer-color"> Fashion </a> </li> <li> <a href="/category/featured/" class="footer-link footer-color"> Featured </a> </li> <li> <a href="/category/gaming/" class="footer-link footer-color"> Gaming </a> </li> </div> </div> </div> </div> </div> <!-- Footer Bottom --> <div class="footer-bottom border-top py-3"> <div class="container-fluid fluid-container"> <div class=" d-flex justify-content-between flex-wrap"> <div class=""> <p class="mb-0 footer-color "> © 2026 <span class="fw-semibold footer-color">TechSphere Blog</span>. All rights reserved. </p> </div> <div class=""> <div class="footer-nav"> <a href="/page/write-for-us/" class="text-decoration-none me-3"> <i class="bi bi-file-text me-1"></i>Write For Us </a> <a href="/page/terms-and-conditions/" class="text-decoration-none me-3"> <i class="bi bi-file-text me-1"></i>Terms </a> <a href="/sitemap.xml" class="text-decoration-none "> <i class="bi bi-diagram-3 me-1"></i>Sitemap </a> </div> </div> </div> </div> </div> </footer> <style>/* Footer V5 - Clean Minimalist Bootstrap Design */ .footer-logo { border-radius: 8px;} /* Footer Sections */.footer-section { padding: 0 15px;} .footer-section h6 { position: relative; padding-bottom: 8px;} .footer-section h6::after { content: ''; position: absolute; bottom: 0; left: 0; width: 30px; height: 2px; background: linear-gradient(45deg, var(--bs-primary), var(--footer-color)); border-radius: 1px;} /* Links Styling */.footer-links a { transition: all 0.3s ease; padding: 4px 0; border-radius: 4px;} .footer-links a:hover { color: var(--bs-primary) !important; padding-left: 8px;} .footer-links a:hover i { transform: translateX(2px);} /* Category Tags */.category-tag { transition: all 0.3s ease; padding: 6px 12px !important; font-size: 0.875rem;} /* Footer Bottom */.footer-bottom { backdrop-filter: blur(10px);} /* Responsive Design */@media (max-width: 768px) { .footer-v5 { margin-top: 60px; } .footer-section { text-align:start; margin-bottom: 40px; } .footer-links a, .category-tags { justify-content:start; } .social-links .d-flex { justify-content:start; }} @media (max-width: 576px) { .footer-brand h4 { font-size: 1.25rem; } .stats-item h5 { font-size: 1.1rem; } .newsletter-form .btn { padding: 8px 12px; }} /* Animation Classes */.fade-in { animation: fadeIn 0.6s ease-in;} @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); }} /* Loading State */.loading { pointer-events: none; opacity: 0.7;} .loading .btn { position: relative;} .loading .btn::after { content: ''; position: absolute; top: 50%; left: 50%; width: 16px; height: 16px; margin: -8px 0 0 -8px; border: 2px solid transparent; border-top-color: currentColor; border-radius: 50%; animation: spin 1s linear infinite;} @keyframes spin { to { transform: rotate(360deg); }} /* Utility Classes */.text-gradient { background: linear-gradient(45deg, var(--bs-primary), var(--bs-success)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;} .hover-lift { transition: transform 0.3s ease;} .hover-lift:hover { transform: translateY(-2px);}</style> <script>document.addEventListener('DOMContentLoaded', function() { // Initialize Bootstrap tooltips const tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]')); tooltipTriggerList.map(function (tooltipTriggerEl) { return new bootstrap.Tooltip(tooltipTriggerEl); }); // Newsletter form handling const newsletterForm = document.querySelector('.newsletter-form'); if (newsletterForm) { newsletterForm.addEventListener('submit', function(e) { e.preventDefault(); const email = this.querySelector('input[name="email"]').value.trim(); const submitBtn = this.querySelector('button[type="submit"]'); const originalContent = submitBtn.innerHTML; // Validate email if (!email || !isValidEmail(email)) { showToast('Please enter a valid email address', 'error'); return; } // Show loading state this.classList.add('loading'); submitBtn.innerHTML = '<span class="spinner-border spinner-border-sm me-1"></span>Subscribing...'; submitBtn.disabled = true; // Simulate API call setTimeout(() => { // Success state submitBtn.innerHTML = '<i class="bi bi-check-lg me-1"></i>Subscribed!'; submitBtn.classList.remove('btn-primary'); submitBtn.classList.add('btn-success'); showToast('Successfully subscribed to newsletter!', 'success'); // Reset form setTimeout(() => { this.classList.remove('loading'); submitBtn.innerHTML = originalContent; submitBtn.classList.remove('btn-success'); submitBtn.classList.add('btn-primary'); submitBtn.disabled = false; this.reset(); }, 2000); }, 1500); }); } // Email validation function function isValidEmail(email) { const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; return emailRegex.test(email); } // Toast notification function function showToast(message, type = 'info') { // Remove existing toasts const existingToasts = document.querySelectorAll('.custom-toast'); existingToasts.forEach(toast => toast.remove()); // Create toast const toast = document.createElement('div'); toast.className = `custom-toast position-fixed top-0 end-0 m-3 alert alert-${type === 'error' ? 'danger' : type} alert-dismissible fade show`; toast.style.zIndex = '9999'; toast.innerHTML = ` <div class="d-flex align-items-center"> <i class="bi bi-${type === 'success' ? 'check-circle-fill' : type === 'error' ? 'exclamation-triangle-fill' : 'info-circle-fill'} me-2"></i> <span>${message}</span> <button type="button" class="btn-close" data-bs-dismiss="alert"></button> </div> `; document.body.appendChild(toast); // Auto remove after 4 seconds setTimeout(() => { if (toast && toast.parentNode) { toast.remove(); } }, 4000); } // Smooth scroll for internal links document.querySelectorAll('a[href^="#"]').forEach(anchor => { anchor.addEventListener('click', function(e) { e.preventDefault(); const target = document.querySelector(this.getAttribute('href')); if (target) { target.scrollIntoView({ behavior: 'smooth', block: 'start' }); } }); }); // Add fade-in animation to footer sections on scroll const observerOptions = { threshold: 0.1, rootMargin: '0px 0px -50px 0px' }; const sectionObserver = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) { entry.target.classList.add('fade-in'); } }); }, observerOptions); // Observe footer sections document.querySelectorAll('.footer-section, .stats-item').forEach(section => { sectionObserver.observe(section); }); // Enhanced hover effects for category tags document.querySelectorAll('.category-tag').forEach(tag => { tag.addEventListener('mouseenter', function() { this.style.transform = 'translateY(-2px) scale(1.02)'; }); tag.addEventListener('mouseleave', function() { this.style.transform = 'translateY(0) scale(1)'; }); }); // Prevent default for demo links document.querySelectorAll('a[href="#"]').forEach(link => { link.addEventListener('click', function(e) { e.preventDefault(); }); }); // Add click ripple effect to buttons document.querySelectorAll('.btn').forEach(btn => { btn.addEventListener('click', function(e) { const ripple = document.createElement('span'); const rect = this.getBoundingClientRect(); const size = Math.max(rect.width, rect.height); const x = e.clientX - rect.left - size / 2; const y = e.clientY - rect.top - size / 2; ripple.style.cssText = ` position: absolute; left: ${x}px; top: ${y}px; width: ${size}px; height: ${size}px; border-radius: 50%; background: rgba(255, 255, 255, 0.4); transform: scale(0); animation: ripple-effect 0.6s linear; pointer-events: none; `; this.style.position = 'relative'; this.style.overflow = 'hidden'; this.appendChild(ripple); setTimeout(() => ripple.remove(), 600); }); }); }); // Add ripple animation CSSconst rippleCSS = document.createElement('style');rippleCSS.textContent = ` @keyframes ripple-effect { to { transform: scale(4); opacity: 0; } }`;document.head.appendChild(rippleCSS); document.addEventListener('DOMContentLoaded', function () { var btn = document.getElementById('toggleFooterLinks'); if (!btn) return; // No extra links, no button var extras = document.querySelectorAll('#footerLinks li.extra'); btn.addEventListener('click', function () { var anyHidden = Array.prototype.some.call(extras, function (li) { return li.classList.contains('d-none'); }); extras.forEach(function (li) { if (anyHidden) { li.classList.remove('d-none'); li.classList.add('show'); } else { li.classList.add('d-none'); li.classList.remove('show'); } }); btn.textContent = anyHidden ? 'View less' : 'View more'; btn.setAttribute('aria-expanded', anyHidden ? 'true' : 'false'); });}); </script> <!-- end of wpo-site-footer-section --> </div> <!-- end of page-wrapper --> <!-- All JavaScript files ================================================== --> <script src="/static/blogapp/assets/js/jquery.min.js"></script><script src="/static/blogapp/assets/js/bootstrap.bundle.min.js"></script><!-- Plugins for this template --><script src="/static/blogapp/assets/js/modernizr.custom.js"></script><script src="/static/blogapp/assets/js/jquery-plugin-collection.js"></script><!-- Custom script for this template --><script src="/static/blogapp/assets/js/script.js"></script> <script> (function () { var fallbackImageSrc = "/static/blogapp/assets/images/breaking-news/img-1.jpg"; console.log("[ImageFallback] Initialized with fallback:", fallbackImageSrc); function applyFallback(img) { if (!img || img.dataset.fallbackApplied === "1") { return; } var failedSrc = img.currentSrc || img.src || ""; img.dataset.fallbackApplied = "1"; img.onerror = null; img.src = fallbackImageSrc; console.warn("[ImageFallback] Replaced broken image:", { failedSrc: failedSrc, fallbackSrc: fallbackImageSrc, alt: img.alt || "", }); } document.querySelectorAll("img").forEach(function (img) { if (img.complete && img.naturalWidth === 0) { console.warn("[ImageFallback] Found broken image at load, applying fallback.", { failedSrc: img.currentSrc || img.src || "", alt: img.alt || "", }); applyFallback(img); } }); document.addEventListener( "error", function (event) { var target = event.target; if (target && target.tagName === "IMG") { applyFallback(target); } }, true ); })();</script> <!-- <script src="https://api-new.nextbacklinks.com/static/ads/ad-script.js"></script> --> <script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"0ac9ee89c28e46e3b0e85b398bda37f0","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script></body> </html>