{"id":81748,"date":"2026-10-26T20:37:49","date_gmt":"2026-10-27T00:37:49","guid":{"rendered":"https:\/\/www.squawka.com\/us\/?post_type=news&#038;p=81748"},"modified":"2026-10-26T20:47:30","modified_gmt":"2026-10-27T00:47:30","slug":"match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls","status":"publish","type":"news","link":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/","title":{"rendered":"Portland Timbers vs Houston Dynamo: Predictions, Picks, Odds &#038; Lineups"},"content":{"rendered":"<p><strong><a class=\"sq-club-link\" href=\"https:\/\/www.squawka.com\/us\/stats\/clubs\/portland-timbers\/\">Portland Timbers<\/a> host <a class=\"sq-club-link\" href=\"https:\/\/www.squawka.com\/us\/stats\/clubs\/houston-dynamo\/\">Houston Dynamo<\/a> at Providence Park on Sunday, November 1 (9:45 PM ET \/ 8:45 PM CT \/ 6:45 PM PT).<\/strong><\/p>\n<p>Portland Timbers will lean heavily on Kristoffer Velde, who leads the squad with 8 goals this season, with David Pereira da Costa supplying creativity from midfield off 5 goals and 49 chances created. Houston Dynamo&#8217;s threat starts with <a href=\"https:\/\/www.squawka.com\/us\/outright-markets\/mls-2026-golden-boot-betting-odds\/\">Guilherme Augusto Vieira dos Santos<\/a>, who has produced 16 goals and 68 chances created from attacking midfield, backed by Mateusz Piotr Bogusz&#8217;s 8 goals of his own.<\/p>\n<p>US viewers can watch Portland Timbers vs Houston Dynamo on Apple TV&#8217;s MLS Season Pass.<\/p>\n\n\n<style>\n.sq-bpg{--sig:#a8e039;--acc:#a8e039;--acc-ink:#0d2a08;--ink:#eaf5e6;--dim:#a7cbb8;--line:rgba(255,255,255,.10);\n --v-strong:#a8e039;--v-value:#7ee081;--v-fair:#9fb6aa;--v-priced:#f0b429;\n font-family:'Bricolage Grotesque',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);\n max-width:960px;margin:16px auto 26px;border-radius:16px;overflow:hidden;position:relative;\n background:linear-gradient(168deg,#0f3b2b 0%,#08281c 62%,#06211a 100%);box-shadow:0 18px 44px rgba(6,26,18,.34)}\n.sq-bpg *{box-sizing:border-box}\n.sq-bpg[data-comp=\"epl\"]{--acc:#6f00ff;--acc-ink:#fff}\n.sq-bpg[data-comp=\"ucl\"]{--acc:#022ce8;--acc-ink:#fff}\n.sq-bpg[data-comp=\"mls\"]{--acc:#e01e13;--acc-ink:#fff}\n.sq-bpg[data-comp=\"liga-mx\"]{--acc:#4c9540;--acc-ink:#fff}\n.sq-bpg__wrap{position:relative;z-index:1;padding:20px 26px 22px}\n.sq-bpg__r{position:absolute;width:0;height:0;opacity:0;pointer-events:none}\n.sqsh__top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}\n.sqsh__mark{display:inline-flex;align-items:center;gap:9px}\n.sqsh__mark svg{display:block}\n.sqsh__wm{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:14px;letter-spacing:.02em;color:var(--ink)}\n.sqsh__wm b{color:var(--sig)}\n.sqsh__geo{margin-left:auto;display:flex;align-items:center;gap:9px}\n.sqsh__geoq{font-size:11px;color:var(--dim);font-weight:600;white-space:nowrap}\n.sqsh__pills{display:inline-flex;background:rgba(255,255,255,.08);border-radius:999px;padding:3px;font-size:11px;font-weight:700}\n.sqsh__pills label{padding:5px 11px;border-radius:999px;cursor:pointer;color:var(--dim);white-space:nowrap;transition:.15s}\n.sq-bpg__r--us:checked ~ * .l-us,.sq-bpg__r--row:checked ~ * .l-row{color:var(--acc-ink);background:var(--acc)}\n@media(max-width:520px){.sqsh__geoq{display:none}}\n.sq-bpg__ttl{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:19px;line-height:1.15;letter-spacing:-.01em;margin:14px 0 0;color:var(--ink)}\n.sqsh__hero{margin:12px 0 2px}\n.sqsh__lead{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:18px;line-height:1.24;letter-spacing:-.01em;margin:0;text-wrap:balance}\n.sqsh__mk{color:var(--dim)}\n.sqsh__sg{color:var(--sig)}\n.sqsh__gap{display:inline-flex;align-items:center;gap:9px;margin-top:10px;padding:5px 12px;border-radius:8px;background:rgba(168,224,57,.13);border:1px solid rgba(168,224,57,.4)}\n.sqsh__gap--agree{background:rgba(255,255,255,.06);border-color:var(--line)}\n.sqsh__big{font-family:'Bricolage Grotesque',sans-serif;font-size:18px;font-weight:800;color:var(--sig);letter-spacing:-.02em}\n.sqsh__gap--agree .sqsh__big{color:#cfe0d6}\n.sqsh__lbl{font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--sig)}\n.sqsh__gap--agree .sqsh__lbl{color:var(--dim)}\n.sqsh__note{margin:9px 0 0;font-size:12px;color:var(--dim);line-height:1.4}\n.sqsh__act{margin:14px 0 6px}\n.sq-bpg__list{margin-top:16px}\n.sqsh__head,.sq-bpg__row,.sqsh__r3{display:grid;grid-template-columns:1fr 52px 62px minmax(72px,auto) 20px;gap:10px;align-items:center}\n.sqsh__head{padding:0 2px 8px;border-bottom:1px solid var(--line)}\n.sqsh__head span{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);text-align:right}\n.sqsh__head span.l{text-align:left}\n.sq-bpg__row{padding:11px 2px;border-bottom:1px solid var(--line)}\n.sq-bpg__row:last-child{border-bottom:0}\n.sqsh__cell{text-align:right;font-variant-numeric:tabular-nums}\n.sqsh__mcell{text-align:left;min-width:0}\n.sqsh__mname{display:block;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);font-weight:700}\n.sq-bpg__pk{display:block;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:15px;color:var(--ink);line-height:1.18;letter-spacing:-.01em;margin-top:1px}\n.sq-bpg__why{display:none}\n.sqsh__mk-n{font-size:14px;font-weight:700;color:var(--dim)}\n.sqsh__sg-n{font-size:15px;font-weight:800;color:var(--sig)}\n.sq-bpg__vd{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.03em;padding:3px 8px;border-radius:6px;white-space:nowrap;text-align:center}\n.sq-bpg__vd--strong{background:var(--v-strong);color:#0d2a08}\n.sq-bpg__vd--value{background:rgba(126,224,129,.16);color:var(--v-value);border:1px solid rgba(126,224,129,.4)}\n.sq-bpg__vd--fair{color:var(--v-fair);border:1px dashed rgba(255,255,255,.24)}\n.sq-bpg__vd--priced{color:var(--dim);border:1px solid var(--line)}\n.sq-bpg__vd--read{color:var(--dim);border:1px dashed rgba(255,255,255,.2)}\n.sq-bpg__vd--over{color:#e88aa8;border:1px dashed rgba(232,138,168,.4)}\n.sqsh__r3{padding:11px 2px;border-bottom:1px solid var(--line)}\n.sq-bpg__row[data-pick]{background:linear-gradient(90deg,rgba(168,224,57,.07),transparent 70%);border-radius:8px;margin:0 -6px;padding-left:8px;padding-right:8px}\n.sqsh__oc{display:block;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:15px;color:var(--dim);line-height:1.18;letter-spacing:-.01em;margin-top:1px}\n.sqsh__pickflag{display:inline-block;margin-left:7px;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--sig);background:rgba(168,224,57,.12);border:1px solid rgba(168,224,57,.4);padding:1px 6px;border-radius:5px;vertical-align:middle}\n.sqsh__go{text-align:right}\n.sqsh__go a{display:none;width:20px;height:20px;border-radius:5px;align-items:center;justify-content:center;color:var(--dim);border:1px solid rgba(255,255,255,.14);text-decoration:none;font-weight:800}\n.sqsh__go a:hover{color:var(--acc-ink);background:var(--acc);border-color:var(--acc)}\n.sq-bpg__r--us:checked ~ * .sqsh__go a{display:inline-flex}\n.sqsh__foot{margin-top:16px}\n.sqsh__strip{display:flex;align-items:center;gap:9px;background:rgba(0,0,0,.20);border-radius:9px;padding:9px 12px;margin-bottom:12px;flex-wrap:wrap}\n.sqsh__strip .h{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);font-weight:800}\n.sqsh__strip .rec{margin-left:auto;font-size:11.5px;color:var(--dim);font-weight:600}\n.sqsh__cta a{display:none;align-items:center;justify-content:center;gap:8px;text-decoration:none;background:var(--acc);color:var(--acc-ink);font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:15px;letter-spacing:-.01em;padding:12px 16px;border-radius:10px}\n.sqsh__cta a:hover{filter:brightness(1.07)}\n.sqsh__cta svg{display:block}.sqsh__cta svg path{stroke:var(--acc-ink)}\n.sq-bpg__r--us:checked ~ * .sqsh__cta .go-us{display:flex}\n.sq-bpg__r--row:checked ~ * .sqsh__cta .go-row{display:flex}\n.sqsh__offer{font-size:11.5px;color:var(--dim);text-align:center;margin:11px 0 0;display:none}\n.sq-bpg__r--us:checked ~ * .sqsh__offer{display:block}\n.sqsh__offer b{color:var(--v-value)}\n.sqsh__compare{text-align:center;margin:9px 0 0}\n.sqsh__compare a{font-size:12px;color:var(--dim);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.22);padding-bottom:1px}\n.sqsh__compare a:hover{color:var(--acc)}\n.sqsh__src{font-size:11px;color:var(--dim);text-align:center;margin-top:9px}\n.sqsh__src .k{color:var(--ink)}\n.sqsh__compare .only-us,.sqsh__compare .only-row,.sqsh__src .only-us,.sqsh__src .only-row{display:none}\n.sq-bpg__r--us:checked ~ * .only-us{display:inline}\n.sq-bpg__r--row:checked ~ * .only-row{display:inline}\n\/* match-outcome \u2014 the horizontal 3-way (who wins), + the section divide before the tips *\/\n.sqsh__mo{margin:14px 0 0}\n.sqsh__mo-h{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin:0 0 9px}\n.sqsh__3way{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}\n.sqsh__3way .sq-bpg__row,.sqsh__3way .sqsh__r3{position:relative;display:block;padding:13px 10px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.03);text-align:center;margin:0;transition:border-color .15s,background .15s}\n.sqsh__3way .sq-bpg__row:last-child{border-bottom:1px solid var(--line)}\n.sqsh__3way .sq-bpg__row[data-pick]{border-color:rgba(168,224,57,.55);background:rgba(168,224,57,.10);box-shadow:inset 0 0 0 1px rgba(168,224,57,.22)}\n.sqsh__pgo{position:absolute;inset:0;z-index:3;display:none;border-radius:11px}\n.sq-bpg__r--us:checked ~ * .sqsh__pgo--us{display:block}\n.sq-bpg__r--row:checked ~ * .sqsh__pgo--row{display:block}\n.sqsh__3way .sqsh__r3:hover{border-color:var(--acc);background:rgba(255,255,255,.06)}\n.sqsh__3way .sq-bpg__row:hover{border-color:rgba(168,224,57,.85)}\n.sqsh__oc-in{display:flex;flex-direction:column;align-items:center;gap:3px}\n.sqsh__oc-name{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:14px;color:var(--ink);line-height:1.15;letter-spacing:-.01em}\n.sqsh__3way .sq-bpg__pk{display:none}\n.sqsh__oc-sig{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:25px;color:var(--sig);letter-spacing:-.02em;line-height:1}\n.sqsh__3way .sqsh__r3 .sqsh__oc-sig{color:#cfe0d6}\n.sqsh__oc-mkt{font-size:10px;color:var(--dim);font-weight:600;letter-spacing:.02em}\n.sqsh__oc-badge{margin-top:6px;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:2px 7px;border-radius:5px}\n.sqsh__oc-badge--pick{color:var(--sig);background:rgba(168,224,57,.14);border:1px solid rgba(168,224,57,.45)}\n.sqsh__oc-badge--value{color:var(--v-value);background:rgba(126,224,129,.12);border:1px solid rgba(126,224,129,.4)}\n.sqsh__div{height:1px;background:var(--line);margin:18px 0 14px}\n@media(max-width:560px){.sqsh__head,.sq-bpg__row{grid-template-columns:1fr 44px 54px 62px 18px;gap:7px}\n .sq-bpg__pk{font-size:14px}.sq-bpg__ttl{font-size:17px}.sqsh__lead{font-size:16px}\n .sqsh__3way{gap:6px}.sqsh__3way .sq-bpg__row,.sqsh__3way .sqsh__r3{padding:10px 5px}\n .sqsh__oc-sig{font-size:21px}.sqsh__oc-name{font-size:13px}}\n<\/style>\n<div class=\"sq-bpg\" id=\"sq-bpg-portla-cmmrba6q8ao26q8ttvhvhd7v8\" data-comp=\"\">\n <div class=\"sq-bpg__wrap\">\n  \n  <div class=\"sqsh__top\">\n    <span class=\"sqsh__mark\"><svg width=\"17\" height=\"17\" viewBox=\"0 0 696 696\" fill=\"#a8e039\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"><path d=\"M473.282 222.72H696.002C696.002 99.6672 596.335 0 473.282 0H250.562C250.562 123.053 350.23 222.72 473.282 222.72Z\"\/><path d=\"M222.72 445.44V0C99.6672 0 0 99.6672 0 222.72C0 345.773 99.6672 445.44 222.72 445.44Z\"\/><path d=\"M473.281 250.563V696.003C596.334 696.003 696.001 596.336 696.001 473.283C696.001 350.231 596.334 250.563 473.281 250.563Z\"\/><path d=\"M222.72 473.277H0C0 596.33 99.6672 695.997 222.72 695.997H445.44C445.44 572.944 345.773 473.277 222.72 473.277Z\"\/><\/svg><span class=\"sqsh__wm\">Squawka <b>Signal<\/b><\/span><\/span>\n    \n  <\/div>\n  <div class=\"sqsh__mo\"><div class=\"sqsh__mo-h\">Match outcome &middot; who wins<\/div>\n  <div class=\"sqsh__3way\">\n   <div class=\"sq-bpg__row\" data-pick=\"1\" data-market=\"Result\" data-selection=\"Portland Timbers\" data-prob=\"43\" data-odds=\"\" data-confidence=\"3\"><div class=\"sqsh__oc-in\"><span class=\"sqsh__oc-name\">Portland Timbers<\/span><span class=\"sq-bpg__pk\">Portland Timbers<\/span><span class=\"sqsh__oc-sig\">43%<\/span><span class=\"sqsh__oc-mkt\">mkt 50%<\/span><span class=\"sqsh__oc-badge sqsh__oc-badge--pick\">Our pick<\/span><span class=\"sq-bpg__why\"><\/span><a class=\"sqsh__pgo sqsh__pgo--us\" href=\"https:\/\/www.squawka.com\/us\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\" aria-label=\"Trade Portland Timbers on Kalshi\"><\/a><a class=\"sqsh__pgo sqsh__pgo--row\" href=\"https:\/\/www.squawka.com\/us\/go\/bet365?q=us-sg1-con-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\" aria-label=\"Back Portland Timbers with bet365\"><\/a><\/div><\/div>\n   <div class=\"sqsh__r3\"><div class=\"sqsh__oc-in\"><span class=\"sqsh__oc-name\">Draw<\/span><span class=\"sq-bpg__pk\">Draw<\/span><span class=\"sqsh__oc-sig\">25%<\/span><span class=\"sqsh__oc-mkt\">mkt 26%<\/span><span class=\"sq-bpg__why\"><\/span><a class=\"sqsh__pgo sqsh__pgo--us\" href=\"https:\/\/www.squawka.com\/us\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\" aria-label=\"Trade Draw on Kalshi\"><\/a><a class=\"sqsh__pgo sqsh__pgo--row\" href=\"https:\/\/www.squawka.com\/us\/go\/bet365?q=us-sg1-con-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\" aria-label=\"Back Draw with bet365\"><\/a><\/div><\/div>\n   <div class=\"sqsh__r3\"><div class=\"sqsh__oc-in\"><span class=\"sqsh__oc-name\">Houston Dynamo<\/span><span class=\"sq-bpg__pk\">Houston Dynamo<\/span><span class=\"sqsh__oc-sig\">32%<\/span><span class=\"sqsh__oc-mkt\">mkt 57%<\/span><span class=\"sq-bpg__why\"><\/span><a class=\"sqsh__pgo sqsh__pgo--us\" href=\"https:\/\/www.squawka.com\/us\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\" aria-label=\"Trade Houston Dynamo on Kalshi\"><\/a><a class=\"sqsh__pgo sqsh__pgo--row\" href=\"https:\/\/www.squawka.com\/us\/go\/bet365?q=us-sg1-con-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\" aria-label=\"Back Houston Dynamo with bet365\"><\/a><\/div><\/div>\n  <\/div><\/div>\n  <h2 class=\"sq-bpg__ttl\">Portland Timbers vs Houston Dynamo: Best Bets &amp; Predictions<\/h2>\n  <div class=\"sqsh__hero\"><p class=\"sqsh__lead\">The market prices <span class=\"sqsh__mk\">Under 2.5 at 4%.<\/span> <span class=\"sqsh__sg\">Signal says 47%.<\/span><\/p><span class=\"sqsh__gap\"><span class=\"sqsh__big\">+43<\/span><span class=\"sqsh__lbl\">points of value &middot; the goals market<\/span><\/span><\/div>\n<!-- SQMV-ACT-START v1 -->\n<style>\n.sqmv{margin:4px 0 0}\n.sqmv__rows{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}\n.sqmv__row{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);\n background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:9px;padding:7px 12px;font-size:12.5px}\n.sqmv__row:hover{border-color:rgba(168,224,57,.6)}\n.sqmv__row-v{color:var(--dim);font-weight:600}\n.sqmv__row-p{font-weight:800;font-variant-numeric:tabular-nums}\n.sqmv__cta a{display:flex;align-items:center;justify-content:center;text-decoration:none;background:var(--acc);\n color:var(--acc-ink);font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:15px;\n letter-spacing:-.01em;padding:13px 16px;border-radius:10px;text-align:center}\n.sqmv__cta a:hover{filter:brightness(1.07)}\n.sqmv__offer{display:block;text-align:center;font-size:11px;color:var(--dim);margin-top:7px;line-height:1.5}\n.sqmv__best{font-size:11px;color:var(--dim);text-align:center;margin:10px 0 0}\n.sqmv__none{font-size:12.5px;color:var(--dim);text-align:center;margin:0;padding:12px;border:1px dashed var(--line);border-radius:10px}\n.sqmv__b365{display:flex;align-items:center;justify-content:center;text-decoration:none;background:var(--acc);\n color:var(--acc-ink);font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:15px;\n padding:13px 16px;border-radius:10px}\n\n\/* SQMV-GEO-START *\/\n.sqmv__us{display:none}\n.sqmv__intl{display:block}\nbody[class*=\"country-us\"] .sqmv__us{display:block}\nbody[class*=\"country-us\"] .sqmv__intl{display:none}\nbody[class*=\"country-us\"] .sqsh__pgo--us{display:block}\nbody:not([class*=\"country-us\"]) .sqsh__pgo--row{display:block}\nbody[class*=\"country-us\"] .only-us{display:inline}\nbody:not([class*=\"country-us\"]) .only-row{display:inline}\n.sqmv__cta{display:none}\n.sqmv__cta--kalshi{display:block}\n\/* SQMV-GEO-END *\/\n<\/style>\n<div class=\"sqmv\"><div class=\"sqmv__us\"><div class=\"sqmv__rows\"><a class=\"sqmv__row sqmv__row--kalshi\" href=\"https:\/\/www.squawka.com\/us\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow\" target=\"_blank\"><span class=\"sqmv__row-v\">Kalshi<\/span><span class=\"sqmv__row-p\">48&cent;<\/span><\/a><\/div><div class=\"sqmv__cta sqmv__cta--kalshi\"><a href=\"https:\/\/www.squawka.com\/us\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow\" target=\"_blank\">Back Portland Timbers @ 48&cent; &middot; Kalshi &middot; $100 &rarr; $208<\/a><span class=\"sqmv__offer\">New to Kalshi? Trade $25, Get $25 Bonus &middot; use code SQUAWKA &middot; 18+<\/span><\/div><p class=\"sqmv__best\">Best live price across US prediction markets &middot; buy YES on Portland Timbers<\/p><\/div><div class=\"sqmv__intl\"><a class=\"sqmv__b365\" href=\"https:\/\/www.squawka.com\/us\/go\/bet365?q=us-sg1-con-wof-s-spo\" rel=\"sponsored nofollow\" target=\"_blank\">Back Portland Timbers with bet365<\/a><\/div><\/div>\n<!-- SQMV-ACT-END v1 -->\n  <div class=\"sqsh__div\"><\/div>\n  <div class=\"sqsh__mo-h\">The tips &middot; best bets<\/div>\n  <div class=\"sq-bpg__list\">\n    <div class=\"sqsh__head\"><span class=\"l\">Market<\/span><span>Mkt&nbsp;%<\/span><span>Signal&nbsp;%<\/span><span>Read<\/span><span><\/span><\/div>\n    <div class=\"sq-bpg__row\" data-market=\"Correct Score\" data-selection=\"Portland Timbers 1-0 Houston Dynamo\" data-prob=\"9\" data-odds=\"\" data-confidence=\"3\"><div class=\"sqsh__mcell\"><span class=\"sqsh__mname\">Correct Score<\/span><span class=\"sq-bpg__pk\">Portland Timbers 1-0 Houston Dynamo<\/span><span class=\"sq-bpg__why\">A cagey matchup between two defenses \u2014 Portland&#x27;s goal difference sits at -four \u2014 points to a narrow scoreline, and the Signal model lands on 1-0.<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sqsh__mk-n\">&mdash;<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sqsh__sg-n\">9%<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sq-bpg__vd sq-bpg__vd--read\">Model read<\/span><\/div><div class=\"sqsh__go\"><a href=\"https:\/\/www.squawka.com\/us\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\" aria-label=\"Trade Correct Score on Kalshi\">&rsaquo;<\/a><\/div>\n    <\/div>\n    <div class=\"sq-bpg__row\" data-market=\"Both Teams to Score\" data-selection=\"No\" data-prob=\"43\" data-odds=\"\" data-confidence=\"3\"><div class=\"sqsh__mcell\"><span class=\"sqsh__mname\">Both Teams to Score<\/span><span class=\"sq-bpg__pk\">Both teams: No<\/span><span class=\"sq-bpg__why\">Houston&#x27;s form reads L D D D D with goals hard to come by in that stretch, making a clean sheet at one end more likely than goals from both sides.<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sqsh__mk-n\">6%<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sqsh__sg-n\">43%<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sq-bpg__vd sq-bpg__vd--strong\">Strong value<\/span><\/div><div class=\"sqsh__go\"><a href=\"https:\/\/www.squawka.com\/us\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\" aria-label=\"Trade Both Teams to Score on Kalshi\">&rsaquo;<\/a><\/div>\n    <\/div>\n    <div class=\"sq-bpg__row\" data-market=\"Over 2.5 Goals\" data-selection=\"Under 2.5\" data-prob=\"47\" data-odds=\"\" data-confidence=\"3\"><div class=\"sqsh__mcell\"><span class=\"sqsh__mname\">Over \/ Under 2.5<\/span><span class=\"sq-bpg__pk\">Under 2.5<\/span><span class=\"sq-bpg__why\"><\/span><\/div><div class=\"sqsh__cell\"><span class=\"sqsh__mk-n\">4%<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sqsh__sg-n\">47%<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sq-bpg__vd sq-bpg__vd--strong\">Strong value<\/span><\/div><div class=\"sqsh__go\"><a href=\"https:\/\/www.squawka.com\/us\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\" aria-label=\"Trade Over 2.5 Goals on Kalshi\">&rsaquo;<\/a><\/div>\n    <\/div>\n    <div class=\"sq-bpg__row\" data-market=\"Anytime Goalscorer\" data-selection=\"Kristoffer Velde\" data-prob=\"28\" data-odds=\"\" data-confidence=\"3\" data-player-id=\"f1zilbsvn2cftezzxdiex51pl\"><div class=\"sqsh__mcell\"><span class=\"sqsh__mname\">Anytime Scorer<\/span><span class=\"sq-bpg__pk\">Kristoffer Velde to score anytime<\/span><span class=\"sq-bpg__why\">Velde leads Portland with eight goals and 29 shots on target this season, making him the likely source of the Timbers&#x27; goal in this one.<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sqsh__mk-n\">&mdash;<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sqsh__sg-n\">28%<\/span><\/div><div class=\"sqsh__cell\"><span class=\"sq-bpg__vd sq-bpg__vd--read\">Model read<\/span><\/div><div class=\"sqsh__go\"><\/div>\n    <\/div>\n  <\/div>\n  <div class=\"sqsh__foot\">\n    <div class=\"sqsh__strip\"><span class=\"h\">Signal edge calls<\/span><span class=\"rec\">Record building &middot; settles at full-time<\/span><\/div>\n    <p class=\"sqsh__compare\"><a class=\"only-us\" href=\"https:\/\/www.squawka.com\/us\/bet\/best-prediction-markets\/\">Compare all markets &rsaquo;<\/a><a class=\"only-row\" href=\"https:\/\/www.squawka.com\/us\/bet\/betting-sites\/bet365\/\">bet365 review &rsaquo;<\/a><\/p>\n    <p class=\"sqsh__src\"><span class=\"only-us\">Available to US traders in all 50 states &middot; 18+<\/span><span class=\"only-row\">Odds from <span class=\"k\">bet365<\/span> &middot; 18+ &middot; <span class=\"k\">begambleaware.org<\/span><\/span><\/p>\n  <\/div>\n <\/div>\n<\/div>\n\n\n<h2>Season Form &amp; Standings<\/h2>\n<style>\n.sq-standings table{width:100%;border-collapse:collapse;table-layout:auto}\n.sq-standings th,.sq-standings td{text-align:center;padding:8px 10px;white-space:nowrap;vertical-align:middle}\n.sq-standings th:first-child,.sq-standings td:first-child{text-align:left}\n@media (max-width:600px){\n  .sq-standings{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}\n  .sq-standings table{min-width:560px}\n  .sq-standings th,.sq-standings td{padding:6px 8px;font-size:13px}\n}\n<\/style>\n\n<p>Houston Dynamo head into this one fifth in the <a href=\"https:\/\/www.squawka.com\/us\/mls\/\">Western Conference<\/a> on 48 points, firmly in the <a href=\"https:\/\/www.squawka.com\/us\/outright-markets\/mls-2026-outright-winner-betting-odds\/\">playoff picture<\/a>, while Portland Timbers sit 11th on 37 points, needing a big finish to climb into contention.<\/p>\n\n<p><strong>Western Conference<\/strong><\/p>\n<figure class=\"wp-block-table sq-standings\"><table>\n<thead>\n<tr><th>Team<\/th><th>Pos<\/th><th>GP<\/th><th>W<\/th><th>D<\/th><th>L<\/th><th>GF<\/th><th>GA<\/th><th>GD<\/th><th>Pts<\/th><\/tr>\n<\/thead>\n<tbody>\n<tr><td>Houston Dynamo<\/td><td>5<\/td><td>31<\/td><td>13<\/td><td>9<\/td><td>9<\/td><td>41<\/td><td>39<\/td><td>+2<\/td><td>48<\/td><\/tr>\n<tr><td>Portland Timbers<\/td><td>11<\/td><td>31<\/td><td>10<\/td><td>7<\/td><td>14<\/td><td>54<\/td><td>58<\/td><td>-4<\/td><td>37<\/td><\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n<!-- sqstore:shop-the-match -->\n<!-- sqstore:fx home=portland-timbers away=houston-dynamo -->\n<div style=\"font-family:'Bricolage Grotesque',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;border:1px solid #e7e2ec;border-radius:14px;overflow:hidden;margin:28px 0;background:#fff;\"><div style=\"background:#17121f;color:#fff;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;\"><span style=\"display:flex;align-items:center;gap:12px;flex-wrap:wrap;\"><span style=\"font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#b38bff;\">Shop the match<\/span><span style=\"font-size:15px;font-weight:600;\">Portland Timbers <span style=\"color:#ffffff80;font-weight:400;\">v<\/span> Houston Dynamo<\/span><\/span><span style=\"font-size:11.5px;color:#ffffff99;\">Official kits via Fanatics<\/span><\/div><div style=\"display:flex;gap:12px;flex-wrap:wrap;padding:16px;\"><a href=\"https:\/\/kitbag.evyy.net\/c\/2650836\/862785\/11316?prodsku=206669358&amp;u=https%3A%2F%2Fwww4.kitbag.com%2Fen%2Fmls%2Fportland-timbers%2Ffootball-kits%2Fportland-timbers-adidas-home-shirt-2025%2Fo-4600%2Bt-70784769%2Bd-784921508%2Bf-278321699%2Bz-9-2958131448%3Futm_medium%3Dcse%26cur%3DUSD%26loc%3Den-GB&amp;intsrc=APIG_6624&amp;subId1=shop-the-match&amp;subId2=portland-timbers-v-houston-dynamo&amp;subId3=squawka-us\" target=\"_blank\" rel=\"sponsored nofollow noopener\" style=\"flex:1 1 150px;min-width:150px;display:flex;flex-direction:column;text-decoration:none;color:#17121f;border:1px solid #e7e2ec;border-radius:10px;padding:12px;background:#fff;\"><span style=\"aspect-ratio:1\/1;border-radius:8px;background:#f6f4f8;border:1px solid #eee;display:flex;align-items:center;justify-content:center;overflow:hidden;\"><img decoding=\"async\" src=\"https:\/\/feeds.frgimages.com\/_ss5_p-201964274+u-vtecweikiiokdtbowkp6+v-vxpiqbissnzqan6j5f3m.jpg?_hv=2&amp;w=520\" alt=\"Portland Timbers adidas Home Shirt 2025\" loading=\"lazy\" style=\"width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;\"><\/span><span style=\"margin-top:11px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8b8496;\">adidas<\/span><span style=\"margin-top:4px;font-size:13.5px;font-weight:600;line-height:1.3;flex:1;\">Portland Timbers adidas Home Shirt 2025<\/span><span style=\"margin-top:11px;display:flex;align-items:center;justify-content:space-between;gap:8px;\"><span style=\"font-size:17px;font-weight:800;letter-spacing:-.02em;\">$69.18<\/span><span style=\"background:#6f00ff;color:#fff;font-size:12px;font-weight:700;padding:7px 13px;border-radius:8px;\">Shop<\/span><\/span><\/a><a href=\"https:\/\/fanatics.93n6tx.net\/c\/2650836\/669352\/9663?prodsku=203706523&amp;u=https%3A%2F%2Fwww.fanatics.com%2Fmls%2Fhouston-dynamo-fc%2Fhats%2Fhouston-dynamo-fc-new-era-2026-third-jersey-hook-9twenty-adjustable-hat-white%2Forange%2Fo-3588%2Bt-47129136%2Bd-19663364%2Bf-587899686%2Bz-9-4086762992&amp;intsrc=APIG_5042&amp;subId1=shop-the-match&amp;subId2=portland-timbers-v-houston-dynamo&amp;subId3=squawka-us\" target=\"_blank\" rel=\"sponsored nofollow noopener\" style=\"flex:1 1 150px;min-width:150px;display:flex;flex-direction:column;text-decoration:none;color:#17121f;border:1px solid #e7e2ec;border-radius:10px;padding:12px;background:#fff;\"><span style=\"aspect-ratio:1\/1;border-radius:8px;background:#f6f4f8;border:1px solid #eee;display:flex;align-items:center;justify-content:center;overflow:hidden;\"><img decoding=\"async\" src=\"https:\/\/feeds.frgimages.com\/_ss5_p-203706523+u-sb6kku9ga7i5uosst3ca+v-9azqy3kgok9qpvc9qqw9.jpg?_hv=2\" alt=\"Men&#x27;s New Era White\/Orange Houston Dynamo FC 2026 Third Jersey Hook 9TWENTY Adjustable Hat\" loading=\"lazy\" style=\"width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;\"><\/span><span style=\"margin-top:11px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8b8496;\">New Era<\/span><span style=\"margin-top:4px;font-size:13.5px;font-weight:600;line-height:1.3;flex:1;\">Men&#x27;s New Era White\/Orange Houston Dynamo FC 2026 Third Jersey Hook 9TWENTY Adjustable Hat<\/span><span style=\"margin-top:11px;display:flex;align-items:center;justify-content:space-between;gap:8px;\"><span style=\"font-size:17px;font-weight:800;letter-spacing:-.02em;\">$27.99<\/span><span style=\"background:#6f00ff;color:#fff;font-size:12px;font-weight:700;padding:7px 13px;border-radius:8px;\">Shop<\/span><\/span><\/a><a href=\"https:\/\/fanatics.93n6tx.net\/c\/2650836\/669352\/9663?prodsku=201657240&amp;u=https%3A%2F%2Fwww.fanatics.com%2Fmls%2Fportland-timbers%2Fjackets%2Fportland-timbers-adidas-2025-anthem-reversible-full-zip-jacket-green%2Fwhite%2Fo-1366%2Bt-14900336%2Bd-08992355%2Bf-362550232%2Bz-9-3679989157&amp;intsrc=APIG_5042&amp;subId1=shop-the-match&amp;subId2=portland-timbers-v-houston-dynamo&amp;subId3=squawka-us\" target=\"_blank\" rel=\"sponsored nofollow noopener\" style=\"flex:1 1 150px;min-width:150px;display:flex;flex-direction:column;text-decoration:none;color:#17121f;border:1px solid #e7e2ec;border-radius:10px;padding:12px;background:#fff;\"><span style=\"aspect-ratio:1\/1;border-radius:8px;background:#f6f4f8;border:1px solid #eee;display:flex;align-items:center;justify-content:center;overflow:hidden;\"><img decoding=\"async\" src=\"https:\/\/feeds.frgimages.com\/_ss5_p-201657240+u-24rqsmlfnhbv1qvu1wsc+v-zvvwjyxvasakynihvek6.jpg?_hv=2\" alt=\"Men&#x27;s adidas Green\/White Portland Timbers 2025 Anthem Reversible Full-Zip Jacket\" loading=\"lazy\" style=\"width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;\"><\/span><span style=\"margin-top:11px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8b8496;\">adidas<\/span><span style=\"margin-top:4px;font-size:13.5px;font-weight:600;line-height:1.3;flex:1;\">Men&#x27;s adidas Green\/White Portland Timbers 2025 Anthem Reversible Full-Zip Jacket<\/span><span style=\"margin-top:11px;display:flex;align-items:center;justify-content:space-between;gap:8px;\"><span style=\"font-size:17px;font-weight:800;letter-spacing:-.02em;\">$76.99<\/span><span style=\"background:#6f00ff;color:#fff;font-size:12px;font-weight:700;padding:7px 13px;border-radius:8px;\">Shop<\/span><\/span><\/a><\/div><div style=\"padding:11px 18px;background:#f6f4f8;border-top:1px solid #e7e2ec;font-size:11.5px;color:#8b8496;line-height:1.5;\">Squawka may earn a commission when you buy through these links, at no extra cost to you. Prices are set by the retailer and correct at time of publishing.<\/div><\/div>\n<!-- \/sqstore:shop-the-match -->\n\n<!-- SQ-LINEUPS-START -->\n\n\n<div class=\"sq-teamnews sq-teamnews--theme-mls sq-teamnews--predicted sq-teamnews--state-predicted\">\n<style>\n.sq-teamnews,.sq-teamnews *{box-sizing:border-box}\n.sq-teamnews{\n  \/* \u2500\u2500 THEME TOKENS \u2014 only these values change per competition \u2500\u2500 *\/\n  --sq-primary:#1B5E3B;      \/* forest green \u2014 accents, formation chip        *\/\n  --sq-accent:#A8E039;       \/* electric lime \u2014 chevron + confirmed pill      *\/\n  --sq-accent-2:#C8F24C;     \/* brighter lime \u2014 chevron highlight             *\/\n  --sq-gold:#F0B429;         \/* gold \u2014 goalkeeper jersey + note markers       *\/\n  --sq-ink:#16201b;          \/* body text                                     *\/\n  --sq-surface:#ffffff;      \/* card background                               *\/\n  --sq-ground:#F4F6F2;       \/* inset background                              *\/\n  --sq-line:#E4E7E2;         \/* hairline borders                             *\/\n  --sq-muted:#6B7770;        \/* caveat \/ footnote text                       *\/\n  --sq-headA:#0e3f29; --sq-headB:#08251a;  \/* header gradient stops          *\/\n  --sq-turfA:#1c7d4b; --sq-turfB:#125e37;  \/* pitch gradient stops           *\/\n  \/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  font-family:inherit;\n  color:var(--sq-ink);background:var(--sq-surface);\n  border:1px solid var(--sq-line);border-radius:16px;overflow:hidden;\n  box-shadow:0 18px 42px -30px rgba(14,36,25,.55);\n  max-width:100%;line-height:1.4;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;\n  margin:24px 0 32px;\n}\n\/* \u2500\u2500 header \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__head{position:relative;overflow:hidden;padding:16px 18px 15px;\n  background:linear-gradient(105deg,var(--sq-headA) 0%,var(--sq-headB) 100%);\n  border-left:5px solid var(--sq-accent);color:#f4f8f1;}\n.sq-teamnews__head::before{content:\"\";position:absolute;inset:0;opacity:.06;pointer-events:none;\n  background-size:560px 560px;\n  background-image:url(\"data:image\/svg+xml;utf8,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 3000 3000' preserveAspectRatio='xMidYMid slice'><defs><pattern id='a' width='78' height='175.5' patternTransform='rotate(-45)' patternUnits='userSpaceOnUse'><path fill='%23ffffff' d='m-38.22 157.05-.78-78 78-.78c.45 43.12-34.12 78.33-77.22 78.78'\/><path fill='%23ffffff' d='M77.22 0 78 81.6l-78 .78C-.45 35.67 34.12.45 77.22 0'\/><path fill='%23ffffff' d='m37.78 158.05-.78-78 78-.78c.45 43.12-34.12 78.33-77.22 78.78'\/><\/pattern><\/defs><rect width='100%25' height='100%25' fill='url(%23a)'\/><\/svg>\");}\n.sq-teamnews__brandrow{position:relative;display:flex;align-items:center;gap:9px;margin-bottom:10px;}\n.sq-teamnews__chev{width:19px;height:19px;flex:none;display:block;}\n.sq-teamnews__kicker{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--sq-accent-2);}\n.sq-teamnews__pill{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:10.5px;\n  letter-spacing:.12em;text-transform:uppercase;font-weight:800;padding:5px 11px;border-radius:999px;white-space:nowrap;}\n.sq-teamnews__pill-dot{width:6px;height:6px;border-radius:50%;flex:none;}\n.sq-teamnews--predicted .sq-teamnews__pill{background:rgba(240,180,41,.16);color:var(--sq-gold);border:1px solid rgba(240,180,41,.5);}\n.sq-teamnews--predicted .sq-teamnews__pill-dot{background:var(--sq-gold);}\n.sq-teamnews--confirmed .sq-teamnews__pill{background:var(--sq-accent);color:var(--sq-headB);border:1px solid var(--sq-accent);}\n.sq-teamnews--confirmed .sq-teamnews__pill-dot{background:var(--sq-headB);}\n.sq-teamnews__h2{position:relative;margin:0;font-size:18px;line-height:1.15;font-weight:800;letter-spacing:-.015em;color:#fff;text-wrap:balance;}\n\/* \u2500\u2500 caveat \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__caveat{display:flex;gap:8px;align-items:flex-start;margin:0;padding:11px 18px;\n  background:var(--sq-ground);border-bottom:1px solid var(--sq-line);\n  font-size:12px;line-height:1.45;color:var(--sq-muted);font-style:italic;}\n.sq-teamnews__caveat svg{flex:none;margin-top:1px;opacity:.8;}\n\/* \u2500\u2500 teams grid \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__teams{display:grid;grid-template-columns:1fr;gap:16px;padding:16px;}\n.sq-teamnews__team{min-width:0;}\n.sq-teamnews__teamhead{display:flex;align-items:center;gap:10px;margin-bottom:10px;}\n.sq-teamnews__crest{width:32px;height:32px;flex:none;border-radius:7px;overflow:hidden;object-fit:cover;\n  background:var(--sq-ground);box-shadow:inset 0 0 0 1px var(--sq-line);}\n.sq-teamnews__name{flex:1;margin:0;font-size:16px;font-weight:800;letter-spacing:-.01em;}\n.sq-teamnews__formation{flex:none;font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--sq-primary);\n  background:rgba(27,94,59,.09);border:1px solid rgba(27,94,59,.2);border-radius:7px;padding:4px 9px;}\n\/* \u2500\u2500 the pitch \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__pitch{position:relative;overflow:hidden;border-radius:11px;min-height:330px;\n  background:repeating-linear-gradient(0deg,rgba(255,255,255,.045) 0 12.5%,rgba(0,0,0,.05) 12.5% 25%),\n    linear-gradient(180deg,var(--sq-turfA) 0%,var(--sq-turfB) 100%);\n  box-shadow:inset 0 0 0 2px rgba(255,255,255,.14),0 6px 18px -12px rgba(14,36,25,.5);}\n.sq-teamnews__pk{position:absolute;pointer-events:none;}\n.sq-teamnews__pk--half{left:7%;right:7%;top:50%;border-top:2px solid rgba(255,255,255,.18);}\n.sq-teamnews__pk--circle{left:50%;top:50%;width:86px;height:86px;transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.18);border-radius:50%;}\n.sq-teamnews__pk--spot{left:50%;top:50%;width:5px;height:5px;transform:translate(-50%,-50%);background:rgba(255,255,255,.3);border-radius:50%;}\n.sq-teamnews__pk--boxb{left:24%;right:24%;bottom:0;height:19%;border:2px solid rgba(255,255,255,.18);border-bottom:none;}\n.sq-teamnews__pk--boxt{left:24%;right:24%;top:0;height:19%;border:2px solid rgba(255,255,255,.18);border-top:none;}\n.sq-teamnews__pk--goalb{left:41%;right:41%;bottom:-2px;height:7px;border:2px solid rgba(255,255,255,.28);border-bottom:none;background:rgba(255,255,255,.06);}\n.sq-teamnews__pk--goalt{left:41%;right:41%;top:-2px;height:7px;border:2px solid rgba(255,255,255,.28);border-top:none;background:rgba(255,255,255,.06);}\n\/* bands: GK at the bottom (goal), FWD at the top (attacking) *\/\n.sq-teamnews__bands{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column-reverse;padding:12px 4px;}\n.sq-teamnews__band{flex:1;display:flex;align-items:center;justify-content:space-evenly;gap:2px;}\n.sq-teamnews__node{display:flex;flex-direction:column;align-items:center;gap:3px;flex:1;min-width:0;max-width:98px;}\n.sq-teamnews__jersey{width:27px;height:24px;flex:none;color:#ffffff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45));}\n.sq-teamnews__band[data-role=\"GK\"] .sq-teamnews__jersey{color:var(--sq-gold);}\n.sq-teamnews__pname{font-size:10.5px;font-weight:700;line-height:1.12;color:#fff;text-align:center;\n  letter-spacing:-.01em;max-width:100%;overflow-wrap:break-word;\n  text-shadow:0 1px 3px rgba(0,0,0,.75),0 0 2px rgba(0,0,0,.55);}\n.sq-teamnews__mark{color:var(--sq-gold);font-weight:800;}\nsup.sq-teamnews__mark{font-size:.72em;margin-left:1px;text-shadow:none;}\n\/* \u2500\u2500 cold-start placeholder body \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__placeholder{margin:0;padding:22px 18px;background:var(--sq-ground);\n  font-size:13.5px;line-height:1.5;color:var(--sq-muted);text-align:center;}\n\/* \u2500\u2500 footnotes (auto-hides when there are none) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__notes{list-style:none;margin:0;padding:14px 16px 2px;display:flex;flex-direction:column;gap:5px;}\n.sq-teamnews__notes:empty{display:none;}\n.sq-teamnews__notes li{font-size:11.5px;line-height:1.4;color:var(--sq-muted);}\n.sq-teamnews__notes strong{color:var(--sq-ink);font-weight:700;}\n.sq-teamnews__notes .sq-teamnews__mark{text-shadow:none;}\n\/* \u2500\u2500 footer \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__foot{display:flex;align-items:center;gap:7px;margin-top:14px;padding:10px 16px;\n  border-top:1px solid var(--sq-line);background:var(--sq-ground);\n  font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--sq-muted);}\n\/* \u2500\u2500 narrow phones: stop the header pill + 4-across bands clipping \u2500\u2500 *\/\n@media(max-width:559px){\n  .sq-teamnews__head{padding:14px 14px 13px;}\n  .sq-teamnews__kicker{font-size:10px;letter-spacing:.12em;}\n  .sq-teamnews__pill{font-size:9.5px;padding:4px 9px;letter-spacing:.08em;}\n  .sq-teamnews__h2{font-size:16.5px;}\n  .sq-teamnews__teams{padding:12px;gap:12px;}\n  .sq-teamnews__bands{padding:10px 2px;}\n  .sq-teamnews__band{gap:1px;}\n  .sq-teamnews__node{max-width:none;}\n  .sq-teamnews__pname{font-size:9px;line-height:1.05;}\n  .sq-teamnews__jersey{width:23px;height:20px;}\n}\n\/* \u2500\u2500 desktop: pitches side-by-side \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n@media(min-width:560px){\n  .sq-teamnews__teams{grid-template-columns:1fr 1fr;}\n  .sq-teamnews__head{padding:18px 20px 17px;}\n  .sq-teamnews__h2{font-size:21px;}\n  .sq-teamnews__name{font-size:17px;}\n  .sq-teamnews__pitch{min-height:372px;}\n  .sq-teamnews__pname{font-size:11px;}\n}\n<\/style>\n\n  <!-- \u2500\u2500 HEADER \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <div class=\"sq-teamnews__head\">\n    <div class=\"sq-teamnews__brandrow\">\n      <svg class=\"sq-teamnews__chev\" viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n        <path d=\"M4 5l7 7-7 7\" stroke=\"var(--sq-accent-2)\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n        <path d=\"M13 5l7 7-7 7\" stroke=\"var(--sq-accent)\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n      <\/svg>\n      <span class=\"sq-teamnews__kicker\">Team News<\/span>\n      <span class=\"sq-teamnews__pill\"><span class=\"sq-teamnews__pill-dot\"><\/span>Predicted<\/span>\n    <\/div>\n    <h2 class=\"sq-teamnews__h2\">Portland Timbers vs Houston Dynamo Predicted Lineups<\/h2>\n  <\/div>\n\n  <!-- \u2500\u2500 CAVEAT (predicted only) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  \n  <p class=\"sq-teamnews__caveat\">\n    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n      <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"2\"\/>\n      <path d=\"M12 11.2v5M12 7.4v.4\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n    <\/svg>\n    <span>Predicted XI \u2014 updated for the latest team news.<\/span>\n  <\/p>\n  \n\n  \n  <!-- \u2500\u2500 TWO TEAMS, each on a pitch \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <div class=\"sq-teamnews__teams\">\n    \n    <section class=\"sq-teamnews__team\">\n      <div class=\"sq-teamnews__teamhead\">\n        \n        <h3 class=\"sq-teamnews__name\">Portland Timbers<\/h3>\n        <span class=\"sq-teamnews__formation\">4-3-3<\/span>\n      <\/div>\n      <div class=\"sq-teamnews__pitch\">\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--boxt\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--goalt\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--half\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--circle\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--spot\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--boxb\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--goalb\"><\/div>\n        <!-- bands render GK\u2192FWD; column-reverse puts GK at the goal end -->\n        <div class=\"sq-teamnews__bands\">\n          \n          <div class=\"sq-teamnews__band\" data-role=\"GK\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">J. Pantemis<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"DEF\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">J. Fory<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">K. Miller<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">J. Waterman<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">R. Hernandez<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"MID\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">David da Costa<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">J. Caicedo<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">E. Izoita<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"FWD\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">K. Velde<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">V. Janssen<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">A. Lassiter<\/span>\n            <\/div>\n            \n          <\/div>\n          \n        <\/div>\n      <\/div>\n    <\/section>\n    \n    <section class=\"sq-teamnews__team\">\n      <div class=\"sq-teamnews__teamhead\">\n        \n        <h3 class=\"sq-teamnews__name\">Houston Dynamo<\/h3>\n        <span class=\"sq-teamnews__formation\">4-2-3-1<\/span>\n      <\/div>\n      <div class=\"sq-teamnews__pitch\">\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--boxt\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--goalt\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--half\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--circle\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--spot\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--boxb\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--goalb\"><\/div>\n        <!-- bands render GK\u2192FWD; column-reverse puts GK at the goal end -->\n        <div class=\"sq-teamnews__bands\">\n          \n          <div class=\"sq-teamnews__band\" data-role=\"GK\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">J. Bond<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"DEF\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">F. Negri<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">Lucas Halter<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">Antonio Carlos<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">L. Ennali<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"DM\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">Artur<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">H. Herrera<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"AM\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">Guilherme<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">A. Bouzat<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">M. Bogusz<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"FWD\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">L. Foster<\/span>\n            <\/div>\n            \n          <\/div>\n          \n        <\/div>\n      <\/div>\n    <\/section>\n    \n  <\/div>\n\n  <!-- \u2500\u2500 FOOTNOTES: one line per player with a note (any team) \u2500\u2500 -->\n  <ul class=\"sq-teamnews__notes\">\n    \n  <\/ul>\n  \n\n  <div class=\"sq-teamnews__foot\">\n    <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n      <path d=\"M5 6l6 6-6 6\" stroke=\"var(--sq-primary)\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n      <path d=\"M13 6l6 6-6 6\" stroke=\"var(--sq-primary)\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n    <\/svg>\n    <span>Squawka \u00b7 Team News<\/span>\n  <\/div>\n\n<\/div>\n\n<!-- SQ-LINEUPS-END -->\n\n<h2>Potential Match-Winners<\/h2>\n\n<ul>\n<li><strong>Kristoffer Velde (Portland Timbers):<\/strong> Velde leads the Timbers with 8 goals from 100 shots and 29 shots on target this season, the focal point of Portland&#8217;s attack.<\/li>\n<li><strong>David Pereira da Costa (Portland Timbers):<\/strong> Pereira da Costa has created 49 chances to go with 5 goals, the creative engine behind Portland&#8217;s build-up.<\/li>\n<li><strong>Guilherme Augusto Vieira dos Santos (Houston Dynamo):<\/strong> Guilherme&#8217;s 16 goals and 68 chances created make him Houston&#8217;s most dangerous attacker by a distance.<\/li>\n<\/ul>\n\n<h2>Recent Form<\/h2>\n\n<h3>Portland Timbers: L D L D W<\/h3>\n<ul>\n<li>2026-10-25: Portland Timbers 3-2 Charlotte FC (W, home)<\/li>\n<li>2026-10-18: Portland Timbers 0-0 Colorado Rapids (D, home)<\/li>\n<li>2026-10-15: LA Galaxy 2-0 Portland Timbers (L, away)<\/li>\n<li>2026-10-11: Sporting KC 3-3 Portland Timbers (D, away)<\/li>\n<li>2026-09-27: San Jose Earthquakes 3-1 Portland Timbers (L, away)<\/li>\n<\/ul>\n<p>Portland Timbers&#8217; form reads L D L D W, including a 3-2 win over Charlotte FC in their last outing.<\/p>\n\n<h3>Houston Dynamo: L D D D D<\/h3>\n<ul>\n<li>2026-10-25: Houston Dynamo 0-0 Minnesota United (D, home)<\/li>\n<li>2026-10-18: Houston Dynamo 2-2 FC Dallas (D, home)<\/li>\n<li>2026-10-15: San Diego FC 3-3 Houston Dynamo (D, away)<\/li>\n<li>2026-10-11: Minnesota United 2-2 Houston Dynamo (D, away)<\/li>\n<li>2026-09-27: Houston Dynamo 0-2 Sporting KC (L, home)<\/li>\n<\/ul>\n<p>Houston Dynamo&#8217;s form reads L D D D D, with their last match a 0-0 draw at home to Minnesota United.<\/p>\n\n<h2>Portland Timbers vs Houston Dynamo Prediction<\/h2>\n\n<p>Expect a tight, low-scoring affair at Providence Park. Houston arrive fifth in the West on 48 points with plenty to play for, but Portland, 11th on 37 points, have the extra edge at home, and the Signal model sees Kristoffer Velde&#8217;s goal threat settling it 1-0 to the Timbers.<\/p>\n\n<!-- SQ-HUBX-START -->\n<style>.sq-hubx *{box-sizing:border-box}.sq-hubx a.sq-hubx-link{transition:filter .15s}.sq-hubx a.sq-hubx-link:hover{filter:brightness(1.12)}@media(max-width:600px){.sq-hubx .sq-hubx-t{font-size:13.5px}.sq-hubx .sq-hubx-lead{font-size:15px}}<\/style>\n<div class=\"sq-hubx\" style=\"background:linear-gradient(135deg,#4a1109 0%,#340d08 60%,#210503 100%);border-radius:12px;padding:15px 15px 14px;margin:14px 0;color:#fff;font-family:'Inter',system-ui,-apple-system,sans-serif\"><div style=\"display:flex;align-items:center;gap:7px;font-weight:800;font-size:11px;letter-spacing:.10em;text-transform:uppercase;color:#a8e039;margin-bottom:8px\"><svg viewBox=\"0 0 696 696\" width=\"14\" height=\"14\" fill=\"#a8e039\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"><path d=\"M473.282 222.72H696.002C696.002 99.6672 596.335 0 473.282 0H250.562C250.562 123.053 350.23 222.72 473.282 222.72Z\"\/><path d=\"M222.72 445.44V0C99.6672 0 0 99.6672 0 222.72C0 345.773 99.6672 445.44 222.72 445.44Z\"\/><path d=\"M473.281 250.563V696.003C596.334 696.003 696.001 596.336 696.001 473.283C696.001 350.231 596.334 250.563 473.281 250.563Z\"\/><path d=\"M222.72 473.277H0C0 596.33 99.6672 695.997 222.72 695.997H445.44C445.44 572.944 345.773 473.277 222.72 473.277Z\"\/><\/svg>Squawka Signal<\/div><p class=\"sq-hubx-lead\" style=\"font-weight:500;font-size:16px;line-height:1.34;color:#fff;margin:0 0 13px\">Our model rates every MLS fixture &mdash; see the numbers behind <b style=\"color:#fff\">Portland Timbers v Houston Dynamo<\/b>.<\/p><a class=\"sq-hubx-link\" href=\"https:\/\/www.squawka.com\/us\/news\/mls\/squawkas-mls-ai-predictor\/?ref=sqhubx-mls-predictor\" style=\"display:flex;align-items:center;gap:11px;text-decoration:none;border-radius:9px;padding:11px 13px;background:#ff8781\"><span style=\"width:33px;height:33px;flex:none;border-radius:8px;background:#2a0503;display:flex;align-items:center;justify-content:center\"><svg viewBox=\"0 0 24 24\" width=\"17\" height=\"17\" fill=\"none\" stroke=\"#ff8781\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M3 3v18h18\"\/><path d=\"M7 14l4-4 3 3 5-6\"\/><\/svg><\/span><span style=\"flex:1;min-width:0\"><span style=\"display:block;font-weight:600;font-size:14px;color:#2a0503;line-height:1.2\">MLS AI Predictor<\/span><span style=\"display:block;font-size:12px;color:#5c1811;margin-top:2px;line-height:1.25\">Every match this week rated by our model<\/span><\/span><svg viewBox=\"0 0 24 24\" width=\"15\" height=\"15\" fill=\"none\" stroke=\"#2a0503\" stroke-width=\"2.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><polyline points=\"9 6 15 12 9 18\"\/><\/svg><\/a><a class=\"sq-hubx-link\" href=\"https:\/\/www.squawka.com\/us\/soccer-predictions\/over-2-5-goals\/?ref=sqhubx-mls-over25\" style=\"display:flex;align-items:center;gap:11px;text-decoration:none;border-radius:9px;padding:11px 13px;border:1px solid #ff878155;background:#ff87811a;margin-top:8px\"><span style=\"width:33px;height:33px;flex:none;border-radius:8px;background:#ff87812e;display:flex;align-items:center;justify-content:center\"><svg viewBox=\"0 0 24 24\" width=\"17\" height=\"17\" fill=\"none\" stroke=\"#ff8781\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"9\"\/><path d=\"M12 7v10M7 12h10\"\/><\/svg><\/span><span style=\"flex:1;min-width:0\"><span class=\"sq-hubx-t\" style=\"display:block;font-weight:600;font-size:14px;color:#fff;line-height:1.2\">Over 2.5 Goals predictions<\/span><span style=\"display:block;font-size:12px;color:rgba(255,255,255,.72);margin-top:2px;line-height:1.25\">This week&rsquo;s picks across the league<\/span><\/span><svg viewBox=\"0 0 24 24\" width=\"15\" height=\"15\" fill=\"none\" stroke=\"#ff8781\" stroke-width=\"2.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><polyline points=\"9 6 15 12 9 18\"\/><\/svg><\/a><\/div>\n<!-- SQ-HUBX-END -->","protected":false},"excerpt":{"rendered":"<p>Predicted lineups and team news for Portland Timbers vs Houston Dynamo, plus our prediction, odds and best bets. See who&#8217;s in and out. Kick-off 9:45 PM ET.<\/p>\n","protected":false},"author":393,"featured_media":81749,"parent":0,"menu_order":0,"template":"","meta":{"_acf_changed":false,"_yoast_wpseo_focuskw":"portland timbers vs houston dynamo","_yoast_wpseo_title":"Portland Timbers vs Houston Dynamo: MLS Lineups & Prediction","_yoast_wpseo_metadesc":"Predicted lineups and team news for Portland Timbers vs Houston Dynamo, plus our prediction, odds and best bets. See who's in and out. Kick-off 9:45 PM ET.","footnotes":""},"tags":[306],"news-category":[335],"class_list":["post-81748","news","type-news","status-publish","has-post-thumbnail","hentry","tag-mls","news-category-mls"],"acf":{"external_featured_image_url":"","hide_featured_image_pattern":true},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.0 (Yoast SEO v28.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Portland Timbers vs Houston Dynamo: MLS Lineups &amp; Prediction<\/title>\n<meta name=\"description\" content=\"Predicted lineups and team news for Portland Timbers vs Houston Dynamo, plus our prediction, odds and best bets. See who&#039;s in and out. Kick-off 9:45 PM ET.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Portland Timbers vs Houston Dynamo: Predictions, Picks, Odds &amp; Lineups\" \/>\n<meta property=\"og:description\" content=\"Predicted lineups and team news for Portland Timbers vs Houston Dynamo, plus our prediction, odds and best bets. See who&#039;s in and out. Kick-off 9:45 PM ET.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/\" \/>\n<meta property=\"og:site_name\" content=\"Squawka | US\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SquawkaFootballNews\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-27T00:47:30+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/10\/26203746\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls-banner.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1167\" \/>\n\t<meta property=\"og:image:height\" content=\"590\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@Squawka\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\\\/\",\"url\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\\\/\",\"name\":\"Portland Timbers vs Houston Dynamo: MLS Lineups & Prediction\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/media.squawka.com\\\/images\\\/sites\\\/13\\\/2026\\\/10\\\/26203746\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls-banner.jpg\",\"datePublished\":\"2026-10-27T00:37:49+00:00\",\"dateModified\":\"2026-10-27T00:47:30+00:00\",\"description\":\"Predicted lineups and team news for Portland Timbers vs Houston Dynamo, plus our prediction, odds and best bets. See who's in and out. Kick-off 9:45 PM ET.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\\\/#primaryimage\",\"url\":\"https:\\\/\\\/media.squawka.com\\\/images\\\/sites\\\/13\\\/2026\\\/10\\\/26203746\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls-banner.jpg\",\"contentUrl\":\"https:\\\/\\\/media.squawka.com\\\/images\\\/sites\\\/13\\\/2026\\\/10\\\/26203746\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls-banner.jpg\",\"width\":1167,\"height\":590,\"caption\":\"Portland Timbers vs Houston Dynamo predicted formations\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"News\",\"item\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Portland Timbers vs Houston Dynamo: Predictions, Picks, Odds &#038; Lineups\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#website\",\"url\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/\",\"name\":\"Squawka US\",\"description\":\"Soccer News and Predictions | Stats, Betting\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#organization\",\"name\":\"Squawka US\",\"url\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/media.squawka.com\\\/images\\\/sites\\\/13\\\/2026\\\/04\\\/23072352\\\/Squawka-Logo.jpg\",\"contentUrl\":\"https:\\\/\\\/media.squawka.com\\\/images\\\/sites\\\/13\\\/2026\\\/04\\\/23072352\\\/Squawka-Logo.jpg\",\"width\":1000,\"height\":1000,\"caption\":\"Squawka US\"},\"image\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/SquawkaFootballNews\\\/\",\"https:\\\/\\\/x.com\\\/Squawka\",\"https:\\\/\\\/www.instagram.com\\\/squawkafootball\\\/\"],\"description\":\"Squawka is a football editorial site covering the Premier League, Champions League, MLS, Liga MX, FIFA World Cup 2026 and the wider international game. We publish match previews, tactical analysis, player and team stats, outright odds, betting tips, streaming guides and long-form features for a committed football audience. Founded in the UK and part of OneTwenty Group, Squawka now runs localised editions for the UK (squawka.com\\\/en\\\/), United States (squawka.com\\\/us\\\/), Mexican-Spanish (squawka.com\\\/us-es\\\/), Ireland, Netherlands, Nigeria, Kenya, Uganda, South Africa and Ghana. Each edition is editorially tailored to its market, with locale-specific competition focus, operator compliance and commercial partnerships. Traffic skews toward high-intent football readers \u2014 supporters researching fixtures, form, odds and where to watch \u2014 making Squawka a strong fit for sportsbook, prediction-market, DFS, streaming and sports-merchandise brands across the UK, Europe and North America.\",\"foundingDate\":\"2012-06-11\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Portland Timbers vs Houston Dynamo: MLS Lineups & Prediction","description":"Predicted lineups and team news for Portland Timbers vs Houston Dynamo, plus our prediction, odds and best bets. See who's in and out. Kick-off 9:45 PM ET.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/","og_locale":"en_US","og_type":"article","og_title":"Portland Timbers vs Houston Dynamo: Predictions, Picks, Odds & Lineups","og_description":"Predicted lineups and team news for Portland Timbers vs Houston Dynamo, plus our prediction, odds and best bets. See who's in and out. Kick-off 9:45 PM ET.","og_url":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/","og_site_name":"Squawka | US","article_publisher":"https:\/\/www.facebook.com\/SquawkaFootballNews\/","article_modified_time":"2026-10-27T00:47:30+00:00","og_image":[{"width":1167,"height":590,"url":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/10\/26203746\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls-banner.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_site":"@Squawka","twitter_misc":{"Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/","url":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/","name":"Portland Timbers vs Houston Dynamo: MLS Lineups & Prediction","isPartOf":{"@id":"https:\/\/www.squawka.com\/us\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/#primaryimage"},"image":{"@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/#primaryimage"},"thumbnailUrl":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/10\/26203746\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls-banner.jpg","datePublished":"2026-10-27T00:37:49+00:00","dateModified":"2026-10-27T00:47:30+00:00","description":"Predicted lineups and team news for Portland Timbers vs Houston Dynamo, plus our prediction, odds and best bets. See who's in and out. Kick-off 9:45 PM ET.","breadcrumb":{"@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/#primaryimage","url":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/10\/26203746\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls-banner.jpg","contentUrl":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/10\/26203746\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls-banner.jpg","width":1167,"height":590,"caption":"Portland Timbers vs Houston Dynamo predicted formations"},{"@type":"BreadcrumbList","@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-houston-dynamo-11-01-26-mls\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.squawka.com\/us\/"},{"@type":"ListItem","position":2,"name":"News","item":"https:\/\/www.squawka.com\/us\/news\/"},{"@type":"ListItem","position":3,"name":"Portland Timbers vs Houston Dynamo: Predictions, Picks, Odds &#038; Lineups"}]},{"@type":"WebSite","@id":"https:\/\/www.squawka.com\/us\/#website","url":"https:\/\/www.squawka.com\/us\/","name":"Squawka US","description":"Soccer News and Predictions | Stats, Betting","publisher":{"@id":"https:\/\/www.squawka.com\/us\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.squawka.com\/us\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.squawka.com\/us\/#organization","name":"Squawka US","url":"https:\/\/www.squawka.com\/us\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.squawka.com\/us\/#\/schema\/logo\/image\/","url":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/04\/23072352\/Squawka-Logo.jpg","contentUrl":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/04\/23072352\/Squawka-Logo.jpg","width":1000,"height":1000,"caption":"Squawka US"},"image":{"@id":"https:\/\/www.squawka.com\/us\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SquawkaFootballNews\/","https:\/\/x.com\/Squawka","https:\/\/www.instagram.com\/squawkafootball\/"],"description":"Squawka is a football editorial site covering the Premier League, Champions League, MLS, Liga MX, FIFA World Cup 2026 and the wider international game. We publish match previews, tactical analysis, player and team stats, outright odds, betting tips, streaming guides and long-form features for a committed football audience. Founded in the UK and part of OneTwenty Group, Squawka now runs localised editions for the UK (squawka.com\/en\/), United States (squawka.com\/us\/), Mexican-Spanish (squawka.com\/us-es\/), Ireland, Netherlands, Nigeria, Kenya, Uganda, South Africa and Ghana. Each edition is editorially tailored to its market, with locale-specific competition focus, operator compliance and commercial partnerships. Traffic skews toward high-intent football readers \u2014 supporters researching fixtures, form, odds and where to watch \u2014 making Squawka a strong fit for sportsbook, prediction-market, DFS, streaming and sports-merchandise brands across the UK, Europe and North America.","foundingDate":"2012-06-11"}]}},"yoast_title":"Portland Timbers vs Houston Dynamo: MLS Lineups & Prediction","yoast_description":"Predicted lineups and team news for Portland Timbers vs Houston Dynamo, plus our prediction, odds and best bets. See who's in and out. Kick-off 9:45 PM ET.","yoast_keyword":"portland timbers vs houston dynamo","_links":{"self":[{"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/news\/81748","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/news"}],"about":[{"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/types\/news"}],"author":[{"embeddable":true,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/users\/393"}],"version-history":[{"count":2,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/news\/81748\/revisions"}],"predecessor-version":[{"id":81751,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/news\/81748\/revisions\/81751"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/media\/81749"}],"wp:attachment":[{"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/media?parent=81748"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/tags?post=81748"},{"taxonomy":"news-category","embeddable":true,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/news-category?post=81748"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}