91³Ô¹ÏÍø

Watch CBS News

Minnesota curler at Olympics speaks out against ICE actions in home state, calling them unconstitutional

A Minnesotan competing at the 2026 Winter Olympics in Italy took a moment to address the situation closer to home in his home state, calling the practices of U.S. Immigration and Customs Enforcement agents during Operation Metro Surge unconstitutional.

Rich Ruohonen, a curler with Team USA and a , is the oldest American to ever compete at the Winter Olympics, according to Team USA, at age 54.

During a press conference, Ruohonen took time to voice pride in representing the country, but then spoke out on "what's going on in Minnesota," adding that "there's no shades of gray."

White House officials say there have been thousands of arrests in Minnesota since Operation Metro Surge began on Dec. 1, 2025. There have also been widespread mass demonstrations against ICE and Border Patrol, following the fatal shootings of Renee Good and Alex Pretti.

"This stuff is happening right, right around where we live. And I am a lawyer, as you know, and ...  we have a constitution, and it allows us to freedom of the press and freedom of speech, protects us from unreasonable searches and seizures and makes it that we have to, you know, have probable cause to be pulled over. And what's happening in Minnesota is wrong," Ruohonen said.

He said he loves seeing Minnesotans "coming out, showing the love, the compassion, integrity and respect for others that they don't know, and helping them out."

Among the comments was one from Nick Ruohonen, saying, "Proud to call him my father."

Ruohonen is not the only U.S. Olympian to speak out in opposition to the practices of immigration enforcement officers in recent months. Team USA freestyle skier Chris Lillis told journalists, "I feel heartbroken about what's happened in the United States." Hunter Hess, another freestyle skier on Team USA, said, "Just because I'm wearing the flag doesn't mean I represent everything that's going on in the U.S."

In response, President Trump lashed out at Hess on social media, calling the Olympian "a real Loser."

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(); } }); }); }); });