It looks like this is a web page, not a feed. I looked for a feed associated with this page, but couldn't find one. Please enter the address of your feed to validate.

Source: https://889993504.xyz

  1.  
  2.  
  3.  
  4. <!DOCTYPE html>
  5. <html lang="en" data-font-scheme="source">
  6.  
  7.  
  8. <head>
  9.    <meta charset="utf-8">
  10.    <meta http-equiv="X-UA-Compatible" content="IE=edge">
  11.    <meta name="viewport" content="width=device-width, initial-scale=1">
  12.    
  13.        <link rel="shortcut icon" type="image/png" href="https://usc1.contabostorage.com/83226f3934d449eb8c821d388b39f7b1:nextbacklinks/favicon/favicons/Untitled_design_-_2025-04-26T130753.875_I4i7NxN_4zqvVGF_mcpCCEF.png">
  14.    
  15.  
  16.    <title>Tech Insights &amp; Innovation Trends | Future Digital Perspectives</title>
  17.    <meta name="description" content="Explore cutting-edge technology insights, digital innovation trends, and future perspectives on AI, cybersecurity, and web development in our expert blog.">
  18.    <link href="/static/blogapp/assets/css/themify-icons.css" rel="stylesheet">
  19.    <link href="/static/blogapp/assets/css/flaticon.css" rel="stylesheet">
  20.    <link href="/static/blogapp/assets/css/bootstrap.min.css" rel="stylesheet">
  21.    <link href="/static/blogapp/assets/css/animate.css" rel="stylesheet">
  22.    <link href="/static/blogapp/assets/css/owl.carousel.css" rel="stylesheet">
  23.    <link href="/static/blogapp/assets/css/owl.theme.css" rel="stylesheet">
  24.    <link href="/static/blogapp/assets/css/slick.css" rel="stylesheet">
  25.    <link href="/static/blogapp/assets/css/slick-theme.css" rel="stylesheet">
  26.    <link href="/static/blogapp/assets/css/swiper.min.css" rel="stylesheet">
  27.    <link href="/static/blogapp/assets/css/owl.transitions.css" rel="stylesheet">
  28.    <link href="/static/blogapp/assets/css/jquery.fancybox.css" rel="stylesheet">
  29.    <link href="/static/blogapp/assets/css/odometer-theme-default.css" rel="stylesheet">
  30.    <link href="/static/blogapp/assets/css/component.css" rel="stylesheet">
  31.    <link href="/static/blogapp/assets/sass/style.css" rel="stylesheet">
  32.    <link href="/static/blogapp/assets/sass/layout/navbar.css" rel="stylesheet">
  33.    <link href="/static/blogapp/assets/css/responsive.css" rel="stylesheet">
  34.    <link href="/static/blogapp/assets/sass/fonts.css" rel="stylesheet">
  35.    <link rel="canonical" href="https://889993504.xyz/">
  36.    <!-- Dynamic CSS Override -->
  37.    
  38. <style>
  39.    :root {
  40.        /* Bootstrap 5 Color Overrides */
  41.        --bs-primary: #ff4d88;
  42.        --bs-primary-rgb: ff4d88;
  43.        --bs-secondary: #6b6e74;
  44.        --bs-success: #10b981;
  45.        --bs-danger: #dc2626;
  46.        --bs-warning: #f59e0b;
  47.        --bs-info: #0284c7;
  48.        --bs-light: #fff0f6;
  49.        --bs-dark: #4a044e;
  50.        
  51.        /* Your SCSS Variables Override */
  52.        --theme-primary-color: #ff4d88;
  53.        --theme-primary-color-s2: #ff4d88;
  54.        --body-bg-color: #ffffff;
  55.        --section-bg-color: #f9faff;
  56.        --text-color: #4a044e;
  57.        --text-light-color: #676767;
  58.        --heading-color: #4a044e;
  59.        --border-color: #f9a8d4;
  60.        --border-color-s2: #eef0fc;
  61.        --border-color-black: #3c3c40;
  62.        --body-color: #777777;
  63.        --small-black: #777777;
  64.        --light: #8188a9;
  65.        --cyan: #848892;
  66.        --black-section-text-color: #CBCBCB;
  67.        --black-bg-color: #202026;
  68.        --black-bg-color-s2: #2C2C32;
  69.        --dark-gray: #232f4b;
  70.        
  71.        /* Component Specific Colors (Bootstrap + Your SCSS) */
  72.        --navbar-bg: #ffffff;
  73.        --nav-bg: #ffffff;
  74.        --sub-nav: #fed7e2;
  75.        --navbar-color: #4a044e;
  76.        --topbar-bg: #fff0f6;
  77.        --topbar-color: #4a044e;
  78.        --footer-bg: #4a044e;
  79.        --footer-color: #ffffff;
  80.        --card-bg: #ffffff;
  81.        --card-border: #f9a8d4;
  82.        --card-radius: 12px;
  83.        --link-color: #ff4d88;
  84.        --link-hover: #e6397a;
  85.        --blog-color: #ffffff;
  86.        --blog-bg: rgba(255, 77, 136, 0.1);
  87.        
  88.        /* Simplified Font System */
  89.        --border-radius: 12px;
  90.        
  91.        /* Bootstrap Font Override - Uses CSS font system from fonts.css */
  92.        --bs-font-sans-serif: var(--font-primary);
  93.    }
  94.    
  95.    /* Font Override - Let CSS font system handle fonts via data-font-scheme */
  96.    body {
  97.        /* Remove font-family override - let data-font-scheme handle it */
  98.        font-weight: 400;
  99.        color: var(--text-color) !important;
  100.        
  101.            background-color: var(--body-bg-color) !important;
  102.        
  103.        min-height: 100vh;
  104.    }
  105.    
  106.    /* Headings - Let CSS font system handle fonts via data-font-scheme */
  107.    h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  108.        /* Remove font-family override - let data-font-scheme handle it */
  109.        font-weight: 600;
  110.        color: var(--heading-color) !important;
  111.    }
  112.    
  113.    /* Bootstrap Primary Color Throughout Site */
  114.    .btn-primary {
  115.        background-color: var(--bs-primary) !important;
  116.        border-color: var(--bs-primary) !important;
  117.        transition: all 0.3s ease;
  118.    }
  119.    
  120.    .btn-primary:hover {
  121.        background-color: var(--theme-primary-color-s2) !important;
  122.        border-color: var(--theme-primary-color-s2) !important;
  123.        transform: translateY(-2px);
  124.        box-shadow: 0 5px 15px rgba(var(--bs-primary-rgb), 0.4);
  125.    }
  126.    
  127.    .btn-outline-primary {
  128.        color: var(--bs-primary) !important;
  129.        border-color: var(--bs-primary) !important;
  130.    }
  131.    
  132.    .btn-outline-primary:hover {
  133.        background-color: var(--bs-primary) !important;
  134.        border-color: var(--bs-primary) !important;
  135.    }
  136.    
  137.    .text-primary {
  138.        color: var(--bs-primary) !important;
  139.    }
  140.    
  141.    .bg-primary {
  142.        background-color: var(--bs-primary) !important;
  143.    }
  144.    
  145.    /* Your Navigation System */
  146.    .navigation.navbar,
  147.    .navbar {
  148.        
  149.            background-color: var(--navbar-bg) !important ;
  150.        
  151.        /* Remove font-family override - let data-font-scheme handle it */
  152.        
  153.        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important ;
  154.    }
  155.    
  156.    .navigation.navbar .fluid-container{
  157.        min-height: 60px;
  158.    }
  159.    
  160.    .navigation .navbar-brand,
  161.    .navigation .navbar-nav .nav-link,
  162.    .navbar-brand,
  163.    nav a,
  164.    .navbar-nav .nav-link {
  165.        color: var(--navbar-color) !important;
  166.        /* Remove font-family override - let data-font-scheme handle it */
  167.        transition: all 0.3s ease;
  168.    }
  169.    
  170.    .navigation .navbar-nav .nav-link:hover,
  171.    .navbar-nav .nav-link:hover,
  172.    nav a:hover,
  173.    .navigation .navbar-nav .nav-link.active,
  174.    .navbar-nav .nav-link.active {
  175.        color: var(--navbar-color) !important;
  176.        transform: translateY(-1px);
  177.        opacity: 0.85;
  178.    }
  179.    
  180.    /* Your existing navbar specific classes */
  181.    .navigation .sub-menu {
  182.        background: var(--navbar-bg) !important;
  183.        box-shadow: 0 5px 15px rgba(0,0,0,0.1);
  184.        border: 1px solid var(--border-color);
  185.    }
  186.    
  187.    .border-color{
  188.        border-color: var(--border-color) !important;
  189.    }
  190.    
  191.    .navigation .sub-menu li a {
  192.        color: var(--navbar-color) !important;
  193.        /* Remove font-family override - let data-font-scheme handle it */
  194.    }
  195.    
  196.    .navigation .sub-menu li a:hover {
  197.        background: var(--bs-primary) !important;
  198.        color: #ffffff !important;
  199.    }
  200.    
  201.    .card {
  202.        
  203.            background-color: var(--card-bg) !important;
  204.        
  205.        border: 1px solid var(--border-color) !important;
  206.        transition: all 0.3s ease;
  207.        border-radius: 12px;
  208.        color: var(--text-color) !important;
  209.    }
  210.     .navbar-brand img{
  211.            height: 70px;
  212.            object-fit: contain;
  213.        }
  214.    
  215.    .card:hover {
  216.        transform: translateY(-5px);
  217.        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  218.    }
  219.    
  220.    .card-header {
  221.        background-color: var(--section-bg-color) !important;
  222.        border-color: var(--border-color) !important;
  223.        color: var(--text-color) !important;
  224.    }
  225.    
  226.    /* Bootstrap Form Controls */
  227.    .form-control {
  228.        color: var(--text-color) !important;
  229.        background-color: var(--body-bg-color) !important;
  230.        border-color: var(--border-color) !important;
  231.        /* Remove font-family override - let data-font-scheme handle it */
  232.    }
  233.    
  234.    .form-control:focus {
  235.        border-color: var(--bs-primary) !important;
  236.        box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary), 0.25) !important;
  237.    }
  238.    
  239.    /* Links throughout site */
  240.  .nav1 a {
  241.        color: var(--link-color) !important;
  242.        text-decoration: none;
  243.        transition: all 0.3s ease;
  244.    }
  245.    
  246.    a:hover {
  247.        color: var(--link-hover) !important;
  248.    }
  249.    
  250.    /* Text color classes */
  251.    .text-muted {
  252.        color: var(--body-color) !important;
  253.    }
  254.    
  255.    .text-light {
  256.        color: var(--light) !important;
  257.    }
  258.    
  259.    /* Section backgrounds */
  260.    .section-bg,
  261.    .bg-light {
  262.        background-color: var(--section-bg-color) !important;
  263.    }
  264.    
  265.    /* Dark sections */
  266.    .bg-dark,
  267.    .dark-section {
  268.        background-color: var(--black-bg-color) !important;
  269.        color: var(--black-section-text-color) !important;
  270.    }
  271.    
  272.    /* Footer styling */
  273.    .footer,
  274.    footer {
  275.        
  276.            background-color: var(--footer-bg) !important;
  277.        
  278.        color: var(--footer-color) !important;
  279.    }
  280.    
  281.    .footer h1, .footer h2, .footer h3, .footer h4, .footer h5, .footer h6,
  282.    footer h1, footer h2, footer h3, footer h4, footer h5, footer h6 {
  283.        color: var(--black-section-text-color) !important;
  284.        /* Remove font-family override - let data-font-scheme handle it */
  285.    }
  286.    
  287.    .footer a, footer a {
  288.        color: var(--black-section-text-color) !important;
  289.    }
  290.    
  291.    .footer a:hover, footer a:hover {
  292.        color: var(--bs-primary) !important;
  293.    }
  294.    
  295.    /* Bootstrap Secondary Colors */
  296.    .btn-secondary {
  297.        background-color: var(--bs-secondary) !important;
  298.        border-color: var(--bs-secondary) !important;
  299.    }
  300.    
  301.    .text-secondary {
  302.        color: var(--bs-secondary) !important;
  303.    }
  304.    
  305.    .bg-secondary {
  306.        background-color: var(--bs-secondary) !important;
  307.    }
  308.    
  309.    /* Bootstrap Success, Danger, Warning, Info */
  310.    .btn-success { background-color: var(--bs-success) !important; border-color: var(--bs-success) !important; }
  311.    .btn-danger { background-color: var(--bs-danger) !important; border-color: var(--bs-danger) !important; }
  312.    .btn-warning { background-color: var(--bs-warning) !important; border-color: var(--bs-warning) !important; }
  313.    .btn-info { background-color: var(--bs-info) !important; border-color: var(--bs-info) !important; }
  314.    
  315.    .text-success { color: var(--bs-success) !important; }
  316.    .text-danger { color: var(--bs-danger) !important; }
  317.    .text-warning { color: var(--bs-warning) !important; }
  318.    .text-info { color: var(--bs-info) !important; }
  319.    
  320.    .bg-success { background-color: var(--bs-success) !important; }
  321.    .bg-danger { background-color: var(--bs-danger) !important; }
  322.    .bg-warning { background-color: var(--bs-warning) !important; }
  323.    .bg-info { background-color: var(--bs-info) !important; }
  324.    
  325.    /* Mobile menu styling */
  326.    .navbar-toggler,
  327.    .open-btn {
  328.        border-color: var(--navbar-color) !important;
  329.    }
  330.    
  331.    .icon-bar {
  332.        background-color: var(--navbar-color) !important;
  333.    }
  334.    
  335.    /* Smooth Animations */
  336.    .fade-in-up {
  337.        animation: fadeInUp 0.6s ease-out;
  338.    }
  339.    
  340.    @keyframes fadeInUp {
  341.        from {
  342.            opacity: 0;
  343.            transform: translateY(30px);
  344.        }
  345.        to {
  346.            opacity: 1;
  347.            transform: translateY(0);
  348.        }
  349.    }
  350.    
  351.    /* Responsive adjustments */
  352.    @media (max-width: 768px) {
  353.        .navbar {
  354.            padding: 0.5rem 0;
  355.        }
  356.        
  357.        .card:hover {
  358.            transform: none;
  359.        }
  360.    }
  361.    
  362. </style>
  363.    
  364.    
  365.    
  366.  
  367. <script>
  368.    var _paq = window._paq = window._paq || [];
  369.    /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
  370.    _paq.push(['trackPageView']);
  371.    _paq.push(['enableLinkTracking']);
  372.    (function() {
  373.        var u = "//analytics.tech-vikings.com/";
  374.        _paq.push(['setTrackerUrl', u + 'matomo.php']);
  375.        _paq.push(['setSiteId', '2']);
  376.        var d = document,
  377.            g = d.createElement('script'),
  378.            s = d.getElementsByTagName('script')[0];
  379.        g.async = true;
  380.        g.src = u + 'matomo.js';
  381.        s.parentNode.insertBefore(g, s);
  382.    })();
  383. </script>
  384. </head>
  385.  
  386.  
  387.  
  388. <body class="page-blogapp:homepage theme-theme_41">
  389.    <div id="healthcheck"></div>
  390.    <!-- start page-wrapper -->
  391.    <div class="page-wrapper">
  392.        
  393.            <!-- start preloader -->
  394.                
  395.            <!-- end preloader -->
  396.        
  397.        <!-- Start header -->
  398.        <header id="header" class="wpo-site-header">
  399.            
  400.  
  401.  
  402.    
  403.  
  404.  
  405.  
  406.  
  407.            
  408.  
  409.  
  410.  
  411.  
  412.  
  413. <nav class="navigation navbar navbar-expand-lg navbar-light custom-nav dynamic-navbar mb-4">
  414.  <div class="container-fluid fluid-container">
  415.    <div class="row flex-wrap align-items-center">
  416.      <div class="col-lg-3 col-md-3 col-3 d-lg-none dl-block">
  417.        <div class="mobail-menu">
  418.          <button type="button" class="navbar-toggler open-btn">
  419.            <span class="sr-only">Toggle navigation</span>
  420.            <span class="icon-bar first-angle"></span>
  421.            <span class="icon-bar middle-angle"></span>
  422.            <span class="icon-bar last-angle"></span>
  423.          </button>
  424.        </div>
  425.      </div>
  426.      <div class="col-lg-2 col-md-6 col-6">
  427.        <div class="navbar-header">
  428.          <a class="navbar-brand" href="/">
  429.            
  430.            <img src="https://usc1.contabostorage.com/83226f3934d449eb8c821d388b39f7b1:nextbacklinks/site_logos/7f09f717-0cab-49f2-bf6f-584c1e038dcd_logo.png" alt="Digital Horizon Blog" />
  431.            
  432.          </a>
  433.        </div>
  434.  
  435.      </div>
  436.      <div class="col-lg-8 col-md-1 col-1">
  437.        <div id="navbar" class="collapse navbar-collapse navigation-holder">
  438.          <button class="menu-close"><i class="ti-close"></i></button>
  439.          <ul class="nav navbar-nav mb-2 mb-lg-0">
  440.            <li>
  441.              <a href="/">
  442.                Home
  443.              </a>
  444.            </li>
  445.            
  446.            
  447.             <li>
  448.              <a href="/category/all-posts/">
  449.                All Posts
  450.              </a>
  451.              </li>
  452.              
  453.  
  454.                  
  455.              
  456.             <li>
  457.              <a href="/category/business/">
  458.                Business
  459.              </a>
  460.              </li>
  461.              
  462.  
  463.                  
  464.              
  465.             <li>
  466.              <a href="/category/esports/">
  467.                Esports
  468.              </a>
  469.              </li>
  470.              
  471.  
  472.                  
  473.              
  474.             <li>
  475.              <a href="/category/fashion/">
  476.                Fashion
  477.              </a>
  478.              </li>
  479.              
  480.  
  481.                  
  482.              
  483.             <li>
  484.              <a href="/category/featured/">
  485.                Featured
  486.              </a>
  487.              </li>
  488.              
  489.  
  490.                  
  491.              
  492.            
  493.              <li class="menu-item-has-children">
  494.                <a href="#">More</a>
  495.                <ul class="sub-menu">
  496.                  <li>
  497.                    <a href="/category/gaming/">
  498.                      Gaming
  499.                    </a>
  500.                  </li>
  501.                  
  502.  
  503.                  
  504.              
  505.            
  506.                  <li>
  507.                    <a href="/category/health/">
  508.                      Health
  509.                    </a>
  510.                  </li>
  511.                  
  512.  
  513.                  
  514.              
  515.            
  516.                  <li>
  517.                    <a href="/category/life-fitness/">
  518.                      Life &amp; Fitness
  519.                    </a>
  520.                  </li>
  521.                  
  522.  
  523.                  
  524.              
  525.            
  526.                  <li>
  527.                    <a href="/category/lifestyle/">
  528.                      Lifestyle
  529.                    </a>
  530.                  </li>
  531.                  
  532.  
  533.                  
  534.              
  535.            
  536.                  <li>
  537.                    <a href="/category/news/">
  538.                      News
  539.                    </a>
  540.                  </li>
  541.                  
  542.  
  543.                  
  544.              
  545.            
  546.                  <li>
  547.                    <a href="/category/others/">
  548.                      Others
  549.                    </a>
  550.                  </li>
  551.                  
  552.  
  553.                  
  554.              
  555.            
  556.                  <li>
  557.                    <a href="/category/politics/">
  558.                      Politics
  559.                    </a>
  560.                  </li>
  561.                  
  562.  
  563.                  
  564.              
  565.            
  566.                  <li>
  567.                    <a href="/category/sports/">
  568.                      Sports
  569.                    </a>
  570.                  </li>
  571.                  
  572.  
  573.                  
  574.              
  575.            
  576.                  <li>
  577.                    <a href="/category/tech/">
  578.                      Tech
  579.                    </a>
  580.                  </li>
  581.                  
  582.  
  583.                  
  584.              
  585.            
  586.                  <li>
  587.                    <a href="/category/travel/">
  588.                      Travel
  589.                    </a>
  590.                  </li>
  591.                  
  592.  
  593.                  
  594.                </ul>
  595.              </li>
  596.              
  597.              
  598.              
  599.              <li>
  600.                <a href="/page/contact-us/">
  601.                  Contact Us
  602.                </a>
  603.              </li>
  604.          </ul>
  605.        </div>
  606.        <!-- end of nav-collapse -->
  607.      </div>
  608.      <div class="col-lg-2 col-md-2 col-2">
  609.        <div class="header-right">
  610.          <div class="header-search-form-wrapper">
  611.            <div class="cart-search-contact"> <button class="search-toggle-btn"><i
  612.                  class="fi flaticon-magnifiying-glass text-link"></i></button>
  613.              <div class="header-search-form">
  614.                <form id="search-form">
  615.                  <div> <input type="text"  id="search-input" class="form-control" placeholder="Search here..." /> <button><i
  616.                        class="fi flaticon-magnifiying-glass"></i></button> </div>
  617.                </form>
  618.                <div id="search-results" class="search-v1 mt-2"></div>
  619.              </div>
  620.            </div>
  621.          </div>
  622.  
  623.          
  624.          <!-- <div class="header-right-menu-wrapper d-none d-md-flex">
  625.            <div class="header-right-menu">
  626.              <div class="right-menu-toggle-btn">
  627.                <span class="bg-link"></span>
  628.                <span class="bg-link"></span>
  629.                <span class="bg-link"></span>
  630.              </div>
  631.              <div class="header-right-menu-wrap z-1">
  632.                <button class="right-menu-close"><i class="ti-close"></i></button>
  633.                <div class="logo">
  634.                  <img src="/static/blogapp/assets/images/logo2.png" alt="" />
  635.                </div>
  636.                <div class="header-right-sec">
  637.                  <div class="project-widget widget">
  638.                    <h3 class="blog-color">Our Latest News</h3>
  639.                    <div class="posts">
  640.                      <div class="post">
  641.                        <div class="img-holder">
  642.                          <img src="/static/blogapp/assets/images/recent-posts/img-1.jpg" alt />
  643.                        </div>
  644.                        <div class="details">
  645.                          <span class="date blog-color">19 Jun 2022</span>
  646.                          <h4><a href="blog-single.html" class="blog-color">Perfect Photo Clicking Idea You Must
  647.                              Know.</a></h4>
  648.                        </div>
  649.                      </div>
  650.                      <div class="post">
  651.                        <div class="img-holder">
  652.                          <img src="/static/blogapp/assets/images/recent-posts/img-2.jpg" alt />
  653.                        </div>
  654.                        <div class="details">
  655.                          <span class="date blog-color">22 May 2022</span>
  656.                          <h4><a href="blog-single.html" class="blog-color">Best tourism site all over the world.</a>
  657.                          </h4>
  658.                        </div>
  659.                      </div>
  660.                      <div class="post">
  661.                        <div class="img-holder">
  662.                          <img src="/static/blogapp/assets/images/recent-posts/img-3.jpg" alt />
  663.                        </div>
  664.                        <div class="details">
  665.                          <span class="date blog-color">12 Apr 2022</span>
  666.                          <h4><a href="blog-single.html" class="blog-color">Whats In Trend in Now Woman Fashion.</a>
  667.                          </h4>
  668.                        </div>
  669.                      </div>
  670.                    </div>
  671.                  </div>
  672.                  <div class="widget wpo-contact-widget">
  673.                    <div class="widget-title">
  674.                      <h3 class="blog-color">Contact Us</h3>
  675.                    </div>
  676.                    <div class="contact-ft">
  677.                      <ul>
  678.                        <li>
  679.                          <i class="fi flaticon-location"></i>68D, Belsion Town 2365 <br /> Fna city, LH 3656, USA
  680.                        </li>
  681.                        <li>
  682.                          <i class="fi flaticon-telephone"></i>+ 8 (123) 123 456 789 <br />
  683.                          + 8 (123) 123 456 789
  684.                        </li>
  685.                        <li>
  686.                          <i class="fi flaticon-email"></i>Bloggar@gmail.com
  687.                        </li>
  688.                      </ul>
  689.                    </div>
  690.                  </div>
  691.                </div>
  692.              </div>
  693.              <div class="sidebar-blur"> </div>
  694.            </div>
  695.          </div> -->
  696.        </div>
  697.      </div>
  698.    </div>
  699.    <!-- end of container -->
  700. </nav>
  701. </nav>
  702. <style>
  703.  .navbar-brand img {
  704.    height: 70px;
  705.    object-fit: contain;
  706.  }
  707. </style>
  708. <script>
  709.  // jQuery or vanilla JavaScript to handle the AJAX search
  710.  document.getElementById("search-input").addEventListener("keyup", function (e) {
  711.    e.preventDefault();  // Prevent the form from submitting normally
  712.  
  713.    const query = document.getElementById("search-input").value;
  714.  // Check if the input field is empty
  715.    if (query === "") {
  716.      // Clear the search results if the input is empty
  717.      document.getElementById("search-results").innerHTML = "";
  718.      return; // Exit the function early to avoid making an AJAX request
  719.    }
  720.    // Send AJAX request
  721.    fetch("/search-posts?version=v1&q=" + encodeURIComponent(query), {
  722.      method: "GET",
  723.        headers: {
  724.          "X-Requested-With": "XMLHttpRequest",
  725.        },
  726.    })
  727.      .then(response => response.json())
  728.      .then(data => {
  729.        if (data.html) {
  730.          document.getElementById("search-results").innerHTML = data.html;
  731.        } else {
  732.          document.getElementById("search-results").innerHTML = "<p>No results found.</p>";
  733.        }
  734.      })
  735.      .catch(error => {
  736.        console.error("Error fetching search results:", error);
  737.      });
  738.  });
  739.  
  740. </script>
  741.  
  742.        </header>
  743.        <!-- end of header -->
  744.        <!-- start of wpo-blog-hero -->
  745.        
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.        <!-- end of wpo-blog-hero -->
  756.  
  757.        <!-- start of wpo-breacking-news -->
  758.        
  759.        <!-- end of wpo-breacking-news -->
  760.        
  761.        <!-- start wpo-blog-highlights-section -->
  762.        
  763.  
  764.  
  765.  
  766.    
  767.  
  768.  
  769.  
  770.  
  771. <style>
  772.    .blog-highlights-v3 {
  773.        padding: 80px 0;
  774.        position: relative;
  775.        overflow: hidden;
  776.    }
  777.    
  778.    .blog-highlights-v3::before {
  779.        content: '';
  780.        position: absolute;
  781.        top: 0;
  782.        left: 0;
  783.        width: 100%;
  784.        height: 100%;
  785.        background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.1'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  786.        z-index: 0;
  787.    }
  788.    
  789.    .masonry-container {
  790.        display: grid;
  791.        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  792.        grid-gap: 25px;
  793.    }
  794.    
  795.    .blog-card-v3 {
  796.        border: 1px solid var(--border-color) !important;
  797.        border-radius: 25px;
  798.        overflow: hidden;
  799.        background: var(--card-bg);
  800.        backdrop-filter: blur(10px);
  801.        border: 1px solid var(--border-color);
  802.        position: relative;
  803.        transition: all 0.5s cubic-bezier(0.23, 1, 0.320, 1);
  804.        cursor: pointer;
  805.        transform: translateY(0) rotateX(0) rotateY(0);
  806.        transform-style: preserve-3d;
  807.        perspective: 1000px;
  808.        z-index: 1;
  809.    }
  810.    .span-21 { grid-row-end: span 21; }
  811.    .span-22 { grid-row-end: span 22; }
  812.    
  813.    .blog-card-v3::before {
  814.        content: '';
  815.        position: absolute;
  816.        top: 0;
  817.        left: 0;
  818.        width: 100%;
  819.        height: 100%;
  820.        background: linear-gradient(135deg, rgba(255,255,255,0.1) 0%, rgba(0,0,0,0.02) 100%);
  821.        opacity: 0;
  822.        transition: opacity 0.3s ease;
  823.        z-index: 1;
  824.    }
  825.    
  826.    .blog-card-v3:hover {
  827.        transform: translateY(-20px) rotateX(5deg) rotateY(5deg) scale(1.03);
  828.        box-shadow:
  829.            0 30px 60px rgba(0,0,0,0.15),
  830.            0 15px 30px rgba(0,0,0,0.1),
  831.            inset 0 1px 0 rgba(255,255,255,0.3);
  832.        z-index: 10;
  833.    }
  834.    
  835.    .blog-card-v3:hover::before {
  836.        opacity: 1;
  837.    }
  838.    
  839.    .blog-image-v3 {
  840.        position: relative;
  841.        overflow: hidden;
  842.        height: 50%;
  843.        background: linear-gradient(135deg, var(--bs-primary), var(--bs-dark));
  844.    }
  845.    
  846.    .blog-image-v3::after {
  847.        content: '';
  848.        position: absolute;
  849.        top: 0;
  850.        left: 0;
  851.        width: 100%;
  852.        height: 100%;
  853.        background:
  854.            radial-gradient(circle at top right, rgba(255,255,255,0.3) 0%, transparent 50%),
  855.            linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.4) 100%);
  856.        z-index: 2;
  857.    }
  858.    
  859.    .blog-image-v3 img {
  860.        width: 100%;
  861.        height: 100%;
  862.        object-fit: cover;
  863.        transition: all 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  864.        transform: scale(1);
  865.        filter: brightness(1) saturate(1);
  866.    }
  867.    
  868.    .blog-card-v3:hover .blog-image-v3 img {
  869.        transform: scale(1.15);
  870.        filter: brightness(1.1) saturate(1.2);
  871.    }
  872.    
  873.    .blog-floating-elements {
  874.        position: absolute;
  875.        top: 0;
  876.        left: 0;
  877.        width: 100%;
  878.        height: 100%;
  879.        pointer-events: none;
  880.        z-index: 3;
  881.    }
  882.    
  883.    .floating-dot {
  884.        position: absolute;
  885.        width: 8px;
  886.        height: 8px;
  887.        background: rgba(255,255,255,0.6);
  888.        border-radius: 50%;
  889.        animation: float 3s ease-in-out infinite;
  890.    }
  891.    
  892.    .floating-dot:nth-child(1) { top: 20%; left: 15%; animation-delay: 0s; }
  893.    .floating-dot:nth-child(2) { top: 60%; right: 20%; animation-delay: 0.5s; }
  894.    .floating-dot:nth-child(3) { bottom: 30%; left: 25%; animation-delay: .5s; }
  895.    
  896.    @keyframes float {
  897.        0%, 100% { transform: translateY(0px); }
  898.        50% { transform: translateY(-10px); }
  899.    }
  900.    
  901.    .blog-category-v3 {
  902.        position: absolute;
  903.        top: 25px;
  904.        right: 25px;
  905.        padding: 10px 18px;
  906.        border-radius: 30px;
  907.        font-size: 11px;
  908.        font-weight: 800;
  909.        text-transform: uppercase;
  910.        letter-spacing: 1.2px;
  911.        backdrop-filter: blur(10px);
  912.        z-index: 4;
  913.        transform: translateY(0) scale(1);
  914.        transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  915.        box-shadow: 0 8px 20px rgba(0,0,0,0.1);
  916.        border: 1px solid rgba(255,255,255,0.3);
  917.    }
  918.    
  919.    .blog-card-v3:hover .blog-category-v3 {
  920.        transform: translateY(-10px) scale(1.1);
  921.        background: rgba(var(--card-bg),1);
  922.        box-shadow: 0 12px 30px rgba(0,0,0,0.15);
  923.    }
  924.    
  925.    .blog-content-v3 {
  926.        padding: 35px 30px 30px;
  927.        height: 50%;
  928.        display: flex;
  929.        flex-direction: column;
  930.        justify-content: space-between;
  931.        position: relative;
  932.        z-index: 2;
  933.    }
  934.    
  935.    .blog-title-v3 {
  936.        font-size: 19px;
  937.        font-weight: 700;
  938.        line-height: 1.3;
  939.        margin-bottom: 18px;
  940.        position: relative;
  941.    }
  942.    
  943.    .blog-title-v3 a {
  944.        text-decoration: none;
  945.        color: var(--top-color) !important;
  946.        transition: all 0.3s ease;
  947.        position: relative;
  948.        display: inline-block;
  949.    }
  950.    
  951.    .blog-title-v3 a::before {
  952.        content: '';
  953.        position: absolute;
  954.        bottom: -3px;
  955.        left: 0;
  956.        width: 0;
  957.        height: 3px;
  958.        background: linear-gradient(135deg, var(--bs-primary), var(--bs-dark));
  959.        border-radius: 2px;
  960.        transition: width 0.5s cubic-bezier(0.23, 1, 0.320, 1);
  961.    }
  962.    
  963.    .blog-card-v3:hover .blog-title-v3 a::before {
  964.        width: 100%;
  965.    }
  966.    
  967.    .blog-meta-v3 {
  968.        display: flex;
  969.        align-items: center;
  970.        gap: 15px;
  971.        margin-bottom: 18px;
  972.        font-size: 13px;
  973.        color: #7f8c8d;
  974.        padding-bottom: 18px;
  975.        border-bottom: 1px solid rgba(127, 140, 141, 0.1);
  976.        position: relative;
  977.    }
  978.    
  979.    .blog-meta-v3::after {
  980.        content: '';
  981.        position: absolute;
  982.        bottom: -1px;
  983.        left: 0;
  984.        width: 0;
  985.        height: 1px;
  986.        background: linear-gradient(135deg, var(--bs-primary), var(--bs-dark));
  987.        transition: width 0.6s ease 0.3s;
  988.    }
  989.    
  990.    .blog-card-v3:hover .blog-meta-v3::after {
  991.        width: 80px;
  992.    }
  993.    
  994.    .blog-author-img-v3 {
  995.        width: 35px;
  996.        height: 35px;
  997.        border-radius: 50%;
  998.        object-fit: cover;
  999.        border: 3px solid rgba(255,255,255,0.8);
  1000.        transition: all 0.4s ease;
  1001.        box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  1002.    }
  1003.    
  1004.    .blog-card-v3:hover .blog-author-img-v3 {
  1005.        transform: scale(1.15);
  1006.        border-color: rgba(102, 126, 234, 0.5);
  1007.        box-shadow: 0 8px 25px rgba(102, 126, 234, 0.2);
  1008.    }
  1009.    
  1010.    .blog-excerpt-v3 {
  1011.        font-size: 14px;
  1012.        line-height: 1.7;
  1013.        color: #5a6c7d;
  1014.        margin-bottom: 20px;
  1015.        display: -webkit-box;
  1016.        -webkit-line-clamp: 3;
  1017.        -webkit-box-orient: vertical;
  1018.        overflow: hidden;
  1019.        opacity: 0.9;
  1020.        transition: opacity 0.3s ease;
  1021.    }
  1022.    
  1023.    .blog-card-v3:hover .blog-excerpt-v3 {
  1024.        opacity: 1;
  1025.    }
  1026.    
  1027.    .blog-actions-v3 {
  1028.        display: flex;
  1029.        justify-content: space-between;
  1030.        align-items: center;
  1031.    }
  1032.    
  1033.    .blog-read-time-v3 {
  1034.        font-size: 12px;
  1035.        color: #95a5a6;
  1036.        display: flex;
  1037.        align-items: center;
  1038.        gap: 6px;
  1039.    }
  1040.    
  1041.    .blog-read-more-v3 {
  1042.        width: 50px;
  1043.        height: 50px;
  1044.        border-radius: 50%;
  1045.        background: linear-gradient(135deg, var(--bs-primary), var(--bs-dark));
  1046.        display: flex;
  1047.        align-items: center;
  1048.        justify-content: center;
  1049.        color: white;
  1050.        text-decoration: none;
  1051.        transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  1052.        transform: scale(0) rotate(0deg);
  1053.        opacity: 0;
  1054.        box-shadow: 0 8px 20px rgba(102, 126, 234, 0.3);
  1055.        position: relative;
  1056.        overflow: hidden;
  1057.    }
  1058.    
  1059.    .blog-read-more-v3::before {
  1060.        content: '';
  1061.        position: absolute;
  1062.        top: 50%;
  1063.        left: 50%;
  1064.        width: 0;
  1065.        height: 0;
  1066.        background: rgba(255,255,255,0.2);
  1067.        border-radius: 50%;
  1068.        transition: all 0.6s ease;
  1069.        transform: translate(-50%, -50%);
  1070.    }
  1071.    
  1072.    .blog-card-v3:hover .blog-read-more-v3 {
  1073.        transform: scale(1) rotate(360deg);
  1074.        opacity: 1;
  1075.    }
  1076.    
  1077.    .blog-read-more-v3:hover::before {
  1078.        width: 100%;
  1079.        height: 100%;
  1080.    }
  1081.    
  1082.    .section-header-v3 {
  1083.        text-align: center;
  1084.        margin-bottom: 80px;
  1085.        position: relative;
  1086.        z-index: 2;
  1087.    }
  1088.    
  1089.    .section-title-v3 {
  1090.        font-size: 3.5rem;
  1091.        font-weight: 900;
  1092.        margin-bottom: 25px;
  1093.        color: #2c3e50;
  1094.        position: relative;
  1095.        display: inline-block;
  1096.    }
  1097.    
  1098.    .section-title-v3::before {
  1099.        content: '';
  1100.        position: absolute;
  1101.        top: -15px;
  1102.        right: -15px;
  1103.        width: 30px;
  1104.        height: 30px;
  1105.        background: linear-gradient(135deg, var(--bs-primary), var(--bs-dark));
  1106.        border-radius: 50%;
  1107.        opacity: 0.3;
  1108.        animation: pulse 2s infinite;
  1109.    }
  1110.    
  1111.    @keyframes pulse {
  1112.        0%, 100% { transform: scale(1); opacity: 0.3; }
  1113.        50% { transform: scale(1.2); opacity: 0.6; }
  1114.    }
  1115.    
  1116.    .section-subtitle-v3 {
  1117.        font-size: 1.2rem;
  1118.        color: #7f8c8d;
  1119.        max-width: 700px;
  1120.        margin: 0 auto;
  1121.        line-height: 1.7;
  1122.        font-weight: 300;
  1123.    }
  1124.    
  1125.    .scroll-reveal {
  1126.        opacity: 0;
  1127.        transform: translateY(50px) scale(0.9);
  1128.        transition: all 0.8s cubic-bezier(0.23, 1, 0.320, 1);
  1129.    }
  1130.    
  1131.    .scroll-reveal.revealed {
  1132.        opacity: 1;
  1133.        transform: translateY(0) scale(1);
  1134.    }
  1135.    
  1136.    .scroll-reveal:nth-child(1) { transition-delay: 0.1s; }
  1137.    .scroll-reveal:nth-child(2) { transition-delay: 0.1s; }
  1138.    .scroll-reveal:nth-child(3) { transition-delay: 0.1s; }
  1139.    .scroll-reveal:nth-child(4) { transition-delay: 0.1s; }
  1140.    .scroll-reveal:nth-child(5) { transition-delay: 0.1s; }
  1141.    .scroll-reveal:nth-child(6) { transition-delay: 0.1s; }
  1142.  
  1143.    @media (max-width: 768px) {
  1144.        .masonry-container {
  1145.            display: flex;
  1146.            flex-direction: column;
  1147.            grid-gap: 20px;
  1148.        }
  1149.        .blog-card-v3:nth-child(n) {
  1150.            grid-row-end: span 20;
  1151.        }
  1152.        .section-title-v3 {
  1153.            font-size: 2.8rem;
  1154.        }
  1155.        .blog-highlights-v3 {
  1156.            padding: 60px 0;
  1157.        }
  1158.        .blog-content-v3 {
  1159.            padding: 25px 20px;
  1160.        }
  1161.        .blog-card-v3:hover {
  1162.            transform: translateY(-15px) scale(1.02);
  1163.        }
  1164.        .blog-image-v3{
  1165.            max-height: 350px;
  1166.            height: 100%;
  1167.        }
  1168.    }
  1169. </style>
  1170.  
  1171. <section class="blog-highlights-v3">
  1172.    <div class="container-fluid fluid-container">
  1173.        <div class="row">
  1174.            <div class="col-12">
  1175.                 <div class="wpo-section-title">
  1176.            <h2>
  1177.                Today's Top Highlights
  1178.                   </h2>
  1179.        </div>
  1180.            </div>
  1181.        </div>
  1182.        
  1183.        <div class="row">
  1184.            <div class="col-lg-8 col-12">
  1185.                <div class="masonry-container">
  1186.                    
  1187.                    
  1188.  
  1189.                </div>
  1190.            </div>
  1191.            
  1192.               <div class="col col-lg-4 col-12">
  1193.                
  1194.  
  1195.  
  1196.  
  1197.    
  1198.  
  1199.  
  1200. <!-- Blog Sidebar V2 - Focused Design -->
  1201.  <div class="sidebar mb-3">
  1202.    <!-- Recent Posts Section -->
  1203.    <div class="sidebar-widget mb-4">
  1204.      <div class="widget-title-wrapper mb-3">
  1205.        <h4 class="widget-title bg-primary text-white  px-4 py-3 mb-0 position-relative">
  1206.          <i class="ti-time me-2"></i>Recent Posts
  1207.          <span class="title-arrow-primary"></span>
  1208.        </h4>
  1209.      </div>
  1210.      <div class="widget-content border border-light shadow-sm rounded-3 p-4">
  1211.        <div class="recent-post-list">
  1212.          
  1213.  
  1214.        </div>
  1215.  
  1216.        <div class="text-center mt-4 pt-3 border-top border-light">
  1217.          <a href="#" class="btn btn-primary btn-sm px-4"><i class="ti-plus me-1"></i>Load More Posts</a>
  1218.        </div>
  1219.      </div>
  1220.    </div>
  1221.  
  1222.    
  1223.  </div>
  1224.  
  1225. <!-- Sidebar V2 Styles -->
  1226. <style>
  1227.  .sidebar-widget {
  1228.    position: relative;
  1229.  }
  1230.  
  1231.  .widget-title {
  1232.    font-size: 1.1rem;
  1233.    font-weight: 700;
  1234.    display: inline-block;
  1235.    position: relative;
  1236.    z-index: 2;
  1237.    border-radius: 0;
  1238.  }
  1239.  
  1240.  /* Green arrow for August Blog Roll */
  1241.  .title-arrow::after {
  1242.    content: '';
  1243.    position: absolute;
  1244.    top: 0;
  1245.    right: -22px;
  1246.    width: 0;
  1247.    height: 0;
  1248.    border-left: 22px solid var(--bs-primary);
  1249.    border-top: 22px solid transparent;
  1250.    border-bottom: 22px solid transparent;
  1251.    z-index: 1;
  1252.  }
  1253.  
  1254.  /* Blue arrow for Recent Posts */
  1255.  .title-arrow-primary::after {
  1256.    content: '';
  1257.    position: absolute;
  1258.    top: 0;
  1259.    right: -22px;
  1260.    width: 0;
  1261.    height: 0;
  1262.    border-left: 22px solid var(--bs-primary);
  1263.    border-top: 22px solid transparent;
  1264.    border-bottom: 22px solid transparent;
  1265.    z-index: 1;
  1266.  }
  1267.  
  1268.  .widget-content {
  1269.    margin-top: -1px;
  1270.    position: relative;
  1271.    z-index: 1;
  1272.     background-color: var(--card-bg);
  1273.  }
  1274.  
  1275.  /* Blog Roll Items Hover Effects */
  1276.  .blog-roll-item:hover .blog-title {
  1277.    color: #198754 !important;
  1278.    transform: translateX(5px);
  1279.    transition: all 0.3s ease;
  1280.  }
  1281.  
  1282.  /* Recent Post Items Hover Effects */
  1283.  .recent-post-item:hover .post-title a {
  1284.    color: #0d6efd !important;
  1285.    transition: color 0.3s ease;
  1286.  }
  1287.  
  1288.  .recent-post-item:hover .post-image img {
  1289.    transform: scale(1.05);
  1290.    transition: transform 0.3s ease;
  1291.  }
  1292.  
  1293.  /* Button Hover Effects */
  1294.  .btn:hover {
  1295.    transform: translateY(-2px);
  1296.    transition: all 0.3s ease;
  1297.    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  1298.  }
  1299.  
  1300.  /* Badge Hover Effects */
  1301.  .badge:hover {
  1302.    transform: scale(1.05);
  1303.    transition: transform 0.3s ease;
  1304.  }
  1305.  
  1306.  @media (max-width: 991px) {
  1307.    .sidebar {
  1308.      margin-top: 3rem;
  1309.    }
  1310.  }
  1311.  
  1312.  @media (max-width: 576px) {
  1313.    .widget-title {
  1314.      font-size: 1rem;
  1315.      padding: 0.75rem 1rem !important;
  1316.    }
  1317.  
  1318.    .title-arrow::after,
  1319.    .title-arrow-primary::after {
  1320.      right: -18px;
  1321.      border-left-width: 18px;
  1322.      border-top-width: 18px;
  1323.      border-bottom-width: 18px;
  1324.    }
  1325.  
  1326.    .post-image {
  1327.      width: 70px !important;
  1328.      height: 55px !important;
  1329.    }
  1330.  
  1331.    .blog-meta {
  1332.      flex-direction: column !important;
  1333.      align-items: flex-start !important;
  1334.      gap: 0.5rem;
  1335.    }
  1336.  }
  1337. </style>
  1338.  
  1339.    
  1340.            </div>
  1341.        </div>
  1342.    </div>
  1343. </section>
  1344.  
  1345. <script>
  1346. // Enhanced Intersection Observer with staggered animations
  1347. document.addEventListener('DOMContentLoaded', function() {
  1348.    const observerOptions = {
  1349.        threshold: 0.1,
  1350.        rootMargin: '0px 0px -100px 0px'
  1351.    };
  1352.  
  1353.    const observer = new IntersectionObserver(function(entries) {
  1354.        entries.forEach(entry => {
  1355.            if (entry.isIntersecting) {
  1356.                setTimeout(() => {
  1357.                    entry.target.classList.add('revealed');
  1358.                }, 100);
  1359.            }
  1360.        });
  1361.    }, observerOptions);
  1362.  
  1363.    // Observe all scroll-reveal elements
  1364.    document.querySelectorAll('.scroll-reveal').forEach(el => {
  1365.        observer.observe(el);
  1366.    });
  1367.  
  1368.    // Add parallax effect to floating dots
  1369.    document.addEventListener('mousemove', function(e) {
  1370.        const cards = document.querySelectorAll('.blog-card-v3');
  1371.        cards.forEach(card => {
  1372.            const rect = card.getBoundingClientRect();
  1373.            const x = (e.clientX - rect.left) / rect.width;
  1374.            const y = (e.clientY - rect.top) / rect.height;
  1375.            
  1376.            const dots = card.querySelectorAll('.floating-dot');
  1377.            dots.forEach((dot, index) => {
  1378.                const moveX = (x - 0.5) * (10 + index * 5);
  1379.                const moveY = (y - 0.5) * (10 + index * 5);
  1380.                dot.style.transform = `translate(${moveX}px, ${moveY}px)`;
  1381.            });
  1382.        });
  1383.    });
  1384. });
  1385. </script>
  1386.  
  1387.    
  1388.        
  1389.        <!-- end wpo-blog-highlights-section -->
  1390.        <!-- start wpo-blog-sponsored-section -->
  1391.        
  1392.  
  1393.  
  1394.  
  1395.    
  1396.  
  1397.  
  1398.    
  1399.        <!-- end wpo-blog-sponsored-section -->
  1400.        <!-- start wpo-subscribe-section -->
  1401.        
  1402.        <!-- end subscribe-section -->
  1403.        <!-- start of wpo-site-footer-section -->
  1404.        
  1405.  
  1406.  
  1407.  
  1408.  
  1409.  
  1410.  
  1411. <!-- Footer V4 - Modern Corporate Design -->
  1412. <footer class="wpo-site-footer-v4 bg-primary-gradient">
  1413.  
  1414.    <div class="container-fluid fluid-container">
  1415.        
  1416.        <!-- Content Sections -->
  1417.        <div class="content-sections">
  1418.            <div class="row g-5">
  1419.                
  1420.                <!-- Brand Column -->
  1421.                <div class="col-lg-4 col-md-12">
  1422.                    <div class="brand-section">
  1423.                        <div class="brand-header">
  1424.                            
  1425.                                <img src="https://usc1.contabostorage.com/83226f3934d449eb8c821d388b39f7b1:nextbacklinks/site_logos/7f09f717-0cab-49f2-bf6f-584c1e038dcd_logo.png" alt="Digital Horizon Blog" class="brand-logo" loading="lazy">
  1426.                            
  1427.                            <div class="brand-text">
  1428.                                <h3 class="brand-name">Digital Horizon Blog</h3>
  1429.                                <span class="brand-type">Digital Publication</span>
  1430.                            </div>
  1431.                        </div>
  1432.                        <p class="brand-description  text-lg-start ">
  1433.                            Explore cutting-edge technology insights, digital innovation trends, and future perspectives on AI, cybersecurity, and web development in our expert blog.
  1434.                        </p>
  1435.                    </div>
  1436.                </div>
  1437.  
  1438.                <!-- Quick Links Column -->
  1439.               <div class="col-lg-4 col-md-6">
  1440.                    <div class="links-section">
  1441.                        <div class="section-title">
  1442.                            <h4 class="title-text">Resources</h4>
  1443.                            <div class="title-decoration"></div>
  1444.                        </div>
  1445.                        <div class="links-container">
  1446.                          
  1447. <div class="link-group">
  1448.    <ul class="link-list" id="externalLinks">
  1449.        
  1450.  
  1451.    
  1452.        
  1453.        
  1454.        
  1455.    </ul>
  1456. </div>
  1457.  
  1458.                        </div>
  1459.                    </div>
  1460.                </div>
  1461.  
  1462.                <!-- Categories Column -->
  1463.                <div class="col-lg-4 col-md-6">
  1464.                    <div class="categories-section">
  1465.                        <div class="section-title">
  1466.                            <h4 class="title-text">Explore Topics</h4>
  1467.                            <div class="title-decoration"></div>
  1468.                        </div>
  1469.                        <div class="categories-container">
  1470.                            <p class="categories-intro">Discover content organized by topics that interest you most.</p>
  1471.                            <div class="categories-cloud">
  1472.                                
  1473.                                <a href="/category/all-posts/" class="category-pill">
  1474.                                    All Posts
  1475.                                </a>
  1476.                                
  1477.                                <a href="/category/business/" class="category-pill">
  1478.                                    Business
  1479.                                </a>
  1480.                                
  1481.                                <a href="/category/esports/" class="category-pill">
  1482.                                    Esports
  1483.                                </a>
  1484.                                
  1485.                                <a href="/category/fashion/" class="category-pill">
  1486.                                    Fashion
  1487.                                </a>
  1488.                                
  1489.                                <a href="/category/featured/" class="category-pill">
  1490.                                    Featured
  1491.                                </a>
  1492.                                
  1493.                                <a href="/category/gaming/" class="category-pill">
  1494.                                    Gaming
  1495.                                </a>
  1496.                                
  1497.                                <a href="/category/health/" class="category-pill">
  1498.                                    Health
  1499.                                </a>
  1500.                                
  1501.                                <a href="/category/life-fitness/" class="category-pill">
  1502.                                    Life &amp; Fitness
  1503.                                </a>
  1504.                                
  1505.                            </div>
  1506.                        </div>
  1507.                    </div>
  1508.                </div>
  1509.  
  1510.            </div>
  1511.        </div>
  1512.  
  1513.        <!-- Footer Bottom -->
  1514.        <div class="footer-bottom">
  1515.            <div class="bottom-border"></div>
  1516.            <div class=" d-flex justify-content-between flex-wrap">
  1517.                <div>
  1518.                    <div class="copyright-info">
  1519.                        <p class="copyright-main">
  1520.                            Â© 2026 <span class="brand-highlight">Digital Horizon Blog</span>. All rights reserved.
  1521.                        </p>
  1522.                        <p class="copyright-sub">
  1523.                            Thoughtfully crafted content for curious minds worldwide.
  1524.                        </p>
  1525.                    </div>
  1526.                </div>
  1527.                <div>
  1528.                    <div class="footer-actions">
  1529.                        <div class="action-links">
  1530.                            <a href="/page/write-for-us/" class="action-link">
  1531.                                <i class="bi bi-shield-check"></i>
  1532.                                <span>Write For Us</span>
  1533.                            </a>
  1534.                            <a href="/page/terms-and-conditions/" class="action-link">
  1535.                                <i class="bi bi-shield-check"></i>
  1536.                                <span>Terms & Conditions</span>
  1537.                            </a>
  1538.                            <a href="/sitemap.xml" class="action-link">
  1539.                                <i class="bi bi-diagram-3"></i>
  1540.                                <span>Sitemap</span>
  1541.                            </a>
  1542.                        </div>
  1543.  
  1544.                    </div>
  1545.                </div>
  1546.            </div>
  1547.        </div>
  1548.  
  1549.    </div>
  1550.  
  1551.    
  1552.  
  1553. </footer>
  1554.  
  1555.  
  1556. <style>
  1557. /* Footer V4 - Modern Corporate Design */
  1558. .wpo-site-footer-v4 {
  1559.    color: var(--footer-color);
  1560.    margin-top: 100px;
  1561. }
  1562.  
  1563.  
  1564. .accent-line {
  1565.    position: absolute;
  1566.    top: 0;
  1567.    height: 100%;
  1568.    width: 33.333%;
  1569.    opacity: 0.8;
  1570. }
  1571.  
  1572. .accent-1 {
  1573.    left: 0;
  1574.    background: linear-gradient(90deg, #3b82f6, #1d4ed8);
  1575.    animation: slideRight 3s ease-in-out infinite;
  1576. }
  1577.  
  1578. .accent-2 {
  1579.    left: 33.333%;
  1580.    background: linear-gradient(90deg, #8b5cf6, #7c3aed);
  1581.    animation: slideRight 3s ease-in-out infinite 1s;
  1582. }
  1583.  
  1584. .accent-3 {
  1585.    left: 66.666%;
  1586.    background: linear-gradient(90deg, #10b981, #059669);
  1587.    animation: slideRight 3s ease-in-out infinite 2s;
  1588. }
  1589.  
  1590. @keyframes slideRight {
  1591.    0%, 100% { transform: translateX(-10px); opacity: 0.6; }
  1592.    50% { transform: translateX(10px); opacity: 1; }
  1593. }
  1594.  
  1595. /* Content Sections */
  1596. .content-sections {
  1597.    padding: 60px 0;
  1598.    position: relative;
  1599.    z-index: 2;
  1600. }
  1601.  
  1602. /* Brand Section */
  1603. .brand-section {
  1604.    padding-right: 2rem;
  1605. }
  1606.  
  1607. .brand-header {
  1608.    display: flex;
  1609.    align-items: center;
  1610.    margin-bottom: 2rem;
  1611.    gap: 1rem;
  1612. }
  1613.  
  1614. .brand-logo {
  1615.    height: 50px;
  1616.    width: auto;
  1617.    border-radius: 8px;
  1618. }
  1619.  
  1620. .brand-name {
  1621.    font-size: 1.5rem;
  1622.    font-weight: 800;
  1623.    color: var(--footer-color) !important;
  1624.    margin: 0;
  1625. }
  1626.  
  1627. .brand-type {
  1628.    color: var(--footer-color) !important;
  1629.    opacity: 0.8;
  1630.    font-size: 0.85rem;
  1631.    font-weight: 500;
  1632.    text-transform: uppercase;
  1633.    letter-spacing: 0.5px;
  1634. }
  1635.  
  1636. .brand-description {
  1637.    color: var(--footer-color) !important;
  1638.    line-height: 1.7;
  1639.    margin-bottom: 2rem;
  1640.    font-size: 0.95rem;
  1641. }
  1642.  
  1643. .brand-stats {
  1644.    display: flex;
  1645.    align-items: center;
  1646.    gap: 1.5rem;
  1647. }
  1648.  
  1649. .stat-item {
  1650.    text-align: center;
  1651. }
  1652.  
  1653. .stat-number {
  1654.    font-size: 1.5rem;
  1655.    font-weight: 800;
  1656.    color: #3b82f6;
  1657.    display: block;
  1658.    line-height: 1;
  1659. }
  1660.  
  1661. .stat-label {
  1662.    font-size: 0.8rem;
  1663.    color: #94a3b8;
  1664.    margin-top: 0.25rem;
  1665. }
  1666.  
  1667. .stat-divider {
  1668.    width: 1px;
  1669.    height: 40px;
  1670.    background: rgba(255, 255, 255, 0.2);
  1671. }
  1672.  
  1673. /* Links Section */
  1674. .links-section {
  1675.    padding-left: 1rem;
  1676.    padding-right: 1rem;
  1677. }
  1678.  
  1679. .section-title {
  1680.    margin-bottom: 2rem;
  1681.    position: relative;
  1682. }
  1683.  
  1684. .title-text {
  1685.    font-size: 1.3rem;
  1686.    font-weight: 700;
  1687.    color: var(--footer-color) !important;
  1688.    margin-bottom: 0.5rem;
  1689.    text-align: justify !important;
  1690. }
  1691.  
  1692.  
  1693. .link-group {
  1694.    margin-bottom: 2rem;
  1695. }
  1696.  
  1697. .group-title {
  1698.    font-size: 1rem;
  1699.    font-weight: 600;
  1700.    color: #f1f5f9;
  1701.    margin-bottom: 1rem;
  1702.    padding-bottom: 0.5rem;
  1703.    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  1704. }
  1705.  
  1706. .link-list {
  1707.    list-style: none;
  1708.    padding: 0;
  1709.    margin: 0;
  1710. }
  1711.  
  1712. .link-item {
  1713.    margin-bottom: 0.75rem;
  1714. }
  1715.  
  1716. .link-text {
  1717.    color: var(--footer-color) !important;
  1718.    text-decoration: none;
  1719.    font-size: 0.9rem;
  1720.    display: flex;
  1721.    align-items: center;
  1722.    transition: all 0.3s ease;
  1723.    padding: 0.25rem 0;
  1724. }
  1725.  
  1726. .link-text:hover {
  1727.    color: #3b82f6;
  1728.    padding-left: 0.5rem;
  1729. }
  1730.  
  1731. .link-icon {
  1732.    margin-right: 0.5rem;
  1733.    opacity: 0;
  1734.    transition: opacity 0.3s ease;
  1735. }
  1736.  
  1737. .link-text:hover .link-icon {
  1738.    opacity: 1;
  1739. }
  1740.  
  1741. .external-icon {
  1742.    color: #10b981;
  1743. }
  1744.  
  1745. /* Categories Section */
  1746. .categories-section {
  1747.    padding-left: 1rem;
  1748. }
  1749.  
  1750. .categories-intro {
  1751.    color: #cbd5e1;
  1752.    margin-bottom: 1.5rem;
  1753.    font-size: 0.9rem;
  1754. }
  1755.  
  1756. .categories-cloud {
  1757.    display: flex;
  1758.    flex-wrap: wrap;
  1759.    gap: 0.75rem;
  1760. }
  1761.  
  1762. .category-pill {
  1763.    display: inline-block;
  1764.    padding: 0.5rem 1rem;
  1765.    background: rgba(255, 255, 255, 0.1);
  1766.    border: 1px solid rgba(255, 255, 255, 0.2);
  1767.    border-radius: 20px;
  1768.    color:  var(--footer-color) !important;
  1769.    text-decoration: none;
  1770.    font-size: 0.85rem;
  1771.    opacity: 0.7;
  1772.    font-weight: 500;
  1773.    transition: all 0.3s ease;
  1774. }
  1775.  
  1776. .category-pill:hover {
  1777.    background: #3b82f6;
  1778.    border-color: #3b82f6;
  1779.    color: var(--footer-color) !important;
  1780.    opacity: 1;
  1781.    transform: translateY(-1px);
  1782.    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
  1783. }
  1784.  
  1785. /* Footer Bottom */
  1786. .footer-bottom {
  1787.    padding: 2rem 0;
  1788.    position: relative;
  1789.    z-index: 2;
  1790. }
  1791.  
  1792. .bottom-border {
  1793.    height: 1px;
  1794.    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
  1795.    margin-bottom: 2rem;
  1796. }
  1797.  
  1798. .copyright-main {
  1799.    font-size: 1rem;
  1800.    color: #e2e8f0;
  1801.    margin-bottom: 0.25rem;
  1802. }
  1803.  
  1804. .brand-highlight {
  1805.    color: var(--footer-color);
  1806.    font-weight: 700;
  1807. }
  1808.  
  1809. .copyright-sub {
  1810.    font-size: 0.85rem;
  1811.    color: #94a3b8;
  1812.    margin: 0;
  1813. }
  1814.  
  1815. .footer-actions {
  1816.    display: flex;
  1817.    align-items: center;
  1818.    gap: 2rem;
  1819. }
  1820.  
  1821. .action-links {
  1822.    display: flex;
  1823.    gap: 1.5rem;
  1824. }
  1825.  
  1826. .action-link {
  1827.    display: flex;
  1828.    align-items: center;
  1829.    gap: 0.5rem;
  1830.    color: #cbd5e1;
  1831.    text-decoration: none;
  1832.    font-size: 0.9rem;
  1833.    transition: color 0.3s ease;
  1834. }
  1835.  
  1836. .action-link:hover {
  1837.    color: #3b82f6;
  1838. }
  1839.  
  1840. .scroll-to-top-btn {
  1841.    background: rgba(255, 255, 255, 0.1);
  1842.    border: 1px solid rgba(255, 255, 255, 0.2);
  1843.    color: #cbd5e1;
  1844.    width: 44px;
  1845.    height: 44px;
  1846.    border-radius: 12px;
  1847.    cursor: pointer;
  1848.    transition: all 0.3s ease;
  1849.    display: flex;
  1850.    align-items: center;
  1851.    justify-content: center;
  1852. }
  1853.  
  1854. .scroll-to-top-btn:hover {
  1855.    background: #3b82f6;
  1856.    border-color: #3b82f6;
  1857.    color: white;
  1858.    transform: translateY(-2px);
  1859. }
  1860.  
  1861. /* Background Pattern */
  1862. .footer-pattern {
  1863.    position: absolute;
  1864.    top: 0;
  1865.    left: 0;
  1866.    width: 100%;
  1867.    height: 100%;
  1868.    z-index: 1;
  1869.    overflow: hidden;
  1870. }
  1871.  
  1872. .pattern-grid {
  1873.    position: relative;
  1874.    width: 100%;
  1875.    height: 100%;
  1876. }
  1877.  
  1878. .pattern-dot {
  1879.    position: absolute;
  1880.    width: 2px;
  1881.    height: 2px;
  1882.    background: rgba(255, 255, 255, 0.1);
  1883.    border-radius: 50%;
  1884. }
  1885.  
  1886. .pattern-dot:nth-child(1) { top: 20%; left: 10%; }
  1887. .pattern-dot:nth-child(2) { top: 40%; right: 15%; }
  1888. .pattern-dot:nth-child(3) { top: 60%; left: 70%; }
  1889. .pattern-dot:nth-child(4) { bottom: 30%; right: 30%; }
  1890. .pattern-dot:nth-child(5) { bottom: 50%; left: 40%; }
  1891. .pattern-dot:nth-child(6) { top: 80%; right: 60%; }
  1892.  
  1893. /* Responsive Design */
  1894. @media (max-width: 992px) {
  1895.    .newsletter-heading {
  1896.        font-size: 2rem;
  1897.    }
  1898.    
  1899.    .brand-section {
  1900.        padding-right: 0;
  1901.        margin-bottom: 3rem;
  1902.    }
  1903.    
  1904.    .links-section, .categories-section {
  1905.        padding-left: 0;
  1906.        padding-right: 0;
  1907.    }
  1908.    
  1909.    .brand-stats {
  1910.        justify-content: center;
  1911.        margin-top: 2rem;
  1912.    }
  1913. }
  1914.  
  1915. @media (max-width: 768px) {
  1916.    .newsletter-section {
  1917.        padding: 60px 0 40px;
  1918.    }
  1919.    
  1920.    .newsletter-container {
  1921.        padding: 2rem 1.5rem;
  1922.        margin: 0 1rem;
  1923.    }
  1924.    
  1925.    .newsletter-heading {
  1926.        font-size: 1.75rem;
  1927.    }
  1928.    
  1929.    .content-sections {
  1930.        padding: 40px 0;
  1931.    }
  1932.    
  1933.    .brand-header {
  1934.        flex-direction: column;
  1935.        text-align: center;
  1936.    }
  1937.    
  1938.    .footer-actions {
  1939.        flex-direction: column;
  1940.        gap: 1rem;
  1941.        margin-top: 1.5rem;
  1942.    }
  1943.    
  1944.    .action-links {
  1945.        order: 2;
  1946.    }
  1947.    
  1948.    .scroll-to-top-btn {
  1949.        order: 1;
  1950.    }
  1951. }
  1952.  
  1953. @media (max-width: 576px) {
  1954.    .newsletter-container {
  1955.        padding: 1.5rem 1rem;
  1956.    }
  1957.    
  1958.    .newsletter-heading {
  1959.        font-size: 1.5rem;
  1960.    }
  1961.    
  1962.    .brand-stats {
  1963.        flex-direction: column;
  1964.        gap: 1rem;
  1965.    }
  1966.    
  1967.    .stat-divider {
  1968.        width: 40px;
  1969.        height: 1px;
  1970.    }
  1971.    
  1972.    .action-links {
  1973.        flex-direction: column;
  1974.        gap: 0.75rem;
  1975.        text-align: center;
  1976.    }
  1977.    
  1978.    .pattern-dot {
  1979.        display: none;
  1980.    }
  1981. }
  1982. </style>
  1983.  
  1984. <!-- Bootstrap 5 JS -->
  1985.  
  1986. <script>
  1987. // Scroll to Top Function
  1988. document.addEventListener('DOMContentLoaded', function () {
  1989.    var btn = document.getElementById('toggleExternal');
  1990.    if (!btn) return; // No extra items, no button
  1991.  
  1992.    var extras = document.querySelectorAll('#externalLinks li.extra');
  1993.  
  1994.    btn.addEventListener('click', function () {
  1995.        var anyHidden = Array.prototype.some.call(extras, function (li) {
  1996.            return li.classList.contains('d-none');
  1997.        });
  1998.  
  1999.        extras.forEach(function (li) {
  2000.            if (anyHidden) {
  2001.                li.classList.remove('d-none');
  2002.                li.classList.add('show');
  2003.            } else {
  2004.                li.classList.add('d-none');
  2005.                li.classList.remove('show');
  2006.            }
  2007.        });
  2008.  
  2009.        btn.textContent = anyHidden ? 'View less' : 'View more';
  2010.        btn.setAttribute('aria-expanded', anyHidden ? 'true' : 'false');
  2011.    });
  2012. });
  2013. function scrollToTop() {
  2014.    window.scrollTo({
  2015.        top: 0,
  2016.        behavior: 'smooth'
  2017.    });
  2018. }
  2019.  
  2020. // Initialize Footer V4 Features
  2021. document.addEventListener('DOMContentLoaded', function() {
  2022.    
  2023.    // Newsletter Form Handling
  2024.    const newsletterForm = document.querySelector('.newsletter-form');
  2025.    const emailInput = document.querySelector('.form-input');
  2026.    const submitButton = document.querySelector('.submit-button');
  2027.    const successMessage = document.querySelector('.success-message');
  2028.    const errorMessage = document.querySelector('.error-message');
  2029.    const infoMessage = document.querySelector('.info-message');
  2030.    
  2031.    if (newsletterForm && emailInput && submitButton) {
  2032.        
  2033.        // Form submission
  2034.        newsletterForm.addEventListener('submit', function(e) {
  2035.            e.preventDefault();
  2036.            
  2037.            const email = emailInput.value.trim();
  2038.            
  2039.            // Validate email
  2040.            if (!email || !isValidEmail(email)) {
  2041.                showMessage('error');
  2042.                emailInput.focus();
  2043.                return;
  2044.            }
  2045.            
  2046.            // Show loading state
  2047.            const originalText = submitButton.querySelector('.button-text').textContent;
  2048.            const originalIcon = submitButton.querySelector('.button-icon').innerHTML;
  2049.            
  2050.            submitButton.disabled = true;
  2051.            submitButton.querySelector('.button-text').textContent = 'Subscribing...';
  2052.            submitButton.querySelector('.button-icon').innerHTML = '<i class="bi bi-arrow-clockwise"></i>';
  2053.            submitButton.querySelector('.button-icon i').style.animation = 'spin 1s linear infinite';
  2054.            
  2055.            // Simulate API call
  2056.            setTimeout(() => {
  2057.                // Success state
  2058.                submitButton.querySelector('.button-text').textContent = 'Subscribed!';
  2059.                submitButton.querySelector('.button-icon').innerHTML = '<i class="bi bi-check-lg"></i>';
  2060.                submitButton.querySelector('.button-icon i').style.animation = 'none';
  2061.                submitButton.style.background = 'linear-gradient(135deg, #10b981 0%, #059669 100%)';
  2062.                
  2063.                showMessage('success');
  2064.                
  2065.                // Reset after delay
  2066.                setTimeout(() => {
  2067.                    submitButton.querySelector('.button-text').textContent = originalText;
  2068.                    submitButton.querySelector('.button-icon').innerHTML = originalIcon;
  2069.                    submitButton.style.background = '';
  2070.                    submitButton.disabled = false;
  2071.                    emailInput.value = '';
  2072.                    showMessage('info');
  2073.                }, 3000);
  2074.                
  2075.            }, 2000);
  2076.        });
  2077.        
  2078.        // Input validation
  2079.        emailInput.addEventListener('blur', function() {
  2080.            const email = this.value.trim();
  2081.            if (email && !isValidEmail(email)) {
  2082.                this.style.borderColor = '#ef4444';
  2083.                this.style.boxShadow = '0 0 0 4px rgba(239, 68, 68, 0.2)';
  2084.            } else if (email && isValidEmail(email)) {
  2085.                this.style.borderColor = '#10b981';
  2086.                this.style.boxShadow = '0 0 0 4px rgba(16, 185, 129, 0.2)';
  2087.            }
  2088.        });
  2089.        
  2090.        emailInput.addEventListener('focus', function() {
  2091.            this.style.borderColor = '#3b82f6';
  2092.            this.style.boxShadow = '0 0 0 4px rgba(59, 130, 246, 0.2)';
  2093.        });
  2094.        
  2095.        // Reset validation styling on input
  2096.        emailInput.addEventListener('input', function() {
  2097.            if (this.style.borderColor === 'rgb(239, 68, 68)') {
  2098.                this.style.borderColor = '';
  2099.                this.style.boxShadow = '';
  2100.            }
  2101.        });
  2102.    }
  2103.    
  2104.    // Email validation function
  2105.    function isValidEmail(email) {
  2106.        const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
  2107.        return emailRegex.test(email);
  2108.    }
  2109.    
  2110.    // Message display function
  2111.    function showMessage(type) {
  2112.        // Hide all messages
  2113.        successMessage.style.display = 'none';
  2114.        errorMessage.style.display = 'none';
  2115.        infoMessage.style.display = 'none';
  2116.        
  2117.        // Show specific message
  2118.        if (type === 'success') {
  2119.            successMessage.style.display = 'block';
  2120.        } else if (type === 'error') {
  2121.            errorMessage.style.display = 'block';
  2122.        } else if (type === 'info') {
  2123.            infoMessage.style.display = 'block';
  2124.        }
  2125.    }
  2126.    
  2127.    // Smooth reveal animations
  2128.    const observerOptions = {
  2129.        threshold: 0.1,
  2130.        rootMargin: '0px 0px -30px 0px'
  2131.    };
  2132.    
  2133.    const sectionObserver = new IntersectionObserver((entries) => {
  2134.        entries.forEach(entry => {
  2135.            if (entry.isIntersecting) {
  2136.                entry.target.style.opacity = '1';
  2137.                entry.target.style.transform = 'translateY(0)';
  2138.            }
  2139.        });
  2140.    }, observerOptions);
  2141.    
  2142.    // Animate sections
  2143.    document.querySelectorAll('.brand-section, .links-section, .categories-section').forEach((section, index) => {
  2144.        section.style.opacity = '0';
  2145.        section.style.transform = 'translateY(20px)';
  2146.        section.style.transition = `all 0.6s ease ${index * 0.2}s`;
  2147.        sectionObserver.observe(section);
  2148.    });
  2149.    
  2150.    // Animate category pills
  2151.    document.querySelectorAll('.category-pill').forEach((pill, index) => {
  2152.        pill.style.opacity = '0';
  2153.        pill.style.transform = 'translateY(10px)';
  2154.        pill.style.transition = `all 0.4s ease ${index * 0.1}s`;
  2155.        
  2156.        setTimeout(() => {
  2157.            pill.style.opacity = '1';
  2158.            pill.style.transform = 'translateY(0)';
  2159.        }, 300 + (index * 100));
  2160.    });
  2161.    
  2162.    // Enhanced link hover effects
  2163.    document.querySelectorAll('.link-text').forEach(link => {
  2164.        link.addEventListener('mouseenter', function() {
  2165.            const icon = this.querySelector('.link-icon');
  2166.            if (icon) {
  2167.                icon.style.transform = 'translateX(4px)';
  2168.            }
  2169.        });
  2170.        
  2171.        link.addEventListener('mouseleave', function() {
  2172.            const icon = this.querySelector('.link-icon');
  2173.            if (icon) {
  2174.                icon.style.transform = 'translateX(0)';
  2175.            }
  2176.        });
  2177.    });
  2178.    
  2179.    // Prevent default for demo links
  2180.    document.querySelectorAll('a[href="#"]').forEach(link => {
  2181.        link.addEventListener('click', function(e) {
  2182.            e.preventDefault();
  2183.        });
  2184.    });
  2185.    
  2186.    // Add ripple effect to submit button
  2187.    submitButton.addEventListener('click', function(e) {
  2188.        const ripple = document.createElement('span');
  2189.        const rect = this.getBoundingClientRect();
  2190.        const size = Math.max(rect.width, rect.height);
  2191.        const x = e.clientX - rect.left - size / 2;
  2192.        const y = e.clientY - rect.top - size / 2;
  2193.        
  2194.        ripple.style.cssText = `
  2195.            position: absolute;
  2196.            width: ${size}px;
  2197.            height: ${size}px;
  2198.            left: ${x}px;
  2199.            top: ${y}px;
  2200.            background: rgba(255, 255, 255, 0.3);
  2201.            border-radius: 50%;
  2202.            transform: scale(0);
  2203.            animation: ripple 0.6s ease-out;
  2204.            pointer-events: none;
  2205.        `;
  2206.        
  2207.        this.appendChild(ripple);
  2208.        
  2209.        setTimeout(() => {
  2210.            ripple.remove();
  2211.        }, 600);
  2212.    });
  2213.    
  2214. });
  2215.  
  2216. // Add CSS for ripple animation
  2217. const rippleStyle = document.createElement('style');
  2218. rippleStyle.textContent = `
  2219.    @keyframes ripple {
  2220.        to {
  2221.            transform: scale(2);
  2222.            opacity: 0;
  2223.        }
  2224.    }
  2225.    
  2226.    @keyframes spin {
  2227.        from { transform: rotate(0deg); }
  2228.        to { transform: rotate(360deg); }
  2229.    }
  2230.    
  2231.    .submit-button {
  2232.        position: relative;
  2233.        overflow: hidden;
  2234.    }
  2235. `;
  2236. document.head.appendChild(rippleStyle);
  2237. </script>
  2238.  
  2239.        <!-- end of wpo-site-footer-section -->
  2240.    </div>
  2241.    <!-- end of page-wrapper -->
  2242.  
  2243.    <!-- All JavaScript files
  2244.    ================================================== -->
  2245.    
  2246.  
  2247. <script src="/static/blogapp/assets/js/jquery.min.js"></script>
  2248. <script src="/static/blogapp/assets/js/bootstrap.bundle.min.js"></script>
  2249. <!-- Plugins for this template -->
  2250. <script src="/static/blogapp/assets/js/modernizr.custom.js"></script>
  2251. <script src="/static/blogapp/assets/js/jquery-plugin-collection.js"></script>
  2252. <!-- Custom script for this template -->
  2253. <script src="/static/blogapp/assets/js/script.js"></script>
  2254.  
  2255. <script>
  2256. (function () {
  2257. var fallbackImageSrc = "/static/blogapp/assets/images/breaking-news/img-1.jpg";
  2258. console.log("[ImageFallback] Initialized with fallback:", fallbackImageSrc);
  2259.  
  2260. function applyFallback(img) {
  2261. if (!img || img.dataset.fallbackApplied === "1") {
  2262. return;
  2263. }
  2264. var failedSrc = img.currentSrc || img.src || "";
  2265. img.dataset.fallbackApplied = "1";
  2266. img.onerror = null;
  2267. img.src = fallbackImageSrc;
  2268. console.warn("[ImageFallback] Replaced broken image:", {
  2269. failedSrc: failedSrc,
  2270. fallbackSrc: fallbackImageSrc,
  2271. alt: img.alt || "",
  2272. });
  2273. }
  2274.  
  2275. document.querySelectorAll("img").forEach(function (img) {
  2276. if (img.complete && img.naturalWidth === 0) {
  2277. console.warn("[ImageFallback] Found broken image at load, applying fallback.", {
  2278. failedSrc: img.currentSrc || img.src || "",
  2279. alt: img.alt || "",
  2280. });
  2281. applyFallback(img);
  2282. }
  2283. });
  2284.  
  2285. document.addEventListener(
  2286. "error",
  2287. function (event) {
  2288. var target = event.target;
  2289. if (target && target.tagName === "IMG") {
  2290. applyFallback(target);
  2291. }
  2292. },
  2293. true
  2294. );
  2295. })();
  2296. </script>
  2297.  
  2298. <!-- <script src="https://api-new.nextbacklinks.com/static/ads/ad-script.js"></script> -->
  2299.  
  2300.  
  2301.  
  2302. <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":"f9b11b2035f646c28ec9e7277e580974","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
  2303. </body>
  2304.  
  2305. </html>
  2306.  
  2307.  
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda