91³Ô¹ÏÍø

Watch CBS News

Santa Clara falls to Kentucky in overtime March Madness thriller

Otega Oweh from just inside half court to force overtime, then hit the tiebreaking free throws in the extra period as the seventh-seeded Wildcats beat No. 10 seed Santa Clara 89-84 on Friday in the first round of the NCAA Tournament.

In an electrifying finish to regulation that defines the words "March Madness," Santa Clara's Allen Graves drained a 3 from the right wing with 2.4 seconds left to put the Broncos ahead 73-70. Oweh received the inbound pass, pushed the ball up the court and pulled up to the left of the midcourt logo to launch his desperation heave. The ball was midair when the buzzer sounded, and it banked in for the tie.

Oweh scored a career-high 35 points and had eight rebounds and seven assists for the Wildcats (22-13), who will face either No. 2 seed Iowa State or 15th-seeded Tennessee State in the second round in the Midwest Region.

Brandon Garrison twice blocked 3-point attempts by Sash Gavalyugov in the final minute of overtime, following the first with a breakaway, two-handed dunk that stretched Kentucky's lead to 83-79. His second block led to more free throws for the Wildcats.

Christian Hammond led Santa Clara (26-9) with 20 points and Graves scored 17.

Oweh broke the school record for points in a player's first two seasons. It had stood since the Wildcats' 1951 national championship season and was held by All-America center Bill Spivey, who would later face point-shaving allegations.

Oweh's two free throws with 1:12 remaining in overtime put Kentucky in the lead to stay in its 63rd NCAA Tournament appearance, the most in the country.

Mouhamed Dioubate had 17 points and Denzel Aberdeen, a transfer from Florida's national championship team last season, scored 16 for Kentucky.

Santa Clara was seeking its first tournament win since 1996, when future NBA MVP Steve Nash was a senior.

santa-clara-kentucky-ncaa-tournament-2267558619.jpg
Allen Graves #22 of the Santa Clara Broncos shoots the ball against Brandon Garrison #10 of the Kentucky Wildcats during the first half in the first round of the 2026 NCAA Men's Basketball Tournament at Enterprise Center on March 20, 2026 in St Louis, Missouri. Jamie Squire/Getty Images

Graves put Santa Clara ahead 70-68 when he caught Elijah Mahi's airballed 3-pointer and made the putback with 1:33 to play, just before the shot clock expired. After a miss by Oweh, Graves had another point-blank attempt that missed, and Oweh was able to scramble for the ball on the floor as Kentucky called timeout.

Oweh tied it with a layup with 9.9 seconds left to set up the wild finish. Adding to the fast-moving drama, neither team called timeout in the closing seconds.

Collin Chandler and Aberdeen connected on back-to-back 3s to begin a 13-4 burst as the Wildcats attempted to build a lead in the second half. Aberdeen's second 3-pointer in the stretch put Kentucky ahead 51-44 with 12:21 to play, but Gavalyugov immediately responded with a 3 of his own to ignite a response.

After a high-arcing 3-pointer from Mahi, Gavalyugov hit a jumper and another 3 to put Santa Clara ahead 59-55 with 7:56 remaining.

The long-range shooting was quite the turnaround from the first half, when both teams struggled with matching 4 for 15 marks from behind the arc. The Broncos led 31-29 after closing the half with a 10-3 stretch that featured seven points from Mahi.

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=296763317a51cab90faa73f1bb146d5c'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });