<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
     xmlns:content="http://purl.org/rss/1.0/modules/content/"
     xmlns:dc="https://purl.org/dc/elements/1.1/"
     xmlns:dcterms="http://purl.org/dc/terms/"
     xmlns:media="http://search.yahoo.com/mrss/"
     xmlns:atom="http://www.w3.org/2005/Atom"
>
    <channel>
                    <atom:link href="https://www.tomsguide.com/feeds/articletype/how-to" rel="self" type="application/rss+xml" />
                            <title><![CDATA[ Latest from Tom's Guide in How-to ]]></title>
                <link>https://www.tomsguide.com/how-to</link>
        <description><![CDATA[ All the latest how-to content from the Tom's Guide team ]]></description>
                                    <lastBuildDate>Sun, 28 Jun 2026 09:15:00 +0000</lastBuildDate>
                            <language>en</language>
                                <item>
                                                            <title><![CDATA[ 3 AC mistakes that are quietly spiking your energy bill — and how to fix them ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/3-ac-mistakes-that-are-quietly-spiking-your-energy-bill-and-how-to-fix-them</link>
                                                                            <description>
                            <![CDATA[ Stop accidentally sabotaging your AC. Learn the 3 common cooling mistakes that are secretly driving up your summer energy bills, and how to fix them today. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">PAuJbCh5dpDiaHmuChZWB5</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/tR7DwFgjwnEBS3s4a5f3r4-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sun, 28 Jun 2026 09:15:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Home]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/tR7DwFgjwnEBS3s4a5f3r4-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Turning on an air conditioner]]></media:description>                                                            <media:text><![CDATA[Turning on an air conditioner]]></media:text>
                                <media:title type="plain"><![CDATA[Turning on an air conditioner]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/tR7DwFgjwnEBS3s4a5f3r4-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>When summer temperatures soar, our first instinct is to go into survival mode. We crank the thermostat down, close off empty rooms, and block vents to force cool air where we want it. It all seems perfectly logical. Except, it's doing the exact opposite.</p><p>Many of our most common cooling habits are actually working <em>against</em> our HVAC systems. Instead of saving money, these good intentions are secretly driving up energy consumption and putting brutal, unnecessary strain on your equipment. </p><p>If your electric bills are higher than expected, you might be accidentally sabotaging your own comfort. Here are three common AC mistakes you're probably making right now, and exactly how to fix them.</p><section class="howto-block">                    <h3>1. Setting your thermostat too low won't cool faster</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/wmiHrJ5gWaL9HYcjLGDfJ8.jpg"                                        alt="Woman setting thermostat"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/wmiHrJ5gWaL9HYcjLGDfJ8.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Getty Images)</div></figure>                    <p><p>The biggest AC mistake is lowering your thermostat to the coldest setting, assuming it will cool your home quicker. This misconception costs money without providing any benefit. </p><p><a href="https://www.tomsguide.com/us/smart-air-conditioner-buying-guide,review-5615.html">Air conditioners</a> operate at a constant cooling rate regardless of thermostat setting. Cranking the temperature down just forces your system to run longer and harder, consuming more energy while your home reaches the same temperature it would at a more reasonable setting.</p><p>Instead of chasing the lowest possible temperature<strong>, set your thermostat 3-5 degrees higher than you think you want</strong>. Pair this with ceiling fans to circulate air, which creates the sensation of cooler temperatures without actual temperature change. In fact, the <a href="https://www.tomsguide.com/home/expert-reveals-the-best-temperature-to-set-your-ac-during-a-heatwave-and-it-might-surprise-you">best temperature to set your air conditioner to is around 78 degrees</a>, which seems high, but will net you the best efficiency.</p><p>Your system runs less, your energy bill drops, and your home stays comfortable. </p></p>                </section><section class="howto-block">                    <h3>2. Neglecting filter maintenance forces your system to overwork</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/Gd9aKquyRkL9NnA9znbwa3.jpg"                                        alt="An AC filter being removed"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/Gd9aKquyRkL9NnA9znbwa3.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Clogged AC filters are invisible saboteurs. Most people forget about them entirely because they're out of sight inside the system. But a dirty filter restricts airflow dramatically, forcing your AC to work harder to push cool air through your home. This increased strain drives up energy consumption and accelerates wear on components.</p><p><strong>Check your filters monthly during summer and replace them every three months minimum</strong>. During extreme heat waves when your AC runs nonstop, <strong>check filters every two weeks</strong> because they clog faster under heavy use. </p><p>This single maintenance task costs $15-30 per filter but prevents expensive repairs and keeps energy consumption reasonable. A clean filter is the cheapest insurance against both high bills and system failure.</p></p>                </section><section class="howto-block">                    <h3>3. Closing vents and doors disrupts your entire system</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/xw9VYXtM3Ewby5xRBLANTF.jpg"                                        alt="Man closing a door"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/xw9VYXtM3Ewby5xRBLANTF.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Closing doors to unused rooms or blocking vents seems like an obvious way to conserve energy by concentrating cool air where you need it. In reality, it undermines how your HVAC system operates. </p><p>Your ductwork and system are designed to distribute air throughout your <em>entire</em> home. Blocking vents creates pressure imbalances in the ductwork, forces your system to work harder, and can cause leaks or damage that reduce efficiency.</p><p><strong>Leave all interior doors open and vents unblocked</strong>. If you want to control temperature in specific zones, <strong>use a programmable or smart thermostat that manages heating and cooling </strong>more intelligently than manual blocking ever could. </p><p>Modern thermostats can learn your preferences and adjust automatically, providing comfort without the system strain that comes from blocking airflow.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-W5xKwe"></div>                            </div>                            <script src="https://kwizly.com/embed/W5xKwe.js" async></script><figure class="van-image-figure pull-right inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:676px;"><p class="vanilla-image-block" style="padding-top:31.51%;"><img id="B5QrUpZ7qWkM5DLSULuNWo" name="Google Tom's Guide" alt="Google" src="https://cdn.mos.cms.futurecdn.net/B5QrUpZ7qWkM5DLSULuNWo.jpg" mos="" align="right" fullscreen="" width="676" height="213" attribution="" endorsement="" class="pull-rightinline"></p></div></div><figcaption itemprop="caption description" class="pull-right inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Future)</span></figcaption></figure><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/home/how-to-cool-down-your-living-room-without-ac-7-simple-layout-changes">How to cool down your living room without AC — 7 simple layout changes</a></li><li><a href="https://www.tomsguide.com/vehicle-tech/evs/5-easy-ways-to-make-your-cars-ac-stay-cooler-for-longer">5 easy ways to make your car's AC stay cooler for longer</a></li><li><a href="https://www.tomsguide.com/home/this-nasa-approved-plant-hack-cools-your-home-for-free-heres-how">This NASA-approved plant hack cools your home for free</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ There's a simple way to watch Colombia vs Portugal for *FREE* ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/streaming/theres-a-simple-way-to-watch-colombia-vs-portugal-for-free</link>
                                                                            <description>
                            <![CDATA[ Here's how to watch Colombia vs Portugal as star forward Cristiano Ronaldo looks to fire his team to Group K's summit. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">7gxLBNKFnLR9MWh64WCMZn</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/Q6T83GtmLgkCzsnex9AEjA-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 27 Jun 2026 22:55:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Streaming]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Jakob Barnes ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/sdLQVVidVk65LYsn3p76nL.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/Q6T83GtmLgkCzsnex9AEjA-1280-80.jpg">
                                                            <media:credit><![CDATA[Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Cristiano Ronaldo celebrates a goal for Portugal against Uzbekistan at World Cup 2026]]></media:description>                                                            <media:text><![CDATA[Cristiano Ronaldo celebrates a goal for Portugal against Uzbekistan at World Cup 2026]]></media:text>
                                <media:title type="plain"><![CDATA[Cristiano Ronaldo celebrates a goal for Portugal against Uzbekistan at World Cup 2026]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/Q6T83GtmLgkCzsnex9AEjA-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Cristiano Ronaldo's Portugal face Colombia in an exciting 2026 FIFA World Cup Group K clash at Miami's Hard Rock Stadium on June 27. Hungry for goals? Here's a simple way to <strong>watch Colombia vs Portugal for free </strong>– in the U.S., Canada and beyond.</p><p>Kick-off is at 7:30 p.m. ET / 4:30 p.m. PT / 12:30 a.m. BST, with fans around the world tuning in to see whether Ronaldo and Portugal can top the group.</p><div  class="fancy-box"><div class="fancy_box-title">Colombia vs Portugal: Free stream, TV channel</div><div class="fancy_box_body"><p class="fancy-box__body-text"><ul><li><strong>Free stream:</strong> <a data-analytics-id="inline-link" href="https://www.bbc.co.uk/iplayer" target="_blank" rel="nofollow"><strong>BBC</strong></a> <strong>(U.K.) </strong></li><li><strong>Watch from anywhere:</strong> <a data-analytics-id="inline-link" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> (Up to 63% Off)</li></ul></p></div></div><p>Cristiano Ronaldo scored at a record sixth World Cup to silence his doubters and, with Joao Cancelo and Nuno Mendes providing full-back threat, will want to be among the goals again. Joao Felix will vie with Bernardo Silva for a start as they seek a win to top the group.</p><p>Colombia are already through, but a draw wins the group. Colombia manager Nestor Lorenzo is sweating on the fitness of Luis Suarez, but Luis Diaz will again start.</p><p>If you're searching for how to watch Colombia vs Portugal free online, we've got everything a 'soccer' fan needs, including kick-off times, TV channels, and where to find a live stream of every goal, header and CR7 "Siuuu" celebration.</p><p>Read on as we show you <strong>how to watch Colombia vs Portugal </strong>from anywhere in the world for free with <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a>.</p><h2 id="watch-colombia-vs-portugal-live-streams-for-free">Watch Colombia vs Portugal live streams for free</h2><p>In the U.K., Colombia vs Portugal will be broadcast for <a href="https://www.bbc.co.uk/iplayer" target="_blank" rel="nofollow"><strong>free on BBC</strong></a>. The build-up is live now ahead of kick-off at 12:30 a.m. BST.<strong> </strong></p><p><strong>Get BBC iPlayer</strong> – no messy sign up, email and a UK postcode (e.g. HA9 0WS). TV licence holders only.</p><p><strong>Traveling abroad?</strong> Use <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> to watch BBC iPlayer as if you were back home in the U.K..</p><h2 class="article-body__section" id="section-how-to-watch-colombia-vs-portugal-live-streams-from-anywhere"><span>How to watch Colombia vs Portugal live streams from anywhere</span></h2><div class="product"><a data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>🏆 <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25=""><u><strong>Tom's Guide No.1 Streaming VPN – Try 60 days</strong></u></a> 🏆</p><p>We recently crowned Norton VPN our No.1 <a href="https://www.tomsguide.com/best-picks/streaming-vpn" target="_blank">Streaming VPN</a>. Blazingly fast. Secure. Works on phones, laptops and smart TVs. So you can stream World Cup coverage from anywhere, on any device.<br><br>✅ <strong>60-day money-back guarantee</strong><br>🔓 <strong>Unlocks global streams</strong><br>⚽ <strong>Quick! </strong><a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Up to 63% off Norton VPN plans</strong></a> </p><p>Catch every World Cup goal live with Norton VPN!<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25="">View Deal</a></p></div><p><strong>Quick guide: watch World Cup for free</strong></p><p>Using a VPN is incredibly simple.</p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> is our No.1 streaming VPN.</p><p><strong>2. Choose the location. </strong>For instance if you're in the U.S. and want to watch Colombia vs Portugal free, you'd select 'United Kingdom' from the list.</p><p><strong>3. Watch the World Cup. </strong>Head to<strong> </strong><a href="https://www.bbc.co.uk/iplayer" target="_blank" rel="nofollow"><strong>BBC iPlayer</strong></a> and watch the game live.</p><h2 id="what-devices-is-bbc-available-on">What devices is BBC available on?</h2><ul><li><strong>Amazon Fire TV Stick</strong> (including Fire TV Cube)</li><li><strong>Android devices</strong> (phones, tablets)</li><li><strong>Apple iOS</strong> (iPhone, iPad)</li><li><strong>Chromecast</strong> (casting from Android/iOS devices)</li><li><strong>Chromecast with Google TV</strong> (supported/certified devices)</li><li><strong> EE TV</strong></li><li><strong> Freely, Freeview Play, Freesat, YouView </strong></li><li><strong> Google TV devices </strong>(with BBC certification)</li><li><strong>Hisense Smart TVs </strong></li><li><strong>LG Smart TVs</strong> (webOS)</li><li><strong>Linux PCs</strong> (via supported browsers)</li><li><strong>Macs</strong> (via Safari or other supported browsers)</li><li><strong>Panasonic Smart TVs</strong></li><li><strong>Philips Smart TVs</strong> (Google TV models)</li><li><strong>PlayStation 4, PlayStation 5 </strong></li><li><strong> Roku streaming players and Roku TVs</strong></li><li><strong>Samsung Smart TVs</strong> (supported models)</li><li><strong>Sky boxes</strong> (Glass, Stream, Q)</li><li><strong>Sony Android TV</strong> (Google TV models)</li><li><strong>TCL Android TV</strong> (Google TV models)</li><li><strong>Toshiba Smart TVs</strong> (supported models)</li><li><strong>Virgin Media</strong> (Stream, TV 360)</li><li><strong>Windows PCs </strong>(via supported web browsers)</li><li><strong> Xbox One, Xbox Series S and X</strong></li></ul><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams"><strong>How to watch World Cup 2026 online</strong></a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/watch-peacock-online-from-anywhere-vpn"><strong>How to watch Peacock from anywhere with a VPN</strong></a><strong></strong></li><li><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k"><strong>How to watch the World Cup in 4K</strong></a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ There's a simple way to watch Croatia vs Ghana for *FREE* ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/streaming/theres-a-simple-way-to-watch-croatia-vs-ghana-for-free</link>
                                                                            <description>
                            <![CDATA[ Here's how to watch Croatia vs Ghana as the legendary Luka Modric looks to keep his side in the competition. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">cVvkWgsUzuciRip2vkLT9G</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/bW6TottPg9V9ZeVXmsQfSP-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 27 Jun 2026 20:35:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Streaming]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Jakob Barnes ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/sdLQVVidVk65LYsn3p76nL.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/bW6TottPg9V9ZeVXmsQfSP-1280-80.jpg">
                                                            <media:credit><![CDATA[Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Croatia&#039;s Luka Modric warming up prior to World Cup 2026 match vs Panama]]></media:description>                                                            <media:text><![CDATA[Croatia&#039;s Luka Modric warming up prior to World Cup 2026 match vs Panama]]></media:text>
                                <media:title type="plain"><![CDATA[Croatia&#039;s Luka Modric warming up prior to World Cup 2026 match vs Panama]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/bW6TottPg9V9ZeVXmsQfSP-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Luka Modric's Croatia face Ghana<strong> </strong>in a tantalizing 2026 FIFA World Cup Group L clash at Philadelphia Stadium on June 27. Hungry for goals? Here's a simple way to <strong>watch Croatia vs Ghana for free </strong>– in U.S., Canada. and beyond.</p><p>Kick-off is at 5 p.m. ET / 2 p.m. PT / 10 p.m. BST, with fans around the world tuning in to see whether Croatia or Ghana can push for top spot in Group L.</p><div  class="fancy-box"><div class="fancy_box-title">Croatia vs Ghana: Free stream, TV channel</div><div class="fancy_box_body"><p class="fancy-box__body-text"><ul><li><strong>Free stream:</strong> <a data-analytics-id="inline-link" href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>ITVX</strong></a> <strong>(U.K.) </strong></li><li><strong>Watch from anywhere:</strong> <a data-analytics-id="inline-link" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> (Up to 63% Off)</li></ul></p></div></div><p>Croatia need a result against Ghana to ensure progression to the round of 32. The ageing Modric and his midfield colleague Mateo Kovacic will be called on again for the 2018 finalists.</p><p>Carlos Queiroz's Ghana side frustrated England last time out, won't change much today. Antoine Semenyo will again be the Black Stars' main attacking threat.</p><p>If you're searching for how to watch Croatia vs Ghana free online, we've got everything a 'soccer' fan needs, including kick-off times, TV channels, and where to find a live stream of every goal, header and masterful pass from the maestro, Luka Modric.</p><p>Read on as we show you <strong>how to watch Croatia vs Ghana </strong>from anywhere in the world for free with <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a>.</p><h2 id="watch-croatia-vs-ghana-live-streams-for-free">Watch Croatia vs Ghana live streams for free</h2><p>In the U.K., <strong>Croatia vs Ghana</strong> will be broadcast for <a href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>free on ITVX</strong></a>. The build-up is live now ahead of kick-off at 10 p.m. BST.</p><p><strong>Get ITVX</strong> – no messy sign up, email and a UK postcode (e.g. HA9 0WS). TV licence holders only.</p><p><strong>Traveling abroad?</strong> Use <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> to watch ITVX as if you were back home in the U.K. .</p><h2 class="article-body__section" id="section-how-to-watch-croatia-vs-ghana-live-streams-from-anywhere"><span>How to watch Croatia vs Ghana live streams from anywhere</span></h2><div class="product"><a data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>🏆 <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25=""><u><strong>Tom's Guide No.1 Streaming VPN – Try 60 days</strong></u></a> 🏆</p><p>We recently crowned Norton VPN our No.1 <a href="https://www.tomsguide.com/best-picks/streaming-vpn" target="_blank">Streaming VPN</a>. Blazingly fast. Secure. Works on phones, laptops and smart TVs. So you can stream World Cup coverage from anywhere, on any device.<br><br>✅ <strong>60-day money-back guarantee</strong><br>🔓 <strong>Unlocks global streams</strong><br>⚽ <strong>Quick! </strong><a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Up to 63% off Norton VPN plans</strong></a> </p><p>Catch every World Cup goal live with Norton VPN!<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25="">View Deal</a></p></div><p><strong>Quick guide: watch World Cup for free</strong></p><p>Using a VPN is incredibly simple.</p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> is our No.1 streaming VPN.</p><p><strong>2. Choose the location. </strong>For instance if you're in the U.S. and want to watch Croatia vs Ghana free, you'd select 'United Kingdom' from the list.</p><p><strong>3. Watch the World Cup. </strong>Head to <a href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>ITVX</strong></a> and watch the game live.</p><h2 id="what-devices-is-itvx-available-on">What devices is ITVX available on?</h2><ul><li><strong>Amazon Fire</strong> (Tablets, Cube, Stick, TVs)</li><li><strong>Android TV</strong> (please note: some models aren’t supported)</li><li><strong>Android</strong> (Mobile & Tablet) - Android 7.0 and above</li><li><strong>Apple TV</strong> (tvOS 14 or later)</li><li><strong>Google TV</strong> (Chromecast with Google TV and NVIDIA Shield)</li><li><strong>Freely</strong></li><li><strong>Freesat </strong>(please note: some models aren’t supported)</li><li><strong>Freeview Play</strong> (TVs and set-top boxes) (please note: some models aren’t supported)</li><li><strong>iOS (iPhone & iPad)</strong> - iOS 14 and above</li><li><strong>LG Smart TVs</strong> (2016-2024)</li><li><strong>NOW Smart Sticks and Boxes </strong>(minimum firmware v11.5.0)</li><li><strong>PlayStation (PS4 and PS5)</strong></li><li><strong>Roku</strong> (Stick & Roku-OS powered TVs, minimum firmware v11.5.0)</li><li><strong>Samsung Smart TVs</strong> (2017 and above - 2016 models only offer on demand TV)</li><li><strong>Sky Q, Sky Glass and Sky Stream puck</strong></li><li><strong>Virgin Media</strong> (360, Stream, TiVo)</li><li><strong>YouView</strong> (BT, Humax, Sony, TalkTalk)</li><li><strong>Xbox</strong> (One, Series X, Series S)</li></ul><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams"><strong>How to watch World Cup 2026 online</strong></a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/watch-peacock-online-from-anywhere-vpn"><strong>How to watch Peacock from anywhere with a VPN</strong></a><strong></strong></li><li><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k"><strong>How to watch the World Cup in 4K</strong></a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ There's a simple way to watch Panama vs England for *FREE* ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/streaming/theres-a-simple-way-to-watch-panama-vs-england-for-free</link>
                                                                            <description>
                            <![CDATA[ Here's how to watch Panama vs England as Harry Kane aims to fire the Three Lions to top spot in Group L. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">Jh6ovHxky2FjB7YV5369ea</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/mXVaSHdzrDwfqzquviqkin-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 27 Jun 2026 20:25:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Streaming]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Jakob Barnes ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/sdLQVVidVk65LYsn3p76nL.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/mXVaSHdzrDwfqzquviqkin-1280-80.jpg">
                                                            <media:credit><![CDATA[Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[England&#039;s Harry Kane applauds the fans after the draw against Ghana in World Cup 2026]]></media:description>                                                            <media:text><![CDATA[England&#039;s Harry Kane applauds the fans after the draw against Ghana in World Cup 2026]]></media:text>
                                <media:title type="plain"><![CDATA[England&#039;s Harry Kane applauds the fans after the draw against Ghana in World Cup 2026]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/mXVaSHdzrDwfqzquviqkin-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Harry Kane's England face Panama in the final 2026 FIFA World Cup Group L clash, at New Jersey's MetLife Stadium on June 27. Hungry for goals? Here's a simple way to <strong>watch Panama vs England </strong>for free<strong> </strong>– in U.S., Canada and beyond.</p><p>Kick-off is at 5 p.m. ET / 2 p.m. PT / 10 p.m. BST, with fans around the world tuning in to see whether England can get back to winning ways and top Group L.</p><div  class="fancy-box"><div class="fancy_box-title">Panama vs England: Free stream, TV channel</div><div class="fancy_box_body"><p class="fancy-box__body-text"><ul><li><strong>Free stream:</strong> <a data-analytics-id="inline-link" href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>ITVX</strong></a> <strong>(U.K.) </strong></li><li><strong>Watch from anywhere:</strong> <a data-analytics-id="inline-link" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> (Up to 63% Off)</li></ul></p></div></div><p>England know they will have to turn on the style against Panama if they want to secure top spot in Group L at the World Cup. After a limp draw against Ghana, Thomas Tuchel will likely shuffle his England starting XI.</p><p>Marcus Rashford and Bukayo Saka may come in out wide. Meanwhile, Nico O'Reilly should return at left-back. Kane needs goals to get back in Golden Boot contention</p><p>If you're searching for how to watch Panama vs England free online, we've got everything a 'soccer' fan needs, including kick-off times, TV channels, and where to find a live stream of every goal, header and Harry Kane penalty.</p><p>Read on as we show you <strong>how to watch Panama vs England </strong>from anywhere in the world for free with <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a>.</p><h2 id="watch-panama-vs-england-live-streams-for-free">Watch Panama vs England live streams for free</h2><p>In the U.K., Panama vs England will be broadcast for <a href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>free on ITVX</strong></a>. The build-up is on now ahead of kick-off at 10 p.m. BST.</p><p><strong>Get ITVX</strong> – no messy sign up, email and a UK postcode (e.g. HA9 0WS). TV licence holders only.</p><p><strong>Traveling abroad?</strong> Use <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> to watch ITVX as if you were back home in the U.K. .</p><h2 class="article-body__section" id="section-how-to-watch-panama-vs-england-live-streams-from-anywhere"><span>How to watch Panama vs England live streams from anywhere</span></h2><div class="product"><a data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>🏆 <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25=""><u><strong>Tom's Guide No.1 Streaming VPN – Try 60 days</strong></u></a> 🏆</p><p>We recently crowned Norton VPN our No.1 <a href="https://www.tomsguide.com/best-picks/streaming-vpn" target="_blank">Streaming VPN</a>. Blazingly fast. Secure. Works on phones, laptops and smart TVs. So you can stream World Cup coverage from anywhere, on any device.<br><br>✅ <strong>60-day money-back guarantee</strong><br>🔓 <strong>Unlocks global streams</strong><br>⚽ <strong>Quick! </strong><a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Up to 63% off Norton VPN plans</strong></a> </p><p>Catch every World Cup goal live with Norton VPN!<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25="">View Deal</a></p></div><p><strong>Quick guide: watch World Cup for free</strong></p><p>Using a VPN is incredibly simple.</p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> is our No.1 streaming VPN.</p><p><strong>2. Choose the location. </strong>For instance if you're in the U.S. and want to watch Panama vs England free, you'd select 'United Kingdom' from the list.</p><p><strong>3. Watch the World Cup. </strong>Head to <a href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>ITVX</strong></a> and watch the game live.</p><h2 id="what-devices-is-itvx-available-on-2">What devices is ITVX available on?</h2><ul><li><strong>Amazon Fire</strong> (Tablets, Cube, Stick, TVs)</li><li><strong>Android TV</strong> (please note: some models aren’t supported)</li><li><strong>Android</strong> (Mobile & Tablet) - Android 7.0 and above</li><li><strong>Apple TV</strong> (tvOS 14 or later)</li><li><strong>Google TV</strong> (Chromecast with Google TV and NVIDIA Shield)</li><li><strong>Freely</strong></li><li><strong>Freesat </strong>(please note: some models aren’t supported)</li><li><strong>Freeview Play</strong> (TVs and set-top boxes) (please note: some models aren’t supported)</li><li><strong>iOS (iPhone & iPad)</strong> - iOS 14 and above</li><li><strong>LG Smart TVs</strong> (2016-2024)</li><li><strong>NOW Smart Sticks and Boxes </strong>(minimum firmware v11.5.0)</li><li><strong>PlayStation (PS4 and PS5)</strong></li><li><strong>Roku</strong> (Stick & Roku-OS powered TVs, minimum firmware v11.5.0)</li><li><strong>Samsung Smart TVs</strong> (2017 and above - 2016 models only offer on demand TV)</li><li><strong>Sky Q, Sky Glass and Sky Stream puck</strong></li><li><strong>Virgin Media</strong> (360, Stream, TiVo)</li><li><strong>YouView</strong> (BT, Humax, Sony, TalkTalk)</li><li><strong>Xbox</strong> (One, Series X, Series S)</li></ul><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams"><strong>How to watch World Cup 2026 online</strong></a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/watch-peacock-online-from-anywhere-vpn"><strong>How to watch Peacock from anywhere with a VPN</strong></a><strong></strong></li><li><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k"><strong>How to watch the World Cup in 4K</strong></a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ There's a simple way to watch DR Congo vs Uzbekistan for *FREE* ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/streaming/theres-a-simple-way-to-watch-dr-congo-vs-uzbekistan-for-free</link>
                                                                            <description>
                            <![CDATA[ Here's how to watch DR Congo vs Uzbekistan as the Group K minnows both look to make a push for qualification to the knockout stages of the World Cup. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">UHHvWMBqmTcop8FHiitfoe</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/dmKCYQmoSdngLyZEzz9W4o-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 27 Jun 2026 19:30:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Streaming]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Jakob Barnes ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/sdLQVVidVk65LYsn3p76nL.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/dmKCYQmoSdngLyZEzz9W4o-1280-80.jpg">
                                                            <media:credit><![CDATA[Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[DR Congo&#039;s Yoane Wissa in action during World Cup 2026]]></media:description>                                                            <media:text><![CDATA[DR Congo&#039;s Yoane Wissa in action during World Cup 2026]]></media:text>
                                <media:title type="plain"><![CDATA[DR Congo&#039;s Yoane Wissa in action during World Cup 2026]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/dmKCYQmoSdngLyZEzz9W4o-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Yoane Wissa's DR Congo face Uzbekistan in a fascinating 2026 FIFA World Cup Group K clash at Atlanta Stadium on <strong>June 27</strong>. Hungry for goals? Here's a simple way to watch DR Congo vs Uzbekistan<strong> </strong>for free<strong> </strong>– in the U.S., Canada and beyond.</p><p>Kick-off is at <strong>7:30 p.m. ET / 4:30 p.m. PT / 12:30 a.m. BST</strong>, with fans around the world tuning in to see whether the surprisingly strong African outfit can pick up the result they need to make it to the round of 32.</p><div  class="fancy-box"><div class="fancy_box-title">DR Congo vs Uzbekistan: Free stream, TV channel</div><div class="fancy_box_body"><p class="fancy-box__body-text"><ul><li><strong>Free stream:</strong> <a data-analytics-id="inline-link" href="https://www.bbc.co.uk/iplayer" target="_blank" rel="nofollow"><strong>BBC</strong></a> <strong>(U.K.) </strong></li><li><strong>Watch from anywhere:</strong> <a data-analytics-id="inline-link" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> (Up to 63% Off)</li></ul></p></div></div><p>No one expected much from DR Congo or Uzbekistan in this tournament, but while the latter have struggled, the African side have managed to hold their own so far. They could make it out of Group K as one of the best-placed third-place teams, but only if they get a win here.</p><p>Yoane Wissa and Cédric Bakambu will be key to DR Congo's hopes and if either, or both, of them are firing on all cylinders, we should see Sébastien Desabre's side grab a much-needed win. </p><p>After a hammering at the hands of Portugal, we may see Fabio Cannavaro make some changes to his Uzbekistan line-up, with goalkeeper Utkir Yusupov potentially coming in to replace Abduvohid Nematov after a poor showing last time out.</p><p>If you're searching for how to watch DR Congo vs Uzbekistan free online, we've got everything a soccer fan needs, including kick-off times, TV channels, and where to find a live stream of every goal, header and darting run from Yoane Wissa.</p><p>Read on as we show you <strong>how to watch DR Congo vs Uzbekistan </strong>from anywhere in the world for free with <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a>.</p><h2 id="watch-dr-congo-vs-uzbekistan-live-streams-for-free">Watch DR Congo vs Uzbekistan live streams for free</h2><p>In the U.K., DR Congo vs Uzbekistan will be broadcast for <a href="https://www.bbc.co.uk/iplayer" target="_blank" rel="nofollow"><strong>free on BBC</strong></a>. The build-up is <strong>live from 12:20 a.m. ahead of kick-off at 12:30 a.m. BST. </strong></p><p><strong>Get BBC</strong> – no messy sign up, email and a UK postcode (e.g. HA9 0WS). TV Licence holders only.</p><p><strong>Traveling abroad?</strong> Use <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> to watch <strong>BBC</strong> as if you were back home in the U.K..</p><h2 class="article-body__section" id="section-how-to-watch-dr-congo-vs-uzbekistan-live-streams-from-anywhere"><span>How to watch DR Congo vs Uzbekistan live streams from anywhere</span></h2><div class="product"><a data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>🏆 <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25=""><u><strong>Tom's Guide No.1 Streaming VPN – Try 60 days</strong></u></a> 🏆</p><p>We recently crowned Norton VPN our No.1 <a href="https://www.tomsguide.com/best-picks/streaming-vpn">Streaming VPN</a>. Blazingly fast. Secure. Works on phones, laptops and smart TVs. So you can stream World Cup coverage from anywhere, on any device.<br><br>✅ <strong>60-day money-back guarantee</strong><br>🔓 <strong>Unlocks global streams</strong><br>⚽ <strong>Quick! </strong><a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Up to 63% off Norton VPN plans</strong></a> </p><p>Catch every World Cup goal live with Norton VPN!<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25="">View Deal</a></p></div><p><strong>Quick guide: watch World Cup for free</strong></p><p>Using a VPN is incredibly simple.</p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> is our No.1 streaming VPN.</p><p><strong>2. Choose the location. </strong>For instance if you're in the U.S. and want to watch DR Congo vs Uzbekistan free, you'd select 'United Kingdom' from the list.</p><p><strong>3. Watch the World Cup. </strong>Head to<strong> </strong><a href="https://www.bbc.co.uk/iplayer" target="_blank" rel="nofollow"><strong>BBC</strong></a> and watch the game live.</p><h2 id="what-devices-is-bbc-available-on-2">What devices is BBC available on?</h2><ul><li><strong>Amazon Fire</strong> (Tablets, Cube, Stick, TVs)</li><li><strong>Android TV</strong> (please note: some models aren’t supported)</li><li><strong>Android</strong> (Mobile & Tablet) - Android 7.0 and above</li><li><strong>Apple TV</strong> (tvOS 14 or later)</li><li><strong>Google TV</strong> (Chromecast with Google TV and NVIDIA Shield)</li><li><strong>Freely</strong></li><li><strong>Freesat </strong>(please note: some models aren’t supported)</li><li><strong>Freeview Play</strong> (TVs and set-top boxes) (please note: some models aren’t supported)</li><li><strong>iOS (iPhone & iPad)</strong> - iOS 14 and above</li><li><strong>LG Smart TVs</strong> (2016-2024)</li><li><strong>NOW Smart Sticks and Boxes </strong>(minimum firmware v11.5.0)</li><li><strong>PlayStation (PS4 and PS5)</strong></li><li><strong>Roku</strong> (Stick & Roku-OS powered TVs, minimum firmware v11.5.0)</li><li><strong>Samsung Smart TVs</strong> (2017 and above - 2016 models only offer on demand TV)</li><li><strong>Sky Q, Sky Glass and Sky Stream puck</strong></li><li><strong>Virgin Media</strong> (360, Stream, TiVo)</li><li><strong>YouView</strong> (BT, Humax, Sony, TalkTalk)</li><li><strong>Xbox</strong> (One, Series X, Series S)</li></ul><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams"><strong>How to watch World Cup 2026 online</strong></a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/watch-peacock-online-from-anywhere-vpn"><strong>How to watch Peacock from anywhere with a VPN</strong></a><strong></strong></li><li><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k"><strong>How to watch the World Cup in 4K</strong></a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ How to watch WWE Night of Champions 2026: live stream wrestling online; start time, card, storylines and predictions ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/sports/how-to-watch-wwe-night-of-champions-2026-live-stream</link>
                                                                            <description>
                            <![CDATA[ We'll show you how to watch the WWE Night of Champions 2026 live stream, where Cody Rhodes defends the WWE Championship against Gunther and Sami Zayn. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">7bbqE8UEuWk4cLzwJvmoDm</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/md4a49WPsao2YpsdjT5fKa-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 27 Jun 2026 14:15:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Sports]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Andrew Pollard ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/THAJE5q8hRDmYDbVZZ3Wz5.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/md4a49WPsao2YpsdjT5fKa-1280-80.jpg">
                                                            <media:credit><![CDATA[WWE]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Defending WWE Champion Cody Rhodes alongside Gunther and Sami Zayn on the WWE Night of Champions 2026 poster.]]></media:description>                                                            <media:text><![CDATA[Defending WWE Champion Cody Rhodes alongside Gunther and Sami Zayn on the WWE Night of Champions 2026 poster.]]></media:text>
                                <media:title type="plain"><![CDATA[Defending WWE Champion Cody Rhodes alongside Gunther and Sami Zayn on the WWE Night of Champions 2026 poster.]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/md4a49WPsao2YpsdjT5fKa-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>With an exciting five-match card put together, <strong>WWE Night of Champions 2026</strong> has four title matches and one huge <a href="https://www.tomsguide.com/entertainment/sports/wrestlemania-42-live-streams">WrestleMania 42</a> rematch. Here's how to watch WWE Night of Champions 2026 online and on TV, and <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>from anywhere with a VPN</strong></a>.</p><div  class="fancy-box"><div class="fancy_box-title">WWE Night of Champions 2026 start time and date</div><div class="fancy_box_body"><p class="fancy-box__body-text"><strong>• Date:</strong> Saturday, 27 June<br><strong>• Start time: </strong>1 p.m. ET / 10 a.m. PT / 6 p.m. BST / 3 a.m. AEST (Sunday)<br><strong>• U.S. </strong>—<strong> </strong>Watch on <strong>ESPN</strong> via <a data-analytics-id="inline-link" href="https://www.fubo.tv/" target="_blank" rel="nofollow"><strong>Fubo (5-days free)</strong></a><br><strong>• RoW </strong>— Watch on <a data-analytics-id="inline-link" href="https://www.netflix.com/" target="_blank" rel="nofollow"><strong>Netflix</strong></a> <br><strong>• Watch anywhere</strong> — <a data-analytics-id="inline-link" href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>try NordVPN 100% risk-free</strong></a></p></div></div><p>From Riyadh, Saudi Arabia's Kingdom Arena, WWE Night of Champions 2026 will see the King and Queen of the Ring crowned, a steel cage match brings together old friends, and two titles will be defended.</p><p> Cody Rhodes aims to defend his WWE Championship against Gunther and Sami Zayn in triple-threat action, while Brock Lesnar looms large over the King of The Ring bout.</p><p>So, with that said, here's our full guide to where to watch WWE Night of Champions 2026 live streams online and potentially for free in the U.S.</p><h2 id="how-to-watch-wwe-for-free">How to Watch WWE for free</h2><p>Although most of the world requires a Netflix subscription, fans in the U.S. can watch Night of Champions with various free trials – our pick being the <a href="https://www.fubo.tv/" target="_blank" rel="nofollow"><strong>Fubo</strong></a><strong> 5-day free trial</strong> (Fubo carries ESPN).</p><p>Other options include the YouTube TV and DirecTV free trials. </p><p><strong>Outside the States? </strong>If you're traveling outside America, you can use <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow">Nord VPN</a> to access Fubo from anywhere. More on that below. </p><h2 class="article-body__section" id="section-how-to-watch-wwe-night-of-champions-2026-live-streams-from-anywhere"><span>How to watch WWE Night of Champions 2026 live streams from anywhere</span></h2><p>Watching WWE Night of Champions 2026 live streams can get a bit confusing if you're abroad. You might find yourself geo-blocked from your usual streaming services. <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN</strong></a> fixes that, allow you to watch your streams from anywhere – it's the <a href="https://www.tomsguide.com/best-picks/best-vpn">best VPN</a> we've tested.</p><div class="product"><a data-dimension112="07ca11af-c444-4eba-b3f1-13a414b5427f" data-action="Deal Block" data-label="Nord Mega Deal: SAVE 75% + 3 MONTHS FREE" data-dimension48="Nord Mega Deal: SAVE 75% + 3 MONTHS FREE" href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:800px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="vALBz9LuPk5AhB3g6DbZvf" name="Nord-VPN_deal" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/vALBz9LuPk5AhB3g6DbZvf.jpg" mos="" align="middle" fullscreen="" width="800" height="800" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>🚀 <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow" data-dimension112="07ca11af-c444-4eba-b3f1-13a414b5427f" data-action="Deal Block" data-label="Nord Mega Deal: SAVE 75% + 3 MONTHS FREE" data-dimension48="Nord Mega Deal: SAVE 75% + 3 MONTHS FREE" data-dimension25=""><strong>Nord Mega Deal: SAVE 75% + 3 MONTHS FREE</strong></a><strong></strong><br><br>✅<em> </em><em><strong>Save up to 74% Today</strong></em><br><strong>✅ </strong><em><strong>Unblock wrestling streams abroad</strong></em><br>✅<em> </em><em><strong>Get 3 Extra Months Free</strong></em><br><br><strong>Get NordVPN today and stream WWE Night of Champions 2026 online.</strong><a class="view-deal button" href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow" data-dimension112="07ca11af-c444-4eba-b3f1-13a414b5427f" data-action="Deal Block" data-label="Nord Mega Deal: SAVE 75% + 3 MONTHS FREE" data-dimension48="Nord Mega Deal: SAVE 75% + 3 MONTHS FREE" data-dimension25="">View Deal</a></p></div><h2 class="article-body__section" id="section-how-to-watch-wwe-night-of-champions-2026-live-stream-in-the-u-s"><span>How to watch WWE Night of Champions 2026 live stream in the U.S.</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="UHZYAaZCSyV7FkHxYGxtJ6" name="TG_US_Flag_1920_400_shutterstock.jpg" alt="A slice of the US flag" src="https://cdn.mos.cms.futurecdn.net/UHZYAaZCSyV7FkHxYGxtJ6.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>WWE Premium Live Events like WWE Night of Champions 2026 are now exclusively streamed on <strong>ESPN </strong>in the United States.</p><p>No cable?  <a href="https://www.fubotv.com" target="_blank" rel="nofollow"><strong>Fubo (5-days free), </strong></a><a href="https://click.linksynergy.com/fs-bin/click?id=kXQk6*ivFEQ&offerid=966271.482&type=3&subid=0&u1=hawk-custom-tracking" target="_blank" rel="nofollow"><strong>Hulu+ Live TV</strong></a><strong>, </strong><a href="https://www.tkqlhce.com/click-6361382-15242095?sid=hawk-custom-tracking" target="_blank" rel="nofollow"><strong>DirecTV</strong></a> customers can get the ESPN Unlimited Plan included as part of their standard package.</p><p>Subscribed to ESPN but traveling over the weekend? You can use a VPN such as <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN</strong></a> to access your domestic streaming services from anywhere.</p><h2 class="article-body__section" id="section-how-to-watch-night-of-champions-in-u-k-canada-and-australia"><span>How to watch Night of Champions in U.K., Canada and Australia</span></h2><p>Wrestling fans in the United Kingdom, Canada, Australia, and various other countries outside of the U.S. can watch WWE Night of Champions 2026 live on <a href="https://www.netflix.com/" target="_blank" rel="nofollow"><strong>Netflix</strong></a>, the home of WWE around the world.</p><p>The cheapest Netflix prices in select countries are as follows:</p><ul><li><strong>Australia – </strong>AU$9.99/month</li><li><strong>Canada – </strong>CA$7.99/month</li><li><strong>New Zealand – </strong>NZD$17.99/month</li><li><strong>U.K. – </strong>£5.99/month</li></ul><p>Traveling in the U.S. and don't want to pay for ESPN? You can use <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN</strong></a> to access your Netflix subscription from anywhere in the world.</p><h3 class="article-body__section" id="section-wwe-wwe-night-of-champions-2026-predictions-and-storylines"><span>WWE WWE Night of Champions 2026 predictions and storylines</span></h3><ul><li>Queen of the Ring Final: Liv Morgan vs. IYO SKY</li><li>King of the Ring Final: Oba Femi vs. Jey Uso</li><li>Steel Cage Match: Seth Rollins vs. Bron Breakker</li><li>WWE United States Title Match: Trick Williams (c) vs. Ricky Saints</li><li>WWE Championship Match: Cody Rhodes (c) vs. Gunther vs. Sami Zayn</li></ul><p>Hot on the heels of WWE Clash in Italy last month, WWE returns to Riyadh, Saudi Arabia with Night of Champions 2026.</p><p>In the expected main event, it's Cody Rhodes defending his WWE Championship against Gunther and Sami Zayn in triple-threat action. After Sami had screwed up the past two matches between the American Dream and the Ring General, he's been rewarded with getting the chance to win a first World Title of his illustrious career. And given the reaction Zayn always gets in Saudi Arabia, it could prove to be a fantastic moment should Sami manage to the win in Riyadh.</p><p>Two other main attractions of WWE Night of Champions 2026 are the finals of the King and Queen of the Ring tournaments. With the winners of those tourneys earning themselves a World Title shot at SummerSlam later this year, it's Oba Femi vs. Jey Uso, and Liv Morgan vs. IYO SKY. Of course, there's also the presence of Brock Lesnar looming large over that KOTR bout, given recent shots Oba has taken at the Beast Incarnate. Interestingly, these two matches have been announced to open the show and will be airing on ESPN.</p><p>Rounding out the Night of Champions card, WWE United States Champion Trick Williams puts his gold on the line against Ricky Saints, which will mark a first-ever main roster PLE appearance from Absolute. Then there's the small matter of former stablemates Seth Rollins and Bron Breakker colliding within the confines of a steel cage, as this lengthy rivalry looks to finally come to a definitive end.</p><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/best-picks/streaming-vpn">The best streaming VPN</a></li><li><a href="https://www.tomsguide.com/entertainment/sports/watch-nrl-2026">How to watch NRL 2026</a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/theres-a-simple-way-to-watch-world-cup-2026-for-free">There's a simple way to watch the World Cup for free</a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ 3 easy steps to protect visiting hummingbirds from the summer heat ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/protect-visiting-hummingbirds-from-summer-heat-in-just-3-easy-steps</link>
                                                                            <description>
                            <![CDATA[ Summer heat threatens hummingbirds, here's how to create a cooling refuge they'll rely on. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">QZDxxdo9zfM8PBbodKxopC</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/w9MRyn9MDqgssnk7VzFTPL-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 27 Jun 2026 08:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Home]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/w9MRyn9MDqgssnk7VzFTPL-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                        <media:description><![CDATA[&lt;p&gt;Hummingbird and red flower&lt;/p&gt;]]></media:description>                                                            <media:text><![CDATA[Hummingbird and red flower]]></media:text>
                                <media:title type="plain"><![CDATA[Hummingbird and red flower]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/w9MRyn9MDqgssnk7VzFTPL-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Summer heat poses a real threat to backyard hummingbirds. Because of their fast metabolisms, these tiny birds lose moisture rapidly when temperatures spike, and high heat can quickly cause your hummingbird nectar to ferment and spoil. </p><p>Unlike other species, hummingbirds cannot rely on shade alone to survive extreme weather, making cooling strategies absolutely essential. </p><p>If you want to know how to protect hummingbirds from summer heat, the solution is easier than you think. By making just three simple adjustments to your feeders and water features, you can easily transform your outdoor space into a safe, refreshing refuge. </p><p>These quick, low-effort changes will keep your local hummingbirds safe, hydrated, and fed all season long.</p><section class="howto-block">                    <h3>1. Provide cooling mist so they can bathe </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/5ki2Q3ukzDcAkLPfmwhTFo.jpg"                                        alt="Hummingbird and lilac flower"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/5ki2Q3ukzDcAkLPfmwhTFo.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Hummingbirds don't use traditional bird baths. They're too small and prefer mist to standing water. In summer heat especially, moving water with a light spray is crucial for keeping them cool and clean. </p><p><strong>Install a solar fountain in your existing bird bath or hang a solar misting station in a shaded area near your feeders</strong>. The movement and spray attract hummingbirds from a distance while providing the cooling they desperately need during hot afternoons. </p><p><strong>Clean your misting system every 2-3 days in summer </strong>to prevent algae growth and ensure the water stays fresh. Keep the water level topped up so the system runs continuously. Solar-powered options work best because they operate automatically, providing consistent cooling without requiring you to turn anything on or off.</p></p>                </section><div class="product"><a data-dimension112="3efc5d91-5d74-47bf-a021-9c89c7f37713" data-action="Deal Block" data-label="This two-in-one product will provide a place for your visiting hummingbirds to drink and cool down in the heat. The raised bird bath, with a 20-inch bowl, will keep them safe from prey, while the solar fountain will provide them with a fine mist of spray. For easy cleaning, the bowl can be unscrewed from the base." data-dimension48="This two-in-one product will provide a place for your visiting hummingbirds to drink and cool down in the heat. The raised bird bath, with a 20-inch bowl, will keep them safe from prey, while the solar fountain will provide them with a fine mist of spray. For easy cleaning, the bowl can be unscrewed from the base." data-dimension25="$47" href="https://www.amazon.com/VIVOHOME-Polyresin-Antique-Outdoor-Fountain/dp/B0876H67LP/ref=sr_1_20_sspa?" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:590px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="b3tcDjx5yyS24GZTEPD7rW" name="Vivohome Bird Bath with Solar Fountain" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/b3tcDjx5yyS24GZTEPD7rW.jpg" mos="" align="middle" fullscreen="" width="590" height="590" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>This two-in-one product will provide a place for your visiting hummingbirds to drink and cool down in the heat. The raised bird bath, with a 20-inch bowl, will keep them safe from prey, while the solar fountain will provide them with a fine mist of spray. For easy cleaning, the bowl can be unscrewed from the base.<a class="view-deal button" href="https://www.amazon.com/VIVOHOME-Polyresin-Antique-Outdoor-Fountain/dp/B0876H67LP/ref=sr_1_20_sspa?" target="_blank" rel="nofollow" data-dimension112="3efc5d91-5d74-47bf-a021-9c89c7f37713" data-action="Deal Block" data-label="This two-in-one product will provide a place for your visiting hummingbirds to drink and cool down in the heat. The raised bird bath, with a 20-inch bowl, will keep them safe from prey, while the solar fountain will provide them with a fine mist of spray. For easy cleaning, the bowl can be unscrewed from the base." data-dimension48="This two-in-one product will provide a place for your visiting hummingbirds to drink and cool down in the heat. The raised bird bath, with a 20-inch bowl, will keep them safe from prey, while the solar fountain will provide them with a fine mist of spray. For easy cleaning, the bowl can be unscrewed from the base." data-dimension25="$47">View Deal</a></p></div><section class="howto-block">                    <h3>2. Refresh feeders daily so nectar stays potent</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/jyfqJzPybUx5W8CPbFEXsU.jpg"                                        alt="Hummingbird and feeder"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/jyfqJzPybUx5W8CPbFEXsU.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Hummingbirds get virtually all their hydration from nectar, making fresh feeders absolutely critical during summer. In heat above 85°F, nectar ferments and spoils in just 24-48 hours. Spoiled nectar can harm hummingbirds or fail to provide the energy they need to regulate body temperature in extreme conditions.</p><p><strong>Empty, clean, and refill your feeders every single day during peak summer heat</strong>. Use a 4:1 water-to-sugar ratio (boil water first to remove impurities, dissolve sugar completely, then cool before filling). <strong>Never use honey, red dye, or artificial sweeteners </strong>as these can harm hummingbirds.</p><p><strong>Position your feeders in partial shade so nectar doesn't overheat sitting in direct sun</strong>. If you have multiple feeders, space them 3-4 feet apart to prevent territorial birds from monopolizing all food sources. This allows more hummingbirds to feed simultaneously, increasing their chances of finding energy-rich nectar when they need it most.</p></p>                </section><div class="product"><a data-dimension112="063c4a57-6551-4292-ba7c-a305140ba907" data-action="Deal Block" data-label="This bright red hummingbird feeder features six flower feeding ports, a hummingbird perch and an ingenious ant moat that hangs above to keep insects out of the feeder. Plus, to stop any sticky leaks, it has a built-in double gasket." data-dimension48="This bright red hummingbird feeder features six flower feeding ports, a hummingbird perch and an ingenious ant moat that hangs above to keep insects out of the feeder. Plus, to stop any sticky leaks, it has a built-in double gasket." data-dimension25="$14" href="https://www.amazon.com/gp/aw/d/B08W43F9TC/?" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1458px;"><p class="vanilla-image-block" style="padding-top:102.88%;"><img id="ogW9bnqBs2aZzviXhZJ7bT" name="Hummingbird feeder" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/ogW9bnqBs2aZzviXhZJ7bT.jpg" mos="" align="middle" fullscreen="" width="1458" height="1500" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>This bright red hummingbird feeder features six flower feeding ports, a hummingbird perch and an ingenious ant moat that hangs above to keep insects out of the feeder. Plus, to stop any sticky leaks, it has a built-in double gasket.<a class="view-deal button" href="https://www.amazon.com/gp/aw/d/B08W43F9TC/?" target="_blank" rel="nofollow" data-dimension112="063c4a57-6551-4292-ba7c-a305140ba907" data-action="Deal Block" data-label="This bright red hummingbird feeder features six flower feeding ports, a hummingbird perch and an ingenious ant moat that hangs above to keep insects out of the feeder. Plus, to stop any sticky leaks, it has a built-in double gasket." data-dimension48="This bright red hummingbird feeder features six flower feeding ports, a hummingbird perch and an ingenious ant moat that hangs above to keep insects out of the feeder. Plus, to stop any sticky leaks, it has a built-in double gasket." data-dimension25="$14">View Deal</a></p></div><section class="howto-block">                    <h3>3. Create shaded resting spots</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/YmEVmVK6myh7xSVdGjjjvB.jpg"                                        alt="Hummingbird drinking water"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/YmEVmVK6myh7xSVdGjjjvB.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Hummingbirds spend up to 80% of their day resting, not flying. During summer heat, they retreat to shade to conserve energy and lower their metabolic rate. Without adequate shaded perching spots, hummingbirds exhaust themselves trying to stay cool while flying.</p><p>Plant shrubs and small trees that provide dense foliage and natural perches.<strong> Position these in areas that receive morning sun but afternoon shade</strong> — the ideal microclimate during peak heat. Viburnums, lilacs, and flowering shrubs work perfectly because they provide both cooling shade and nectar.</p><p><strong>Install hummingbird perches or thin branches 3-10 feet from feeders, positioned where birds have clear views of all feeding areas</strong>. These perches let hummingbirds rest between feeding sessions while maintaining watch for predators and territorial competitors. Vary perching heights to accommodate different species' preferences.</p><p>Consider adding pergolas or shade structures near your feeders. Even temporary solutions like strategically placed shade cloth can provide relief during particularly brutal heat waves.</p></p>                </section><div class="product"><a data-dimension112="97bbc630-1c2a-45df-82b7-0d34143e2638" data-action="Deal Block" data-label="This pack of three swings is designed for hummingbirds to perch on. The metal swings have a wooden perch and come in three attractive designs, each with a metal chain and hook for attaching to a branch. Place them near your patio or hummingbird feeder and watch the birds have fun." data-dimension48="This pack of three swings is designed for hummingbirds to perch on. The metal swings have a wooden perch and come in three attractive designs, each with a metal chain and hook for attaching to a branch. Place them near your patio or hummingbird feeder and watch the birds have fun." href="https://www.amazon.com/Hummingbird-Swing-Perch-Wooden-Outdoor/dp/B09F5YG5CW/ref=sr_1_9?" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1526px;"><p class="vanilla-image-block" style="padding-top:100.07%;"><img id="nxBgkkpPmfhgts3dr4SXB6" name="Mixxidea hummingbird perches" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/nxBgkkpPmfhgts3dr4SXB6.jpg" mos="" align="middle" fullscreen="" width="1526" height="1527" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>This pack of three swings is designed for hummingbirds to perch on. The metal swings have a wooden perch and come in three attractive designs, each with a metal chain and hook for attaching to a branch. Place them near your patio or hummingbird feeder and watch the birds have fun.<a class="view-deal button" href="https://www.amazon.com/Hummingbird-Swing-Perch-Wooden-Outdoor/dp/B09F5YG5CW/ref=sr_1_9?" target="_blank" rel="nofollow" data-dimension112="97bbc630-1c2a-45df-82b7-0d34143e2638" data-action="Deal Block" data-label="This pack of three swings is designed for hummingbirds to perch on. The metal swings have a wooden perch and come in three attractive designs, each with a metal chain and hook for attaching to a branch. Place them near your patio or hummingbird feeder and watch the birds have fun." data-dimension48="This pack of three swings is designed for hummingbirds to perch on. The metal swings have a wooden perch and come in three attractive designs, each with a metal chain and hook for attaching to a branch. Place them near your patio or hummingbird feeder and watch the birds have fun." data-dimension25="">View Deal</a></p></div><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-XpmN8e"></div>                            </div>                            <script src="https://kwizly.com/embed/XpmN8e.js" async></script><figure class="van-image-figure pull-right inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:676px;"><p class="vanilla-image-block" style="padding-top:31.51%;"><img id="8RpLeaq6UZxfGpTcqGj7HX" name="Google" alt="Google" src="https://cdn.mos.cms.futurecdn.net/8RpLeaq6UZxfGpTcqGj7HX.jpg" mos="" align="right" fullscreen="" width="676" height="213" attribution="" endorsement="" class="pull-rightinline"></p></div></div></figure><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/home/want-more-hummingbirds-7-tips-for-attracting-them-to-your-yard">Want more hummingbirds? 7 tips for attracting them to your yard</a></li><li><a href="https://www.tomsguide.com/home/outdoors/how-to-feed-hummingbirds-the-right-way-according-to-experts">This simple nectar recipe will attract hummingbirds to your yard — an expert reveals all</a></li><li><a href="https://www.tomsguide.com/home/want-more-songbirds-visiting-7-changes-that-bring-them-to-your-yard">Want more songbirds visiting? 7 changes that bring them to your yard</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ There's a simple way to watch New Zealand vs Belgium for *FREE* ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/streaming/theres-a-simple-way-to-watch-new-zealand-vs-belgium-for-free</link>
                                                                            <description>
                            <![CDATA[ Here's how to watch New Zealand vs Belgium as former Man City star Kevin De Bruyne aims to send his side through to the knockout stages. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">Q8Y8fhHodDgaJyQZGr3WWn</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/mddLphmy2mipjqFBXgdMRk-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 27 Jun 2026 02:25:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Streaming]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Jakob Barnes ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/sdLQVVidVk65LYsn3p76nL.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/mddLphmy2mipjqFBXgdMRk-1280-80.jpg">
                                                            <media:credit><![CDATA[Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Belgium star Kevin De Bruyne during World Cup 2026 action]]></media:description>                                                            <media:text><![CDATA[Belgium star Kevin De Bruyne during World Cup 2026 action]]></media:text>
                                <media:title type="plain"><![CDATA[Belgium star Kevin De Bruyne during World Cup 2026 action]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/mddLphmy2mipjqFBXgdMRk-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Kevin De Bruyne's Belgium face New Zealand in a pivotal 2026 FIFA World Cup Group H clash at BC Place Stadium in Vancouver on June 26. Hungry for goals? Here's a simple way to <strong>watch New Zealand vs Belgium for free </strong>– in U.S., Canada. and beyond.</p><p>Kick-off is at 11 p.m. ET / 8 p.m. PT / 4 a.m. BST, with fans around the world tuning in to see whether Belgium can get the win they need to qualify for the knockout rounds.</p><div  class="fancy-box"><div class="fancy_box-title">New Zealand vs Belgium: Free stream, TV channel</div><div class="fancy_box_body"><p class="fancy-box__body-text"><ul><li><strong>Free stream:</strong> <a data-analytics-id="inline-link" href="https://www.bbc.co.uk/iplayer" target="_blank" rel="nofollow"><strong>BBC iPlayer</strong></a> <strong>(U.K.) </strong></li><li><strong>Watch from anywhere:</strong> <a data-analytics-id="inline-link" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> (Up to 63% Off)</li></ul></p></div></div><p>De Bruyne and Belgium need a win to kickstart their World Cup campaign. Jeremy Doku is back after attending his son's birth back home, while Romelu Lukaku and Leandro Trossard must produce the goods.</p><p>New Zealand must win and need help from elsewhere to qualify either second or third. Chris Wood and Elijah Just should continue their fine attacking partnership. </p><p>If you're searching for how to watch New Zealand vs Belgium free online, we've got everything a 'soccer' fan needs, including kick-off times, TV channels, and where to find a live stream of every goal, header and De Bruyne wonder pass.</p><p>Read on as we show you <strong>how to watch New Zealand vs Belgium </strong>from anywhere in the world for free with <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a>.</p><h2 id="watch-new-zealand-vs-belgium-live-streams-for-free">Watch New Zealand vs Belgium live streams for free</h2><p>In the U.K., New Zealand vs Belgium will be broadcast for <a href="https://www.bbc.co.uk/iplayer" target="_blank" rel="nofollow"><strong>free on BBC iPlayer</strong></a>. The build-up is live from<strong> </strong>3:50 a.m. ahead of kick-off at 4 a.m. BST.</p><p><strong>Get BBC iPlayer</strong> – no messy sign up, you just need an email and a UK postcode (e.g. HA9 0WS). TV licence holders only.</p><p><strong>Traveling abroad?</strong> Use <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> to watch BBC iPlayer as if you were back home in the U.K.</p><h2 class="article-body__section" id="section-how-to-watch-new-zealand-vs-belgium-live-streams-from-anywhere"><span>How to watch New Zealand vs Belgium live streams from anywhere</span></h2><div class="product"><a data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>🏆 <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25=""><u><strong>Tom's Guide No.1 Streaming VPN – Try 60 days</strong></u></a> 🏆</p><p>We recently crowned Norton VPN our No.1 <a href="https://www.tomsguide.com/best-picks/streaming-vpn" target="_blank">Streaming VPN</a>. Blazingly fast. Secure. Works on phones, laptops and smart TVs. So you can stream World Cup coverage from anywhere, on any device.<br><br>✅ <strong>60-day money-back guarantee</strong><br>🔓 <strong>Unlocks global streams</strong><br>⚽ <strong>Quick! </strong><a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Up to 63% off Norton VPN plans</strong></a> </p><p>Catch every World Cup goal live with Norton VPN!<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="970a621e-0965-4800-9b4c-fc258198d110" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25="">View Deal</a></p></div><p><strong>Quick guide: watch World Cup for free</strong></p><p>Using a VPN is incredibly simple.</p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> is our No.1 streaming VPN.</p><p><strong>2. Choose the location. </strong>For instance if you're in the U.S. and want to watch <strong>New Zealand vs Belgium</strong> free, you'd select 'United Kingdom' from the list.</p><p><strong>3. Watch the World Cup. </strong>Head to <a href="https://www.bbc.co.uk/iplayer" target="_blank" rel="nofollow">BBC iPlayer</a> and watch the game live.</p><h2 id="what-devices-is-bbc-iplayer-available-on">What devices is BBC iPlayer available on?</h2><ul><li><strong>Amazon Fire TV Stick</strong> (including Fire TV Cube)</li><li><strong>Android devices</strong> (phones, tablets)</li><li><strong>Apple iOS</strong> (iPhone, iPad)</li><li><strong>Chromecast</strong> (casting from Android/iOS devices)</li><li><strong>Chromecast with Google TV</strong> (supported/certified devices)</li><li><strong> EE TV</strong></li><li><strong> Freely, Freeview Play, Freesat, YouView </strong></li><li><strong> Google TV devices </strong>(with BBC certification)</li><li><strong>Hisense Smart TVs </strong></li><li><strong>LG Smart TVs</strong> (webOS)</li><li><strong>Linux PCs</strong> (via supported browsers)</li><li><strong>Macs</strong> (via Safari or other supported browsers)</li><li><strong>Panasonic Smart TVs</strong></li><li><strong>Philips Smart TVs</strong> (Google TV models)</li><li><strong>PlayStation 4, PlayStation 5 </strong></li><li><strong> Roku streaming players and Roku TVs</strong></li><li><strong>Samsung Smart TVs</strong> (supported models)</li><li><strong>Sky boxes</strong> (Glass, Stream, Q)</li><li><strong>Sony Android TV</strong> (Google TV models)</li><li><strong>TCL Android TV</strong> (Google TV models)</li><li><strong>Toshiba Smart TVs</strong> (supported models)</li><li><strong>Virgin Media</strong> (Stream, TV 360)</li><li><strong>Windows PCs </strong>(via supported web browsers)</li><li><strong> Xbox One, Xbox Series S and X</strong></li></ul><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams"><strong>How to watch World Cup 2026 online</strong></a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/watch-peacock-online-from-anywhere-vpn"><strong>How to watch Peacock from anywhere with a VPN</strong></a><strong></strong></li><li><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k"><strong>How to watch the World Cup in 4K</strong></a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ I finally got rid of the gnats inside my house, but it took buying these 3 specific things to make the difference ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/i-finally-got-rid-of-the-gnats-inside-my-house-but-it-took-buying-these-3-specific-things-to-make-the-difference</link>
                                                                            <description>
                            <![CDATA[ After months of failed DIY methods, these three gnat-elimination products actually work, and they're discounted at Amazon right for Prime Day. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">fGwqgtL5w9nCpUxoVAnKc6</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/9zWLenunqrV9CxfU9CgVqD-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Fri, 26 Jun 2026 10:43:04 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Home]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/9zWLenunqrV9CxfU9CgVqD-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Gnats on sticky trap]]></media:description>                                                            <media:text><![CDATA[Gnats on sticky trap]]></media:text>
                                <media:title type="plain"><![CDATA[Gnats on sticky trap]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/9zWLenunqrV9CxfU9CgVqD-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>I spent <em>three months</em> trying to get rid of gnats in my home using every hack the internet offered. Vinegar traps. Drain cleaning. Fruit bowl covers. They would temporarily work, but the gnats kept coming back. They were multiplying faster than I could catch them. </p><p>Then I bought three products that actually worked. Within a week, the gnat infestation had seriously subsided. Within two weeks, I hadn't seen a single one. I'm covering everything I used to eliminate gnats from my home, and luckily, all three products are on sale right now for <a href="https://www.tomsguide.com/live/news/prime-day-summer-sales-editors-top-deals-2026">Prime Day.</a> You'll want to be quick, though, as it's the last day of the sale.</p><section class="howto-block">                    <h3>1. Sticky traps </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/bbigujn7RDDnHqPTTVS5PT.jpg"                                        alt="Fruit fly sticky trap"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/bbigujn7RDDnHqPTTVS5PT.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>I started with sticky traps because they're the fastest way to see results. These yellow adhesive cards trap gnats on contact. You place them near problem areas: plants, kitchen sink, bathroom, anywhere you see them hovering. </p><p>Gnats breed in moist soil, so putting sticky traps right where they live caught far more than traps floating in the air. I stuck cards into every potted plant around my home. Within 24 hours, the cards were covered with trapped gnats. This gave me visual proof that the infestation was real and that my solution was working. </p><p>I replaced the traps every few days as they filled up. Sticky traps work best as part of a larger strategy because they catch adult gnats but don't address the root cause — the breeding grounds.</p></p>                </section><div class="product"><a data-dimension112="efcb524d-6934-47ed-935d-0233a434d2c9" data-action="Deal Block" data-label="These bright yellow sticky traps work like gnat magnets. The adults can't resist flying straight into them and getting permanently stuck. These are a great, inexpensive way of seeing results." data-dimension48="These bright yellow sticky traps work like gnat magnets. The adults can't resist flying straight into them and getting permanently stuck. These are a great, inexpensive way of seeing results." data-dimension25="$8" href="https://www.amazon.com/Yellow-Sticky-Stickers-Outdoor-Protect/dp/B0F4JH5R58/ref" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:2414px;"><p class="vanilla-image-block" style="padding-top:66.11%;"><img id="rYx3SDuuebmrQNS8PsvfJc" name="Boromine sticky traps" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/rYx3SDuuebmrQNS8PsvfJc.png" mos="" align="middle" fullscreen="" width="2414" height="1596" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>These bright yellow sticky traps work like gnat magnets. The adults can't resist flying straight into them and getting permanently stuck. These are a great, inexpensive way of seeing results. <a class="view-deal button" href="https://www.amazon.com/Yellow-Sticky-Stickers-Outdoor-Protect/dp/B0F4JH5R58/ref" target="_blank" rel="nofollow" data-dimension112="efcb524d-6934-47ed-935d-0233a434d2c9" data-action="Deal Block" data-label="These bright yellow sticky traps work like gnat magnets. The adults can't resist flying straight into them and getting permanently stuck. These are a great, inexpensive way of seeing results." data-dimension48="These bright yellow sticky traps work like gnat magnets. The adults can't resist flying straight into them and getting permanently stuck. These are a great, inexpensive way of seeing results." data-dimension25="$8">View Deal</a></p></div><section class="howto-block">                    <h3>2. Mosquito dunks </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/kUP3QWmj73HcP2Du6WHtY.jpg"                                        alt="Watering snake plant"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/kUP3QWmj73HcP2Du6WHtY.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>This is where real progress happened. Mosquito dunks are pellets containing BTI (Bacillus thuringiensis israelensis), a bacteria that kills gnat larvae in water. I dissolved these in water and used the mixture to water all my houseplants. The dunks target gnat breeding grounds directly by treating the soil where gnats lay eggs and larvae develop.</p><p>They're super easy to use. Just drop a dunk in your watering can and you're done. The great thing about these is they're reusable; one dunk lasts around a month. I watered every plant in my home with a dunk solution for three consecutive days. The first week showed noticeable improvement with fewer gnats flying around. By the end of two weeks of regular watering with the dunk mixture, the gnat population had dropped dramatically. </p><p>The dunks don't kill adult gnats, but they stop the cycle of reproduction at the source. This caused the biggest difference in my infestation because gnats breed in plant soil constantly. Once I started treating the soil, new gnats stopped emerging to replace the ones I was catching with sticky traps. </p><p>Combined with sticky traps catching the adults already flying around, this two-pronged approach finally broke the infestation cycle.</p></p>                </section><div class="product"><a data-dimension112="a3ec9aad-8299-49db-b108-99796de3c962" data-action="Deal Block" data-label="Don't let the name fool you, these aren't just for mosquitos.  Drop one in your watering can, let it brew for 24 hours, then water normally. The BTI bacteria kills larvae in soil while staying completely safe for humans and pets. One dunk lasts 30 days. $1.50 per dunk at this price, which is a steal to be honest." data-dimension48="Don't let the name fool you, these aren't just for mosquitos.  Drop one in your watering can, let it brew for 24 hours, then water normally. The BTI bacteria kills larvae in soil while staying completely safe for humans and pets. One dunk lasts 30 days. $1.50 per dunk at this price, which is a steal to be honest." data-dimension25="$3" href="https://www.amazon.com/Mosquito-Dunks-102-12-Killer-Pack/dp/B0002ASQ4A/ref" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:2004px;"><p class="vanilla-image-block" style="padding-top:79.84%;"><img id="8JEZ8WoZ85XRFc7YWJsVDU" name="Summit Mosquito dunks" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/8JEZ8WoZ85XRFc7YWJsVDU.png" mos="" align="middle" fullscreen="" width="2004" height="1600" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>Don't let the name fool you, these aren't just for mosquitos.  Drop one in your watering can, let it brew for 24 hours, then water normally. The BTI bacteria kills larvae in soil while staying completely safe for humans and pets. One dunk lasts 30 days. $1.50 per dunk at this price, which is a steal to be honest. <a class="view-deal button" href="https://www.amazon.com/Mosquito-Dunks-102-12-Killer-Pack/dp/B0002ASQ4A/ref" target="_blank" rel="nofollow" data-dimension112="a3ec9aad-8299-49db-b108-99796de3c962" data-action="Deal Block" data-label="Don't let the name fool you, these aren't just for mosquitos.  Drop one in your watering can, let it brew for 24 hours, then water normally. The BTI bacteria kills larvae in soil while staying completely safe for humans and pets. One dunk lasts 30 days. $1.50 per dunk at this price, which is a steal to be honest." data-dimension48="Don't let the name fool you, these aren't just for mosquitos.  Drop one in your watering can, let it brew for 24 hours, then water normally. The BTI bacteria kills larvae in soil while staying completely safe for humans and pets. One dunk lasts 30 days. $1.50 per dunk at this price, which is a steal to be honest." data-dimension25="$3">View Deal</a></p></div><section class="howto-block">                    <h3>3. Diatomaceous earth</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/tL3nTBVugJJPAjpJVesgeW.jpg"                                        alt="Diatomaceous earth in a container with a spoon"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/tL3nTBVugJJPAjpJVesgeW.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Diatomaceous earth (food-grade only) is a powder made from fossilized algae. When gnats come into contact with it, the powder damages their exoskeleton and dehydrates them. I sprinkled a thin layer over topsoil of my most infested plants, and also in areas I noticed the most gnat activity as a deterrent. </p><p>The key is using food-grade diatomaceous earth, <em>never</em> pool-grade, which is toxic. I applied it lightly so it wouldn't create a mess, but thick enough to be effective. </p><p>This product worked differently than the others. It didn't catch gnats like traps or prevent breeding like dunks. Instead, it created an inhospitable environment that made my home less appealing to remaining gnats. Combined with the other two products, diatomaceous earth delivered the final blow to the infestation.</p></p>                </section><div class="product"><a data-dimension112="44f87b76-af56-4190-9f85-7e98d7326342" data-action="Deal Block" data-label="This 4lbs pack of diatomaceous earth is an organic way to control pests in your garden. The fine powder containing fossilized marine organisms can be used indoors, as well as outdoors." data-dimension48="This 4lbs pack of diatomaceous earth is an organic way to control pests in your garden. The fine powder containing fossilized marine organisms can be used indoors, as well as outdoors." data-dimension25="$10" href="https://www.amazon.com/Garden-Safe-Crawling-Containing-Diatomaceous/dp/B004Q0DM82/ref=" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:586px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="gksJ7tkEbgcYpyvA4N8Wkn" name="Diatomaceous Earth" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/gksJ7tkEbgcYpyvA4N8Wkn.png" mos="" align="middle" fullscreen="" width="586" height="586" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>This 4lbs pack of diatomaceous earth is an organic way to control pests in your garden. The fine powder containing fossilized marine organisms can be used indoors, as well as outdoors. <a class="view-deal button" href="https://www.amazon.com/Garden-Safe-Crawling-Containing-Diatomaceous/dp/B004Q0DM82/ref=" target="_blank" rel="nofollow" data-dimension112="44f87b76-af56-4190-9f85-7e98d7326342" data-action="Deal Block" data-label="This 4lbs pack of diatomaceous earth is an organic way to control pests in your garden. The fine powder containing fossilized marine organisms can be used indoors, as well as outdoors." data-dimension48="This 4lbs pack of diatomaceous earth is an organic way to control pests in your garden. The fine powder containing fossilized marine organisms can be used indoors, as well as outdoors." data-dimension25="$10">View Deal</a></p></div><div class="vizualizer-embed"><div class="tg-df-widget-host" data-widget-config="?search=Cameras+%26+Photography&price=50_100&view_mode=savings_squad&widget_title=Top+Prime+Day+phone+deals%2C+as+picked+by+us&widget_subtitle=Discover+the+best+discounts+currently+available%2C+curated+daily+by+the+Tom%27s+Guide+Savings+Squad.&bg_color=transparent" data-vizualizer-embed="true"></div>    <script>    /**     * Tom's Guide Deals Finder - Vanilla JS Encapsulated Engine     */    (function() {      // --- Freyr Analytics Adapter ---      function initAnalytics() {        window.dataLayer = window.dataLayer || [];        window.googletag = window.googletag || {};        window.googletag.cmd = window.googletag.cmd || [];        window.hawk = window.hawk || { analytics: { freyr: [] } };        window.hawk.analytics = window.hawk.analytics || { freyr: [] };        window.hawk.analytics.freyr = window.hawk.analytics.freyr || [];        window.freyr = window.freyr || { cmd: [] };        const scriptSrc = 'https://freyr.futurecdn.net/freyr.js';        const hostname = typeof window !== 'undefined' ? window.location.hostname : '';        const isTestEnv = typeof window.navigator !== 'undefined' && (window.navigator.webdriver || window.navigator.userAgent.includes('Headless'));        const shouldSendRealAnalytics = !isTestEnv && hostname && hostname !== 'localhost' && hostname !== '127.0.0.1' && !hostname.includes('run.app');        if (shouldSendRealAnalytics && !document.querySelector(`script[src="${scriptSrc}"]`)) {          const script = document.createElement('script');          script.src = scriptSrc;          script.async = true;          document.head.appendChild(script);        }      }      function storeEventForDebug(name, data) {        if (!window.hawk || !window.hawk.analytics || !window.hawk.analytics.freyr) return;        window.hawk.analytics.freyr.push({ name, data });        try {          if (typeof window !== 'undefined' && window.localStorage) {            window.localStorage.setItem("hawk", JSON.stringify(window.hawk));          }        } catch (e) {          // Ignore storage issues        }        try {          window.dispatchEvent(new CustomEvent("hawk-analytics-update"));        } catch (e) {}      }      function sendToFreyr(eventName, data) {        if (typeof window === 'undefined') return;        window.freyr = window.freyr || { cmd: [] };        window.freyr.cmd.push(() => {          if (window.freyr && window.freyr.pushAndUpdate) {            window.freyr.pushAndUpdate(eventName, data);          }        });      }      function sendEvent(event, skip = false) {        try {          storeEventForDebug(event.name, event.data);          if (!skip) {            sendToFreyr(event.name, event.data);          }        } catch (e) {          // Ensure tracking errors don't surface to the user        }      }      function getCookie(name) {        try {          const match = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));          return match ? match[2] : null;        } catch (e) {          return null;        }      }      function getTimeAgo(dateString) {        if (!dateString) return '';        const date = new Date(dateString);        const now = new Date();        const diffInSeconds = Math.floor((now.getTime() - date.getTime()) / 1000);        if (diffInSeconds < 60) return 'Just now';        const diffInMinutes = Math.floor(diffInSeconds / 60);        if (diffInMinutes < 60) return `${diffInMinutes} min${diffInMinutes > 1 ? 's' : ''} ago`;        const diffInHours = Math.floor(diffInMinutes / 60);        if (diffInHours < 24) return `${diffInHours} hr${diffInHours > 1 ? 's' : ''} ago`;        const diffInDays = Math.floor(diffInHours / 24);        if (diffInDays < 30) return `${diffInDays} day${diffInDays > 1 ? 's' : ''} ago`;        const diffInMonths = Math.floor(diffInDays / 30);        if (diffInMonths < 12) return `${diffInMonths} mo${diffInMonths > 1 ? 's' : ''} ago`;        const diffInYears = Math.floor(diffInDays / 365);        return `${diffInYears} yr${diffInYears > 1 ? 's' : ''} ago`;      }      function normalizeCurrency(symbol) {        const map = {          '£': 'GBP',          '$': 'USD',          'A$': 'AUD',          'CA$': 'CAD',          '€': 'EUR'        };        return map[symbol] || symbol;      }      function trackElementInteraction(props) {        sendEvent({          name: 'elementInteraction',          data: {            element: {              action: props.action || "click",              id: props.id || undefined,              class: props.class || undefined,              name: props.name || undefined,              text: props.text || undefined,              label: props.label || undefined,              container: props.container || undefined,              url: props.url || undefined,              articleId: props.articleId || undefined            }          }        });      }      function generateRevenueId(url, productName, merchantName, modelId) {        const str = `${window.location.href}|${productName}|${merchantName}|${modelId || ''}|${new Date().toDateString()}|tomsguide`;        let hash = 0;        for (let i = 0; i < str.length; i++) {          const char = str.charCodeAt(i);          hash = ((hash << 5) - hash) + char;          hash = hash & hash;        }        let numericStr = Math.abs(hash).toString();        while (numericStr.length < 19) {          numericStr += Math.floor(Math.random() * 10).toString();        }        return numericStr.substring(0, 19);      }      function rewriteAffiliateLink(url, territory, revenueId) {        if (!url) return url;        const t = (territory || 'gb').toLowerCase();        return url.replace(/hawk-custom-tracking/g, `tomsguide-${t}-${revenueId}`);      }      function trackHawkEvent(params) {        const { clickType, widgetId, productCategoryName, product, productsArray, zeroBasedProductIndexOrNull, totalDealsOrProducts, areaClicked, merchant, revenueId, isoCurrencyCode, queryName, widgetTypeName } = params;        const data = {          event: "hawkEvent",          category: "Affiliates",          affiliate: {            action: {              type: clickType,              id: widgetId,              event: clickType === "appeared" ? "viewed" : "Click from",              timestamp: Date.now()            },            component: {              flag: "Editor",              product: productCategoryName || "deals",              category: `Signal Deal Finder ${widgetTypeName || "Carousel"} widget`,              type: clickType === "appeared" ? "review" : "signal product",              label: queryName || (product ? (product.name || "") : ""),              index: zeroBasedProductIndexOrNull === null || zeroBasedProductIndexOrNull === undefined ? -1 : zeroBasedProductIndexOrNull,              linkCount: totalDealsOrProducts || 0,              blockLayout: "",              areaClicked: areaClicked || ""            }          },          products: productsArray || (product && merchant ? [            {              product: {                primary: {                  id: product.id || product.matchId || null,                  name: product.name,                  type: "deal",                  price: product.price,                  previousPrice: product.previousPrice || null,                  currency: isoCurrencyCode || "USD",                  preorder: false,                  labels: [],                  link: product.link,                  originalLink: product.originalLink || null,                  revenueId: revenueId || null,                  startTime: null,                  endTime: null,                  voucherCode: null,                  voucherAudience: null,                  voucherPercentageSaving: null,                  voucherMoneySaving: null,                  voucherType: null,                  offerExclusive: false,                  offerScope: null,                  globalId: product.globalId || null,                  inStock: product.inStock !== false,                  contractProvider: null,                  contractMinutes: null,                  contractTexts: null,                  contractData: null,                  contractLength: null,                  contractMonthlyPrice: null,                  contractCurrency: isoCurrencyCode || "USD"                }              },              merchant: {                id: merchant.id || null,                name: merchant.name,                url: merchant.url || null,                network: merchant.network || null              },              model: {                id: product.modelId || null,                brand: product.brand || null,                name: product.name,                parent: product.parent || null              }            }          ] : []),          reviews: [],          _clear: true,          "gtm.uniqueEventId": Date.now() % 10000        };        sendEvent({ name: 'hawkEvent', data });      }      function trackDealClick(params) {        trackHawkEvent({ ...params, clickType: "retailer", areaClicked: "Signal Product Card" });      }      function trackViewSimilarClick(params) {        trackHawkEvent({ ...params, clickType: "retailer", areaClicked: "Signal Product Card View Similar" });      }      function trackPriceComparisonClick(params) {        trackHawkEvent({ ...params, clickType: "retailer", areaClicked: "Signal Price Comparison" });      }      function trackReviewClick(params) {        trackHawkEvent({ ...params, clickType: "review", areaClicked: "Signal Product Card Review Link" });      }      function trackShare(params) {        trackHawkEvent({ ...params, clickType: "share", areaClicked: "Signal Product Card Share" });      }      function trackDealsAppeared(widgetId, deals, revenueId, currency, queryName, widgetTypeName) {         if (!deals || deals.length === 0) return;                  const productsArray = deals.slice(0, 50).map((deal) => {            let voucherPct = null;            let rawPrice = parseFloat(deal.rawPrice) || parseFloat(deal.price) || null;            let rawMsrp = parseFloat(deal.rawMsrp) || parseFloat(deal.msrp) || null;            if (rawMsrp > rawPrice && rawPrice > 0) {              voucherPct = Math.round((1 - (rawPrice / rawMsrp)) * 100);            }            let numId = null;            if (deal.externalProductId && !isNaN(parseInt(deal.externalProductId))) {              numId = parseInt(deal.externalProductId);            } else if (deal.id && !isNaN(parseInt(deal.id))) {              numId = parseInt(deal.id);            } else {              numId = deal.matchId || null;            }            return {              product: {                primary: {                  id: numId,                  name: deal.productName || deal.title || "",                  type: "deal",                  price: rawPrice,                  previousPrice: rawMsrp,                  currency: currency || 'USD',                  preorder: false,                  labels: deal.modelBrand || deal.brand ? [                     { type: "brand", value: deal.modelBrand || deal.brand }                  ] : [],                  link: deal.url,                  originalLink: deal.url,                  revenueId: revenueId || null,                  startTime: null,                  endTime: null,                  voucherCode: null,                  voucherAudience: null,                  voucherPercentageSaving: voucherPct,                  voucherMoneySaving: null,                  voucherType: null,                  offerExclusive: false,                  offerScope: null,                  globalId: deal.productKey || null,                  inStock: deal.inStock !== false,                  contractProvider: null,                  contractMinutes: null,                  contractTexts: null,                  contractData: null,                  contractLength: null,                  contractMonthlyPrice: null,                  contractCurrency: currency || 'USD'                }              },              merchant: {                id: deal.merchantId ? parseInt(deal.merchantId) : null,                name: deal.merchant || "Retailer",                url: deal.merchantUrl || null,                network: deal.merchantNetwork || null              },              model: {                id: deal.modelId ? parseInt(deal.modelId) : null,                brand: deal.modelBrand || deal.brand || null,                name: deal.productName || deal.title || "",                parent: deal.modelParent || null              }            };         });                  trackHawkEvent({             clickType: "appeared",             widgetId: widgetId,             productCategoryName: "deals",             zeroBasedProductIndexOrNull: null,             totalDealsOrProducts: deals.length,             productsArray: productsArray,             queryName: queryName,             widgetTypeName: widgetTypeName         });      }      // 1. Setup Shadow DOM Sandbox      const currentScript = document.currentScript;      let hostContainer = null;      let template = null;            if (currentScript) {        let prev = currentScript.previousElementSibling;        while (prev) {          if (prev.tagName === 'TEMPLATE' && prev.classList.contains('tg-df-widget-template')) {            template = prev;          } else if (prev.tagName === 'DIV' && prev.classList.contains('tg-df-widget-host') && !prev.hasAttribute('data-initialized')) {            hostContainer = prev;            break;          }          prev = prev.previousElementSibling;        }      }            // Fallbacks in case script is deferred      if (!hostContainer) {        const hosts = document.querySelectorAll('.tg-df-widget-host:not([data-initialized])');        if (hosts.length > 0) hostContainer = hosts[0];      }            // Safely embedded template for CMS environments      const rawTemplate = `  \x3Cstyle>    /* --- Shadow DOM Base Reset --- */    *, *::before, *::after {      box-sizing: border-box;    }    img, picture, svg, video {      max-width: 100%;      height: auto;      display: block;    }    /*       1. Scoped CSS for Tom's Guide Deals Widget       All classes are prefixed with \`tg-df-\` to prevent CMS style leakage.    */    .tg-df-container {      container-type: inline-size;      container-name: tg-df;      --tg-df-blue: #1F69FF;      --tg-df-blue-hover: #004d8c;      --tg-df-text: #222222;      --tg-df-text-muted: #555555;      --tg-df-bg: #ffffff;      --tg-df-bg-secondary: #f4f4f4;      --tg-df-border: #e2e8f0;      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;      color: var(--tg-df-text);      background-color: transparent;       width: 100%;      max-width: 1200px;      margin: 0 auto;      padding-bottom: 24px;    }    .tg-df-container *, .tg-df-container *::before, .tg-df-container *::after {      margin: 0;      padding: 0;      box-sizing: border-box;    }    .tg-df-container img {      border: none;      margin: 0;      padding: 0;    }    .tg-df-container a {      text-decoration: none;      color: inherit;    }    /*       2. Search & Filter Bar    */    .tg-df-controls {      display: flex;      flex-direction: column;      align-items: center;      gap: 20px;      margin-bottom: 32px;      width: 100%;      position: relative;      z-index: 20;    }    .tg-df-top-bar {      display: flex;      width: 100%;      max-width: 760px;      gap: 12px;      margin: 0 auto;      align-items: center;    }    .tg-df-search-wrapper {      position: relative;      flex: 1;      width: 100%;      box-shadow: 0 8px 24px rgba(0,0,0,0.06);      border-radius: 40px;      background: var(--tg-df-bg);      border: 1px solid var(--tg-df-border);      z-index: 100;    }    .tg-df-autocomplete-dropdown {      position: absolute;      top: calc(100% + 4px);      left: 0;      right: 0;      background: var(--tg-df-bg);      border: 1px solid var(--tg-df-border);      border-radius: 12px;      box-shadow: 0 8px 32px rgba(0,0,0,0.12);      max-height: 300px;      overflow-y: auto;      z-index: 200;      display: none;    }    .tg-df-autocomplete-dropdown.active {      display: block;    }    .tg-df-autocomplete-item {      padding: 12px 24px;      cursor: pointer;      font-size: 14px;      color: var(--tg-df-text);      transition: background 0.1s ease;    }    .tg-df-autocomplete-item:hover {      background: var(--tg-df-bg-secondary);    }    .tg-df-search-input {      width: 100%;      padding: 16px 64px 16px 24px;      font-size: 16px;      border: 2px solid transparent;      border-radius: 40px;      outline: none;      transition: border-color 0.2s ease, box-shadow 0.2s ease;      color: var(--tg-df-text);      background: transparent;    }    .tg-df-search-input:focus {      border-color: transparent;      box-shadow: 0 0 0 3px rgba(0, 108, 196, 0.15);    }    .tg-df-search-input::placeholder {      color: #999999;    }        .tg-df-search-btn {      position: absolute;      right: 8px;      top: 50%;      transform: translateY(-50%);      width: 40px;      height: 40px;      border-radius: 50%;      background: #222;      border: none;      display: flex;      align-items: center;      justify-content: center;      cursor: pointer;      transition: background 0.2s ease;    }        .tg-df-search-btn:hover {      background: #000;    }    .tg-df-search-icon {      width: 16px;      height: 16px;      fill: #fff;    }    .tg-df-settings-wrapper {      position: relative;    }        .tg-df-settings-btn {      width: 48px;      height: 48px;      border-radius: 50%;      background: var(--tg-df-bg);      border: 1px solid var(--tg-df-border);      box-shadow: 0 4px 12px rgba(0,0,0,0.04);      display: flex;      align-items: center;      justify-content: center;      cursor: pointer;      transition: all 0.2s ease;      color: var(--tg-df-text-muted);      flex-shrink: 0;    }    .tg-df-settings-btn:hover {      background: var(--tg-df-bg-secondary);      border-color: #0000ff;      color: var(--tg-df-text);    }    .tg-df-settings-btn svg {      width: 24px;      height: 24px;      fill: currentColor;    }    .tg-df-settings-dropdown {      position: absolute;      top: calc(100% + 8px);      right: 0;      background: var(--tg-df-bg);      border: 1px solid var(--tg-df-border);      border-radius: 12px;      box-shadow: 0 8px 32px rgba(0,0,0,0.12);      width: 280px;      padding: 20px;      display: none;      z-index: 100;      flex-direction: column;      gap: 20px;    }    .tg-df-settings-dropdown.active {      display: flex;    }        .tg-df-settings-dropdown-backdrop {      display: none;      position: fixed;      inset: 0;      z-index: 99;    }        .tg-df-settings-dropdown-backdrop.active {      display: block;    }    .tg-df-setting-item {      display: flex;      flex-direction: column;      gap: 10px;    }    .tg-df-setting-label {      font-size: 11px;      font-weight: 700;      color: var(--tg-df-text-muted);      text-transform: uppercase;      letter-spacing: 0.5px;    }        .tg-df-region-select {        padding: 10px 12px;        border-radius: 8px;        border: 1px solid var(--tg-df-border);        font-size: 15px;        outline: none;        background: var(--tg-df-bg-secondary);        color: var(--tg-df-text);        cursor: pointer;        width: 100%;    }    .tg-df-toggle {        position: relative;        display: inline-block;        width: 44px;        height: 24px;        flex-shrink: 0;    }    .tg-df-toggle input {        opacity: 0;        width: 0;        height: 0;    }    .tg-df-slider {        position: absolute;        cursor: pointer;        top: 0; left: 0; right: 0; bottom: 0;        background-color: #ccc;        transition: .2s;        border-radius: 24px;    }    .tg-df-slider:before {        position: absolute;        content: "";        height: 18px;        width: 18px;        left: 3px;        bottom: 3px;        background-color: white;        transition: .2s;        border-radius: 50%;    }    .tg-df-toggle input:checked + .tg-df-slider {        background-color: #1F69FF;    }    .tg-df-toggle input:checked + .tg-df-slider:before {        transform: translateX(20px);    }    .tg-df-dl-row {        flex-direction: row;        align-items: center;        justify-content: space-between;    }    .tg-df-dl-row-text {        font-size: 14px;        font-weight: 600;        color: var(--tg-df-text);    }    .tg-df-dl-row-subtext {        font-size: 12px;        font-weight: 400;        line-height: 1.3;        color: var(--tg-df-text-muted);        margin-top: 4px;        display: block;    }    .tg-df-filters-container {      position: relative;      width: 100%;      max-width: 800px;    }    .tg-df-scroll-btn {      display: none;      position: absolute;      top: 50%;      transform: translateY(-50%);      width: 32px;      height: 32px;      background: white;      border: 1px solid var(--tg-df-border);      border-radius: 50%;      align-items: center;      justify-content: center;      cursor: pointer;      z-index: 10;      box-shadow: 0 2px 8px rgba(0,0,0,0.1);      color: var(--tg-df-text-primary);      padding: 0;    }    .tg-df-scroll-btn svg {      width: 16px;      height: 16px;    }    .tg-df-scroll-btn:hover {      background: #f4f4f4;    }    .tg-df-scroll-btn.left {      left: 0px;    }    .tg-df-scroll-btn.right {      right: 0px;    }    @container tg-df (max-width: 768px) {      .tg-df-scroll-btn {        display: flex;        top: 22px; /* vertically center within the 44px high filter buttons */      }    }    .tg-df-filters {      display: grid;      width: 100%;      grid-template-columns: repeat(4, 1fr);      gap: 12px;      margin: 0 auto;      max-width: 800px;    }                 .tg-df-sort-wrapper {      position: relative;      display: flex;      align-items: center;      width: 100%;    }        .tg-df-sort-icon {      position: absolute;      left: 14px;      width: 14px;      height: 14px;      fill: var(--tg-df-text-muted);      pointer-events: none;    }    .tg-df-sort-select, .tg-df-filter-select {      width: 100%;      padding: 10px 36px 10px 38px;      font-size: 14px;      border: 1px solid var(--tg-df-border);      border-radius: 100px;      outline: none;      appearance: none;      background-color: var(--tg-df-bg-secondary);      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='%23555555' d='M6 8L1 3h10z'/%3E%3C/svg%3E");      background-repeat: no-repeat;      background-position: right 14px center;      color: var(--tg-df-text);      cursor: pointer;      font-weight: 500;      transition: all 0.2s ease;    }        .tg-df-price-input::-webkit-outer-spin-button,    .tg-df-price-input::-webkit-inner-spin-button {      -webkit-appearance: none;      margin: 0;    }    .tg-df-price-input {      -moz-appearance: textfield;    }    .tg-df-sort-select:hover, .tg-df-filter-select:hover {      background-color: #e2e8f0;    }    .tg-df-multiselect-container {      position: relative;    }    @container tg-df (max-width: 768px) {      .tg-df-filters-container {      position: relative;      width: 100%;      max-width: 800px;    }    .tg-df-scroll-btn {      display: none;      position: absolute;      top: 50%;      transform: translateY(-50%);      width: 32px;      height: 32px;      background: white;      border: 1px solid var(--tg-df-border);      border-radius: 50%;      align-items: center;      justify-content: center;      cursor: pointer;      z-index: 10;      box-shadow: 0 2px 8px rgba(0,0,0,0.1);      color: var(--tg-df-text-primary);      padding: 0;    }    .tg-df-scroll-btn svg {      width: 16px;      height: 16px;    }    .tg-df-scroll-btn:hover {      background: #f4f4f4;    }    .tg-df-scroll-btn.left {      left: 0px;    }    .tg-df-scroll-btn.right {      right: 0px;    }    @container tg-df (max-width: 768px) {      .tg-df-scroll-btn {        display: flex;        top: 22px; /* vertically center within the 44px high filter buttons */      }    }    .tg-df-filters {        width: 100%;        margin: 0;        margin-bottom: -320px;        padding: 0 16px 320px 16px;        display: flex;        flex-wrap: nowrap;        gap: 8px;        overflow-x: auto;        overflow-y: hidden;        pointer-events: none;        scrollbar-width: none;        -webkit-overflow-scrolling: touch;      }      .tg-df-filters::-webkit-scrollbar {        display: none;      }      .tg-df-sort-wrapper {        pointer-events: auto;        flex: 0 0 auto;        width: 175px;        min-width: 175px;      }    }        .tg-df-multiselect-trigger {      display: block;      background: #fff;      user-select: none;      width: 100%;      overflow: hidden;      white-space: nowrap;      text-overflow: ellipsis;    }        .tg-df-multiselect-dropdown {      display: none;      position: absolute;      top: calc(100% + 4px);      left: 0;      width: 100%;      min-width: 220px;      max-height: 300px;      overflow-y: auto;      background: var(--tg-df-bg);      border: 1px solid var(--tg-df-border);      border-radius: 8px;      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);      z-index: 100;      padding: 8px 0;    }    .tg-df-multiselect-dropdown.active {      display: block;    }    .tg-df-ms-option {      padding: 8px 16px;      display: flex;      align-items: center;      gap: 8px;      cursor: pointer;      font-size: 14px;    }    .tg-df-ms-option:hover {      background-color: var(--tg-df-bg-secondary);    }        .tg-df-ms-option input {      cursor: pointer;      accent-color: #1f69ff;    }    .tg-df-sort-select:focus, .tg-df-filter-select:focus {      border-color: #0000ff;      box-shadow: 0 0 0 3px rgba(0, 0, 255, 0.2);      background-color: var(--tg-df-bg);    }    /*       3. Deal Grid Layout    */    .tg-df-grid.tg-df-grid-auto {      padding-top: 24px;    }    .tg-df-grid, .tg-df-grid.layout-grid {      display: grid;      grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));      gap: 10px;    }    .tg-df-grid.layout-row {      grid-template-columns: 1fr;      gap: 16px;    }        .tg-df-grid.layout-row .tg-df-card {      flex-direction: row;      align-items: stretch;      height: auto;      box-shadow: none;      border-bottom: 1px solid var(--tg-df-border);    }    .tg-df-grid.layout-row .tg-df-card:hover {      box-shadow: none;    }    .tg-df-grid.layout-row .tg-df-card-image-box {      width: 140px;      min-width: 140px;      aspect-ratio: 3/4;      border-right: none;      padding: 16px 16px 16px 32px;    }    .tg-df-grid.layout-row .tg-df-card-body {      padding: 16px;      justify-content: space-between;    }    .tg-df-grid.layout-row .tg-df-card-title {      font-size: 15px;      margin-bottom: 16px;    }    .tg-df-grid.layout-row .tg-df-card-stars { margin-bottom: 8px; }    .tg-df-grid.layout-row .tg-df-card-footer {      flex-direction: column;      align-items: flex-start;      gap: 0;    }    .tg-df-grid.layout-row .tg-df-card-merchant-pill {      margin-bottom: 4px;    }    .tg-df-grid.layout-row .tg-df-card-price-group {      margin-bottom: 8px;    }    .tg-df-grid.layout-row .tg-df-price-group {      width: auto;    }    .tg-df-grid.layout-row .tg-df-card-cta {      width: 100%;      max-width: 200px;      padding: 10px 24px;      font-size: 13px;      flex-shrink: 0;      text-align: center;      justify-content: center;    }    /*       4. Deal Card Design    */    .tg-df-card {      position: relative;      display: flex;      flex-direction: column;      background-color: #ffffff;      border-radius: 0;      overflow: hidden;      transition: transform 0.2s ease, box-shadow 0.2s ease;      text-decoration: none;      color: inherit;      height: 100%;      box-shadow: 0 0 16px rgba(0, 0, 0, 0.08);      border: 1px solid var(--tg-df-border);    }    .tg-df-card:hover {      box-shadow: 0 0 24px rgba(0, 0, 0, 0.12);    }    .tg-df-card-image-box {      width: 100%;      aspect-ratio: 3/4;      background-color: #f8f8f8;      display: flex;      align-items: center;      justify-content: center;      position: relative;      overflow: hidden;      padding: 32px;      flex: 0 0 auto;    }    .tg-df-card-image {      max-width: 100%;      max-height: 100%;      width: auto;      height: auto;      object-fit: contain;      mix-blend-mode: multiply; /* Helps white background images blend into secondary bg */      transition: transform 0.3s ease;    }    .tg-df-card:hover .tg-df-card-image {      transform: scale(1.05); /* Zoom in on hover */    }    .tg-df-card-discount-badge {      position: absolute;      top: 12px;      left: 12px;      background: #dc2626; /* Red */      color: #ffffff;      padding: 6px 8px;      font-size: 11px;      font-weight: 500;      text-transform: uppercase;      letter-spacing: 0.5px;      border-radius: 0;      z-index: 10;    }        .tg-df-card-merchant-pill {      display: block;      padding: 0;      font-size: 11px;      font-weight: 600;      text-transform: uppercase;      letter-spacing: 0.5px;      border-radius: 0;      color: var(--tg-df-text-muted);      margin-bottom: 8px;      white-space: nowrap;      overflow: hidden;      text-overflow: ellipsis;    }    .tg-df-card-body {      padding: 16px;      display: flex;      flex-direction: column;      flex-grow: 1;      min-width: 0;    }    .tg-df-card-badges {      display: flex;      flex-wrap: wrap;      gap: 6px;      margin-bottom: 8px;    }    .tg-df-tag {      display: inline-flex;      align-items: center;      padding: 4px 6px;      font-size: 11px;      font-weight: 700;      text-transform: uppercase;      border-radius: 4px;      gap: 4px;    }    .tg-df-tag-prime {      background-color: #00A8E1;      color: #fff;    }    .tg-df-tag-coupons {      background-color: #f1f5f9;      color: #334155;      border: 1px solid #cbd5e1;      cursor: pointer;      transition: background-color 0.2s;    }    .tg-df-tag-coupons:hover {      background-color: #e2e8f0;    }        .tg-df-tag-outline {      background-color: #f1f5f9;      color: #334155;      border: 1px solid #cbd5e1;      cursor: pointer;      transition: background-color 0.2s;    }    .tg-df-tag-outline:hover {      background-color: #e2e8f0;    }        @keyframes tg-df-spin {      0% { transform: rotate(0deg); }      100% { transform: rotate(360deg); }    }    .tg-df-coupon-spinner {      border: 2px solid #e2e8f0;      border-top: 2px solid #3b82f6;      border-radius: 50%;      width: 14px;      height: 14px;      animation: tg-df-spin 1s linear infinite;      margin: 4px 8px;      display: inline-block;    }        /* Vouchers Modal */    .tg-df-modal-backdrop {      position: fixed;      top: 0; left: 0; right: 0; bottom: 0;      background: rgba(0,0,0,0.5);      z-index: 10000;      display: flex;      align-items: center;      justify-content: center;      opacity: 0;      pointer-events: none;      transition: opacity 0.3s;    }    .tg-df-modal-backdrop.active {      opacity: 1;      pointer-events: auto;    }    .tg-df-modal {      background: #fff;      border-radius: 12px;      width: 90%;      max-width: 400px;      max-height: 80vh;      display: flex;      flex-direction: column;      box-shadow: 0 10px 40px rgba(0,0,0,0.2);      transform: translateY(20px);      transition: transform 0.3s;    }    .tg-df-modal-backdrop.active .tg-df-modal {      transform: translateY(0);    }    .tg-df-modal-header {      padding: 16px;      border-bottom: 1px solid #e2e8f0;      display: flex;      align-items: center;      justify-content: space-between;    }    .tg-df-modal-title {      font-size: 16px;      font-weight: 600;      margin: 0;    }    .tg-df-modal-close {      background: none;      border: none;      cursor: pointer;      padding: 4px;      color: #64748b;    }    .tg-df-modal-body {      padding: 16px;      overflow-y: auto;    }    .tg-df-voucher-item {      padding: 12px;      border: 1px dashed #cbd5e1;      border-radius: 8px;      margin-bottom: 10px;      background: #f8fafc;      display: flex;      align-items: center;      gap: 12px;      text-decoration: none;      color: inherit;      transition: background-color 0.2s, border-color 0.2s;    }    .tg-df-voucher-item:hover {      background: #f1f5f9;      border-color: #94a3b8;    }    .tg-df-voucher-item:last-child {      margin-bottom: 0;    }    .tg-df-voucher-logo {      width: 48px;      height: 48px;      object-fit: contain;      border-radius: 4px;      background: #fff;      border: 1px solid #e2e8f0;      flex-shrink: 0;    }    .tg-df-voucher-content {      flex: 1;      min-width: 0;    }    .tg-df-voucher-title {      font-size: 14px;      font-weight: 600;      margin: 0 0 4px 0;      line-height: 1.3;      color: #0f172a;    }    .tg-df-voucher-expiry {      font-size: 12px;      color: #64748b;      display: flex;      align-items: center;      gap: 4px;      margin-top: 6px;    }    .tg-df-voucher-code {      display: inline-flex;      align-items: center;      background: #f1f5f9;      border: 1px dashed #cbd5e1;      padding: 6px 10px;      font-family: monospace;      font-weight: 700;      font-size: 14px;      color: #0f172a;      border-radius: 4px;      margin-top: 8px;      cursor: pointer;      transition: all 0.2s ease;    }    .tg-df-voucher-code:hover {      background: #e2e8f0;      border-color: #94a3b8;    }    .tg-df-voucher-code.copied {      background: #ecfdf5;      border-color: #10b981;      color: #10b981;    }    .tg-df-voucher-cta {      display: inline-block;      margin-top: 8px;      font-size: 13px;      font-weight: 600;      color: #2563eb;      text-decoration: none;    }    .tg-df-card-title {      font-size: 15px;      font-weight: 400;      line-height: 1.4;      margin: 0 0 12px 0;      color: var(--tg-df-text);    }    .tg-df-card-footer {      margin-top: auto;      display: flex;      flex-direction: column;      width: 100%;    }    .tg-df-card-price-group {      display: flex;      flex-direction: row;      align-items: center;      gap: 8px;      margin-bottom: 12px;    }    .tg-df-card-price {      font-size: 16px;      font-weight: 700;      color: #dc2626; /* Red price */      line-height: 1;    }        .tg-df-card-msrp {      font-size: 13px;      color: var(--tg-df-text-muted);      text-decoration: line-through;    }    .tg-df-container .tg-df-card-cta {      display: flex;      align-items: center;      justify-content: center;      width: 100%;      box-sizing: border-box;      background-color: #1f69ff;      color: #ffffff;      font-size: 12px;      font-weight: 700;      text-transform: uppercase;      letter-spacing: 0.5px;      padding: 12px 16px;      border-radius: 0;      border: none;      cursor: pointer;      transition: background-color 0.2s ease;    }    .tg-df-card:hover .tg-df-card-cta,    .tg-df-card-cta:hover {      background-color: #1555cc;    }    /*       5. State & Skeleton Styles    */    .tg-df-message {      grid-column: 1 / -1;      text-align: center;      padding: 48px 24px;      color: var(--tg-df-text-muted);      font-size: 16px;      background: var(--tg-df-bg);      border: 1px solid var(--tg-df-border);      border-radius: 8px;    }    @keyframes tg-df-shimmer {      0% { background-position: -200% 0; }      100% { background-position: 200% 0; }    }    .tg-df-skeleton {      background: linear-gradient(90deg, var(--tg-df-bg-secondary) 25%, #e2e8f0 50%, var(--tg-df-bg-secondary) 75%);      background-size: 200% 100%;      animation: tg-df-shimmer 1.5s infinite;      border-radius: 4px;    }    .tg-df-skeleton-img {      width: 100%;      height: 100%;      position: absolute;      top: 0; left: 0;    }        .tg-df-skeleton-text {      height: 16px;      margin-bottom: 8px;      width: 100%;    }    .tg-df-skeleton-text.short { width: 40%; }    .tg-df-skeleton-text.title { height: 20px; margin-bottom: 16px; }    /* Editor Floating Bar & Elements */    .tg-df-editor-bar {      position: sticky;      top: 120px;      z-index: 1000;      background: #111827;      color: #fff;      padding: 12px 16px;      border-radius: 8px;      margin-bottom: 16px;      display: flex;      align-items: center;      justify-content: space-between;      box-shadow: 0 4px 12px rgba(0,0,0,0.15);    }    .tg-df-editor-bar-text {      font-weight: 600;      font-size: 14px;    }    .tg-df-editor-copy-btn {      background: #10b981;      color: #fff;      padding: 6px 16px;      border: none;      border-radius: 4px;      font-weight: 600;      cursor: pointer;      display: flex;      align-items: center;      font-size: 13px;    }    .tg-df-editor-copy-btn:hover { background: #059669; }        .tg-df-deal-checkbox {      position: absolute;      top: 12px;      right: 12px;      z-index: 10;      width: 20px;      height: 20px;      cursor: pointer;      pointer-events: auto;    }    /*       6. Mobile List View (Stacks into a cleaner horizontal row/list)    */    @container tg-df (max-width: 599px) {      .tg-df-controls {        padding: 16px 16px 8px;      }            .tg-df-top-bar {        width: 100%;      }            .tg-df-settings-dropdown {        position: fixed;        top: auto;        bottom: 0;        left: 0;        right: 0;        width: 100%;        border-radius: 20px 20px 0 0;        padding: 24px;        box-shadow: 0 -8px 32px rgba(0,0,0,0.15);        z-index: 1000;        border: none;        border-top: 1px solid var(--tg-df-border);      }            .tg-df-settings-dropdown-backdrop.active {        background: rgba(0,0,0,0.4);      }            .tg-df-search-wrapper {        box-shadow: 0 0 16px rgba(0,0,0,0.08);      }                  .tg-df-sort-wrapper.tg-df-price-range-wrapper {        flex: 0 0 auto;        min-width: max-content;        width: auto;      }            .tg-df-sort-select, .tg-df-filter-select {        width: 100%;        text-align: left;        padding: 10px 24px 10px 32px;        background-position: right 8px center;        text-overflow: ellipsis;        white-space: nowrap;        overflow: hidden;      }      .tg-df-sort-icon {        left: 10px;      }      .tg-df-grid:not(.layout-grid):not(.layout-row),      .tg-df-grid.layout-row {        grid-template-columns: 1fr;        gap: 16px;      }            .tg-df-grid.tg-df-grid-auto {        padding-top: 24px;      }      .tg-df-grid.tg-df-grid-auto .tg-df-card,      .tg-df-grid.layout-row .tg-df-card {        flex-direction: row;        align-items: stretch;        height: auto;        box-shadow: none; /* simple line on mobile if preferred, or keep */        border-bottom: 1px solid var(--tg-df-border);      }      .tg-df-grid.tg-df-grid-auto .tg-df-card:hover,      .tg-df-grid.layout-row .tg-df-card:hover {        box-shadow: none;      }      .tg-df-grid.tg-df-grid-auto .tg-df-card-image-box,      .tg-df-grid.layout-row .tg-df-card-image-box {        width: 120px;        min-width: 120px;        aspect-ratio: 3/4;        border-right: none;        padding: 12px;      }      .tg-df-grid.tg-df-grid-auto .tg-df-card-body,      .tg-df-grid.layout-row .tg-df-card-body {        padding: 12px;        justify-content: space-between;      }      .tg-df-grid.tg-df-grid-auto .tg-df-card-title,      .tg-df-grid.layout-row .tg-df-card-title {        font-size: 14px;        margin-bottom: 12px;      }      /* Single column mobile grid override */      .tg-df-grid.layout-grid {        grid-template-columns: 1fr;        gap: 16px;      }      .tg-df-grid.layout-grid .tg-df-card-image-box {        padding: 12px;      }      .tg-df-grid.layout-grid .tg-df-card-body {        padding: 10px;      }      .tg-df-grid.layout-grid .tg-df-card-title {        font-size: 13px;        margin-bottom: 8px;      }      .tg-df-grid.layout-grid .tg-df-card-price {        font-size: 14px;      }            .tg-df-card-footer {        flex-direction: column;        align-items: stretch;        gap: 0;        width: 100%;        min-width: 0;      }      .tg-df-card-merchant-pill {        margin-bottom: 4px;      }      .tg-df-card-price-group {        flex: 1 1 auto;        margin-bottom: 8px;      }      .tg-df-card-price {        font-size: 16px;      }      .tg-df-card-msrp {        display: block;       }      .tg-df-grid.layout-row .tg-df-card-cta,      .tg-df-container .tg-df-card-cta {        width: 100%;        max-width: none;        min-width: 0;        box-sizing: border-box;        padding: 8px 16px;        font-size: 12px;        flex: 0 0 auto;        text-align: center;        white-space: normal;        line-height: 1.2;      }    }    .tg-df-container.is-carousel {      min-height: 760px;      background-color: #E7F0FF;      padding: 0 0 24px 0;      border-radius: 24px;      width: 100vw;      max-width: 1200px;      position: relative;      left: 50%;      transform: translateX(-50%);    }    .tg-df-container.is-carousel.hide-header-details {      min-height: 480px;    }    /*       7. Carousel View Mode    */    .tg-df-container .tg-df-carousel-host {      /* Layout is now handled by container wrapper */    }    .tg-df-container .tg-df-carousel-eyebrow {      color: #1F69FF;      font-weight: 700;      font-size: 14px;      text-transform: uppercase;      letter-spacing: 1px;      padding: 24px 16px 0 16px;      display: none;    }    .tg-df-container .tg-df-carousel-query-title {      color: #011535;      font-size: 28px;      font-weight: 600;      padding: 0 16px 24px 16px;      line-height: 1.2;      display: none;    }    .tg-df-container .tg-df-carousel-blue-box {      background-color: transparent;      border-radius: 0;      padding: 24px 24px 0 24px;      margin: 0;      color: #1F69FF;          position: relative;      overflow: hidden;    }    .tg-df-container .tg-df-carousel-bg-circle-1 {      display: none;    }    .tg-df-container .tg-df-carousel-bg-circle-2 {      display: none;    }    .tg-df-container .tg-df-carousel-bg-circle-3 {      display: none;    }    .tg-df-container .tg-df-carousel-box-content {      position: relative;      z-index: 10;    }    .tg-df-container .tg-df-carousel-box-eyebrow {      background-color: transparent;      color: #1F69FF;      font-weight: 700;      font-size: 14px;      text-transform: uppercase;      letter-spacing: 1px;      display: inline-block;      padding: 0;      border-radius: 0;    }    .tg-df-container .tg-df-carousel-box-title {      font-size: 28px;      font-weight: 600;      line-height: 1.2;      margin-top: 8px;      color: #1e293b;    }    .tg-df-container .tg-df-countdown-wrapper {      position: absolute;      top: 0;      right: 0;      display: flex;      flex-direction: column;      align-items: flex-end;      gap: 12px;      transform: scale(0.67);      transform-origin: top right;    }    .tg-df-container .tg-df-countdown-title {      font-size: 14px;      font-weight: 600;      color: #011535;      margin: 0;    }    .tg-df-container .tg-df-countdown-blocks {      display: flex;      gap: 16px;    }    .tg-df-container .tg-df-countdown-item {      display: flex;      flex-direction: column;      align-items: center;      gap: 4px;    }    .tg-df-container .tg-df-countdown-box {      width: 59px;      height: 59px;      background: #03FE9E;      border-radius: 15px;      display: flex;      align-items: center;      justify-content: center;    }    .tg-df-container .tg-df-countdown-num {      font-family: 'Inter', sans-serif;      font-weight: 700;      font-size: 20px;      line-height: normal;      color: #011535;    }    .tg-df-container .tg-df-countdown-label {      font-family: 'Inter', sans-serif;      font-weight: 500;      font-size: 16px;      line-height: normal;      color: #1e293b;      text-transform: uppercase;    }    .tg-df-container .tg-df-carousel-box-subtitle {      font-size: 16px;      margin-top: 8px;      font-weight: 300;      color: #1e293b;      line-height: 24px;    }    .tg-df-container .tg-df-carousel-roundels-wrapper {      position: relative;      margin-top: 24px;      margin-left: -24px;      margin-right: -24px;    }    .tg-df-container .tg-df-carousel-roundels {      display: flex;      gap: 16px;      overflow-x: auto;            scrollbar-width: none;      padding-top: 12px;      padding-bottom: 24px;      padding-left: 24px;      padding-right: 24px;      margin-left: 0;      margin-right: 0;    }        .tg-df-container .tg-df-carousel-scroll-left,    .tg-df-container .tg-df-carousel-scroll-right {      position: absolute;      top: 50%;      transform: translateY(-50%);      height: 36px;      width: 36px;      display: flex;      align-items: center;      justify-content: center;      border-radius: 50%;      background-color: #ffffff;      border: 1px solid #e2e8f0;      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);      color: #1F69FF;      cursor: pointer;      transition: all 0.2s;      margin-top: -4px;      z-index: 20;    }    .tg-df-container .tg-df-carousel-scroll-left { left: 8px; }    .tg-df-container .tg-df-carousel-scroll-right { right: 8px; }    .tg-df-carousel-filters-outer .tg-df-carousel-scroll-left { left: 0px; }    .tg-df-carousel-filters-outer .tg-df-carousel-scroll-right { right: 0px; }    .tg-df-carousel-filters-outer { margin-left: -24px; margin-right: -24px; padding-left: 24px; padding-right: 24px; }    .tg-df-grid-wrapper { position: relative; }    @container tg-df (max-width: 599px) { .tg-df-carousel-filters-outer { margin-left: -16px; margin-right: -16px; padding-left: 16px; padding-right: 16px; } }        .tg-df-container .tg-df-carousel-scroll-left:hover,    .tg-df-container .tg-df-carousel-scroll-right:hover {      background-color: rgba(255, 255, 255, 0.6);    }    .tg-df-container .tg-df-carousel-roundels::-webkit-scrollbar {      display: none;    }    .tg-df-container .tg-df-roundel {      display: flex;      flex-direction: column;      align-items: center;      gap: 8px;      cursor: pointer;      min-width: 120px;      flex-shrink: 0;    }    .tg-df-container .tg-df-roundel-img-box {      width: 120px;      height: 120px;      border-radius: 50%;      background: white;      display: flex;      align-items: center;      justify-content: center;      overflow: hidden;      box-shadow: 0px 3px 14px 0px rgba(30, 41, 59, 0.08);      transition: box-shadow 0.2s;    }    .tg-df-container .tg-df-roundel:hover .tg-df-roundel-img-box {      box-shadow: 0 0 0 2px #E7F0FF, 0 0 0 4px #1F69FF;    }    .tg-df-container .tg-df-roundel.active .tg-df-roundel-img-box {      box-shadow: 0 0 0 2px #E7F0FF, 0 0 0 4px #1F69FF;    }    .tg-df-container .tg-df-roundel:hover .tg-df-roundel-img-box img {      transform: scale(1.08);    }    .tg-df-container .tg-df-roundel-img-box img {      width: 100%;      height: 100%;      object-fit: contain;      padding: 10px;      box-sizing: border-box;      transition: transform 0.3s ease;    }    .tg-df-container .tg-df-roundel-label {      font-size: 13px;      font-weight: 400;      color: #1e293b;      text-align: center;    }    .tg-df-container .tg-df-carousel-filters-label {      font-size: 16px;      font-weight: 400;      color: #1e293b;      white-space: nowrap;      margin-right: 4px;    }    .tg-df-container .tg-df-carousel-filters-wrap {      display: flex;      align-items: center;      flex-wrap: nowrap;      gap: 8px;      margin-top: 8px;      overflow-x: auto;      scrollbar-width: none;      -webkit-overflow-scrolling: touch;      padding-bottom: 8px;      margin-left: -24px;      margin-right: -24px;      padding-left: 24px;      padding-right: 24px;    }    .tg-df-container .tg-df-carousel-filters-wrap::-webkit-scrollbar {      display: none;    }        .tg-df-container .tg-df-carousel-filter-btn img,    .tg-df-container .tg-df-carousel-filter-btn picture {      height: 20px;      width: 20px;      object-fit: contain;      object-position: center;      display: inline-flex;      align-items: center;      justify-content: center;      margin-right: 6px;    }    .tg-df-container .tg-df-carousel-filter-btn picture img {      margin-right: 0;      height: 100%;      width: 100%;    }    .tg-df-container .tg-df-carousel-filter-btn img.active-img,    .tg-df-container .tg-df-carousel-filter-btn picture:has(.active-img) {      display: none;    }    .tg-df-container .tg-df-carousel-filter-btn:hover img.inactive-img,    .tg-df-container .tg-df-carousel-filter-btn.active img.inactive-img,    .tg-df-container .tg-df-carousel-filter-btn:hover picture:has(.inactive-img),    .tg-df-container .tg-df-carousel-filter-btn.active picture:has(.inactive-img) {      display: none;    }    .tg-df-container .tg-df-carousel-filter-btn:hover img.active-img,    .tg-df-container .tg-df-carousel-filter-btn.active img.active-img,    .tg-df-container .tg-df-carousel-filter-btn:hover picture:has(.active-img),    .tg-df-container .tg-df-carousel-filter-btn.active picture:has(.active-img) {      display: inline-flex;    }    .tg-df-container .tg-df-carousel-filter-btn {      background: #ffffff;      border: 2px solid #1e293b;      color: #1e293b;      border-radius: 24px;      padding: 6px 16px;      font-size: 14px;      font-weight: 600;      cursor: pointer;      transition: all 0.2s;      flex-shrink: 0;      white-space: nowrap;    }    .tg-df-container .tg-df-carousel-filter-btn svg {      margin-right: 6px;    }    .tg-df-container .tg-df-carousel-filter-btn {      display: inline-flex;      align-items: center;    }    .tg-df-container .tg-df-carousel-filter-btn:hover {      background: #1e293b;      color: white;      border-color: #1e293b;    }    .tg-df-container .tg-df-carousel-filter-btn.active {      background: #1e293b;      color: white;      border-color: #1e293b;    }        .tg-df-grid.carousel-compact {      display: flex;      flex-wrap: nowrap;      overflow-x: auto;      gap: 16px;      padding: 16px 24px;      align-items: stretch;      scrollbar-width: none;    }    .tg-df-grid.carousel-compact::-webkit-scrollbar {      display: none;    }    .tg-df-grid.carousel-compact .tg-df-card {      flex: 0 0 auto;      width: 200px;      min-height: auto;      height: auto;      display: flex;      flex-direction: column;      border-radius: 15px;      border: none;      box-shadow: 0 0 16px rgba(0,0,0,0.08);      overflow: visible;    }    .tg-df-grid.carousel-compact .tg-df-card-image-box {      padding: 12px;      background-color: transparent;      border-radius: 15px 15px 0 0;      height: 130px;    }    .tg-df-grid.carousel-compact .tg-df-card-image {      mix-blend-mode: normal;    }    .tg-df-grid.carousel-compact .tg-df-card-discount-badge {      border-radius: 0;      top: 0px;      left: 0px;      padding: 4px 8px;      font-size: 11px;    }    .tg-df-grid.carousel-compact .tg-df-card-body {      padding: 8px 12px 12px 12px;    }    .tg-df-grid.carousel-compact .tg-df-card-title {      font-size: 14px;      font-weight: 400;      margin-bottom: 8px;      color: #011535;    }    .tg-df-grid.carousel-compact .tg-df-card-body:not(:has(.tg-df-card-stars)):not(:has(.tg-df-tag-prime)):not(:has(.tg-df-coupon-wrapper:not([style*="none"]))) > .tg-df-card-title,    .tg-df-grid.carousel-compact .tg-df-card-body:not(:has(.tg-df-card-stars)):has(> .tg-df-card-title:first-child) > .tg-df-card-title {    }    .tg-df-grid.carousel-compact .tg-df-card-cta {      border-radius: 5px;      padding: 8px 10px;      margin-top: 4px;      background-color: #1F69FF;    }    .tg-df-grid.carousel-compact .tg-df-card-price-group {      margin-bottom: 2px;    }    .tg-df-grid.carousel-compact .tg-df-card-merchant-pill {      margin-bottom: 2px;    }    @container tg-df (max-width: 599px) {      .tg-df-container .tg-df-carousel-blue-box-title {        font-size: 24px;      }      .tg-df-container .tg-df-countdown-title {        display: none;      }      .tg-df-container .tg-df-countdown-wrapper {        position: absolute;        top: 0;        right: 0;        align-items: flex-end;        transform: scale(0.40);        transform-origin: top right;      }      .tg-df-container .tg-df-roundel {        min-width: 88px;      }      .tg-df-container .tg-df-roundel-img-box {        width: 88px;        height: 88px;      }    }    /* REPLICA BLOCK STYLES */    .tg-df-grid.layout-replica-2 { grid-template-columns: repeat(2, 1fr) !important; gap: 20px; }    .tg-df-grid.layout-replica-1 { grid-template-columns: 1fr !important; gap: 20px; }        .tg-df-container .hawk-deal-widget-container { border-bottom: 1px solid #e5e7eb; display: flex; flex-direction: column; margin: 0; padding: 20px 0; box-sizing: border-box; font-family: inherit; }    .tg-df-container .hawk-deal-widget-wrap { display: flex; flex-direction: row; align-items: flex-start; width: 100%; gap: 24px; }    .tg-df-container .hawk-deal-widget-image-container { display: flex; flex-shrink: 0; justify-content: center; width: 160px; height: 160px; align-items: center; background: white; margin-bottom: 0px; }    .tg-df-container .hawk-deal-widget-title-product-title { color: #111827; font-size: 18px; font-weight: 700; line-height: 1.4; display: inline; }    .tg-df-container .hawk-deal-widget-title-price { font-size: 18px; font-weight: 700; line-height: 1.4; white-space: nowrap; color: #2563eb; }    .tg-df-container .hawk-deal-widget-title-price-now { font-weight: 700; }    .tg-df-container .hawk-deal-widget-title-retailer-price:hover { text-decoration: underline; }    .tg-df-container .hawk-deal-widget-title-retailer { font-size: 18px; font-weight: 700; line-height: 1.4; color: #2563eb; }    .tg-df-container .hawk-deal-widget-title-was-price { color: #dc2626; font-size: 16px; font-weight: 500; line-height: 1.4; text-decoration: line-through; white-space: nowrap; margin-left: 8px; margin-right: 8px; }    .tg-df-container .hawk-deal-widget-text-body-container { position: relative; width: 100%; box-sizing: border-box; }    .tg-df-container .hawk-deal-widget-text-body-main { font-size: 16px; width: 100%; margin-bottom: 12px; }    .tg-df-container .hawk-deal-widget-text-body-description { display: block; font-size: 15px; margin-top: 12px; color: #4b5563; line-height: 1.6; }    .tg-df-container .hawk-deal-widget-text-body-description p { margin: 0; line-height: 1.6; }    .tg-df-container .hawk-deal-widget-text-cta-container { display: flex; flex-direction: column; gap: 12px; width: 100%; flex: 1; min-width: 0; box-sizing: border-box; }    .tg-df-container .hawk-deal-widget-footer { display: flex; justify-content: flex-end; width: 100%; margin-top: auto; }    .tg-df-container .hawk-deal-widget-button-wrapper { display: flex; flex-direction: column; align-items: flex-end; justify-content: flex-end; width: 100%; }    .tg-df-container .hawk-deal-widget-preferred-partner-wrapper { display: flex; flex-direction: row; }        @container tg-df (min-width: 600px) {      .tg-df-mobile-only { display: none !important; }    }    @container tg-df (max-width: 599px) {      .tg-df-desktop-only { display: none !important; }      .tg-df-grid.layout-replica-2 { grid-template-columns: 1fr !important; }      .tg-df-grid.savings-squad-cards { grid-template-columns: 1fr !important; display: flex; flex-direction: column; }    }    .tg-df-grid.savings-squad-cards .tg-df-card-title {      -webkit-line-clamp: unset !important;      display: block !important;      overflow: visible !important;    }    @container tg-df (max-width: 500px) {      .tg-df-container .hawk-deal-widget-wrap { display: block; }      .tg-df-container .hawk-deal-widget-image-container { display: block; float: left; margin: 0 16px 8px 0; width: 120px; max-width: 120px; height: auto; align-items: normal; justify-content: normal; }      .tg-df-container .hawk-deal-widget-text-cta-container { display: block; text-align: left; }      .tg-df-container .hawk-deal-widget-footer { display: block; margin-top: 16px; clear: both; width: 100%; }      .tg-df-container .hawk-deal-widget-button-wrapper { display: block; width: 100%; }      .tg-df-container .hawk-deal-widget-button-wrapper .hawk-deal-widget-preferred-partner-wrapper { display: block; width: 100%; }      .tg-df-container .hawk-affiliate-link-deal-button { box-sizing: border-box !important; display: flex !important; max-width: none !important; width: 100% !important; margin: 0 !important; }    }        .tg-df-container .hawk-affiliate-link-deal-button {       align-items: center; background-color: #1f69ff; box-sizing: border-box; color: #ffffff !important; display: flex; font-size: 14px; font-weight: 700; justify-content: center; letter-spacing: 0.5px; line-height: 1; min-width: 160px; padding: 14px 24px; text-align: center; text-decoration: none; text-transform: uppercase; width: 100%; word-break: normal; border-radius: 4px; border: 0; transition: background-color 0.2s;     }    .tg-df-container .hawk-affiliate-link-deal-button:hover { background-color: #0056e0; text-decoration: none; }    .tg-df-container .hawk-lazy-image-deal-widget { display: block; height: auto; margin: auto; max-height: 160px; max-width: 100%; mix-blend-mode: multiply; object-fit: contain; }    .tg-df-container .hawk-deal-widget-text-cta-container a { color: #2563eb; text-decoration: none; display: inline; }    .tg-df-container .hawk-deal-widget-text-cta-container a:hover { text-decoration: underline; }    .tg-df-container .hawk-deal-widget-text-cta-container a:has(.hawk-deal-widget-title-product-title) { color: #111827; }    .tg-df-container .hawk-deal-widget-text-cta-container a:hover .hawk-deal-widget-title-product-title,    .tg-df-container .hawk-deal-widget-text-cta-container a:hover .hawk-deal-widget-title-retailer-price { text-decoration: underline; }    .tg-df-savings-squad-header { margin-bottom: 24px; text-align: center; display: none; }    .tg-df-banner-img-desktop { display: block; width: 100%; height: auto; margin-bottom: 32px; }    .tg-df-banner-img-mobile { display: none; width: 100%; height: auto; margin-bottom: 32px; }    @container tg-df (max-width: 600px) {      .tg-df-banner-img-desktop { display: none; }      .tg-df-banner-img-mobile { display: block; }    }    .tg-df-header-title { font-size: 28px; font-weight: 700; color: var(--tg-df-text); margin: 32px 0 12px 0; line-height: 1.3; }    .tg-df-header-subtitle { font-size: 16px; color: var(--tg-df-text-muted); margin: 0 0 32px 0; line-height: 1.5; }  \x3C/style>  \x3C!-- Widget Container --\x3E  \x3Cdiv class="tg-df-container" id="signal-deals-finder-root">    \x3Cdiv class="tg-df-savings-squad-header" id="tg-df-savings-squad-header">      \x3Cpicture>        \x3Cimg src="https://cdn.mos.cms.futurecdn.net/flexiimages/xkh2og7m3d1778189998.png" alt="Deals Banner" class="tg-df-banner-img-desktop" />        \x3Cimg src="https://cdn.mos.cms.futurecdn.net/flexiimages/gmak6rtdf41778245089.png" alt="Deals Banner Mobile" class="tg-df-banner-img-mobile" />      \x3C/picture>      \x3Cdiv class="tg-df-header-text">        \x3Ch2 class="tg-df-header-title" id="tg-df-header-title">Editor's Choice Deals\x3C/h2>        \x3Cp class="tg-df-header-subtitle" id="tg-df-header-subtitle">Discover the best discounts currently available, curated daily by the Tom's Guide Savings Squad.\x3C/p>      \x3C/div>    \x3C/div>    \x3C!-- Editor Floating Bar --\x3E    \x3Cdiv class="tg-df-editor-bar" id="tg-df-editor-bar" style="display:none;">      \x3Cdiv class="tg-df-editor-bar-text" style="display: flex; align-items: center;">        \x3Cspan id="tg-df-selected-count">0\x3C/span>\x26nbsp;Deals Selected        \x3Cbutton class="tg-df-editor-clear-btn" id="tg-df-editor-clear" type="button" style="margin-left: 12px; font-size: 13px; color: #9ca3af; background: none; border: none; cursor: pointer; text-decoration: underline;">Clear All\x3C/button>      \x3C/div>      \x3Cbutton class="tg-df-editor-copy-btn" id="tg-df-editor-copy" type="button">        \x3Csvg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="margin-right: 6px;">\x3Crect x="9" y="9" width="13" height="13" rx="2" ry="2">\x3C/rect>\x3Cpath d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1">\x3C/path>\x3C/svg>        Copy to CMS      \x3C/button>    \x3C/div>    \x3Cdiv class="tg-df-carousel-host" id="tg-df-carousel-host" style="display: none;">      \x3Cdiv class="tg-df-carousel-eyebrow">DEAL FINDER\x3C/div>      \x3Cdiv class="tg-df-carousel-query-title" id="tg-df-carousel-title-label">Best Deals\x3C/div>            \x3Cdiv class="tg-df-carousel-blue-box">        \x3Cdiv class="tg-df-carousel-bg-circle-1" aria-hidden="true">\x26nbsp;\x3C/div>        \x3Cdiv class="tg-df-carousel-bg-circle-2" aria-hidden="true">\x26nbsp;\x3C/div>        \x3Cdiv class="tg-df-carousel-bg-circle-3" aria-hidden="true">\x26nbsp;\x3C/div>        \x3Cdiv class="tg-df-carousel-box-content">          \x3Cdiv class="tg-df-countdown-wrapper" id="tg-df-countdown-wrapper" style="display:none;">            \x3Cdiv class="tg-df-countdown-title" id="tg-df-countdown-title">Prime Day starts in\x3C/div>            \x3Cdiv class="tg-df-countdown-blocks">              \x3Cdiv class="tg-df-countdown-item">\x3Cdiv class="tg-df-countdown-box">\x3Cdiv class="tg-df-countdown-num" id="tg-df-cd-days">0\x3C/div>\x3C/div>\x3Cdiv class="tg-df-countdown-label">DAYS\x3C/div>\x3C/div>              \x3Cdiv class="tg-df-countdown-item">\x3Cdiv class="tg-df-countdown-box">\x3Cdiv class="tg-df-countdown-num" id="tg-df-cd-hrs">0\x3C/div>\x3C/div>\x3Cdiv class="tg-df-countdown-label">HRS\x3C/div>\x3C/div>              \x3Cdiv class="tg-df-countdown-item">\x3Cdiv class="tg-df-countdown-box">\x3Cdiv class="tg-df-countdown-num" id="tg-df-cd-min">0\x3C/div>\x3C/div>\x3Cdiv class="tg-df-countdown-label">MIN\x3C/div>\x3C/div>              \x3Cdiv class="tg-df-countdown-item">\x3Cdiv class="tg-df-countdown-box">\x3Cdiv class="tg-df-countdown-num" id="tg-df-cd-sec">0\x3C/div>\x3C/div>\x3Cdiv class="tg-df-countdown-label">SEC\x3C/div>\x3C/div>            \x3C/div>          \x3C/div>          \x3Cdiv class="tg-df-carousel-box-eyebrow">DEAL FINDER\x3C/div>          \x3Cdiv class="tg-df-carousel-box-title">Find Deals Fast\x3C/div>          \x3Cdiv class="tg-df-carousel-box-subtitle">The latest deals from the biggest retailers, all in one place\x3C/div>                    \x3Cdiv class="tg-df-carousel-roundels-wrapper">          \x3Cbutton class="tg-df-carousel-scroll-left" type="button" aria-label="Scroll left" style="display:none;" onclick="this.parentElement.querySelector('.tg-df-carousel-roundels').scrollBy({left: -200, behavior: 'smooth'})">\x3Csvg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">\x3Cpath d="m15 18-6-6 6-6">\x3C/path>\x3C/svg>\x3C/button>          \x3Cdiv class="tg-df-carousel-roundels">                      \x3Cdiv class="tg-df-roundel tg-df-carousel-cat" data-query="Televisions" data-pr="all">              \x3Cdiv class="tg-df-roundel-img-box">                 \x3Cimg src="https://cdn.mos.cms.futurecdn.net/wcMxTsHgqu3roMbAx7RLnT-132-100.png" alt="TVs" />              \x3C/div>              \x3Cspan class="tg-df-roundel-label">TVs\x3C/span>            \x3C/div>                      \x3Cdiv class="tg-df-roundel tg-df-carousel-cat" data-query="Phones" data-pr="over50">              \x3Cdiv class="tg-df-roundel-img-box">                 \x3Cimg src="https://cdn.mos.cms.futurecdn.net/G3KGaRGzj24F6PUsw4bWpT-132-100.png" alt="Phones" />              \x3C/div>              \x3Cspan class="tg-df-roundel-label">Phones\x3C/span>            \x3C/div>                      \x3Cdiv class="tg-df-roundel tg-df-carousel-cat" data-query="Computing" data-pr="all">              \x3Cdiv class="tg-df-roundel-img-box">                 \x3Cimg src="https://cdn.mos.cms.futurecdn.net/znNvsLzx8NEgNkD9HSFSnT-132-100.png" alt="Computing" />              \x3C/div>              \x3Cspan class="tg-df-roundel-label">Computing\x3C/span>            \x3C/div>                      \x3Cdiv class="tg-df-roundel tg-df-carousel-cat" data-query="Gaming" data-pr="all">              \x3Cdiv class="tg-df-roundel-img-box">                 \x3Cimg src="https://cdn.mos.cms.futurecdn.net/Pgew8yaRQeZFHqHjTzvBnT-132-100.png" alt="Gaming" />              \x3C/div>              \x3Cspan class="tg-df-roundel-label">Gaming\x3C/span>            \x3C/div>                      \x3Cdiv class="tg-df-roundel tg-df-carousel-cat" data-query="Mattresses" data-pr="over500">              \x3Cdiv class="tg-df-roundel-img-box">                 \x3Cimg src="https://cdn.mos.cms.futurecdn.net/cW7xsaLyesxkHFVSiC4kmT-132-100.png" alt="Mattresses" />              \x3C/div>              \x3Cspan class="tg-df-roundel-label">Mattresses\x3C/span>            \x3C/div>                      \x3Cdiv class="tg-df-roundel tg-df-carousel-cat" data-query="Audio" data-pr="over30">              \x3Cdiv class="tg-df-roundel-img-box">                 \x3Cimg src="https://cdn.mos.cms.futurecdn.net/pCvBVHuhaQVjKt3VgCjbqT-132-100.png" alt="Audio" />              \x3C/div>              \x3Cspan class="tg-df-roundel-label">Audio\x3C/span>            \x3C/div>                  \x3C/div>        \x3Cbutton class="tg-df-carousel-scroll-right" type="button" aria-label="Scroll right" onclick="this.parentElement.querySelector('.tg-df-carousel-roundels').scrollBy({left: 200, behavior: 'smooth'})">\x3Csvg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">\x3Cpath d="m9 18 6-6-6-6">\x3C/path>\x3C/svg>\x3C/button>        \x3C/div>        \x3C/div>        \x3Cdiv class="tg-df-carousel-filters-outer" style="position: relative;">          \x3Cbutton class="tg-df-carousel-scroll-left" type="button" aria-label="Scroll left" style="display:none;" onclick="this.parentElement.querySelector('.tg-df-carousel-filters-wrap').scrollBy({left: -200, behavior: 'smooth'})">\x3Csvg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">\x3Cpath d="m15 18-6-6 6-6">\x3C/path>\x3C/svg>\x3C/button>          \x3Cdiv class="tg-df-carousel-filters-wrap">                      \x3Cbutton class="tg-df-carousel-filter-btn" data-d="0">All\x3C/button>                      \x3Cbutton class="tg-df-carousel-filter-btn" data-ot="amazon_lightning">              \x3Cimg src="https://cdn.mos.cms.futurecdn.net/HqAui7w97ft2NPqBtQ5r38-600-100.png" class="inactive-img" alt="" />\x3Cimg src="https://cdn.mos.cms.futurecdn.net/yWPQ5yyQRhUwVKzGwYbh38-600-100.png" class="active-img" alt="" /> Lightning deals\x3C/button>            \x3Cbutton class="tg-df-carousel-filter-btn" data-ot="amazon_prime">              \x3Cimg src="https://cdn.mos.cms.futurecdn.net/fwoVXvL79turN3Ph535m38-600-100.png" class="inactive-img" alt="" />\x3Cimg src="https://cdn.mos.cms.futurecdn.net/u75QjVpt3w2EsMimJiRo38-600-100.png" class="active-img" alt="" /> Prime deals\x3C/button>            \x3Cbutton class="tg-df-carousel-filter-btn" data-d="10">              \x3Csvg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-tag">\x3Cpath d="M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z">\x3C/path>\x3Ccircle cx="7.5" cy="7.5" r=".5" fill="currentColor">\x3C/circle>\x3C/svg>            Min 10% off\x3C/button>                      \x3Cbutton class="tg-df-carousel-filter-btn" data-d="15">              \x3Csvg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-tag">\x3Cpath d="M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z">\x3C/path>\x3Ccircle cx="7.5" cy="7.5" r=".5" fill="currentColor">\x3C/circle>\x3C/svg>            Min 15% off\x3C/button>                      \x3Cbutton class="tg-df-carousel-filter-btn" data-d="25">              \x3Csvg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-tag">\x3Cpath d="M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z">\x3C/path>\x3Ccircle cx="7.5" cy="7.5" r=".5" fill="currentColor">\x3C/circle>\x3C/svg>            Min 25% off\x3C/button>                      \x3Cbutton class="tg-df-carousel-filter-btn" data-pr="under50">              \x3Csvg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-badge-dollar-sign">\x3Cpath d="M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z">\x3C/path>\x3Cpath d="M16 8h-6a2 2 0 1 0 0 4h4a2 2 0 1 1 0 4H8">\x3C/path>\x3Cpath d="M12 18V6">\x3C/path>\x3C/svg>            Under $50\x3C/button>        \x3C/div>        \x3Cbutton class="tg-df-carousel-scroll-right" type="button" aria-label="Scroll right" style="display:none;" onclick="this.parentElement.querySelector('.tg-df-carousel-filters-wrap').scrollBy({left: 200, behavior: 'smooth'})">\x3Csvg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">\x3Cpath d="m9 18 6-6-6-6">\x3C/path>\x3C/svg>\x3C/button>      \x3C/div>    \x3C/div>    \x3C/div>      \x3C!-- Search & Filter Controls --\x3E      \x3Cdiv class="tg-df-top-bar" id="tg-df-top-bar" style="position: relative; z-index: 100; margin: 0 auto 20px;">        \x3Cdiv class="tg-df-search-wrapper">          \x3Cinput type="text" class="tg-df-search-input" placeholder="Search for deals, products, or brands...">          \x3Cbutton type="button" class="tg-df-search-btn" aria-label="Search">              \x3Csvg class="tg-df-search-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">                \x3Cpath d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/>              \x3C/svg>          \x3C/button>          \x3Cdiv class="tg-df-autocomplete-dropdown" id="tg-df-autocomplete">\x3C/div>        \x3C/div>      \x3C/div>    \x3Cdiv class="tg-df-controls" id="tg-df-controls" style="display:flex;">              \x3Cdiv class="tg-df-filters-container" style="position: relative; width: 100%; max-width: 800px; margin: 0 auto;">          \x3Cbutton class="tg-df-scroll-btn left" style="display: none;" onclick="this.parentElement.querySelector('.tg-df-filters').scrollBy({left: -200, behavior: 'smooth'})">            \x3Csvg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">\x3Cpath d="M15 18l-6-6 6-6"/>\x3C/svg>          \x3C/button>          \x3Cbutton class="tg-df-scroll-btn right" style="display: none;" onclick="this.parentElement.querySelector('.tg-df-filters').scrollBy({left: 200, behavior: 'smooth'})">            \x3Csvg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">\x3Cpath d="M9 18l6-6-6-6"/>\x3C/svg>          \x3C/button>          \x3Cdiv class="tg-df-filters">          \x3Cdiv class="tg-df-sort-wrapper" id="tg-df-category-filter-wrapper" style="display: none;">          \x3Csvg class="tg-df-sort-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">            \x3Cpath d="M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"/>          \x3C/svg>          \x3Cselect class="tg-df-filter-select" id="tg-df-category-filter" aria-label="Category">            \x3Coption value="all">All Categories\x3C/option>          \x3C/select>        \x3C/div>        \x3Cdiv class="tg-df-sort-wrapper tg-df-multiselect-container" id="tg-df-brand-filter-wrapper" style="display:none;">          \x3Csvg class="tg-df-sort-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">            \x3Cpath d="M4.25 5.61C6.27 8.2 10 13 10 13v6c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-6s3.72-4.8 5.74-7.39A.998.998 0 0 0 18.95 4H5.04c-.83 0-1.3.95-.79 1.61z"/>          \x3C/svg>          \x3Cdiv class="tg-df-filter-select tg-df-multiselect-trigger" id="tg-df-brand-trigger" tabindex="0">            Any Brand          \x3C/div>          \x3Cdiv class="tg-df-multiselect-dropdown" id="tg-df-brand-dropdown">            \x3C!-- Populated via script --\x3E          \x3C/div>        \x3C/div>        \x3Cdiv class="tg-df-sort-wrapper tg-df-price-range-wrapper" id="tg-df-custom-price-wrapper" style="display: flex; align-items:center; justify-content:center; padding: 10px 20px; gap: 8px; border: 1px solid var(--tg-df-border); border-radius: 100px; background-color: var(--tg-df-bg);">          \x3Cspan style="font-size:14px; font-weight:500; color:var(--tg-df-text-primary);">Price\x3C/span>          \x3Cinput type="number" class="tg-df-price-input" id="tg-df-custom-price-min" placeholder="Min" style="width: 48px; background: transparent; border: none; color: var(--tg-df-text-primary); outline: none; font-size: 14px; text-align: center; padding: 0;">          \x3Cspan style="color:var(--tg-df-text-muted)">-\x3C/span>          \x3Cinput type="number" class="tg-df-price-input" id="tg-df-custom-price-max" placeholder="Max" style="width: 48px; background: transparent; border: none; color: var(--tg-df-text-primary); outline: none; font-size: 14px; text-align: center; padding: 0;">        \x3C/div>        \x3Cdiv class="tg-df-sort-wrapper" id="tg-df-legacy-price-wrapper">          \x3Csvg class="tg-df-sort-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">            \x3Cpath d="M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42zM5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7z"/>          \x3C/svg>          \x3Cselect class="tg-df-filter-select" id="tg-df-price-filter" aria-label="Filter Prices">            \x3Coption value="all">All Prices\x3C/option>            \x3Coption value="under50">Under $50\x3C/option>            \x3Coption value="50_100">$50 - $100\x3C/option>            \x3Coption value="100_200">$100 - $200\x3C/option>            \x3Coption value="200_500">$200 - $500\x3C/option>            \x3Coption value="over500">Over $500\x3C/option>          \x3C/select>        \x3C/div>        \x3Cdiv class="tg-df-sort-wrapper" id="tg-df-discount-filter-wrapper">          \x3Csvg class="tg-df-sort-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">            \x3Cpath d="M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42zM5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7z"/>          \x3C/svg>          \x3Cselect class="tg-df-filter-select" id="tg-df-discount-filter" aria-label="Discount Amount">            \x3Coption value="all">Any discount\x3C/option>            \x3Coption value="5">Min 5%\x3C/option>            \x3Coption value="10">Min 10%\x3C/option>            \x3Coption value="15">Min 15%\x3C/option>            \x3Coption value="20">Min 20%\x3C/option>            \x3Coption value="25">Min 25%\x3C/option>            \x3Coption value="30">Min 30%\x3C/option>            \x3Coption value="40">Min 40%\x3C/option>            \x3Coption value="50">Min 50%\x3C/option>            \x3Coption value="60">Min 60%\x3C/option>            \x3Coption value="70">Min 70%\x3C/option>          \x3C/select>          \x3C/div>        \x3C/div>        \x3C/div>      \x3C/div>    \x3C!-- Deals Grid Wrapper --\x3E    \x3Cdiv class="tg-df-grid-wrapper tg-df-carousel-cards-wrapper" id="tg-df-grid-wrapper">      \x3Cbutton class="tg-df-carousel-scroll-left" type="button" aria-label="Scroll left" style="display:none;" onclick="this.parentElement.querySelector('#tg-df-grid').scrollBy({left: -200, behavior: 'smooth'})">\x3Csvg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">\x3Cpath d="m15 18-6-6 6-6">\x3C/path>\x3C/svg>\x3C/button>      \x3Cdiv class="tg-df-grid" id="tg-df-grid">        \x3C!-- Content populated by JavaScript --\x3E      \x3C/div>      \x3Cbutton class="tg-df-carousel-scroll-right" type="button" aria-label="Scroll right" style="display:none;" onclick="this.parentElement.querySelector('#tg-df-grid').scrollBy({left: 200, behavior: 'smooth'})">\x3Csvg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">\x3Cpath d="m9 18 6-6-6-6">\x3C/path>\x3C/svg>\x3C/button>    \x3C/div>        \x3C!-- Vouchers Modal --\x3E    \x3Cdiv class="tg-df-modal-backdrop" id="tg-df-vouchers-modal">      \x3Cdiv class="tg-df-modal">        \x3Cdiv class="tg-df-modal-header">          \x3Ch3 class="tg-df-modal-title" id="tg-df-vouchers-title">Available Coupons & Deals\x3C/h3>          \x3Cbutton class="tg-df-modal-close" id="tg-df-vouchers-close">            \x3Csvg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">              \x3Cline x1="18" y1="6" x2="6" y2="18">\x3C/line>              \x3Cline x1="6" y1="6" x2="18" y2="18">\x3C/line>            \x3C/svg>          \x3C/button>        \x3C/div>        \x3Cdiv class="tg-df-modal-body" id="tg-df-vouchers-content">          \x3C!-- Vouchers injected here --\x3E        \x3C/div>      \x3C/div>    \x3C/div>  \x3C/div>`;      if (!template) {        template = document.createElement('template');        template.innerHTML = rawTemplate;      }      let shadowRoot = null;      if (hostContainer && template) {        hostContainer.setAttribute('data-initialized', 'true');        shadowRoot = hostContainer.attachShadow({ mode: 'open' });        shadowRoot.appendChild(template.content.cloneNode(true));      }      class DealsFinderWidget {        constructor(config) {          this.rootNode = config.rootNode || document;          this.hostContainer = config.hostContainer || null;          this.rootId = config.rootId || 'signal-deals-finder-root';          this.root = this.rootNode.querySelector('#' + this.rootId);          if (!this.root) return;          this.widgetId = (window.crypto && window.crypto.randomUUID) ? window.crypto.randomUUID() : 'widget-' + Date.now() + '-' + Math.random().toString(36).slice(2);          this.grid = this.root.querySelector('#tg-df-grid');          this.tagsContainer = this.root.querySelector('#tg-df-tags-container');          this.categoryFilter = this.root.querySelector('#tg-df-category-filter');          this.categoryFilterWrapper = this.root.querySelector('#tg-df-category-filter-wrapper');          this.searchInput = this.root.querySelector('.tg-df-search-input');          this.autocompleteDropdown = this.root.querySelector('#tg-df-autocomplete');          this.sortSelect = this.root.querySelector('.tg-df-sort-select');          this.searchBtn = this.root.querySelector('.tg-df-search-btn');                    this.settingsToggle = this.root.querySelector('#tg-df-settings-toggle');          this.settingsPanel = this.root.querySelector('#tg-df-settings-panel');          this.settingsBackdrop = this.root.querySelector('#tg-df-settings-backdrop');          this.regionSelect = this.root.querySelector('#tg-df-region-select');          this.retailerSelect = this.root.querySelector('#tg-df-retailer-select');          this.offerTypeSelect = this.root.querySelector('#tg-df-offer-type-select');          this.viewModeSelect = this.root.querySelector('#tg-df-view-mode-select');          this.rowsSelect = this.root.querySelector('#tg-df-rows-select');          this.dealModeToggle = this.root.querySelector('#tg-df-deal-mode');          this.editorModeToggle = this.root.querySelector('#tg-df-editor-mode');          this.priceFilter = this.root.querySelector('#tg-df-price-filter');          this.discountFilter = this.root.querySelector('#tg-df-discount-filter');                    this.editorBar = this.root.querySelector('#tg-df-editor-bar');          this.editorSelectedCount = this.root.querySelector('#tg-df-selected-count');          this.editorCopyBtn = this.root.querySelector('#tg-df-editor-copy');          this.editorClearBtn = this.root.querySelector('#tg-df-editor-clear');                    this.apiUrl = 'https://search-api.fie.future.net.uk/widget.php';          this.deals = [];          this.displayLimit = 12;          this.airedaleArticles = null;          this.airedaleTags = [];          this.airedaleTagCounts = {};          this.activeDealTag = null;          this.selectedBrands = [];          this.currentQuery = '';          this.editorMode = this.hostContainer ? this.hostContainer.hasAttribute('data-editor-mode') : false;          this.viewModeOverride = this.hostContainer ? this.hostContainer.getAttribute('data-view-mode') : null;          this.selectedDeals = new Map();                    this.brandFilterWrapper = this.root.querySelector('#tg-df-brand-filter-wrapper');          this.brandTrigger = this.root.querySelector('#tg-df-brand-trigger');          this.brandDropdown = this.root.querySelector('#tg-df-brand-dropdown');                    this.customPriceWrapper = this.root.querySelector('#tg-df-custom-price-wrapper');          this.customPriceMin = this.root.querySelector('#tg-df-custom-price-min');          this.customPriceMax = this.root.querySelector('#tg-df-custom-price-max');          this.legacyPriceWrapper = this.root.querySelector('#tg-df-legacy-price-wrapper');          this.discountFilterWrapper = this.root.querySelector('#tg-df-discount-filter-wrapper');          this.initResizeObserver();          this.init();        }        getViewMode() {          console.log("DEBUG getViewMode -> override:", this.viewModeOverride, "editorMode:", this.editorMode);          if (this.viewModeOverride && (!this.editorMode || !this.viewModeSelect)) {            return this.viewModeOverride;          }          return (this.viewModeSelect && this.viewModeSelect.value) ? this.viewModeSelect.value : (this.viewModeOverride || 'auto');        }        applyLayoutMode() {          if (!this.grid) return;          const mode = this.getViewMode();          console.log("[DEBUG] applyLayoutMode CALLED! mode=", mode);          this.grid.classList.remove('layout-row', 'layout-grid', 'tg-df-grid-auto', 'carousel-compact', 'layout-replica-1', 'layout-replica-2');                    let searchSource = window.location.search;          if (this.hostContainer && this.hostContainer.hasAttribute('data-widget-config')) {            searchSource = this.hostContainer.getAttribute('data-widget-config');          } else if (typeof window !== 'undefined' && window.__WIDGET_CONFIG__) {            searchSource = window.__WIDGET_CONFIG__;          }          const params = new URLSearchParams(searchSource);          const showHeaderDetails = params.get('show_header_details') !== 'false';          const carouselHost = this.root.querySelector('#tg-df-carousel-host');          const controlsDiv = this.root.querySelector('#tg-df-controls');          const topBarDiv = this.root.querySelector('#tg-df-top-bar');          const headerElement = this.root.querySelector('#tg-df-savings-squad-header');          if (headerElement) {             headerElement.style.display = (mode === 'savings_squad' && showHeaderDetails) ? 'block' : 'none';          }          if (mode === 'carousel') {             this.grid.classList.add('carousel-compact');             if (carouselHost) carouselHost.style.display = 'block';             if (controlsDiv) controlsDiv.style.display = 'none';             if (topBarDiv) topBarDiv.style.display = 'none';             if (this.root.classList.contains('tg-df-container')) {               this.root.classList.add('is-carousel');             }          } else {             if (carouselHost) carouselHost.style.display = 'none';             if (controlsDiv) controlsDiv.style.display = 'flex';             if (topBarDiv) topBarDiv.style.display = 'block';             if (this.root.classList.contains('tg-df-container')) {               this.root.classList.remove('is-carousel');             }          }          if (mode === 'grid') {            this.grid.classList.add('layout-grid');          } else if (mode === 'row') {            this.grid.classList.add('layout-row');          } else if (mode === 'savings_squad') {            this.grid.classList.add('tg-df-grid-auto', 'savings-squad-cards');          } else if (mode !== 'carousel') {            this.grid.classList.add('tg-df-grid-auto');          }                    const settingsWrapper = this.root.querySelector('.tg-df-settings-wrapper');          if (settingsWrapper) {            settingsWrapper.style.display = mode === 'auto' ? 'none' : 'block';          }          if (this.customPriceWrapper) {             this.customPriceWrapper.style.display = mode === 'auto' ? 'flex' : 'none';          }          if (this.legacyPriceWrapper) {             this.legacyPriceWrapper.style.display = mode === 'auto' ? 'none' : 'flex';          }          if (this.discountFilterWrapper) {             this.discountFilterWrapper.style.display = mode === 'auto' ? 'none' : 'flex';          }        }        initResizeObserver() {          try {            if (window.parent === window) return;          } catch (e) {            // cross origin frame check threw          }          const emitHeight = () => {            try {              const height = document.documentElement.scrollHeight || document.body.scrollHeight;              const msg = { type: 'embed-size', height: height };              if (window.parent && window.parent !== window) {                window.parent.postMessage(msg, '*');                window.parent.postMessage(JSON.stringify({ ...msg, sentinel: 'amp' }), '*');              }            } catch (e) {}          };                    if (window.ResizeObserver) {            try {              const ro = new ResizeObserver(() => emitHeight());              ro.observe(document.body);              if (this.root) ro.observe(this.root);            } catch(e){ console.warn(e); }          }          window.addEventListener('resize', emitHeight);          setTimeout(emitHeight, 300);        }        initCountdown() {          this.cdWrapper = this.root.querySelector('#tg-df-countdown-wrapper');                    let searchSource = window.location.search;          if (this.hostContainer && this.hostContainer.hasAttribute('data-widget-config')) {            searchSource = this.hostContainer.getAttribute('data-widget-config');          } else if (typeof window !== 'undefined' && window.__WIDGET_CONFIG__) {            searchSource = window.__WIDGET_CONFIG__;          }          const params = new URLSearchParams(searchSource);          this.showCountdown = params.get('show_countdown') === 'true';          const showHeaderDetails = params.get('show_header_details') !== 'false';          const eyebrow = this.root.querySelector('.tg-df-carousel-box-eyebrow');          const title = this.root.querySelector('.tg-df-carousel-box-title');          const subtitle = this.root.querySelector('.tg-df-carousel-box-subtitle');          if (!showHeaderDetails) {            let containerElement = this.root.classList.contains('tg-df-container') ? this.root : this.root.querySelector('.tg-df-container');            if (containerElement) containerElement.classList.add('hide-header-details');            if (eyebrow) eyebrow.style.display = 'none';            if (title) title.style.display = 'none';            if (subtitle) subtitle.style.display = 'none';          }          if (!this.cdWrapper) return;          this.cdTitle = this.root.querySelector('#tg-df-countdown-title');          this.cdDays = this.root.querySelector('#tg-df-cd-days');          this.cdHrs = this.root.querySelector('#tg-df-cd-hrs');          this.cdMin = this.root.querySelector('#tg-df-cd-min');          this.cdSec = this.root.querySelector('#tg-df-cd-sec');          this.updateCountdown();          this.cdInterval = setInterval(() => this.updateCountdown(), 1000);        }        updateCountdown() {          if (!this.cdWrapper) return;          if (!this.showCountdown) {            this.cdWrapper.style.display = 'none';            return;          }          const area = this.getAreaCode();          let offset = '-04:00';          if (['DE', 'FR', 'IT', 'ES', 'NL'].includes(area)) {             offset = '+02:00';          } else if (['GB', 'IE', 'UK'].includes(area)) {             offset = '+01:00';          }          const startTime = new Date('2026-06-23T00:00:00' + offset).getTime();          const endTime = new Date('2026-06-26T00:00:00' + offset).getTime();          const now = Date.now();          let targetTime = 0;          if (now < startTime) {             targetTime = startTime;             if (this.cdTitle) this.cdTitle.textContent = 'Prime Day starts in';             this.cdWrapper.style.display = 'flex';          } else if (now < endTime) {             targetTime = endTime;             if (this.cdTitle) this.cdTitle.textContent = 'Prime Day ends in';             this.cdWrapper.style.display = 'flex';          } else {             this.cdWrapper.style.display = 'none';             if (this.cdInterval) clearInterval(this.cdInterval);             return;          }          const diff = Math.max(0, targetTime - now);          const d = Math.floor(diff / (1000 * 60 * 60 * 24));          const h = Math.floor((diff / (1000 * 60 * 60)) % 24);          const m = Math.floor((diff / 1000 / 60) % 60);          const s = Math.floor((diff / 1000) % 60);          if (this.cdDays) this.cdDays.textContent = d;          if (this.cdHrs) this.cdHrs.textContent = h;          if (this.cdMin) this.cdMin.textContent = m;          if (this.cdSec) this.cdSec.textContent = s;        }        init() {          this.initCountdown();          try {            initAnalytics();          } catch (e) {            console.warn('Deals Widget Analytics Error:', e);          }                    this.bindEvents();                    let initialQuery = '';                    let searchSource = window.location.search;          if (this.hostContainer && this.hostContainer.hasAttribute('data-widget-config')) {            searchSource = this.hostContainer.getAttribute('data-widget-config');          } else if (typeof window !== 'undefined' && window.__WIDGET_CONFIG__) {            searchSource = window.__WIDGET_CONFIG__;          }          const params = new URLSearchParams(searchSource);          let initialViewMode = params.get('view_mode');          if (!this.viewModeOverride && initialViewMode) {            this.viewModeOverride = initialViewMode;          }          if (!params.has('search') && !params.has('q') && !params.has('query') && initialViewMode !== 'savings_squad') {             initialQuery = 'Gaming laptops';          }          const website = params.get('website') || 'tomsguide';          this.website = website;          if (website === 'techradar') {            const squadHeader = this.root.querySelector('.tg-df-savings-squad-header');            if (squadHeader) {               const pic = squadHeader.querySelector('picture');               if (pic) pic.style.display = 'none';            }            const style = document.createElement('style');            style.innerHTML = `              .tg-df-container .hawk-affiliate-link-deal-button, .tg-df-container .tg-df-card-cta { background-color: #5DAF08 !important; }              .tg-df-container .hawk-affiliate-link-deal-button:hover, .tg-df-container .tg-df-card-cta:hover { background-color: #4a8c06 !important; }            `;            this.root.appendChild(style);          }                    if (this.regionSelect) {            this.regionSelect.value = params.get('region') || 'auto';            this.updatePriceDropdownCurrency();          }                    if (this.retailerSelect && params.has('retailer')) {            this.retailerSelect.value = params.get('retailer');          }                    if (params.has('brands')) {            const b = params.get('brands');            if (b) {              this.selectedBrands = b.split(',');            }          }                    if (this.offerTypeSelect && params.has('offer_type')) {            this.offerTypeSelect.value = params.get('offer_type');          }          if (this.viewModeSelect && params.has('view_mode')) {            this.viewModeSelect.value = params.get('view_mode');          }          if (this.rowsSelect && params.has('rows')) {            this.rowsSelect.value = params.get('rows');          }          if (params.has('price')) {            const priceVal = params.get('price');            if (this.priceFilter) {               // Try assigning it directly to select. If it's not present implicitly ignores               this.priceFilter.value = priceVal;            }            if (priceVal.includes('_')) {               const parts = priceVal.split('_');               if (this.customPriceMin && parts[0]) this.customPriceMin.value = parts[0];               if (this.customPriceMax && parts[1]) this.customPriceMax.value = parts[1];            }          }          if (this.discountFilter && params.has('min_discount_ratio')) {            // Need to convert back from ratio (e.g. 0.8) to select value (e.g. "20")            const ratioStr = params.get('min_discount_ratio');            const ratioFloat = parseFloat(ratioStr);            if (!isNaN(ratioFloat)) {               const percentage = Math.round((1 - ratioFloat) * 100);               this.discountFilter.value = percentage.toString();            }          }          if (this.sortSelect) {            this.sortSelect.value = params.get('sort') || 'date_desc';          }          if (this.dealModeToggle && params.has('deal_mode')) {            this.dealModeToggle.checked = params.get('deal_mode') === 'true' || params.get('deal_mode') === '1';          }          const headerTitleEl = this.root.querySelector('#tg-df-header-title');          const headerSubtitleEl = this.root.querySelector('#tg-df-header-subtitle');          if (params.has('widget_title') && headerTitleEl) {             headerTitleEl.textContent = params.get('widget_title');          }          if (params.has('widget_subtitle') && headerSubtitleEl) {             headerSubtitleEl.textContent = params.get('widget_subtitle');          }                    // Re-apply layout after params have updated control values          this.applyLayoutMode();                    if (params.get('search')) {            initialQuery = params.get('search');          } else if (params.get('q')) {            initialQuery = params.get('q');          } else if (params.get('query')) {            initialQuery = params.get('query');          }                    this.currentQuery = initialQuery;          if (this.searchInput) {            if (this.getViewMode() === 'savings_squad') {              this.searchInput.value = '';            } else {              this.searchInput.value = this.currentQuery;            }          }                    if (this.currentQuery.length > 2 || (this.getViewMode() === 'savings_squad')) {            this.fetchDeals(this.currentQuery);          } else {            this.render();          }        }        updatePriceDropdownCurrency() {          if (!this.priceFilter || !this.regionSelect) return;          const currencySymbols = {            'US': '$',            'GB': '£',            'CA': '$CA',            'AU': '$AU',            'DE': '€',            'FR': '€',            'IT': '€',          };          const area = this.getAreaCode();          const cur = currencySymbols[area || 'US'] || '$';                    const options = this.priceFilter.options;          for (let i = 0; i < options.length; i++) {            const opt = options[i];            if (opt.value === 'all') {              opt.innerText = 'All Prices';            } else if (opt.value === 'under50') {              opt.innerText = `Under ${cur}50`;            } else if (opt.value === '50_100') {              opt.innerText = `${cur}50 - ${cur}100`;            } else if (opt.value === '100_200') {              opt.innerText = `${cur}100 - ${cur}200`;            } else if (opt.value === '200_500') {              opt.innerText = `${cur}200 - ${cur}500`;            } else if (opt.value === 'over500') {              opt.innerText = `Over ${cur}500`;            }          }        }        populateBrandDropdown(values) {          if (!this.brandDropdown || !this.brandFilterWrapper) return;          this.brandFilterWrapper.style.display = 'flex'; // show the wrapper                    let html = '';          const allChecked = this.selectedBrands.length === 0 ? 'checked' : '';          const _div = '<' + '/div>';          const _span = '<' + '/span>';          html += `\x3Cdiv class="tg-df-ms-option">\x3Cinput type="checkbox" value="" ${allChecked} class="tg-df-brand-chk"> Any Brand${_div}`;                    values.forEach(v => {             if (!v.formatted_value || v.formatted_value === 'Any Brand') return;             const isChecked = this.selectedBrands.includes(v.formatted_value) ? 'checked' : '';             html += `\x3Cdiv class="tg-df-ms-option">\x3Cinput type="checkbox" value="${this.escapeHTML(v.formatted_value)}" ${isChecked} class="tg-df-brand-chk"> ${this.escapeHTML(v.formatted_value)} \x3Cspan style="color:var(--tg-df-text-muted);font-size:12px">(${v.count || 0})${_span}${_div}`;          });                    this.brandDropdown.innerHTML = html;                    // Re-bind listeners          const chks = this.brandDropdown.querySelectorAll('.tg-df-brand-chk');          chks.forEach(chk => {            chk.addEventListener('change', (e) => {              const val = e.target.value;              if (val === '') {                this.selectedBrands = [];              } else {                if (e.target.checked) {                   if (!this.selectedBrands.includes(val)) this.selectedBrands.push(val);                } else {                   this.selectedBrands = this.selectedBrands.filter(b => b !== val);                }              }                            if (this.selectedBrands.length === 0) {                 this.brandTrigger.innerText = 'Any Brand';              } else if (this.selectedBrands.length === 1) {                 this.brandTrigger.innerText = this.selectedBrands[0];              } else {                 this.brandTrigger.innerText = `${this.selectedBrands.length} Brands selected`;              }                            // Only call API if changed from UI interactions              if (this.currentQuery.length > 2 || (this.getViewMode() === 'savings_squad')) {                 this.updateURLParams();                 this.fetchDeals(this.currentQuery);              }            });          });                    // Update button text on load          if (this.selectedBrands.length === 0) {             this.brandTrigger.innerText = 'Any Brand';          } else if (this.selectedBrands.length === 1) {             this.brandTrigger.innerText = this.selectedBrands[0];          } else {             this.brandTrigger.innerText = `${this.selectedBrands.length} Brands selected`;          }        }        updateURLParams() {          const url = new URL(window.location);          if (this.currentQuery && this.currentQuery !== 'Gaming laptops') {            url.searchParams.set('q', this.currentQuery);          } else {            url.searchParams.delete('q');            url.searchParams.delete('search');            url.searchParams.delete('query');          }                    if (this.regionSelect && this.regionSelect.value !== 'auto') {            url.searchParams.set('region', this.regionSelect.value);          } else {            url.searchParams.delete('region');          }                    if (this.retailerSelect && this.retailerSelect.value) {            url.searchParams.set('retailer', this.retailerSelect.value);          } else {            url.searchParams.delete('retailer');          }                    if (this.selectedBrands && this.selectedBrands.length > 0) {            url.searchParams.set('brands', this.selectedBrands.join(','));          } else {            url.searchParams.delete('brands');          }                    if (this.offerTypeSelect && this.offerTypeSelect.value) {            url.searchParams.set('offer_type', this.offerTypeSelect.value);          } else {            url.searchParams.delete('offer_type');          }                    if (this.viewModeSelect && this.viewModeSelect.value !== 'auto') {            url.searchParams.set('view_mode', this.viewModeSelect.value);          } else {            url.searchParams.delete('view_mode');          }                    if (this.rowsSelect && this.rowsSelect.value !== '12') {            url.searchParams.set('rows', this.rowsSelect.value);          } else {            url.searchParams.delete('rows');          }                    const min = this.customPriceMin ? this.customPriceMin.value : '';          const max = this.customPriceMax ? this.customPriceMax.value : '';          if (min || max) {             url.searchParams.set('price', `${min}_${max}`);          } else if (this.priceFilter && this.priceFilter.value !== 'all') {            url.searchParams.set('price', this.priceFilter.value);          } else {            url.searchParams.delete('price');          }                    if (this.discountFilter && this.discountFilter.value !== 'all' && this.discountFilter.value !== '0') {            const v = parseInt(this.discountFilter.value);            if (!isNaN(v) && v > 0) {               const ratio = (100 - v) / 100;               url.searchParams.set('min_discount_ratio', ratio.toString());            }          } else {            url.searchParams.delete('min_discount_ratio');          }                    if (this.sortSelect && this.sortSelect.value !== 'date_desc') {            url.searchParams.set('sort', this.sortSelect.value);          } else {            url.searchParams.delete('sort');          }                    if (this.dealModeToggle && this.dealModeToggle.checked) {            url.searchParams.set('deal_mode', 'true');          } else {            url.searchParams.delete('deal_mode');          }                    window.history.replaceState({}, '', url);        }        bindEvents() {          const handleFiltersScroll = () => {            const filters = this.root.querySelector('.tg-df-filters');            const leftBtn = this.root.querySelector('.tg-df-scroll-btn.left');            const rightBtn = this.root.querySelector('.tg-df-scroll-btn.right');            if (filters && leftBtn && rightBtn) {              const { scrollLeft, scrollWidth, clientWidth } = filters;              leftBtn.style.display = scrollLeft > 0 ? 'flex' : 'none';              rightBtn.style.display = Math.ceil(scrollLeft + clientWidth) < scrollWidth - 5 ? 'flex' : 'none';            }          };          const filters = this.root.querySelector('.tg-df-filters');          if (filters) {            filters.addEventListener('scroll', handleFiltersScroll);            window.addEventListener('resize', handleFiltersScroll);            setTimeout(handleFiltersScroll, 100);                        // Also call after rendering dropdowns            const origRenderCategories = this.renderCategories;            if (origRenderCategories) {               this.renderCategories = (...args) => {                 origRenderCategories.apply(this, args);                 setTimeout(handleFiltersScroll, 50);               };            }          }                const roundels = this.root.querySelectorAll('.tg-df-carousel-cat');          roundels.forEach(r => {             r.addEventListener('click', () => {                const q = r.getAttribute('data-query');                const pr = r.getAttribute('data-pr');                if (typeof trackHawkEvent !== 'undefined') {                     trackHawkEvent({                         clickType: "CC",                         widgetId: this.widgetId,                         productCategoryName: "deals",                         zeroBasedProductIndexOrNull: null,                         totalDealsOrProducts: null,                         areaClicked: "Category Roundel",                         revenueId: this.revenueId,                         isoCurrencyCode: typeof this.getAreaCode === 'function' ? (this.getAreaCode() === 'GB' ? 'GBP' : 'USD') : 'USD',                         queryName: q,                         widgetTypeName: this.widgetTypeName                     });                 }                this.currentQuery = q;                const label = this.root.querySelector('#tg-df-carousel-title-label');                if (label) label.textContent = 'Best ' + q;                if (this.priceFilter) this.priceFilter.value = pr || 'all';                if (this.discountFilter) this.discountFilter.value = '5';                if (this.searchInput) this.searchInput.value = q;                                roundels.forEach(ro => ro.classList.remove('active'));                r.classList.add('active');                this.fetchDeals(this.currentQuery);             });          });          const discBtns = this.root.querySelectorAll('.tg-df-carousel-filter-btn');          discBtns.forEach(b => {             b.addEventListener('click', () => {                const d = b.getAttribute('data-d');                const pr = b.getAttribute('data-pr');                const ot = b.getAttribute('data-ot');                let label = b.innerText ? b.innerText.trim() : '';                let filterType = 'unknown';                let filterVal = 'unknown';                if (d !== null) { filterType = 'discount'; filterVal = d; }                else if (pr !== null) { filterType = 'price'; filterVal = pr; }                else if (ot !== null) { filterType = 'offertype'; filterVal = ot; }                if (typeof trackElementInteraction === 'function') trackElementInteraction({ id: `filter-${filterType}-${filterVal}`, name: 'Filter Button', label: label });                                if (d !== null) {                   if (this.discountFilter) this.discountFilter.value = this.discountFilter.value === d ? '0' : d;                } else if (pr !== null) {                   if (this.priceFilter) this.priceFilter.value = this.priceFilter.value === pr ? 'all' : pr;                } else if (ot !== null) {                   if (this.offerTypeSelect) this.offerTypeSelect.value = this.offerTypeSelect.value === ot ? 'all' : ot;                } else {                   if (this.discountFilter) this.discountFilter.value = '0';                   if (this.priceFilter) this.priceFilter.value = 'all';                   if (this.offerTypeSelect) this.offerTypeSelect.value = 'all';                }                if (d === null && pr === null && ot === null && b.getAttribute("data-type") !== "custom") {                   discBtns.forEach(ro => ro.classList.remove('active'));                   b.classList.add('active');                } else if (b.getAttribute("data-type") !== "custom") {                   // Only operate on hardcoded buttons (those without data-type)                   discBtns.forEach(ro => {                      if (!ro.getAttribute('data-d') && !ro.getAttribute('data-pr') && !ro.getAttribute('data-ot') && ro.getAttribute('data-type') !== 'custom') ro.classList.remove('active');                   });                                      let makeActive = true;                   if (d !== null) {                       if (b.classList.contains('active')) makeActive = false;                       discBtns.forEach(ro => { if (ro.getAttribute('data-d') !== null && ro.getAttribute('data-type') !== 'custom') ro.classList.remove('active') });                   } else if (pr !== null) {                       if (b.classList.contains('active')) makeActive = false;                       discBtns.forEach(ro => { if (ro.getAttribute('data-pr') !== null && ro.getAttribute('data-type') !== 'custom') ro.classList.remove('active') });                   } else if (ot !== null) {                       if (b.classList.contains('active')) makeActive = false;                       discBtns.forEach(ro => { if (ro.getAttribute('data-ot') !== null && ro.getAttribute('data-type') !== 'custom') ro.classList.remove('active') });                   }                                      if (makeActive) b.classList.add('active');                                      // Check if anything is active, if not activate "All"                   let anyActive = false;                   discBtns.forEach(ro => { if (ro.classList.contains('active') && ro.getAttribute('data-type') !== 'custom') anyActive = true; });                   if (!anyActive) {                       discBtns.forEach(ro => { if (!ro.getAttribute('data-d') && !ro.getAttribute('data-pr') && !ro.getAttribute('data-ot') && ro.getAttribute('data-type') !== 'custom') ro.classList.add('active'); });                   }                }                                this.fetchDeals(this.currentQuery);             });          });          if (this.brandTrigger && this.brandDropdown) {            this.brandTrigger.addEventListener('click', () => {              this.brandDropdown.classList.toggle('active');            });            document.addEventListener('click', (e) => {              if (this.brandFilterWrapper && !e.composedPath().includes(this.brandFilterWrapper)) {                this.brandDropdown.classList.remove('active');              }            });          }          const showAutocomplete = () => {             if (this.getViewMode() !== 'savings_squad' || !this.autocompleteDropdown || !this.airedaleTags) return;                          let terms = this.airedaleTags;             if (this.airedaleBrands) {                terms = terms.concat(this.airedaleBrands.map(b => b.formatted_value));             }             terms = [...new Set(terms)];                          const query = this.searchInput.value.trim();             let matches = [];             if (query.length > 0) {                 matches = terms.filter(t => t.toLowerCase().includes(query.toLowerCase()) && t.toLowerCase() !== query.toLowerCase());             } else {                 matches = terms;             }                          if (matches.length > 0) {                 this.autocompleteDropdown.innerHTML = matches.map(m => `\x3Cdiv class="tg-df-autocomplete-item" data-tag="${this.escapeHTML(m)}">${this.escapeHTML(m)}<` + `/div>`).join('');                 this.autocompleteDropdown.classList.add('active');             } else {                 this.autocompleteDropdown.classList.remove('active');             }          };          let debounceTimer;          if(this.searchInput) {            this.searchInput.addEventListener('focus', showAutocomplete);            this.searchInput.addEventListener('input', (e) => {              clearTimeout(debounceTimer);              const query = e.target.value.trim();              this.currentQuery = query;              showAutocomplete();              debounceTimer = setTimeout(() => {                this.updateURLParams();                if (query.length > 2) {                  this.fetchDeals(query);                } else if (query.length === 0) {                  if (this.getViewMode() === 'savings_squad') {                    this.activeDealTag = null;                    this.currentQuery = '';                    if (this.categoryFilter) this.categoryFilter.value = 'all';                    this.fetchDeals('');                  } else {                    this.deals = [];                    this.render();                  }                }              }, 400);            });            this.searchInput.addEventListener('keypress', (e) => {              if (e.key === 'Enter') {                if (this.autocompleteDropdown) this.autocompleteDropdown.classList.remove('active');                clearTimeout(debounceTimer);                const query = e.target.value.trim();                this.currentQuery = query;                                let isTag = false;                if (this.airedaleTags && this.airedaleTags.includes(query)) isTag = true;                if (this.airedaleBrands && this.airedaleBrands.some(b => b.formatted_value === query)) isTag = true;                this.activeDealTag = isTag ? query : null;                                trackElementInteraction({ id: 'search-submit', name: 'Ask', label: 'Ask (main search)', text: query });                this.updateURLParams();                if (query.length > 2 || (this.getViewMode() === 'savings_squad')) {                   if (query.length === 0 && this.getViewMode() === 'savings_squad') {                       if (this.categoryFilter) this.categoryFilter.value = 'all';                   }                   this.fetchDeals(query);                }              }            });          }          if (this.autocompleteDropdown) {             this.autocompleteDropdown.addEventListener('click', (e) => {                const item = e.target.closest('.tg-df-autocomplete-item');                if (item) {                   const tag = item.getAttribute('data-tag');                   this.currentQuery = tag;                   if (this.searchInput) this.searchInput.value = tag;                   this.activeDealTag = tag;                   if (this.categoryFilter && this.airedaleTags.includes(tag)) {                       this.categoryFilter.value = tag;                   }                   this.autocompleteDropdown.classList.remove('active');                   this.updateURLParams();                   this.fetchDeals(tag);                }             });             document.addEventListener('click', (e) => {               if (this.autocompleteDropdown && this.searchInput && !e.composedPath().includes(this.searchInput) && !e.composedPath().includes(this.autocompleteDropdown)) {                 this.autocompleteDropdown.classList.remove('active');               }             });          }          if (this.searchBtn) {            this.searchBtn.addEventListener('click', () => {              if (this.autocompleteDropdown) this.autocompleteDropdown.classList.remove('active');              clearTimeout(debounceTimer);              const query = this.searchInput.value.trim();              trackElementInteraction({ id: 'search-submit', name: 'Ask', label: 'Ask (main search)', text: query });                            let isTag = false;              if (this.airedaleTags && this.airedaleTags.includes(query)) isTag = true;              if (this.airedaleBrands && this.airedaleBrands.some(b => b.formatted_value === query)) isTag = true;              this.activeDealTag = isTag ? query : null;                            this.currentQuery = query;              this.updateURLParams();              if (query.length > 2 || (this.getViewMode() === 'savings_squad')) {                 if (query.length === 0 && this.getViewMode() === 'savings_squad') {                     if (this.categoryFilter) this.categoryFilter.value = 'all';                 }                 this.fetchDeals(query);              }            });          }          if(this.sortSelect && this.sortSelect.querySelector('option[value="date_desc"]') === null) {              const option = document.createElement('option');              option.value = "date_desc";              option.text = "Newest First";              this.sortSelect.insertBefore(option, this.sortSelect.firstChild);          }          if(this.sortSelect) this.sortSelect.addEventListener('change', () => {            trackElementInteraction({ id: `sort-option-${this.sortSelect.value}`, name: 'Sort', label: `Sort: ${this.sortSelect.options[this.sortSelect.selectedIndex].text}` });            this.updateURLParams();            if (this.deals.length > 0) {              this.sortData();              this.render();            }          });                    const priceFilter = this.root.querySelector('#tg-df-price-filter');          if (priceFilter) {            this.priceFilter = priceFilter;            this.priceFilter.addEventListener('change', () => {              trackElementInteraction({ id: `filter-price-${this.priceFilter.value}`, name: 'Price', label: this.priceFilter.options[this.priceFilter.selectedIndex].text });              this.updateURLParams();              if (this.currentQuery.length > 2 || (this.getViewMode() === 'savings_squad')) {                this.fetchDeals(this.currentQuery);              } else {                this.render();              }            });          }          const updateCustomPrice = () => {             this.updateURLParams();             if (this.currentQuery.length > 2 || (this.getViewMode() === 'savings_squad')) {                this.fetchDeals(this.currentQuery);             } else {                this.render();             }          };          if (this.customPriceMin) {             this.customPriceMin.addEventListener('change', updateCustomPrice);             this.customPriceMin.addEventListener('keypress', (e) => {                if (e.key === 'Enter') updateCustomPrice();             });          }          if (this.customPriceMax) {             this.customPriceMax.addEventListener('change', updateCustomPrice);             this.customPriceMax.addEventListener('keypress', (e) => {                if (e.key === 'Enter') updateCustomPrice();             });          }          const discountFilter = this.root.querySelector('#tg-df-discount-filter');          if (discountFilter) {            this.discountFilter = discountFilter;            this.discountFilter.addEventListener('change', () => {              trackElementInteraction({ id: `filter-discount-${this.discountFilter.value}`, name: 'Discount', label: this.discountFilter.options[this.discountFilter.selectedIndex].text });              this.updateURLParams();              if (this.currentQuery.length > 2 || (this.getViewMode() === 'savings_squad')) {                this.fetchDeals(this.currentQuery);              } else {                this.render();              }            });          }          if (this.categoryFilter) {            this.categoryFilter.addEventListener('change', (e) => {               const val = e.target.value === 'all' ? null : e.target.value;               this.activeDealTag = val;               if (val) {                 this.currentQuery = val;               } else {                 if (this.searchInput && this.currentQuery === document.querySelector('#tg-df-brand-trigger')?.getAttribute('data-active-brand')) {                     // don't clear current query if a brand is selected                 } else if (this.searchInput) {                     this.currentQuery = '';                     this.searchInput.value = '';                 }               }               this.fetchSavingsSquad();            });          }                    if (this.settingsToggle) {            this.settingsToggle.addEventListener('click', () => {              const o = this.settingsPanel.classList.toggle('active');              this.settingsBackdrop.classList.toggle('active');              if (o) trackElementInteraction({ id: 'filter-open', name: 'Filters', label: 'Open filters' });            });          }                    if (this.settingsBackdrop) {            this.settingsBackdrop.addEventListener('click', () => {              this.settingsPanel.classList.remove('active');              this.settingsBackdrop.classList.remove('active');            });          }                    if (this.regionSelect) {            this.regionSelect.addEventListener('change', () => {              trackElementInteraction({ id: `filter-region-${this.regionSelect.value}`, name: 'Region', label: this.regionSelect.options[this.regionSelect.selectedIndex].text });              this.updateURLParams();              this.updatePriceDropdownCurrency();              if (this.currentQuery.length > 2 || (this.getViewMode() === 'savings_squad')) {                this.fetchDeals(this.currentQuery);              }            });          }                    if (this.retailerSelect) {            this.retailerSelect.addEventListener('change', () => {              trackElementInteraction({ id: `filter-merchant-${this.retailerSelect.value}`, name: 'Retailer', label: this.retailerSelect.options[this.retailerSelect.selectedIndex].text });              this.updateURLParams();              if (this.currentQuery.length > 2 || (this.getViewMode() === 'savings_squad')) {                this.fetchDeals(this.currentQuery);              }            });          }                    if (this.offerTypeSelect) {            this.offerTypeSelect.addEventListener('change', () => {              trackElementInteraction({ id: `filter-offertype-${this.offerTypeSelect.value}`, name: 'Offer Type', label: this.offerTypeSelect.options[this.offerTypeSelect.selectedIndex].text });              this.updateURLParams();              if (this.currentQuery.length > 2 || (this.getViewMode() === 'savings_squad')) {                this.fetchDeals(this.currentQuery);              }            });          }                    if (this.viewModeSelect) {            this._prevViewMode = this.viewModeSelect.value;            this.viewModeSelect.addEventListener('change', () => {              trackElementInteraction({ id: `filter-viewmode-${this.viewModeSelect.value}`, name: 'View Mode', label: this.viewModeSelect.options[this.viewModeSelect.selectedIndex].text });                            // Reset all active toggles and filters to prevent config carry-over              this.selectedBrands = [];              if (this.brandTrigger) this.brandTrigger.innerText = 'Select Brands';              if (this.brandDropdown) {                const chks = this.brandDropdown.querySelectorAll('.tg-df-brand-chk');                chks.forEach(chk => { chk.checked = false; });              }              if (this.priceFilter) this.priceFilter.value = 'all';              if (this.customPriceMin) this.customPriceMin.value = '';              if (this.customPriceMax) this.customPriceMax.value = '';              if (this.sortSelect) this.sortSelect.value = 'date_desc';              if (this.discountFilter) this.discountFilter.value = '0';              if (this.retailerSelect) this.retailerSelect.value = '';              if (this.offerTypeSelect) this.offerTypeSelect.value = '';              if (this.rowsSelect) this.rowsSelect.value = '12';              if (this.categoryFilter) this.categoryFilter.value = 'all';              this.activeDealTag = null;              this.updateURLParams();              this.applyLayoutMode();                            if (this.getViewMode() === 'savings_squad' || this._prevViewMode === 'savings_squad') {                this.fetchDeals(this.currentQuery);              } else {                this.render();              }              this._prevViewMode = this.viewModeSelect.value;            });          }                    if (this.rowsSelect) {            this.rowsSelect.addEventListener('change', () => {              this.updateURLParams();              if (this.currentQuery.length > 2 || (this.getViewMode() === 'savings_squad')) {                this.fetchDeals(this.currentQuery);              }            });          }                    if (this.dealModeToggle) {            this.dealModeToggle.addEventListener('change', () => {              this.updateURLParams();              this.render();            });          }          if (this.editorModeToggle) {             this.editorModeToggle.addEventListener('change', (e) => {                this.editorMode = e.target.checked;                this.render();                this.updateFloatingCopyBar();             });          }          if (this.editorCopyBtn) {             this.editorCopyBtn.addEventListener('click', () => {                this.copySelectedDealsToCMS();             });          }          if (this.editorClearBtn) {             this.editorClearBtn.addEventListener('click', () => {                this.selectedDeals.clear();                this.render();                this.updateFloatingCopyBar();             });          }          if (this.grid) {            this.grid.addEventListener('change', (e) => {               if (e.target.classList.contains('tg-df-deal-checkbox')) {                  const dealId = e.target.getAttribute('data-id');                  if (e.target.checked) {                     const dealObj = this.deals.find(d => d.id === dealId);                     if (dealObj) this.selectedDeals.set(dealId, dealObj);                  } else {                     this.selectedDeals.delete(dealId);                  }                  this.updateFloatingCopyBar();               }            });            this.grid.addEventListener('click', (e) => {              const dealCard = e.target.closest('[data-action="deal-click"]');              const similarCard = e.target.closest('[data-action="view-similar-click"]');              const cardLink = dealCard || similarCard;              if (cardLink) {                const productName = cardLink.getAttribute('data-product-name');                const merchantName = cardLink.getAttribute('data-merchant-name');                const productId = cardLink.getAttribute('data-analytics-id');                const price = parseFloat(cardLink.getAttribute('data-price')) || null;                const prevPriceStr = cardLink.getAttribute('data-previous-price');                const previousPrice = prevPriceStr ? parseFloat(prevPriceStr) : null;                const originalLink = cardLink.getAttribute('data-original-link');                const rewrittenLink = cardLink.getAttribute('href');                const revenueId = cardLink.getAttribute('data-revenue-id');                const index = parseInt(cardLink.getAttribute('data-index'), 10) || 0;                const inStock = cardLink.getAttribute('data-in-stock') === 'true';                const totalText = cardLink.getAttribute('data-total');                const totalDeals = parseInt(totalText, 10) || 0;                const productCategoryName = 'deals';                const trackingParams = {                  widgetId: this.widgetId,                  productCategoryName: productCategoryName,                  product: {                    modelId: cardLink.getAttribute('data-model-id') || null,                    matchId: cardLink.getAttribute('data-match-id') || null,                    brand: cardLink.getAttribute('data-model-brand') || null,                    parent: cardLink.getAttribute('data-model-parent') || null,                    name: productName,                    price: price,                    previousPrice: previousPrice,                    link: rewrittenLink,                    originalLink: originalLink,                    inStock: inStock                  },                  zeroBasedProductIndexOrNull: index,                  totalDealsOrProducts: totalDeals,                   merchant: {                    id: cardLink.getAttribute('data-merchant-id') || null,                    network: cardLink.getAttribute('data-merchant-network') || null,                    url: cardLink.getAttribute('data-merchant-url') || null,                    name: merchantName                  },                  revenueId: revenueId,                  widgetTypeName: this.widgetTypeName,                  isoCurrencyCode: normalizeCurrency(this.escapeHTML(cardLink.getAttribute('data-currency') || '$'))                };                if (dealCard) {                  trackDealClick(trackingParams);                } else {                  trackViewSimilarClick(trackingParams);                }              }              const couponsBtn = e.target.closest('[data-action="coupons-click"]');              if (couponsBtn) {                trackElementInteraction({                  id: 'product-card-show-coupons',                  name: 'Coupons',                  label: `Product card coupons: ${couponsBtn.getAttribute('data-merchant')}`                });              }            });          }          this.setupScrollListeners();        }        setupScrollListeners() {          const containers = [             this.root.querySelector('.tg-df-carousel-roundels'),             this.root.querySelector('.tg-df-carousel-filters-wrap'),             this.root.querySelector('#tg-df-grid')          ];                    containers.forEach(container => {             if (!container) return;                          const checkScroll = () => {                if (!container.parentElement) return;                const leftBtn = container.parentElement.querySelector('.tg-df-carousel-scroll-left');                const rightBtn = container.parentElement.querySelector('.tg-df-carousel-scroll-right');                                if (leftBtn) {                   if (container.scrollLeft <= 5) leftBtn.style.display = 'none';                   else leftBtn.style.display = 'flex';                }                                if (rightBtn) {                   if (container.scrollWidth <= container.clientWidth) {                       rightBtn.style.display = 'none';                   } else if (container.scrollLeft >= container.scrollWidth - container.clientWidth - 5) {                       rightBtn.style.display = 'none';                   } else {                       rightBtn.style.display = 'flex';                   }                }             };                          container.addEventListener('scroll', checkScroll);             checkScroll();                          window.addEventListener('resize', checkScroll);                          const observer = new MutationObserver(checkScroll);             observer.observe(container, { childList: true, subtree: true, characterData: false });          });        }        get widgetTypeName() {          const mode = this.viewModeSelect ? this.viewModeSelect.value : (this.viewModeOverride || 'auto');          switch(mode) {              case 'carousel': return 'Carousel';              case 'savings_squad': return 'Savings Squad';              case 'grid': return 'Grid';              case 'row': return 'Row';              default: return 'Auto Collection';          }        }        getRowsLimit() {          if (this.rowsSelect && this.rowsSelect.value) return parseInt(this.rowsSelect.value, 10);          let configSource = window.location.search;          if (this.hostContainer && this.hostContainer.hasAttribute('data-widget-config')) {             configSource = this.hostContainer.getAttribute('data-widget-config');          } else if (typeof window !== 'undefined' && window.__WIDGET_CONFIG__) {             configSource = window.__WIDGET_CONFIG__;          }          const params = new URLSearchParams(configSource);          if (params.has('rows')) return parseInt(params.get('rows'), 10) || 12;          return 12;        }        getAreaCode() {          if (this.regionSelect && this.regionSelect.value) {            if (this.regionSelect.value === 'auto') return null;            return this.regionSelect.value;          }          let area = null;          try {            const locale = window.navigator.language || window.navigator.userLanguage;            if (locale && locale.includes('-')) {              area = locale.split('-')[1].toUpperCase();            } else if (locale && locale.length === 2) {              if (locale.toUpperCase() === 'EN') { area = 'US'; }              else { area = locale.toUpperCase(); }            }          } catch (e) { /* Ignore */ }                    // Map to known valid options or fallback to US          const valid = ['US', 'GB', 'CA', 'AU', 'DE', 'FR', 'IT'];          if (area === 'UK') area = 'GB';          if (valid.includes(area)) {             return area;          }          return 'US';        }        async fetchDeals(query) {          this.showLoading();          this.deals = [];          this.displayLimit = this.getRowsLimit();                    try {            console.log("getViewMode returns:", this.getViewMode());            if (this.getViewMode() === 'savings_squad') {               await this.fetchSavingsSquad();            } else {               if (this.isBroadQuery(query)) {                 await this.fetchAdviserDeals(query);               } else {                 await this.fetchHawkDeals(query);                 if (this.deals.length === 0) {                   await this.fetchAdviserDeals(query);                 }               }            }          } catch (error) {            console.warn("[Tom's Guide Widget] Fetch error:", error);            this.showError();          }        }        async fetchSavingsSquad() {          let topArticles = this.airedaleArticles;          if (!topArticles) {            const siteParam = this.website || 'tomsguide';            const airedaleUrl = `https://airedale.futurecdn.net/feeds/feed_1781000519267.json?site=${siteParam}&articleType=deals&limit=50`;            let res;            try {               res = await fetch(airedaleUrl);            } catch(e) {               try { res = await fetch(`https://airedale.futurecdn.net/feeds/feed_1776420579726.json?site=${siteParam}&articleType=deals&limit=50`); } catch (err) { console.warn("Fallback fetch failed", err); return; }            }            if (!res.ok) throw new Error('Airedale API Error');            const articles = await res.json();            topArticles = Array.isArray(articles) ? articles.slice(0, 50) : ((articles.data && Array.isArray(articles.data)) ? articles.data.slice(0, 50) : []);            this.airedaleArticles = topArticles;                        let tagCounts = {};            topArticles.forEach((a) => {              let articleTags = new Set();              if (a.articlecategory && Array.isArray(a.articlecategory)) {                 a.articlecategory.forEach((t) => articleTags.add(t));              }              articleTags.forEach(t => {                 tagCounts[t] = (tagCounts[t] || 0) + 1;              });            });                        this.airedaleTags = Object.keys(tagCounts).sort((a, b) => tagCounts[b] - tagCounts[a]);            this.airedaleTagCounts = tagCounts;          }                    let targetArticles = topArticles;          if (!this.activeDealTag && this.currentQuery) {             const tagMatch = this.airedaleTags.find(t => t.toLowerCase() === this.currentQuery.toLowerCase());             if (tagMatch) {                this.activeDealTag = tagMatch;             }          }          if (this.activeDealTag) {             const cleanTag = this.activeDealTag.toLowerCase().replace(/&/g, '').replace(/[^a-z0-9]+/g, '-').replace(/-+/g, '-').replace(/^-|-$/g, '');             const encodedTag = encodeURIComponent(cleanTag);             const siteParam = this.website || 'tomsguide';             const url = `https://airedale.futurecdn.net/feeds/feed_1781000519267.json?site=${siteParam}&articleType=deals&limit=50&articleCategoryHandle=${encodedTag}`;             try {                const res = await fetch(url);                if (res.ok) {                   const articles = await res.json();                   targetArticles = Array.isArray(articles) ? articles.slice(0, 50) : ((articles.data && Array.isArray(articles.data)) ? articles.data.slice(0, 50) : []);                }             } catch(e) {                console.warn("Failed to fetch by activeDealTag", e);             }          }          let extractedDeals = [];          let seenUrls = new Set();                    let overallBrandsCounts = {};                    // First pass: extract ALL brands from topArticles so the dropdown has all options          topArticles.forEach((article) => {             if (!article.articlepage) return;             let pageData = [];             try { pageData = JSON.parse(article.articlepage[0]); } catch(e){ console.warn(e); }             const savingsSquad = pageData.filter((p) => p.type === 'deal' || p.type === 'featured-product');             savingsSquad.forEach((block) => {                const data = block.data || {};                if (data.brand) {                   const cleanBrand = data.brand.replace(/^\d+\.\s*/, '').trim();                   overallBrandsCounts[cleanBrand] = (overallBrandsCounts[cleanBrand] || 0) + 1;                }             });          });          targetArticles.forEach((article) => {             if (!article.articlepage) return;                          let pageData = [];             try {                pageData = JSON.parse(article.articlepage[0]);             } catch(e){ console.warn(e); }                          const savingsSquad = pageData.filter((p) => p.type === 'deal' || p.type === 'featured-product');                          savingsSquad.forEach((block, idx) => {                const data = block.data || {};                const isFeatured = block.type === 'featured-product';                                const link = data.link || {};                const priceObj = data.price || {};                const image = data.image || {};                                if (data.brand) {                   data.brand = data.brand.replace(/^\d+\.\s*/, '').trim();                }                const externalUrl = isFeatured ? data.url : (link.href || null);                let summaryTitle = isFeatured ? (data.name || data.brand) : (data.productName || link.label || article.articlename);                let description = isFeatured ? (data.strapline || '') : (data.text || '');                                if (!isFeatured && !data.productName && data.text) {                   const brSplit = data.text.split(new RegExp('\x3Cbr\\s*\\/?\\x3E', 'i'));                   if (brSplit.length > 1) {                     summaryTitle = brSplit[0].replace(/<[^>]+>/g, '').trim();                     description = brSplit.slice(1).join(' ').replace(/<br\s*\/?>/gi, ' ').replace(/<\/?(p|div)[^>]*>/gi, ' ').replace(/<[^>]+>/g, '').replace(/\s+/g, ' ').trim();                   } else {                     const match = data.text.match(/\x3Cstrong>(.*?)<\/strong>/);                     if (match) {                       summaryTitle = match[1].replace(/<[^>]+>/g, '').trim();                       if (summaryTitle.endsWith(':')) summaryTitle = summaryTitle.slice(0, -1);                     }                   }                }                                let imageUrl = isFeatured ? image.mos : (image.src || null);                if (imageUrl && imageUrl.startsWith('//')) imageUrl = 'https:' + imageUrl;                                description = description.replace(/<br\s*\/?>/gi, ' ').replace(/<\/?(p|div)[^>]*>/gi, ' ').replace(/<[^>]+>/g, '').replace(/\s+/g, ' ').replace(/View Deal$/i, '').trim();                                let merchantName = data.retailer || '';                if (!merchantName && externalUrl) {                   try {                     merchantName = new URL(externalUrl).hostname.replace('www.', '').split('.')[0];                     merchantName = merchantName.charAt(0).toUpperCase() + merchantName.slice(1);                   }catch(e){ console.warn(e); }                }                if (!merchantName) merchantName = 'Retailer';                const q = (this.currentQuery || '').toLowerCase();                const activeTagLogic = (this.activeDealTag || '').toLowerCase();                if (q.length > 2 && q !== activeTagLogic) {                   const searchTarget = `${summaryTitle || ''} ${description || ''}`.toLowerCase();                   if (!searchTarget.includes(q)) return;                }                let rawPrice = 0;                let rawMsrp = 0;                let currencyStr = '$';                if (isFeatured) {                   rawPrice = typeof data.salePrice === 'number' && data.salePrice > 0 ? data.salePrice : (typeof data.price === 'number' ? data.price : 0);                   rawMsrp = typeof data.salePrice === 'number' && typeof data.price === 'number' && data.price > data.salePrice ? data.price : 0;                   currencyStr = data.currency === 'GBP' ? '£' : '$';                } else {                   rawPrice = priceObj.amount ? parseFloat(priceObj.amount) : 0;                   rawMsrp = priceObj.amountWas ? parseFloat(priceObj.amountWas) : 0;                   currencyStr = priceObj.currency === 'GBP' ? '£' : '$';                }                                let savingAmt = 0;                let savingLabel = '';                if (rawPrice > 0 && rawMsrp > rawPrice) {                   savingAmt = parseFloat((rawMsrp - rawPrice).toFixed(2));                   savingLabel = `Save ${currencyStr}${savingAmt}`;                }                                // Apply Brand filter                if (this.selectedBrands && this.selectedBrands.length > 0) {                   const itemBrand = (data.brand || '').toLowerCase();                   const hasMatch = this.selectedBrands.some(sb => sb.toLowerCase() === itemBrand);                   if (!hasMatch) return;                }                // Apply Price filter                let priceFilterVal = null;                const min = this.customPriceMin ? this.customPriceMin.value : '';                const max = this.customPriceMax ? this.customPriceMax.value : '';                if (min || max) {                   priceFilterVal = `${min}_${max}`;                } else if (this.priceFilter && this.priceFilter.value !== 'all') {                   priceFilterVal = this.priceFilter.value;                }                if (priceFilterVal && rawPrice > 0) {                   if (priceFilterVal === 'under50' && rawPrice >= 50) return;                   if (priceFilterVal === 'over50' && rawPrice <= 50) return;                   if (priceFilterVal === 'over30' && rawPrice <= 30) return;                   if (priceFilterVal === 'over500' && rawPrice <= 500) return;                   if (priceFilterVal.includes('_')) {                      const parts = priceFilterVal.split('_');                      const min = parseFloat(parts[0]);                      const max = parseFloat(parts[1]);                      if (!isNaN(min) && rawPrice < min) return;                      if (!isNaN(max) && rawPrice > max) return;                   }                }                // Apply Discount filter                if (this.discountFilter && this.discountFilter.value !== 'all' && this.discountFilter.value !== '0') {                   const requiredDiscount = parseInt(this.discountFilter.value);                   if (!isNaN(requiredDiscount) && requiredDiscount > 0) {                      if (!rawMsrp || rawMsrp <= rawPrice) return;                      const ratio = Math.round((1 - (rawPrice / rawMsrp)) * 100);                      if (ratio < requiredDiscount) return;                   }                }                                if (externalUrl) {                   if (seenUrls.has(externalUrl)) return;                  seenUrls.add(externalUrl);                }                                extractedDeals.push({                   id: `airedale-${article.id || Math.random()}-${idx}`,                   url: externalUrl,                   image: imageUrl,                   fallbackImage: imageUrl,                   title: summaryTitle,                   brand: data.brand || '',                   productName: data.productName || '',                   merchant: merchantName,                   rawPrice: rawPrice,                   rawMsrp: rawMsrp,                   price: rawPrice > 0 ? rawPrice.toString() : '',                   msrp: rawMsrp > 0 ? rawMsrp.toString() : '',                   currency: currencyStr,                   isCheckPrice: !rawPrice,                   savingLabel: savingLabel,                   savingType: rawMsrp > rawPrice ? 'amount' : 'none',                   isPrime: false,                   starRating: null,                   description: description,                   text: data.text || '',                   authorName: article.articleauthortext ? article.articleauthortext[0] : (article.articleauthor ? article.articleauthor[0] : ''),                   authorRole: article.articleauthorrole ? article.articleauthorrole[0] : '',                   authorImage: article.articleauthormedia ? article.articleauthormedia[0] : '',                   documentUrl: article.documenturl ? article.documenturl[0] : '',                   modifiedDate: article.contentmodifieddate || article.modifieddate || ''                });             });          });                    const airedaleBrandsList = Object.keys(overallBrandsCounts).map(b => ({              formatted_value: b,              count: overallBrandsCounts[b]          })).sort((a,b) => b.count - a.count);                    if (this.getViewMode() === 'savings_squad') {             this.populateBrandDropdown(airedaleBrandsList.slice(0, 15));             if (this.brandFilterWrapper) {                if (airedaleBrandsList.length === 0) {                    this.brandFilterWrapper.style.display = 'none';                } else {                    this.brandFilterWrapper.style.display = 'flex';                }             }          }                    this.deals = extractedDeals;          this.sortData();          this.render();          if (typeof trackDealsAppeared !== 'undefined') {             trackDealsAppeared(this.widgetId, this.deals, this.revenueId, typeof this.getAreaCode === 'function' ? (this.getAreaCode() === 'GB' ? 'GBP' : 'USD') : 'USD', this.currentQuery, this.widgetTypeName);          }        }        isBroadQuery(query) {          const q = query.toLowerCase();          const intentModifiers = ['deals', 'best', 'sale', 'under', 'cheap', 'offers', 'discount'];          return intentModifiers.some(term => q.includes(term));        }        async fetchHawkDeals(query) {          const url = new URL(this.apiUrl);          url.searchParams.append('model_name', query);          const areaCode = this.getAreaCode();          if (areaCode) {            url.searchParams.append('area', areaCode);          }                    if (this.retailerSelect && this.retailerSelect.value) {            url.searchParams.append('filter_merchant_name', this.retailerSelect.value);          }                    if (this.selectedBrands && this.selectedBrands.length > 0) {            url.searchParams.append('filter_label[text_brand]', this.selectedBrands.join(','));          }                    let priceVal = null;          const min = this.customPriceMin ? this.customPriceMin.value : '';          const max = this.customPriceMax ? this.customPriceMax.value : '';          if (min || max) {             priceVal = `${min}_${max}`;          } else if (this.priceFilter && this.priceFilter.value !== 'all') {             priceVal = this.priceFilter.value;          }          if (priceVal) {            if (priceVal === 'under50') {              url.searchParams.append('filter_max_price', '50');            } else if (priceVal === 'over50') {              url.searchParams.append('filter_min_price', '50');            } else if (priceVal === 'over30') {              url.searchParams.append('filter_min_price', '30');            } else if (priceVal === 'over500') {              url.searchParams.append('filter_min_price', '500');            } else if (priceVal.includes('_')) {              const parts = priceVal.split('_');              if (parts[0]) url.searchParams.append('filter_min_price', parts[0]);              if (parts[1]) url.searchParams.append('filter_max_price', parts[1]);            }          }                    if (this.discountFilter && this.discountFilter.value !== 'all' && this.discountFilter.value !== '0') {            const v = parseInt(this.discountFilter.value);            if (!isNaN(v) && v > 0) {              const ratio = (100 - v) / 100;              url.searchParams.append('min_discount_ratio', ratio.toString());            }          }                    if (this.offerTypeSelect && this.offerTypeSelect.value) {            url.searchParams.append('offer', this.offerTypeSelect.value);          }                    url.searchParams.append('filter_product_types', 'deals');                    url.searchParams.append('rows', this.getRowsLimit().toString());          let response;          try {             response = await fetch(url.toString());          } catch(e) {             if (window.location.protocol === 'file:') {                console.warn("[Tom's Guide Widget] fetch from file:// blocked by local CORS policy, falling back to Adviser mock.");                await this.fetchAdviserDeals(query);                return;             }             console.warn("Hawk fetch failed", e);             this.deals = [];             this.render();             return;          }          if (!response.ok) {            throw new Error('Hawk API Response Error');          }          const rawData = await response.json();          // Safely locate data array from potentially wrapped response          let offers = [];          let modelInfoArray = [];                    let brandFilterData = null;          if (rawData && rawData.widget && rawData.widget.data && Array.isArray(rawData.widget.data.filters)) {             brandFilterData = rawData.widget.data.filters.find(f => f.type === 'label_text_brand');          } else if (rawData && rawData.data && Array.isArray(rawData.data.filters)) {             brandFilterData = rawData.data.filters.find(f => f.type === 'label_text_brand');          }          if (brandFilterData && Array.isArray(brandFilterData.values) && brandFilterData.values.length > 0) {             this.populateBrandDropdown(brandFilterData.values);          } else {             if (this.brandFilterWrapper && this.selectedBrands.length === 0) {                this.brandFilterWrapper.style.display = 'none';             }          }                    if (rawData && rawData.widget && rawData.widget.data) {            if (Array.isArray(rawData.widget.data.offers)) offers = rawData.widget.data.offers;            if (rawData.widget.data.model_info && typeof rawData.widget.data.model_info === 'object') {              modelInfoArray = Array.isArray(rawData.widget.data.model_info) ? rawData.widget.data.model_info : Object.values(rawData.widget.data.model_info);            }          } else if (rawData && rawData.data) {            if (Array.isArray(rawData.data.offers)) offers = rawData.data.offers;            if (rawData.data.model_info && typeof rawData.data.model_info === 'object') {              modelInfoArray = Array.isArray(rawData.data.model_info) ? rawData.data.model_info : Object.values(rawData.data.model_info);            }          } else {            if (Array.isArray(rawData)) offers = rawData;            else if (rawData && Array.isArray(rawData.offers)) offers = rawData.offers;            else if (rawData && rawData.offers && Array.isArray(rawData.offers.offer)) offers = rawData.offers.offer;            else if (rawData && rawData.offers) offers = [].concat(rawData.offers);                        if (rawData && rawData.model_info && typeof rawData.model_info === 'object') {              modelInfoArray = Array.isArray(rawData.model_info) ? rawData.model_info : Object.values(rawData.model_info);            }          }          let modelDetails = {};          modelInfoArray.forEach(m => {            const mId = m.model_id || m.id;            if (mId) {              modelDetails[mId] = {                score: m.score != null ? parseFloat(m.score) : null,                brand: m.brand || null,                parent: (m.parents && Array.isArray(m.parents) && m.parents.length > 0) ? m.parents[0].name : null              };            }          });          offers.forEach(item => {            let data = { ...item };            const mId = data.model_id;            if (mId && modelDetails[mId]) {              data.review_score = modelDetails[mId].score;              data.model_brand = modelDetails[mId].brand;              data.model_parent = modelDetails[mId].parent;            } else {              data.review_score = null;            }                        let itemOffers = [];            if (Array.isArray(item.offers)) itemOffers = item.offers;            else if (Array.isArray(item.offer)) itemOffers = item.offer;            else if (item.offers && typeof item.offers === 'object') itemOffers = [item.offers];            else if (item.offer && typeof item.offer === 'object') itemOffers = [item.offer];            if (itemOffers.length > 0) {              itemOffers.forEach(subItem => {                let subData = { ...item, ...subItem };                const subId = subData.model_id;                if (subId && modelDetails[subId]) {                  subData.review_score = modelDetails[subId].score;                  subData.model_brand = modelDetails[subId].brand;                  subData.model_parent = modelDetails[subId].parent;                } else if (data.review_score != null) {                  subData.review_score = data.review_score;                }                if (subData.merchant && typeof subData.merchant === 'object') {                  subData.merchant_name = subData.merchant.name;                }                this.deals.push(this.extractDealData(subData));              });              return;            }                        if (item.merchant && typeof item.merchant === 'object') {              data.merchant_name = item.merchant.name;            }                        this.deals.push(this.extractDealData(data));          });                    this.sortData();          this.render();          if (typeof trackDealsAppeared !== 'undefined') {             trackDealsAppeared(this.widgetId, this.deals, this.revenueId, typeof this.getAreaCode === 'function' ? (this.getAreaCode() === 'GB' ? 'GBP' : 'USD') : 'USD', this.currentQuery, this.widgetTypeName);          }        }        async fetchAdviserDeals(query) {          // ======================================================================          // TODO: ADVISER API REPLACEMENT          // The code below simulates the Adviser API response using mock data.          // Once the real endpoint is ready, remove getAdviserMockData() and           // perform an actual fetch() request similar to fetchHawkDeals().          // Example:          // const area = this.getAreaCode();          // let apiUrl = `https://your-adviser-api.com/search?q=${query}&area=${area}`;          // if (this.priceFilter && this.priceFilter.value !== 'all') {          //   const val = this.priceFilter.value;          //   if (val === 'under50') apiUrl += '&filter_max_price=50';          //   else if (val === '50_100') apiUrl += '&filter_max_price=100';          //   else if (val === '100_200') apiUrl += '&filter_max_price=200';          //   else if (val === '200_500') apiUrl += '&filter_max_price=500';          // }          // const res = await fetch(apiUrl);          // const rawData = await res.json();          // ======================================================================          // Simulating network latency          await new Promise(resolve => setTimeout(resolve, 400));                    const rawData = this.getAdviserMockData();          let offers = [];                    if (rawData && rawData.data && rawData.data.Get && Array.isArray(rawData.data.Get.Deal)) {            offers = rawData.data.Get.Deal;          }                    // Basic client-side filtering for the mock if we want it to react to the query          const q = query.toLowerCase();          const selectedRetailer = (this.retailerSelect && this.retailerSelect.value) ? this.retailerSelect.value.toLowerCase() : null;                    offers.forEach(item => {            const dataObj = item;                        // Apply retailer filter            const itemRetailer = (dataObj.dataRetailer || '').toLowerCase();            if (selectedRetailer && itemRetailer !== selectedRetailer && !itemRetailer.includes(selectedRetailer)) {              return;            }                        // Apply mock price filter            let price = dataObj.dataDiscountedPrice || 0;            if (typeof price === 'string') {              price = parseFloat(price.replace(/[^0-9.]/g, ''));            }            let priceVal = null;            const min = this.customPriceMin ? this.customPriceMin.value : '';            const max = this.customPriceMax ? this.customPriceMax.value : '';            if (min || max) {               priceVal = `${min}_${max}`;            } else if (this.priceFilter && this.priceFilter.value !== 'all') {               priceVal = this.priceFilter.value;            }            if (priceVal) {              if (priceVal === 'under50' && price >= 50) return;              if (priceVal === 'over50' && price <= 50) return;              if (priceVal === 'over30' && price <= 30) return;              if (priceVal === 'over500' && price <= 500) return;              if (priceVal.includes('_')) {                 const parts = priceVal.split('_');                 if (parts[0] && price < parseFloat(parts[0])) return;                 if (parts[1] && price > parseFloat(parts[1])) return;              }            }                        // Map Adviser schema to our widget's expected schema            const mappedData = {              url: dataObj.linkHREF || dataObj.dataLink || '#',              image: dataObj.imageURL || (dataObj.image && dataObj.image.src) || '',              title: dataObj.dataProduct || (dataObj.product && dataObj.product.name) || 'Product Deal',              merchant: dataObj.dataRetailer || 'Retailer',              price: dataObj.dataDiscountedPrice || 0,              currency: dataObj.dataCurrency === 'USD' ? '$' : (dataObj.dataCurrency || '$'),              msrp: dataObj.dataOriginalPrice || null            };                        const titleLow = mappedData.title.toLowerCase();            const merchLow = mappedData.merchant.toLowerCase();                        // Smarter mock filtering            let isMatch = false;            if (q === '' || this.isBroadQuery(q)) {              isMatch = true;            } else if (titleLow.includes(q) || merchLow.includes(q)) {              isMatch = true;            } else if ((q.includes('laptop') || q.includes('mac') || q.includes('pc')) && (titleLow.includes('macbook') || titleLow.includes('laptop'))) {              isMatch = true;            } else if ((q.includes('tv') || q.includes('television')) && (titleLow.includes('tv') || titleLow.includes('oled') || titleLow.includes('qled'))) {              isMatch = true;            } else if ((q.includes('phone') || q.includes('smartphone')) && (titleLow.includes('galaxy') || titleLow.includes('phone'))) {              isMatch = true;            } else if ((q.match(/watch|fitness|run|shoe/)) && (titleLow.includes('forerunner') || titleLow.includes('saucony') || titleLow.includes('watch'))) {              isMatch = true;            }                        if (isMatch) {               this.deals.push(this.extractDealData(mappedData));            }          });                    let rowLimit = this.getRowsLimit();          // Intentionally omitting the slice here to allow "Load More" to work if the API returns more                    this.sortData();          this.render();          if (typeof trackDealsAppeared !== 'undefined') {             trackDealsAppeared(this.widgetId, this.deals, this.revenueId, typeof this.getAreaCode === 'function' ? (this.getAreaCode() === 'GB' ? 'GBP' : 'USD') : 'USD', this.currentQuery, this.widgetTypeName);          }        }        getAdviserMockData() {          return {            "data": {              "Get": {                "Deal": [                  {                    "dataCurrency": "USD",                    "dataDiscountedPrice": 300,                    "dataOriginalPrice": 399,                    "dataProduct": "Samsung Galaxy A36",                    "dataRetailer": "Samsung",                    "imageURL": "https://cdn.mos.cms.futurecdn.net/MqDYsukV3JBG54te6dEs7j.jpg"                  },                  {                    "dataCurrency": "USD",                    "dataDiscountedPrice": 14,                    "dataOriginalPrice": 24,                    "dataProduct": "Blink Mini",                    "dataRetailer": "Amazon",                    "imageURL": "http://cdn.mos.cms.futurecdn.net/3JurmAjHsDa5tPdaHAwEV8.jpg"                  },                  {                    "dataCurrency": "USD",                    "dataDiscountedPrice": 59,                    "dataOriginalPrice": 99,                    "dataProduct": "Ring Video Doorbell",                    "dataRetailer": "Amazon",                    "imageURL": "https://cdn.mos.cms.futurecdn.net/rAh4uR7AsAsALCCLTXnLNJ.jpg"                  },                  {                    "dataCurrency": "USD",                    "dataDiscountedPrice": 10,                    "dataOriginalPrice": 599,                    "dataProduct": "MacBook Neo",                    "dataRetailer": "Amazon",                    "imageURL": "https://cdn.mos.cms.futurecdn.net/Lg4Dvg68j9SbB5CPNrTEpH.jpg"                  },                  {                    "dataCurrency": "USD",                    "dataDiscountedPrice": 749,                    "dataOriginalPrice": 849,                    "dataProduct": "65\\\" Fire TV Omni 4K QLED TV",                    "dataRetailer": "Amazon",                    "imageURL": "https://cdn.mos.cms.futurecdn.net/SG34ZWodUkLTxJvMTbjPYR.jpg"                  },                  {                    "dataCurrency": "USD",                    "dataDiscountedPrice": 71,                    "dataOriginalPrice": 160,                    "dataProduct": "Saucony Hurricane 24",                    "dataRetailer": "Amazon",                    "imageURL": "https://cdn.mos.cms.futurecdn.net/vxf7UD5T2Am7guVzFoFcZ4.jpg"                  },                  {                    "dataCurrency": "USD",                    "dataDiscountedPrice": 649,                    "dataOriginalPrice": 749,                    "dataProduct": "Garmin Forerunner 970",                    "dataRetailer": "Amazon",                    "imageURL": "https://cdn.mos.cms.futurecdn.net/3GKnEu7CdhtxPMfnPCMCiA.png"                  },                  {                    "dataCurrency": "USD",                    "dataDiscountedPrice": 1049,                    "dataOriginalPrice": 1499,                    "dataProduct": "LG 48\\\" C4 4K OLED TV",                    "dataRetailer": "Amazon",                    "imageURL": "https://cdn.mos.cms.futurecdn.net/imvwZV9zoMD6fn9Afuge35.jpg"                  },                  {                    "dataCurrency": "USD",                    "dataDiscountedPrice": 1499,                    "dataOriginalPrice": 2199,                    "dataProduct": "Samsung 49\\\" Odyssey Neo G9 4K Gaming Monitor",                    "dataRetailer": "Amazon",                    "imageURL": "http://cdn.mos.cms.futurecdn.net/XWDEJ5dUAE2nhK8k3Jk7k7.png"                  },                  {                    "dataCurrency": "USD",                    "dataDiscountedPrice": 299,                    "dataOriginalPrice": 699,                    "dataProduct": "EGOHOME Black Memory Foam Mattress (queen)",                    "dataRetailer": "Amazon",                    "imageURL": "https://cdn.mos.cms.futurecdn.net/hMUemtAejNETLVYxNrktzm.jpg"                  }                ]              }            }          };        }        decodeHTML(html) {          if (!html) return '';          const txt = document.createElement("textarea");          txt.innerHTML = String(html);          return txt.value;        }        extractDealData(item) {          const priceRawStr = String(item.price || item.current_price || '0');          const msrpRawStr = String(item.was_price || item.msrp || item.original_price || '0');          const rawPrice = parseFloat(priceRawStr.replace(/[^\d.]/g, '')) || 0;          const rawMsrp = parseFloat(msrpRawStr.replace(/[^\d.]/g, '')) || 0;          const isCheckPrice = rawPrice === 0 || priceRawStr === '0.00' || priceRawStr === '0';                    let originalImageUrl = item.image || item.image_url || item.product_image || '';          let imageUrl = originalImageUrl;          if ((!imageUrl || isCheckPrice) && item.model_image_url) {             imageUrl = item.model_image_url;             originalImageUrl = imageUrl;          } else if ((!imageUrl || isCheckPrice) && item.model_image) {             imageUrl = item.model_image;             originalImageUrl = imageUrl;          }                    if (imageUrl) {            imageUrl = imageUrl.replace(/-(\d+)-(\d+)(\.[a-z.]+)$/i, '$3');          }                    let fallbackImage = '';          if (originalImageUrl && originalImageUrl !== imageUrl) {             fallbackImage = originalImageUrl;          } else if (item.model_image && item.model_image !== imageUrl) {             fallbackImage = item.model_image;          } else if (item.model_image_url && item.model_image_url !== imageUrl) {             fallbackImage = item.model_image_url;          }                    const rawCurrency = item.currency || item.currency_symbol || '$';                    let savingLabel = item.percentage_saving_label || '';          if (!savingLabel && rawMsrp > rawPrice && rawPrice > 0) {            const pct = Math.round(((rawMsrp - rawPrice) / rawMsrp) * 100);            if (pct > 0) {              savingLabel = `${pct}% OFF`;            }          }                    const isPrime = item.shipping && item.shipping.prime === true;                    let scoreRaw = (item.review_score !== undefined && item.review_score !== null && item.review_score > 0) ? parseFloat(item.review_score) : null;          let starRating = 0;          if (scoreRaw !== null) {            starRating = Math.round((scoreRaw > 10 ? scoreRaw / 20 : scoreRaw / 2) * 2) / 2;          }                    return {            id: item.offer_id || item.link || item.url || item.offer_link || Math.random().toString(),            url: item.link || item.url || item.offer_link || '#',            image: imageUrl,            fallbackImage: fallbackImage,            title: item.name || item.title || item.model_name || item.product_name || 'Unknown Product',            brand: item.brand || '',            productName: item.model_name || item.product_name || item.name || '',            merchant: item.merchant_name || item.merchant || item.retailer || 'Retailer',            price: item.price !== undefined ? String(item.price) : '0.00',            currency: this.decodeHTML(rawCurrency),            msrp: item.was_price || item.msrp || item.original_price || null,            rawPrice: rawPrice,            rawMsrp: rawMsrp,            hasWasPrice: (item.was_price !== undefined && item.was_price !== null),            isCheckPrice: isCheckPrice,            savingLabel: savingLabel,            isPrime: isPrime,            starRating: starRating > 0 ? starRating : null,            modelId: item.model_id || '',            productKey: item.product_key || '',            merchantId: (item.merchant && typeof item.merchant === 'object') ? item.merchant.id || '' : '',            matchId: item.match_id || '',            merchantNetwork: (item.merchant && typeof item.merchant === 'object') ? item.merchant.an || '' : '',            merchantUrl: (item.merchant && typeof item.merchant === 'object') ? item.merchant.url || '' : '',            modelBrand: item.model_brand || item.brand || '',            modelParent: item.model_parent || ''          };        }        sortData() {          const sortVal = this.sortSelect ? this.sortSelect.value : 'date_desc';          if (sortVal === 'price_asc') {            this.deals.sort((a, b) => a.rawPrice - b.rawPrice);          } else if (sortVal === 'price_desc') {            this.deals.sort((a, b) => b.rawPrice - a.rawPrice);          } else if (sortVal === 'discount_desc') {            this.deals.sort((a, b) => {              const aDiscount = a.rawMsrp > a.rawPrice ? (a.rawMsrp - a.rawPrice) : 0;              const bDiscount = b.rawMsrp > b.rawPrice ? (b.rawMsrp - b.rawPrice) : 0;              return bDiscount - aDiscount;            });          } else if (sortVal === 'date_desc') {             this.deals.sort((a, b) => {                let dateA = 0;                let dateB = 0;                if (a && a.modifiedDate) {                   const valA = Array.isArray(a.modifiedDate) ? a.modifiedDate[0] : a.modifiedDate;                   dateA = new Date(valA).getTime();                   if (isNaN(dateA)) dateA = 0;                }                if (b && b.modifiedDate) {                   const valB = Array.isArray(b.modifiedDate) ? b.modifiedDate[0] : b.modifiedDate;                   dateB = new Date(valB).getTime();                   if (isNaN(dateB)) dateB = 0;                }                return dateB - dateA;             });          }        }        getFilteredDeals() {          let filteredDeals = [...this.deals];                    if (this.dealModeToggle && this.dealModeToggle.checked) {            filteredDeals = filteredDeals.filter(d => d.hasWasPrice || (d.msrp && d.rawMsrp > d.rawPrice));          }                    return filteredDeals;        }        showLoading() {          const _div = '<' + '/div>';          const skeletonCardHtml = `            \x3Cdiv class="tg-df-card">              \x3Cdiv class="tg-df-card-image-box">                \x3Cdiv class="tg-df-skeleton tg-df-skeleton-img">${_div}              ${_div}              \x3Cdiv class="tg-df-card-body">                \x3Cdiv class="tg-df-skeleton tg-df-skeleton-text short">${_div}                \x3Cdiv class="tg-df-skeleton tg-df-skeleton-text title">${_div}                \x3Cdiv class="tg-df-skeleton tg-df-skeleton-text title">${_div}                \x3Cdiv class="tg-df-card-footer mt-auto">                  \x3Cdiv class="tg-df-skeleton tg-df-skeleton-text short" style="height:24px;">${_div}                ${_div}              ${_div}              \x3Cdiv class="tg-df-skeleton tg-df-skeleton-text" style="height:44px; margin:0; border-radius:0;">${_div}            ${_div}`;          this.grid.innerHTML = Array(4).fill(skeletonCardHtml).join('');        }        showError() {          const _div = '<' + '/div>';          this.grid.innerHTML = `\x3Cdiv class="tg-df-message">            An error occurred while finding deals. Please check your connection and try again.          ${_div}`;        }        escapeHTML(str) {          if (!str) return '';          return String(str).replace(/[&<>'"]/g, tag => ({              '&': '&', '<': '<', '>': '>', "'": ''', '"': '"'          }[tag] || tag));        }                bindCouponButtons() {          const btns = this.root.querySelectorAll('.tg-df-tag-coupons');          btns.forEach(btn => {            btn.addEventListener('click', (e) => {              e.preventDefault();              e.stopPropagation();              const merchant = btn.getAttribute('data-merchant');              this.openVouchersModal(merchant);            });          });                    const closeBtn = this.root.querySelector('#tg-df-vouchers-close');          const backdrop = this.root.querySelector('#tg-df-vouchers-modal');          if (closeBtn) {            closeBtn.onclick = () => this.closeVouchersModal();          }          if (backdrop) {            backdrop.onclick = (e) => {              if (e.target === backdrop) this.closeVouchersModal();            };          }        }                closeVouchersModal() {          const backdrop = this.root.querySelector('#tg-df-vouchers-modal');          if (backdrop) backdrop.classList.remove('active');        }                async checkMerchantsCouponsBulk(merchants) {          if (!merchants || merchants.length === 0) return {};          const controller = new AbortController();          const timeoutId = setTimeout(() => controller.abort(), 4000);          try {            const area = this.getAreaCode();            const url = new URL('https://search-api.fie.future.net.uk/widget.php');            url.searchParams.append('model_name', 'Everything');            url.searchParams.append('language', 'en-GB');            if (area) url.searchParams.append('area', area);            url.searchParams.append('combine_product_types', '1');            url.searchParams.append('filter_merchant_name', merchants.join(','));            url.searchParams.append('all_filters', 'false');            url.searchParams.append('exclude_unlabelled', 'false');            url.searchParams.append('include_specs', 'false');            url.searchParams.append('sort', 'voucher');            url.searchParams.append('distinct_merchants', 'natural');            url.searchParams.append('filter_product_types', 'vouchers,offer_deals,newsletter');            url.searchParams.append('rows', '120');            url.searchParams.append('origin', 'widgets-clientside');                        let res; try { res = await fetch(url.toString(), { signal: controller.signal }); } catch (e) { return {}; }            clearTimeout(timeoutId);            if (!res.ok) return {};            const data = await res.json();                        let offers = [];            if (data && data.widget && data.widget.data && Array.isArray(data.widget.data.offers)) {              offers = data.widget.data.offers;            } else if (data && data.data && Array.isArray(data.data.offers)) {              offers = data.data.offers;            } else if (Array.isArray(data)) {              offers = data;            } else if (data && Array.isArray(data.offers)) {              offers = data.offers;            } else if (data && data.offers && Array.isArray(data.offers.offer)) {              offers = data.offers.offer;            } else if (data && Array.isArray(data.data)) {              offers = data.data;            }                        const foundMerchants = new Set();            offers.forEach(o => {              let mName = o.merchant_name || o.merchant || o.retailer;              if (mName && typeof mName === 'object') mName = mName.name;              if (mName) foundMerchants.add(String(mName).toLowerCase());            });            const resultMap = {};            merchants.forEach(m => {              if (m) resultMap[m] = foundMerchants.has(String(m).toLowerCase());            });            return resultMap;          } catch (e) {            return {};          }        }                async openVouchersModal(merchantName) {          const backdrop = this.root.querySelector('#tg-df-vouchers-modal');          const title = this.root.querySelector('#tg-df-vouchers-title');          const content = this.root.querySelector('#tg-df-vouchers-content');                    if (!backdrop || !content) return;                    // HACK: Hide closing tags          const _div = '<' + '/div>';          const _span = '<' + '/span>';          const _a = '<' + '/a>';          const _h4 = '<' + '/h4>';          const _svg = '<' + '/svg>';          const _circle = '<' + '/circle>';          const _polyline = '<' + '/polyline>';          const _rect = '<' + '/rect>';          const _path = '<' + '/path>';                    title.innerText = `${merchantName} Coupons & Deals`;          content.innerHTML = `\x3Cdiv class="tg-df-skeleton tg-df-skeleton-text">${_div}                               \x3Cdiv class="tg-df-skeleton tg-df-skeleton-text">${_div}`;          backdrop.classList.add('active');                    try {            const area = this.getAreaCode();            const url = new URL('https://search-api.fie.future.net.uk/widget.php');            url.searchParams.append('model_name', 'Everything');            url.searchParams.append('language', 'en-GB');            if (area) url.searchParams.append('area', area);            url.searchParams.append('combine_product_types', '1');            url.searchParams.append('filter_merchant_name', merchantName);            url.searchParams.append('all_filters', 'false');            url.searchParams.append('exclude_unlabelled', 'false');            url.searchParams.append('include_specs', 'false');            url.searchParams.append('sort', 'voucher');            url.searchParams.append('distinct_merchants', 'natural');            url.searchParams.append('filter_product_types', 'vouchers,offer_deals,newsletter');            url.searchParams.append('rows', '50');            url.searchParams.append('origin', 'widgets-clientside');                        const res = await fetch(url.toString());            if (!res.ok) throw new Error('API Error');            const data = await res.json();                        let offers = [];            if (data && data.widget && data.widget.data && Array.isArray(data.widget.data.offers)) {              offers = data.widget.data.offers;            } else if (data && data.data && Array.isArray(data.data.offers)) {              offers = data.data.offers;            } else if (Array.isArray(data)) {              offers = data;            } else if (data && Array.isArray(data.offers)) {              offers = data.offers;            } else if (data && data.offers && Array.isArray(data.offers.offer)) {              offers = data.offers.offer;            } else if (data && Array.isArray(data.data)) {              offers = data.data;            }                        if (offers.length === 0) {              content.innerHTML = `\x3Cdiv class="tg-df-message">No vouchers currently available for ${this.escapeHTML(merchantName)}.${_div}`;              return;            }                        content.innerHTML = offers.map((v, idx) => {              let offerObj = v;              if (v.offers && v.offers.offer) {                offerObj = Array.isArray(v.offers.offer) ? v.offers.offer[0] : v.offers.offer;              } else if (v.offer) {                offerObj = Array.isArray(v.offer) ? v.offer[0] : v.offer;              }              let logoUrl = v.logo_url || offerObj.logo_url || '';              if (!logoUrl && v.merchant) {                if (Array.isArray(v.merchant) && v.merchant.length > 0) logoUrl = v.merchant[0].logo_url || '';                else logoUrl = v.merchant.logo_url || '';              }                            const offerName = offerObj.name || offerObj.title || v.name || v.title || 'Special Offer';              const endTime = offerObj.end_time || v.end_time || '';              const linkUrl = offerObj.link || offerObj.url || v.link || v.url || '#';                            let foundVoucherCode = '';              const findVoucherCode = (obj) => {                if (!obj || typeof obj !== 'object') return;                if (obj.type === 'voucher_code' && obj.display_value) {                  foundVoucherCode = obj.display_value;                  return;                }                if (Array.isArray(obj)) {                  for (const item of obj) {                    findVoucherCode(item);                    if (foundVoucherCode) return;                  }                } else {                  for (const k in obj) {                    if (Object.prototype.hasOwnProperty.call(obj, k)) {                      findVoucherCode(obj[k]);                      if (foundVoucherCode) return;                    }                  }                }              };              findVoucherCode(offerObj);              if (!foundVoucherCode) findVoucherCode(v);                            const voucherCode = foundVoucherCode || offerObj.voucher_code || v.voucher_code || '';              const codeHtml = voucherCode ? `\x3Cspan class="tg-df-voucher-code" data-action="copy-code" data-code="${this.escapeHTML(voucherCode)}" title="Copy to clipboard">                \x3Cspan class="tg-df-voucher-code-text">${this.escapeHTML(voucherCode)}${_span}                \x3Csvg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="margin-left:6px;flex-shrink:0;" class="tg-df-voucher-copy-icon">                  \x3Crect x="9" y="9" width="13" height="13" rx="2" ry="2">${_rect}                  \x3Cpath d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1">${_path}                ${_svg}              ${_span}` : '';                            const logoHtml = logoUrl                 ? `\x3Cimg src="${this.escapeHTML(logoUrl)}" alt="${this.escapeHTML(offerName)}" class="tg-df-voucher-logo" />`                 : `\x3Cdiv class="tg-df-voucher-logo" style="background:#e2e8f0;">${_div}`;                            let expiryHtml = '';              if (endTime) {                let dStr = endTime;                if (!isNaN(dStr) && String(dStr).length === 10) dStr = Number(dStr) * 1000;                const d = new Date(dStr);                if (!isNaN(d.getTime())) {                  const options = { year: 'numeric', month: 'short', day: 'numeric' };                  expiryHtml = `                    \x3Cdiv class="tg-df-voucher-expiry">                      \x3Csvg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">                        \x3Ccircle cx="12" cy="12" r="10">${_circle}                        \x3Cpolyline points="12 6 12 12 16 14">${_polyline}                      ${_svg}                      Expires ${d.toLocaleDateString(undefined, options)}                    ${_div}`;                }              }              const revenueIdVal = generateRevenueId(linkUrl, offerName, merchantName, null);              const rewrittenLinkUrl = rewriteAffiliateLink(linkUrl, area, revenueIdVal);              return `                \x3Ca href="${this.escapeHTML(rewrittenLinkUrl)}" target="_blank" rel="noopener nofollow" class="tg-df-voucher-item"                  data-action="voucher-click"                  data-product-name="${this.escapeHTML(offerName)}"                  data-merchant-name="${this.escapeHTML(merchantName)}"                  data-analytics-id="${this.escapeHTML(offerObj.offer_id || offerObj.id || v.id || '')}"                  data-price=""                  data-previous-price=""                  data-original-link="${this.escapeHTML(linkUrl)}"                  data-revenue-id="${revenueIdVal}"                  data-index="${idx}"                  data-total="${offers.length}"                  data-in-stock="true"                  data-currency="USD"                  data-model-id="${this.escapeHTML(offerObj.model_id || v.model_id || offerObj.id || v.id || '')}"                  data-merchant-id="${this.escapeHTML(offerObj.merchant_id || offerObj.merchant?.id || '')}"                >                  ${logoHtml}                  \x3Cdiv class="tg-df-voucher-content">                    \x3Ch4 class="tg-df-voucher-title">${this.escapeHTML(offerName)}${_h4}                    ${codeHtml}                    ${expiryHtml}                  ${_div}                ${_a}              `;            }).join('');                        // Attach copy functionality            const copyBtns = content.querySelectorAll('[data-action="copy-code"]');            copyBtns.forEach(btn => {              btn.addEventListener('click', async (e) => {                e.preventDefault();                e.stopPropagation();                                const code = btn.getAttribute('data-code');                if (!code) return;                                try {                  const copyToClipboard = async (text) => {                     if (window.navigator.clipboard && window.isSecureContext) {                        try { await window.navigator.clipboard.writeText(text); return; } catch (e) {}                     }                     const textArea = document.createElement("textarea");                     textArea.value = text;                     textArea.style.position = "fixed";                     document.body.appendChild(textArea);                     textArea.focus();                     textArea.select();                     document.execCommand('copy');                     textArea.remove();                  };                  await copyToClipboard(code);                                    // Visual feedback                  btn.classList.add('copied');                  const textSpan = btn.querySelector('.tg-df-voucher-code-text');                  const iconSvg = btn.querySelector('.tg-df-voucher-copy-icon');                                    const origText = textSpan.innerText;                  const origIcon = iconSvg.innerHTML;                                    textSpan.innerText = 'Copied!';                  iconSvg.innerHTML = `\x3Cpolyline points="20 6 9 17 4 12">${_polyline}`;                                    setTimeout(() => {                    if (btn) {                      btn.classList.remove('copied');                      if (textSpan) textSpan.innerText = origText;                      if (iconSvg) iconSvg.innerHTML = origIcon;                    }                  }, 2000);                                    trackElementInteraction({                    id: 'voucher-code-copy',                    name: 'Copy Voucher Code',                    label: `Copied ${code} for ${merchantName}`                  });                } catch (err) {                  console.warn('Failed to copy text: ', err);                }              });            });            // Attach voucher click tracking            const voucherBtns = content.querySelectorAll('[data-action="voucher-click"]');            voucherBtns.forEach(btn => {              btn.addEventListener('click', (e) => {                if (e.target.closest('[data-action="copy-code"]')) return;                                const productName = btn.getAttribute('data-product-name');                const merchantNameAttr = btn.getAttribute('data-merchant-name');                const productId = btn.getAttribute('data-analytics-id');                const price = parseFloat(btn.getAttribute('data-price')) || null;                const prevPriceStr = btn.getAttribute('data-previous-price');                const previousPrice = prevPriceStr ? parseFloat(prevPriceStr) : null;                const originalLink = btn.getAttribute('data-original-link');                const rewrittenLink = btn.getAttribute('href');                const revenueId = btn.getAttribute('data-revenue-id');                const index = parseInt(btn.getAttribute('data-index'), 10) || 0;                const inStock = btn.getAttribute('data-in-stock') === 'true';                const totalText = btn.getAttribute('data-total');                const totalDeals = parseInt(totalText, 10) || 0;                const productCategoryName = 'deals';                const trackingParams = {                  widgetId: this.widgetId,                  productCategoryName: productCategoryName,                  product: {                    modelId: btn.getAttribute('data-model-id') || null,                    matchId: btn.getAttribute('data-match-id') || null,                    brand: btn.getAttribute('data-model-brand') || null,                    parent: btn.getAttribute('data-model-parent') || null,                    name: productName,                    price: price,                    previousPrice: previousPrice,                    link: rewrittenLink,                    originalLink: originalLink,                    inStock: inStock                  },                  zeroBasedProductIndexOrNull: index,                  totalDealsOrProducts: totalDeals,                   merchant: {                    id: btn.getAttribute('data-merchant-id') || null,                    network: btn.getAttribute('data-merchant-network') || null,                    url: btn.getAttribute('data-merchant-url') || null,                    name: merchantNameAttr                  },                  revenueId: revenueId,                  widgetTypeName: this.widgetTypeName,                  isoCurrencyCode: btn.getAttribute('data-currency') || 'USD'                };                if (typeof trackDealClick === 'function') {                  trackDealClick(trackingParams);                }              });            });                                  } catch (e) {            console.warn(e);            content.innerHTML = `\x3Cdiv class="tg-df-message">Failed to load vouchers.${_div}`;          }        }        render() {          try {            if (this.getViewMode() === 'savings_squad' && this.airedaleTags.length > 0) {              if (this.categoryFilterWrapper) {                 this.categoryFilterWrapper.style.display = 'flex';              }              if (this.categoryFilter) {                 const _option = '<' + '/option>';                 let optionsHtml = `\x3Coption value="all">All Categories${_option}`;                 this.airedaleTags.forEach(tag => {                    const isSelected = this.activeDealTag === tag ? 'selected' : '';                    optionsHtml += `\x3Coption value="${this.escapeHTML(tag)}" ${isSelected}>${this.escapeHTML(tag)}${_option}`;                 });                 this.categoryFilter.innerHTML = optionsHtml;                 this.categoryFilter.value = this.activeDealTag || 'all';              }            } else {               if (this.categoryFilterWrapper) {                  this.categoryFilterWrapper.style.display = 'none';               }            }            const displayDeals = this.getFilteredDeals();          // HACK: Hide closing tags from the CMS HTML sanitizer so it doesn't strip them during in-page injection          const _div = '<' + '/div>';          const _span = '<' + '/span>';          const _a = '<' + '/a>';          const _h3 = '<' + '/h3>';          const _p = '<' + '/p>';          const _strong = '<' + '/strong>';          const _sup = '<' + '/sup>';          const _button = '<' + '/button>';          if (displayDeals.length === 0) {            if (this.currentQuery.length > 2 || (this.getViewMode() === 'savings_squad')) {              if (this.deals.length > 0) {                 this.grid.innerHTML = `\x3Cdiv class="tg-df-message">                  No deals match your selected filters.                ${_div}`;              } else if (this.getViewMode() === 'savings_squad' && this.currentQuery.length <= 2) {                 // Do not show "no exact matches" if query is empty for savings_squad                 this.grid.innerHTML = '';              } else {                 this.grid.innerHTML = `\x3Cdiv class="tg-df-message">                  No exact matches found for "\x3Cstrong>${this.escapeHTML(this.currentQuery)}${_strong}". Try adjusting your search term.                ${_div}`;              }            } else {              this.grid.innerHTML = `\x3Cdiv class="tg-df-message">                Search product or category names to discover the best deals from across the web.              ${_div}`;            }            return;          }          let dealsHtml = displayDeals.slice(0, this.displayLimit).map((deal, index) => {            try {               const currencySym = this.escapeHTML(deal.currency);               const isoCurrencyCode = normalizeCurrency(currencySym);               const escapedPrice = this.escapeHTML(deal.price);               const escapedMsrp = this.escapeHTML(deal.msrp);               const areaCode = this.getAreaCode();                              const revenueId = generateRevenueId(deal.url, deal.title, deal.merchant, null);               const originalLink = deal.url;               const rewrittenLink = rewriteAffiliateLink(deal.url, areaCode, revenueId);                        const productCategoryName = 'deals';            const dataAttr = `              data-action="${deal.isCheckPrice ? 'view-similar-click' : 'deal-click'}"              data-analytics-id="${this.escapeHTML(deal.externalProductId || deal.id || '')}"              data-product-name="${this.escapeHTML(deal.title)}"              data-merchant-name="${this.escapeHTML(deal.merchant)}"              data-price="${deal.rawPrice || ''}"              data-previous-price="${deal.rawMsrp || ''}"              data-original-link="${this.escapeHTML(originalLink)}"              data-revenue-id="${revenueId}"              data-index="${index}"              data-total="${displayDeals.length}"              data-in-stock="${deal.inStock !== false}"              data-currency="${this.escapeHTML(isoCurrencyCode)}"              data-model-id="${this.escapeHTML(deal.modelId || '')}"              data-product-key="${this.escapeHTML(deal.productKey || '')}"              data-merchant-id="${this.escapeHTML(deal.merchantId || '')}"            `;                        let priceGroupHtml = '';            let isSavingsSquadMode = this.getViewMode() === 'savings_squad';            let ctaText = 'View Deal';            let formattedPrice = '';            let msrpHtml = '';                        if (deal.isCheckPrice) {              ctaText = 'View Deal';              if (isSavingsSquadMode) {                priceGroupHtml = ``;              } else {                priceGroupHtml = `                  \x3Cdiv class="tg-df-card-price-group">                    \x3Cspan class="tg-df-card-price" style="font-size: 15px; font-weight: 500; font-style: italic;">See price at retailer${_span}                  ${_div}                `;              }            } else {              // Format Price              formattedPrice = escapedPrice.includes(currencySym)                 ? escapedPrice                 : `${currencySym}${escapedPrice}`;                              // Format MSRP              msrpHtml = deal.msrp && deal.rawMsrp > deal.rawPrice                ? `\x3Cspan class="tg-df-card-msrp">${escapedMsrp.includes(currencySym) ? escapedMsrp : currencySym + escapedMsrp}${_span}`                : '';                              priceGroupHtml = isSavingsSquadMode ? `` : `                \x3Cdiv class="tg-df-card-price-group">                  \x3Cspan class="tg-df-card-price">${formattedPrice}${_span}                  ${msrpHtml}                ${_div}              `;            }                        const discountBadgeHtml = deal.savingLabel && !deal.isCheckPrice              ? `\x3Cspan class="tg-df-card-discount-badge">${this.escapeHTML(deal.savingLabel)}${_span}`              : '';                          // HACK for CMS            const _button = '<' + '/button>';            const _svg = '<' + '/svg>';            const _path = '<' + '/path>';            const _rect = '<' + '/rect>';            const _circle = '<' + '/circle>';            const _polyline = '<' + '/polyline>';            const _line = '<' + '/line>';                        let badgesHtml = '';            const primeBadge = deal.isPrime ? `              \x3Cspan class="tg-df-tag tg-df-tag-prime">                \x3Csvg width="12" height="12" viewBox="0 0 24 24" fill="currentColor">                  \x3Cpath d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z">${_path}                ${_svg} Prime              ${_span}            ` : '';                        const couponsBadge = deal.merchant && deal.merchant.toLowerCase().includes('amazon') ? '' : `              \x3Cdiv class="tg-df-coupon-wrapper" data-merchant="${this.escapeHTML(deal.merchant)}" style="display:inline-flex; align-items:center;">                \x3Cdiv class="tg-df-coupon-spinner">${_div}                \x3Cbutton type="button" class="tg-df-tag tg-df-tag-coupons" data-action="coupons-click" data-merchant="${this.escapeHTML(deal.merchant)}" style="display:none;">                  \x3Csvg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">                    \x3Cpath d="M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z">${_path}                    \x3Cline x1="7" y1="7" x2="7.01" y2="7">${_line}                  ${_svg} Coupons                ${_button}              ${_div}            `;                        // Note: We always add coupons badge if there's a chance, but to allow 3-line titles we check wrapper display state            badgesHtml = `              \x3Cdiv class="tg-df-card-badges">                ${primeBadge}                ${couponsBadge}              ${_div}            `;            const _linearGradient = '<' + '/linearGradient>';            const _polygon = '<' + '/polygon>';            const _stop = '<' + '/stop>';            const _defs = '<' + '/defs>';                        let starHtml = '';            if (deal.starRating) {              let rating = deal.starRating;                            if (rating > 0) {                const fullStars = Math.floor(rating);                const halfStar = (rating - fullStars) >= 0.5 ? 1 : 0;                const emptyStars = Math.max(0, 5 - fullStars - halfStar);                const blue = '#1f69ff'; // Tom's guide brand color from VIEW DEAL button                const gray = '#cbd5e1';                                const starSvgFull = `\x3Csvg width="14" height="14" viewBox="0 0 24 24" fill="${blue}" stroke="${blue}" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">\x3Cpolygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26">${_polygon}${_svg}`;                                const gradId = 'half_grad_' + Math.floor(Math.random()*1000000);                const starSvgHalf = `\x3Csvg width="14" height="14" viewBox="0 0 24 24" stroke="${blue}" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">\x3Cdefs>\x3ClinearGradient id="${gradId}" x1="0" x2="1" y1="0" y2="0">\x3Cstop offset="50%" stop-color="${blue}">${_stop}\x3Cstop offset="50%" stop-color="transparent">${_stop}${_linearGradient}${_defs}                  \x3Cpolygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26" fill="url(#${gradId})">${_polygon}${_svg}`;                                  const starSvgEmpty = `\x3Csvg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="${gray}" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">\x3Cpolygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26">${_polygon}${_svg}`;                                let stars = [];                for (let i=0; i<fullStars; i++) stars.push(starSvgFull);                if (halfStar) stars.push(starSvgHalf);                for (let i=0; i<emptyStars; i++) stars.push(starSvgEmpty);                                starHtml = `\x3Cdiv class="tg-df-card-stars" style="display:flex;align-items:center;margin-bottom:8px;font-size:13px;font-weight:600;color:var(--tg-df-text-muted);">                  \x3Cspan style="margin-right:6px;">Tom's Guide:${_span}                  \x3Cdiv style="display:flex;gap:2px;">                    ${stars.join('')}                  ${_div}                ${_div}`;              }            }            let htmlOutput = '';            if (isSavingsSquadMode) {              htmlOutput += `              \x3Cdiv class="hawk-deal-widget-container tg-df-mobile-only" data-collapsible="true">                ${this.editorMode ? `\x3Cinput type="checkbox" class="tg-df-deal-checkbox" data-id="${this.escapeHTML(deal.id)}" ${this.selectedDeals.has(deal.id) ? 'checked' : ''} style="margin-bottom: 10px;">` : ''}                \x3Cdiv class="hawk-deal-widget-wrap">                  \x3Cdiv class="hawk-deal-widget-image-container">                    \x3Ca data-google-interstitial="false" aria-label="View ${this.escapeHTML(deal.title)} on ${this.escapeHTML(deal.merchant)}" href="${this.escapeHTML(rewrittenLink)}" rel="sponsored noopener" target="_blank" class="hawk-affiliate-link-deal-widget" ${dataAttr}>                      \x3Cimg ${deal.image ? `src="${this.escapeHTML(deal.image)}"` : ''} alt="${this.escapeHTML(deal.title)}" class="hawk-lazy-image-deal-widget" loading="lazy" width="140" height="160" onerror="${deal.fallbackImage ? `if(!this.dataset.fb) { this.dataset.fb='1'; this.src='${this.escapeHTML(deal.fallbackImage)}'; } else { this.style.opacity='0'; }` : `this.style.opacity='0';`}">                    ${_a}                  ${_div}                  \x3Cdiv class="hawk-deal-widget-text-cta-container">                    \x3Cdiv class="hawk-deal-widget-text-body-container">                      \x3Cdiv class="hawk-deal-widget-text-body-main">                        \x3Ca data-google-interstitial="false" aria-label="View ${this.escapeHTML(deal.title)} on ${this.escapeHTML(deal.merchant)}" href="${this.escapeHTML(rewrittenLink)}" class="hawk-affiliate-link-container" rel="sponsored noopener" target="_blank" ${dataAttr}>                          ${deal.isCheckPrice ? `                            \x3Cspan class="hawk-deal-widget-title-product-title">${this.escapeHTML(deal.title)}${_span}                          ` : `                            \x3Cspan class="hawk-deal-widget-title-product-title">${deal.brand ? this.escapeHTML(deal.brand) + ' ' : ''}${this.escapeHTML(deal.productName || deal.title || '')}:${_span}                          `}                        ${_a}                        ${!deal.isCheckPrice && deal.rawMsrp && deal.rawMsrp > deal.rawPrice ? `                          \x3Ca data-google-interstitial="false" aria-label="View ${this.escapeHTML(deal.title)} on ${this.escapeHTML(deal.merchant)}" href="${this.escapeHTML(rewrittenLink)}" class="hawk-affiliate-link-container" rel="sponsored noopener" target="_blank" ${dataAttr}>                            \x3Cspan class="hawk-deal-widget-title-was-price">was ${currencySym}${escapedMsrp}${_span}                          ${_a}                        ` : ''}                        \x3Ca data-google-interstitial="false" aria-label="View ${this.escapeHTML(deal.title)} on ${this.escapeHTML(deal.merchant)}" href="${this.escapeHTML(rewrittenLink)}" class="hawk-affiliate-link-container" rel="sponsored noopener" target="_blank" ${dataAttr}>                          \x3Cspan class="hawk-deal-widget-title-retailer-price">                            ${!deal.isCheckPrice ? `                              \x3Cspan class="hawk-deal-widget-title-price">now ${formattedPrice}${_span}                              \x3Cspan class="hawk-deal-widget-title-retailer"> at ${this.escapeHTML(deal.merchant)}${_span}                            ` : `                              \x3Cspan class="hawk-deal-widget-title-price">See price at ${this.escapeHTML(deal.merchant)}${_span}                            `}                          ${_span}                        ${_a}                        ${deal.description ? `\x3Cdiv class="hawk-deal-widget-text-body-description tg-df-card-desc-container" style="margin-bottom: 12px; position: relative;">                          \x3Cp class="tg-df-card-desc-content" style="font-size: 13px; color: var(--tg-df-text-muted); margin-bottom: 0; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;">${this.escapeHTML(deal.description)}${_p}                          \x3Cbutton type="button" class="tg-df-card-desc-btn" style="display: none; appearance: none; border: none; color: #000000; font-size: 11px; font-weight: 700; text-transform: uppercase; cursor: pointer; font-family: inherit; position: absolute; bottom: 2px; right: 0; background: linear-gradient(to right, transparent, #fff 20%, #fff); padding: 0 0 0 16px;" onclick="                            var c = this.parentNode;                            if (this.dataset.expanded === 'true') {                              var pd = (c.tagName === 'P') ? c : this.previousElementSibling;                              if (c.tagName === 'P') { c.parentNode.appendChild(this); pd = c; }                              pd.style.display = '-webkit-box';                              pd.style.webkitLineClamp = '3';                              this.textContent = 'READ MORE';                              this.style.position = 'absolute';                              this.style.background = 'linear-gradient(to right, transparent, #fff 20%, #fff)';                              this.style.paddingLeft = '16px';                              this.dataset.expanded = 'false';                            } else {                              var pd = this.previousElementSibling;                              pd.style.display = 'inline';                              pd.style.webkitLineClamp = 'unset';                              this.textContent = 'READ LESS';                              this.style.position = 'static';                              this.style.background = 'transparent';                              this.style.paddingLeft = '4px';                              this.dataset.expanded = 'true';                              pd.appendChild(this);                            }                          ">READ MORE${_button}                        \x3C/div>` : ''}                      ${_div}                    ${_div}                    ${deal.authorName ? `                      \x3Cdiv class="tg-df-author-line-mobile" style="padding: 0 0 12px 0; background: transparent;">                         \x3Cdiv style="display: flex; align-items: center; gap: 12px;">                            ${deal.authorImage ? `\x3Cimg src="${this.escapeHTML(deal.authorImage)}" alt="${this.escapeHTML(deal.authorName)}" class="tg-df-author-img" width="40" height="40" style="border-radius: 50%; object-fit: cover; flex-shrink: 0;">` : ''}                            \x3Cdiv style="display: flex; flex-direction: column;">                               \x3Cdiv style="font-size: 10px; color: var(--tg-df-text-muted); text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 2px; font-weight: 600;">\x3Cspan style="color: #FF6600;">${this.escapeHTML(deal.merchant)}${_span} deal recommended by:${_div}                               \x3Cdiv style="font-size: 11px; color: var(--tg-df-text); line-height: 1.3;">                                  \x3Cstrong>\x3Ca href="https://www.tomsguide.com/${this.escapeHTML(deal.documentUrl || '').replace(/^\/+/, '')}" target="_blank" rel="noopener nofollow" style="text-decoration: none; color: inherit; border-bottom: 1px dotted var(--tg-df-text-muted);">${this.escapeHTML(deal.authorName)}${_a}${_strong}                                  ${deal.authorRole && !['null', 'nul', 'undefined'].includes(String(deal.authorRole).toLowerCase()) ? ` • ${this.escapeHTML(deal.authorRole)}` : ''}                                  ${deal.modifiedDate ? `\x3Cdiv style="color: var(--tg-df-text-muted); margin-top: 2px;">${getTimeAgo(deal.modifiedDate)}${_div}` : ''}                               ${_div}                            ${_div}                         ${_div}                      ${_div}                    ` : ''}                    \x3Cdiv class="hawk-deal-widget-footer">                      \x3Cdiv class="hawk-deal-widget-button-wrapper">                        \x3Cdiv class="hawk-deal-widget-preferred-partner-wrapper">                          \x3Ca data-google-interstitial="false" aria-label="View ${this.escapeHTML(deal.title)} on ${this.escapeHTML(deal.merchant)}" href="${this.escapeHTML(rewrittenLink)}" class="hawk-affiliate-link-deal-button" rel="sponsored noopener" target="_blank" ${dataAttr}>                            \x3Cspan>View Deal${_span}                          ${_a}                        ${_div}                      ${_div}                    ${_div}                  ${_div}                ${_div}              ${_div}              `;            }            htmlOutput += `              \x3Cdiv class="tg-df-card ${isSavingsSquadMode ? 'tg-df-desktop-only' : ''}">                ${this.editorMode ? `\x3Cinput type="checkbox" class="tg-df-deal-checkbox" data-id="${this.escapeHTML(deal.id)}" ${this.selectedDeals.has(deal.id) ? 'checked' : ''}>` : ''}                \x3Cdiv class="tg-df-card-image-box">                  ${discountBadgeHtml}                  \x3Ca href="${this.escapeHTML(rewrittenLink)}" ${dataAttr} target="_blank" rel="noopener nofollow" style="display: flex; align-items: center; justify-content: center; width: 100%; height: 100%;">                    \x3Cimg ${deal.image ? `src="${this.escapeHTML(deal.image)}"` : ''} alt="${this.escapeHTML(deal.title)}" class="tg-df-card-image" loading="lazy" onerror="${deal.fallbackImage ? `if(!this.dataset.fb) { this.dataset.fb='1'; this.src='${this.escapeHTML(deal.fallbackImage)}'; } else { this.style.opacity='0'; }` : `this.style.opacity='0';`}">                  ${_a}                  \x3Cdiv class="tg-df-card-merchant-wrapper" style="position: absolute; bottom: 0; right: 0; background: transparent; padding: 8px 12px; z-index: 10;">                     \x3Cspan class="tg-df-card-merchant-pill" style="text-align: right; margin-bottom: 0;" title="${this.escapeHTML(deal.merchant)}">${this.escapeHTML(deal.merchant)}${_span}                  ${_div}                ${_div}                \x3Cdiv class="tg-df-card-body">                  ${starHtml}                  ${badgesHtml}                  \x3Ch3 class="tg-df-card-title tg-df-custom-savings-squad-title" title="${this.escapeHTML(deal.title)}">                    \x3Ca href="${this.escapeHTML(rewrittenLink)}" disable-tracking="true" target="_blank" rel="noopener nofollow" style="text-decoration: none; color: inherit;">                      ${isSavingsSquadMode                         ? (deal.isCheckPrice                             ? (deal.title && deal.title.includes(':')                                 ? `\x3Cstrong>${this.escapeHTML(deal.title.substring(0, deal.title.indexOf(':') + 1))}${_strong}\x3Cspan style="color: #1f69ff; font-weight: normal;">${this.escapeHTML(deal.title.substring(deal.title.indexOf(':') + 1))}${_span}`                                : this.escapeHTML(deal.title)                              )                             : `\x3Cstrong>${deal.brand ? this.escapeHTML(deal.brand) + ' ' : ''}${this.escapeHTML(deal.productName || deal.title || '')}:${_strong} ${deal.rawMsrp && deal.rawMsrp > deal.rawPrice ? `\x3Cspan style="color: #d0021b; text-decoration: line-through; font-weight: normal; margin-right: 4px;">was ${currencySym}${escapedMsrp}${_span} ` : ''}\x3Cspan style="color: #1f69ff; font-weight: normal;">now ${formattedPrice} at ${this.escapeHTML(deal.merchant)}${_span}`                          )                        : this.escapeHTML(deal.title)                      }                    ${_a}                  ${_h3}                  ${deal.description ? `\x3Cdiv class="tg-df-card-desc-container" style="margin-bottom: 12px; position: relative;">                    \x3Cp class="tg-df-card-desc-content" style="font-size: 13px; color: var(--tg-df-text-muted); margin-bottom: 0; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;">${this.escapeHTML(deal.description)}${_p}                    \x3Cbutton type="button" class="tg-df-card-desc-btn" style="display: none; appearance: none; border: none; color: #000000; font-size: 11px; font-weight: 700; text-transform: uppercase; cursor: pointer; font-family: inherit; position: absolute; bottom: 2px; right: 0; background: linear-gradient(to right, transparent, #fff 20%, #fff); padding: 0 0 0 16px;" onclick="                      var c = this.parentNode;                      if (this.dataset.expanded === 'true') {                        var pd = (c.tagName === 'P') ? c : this.previousElementSibling;                        if (c.tagName === 'P') { c.parentNode.appendChild(this); pd = c; }                        pd.style.display = '-webkit-box';                        pd.style.webkitLineClamp = '3';                        this.textContent = 'READ MORE';                        this.style.position = 'absolute';                        this.style.background = 'linear-gradient(to right, transparent, #fff 20%, #fff)';                        this.style.paddingLeft = '16px';                        this.dataset.expanded = 'false';                      } else {                        var pd = this.previousElementSibling;                        pd.style.display = 'inline';                        pd.style.webkitLineClamp = 'unset';                        this.textContent = 'READ LESS';                        this.style.position = 'static';                        this.style.background = 'transparent';                        this.style.paddingLeft = '4px';                        this.dataset.expanded = 'true';                        pd.appendChild(this);                      }                    ">READ MORE${_button}                  \x3C/div>` : ''}                  \x3Cdiv class="tg-df-card-footer">                    ${deal.authorName ? `                    \x3Cdiv class="tg-df-author-line-desktop" style="padding: 0 0 ${isSavingsSquadMode ? 0 : 12}px 0;">                       \x3Cdiv style="display: flex; align-items: center; gap: 10px;">                          ${deal.authorImage ? `\x3Cimg src="${this.escapeHTML(deal.authorImage)}" alt="${this.escapeHTML(deal.authorName)}" class="tg-df-author-img" width="36" height="36" style="border-radius: 50%; object-fit: cover; flex-shrink: 0;">` : ''}                          \x3Cdiv style="display: flex; flex-direction: column;">                             \x3Cdiv style="font-size: 10px; color: var(--tg-df-text-muted); text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 2px; font-weight: 600;">Recommended by:${_div}                             \x3Cdiv style="font-size: 11px; color: var(--tg-df-text); line-height: 1.2;">                                \x3Cstrong>\x3Ca href="https://www.tomsguide.com/${this.escapeHTML(deal.documentUrl || '').replace(/^\/+/, '')}" target="_blank" rel="noopener nofollow" style="text-decoration: none; color: inherit; border-bottom: 1px dotted var(--tg-df-text-muted);">${this.escapeHTML(deal.authorName)}${_a}${_strong}                                ${deal.authorRole && !['null', 'nul', 'undefined'].includes(String(deal.authorRole).toLowerCase()) ? ` • ${this.escapeHTML(deal.authorRole)}` : ''}                                ${deal.modifiedDate ? `\x3Cspan style="color: var(--tg-df-text-muted);"> • ${getTimeAgo(deal.modifiedDate)}${_span}` : ''}                             ${_div}                          ${_div}                       ${_div}                    ${_div}                    ` : ''}                    ${priceGroupHtml}                  ${_div}                ${_div}                \x3Ca href="${this.escapeHTML(rewrittenLink)}" ${dataAttr} target="_blank" rel="noopener nofollow" class="tg-df-card-cta" style="text-decoration: none; border-radius: 0;">${ctaText}${_a}              ${_div}            `;                        return htmlOutput;            } catch (e) {               console.log("Error rendering deal in map for index", index, typeof deal === 'object' ? JSON.stringify(deal) : deal, "MSG:", e.message);               return '';            }          }).join('');                    if (displayDeals.length > this.displayLimit) {            dealsHtml += `              \x3Cdiv style="width: 100%; display: flex; justify-content: center; margin-top: 16px; grid-column: 1 / -1;">                \x3Cbutton type="button" class="tg-df-tag-outline tg-df-load-more" style="padding: 8px 24px; border-radius: 100px; font-weight: 600; font-size: 14px; cursor: pointer;">Load More${_button}              ${_div}            `;          }                    this.grid.innerHTML = dealsHtml;          // Inject JSON-LD          try {            let targetNode = this.hostContainer || document.head;            let jsonLdScript = targetNode.querySelector('#tg-df-json-ld-' + this.widgetId);            if (!jsonLdScript) {                jsonLdScript = document.createElement('script');                jsonLdScript.type = 'application/ld+json';                jsonLdScript.id = 'tg-df-json-ld-' + this.widgetId;                targetNode.appendChild(jsonLdScript);            }            const jsonLdData = {              "@context": "https://schema.org",              "@type": "ItemList",              "itemListElement": displayDeals.slice(0, this.displayLimit).map((deal, index) => {                 let isoCurrency = "USD";                 if (deal.currency === '£') isoCurrency = "GBP";                 else if (deal.currency === '€') isoCurrency = "EUR";                 else if (deal.currency === 'A$') isoCurrency = "AUD";                 else if (deal.currency === 'CA$') isoCurrency = "CAD";                 const areaCode = typeof this.getAreaCode === 'function' ? this.getAreaCode() : 'US';                 const revenueId = typeof generateRevenueId === 'function' ? generateRevenueId(deal.url, deal.title, deal.merchant, null) : '';                 const rewrittenLink = typeof rewriteAffiliateLink === 'function' ? rewriteAffiliateLink(deal.url, areaCode, revenueId) : deal.url;                 return {                   "@type": "ListItem",                   "position": index + 1,                   "item": {                     "@type": "Product",                     "name": deal.title,                     "image": deal.image || "",                     "description": deal.description || "",                     "brand": {                       "@type": "Brand",                       "name": deal.brand || ""                     },                     "offers": {                       "@type": "Offer",                       "priceCurrency": isoCurrency,                       "price": deal.rawPrice || 0,                       "url": rewrittenLink,                       "seller": {                         "@type": "Organization",                         "name": deal.merchant || ""                       }                     }                   }                 };              }).filter(item => item.item.name)            };            jsonLdScript.textContent = JSON.stringify(jsonLdData);          } catch(e) { console.warn("JSON-LD generation failed", e); }          setTimeout(() => {            const contents = this.root.querySelectorAll('.tg-df-card-desc-content');            contents.forEach(p => {              if (p.scrollHeight > p.clientHeight || p.scrollHeight > 60) {                if (p.nextElementSibling) {                  p.nextElementSibling.style.display = 'block';                }              }            });                        // Allow hawklinks.js to discover and rewrite our widget links             // by appending the .article-body class and manually triggering processArticle.            let container = this.root.classList.contains('tg-df-container') ? this.root : this.root.querySelector('.tg-df-container');            if (container && !container.classList.contains('article-body')) {               container.classList.add('article-body');            }            if (this.grid && !this.grid.classList.contains('article-body')) this.grid.classList.add('article-body');            document.dispatchEvent(new CustomEvent('processArticle', { detail: { element: this.root } }));          }, 50);          const loadMoreBtn = this.grid.querySelector('.tg-df-load-more');          if (loadMoreBtn) {            loadMoreBtn.addEventListener('click', () => {              if (typeof trackElementInteraction === 'function') {                trackElementInteraction({ id: 'load-more', name: 'Load more', label: 'Load More Results' });              }              this.displayLimit += this.getRowsLimit();              this.render();            });          }                      this.bindCouponButtons();            this.checkAndUpdateCoupons();          } catch(e) {            console.warn("Widget render error", e);          }        }                async checkAndUpdateCoupons() {          const wrappers = Array.from(this.root.querySelectorAll('.tg-df-coupon-wrapper'));          if (wrappers.length === 0) return;                    const merchants = [...new Set(wrappers.map(w => w.getAttribute('data-merchant')).filter(Boolean))];          if (merchants.length === 0) return;          const couponResultsMap = await this.checkMerchantsCouponsBulk(merchants);                    for (const merchant of merchants) {            const hasCoupons = !!couponResultsMap[merchant];            const merchantWrappers = wrappers.filter(w => w.getAttribute('data-merchant') === merchant);            merchantWrappers.forEach(wrapper => {              const spinner = wrapper.querySelector('.tg-df-coupon-spinner');              const btn = wrapper.querySelector('.tg-df-tag-coupons');                            if (spinner) spinner.style.display = 'none';                            if (hasCoupons && btn) {                btn.style.display = 'inline-flex';              } else if (!hasCoupons) {                wrapper.style.display = 'none';              }            });          }        }        updateFloatingCopyBar() {          if (!this.editorBar || !this.editorSelectedCount) return;          if (this.editorMode && this.selectedDeals.size > 0) {            this.editorBar.style.display = 'flex';            this.editorSelectedCount.innerText = this.selectedDeals.size;          } else {            this.editorBar.style.display = 'none';          }        }        async copySelectedDealsToCMS() {           function htmlToSlate(htmlString) {              if (!htmlString) return [{ type: 'paragraph', children: [{ text: '' }] }];              let doc;              if (typeof window !== 'undefined' && window.DOMParser) {                 doc = new DOMParser().parseFromString(htmlString, 'text/html');              } else {                 doc = document.implementation.createHTMLDocument('');                 doc.body.innerHTML = htmlString;              }                            function parseNode(node, marks = {}) {                  if (node.nodeType === 3) {                      const text = node.textContent;                      if (!text) return null;                      return { text: text, ...marks };                  }                  if (node.nodeType === 1) {                      const tagName = node.tagName.toLowerCase();                      if (tagName === 'br') {                          return { type: 'line-break', children: [{ text: '' }] };                      }                      if (tagName === 'p') {                          let children = Array.from(node.childNodes).map(child => parseNode(child, marks)).flat().filter(Boolean);                          if (children.length === 0) children.push({ text: "" });                          return { type: 'paragraph', children };                      }                      if (tagName === 'strong' || tagName === 'b') {                          const newMarks = { ...marks, bold: true };                          return Array.from(node.childNodes).map(child => parseNode(child, newMarks)).flat().filter(Boolean);                      }                      if (tagName === 'em' || tagName === 'i') {                          const newMarks = { ...marks, italic: true };                          return Array.from(node.childNodes).map(child => parseNode(child, newMarks)).flat().filter(Boolean);                      }                      if (tagName === 'a') {                          const href = node.getAttribute('href') || '';                          let children = Array.from(node.childNodes).map(child => parseNode(child, marks)).flat().filter(Boolean);                          if (children.length === 0) children.push({ text: "" });                          return {                              type: 'link',                              url: href,                              isNoFollow: (node.getAttribute('rel') || '').includes('nofollow'),                              isSponsored: (node.getAttribute('rel') || '').includes('sponsored'),                              isOpenNewTab: node.getAttribute('target') === '_blank',                              isPreventDataRewrite: false,                              children: children                          };                      }                      return Array.from(node.childNodes).map(child => parseNode(child, marks)).flat().filter(Boolean);                  }                  return null;              }                            let blocksArray = [];              let currentParagraphChildren = [];              function flushParagraph() {                  if (currentParagraphChildren.length > 0) {                      blocksArray.push({ type: 'paragraph', children: currentParagraphChildren });                      currentParagraphChildren = [];                  }              }              Array.from(doc.body.childNodes).forEach(node => {                  const parsed = parseNode(node, {});                  const parsedItems = Array.isArray(parsed) ? parsed : (parsed ? [parsed] : []);                  parsedItems.forEach(item => {                      if (item.type === 'paragraph') {                          flushParagraph();                          blocksArray.push(item);                      } else {                          currentParagraphChildren.push(item);                      }                  });              });              flushParagraph();              if (blocksArray.length === 0) {                  blocksArray = [{ type: 'paragraph', children: [{ text: '' }] }];              }              return blocksArray;           }           const blocks = [];                      this.editorCopyBtn.innerHTML = '\x3Cspan class="tg-df-coupon-spinner" style="display:inline-block; margin-right:8px; border-top-color:#fff;">' + '<' + '/span> Copying...';           for (const deal of Array.from(this.selectedDeals.values())) {              const url = deal.url;              const merchant = deal.merchant;              const title = deal.title;              const image = deal.image;              const currentPrice = deal.currency + deal.rawPrice;              const wasPrice = deal.hasWasPrice && deal.rawMsrp > deal.rawPrice ? deal.currency + deal.rawMsrp : '';                            let couponsChildren = [];              try {                  const area = this.getAreaCode();                  const apiUrl = new URL('https://search-api.fie.future.net.uk/widget.php');                  apiUrl.searchParams.append('model_name', 'Everything');                  apiUrl.searchParams.append('language', 'en-GB');                  apiUrl.searchParams.append('area', area);                  apiUrl.searchParams.append('combine_product_types', '1');                  apiUrl.searchParams.append('filter_merchant_name', merchant);                  apiUrl.searchParams.append('all_filters', 'false');                  apiUrl.searchParams.append('exclude_unlabelled', 'false');                  apiUrl.searchParams.append('include_specs', 'false');                  apiUrl.searchParams.append('sort', 'voucher');                  apiUrl.searchParams.append('distinct_merchants', 'natural');                  apiUrl.searchParams.append('filter_product_types', 'vouchers,offer_deals,newsletter');                  apiUrl.searchParams.append('rows', '3');                  apiUrl.searchParams.append('origin', 'widgets-clientside');                                    let res; try { res = await fetch(apiUrl.toString()); } catch (e) { return; }                  if (res.ok) {                      const data = await res.json();                      let offers = [];                      if (data && data.widget && data.widget.data && Array.isArray(data.widget.data.offers)) {                        offers = data.widget.data.offers;                      } else if (data && data.data && Array.isArray(data.data.offers)) {                        offers = data.data.offers;                      }                                            if (offers.length > 0) {                          couponsChildren.push({ text: "Also check out these coupons: ", bold: true });                          offers.slice(0, 3).forEach((offer, idx) => {                              const actualOffer = offer.offer || offer;                              const offerName = actualOffer.name || actualOffer.title || offer.model_name || offer.title || offer.name || 'Coupon';                              const linkUrl = actualOffer.link || actualOffer.url || actualOffer.offer_link || '#';                              couponsChildren.push({ type: "line-break", children: [{ text: "" }] });                              couponsChildren.push({ text: "🎟️ " });                              couponsChildren.push({                                  type: "link",                                  url: linkUrl,                                  isNoFollow: true,                                  isSponsored: false,                                  isOpenNewTab: true,                                  isPreventDataRewrite: false,                                  children: [{ text: offerName, bold: true }]                              });                          });                      }                  }              } catch (err) {                  console.warn('Failed to fetch coupons for', merchant, err);              }              let descriptionValue = [];              if (deal.text) {                 descriptionValue = htmlToSlate(deal.text);              } else {                 const dealDescriptions = [                   `Don't miss out on this fantastic deal for the ${title}. It is currently available at ${merchant} for a highly competitive price.`,                   `We've spotted an excellent price drop on the ${title}. Grab it now at ${merchant} before it's gone.`,                   `The ${title} is currently seeing a generous discount over at ${merchant}. This is a perfect time to buy if you've been holding out.`,                   `If you're in the market for the ${title}, ${merchant} has just the deal for you.`,                   `Score the ${title} for less at ${merchant} right now. This is a rare chance to save big.`,                   `Upgrade your setup with the ${title}, now available at a stellar price via ${merchant}.`                 ];                 const randomDescription = dealDescriptions[Math.floor(Math.random() * dealDescriptions.length)];                 descriptionValue = [                    { type: "paragraph", children: [{ text: randomDescription }] }                 ];              }                            if (couponsChildren.length > 0) {                 let lastBlock = descriptionValue[descriptionValue.length - 1];                 if (lastBlock && lastBlock.type === 'paragraph') {                     lastBlock.children.push({ type: "line-break", children: [{ text: "" }] });                     lastBlock.children.push({ type: "line-break", children: [{ text: "" }] });                     lastBlock.children.push({ text: "Also check out these coupons: ", bold: true });                     lastBlock.children.push({ type: "line-break", children: [{ text: "" }] });                     lastBlock.children = lastBlock.children.concat(couponsChildren);                 } else {                     descriptionValue.push({                         type: "paragraph",                         children: [                             { type: "line-break", children: [{ text: "" }] },                             { type: "line-break", children: [{ text: "" }] },                             { text: "Also check out these coupons: ", bold: true },                             { type: "line-break", children: [{ text: "" }] },                             ...couponsChildren                         ]                     });                 }              }              function normalizeCurrencyToISO(symbol) {                const map = { '£': 'GBP', '$': 'USD', 'A$': 'AUD', 'CA$': 'CAD', '€': 'EUR' };                return map[symbol] || symbol;              }              const isoCurrency = normalizeCurrencyToISO(deal.currency);              blocks.push({                 id: (window.crypto && window.crypto.randomUUID) ? window.crypto.randomUUID() : 'cms-' + Date.now() + Math.random(),                 blockTypeName: "deal",                 excludeFrom: [],                 collapsible: false,                 props: {                    description: {                       value: descriptionValue,                       touched: false,                       validationMessage: ""                    },                    image: {                       value: {                          credit: [{ type: "paragraph", children: [{ text: merchant }] }],                          dateCreated: Date.now(),                          dateModified: Date.now(),                          distribution: [],                          fileSize: 0,                          height: 1000,                          id: deal.id,                          imageRights: "",                          src: image,                          name: title + ".jpg",                          tags: [],                          width: 1000                       },                       touched: false,                       validationMessage: ""                    },                    showDealButton: { value: true, touched: false, validationMessage: "" },                    isPreferredPartner: { value: false, touched: false, validationMessage: "" },                    linkHref: { value: url, touched: false, validationMessage: "" },                    linkLabel: { value: "", touched: false, validationMessage: "" },                    linkIsNoFollow: { value: true, touched: false, validationMessage: "" },                    linkIsSponsored: { value: false, touched: false, validationMessage: "" },                    linkIsOpenNewWindow: { value: true, touched: false, validationMessage: "" },                    customPromoFlags: { value: [], touched: false, validationMessage: "" },                    showStarDeal: { value: false, touched: false, validationMessage: "" },                    savingType: { value: "none", touched: false, validationMessage: "" },                    starDealPromoFlag: { value: "", touched: false, validationMessage: "" },                    showEditorsChoice: { value: false, touched: false, validationMessage: "" },                    editorsChoiceTitle: { value: "", touched: false, validationMessage: "" },                    hawkPriceCurrency: { value: { value: isoCurrency, label: isoCurrency }, touched: false, validationMessage: "" },                    hawkPrice: { value: deal.hasWasPrice ? String(deal.rawMsrp) : String(deal.rawPrice), touched: false, validationMessage: "" },                    hawkSalePrice: { value: String(deal.rawPrice), touched: false, validationMessage: "" },                    lastCheckedPriceDate: { value: "", touched: false, validationMessage: "" },                    hawkModel: { touched: false, validationMessage: "" },                    productId: { value: "", touched: false, validationMessage: "" },                    voucherId: { value: "", touched: false, validationMessage: "" },                    brand: { value: deal.brand || merchant, touched: false, validationMessage: "" },                    productName: { value: title, touched: false, validationMessage: "" },                    label: { value: "", touched: false, validationMessage: "" },                    retailer: { value: merchant, touched: false, validationMessage: "" },                    priceCheckError: false                 },                 failedFetchError: ""              });           }           const payload = {              type: "articleBuilderPages",              data: blocks           };           const jsonStr = JSON.stringify(payload);                      if (navigator.clipboard && navigator.clipboard.writeText) {              navigator.clipboard.writeText(jsonStr).then(() => {                 this.editorCopyBtn.innerHTML = 'Copied!';                 setTimeout(() => {                    this.editorCopyBtn.innerHTML = '\x3Csvg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="margin-right: 6px;">\x3Crect x="9" y="9" width="13" height="13" rx="2" ry="2"><' + '/rect>\x3Cpath d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"><' + '/path><' + '/svg> Copy to CMS';                 }, 2000);              }).catch(err => {                 console.warn('Failed to copy text: ', err);                 alert('Failed to copy deals to clipboard. See console.');              });           } else {              // Fallback              const textArea = document.createElement("textarea");              textArea.value = jsonStr;              document.body.appendChild(textArea);              textArea.focus();              textArea.select();              try {                 document.execCommand('copy');                 this.editorCopyBtn.innerHTML = 'Copied!';                 setTimeout(() => {                    this.editorCopyBtn.innerHTML = '\x3Csvg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="margin-right: 6px;">\x3Crect x="9" y="9" width="13" height="13" rx="2" ry="2"><' + '/rect>\x3Cpath d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"><' + '/path><' + '/svg> Copy to CMS';                 }, 2000);              } catch (err) {                 console.warn('Fallback: Oops, unable to copy', err);                 alert('Fallback: Failed to copy deals to clipboard.');              }              document.body.removeChild(textArea);           }        }      }      // Initialize the Widget      if (document.readyState === 'loading') {        document.addEventListener('DOMContentLoaded', () => new DealsFinderWidget({ rootId: 'signal-deals-finder-root', rootNode: shadowRoot, hostContainer: hostContainer }));      } else {        new DealsFinderWidget({ rootId: 'signal-deals-finder-root', rootNode: shadowRoot, hostContainer: hostContainer });      }    })();  </script></div>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ There's a simple way to watch World Cup 2026 for *FREE* ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/streaming/theres-a-simple-way-to-watch-world-cup-2026-for-free</link>
                                                                            <description>
                            <![CDATA[ Here's a simple way to watch the World Cup for free with a sneaky VPN trick ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">7pUKSUhDxh9SYk5QVWDAkT</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/ipdJpvcumtni32H742dWNQ-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Thu, 25 Jun 2026 17:16:11 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Streaming]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Jacob Jones ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/MVd5AB5fRo4H8yGGGhSSDk.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/ipdJpvcumtni32H742dWNQ-1280-80.jpg">
                                                            <media:credit><![CDATA[Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Lionel Messi of Argentina celebrates after scoring the team&#039;s third goal during the South American FIFA World Cup 2026. (Photo by Marcelo Endelli/Getty Images)]]></media:description>                                                            <media:text><![CDATA[Lionel Messi of Argentina celebrates after scoring the team&#039;s third goal during the South American FIFA World Cup 2026. (Photo by Marcelo Endelli/Getty Images)]]></media:text>
                                <media:title type="plain"><![CDATA[Lionel Messi of Argentina celebrates after scoring the team&#039;s third goal during the South American FIFA World Cup 2026. (Photo by Marcelo Endelli/Getty Images)]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/ipdJpvcumtni32H742dWNQ-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>The 2026 World Cup is free to watch — and the simple trick to unlocking every match is hiding in plain sight. In the U.K., the BBC and ITV are broadcasting <strong>free World Cup coverage</strong> of the entire tournament, complete with English commentary.</p><div  class="fancy-box"><div class="fancy_box-title">England vs Ghana: Free stream, TV channel, Kick off</div><div class="fancy_box_body"><p class="fancy-box__body-text"><ul><li><strong>Watch Free:</strong> <a data-analytics-id="inline-link" href="https://www.bbc.co.uk/iplayer/event/fifa-world-cup" target="_blank" rel="nofollow"><strong>BBC</strong></a> <strong>(U.K.) / </strong><a data-analytics-id="inline-link" href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>ITV</strong></a><strong> (U.K.)</strong></li><li><strong>Watch from anywhere:</strong> <a data-analytics-id="inline-link" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> (Up to 63% Off)</li></ul></p></div></div><p>If you're traveling outside the U.K., all you need is a VPN to watch as if you were back home. It's quick to set up, works on all your devices, and lets you watch the World Cup for free — no pricey cable package or streaming subscription required.</p><p>The coverage is 1080p and 4K quality and includes pre-match live, zero ads during hydration breaks, and some of the best soccer pundits the U.S. has never heard of. You can even watch selected matches in immersive 3D on BBC iPlayer.</p><p>Our quick guide below will help you catch every free kick, penalty and unforgettable "GOOOOAAAL!" as Messi and Ronaldo battle to make World Cup history. Here's the simple way to watch the 2026 World Cup for free from anywhere.</p><h2 id="watch-world-cup-2026-live-streams-for-free">Watch World Cup 2026 live streams for free</h2><p>In the U.K., the FIFA World Cup will be broadcast for <a href="https://www.bbc.co.uk/iplayer/event/fifa-world-cup" target="_blank" rel="nofollow"><strong>free on BBC iPlayer</strong></a> and <a href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>free on ITVX</strong></a> streaming platforms. That includes all the groups. knockouts, semi-finals and final on July 19. </p><p>No messy sign up, email and a UK postcode (e.g. HA9 0WS). TV licence holders only.</p><p><strong>Traveling abroad?</strong> Use <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> to watch BBC/ITVX as if you were back home in the U.K.</p><h2 class="article-body__section" id="section-how-to-watch-world-cup-2026-from-anywhere"><span>How to watch World Cup 2026 from anywhere</span></h2><div class="product"><a data-dimension112="2fb92260-b826-4ce8-8478-a85cf4e343bd" data-action="Deal Block" data-label="Norton VPN | 60-day money-back guarantee" data-dimension48="Norton VPN | 60-day money-back guarantee" data-dimension25="$" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p><a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow" data-dimension112="2fb92260-b826-4ce8-8478-a85cf4e343bd" data-action="Deal Block" data-label="Norton VPN | 60-day money-back guarantee" data-dimension48="Norton VPN | 60-day money-back guarantee" data-dimension25="$"><strong>Norton VPN | 60-day money-back guarantee</strong></a><br>Norton VPN is our No.1 Streaming VPN – and our top pick for World Cup 2026, with a 60-day money-back guarantee on annual plans.</p><p><strong>What you'll get...</strong></p><p>🌍 Servers in 30+ countries for home-country streaming<br>🔒 Native app for Amazon Fire TV devices<br>⚡️ WireGuard protocol across all Apple platforms<br>📺 Apps for Google TV, Android TV, and Apple TV</p><p>A 12-month Norton VPN plan starts at <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>$3.33 per month</strong></a> ($39.99 upfront, pre-tax) and comes with a 60-day money-back guarantee on annual plans.<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow" data-dimension112="2fb92260-b826-4ce8-8478-a85cf4e343bd" data-action="Deal Block" data-label="Norton VPN | 60-day money-back guarantee" data-dimension48="Norton VPN | 60-day money-back guarantee" data-dimension25="$">View Deal</a></p></div><p><strong>Quick guide: watch World Cup for free</strong></p><p>Using a VPN is incredibly simple.</p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> is our No.1 streaming VPN.</p><p><strong>2. Choose the location. </strong>For instance if you're in the U.S. and want to watch World Games free, you'd select 'United Kingdom' from the list.</p><p><strong>3. Watch the World Cup. </strong>Head to <a href="https://www.bbc.co.uk/iplayer/episode/m002y4k3/fifa-world-cup-2026-group-stage-england-v-ghana" target="_blank" rel="nofollow">BBC</a> or <a href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow">ITV</a> and watch the England game live.</p><h2 id="what-devices-is-bbc-itvx-available-on">What devices is BBC/ITVX available on?</h2><ul><li><strong>Amazon Fire</strong> (Tablets, Cube, Stick, TVs)</li><li><strong>Android TV</strong> (please note: some models aren’t supported)</li><li><strong>Android</strong> (Mobile & Tablet) - Android 7.0 and above</li><li><strong>Apple TV</strong> (tvOS 14 or later)</li><li><strong>Google TV</strong> (Chromecast with Google TV and NVIDIA Shield)</li><li><strong>Freely</strong></li><li><strong>Freesat </strong>(please note: some models aren’t supported)</li><li><strong>Freeview Play</strong> (TVs and set-top boxes) (please note: some models aren’t supported)</li><li><strong>iOS (iPhone & iPad)</strong> - iOS 14 and above</li><li><strong>LG Smart TVs</strong> (2016-2024)</li><li><strong>NOW Smart Sticks and Boxes </strong>(minimum firmware v11.5.0)</li><li><strong>PlayStation (PS4 and PS5)</strong></li><li><strong>Roku</strong> (Stick & Roku-OS powered TVs, minimum firmware v11.5.0)</li><li><strong>Samsung Smart TVs</strong> (2017 and above - 2016 models only offer on demand TV)</li><li><strong>Sky Q, Sky Glass and Sky Stream puck</strong></li><li><strong>Virgin Media</strong> (360, Stream, TiVo)</li><li><strong>YouView</strong> (BT, Humax, Sony, TalkTalk)</li><li><strong>Xbox</strong> (One, Series X, Series S)</li></ul><section class="article__schema-question"><h3>Why is the World Cup free to air in the U.K.?</h3><article class="article__schema-answer"><p>The BBC and ITV are free-to-air broadcasters funded by the U.K. TV licence. That means every World Cup game is available without a paid subscription through BBC iPlayer and ITVX.</p></article></section><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams"><strong>How to watch World Cup 2026 online</strong></a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/how-to-watch-fubo-from-anywhere-free-trial"><strong>How to watch Fubo from anywhere (free trial)</strong></a></li><li><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k"><strong>How to watch the World Cup in 4K</strong></a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ How to watch Travelers Championship 2026: live stream golf online, TV channels, schedule, Round 3 tee times, leaders ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/sports/watch-the-travelers-championship-2026-golf</link>
                                                                            <description>
                            <![CDATA[ All the ways to watch Travelers Championship 2026 live streams, with Scottie Scheffler, Wyndham Clark and Sam Burns in the field at TPC River Highlands. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">sFYHotjzFtHyVAeFY2xPUn</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/yTrXRvuByPVxhjdRFmxCe5-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Thu, 25 Jun 2026 12:15:00 +0000</pubDate>                                                                                                                                <updated>Sat, 27 Jun 2026 14:16:27 +0000</updated>
                                                                                                                                            <category><![CDATA[Sports]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Aatif Sulleyman ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/ikPsMQjEgxFXeWRgg5zHe8.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/yTrXRvuByPVxhjdRFmxCe5-1280-80.jpg">
                                                            <media:credit><![CDATA[Andrew Redington via Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Scottie Scheffler at Travelers Championship 2026]]></media:description>                                                            <media:text><![CDATA[Scottie Scheffler at Travelers Championship 2026]]></media:text>
                                <media:title type="plain"><![CDATA[Scottie Scheffler at Travelers Championship 2026]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/yTrXRvuByPVxhjdRFmxCe5-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Scottie Scheffler and Matt Fitzpatrick are off to a blazing start at the Travelers Championship, but they're still looking up at Eric Cole. He's yet to win on the PGA Tour, but at 6-under he holds the outright lead heading into Round 2. The 38-year-old lost a playoff to Russell Henley at the Charles Schwab Challenge before making the top 10 of the Memorial Tournament. </p><p>You can watch Travelers Championship 2026 live streams <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>from anywhere with a VPN</strong></a>.</p><div  class="fancy-box"><div class="fancy_box-title">Travelers Championship 2026 live stream, date, time, TV channels</div><div class="fancy_box_body"><p class="fancy-box__body-text">The 2026 Travelers Championship runs from Thursday, June 25 to Sunday, June 28.<br><strong>• U.S. —</strong> Golf Channel & NBC via <a data-analytics-id="inline-link" href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow"><strong>Sling</strong></a> / <strong>ESPN+</strong><br><strong>• U.K. — </strong><a data-analytics-id="inline-link" href="https://www.sky.com/tv/sports?dcmp=dmc-skycom:na_sport_sscom_gss_shop_f1_2023" target="_blank" rel="nofollow">Sky Sports</a><br><strong>• Watch anywhere — try </strong><a data-analytics-id="inline-link" href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN 100% risk free</strong></a></p></div></div><p>Eight of the world's top 10 golfers, including Cameron Young and newly-crowned two-time U.S. Open champion Wyndham Clark, have made the short trip to TPC River Highlands for the Travelers Championship, the eighth and final Signature Event of the season. </p><p>It isn't just the proximity between Long Island and Cromwell that's tempted them in. The 2026 Travelers Championship is worth $20 million — $3.6 million of which is earmarked for the winner. And numerous players will fancy their chances of landing that top prize. </p><p>Take Scheffler, who won the 2024 edition of the tournament in a playoff as part of a run of three straight top-six finishes at TPC River Highlands. Other past winners in contention this weekend include Xander Schauffele (2022), Jordan Spieth (2017) and reigning champion Keegan Bradley, who's topped the charts at two of the past three editions of the event.</p><p>Tommy Fleetwood could and really should have triumphed here 12 months ago, having led by three strokes at the start of play on Sunday. However, he made three bogeys in the first four holes of his final round, and lost a further two strokes over his final three holes. </p><p>Below is a complete guide on where to watch 2026 Travelers Championship live streams, together with Round 2 tee times, U.S. broadcast schedules and international TV channels.</p><h2 id="travelers-championship-2026-round-2-leaderboard">Travelers Championship 2026 Round 2 leaderboard</h2><p><strong>1.</strong> Scottie Scheffler (-16)</p><p><strong>2.</strong> Viktor Hovland (-14)</p><p><strong>T3. </strong>Akshay Bhatia, Eric Cole (-12)</p><p><strong>T5.</strong> Matt Fitzpatrick, Bud Cauley, Ben Griffin (-10)</p><p><strong>Selected others: </strong><br><strong>T8. </strong>Tommy Fleetwood, Justin Rose (-9); <strong>T14. </strong>Wyndham Clark, Robert MacIntyre, Sam Burns, Keegan Bradley (-8); <strong>T22. </strong>Aaron Rai (-7); <strong>70.</strong> Cameron Young (+3)</p><div class="product star-deal"><a data-dimension112="826ab5c1-a0db-4098-ab9c-8d0b8b50c233" data-action="Star Deal Block" data-label="Sling TV" data-dimension48="Sling TV" href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:4264px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="St3ibU7SvKxLxozu2kJe5j" name="Sling-Logo-122718-BLUE-CMYK.jpg" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/St3ibU7SvKxLxozu2kJe5j.jpg" mos="" align="middle" fullscreen="" width="4264" height="4264" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>The Golf Channel is showing Thursday and Friday action in the U.S. with NBC showing it on Saturday and Sunday. The best way to access it is via <a href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow" data-dimension112="826ab5c1-a0db-4098-ab9c-8d0b8b50c233" data-action="Star Deal Block" data-label="Sling TV" data-dimension48="Sling TV" data-dimension25="">Sling TV</a>. You will need the Sling Select Plan ($19.99/month) and add the Sports Extra add-on ($11/month), which carries the required channels.<a class="view-deal button" href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow" data-dimension112="826ab5c1-a0db-4098-ab9c-8d0b8b50c233" data-action="Star Deal Block" data-label="Sling TV" data-dimension48="Sling TV" data-dimension25="">View Deal</a></p></div><h2 class="article-body__section" id="section-watch-travelers-championship-2026-from-anywhere"><span>Watch Travelers Championship 2026 from anywhere</span></h2><p>Away from home at the moment and blocked from watching the golf on your usual subscription?</p><p>You can still watch Travelers Championship 2026 live thanks to the wonders of a <a href="https://www.tomsguide.com/best-picks/best-vpn">VPN</a> (Virtual Private Network). The software can make your devices appear to be back in your home country regardless of where you are, making it ideal for viewers away on vacation or on business. Our favorite is <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow">NordVPN</a> — we explain why in our <a href="https://www.tomsguide.com/reviews/nordvpn-review">NordVPN review</a>.</p><div class="product"><a data-dimension112="8103fec7-aeee-457c-99f9-0a1353706761" data-action="Deal Block" data-label="NordVPN deal: 3 Months Extra FREE" data-dimension48="NordVPN deal: 3 Months Extra FREE" href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:800px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="vALBz9LuPk5AhB3g6DbZvf" name="Nord-VPN_deal" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/vALBz9LuPk5AhB3g6DbZvf.jpg" mos="" align="middle" fullscreen="" width="800" height="800" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>🟩 <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow" data-dimension112="8103fec7-aeee-457c-99f9-0a1353706761" data-action="Deal Block" data-label="NordVPN deal: 3 Months Extra FREE" data-dimension48="NordVPN deal: 3 Months Extra FREE" data-dimension25=""><strong>NordVPN deal: 3 Months Extra FREE</strong></a></p><p>Boasting super fast speeds, great features, streaming power and industry-leading security, <a href="https://www.tomsguide.com/reviews/nordvpn-review"><strong>NordVPN</strong> is our #1 VPN</a>.<br><br><strong>✅ Get 3 months extra FREE</strong><br><strong>✅ 30-day money-back guarantee</strong><br><strong>✅ Up to 75% off the usual price</strong></p><p>Use NordVPN to unblock your usual streaming service and watch Travelers Championship 2026 live with this <em>exclusive </em>deal. <a class="view-deal button" href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow" data-dimension112="8103fec7-aeee-457c-99f9-0a1353706761" data-action="Deal Block" data-label="NordVPN deal: 3 Months Extra FREE" data-dimension48="NordVPN deal: 3 Months Extra FREE" data-dimension25="">View Deal</a></p></div><p>Using a VPN is incredibly simple.</p><p><strong>1. Download and install a VPN</strong> — as we say, our top choice is <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow">NordVPN</a>.</p><p><strong>2. Connect to the appropriate server location</strong> — open the VPN app, hit 'choose location' and select the appropriate location.</p><p><strong>3. Go to the broadcaster's stream</strong> — head to your home broadcaster's site or app and watch as if you were at home.</p><h2 class="article-body__section" id="section-how-to-watch-travelers-championship-2026-live-streams-in-the-u-s"><span>How to watch Travelers Championship 2026 live streams in the U.S.</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="UHZYAaZCSyV7FkHxYGxtJ6" name="TG_US_Flag_1920_400_shutterstock.jpg" alt="US Flag" src="https://cdn.mos.cms.futurecdn.net/UHZYAaZCSyV7FkHxYGxtJ6.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>Travelers Championship 2026 is being shown on the <strong>Golf Channel</strong> on Thursday and Friday, while <strong>NBC</strong> has extensive coverage on Saturday and Sunday. </p><p>That means there are a number of options when it comes to live streaming the action, including the aforementioned <a href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow"><strong>Sling TV</strong></a>.</p><p>Another option is the <a href="https://plus.espn.com/golf" target="_blank" rel="nofollow"><strong>ESPN App</strong></a>, which features exclusive early starts and Featured Group feeds daily. </p><p><a href="https://www.dpbolvw.net/click-8900245-17161926?sid=hawk-custom-tracking" target="_blank" rel="nofollow"><strong>YouTube TV</strong></a>, <a href="https://click.linksynergy.com/fs-bin/click?id=kXQk6*ivFEQ&offerid=966271.482&type=3&subid=0&u1=hawk-custom-tracking" target="_blank" rel="nofollow"><strong>Hulu+Live TV</strong></a>, and the <a href="https://www.tkqlhce.com/click-6361382-15242095?sid=hawk-custom-tracking" target="_blank" rel="nofollow"><strong>DirecTV Stream</strong></a> MySports Genre Pack will let you tune in too.</p><p>If you're traveling outside of the US, you can make use of <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN</strong></a> to catch the action. </p><h2 id="travelers-championship-us-tv-schedule">Travelers Championship US TV schedule </h2><p><em>(All times ET)</em></p><p><strong>Thu, Jun 25:</strong> ESPN+: 7:45 a.m.-6 p.m. / Golf Channel: 3-6 p.m.<br><strong>Fri, Jun 26:</strong> ESPN+: 7:45 a.m.-6 p.m. / Golf Channel: 3-6 p.m.<br><strong>Sat, Jun 27:</strong> ESPN+: 7:45 a.m.-6 p.m. / Golf Channel: 1-3 p.m. / NBC: 3-6 p.m.<br><strong>Sun, Jun 28:</strong> ESPN+: 8:45 a.m.-7 p.m. / Golf Channel: 3-4 p.m. / NBC: 4-7 p.m.</p><h2 class="article-body__section" id="section-how-to-watch-travelers-championship-2026-live-streams-in-canada"><span>How to watch Travelers Championship 2026 live streams in Canada</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="eByagaoLZki73CLtYaRPMG" name="TG_Canada_Flag_1920_400_shutterstock.jpg" alt="Canadian flag" src="https://cdn.mos.cms.futurecdn.net/eByagaoLZki73CLtYaRPMG.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>In Canada, all four rounds of the Travelers Championship are being shown on <a href="https://www.tsn.ca/subscribe" target="_blank" rel="nofollow"><strong>TSN</strong></a>.</p><p>Coverage includes Featured Groups and Marquee Group feeds. </p><p><a href="https://www.tsn.ca/subscribe" target="_blank" rel="nofollow">TSN+</a> grants access to everything TSN has to offer for CA$29.99/month, CA$59.99/quarter or CA$249.99/year. </p><p>If you live in Canada but aren't at home right now, you can still watch Travelers Championship 2026 by using a quality VPN like <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN</strong></a> to unlock your usual service.</p><h2 class="article-body__section" id="section-how-to-watch-travelers-championship-2026-live-streams-in-the-u-k"><span>How to watch Travelers Championship 2026 live streams in the U.K.</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="ttCSpj8r9kHj68j7NhsBL9" name="TG_British_Flag_1920_400_shutterstock.jpg" alt="UK Flag" src="https://cdn.mos.cms.futurecdn.net/ttCSpj8r9kHj68j7NhsBL9.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>All four days of the Travelers Championship will be shown live on <a href="https://www.sky.com/shop/tv/sports/" target="_blank" rel="nofollow"><strong>Sky Sports</strong></a> in the U.K., across its Main Event, Golf, Mix and Sky Sports+ channels.</p><p>Prices start <a href="https://www.sky.com/shop/tv/sports/" target="_blank" rel="nofollow">from £20/month</a>, and Sky Sports subscribers can watch the golf on mobile devices via the Sky Go streaming service, which has dedicated apps for iOS, iPadOS and Android devices, along with Xbox and PlayStation consoles.</p><p>Don't fancy being locked into a long, expensive contract? You could consider a more flexible <a href="https://www.nowtv.com/membership/watch-sky-sports" target="_blank" rel="nofollow"><strong>Now Sports Membership</strong></a>. Day passes cost £14.99, while rolling monthly subscriptions start at £34.99.</p><p>To access your usual streaming service from outside the U.K, you'll need to <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow">download a good VPN</a>, as detailed above.</p><h2 class="article-body__section" id="section-how-to-watch-travelers-championship-2026-live-streams-in-australia"><span>How to watch Travelers Championship 2026 live streams in Australia</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="R4wb8TX7wmafWv7eBYfay3" name="TG_australia_Flag_1920_400_shutterstock.jpg" alt="Australian flag" src="https://cdn.mos.cms.futurecdn.net/R4wb8TX7wmafWv7eBYfay3.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>The Travelers Championship is being shown on <strong>Fox Sports</strong> on TV and <a href="https://kayosports.com.au/" target="_blank" rel="nofollow"><strong>Kayo Sports</strong></a> online in Australia.</p><p>Kayo costs from $30/month, after your choice of either a <a href="https://kayosports.com.au/" target="_blank" rel="nofollow"><strong>7-day free trial or first month for $1</strong></a>. </p><p>Not in Australia right now? Try <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN</strong></a> to unlock your preferred coverage from anywhere.</p><h2 class="article-body__section" id="section-travelers-championship-round-2-tee-times"><span>Travelers Championship Round 2 tee times</span></h2><p><em>(All times ET)</em></p><p>7:50 a.m. – Lucas Glover, Sepp Straka</p><p>8:00 a.m. – Ryan Fox, Cameron Young</p><p>8:10 a.m. – Jake Knapp, Adam Scott</p><p>8:20 a.m. – Sahith Theegala, Min Woo Lee</p><p>8:30 a.m. – Jordan Spieth, Mark Hubbard</p><p>8:40 a.m. – Nick Taylor, Jacob Bridgeman</p><p>8:50 a.m. – Matt McCarty, Gary Woodland</p><p>9:00 a.m. – Sam Stevens, Andrew Novak</p><p>9:15 a.m. – Jason Day, Ryo Hisatsune</p><p>9:25 a.m. – Harry Hall, Ludvig Åberg</p><p>9:35 a.m. – Tom Hoge, Nicolai Højgaard</p><p>9:45 a.m. – Alex Smalley, Daniel Berger</p><p>9:55 a.m. – Xander Schauffele, Brian Harman</p><p>10:05 a.m. – Tony Finau, Russell Henley</p><p>10:15 a.m. – Mac Meissner, Ryan Gerard</p><p>10:30 a.m. – Collin Morikawa, Chris Gotterup</p><p>10:40 a.m. – Jackson Suber, Alex Fitzpatrick</p><p>10:50 a.m. – Keith Mitchell, Denny McCarthy</p><p>11:00 a.m. – Rickie Fowler, Michael Kim</p><p>11:10 a.m. – Jhonattan Vegas, Alex Noren</p><p>11:20 a.m. – Hideki Matsuyama, Justin Thomas</p><p>11:30 a.m. – J.T. Poston, Brandt Snedeker</p><p>11:45 a.m. – Taylor Pendrith, Sungjae Im</p><p>11:55 a.m. – Nico Echavarria, Aaron Rai</p><p>12:05 p.m. – Si Woo Kim, Shane Lowry</p><p>12:15 p.m. – Kristoffer Reitan, Corey Conners</p><p>12:25 p.m. – Ben James, Robert MacIntyre</p><p>12:35 p.m. – Sam Burns, Wyndham Clark</p><p>12:45 p.m. – Harris English, Keegan Bradley</p><p>1:00 p.m. – Maverick McNealy, Kurt Kitayama</p><p>1:10 p.m. – Tommy Fleetwood, Patrick Cantlay</p><p>1:20 p.m. – J.J. Spaun, Justin Rose</p><p>1:30 p.m. – Matt Fitzpatrick, Brian Campbell</p><p>1:40 p.m. – Bud Cauley, Ben Griffin</p><p>1:50 p.m. – Akshay Bhatia, Eric Cole</p><p>2:00 p.m. – Scottie Scheffler, Viktor Hovland</p><h2 id="can-i-watch-travelers-championship-2026-for-free">Can I watch Travelers Championship 2026 for free?</h2><p>In theory, you can watch all four rounds of the Travelers Championship free-of-charge with <a href="https://www.fubo.tv/" target="_blank" rel="nofollow">Fubo (7-day free trial)</a>, <a href="https://click.linksynergy.com/fs-bin/click?id=kXQk6%2aivFEQ&offerid=1589248.206&type=3&subid=0&u1=hawk-custom-tracking" target="_blank" rel="nofollow">Hulu + Live TV (3-day free trial)</a> and <a href="https://www.dpbolvw.net/click-8900245-17161926?sid=hawk-custom-tracking" target="_blank" rel="nofollow">YouTube TV (5-day free trial)</a> in the U.S.. </p><p>There's also Kayo Sports' <a href="https://kayosports.com.au/" target="_blank" rel="nofollow">7-day free trial</a> in Australia.</p><p><strong>Overseas? </strong><a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>Use a VPN</strong></a> to access your usual service from anywhere in the world, with full instructions how to do so below.</p><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams">How to watch World Cup 2026 for free</a></li><li><a href="https://www.tomsguide.com/best-picks/streaming-vpn">The best streaming VPN</a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/watch-f1-live-online">How to watch F1 2026 live online</a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ There's a simple way to watch Scotland vs Brazil for *FREE* ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/streaming/theres-a-simple-way-to-watch-scotland-vs-brazil-for-free</link>
                                                                            <description>
                            <![CDATA[ Here's how to watch Scotland vs Brazil as Steve Clarke's side look to contain Neymar in Miami and secure a spot in the World Cup knockout rounds ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">DZUd5nZUEdFwjo2SXFcVwQ</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/xEgeFwFQEPAyCxUSq3a9WE-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Wed, 24 Jun 2026 21:25:00 +0000</pubDate>                                                                                                                                <updated>Wed, 24 Jun 2026 21:27:18 +0000</updated>
                                                                                                                                            <category><![CDATA[Streaming]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Jacob Jones ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/MVd5AB5fRo4H8yGGGhSSDk.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/xEgeFwFQEPAyCxUSq3a9WE-1280-80.jpg">
                                                            <media:credit><![CDATA[FREDERIC J. BROWN/AFP via Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Vinicius Junior celebrates after scoring his team&#039;s first goal during the Conmebol 2024 Copa America match between Paraguay and Brazil ]]></media:description>                                                            <media:text><![CDATA[Vinicius Junior celebrates after scoring his team&#039;s first goal during the Conmebol 2024 Copa America match between Paraguay and Brazil ]]></media:text>
                                <media:title type="plain"><![CDATA[Vinicius Junior celebrates after scoring his team&#039;s first goal during the Conmebol 2024 Copa America match between Paraguay and Brazil ]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/xEgeFwFQEPAyCxUSq3a9WE-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Scotland face Brazil in a monster 2026 FIFA World Cup Group C finale at Miami Stadium, Florida on June 24. Hungry for goals? Here's a simple way to <strong>watch</strong> <strong>Scotland vs Brazil for free </strong>– in U.S., Canada. and beyond.</p><p>Kick-off is at 6 p.m. ET / 3 p.m. PT / 11 p.m. BST, with fans around the world tuning in to see whether Steve Clarke's Scotland pull of a miracle and qualify for the Round of 32. </p><div  class="fancy-box"><div class="fancy_box-title">Scotland vs Brazil: Free stream, TV channel, Kick off</div><div class="fancy_box_body"><p class="fancy-box__body-text"><ul><li><strong>Free stream:</strong> <a data-analytics-id="inline-link" href="https://www.bbc.co.uk/iplayer/episode/m002y4kc/fifa-world-cup-2026-group-stage-scotland-v-brazil" target="_blank" rel="nofollow"><strong>BBC</strong></a> <strong>(U.K.)</strong></li><li><strong>Watch from anywhere:</strong> <a data-analytics-id="inline-link" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> (Up to 63% Off)</li></ul></p></div></div><p>Fresh from beating Haiti 3-0, Scotland are sweating Lewis Ferguson, Aaron Hickey and Scott McKenna after missed training, though Kieran Tierney’s Morocco scare was only cramp. </p><p>Brazil are without Raphinha because of a hamstring injury, while Neymar could return alongside Vinicius Junior, Endrick and Gabriel Martinelli. Buckle up.</p><p>If you're searching for how to watch Scotland vs Brazil free online, we've got everything a 'soccer' fan needs, including kick-off times, TV channels, and where to find a live stream of every goal, header and free-kick.</p><p>Read on as we show you how to watch Scotland vs Brazil from anywhere in the world for free with <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a>.</p><h2 id="watch-scotland-vs-brazil-live-streams-for-free">Watch Scotland vs Brazil live streams for free</h2><p>In the U.K., Scotland vs Brazil will be broadcast for <a href="https://www.bbc.co.uk/iplayer/episode/m002y4kc/fifa-world-cup-2026-group-stage-scotland-v-brazil" target="_blank" rel="nofollow"><strong>free on BBC</strong></a>. The build-up is live at 10 p.m. ahead of kick-off at 11 p.m. BST.</p><p><strong>Get BBC iPlayer</strong> – no messy sign up, email and a UK postcode (e.g. HA9 0WS). TV licence holders only.</p><p><strong>Traveling abroad?</strong> Use <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> to watch ITVX as if you were back home in the U.K. .</p><h2 class="article-body__section" id="section-how-to-watch-scotland-vs-brazil-live-streams-from-anywhere"><span>How to watch Scotland vs Brazil live streams from anywhere</span></h2><div class="product"><a data-dimension112="932835ad-65b1-4f93-8d8f-e1fc05c7642e" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>🏆 <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="932835ad-65b1-4f93-8d8f-e1fc05c7642e" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25=""><u><strong>Tom's Guide No.1 Streaming VPN – Try 60 days</strong></u></a> 🏆</p><p>We recently crowned Norton VPN our No.1 <a href="https://www.tomsguide.com/best-picks/streaming-vpn" target="_blank">Streaming VPN</a>. Blazingly fast. Secure. Works on phones, laptops and smart TVs. So you can stream World Cup coverage from anywhere, on any device.<br><br>✅ <strong>60-day money-back guarantee</strong><br>🔓 <strong>Unlocks global streams</strong><br>⚽ <strong>Quick! </strong><a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow"><strong>Up to 63% off Norton VPN plans</strong></a> </p><p>Catch every World Cup goal live with Norton VPN!<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_gamecoverage&param3=vpn&subid1=TG_GameCoverage" target="_blank" rel="nofollow" data-dimension112="932835ad-65b1-4f93-8d8f-e1fc05c7642e" data-action="Deal Block" data-label="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension48="Tom's Guide No.1 Streaming VPN – Try 60 days" data-dimension25="">View Deal</a></p></div><p><strong>Quick guide: watch World Cup for free</strong></p><p>Using a VPN is incredibly simple.</p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> is our No.1 streaming VPN.</p><p><strong>2. Choose the location. </strong>For instance if you're in the U.S. and want to watch Scotland vs Brazil free, you'd select 'United Kingdom' from the list.</p><p><strong>3. Watch the World Cup. </strong>Head to <a href="https://www.bbc.co.uk/iplayer/episode/m002y4kc/fifa-world-cup-2026-group-stage-scotland-v-brazil" target="_blank" rel="nofollow">BBC</a> and watch the Brazil game live.</p><h2 id="what-devices-is-bbc-available-on-3">What devices is BBC available on?</h2><ul><li><strong>Amazon Fire</strong> (Tablets, Cube, Stick, TVs)</li><li><strong>Android TV</strong> (please note: some models aren’t supported)</li><li><strong>Android</strong> (Mobile & Tablet) - Android 7.0 and above</li><li><strong>Apple TV</strong> (tvOS 14 or later)</li><li><strong>Google TV</strong> (Chromecast with Google TV and NVIDIA Shield)</li><li><strong>Freely</strong></li><li><strong>Freesat </strong>(please note: some models aren’t supported)</li><li><strong>Freeview Play</strong> (TVs and set-top boxes) (please note: some models aren’t supported)</li><li><strong>iOS (iPhone & iPad)</strong> - iOS 14 and above</li><li><strong>LG Smart TVs</strong> (2016-2024)</li><li><strong>NOW Smart Sticks and Boxes </strong>(minimum firmware v11.5.0)</li><li><strong>PlayStation (PS4 and PS5)</strong></li><li><strong>Roku</strong> (Stick & Roku-OS powered TVs, minimum firmware v11.5.0)</li><li><strong>Samsung Smart TVs</strong> (2017 and above - 2016 models only offer on demand TV)</li><li><strong>Sky Q, Sky Glass and Sky Stream puck</strong></li><li><strong>Virgin Media</strong> (360, Stream, TiVo)</li><li><strong>YouView</strong> (BT, Humax, Sony, TalkTalk)</li><li><strong>Xbox</strong> (One, Series X, Series S)</li></ul><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams"><strong>How to watch World Cup 2026 online</strong></a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/watch-peacock-online-from-anywhere-vpn"><strong>How to watch Peacock from anywhere with a VPN</strong></a><strong></strong></li><li><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k"><strong>How to watch the World Cup in 4K</strong></a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ Fall asleep fast in a heatwave with this magnesium-packed bedtime iced tea — here's why it works and how to make it ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/wellness/sleep/fall-asleep-fast-in-a-heatwave-with-this-magnesium-packed-bedtime-iced-tea-heres-why-it-works-and-how-to-make-it</link>
                                                                            <description>
                            <![CDATA[ When temperatures spike, a glass of water won't cut it, but this magnesium-packed iced tea triggers your brain's natural sleep signals. Here's how a clever combo of chamomile, peppermint, and coconut water acts as a natural sedative to help you drift off fast without AC. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">HYwGoDY4NFR7K6NA9HUAUc</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/KUdVJeVcmNNg6gAjq2xHPe-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Wed, 24 Jun 2026 18:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Sleep]]></category>
                                                    <category><![CDATA[Wellness]]></category>
                                                                                                <author><![CDATA[ ruth.jones@futurenet.com (Ruth Jones) ]]></author>                    <dc:creator><![CDATA[ Ruth Jones ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/Cqbswyyro7aBYnvMKaoS6W.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/KUdVJeVcmNNg6gAjq2xHPe-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock | Future]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[On the left, a woman lies in bed sleeping well. On the right, a close up of a fruity drink in the sun]]></media:description>                                                            <media:text><![CDATA[On the left, a woman lies in bed sleeping well. On the right, a close up of a fruity drink in the sun]]></media:text>
                                <media:title type="plain"><![CDATA[On the left, a woman lies in bed sleeping well. On the right, a close up of a fruity drink in the sun]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/KUdVJeVcmNNg6gAjq2xHPe-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>With homes in the UK acting like brick ovens and soaring energy bills leaving many in the US hesitant to blast the AC, the summer heatwaves are set to ruin your sleep. You need a way to <a href="https://www.tomsguide.com/how-to/how-to-sleep-better-in-a-heatwave">cool down before bed</a> so you don't spend the next few months sweaty, sticky and sleep deprived.</p><p>Your internal <a href="https://www.tomsguide.com/wellness/sleep/circadian-rhythm">body clock</a> relies several signals to fall asleep and one of them is <a href="https://pubmed.ncbi.nlm.nih.gov/30454599/" target="_blank">temperature</a> — your core needs to drop around 2°F / 1°C for you to drift off. But when your room is too warm, your body is unable to disperse heat efficiently. This leads to tossing and turning, which in turn causes <a href="https://www.tomsguide.com/wellness/sleep/cortisol">cortisol</a> levels to spike, leaving you vulnerable to <a href="https://www.tomsguide.com/wellness/sleep/why-do-i-keep-waking-up-at-3am">3 a.m. wake ups</a>.</p><p>But a refreshing bedtime drink such as our Iced Summer Sleep Tea can help your body cool naturally, so you fall asleep fast even in a heatwave. Created by <a href="https://www.tomsguide.com/author/claire-davies" target="_blank">Claire Davies</a>, Sleep Editor and Certified Sleep Science Coach, here we'll explain why this tea works, plus everything you need to make it.</p><h2 id="how-a-bedtime-iced-tea-helps-you-fall-asleep-fast-in-a-heatwave">How a bedtime iced tea helps you fall asleep fast in a heatwave</h2><p>Our bedtime tea takes a three step approach to creating the perfect conditions to sleep in a heatwave. </p><p>First, it's cooling (both literally and mentally.) Served over ice, this tea cools the throat to provide immediate relief from the hot weather. </p><p>The menthol in the peppermint also makes you <em>think </em>you're cooler (without the shock of ice water.) By triggering the <a href="https://www.sciencedaily.com/releases/2026/03/260306224220.htm" target="_blank">TRPM8 sensors in your mouth</a>, menthol tells your nervous system that you're physically cold.</p><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="YctTted3zC7bTcQeYwyFyU" name="Woman drinking green tea in bed GettyImages-1370783724" alt="A woman sits on her bed wrapped in a blanket and holding a cup of green tea" src="https://cdn.mos.cms.futurecdn.net/YctTted3zC7bTcQeYwyFyU.jpg" mos="" align="middle" fullscreen="" width="1920" height="1080" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Getty Images)</span></figcaption></figure><p>Second, it's hydrating. Slowly sipping a cooling drink replaces the fluids you've lost through sweating, keeping your body hydrated during the night. This helps you wake up energized and without the classic "<a href="https://www.medicalnewstoday.com/articles/heat-headache" target="_blank">heatwave headache</a>" that comes from an under-hydrated system.</p><p>Third, it's full of sleep friendly ingredients. Chamomile is a source of sleep-inducing compound <a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC10929570/" target="_blank">apigenin</a> while the electrolytes from a splash of coconut water or a pinch of salt will help replenish the minerals you've lost through sweating. This in turn relaxes your muscles and calms a racing, overheated heart.</p><p>The ritual of the tea-drinking process can also help you relax before bed.  But make sure to <a href="https://www.active-physio.co.uk/blog/6yaune38ynsm0e7hchj3242fwo4ndr" target="_blank">sip, rather than chug</a>, to keep your bladder happy.</p><h2 id="how-to-make-an-iced-summer-sleep-tea">How to make an Iced Summer Sleep Tea</h2><ul><li><strong>Steep two chamomile tea bags and two peppermint tea bags in 500ml of boiling water for 8-10 minutes</strong></li><li><strong>Remove the tea bags and add 60ml of coconut water and honey to taste</strong></li><li><strong>Chill for 1-2 hours</strong></li><li><strong>Serve over ice and sip roughly one hour before bed</strong></li></ul><p>Below are the detailed instructions to brew an Iced Summer Sleep Tea but don't worry, it's super simple. And if you keep scrolling, you'll find everything you need to make it.</p><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="XnDdyYPMuL6P6usQVRvVB3" name="Chamomile tea" alt="A cup of chamomile tea on a saucer with a spoon next to it containing dried chamomile." src="https://cdn.mos.cms.futurecdn.net/XnDdyYPMuL6P6usQVRvVB3.png" mos="" align="middle" fullscreen="" width="1920" height="1080" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Getty Images)</span></figcaption></figure><p><strong>Brew the tea (10 mins prep)</strong><br>Place two chamomile tea bags and two peppermint tea bags into a heat proof pitcher. Pour over 500 ml of boiling water. Leave to steep for 8 to 10 minutes to extract the maximum amount of apigenin (a sleep-inducing antioxidant) and menthol.</p><p><strong>Add a mineral boost (1 min prep)</strong><br>Remove the tea bags and, while the tea is still warm, add 60ml of pure coconut water as a mineral boost to supercharge the tea with sleep-supporting electrolytes like potassium and magnesium. Alternatively, add 60ml of soda water and a pinch of natural sea salt. </p><p><strong>Add honey (1 min prep)</strong><br>Stir in one tablespoon of raw honey (or sweeten to your personal taste) until completely dissolved. <a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC9532617/" target="_blank">Science tell us</a> that natural sugars slightly raise insulin levels, making it easier for the sleep-inducing amino acid tryptophan to enter the brain.</p><p><strong>Let it chill (2 to 3 hours)</strong><br>Allow the pitcher to cool to room temperature before putting it in the fridge to chill completely for roughly two to three hours before you drink it.</p><p><strong>Start drinking around 90 minutes before bed</strong><br>Pour the chilled tea into a tall glass over large ice cubes. Sip it slowly over a period of <a href="https://ubiehealth.com/doctors-note/dr-suggest-apigenin-nighttime-sleep-nerves-calm-4251q4" target="_blank">30 minutes</a>, and around 90 minutes before when you want to sleep. </p><p>This allows the sleepy compounds to get to work while ensuring the <a href="https://www.tomsguide.com/wellness/sleep/what-is-nocturia-and-why-is-it-bad-news-for-your-sleep-we-ask-an-expert">liquid has passed through your system before bed</a>, so you won't be woken up in the night because you need the bathroom.</p><h2 id="what-you-ll-need-to-make-an-iced-summer-sleep-tea">What you'll need to make an Iced Summer Sleep Tea</h2><p>For the highest concentration of apigenin to <a href="https://www.pukkaherbs.com/uk/en/wellbeing-articles/the-benefits-of-chamomile-tea" target="_blank">quiet the nervous system</a>, we recommend using teas made with <a href="https://m.media-amazon.com/images/I/71GQhDTUswL._AC_SL1500_.jpg" target="_blank">intact chamomile heads</a>, rather than chamomile dust (but you might need your own <a href="https://www.amazon.com/Disposable-Biodegradable-Compostable-Unbleached-Drawstring/dp/B07QHXXLNV/" target="_blank">tea filters</a>.)</p><p>And opt for pure peppermint tea for the biggest cooling pay off. Whole leaves such as the <a href="https://www.amazon.co.uk/teapigs-Peppermint-Leaves-Loose-Tea/dp/B07C626887/" target="_blank">Teapigs Peppermint Leaves</a> are best, as they contain more menthol oil for that tingly fresh sensation.</p><p>For electrolytes and minerals, we suggest <a href="https://www.amazon.com/Vita-Coco-Coconut-Water-Pure/dp/B00K77U60U/GY&th=1" target="_blank">pure coconut water</a> — a potassium boost with a touch of sweetness. Alternatively, use a pinch of <a href="https://www.amazon.com/Light-Celtic-Sea-Salt-Resealable/dp/B000SWTKV0" target="_blank">natural saa salt</a> for minerals without an unwelcome bite of sodium (Those on low sodium diets should opt for coconut water or skip this step.) And don't forget a spoonful of <a href="https://www.amazon.co.uk/MANUKA-DOCTOR-Monofloral-Certified-Guaranteed/dp/B0CSQQ68QM/" target="_blank">honey</a>.</p><p>The equipment is simple but a <a href="https://www.amazon.co.uk/Pitcher-Fridge-Cleaning-Beverage-Pitchers/dp/B0969PQSW9/" target="_blank">heatproof glass pitcher</a> is a must, so you can pour boiling water straight in without worrying about cracking (thermal shock resistant borosilicate glass is best.) We also recommend <a href="https://www.amazon.co.uk/Silicone-Freezer-Containers-Prefect-Whiskey/dp/B0C1S1ZMJ6/" target="_blank">big ice molds</a> which melt slower, keeping your drink crisp without watering it down. And for the final touches; insulated glasses and stirring sticks.</p><h3 class="article-body__section" id="section-us-shopping-list"><span>US shopping list</span></h3>        <div class="featured_product_block featured_block_hero" data-id="33ff7516-9e1f-48f5-b265-fe7cc6170ed8">            <a href="https://www.amazon.com/Certified-Organic-Chamomile-Flower-Ounces/dp/B01E9GTTZW/" data-model-name="Organic Chamomile Whole Flowers (4oz)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.26%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/aUAhxoeBK34jxiczsDgzeH.jpg" alt="A pack of Nature Restore Organic Chamomile Whole Flowers against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Nature Restore Store</div>                                        <div class="featured__title">Organic Chamomile Whole Flowers (4oz)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="f2d31fb0-296b-436a-870e-76a431bc15fe">            <a href="https://www.amazon.com/Twinings-London-Peppermint-Herbal-Count/dp/B009L6Q2YW/" data-model-name="Pure Peppermint Herbal Tea Bags (20pc)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.26%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/bn2FWt6tocsYivSkj3DmDT.jpg" alt="A box of Twinings Pure Peppermint tea bags against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Twinings</div>                                        <div class="featured__title">Pure Peppermint Herbal Tea Bags (20pc)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="71fd17a0-af62-457c-910d-22966e0d0723">            <a href="https://www.amazon.com/Vita-Coco-Organic-Coconut-Water/dp/B07DJ16CD6/" data-model-name="Coconut Water (12pc)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.37%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/2QzihdMjkCqW8Nyh2B4Myf.jpg" alt="A bottle of Vita Coco Coconut Water (left) and a case of Vita Coco Coconut water bottles (right) against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Vita Coco</div>                                        <div class="featured__title">Coconut Water (12pc)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="127dd102-a6a2-4cf5-93d7-f52bfe188799">            <a href="https://www.amazon.com/Fine-Ground-Celtic-Sea-Salt/dp/B000EITYUU/" data-model-name="Fine Ground Mineral Salt (16oz)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.26%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/h5Rryota8cNqEp5EHCupei.jpg" alt="A bag of Celtic Sea Salt against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Celtic Sea Salt</div>                                        <div class="featured__title">Fine Ground Mineral Salt (16oz)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="ba9ca4d6-ce27-417e-b956-27bc927667d1">            <a href="https://www.amazon.com/Pitcher-Bivvclaz-Fridge-Homemade-Beverage/dp/B09NY8K9HK/" data-model-name="Glass Pitcher" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.37%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/CNmin4xyrfqfadEHV3NWUC.jpg" alt="A Bivclazz Glass pitcher against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Bivvclaz</div>                                        <div class="featured__title">Glass Pitcher</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="6187603a-821b-49f8-90d8-71d305af9f95">            <a href="https://www.amazon.com/WISIMMALL-Drinking-Glasses-Cleaning-Brushes/dp/B0BCJ43LGV/" data-model-name="Drink Glasses with Straw (2pc)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.26%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/CpmgiryScLF6mNdFU2spiK.jpg" alt="A Wisimall Drink Glass with lid and straw against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>WISIMALL</div>                                        <div class="featured__title">Drink Glasses with Straw (2pc)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="5dd23ae0-c971-4428-a2b8-168a8137565d">            <a href="https://www.amazon.com/Cloud-Silicone-Molds-Droppers-Chocolate/dp/B0D4LZPQHR/" data-model-name="Cloud Ice Cube Tray (2pc)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.37%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/Ce2EH4Y5tBd6LW42wu3g2Y.jpg" alt="A set of SXOONKING Cloud ice cube trays and pipets against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>SXoonKing</div>                                        <div class="featured__title">Cloud Ice Cube Tray (2pc)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="f545b50f-e9ad-4dd0-b558-591a01fb0f7d">            <a href="https://www.amazon.com/Inches-Handle-Stirrers-Stainless-Cocktail/dp/B0B7D68LTK/" data-model-name="Bar Spoon (2pc)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.26%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/BTqkoYYgmUsDJm5Ax4TsAf.jpg" alt="A set of BRIOUT Cocktail Spoons against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>BRIOUT</div>                                        <div class="featured__title">Bar Spoon (2pc)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="2bd791e3-aba7-4525-8217-62e584893f8e">            <a href="https://www.amazon.com/Mindful-Mocktail-Delicious-Refreshing-Non-Alcoholic/dp/164567939X/" data-model-name="The Mindful Mocktail" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.37%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/ztEsc5YXnZsWU96yWdMb53.jpg" alt="A copy of the book 'The Mindful Mocktail' by Natalie Battaglia against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Natalie Battaglia</div>                                        <div class="featured__title">The Mindful Mocktail</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div><h3 class="article-body__section" id="section-uk-shopping-list"><span>UK shopping list</span></h3>        <div class="featured_product_block featured_block_hero" data-id="709973fe-241c-4dbe-8aae-86744088c51b">            <a href="https://www.amazon.co.uk/teapigs-Chamomile-Bags-Caffeine-Free-Biodegradable/dp/B005TKA9UW/" data-model-name="Chamomile Tea Bags (50pc)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.37%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/S5jVV5Nbrx3fUs34DMvJPL.jpg" alt="A pack of Teapigs Chamomile tea bags against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Teapigs</div>                                        <div class="featured__title">Chamomile Tea Bags (50pc)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="2dbaf9b9-eff4-45d9-b5ca-1ed842cd2713">            <a href="https://www.amazon.co.uk/Pukka-Three-Chamomile-Herbal-Bags/dp/B01M1T8LUF/?th=1" data-model-name="Three Chamomile Herbal Tea (80pc)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.26%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/kBstcvwUK4krhd24gNYtQP.jpg" alt="Packets of Pukka Three Chamomile tea bags against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Pukka</div>                                        <div class="featured__title">Three Chamomile Herbal Tea (80pc)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="3b5a7e37-d317-4116-b84e-226b7e5e2e17">            <a href="https://www.amazon.co.uk/teapigs-Peppermint-Tea-Caffeine-Free-Temples/dp/B005TJYXZK/?th=1" data-model-name="Whole Leaf Peppermint Tea Bags (50pc)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.37%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/nXfjF8QCavgdyDv8he8eia.jpg" alt="A box of Teapigs Peppermint Leaves tea bags against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Teapigs</div>                                        <div class="featured__title">Whole Leaf Peppermint Tea Bags (50pc)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="d3a0c22f-f533-4f6d-a622-3b14d78fd65c">            <a href="https://www.amazon.co.uk/Celtic-Sea-Salt-Ground-Ounce/dp/B000EITYUU/" data-model-name="Fine Ground Mineral Salt (16oz)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.26%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/h5Rryota8cNqEp5EHCupei.jpg" alt="A bag of Celtic Sea Salt against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Celtic Sea Salt</div>                                        <div class="featured__title">Fine Ground Mineral Salt (16oz)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="2af7ff2e-6fe8-4b39-9a29-ebca814e1384">            <a href="https://www.amazon.co.uk/MANUKA-DOCTOR-Monofloral-Certified-Guaranteed/dp/B09RC998NX?th=1" data-model-name="Manuka Honey (8.75 oz)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.37%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/vL97VaEteVjDxN2KWgmTNm.jpg" alt="A jar of Manuka Doctor Manuka Honey against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Manuka Doctor</div>                                        <div class="featured__title">Manuka Honey (8.75 oz)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="b273a23f-383b-4f33-808d-354cacc9d829">            <a href="https://www.amazon.co.uk/SUSTEAS-Liter-Resistant-Handle-Beverages/dp/B0D668HJ9Z/" data-model-name="Water Jug" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.93%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/mK7Bdu8ft4GTuNSPBRgdkG.jpg" alt="A SUSTEAS Glass Pitcher against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>SUSTEAS</div>                                        <div class="featured__title">Water Jug</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="a696a3fb-1dce-46f4-8d85-8850f5c5acc0">            <a href="https://www.anthropologie.com/en-gb/shop/love-notes-icon-juice-glass-island-edition?color=280" data-model-name="Love Notes Juice Glass" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.37%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/oGWhEhbrfBWeg4aqzVMt4Q.jpg" alt="A Love Notes Juice Glass against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Anthropologie</div>                                        <div class="featured__title">Love Notes Juice Glass</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="1e9189e7-d09a-4be5-b3ad-c7e960c5d993">            <a href="https://www.amazon.co.uk/Sumhao-4PCS-Ice-Ball-Mould/dp/B0FHPJFVGW/?th=1" data-model-name="Ice Ball Mould (4pc)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.26%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/RnhR66X9jPwWa58y6jGZ2U.jpg" alt="A series of 4 SUMHAO ice cube molds, an ice cube and a glass with drink and an ice cube in against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Sumhao</div>                                        <div class="featured__title">Ice Ball Mould (4pc)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div>        <div class="featured_product_block featured_block_hero" data-id="8c0bb323-fe4f-4212-ba8b-38b55bbac180">            <a href="https://www.anthropologie.com/en-gb/shop/garnish-cocktail-spoons-set-of-4" data-model-name="Cocktail Spoons (4pc)" data-model-brand="" ><div class='product-image-widthsetter'><p class='vanilla-image-block' data-bordeaux-image-check style='padding-top:133.26%';><img style="width: 100%" class="featured_image" src="https://cdn.mos.cms.futurecdn.net/rYMyWiGxX7XwPsQao7pKFc.jpg" alt="A set of 4 Anthropologie drinks spoons against a blue background edited by Gemini"></p></div></a>            <div class="featured_product_details_wrapper">                <div class="featured_product_title_wrapper">                                        <div class='featured__brand'>Anthropologie</div>                                        <div class="featured__title">Cocktail Spoons (4pc)</div>                                    </div>                <div class="subtitle__description">                                                            <p></p>                </div>                            </div>        </div><h2 id="summary">Summary</h2><p>If your usual mug of steaming chamomile tea looks less than appealing in the heat, our cooling alternative offers the same benefits without leaving you hot and bothered. </p><p>It also gives you what's likely to be a much needed hydration boost before bed. Alternatively, try TikTok favorite the <a href="https://www.tomsguide.com/news/sleepy-girl-mocktail-what-is-it-and-does-it-work">sleepy girl mocktail</a>, which uses <a href="https://www.tomsguide.com/wellness/sleep/why-are-people-drinking-cherry-juice-for-sleep-and-does-it-actually-work-a-sleep-doctor-answers">tart cherry juice</a> for a sleep-boost.</p><p>While the sun sets and your tea brews, <a href="https://www.tomsguide.com/how-to/how-to-cool-down-a-room">cool your house</a> by throwing open the windows and doors to create a cross breeze (but <a href="https://www.tomsguide.com/wellness/sleep/caveman-method">close your windows in the morning</a>, to lock in any cool air.) </p><p>Put your <a href="https://www.tomsguide.com/wellness/sleep/frozen-bed-sheets-and-cold-spoons-weird-tips-for-how-to-sleep-cool-during-a-heatwave">lotions in the fridge</a> while you take a <a href="https://www.tomsguide.com/wellness/sleep/hot-vs-cold-showers-before-bed-which-is-best-for-a-good-nights-sleep">lukewarm shower</a> — your post-wash routine will feel like bliss on your skin. And if you want a snack with your drink, <a href="https://www.tomsguide.com/wellness/sleep/want-to-sleep-better-tonight-eat-more-of-this-food-type-today-says-new-study">try a kiwi</a> for a boost of serotonin. </p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ There's a simple way to watch Portugal vs Uzbekistan for *FREE* ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/sports/theres-a-simple-way-to-watch-portugal-vs-uzbekistan-for-free</link>
                                                                            <description>
                            <![CDATA[ Here's how to watch Portugal vs Uzbekistan as billionaire Cristiano Ronaldo looks to end his goal drought. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">3347Y8GeKhZR2C9uC5dzHf</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/dj3JcuJmdu9UMHt6ayrvff-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Tue, 23 Jun 2026 16:37:25 +0000</pubDate>                                                                                                                                <updated>Tue, 23 Jun 2026 18:07:35 +0000</updated>
                                                                                                                                            <category><![CDATA[Streaming]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Jacob Jones ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/MVd5AB5fRo4H8yGGGhSSDk.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/dj3JcuJmdu9UMHt6ayrvff-1280-80.jpg">
                                                            <media:credit><![CDATA[ ATTILA KISBENEDEK/AFP via Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Cristiano Ronaldo (R) celebrates after scoring the 1-2 penalty goal as Hungary&#039;s midfielder #17 Callum Styles reacts during the 2026 World Cup qualifiers Europe zone group F football match between Hungary and Portugal on September 9, 2025 in Budapest, Hungary.]]></media:description>                                                            <media:text><![CDATA[Cristiano Ronaldo (R) celebrates after scoring the 1-2 penalty goal as Hungary&#039;s midfielder #17 Callum Styles reacts during the 2026 World Cup qualifiers Europe zone group F football match between Hungary and Portugal on September 9, 2025 in Budapest, Hungary.]]></media:text>
                                <media:title type="plain"><![CDATA[Cristiano Ronaldo (R) celebrates after scoring the 1-2 penalty goal as Hungary&#039;s midfielder #17 Callum Styles reacts during the 2026 World Cup qualifiers Europe zone group F football match between Hungary and Portugal on September 9, 2025 in Budapest, Hungary.]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/dj3JcuJmdu9UMHt6ayrvff-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Cristiano Ronaldo's Portugal face Uzbekistan in a crucial 2026 FIFA World Cup Group K clash at Houston's NRG Stadium on June 23. Hungry for goals? Here's a simple way to <strong>watch</strong> <strong>Portugal vs Uzbekistan for free </strong>– in U.S., Canada. and beyond.</p><p>Kick-off is at 1 p.m. ET / 10 a.m. PT / 6 p.m. BST, with fans around the world tuning in to see whether Portugal can take a major step toward the knockout rounds. </p><div  class="fancy-box"><div class="fancy_box-title">Portugal vs Uzbekistan: Free stream, TV channel, Kick off</div><div class="fancy_box_body"><p class="fancy-box__body-text"><ul><li><strong>Free stream:</strong> <a data-analytics-id="inline-link" href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>ITVX</strong></a> <strong>(U.K.)</strong></li><li><strong>Watch from anywhere:</strong> <a data-analytics-id="inline-link" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> (Up to 63% Off)</li></ul></p></div></div><p>Ronaldo starts under intense pressure after a frustrating opener against DR Congo, with Martinez resisting fans' demands to drop his captain. </p><p>Ruben Dias is pushing for a return after a fitness issue kept him out of Matchday 1, while Joao Neves is set to continue in midfield after scoring Portugal's lone World Cup goal so far</p><p>If you're searching for how to watch Portugal vs Uzbekistan free online, we've got everything a 'soccer' fan needs, including kick-off times, TV channels, and where to find a live stream of every goal, header and blistering CR7 free-kick.</p><p>Read on as we show you how to watch Portugal vs Uzbekistan from anywhere in the world for free with <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a>.</p><h2 id="watch-portugal-vs-uzbekistan-live-streams-for-free">Watch Portugal vs Uzbekistan live streams for free</h2><p>In the U.K., Portugal vs Uzbekistan will be broadcast for <a href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>free on ITVX</strong></a>. The build-up is live now ahead of kick-off at 6 p.m. BST </p><p><strong>Get ITVX</strong> – no messy sign up, email and a UK postcode (e.g. HA9 0WS). TV licence holders only.</p><p><strong>Traveling abroad?</strong> Use <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> to watch ITVX as if you were back home in the U.K. .</p><h2 class="article-body__section" id="section-how-to-watch-portugal-v-uzbekistan-live-streams-from-anywhere"><span>How to watch Portugal v Uzbekistan live streams from anywhere</span></h2><div class="product"><a data-dimension112="2fb92260-b826-4ce8-8478-a85cf4e343bd" data-action="Deal Block" data-label="Norton VPN | 60-day money-back guarantee" data-dimension48="Norton VPN | 60-day money-back guarantee" data-dimension25="$" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p><a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow" data-dimension112="2fb92260-b826-4ce8-8478-a85cf4e343bd" data-action="Deal Block" data-label="Norton VPN | 60-day money-back guarantee" data-dimension48="Norton VPN | 60-day money-back guarantee" data-dimension25="$"><strong>Norton VPN | 60-day money-back guarantee</strong></a><br>Norton VPN is our No.1 Streaming VPN – and our top pick for World Cup 2026, with a 60-day money-back guarantee on annual plans.</p><p><strong>What you'll get...</strong></p><p>🌍 Servers in 30+ countries for home-country streaming<br>🔒 Native app for Amazon Fire TV devices<br>⚡️ WireGuard protocol across all Apple platforms<br>📺 Apps for Google TV, Android TV, and Apple TV</p><p>A 12-month Norton VPN plan starts at <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>$3.33 per month</strong></a> ($39.99 upfront, pre-tax) and comes with a 60-day money-back guarantee on annual plans.<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow" data-dimension112="2fb92260-b826-4ce8-8478-a85cf4e343bd" data-action="Deal Block" data-label="Norton VPN | 60-day money-back guarantee" data-dimension48="Norton VPN | 60-day money-back guarantee" data-dimension25="$">View Deal</a></p></div><p><strong>Quick guide: watch World Cup for free</strong></p><p>Using a VPN is incredibly simple.</p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tg&param1=aff&param2=worldcup26_dealpost&param3=vpn&subid1=Deal_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> is our No.1 streaming VPN.</p><p><strong>2. Choose the location. </strong>For instance if you're in the U.S. and want to watch Portugal v Uzbekistan free, you'd select 'United Kingdom' from the list.</p><p><strong>3. Watch the World Cup. </strong>Head to <a href="https://www.itv.com/watch/fifa-world-cup-2026/1a6247" target="_blank" rel="nofollow"><strong>ITVX</strong></a> and watch the game live.</p><h2 id="what-devices-is-itvx-available-on-3">What devices is ITVX available on?</h2><ul><li><strong>Amazon Fire</strong> (Tablets, Cube, Stick, TVs)</li><li><strong>Android TV</strong> (please note: some models aren’t supported)</li><li><strong>Android</strong> (Mobile & Tablet) - Android 7.0 and above</li><li><strong>Apple TV</strong> (tvOS 14 or later)</li><li><strong>Google TV</strong> (Chromecast with Google TV and NVIDIA Shield)</li><li><strong>Freely</strong></li><li><strong>Freesat </strong>(please note: some models aren’t supported)</li><li><strong>Freeview Play</strong> (TVs and set-top boxes) (please note: some models aren’t supported)</li><li><strong>iOS (iPhone & iPad)</strong> - iOS 14 and above</li><li><strong>LG Smart TVs</strong> (2016-2024)</li><li><strong>NOW Smart Sticks and Boxes </strong>(minimum firmware v11.5.0)</li><li><strong>PlayStation (PS4 and PS5)</strong></li><li><strong>Roku</strong> (Stick & Roku-OS powered TVs, minimum firmware v11.5.0)</li><li><strong>Samsung Smart TVs</strong> (2017 and above - 2016 models only offer on demand TV)</li><li><strong>Sky Q, Sky Glass and Sky Stream puck</strong></li><li><strong>Virgin Media</strong> (360, Stream, TiVo)</li><li><strong>YouView</strong> (BT, Humax, Sony, TalkTalk)</li><li><strong>Xbox</strong> (One, Series X, Series S)</li></ul><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams"><strong>How to watch World Cup 2026 online</strong></a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/watch-peacock-online-from-anywhere-vpn"><strong>How to watch Peacock from anywhere with a VPN</strong></a><strong></strong></li><li><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k"><strong>How to watch the World Cup in 4K</strong></a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ 4 sleep experts share how they fall asleep fast and skip waking up at 3 a.m. in hot weather — 4 steps to take tonight ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/wellness/sleep/5-steps-heatwave-sleep-experts-take-to-drop-off-fast-and-avoid-sweaty-3-a-m-wake-ups</link>
                                                                            <description>
                            <![CDATA[ Scorching night ahead? Sleep specialists share the 5 simple things they do to fall asleep fast and skip 3 a.m. wake-ups during a heatwave — and the 3 habits sabotaging your rest. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">FUSWbvVdJL5kuePMRgpqFo</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/wEfZN4cFmKyMhmaz2mycCM-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Mon, 22 Jun 2026 09:36:46 +0000</pubDate>                                                                                                                                <updated>Mon, 22 Jun 2026 12:02:26 +0000</updated>
                                                                                                                                            <category><![CDATA[Sleep]]></category>
                                                    <category><![CDATA[Sleep Problems]]></category>
                                                    <category><![CDATA[Wellness]]></category>
                                                                                                                    <dc:creator><![CDATA[ Frances Daniels ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/gwtHaY4CfWtqYQH6EuKPGE.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/wEfZN4cFmKyMhmaz2mycCM-1280-80.jpg">
                                                            <media:credit><![CDATA[Future/ Getty]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[The composite image shows a dark haired woman sleeping peacefully in bed on the left, while the right hand image shows a dark haired woman sitting up in bed while resting a cold bottle of water against her forehead ]]></media:description>                                                            <media:text><![CDATA[The composite image shows a dark haired woman sleeping peacefully in bed on the left, while the right hand image shows a dark haired woman sitting up in bed while resting a cold bottle of water against her forehead ]]></media:text>
                                <media:title type="plain"><![CDATA[The composite image shows a dark haired woman sleeping peacefully in bed on the left, while the right hand image shows a dark haired woman sitting up in bed while resting a cold bottle of water against her forehead ]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/wEfZN4cFmKyMhmaz2mycCM-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Let's face it, trying to sleep during heatwaves can be excruciating. You're frustrated, sweaty, and <a href="https://www.tomsguide.com/wellness/sleep/why-do-i-keep-waking-up-at-3am">wide awake at 3 a.m</a>. trying to calculate how many hours of sleep you could still salvage before you need to get up.  </p><p>As a sleep writer who <a href="https://www.tomsguide.com/wellness/sleep-problems/how-to-sleep-cool-in-summer-without-aircon">lives in a building without air con</a>, I've tried practically every <a href="https://www.tomsguide.com/wellness/sleep/is-tiktok-the-new-bedtime-story-new-survey-shows-americans-are-embracing-viral-sleep-hacks">TikTok sleep hack</a> that promises a cooler night's sleep, only to be left largely disappointed. But how do sleep experts mange to fall asleep during heatwaves? And what cooling sleep hacks do they use that actually work?</p><p>To find out, I've got in touch with four leading sleep experts who've shared the five  hacks that help them swerve<a href="https://www.tomsguide.com/features/insomnia-what-is-it-whats-the-cause-and-how-to-tackle-it"> insomnia</a> and <a href="https://www.tomsguide.com/wellness/sleep-problems/night-sweats">night sweats</a> during heatwaves. Plus, they reveal the three things you should avoid at all costs...</p><h2 id="key-takeaways">Key takeaways </h2><ul><li>Ensure windows are closed and blackout curtains are shut during the day to trap cool night air in your bedroom</li><li>Cooling hacks include switching to lightweight, breathable bedding, and taking a lukewarm shower to trigger your body's natural cooling process</li><li>Avoid heavy or spicy meals and vigorous exercise close to bedtime, as both significantly raise your core body temperature.</li><li>If sharing a bed with a partner generates too much heat, try sleeping separately temporarily or adopting the Scandinavian sleep method of using two individual duvets.</li><li>If you are struggling to sleep after 20 minutes, get out of bed to rest in a cooler room and only return when you are genuinely tired.</li></ul><h3 class="article-body__section" id="section-5-things-sleep-experts-do-to-fall-asleep-during-heatwaves"><span>5 things sleep experts do to fall asleep during heatwaves </span></h3><h2 id="1-the-caveman-method-for-bedroom-windows">1. The 'Caveman Method' for bedroom windows</h2><p>This may be an obvious one, but the first thing you should do is try to cool down your room as much as possible. However, what isn't as obvious is how to keep your bedroom (especially when you have <a href="https://www.tomsguide.com/wellness/sleep-problems/how-to-sleep-cool-in-summer-without-aircon">no air conditioning</a>). </p><p>"Many people open their windows when it’s hot outside, but if the outside air is warmer than inside, you’re actually letting this heat in to the room," says Dr. Lindsay Browning, a neuroscientist and clinical psychologist at <a href="http://www.troublesleeping.co.uk/" target="_blank">TroubleSleeping</a>.</p><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="LBUawXiJ6WsR3F5dupLWfa" name="Caveman method for cooler sleep" alt="The image shows the back of a woman silhouetted against the bedroom curtains she is closing" src="https://cdn.mos.cms.futurecdn.net/LBUawXiJ6WsR3F5dupLWfa.jpg" mos="" align="middle" fullscreen="" width="1920" height="1080" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Getty Images)</span></figcaption></figure><p>To avoid hot air streaming into your home, it's best to go full-on <a href="https://www.tomsguide.com/wellness/sleep/i-tested-the-caveman-cooling-hack-and-ruined-my-sleep-heres-why">caveman method</a>, and turn your room into a cool cave. </p><p>"I recommend keeping your blinds, curtains and windows closed during the day to stop the sun heating the room, then later in the evening once the outside air has cooled down you can open the windows to let the cooler evening air in," advises Browning. </p><h2 id="2-the-lukewarm-shower-trick">2. The lukewarm shower trick</h2><p><a href="https://tracking.us.nylas.com/l/3786e88b57844da69fa798ee68b5933d/0/bfbbc1e7a2d6c8ced1b869f5017ebd0ba6b2ba6f4eeb544d564f8c615e36445a?cache_buster=1780413672" target="_blank">Dr. Saema Tahir</a>, a quadruple board certified sleep and pulmonary specialist, swears by a <a href="https://www.tomsguide.com/wellness/sleep/want-to-fall-asleep-fast-and-wake-with-lots-of-energy-this-is-the-simple-temperature-pre-loading-hack-a-sleep-expert-recommends">warm showe</a>r 90 minutes before bed.</p><p>"It pulls blood to the skin surface and accelerates heat loss, triggering the core temperature drop that sleep requires," she explains. </p><p>“Not cold — lukewarm," agrees Sammy Margo, a sleep physiotherapist at <a href="https://www.dreams.co.uk/sleep-matters-club/meet-the-experts/sammy-margo" target="_blank">Dreams</a>. </p><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:2383px;"><p class="vanilla-image-block" style="padding-top:52.75%;"><img id="mSBmnSYeDExrvMZGefpvGe" name="nighttime shower" alt="a photo of a woman in warm shower washing hair as part of nighttime routine" src="https://cdn.mos.cms.futurecdn.net/mSBmnSYeDExrvMZGefpvGe.jpg" mos="" align="middle" fullscreen="" width="2383" height="1257" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Getty/Gary John Norman)</span></figcaption></figure><p>"While it might seem obvious to take a cold shower to cool down before bed, stepping out of a lukewarm shower triggers your body’s natural cooling process and promoting relaxation, which in turn may make it easier to fall asleep comfortably,” elaborates Margo. </p><p>If you want to try this hack, aim for a water temperature between 104 °F and 108 °F (40°C and 42.5°C), which has been <a href="https://pubmed.ncbi.nlm.nih.gov/31102877/" target="_blank">shown</a> to be optimal for sleep.</p><h2 id="3-the-lightweight-bedding-switch">3. The lightweight bedding switch</h2><p>If you're using the same thick duvet or comforter that kept you warm in winter, then it'll likely make you sleep even hotter during summer. </p><p>"It still baffles me that people are still using the same duvet throughout the seasons," says researcher Hannah Shore, Head of Sleep at <a href="https://www.awin1.com/awclick.php?awinmid=1867&awinaffid=103504&clickref=tomsguide-gb-1085104226900956060&p=https%3A%2F%2Fwww.mattressonline.co.uk%2Four-experts%2Fhannah-shore%2F%3Fsrsltid%3DAfmBOooAA790fUrd7LEycmBGrZdC4AuRv3KiG1jKhDIT8maw_Zu-iQKX" target="_blank">MattressOnline</a>. "We need to be swapping out those thick duvets for a much thinner, lower tog duvet."</p><p>Even if you feel you're bedding is still lightweight, even the material may be trapping heat. </p><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="YbUgBFZ3iapab3XHNH8tvT" name="Bed sheet testing" alt="Two hands placed on a gingham sheet set laid out on the bed" src="https://cdn.mos.cms.futurecdn.net/YbUgBFZ3iapab3XHNH8tvT.png" mos="" align="middle" fullscreen="" width="1920" height="1080" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Future)</span></figcaption></figure><p>"Synthetic bedding, like polyester, traps humidity against the skin, preventing sweat from evaporating," says Dr. Tahir. "Loose-weave linen or cotton makes a significant difference, especially on humid nights."</p><p>"Natural fibres like cotton or linen are fantastic because they allow air to circulate and wick away moisture from your body, which may help you to keep fresh and cool throughout the night," agrees Margo.</p><p>"My favourite choice is lightweight, percale weave cotton sheets with a thread count between 200-400 as they provide optimal comfort,“ she adds. </p><h2 id="4-the-wet-towel-fan-hack">4. The wet towel fan hack</h2><p>No, we're not talking the Egyptian sleep method (which involves sleeping under cool, damp towels). We're talking about two fixes where you can use a wet towel to evaporate heat for a cooler bedroom. </p><p>The first one is a <a href="https://www.tomsguide.com/home/this-cooling-fan-hack-has-gone-viral-and-its-not-as-strange-as-you-think">fan hack</a> recommend by Dr. Tahir. "I point the fan across a wet towel rather than circulating hot air; it's basic evaporative cooling that can drop perceived temperature by a few degrees," says the board-certified physician. </p><p>The second tip is brought to you by sleep expert Shore, who often keeps a cold, damp towel on her nightstand in case of <a href="https://www.tomsguide.com/wellness/sleep/i-tried-the-7-1-sleep-rule-doctors-rate-as-the-best-way-to-stop-3-a-m-wake-ups-heres-why-it-works">3 a.m. wake ups</a>. </p><p>"When I wake throughout the night, I can then apply this to my wrists and the back of my neck to help cool me down further," explains Shore. "Pick points on the body where the blood is closer to the surface, like your wrists, as this helps to cool your body internally as well as externally."</p><h2 id="5-they-get-a-temporary-sleep-divorce">5. They get a (temporary) sleep divorce</h2><p>This hack might be a little controversial, but it may be worth a shot if you share a bed with your partner, as Margo points out that “sharing a bed can double the body heat, making it harder to stay cool during warmer nights."</p><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="3w8VUAqdZFkWqFksSHBuw3" name="Couple sleeping in bed using the Scandinavian Sleep Method of separate duvets." alt="A couple sleeping in bed using the Scandinavian Sleep Method of separate white duvets." src="https://cdn.mos.cms.futurecdn.net/3w8VUAqdZFkWqFksSHBuw3.jpg" mos="" align="middle" fullscreen="" width="1920" height="1080" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Getty Images)</span></figcaption></figure><p>"If possible, you may wish to temporarily sleep in separate beds from your partner during a heatwave," advises Dr Browning. </p><p>If a sleep divorce seems too extreme, then you can try another sleep hack that gives you your own space while still sharing a bed. </p><p>"One simple but effective solution is the <a href="https://www.tomsguide.com/how-to/how-to-make-your-bed-the-scandinavian-sleep-method-way">Scandinavian sleep method</a>, using two separate duvets, which allows each person to regulate their own temperature and reduce overheating," says Margo.</p><h3 class="article-body__section" id="section-3-heatwave-mistakes-sleep-experts-avoid"><span>3 heatwave mistakes sleep experts avoid</span></h3><h2 id="1-they-avoid-eating-too-late">1. They avoid eating too late </h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:2000px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="9u7BVJ7CmSFJDFAoeb6igK" name="TG_cooking-rice-2.jpg" alt="Curry chicken and rice" src="https://cdn.mos.cms.futurecdn.net/9u7BVJ7CmSFJDFAoeb6igK.jpg" mos="" align="middle" fullscreen="" width="2000" height="1125" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>Meal ingestion has been <a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC7108915/" target="_blank">shown</a> to increase body temperature, which is why you shout eat dinner earlier during heatwaves.</p><p>"Try to avoid doing things in the evening that can raise your core temperature, so leave a couple of hours between eating large meals," warns Shore. </p><p>"I also avoid heavy or spicy meals late in the evening, as these can make you feel warmer and more uncomfortable at bedtime," says Dr. Browning. </p><h2 id="2-they-avoid-evening-workouts">2. They avoid evening workouts</h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:5760px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="qS9CtVRTNPVXo92XBAJC2M" name="running on treadmill.jpg" alt="a photo of a man running on a treadmill" src="https://cdn.mos.cms.futurecdn.net/qS9CtVRTNPVXo92XBAJC2M.jpg" mos="" align="middle" fullscreen="" width="5760" height="3240" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>A <a href="https://www.nature.com/articles/s41467-025-58271-x" target="_blank">2025 study</a> found that vigorous exercise within a four-hour window before bedtime can disrupt sleep. That's because the maintenance of a healthy sleep function is characterized by a decline in core body temperature. </p><p>Exercise, says Dr Browning, increases core body temperature and makes you feel even hotter during heatwave. </p><p>"Even though I am naturally an evening person and enjoy exercise in the late afternoon and evening, during a heatwave I specifically avoid vigorous exercise too close to bedtime," says Dr. Browning. </p><h2 id="3-clock-watching">3. Clock watching</h2><p>Still cant sleep in the heat? Just remember the one thing you should avoid: worrying.</p><p>"Most heatwaves are relatively short-lived," assures Dr Browning. "People are remarkably resilient at coping with short periods of poor sleep, and one bad night, or even a few disrupted nights during a heatwave, is unlikely to cause any lasting harm."</p><p>Shore says that clock-watching and counting the hours will produce <a href="https://www.tomsguide.com/wellness/sleep/cortisol">"wake-promoting hormones</a>, leading to further struggles", so the best thing to do is distract yourself. </p><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="WvGiTKtrfAdHUoPGvScwJ9" name="3 am wake-ups" alt="A woman with long dark brown hair lies in bed holding a green alarm clock that reads 3 a.m." src="https://cdn.mos.cms.futurecdn.net/WvGiTKtrfAdHUoPGvScwJ9.jpg" mos="" align="middle" fullscreen="" width="1920" height="1080" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Future)</span></figcaption></figure><p>"If you are struggling to sleep, don’t be afraid to get up, cool down elsewhere, do something to take your mind off things, such as reading or listening to a podcast, then head back to bed when you're tired," advises Shore.</p><p>"If you've been lying awake 20 minutes, get up, move somewhere cooler, and return only when sleepy,"agrees Dr. Tahir. "That's stimulus control therapy, the core of<a href="https://www.tomsguide.com/wellness/sleep-problems/cbt-for-insomnia-interview-with-dr-aric-prather"> CBT for insomnia</a>."</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ What these 5 new iOS 27 Apple CarPlay features mean for your car ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/vehicle-tech/evs/what-these-5-new-ios-27-apple-carplay-features-mean-for-your-car</link>
                                                                            <description>
                            <![CDATA[ Learn about the new Apple CarPlay features in iOS 27. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">wmGCC4kEAZT9ZwKzE8UGr3</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/rHFnBUcdsordb35jAEN5Y7-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Mon, 22 Jun 2026 08:30:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[EVs]]></category>
                                                    <category><![CDATA[Vehicle Tech]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/rHFnBUcdsordb35jAEN5Y7-1280-80.jpg">
                                                            <media:credit><![CDATA[Tom&#039;s Guide / John Velasco]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Apple CarPlay tips.]]></media:description>                                                            <media:text><![CDATA[Apple CarPlay tips.]]></media:text>
                                <media:title type="plain"><![CDATA[Apple CarPlay tips.]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/rHFnBUcdsordb35jAEN5Y7-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>iOS 27 is introducing five significant upgrades to Apple CarPlay that fundamentally change how you interact with your vehicle's infotainment system. From more reliable wireless connectivity to native video support, these improvements address long-standing complaints from daily drivers. </p><p>If you've ever experienced CarPlay connectivity issues or struggled to control media without losing navigation, these features are designed specifically for you.</p><section class="howto-block">                    <h3>1. Wireless CarPlay becomes more reliable</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/UMNKV7mTFsZTbQcosZgAZ4.jpg"                                        alt="CarPlay in iOS 26.5 beta 1 showing on a screen."                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/UMNKV7mTFsZTbQcosZgAZ4.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide / John Velasco)</div></figure>                    <p><p>We’ve all been there: you’re driving along, and suddenly Apple CarPlay just cuts out. Your music stops, your maps freeze, and you’re stuck trying to figure out why your phone disconnected. It’s incredibly annoying and completely distracts you from the road.</p><p>With iOS 27, Apple is finally trying to fix those annoying drops. They aren’t changing how CarPlay looks, but they are making the tech inside it a lot smarter.</p><p>Think of it as smoothing out the wrinkles. The update makes it easier for your iPhone and your car to talk to each other without losing their grip. It means your phone will stay connected more reliably, and if it <em>does</em> happen to drop for a second, it will snap back into place much faster on its own.</p><p>It won't completely fix every glitchy car radio out there, but it’s a really nice upgrade that should mean fewer headaches on your daily commute.</p></p>                </section><section class="howto-block">                    <h3>2. Audio mini player stays visible with navigation</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/jBAMRbpYBGEXJa67fDAGwV.jpg"                                        alt="TomTom for CarPlay."                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/jBAMRbpYBGEXJa67fDAGwV.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide / John Velasco)</div></figure>                    <p><p>Controlling music in CarPlay currently means pulling up the music app, which completely covers your navigation display. You either change songs and lose sight of your route, or ignore music entirely to focus on driving. </p><p>iOS 27 adds a persistent audio mini player that floats over your maps as an unobtrusive overlay. You can pause, skip tracks, or change songs without looking away from navigation or pulling up a separate app.</p><p>This works with every audio streaming service: Apple Music, Spotify, podcasts, or audiobooks, so you always have instant access to media controls. Even better, a passenger can control the audio while you focus entirely on the road and traffic ahead.</p></p>                </section><section class="howto-block">                    <h3>3. GPS accuracy improves in challenging environments</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/RZXhva9423dPuRqLMT9j8H.jpg"                                        alt="iOS 26 beta CarPlay screenshots."                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/RZXhva9423dPuRqLMT9j8H.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide / John Velasco)</div></figure>                    <p><p>Driving through tunnels, parking garages, or downtown skyscrapers usually means one thing: your GPS completely freaks out. Your map drifts, you miss a turn, and you're stuck waiting for the app to recalculate.</p><p>iOS 27 helps fix this by making your phone smarter when it loses a satellite signal. Instead of giving up, your iPhone will now use its own internal sensors to guess exactly where you are based on how fast you’re moving and which way you're turning.</p><p>Working across Apple Maps, Google Maps, and Waze, it means fewer missed turns, smoother navigation, and a lot less stress next time you're driving through a big city.</p></p>                </section><section class="howto-block">                    <h3>4. Audio scrubbing navigates podcasts and audiobooks</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/FLyFRcMqi8LgM8uojCnYY6.jpg"                                        alt="An photo of Apple CarPly in use"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/FLyFRcMqi8LgM8uojCnYY6.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Podcasts and audiobooks are long-form content that doesn't fit traditional skip-button controls. CarPlay's Now Playing screen only offered skip and previous buttons, forcing you to listen sequentially or pull out your phone. </p><p>iOS 27 adds a touch-friendly scrubbing slider to the Now Playing display, letting you drag your finger along the timeline to jump to any point in the audio without taking your eyes off the road.</p><p>This is particularly useful when you want to replay a quote you liked, skip past a sponsor segment, or find a specific moment you remember hearing. Instead of manually searching, you simply drag the slider on your CarPlay display.</p></p>                </section><section class="howto-block">                    <h3>5. Video in CarPlay becomes native</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/LgMh2CubAuSFwe8r7rtpr7.jpg"                                        alt="Apple CarPlay tips."                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/LgMh2CubAuSFwe8r7rtpr7.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide / John Velasco)</div></figure>                    <p><p>iOS 26 introduced Video in CarPlay, but it was severely limited to AirPlay casting when parked. iOS 27 transforms it into a real feature. Developers can now build apps that let you browse and play videos directly on your vehicle's display. When parked, you can stream movies, TV shows, short-form videos, or sports broadcasts on the big screen without the technical hassle of AirPlay.</p><p>If you start driving while video is playing, iOS 27 automatically switches to audio-only mode so you stay focused on the road while still following along with what you're watching. Once parked again, video resumes automatically. </p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-eGdQLW"></div>                            </div>                            <script src="https://kwizly.com/embed/eGdQLW.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/vehicle-tech/evs/7-apple-carplay-tips-that-i-swear-by-to-improve-your-driving">From driving directions to staying alert — 7 CarPlay settings and features you should absolutely use for a safer drive</a></li><li><a href="https://www.tomsguide.com/phones/iphones/how-to-use-ios-26-carplay-widget-features-on-your-iphone">You can add custom widgets to CarPlay — here's how to personalize your dashboard</a></li><li><a href="https://www.tomsguide.com/phones/iphones/ios-27-has-a-hidden-liquid-glass-slider-here-is-how-to-find-and-use-it">iOS 27 has a new ‘Liquid Glass’ slider — here's how to find it and use it</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ Control your Apple TV like a pro with these 5 hidden remote features ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/tvs/5-hidden-apple-tv-remote-features-youre-probably-not-using</link>
                                                                            <description>
                            <![CDATA[ Your Apple TV remote has hidden powers that make everyday tasks faster. Here are the five most useful ones. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">JkDXY7NcEtKGRkjfekq48c</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/o2MW6Vb44S6zJKTvTxfGXZ-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Mon, 22 Jun 2026 08:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[TVs]]></category>
                                                    <category><![CDATA[Streaming]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/o2MW6Vb44S6zJKTvTxfGXZ-1280-80.jpg">
                                                            <media:credit><![CDATA[Henry T. Casey / Tom&#039;s Guide]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[The Apple TV 4K (2022) remote in front of a TV with the tvOS home screen.]]></media:description>                                                            <media:text><![CDATA[The Apple TV 4K (2022) remote in front of a TV with the tvOS home screen.]]></media:text>
                                <media:title type="plain"><![CDATA[The Apple TV 4K (2022) remote in front of a TV with the tvOS home screen.]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/o2MW6Vb44S6zJKTvTxfGXZ-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>On the surface, the Apple TV remote looks almost too simple. It has the obvious buttons you expect: play, pause, back, and volume control. But behind that minimalist design, Apple buried several powerful shortcuts inside tvOS that most users never discover.</p><p>Some of these hidden features solve genuinely frustrating problems like fixing a mid-episode freeze without having to pull the plug on your entire device. Others unlock accessibility tools or hand you advanced settings.</p><p>If you want to stop wrestling with menus and start streaming smarter, here are the five hidden Apple TV remote features worth learning.</p><section class="howto-block">                    <h3>1. Force-close apps without restarting</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/NdnVgdeifRzHh7irWTs9Xd.jpg"                                        alt="Apple TV 4K"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/NdnVgdeifRzHh7irWTs9Xd.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Apple)</div></figure>                    <p><p>When an Apple TV app misbehaves, most people unplug the entire device and wait for a restart. There's a faster way. </p><p>If you <strong>double-press the Home button</strong> your remote pulls up a carousel of currently running apps. Each open app appears as a card you can navigate through. <strong>Once you've selected the problematic app, swipe upward to force-close it</strong>. The app shuts down immediately without affecting anything else running on your Apple TV.</p><p>Closing them periodically keeps your streaming device responsive and prevents the creeping slowdown that happens over weeks of continuous use. It's especially useful if you're switching between multiple services and notice performance dropping.</p></p>                </section><section class="howto-block">                    <h3>2. Scrub through video with precision</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/Emrxy4ez8BVqVvadVHSdsE.jpg"                                        alt="Elago R5 apple tv remote case with Siri Remote"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/Emrxy4ez8BVqVvadVHSdsE.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>The clickpad on your remote isn't just for navigation, it's a timeline controller. <strong>Press the play/pause button, then slide your finger left or right on the clickpad to rewind or fast-forward </strong>through a show or movie. </p><p>You can also draw circles on the clickpad in either direction to scrub, which some users might find more intuitive than sliding.</p><p>For older Siri Remotes without the clickpad, <strong>use the touch surface instead</strong>. The advantage of scrubbing over using verbal commands is precision — you can land exactly where you want in a scene without overshooting by 15 seconds. </p><p>It's particularly useful when you're trying to find a specific moment or skip past credits without jumping too far ahead.</p></p>                </section><section class="howto-block">                    <h3>3. Switch audio outputs instantly</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/nx6RAmzfASJBNhrcoVSq66.jpg"                                        alt="Apple TV 4K interface"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/nx6RAmzfASJBNhrcoVSq66.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>If you have external speakers connected to your Apple TV — whether that's a pair of <a href="https://www.tomsguide.com/reviews/apple-homepod-mini">HomePod minis</a> or a soundbar — you can change audio routing without diving into settings menus. </p><p>To open the audio dashboard without interrupting playback, simply <strong>long-press the TV/Control Center button</strong> (the rectangular button with the TV icon) on your Remote. The Control Center panel will slide into view, allowing you to click the <strong>Audio Controls icon</strong> and quickly select your desired speakers. </p><p>This is invaluable when you want to switch from TV speakers to a better sound system, temporarily route audio to your headphones for quiet listening, or even select multiple AirPlay 2 speakers at once to send perfectly synced audio to different rooms.</p></p>                </section><section class="howto-block">                    <h3>4. Enable accessibility features with one gesture</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/FtxGRgCuBZph8BQFSbxttP.jpg"                                        alt="Apple TV 4K settings"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/FtxGRgCuBZph8BQFSbxttP.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>VoiceOver is Apple's audio description system that reads menus, text, and interface elements aloud as you navigate. It's designed for users with vision impairments but benefits anyone who wants spoken feedback from their device. </p><p>You can set up a quick toggle in Accessibility settings — <strong>triple-press the Menu or Back button </strong>to activate it instantly.</p><p>Once enabled, standard navigation is done entirely with a single finger: <strong>simply drag your finger across the clickpad</strong> to explore and hear what is currently beneath it, or <strong>flick left or right with one finger</strong> to move sequentially to the next item. </p><p>The more advanced two-finger gestures are saved for controlling the speech itself —such as <strong>a single two-finger tap to instantly pause or resume the voice, or a two-finger flick up or down </strong>to have VoiceOver read the entire screen aloud.</p></p>                </section><section class="howto-block">                    <h3>5. Unlock advanced settings and demo mode</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/KGmEv9xmrE3iitmKSPiZt6.jpg"                                        alt="The Apple TV 4K (2022) remote in hand, tilted to the side"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/KGmEv9xmrE3iitmKSPiZt6.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>Apple hides specialized menus in tvOS to prevent accidental system changes. To access the hidden Advanced Settings developer menu, go to <strong>Settings, System, Software Update</strong>,<strong> highlight the update field, and press Play/Pause four times</strong>. This menu safely disappears the next time you restart your Apple TV.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-Odk92W"></div>                            </div>                            <script src="https://kwizly.com/embed/Odk92W.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/tvs/i-found-5-hidden-shortcuts-for-my-apple-tv-4k-that-make-it-so-much-easier-to-use-heres-how-to-use-them">5 features that make my Apple TV 4K so much easier to use</a></li><li><a href="https://www.tomsguide.com/tvs/your-tv-is-watching-you-how-to-turn-off-data-collection-on-lg-samsung-roku-and-more">Your TV is watching you — how to turn off data collection on LG, Samsung, Roku and more</a></li><li><a href="https://www.tomsguide.com/how-to/how-to-fix-an-apple-tv-thats-not-working">How to fix an Apple TV that's not working — and fix Apple TV remote issues too</a><strong></strong></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ Stop doing 100s of sit-ups: I'm a personal trainer, and I use 'shoot-throughs' to build strong abs and obliques instead ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/wellness/workouts/stop-doing-100s-of-sit-ups-im-a-personal-trainer-and-i-use-shoot-throughs-to-build-strong-abs-and-obliques-instead</link>
                                                                            <description>
                            <![CDATA[ Here’s everything you need to know about the lateral shoot-through and its benefits. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">X3FGwqsWHSXg9jTYAyBghD</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/BfU3HKMma4YVgxfDCZZmk4-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Mon, 22 Jun 2026 04:30:00 +0000</pubDate>                                                                                                                                <updated>Mon, 22 Jun 2026 14:48:44 +0000</updated>
                                                                                                                                            <category><![CDATA[Workouts]]></category>
                                                    <category><![CDATA[Wellness]]></category>
                                                    <category><![CDATA[Fitness]]></category>
                                                                                                <author><![CDATA[ sam.hopes@futurenet.com (Sam Hopes) ]]></author>                    <dc:creator><![CDATA[ Sam Hopes ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/jZ88qJqvjWaCXXv3qvUQPA.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ &lt;p&gt;Sam Hopes is a level 3 qualified trainer, a level 2 Reiki practitioner and a fitness editor at Tom&#039;s Guide. She is also currently undertaking her Yoga For Athletes training course. Sam has written for various fitness brands and websites over the years and has experience across brands at Future, such as &lt;a href=&quot;https://www.livescience.com/author/sam-hopes&quot;&gt;Live Science&lt;/a&gt;,&lt;a href=&quot;https://www.fitandwell.com/author/sam-hopes&quot;&gt; Fit&amp;amp;Well&lt;/a&gt;,&lt;a href=&quot;https://www.coachweb.com/author/sam-hopes&quot;&gt; Coach&lt;/a&gt;, and T3. &lt;/p&gt;&lt;p&gt;Having worked with fitness studios like F45 and Virgin Active and trained both group and 1:1, Sam now primarily teaches outdoor bootcamps, bodyweight, and kettlebells. She also coaches mobility and flexibility classes several times a week and believes that true strength comes from a holistic approach to training your body. &lt;/p&gt;&lt;p&gt;Sam has completed two mixed doubles Hyrox competitions in London and the Netherlands and finished her first doubles attempt in 1:11.&lt;/p&gt;&lt;p&gt;In her spare time, she enjoys CrossFit, hot yoga, Pilates and running and can be found perfecting her handstand walks and handstand push-ups in the gym whenever she has the chance to be upside down. At work, she can be found testing the latest in fitness technology and wearables, anything yoga and CrossFit-related and has a keen interest in nutrition, mindfulness, sleep and recovery.&lt;/p&gt; ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/BfU3HKMma4YVgxfDCZZmk4-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[a middle aged woman with strong abs]]></media:description>                                                            <media:text><![CDATA[a middle aged woman with strong abs]]></media:text>
                                <media:title type="plain"><![CDATA[a middle aged woman with strong abs]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/BfU3HKMma4YVgxfDCZZmk4-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Shoot-throughs have been around for a while, but I actually don't see them programmed much. It's a shame because this core exercise doesn't just whip up your heart rate for a cardio blast, it also works your core hard and improves balance, coordination and stability.</p><p>You don't need any equipment to do this move, but there will be some weight-bearing on your wrists, so if you find this difficult, try elevating your hands on blocks or gripping dumbbells.</p><p>One of the best core exercises that really blasts my core muscles is the lateral shoot-through, which is a twisty move that requires you to shift your weight between opposite arms and legs while rotating from side to side, which is a super effective way to strengthen your waist, hips, wrists and shoulders, too. </p><p>Here's exactly how it's done, plus some benefits.</p><p><em>As a reminder, this exercise is beginner-friendly, but what works for my body might not be right for you. If you’re a beginner, pregnant or postpartum, or you’re dealing with an injury, it’s always best to seek personalized advice from an expert.</em></p><h2 id="what-are-lateral-shoot-throughs">What are lateral shoot-throughs?</h2><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-ONKRJX"></div>                            </div>                            <script src="https://kwizly.com/embed/ONKRJX.js" async></script><p>Rather than peddling out endless sit-ups, why not try the lateral shoot-through? It's a multi-layered move because you start in a <a href="https://www.tomsguide.com/news/i-did-bear-planks-every-day-for-a-week-heres-my-results">bear plank</a>, which is great for targeting your hips, thighs, arms, shoulders and deeper core muscles; then, you'll transfer your weight to one side and arm while you kick your leg under your body and twist. </p><p>Don't worry, it's hard to visualize, so if you're lost, I demonstrate how to do lateral shoot-throughs below.</p><p>Although you can speed up the movement to increase cardio, I encourage you to move slowly at first to control the exercise and try to hold for at least a few seconds each side while breathing expansively through your core as you brace. </p><p>Yes, your legs are working, but your hips shouldn't take over this exercise. If they do, bend your raised knee. If you're unsure what "bracing" means, I teach you how to engage your core properly with a <a href="https://www.tomsguide.com/wellness/workouts/stop-doing-100s-of-crunches-why-this-5-minute-bracing-routine-builds-a-stronger-core-than-sit-ups-ever-will">5-minute bracing routine</a>. </p><div class="instagram-embed"><blockquote class="instagram-media"  data-instgrm-version="6" style="width:99.375%; width:-webkit-calc(100% - 2px); width:calc(100% - 2px);"><p><a href="https://www.instagram.com/p/DZuxQ1lIKgU/" target="_blank">A post shared by Tom's Guide Fitness (@tomsguidefitness)</a></p><p>A photo posted by  on </p></blockquote></div><ul><li>Start in a tabletop position with your shoulders over your wrists and hips over your knees</li><li>Zip your navel in and brace your stomach, then lift your knees to hover just above your mat, keeping your toes tucked</li><li>Lift your left hand away from the mat and begin twisting your body to the left, pressing through your right hand and shoulder for balance while raising your left arm into the air overhead</li><li>As you do this, lift your right foot away from the mat and send it under your body over to the left. Extend the leg if you can</li><li>Pause for a moment, then rotate and return to center and, without dropping your knees, repeat on the other side</li><li><em><strong>Continue for 8-12 reps per side and 3-4 sets, or 50 seconds of work and 10 seconds of rest for 6-8 rounds. </strong></em></li></ul><h2 id="are-shoot-throughs-good-for-your-back">Are shoot-throughs good for your back?</h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="VqkRQEp9Lt86fRVSYpBYKB" name="GettyImages-2163317714 core muscles.jpg" alt="Woman showing core muscles in activewear with hands on hips" src="https://cdn.mos.cms.futurecdn.net/VqkRQEp9Lt86fRVSYpBYKB.jpg" mos="" align="middle" fullscreen="" width="1920" height="1080" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Getty Images)</span></figcaption></figure><p>Like all exercises, people respond differently to different stimuli. For some people, gentle rotation of the spine helps <a href="https://www.tomsguide.com/wellness/fitness/forget-sciatica-this-2-1-2-method-can-relieve-back-pain-in-just-10-minutes-according-to-a-physiotherapist">relieve back pain,</a> especially from supported positions like a supine twist, where you lie on your back and twist your knees to one side. For others, rotation can aggravate back pain, so really, it's best to seek advice from a physical therapist or your physician if you're unsure.</p><p>Here’s what shoot-throughs <em>can</em> do for your body:</p><p><strong>Strengthen your core</strong></p><p>Many people I've taught as a trainer find this movement easier on the back than Russian twists or standing twists, as the range of motion is pretty gentle. This move also teaches you to control your body in space while coordinating your left and right sides, which is great for balance and stability. What's more, rotational motion hits your obliques, the muscles that run down your waist. </p><p><strong>Increase cardio </strong></p><p>The beauty of the shoot-through is its versatility; we can slow it right down to focus on core control or speed it up for a cardio blast, meaning it fits into many workout styles. </p><p><strong>Improve functional movement</strong></p><p>While I don't anticipate you're doing this exact type of movement daily, you will be rotating your torso without even thinking about it, and your internal and external obliques help facilitate this movement, along with side bending, so it's good to keep them strong and active.</p><p>Besides, the more you practice twisting, lifting your legs and moving around on the floor in fun, playful ways, the more you move in different <a href="https://www.tomsguide.com/wellness/fitness/what-are-the-3-planes-of-motion-for-exercise-and-why-do-they-matter">planes of motion</a>, using more joints and muscles. This, I believe, is also good for the soul, as it's a little bit of fun!</p><p>Give it a try and let us know what you think.</p><p><em><strong>Follow </strong></em><a href="https://www.instagram.com/tomsguidefitness/" target="_blank"><em><strong>Tom's Guide fitness</strong></em></a><em><strong> on Instagram for more workouts, routines, tips, and tricks.</strong></em></p><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/wellness/workouts/not-sit-ups-planks-or-crunches-i-do-this-simple-pilates-exercise-every-single-day-to-build-a-strong-and-stable-core-and-work-on-my-hip-flexor-mobility" target="_blank">Not sit-ups, planks, or crunches: I do this simple Pilates exercise every single day to build a strong and stable core and work on my hip flexor mobility</a></li><li><a href="https://www.tomsguide.com/wellness/fitness/im-a-weightlifting-coach-3-exercises-i-prefer-over-lunges-for-building-strong-stable-legs-and-knees-over-40" target="_blank">I'm a weightlifting coach — 3 exercises I prefer over lunges for building strong, stable legs and knees over 40</a></li><li><a href="https://www.tomsguide.com/wellness/workouts/i-tried-a-7-day-standing-core-routine-here-are-the-differences-i-noticed-in-my-strength-and-posture" target="_blank">I tried a 7-day standing core routine. Here are the differences I noticed in my strength and posture</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ I used to find my iPhone's Shortcuts app intimidating — then iOS 27 changed everything ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/iphones/i-used-to-find-my-iphones-shortcuts-app-intimidating-then-ios-27-changed-everything</link>
                                                                            <description>
                            <![CDATA[ With iOS 27, you can get Apple Intelligence to design custom shortcuts — here's how. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">QrK6yJRhkLwKADXTVX573m</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/K5SQbjBSv85JzgqYxoY5Lm-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sun, 21 Jun 2026 07:45:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[iPhones]]></category>
                                                    <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/K5SQbjBSv85JzgqYxoY5Lm-1280-80.jpg">
                                                            <media:credit><![CDATA[Tom&#039;s Guide/Apple/Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[iOS 27 icon shown on an iPhone screen]]></media:description>                                                            <media:text><![CDATA[iOS 27 icon shown on an iPhone screen]]></media:text>
                                <media:title type="plain"><![CDATA[iOS 27 icon shown on an iPhone screen]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/K5SQbjBSv85JzgqYxoY5Lm-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>For a long time, my iPhone's Shortcuts app sat completely untouched. Every time I opened it, I was staring down an overwhelming maze of workflows, actions, and conditional logic — concepts that felt way too close to coding for my liking. So, I did what a lot of us do: I gave up on it entirely.</p><p>But <a href="https://www.tomsguide.com/phones/iphones/ios-27-11-biggest-features-coming-to-your-iphone">iOS 27</a> completely changed how I use my phone, thanks to a new Apple Intelligence feature called Describe a Shortcut. Instead of forcing you to manually construct complex workflows, the AI lets you prompt exactly what you want your iPhone to do, and it builds the shortcut for you in seconds.</p><p>If you want to try it out yourself, you'll just need the <a href="https://www.tomsguide.com/phones/iphones/wwdc-2026-how-to-install-the-ios-27-developer-beta-right-now">iOS 27 beta</a> running on an iPhone 15 Pro or newer to get started.</p><h2 id="download-ios-27-beta-to-access-apple-intelligence-shortcuts">Download iOS 27 beta to access Apple Intelligence shortcuts</h2><p>First, back up your iPhone by going to <strong>Settings, Your Name, iCloud, iCloud Backup</strong> and tapping <strong>Back Up Now</strong>.</p><p>If you’ve never used an Apple beta before, you'll need to <a href="https://developer.apple.com/get-started/" target="_blank">register for a free developer account</a> to get started. Once you’ve done that and are off the Apple Intelligence waitlist, you can update your phone. </p><p>If you’ve used any Apple beta in the past, you can skip the registration entirely and download iOS 27 straight away. Just open <strong>Settings</strong>, go to <strong>General, Software Update,  Beta Updates</strong>, and <strong>select the iOS 27 Developer Beta</strong>.</p><section class="howto-block">                    <h3>How to create shortcuts with Apple Intelligence</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/f8Bm5YF24eqBiKzQxdgMYi.jpg"                                        alt="How to use Apple Intelligence to build custom iPhone shortcuts"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/f8Bm5YF24eqBiKzQxdgMYi.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p><strong>Open the Shortcuts app and tap the New Shortcut button</strong> at the bottom. Instead of the traditional workflow builder with manual actions, you'll see a text field asking what you want the shortcut to do. </p><p>Type a natural description of the action. I, for example, used: "At 10:00 PM, turn on 'Do Not Disturb', set the screen brightness to 15%, and turn on Dark Mode." Once you've done this, <strong>press the arrow</strong>. Apple Intelligence analyzes your prompt, then constructs the entire shortcut with all the necessary actions. </p><p>The beauty of describing shortcuts is that you can be as specific as your situation requires. You could build a morning workflow that opens your calendar, plays a specific playlist, and sends a text. You could create a work mode that silences notifications, closes distracting apps, and locks your phone until you toggle it off. </p><p>The more detailed your description, the more precisely Apple Intelligence understands what you need. Keep in mind that because this is still a beta, you may experience a little trial and error, but so far, so good. </p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-eJk2yW"></div>                            </div>                            <script src="https://kwizly.com/embed/eJk2yW.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/ios-27-has-a-hidden-liquid-glass-slider-here-is-how-to-find-and-use-it">iOS 27 has a new ‘Liquid Glass’ slider — here is how to find and use it</a></li><li><a href="https://www.tomsguide.com/phones/iphones/the-3-new-ios-27-ai-tools-that-will-instantly-save-your-ruined-photos">The 3 new iOS 27 AI tools that will instantly save your ruined photos</a></li><li><a href="https://www.tomsguide.com/phones/iphones/the-clever-ios-27-wallet-upgrade-that-means-you-will-never-have-to-carry-a-physical-loyalty-card-again">This clever iOS 27 Wallet upgrade means you'll never have to carry a physical loyalty card again</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ 5 signs your plant needs a bigger pot right now ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/gardening/5-signs-your-plant-needs-a-bigger-pot-right-now</link>
                                                                            <description>
                            <![CDATA[ Learn the most common houseplant care mistakes and simple fixes that keep plants thriving. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">CKgFGLrx5oMvrHhVbjmXAe</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/pg7DcTraQP5Buiw6ghjPFW-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 20 Jun 2026 09:15:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Gardening]]></category>
                                                    <category><![CDATA[Home]]></category>
                                                    <category><![CDATA[Outdoors]]></category>
                                                                                                                    <dc:creator><![CDATA[ Alice Carroll ]]></dc:creator>                                                                                                        <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/pg7DcTraQP5Buiw6ghjPFW-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                        <media:description><![CDATA[A range of houseplants lined up on a shelf]]></media:description>                                                            <media:text><![CDATA[Repotting snake plant]]></media:text>
                                <media:title type="plain"><![CDATA[Repotting snake plant]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/pg7DcTraQP5Buiw6ghjPFW-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>If some of your potted plants aren’t looking so good and you think you’ve tried everything, they may be root-bound. This stealthy condition often mimics under-watering or nutrient deficiencies, leaving many well-meaning plant parents completely baffled. </p><p>It happens quietly beneath the soil line, slowly choking off the plant's lifelines until intervention becomes absolutely critical. ‘Root-bound’ simply means the plant has outgrown its container. Its roots have filled all of the space and formed a dense, tangled mass. To learn the signs of a root-bound plant and how to save it, read on.</p><section class="howto-block">                    <h3>1. Visible roots </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/7jb7oc4bJDRpAwM2ogjcYZ.jpg"                                        alt="Repotting aloe vera plant "                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/7jb7oc4bJDRpAwM2ogjcYZ.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Can you see roots emerging from the drainage holes at the bottom of the pot or from the soil on the surface? Visible roots are the most obvious sign that a plant’s roots need more space and are actively searching for a way out. </p><p>When roots begin wrapping tightly around the upper rim of the soil, the plant is practically begging for a larger home.</p></p>                </section><section class="howto-block">                    <h3>2. Soil drying quickly </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/Usz7J2Fa5XZPmD8kJuDHcG.jpg"                                        alt="Watering a peace lily"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/Usz7J2Fa5XZPmD8kJuDHcG.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>If you discover that you’re having to water a plant more often, that you’re finding the topsoil dry earlier than usual, that’s probably because the roots have taken up so much space that there’s less soil to absorb moisture.</p><p>Without enough soil acting as a sponge, the water quickly evaporates. You might find yourself watering every couple of days instead of your usual weekly routine just to keep the plant upright.</p></p>                </section><section class="howto-block">                    <h3>3. Leaves turning yellow </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/SUzgdvH3LFnTVxs6kPtYKd.png"                                        alt="Overwatered monstera houseplant"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/SUzgdvH3LFnTVxs6kPtYKd.png"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p> If the foliage wilts soon after watering, or leaves are yellowing and falling off, that’s because the roots can no longer draw sufficient nutrients from the soil. The packed roots are limiting what moisture and nutrients the soil can provide; the roots need more space and soil to thrive. </p><p>This structural starvation often starts with the oldest, lowest leaves losing their color first as the plant prioritizes survival.</p></p>                </section><section class="howto-block">                    <h3>4. Water running straight through </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/gW4NxFr3Jbp3xwJTPWBXzE.jpg"                                        alt="Repotting a peace lily"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/gW4NxFr3Jbp3xwJTPWBXzE.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>When you water your plant, does the water seem to go through the soil and straight out the drainage holes? That’s another sign that the roots are occupying too much space, creating a solid block that forces water to slide right down the inside edges of the pot instead of soaking in. </p><p>If the drainage saucer fills up instantly while the actual root ball stays bone-dry, you have a classic root-bound situation.</p></p>                </section><section class="howto-block">                    <h3>5. Poor growth </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/mHfbHxSMppxYdpVHPqpyEc.jpg"                                        alt="Yellow leaf on orchid"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/mHfbHxSMppxYdpVHPqpyEc.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Have you noticed that new foliage isn’t growing or the growth is smaller than usual? That’s another sign that your plant is root-bound and not obtaining the nutrients it needs to thrive during its peak growing season. </p><p>Without room to expand below, the plant simply lacks the biological energy required to push out impressive new leaves above.</p></p>                </section><section class="howto-block">                    <h3>How to salvage your root-bound plant </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/SJDUVhxLTgCjB8dWkCKzng.jpg"                                        alt="Woman repotting a houseplant"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/SJDUVhxLTgCjB8dWkCKzng.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Carefully ease the plant from its pot by supporting the base of the main stem. <strong>Squeeze the plastic sides or run a blunt knife around the inner rim</strong> of rigid containers to break the suction. </p><p>Next,<strong> examine the roots and gently tease them apart with your fingers</strong> so they can grow outward. If they are completely compacted, <strong>use sterile shears to make a few shallow, vertical cuts and trim away dead or circling root</strong>s — up to 25% of the total mass.</p><p><strong>Move the plant into a new container that is one to two inches larger </strong>in diameter and features good drainage holes. <strong>Settle it on a layer of fresh potting mix</strong> at its original soil level, f<strong>ill the sides, and press down gently to remove air pockets</strong>. </p><p>Finish by <strong>watering thoroughly to settle the soil, placing the pot in bright, indirect light, and waiting 2 to 4 weeks before fertilizing </strong>so the roots can safely recover.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-Wwz8ae"></div>                            </div>                            <script src="https://kwizly.com/embed/Wwz8ae.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/home/stop-misting-your-succulents-its-drying-them-out">Your succulent is dying of thirst every time you mist it — do this instead</a></li><li><a href="https://www.tomsguide.com/home/how-to-revive-a-dying-houseplant">How to revive a dying houseplant — 7 steps that actually work</a></li><li><a href="https://www.tomsguide.com/home/houseplants-taking-over-heres-how-to-repot-a-swiss-cheese-plant">Houseplants taking over? Here's how to repot a Swiss cheese plant</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ The hidden part of your kitchen harbouring bacteria — and how to clean it for good ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/the-hidden-part-of-your-kitchen-harbouring-bacteria-and-how-to-clean-it-for-good</link>
                                                                            <description>
                            <![CDATA[ Expert tips for eliminating bacteria and mold from the hidden hygiene trap in your kitchen. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">KbnQ3poefEN62Bg9A76HDn</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/deL3mdJqkEyLxo5GdiLESR-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 20 Jun 2026 06:15:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Home]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/deL3mdJqkEyLxo5GdiLESR-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Baking soda in stainless steel sink ]]></media:description>                                                            <media:text><![CDATA[Baking soda in stainless steel sink ]]></media:text>
                                <media:title type="plain"><![CDATA[Baking soda in stainless steel sink ]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/deL3mdJqkEyLxo5GdiLESR-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>You clean your sink every day. But there's a small opening you've probably never paid attention to that's teeming with bacteria right now. </p><p>Your sink's overflow hole is the kitchen's most disguised hygiene problem. It's warm, dark, and perpetually damp. Simon Roberts, director at quartz worktop retailer <a href="https://www.vogueworktops.co.uk/quartz-worktops/" target="_blank">Vogue Worktops</a>, says it's consistently overlooked despite being one of the dirtiest parts of your sink. </p><p>Warmer summer temperatures make this bacterial build-up even more problematic, creating smells and hygiene issues that seem to come from nowhere. Here's how to clean it properly.</p><section class="howto-block">                    <h3>1. Use baking of soda and white vinegar</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/G8b8DMJAFmEbUU7CaaFDWH.jpg"                                        alt="Baking soda and white vinegar on a countertop"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/G8b8DMJAFmEbUU7CaaFDWH.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>This combination creates a natural cleaning reaction that reaches into the narrow opening. Bicarbonate of soda and vinegar generate fizzing action that dislodges trapped food particles and mineral deposits clinging to the inside walls. </p><p>According to Roberts, "The fizzing action helps loosen built-up grime inside the channel. After letting it sit for around 10-15 minutes, flushing it through with boiling water helps wash residue away." </p><p>As some overflow holes can be very small and narrow, you could always use a white vinegar spray for easy application. This method works without bleach or toxic fumes, making it safe for regular use in kitchens.</p></p>                </section><section class="howto-block">                    <h3>2. Pour boiling water weekly for prevention</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/UrmWraT6q3Xe5giytuFrA8.jpg"                                        alt="Water boils inside a chrome and clear electric kettle placed on a white countertop"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/UrmWraT6q3Xe5giytuFrA8.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Getty Images)</div></figure>                    <p><p>Hot water is an effective bacteria deterrent when used consistently. Weekly flushing prevents grease from solidifying inside the channel and stops bacterial colonies from establishing themselves. </p><p>Roberts explains that "carefully pouring boiling water into the overflow hole once a week can help prevent grease and bacteria from settling." This minimal-effort maintenance step takes just seconds but dramatically extends the time between deep cleans.</p></p>                </section><section class="howto-block">                    <h3>3. Use cotton buds for narrow openings </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/n8cYpME3K35rha3gvF4YxK.jpg"                                        alt="cotton swabs"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/n8cYpME3K35rha3gvF4YxK.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Amazon)</div></figure>                    <p><p>The overflow hole's narrow opening means standard cleaning tools like sponges and cloths can't access the sides where debris accumulates. A thin, flexible tool can navigate the tight space and physically scrub away buildup that liquids alone won't remove. </p><p>According to Roberts, "A thin brush, pipe cleaner or cotton bud is ideal for physically removing dirt around the edges of the hole, which cloths and sponges can't reach." This works best after using the vinegar method, when loosened material is easier to dislodge.</p></p>                </section><section class="howto-block">                    <h3>4. Disinfect occasionally with diluted bleach</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/6ddqDFbifg9eZH7XuAFMHR.jpg"                                        alt="Someone wearing gloves removing the lid from a bottle of bleach"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/6ddqDFbifg9eZH7XuAFMHR.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Getty Images)</div></figure>                    <p><p>When regular cleaning methods aren't eliminating persistent odours, a stronger disinfectant becomes necessary. Diluted bleach kills bacteria deep inside the channel and prevents regrowth temporarily. </p><p>Roberts recommends that "a small amount of diluted bleach or foaming bathroom cleaner left to sit briefly can help kill bacteria and prevent smells. Always rinse thoroughly afterwards." The key here is dilution. You're disinfecting a small hidden space, not bleaching your sink.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-W2a83e"></div>                            </div>                            <script src="https://kwizly.com/embed/W2a83e.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/home/i-cant-remember-the-last-time-i-cleaned-this-5-hidden-dirt-zones-in-your-house-and-how-to-clean-them">'I can't remember the last time I cleaned this' — 5 hidden dirt zones in your house and how to clean them</a></li><li><a href="https://www.tomsguide.com/home/how-to-clean-mold-from-bathroom-caulk-permanently-without-using-bleach">How to clean mold from bathroom caulk permanently — without using household bleach</a></li><li><a href="https://www.tomsguide.com/home/sticky-cabinets-cleaners-say-these-3-ordinary-items-fix-it-better-than-anything-else">Sticky cabinets? Cleaners say these 3 ordinary items fix it better than anything else</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ You don't need cable to watch the World Cup — a TV antenna could get you the games for free ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/sports/you-dont-need-cable-to-watch-the-world-cup-a-tv-antenna-could-get-you-the-games-for-free</link>
                                                                            <description>
                            <![CDATA[ A TV antenna could be your magic ticket to free World Cup coverage. Here's what you need to know about watching the World Cup free in the USA ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">4UYP3xSZwqrpcLveTAbjTc</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/4f53bubgwEm5X7qztgPsiT-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Fri, 19 Jun 2026 16:50:14 +0000</pubDate>                                                                                                                                <updated>Fri, 19 Jun 2026 17:38:30 +0000</updated>
                                                                                                                                            <category><![CDATA[Sports]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Tom Bailey ]]></dc:creator>                                                                                                        <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/4f53bubgwEm5X7qztgPsiT-1280-80.jpg">
                                                            <media:credit><![CDATA[Dave Bernal/ISI Photos via Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[USA&#039;s Folarin Balogun, Antonee Robinson, Christian Pulisic and Weston McKennie celebrating at the 2026 World Cup]]></media:description>                                                            <media:text><![CDATA[USA&#039;s Folarin Balogun, Antonee Robinson, Christian Pulisic and Weston McKennie celebrating at the 2026 World Cup]]></media:text>
                                <media:title type="plain"><![CDATA[USA&#039;s Folarin Balogun, Antonee Robinson, Christian Pulisic and Weston McKennie celebrating at the 2026 World Cup]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/4f53bubgwEm5X7qztgPsiT-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>The FIFA <a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams" target="_blank">World Cup 2026</a> is one of the biggest sporting events on the planet, but watching every match – including USA vs Australia – in the U.S. isn't cheap. </p><p>Most fans assume they need a cable package with Fox or streaming service such as <a href="https://www.dpbolvw.net/click-8900245-17161926?sid=hawk-custom-tracking" target="_blank" rel="nofollow">YouTube TV</a> to tune in. But that's not <em>necessarily</em> true.</p><p>The good news: if your local Fox station is available over the air, a simple TV antenna could let you watch World Cup matches for free – without any subscription!</p><p>Here's how a TV antenna can get you World Cup matches, the potential issues, and where to <strong>find </strong><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams"><strong>free World Cup live streams</strong></a> if an antenna isn't for you.</p><h2 id="a-tv-antenna-can-let-you-watch-the-world-cup-free">A TV antenna can let you watch the World Cup (free)</h2><p>Fox is a broadcast network, which means its signal is transmitted freely over the air in much of the United States.</p><p>Connect one of the <a href="https://www.tomsguide.com/tvs/best-tv-antennas">best TV antennas</a>, run a channel scan and you may be able to receive your local Fox affiliate alongside other free channels (but not FS1, because FS1 is a cable channel).</p><p>If so, you can watch Fox broadcasts without paying for cable, YouTube TV, Fubo, Hulu + Live TV, etc.</p><h2 id="but-here-s-the-catch-with-antennas">But here's the catch with antennas... </h2><p>Reception depends on your location, nearby buildings, and the strength of local broadcast towers. </p><p>Some homes can pull in dozens of free channels; others may need to invest in a more powerful outdoor antenna. You might struggle to receive Fox at all.</p><p>The easiest way to check is by entering your ZIP code into an antenna signal checker before buying.</p><h2 id="where-else-can-i-find-free-world-cup-coverage">Where else can I find free World Cup coverage?</h2><p>Fox's Tubi streamed a couple of World Cup games for free, but that's it. U.S. soccer fans must pay to watch the World Cup through cable or streaming services such <a href="https://www.dpbolvw.net/click-8900245-17161926?sid=hawk-custom-tracking" target="_blank" rel="nofollow">YouTube TV</a> (although <a href="https://www.dpbolvw.net/click-8900245-17161926?sid=hawk-custom-tracking" target="_blank" rel="nofollow">YouTube TV</a> does come with a handy free trial).</p><p>Here's where things get interesting, though.</p><p>The World Cup is free to stream is many countries around the world, including the <strong>U.K.</strong>, <a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-world-cup-2026-sbs-free-australia"><strong>Australia</strong></a> and <strong>Brazil. </strong>In the case of Brazil, all games are free on plain ol' YouTube – in 4K.</p><p>If you're just <em>visiting</em> North America from a country where it's free, you can use a VPN to tap back into your domestic free streams and watch from anywhere.</p><p>We recommend using Norton VPN – recently crowned it our No.1<a href="https://www.tomsguide.com/best-picks/streaming-vpn" target="_blank"> Streaming VPN</a>. Our video below explains your options...</p><div class="youtube-video" data-nosnippet ><div class="video-aspect-box"><iframe data-lazy-priority="high" data-lazy-src="https://www.youtube-nocookie.com/embed/ZB2GEq948y8" allowfullscreen></iframe></div></div><h2 class="article-body__section" id="section-how-to-watch-world-cup-with-a-vpn"><span>How to watch World Cup with a VPN</span></h2><p>With a good <a href="https://www.tomsguide.com/best-picks/best-vpn" target="_blank">VPN</a> you can watch your usual World Cup live streams from anywhere in the world. Norton VPN is our no.1 pick for fast streaming:</p><div class="product"><a data-dimension112="eff6c8c1-3659-4f27-8ac9-20f7e810b68e" data-action="Deal Block" data-label="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" data-dimension48="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" href="https://norton.ow5a.net/c/221109/3913566/4405?sharedid=fourfourtwo&param1=aff&param2=worldcup26_streamguide&param3=vpn&subid1=streamguideTG" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>▶︎ <a href="https://norton.ow5a.net/c/221109/3913566/4405?sharedid=fourfourtwo&param1=aff&param2=worldcup26_streamguide&param3=vpn&subid1=streamguideTG" target="_blank" rel="nofollow" data-dimension112="eff6c8c1-3659-4f27-8ac9-20f7e810b68e" data-action="Deal Block" data-label="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" data-dimension48="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" data-dimension25=""><u><strong>Norton VPN — $3.30 / £2.50 & Try 60 days</strong></u></a></p><p>Stream World Cup on for free without limits. <a href="https://www.techradar.com/reviews/norton-secure-vpn" target="_blank"><strong>Norton VPN</strong></a> delivers fast, secure connections with global servers, so you can stream from anywhere with ease.<br><br>✅ <strong>60-day money-back guarantee</strong><br>✅ <strong>Removes geo-blocks</strong><br><strong>✅ Tom's Guide No.1 Streaming VPN </strong></p><p><strong>Don’t miss a second.</strong> Stream World Cup 2026 from anywhere right now.<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913566/4405?sharedid=fourfourtwo&param1=aff&param2=worldcup26_streamguide&param3=vpn&subid1=streamguideTG" target="_blank" rel="nofollow" data-dimension112="eff6c8c1-3659-4f27-8ac9-20f7e810b68e" data-action="Deal Block" data-label="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" data-dimension48="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" data-dimension25="">View Deal</a></p></div><h2 id="should-i-use-a-tv-antenna-for-the-world-cup">Should I use a TV antenna for the World Cup?</h2><p>If you can get good reception, then yes, it seems like a no-brainer. Plus, devices such as <a href="https://www.tomsguide.com/news/i-found-a-new-way-cord-cutters-can-watch-and-dvr-broadcast-tv">HDHomeRun</a> can connect to an antenna and stream live broadcast TV over your home network.</p><p>On the downside, an antenna requires setup, signal checks and doesn't necessarily guarantee access to every World Cup game (you don't want to be messing around trying to get a signal before kick off).</p><p>Still, if you're mainly interested in Fox's World Cup coverage, an antenna could save you some dollars over the course of the tournament.</p><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><strong></strong><a href="https://www.youtube.com/watch?v=ZB2GEq948y8" target="_blank"><strong>[YouTube video] How to watch World Cup 2026 for FREE</strong></a><strong> </strong></li><li><strong></strong><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k"><strong>How to watch World Cup in 4K</strong></a></li><li><strong></strong><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-opening-ceremony-free"><strong>How to watch World Cup opening ceremonies for free</strong></a><strong></strong></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ Google has been hiding a flight simulator for 20 years and now it's free on the web — here's how to use it ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/computing/google-has-been-hiding-a-flight-simulator-for-20-years-now-its-free-on-the-web</link>
                                                                            <description>
                            <![CDATA[ Access Google Earth's hidden flight simulator directly from your web browser with no download required. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">2y9GcUk7oBupcbQMNtM9yP</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/jyfkwga87UjpNviJqbEnKn-1280-80.png" type="image/png" length="0"></enclosure>
                                                                        <pubDate>Fri, 19 Jun 2026 09:30:00 +0000</pubDate>                                                                                                                                <updated>Fri, 19 Jun 2026 17:29:26 +0000</updated>
                                                                                                                                            <category><![CDATA[Computing]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/png" url="https://cdn.mos.cms.futurecdn.net/jyfkwga87UjpNviJqbEnKn-1280-80.png">
                                                            <media:credit><![CDATA[Google]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Google Earth 3D view of New York]]></media:description>                                                            <media:text><![CDATA[Google Earth 3D view of New York]]></media:text>
                                <media:title type="plain"><![CDATA[Google Earth 3D view of New York]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/jyfkwga87UjpNviJqbEnKn-1280-80.png" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Google Earth does something unexpected if you know where to look. While billions of people use it as a maps app, it secretly functions as a fully operational flight simulator. The barrier to entry has always been quite high — you needed the desktop app, had to dig through menus, and even then, most people had no idea it existed.</p><p>This week, Google removed that barrier entirely. The simulator is now accessible through your web browser on any device. You can pilot a virtual plane to almost any location on the planet instantly. Here's how to use it.</p><section class="howto-block">                    <h3>How to access Google Earth's flight simulator</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/tSrizPywYeo6JbHRSCgYXR.jpg"                                        alt="Explore Earth highlighted in Google Earth "                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/tSrizPywYeo6JbHRSCgYXR.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p><strong>Open Google Earth on the web</strong> by visiting <a href="https://earth.google.com/web/">earth.google.com</a>. <strong>Click the Explore Earth button </strong>in the top right corner. Then simply<strong> use the search bar to navigate to any location on Earth where you want to fly</strong>. </p></p>                </section><section class="howto-block">                    <h3>How to launch and fly </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/BrJ9D2bwnUTGrpyj83f4Bf.jpg"                                        alt="Google Earth flight simulator"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/BrJ9D2bwnUTGrpyj83f4Bf.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>Once you've found your starting point, <strong>click Tools</strong> at the top of the screen. The flight simulator is the last option in the menu.</p><p>The controls aren't immediately obvious, but they're straightforward. Use your mouse or arrow keys to control the airplane's pitch and roll. Up increases thrust while Down decreases it. </p><p>The controls can be quite sensitive and it's easy to lose control mid-flight, sending your browser screen spinning. If you crash, Google lets you restart instantly and try again as many times as you want.</p></p>                </section><h2 id="what-makes-google-flight-simulator-worth-trying">What makes Google flight simulator worth trying</h2><p>This isn't a game with progression systems or competitive leaderboards. There's no objective beyond your own curiosity. That's actually its strength. Without the pressure of missions or achievements, you're free to experiment purely for the sake of exploration.</p><p>For most people, the appeal lies in something flight simulators typically don't offer: accessibility without commitment. You're not downloading software or learning complex systems. You're just opening a browser and flying.</p><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-X16Ewe"></div>                            </div>                            <script src="https://kwizly.com/embed/X16Ewe.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/computing/email/after-two-decades-google-finally-rolls-out-a-way-to-change-your-gmail-address-heres-how">After two decades, Google finally rolls out a way to change your Gmail address — here's how</a></li><li><a href="https://www.tomsguide.com/phones/never-be-late-lose-your-car-or-stress-about-parking-again-3-google-maps-features-i-swear-by">3 Google Maps features that solve the biggest travel headaches</a></li><li><a href="https://www.tomsguide.com/computing/stop-letting-google-track-your-every-move-how-to-clear-your-search-history-in-2026">Stop letting Google track your every move — how to clear your search history in 2026</a><strong></strong></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ iOS 27 has a new ‘Liquid Glass’ slider — here's how to find it and use it ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/iphones/ios-27-has-a-hidden-liquid-glass-slider-here-is-how-to-find-and-use-it</link>
                                                                            <description>
                            <![CDATA[ Forget the old presets: iOS 27 fixes a major iPhone customisation complaint by introducing a 'liquid glass' slider. Here is how to unlock total control. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">JWnr9JN2AhiyAovUPQaoJP</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/aygmtQLWrQo6eSTgUyZSCc-1280-80.png" type="image/png" length="0"></enclosure>
                                                                        <pubDate>Fri, 19 Jun 2026 06:15:00 +0000</pubDate>                                                                                                                                <updated>Fri, 19 Jun 2026 12:21:05 +0000</updated>
                                                                                                                                            <category><![CDATA[iPhones]]></category>
                                                    <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/png" url="https://cdn.mos.cms.futurecdn.net/aygmtQLWrQo6eSTgUyZSCc-1280-80.png">
                                                            <media:credit><![CDATA[Apple]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Liquid Glass slider at WWDC 2026]]></media:description>                                                            <media:text><![CDATA[Liquid Glass slider at WWDC 2026]]></media:text>
                                <media:title type="plain"><![CDATA[Liquid Glass slider at WWDC 2026]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/aygmtQLWrQo6eSTgUyZSCc-1280-80.png" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Apple’s Liquid Glass design gave the iPhone a sleek, frosted aesthetic in <a href="https://www.tomsguide.com/phones/iphones/ios-26s-new-liquid-glass-icons-are-here-how-to-enable-them-on-your-iphone">iOS 26,</a> but the rigid preset options left many users wanting more control. Fortunately, <a href="https://www.tomsguide.com/phones/iphones/ios-27-11-biggest-features-coming-to-your-iphone">iOS 27</a> addresses this by replacing those old presets with a continuous customization slider. </p><p>This new tool gives you granular control over the transparency and tint of blurred interface elements across the entire operating system. Whether you want a completely clear view of your wallpaper or a heavy, high-contrast tint that improves text readability, you can now dial in your exact preference. </p><p>Here is how to find and use the new feature.</p><h2 id="you-ll-need-to-be-running-ios-27">You'll need to be running iOS 27 </h2><p>Because iOS 27 is currently in its early testing phase, you will need the developer beta installed to access this feature. If you aren't enrolled yet, you can sign up for free via the Apple Developer Program. </p><p>Otherwise, if you've downloaded a beta in the past, simply head to <strong>Settings, General,  Software Update, and Beta Updates</strong> on your iPhone to toggle it on.</p><section class="howto-block">                    <h3>Where to find the Liquid Glass slider on iPhone </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/ZxkUxkMi34qHPLFn5Tp2CZ.jpg"                                        alt="Liquid glass settings on iPhone"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/ZxkUxkMi34qHPLFn5Tp2CZ.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>Locating the new control takes only a moment. First,<strong> open the Settings app on your iPhone and scroll down to select the Appearance menu</strong>. Then <strong>tap Liquid Glass. </strong></p><p>Inside this section, you will see the new Liquid Glass slider prominently displayed where the old "Clear" and "Tinted" toggle buttons used to live.</p></p>                </section><section class="howto-block">                    <h3>How to adjust the Liquid Glass slider </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/UQ98FkNG6uR8qoVpLAYRAn.jpg"                                        alt="Liquid glass slider in iOS 27 highlighted "                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/UQ98FkNG6uR8qoVpLAYRAn.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>Operating the slider is incredibly intuitive because the interface updates in real time as you interact with it. </p><p>To use it, <strong>simply drag the slider to the left to increase transparency, or slide it to the right to increase the depth of the tint</strong>. </p><p>Because the spectrum is entirely continuous, you can stop at any point to achieve a perfectly balanced middle-ground setting. As you move your finger, keep an eye on the background of the Settings app itself to preview exactly how the system-wide blur is reacting. </p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-eJk2yW"></div>                            </div>                            <script src="https://kwizly.com/embed/eJk2yW.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/the-clever-ios-27-wallet-upgrade-that-means-you-will-never-have-to-carry-a-physical-loyalty-card-again">This clever iOS 27 Wallet upgrade means you'll never have to carry a physical loyalty card again</a></li><li><a href="https://www.tomsguide.com/phones/iphones/airpods-finally-get-a-custom-eq-in-ios-27-here-is-how-to-fix-your-sound">AirPods finally get a custom EQ in iOS 27 — here is how to fix your sound</a></li><li><a href="https://www.tomsguide.com/phones/iphones/your-iphone-alarm-and-ringtone-dont-have-to-share-a-volume-slider-anymore-heres-how-to-split-them-in-ios-27">Your iPhone alarm and ringtone don’t have to share a volume slider anymore — here’s how to split them in iOS 27</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ This is what's really causing your tomato leaves to curl — and how to actually fix it ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/gardening/this-is-whats-really-causing-your-tomato-leaves-to-curl-and-how-to-actually-fix-it</link>
                                                                            <description>
                            <![CDATA[ Learn what causes tomato leaves to curl and how to restore your plants to health. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">tgcyvXDWegXG4E6diRLHiT</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/dhiQPnNqEPpgVKEGWHDndT-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Fri, 19 Jun 2026 06:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Gardening]]></category>
                                                    <category><![CDATA[Home]]></category>
                                                    <category><![CDATA[Outdoors]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/dhiQPnNqEPpgVKEGWHDndT-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Ripening tomato plant with curled leaves]]></media:description>                                                            <media:text><![CDATA[Ripening tomato plant with curled leaves]]></media:text>
                                <media:title type="plain"><![CDATA[Ripening tomato plant with curled leaves]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/dhiQPnNqEPpgVKEGWHDndT-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Curling tomato leaves are your plant's way of telling you something is wrong. When you notice the foliage starting to curl, roll, or twist, it's tempting to panic. But understanding what causes tomato leaves to curl is crucial because different problems require different solutions. </p><p>Some causes resolve on their own once conditions improve. Others demand immediate action. Here are the five most common reasons your tomato plants are curling and exactly what to do about each one. </p><section class="howto-block">                    <h3>1. Heat stress strikes first</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/Sjmn35uGYyzGmrbEi64zFH.jpg"                                        alt="Growing tomato plants with curled leaves"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/Sjmn35uGYyzGmrbEi64zFH.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Hot, dry conditions are the most common culprit behind curling tomato leaves. When temperatures spike and moisture becomes scarce, tomato plants face an impossible choice: they're losing water through evaporation faster than their roots can absorb it. </p><p>The plant responds by curling leaf margins upward — a survival strategy that reduces sun exposure and water loss. You'll typically notice this on lower leaves first.</p><p>To fix this, water deeply and consistently.<strong> Aim for 1 inch of water per week delivered directly to the root zone with a drip line or soaker hose rather than overhead watering</strong>, which spreads disease. </p><p>You can also <strong>add a 2-inch mulch layer around the base to slow soil moisture evaporation</strong>. Once conditions cool or moisture returns, the curling typically resolves within days. The good news is that temporary leaf curl from heat stress rarely impacts your final harvest or plant growth long-term.</p></p>                </section><section class="howto-block">                    <h3>2. When you prune too much </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/UFB2o7HwSJud7AywrZAb7A.jpg"                                        alt="Curling tomato plant"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/UFB2o7HwSJud7AywrZAb7A.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Pruning tomato plants encourages fruit production, but removing too much foliage at once creates shock. When you strip away energy-generating leaves suddenly, the remaining foliage curls as the plant struggles to cope with the stress and loss of photosynthetic capacity.</p><p>The remedy is straightforward: <strong>water thoroughly and wait</strong>. The plant needs time to recover and grow new leaves. Within a couple of weeks, new foliage should emerge and the curling should disappear. </p><p>In the future, <strong>prune conservatively and gradually </strong>rather than removing large sections of growth at once. Focus on removing only lower leaves and suckers between main stems.</p></p>                </section><section class="howto-block">                    <h3> 3. Transplant trauma</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/oMJydkdU4C9Ti6H2gqTsCJ.jpg"                                        alt="Watering seedlings by window"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/oMJydkdU4C9Ti6H2gqTsCJ.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Moving seedlings into the garden disrupts roots and exposes plants to temperature fluctuations. Some tomato varieties respond by curling their leaves as they acclimate to outdoor conditions. This stress is temporary but worth preventing when possible.</p><p>If your transplanted tomatoes already show curling leaves, <strong>increase watering to help them settle in</strong>. Most plants recover naturally within two weeks without intervention. </p><p>To minimize transplant shock in future seasons,<strong> harden off seedlings by gradually exposing them to outdoor conditions before planting</strong>. Transplant on a cooler, overcast day rather than in full sun, and <strong>handle root balls gently</strong>. </p><p>Temporary shade from a cloth or tarp for the first few days also reduces stress significantly.</p></p>                </section><section class="howto-block">                    <h3>4. Viruses look different than stress</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/LThGCzgFA47PJxzRWqcBo3.jpg"                                        alt="Early tomato blight showing on tomato plant leaves"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/LThGCzgFA47PJxzRWqcBo3.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Tomato blight appears as brown or dark spots on leaves that rapidly expand and kill foliage. Early blight shows up after plants have set fruit and appears as concentric rings on lower leaves first. </p><p>Late blight is more severe. It spreads quickly in cool, wet conditions and can destroy an entire plant in days. Blight-infected leaves curl, yellow, and drop, leaving fruit exposed to sunscald.</p><p>Blight is a fungal disease spread by water splash and poor air circulation. Once you see it, act immediately.<strong> Remove all infected leaves and dispose of them in the trash —never compost blight-infected material</strong>. To improve airflow around the base of the plant, you can prune lower branches. </p><p>If blight continues spreading despite these steps, <strong>remove the entire plant</strong> to prevent it from infecting neighboring tomatoes.</p><p>Prevention is far more effective than treatment. <strong>Choose blight-resistant varieties like Mountain Magic F1 or Artemis F1 when planting</strong>. Space plants far enough apart for air circulation, mulch to prevent soil splash, and remove lower leaves as the plant grows. These practices eliminate the humid conditions blight needs to thrive.</p></p>                </section><section class="howto-block">                    <h3>5. Chemical drift is irreversible</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/sQLgTPm98ScYywUxY37Vea.jpg"                                        alt="Curled tomato plant leaves "                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/sQLgTPm98ScYywUxY37Vea.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Weed killer drifting from nearby lawn treatments can destroy tomato foliage. When herbicides like 2,4-D or dicamba blow onto your plants, they cause leaves to bend downward with individual leaflets curling upward in a cup-like pattern. This looks distinctly different from heat-stress curling. </p><p>Another sneaky source is contaminated compost or mulch containing persistent herbicides like picloram or clopyralid, which are chemicals that linger in soil for years.</p><p>Unfortunately, there's no cure for herbicide injury. You're left with a "wait and see" approach. Some plants recover and produce fruit despite the damage. Others decline and fail to fruit. Prevention is your only real defense. <strong>Keep weed killers away from tomato areas entirely</strong>.<strong> </strong></p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-XZQZ5O"></div>                            </div>                            <script src="https://kwizly.com/embed/XZQZ5O.js" async></script><figure class="van-image-figure pull-right inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:676px;"><p class="vanilla-image-block" style="padding-top:31.51%;"><img id="ZCwuUFRE3YeboHR4zyEWmb" name="r3t8zZ5ve4GewFTeoCM3R6" alt="Google" src="https://cdn.mos.cms.futurecdn.net/ZCwuUFRE3YeboHR4zyEWmb.jpg" mos="" align="right" fullscreen="" width="676" height="213" attribution="" endorsement="" class="pull-rightinline"></p></div></div><figcaption itemprop="caption description" class="pull-right inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Future)</span></figcaption></figure><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/home/gardening/why-are-my-tomato-plant-leaves-turning-yellow-5-steps-to-save-your-harvest-clone">Double your tomato harvest with this 3-step pruning system</a></li><li><a href="https://www.tomsguide.com/home/gardening/why-are-my-tomato-plant-leaves-turning-yellow-5-steps-to-save-your-harvest">Why are my tomato plant leaves turning yellow? 5 steps to save your harvest</a></li><li><a href="https://www.tomsguide.com/home/gardening/why-marigolds-are-the-best-companion-flower-for-a-pest-free-vegetable-garden-especially-tomatoes">Why marigolds are the best companion flower for a pest-free vegetable garden (especially tomatoes)</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ How to watch the World Cup 2026 on SBS for FREE in Australia ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/sports/how-to-watch-world-cup-2026-sbs-free-australia</link>
                                                                            <description>
                            <![CDATA[ How to watch the World Cup on SBS for free, with the Australian broadcaster providing extensive wall-to-wall coverage of the tournament. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">W2CKFLpMfLAp4kvU63kkUd</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/7AL3dKUoa3F34vxL9BMG8c-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Thu, 18 Jun 2026 15:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Sports]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Aatif Sulleyman ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/ikPsMQjEgxFXeWRgg5zHe8.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/7AL3dKUoa3F34vxL9BMG8c-1280-80.jpg">
                                                            <media:credit><![CDATA[Getty Images /  Christopher Morris / ISI Photos]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Nestory Irankunda leads the Australia celebrations with a crowd chant after the Socceroos beat Turkey 2-0 at the World Cup 2026]]></media:description>                                                            <media:text><![CDATA[Nestory Irankunda leads the Australia celebrations with a crowd chant after the Socceroos beat Turkey 2-0 at the World Cup 2026]]></media:text>
                                <media:title type="plain"><![CDATA[Nestory Irankunda leads the Australia celebrations with a crowd chant after the Socceroos beat Turkey 2-0 at the World Cup 2026]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/7AL3dKUoa3F34vxL9BMG8c-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Kylian Mbappe, Lamine Yamal... Nestory Irankunda? They may well be in the Golden Boot conversation come the end of <a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams" target="_blank">World Cup 2026</a>, but the tournament's real MVP? That would be SBS.</p><p>The free-to-air Australian broadcast network is televising all 104 games of the World Cup between its SBS and SBS Viceland channels, with live streaming available via its SBS on Demand platform.</p><p>Coverage tops out at 1080p, but in all other senses they've pulled out all the stops, with an intuitive World Cup hub, daily preview and highlights shows, and extensive highlights of each and every fixture, within the hour. </p><p>So how do you access SBS outside Australia — in the U.S. or Canada, for instance? Read on as we explain how to watch the World Cup on SBS for free from anywhere.</p><h2 id="watch-world-cup-2026-on-sbs-for-free">Watch World Cup 2026 on SBS for free</h2><p>Footy fans in Australia can watch all 104 matches from the 2026 World Cup for FREE on <a href="https://www.sbs.com.au/ondemand/" target="_blank" rel="nofollow"><strong>SBS On Demand</strong></a>. And, yes, that includes every Socceroos fixture.</p><p>SBS is completely free to use – no messy sign ups, just a simple free World Cup stream. But only if you're in Australia, otherwise you'll be geo-blocked. </p><p><strong>OUTSIDE AUSTRALIA?</strong> No problem. We use <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tr&param1=aff&param2=worldcup26_htw&param3=vpn&subid1=HTW_TG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> to watch SBS when traveling abroad, visiting the U.S., Canada, the U.K., or any other country. It works perfectly.</p><h2 class="article-body__section" id="section-watch-world-cup-on-sbs-from-anywhere"><span>Watch World Cup on SBS from anywhere</span></h2><p>Although SBS on Demand is only available to viewers in Australia, if you're visiting the U.S. or Canada from Down Under, you'll be able to access the streaming service's free World Cup coverage with a good <a href="https://www.tomsguide.com/best-picks/best-vpn" target="_blank">VPN</a>. Norton VPN is our No.1 pick for fast streaming:</p><div class="product"><a data-dimension112="eff6c8c1-3659-4f27-8ac9-20f7e810b68e" data-action="Deal Block" data-label="Norton VPN MEGA Deal — $3.30 / £2.50 &amp; Try 60 days" data-dimension48="Norton VPN MEGA Deal — $3.30 / £2.50 &amp; Try 60 days" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tr&param1=aff&param2=worldcup26_htw&param3=vpn&subid1=HTW_TG" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>▶︎ <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tr&param1=aff&param2=worldcup26_htw&param3=vpn&subid1=HTW_TG" target="_blank" rel="nofollow" data-dimension112="eff6c8c1-3659-4f27-8ac9-20f7e810b68e" data-action="Deal Block" data-label="Norton VPN MEGA Deal — $3.30 / £2.50 &amp; Try 60 days" data-dimension48="Norton VPN MEGA Deal — $3.30 / £2.50 &amp; Try 60 days" data-dimension25=""><u><strong>Norton VPN MEGA Deal — $3.30 / £2.50 & Try 60 days</strong></u></a></p><p>Stream World Cup on for free without limits. <a href="https://www.tomsguide.com/computing/vpns/norton-vpn-review" target="_blank"><strong>Norton VPN</strong></a> delivers fast, secure connections with global servers, so you can stream from anywhere with ease.<br><br>✅ <strong>60-day money-back guarantee</strong><br>✅ <strong>Unlocks SBS on Demand</strong><br><strong>✅ Exclusive deal</strong></p><p><strong>Don’t miss a second.</strong> Stream World Cup 2026 on SBS (it's free) from anywhere right now.<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tr&param1=aff&param2=worldcup26_htw&param3=vpn&subid1=HTW_TG" target="_blank" rel="nofollow" data-dimension112="eff6c8c1-3659-4f27-8ac9-20f7e810b68e" data-action="Deal Block" data-label="Norton VPN MEGA Deal — $3.30 / £2.50 &amp; Try 60 days" data-dimension48="Norton VPN MEGA Deal — $3.30 / £2.50 &amp; Try 60 days" data-dimension25="">View Deal</a></p></div><p><strong>It's easy to watch the World Cup on SBS:</strong></p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tr&param1=aff&param2=worldcup26_htw&param3=vpn&subid1=HTW_TG" target="_blank" rel="nofollow">Norton VPN</a> is our favorite for streaming.</p><p><strong>2. Choose the location you wish to connect to in the VPN app. </strong>For instance if you're in the U.S. and want to view an Australian service, you'd select Australia from the list.</p><p><strong>3. Stream live. </strong>Head to <a href="https://www.sbs.com.au/ondemand/collection/live-and-upcoming-sport" target="_blank" rel="nofollow"><strong>SBS on Demand</strong></a> to catch every World Cup game for free.</p><h2 class="article-body__section" id="section-sbs-q-a"><span>SBS Q+A</span></h2><h2 id="what-does-sbs-world-cup-coverage-include">What does SBS' World Cup coverage include?</h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="YUuhpJ47r2wai6kRG5o2Tm" name="The SBS World Cup 2026 broadcasting team" alt="The SBS World Cup 2026 broadcasting team" src="https://cdn.mos.cms.futurecdn.net/YUuhpJ47r2wai6kRG5o2Tm.jpg" mos="" align="middle" fullscreen="" width="1920" height="1080" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: SBS)</span></figcaption></figure><p>All 104 games of the World Cup will be available to live stream on SBS on Demand.</p><p>Not only that, but they're all going to be available as full replays (within 40 minutes of the final whistle), and as 30-minute, 12-minute and three-minute highlights packages (within an hour of full-time) too. </p><p>The World Cup hub on the SBS website also lets you customize your user interface by  teams and groups.</p><p>SBS' coverage is led by Niav Owens and Claudio Fabiano, while punditry and analysis comes courtesy of Harry Kewell, Lydia Williams, Adriano, Andrew Redmayne, Luke Wilkshire, Sarah Walsh and Tommy Oar. David Basheer is anchoring commentary.</p><p><strong>Remember. </strong>Use <a href="https://norton.ow5a.net/c/221109/3913583/4405?sharedid=tr&param1=aff&param2=worldcup26_htw&param3=vpn&subid1=HTW_TG" target="_blank" rel="nofollow">Norton VPN</a> to watch World Cup 2026 on SBS, if you're traveling outside Australia to the U.S., Canada or beyond.</p><section class="article__schema-question"><h3>What devices can I watch SBS on? </h3><article class="article__schema-answer"><p><strong>Amazon Fire TV</strong> (Fire OS 5 & above)</p><p><strong>Android mobile devices</strong> (Android 8.0 & above)</p><p><strong>Android TV </strong>(select Sony, Kogan, TCL, Toshiba models running Android 9 & above)</p><p><strong>Apple TV </strong>(4th Generation & above)</p><p><strong>Chromecast </strong>(2nd Generation, 3rd Generation, Ultra)</p><p><strong>Fetch </strong>(Gen 4, Gen 5)</p><p><strong>Foxtel </strong>(iQ3, iQ4, iQ5)</p><p><strong>Hisense smart TVs </strong>(2021 & newer)</p><p><strong>Hubbl</strong> (Puck, Glass)</p><p><strong>iOS devices </strong>(iOS 17 and above)</p><p><strong>LG smart TVs </strong>(2017 models & newer)</p><p><strong>Samsung smart TVs </strong>(2017 models & newer)</p><p><strong>Web — </strong><a href="https://www.sbs.com.au/ondemand/collection/live-and-upcoming-sport" target="_blank" rel="nofollow">sbs.com.au/ondemand</a></p></article></section><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><strong></strong><a href="https://www.youtube.com/watch?v=ZB2GEq948y8" target="_blank"><strong>How to watch World Cup 2026 for FREE</strong></a><strong> </strong></li><li><strong></strong><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k" target="_blank"><strong>How to watch World Cup in 4K</strong></a></li><li><strong></strong><a href="https://www.tomsguide.com/computing/vpns/how-to-set-up-your-vpn-for-world-cup-2026-and-fix-common-problems" target="_blank"><strong>How to set your VPN up for World Cup 2026 (and fix common problems)</strong></a><strong></strong></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ I finally stopped birds from pooping on my patio — 7 hacks that I swear by ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/gardening/stop-birds-from-pooping-on-your-patio-these-7-quick-and-proven-hacks-will-actually-work</link>
                                                                            <description>
                            <![CDATA[ Bird poop on your patio? There’s no need to banish birds completely from your yard, discover 7 ways to keep them at bay. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">aSMBb9c5j6bH6HpUV4kM9M</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/iZUM4Tsn4qFvMkCejPHxHG-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Thu, 18 Jun 2026 10:14:26 +0000</pubDate>                                                                                                                                <updated>Fri, 19 Jun 2026 08:37:20 +0000</updated>
                                                                                                                                            <category><![CDATA[Gardening]]></category>
                                                    <category><![CDATA[Home]]></category>
                                                    <category><![CDATA[Outdoors]]></category>
                                                                                                <author><![CDATA[ camilla.sharman@futurenet.com (Camilla Sharman) ]]></author>                    <dc:creator><![CDATA[ Camilla Sharman ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/nY4nvWzofHKHpvzAqN5LVH.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ &lt;p&gt;Camilla is the Homes Staff Writer and covers everything to do with homes and gardens. She has a wealth of editorial experience, mounting over 30 years, and covers news and features, tests products for reviews and compiles buying guides.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;p&gt;Her work has appeared in business and consumer titles, including Ideal Home, Real Homes, House Beautiful, Homebuilding &amp;amp; Renovation, and Kitchen &amp;amp; Bathroom Business. She’s even appeared on the cover of Your Home, writing about her own house renovation.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;p&gt;Although she’s obsessed with decorating her home, she also enjoys baking and trying out the latest kitchen appliances. But when she’s not inside, you’ll find her pottering about in her yard, tending to her vegetable patch or taking in her prized hydrangeas. She also enjoys keeping fit, and if she&#039;s not on a spin bike trying to keep up with the class, she&#039;ll be in the pool, or trying to perfect her headstand in a yoga class.&lt;/p&gt; ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/iZUM4Tsn4qFvMkCejPHxHG-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Patio Furniture]]></media:description>                                                            <media:text><![CDATA[Patio Furniture]]></media:text>
                                <media:title type="plain"><![CDATA[Patio Furniture]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/iZUM4Tsn4qFvMkCejPHxHG-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>There’s nothing like sitting in the sun on your patio and enjoying the surrounding sound of<a href="https://www.tomsguide.com/home/outdoors/ive-discovered-the-best-way-to-encourage-birds-into-my-backyard-and-you-can-too"> birdsong</a>. That’s until you cast your eye downwards and notice that those feathered beauties have pelted your patio slabs or decking with bird poop. </p><p>What’s more, if the droppings have landed on your patio, it’s more than likely that your outdoor furniture and parasol have been targeted too.</p><p>Apart from looking unsightly, bird droppings are hard to clean, but you won’t want to banish them completely. Birds are vital to our gardens — they do a grand job of <a href="https://www.tomsguide.com/home/natural-pest-repellents-heres-how-to-save-money-and-skip-the-exterminator">pest control </a>and assist with <a href="https://www.tomsguide.com/home/7-ways-to-attract-pollinators-to-your-yard">pollination</a>, bringing life to our outdoor spaces.  </p><p>The goal isn’t to get rid of them completely, but to manage where they do their business. Here are 7 tips to keep your garden patio and outdoor furniture poop-free while still encouraging biodiversity in your yard. </p><h2 id="1-be-careful-where-you-hang-bird-feeders">1.  Be careful where you hang bird feeders </h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1800px;"><p class="vanilla-image-block" style="padding-top:56.22%;"><img id="JQKMs8A9KxbCtEBRtSHdaK" name="shutterstock_517012903edit.jpg" alt="Great tits feeding on a bird feeder" src="https://cdn.mos.cms.futurecdn.net/JQKMs8A9KxbCtEBRtSHdaK.jpg" mos="" align="middle" fullscreen="" width="1800" height="1012" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>There’s no need to discourage birds from your yard  —  the trick is in knowing how to prevent them from pooping in areas where you want to sit.</p><p>I have two bird feeders in my yard, which I hang from the branches of an ornamental tree. Luckily, a flower bed sits below the tree’s canopy, so any droppings land in the flower bed rather than on my patio. </p><p>By keeping bird feeders away from seating areas, you can still enjoy watching the birdlife in your yard without having to clean up their mess.</p><h2 id="2-add-some-scent">2.  Add some scent </h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1800px;"><p class="vanilla-image-block" style="padding-top:56.22%;"><img id="vF6dt3RBMNgBiPJSvwk8uc" name="shutterstock_2119369739edit.jpg" alt="Bright green leaves of peppermint" src="https://cdn.mos.cms.futurecdn.net/vF6dt3RBMNgBiPJSvwk8uc.jpg" mos="" align="middle" fullscreen="" width="1800" height="1012" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>Even though your garden may already be full of fragrant flowers, especially in the spring and summer when everything is blooming, you can introduce some further scent to repel birds from your seating areas. </p><div  class="fancy-box"><div class="fancy_box-title">How to make a peppermint spray</div><div class="fancy_box_body"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' ><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="HL9kstwwKXEH8SoVgriMMo" name="Peppermint-oil-edit.jpg" caption="" alt="Peppermint essential oil in labeled bottle with fresh peppermint on the side" src="https://cdn.mos.cms.futurecdn.net/HL9kstwwKXEH8SoVgriMMo.jpg" mos="" link="" align="" fullscreen="" width="" height="" attribution="" endorsement="" class="pinterest-pin-exclude"></p></div></div><figcaption itemprop="caption description" class=""><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p class="fancy-box__body-text">Mix 14 drops of peppermint oil with 14 drops of lemon oil, adding ½ cup of white vinegar and ½ cup of water.</p></div></div><p>Birds detest strong, intense scents like those found in essential oils, such as peppermint, eucalyptus, lavender, and citronella. You can make a spray containing essential oils to distribute around your seating area or light a candle to keep birds at a distance when you’re entertaining. However, if using a spray, the scent will fade, so you'll need to use it regularly if you want to keep birds at bay in the long-term.</p><p><strong>Top tip</strong><br>Burning a citronella candle will also help ward off pesky mosquitoes.</p><h2 id="3-clear-up-uneaten-food">3. Clear up uneaten food</h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1800px;"><p class="vanilla-image-block" style="padding-top:56.22%;"><img id="sdiGa9iQAJwJNxvormun4A" name="shutterstock_1584872812edit.jpg" alt="Sparrow on a garden table eating crumbs" src="https://cdn.mos.cms.futurecdn.net/sdiGa9iQAJwJNxvormun4A.jpg" mos="" align="middle" fullscreen="" width="1800" height="1012" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>Birds will quickly swoop in and grab a quick meal if you leave crumbs and leftover food about. Ensure you wipe over any tables and sweep up your patio and decking to keep them clear of tiny morsels that the birds will relish. If not, you'll be sending them an open invitation and they may leave behind more than they take!</p><h2 id="4-introduce-reflective-surfaces">4.  Introduce reflective surfaces </h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1800px;"><p class="vanilla-image-block" style="padding-top:56.28%;"><img id="s35xL8jWJ2vCogimXHB428" name="GettyImages-1277867938edit.jpg" alt="Shiny CD hanging from a tree branch in sunlight" src="https://cdn.mos.cms.futurecdn.net/s35xL8jWJ2vCogimXHB428.jpg" mos="" align="middle" fullscreen="" width="1800" height="1013" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Getty Images)</span></figcaption></figure><p>Bright, reflective surfaces naturally deter birds, so hanging light-reflective objects can keep them away from sitting areas. While suspending unwanted CDs and aluminium cans will work, they may not be the look you’re going for in your outdoor seating areas.</p><p>Instead, opt for decorative ornaments like small hanging mirrors and sun catchers or try some reflective Bird Scare Discs (<a href="https://www.amazon.com/Chephon-Upgraded-Bird-Repellent-Discs/dp/B01LYEI23V/" target="_blank" rel="nofollow">$17 at Amazon</a>).</p><h2 id="5-go-undercover">5. Go undercover</h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1497px;"><p class="vanilla-image-block" style="padding-top:56.25%;"><img id="wuzcwDEABsdFVkRjs6b3kU" name="Gazebo - Amazon jpg.jpg" alt="White gazebo" src="https://cdn.mos.cms.futurecdn.net/wuzcwDEABsdFVkRjs6b3kU.jpg" mos="" align="middle" fullscreen="" width="1497" height="842" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Amazon)</span></figcaption></figure><p>Rather than giving the birds free rein of your patio areas, where they can hop on and off at their leisure, an awning, canopy or large parasol, will put them off. Instead of having a direct landing path, they will have an obstacle to negotiate first.</p><p>While some patio awnings can be attached directly to an outside wall and pulled out when needed, they are only practical if your patio or decking area is adjacent to your home. If your patio area is further down your garden, there are plenty of other options available. Choose from gazebos, outdoor canopies, and patio umbrellas.</p><p><strong>Top tip</strong><br>For added protection against the birds, add a mirror garland to the edge of your chosen cover, like this reflective mirror garland (<a href="https://www.amazon.com/Mirror-Garland-Strand-Inches-Mirrors/dp/B06W2M5ZWB" target="_blank" rel="nofollow"><u>$30, Amazon</u></a>).  </p><div class="product"><a data-dimension112="19b8ada2-b9fe-453e-ae3f-854105b9b93a" data-action="Deal Block" data-label="This oversized, rectangular patio umbrella offers excellent coverage over your patio furniture and is available in dark blue or dark brown. It features a steel pole, with 12 anti-rust steel ribs, giving strength and durability. The included base provides extra support." data-dimension48="This oversized, rectangular patio umbrella offers excellent coverage over your patio furniture and is available in dark blue or dark brown. It features a steel pole, with 12 anti-rust steel ribs, giving strength and durability. The included base provides extra support." data-dimension25="$141" href="https://www.lowes.com/pd/Kozyard-15-ft-Garden-Patio-Umbrella/5014934975" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:643px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="AR9tu2pazXSeZzFWKNbHA6" name="Screenshot-2024-06-17-155611edit.jpg" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/AR9tu2pazXSeZzFWKNbHA6.jpg" mos="" align="middle" fullscreen="" width="643" height="643" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>This oversized, rectangular patio umbrella offers excellent coverage over your patio furniture and is available in dark blue or dark brown. It features a steel pole, with 12 anti-rust steel ribs, giving strength and durability. The included base provides extra support.<a class="view-deal button" href="https://www.lowes.com/pd/Kozyard-15-ft-Garden-Patio-Umbrella/5014934975" target="_blank" rel="nofollow" data-dimension112="19b8ada2-b9fe-453e-ae3f-854105b9b93a" data-action="Deal Block" data-label="This oversized, rectangular patio umbrella offers excellent coverage over your patio furniture and is available in dark blue or dark brown. It features a steel pole, with 12 anti-rust steel ribs, giving strength and durability. The included base provides extra support." data-dimension48="This oversized, rectangular patio umbrella offers excellent coverage over your patio furniture and is available in dark blue or dark brown. It features a steel pole, with 12 anti-rust steel ribs, giving strength and durability. The included base provides extra support." data-dimension25="$141">View Deal</a></p></div><h2 id="6-keep-your-patio-and-decking-clean">6. Keep your patio and decking clean</h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1800px;"><p class="vanilla-image-block" style="padding-top:56.22%;"><img id="g566NPJXD9XRGSwDAW2ByM" name="shutterstock_405167752edit.jpg" alt="Cleaning a patio with water and a broom" src="https://cdn.mos.cms.futurecdn.net/g566NPJXD9XRGSwDAW2ByM.jpg" mos="" align="middle" fullscreen="" width="1800" height="1012" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>Birds are attracted to a dirty and grimy patio or decking area. They see it as a feast in waiting where they can find a good meal. To keep them at a distance, ensure you <a href="https://www.tomsguide.com/home/paving-expert-reveals-how-to-clean-your-patio-and-what-mistakes-to-avoid">clean your patio</a> and seal your decking every few years with a protective oil. Apart from protecting the wood from moisture and UV damage, decking oil will discourage the birds from landing. </p><h2 id="7-plant-a-decoy">7.  Plant a decoy</h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1800px;"><p class="vanilla-image-block" style="padding-top:56.28%;"><img id="dTeVxJpCijKCzEGVCuDUQk" name="shutterstock_2024492153edit.jpg" alt="Owl predator decoy in garden" src="https://cdn.mos.cms.futurecdn.net/dTeVxJpCijKCzEGVCuDUQk.jpg" mos="" align="middle" fullscreen="" width="1800" height="1013" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>Planting a decoy is one easy method of deterring the birds from your seating areas. Owls make a good choice for a decoy as birds view them as predators and will keep their distance. For a life-like predator, opt for an owl decoy with a rotating head, like this fake owl by Hedoc (<a href="https://www.amazon.com/Hedoc-Rotating-Scarecrow-Deterrent-Protectors/dp/B08Y5H55WH?th=1" target="_blank" rel="nofollow">$21 at Amazon</a>).</p><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/how-to/7-ways-to-keep-birds-from-ruining-your-plants">Discover 7 ways to keep birds from ruining your plants in your yard</a></li><li><a href="https://www.tomsguide.com/how-to/7-ways-to-get-rid-of-pigeons-in-your-yard">And 7 ways to get rid of pigeons in your yard</a></li><li><a href="https://www.tomsguide.com/home/5-plants-to-attract-butterflies-and-other-pollinators-to-your-yard">Plus, 5 ways to attract butterflies and other pollinators to your yard </a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ The 3 new iOS 27 AI tools that will instantly save your ruined photos ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/iphones/the-3-new-ios-27-ai-tools-that-will-instantly-save-your-ruined-photos</link>
                                                                            <description>
                            <![CDATA[ iOS 27 adds three AI-powered editing tools to the Photos app that fix common photo mistakes without needing a third-party editor. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">uAvmGihTWibWAKHSbKKxMa</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/qCqRx69EK98Yt86UK3KgVA-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Thu, 18 Jun 2026 09:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[iPhones]]></category>
                                                    <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/qCqRx69EK98Yt86UK3KgVA-1280-80.jpg">
                                                            <media:credit><![CDATA[Future]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[iOS 27 logo on iPhone]]></media:description>                                                            <media:text><![CDATA[iOS 27 logo on iPhone]]></media:text>
                                <media:title type="plain"><![CDATA[iOS 27 logo on iPhone]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/qCqRx69EK98Yt86UK3KgVA-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>I've taken thousands of photos, and, because I'm not a photographer, almost all of them have one small problem. The horizon tilts slightly left. My subject is too far away. Someone's elbow creeps into the frame at the last second. Normally I'd either accept the imperfect shot or spend time in a editing app trying to fix it. iOS 27 changes that entirely. </p><p>Apple's built three editing tools directly into Photos that solve these exact problems. Of course, as this is Apple Intelligence, it won't always fix everything perfectly — but they handle the most common photo mistakes remarkably well.</p><p>You'll need the <a href="https://www.tomsguide.com/phones/iphones/wwdc-2026-how-to-install-the-ios-27-developer-beta-right-now">iOS 27 beta </a>running on your iPhone to access them right now. Here's what's new in your Photos app. </p><section class="howto-block">                    <h3>1. How to use Reframe to fix camera angles</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/oksPjbgUoqJiipkNJDeGWH.jpg"                                        alt="How to Reframe photos in iOS 27 on iPhone"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/oksPjbgUoqJiipkNJDeGWH.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>Reframe solves the problem of imperfect framing that you can't fix by retaking the shot. You got the moment, but the angle was slightly off, or a sign crept into the top of a portrait. </p><p><strong>Open your photo in the Photos app and enter editing mode</strong>. Next, tap tools and <strong>choose Reframe</strong>. <strong>Then touch and drag the image to shift the perspective</strong> as if you'd physically moved the camera before pressing the shutter. </p><p>A blur appears around the edges of the original image as you move it. When you find the perspective you prefer,<strong> tap Save</strong>. Apple's AI automatically generates new content to fill in those gaps, keeping the result consistent with the scene. </p></p>                </section><section class="howto-block">                    <h3>2. How to use Extend to add missing space</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/DWkaP5iCxiuWmtzhezpkS6.jpg"                                        alt="How to extend Photos on iPhone in iOS 27"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/DWkaP5iCxiuWmtzhezpkS6.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>Extend lets you add space around image edges that wasn't there when you took the photo. This solves tight crops where you couldn't back up far enough. It also fixes tilted horizons by extending the top or bottom of a landscape shot, giving the AI more room to level things out. </p><p><strong>Open the photo in editing mode and select Extend </strong>from the Apple Intelligence Tools. The interface lets you <strong>pinch and drag the edges of the image</strong>. Apple's AI understands what should fill those spaces and generates matching content. </p><p>You can adjust how much you extend on each side.</p></p>                </section><section class="howto-block">                    <h3>3. How to use the upgraded Clean Up tool</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/jvApU88Bdwtis85TknE3zk.jpg"                                        alt="How to use upgraded Clean Up in iOS 27"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/jvApU88Bdwtis85TknE3zk.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>Cleanup removes unwanted objects from photos. The iOS 27 version handles complex backgrounds far better than the previous version. A photobomber's elbow. A trash can in the background. A distraction you didn't notice until you reviewed the photo later. The upgraded Cleanup tool tackles these scenarios more accurately.</p><p><strong>Select Clean Up </strong>from the Apple Intelligence Tools in editing mode. <strong>Tap the object you want to remove</strong>. The AI analyzes the background and surrounding content, then fills in the space with contextually appropriate detail. </p><p>For simple backgrounds, Cleanup works instantly. Complex scenes with texture, shadows, and multiple elements now process more accurately thanks to improved AI recognition.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-eJk2yW"></div>                            </div>                            <script src="https://kwizly.com/embed/eJk2yW.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/the-clever-ios-27-wallet-upgrade-that-means-you-will-never-have-to-carry-a-physical-loyalty-card-again">This clever iOS 27 Wallet upgrade means you'll never have to carry a physical loyalty card again</a></li><li><a href="https://www.tomsguide.com/phones/iphones/airpods-finally-get-a-custom-eq-in-ios-27-here-is-how-to-fix-your-sound">AirPods finally get a custom EQ in iOS 27 — here is how to fix your sound</a></li><li><a href="https://www.tomsguide.com/phones/iphones/your-iphone-alarm-and-ringtone-dont-have-to-share-a-volume-slider-anymore-heres-how-to-split-them-in-ios-27">Your iPhone alarm and ringtone don’t have to share a volume slider anymore — here’s how to split them in iOS 27</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ How to watch The U.S. Open 2026: live stream major golf online, TV channels, schedule, tee times, Clark in control ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/sports/watch-the-us-open-2026-golf</link>
                                                                            <description>
                            <![CDATA[ Here's how to watch US Open 2026 live streams from anywhere, with the world's best golfers taking on a tough course at Shinnecock Hills. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">SQaMwxyRLfcb5XYqiWEqMc</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/mCWKYHeGSdkVBWvMAYR8ga-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Thu, 18 Jun 2026 07:00:00 +0000</pubDate>                                                                                                                                <updated>Sun, 21 Jun 2026 07:57:08 +0000</updated>
                                                                                                                                            <category><![CDATA[Sports]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Adrian Back ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/RtLZVVvN9uqWCPaq6H5s9X.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/mCWKYHeGSdkVBWvMAYR8ga-1280-80.jpg">
                                                            <media:credit><![CDATA[Erick W. Rasco/Sports Illustrated via Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[JJ Spaun victorious at the US Open is pictured with the trophy following the Final Round at Oakmont Country Club. Oakmont, ]]></media:description>                                                            <media:text><![CDATA[JJ Spaun victorious at the US Open is pictured with the trophy following the Final Round at Oakmont Country Club. Oakmont, ]]></media:text>
                                <media:title type="plain"><![CDATA[JJ Spaun victorious at the US Open is pictured with the trophy following the Final Round at Oakmont Country Club. Oakmont, ]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/mCWKYHeGSdkVBWvMAYR8ga-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Wyndham Clark is now the overwhelming favorite to claim his second U.S. Open title after extending his lead from four to six shots at the end of the third round. </p><p>The American had led since the opening round and delivered another masterful performance on Saturday to sign for a level-par 70. His nearest challengers at Shinnecock Hills are Scottie Scheffler, Sahith Theegala, Tom Kim and Sam Stevens, all of which are on one under. </p><p>You can watch U.S. Open 2026 live streams<a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992"> </a><u></u><a href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow"><u><strong>from anywhere with a VPN</strong></u></a>.</p><div  class="fancy-box"><div class="fancy_box-title">2026 U.S. Open golf: Live Streams, TV channel</div><div class="fancy_box_body"><p class="fancy-box__body-text">The 2026 U.S. Open takes place from <strong>Thursday, June 18 to Sunday, June 21</strong><br><strong>► Thursday start time:</strong> 6:35 a.m. ET / 3:35 a.m. PT / 11:35 p.m. BST / 8:35 p.m. AEST<br><strong>• U.S.</strong> — NBC, USA, <a data-analytics-id="inline-link" href="https://www.peacocktv.com/" target="_blank" rel="nofollow">Peacock</a><br><strong>• U.K.</strong> — <a data-analytics-id="inline-link" href="https://www.sky.com/tv/sports?dcmp=dmc-skycom:na_sport_sscom_gss_shop_f1_2023" target="_blank" rel="nofollow">Sky Sports</a><br><strong>• AUS</strong> — Kayo Sports (<a data-analytics-id="inline-link" href="https://kayosports.com.au/" target="_blank" rel="nofollow"><strong>7-day FREE trial</strong></a>) <br><strong>• Watch anywhere — try </strong><a data-analytics-id="inline-link" href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow"><strong>Surfshark </strong></a></p></div></div><p>One year ago, Spaun claimed his first major with a score of just one-under as the best golfers on the planet struggled to deal with the thick rough at Oakmont Country Club. This year could be equally challenging as the last time the U.S. Open was played at Shinnecock Hills, Brooks Koepka claimed victory with a score of one-over par. </p><p>The 2018 champion will be hoping for a repeat performance but there are question marks over his fitness after he withdrew from the Canadian Open with a hand injury. Tommy Fleetwood was the runner-up eight years ago and he heads into this year’s tournament looking to finally win his maiden major. </p><p>The Englishman is in good form but will expect fierce competition, especially from countryman Matt Fitzpatrick who has three PGA Tour wins to his name this year, and finished second at last week’s Canadian Open. England’s Aaron Rai will also arrive full of confidence after his memorable victory at the <a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-pga-championship-2026">PGA Championship last month</a>. </p><p>Unsurprisingly, though, it is Scheffler who will have the favorite tag in New York. The 29-year-old has been the picture of consistency on the PGA Tour but has struggled in the opening round of majors this year, something he will be desperate to address. </p><p>Other contenders include two-time reigning Masters champion Rory McIlroy, 2021 U.S. Open champion John Rahm and Xander Schauffele, who had top-10 finishes at both the Masters and the PGA Championship this year. </p><p>Below is a complete guide on where to watch 2026 U.S. Open live streams, together with U.S. broadcast schedules and international TV channels.</p><h2 id="can-i-watch-pga-championship-2026-for-free">Can I watch PGA Championship 2026 for free?</h2><p>In theory, you can watch the whole U.S. Open for free with <a href="https://geni.us/YkQAuWd" target="_blank" rel="nofollow">Fubo (7-day free trial) in the States</a>. There's also Kayo Sports' <a href="https://kayosports.com.au/" target="_blank" rel="nofollow">7-day free trial</a> in Australia.</p><p><strong>Overseas? </strong><a href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow"><strong>Use a VPN</strong></a> to access your usual service from anywhere in the world, with full instructions how to do so below.</p><h2 class="article-body__section" id="section-watch-u-s-open-2026-from-anywhere"><span>Watch U.S. Open 2026 from anywhere</span></h2><p>Away from home at the moment and blocked from watching the golf on your usual subscription?</p><p>You can still watch the 2026 U.S. Open live thanks to the wonders of a <a href="https://www.tomsguide.com/best-picks/best-vpn">VPN</a> (Virtual Private Network). The software can make your devices appear to be back in your home country regardless of where you are, making it ideal for viewers away on vacation or on business. One of our favorites is <a href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow">Surfshark</a> – we explain why in our <a href="https://www.techradar.com/reviews/surfshark">Surfshark review</a>.</p><div class="product"><a data-dimension112="381563f0-fd83-47e2-9987-62adb17ca7d4" data-action="Deal Block" data-label="Surfshark | 3 months FREE | $1.99 a month" data-dimension48="Surfshark | 3 months FREE | $1.99 a month" href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:153px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="BpxkMh7tY5FSpcz9GZPV5T" name="qJYXEymV7uggHfETvNFwPe-153-80.jpg" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/BpxkMh7tY5FSpcz9GZPV5T.jpg" mos="" align="middle" fullscreen="" width="153" height="153" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p><a href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow" data-dimension112="381563f0-fd83-47e2-9987-62adb17ca7d4" data-action="Deal Block" data-label="Surfshark | 3 months FREE | $1.99 a month" data-dimension48="Surfshark | 3 months FREE | $1.99 a month" data-dimension25=""><strong>Surfshark | 3 months FREE | $1.99 a month </strong></a></p><p>Surfshark is the best cheap VPN out there – and it unblocks Kayo Sports so you can watch your usual U.S. Open 2026 streams from anywhere in the world.</p><p><strong>🚀 1,600+ Mbps speeds</strong><br><strong>✨ Fast streaming unblocking</strong></p><p>This is the cheapest premium VPN deal for a while – buy with confidence. <a class="view-deal button" href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow" data-dimension112="381563f0-fd83-47e2-9987-62adb17ca7d4" data-action="Deal Block" data-label="Surfshark | 3 months FREE | $1.99 a month" data-dimension48="Surfshark | 3 months FREE | $1.99 a month" data-dimension25="">View Deal</a></p></div><p>Using a VPN is incredibly simple.</p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow"><strong>Surfshark</strong></a> is our favorite.</p><p><strong>2. Choose the location you wish to connect to in the VPN app. </strong>For instance, if you're in the U.S. and want to view an Aussie service, you'd select Australia from the list.</p><p><strong>3. Sit back and enjoy the action. </strong>Head to your usual streaming service and watch U.S. Open 2026 golf.</p><h2 class="article-body__section" id="section-how-to-watch-u-s-open-2026-in-the-u-s"><span>How to watch U.S. Open 2026 in the U.S. </span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="UHZYAaZCSyV7FkHxYGxtJ6" name="TG_US_Flag_1920_400_shutterstock.jpg" alt="US Flag" src="https://cdn.mos.cms.futurecdn.net/UHZYAaZCSyV7FkHxYGxtJ6.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>U.S. TV coverage of the U.S. Open is split between <strong>NBC</strong> and the <strong>USA Network</strong>, with the <a href="https://www.tomsguide.com/news/peacock-tv-release-date-apps-price-and-what-to-know-about-the-nbc-streaming-service"><strong>Peacock</strong></a> streaming service showing every minute online. The TV splits are as follows (times in ET):</p><ul><li><strong>Thursday</strong>: 6:30 a.m.-5 p.m. (USA); 5-8 p.m. (NBCSN, Peacock)</li><li><strong>Friday</strong>: 6:30 a.m.-1:30 p.m. (NBCSN, Peacock); 1:30-7:30 p.m. (NBC, Peacock)</li><li><strong>Saturday</strong>: 10 a.m.-12 p.m. (USA); 12-8 p.m. (NBC, Peacock)</li><li><strong>Sunday</strong>: 9 a.m.-12 p.m. (USA); 12-7 p.m. (NBC, Peacock)</li></ul><p>If you already have these channels as part of your cable TV package, then you're all set. </p><p>If not, try a cord-cutting TV service such as our favorite <a href="http://www.sling.com" target="_blank" rel="nofollow"><strong>Sling TV</strong></a>. Its Blue plan starts from $45.99/month and includes both channels (with NBC available in <a href="https://www.sling.com/help/en/subscription-programming-questions/channels-programming/local-channels" target="_blank" rel="nofollow">select markets</a>). And there's a <a href="http://www.sling.com" target="_blank" rel="nofollow"><strong>half-price discount</strong></a> for new users, too.</p><p><a href="https://geni.us/YkQAuWd" target="_blank" rel="nofollow"><strong>Fubo (7-day free trial)</strong></a> is another cord-cutting streaming service through which you'll be able to watch the US Open. Subscriptions start at $73.99/month though so if you're looking for a bargain head to Sling TV.</p><p>Anyone outside of the States who wants to watch their home golf coverage can just <a href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow"><strong>pick up a good VPN</strong></a> and follow the instructions above to live stream all the US Open action safely. </p><h2 class="article-body__section" id="section-how-to-watch-u-s-open-2026-golf-in-canada"><span>How to watch U.S. Open 2026 golf in Canada</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="eByagaoLZki73CLtYaRPMG" name="TG_Canada_Flag_1920_400_shutterstock.jpg" alt="Canada flag" src="https://cdn.mos.cms.futurecdn.net/eByagaoLZki73CLtYaRPMG.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>The U.S. Open is being broadcast on <strong>TSN</strong> channels in Canada, which means you can also watch golf live streams on the <a href="https://www.tsn.ca/subscribe" target="_blank" rel="nofollow"><strong>TSN Plus</strong></a> streaming platform costing $8/month or $80/year.</p><p>If you're outside Canada but have a subscription, you can watch U.S. Open live streams using a VPN, such as <a href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow"><strong>SurfShark</strong></a>.</p><h2 class="article-body__section" id="section-where-to-watch-u-s-open-2026-live-in-the-u-k"><span>Where to watch U.S. Open 2026 live in the U.K.</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="ttCSpj8r9kHj68j7NhsBL9" name="TG_British_Flag_1920_400_shutterstock.jpg" alt="UK Flag" src="https://cdn.mos.cms.futurecdn.net/ttCSpj8r9kHj68j7NhsBL9.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p><a href="https://www.sky.com/shop/tv/sports/cricket" target="_blank" rel="nofollow"><strong>Sky Sports'</strong></a> Main Event and Golf channels are the exclusive place to watch golf including the 2026 U.S. Open in the U.K. Prices start <a href="https://www.sky.com/shop/tv/sports/" target="_blank" rel="nofollow">from £22/month</a>.</p><p>Sky Sports subscribers can watch the golf on mobile devices via the Sky Go streaming service, which has dedicated apps for iOS, iPadOS and Android devices, along with Xbox and PlayStation consoles.</p><p>Don't fancy being locked into a long, expensive contract? You could consider a more flexible <a href="https://www.nowtv.com/membership/watch-sky-sports" target="_blank" rel="nofollow"><strong>Now Sports Membership</strong></a>. Day passes cost £14.99, or a rolling monthly subscription is £34.99.</p><p>To access your usual streaming service from outside the U.K, you'll need to <a href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow">download a good VPN</a>, as detailed above.</p><h2 class="article-body__section" id="section-watch-u-s-open-2026-live-streams-in-australia"><span>Watch U.S. Open 2026 live streams in Australia</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="R4wb8TX7wmafWv7eBYfay3" name="TG_australia_Flag_1920_400_shutterstock.jpg" alt="Australian flag" src="https://cdn.mos.cms.futurecdn.net/R4wb8TX7wmafWv7eBYfay3.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>The live action from the 2026 U.S. Open is being shown on <strong>Fox Sports 503</strong> on TV in Australia.</p><p>Don't have Foxtel and don't want to subscribe? Specialist streaming service <a href="https://kayosports.com.au/" target="_blank" rel="nofollow"><strong>Kayo Sports</strong></a> will also be showing U.S. Open 2026 golf live streams with its affordable, commitment-free plans starting from $30/month. There's also a <a href="https://kayosports.com.au/" target="_blank" rel="nofollow"><strong>7-day FREE trial</strong></a> (or your first month for $1) for anybody who hasn't used the service before.</p><p>Not in Australia right now? You can simply use a VPN like <a href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow">SurfShark</a> to watch all the action on your Foxtel or Kayo account as if you were back home.</p><h2 class="article-body__section" id="section-how-to-watch-u-s-open-2026-live-streams-in-new-zealand"><span>How to watch U.S. Open 2026 live streams in New Zealand</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="tfnLAqwXBHZL7w6SknDGyJ" name="TG_new_zealand_flag.jpg" alt="New Zealand flag" src="https://cdn.mos.cms.futurecdn.net/tfnLAqwXBHZL7w6SknDGyJ.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>Kiwis can access U.S. Open 2026 live streams via <strong>Sky Sport Now</strong>. This costs from $59.99/month or $549.99/year, with a daily price of $29.99 also available.</p><p>Those looking to watch the golf major on TV, this tournament will be shown on <strong>Sky Sport 1</strong>.</p><p>If you're traveling outside New Zealand right now, you can still follow every shot by using a reputable VPN service, such as <a href="http://get.surfshark.net/aff_c?offer_id=1030&aff_id=1691" target="_blank" rel="nofollow"><strong>SurfShark.</strong></a></p><h2 id="u-s-open-round-3-tee-times">U.S. Open Round 3 tee times</h2><p><em>All times in ET</em></p><p><strong>7:45 a.m.: </strong>Dylan Wu, James Nicholas</p><p><strong>7:56 a.m.: </strong>Peter Uihlein, Russell Henley</p><p><strong>8:07 a.m.: </strong>Patrick Rodgers, Eric Lee</p><p><strong>8:18 a.m.: </strong>Neal Shipley, Hideki Matsuyama</p><p><strong>8:29 a.m.: </strong>Adrien Dumont de Chassart, Nico Echavarria</p><p><strong>8:40 a.m.:</strong> Caleb Surratt, Ben James</p><p><strong>8:51 a.m.:</strong> Jackson Van Paris, Spencer Tibbits</p><p><strong>9:02 a.m.: </strong>Kurt Kitayama, Max Greyserman</p><p><strong>9:18 a.m.: </strong>Marek Fleming, Jacob Bridgeman</p><p><strong>9:29 a.m.: </strong>Johnny Keefer, Ludvig Åberg</p><p><strong>9:40 a.m.: </strong>Ryan Fox, Angel Hidalgo</p><p><strong>9:51 a.m.:</strong> Miles Russell, Jackson Koivun</p><p><strong>10:02 a.m.:</strong> Robert MacIntyre, Chris Gotterup</p><p><strong>10:13 a.m.: </strong>Harry Higgs, Andrew Putnam</p><p><strong>10:24 a.m.:</strong> Michael Brennan, Jordan Spieth</p><p><strong>10:35 a.m.: </strong>Bud Cauley, Ben Kohles</p><p><strong>10:51 a.m.: </strong>Cameron Young, Joaquin Niemann</p><p><strong>11:02 a.m.:</strong> Laurie Canter, Justin Thomas</p><p><strong>11:13 a.m.:</strong> William Mouw, Niklas Nørgaard</p><p><strong>11:24 a.m.: </strong>Max McGreevy, Justin Rose</p><p><strong>11:35 a.m.:</strong> Ben Griffin, Tyrrell Hatton</p><p><strong>11:46 a.m.:</strong> Pierceson Coody, Dustin Johnson</p><p><strong>11:57 a.m.:</strong> Ryo Hisatsune, Gary Woodland</p><p><strong>12:13 p.m.:</strong> Akshay Bhatia, Rory McIlroy</p><p><strong>12:24 p.m.:</strong> Maverick McNealy, Brian Harman</p><p><strong>12:35 p.m.:</strong> Zac Blair, Aaron Rai</p><p><strong>12:46 p.m.:</strong> John Parry, J.T. Poston</p><p><strong>12:57 p.m.:</strong> Sungjae Im, Michael Kim</p><p><strong>1:08 p.m.:</strong> Ryder Cowan, Alex Fitzpatrick</p><p><strong>1:19 p.m.: </strong>Corey Conners, Keegan Bradley</p><p><strong>1:35 p.m.:</strong> Matt Fitzpatrick, Collin Morikawa</p><p><strong>1:46 p.m.: </strong>Tommy Fleetwood, Xander Schauffele</p><p><strong>1:57 p.m.: </strong>Sam Burns, Keith Mitchell</p><p><strong>2:08 p.m.:</strong> Emiliano Grillo, Sam Stevens</p><p><strong>2:19 p.m.: </strong>Tom Kim, Sahith Theegala</p><p><strong>2:30 p.m.: </strong>Scottie Scheffler, Wyndham Clark</p><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-nba-playoffs-2026-free-live-streams-tv-schedule">How to watch NBA Playoffs 2026: FREE live streams</a></li><li><a href="https://www.tomsguide.com/best-picks/streaming-vpn">The best streaming VPNs</a></li><li><a href="https://www.tomsguide.com/ai/i-asked-chatgpt-to-analyze-the-best-golf-swings-in-the-world-and-heres-what-i-learned">ChatGPT analyzed the world’s best golf swings — here's what it found</a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ Apple finally brings built-in drawing tools to iOS 27 Messages — here's how to try it ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/iphones/apple-finally-brings-built-in-drawing-tools-to-ios-27-messages-heres-how-to-try-it</link>
                                                                            <description>
                            <![CDATA[ iOS 27 lets you draw and send hand-drawn messages in the Messages app with full Apple Pencil support on iPad. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">yijLCsB8uTKZQGfnMbKRH9</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/qdS9MAp79UU3D85qwZjEV6-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Wed, 17 Jun 2026 06:15:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[iPhones]]></category>
                                                    <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/qdS9MAp79UU3D85qwZjEV6-1280-80.jpg">
                                                            <media:credit><![CDATA[John Velasco / Tom&#039;s Guide]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[iOS 27 Siri AI running on iPhone 17 Pro.]]></media:description>                                                            <media:text><![CDATA[iOS 27 Siri AI running on iPhone 17 Pro.]]></media:text>
                                <media:title type="plain"><![CDATA[iOS 27 Siri AI running on iPhone 17 Pro.]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/qdS9MAp79UU3D85qwZjEV6-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Emojis and standard text are fine, but sometimes a conversation calls for a personal touch. With <a href="https://www.tomsguide.com/phones/iphones/ios-27-is-official-all-the-new-upgrades-and-features-announced-at-wwdc-2026">iOS 27</a>, Apple is turning your text threads into a digital canvas. </p><p>The Messages app now features built-in drawing tools that let you sketch, scribble, and send handwritten notes directly inside your chats. Whether you're sending a quick, goofy doodle to a friend or using an iPad and Apple Pencil to sketch a mini-masterpiece, the process is seamless. </p><p>Ready to ditch the keyboard? Here’s exactly how to use it.</p><h2 id="download-ios-27-beta-to-access-the-drawing-feature">Download iOS 27 beta to access the drawing feature</h2><p>Since iOS 27 is currently in its early beta phase, you’ll need to be on the developer track to test this out. If you haven't joined yet, you can enroll for free through the official Apple Developer Program website.</p><p>If you're already a beta veteran, you should be able to jump into your iPhone's Settings: <strong>followed by</strong> <strong>General, Software Update</strong>, <strong>tap Beta Updates</strong>, and<strong> toggle on the iOS 27 Developer Beta</strong> to get drawing.</p><p>If you're running into issues with it not showing up even though you've updated to a beta before, make sure you're running the latest Beta available. </p><section class="howto-block">                    <h3> How to draw and send messages</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/4KNaE5HPH3X3RErdPT9XPV.jpg"                                        alt="Drawing feature in iPhone messages on iOS 27"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/4KNaE5HPH3X3RErdPT9XPV.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p><strong>Open Messages and select a conversation</strong>. <strong>Tap the plus icon (+)</strong> at the bottom left of the message field. From the menu that appears, <strong>select Drawing</strong>. A blank canvas opens where you can create your message.</p><p>Use your finger on iPhone or your Apple Pencil on iPad to draw directly on the canvas. The drawing tool responds naturally to pressure and movement, making sketches feel smooth and precise. </p><p>iPad users especially benefit from Apple Pencil support, which provides accuracy that finger-drawing can't match. You can draw simple sketches, write handwritten notes, or create detailed artwork depending on what you want to send.</p><p>Once you're finished drawing, review your message. If you're happy with it, <strong>tap the check mark button to send</strong>. The drawing delivers instantly as an image in the conversation. </p><p>If you want to start over, close the drawing canvas and tap the plus icon again to begin a new sketch.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-eJk2yW"></div>                            </div>                            <script src="https://kwizly.com/embed/eJk2yW.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/the-clever-ios-27-wallet-upgrade-that-means-you-will-never-have-to-carry-a-physical-loyalty-card-again">This clever iOS 27 Wallet upgrade means you'll never have to carry a physical loyalty card again</a></li><li><a href="https://www.tomsguide.com/phones/iphones/airpods-finally-get-a-custom-eq-in-ios-27-here-is-how-to-fix-your-sound">AirPods finally get a custom EQ in iOS 27 — here is how to fix your sound</a></li><li><a href="https://www.tomsguide.com/phones/iphones/your-iphone-alarm-and-ringtone-dont-have-to-share-a-volume-slider-anymore-heres-how-to-split-them-in-ios-27">Your iPhone alarm and ringtone don’t have to share a volume slider anymore — here’s how to split them in iOS 27</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ AirPods finally get a custom EQ in iOS 27 — here is how to fix your sound ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/iphones/airpods-finally-get-a-custom-eq-in-ios-27-here-is-how-to-fix-your-sound</link>
                                                                            <description>
                            <![CDATA[ The new custom EQ feature in iOS 27 allows AirPods users to manually adjust bass, mids, and treble for a personalized audio experience. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">HreYZVwsTmDdBmNYmSaPrm</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/aGsV2oXwfxKSe7BhHdpZuP-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Tue, 16 Jun 2026 09:52:24 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[iPhones]]></category>
                                                    <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/aGsV2oXwfxKSe7BhHdpZuP-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Smartphone and AirPods]]></media:description>                                                            <media:text><![CDATA[Smartphone and AirPods]]></media:text>
                                <media:title type="plain"><![CDATA[Smartphone and AirPods]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/aGsV2oXwfxKSe7BhHdpZuP-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>It's been a long time coming, but <a href="https://www.tomsguide.com/phones/iphones/ios-27-is-official-all-the-new-upgrades-and-features-announced-at-wwdc-2026">iOS 27</a> finally gives AirPods users control over their sound profile. The new AirPods custom EQ feature lets you adjust bass, midrange, and treble to match your listening preferences. </p><p>Whether you want to dial down heavy bass, boost vocals, or brighten the highs, the simple three-band EQ works for both audiophiles seeking precise control and casual listeners wanting better sound.</p><p>Here's exactly how to change your AirPods equalizer settings on compatible models.</p><figure class="inline-layout"><fw-embed-feed channel="toms_guide" playlist="gK4rJ8" mode="row" player_placement="bottom-right"></fw-embed-feed></figure><h2 id="which-airpods-models-support-custom-eq">Which AirPods models support custom EQ?</h2><p><strong>Custom EQ is available on AirPods Pro 3, AirPods Pro 2, and AirPods 4</strong>. The original AirPods Max and earlier models don't support this iOS 27 AirPods feature. You'll need iOS 27 running on your iPhone to access the AirPods custom EQ settings.</p><section class="howto-block">                    <h3>How to get the AirPods custom EQ early</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/xmPPToWs4zEYkwYjUHVrMS.jpg"                                        alt="AirPods Pro 3"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/xmPPToWs4zEYkwYjUHVrMS.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>First, you'll need to register as an <a href="https://developer.apple.com/programs/enroll/" target="_blank">Apple developer.</a> Alternatively, if you have downloaded any Apple beta in the past, you can skip registration. Simply<strong> go to Settings > General > Software Update > Beta Updates and select the iOS 27 Developer Beta</strong>.</p><p>If you are using this previous-beta method and the iOS 27 option isn't appearing, make sure your iPhone is fully updated to the absolute latest version of your current beta cycle first.</p><p>Next, <strong>connect your AirPods and open Settings. Tap your AirPods name at the top of the screen, scroll down to AirPods Beta Updates, and toggle the feature on</strong>.</p><p>To complete the update, <strong>place your AirPods in their case, plug them in to charge, and keep them near your iPhone</strong>. The firmware will download automatically in the background. </p></p>                </section><section class="howto-block">                    <h3>How do you adjust the AirPods custom EQ sliders</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/LLNGsYFmwerjdu5vWPM5en.png"                                        alt="Custom EQ for AirPods"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/LLNGsYFmwerjdu5vWPM5en.png"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Apple)</div></figure>                    <p><p><strong>Open Settings</strong> <strong>on your iPhone and navigate to your AirPods settings</strong>. From there, <strong>select Audio and Routing</strong>, then <strong>tap Equalizer</strong>. You will see two options at the top of the screen: Recommended and Custom.</p><p>The Recommended option uses Apple's standard sound profile. <strong>Select</strong> <strong>Custom</strong> to unlock the manual three-band EQ.</p><p>The interface will display three distinct frequency sliders. <strong>Simply raise or lower the</strong> <strong>low frequencies (bass)</strong>, <strong>mid frequencies (vocals and instruments)</strong>, and <strong>high frequencies (treble)</strong> to match your preference.</p><p>You can use the play head at the top of the screen to control the currently playing music. This allows you to hear your EQ changes in real time as you move each slider.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-e4MKAW"></div>                            </div>                            <script src="https://kwizly.com/embed/e4MKAW.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/the-clever-ios-27-wallet-upgrade-that-means-you-will-never-have-to-carry-a-physical-loyalty-card-again">This clever iOS 27 Wallet upgrade means you'll never have to carry a physical loyalty card again</a></li><li><a href="https://www.tomsguide.com/phones/iphones/you-dont-have-to-wait-for-apples-siri-ai-rollout-use-this-trick-to-unlock-it-on-ios-27-right-now">You don’t have to wait for Apple’s Siri AI rollout — use this trick to unlock it on iOS 27 right now</a></li><li><a href="https://www.tomsguide.com/phones/iphones/your-iphone-alarm-and-ringtone-dont-have-to-share-a-volume-slider-anymore-heres-how-to-split-them-in-ios-27">Your iPhone alarm and ringtone don’t have to share a volume slider anymore — here’s how to split them in iOS 27</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ I finally unlocked the true potential of Apple Intelligence with these 5 features you’re probably overlooking ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/ai/i-finally-unlocked-the-true-potential-of-apple-intelligence-with-these-5-features-youre-probably-overlooking</link>
                                                                            <description>
                            <![CDATA[ Stop overlooking these five Apple Intelligence features and take advantage of the clever ways it's integrated into apps across the iOS ecosystem. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">VfGiJQZj3jthTc23btgDNN</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/FEuXiAvTQXTMvKQ2r2vVxb-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Tue, 16 Jun 2026 07:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[AI]]></category>
                                                                                                                    <dc:creator><![CDATA[ Elton Jones ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/NVtYYXr3tEPUE67jf3HtXM.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/FEuXiAvTQXTMvKQ2r2vVxb-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Apple Intelligence on MacBook]]></media:description>                                                            <media:text><![CDATA[Apple Intelligence on MacBook]]></media:text>
                                <media:title type="plain"><![CDATA[Apple Intelligence on MacBook]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/FEuXiAvTQXTMvKQ2r2vVxb-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>For anyone who uses an Apple device powered by iOS 26, iPadOS 26 and macOS Tahoe 26, I’m sure you’ve been exposed to the many ways Apple Intelligence can help you in your everyday life.</p><p>When iOS 27 was announced at WWDC, it brought a wealth of new features that iPhone users have long been waiting for. Among the prominent are “Smart Reply” responses in Mail and Messages apps, the ability to produce a sentimental memory movie with a collection of your favorite photos, and even act as a “Workout Buddy” when it’s time to hit the gym. </p><p>With a wide range of tools that utilize “Writing Tools” to proofread your written notes, batch up your notifications into easy-to-digest summaries and integrate ChatGPT across the board, it can become easy to just use Apple Intelligence’s most basic attributes and ignore the rest.</p><p>With so many new Apple Intelligence features, you’re likely to overlook some. I’ve been using the iOS 27 beta on my iPhone for the last week and have found five underrated Apple Intelligence features that you may not have heard about. Here’s what they are and how they can put your iPhone to better use.</p><section class="howto-block">                    <h3>“Describe Your Change”</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/P2EZsMCadNR3e5hXZLsefJ.jpg"                                        alt="Describe Your Change in the Writing Tools of iOS 18.2 running on an iPhone 15 Pro"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/P2EZsMCadNR3e5hXZLsefJ.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Future)</div></figure>                    <p><p>One of the clearest examples of an Apple Intelligence feature you probably don’t use as much as you should is the “Describe Your Change” option. </p><p>This option is connected to the “Writing Tools” option that pops up whenever you’re handling some text editing duties.</p><p><strong>For instance, you can begin jotting down a new e-mail response or a formal speech in the “Notes” app and click on the Apple Intelligence icon in the formatting bar that’s placed above the keyboard (the sixth icon is the one you’ll be using).</strong> The “Proofread,” “Rewrite,” and other options work well enough, but the “Describe your change” feature is pretty strong in its own right. It avoids going with a preset tone and follows exactly the sort of major change you require over Writing Tools’ default rewrite options.</p><p>Tapping the Describe your change bar and giving it specified prompts does an even better job of improving your message. These four prompts should be a good starting point:</p><ul><li><strong>Make this sound more confident.</strong></li><li><strong>Turn this into a LinkedIn post.</strong></li><li><strong>Shorten this by 50%.</strong></li><li><strong>Make this sound like a friendly text.</strong></li></ul></p>                </section><section class="howto-block">                    <h3>Visual Intelligence</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/8yr9BNxQ238SAqEKrTMSvh.jpg"                                        alt="Craig Federighi standing in front of an Apple Visual Intelligence logo"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/8yr9BNxQ238SAqEKrTMSvh.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Apple)</div></figure>                    <p><p>The Visual Intelligence component is one of the best features that owners of the iPhone 16 and later models should tap into more.</p><p>It taps into your mobile device’s camera to scan the environment, identify objects, translate text, and get real-time information (such as looking up details about a restaurant or business). Another one of the best ways to use Visual Intelligence is by commanding it to analyze what’s already on your screen, such as images, event flyers and webpages.</p><p>Activating Visual Intelligence is simple: <strong>Pull up an image in your “Photos” library, then take a screenshot.</strong></p><p><strong>After doing that, several Visual Intelligence options will pop up. You can use the “Ask” option to present ChatGPT with questions about the picture you’ve highlighted, use the “? Look Up” feature to identify the sources of different objects in your screenshots, or use the “Search” tool to look up similar images or the image itself in comparison to your chosen picture via Google.</strong></p></p>                </section><section class="howto-block">                    <h3>The Image Wand in Notes</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/thKBohxqzGxA5jmYpf8Bnn.jpg"                                        alt="Apple Intelligence logo on iPhone with Apple logo in background"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/thKBohxqzGxA5jmYpf8Bnn.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Generating your own emojis with the “Genmoji” feature in the Notes app is cool and all, but the “Image Wand” is also an equally great feature. The Image Wand can handle two creative tasks in the Notes app: It can transform rough sketches or blank spaces into polished AI-generated artwork and create images from a black space.</p><p>Here’s how:</p><p><strong>Transform rough sketches or blank spaces into polished AI-generated artwork: Open the Notes app, start a new note and tap the fifth pen/pencil “Markup” icon at the bottom of the screen to open the drawing tools. Create your drawing, then scroll to the Image Wand (the sixth icon among the drawing tools at the bottom of the screen) and use your finger or Apple Pencil to draw a circle completely around your sketch. </strong></p><p><strong>Then, follow the on-screen directions to describe your image. Tap the checkmark button on the bottom right to submit your description. Look at all the AI-generated variations of your drawing, choose from the three style options (Animation, Illustration or Sketch) and tap “Done” to add the finalized image to your note.</strong></p><p><strong>Create images from a black space: Open the Notes app, start a new note, tap the Markup icon, and select the Image Wand tool. Draw a circle in a blank part of the note with your finger or Apple Pencil — this will help Apple Intelligence read the surrounding handwritten or typed text in your note, then suggest image ideas in floating bubbles. Then you can use the “Describe the image” option to add specific details to refine your final image.</strong></p></p>                </section><section class="howto-block">                    <h3>Intelligent Shortcuts</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/iAuhvXTwvsFhYtFkj2rfHf.jpg"                                        alt="Craig Federighi stands in front of the Shortcuts app icon"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/iAuhvXTwvsFhYtFkj2rfHf.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Apple)</div></figure>                    <p><p>If you’ve been ignoring the <a href="https://www.tomsguide.com/phones/iphones/you-can-find-your-missing-iphone-with-one-text-message-thanks-to-apple-shortcuts-heres-how-to-set-it-up">“Shortcuts” app</a>, then you’re doing yourself a disservice. You can activate “Automations” that make specified shortcuts run automatically once you’ve set them up. Your automations run without manual input thanks to a "trigger" action (such as your alarm going off or arriving at the gym).</p><p><strong>For instance, you can set up an automation for every time your Mom sends you a certain message that you specify (such as a gift/event reminder) and set it to your “Reminders” to make it part of your lists for future reference. Tapping on “Automation” at the bottom of the screen while you’re using the Shortcuts app and tapping “New Automation” will help you begin the process.</strong></p></p>                </section><section class="howto-block">                    <h3>Auto-Categorization Reminders</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/M6HW7kZJN5tUBcEqwvnmKN.jpeg"                                        alt="how to create a grocery list in reminders"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/M6HW7kZJN5tUBcEqwvnmKN.jpeg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>The “Reminders” app also works with Apple Intelligence. The feature is the auto-categorization of your reminders. Simply open up a list of reminders,<strong> tap the “More” button (the three dots) at the top right of your screen and choose “Auto-Categorize.” Apple Intelligence will then split up your reminders into easy-to-follow sections. You can tap on the three dots again to remove those sections and auto-categorize them again into a different section layout if need be. </strong></p><p>In my case, I wrote out a list of Saturday tasks, which included picking up my suit from the dry cleaner, dropping off a package at the post office, going food shopping for everything I need for the coming week, remembering to defrost the steak I was planning to cook the following Sunday and rearranging my graphic novel collection. </p><p>Those chores got the auto-categorization reminder treatment by being grouped under the simple title of “Personal Tasks.”</p></p>                </section><h2 id="apple-intelligence-is-a-game-changer-for-first-time-users-like-me">Apple Intelligence is a game-changer for first-time users like me</h2><p>Tinkering around with my<a href="https://www.tomsguide.com/phones/iphones/ive-been-using-the-iphone-17-pro-for-a-month-heres-my-pros-and-cons"> iPhone 17 </a>and getting exposed to all the ways Apple Intelligence can assist anyone with their everyday tasks has been a game-changer for me. </p><p>It’s not only a major iOS tool that keeps you on top of your to-do list—it also makes for a great text/photo editor and a research tool that helps you find the sources behind the visuals you’ve saved to your device. </p><p>There’s always room for improvement, but at the moment, the five Apple Intelligence features I’ve explained here are great and deserve far more usage from anyone who has access to them.</p><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom’s Guide</span></h3><ul><li><a href="https://www.tomsguide.com/ai/how-to-use-googles-hidden-new-docs-live-voice-feature-to-dictate-perfect-emails" target="_blank">How to use Google’s new "Docs Live" voice feature to dictate perfect emails</a></li><li><a href="https://www.tomsguide.com/ai/i-was-tired-of-ai-agreeing-with-everything-these-5-prompts-finally-made-it-push-back" target="_blank">I was tired of AI agreeing with everything — these 5 prompts finally made it push back</a></li><li><a href="https://www.tomsguide.com/ai/i-asked-chatgpt-to-make-cleaning-less-overwhelming-these-7-prompts-actually-helped" target="_blank">I asked ChatGPT to make cleaning less overwhelming — these 7 prompts actually helped</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ How to get every World Cup match on your calendar in under 60 seconds ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/the-free-1-minute-hack-to-put-every-world-cup-match-on-your-calendar</link>
                                                                            <description>
                            <![CDATA[ This free, 1-minute hack to put every World Cup game on your calendar. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">PcyFLUipHLepuJZBdB2ru</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/GGNoyJMg377zv226tt9y5a-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Tue, 16 Jun 2026 06:30:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/GGNoyJMg377zv226tt9y5a-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[world cup 2026]]></media:description>                                                            <media:text><![CDATA[world cup 2026]]></media:text>
                                <media:title type="plain"><![CDATA[world cup 2026]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/GGNoyJMg377zv226tt9y5a-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>There's a trick most <a href="https://www.tomsguide.com/entertainment/streaming/toms-guide-to-the-world-cup">World Cup</a> viewers don't know about: you can sync the entire tournament schedule to your phone's calendar in less than a minute. </p><p>The World Cup spans weeks across multiple time zones, which makes remembering match times nearly impossible without a system. <a href="https://www.fotmob.com/">FotMob</a>, a free platform, automates this completely for you. Once synced, every single match appears on your calendar with automatic reminders. </p><p>You'll never have to check schedules again or scramble to remember when your team plays. Set it up once and you're covered for the entire tournament. </p><p>Here's how to do it.</p>                    <div class= "tiktok-wrapper" style="min-height: 750px;"><blockquote class="tiktok-embed" cite="https://www.tiktok.com/@tomsguide/video/7650537284206333197" data-video-id="7650537284206333197" style="max-width: 605px; min-width: 325px;">                        <section>                            <a target="_blank" title="@tomsguide" href="https://www.tiktok.com/@tomsguide">@tomsguide</a>                            <p></p><a target="_blank" title="♬ World Cup 2026 - DJ Twilight" href="https://www.tiktok.com/music/World-Cup-2026-7624103041969768449">♬ World Cup 2026 - DJ Twilight</a></section>                    </blockquote></div>                <section class="howto-block">                    <h3>Visit FotMob and choose your calendar </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/bXMRq8iPxVkQhcuECeMEW8.jpg"                                        alt="How to sync World Cup schedule to your calendar "                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/bXMRq8iPxVkQhcuECeMEW8.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p><strong>Visit FotMob.com and </strong><a href="https://www.fotmob.com/en/leagues/77/synccalendar/fifa-world-cup"><strong>navigate to its FIFA World Cup calendar sync page</strong></a>. From here, <strong>select your preferred syncing method</strong>. </p><p>FotMob offers multiple options, including Gmail, Google Calendar, Outlook, and other calendar services. <strong>Pick whichever you use daily</strong>.</p></p>                </section><section class="howto-block">                    <h3>Sync the world cup schedule </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/gVWTM4hJn89RMMBpxThR6G.jpg"                                        alt="World Cup 2026 matches synced to Gmail"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/gVWTM4hJn89RMMBpxThR6G.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>FotMob will then asks for confirmation that you want to add the World Cup schedule to that calendar. <strong>Approve it and you're done</strong>.</p><p>Within seconds, every World Cup match appears on your calendar with the correct dates, times, and team matchups. Your phone will send automatic reminders before each game. </p><p>Check your calendar and you'll see the entire tournament scheduled. There's no other setup required beyond that initial confirmation step.</p></p>                </section><h2 id="why-this-beats-manually-checking-the-schedule">Why this beats manually checking the schedule</h2><p>The World Cup doesn't care about your time zone — matches kick off at odd hours, on weekdays, across a month-long stretch, and the schedule shifts constantly as the knockout rounds take shape. </p><p>Keeping that in your head is a losing game. No schedule-checking, no time zone conversions, no last-minute panics. The tournament lives in your calendar like any other appointment. Four weeks of football, and your phone handles the rest.</p><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-W0mbrO"></div>                            </div>                            <script src="https://kwizly.com/embed/W0mbrO.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams">How to watch World Cup 2026: live stream every game for free from anywhere in the world</a></li><li><a href="https://www.tomsguide.com/tvs/watching-the-world-cup-on-a-samsung-tv-change-these-5-sound-and-picture-settings">Watching the World Cup on a Samsung TV? Change these 5 sound and picture settings</a></li><li><a href="https://www.tomsguide.com/entertainment/streaming-devices/how-to-unlock-rokus-hidden-sports-mode-for-a-better-world-cup-experience">How to unlock Roku’s hidden Sports mode for a better World Cup experience</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ The real reason stink bugs are invading your house this summer (and how to stop them) ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/the-real-reason-stink-bugs-are-invading-your-house-this-summer-and-how-to-stop-them</link>
                                                                            <description>
                            <![CDATA[ Those aren't friendly stink bugs in your house. How to spot and repel the invasive kind. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">ojvkxS6mqx5Aro4TqPWPpR</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/z8WBheD86kBwsWHygPJtuT-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Tue, 16 Jun 2026 05:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Home]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/z8WBheD86kBwsWHygPJtuT-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Stink bugs gathered in door crevice]]></media:description>                                                            <media:text><![CDATA[Stink bugs gathered in door crevice]]></media:text>
                                <media:title type="plain"><![CDATA[Stink bugs gathered in door crevice]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/z8WBheD86kBwsWHygPJtuT-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>As summer heatwaves set in, you expect to deal with <a href="https://www.tomsguide.com/home/how-to-mosquito-proof-yourself-this-summer">mosquitoes</a>, <a href="https://www.tomsguide.com/home/gardening/ant-hills-multiplying-how-to-destroy-the-colony-before-it-takes-over-your-yard">ants</a>, and <a href="https://www.tomsguide.com/home/flying-termites-invading-your-home-heres-how-to-get-rid-of-them-fast">termites</a>, but finding a giant, shield-shaped stink bug buzzing around your living room ceiling fan is a very rude seasonal surprise. </p><p>While it's easy to assume these invasive summer stink bugs are freshly breaking in to escape the scorching heat. The reality is the bugs you're spotting inside your home didn't just arrive. They're likely invasive brown marmorated stink bugs that have been hiding there for a while. </p><p>The warmer weather tricks these overwintering pests into waking up from hibernation early. Now they're clumsily wandering out of your baseboards and vents, looking for an exit. </p><p>Here's how to safely remove them and seal your home before the next generation tries to break back in this autumn.</p><section class="howto-block">                    <h3>Native stink bugs VS the invasive kind </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/Vua8tLtCHTLdFAgsPut4Pa.jpg"                                        alt="marmorated stink bug "                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/Vua8tLtCHTLdFAgsPut4Pa.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Brown narmorated stink bugs have a distinctive shield shape, mottled brown back, and white bands on their dark antennae. They're about half an inch long. Learning what invasive stink bugs actually look like is crucial to identification.</p><p>Native garden bugs look similar but are usually narrower with flared, leaf-like back legs. These harmless visitors don't emit the foul odor when disturbed. If you gently sweep it outside and smell nothing, it's likely a native look-alike, not an invasive stink bug.</p></p>                </section><h3 class="article-body__section" id="section-how-to-repel-stink-bugs"><span>How to repel stink bugs </span></h3><section class="howto-block">                    <h3>1. Deploy the soapy water trap immediately</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/ezh8yE36fKWeico7kPXxd.jpg"                                        alt="Dish soap in bottle"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/ezh8yE36fKWeico7kPXxd.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Since invasive stink bugs are already inside your living space waking from hibernation, <strong>do not swat them — they will stink</strong>. </p><p>Instead,<strong> set a small desk lamp over a shallow pan of water mixed with a squirt of dish soap </strong>in a dark room overnight. These groggy bugs will fly toward the light, fall into the water, and drown cleanly without releasing their odor. </p><p>This is the safest way to get rid of stink bugs currently in your home. <strong>Check the trap each morning and dispose of the water</strong>.</p></p>                </section><section class="howto-block">                    <h3>2. Use the nylon stocking vacuum trick</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/t2d87gCEuSewZyYTGDs9Ra.jpg"                                        alt="Dyson with sock on vacuum hose attachment"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/t2d87gCEuSewZyYTGDs9Ra.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Future)</div></figure>                    <p><p>If too many invasive stink bugs are wandering around your curtains and baseboards, don't vacuum them normally. Instead, <strong>slip a nylon sock or pantyhose into the end of your vacuum hose and secure it with a rubber band</strong>. </p><p>Then simply <strong>vacuum them up so they get caught in the stocking, then tie it off and throw it away outside</strong>. This method prevents the bugs from being crushed inside your vacuum, which would release their pungent smell throughout your home.</p></p>                </section><section class="howto-block">                    <h3>3. Spray on interior windowsills</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/XVFmmEeBxtEoJoGSX6xtu4.jpg"                                        alt="A close up of a pair of hands holding a small glass bottle of essential oil, using the pipette to pick up some oil"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/XVFmmEeBxtEoJoGSX6xtu4.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Getty Images)</div></figure>                    <p><p>As these overwintering stink bugs wake up inside your walls, they crawl toward daylight — your windows. A great deterrent is a DIY peppermint spray. </p><p>To make this, <strong>spray peppermint oil or clove oil (10-15 drops mixed with water will do) on the inside of your windowsills and baseboards</strong> to stop them from entering your main living spaces. </p><p>To ensure it doesn't stain any surfaces, test the<strong> spray on a small area first</strong>.<strong> </strong>The mixture stays effective for several weeks when stored in a cool, dark place. And <strong>reapply every two weeks</strong> as they continue waking throughout summer.</p></p>                </section><div class="product"><a data-dimension112="bb6d34b6-f733-4eed-a281-2f15ce8ba2a8" data-action="Deal Block" data-label="This clove essential oil is 100% pure and can be diluted to use in a spray to prevent stink bugs from invading your home. The 4 fl oz bottle comes with a dropper for ease of use." data-dimension48="This clove essential oil is 100% pure and can be diluted to use in a spray to prevent stink bugs from invading your home. The 4 fl oz bottle comes with a dropper for ease of use." data-dimension25="$8" href="https://www.amazon.com/Brooklyn-Botany-Clove-Essential-Oil/dp/B09KVJ3N7W/ref=sr_1_6?" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1609px;"><p class="vanilla-image-block" style="padding-top:99.94%;"><img id="GAhLt5herPQdHr8BMPFkYH" name="Clove essential oil" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/GAhLt5herPQdHr8BMPFkYH.jpg" mos="" align="middle" fullscreen="" width="1609" height="1608" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>This clove essential oil is 100% pure and can be diluted to use in a spray to prevent stink bugs from invading your home. The 4 fl oz bottle comes with a dropper for ease of use.<a class="view-deal button" href="https://www.amazon.com/Brooklyn-Botany-Clove-Essential-Oil/dp/B09KVJ3N7W/ref=sr_1_6?" target="_blank" rel="nofollow" data-dimension112="bb6d34b6-f733-4eed-a281-2f15ce8ba2a8" data-action="Deal Block" data-label="This clove essential oil is 100% pure and can be diluted to use in a spray to prevent stink bugs from invading your home. The 4 fl oz bottle comes with a dropper for ease of use." data-dimension48="This clove essential oil is 100% pure and can be diluted to use in a spray to prevent stink bugs from invading your home. The 4 fl oz bottle comes with a dropper for ease of use." data-dimension25="$8">View Deal</a></p></div><section class="howto-block">                    <h3>4. Manage light spillage </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/6orRrHCd2eHMHQ753pT54P.jpg"                                        alt="A man opens the curtains on a beautiful sunny morning"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/6orRrHCd2eHMHQ753pT54P.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Getty)</div></figure>                    <p><p>Like moths, stink bugs exhibit positive phototaxis: essentially this means they are drawn to light. At night, <strong>close your blinds and curtains so indoor light doesn't shine out and pull bugs toward your windows</strong>. </p><p>This simple step prevents the overwintering stink bugs wandering inside your walls from being attracted to the glow of your living room or bedroom lights. </p><p>By blocking light spillage, you eliminate a major beacon that draws these groggy bugs from their hiding spots toward your main living spaces. Keep blinds closed during evening hours when stink bugs are most active.</p></p>                </section><section class="howto-block">                    <h3>5. Seal the perimeter now for autumn</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/bj6ZY7S2uhP45iQEuBQPha.jpg"                                        alt="Caulk gun sealing window base"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/bj6ZY7S2uhP45iQEuBQPha.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>The invasive stink bugs you see now are leaving, but come September, their children will try to crawl back into those exact same gaps. </p><p><strong>Use this summer weather to caulk your windows, repair damaged screens, and seal cracks around baseboards and vents</strong>. </p><p>This proactive defense is your ultimate weapon against the next generation of brown marmorated stink bugs trying to invade in fall. Inspecting your home now prevents a invasion later.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-ey6bqW"></div>                            </div>                            <script src="https://kwizly.com/embed/ey6bqW.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/home/stink-bugs-are-invading-homes-right-now-heres-the-scent-that-stops-them">Stink bugs are invading homes right now — here's the 'secret weapon' that stops them</a></li><li><a href="https://www.tomsguide.com/home/gardening/ant-hills-multiplying-how-to-destroy-the-colony-before-it-takes-over-your-yard">Ant hills multiplying? How to destroy the colony before it takes over your yard</a></li><li><a href="https://www.tomsguide.com/home/ladybugs-or-asian-beetles-heres-how-to-identify-whats-waking-up-in-your-walls">Ladybugs or Asian beetles? Here's how to identify what's waking up in your walls</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ I spotted fuzzy white mold on my houseplant soil— here's how I fixed it with a cupboard staple ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/i-spotted-fuzzy-white-mold-on-my-houseplant-soil-heres-how-i-fixed-it-with-a-storecupboard-staple</link>
                                                                            <description>
                            <![CDATA[ Stop white mold on houseplants with this simple kitchen spice trick, ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">5GkBHZNYvkxX8M6PgLSgo4</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/SnDC9nntaBhqc4i3rns6fL-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Mon, 15 Jun 2026 07:30:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Home]]></category>
                                                    <category><![CDATA[Gardening]]></category>
                                                    <category><![CDATA[Outdoors]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/SnDC9nntaBhqc4i3rns6fL-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[White fuzzy mold on houseplant]]></media:description>                                                            <media:text><![CDATA[White fuzzy mold on houseplant]]></media:text>
                                <media:title type="plain"><![CDATA[White fuzzy mold on houseplant]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/SnDC9nntaBhqc4i3rns6fL-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>I spent months watching white mold fuzz creep across the soil of my favorite houseplants. I tried everything: better drainage, less water, moving them to brighter spots. Nothing worked. Then I discovered that cinnamon has antifungal properties and decided to try it. </p><p>A simple dusting of ground cinnamon from my kitchen cupboard cleared the mold completely and it hasn't come back. I was skeptical at first. How could a spice work where everything else failed? But the science is straightforward: cinnamon contains compounds that actively suppress the fungi causing the problem. </p><p>After testing it on seven houseplants, I can confirm it does the trick. Here's exactly how to do it.</p><h2 id="why-cinnamon-actually-works">Why cinnamon actually works</h2><p>Cinnamon contains cinnamaldehyde and eugenol, which are natural compounds with proven antifungal properties. These chemicals create a hostile surface for the common molds that appear on houseplant soil, particularly Penicillium and Trichoderma, which show up as white or gray-green fuzz.</p><p>The key is that<strong> cinnamon works as a preventative layer</strong>, not a cure-all. It slows mold growth while you fix the underlying problem — usually overwatering or poor air circulation. </p><p>In my experience, once you address those issues and apply cinnamon, the mold doesn't return. I reapply lightly every month as a maintenance step, particularly on plants in shadier corners of my home where moisture lingers longer.</p><section class="howto-block">                    <h3>Remove the mold and apply cinnamon</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/3jpYz7rFE9paHbwpD59WHi.jpg"                                        alt="Dusting cinnamon on houseplant to prevent fuzzy mold"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/3jpYz7rFE9paHbwpD59WHi.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Start by scraping away the top layer of soil where you can see the white fuzz. <strong>Use a small spoon or knife to gently remove the moldy layer</strong>, just the top 5-10mm, and <strong>throw it away</strong>. Don't compost it.</p><p>Let the soil surface dry completely for a few hours. Once dry, <strong>sprinkle ground cinnamon over the soil surface</strong>. A lighter dusting is much better than dumping it on. More cinnamon doesn't mean better results. In fact, too much creates a hydrophobic layer that actually repels water.</p><p>Keep the cinnamon away from the plant's stem or crown. Leave a small gap around the base so the spice doesn't irritate tender tissue. Then <strong>water from the bottom of the pot for the next two or three waterings </strong>so you don't wash the cinnamon away immediately.</p></p>                </section><h2 id="the-mistakes-i-made-so-you-don-t">The mistakes I made (so you don't)</h2><p>My first attempt failed because I applied cinnamon to wet soil. It trapped moisture and made things worse. Wait until the surface is completely dry before dusting.</p><p>I also used too much cinnamon initially, creating a thick layer that repelled water instead of letting it through. A light coating is all you need</p><p>Finally, I realized cinnamon alone wasn't enough. If your houseplant is in a dark corner with a saucer that stays wet constantly, cinnamon won't solve the problem. You have to fix the watering habits and light situation first. Cinnamon is the finishing touch, not the full solution.</p><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-OozAqW"></div>                            </div>                            <script src="https://kwizly.com/embed/OozAqW.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/home/gardening/9-houseplant-care-habits-that-are-actually-killing-your-plants">I stopped making these 9 plant ‘care’ mistakes and now my plants are thriving</a></li><li><a href="https://www.tomsguide.com/home/gardening/this-tiny-pest-causes-the-biggest-damage-to-your-plants-heres-how-to-stop-thrips">This tiny pest causes the biggest damage to your plants — here's how to stop thrips</a></li><li><a href="https://www.tomsguide.com/home/stop-misting-your-succulents-its-drying-them-out">Your succulent is dying of thirst every time you mist it — do this instead</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ This hidden Google Maps feature is a great way to learn about your local area — here's how it works ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/computing/mobile-apps/this-hidden-google-maps-feature-is-a-great-way-to-learn-about-your-local-area-heres-how-it-works</link>
                                                                            <description>
                            <![CDATA[ Google Maps has a hidden feature that lets you time  travel using old Street View photos. Here's how it works ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">nnq7icr7bfaDoX4RLFqaW4</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/ans9YsiLDKLzznpGZwUo5i-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Mon, 15 Jun 2026 06:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Mobile Apps]]></category>
                                                    <category><![CDATA[Computing]]></category>
                                                    <category><![CDATA[Software]]></category>
                                                                                                <author><![CDATA[ tom.pritchard@futurenet.com (Tom Pritchard) ]]></author>                    <dc:creator><![CDATA[ Tom Pritchard ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/biCewUkKfSA6QnT2HxVc3f.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/ans9YsiLDKLzznpGZwUo5i-1280-80.jpg">
                                                            <media:credit><![CDATA[Tom&#039;s Guide/ Google]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Google Maps logo on an iPhone 17 Pro]]></media:description>                                                            <media:text><![CDATA[Google Maps logo on an iPhone 17 Pro]]></media:text>
                                <media:title type="plain"><![CDATA[Google Maps logo on an iPhone 17 Pro]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/ans9YsiLDKLzznpGZwUo5i-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>There are a lot of great features in <a href="https://www.tomsguide.com/news/how-to-use-google-maps">Google Maps</a>, and a lot of them have absolutely nothing to do with navigation. One of those features is one you may not know about, or forgot was even possible — and it's designed to help you learn more about different areas throughout history. I am, of course, talking about Street View's "time travel" feature.</p><p>Everyone knows Street View is a great way to get a view of different spots from street level, but it is possible to give you a glimpse at history as well. In the past you stuck with the last load of Street View photos that Google's roving band of camera-laden cars had taken, but that changed a few years back when archived photos were added to Google Maps. </p><p>This essentially lets you travel back through time and see back into the past through the portal of Google Street view. I've found that this is a really great way to learn about the area around you, and just how much things have changed since Street View first launched.  Here's how to time travel through Google Maps.</p><section class="howto-block">                    <h3>1. Open Google Maps</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/osC2a3N9bo7GAJudZBnsVn.jpg"                                        alt="how to time travel in google maps"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/osC2a3N9bo7GAJudZBnsVn.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Future)</div></figure>                    <p><p>First up you need to open up the Google Maps app on your phone, and navigate to the area you want to see</p></p>                </section><section class="howto-block">                    <h3>2. Open layers and select Street View</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/m9poXNPWzW8Wb4DYsp7ien.jpg"                                        alt="how to time travel in google maps"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/m9poXNPWzW8Wb4DYsp7ien.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Future)</div></figure>                    <p><p>Next up you'll need to <strong>open the layers menu</strong>, which is the odd-looking double-square in the right-hand corner.  Then <strong>select the Street View option</strong> on the bottom left.</p></p>                </section><section class="howto-block">                    <h3>3. Tap the street you want to see in Street View</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/gDoehozVPz8arz9xJyEJXn.jpg"                                        alt="how to time travel in google maps"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/gDoehozVPz8arz9xJyEJXn.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Future)</div></figure>                    <p><p>Street View layers the map with a lattice of blue lines, most of which follow the roadways. These are areas that have been covered by Street View cars. If the street is gray, then it's never been covered by Google Maps' drivers.</p><p><strong>Tap the spot you want to see</strong> from street level to continue.</p></p>                </section><section class="howto-block">                    <h3>4. Pick your period of history</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/C8BdmPswZtgrajrQN4RZin.jpg"                                        alt="how to time travel in google maps"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/C8BdmPswZtgrajrQN4RZin.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Future)</div></figure>                    <p><p>At the bottom of the screen you'll see a menu with a blue link that says <strong>See more dates</strong>. Tap this, and Google Maps will show a bunch of different months and years that the Street View gallery was updated.</p><p>You can pull up this menu to expand it if you prefer, but otherwise you simply need to scroll through the gallery from left to right and pick the month you want to see.</p></p>                </section><section class="howto-block">                    <h3>5. </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/6biwJZsyCGbe3Eaxe6CSin.jpg"                                        alt="how to time travel in google maps"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/6biwJZsyCGbe3Eaxe6CSin.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Future)</div></figure>                    <p><p>The best part about Time Travel on Google Maps is that you can navigate just as freely as you can with the current iteration of street view. Tap on the virtual world to move around or, alternatively, use the on-screen arrows instead. </p><p>Just be aware that if you end up in a spot that doesn't have the right historical Street View photos, you'll be pushed forward in time to the next available year. This could be a small jump of just a few months, but depending on the location it could be several years. So make sure to keep an eye on the Street View gallery at the bottom to keep track of the year you're visiting.</p></p>                </section><p>There you have it, that's how you time travel in Google Maps, and see different parts of the world throughout history. Or throughout the period that Street View has been active, at the very least. In this case, we can see that the Central London street that houses Future Publishing's London office (Westbourne Terrace) hasn't actually changed all that much over the past 18 years, but other locations may see much more impressive transformations. Which is the biggest benefit of using time travel in the first place.</p><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/7-things-the-leaks-got-wrong-about-apples-wwdc-2026-keynote">7 things the leaks got wrong about Apple’s WWDC 2026 keynote</a></li><li><a href="https://www.tomsguide.com/phones/i-tried-ios-27-clean-up-vs-galaxy-ai-photo-assist-in-a-7-round-test-and-i-was-surprised-with-how-close-it-was">I pitted iOS 27 Clean Up vs Galaxy AI in a 7-round eraser showdown — Apple makes it close, but here's where it stumbles</a></li><li><a href="https://www.tomsguide.com/phones/iphones/your-iphone-alarm-and-ringtone-dont-have-to-share-a-volume-slider-anymore-heres-how-to-split-them-in-ios-27">Your iPhone alarm and ringtone don’t have to share a volume slider anymore — here’s how to split them in iOS 27</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ This clever iOS 27 Wallet upgrade means you'll never have to carry a physical loyalty card again ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/iphones/the-clever-ios-27-wallet-upgrade-that-means-you-will-never-have-to-carry-a-physical-loyalty-card-again</link>
                                                                            <description>
                            <![CDATA[ With iOS 27, you can add loyalty cards, membership cards, and gift cards to Apple Wallet. Here’s how. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">h8kBjrScoiQRZxjkaNhwfV</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/VTdfcizPdawtmWcoMNbmNG-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sun, 14 Jun 2026 10:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[iPhones]]></category>
                                                    <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/VTdfcizPdawtmWcoMNbmNG-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[iOS 27 logo on iPhone]]></media:description>                                                            <media:text><![CDATA[iOS 27 logo on iPhone]]></media:text>
                                <media:title type="plain"><![CDATA[iOS 27 logo on iPhone]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/VTdfcizPdawtmWcoMNbmNG-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Carrying around a fat stack of plastic loyalty cards is officially a thing of the past thanks to a brilliant new feature in iOS 27. </p><p>You can now scan any physical card — whether that's loyalty cards, membership cards, gift cards, etc — and save it directly to your iPhone. The feature uses the Camera app's Siri mode and Visual Intelligence to recognize barcodes and QR codes instantly. </p><figure class="inline-layout"><fw-embed-feed channel="toms_guide" playlist="gK4rJ8" mode="row" player_placement="bottom-right"></fw-embed-feed></figure><p>Once added to Wallet, you can present the pass as a barcode or QR code without carrying the physical card.</p><p>If you want to test it now, the <a href="https://www.tomsguide.com/phones/iphones/wwdc-2026-how-to-install-the-ios-27-developer-beta-right-now">iOS 27 developer beta</a> is available to download for users now, as long as you've registered. Here's how to do it. </p><section class="howto-block">                    <h3>How to create your own Apple Wallet passes</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/cWEhRGuhqxKYAaDtq4JBka.jpg"                                        alt="A close up image of the Apple Wallet app"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/cWEhRGuhqxKYAaDtq4JBka.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p><strong>Open the Apple Wallet app</strong> on your iPhone. Next, <strong>tap the (+) button</strong> in the top corner and <strong>select "Create a Pass"</strong> from the menu.</p><p>If you have an<strong> iPhone 15 Pro or newer</strong>,<strong> you can use the Camera app's Siri/Visual Intelligence mode to scan the barcode</strong> or QR code on your physical card. The app recognizes the code automatically and extracts the information. </p><p>If you have an older iPhone, you'll need to manually enter the barcode number and card details instead.</p><p>After scanning or entering your card information, <strong>choose a template that matches your card type</strong>: Standard, Membership, or Event. <strong>Customize the colors and details </strong>to match your card, then <strong>save it to Wallet</strong>. </p><p>The pass is now ready to use. You can present the digital barcode or QR code directly from Apple Wallet or Apple Watch without carrying the physical card.</p><p>If your card doesn't scan properly even on a compatible device, you can still manually type in the barcode number and card details to create the pass.</p></p>                </section><h2 id="what-else-is-coming-to-apple-wallet">What else is coming to Apple Wallet?</h2><p>Beyond custom passes, Apple Wallet is getting a few other notable upgrades that make the app much more useful. </p><p>All passes now feature a cleaner, enhanced design with better background images and detailed information tiles. Hotel digital keys are also more functional, displaying your trip details and activity access right on the pass. </p><p>To make the app more versatile, Apple also added support for four new barcode types (EAN-13, Code 39, Codabar, and ITF), while also expanding its built-in order tracking to Australia and Canada.</p><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-Xrmd0O"></div>                            </div>                            <script src="https://kwizly.com/embed/Xrmd0O.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/your-iphone-alarm-and-ringtone-dont-have-to-share-a-volume-slider-anymore-heres-how-to-split-them-in-ios-27">Your iPhone alarm and ringtone don’t have to share a volume slider anymore — here’s how to split them in iOS 27</a></li><li><a href="https://www.tomsguide.com/phones/iphones/check-your-iphone-right-now-3-privacy-settings-you-need-to-turn-off-immediately">Check your iPhone right now: 3 privacy settings you need to change immediately</a></li><li><a href="https://www.tomsguide.com/phones/iphones/apple-buried-a-genius-browsing-feature-in-your-iphone-settings-and-its-genuinely-useful">Apple fixed the single most frustrating thing about browsing on iPhone — you just have to turn it on</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ I tried the viral TikTok hack that turns your phone into a 3D hologram — here's how to do it yourself ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/you-can-turn-your-phone-into-a-hologram-projector-in-under-5-minutes-heres-how</link>
                                                                            <description>
                            <![CDATA[ Build a DIY hologram projector using your phone and one common household item. You'll be surprised at the results. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">FgHLcdsociRMTCPqt93FHf</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/ggpD2RAPs4CditYfvh3VG7-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 13 Jun 2026 11:46:40 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/ggpD2RAPs4CditYfvh3VG7-1280-80.jpg">
                                                            <media:credit><![CDATA[reddnea/TikTok/Tom&#039;s Guide]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Screenshot of TikTok video showing DIY hologram projector using your phone and a rectangular glass dish.]]></media:description>                                                            <media:text><![CDATA[Screenshot of TikTok video showing DIY hologram projector using your phone and a rectangular glass dish.]]></media:text>
                                <media:title type="plain"><![CDATA[Screenshot of TikTok video showing DIY hologram projector using your phone and a rectangular glass dish.]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/ggpD2RAPs4CditYfvh3VG7-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>I kept seeing this trick pop up online: <a href="https://www.tiktok.com/@reddnea/video/7635771227663125791">people projecting 3D holograms from their phones</a> using nothing but a glass dish and plastic. I thought it had to be fake, edited in post, the kind of internet hack that looks great but doesn't actually work in real life. </p><p>I decided to try it myself just to see. <strong>Five minutes later, I had a working 3D hologram that actually looked magical</strong> with the lights turned off. It's genuinely impressive how well this works. It's not a <em>true </em>hologram. It's technically an optical illusion, but it looks close enough that it's immediately satisfying. </p><p>Better yet, it takes minutes to set up and costs almost nothing. As silly as it might be, this is easily the most fun you can have with your phone and some household items. Here's how it's done. </p><h2 id="what-you-ll-need">What you'll need</h2><ul><li><strong>Your smartphone:</strong> The brighter, the better. Any phone will do, but a device with high peak brightness will make the hologram pop.</li><li><strong>A clear glass dish:</strong> Snag a square or rectangular container roughly the size of your phone. Skip the round bowls — flat edges are the secret to a crisp reflection.</li><li><strong>Clear plastic film:</strong> You don't need anything fancy here. An old overhead transparency sheet, a clear plastic product packaging lid, or even a plastic screen protector works perfectly.</li><li><strong>Tape and scissors:</strong> Just standard household tape to lock your DIY rig together.</li></ul><section class="howto-block">                    <h3>How to build your DIY hologram projector</h3>                                        <p><p><strong>Start by cutting your clear plastic sheet into a rectangle</strong> that roughly matches the size of your phone screen.</p><p>Next, you need to <strong>bend the plastic at approximately a 45-degree angle</strong>. Take your time here — this specific slope is the magic secret that creates the floating reflection.</p><p>Once you have your angle, <strong>place</strong> <strong>the plastic inside the glass dish and secure it with tape </strong>at the top and bottom edges. Double-check that it’s stable so it doesn't collapse later. Now, simply<strong> turn</strong> <strong>the glass dish upside down on your table</strong> so the plastic slopes down toward your viewing position.<br><br><strong>Find a 3D hologram video online </strong>(just search "3D hologram video" on YouTube to find thousands of options) and <strong>set it to full screen</strong>. Once you've selected your video, carefully <strong>place</strong> <strong>your phone screen-down flat on top of the inverted dish</strong>, making sure it’s perfectly centered over the angled plastic inside.</p><p>Now enjoy watching the illusion come to life! The darker the room the better the hologram will project, so make sure to cut the lights and close the curtains. </p></p>                </section><section class="howto-block">                    <h3>Why this trick actually works</h3>                                        <p><p>When light from your phone screen hits the angled transparent plastic at 45 degrees, it reflects toward your eyes. But because the plastic is clear, you can also see through it to the background behind the dish. </p><p>Your brain combines the reflection (the video image) with the background you see through the plastic, and perceives the image as floating in mid-air between them.</p><p>It's the same principle used in 19th-century parlor tricks and modern concert projections where performers appear to perform alongside holograms. The only difference is scale — yours is tiny and created with household items instead of professional equipment.</p><p>The key is the 45-degree angle. Any other angle and the reflection doesn't work properly. The angle is what directs the light from your phone screen directly into your eyes while still letting you see the background.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-Xj3Mae"></div>                            </div>                            <script src="https://kwizly.com/embed/Xj3Mae.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/check-your-iphone-right-now-3-privacy-settings-you-need-to-turn-off-immediately">Check your iPhone right now: 3 privacy settings you need to change immediately</a></li><li><a href="https://www.tomsguide.com/phones/your-smartphone-has-hidden-settings-that-protect-your-hearing-heres-how-to-enable-them">Your smartphone has hidden settings that protect your hearing — here's how to enable them</a></li><li><a href="https://www.tomsguide.com/phones/i-discovered-a-hidden-android-feature-that-shows-which-apps-are-watching-me">I discovered a hidden Android feature that shows which apps are watching me, and what it revealed was startling. Here's how to take back control of your phone</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ 'I can't remember the last time I cleaned this' — 5 hidden dirt zones in your house and how to clean them ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/i-cant-remember-the-last-time-i-cleaned-this-5-hidden-dirt-zones-in-your-house-and-how-to-clean-them</link>
                                                                            <description>
                            <![CDATA[ Mold, grime, and bacteria accumulate in these five notorious spot around the home. Here's how to clean them. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">5UPoLRqCQzQuEnbDD6kQwK</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/GrHXaJiWz24V5HeohWts4N-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Sat, 13 Jun 2026 07:30:00 +0000</pubDate>                                                                                                                                <updated>Tue, 16 Jun 2026 12:03:37 +0000</updated>
                                                                                                                                            <category><![CDATA[Home]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/GrHXaJiWz24V5HeohWts4N-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[cleaning products in bucket for cleaning bathroom in front of toilet]]></media:description>                                                            <media:text><![CDATA[cleaning products in bucket for cleaning bathroom in front of toilet]]></media:text>
                                <media:title type="plain"><![CDATA[cleaning products in bucket for cleaning bathroom in front of toilet]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/GrHXaJiWz24V5HeohWts4N-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>We all think our homes are clean. We vacuum regularly, we wipe surfaces, we do laundry. But there are blind spots we look at every single day and completely overlook. Our readers proved this when over 1,000 people voted "I can't remember the last time I cleaned it" in response to our simple poll about <a href="https://www.tomsguide.com/home/how-to-clean-mold-from-bathroom-caulk-permanently-without-using-bleach">cleaning mold from caulk</a>. </p><p>That answer sparked a bigger realization: if everyone's forgetting about caulk, what <em>else</em> are we missing? The truth is, your home is full of forgotten zones where mold, grime, and bacteria thrive. </p><p>Many unassuming places in our home collect layers of hidden nastiness that go unnoticed for months or years. Fortunately, you can tackle all five of these zones today using things you already own. </p><section class="howto-block">                    <h3>1. Bathroom caulk </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/gR3z6cgsWjBAMcQGMTAr6E.jpg"                                        alt="Scrubbing mold from bathroom caulk"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/gR3z6cgsWjBAMcQGMTAr6E.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Bathroom caulk lines create the perfect environment for black mold. The constant moisture and humidity make silicone caulk a breeding ground for deep-seated mold that normal wiping won't touch. Most people notice the dark stains but assume they're surface-level dirt.</p><p><strong>Spray white vinegar directly onto the caulk lines and let it sit for 15-30 minutes </strong>to break down the mold. While that's working, <strong>mix baking soda with warm water to create a paste</strong>. Apply the paste over the vinegar-treated areas and use an old brush to work in. </p><p>The combination dissolves mold at the root without aggressive scrubbing. <strong>Rinse thoroughly and dry completely</strong>.</p><p>For stubborn stains that resist vinegar and baking soda, you can use hydrogen peroxide instead. This is also a better option if you have a marble bathroom as you should not use vinegar. </p></p>                </section><section class="howto-block">                    <h3>2. Washing machine rubber seal </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/sbGRRue2G8zPAVJ9rmQ6RU.jpg"                                        alt="Washing machine seal being cleaned "                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/sbGRRue2G8zPAVJ9rmQ6RU.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Front-loading washing machines trap standing water, hair, and detergent scum inside the rubber gasket folds. Over time, this creates a thick, musty layer of hidden slime that transfers onto your "clean" laundry and makes everything smell stale.</p><p><strong>Pull back the rubber folds and spray generously with a mixture of white vinegar and wate</strong>r (equal parts). <strong>Let it sit for 10 minutes to break down the buildup</strong>. </p><p>Then simply <strong>use a microfiber cloth to wipe away the loosened sludge</strong>. Work through all the folds thoroughly. Remember to <strong>run an empty hot water cycle with vinegar afterward</strong> to flush any remaining residue.</p></p>                </section><section class="howto-block">                    <h3>3. Bed pillows </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/GSBgMf89ymWocNHTNkjkYW.jpg"                                        alt="Yellow stains on pillow and mattress"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/GSBgMf89ymWocNHTNkjkYW.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Getty Images)</div></figure>                    <p><p>While you wash pillowcases regularly, the actual pillows absorb years of sweat, body oils, and dust mites. Over time, pillows yellow, flatten, and literally gain weight. You're sleeping on years of accumulated grime without realizing it.</p><p><strong>Wash two pillows together in the machine by adding a cup of baking soda alongside your standard detergent </strong>— the baking soda strips the yellowing and odors. </p><p>To restore fluffiness as they dry, tumble dry on low heat with tennis balls or wool dryer balls. You'll be shocked at the difference.</p></p>                </section><section class="howto-block">                    <h3>4. Toothbrush holder</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/bhosHK5YE4v4UTCTYk82N9.jpg"                                        alt="Assemble electric toothbrush"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/bhosHK5YE4v4UTCTYk82N9.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p>Water from wet toothbrushes pools at the very bottom of holders or cups, creating a stagnant, dark environment for black mold and bacteria. This happens right where you keep your mouth-cleaning tools. </p><p><strong>Submerge the entire holder in warm water and dish soap, and give it a good wash</strong>. If it's particularly grimy, you could soak the holder overnight in a solution of one part bleach to nine parts water, just make sure to thoroughly rinse away any residue. </p><p>For narrow holders where mold hides in the bottom ring,<strong> use an old toothbrush or bottle brush dipped in white vinegar to scrub the interior walls</strong>.</p></p>                </section><section class="howto-block">                    <h3>5. Shower curtain </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/9Ca7PbPbSx5okcwwuZidRX.jpg"                                        alt="Blue and white shower curtain"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/9Ca7PbPbSx5okcwwuZidRX.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Shower curtains sit in standing water at the bottom where they contact the bathtub. This constant moisture creates the ideal breeding ground for black mold and mildew, especially in the folds and creases. Most people never clean the curtain itself, just replace it when it gets visibly moldy.</p><p><strong>Soak the entire curtain in hot water mixed with one cup of white vinegar. Let it sit for 30 minutes</strong> to dissolve the mold buildup. For stubborn stains, <strong>spray the affected areas with undiluted vinegar and let sit another 15 minutes</strong>. This should loosen the mold. Then thoroughly rinse. </p><p><strong>Hang to dry completely before rehanging</strong>. If mold is severe, you can wash the curtain in the machine on a gentle cycle with vinegar instead of detergent.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-Xrm4MO"></div>                            </div>                            <script src="https://kwizly.com/embed/Xrm4MO.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/home/shower-glass-how-to">Stop scrubbing your shower glass the hard way — these 3 household items remove limescale instantly</a></li><li><a href="https://www.tomsguide.com/home/how-to-keep-your-shower-curtain-mold-free">I recommend these 5 easy tips to keep your shower curtain mold-free</a></li><li><a href="https://www.tomsguide.com/home/sticky-cabinets-cleaners-say-these-3-ordinary-items-fix-it-better-than-anything-else">Sticky cabinets? Cleaners say these 3 ordinary items fix it better than anything else</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ How to watch Women’s T20 World Cup 2026: FREE cricket live streams, fixtures & results ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/sports/watch-womens-t20-world-cup-2026-free-cricket-live-streams-fixtures</link>
                                                                            <description>
                            <![CDATA[ All the ways to watch Women’s T20 World Cup live streams 2026 online — including for FREE — as New Zealand defend their crown in England. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">LaxvsGbMs3jd62diZ7w7sK</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/fBbFawtyDC4UMeBtXYZcuf-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Fri, 12 Jun 2026 14:00:00 +0000</pubDate>                                                                                                                                <updated>Thu, 25 Jun 2026 12:43:14 +0000</updated>
                                                                                                                                            <category><![CDATA[Sports]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Adam Marshall ]]></dc:creator>                                                                                                        <dc:description><![CDATA[ &lt;p&gt;Adam was the Content Director of Subscriptions and Services at Future, meaning that he oversaw many of the articles the publisher produces about antivirus software, VPN, TV streaming, broadband and mobile phone contracts - from buying guides and deals news, to industry interest pieces and reviews.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;p&gt;Having graduated with a degree in Law, Adam started his life as a communicator with five years as a lawyer before retraining as a writer. He completed his NCTJ Diploma at the London School of Journalism in 2012 and hasn&#039;t looked back since.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;p&gt;Adam quickly established his authority around the safeguarding and championing of his readers&#039; interests, after starting his career at consumer watchdog Which?. There he developed an expertise in cybersecurity and promoting safe use of the internet, before heading to Future in 2016 and applying his editorial nous to the dizzying world of virtual private networks. From there, he helped establish TechRadar as a leading voice in consumer and business VPNs, helping to demystify their uses and help his audience make the best &amp;nbsp;buying decisions they can.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;p&gt;Adam can still be dusting his keyboard off to write articles for the likes of TechRadar, T3 and Tom&#039;s Guide.&lt;/p&gt; ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/fBbFawtyDC4UMeBtXYZcuf-1280-80.jpg">
                                                            <media:credit><![CDATA[JUSTIN TALLIS / AFP via Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Team captains for each team pose together with the trophy in front of a London cityscape ahead of the Women&#039;s T20 World Cup 2026 cricket.]]></media:description>                                                            <media:text><![CDATA[Team captains for each team pose together with the trophy in front of a London cityscape ahead of the Women&#039;s T20 World Cup 2026 cricket.]]></media:text>
                                <media:title type="plain"><![CDATA[Team captains for each team pose together with the trophy in front of a London cityscape ahead of the Women&#039;s T20 World Cup 2026 cricket.]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/fBbFawtyDC4UMeBtXYZcuf-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Watch the Women’s T20 World Cup 2026 live streams  as the 12 top T20 nations in women's cricket descend on England across June and July seeking to emulate 2024 winners New Zealand as the world champions. </p><p>Follow our guide below for where to <strong>watch Women’s T20 World Cup live streams 2026 from anywhere </strong><a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>with a VPN</strong></a>.</p><div  class="fancy-box"><div class="fancy_box-title">Women’s T20 World Cup live stream 2026: TV channels, dates</div><div class="fancy_box_body"><p class="fancy-box__body-text">Women’s T20 World Cup 2026 live streams take place <strong>from June 12 to July 5, 2026</strong><br><strong>• FREE STREAMS — </strong><a data-analytics-id="inline-link" href="https://www.primevideo.com/" target="_blank" rel="nofollow"><strong>Prime Video</strong></a><strong> (AUS) / </strong><a data-analytics-id="inline-link" href="https://www.icc-cricket.com/icc-tv" target="_blank" rel="nofollow"><strong>ICC.tv</strong></a><strong> (select countries)</strong><br><strong>• U.S. —</strong> Willow via <a data-analytics-id="inline-link" href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow"><strong>Sling TV</strong></a><br><strong>• U.K. —</strong> <a data-analytics-id="inline-link" href="https://www.sky.com/tv/sports" target="_blank" rel="nofollow">Sky Sports</a><br><strong>• India —</strong>  <a data-analytics-id="inline-link" href="https://www.hotstar.com/in" target="_blank" rel="nofollow">JioHotstar</a><strong></strong><br><strong>• Watch anywhere — try </strong><a data-analytics-id="inline-link" href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN 100% risk free</strong></a></p></div></div><p>While England are hosts and world No.1 nation Australia will start any women's cricket tournament as favorites, it's the White Ferns who come into this year's world cup as champions after Amelia Kerr and co pulled off a great upset in the U.A.E. two years ago. But the Kiwis made a slow start to their defence with two losses from two and will likely need a big win against the impressive-looking England to have any hope of progressing</p><p>Harmanpreet Kaur's India have also had their struggles despite starting as many pundits' picks to follow in the footsteps of the men who won their <a href="https://www.tomsguide.com/entertainment/sports/watch-t20-world-cup-2026-anywhere-free">T20 World Cup</a> earlier this year. The were beaten convincingly by South Africa and will now need to defeat Australia in order to make the top two in Group A. The beauty of this cricket format, of course, is that often all it takes is one player having a good day to throw up a surprise result. So don't count out West Indies (Hayley Matthews) or Sri Lanka (Chamari Athapaththu). either.</p><p>Bangladesh, Ireland, Netherlands, Pakistan and Scotland make up the dozen teams starting the tournament, with two groups of six ahead of semi-finals and final. Watch along with our advice on how to <strong>stream Women’s T20 World Cup 2026 online</strong> and <a href="https://www.tomsguide.com/news/how-to-watch-cricket-live-streams-test-matches-odis-t20-from-anywhere" target="_blank">watch cricket live streams</a> from anywhere.</p><div class="product star-deal"><a data-dimension112="7c718417-7f4c-44ba-8b1f-e1e7dfdafe35" data-action="Star Deal Block" data-label="🏏 Stream World Cup 2026 on Willow via Sling TV" data-dimension48="🏏 Stream World Cup 2026 on Willow via Sling TV" href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:153px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="ie7Ve2rcKKLamyL2oD4Zjn" name="WHW7jaD5qhRVmiX3C2iBmN-153-80.jpg" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/ie7Ve2rcKKLamyL2oD4Zjn.jpg" mos="" align="middle" fullscreen="" width="153" height="153" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p><strong>🏏 Stream World Cup 2026 on Willow via </strong><a href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow" data-dimension112="7c718417-7f4c-44ba-8b1f-e1e7dfdafe35" data-action="Star Deal Block" data-label="🏏 Stream World Cup 2026 on Willow via Sling TV" data-dimension48="🏏 Stream World Cup 2026 on Willow via Sling TV" data-dimension25=""><strong>Sling TV</strong></a></p><p>Prices start from <a href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow"><strong>only $10/month</strong></a> making it a great way to watch live cricket action in the U.S..<a class="view-deal button" href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow" data-dimension112="7c718417-7f4c-44ba-8b1f-e1e7dfdafe35" data-action="Star Deal Block" data-label="🏏 Stream World Cup 2026 on Willow via Sling TV" data-dimension48="🏏 Stream World Cup 2026 on Willow via Sling TV" data-dimension25="">View Deal</a></p></div><h2 id="watch-women-s-t20-world-cup-2026-for-free">Watch Women’s T20 World Cup 2026 for free</h2><p><strong>Every Women's T20 World Cup match is free-to-air via </strong><a href="https://www.primevideo.com/" target="_blank" rel="nofollow"><strong>Prime Video</strong></a><strong> in Australia and </strong><a href="https://www.icc-cricket.com/icc-tv" target="_blank" rel="nofollow"><strong>ICC.tv</strong></a><strong> in select countries.</strong></p><p>Down Under, <a href="https://www.primevideo.com/" target="_blank" rel="nofollow"><strong>Prime Video</strong></a> has the exclusive rights to the tournament. Though that usually requires a subscription, the streaming service <strong>will host all 33 matches at the Women's T20 World Cup for free to anyone with an Amazon account</strong>.</p><p>To watch on ICC.tv, <a href="https://www.icc-cricket.com/news/what-s-on-icc-tv?" target="_blank" rel="nofollow">the full list of countries is available here</a>, but none of the U.S., U.K., Australia, New Zealand, India, or South Africa are included — so read on for how to access the tournament in those countries.</p><p>If ICC.tv is available where you live, simply <a href="https://www.icc-cricket.com/account" target="_blank" rel="nofollow"><strong>register for an account</strong></a> and you're good to go.</p><p>Select matches, including both semi-finals and the final, will also be available for free in the U.K. via the Sky Sports app — <a href="https://www.ecb.co.uk/news/4516266/how-to-watch-and-follow-the-icc-womens-t20-world-cup" target="_blank" rel="nofollow">this handy guide tells you which ones</a>. All you need is a free Sky ID. </p><p><strong>Away from home?</strong> <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>Use a VPN</strong></a> to watch the Women's T20 World Cup for free — we’ll show you how below.</p><h2 class="article-body__section" id="section-how-to-watch-women-s-t20-world-cup-2026-from-anywhere"><span>How to watch Women’s T20 World Cup 2026 from anywhere</span></h2><p>Away from home at the moment and blocked from watching this year's Women’s T20 World Cup on your usual subscription?</p><p>You can still tune in to the cricket live thanks to the wonders of a <a href="https://www.tomsguide.com/best-picks/best-vpn">VPN</a> (Virtual Private Network). The software allows your devices to appear as if they're back in your home country regardless of where in the world you are. So ideal for viewers away on vacation or on business. Our favorite is <a href="https://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=33286" target="_blank" rel="nofollow">NordVPN</a>. It's the best on the market:</p><div class="product"><a data-dimension112="02b88666-a96c-4068-941d-a80f3b99ecb8" data-action="Deal Block" data-label="NordVPN deal: get 3 months FREE" data-dimension48="NordVPN deal: get 3 months FREE" href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:800px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="vALBz9LuPk5AhB3g6DbZvf" name="Nord-VPN_deal" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/vALBz9LuPk5AhB3g6DbZvf.jpg" mos="" align="middle" fullscreen="" width="800" height="800" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>🟩 <a href="https://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=33286" target="_blank" rel="nofollow" data-dimension112="02b88666-a96c-4068-941d-a80f3b99ecb8" data-action="Deal Block" data-label="NordVPN deal: get 3 months FREE" data-dimension48="NordVPN deal: get 3 months FREE" data-dimension25=""><strong>NordVPN deal: get 3 months FREE</strong></a></p><p>Boasting super fast speeds, great features, streaming power and industry-leading security, <a href="https://www.tomsguide.com/reviews/nordvpn-review"><strong>NordVPN</strong> is our #1 VPN</a>.<br><br><strong>✅ 3 months extra free</strong><br><strong>✅ Up to 75% off the usual price</strong><br><strong>✅ 30-day money-back guarantee</strong><br><br>Use NordVPN to unblock your usual streaming service and watch Women’s T20 World Cup 2026 live with this <em>exclusive </em>deal. <a class="view-deal button" href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow" data-dimension112="02b88666-a96c-4068-941d-a80f3b99ecb8" data-action="Deal Block" data-label="NordVPN deal: get 3 months FREE" data-dimension48="NordVPN deal: get 3 months FREE" data-dimension25="">View Deal</a></p></div><h2 class="article-body__section" id="section-how-to-watch-women-s-t20-world-cup-2026-live-streams-in-the-u-s"><span>How to watch Women’s T20 World Cup 2026 live streams in the U.S.</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="UHZYAaZCSyV7FkHxYGxtJ6" name="TG_US_Flag_1920_400_shutterstock.jpg" alt="US flag" src="https://cdn.mos.cms.futurecdn.net/UHZYAaZCSyV7FkHxYGxtJ6.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>For cricket fans in the U.S., streaming service <strong>Willow TV</strong> will be showing the Women’s T20 World Cup 2026  across its linear and digital platforms.</p><p>Willow is available from a number of cable providers including Dish, Spectrum, Xfinity, Verizon Fios and more, or as its own standalone subscription service.</p><p>You can also access Willow via <a href="https://www.tomsguide.com/news/sling-tv"><strong>Sling TV</strong></a>, thanks to an unbeatable deal for cricket fans. Its Desi Binge Plus and Dakshin Flex plans (among other Indian-language plans) get you a Willow TV subscription <a href="https://sling-tv.pxf.io/c/221109/3865091/14334?subId1=hawk-custom-tracking&param1=hearst_paid" target="_blank" rel="nofollow">from<strong> just $10/month</strong></a>, with no need to sign up to the Blue or Orange bundles first. And no long contracts either.</p><p>Willow is where you'll find the majority of all the cricket live streams in the U.S. which means a Sling TV subscription has your cricket watching needs covered. </p><p>Not at home? You need <a href="https://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=33286" target="_blank" rel="nofollow"><strong>NordVPN</strong></a> to watch as normal.</p><h2 class="article-body__section" id="section-how-to-watch-women-s-t20-world-cup-2026-live-streams-in-the-u-k"><span>How to watch Women’s T20 World Cup 2026 live streams in the U.K.</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="ttCSpj8r9kHj68j7NhsBL9" name="TG_British_Flag_1920_400_shutterstock.jpg" alt="British flag" src="https://cdn.mos.cms.futurecdn.net/ttCSpj8r9kHj68j7NhsBL9.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>The Women’s T20 World Cup 2026 is being shown in its entirety on <a href="https://www.sky.com/tv/sports" target="_blank" rel="nofollow"><strong>Sky Sports</strong></a> and its dedicated Sky Sports Cricket channel in the U.K. </p><p>That means you'll also be able to watch via its Sky Go app on mobiles, laptops and games consoles — deals start from £22/month if you're an existing customer. Another option is via a <a href="https://www.nowtv.com/sports-purchase" target="_blank" rel="nofollow">Now Sports</a> membership, with prices from £14.99/day.</p><p>As we've mentioned above, a decent chunk of <strong>free matches available to watch in the U.K.</strong>, too. For starters, the England vs Sri Lanka tournament opener will be shown on <a href="https://www.youtube.com/@SkySports" target="_blank" rel="nofollow">YouTube</a>, while <strong>all 12 home nations group matches plus the semi-finals and final will be available to watch without a subscription</strong> on the Sky Sports app (as well as on Sky Mix on TV).</p><p>If you're not in the U.K. right now but already subscribe to one of these services, use <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN</strong></a> to watch the 2026 Women’s T20 World Cup as if you were back at home.</p><h2 class="article-body__section" id="section-how-to-watch-women-s-t20-world-cup-2026-live-streams-in-india"><span>How to watch Women’s T20 World Cup 2026 live streams in India</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="RxnPoqJK2DGj3YFRYTadon" name="TG-india-flag-1920x400.jpg" alt="A segment of the Indian flag" src="https://cdn.mos.cms.futurecdn.net/RxnPoqJK2DGj3YFRYTadon.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>Fans in India can watch this year's Women’s T20 World Cup on on <strong>Star Sports</strong> on TV and <a href="https://www.hotstar.com/in" target="_blank" rel="nofollow"><strong>JioHotstar</strong></a> digitally.</p><p>Subscriptions to JioHotstar cost from just Rs. 79/month (around $0.85 USD), with the option to alternatively purchase an annual package for for Rs. 499 ($5.40 USD).</p><p>For fans outside of India, <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>use a reliable VPN</strong></a> to unblock your JioHotstar account and watch all the action just as if you're at home.</p><h2 class="article-body__section" id="section-how-to-watch-women-s-t20-world-cup-2026-live-streams-in-australia"><span>How to watch Women’s T20 World Cup 2026 live streams in Australia</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="R4wb8TX7wmafWv7eBYfay3" name="TG_australia_Flag_1920_400_shutterstock.jpg" alt="Australia flag" src="https://cdn.mos.cms.futurecdn.net/R4wb8TX7wmafWv7eBYfay3.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>In Australia, <a href="https://www.amazon.com.au/prime-video/b?ie=UTF8&node=4835880051" target="_blank" rel="nofollow"><strong>Prime Video</strong></a>, courtesy of Amazon, is the home of the T20 Women's World Cup 2026.</p><p>As we've mentioned above, you would usually need to pay for a subscription to watch Prime Video, but the T20 Women's World Cup will be made available for free to anyone in Oz with an Amazon account.</p><p>A subscription costs AU$9.99/month or AU$79/year after a <a href="https://www.amazon.com.au/prime-video/b?ie=UTF8&node=4835880051" target="_blank" rel="nofollow"><strong>30-day FREE trial</strong></a> if you want to watch the other sport, TV shows and movies available on Prime Video.</p><p>If you're traveling outside Australia, you can still follow your usual T20 World Cup coverage by using one of the best VPN services, such as <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN</strong></a>.</p><h2 class="article-body__section" id="section-how-to-watch-women-s-t20-world-cup-2026-live-streams-in-new-zealand"><span>How to watch Women's T20 World Cup 2026 live streams in New Zealand</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="tfnLAqwXBHZL7w6SknDGyJ" name="TG_new_zealand_flag.jpg" alt="New Zealand flag" src="https://cdn.mos.cms.futurecdn.net/tfnLAqwXBHZL7w6SknDGyJ.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>The Women's T20 World Cup is available in on <a href="https://www.sky.co.nz/discover/sky-sport" target="_blank" rel="nofollow"><strong>Sky Sport Now</strong></a> online in New Zealand. This costs from $59.99/month or $549.99/year, with a daily price of $29.99 also available.</p><p>On TV, matches will be shown across the suite of Sky Sport channels.</p><p>If you already have access to Sky Sport but you're not in New Zealand during the tournament, <strong>try using </strong><a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN</strong></a> to watch the cricket as if you were back at home.</p><h2 class="article-body__section" id="section-how-to-watch-women-s-t20-world-cup-2026-live-streams-in-south-africa"><span>How to watch Women's T20 World Cup 2026 live streams in South Africa</span></h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1920px;"><p class="vanilla-image-block" style="padding-top:20.83%;"><img id="nR43e2tii57xHhuQwAamYK" name="TG_south_africa_flag_1920x400.jpg" alt="South African flag" src="https://cdn.mos.cms.futurecdn.net/nR43e2tii57xHhuQwAamYK.jpg" mos="" align="middle" fullscreen="" width="1920" height="400" attribution="" endorsement="" class=""></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Shutterstock)</span></figcaption></figure><p>In South Africa, the T20 World Cup is being shown by subscription service <strong>SuperSport</strong>. </p><p>You'll need a <a href="https://www.dstv.com/en-za/buy/dstv-packages/dstv-access/" target="_blank" rel="nofollow">DStv access package</a> to watch the action live on SuperSport, with prices beginning at R299/month. </p><p><strong>Traveling away from South Africa right now?</strong> Access your coverage by using <a href="http://go.nordvpn.net/aff_c?offer_id=564&aff_id=3013&url_id=10992" target="_blank" rel="nofollow"><strong>NordVPN</strong></a>.</p><h2 class="article-body__section" id="section-women-s-t20-world-cup-2026-fixtures-results"><span>Women’s T20 World Cup 2026 fixtures & results</span></h2><p><strong>Friday, June 12</strong><br>England vs Sri Lanka — <em>ENG won by 87 runs</em></p><p><strong>Saturday, June 13</strong><br>Scotland vs Ireland — <em>SCO won by 40 runs</em><br>Australia vs South Africa — <em>AUS won by 65 runs</em><br>West Indies vs New Zealand — <em>WI won by 7 wickets</em></p><div class="collapsible-block-start"></div><div class="collapsible-block-title"click-to-see-more-women-s-t20-world-cup-2026-fixtures"><p>Click to see more Women’s T20 World Cup 2026 fixtures▼</p></div><p><strong>Sunday, June 14</strong><br>Bangladesh vs Netherlands — <em>BAN won by 65 runs</em><br>India vs Pakistan — <em>IND won by 64 runs</em></p><p><strong>Tuesday, June 16</strong><br>New Zealand vs Sri Lanka — <em>SL won by 5 wickets</em><br>England vs Ireland — <em>ENG won by 4 wickets</em></p><p><strong>Wednesday, June 17</strong><br>Australia vs Bangladesh — <em>AUS won by 9 wickets</em><br>India vs Netherlands — <em>IND won by 95 runs</em><br>South Africa vs Pakistan — <em>SA won by 2 wickets</em></p><p><strong>Thursday, June 18</strong><br>West Indies vs Scotland — <em>WI won by 7 runs</em></p><p><strong>Friday, June 19</strong><br>New Zealand vs Ireland — <em>NZ won by 4 runs</em></p><p><strong>Saturday, June 20</strong><br>Australia vs Netherlands — <em>AUS won by 98 runs</em><br>Pakistan vs Bangladesh — <em>BAN won by 23 runs</em><br>England vs Scotland — <em>ENG won by 38 runs</em></p><p><strong>Sunday, June 21</strong><br>West Indies vs Sri Lanka — <em>WI won by 5 wickets</em><br>South Africa vs India — <em>SA won by 6 wickets</em></p><p><strong>Tuesday, June 23</strong><br>New Zealand vs Scotland — <em>NZ won by 6 wickets</em><br>Sri Lanka vs Ireland — <em>SL won by 9 wickets</em><br>Australia vs Pakistan — <em>AUS won by 113 runs</em></p><p><strong>Wednesday, June 24</strong><br>England vs West Indies — <em>ENG won by 38 runs</em></p><p><strong>Thursday, June 25</strong><br>India vs Bangladesh — 9.30 a.m. ET / 2.30 p.m. BST<br>South Africa vs Netherlands — 1.30 p.m. ET / 6.30 p.m. BST</p><p><strong>Friday, June 26</strong><br>Sri Lanka vs Scotland — 1.30 p.m. ET / 6.30 p.m. BST</p><p><strong>Saturday, June 27</strong><br>Pakistan vs Netherlands — 5.30 a.m. ET / 10.30 a.m. BST<br>West Indies vs Ireland — 9.30 a.m. ET / 2.30 p.m. BST<br>England vs New Zealand — 1.30 p.m. ET / 6.30 p.m. BST</p><p><strong>Sunday, June 28</strong><br>South Africa vs Bangladesh — 5.30 a.m. ET / 10.30 a.m. BST<br>Australia vs India — 9.30 a.m. ET / 2.30 p.m. BST</p><p><strong>Tuesday, June 30</strong><br>Semi-Final 1 — 9.30 a.m. ET / 2.30 p.m. BST</p><p><strong>Thursday, July 2</strong><br>Semi-Final 2 — 1.30 p.m. ET / 6.30 p.m. BST</p><p><strong>Sunday, July 5</strong><br>Final — 9.30 a.m. ET / 2.30 p.m. BST</p><div class="collapsible-block-end"></div><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sling-tv/how-to-watch-cricket-online-with-sling">How to watch cricket online with Sling</a></li><li><a href="https://www.tomsguide.com/best-picks/streaming-vpn">The best streaming VPNs</a></li><li><a href="https://www.tomsguide.com/entertainment/streaming/watch-uefa-champions-league-25-26#section-uefa-champions-league-results-fixtures">How to watch UEFA Champions League 2025-26 — free streams, TV channels, fixture list</a></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ How to pre-order PS5 FlexStrike fight stick — these are the retailers to check ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/gaming/playstation/how-to-pre-order-ps5-flexstrike-fight-stick-these-are-the-retailers-to-check</link>
                                                                            <description>
                            <![CDATA[ The PS5 is getting its first limited-edition redesign to mark the launch of Marvel's Spider-Man 2 this fall — here's how to pre-order your Spidey-themed console. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">EgnqFTQbCTSNMGJcpyfa7G</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/TVvjQayTQdsBypxvcKzG2K-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Fri, 12 Jun 2026 12:04:33 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Playstation]]></category>
                                                    <category><![CDATA[Gaming]]></category>
                                                                                                <author><![CDATA[ jeff.parsons@futurenet.com (Jeff Parsons) ]]></author>                    <dc:creator><![CDATA[ Jeff Parsons ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/7z3UTGGrmSokMKxTWHmhjX.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ &lt;p&gt;Jeff is U.K. Editor-in-Chief for Tom’s Guide looking after the day-to-day output of the site’s British contingent. &lt;/p&gt;&lt;p&gt;Rising early and heading straight for the coffee machine, Jeff loves nothing more than dialling into the zeitgeist of the day’s tech news. A journalist for over a decade, he&#039;s travelled around the world testing and reviewing any gadget he can get his hands on.&lt;/p&gt;&lt;p&gt;Before joining the team at Tom’s Guide, Jeff covered technology and science for two of the U.K.’s biggest national news sites: Metro.co.uk and the Daily Mirror. Memorable moments include getting lost in Vienna in an electric Audi, touring Lockheed Martin’s mile-long jet factory in Fort Worth and filming a Netflix documentary about Elon Musk in West London.&lt;/p&gt;&lt;p&gt;When not plugged into the current news agenda, editing or commissioning a series of articles or debating the merits of Apple vs Android, Jeff can usually be found out for a run trying to shave precious seconds off his PB. Or lifting weights in a vain attempt to offset the ageing process.&lt;/p&gt; ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/TVvjQayTQdsBypxvcKzG2K-1280-80.jpg">
                                                            <media:credit><![CDATA[Future / Tom&#039;s Guide]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[PlayStation FlexStrike Wireless Fight Stick in a glass cabinet]]></media:description>                                                            <media:text><![CDATA[PlayStation FlexStrike Wireless Fight Stick in a glass cabinet]]></media:text>
                                <media:title type="plain"><![CDATA[PlayStation FlexStrike Wireless Fight Stick in a glass cabinet]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/TVvjQayTQdsBypxvcKzG2K-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Today is the day we expect the PlayStation’s first official wireless fight stick to become available to pre-order. The FlexStrike Wireless Fight Stick was previously codenamed <a href="https://www.tomsguide.com/gaming/playstation/sony-reveals-project-defiant-arcade-fighting-stick">Project Defiant</a> when it was revealed during the <a href="https://www.tomsguide.com/news/live/playstation-state-of-play-feb-2025-live-updates">June 2025 PlayStation State of Play.</a></p><p>Now, many months later, you'll have your first opportunity to stake your claim on one before the accessory goes on sale on August 6. <strong>You’re able to pre-order the PS5 FlexStrike Wireless Fight Stick right now</strong>, just scroll down for all the buying links. </p><p>The FlexStrike is compatible with both the <a href="https://www.tomsguide.com/reviews/ps5">PS5</a> and a PC and works both as a wired or wireless controller with a PlayStation Link adapter. The latter is Sony’s low-latency wireless technology, which devices like the <a href="https://www.tomsguide.com/gaming/gaming-peripherals/sony-playstation-pulse-elite-headset-review">Pulse Elite Wireless Headset</a> also utilize. </p><p>As fighting fans will know, input lag can mean the difference between victory and defeat, so it's crucial Sony does everything it can to minimize it while playing wirelessly.</p><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:2424px;"><p class="vanilla-image-block" style="padding-top:56.23%;"><img id="N6LTKNQi66tSXXqZMZpNSE" name="Sony Fightstick and Speakers-2" alt="PlayStation FlexStrike Wireless Fight Stick and Pulse Elevate Wireless Speakers in a glass cabinet" src="https://cdn.mos.cms.futurecdn.net/N6LTKNQi66tSXXqZMZpNSE.jpg" mos="" align="middle" fullscreen="" width="2424" height="1363" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Future / Tom's Guide)</span></figcaption></figure><div><blockquote><p>The FlexStrike Wireless Fight Stick costs $199 in the U.S. and £179 in the U.K.</p></blockquote></div><p>However, because this is a first-party accessory, you can expect a higher price than many third-party alternatives. The <strong>FlexStrike Wireless Fight Stick costs $199 in the U.S. and £179 in the U.K</strong>.</p><p>If you want to know how it feels to use, my colleague Rory Mellon was able to get some early access hands on time with the controller at PlayStation HQ. You can <a href="https://www.tomsguide.com/gaming/playstation/ps5-flexstrike-fight-stick-and-pulse-elevate-speakers-preview">read his hands-on right here</a>, along with his thoughts on PlayStation's other accessory: the Pulse Elevate desktop speakers.</p><p>To help you secure the Fight Stick, we've got all the details you need below. Just be sure to bookmark this page, as we’ll update it with more retailers as and when we can. And be warned that pre-orders could sell out fast. </p><h3 class="article-body__section" id="section-where-to-pre-order-ps5-flexstrike-wireless-fight-stick"><span>Where to pre-order PS5 FlexStrike Wireless Fight Stick</span></h3><p><strong>As of 6:00 a.m. ET on Friday, June 12,</strong> the PS5 FlexStrike Wireless Fight Stick pre-orders are currently<strong> sold out at </strong><a href="https://www.amazon.com/dp/B0CCSQMBL1" target="_blank" rel="nofollow"><strong>Amazon</strong></a><strong> and unavailable at PlayStation Direct, Target, Best Buy and Walmart. </strong>However, we will keep checking back and update this page as soon as we see stock. If you spot any retailer that we've missed offering pre-orders, let us know in the comments below this article and we'll update this page.</p><p><strong>Over in the U.K</strong>., things are looking a lot more promising. Pre-orders are live and in stock at<strong> </strong><a href="https://www.amazon.co.uk/PlayStation-Flexstrike-Wireless-Fight-Stick/dp/B0H3P7YRHW" target="_blank" rel="nofollow"><strong>Amazon</strong></a><strong>, </strong><a href="https://www.smythstoys.com/uk/en-gb/gaming-and-tech/playstation-5/playstation-5-accessories/flexstrike-wireless-fight-stick/p/263331"><strong>Smyths Toys</strong></a> and <a href="https://direct.playstation.com/en-gb/buy-accessories/flexstrike-wireless-fight-stick" target="_blank" rel="nofollow"><strong>PlayStation Direct</strong></a>. However, we can't see them at other retailers like Currys or Argos.<strong> </strong></p><div class="product"><a data-dimension112="96726712-45c8-4ffa-873a-1646aea2dc8e" data-action="Deal Block" data-label="(Currently unavailable) PS5 FlexStrike Wirless Fight Stick: $199 @ Amazon" data-dimension48="(Currently unavailable) PS5 FlexStrike Wirless Fight Stick: $199 @ Amazon" data-dimension25="$" href="https://www.amazon.com/dp/B0CCSQMBL1" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1500px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="QYJVQF3AoHXZsMn64iDHMA" name="51tc0o8qfML._SL1500_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/QYJVQF3AoHXZsMn64iDHMA.jpg" mos="" align="middle" fullscreen="" width="1500" height="1500" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p><strong>(Currently unavailable) PS5 FlexStrike Wirless Fight Stick: </strong><a href="https://www.amazon.com/PlayStation-FlexStrike-Wireless-Fight-Gaming-Console/dp/B0H3WPPVR3" target="_blank" rel="nofollow" data-dimension112="96726712-45c8-4ffa-873a-1646aea2dc8e" data-action="Deal Block" data-label="(Currently unavailable) PS5 FlexStrike Wirless Fight Stick: $199 @ Amazon" data-dimension48="(Currently unavailable) PS5 FlexStrike Wirless Fight Stick: $199 @ Amazon" data-dimension25="$"><strong>$199 @ Amazon</strong></a><strong> </strong><br>The PlayStation 5's first official fight stick also works with PC and features a custom-designed digital stick tested for up to six million rotations, buttons with mechanical switches, toolless interchangeable restrictor gates (square, circle, and octagon), and a durable ergonomic design that's tailor made for fighting fans. It also features built-in storage for keeping your restrictor gates and PlayStation Link wireless adapter tucked into the device for convenience and portability.<a class="view-deal button" href="https://www.amazon.com/dp/B0CCSQMBL1" target="_blank" rel="nofollow" data-dimension112="96726712-45c8-4ffa-873a-1646aea2dc8e" data-action="Deal Block" data-label="(Currently unavailable) PS5 FlexStrike Wirless Fight Stick: $199 @ Amazon" data-dimension48="(Currently unavailable) PS5 FlexStrike Wirless Fight Stick: $199 @ Amazon" data-dimension25="$">View Deal</a></p></div><h3 class="article-body__section" id="section-pre-order-ps5-flexstrike-wireless-fight-stick-in-the-u-k"><span>Pre-order PS5 FlexStrike Wireless Fight Stick in the U.K.</span></h3><div class="product"><a data-dimension112="fe063950-13b9-48b9-900f-30df664ce81c" data-action="Deal Block" data-label="(Pre-order) PS5 FlexStrike Wirless Fight Stick: $179 @ Amazon UK" data-dimension48="(Pre-order) PS5 FlexStrike Wirless Fight Stick: $179 @ Amazon UK" href="https://www.amazon.co.uk/PlayStation-Flexstrike-Wireless-Fight-Stick/dp/B0H3P7YRHW" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1500px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="QYJVQF3AoHXZsMn64iDHMA" name="51tc0o8qfML._SL1500_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/QYJVQF3AoHXZsMn64iDHMA.jpg" mos="" align="middle" fullscreen="" width="1500" height="1500" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p><strong>(Pre-order) PS5 FlexStrike Wirless Fight Stick: </strong><a href="https://www.amazon.co.uk/PlayStation-Flexstrike-Wireless-Fight-Stick/dp/B0H3P7YRHW" target="_blank" rel="nofollow" data-dimension112="fe063950-13b9-48b9-900f-30df664ce81c" data-action="Deal Block" data-label="(Pre-order) PS5 FlexStrike Wirless Fight Stick: $179 @ Amazon UK" data-dimension48="(Pre-order) PS5 FlexStrike Wirless Fight Stick: $179 @ Amazon UK" data-dimension25=""><strong>$179 @ Amazon UK</strong></a><strong> </strong><br>The PlayStation 5's first official fight stick also works with PC and features a custom-designed digital stick tested for up to six million rotations, buttons with mechanical switches, toolless interchangeable restrictor gates (square, circle, and octagon), and a durable ergonomic design that's tailor made for fighting fans. It also features built-in storage for keeping your restrictor gates and PlayStation Link wireless adapter tucked into the device for convenience and portability.<a class="view-deal button" href="https://www.amazon.co.uk/PlayStation-Flexstrike-Wireless-Fight-Stick/dp/B0H3P7YRHW" target="_blank" rel="nofollow" data-dimension112="fe063950-13b9-48b9-900f-30df664ce81c" data-action="Deal Block" data-label="(Pre-order) PS5 FlexStrike Wirless Fight Stick: $179 @ Amazon UK" data-dimension48="(Pre-order) PS5 FlexStrike Wirless Fight Stick: $179 @ Amazon UK" data-dimension25="">View Deal</a></p></div><div class="product"><a data-dimension112="e2993578-46b7-4664-a190-fcd865728173" data-action="Deal Block" data-label="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ Smyths Toys" data-dimension48="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ Smyths Toys" data-dimension25="£179" href="https://www.smythstoys.com/uk/en-gb/gaming-and-tech/playstation-5/playstation-5-accessories/flexstrike-wireless-fight-stick/p/263331" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1500px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="QYJVQF3AoHXZsMn64iDHMA" name="51tc0o8qfML._SL1500_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/QYJVQF3AoHXZsMn64iDHMA.jpg" mos="" align="middle" fullscreen="" width="1500" height="1500" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p><strong>(Pre-order) PS5 FlexStrike Wirless Fight Stick: </strong><a href="https://www.smythstoys.com/uk/en-gb/gaming-and-tech/playstation-5/playstation-5-accessories/flexstrike-wireless-fight-stick/p/263331" target="_blank" rel="nofollow" data-dimension112="e2993578-46b7-4664-a190-fcd865728173" data-action="Deal Block" data-label="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ Smyths Toys" data-dimension48="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ Smyths Toys" data-dimension25="£179"><strong>£179 @ Smyths Toys</strong></a><strong> </strong><br>The PlayStation 5's first official fight stick also works with PC and features a custom-designed digital stick tested for up to six million rotations, buttons with mechanical switches, toolless interchangeable restrictor gates (square, circle, and octagon), and a durable ergonomic design that's tailor made for fighting fans. It also features built-in storage for keeping your restrictor gates and PlayStation Link wireless adapter tucked into the device for convenience and portability.<a class="view-deal button" href="https://www.smythstoys.com/uk/en-gb/gaming-and-tech/playstation-5/playstation-5-accessories/flexstrike-wireless-fight-stick/p/263331" target="_blank" rel="nofollow" data-dimension112="e2993578-46b7-4664-a190-fcd865728173" data-action="Deal Block" data-label="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ Smyths Toys" data-dimension48="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ Smyths Toys" data-dimension25="£179">View Deal</a></p></div><div class="product"><a data-dimension112="701d0d7b-dddc-414e-bfc8-93839178b2c4" data-action="Deal Block" data-label="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ PlayStation Direct" data-dimension48="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ PlayStation Direct" href="https://www.bestbuy.com/site/sony-playstation-5-console-marvels-spider-man-2-limited-edition-bundle/6554388.p" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:1500px;"><p class="vanilla-image-block" style="padding-top:100.00%;"><img id="QYJVQF3AoHXZsMn64iDHMA" name="51tc0o8qfML._SL1500_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/QYJVQF3AoHXZsMn64iDHMA.jpg" mos="" align="middle" fullscreen="" width="1500" height="1500" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p><strong>(Pre-order) PS5 FlexStrike Wirless Fight Stick: </strong><a href="https://direct.playstation.com/en-gb/buy-accessories/flexstrike-wireless-fight-stick" target="_blank" rel="nofollow" data-dimension112="701d0d7b-dddc-414e-bfc8-93839178b2c4" data-action="Deal Block" data-label="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ PlayStation Direct" data-dimension48="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ PlayStation Direct" data-dimension25=""><strong>£179 @ PlayStation Direct</strong></a><strong> </strong><br>The PlayStation 5's first official fight stick also works with PC and features a custom-designed digital stick tested for up to six million rotations, buttons with mechanical switches, toolless interchangeable restrictor gates (square, circle, and octagon), and a durable ergonomic design that's tailor made for fighting fans. It also features built-in storage for keeping your restrictor gates and PlayStation Link wireless adapter tucked into the device for convenience and portability.<a class="view-deal button" href="https://www.bestbuy.com/site/sony-playstation-5-console-marvels-spider-man-2-limited-edition-bundle/6554388.p" target="_blank" rel="nofollow" data-dimension112="701d0d7b-dddc-414e-bfc8-93839178b2c4" data-action="Deal Block" data-label="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ PlayStation Direct" data-dimension48="(Pre-order) PS5 FlexStrike Wirless Fight Stick: £179 @ PlayStation Direct" data-dimension25="">View Deal</a></p></div><h2 id="ps5-flexstrike-wireless-fight-stick-features">PS5 FlexStrike Wireless Fight Stick features</h2><div class="youtube-video" data-nosnippet ><div class="video-aspect-box"><iframe data-lazy-priority="low" data-lazy-src="https://www.youtube-nocookie.com/embed/TTGmg6uYXKc" allowfullscreen></iframe></div></div><p>The FlexStrike is a good-looking controller but Sony has pulled out all the stops to make it as functional as possible. It's got mechanical switch buttons and toolless swappable restrictor gates — including square, circle and octagonal gates that fit into the peripheral’s built-in storage compartments. That's also where you can keep the included PS Link USB adapter. </p><p>It’s rare for the <a href="https://www.tomsguide.com/best-picks/best-fight-sticks">best fight sticks</a> to have more than one restrictor gate included, so this is a nice bonus. It also makes sense since it’s possible that standard Sanwa parts aren’t compatible with the FlexStrike.</p><p>The FlexStrike also comes with a sling carry case, along with a USB-C cable for wired play.</p><p>Other features include the ability to use a single PS Link USB adapter to connect the FlexStrike and a Pulse Elite headset or Pulse Explore earbuds, or to connect two FlexStrike controllers simultaneously. </p><p>You can also keep your regular <a href="https://www.tomsguide.com/news/ps5-dualsense-controller-hands-on-this-is-a-game-changer">PS5 DualSense controller</a> connected at the same time as the FlexStrike if you need that controller to navigate menus between fights. Finally, the benefit of this being a first-party Sony accessory is that you can turn on your PS5 by pressing the FlexStrike’s PS button. You're not going to find that same feature in third-party fight sticks.</p><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/gaming/playstations-wireless-flexstrike-fight-stick-is-coming-these-are-the-9-best-and-cheapest-ps5-fighting-games-worth-getting">PlayStation’s Wireless FlexStrike Fight Stick is coming — these are the 9 best (and cheapest) PS5 fighting games worth getting</a></li><li><a href="https://www.tomsguide.com/ai/i-got-my-ass-handed-to-me-by-a-chess-playing-robot-and-now-im-worried-magnus-carlsen-may-be-cooked-by-ai">I got my ass handed to me by a chess-playing robot — and now I'm worried Magnus Carlsen may be cooked by AI</a></li><li><a href="https://www.tomsguide.com/gaming/playstation/ps5-flexstrike-fight-stick-and-pulse-elevate-speakers-preview">I got hands-on with PS5 FlexStrike fight stick and Pulse Elevate desktop speakers — and I’m seriously impressed with one in particular</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ You don’t have to wait for Apple’s Siri AI rollout — use this trick to unlock it on iOS 27 right now ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/iphones/you-dont-have-to-wait-for-apples-siri-ai-rollout-use-this-trick-to-unlock-it-on-ios-27-right-now</link>
                                                                            <description>
                            <![CDATA[ A simple iOS 27 workaround shared by a user on X lets you bypass the Siri AI waiting list and access Apple's revamped assistant immediately. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">kcznwqDx92sZAhVDtpf3gH</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/EjLomL6cUAsVygMTKgKWJK-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Fri, 12 Jun 2026 07:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[iPhones]]></category>
                                                    <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/EjLomL6cUAsVygMTKgKWJK-1280-80.jpg">
                                                            <media:credit><![CDATA[Future]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Siri AI]]></media:description>                                                            <media:text><![CDATA[Siri AI]]></media:text>
                                <media:title type="plain"><![CDATA[Siri AI]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/EjLomL6cUAsVygMTKgKWJK-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Apple's new <a href="https://www.tomsguide.com/ai/apple-finally-fixed-siri-heres-all-the-features-for-the-new-siri-ai-announced-at-wwdc">Siri AI</a> is the headline feature of <a href="https://www.tomsguide.com/phones/iphones/ios-27-is-official-all-the-new-upgrades-and-features-announced-at-wwdc-2026">iOS 27,</a> but most users downloading the developer beta are hitting a wall: a waiting list. Instead of immediate access to the revamped assistant, you get a message saying Siri AI isn't available yet. </p><p>Apple is rolling out the feature in phases, which means some people get access while others wait.</p><p>If you're running iOS 27 and eager to test the new Siri right now, there's a workaround that's spreading among beta testers. And according to a clever tip <a href="https://x.com/newtonisaas/status/2064540775908565437">shared by a user on X</a>, there might be a quick way to skip the queue entirely.</p><figure class="inline-layout"><fw-embed-feed channel="toms_guide" playlist="gK4rJ8" mode="row" player_placement="bottom-right"></fw-embed-feed></figure><p>If you're keen to get started immediately instead of waiting for Apple's rollout, here's how.</p><h2 id="download-the-ios-27-developer-beta-first">Download the iOS 27 developer beta first</h2><p>You need iOS 27 to access the new Siri AI, whether through the waiting list or the workaround. If you haven't installed the <a href="https://www.tomsguide.com/phones/iphones/wwdc-2026-how-to-install-the-ios-27-developer-beta-right-now">developer beta</a> yet, you'll need to <a href="https://developer.apple.com/get-started/"><strong>register as an Apple developer</strong></a> first. </p><p>Then <strong>open Settings, go to General, Software Update, Beta Updates, and select iOS 27 Developer Beta</strong>. As this is a developer beta and not public yet, it's a good idea to back up your iPhone first. </p><section class="howto-block">                    <h3>Bypass the waiting list with this workaround</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/jH3RkjDKtCSm7Nw5FkSZk4.jpg"                                        alt="Siri AI iOS 27"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/jH3RkjDKtCSm7Nw5FkSZk4.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide )</div></figure>                    <p><p>To try the workaround, <strong>start by turning off Siri on all your other connected Apple devices</strong>, leaving it active only on your main iPhone. </p><p>Next,<strong> turn off Siri on your phone and close the Settings app </strong>from your recent apps switcher.<strong> Power your iPhone completely off, turn it back on, and then head back into your settings to turn Siri on</strong>. </p><p><strong>Close Settings from your recents once more, reopen it, and turn Siri off again</strong>. Finally<strong>, close Settings one last time, reopen it, and turn Siri back on</strong>.</p><p>When you check Siri now, the waiting list message should be gone, giving you immediate access to the new Siri AI. If you're still seeing the queue, try restarting your iPhone and running through the final toggle steps once more.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-eJk2yW"></div>                            </div>                            <script src="https://kwizly.com/embed/eJk2yW.js" async></script><p>Did this hack get you off the iOS 27 developer beta waiting list? Let us know in the comments!</p><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/your-iphone-alarm-and-ringtone-dont-have-to-share-a-volume-slider-anymore-heres-how-to-split-them-in-ios-27">Your iPhone alarm and ringtone don’t have to share a volume slider anymore — here’s how to split them in iOS 27</a></li><li><a href="https://www.tomsguide.com/phones/iphones/facetime-just-got-a-huge-upgrade-thanks-to-ios-27-heres-how-to-use-it">FaceTime just got a huge upgrade thanks to iOS 27 — here's how to use it</a></li><li><a href="https://www.tomsguide.com/phones/iphones/apple-buried-a-genius-browsing-feature-in-your-iphone-settings-and-its-genuinely-useful">Apple fixed the single most frustrating thing about browsing on iPhone — you just have to turn it on</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ How to watch World Cup on Tubi (it's free) – USA vs Paraguay ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/entertainment/sports/how-to-watch-world-cup-on-tubi-its-free</link>
                                                                            <description>
                            <![CDATA[ Here's how to watch the World Cup on Tubi (free) for USA vs Paraguay, as the USNMT kick off their World Cup dream. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">bEuUaigE6uqmHf6YJN9Fi8</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/s3AhC9DvccrvrAr8JhgKJ9-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Thu, 11 Jun 2026 17:53:52 +0000</pubDate>                                                                                                                                <updated>Fri, 12 Jun 2026 22:28:41 +0000</updated>
                                                                                                                                            <category><![CDATA[Sports]]></category>
                                                    <category><![CDATA[Entertainment]]></category>
                                                                                                                    <dc:creator><![CDATA[ Tom Bailey ]]></dc:creator>                                                                                                        <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/s3AhC9DvccrvrAr8JhgKJ9-1280-80.jpg">
                                                            <media:credit><![CDATA[Getty Images]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[South African fans blow a Vuvuzela ahead of the 2026 FIFA World Cup Mexico vs South Africa match (Photo by Michael Steele/Getty Images)]]></media:description>                                                            <media:text><![CDATA[South African fans blow a Vuvuzela ahead of the 2026 FIFA World Cup Mexico vs South Africa match (Photo by Michael Steele/Getty Images)]]></media:text>
                                <media:title type="plain"><![CDATA[South African fans blow a Vuvuzela ahead of the 2026 FIFA World Cup Mexico vs South Africa match (Photo by Michael Steele/Getty Images)]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/s3AhC9DvccrvrAr8JhgKJ9-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams" target="_blank">World Cup 2026</a> is here and football fans can USA vs Paraguay for <strong>free on </strong><a href="https://tubitv.com/live" target="_blank" rel="nofollow"><strong>Tubi</strong></a> tonight at 9 p.m. ET on Friday June 12. More importantly, Tubi will streaming the Group D game in 4K. </p><p>Fox-owned platform Tubi is known for its streaming quality, and it costs nothing to watch if you're in the U.S.</p><p>So how do you access Tubi outside the U.S. –  in Canada/Mexico for example? Our quick World Cup guide reveals how to watch soccer free on Tubi from anywhere.</p><h2 id="how-to-watch-world-cup-on-tubi-it-s-free">How to watch World Cup on Tubi (it's free)</h2><p>Soccer fans in the U.S. can watch <strong>USA vs Paraguay</strong> <strong>for FREE</strong> on <a href="https://tubitv.com/live" target="_blank" rel="nofollow"><strong>Tubi</strong></a> on June 12 when the FIFA World Cup's first USNMT game kicks off in Los Angeles.</p><p>Tubi is completely free to use – no messy sign ups, just a simple free World Cup stream.</p><p><strong>OUTSIDE THE U.S.?</strong> No problem. We use <a href="https://norton.ow5a.net/c/221109/3913566/4405?sharedid=fourfourtwo&param1=aff&param2=worldcup26_streamguide&param3=vpn&subid1=streamguideTG" target="_blank" rel="nofollow"><strong>Norton VPN</strong></a> to watch Tubi when traveling abroad, visiting Canada, or any other country. It works perfectly.</p><h2 class="article-body__section" id="section-watch-world-cup-on-tubi-from-anywhere"><span>Watch World Cup on Tubi from anywhere</span></h2><p>Although Tubi is only available to U.S. residents, those who are from the U.S. but visiting <strong>Canada</strong>, for example, can access Tubi with a good <a href="https://www.tomsguide.com/best-picks/best-vpn" target="_blank">VPN</a> and watch World Cup live streams. Norton VPN is our no.1 pick for fast streaming:</p><div class="product"><a data-dimension112="eff6c8c1-3659-4f27-8ac9-20f7e810b68e" data-action="Deal Block" data-label="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" data-dimension48="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" href="https://norton.ow5a.net/c/221109/3913566/4405?sharedid=fourfourtwo&param1=aff&param2=worldcup26_streamguide&param3=vpn&subid1=streamguideTG" target="_blank" rel="nofollow"><figure class="van-image-figure "  ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:280px;"><p class="vanilla-image-block" style="padding-top:56.43%;"><img id="cgidcx9LYVJedVXABk3BpC" name="nortonvpn_graphic_-_affiliates__5_" caption="" alt="" src="https://cdn.mos.cms.futurecdn.net/cgidcx9LYVJedVXABk3BpC.png" mos="" align="middle" fullscreen="" width="280" height="158" attribution="" endorsement="" credit="" class=""></p></div></div></figure></a><p>▶︎ <a href="https://norton.ow5a.net/c/221109/3913566/4405?sharedid=fourfourtwo&param1=aff&param2=worldcup26_streamguide&param3=vpn&subid1=streamguideTG" target="_blank" rel="nofollow" data-dimension112="eff6c8c1-3659-4f27-8ac9-20f7e810b68e" data-action="Deal Block" data-label="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" data-dimension48="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" data-dimension25=""><u><strong>Norton VPN — $3.30 / £2.50 & Try 60 days</strong></u></a></p><p>Stream World Cup on for free without limits. <a href="https://www.techradar.com/reviews/norton-secure-vpn" target="_blank"><strong>Norton VPN</strong></a> delivers fast, secure connections with global servers, so you can stream from anywhere with ease.<br><br>✅ <strong>60-day money-back guarantee</strong><br>✅ <strong>Unlocks Tubi</strong><br><strong>✅ Exclusive deal</strong></p><p><strong>Don’t miss a second.</strong> Stream USA v Paraguay on Tubi (it's free) from anywhere right now.<a class="view-deal button" href="https://norton.ow5a.net/c/221109/3913566/4405?sharedid=fourfourtwo&param1=aff&param2=worldcup26_streamguide&param3=vpn&subid1=streamguideTG" target="_blank" rel="nofollow" data-dimension112="eff6c8c1-3659-4f27-8ac9-20f7e810b68e" data-action="Deal Block" data-label="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" data-dimension48="Norton VPN — $3.30 / £2.50 &amp; Try 60 days" data-dimension25="">View Deal</a></p></div><p><strong>It's easy to watch World Cup on Tubi:</strong></p><p><strong>1. Install the VPN of your choice</strong>. As we've said, <a href="https://norton.ow5a.net/c/221109/3913566/4405?sharedid=fourfourtwo&param1=aff&param2=worldcup26_streamguide&param3=vpn&subid1=streamguideTG" target="_blank" rel="nofollow">Norton VPN</a> is our favorite for streaming.</p><p><strong>2. Choose the location you wish to connect to in the VPN app. </strong>For instance if you're in Canada and want to view a U.S. service, you'd select USA from the list.</p><p><strong>3. Stream live. </strong>Head to <a href="https://tubitv.com/live" target="_blank" rel="nofollow"><strong>Tubi</strong></a> to catch USA vs Paraguay for free</p><h2 class="article-body__section" id="section-tubi-q-a"><span>Tubi Q+A</span></h2><h2 id="what-does-tubi-s-coverage-of-world-cup-include">What does Tubi's coverage of World Cup include?</h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:300px;"><p class="vanilla-image-block" style="padding-top:56.00%;"><img id="yYDNhVLB6krACo5nm6VWiL" name="images" alt="How to watch World Cup on Tubi (it's free) Mexico vs South Africa live on June 11, 2026" src="https://cdn.mos.cms.futurecdn.net/yYDNhVLB6krACo5nm6VWiL.jpg" mos="" align="middle" fullscreen="" width="300" height="168" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Tubi / Fox / FIFA)</span></figcaption></figure><p>Fox Sports will broadcast all 104 games, with Fox-owned streaming service <a href="https://tubitv.com/hubs/fifa-world-cup-fox-hub" target="_blank" rel="nofollow"><strong>Tubi</strong></a> streaming the Mexico v South Africa opener on June 11, plus the Men's <strong>USA vs Paraguay</strong> on June 12. The Tubi stream includes full coverage of the action as well pre-match build up and post-match analysis. The team includes Thierry Henry and Alexei Lalas, who today went viral on <a href="https://x.com/JeffDLowe/status/2065491839109509548" target="_blank" rel="nofollow">Twitter/X</a> after calling James Corden a "full kit w**ker" live on air on Fox.</p><p>Tubi will also stream the <a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-opening-ceremony-free">World Cup opening ceremonies</a> for free.</p><p><strong>Remember. </strong>Use <a href="https://norton.ow5a.net/c/221109/3913566/4405?sharedid=fourfourtwo&param1=aff&param2=worldcup26_streamguide&param3=vpn&subid1=streamguideTG" target="_blank" rel="nofollow">Norton VPN</a> to watch World Cup on Tubi, if you're traveling outside America to Canada or beyond.</p><section class="article__schema-question"><h3>What devices can I watch Tubi on? </h3><article class="article__schema-answer"><p><strong>Amazon Fire TV/Stick and Kindle Fire tablets (Tablets must be 2013 or later)</strong></p><p><strong>FireTV (newer than 7.1.1000) </strong></p><p><strong>Amazon Echo Show</strong></p><p><strong>Android mobile devices (smartphones/tablets)</strong></p><p><strong>Android TV (newer than 7.1.1000)</strong></p><p><strong>Apple TV 4th Generation</strong></p><p><strong>Chromecast</strong></p><p><strong>Comcast Xfinity X1</strong></p><p><strong>Cox Contour</strong></p><p><strong>Google Nest Hub</strong></p><p><strong>Hisense Smart TVs</strong></p><p><strong>iOS devices (iPhones/iPads)</strong></p><p><strong>LG Smart TVs</strong></p><p><strong>Nvidia Shield</strong></p><p><strong>Playstation 4 and 5</strong></p><p><strong>Roku platforms </strong></p><p><strong>Samsung Smart TVs </strong></p><p><strong>Sony Smart TVs & Blu-ray disc devices</strong></p><p><strong>TiVo</strong></p><p><strong>Vizio Smart TVs</strong></p><p><strong>Web - </strong><a href="https://tubi.tv/" target="_blank"><u>tubitv.com</u></a><strong></strong></p><p><strong>Xbox One, Series S, Series X</strong></p></article></section><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><strong></strong><a href="https://www.youtube.com/watch?v=ZB2GEq948y8" target="_blank"><strong>[YouTube video] How to watch World Cup 2026 for FREE</strong></a><strong> </strong></li><li><strong></strong><a href="https://www.tomsguide.com/entertainment/sports/how-to-watch-the-world-cup-2026-in-4k"><strong>How to watch World Cup in 4K</strong></a></li><li><strong></strong><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-opening-ceremony-free"><strong>How to watch World Cup opening ceremonies for free</strong></a><strong></strong></li></ul><p>We test and review VPN services in the context of legal recreational uses. For example:1. Accessing a service from another country (subject to the terms and conditions of that service).2. Protecting your online security and strengthening your online privacy when abroad.We do not support or condone the illegal or malicious use of VPN services. Consuming pirated content that is paid-for is neither endorsed nor approved by Future Publishing.</p>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ FaceTime just got a huge upgrade thanks to iOS 27 — here's how to use it ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/iphones/facetime-just-got-a-huge-upgrade-thanks-to-ios-27-heres-how-to-use-it</link>
                                                                            <description>
                            <![CDATA[ With iOS 27, you can split your camera on FaceTime — here's how dual capture mode works. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">SJA9gFiTjD4i5Moi7kog6W</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/Z5AREXkHH3WuxG2NVDBMVA-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Thu, 11 Jun 2026 11:03:51 +0000</pubDate>                                                                                                                                <updated>Fri, 12 Jun 2026 08:54:45 +0000</updated>
                                                                                                                                            <category><![CDATA[iPhones]]></category>
                                                    <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/Z5AREXkHH3WuxG2NVDBMVA-1280-80.jpg">
                                                            <media:credit><![CDATA[Tom&#039;s Guide/Apple/Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[iOS 27 logo on iPhone]]></media:description>                                                            <media:text><![CDATA[iOS 27 logo on iPhone]]></media:text>
                                <media:title type="plain"><![CDATA[iOS 27 logo on iPhone]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/Z5AREXkHH3WuxG2NVDBMVA-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>FaceTime is getting a powerful upgrade with iOS 27: Dual Capture support. You can now show both your front-facing camera and rear camera at the same time during FaceTime calls. </p><p>Say goodbye to "one sec, let me flip my camera." This upgrade lets you share your surroundings and stay on screen simultaneously. The feature works <a href="https://www.tomsguide.com/phones/iphones/ios-27-supported-devices-see-which-iphones-did-and-didnt-make-the-cut">on compatible iPhones with iOS 27. </a></p><figure class="inline-layout"><fw-embed-feed channel="toms_guide" playlist="gK4rJ8" mode="row" player_placement="bottom-right"></fw-embed-feed></figure><p>If you want to test it now, the <a href="https://www.tomsguide.com/phones/iphones/wwdc-2026-how-to-install-the-ios-27-developer-beta-right-now">iOS 27 developer beta</a> is available to download for users now, as long as you've registered. </p><h2 id="which-iphones-support-dual-capture-on-facetime">Which iPhones support Dual Capture on FaceTime?</h2><p>For now, this is strictly an<strong> iPhone 17+ exclusive</strong>. While older iPhones can view your dual-camera stream, only Apple's latest lineup has the hardware muscle to actually broadcast one. <br><br>These are the exact models you'll need:</p><ul><li>iPhone 17</li><li>iPhone 17 Pro</li><li>iPhone 17 Pro Max</li><li>iPhone Air</li></ul><section class="howto-block">                    <h3>How to use Dual Capture on FaceTime</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/kpogKpYgzbgcq6fmrp3h6J.jpg"                                        alt="FaceTime app on iPhone"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/kpogKpYgzbgcq6fmrp3h6J.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p><strong>Open FaceTime and start a call with someone</strong>. During the call,<strong> tap the Flip button</strong> on your camera viewfinder. Your rear camera activates alongside your front camera, showing both views on the call.</p><p><strong>Tapping Flip again lets you disable the rear camera </strong>and return to front-camera only. The default is to keep your front camera active when you switch to the rear camera, so the other person always sees your face.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-Xrmd0O"></div>                            </div>                            <script src="https://kwizly.com/embed/Xrmd0O.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/your-iphone-alarm-and-ringtone-dont-have-to-share-a-volume-slider-anymore-heres-how-to-split-them-in-ios-27">Your iPhone alarm and ringtone don’t have to share a volume slider anymore — here’s how to split them in iOS 27</a></li><li><a href="https://www.tomsguide.com/phones/iphones/check-your-iphone-right-now-3-privacy-settings-you-need-to-turn-off-immediately">Check your iPhone right now: 3 privacy settings you need to change immediately</a></li><li><a href="https://www.tomsguide.com/phones/iphones/apple-buried-a-genius-browsing-feature-in-your-iphone-settings-and-its-genuinely-useful">Apple fixed the single most frustrating thing about browsing on iPhone — you just have to turn it on</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ Your iPhone alarm and ringtone don’t have to share a volume slider anymore — here’s how to split them in iOS 27 ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/phones/iphones/your-iphone-alarm-and-ringtone-dont-have-to-share-a-volume-slider-anymore-heres-how-to-split-them-in-ios-27</link>
                                                                            <description>
                            <![CDATA[ It took Apple years, but iOS 27 finally adds independent volume control. Here is how to find the toggle. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">zFU4imzWVncP9zG9o64Q7X</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/Z5AREXkHH3WuxG2NVDBMVA-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Thu, 11 Jun 2026 07:00:00 +0000</pubDate>                                                                                                                                <updated>Thu, 11 Jun 2026 09:25:57 +0000</updated>
                                                                                                                                            <category><![CDATA[iPhones]]></category>
                                                    <category><![CDATA[Phones]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/Z5AREXkHH3WuxG2NVDBMVA-1280-80.jpg">
                                                            <media:credit><![CDATA[Tom&#039;s Guide/Apple/Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[iOS 27 logo on iPhone]]></media:description>                                                            <media:text><![CDATA[iOS 27 logo on iPhone]]></media:text>
                                <media:title type="plain"><![CDATA[iOS 27 logo on iPhone]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/Z5AREXkHH3WuxG2NVDBMVA-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>iOS 27 finally delivers a feature iPhone users have requested for years: independent volume control. Under the new settings, your alarms, timers, and notifications no longer share a single slider.</p><p>It never made sense to treat high-priority alerts and background notifications the same way. Because everything was tied to a single slider, making a minor adjustment to your daytime audio levels meant risking a missed wake-up call later.</p><figure class="inline-layout"><fw-embed-feed channel="toms_guide" playlist="gK4rJ8" mode="row" player_placement="bottom-right"></fw-embed-feed></figure><p>Now, Apple is separating these sounds instead of bundling them together. It's a simple, long-overdue quality-of-life improvement that finally makes managing your iPhone audio practical.</p><h2 id="download-the-ios-27-beta-if-you-haven-t-yet">Download the iOS 27 beta if you haven't yet</h2><p>This feature is currently available only in the <a href="https://www.tomsguide.com/phones/iphones/wwdc-2026-how-to-install-the-ios-27-developer-beta-right-now">iOS 27 developer beta</a>. If you haven't installed it yet, you can get it now.</p><p><a href="https://developer.apple.com/programs/enroll/" target="_blank">Register as an Apple developer </a>if you don't already have an account; it's free. Then open Settings,<strong> go to General, Software Update, Beta Updates, and select iOS 27 Developer Beta</strong>. Your iPhone automatically downloads and installs the beta.</p><section class="howto-block">                    <h3>How to use independent volume controls</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/bXpqb5sxM7DHvRkgTKngRi.jpg"                                        alt="iOS 26.1 timer with a slider to dismiss"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/bXpqb5sxM7DHvRkgTKngRi.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide)</div></figure>                    <p><p><strong>Go to Settings and open Sounds & Haptics</strong>, then <strong>look for "Match Ringtone Volume" and toggle it off</strong>. Once disabled, you'll see separate sliders for ringtone volume, alarm volume, and system alert volume.</p><p><strong>Adjust each slider independently</strong> to set the levels you want. You can keep your ringtone quiet while setting alarms louder, or mute notifications without affecting calls. Wake-Up alarms set through the Bedtime app are managed separately. </p><p>If you prefer the old unified approach, <strong>keep the "Match Ringtone Volume" toggle on</strong>.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-Xrmd0O"></div>                            </div>                            <script src="https://kwizly.com/embed/Xrmd0O.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/check-your-iphone-right-now-3-privacy-settings-you-need-to-turn-off-immediately">Check your iPhone right now: 3 privacy settings you need to change immediately</a></li><li><a href="https://www.tomsguide.com/phones/iphones/i-thought-i-knew-all-my-iphone-camera-features-i-was-wrong">I thought I knew all my iPhone's camera features — I was wrong</a></li><li><a href="https://www.tomsguide.com/phones/iphones/apple-buried-a-genius-browsing-feature-in-your-iphone-settings-and-its-genuinely-useful">Apple fixed the single most frustrating thing about browsing on iPhone — you just have to turn it on</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ Why is my tomato plant wilting? 5 common causes and how to fix it ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/gardening/why-is-my-tomato-plant-wilting-5-common-causes-and-how-to-fix-it</link>
                                                                            <description>
                            <![CDATA[ Learn why tomato plants wilt and how to revive them before permanent damage occurs. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">4zhRCbtxZsYcocitZmysbX</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/hT6R52gwRLPXtSDhcEyj27-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Thu, 11 Jun 2026 06:30:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[Gardening]]></category>
                                                    <category><![CDATA[Home]]></category>
                                                    <category><![CDATA[Outdoors]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/hT6R52gwRLPXtSDhcEyj27-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Wilting tomato plant ]]></media:description>                                                            <media:text><![CDATA[Wilting tomato plant ]]></media:text>
                                <media:title type="plain"><![CDATA[Wilting tomato plant ]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/hT6R52gwRLPXtSDhcEyj27-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Don't ignore a drooping tomato plant. When heat hits and your prized tomatoes suddenly sag, they’re throwing up a red flag. It’s a heartbreaking sight, but that dramatic slouch is actually a cry for help.</p><p>Wilting is a copycat symptom for five completely distinct issues, from simple thirst to hidden pests. Guessing the cure can cost you your harvest, and applying the wrong fix could finish the plant off entirely.</p><p>Fortunately, most tomato drama is completely reversible once you know what to look for. Here's 5 common reasons your tomato plant wilts and how to fix fast. </p><section class="howto-block">                    <h3>1. Underwatering</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/nv32zGerpRogbc7ejDpr3Q.jpg"                                        alt="Wilting tomato plant"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/nv32zGerpRogbc7ejDpr3Q.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Tomatoes are thirsty plants that need 1-2 inches of water per week. During hot, dry summers, they need even more. If you're watering on a schedule that made sense in spring, it probably isn't enough now that temperatures have risen.</p><p>Check the soil 1-2 inches below the surface.<strong> If it feels completely dry, underwatering is the problem</strong>. Look at the leaves too. <strong>Dry, papery leaves confirm the plant isn't getting enough water</strong>.</p><p>Increase watering frequency rather than dumping more water at once. Water more often with smaller amounts so the soil stays consistently moist without becoming soggy. </p></p>                </section><section class="howto-block">                    <h3>2. Overwatering</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/srZrJgdQryVds4dhu928kZ.jpg"                                        alt="Watering tomato plants"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/srZrJgdQryVds4dhu928kZ.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Too much water, on the other hand, causes wilting that looks identical to underwatering. The difference is in the details.<strong> Overwatered plants have thick, soft leaves instead of dry, papery ones, and the soil stays damp days after watering</strong>.</p><p>Overwatering promotes fungal growth and root rot. Roots suffocate in waterlogged soil and can't absorb water properly, which ironically causes the plant to wilt despite sitting in wet soil.</p><p>Stop watering until the top 1-2 inches of soil feel dry. When you do water, apply it slowly and let the soil dry between waterings rather than keeping it constantly soggy. If recent heavy rain is the culprit, just let the soil dry out naturally and resume normal watering once it does.</p></p>                </section><section class="howto-block">                    <h3>3. Root damage</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/72GfUBMARtYte2BtgFAD3e.jpg"                                        alt="Transplanting tomato plant outdoors"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/72GfUBMARtYte2BtgFAD3e.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Moving tomatoes from containers to garden beds often damages roots. Small root breaks mean fewer roots absorbing water and nutrients. The plant wilts in the first few days after transplanting even if you're watering correctly.</p><p>The plant will naturally regrow damaged roots without any intervention from you. <strong>Give it time and continue providing proper water and nutrition</strong>. Most plants recover within a few days as new roots develop.</p><p>If wilting persists beyond a week after transplanting, something else is causing the problem. Consider one of the other reasons on this list.</p></p>                </section><section class="howto-block">                    <h3>4. Pests </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/wYN9D5BJ9W2zMUbbNvdfpZ.jpg"                                        alt="Aphids crawling on tomato plant leaves"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/wYN9D5BJ9W2zMUbbNvdfpZ.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Sap-sucking insects like aphids, spider mites, and whiteflies drain vital fluids directly from tomato leaves, causing sudden wilting, curling, and eventual plant death. </p><p>Because these pests hide on leaf undersides, regular inspection is crucial — <strong>look closely for tiny bugs, sticky honeydew, or fine webbing</strong>. If your plants are actively wilting from a severe infestation, thoroughly coat all leaf surfaces with insecticidal soap every 5–7 days until they disappear. </p><p>You can also prevent this fluid loss naturally by interplanting basil, mint, or <a href="https://www.tomsguide.com/home/gardening/why-marigolds-are-the-best-companion-flower-for-a-pest-free-vegetable-garden-especially-tomatoes">marigolds</a>, around your garden borders to deter pests early. </p><p>Protect your plant's natural defense system by avoiding broad-spectrum pesticides, which accidentally wipe out the ladybugs and lacewings that keep these wilting-inducing pests in check.</p></p>                </section><section class="howto-block">                    <h3>5. Over-pruning</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/6eBgFFXKVap2akC9qi3Y9A.jpg"                                        alt="Pruning tomato suckers"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/6eBgFFXKVap2akC9qi3Y9A.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Pruning directs plant energy toward fruit instead of extra leaves. But aggressive pruning causes stress that makes plants wilt. If your tomato started drooping days after a heavy pruning session, stress is the cause.</p><p>Let the plant recover before pruning again. <strong>Focus future pruning on removing only the suckers between main and lateral stems rather than cutting back entire branches</strong>. Pinch these small shoots off with your fingers instead of using pruning shears for more aggressive cuts.</p><p>The plant will bounce back once it's had time to recover. Resume normal care and wait for signs of new growth before considering another pruning session.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-XZQZ5O"></div>                            </div>                            <script src="https://kwizly.com/embed/XZQZ5O.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/home/gardening/why-are-my-tomato-plant-leaves-turning-yellow-5-steps-to-save-your-harvest">Why are my tomato plant leaves turning yellow? 5 steps to save your harvest</a></li><li><a href="https://www.tomsguide.com/home/gardening/why-are-my-tomato-plant-leaves-turning-yellow-5-steps-to-save-your-harvest-clone">How to double your tomato harvest — the 3-step pruning system for massive yields</a></li><li><a href="https://www.tomsguide.com/home/outdoors/gardeners-swear-by-this-simple-trick-heres-how-to-save-split-tomatoes-fast">Gardeners swear by this simple trick — here's how to save split tomatoes fast</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ How to sharpen a lawn mower blade in 5 simple steps (and save your grass) ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/home/lawn-care/how-to-sharpen-a-lawn-mower-blade-in-5-simple-steps-and-save-your-grass</link>
                                                                            <description>
                            <![CDATA[ Learn how to sharpen dull lawn mower blades to restore clean cuts and prevent lawn damage. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">vgFiEW75rtUiH5gbKy583Z</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/97WPqAwKqpyvVTSWNLwx3N-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Wed, 10 Jun 2026 08:30:00 +0000</pubDate>                                                                                                                                <updated>Fri, 26 Jun 2026 10:45:56 +0000</updated>
                                                                                                                                            <category><![CDATA[Lawn Care]]></category>
                                                    <category><![CDATA[Home]]></category>
                                                    <category><![CDATA[Outdoors]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/97WPqAwKqpyvVTSWNLwx3N-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[A lawn mower cutting the grass]]></media:description>                                                            <media:text><![CDATA[A lawn mower cutting the grass]]></media:text>
                                <media:title type="plain"><![CDATA[A lawn mower cutting the grass]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/97WPqAwKqpyvVTSWNLwx3N-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Dull mower blades are the most overlooked cause of an <a href="https://www.tomsguide.com/home/outdoors/3-lawn-care-mistakes-silently-killing-your-grass-this-summer-and-how-to-avoid-them">unhealthy lawn</a>. Instead of cutting grass cleanly, dull blades tear and shred grass blades, leaving ragged edges that turn brown, invite disease, and stress roots. </p><p>Sharp mower blades can make all the difference between a pristine lawn and a damaged one. Sharpening your lawn mower blades takes about 30 minutes, requires no professional help, and saves you money on premature blade replacements. </p><p>Whether you're using a metal file or an angle grinder, this step-by-step guide covers exactly how to sharpen your mower blade safely, at the right angle, and correctly balanced, so your grass stays healthy all season long.</p><section class="howto-block">                    <h3>1) Prepare your mower for blade removal</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/kiAt9GaW4dFDBHE86DBtvD.jpg"                                        alt="A lawn mower cutting the grass"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/kiAt9GaW4dFDBHE86DBtvD.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Before you sharpen lawn mower blades, safety comes first. Disconnect power immediately. <strong>Electric mowers should be unplugged with the battery removed </strong>completely. </p><p><strong>For gas mowers, disconnect the spark plug wire </strong>to prevent accidental starting.<strong> </strong>To prevent gas spills, either drain the tank or place a piece of plastic wrap under the gas cap and screw it back on tightly to seal the vent hole.</p><p><strong>Carefully tip the mower onto its side</strong>, keeping the air filter and carburetor facing up to stop oil and gas from leaking into the engine. Before removing the blade, <strong>mark it with spray paint or a marker</strong> so you know which side faces downward.</p><p> Installing a mower blade upside-down means it simply won't cut, which is a frustrating mistake that's easy to avoid.</p></p>                </section><section class="howto-block">                    <h3>2) Remove and inspect the blade</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/FsqeoAKMXFa7LLdhNfmvpC.jpg"                                        alt="A lawn mower having it's blade removed with a wrench"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/FsqeoAKMXFa7LLdhNfmvpC.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p><strong>Use a wrench to loosen and remove the bolt or nut</strong>, keeping the fastener somewhere safe. With the blade off, <strong>take the opportunity to clean any grass buildup </strong>from inside the mower deck while you have clear access.</p><p><strong>Wipe the blade clean and inspect it carefully</strong>. Small nicks and dull edges are entirely fixable through sharpening. Deep cracks, large dents, or severe bends are a different story. Structural damage like that means the blade needs replacing, not sharpening.</p></p>                </section><section class="howto-block">                    <h3> 3) Sharpen the mower blade at the right angle</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/Z5X3uBECrVeLuy6oDjhgRM.jpg"                                        alt="An angle grinder being used to sharpen a lawn mower blade"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/Z5X3uBECrVeLuy6oDjhgRM.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>The correct angle to sharpen a mower blade is <strong>30 to 35 degrees</strong>,<strong> </strong>matching the manufacturer's original factory bevel. Getting this angle wrong is where most people's results fall short; a steeper angle will chop rather than cut, while a shallower angle will dull instantly.</p><p>Clamp the blade in a vise with one cutting edge facing up. A metal file held at 30 degrees, pushed away from your body in smooth, consistent strokes, is the most controlled method and ideal if you haven't done this before. Around 50 strokes per edge is usually enough<strong>. The goal is "butter knife sharp." </strong></p><p>An angle grinder gets the job done faster and works just as well in experienced hands. The main thing to watch is heat. Use light pressure and take frequent breaks to let the metal air-cool. </p><p><strong>Never dip a hot blade into cold water</strong>, as this can quench-harden the steel unevenly, making it brittle and prone to shattering. Whichever method you use, <strong>sharpen one edge fully before flipping the blade and repeating</strong> on the other side. Expect around 15 minutes of sharpening time either way.</p></p>                </section><section class="howto-block">                    <h3>4) Check and correct blade balance</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/az8QYgwiUbb7oGbDTaNQ9k.jpg"                                        alt="A damaged lawn mower blade"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/az8QYgwiUbb7oGbDTaNQ9k.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Skipping the balance check is one of the most common mower blade mistakes. An unbalanced blade vibrates excessively, and over time that vibration wears out the engine and spindle bearing. </p><p><strong>Rest the blade horizontally on a nail or screwdriver through the center hole</strong>. If one side dips, that side is heavier and needs more metal removed. <strong>Go back to sharpening and take a little more off the heavy side </strong>until the blade sits level. </p><p>A dedicated blade balancer tool, inexpensive and available at most hardware stores, gives a more precise result. </p></p>                </section><section class="howto-block">                    <h3>5) Reinstall and test your sharpened blade</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/Hrn5WkBxseADQ8gvknqdeC.jpg"                                        alt="A lawn mower cutting the grass"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/Hrn5WkBxseADQ8gvknqdeC.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Shutterstock)</div></figure>                    <p><p>Using your earlier markings, <strong>verify the blade is facing the correct direction before reinstalling</strong>. Tighten the bolt or nut securely to the manufacturer's torque specifications. </p><p><strong>Remove the plastic wrap from the gas cap </strong>if you used it, <strong>reconnect the spark plug wire, and do a test cut</strong> on a small patch of grass.</p><p>A properly sharpened blade cuts cleanly with no tearing or ragged edges. If the quality is still poor after sharpening, remove the blade and sharpen more aggressively, or consider whether replacement is the better call.</p></p>                </section><h2 id="how-often-should-i-sharpen-my-lawn-mower-blade">How often should I sharpen my lawn mower blade? </h2><p>Sharpen your lawn mower blades after every 25 hours of mowing, which is roughly twice per season for regular users. </p><p>Beyond the schedule, torn or ragged grass edges after cutting, a lawn that yellows a day or two after mowing, or visible nicks on the blade are all signs it needs attention sooner. Hitting a rock, stick, or hard object while mowing warrants an immediate inspection too.</p><p>Always sharpen before storing your mower for winter. It prevents corrosion and means the mower is ready to go the moment spring arrives.</p><p>Not every dull blade is worth sharpening. Cracks or fractures anywhere on the blade, a severe bend that sharpening won't correct, or metal worn so thin from repeated sharpening that it won't hold an edge — these are all signs replacement is the right move. <br><br>Once you've sharpened your mower blades and mown your lawn, it’s worth leaving the <a href="https://www.tomsguide.com/home/gardeners-urged-not-to-make-this-mistake-with-their-grass-clippings-heres-why-you-shouldnt-throw-them-away">grass clippings</a> on your lawn. They’ll act as a natural mulch and fertilizer.</p><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-eG0N2W"></div>                            </div>                            <script src="https://kwizly.com/embed/eG0N2W.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/home/lawn-care/11-secrets-to-a-lawn-thats-greener-than-your-neighbors">11 secrets to a lawn that’s greener than your neighbor's</a></li><li><a href="https://www.tomsguide.com/home/gardening/ant-hills-multiplying-how-to-destroy-the-colony-before-it-takes-over-your-yard">Ant hills multiplying? How to destroy the colony before it takes over your yard</a></li><li><a href="https://www.tomsguide.com/home/7-ways-to-banish-weeds-from-your-lawn-that-wont-harm-the-grass">7 tips to banish weeds from your lawn that won't harm the grass</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ Watching the World Cup on a Samsung TV? Change these 5 sound and picture settings ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/tvs/watching-the-world-cup-on-a-samsung-tv-change-these-5-sound-and-picture-settings</link>
                                                                            <description>
                            <![CDATA[ Learn which five Samsung TV settings to adjust for World Cup-viewing. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">oqX75RuzYvyHNCqc5joDB4</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/zoyX8A4MsxCMzoDSkjvYHo-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Wed, 10 Jun 2026 06:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[TVs]]></category>
                                                                                                <author><![CDATA[ kaycee.hill@futurenet.com (Kaycee Hill) ]]></author>                    <dc:creator><![CDATA[ Kaycee Hill ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xHn6RmpEqg87cvtLwrBu9G.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/zoyX8A4MsxCMzoDSkjvYHo-1280-80.jpg">
                                                            <media:credit><![CDATA[Samsung]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[Best 65-inch TVs]]></media:description>                                                            <media:text><![CDATA[Best 65-inch TVs]]></media:text>
                                <media:title type="plain"><![CDATA[Best 65-inch TVs]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/zoyX8A4MsxCMzoDSkjvYHo-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Samsung TVs ship with default settings optimized for showroom displays and energy savings, not sports viewing. Out of the box, your Samsung TV is working against you during the World Cup. </p><p>Motion smoothing makes live actual look unnatural. Eco Mode dims brightness and reduces contrast. Standard audio buries commentary under crowd noise, and so on. But it doesn't have to be so! These five quick setting changes transform how the <a href="https://www.tomsguide.com/entertainment/streaming/toms-guide-to-the-world-cup">FIFA World Cup</a> looks and sounds. </p><p>These adjustments take minutes but deliver stadium-quality viewing. Here's exactly which settings to tweak. </p><section class="howto-block">                    <h3>1. Disable Picture Clarity (motion smoothing)</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/mL6ALkw2dLH2i3a6VqznqR.jpg"                                        alt="Virgil Van Dijk playing for the Netherlands in a pre-World Cup friendly"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/mL6ALkw2dLH2i3a6VqznqR.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Getty Images)</div></figure>                    <p><p>Samsung calls motion smoothing "Picture Clarity," and it's often enabled by default. This feature adds extra frames between actual video frames to reduce blur. For sports, this is the opposite of what you want. It makes live action look overly smooth and artificial, aka the "<a href="https://www.tomsguide.com/us/disable-soap-opera-effect-tv,review-5695.html">soap opera effect</a>."</p><p><strong>Go to Settings, Picture, Expert Settings, Picture Clarity Settings and set it to Off</strong>. This restores natural motion and makes World Cup matches feel immediate and realistic. </p><p>If you watch other content where slight smoothing helps, you can experiment with  settings, but for live sports, Off is the right choice.</p></p>                </section><section class="howto-block">                    <h3>2. Enable amplify sound mode</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="http://cdn.mos.cms.futurecdn.net/zoyX8A4MsxCMzoDSkjvYHo.jpg"                                        alt="Best 65-inch TVs"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="http://cdn.mos.cms.futurecdn.net/zoyX8A4MsxCMzoDSkjvYHo.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Samsung)</div></figure>                    <p><p>Standard audio buries live commentary under crowd noise and stadium ambience. Samsung's Amplify sound mode emphasizes the frequency range where human voices exist, pushing commentary forward so it cuts through background noise.</p><p><strong>Go to Home on your remote, open Quick Settings, tap Sound Mode, and select Amplify</strong>. </p><p>For older Samsung models, <strong>press Home, go to Settings, Sound, Sound Mode, and select Amplify</strong>. You'll immediately notice commentators become clearer while stadium atmosphere remains intact.</p></p>                </section><section class="howto-block">                    <h3>3. Turn off eco mode</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/LCaYsJPhR5kmzftahFqaWm.jpg"                                        alt="Samsung QN90C Neo QLED TV"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/LCaYsJPhR5kmzftahFqaWm.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Future)</div></figure>                    <p><p>Eco Mode reduces brightness automatically to save electricity. It sounds environmentally responsible, but it undermines picture quality. Your TV dims below your manually set brightness, making colors look duller, contrast decreases, and details in darker scenes disappear.</p><p><strong>Go to Settings, General and Privacy, Power and Energy Saving, and toggle off Eco Solution</strong>. You'll immediately notice brighter, more dynamic colors and sharper contrast. </p><p>For World Cup viewing, especially matches played in darker stadiums or during evening broadcasts, this makes a significant difference.</p></p>                </section><section class="howto-block">                    <h3>4. Enable auto volume </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/jHLZc4VxfysFqWQmRJfkdA.jpg"                                        alt="The official FIFA World Cup 2026 pilsner glass "                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/jHLZc4VxfysFqWQmRJfkdA.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © FIFA)</div></figure>                    <p><p>World Cup matches have dramatic swings in volume: quiet commentary suddenly interrupted by roaring crowds and loud action sequences. Auto Volume keeps audio levels consistent across these changes, eliminating the need to constantly adjust your remote.</p><p><strong>Go to Home on your remote, then Settings, Sound, Expert Settings, and toggle on Auto Volume</strong>. This narrows the gap between the quietest dialogue and the loudest crowd moments, so you're not fighting with volume levels throughout the match.</p></p>                </section><section class="howto-block">                    <h3>5. Disable automatic brightness optimization</h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/FGhCNebidnVkaW27eBACNB.jpg"                                        alt="World Cup Trophy ahead of 2026 tournament"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/FGhCNebidnVkaW27eBACNB.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © David Ramos - FIFA/FIFA via Getty Images)</div></figure>                    <p><p>Samsung's brightness optimization automatically adjusts your TV's brightness based on room lighting. While this sounds helpful, it often delivers inconsistent results and leaves your screen too dim or too bright as room lighting changes.</p><p><strong>Go to Settings, General and Privacy, Power and Energy Saving and turn off Brightness Optimization</strong>. </p><p>Then <strong>navigate to Settings, Picture, Expert Settings, and manually adjust the brightness while watching World Cup footage</strong>. This will give you consistent, predictable brightness throughout the match.</p></p>                </section><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-ey6qBW"></div>                            </div>                            <script src="https://kwizly.com/embed/ey6qBW.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide </span></h3><ul><li><a href="https://www.tomsguide.com/entertainment/sports/watch-world-cup-2026-free-live-streams">How to watch World Cup 2026: live stream every game for free from anywhere in the world</a></li><li><a href="https://www.tomsguide.com/tvs/3-tv-settings-to-change-right-now-for-the-ultimate-world-cup-experience">3 TV settings to change right now for the ultimate World Cup experience</a></li><li><a href="https://www.tomsguide.com/tvs/how-to-extend-your-tvs-lifespan-5-simple-habits-that-make-it-last-longer">How to extend your TV's lifespan — 5 simple habits that make it last longer</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ How to use Google’s new "Docs Live" voice feature to dictate perfect emails ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/ai/how-to-use-googles-hidden-new-docs-live-voice-feature-to-dictate-perfect-emails</link>
                                                                            <description>
                            <![CDATA[ With Google’s "Docs Live" AI features enabled within Google Workspace, you can use one of its voice-activated features to write the perfect email — here’s how. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">YEqoyTAJyMBEzuJxVHwUSJ</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/B2agYQTbgtqTgobrMBkYT8-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Wed, 10 Jun 2026 05:30:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[AI]]></category>
                                                                                                                    <dc:creator><![CDATA[ Elton Jones ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/NVtYYXr3tEPUE67jf3HtXM.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ null ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/B2agYQTbgtqTgobrMBkYT8-1280-80.jpg">
                                                            <media:credit><![CDATA[Shutterstock]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[an image of the Google Docs logo on an Android smartphone ]]></media:description>                                                            <media:text><![CDATA[an image of the Google Docs logo on an Android smartphone ]]></media:text>
                                <media:title type="plain"><![CDATA[an image of the Google Docs logo on an Android smartphone ]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/B2agYQTbgtqTgobrMBkYT8-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>Google Workspace has become an integral part of everyone’s digital lives when it comes to accessing emails, writing detailed notes, and storing crucial documents.</p><p>Google Docs has become a daily part of my workdays to the point where I simply can’t live without it. When the time arrives for me to cook up a first draft for a future article, build a list of all the video games I’ve beaten this year, or put together a new cover letter, I dive right into Docs to get the job done.</p><p>A slew of additional AI-powered updates have recently been added to <a href="https://www.tomsguide.com/coupons/google-workspace">Google Workspace</a>, including conversational voice features, an image generation and editing app called Google Pics, AI inbox management for Google AI Plus and Pro subscribers, and Gemini Spark, a 24/7 personal AI agent within the Gemini app.</p><p>On the AI voice front, Google Docs users can take advantage of a Docs Live-enabled feature that lets them speak into an empty Google Doc and have their words turned into readable text. </p><p>Using it to jot down emails while making them sound more human and grammatically polished is a great way to work. Here’s how to make that process work for you.</p><section class="howto-block">                    <h3>Writing emails by voice </h3>                    <figure>                            <p class="bordeaux-image-check">                                <img    src="https://cdn.mos.cms.futurecdn.net/EBp25JqtjZX9twNBPAsofY.jpg"                                        alt="google docs live"                                        onerror="this.parentNode.replaceChild(window.missingImage(),this)"                                        data-pin-media="https://cdn.mos.cms.futurecdn.net/EBp25JqtjZX9twNBPAsofY.jpg"                                        class="expandable van-old-layout-image">                            </p><div class="credit">(Image: © Tom's Guide )</div></figure>                    <p><p>Once you open a blank document in Google Docs, <strong>navigate to the top menu and select Tools</strong>. From there, <strong>scroll down and activate the Voice Typing option</strong>. </p><p>As a simple keyboard shortcut, you can use Ctrl + Shift + S on Windows and Cmd + Shift + S on Mac to enable the Voice Typing feature.</p><p>After granting Google Docs permission to use your microphone, c<strong>lick the language drop-down menu </strong>beneath the microphone icon and <strong>select the language you'll be speaking</strong>. This ensures Docs can accurately transcribe your speech. Once you've selected your language, click the microphone icon and speak your email message aloud.</p><p>To make the Docs Live voice-enabled AI feature properly follow your format, <strong>use vocal punctuation commands like "period," "comma," "new paragraph," and "question mark" </strong>to add the appropriate structure you need to your email. </p><p>A slew of other working punctuation commands you can rely on include the following:</p></p>                </section><ul><li>"New line"</li><li>"Hyphen"</li><li>"Colon"</li><li>"Semicolon"</li><li>"Quotation mark"</li><li>"End quotation mark"</li><li>“Open parenthesis"</li><li>"Close parenthesis"</li><li>"Create bulleted list"</li><li>"Start numbered list"</li><li>"Exit bulleted list"</li></ul><p>Once you've completed your spoken email, <strong>make any edits you see fit and tap into Gemini </strong>— which appears as an icon at the bottom of your newly filled-in document, to make additional changes based on the prompts you provide.</p><p>Once your email is fully polished, it's as easy as copying and pasting it into a ready-to-send Gmail message.</p><h2 id="bottom-line">Bottom line</h2><p>Docs Live is a handy, AI-powered tool designed for writers who want to capture ideas, draft articles, and pull content from the web and Google Workspace documents — all using voice commands. </p><p>It also makes composing emails for personal and professional use effortless through its Voice Typing feature in Google Docs.</p><div style="min-height: 250px;">                                <div class="kwizly-quiz kwizly-XbL3nW"></div>                            </div>                            <script src="https://kwizly.com/embed/XbL3nW.js" async></script><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom’s Guide</span></h3><ul><li><a href="https://www.tomsguide.com/computing/stop-letting-google-track-your-every-move-how-to-clear-your-search-history-in-2026">Stop letting Google track your every move — how to clear your search history in 2026</a></li><li><a href="https://www.tomsguide.com/ai/google-gemini/google-geminis-guided-learning-feature-makes-ai-actually-check-if-you-understand-heres-how-it-works">Google Gemini's Guided Learning feature makes AI actually check if you understand — here's how it works</a></li><li><a href="https://www.tomsguide.com/computing/email/after-two-decades-google-finally-rolls-out-a-way-to-change-your-gmail-address-heres-how">After two decades, Google finally rolls out a way to change your Gmail address — here's how</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
                                <item>
                                                            <title><![CDATA[ The iPadOS 27 developer beta is live — here's how to download it on your iPad ]]></title>
                                                                                                                                                                                                <link>https://www.tomsguide.com/computing/ipads/the-ipados-27-developer-beta-is-live-heres-how-to-download-it-on-your-ipad</link>
                                                                            <description>
                            <![CDATA[ iPadOS is learning some new tricks, and you can check them out today with the iPadOS 27 beta. ]]>
                                                                                                            </description>
                                                                                                                                <guid isPermaLink="false">yMX4wJYg6M9uguKSZXSPfH</guid>
                                                                                                <enclosure url="https://cdn.mos.cms.futurecdn.net/iG5tTdDFXptufbDQzuJPyL-1280-80.jpg" type="image/jpeg" length="0"></enclosure>
                                                                        <pubDate>Tue, 09 Jun 2026 11:00:00 +0000</pubDate>                                                                                                                                                                                                                                <category><![CDATA[iPads]]></category>
                                                    <category><![CDATA[Computing Peripherals]]></category>
                                                    <category><![CDATA[Tablets]]></category>
                                                                                                                    <dc:creator><![CDATA[ Lloyd Coombes ]]></dc:creator>                                                                                    <dc:source><![CDATA[ https://cdn.mos.cms.futurecdn.net/xcWocVTwa9yiwXRs559XNA.jpg ]]></dc:source>
                                                                <dc:description><![CDATA[ &lt;p&gt;Lloyd Coombes is a freelance tech and fitness writer. He&#039;s an expert in all things Apple as well as in computer and gaming tech, with previous works published on TechRadar, Tom&#039;s Guide, Live Science and more. You&#039;ll find him regularly testing the latest MacBook or iPhone, but he spends most of his time writing about video games as Gaming Editor for the Daily Star. He also covers board games and virtual reality, just to round out the nerdy pursuits.&lt;/p&gt; ]]></dc:description>
                                                                                                                                                                                                                                                <media:content type="image/jpeg" url="https://cdn.mos.cms.futurecdn.net/iG5tTdDFXptufbDQzuJPyL-1280-80.jpg">
                                                            <media:credit><![CDATA[Tom&#039;s Guide / Apple]]></media:credit>
                                                                                                                                                                                                                                    <media:description><![CDATA[iPadOS 27]]></media:description>                                                            <media:text><![CDATA[iPadOS 27]]></media:text>
                                <media:title type="plain"><![CDATA[iPadOS 27]]></media:title>
                                                    </media:content>
                                                    <media:thumbnail url="https://cdn.mos.cms.futurecdn.net/iG5tTdDFXptufbDQzuJPyL-1280-80.jpg" />
                                                                                                                                                                    <content:encoded >
                            <![CDATA[
                            <article>
                                <p>WWDC 26 is in the books (or at least, the keynote is), and as is tradition, we got a good look at OS updates across the Apple ecosystem.</p><p>iPadOS 27 is one such release, and developer beta 1 is out as of right now. Here’s what’s new, and why you might want to give it a try — and why you might want to skip it for now.</p><h2 id="what-s-new-in-ipados-27">What’s new in iPadOS 27?</h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:696px;"><p class="vanilla-image-block" style="padding-top:64.94%;"><img id="w4N7Xodv2eHmZPdzd92Gjh" name="imgi_32_time_allowance__bt772zp1sz1e_large" alt="iPadOS 27 screenshots" src="https://cdn.mos.cms.futurecdn.net/w4N7Xodv2eHmZPdzd92Gjh.jpg" mos="" align="middle" fullscreen="" width="696" height="452" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Apple)</span></figcaption></figure><p>As with iPhone and Mac, the big draw here is the reinvented Siri, which is now much more capable. <a href="https://www.tomsguide.com/computing/vr-ar/ipados-27-everything-coming-to-the-apples-beloved-tablets">It’s context-aware</a>, understands what’s on your screen, and can search through your data via on-device processing to find key data from your contacts, messages, Mail, and more.</p><p>There are also new child safety features like allowed apps, and a laundry list of tweaks under the hood to things like memory usage, display rendering, and more granularity over the Liquid Glass interface, which debuted last year.</p><h2 id="a-word-of-warning">A word of warning</h2><figure class="van-image-figure  inline-layout" data-bordeaux-image-check ><div class='image-full-width-wrapper'><div class='image-widthsetter' style="max-width:696px;"><p class="vanilla-image-block" style="padding-top:64.94%;"><img id="Twg7U5kYbXspPSztgqi7kh" name="imgi_23_handwritten_notes__e0kvf725uwsy_large" alt="iPadOS 27 screenshots" src="https://cdn.mos.cms.futurecdn.net/Twg7U5kYbXspPSztgqi7kh.jpg" mos="" align="middle" fullscreen="" width="696" height="452" attribution="" endorsement="" class="inline"></p></div></div><figcaption itemprop="caption description" class=" inline-layout"><span class="credit" itemprop="copyrightHolder">(Image credit: Apple)</span></figcaption></figure><p>As with any beta, iPadOS or otherwise, you should be wary of features (both new and old) working inconsistently. It’s not uncommon for even a tech giant like Apple to go through multiple rounds of testing before the public beta, which tends to be a little more stable (at least historically speaking).</p><p>It’s also possible that running the beta will cause a drop in your battery expectancy. If you find yourself needing to charge more regularly, it could be because you’re on the beta.</p><h2 id="supported-ipados-27-models">Supported iPadOS 27 models</h2><p>iPadOS 27 is compatible with the following devices:</p><ul><li><strong>iPad Pro 2nd Gen or later</strong></li><li><strong>iPad Air 4th Gen or later</strong></li><li><strong>iPad Mini 6th Gen or later</strong></li><li><strong>iPad 9th Gen or later</strong></li></ul><p>It’s worth noting that the new Siri AI features are only supported on M4 or later iPad models.</p><h2 id="how-to-get-the-ipados-27-beta">How to get the iPadOS 27 beta</h2><p>With those considerations out of the way, the process of enrolling your iPad is very similar to that in prior years.</p><p>First, you’ll need to enroll in the Apple Developer Program. You may already be enrolled from prior years, but if not, <a href="https://developer.apple.com/programs/enroll/">visit the sign-up page</a> to get the ball rolling. </p><p>You’ll need to log your name and address, then set your entity type as an individual. When the payment screen appears, back out, and you’ll be on the free developer tier.</p><p>With that done, open your iPad and follow these instructions:</p><ul><li>Open Settings > General > Software Update</li><li>Tap Beta Updates</li><li>Select ‘iPadOS 27 Developer Beta’</li><li>Then download it and install via the on-screen instructions</li></ul><h3 class="article-body__section" id="section-more-from-tom-s-guide"><span>More from Tom's Guide</span></h3><ul><li><a href="https://www.tomsguide.com/phones/iphones/ios-27-is-official-all-the-new-upgrades-and-features-announced-at-wwdc-2026">iOS 27 is official: All the new upgrades and features announced at WWDC 2026</a></li><li><a href="https://www.tomsguide.com/computing/macos/macos-27">macOS Golden Gate: The biggest updates coming to Macs</a></li><li><a href="https://www.tomsguide.com/ai/apple-finally-fixed-siri-heres-all-the-features-for-the-new-siri-ai-announced-at-wwdc">Apple just completely rebuilt Siri AI — here are the 7 biggest upgrades coming to your iPhone</a></li></ul>
                                                            </article>
                            ]]>
                        </content:encoded>
                                                </item>
            </channel>
</rss>