CINXE.COM
Case Studies and Mentions | TensorFlow
<!doctype html> <html lang="en" dir="ltr"> <head> <meta name="google-signin-client-id" content="157101835696-ooapojlodmuabs2do2vuhhnf90bccmoi.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email https://www.googleapis.com/auth/developerprofiles https://www.googleapis.com/auth/developerprofiles.award"> <meta property="og:site_name" content="TensorFlow"> <meta property="og:type" content="website"><meta name="theme-color" content="#ff6f00"><meta charset="utf-8"> <meta content="IE=Edge" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="manifest" href="/_pwa/tensorflow/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//www.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.googleapis.com" crossorigin> <link rel="preconnect" href="//apis.google.com" crossorigin> <link rel="preconnect" href="//www.google-analytics.com" crossorigin><link rel="stylesheet" href="//fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined&display=block"><link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/tensorflow/css/app.css"> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/tensorflow/images/favicon.png"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/tensorflow/images/apple-touch-icon-180x180.png"><link rel="canonical" href="https://www.tensorflow.org/about/case-studies"><link rel="search" type="application/opensearchdescription+xml" title="TensorFlow" href="https://www.tensorflow.org/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="https://www.tensorflow.org/about/case-studies" /><link rel="alternate" hreflang="x-default" href="https://www.tensorflow.org/about/case-studies" /><link rel="alternate" hreflang="ar" href="https://www.tensorflow.org/about/case-studies?hl=ar" /><link rel="alternate" hreflang="bn" href="https://www.tensorflow.org/about/case-studies?hl=bn" /><link rel="alternate" hreflang="zh-Hans" href="https://www.tensorflow.org/about/case-studies?hl=zh-cn" /><link rel="alternate" hreflang="zh-Hant" href="https://www.tensorflow.org/about/case-studies?hl=zh-tw" /><link rel="alternate" hreflang="fa" href="https://www.tensorflow.org/about/case-studies?hl=fa" /><link rel="alternate" hreflang="fr" href="https://www.tensorflow.org/about/case-studies?hl=fr" /><link rel="alternate" hreflang="he" href="https://www.tensorflow.org/about/case-studies?hl=he" /><link rel="alternate" hreflang="hi" href="https://www.tensorflow.org/about/case-studies?hl=hi" /><link rel="alternate" hreflang="id" href="https://www.tensorflow.org/about/case-studies?hl=id" /><link rel="alternate" hreflang="it" href="https://www.tensorflow.org/about/case-studies?hl=it" /><link rel="alternate" hreflang="ja" href="https://www.tensorflow.org/about/case-studies?hl=ja" /><link rel="alternate" hreflang="ko" href="https://www.tensorflow.org/about/case-studies?hl=ko" /><link rel="alternate" hreflang="pl" href="https://www.tensorflow.org/about/case-studies?hl=pl" /><link rel="alternate" hreflang="pt-BR" href="https://www.tensorflow.org/about/case-studies?hl=pt-br" /><link rel="alternate" hreflang="ru" href="https://www.tensorflow.org/about/case-studies?hl=ru" /><link rel="alternate" hreflang="es-419" href="https://www.tensorflow.org/about/case-studies?hl=es-419" /><link rel="alternate" hreflang="th" href="https://www.tensorflow.org/about/case-studies?hl=th" /><link rel="alternate" hreflang="tr" href="https://www.tensorflow.org/about/case-studies?hl=tr" /><link rel="alternate" hreflang="vi" href="https://www.tensorflow.org/about/case-studies?hl=vi" /><title>Case Studies and Mentions | TensorFlow</title> <meta property="og:title" content="Case Studies and Mentions | TensorFlow"><meta name="description" content="Machine learning use cases and real world applications. Learn how companies and organizations use TensorFlow to solve everyday problems."> <meta property="og:description" content="Machine learning use cases and real world applications. Learn how companies and organizations use TensorFlow to solve everyday problems."><meta property="og:url" content="https://www.tensorflow.org/about/case-studies"><meta property="og:image" content="https://www.tensorflow.org/static/images/tf_logo_social.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="675"><meta property="og:locale" content="en"><meta name="twitter:card" content="summary_large_image"><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "Case Studies and Mentions" } </script> <link href="/static/en/site-assets/images/marketing/favicon.png" rel="shortcut icon"/> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0, height=device-height" name="viewport"/> <link href="https://fonts.googleapis.com/css?family=Google+Sans:+400,500,700" rel="stylesheet" data-page-link> <link rel="stylesheet" href="/extras.css"></head> <body class="" template="page" theme="tensorflow-theme" type="article" layout="full" pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"> <devsite-cookie-notification-bar></devsite-cookie-notification-bar><devsite-header role="banner"> <div class="devsite-header--inner nocontent"> <div class="devsite-top-logo-row-wrapper-wrapper"> <div class="devsite-top-logo-row-wrapper"> <div class="devsite-top-logo-row"> <button type="button" id="devsite-hamburger-menu" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Navigation menu button" visually-hidden aria-label="Open menu"> </button> <div class="devsite-product-name-wrapper"> <a href="/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="tensorFlow" track-metadata-position="nav" track-metadata-eventDetail="nav"> <picture> <img src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/tensorflow/images/lockup.svg" class="devsite-site-logo" alt="TensorFlow"> </picture> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> </li> </ul> </span> </div> <div class="devsite-top-logo-row-middle"> <div class="devsite-header-upper-tabs"> <devsite-tabs class="upper-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Upper tabs"> <tab > <a href="https://www.tensorflow.org/install" track-metadata-eventdetail="https://www.tensorflow.org/install" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - install" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Install" track-name="install" > Install </a> </tab> <tab class="devsite-dropdown "> <a href="https://www.tensorflow.org/learn" track-metadata-eventdetail="https://www.tensorflow.org/learn" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - learn" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Learn" track-name="learn" > Learn </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Learn" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/learn" track-metadata-position="nav - learn" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Learn" track-name="learn" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column tfo-menu-column-learn"> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/learn" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/learn" track-metadata-position="nav - learn" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Introduction </div> <div class="devsite-nav-item-description"> New to TensorFlow? </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/tutorials" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/tutorials" track-metadata-position="nav - learn" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Tutorials </div> <div class="devsite-nav-item-description"> Learn how to use TensorFlow with end-to-end examples </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/guide" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/guide" track-metadata-position="nav - learn" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Guide </div> <div class="devsite-nav-item-description"> Learn framework concepts and components </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/resources/learn-ml" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/resources/learn-ml" track-metadata-position="nav - learn" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Learn ML </div> <div class="devsite-nav-item-description"> Educational resources to master your path with TensorFlow </div> </a> </li> </ul> </div> </div> </div> </tab> <tab class="devsite-dropdown "> <a href="https://www.tensorflow.org/api" track-metadata-eventdetail="https://www.tensorflow.org/api" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - api" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: API" track-name="api" > API </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for API" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/api" track-metadata-position="nav - api" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: API" track-name="api" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/api/stable" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/api/stable" track-metadata-position="nav - api" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> TensorFlow (v2.16.1) </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/versions" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/versions" track-metadata-position="nav - api" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Versions… </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://js.tensorflow.org/api/latest/" track-type="nav" track-metadata-eventdetail="https://js.tensorflow.org/api/latest/" track-metadata-position="nav - api" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> TensorFlow.js </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/lite/api_docs" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/lite/api_docs" track-metadata-position="nav - api" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> TensorFlow Lite </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/tfx/api_docs" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/tfx/api_docs" track-metadata-position="nav - api" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> TFX </div> </a> </li> </ul> </div> </div> </div> </tab> <tab class="devsite-dropdown "> <a href="https://www.tensorflow.org/resources/models-datasets" track-metadata-eventdetail="https://www.tensorflow.org/resources/models-datasets" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - ecosystem" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Ecosystem" track-name="ecosystem" > Ecosystem </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Ecosystem" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/resources/models-datasets" track-metadata-position="nav - ecosystem" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Ecosystem" track-name="ecosystem" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>LIBRARIES</li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/js" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/js" track-metadata-position="nav - ecosystem" track-metadata-module="tertiary nav" track-metadata-module_headline="libraries" tooltip > <div class="devsite-nav-item-title"> TensorFlow.js </div> <div class="devsite-nav-item-description"> Develop web ML applications in JavaScript </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/lite" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/lite" track-metadata-position="nav - ecosystem" track-metadata-module="tertiary nav" track-metadata-module_headline="libraries" tooltip > <div class="devsite-nav-item-title"> TensorFlow Lite </div> <div class="devsite-nav-item-description"> Deploy ML on mobile, microcontrollers and other edge devices </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/tfx" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/tfx" track-metadata-position="nav - ecosystem" track-metadata-module="tertiary nav" track-metadata-module_headline="libraries" tooltip > <div class="devsite-nav-item-title"> TFX </div> <div class="devsite-nav-item-description"> Build production ML pipelines </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/resources/libraries-extensions" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/resources/libraries-extensions" track-metadata-position="nav - ecosystem" track-metadata-module="tertiary nav" track-metadata-module_headline="libraries" tooltip > <div class="devsite-nav-item-title"> All libraries </div> <div class="devsite-nav-item-description"> Create advanced models and extend TensorFlow </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>RESOURCES</li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/resources/models-datasets" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/resources/models-datasets" track-metadata-position="nav - ecosystem" track-metadata-module="tertiary nav" track-metadata-module_headline="resources" tooltip > <div class="devsite-nav-item-title"> Models & datasets </div> <div class="devsite-nav-item-description"> Pre-trained models and datasets built by Google and the community </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/resources/tools" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/resources/tools" track-metadata-position="nav - ecosystem" track-metadata-module="tertiary nav" track-metadata-module_headline="resources" tooltip > <div class="devsite-nav-item-title"> Tools </div> <div class="devsite-nav-item-description"> Tools to support and accelerate TensorFlow workflows </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/responsible_ai" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/responsible_ai" track-metadata-position="nav - ecosystem" track-metadata-module="tertiary nav" track-metadata-module_headline="resources" tooltip > <div class="devsite-nav-item-title"> Responsible AI </div> <div class="devsite-nav-item-description"> Resources for every stage of the ML workflow </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/resources/recommendation-systems" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/resources/recommendation-systems" track-metadata-position="nav - ecosystem" track-metadata-module="tertiary nav" track-metadata-module_headline="resources" tooltip > <div class="devsite-nav-item-title"> Recommendation systems </div> <div class="devsite-nav-item-description"> Build recommendation systems with open source tools </div> </a> </li> </ul> </div> </div> </div> </tab> <tab class="devsite-dropdown "> <a href="https://www.tensorflow.org/community" track-metadata-eventdetail="https://www.tensorflow.org/community" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - community" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" > Community </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Community" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/community" track-metadata-position="nav - community" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/community/groups" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/community/groups" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Groups </div> <div class="devsite-nav-item-description"> User groups, interest groups and mailing lists </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/community/contribute" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/community/contribute" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Contribute </div> <div class="devsite-nav-item-description"> Guide for contributing to code and documentation </div> </a> </li> <li class="devsite-nav-item"> <a href="https://blog.tensorflow.org/" track-type="nav" track-metadata-eventdetail="https://blog.tensorflow.org/" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Blog </div> <div class="devsite-nav-item-description"> Stay up to date with all things TensorFlow </div> </a> </li> <li class="devsite-nav-item"> <a href="https://discuss.tensorflow.org" track-type="nav" track-metadata-eventdetail="https://discuss.tensorflow.org" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Forum </div> <div class="devsite-nav-item-description"> Discussion platform for the TensorFlow community </div> </a> </li> </ul> </div> </div> </div> </tab> <tab class="devsite-dropdown devsite-active "> <a href="https://www.tensorflow.org/about" track-metadata-eventdetail="https://www.tensorflow.org/about" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - why tensorflow" track-metadata-module="primary nav" aria-label="Why TensorFlow, selected" data-category="Site-Wide Custom Events" data-label="Tab: Why TensorFlow" track-name="why tensorflow" > Why TensorFlow </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Why TensorFlow" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/about" track-metadata-position="nav - why tensorflow" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Why TensorFlow" track-name="why tensorflow" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/about" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/about" track-metadata-position="nav - why tensorflow" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> About </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.tensorflow.org/about/case-studies" track-type="nav" track-metadata-eventdetail="https://www.tensorflow.org/about/case-studies" track-metadata-position="nav - why tensorflow" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Case studies </div> </a> </li> </ul> </div> </div> </div> </tab> </nav> </devsite-tabs> </div> <devsite-search enable-signin enable-search enable-suggestions enable-query-completion project-name="TensorFlow" tenant-name="TensorFlow" > <form class="devsite-search-form" action="https://www.tensorflow.org/s/results" method="GET"> <div class="devsite-search-container"> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-expanded="false" aria-haspopup="listbox" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="combobox" type="text" value="" > <div class="devsite-search-image material-icons" aria-hidden="true"> </div> <div class="devsite-search-shortcut-icon-container" aria-hidden="true"> <kbd class="devsite-search-shortcut-icon">/</kbd> </div> </div> </div> </form> <button type="button" search-close class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Close search"></button> </devsite-search> </div> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="it" >Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi" >Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr" >Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he" >עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar" >العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa" >فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi" >हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn" >বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th" >ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> <a class="devsite-header-link devsite-top-button button gc-analytics-event" href="//github.com/tensorflow" data-category="Site-Wide Custom Events" data-label="Site header link" > GitHub </a> <devsite-user enable-profiles id="devsite-user"> <span class="button devsite-top-button" aria-hidden="true" visually-hidden>Sign in</span> </devsite-user> </div> </div> </div> <div class="devsite-collapsible-section "> <div class="devsite-header-background"> <div class="devsite-product-id-row" > <div class="devsite-product-description-row"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> <a href="https://www.tensorflow.org/about" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Lower Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="" > Why TensorFlow </a> </li> </ul> </div> </div> <div class="devsite-doc-set-nav-row"> <devsite-tabs class="lower-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Lower tabs"> <tab > <a href="https://www.tensorflow.org/about" track-metadata-eventdetail="https://www.tensorflow.org/about" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - about" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: About" track-name="about" > About </a> </tab> <tab class="devsite-active"> <a href="https://www.tensorflow.org/about/case-studies" track-metadata-eventdetail="https://www.tensorflow.org/about/case-studies" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - case studies" track-metadata-module="primary nav" aria-label="Case studies, selected" data-category="Site-Wide Custom Events" data-label="Tab: Case studies" track-name="case studies" > Case studies </a> </tab> </nav> </devsite-tabs> </div> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars hidden> <div class="devsite-book-nav-filter" hidden> <span class="filter-list-icon material-icons" aria-hidden="true"></span> <input type="text" placeholder="Filter" aria-label="Type to filter" role="searchbox"> <span class="filter-clear-button hidden" data-title="Clear filter" aria-label="Clear filter" role="button" tabindex="0"></span> </div> <nav class="devsite-book-nav devsite-nav nocontent" aria-label="Side menu"> <div class="devsite-mobile-header"> <button type="button" id="devsite-close-nav" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Close navigation" aria-label="Close navigation"> </button> <div class="devsite-product-name-wrapper"> <a href="/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="tensorFlow" track-metadata-position="nav" track-metadata-eventDetail="nav"> <picture> <img src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/tensorflow/images/lockup.svg" class="devsite-site-logo" alt="TensorFlow"> </picture> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> </li> </ul> </span> </div> </div> <div class="devsite-book-nav-wrapper"> <div class="devsite-mobile-nav-top"> <ul class="devsite-nav-list"> <li class="devsite-nav-item"> <a href="/install" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Install" track-name="install" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Install" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Install </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/learn" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Learn" track-name="learn" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Learn" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Learn </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Learn" track-name="learn" > <span class="devsite-nav-text" tooltip menu="Learn"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Learn"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/api" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: API" track-name="api" data-category="Site-Wide Custom Events" data-label="Responsive Tab: API" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > API </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: API" track-name="api" > <span class="devsite-nav-text" tooltip menu="API"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="API"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/resources/models-datasets" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Ecosystem" track-name="ecosystem" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Ecosystem" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Ecosystem </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Ecosystem" track-name="ecosystem" > <span class="devsite-nav-text" tooltip menu="Ecosystem"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Ecosystem"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/community" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Community" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Community </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" > <span class="devsite-nav-text" tooltip menu="Community"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Community"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/about" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Why TensorFlow" track-name="why tensorflow" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Why TensorFlow" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Why TensorFlow </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Why TensorFlow" track-name="why tensorflow" > <span class="devsite-nav-text" tooltip menu="Why TensorFlow"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Why TensorFlow"> </span> </span> </li> </ul> <ul class="devsite-nav-responsive-tabs"> <li class="devsite-nav-item"> <a href="/about" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: About" track-name="about" data-category="Site-Wide Custom Events" data-label="Responsive Tab: About" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > About </span> </a> </li> <li class="devsite-nav-item"> <a href="/about/case-studies" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Case studies" track-name="case studies" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Case studies" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Case studies </span> </a> </li> </ul> </li> <li class="devsite-nav-item"> <a href="//github.com/tensorflow" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: GitHub" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > GitHub </span> </a> </li> </ul> </div> <div class="devsite-mobile-nav-bottom"> <ul class="devsite-nav-list" menu="Learn" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="/learn" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Introduction" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Introduction </span> </a> </li> <li class="devsite-nav-item"> <a href="/tutorials" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Tutorials" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Tutorials </span> </a> </li> <li class="devsite-nav-item"> <a href="/guide" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Guide" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Guide </span> </a> </li> <li class="devsite-nav-item"> <a href="/resources/learn-ml" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Learn ML" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Learn ML </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="API" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="/api/stable" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: TensorFlow (v2.16.1)" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > TensorFlow (v2.16.1) </span> </a> </li> <li class="devsite-nav-item"> <a href="/versions" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Versions…" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Versions… </span> </a> </li> <li class="devsite-nav-item"> <a href="https://js.tensorflow.org/api/latest/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: TensorFlow.js" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > TensorFlow.js </span> </a> </li> <li class="devsite-nav-item"> <a href="/lite/api_docs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: TensorFlow Lite" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > TensorFlow Lite </span> </a> </li> <li class="devsite-nav-item"> <a href="/tfx/api_docs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: TFX" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > TFX </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Ecosystem" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > LIBRARIES </span> </span> </li> <li class="devsite-nav-item"> <a href="/js" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: TensorFlow.js" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > TensorFlow.js </span> </a> </li> <li class="devsite-nav-item"> <a href="/lite" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: TensorFlow Lite" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > TensorFlow Lite </span> </a> </li> <li class="devsite-nav-item"> <a href="/tfx" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: TFX" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > TFX </span> </a> </li> <li class="devsite-nav-item"> <a href="/resources/libraries-extensions" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: All libraries" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > All libraries </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > RESOURCES </span> </span> </li> <li class="devsite-nav-item"> <a href="/resources/models-datasets" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Models & datasets" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Models & datasets </span> </a> </li> <li class="devsite-nav-item"> <a href="/resources/tools" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Tools" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Tools </span> </a> </li> <li class="devsite-nav-item"> <a href="/responsible_ai" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Responsible AI" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Responsible AI </span> </a> </li> <li class="devsite-nav-item"> <a href="/resources/recommendation-systems" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Recommendation systems" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Recommendation systems </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Community" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="/community/groups" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Groups" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Groups </span> </a> </li> <li class="devsite-nav-item"> <a href="/community/contribute" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Contribute" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Contribute </span> </a> </li> <li class="devsite-nav-item"> <a href="https://blog.tensorflow.org/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Blog" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Blog </span> </a> </li> <li class="devsite-nav-item"> <a href="https://discuss.tensorflow.org" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Forum" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Forum </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Why TensorFlow" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="/about" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: About" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > About </span> </a> </li> <li class="devsite-nav-item"> <a href="/about/case-studies" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Case studies" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Case studies </span> </a> </li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" class="devsite-main-content" > <div class="devsite-sidebar"> <div class="devsite-sidebar-content"> <devsite-toc class="devsite-nav" role="navigation" aria-label="On this page" depth="2" scrollbars disabled></devsite-toc> <devsite-recommendations-sidebar class="nocontent devsite-nav"> </devsite-recommendations-sidebar> </div> </div> <devsite-content> <article class="devsite-article"><style> /* Styles inlined from /site-assets/css/style.css */ /* override theme */ table img { max-width: 100%; } /* .devsite-terminal virtualenv prompt */ .tfo-terminal-venv::before { content: "(venv) $ " !important; } /* .devsite-terminal root prompt */ .tfo-terminal-root::before { content: "# " !important; } /* Used in links for type annotations in function/method signatures */ .tfo-signature-link a, .tfo-signature-link a:visited, .tfo-signature-link a:hover, .tfo-signature-link a:focus, .tfo-signature-link a:hover *, .tfo-signature-link a:focus * { text-decoration: none !important; } .tfo-signature-link a, .tfo-signature-link a:visited { border-bottom: 1px dotted #1a73e8; } .tfo-signature-link a:focus { border-bottom-style: solid; } /* .devsite-terminal Windows prompt */ .tfo-terminal-windows::before { content: "C:\\> " !important; } /* .devsite-terminal Windows prompt w/ virtualenv */ .tfo-terminal-windows-venv::before { content: "(venv) C:\\> " !important; } .tfo-diff-green-one-level + * { background: rgba(175, 245, 162, .6) !important; } .tfo-diff-green + * > * { background: rgba(175, 245, 162, .6) !important; } .tfo-diff-green-list + ul > li:first-of-type { background: rgba(175, 245, 162, .6) !important; } .tfo-diff-red-one-level + * { background: rgba(255, 230, 230, .6) !important; text-decoration: line-through !important; } .tfo-diff-red + * > * { background: rgba(255, 230, 230, .6) !important; text-decoration: line-through !important; } .tfo-diff-red-list + ul > li:first-of-type { background: rgba(255, 230, 230, .6) !important; text-decoration: line-through !important; } devsite-code .tfo-notebook-code-cell-output { max-height: 300px; overflow: auto; background: rgba(255, 247, 237, 1); /* orange bg to distinguish from input code cells */ } devsite-code .tfo-notebook-code-cell-output + .devsite-code-buttons-container button { background: rgba(255, 247, 237, .7); /* orange bg to distinguish from input code cells */ } devsite-code[dark-code] .tfo-notebook-code-cell-output { background: rgba(64, 78, 103, 1); /* medium slate */ } devsite-code[dark-code] .tfo-notebook-code-cell-output + .devsite-code-buttons-container button { background: rgba(64, 78, 103, .7); /* medium slate */ } /* override default table styles for notebook buttons */ .devsite-table-wrapper .tfo-notebook-buttons { display: inline-block; margin-left: 3px; width: auto; } .tfo-notebook-buttons td { padding-left: 0; padding-right: 20px; } .tfo-notebook-buttons a, .tfo-notebook-buttons :link, .tfo-notebook-buttons :visited { border-radius: 8px; box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .3), 0 1px 3px 1px rgba(60, 64, 67, .15); color: #202124; padding: 12px 17px; transition: box-shadow 0.2s; } .tfo-notebook-buttons a:hover, .tfo-notebook-buttons a:focus { box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .3), 0 2px 6px 2px rgba(60, 64, 67, .15); } .tfo-notebook-buttons tr { background: 0; border: 0; } /* on rendered notebook page, remove link to webpage since we're already here */ .tfo-notebook-buttons:not(.tfo-api) td:first-child { display: none; } .tfo-notebook-buttons td > a { -webkit-box-align: center; -ms-flex-align: center; align-items: center; display: -webkit-box; display: -ms-flexbox; display: flex; } .tfo-notebook-buttons td > a > img { margin-right: 8px; } /* landing pages */ .tfo-landing-row-item-inset-white { background-color: #fff; padding: 32px; } .tfo-landing-row-item-inset-white ol, .tfo-landing-row-item-inset-white ul { padding-left: 20px; } /* colab callout button */ .colab-callout-row devsite-code { border-radius: 8px 8px 0 0; box-shadow: none; } .colab-callout-footer { background: #e3e4e7; border-radius: 0 0 8px 8px; color: #37474f; padding: 20px; } .colab-callout-row devsite-code[dark-code] + .colab-callout-footer { background: #3f4f66; } .colab-callout-footer > .button { margin-top: 4px; color: #ff5c00; } .colab-callout-footer > a > span { vertical-align: middle; color: #37474f; padding-left: 10px; font-size: 14px; } .colab-callout-row devsite-code[dark-code] + .colab-callout-footer > a > span { color: #fff; } a.colab-button { background: rgba(255, 255, 255, .75); border: solid 1px rgba(0, 0, 0, .08); border-bottom-color: rgba(0, 0, 0, .15); border-radius: 4px; color: #aaa; display: inline-block; font-size: 11px !important; font-weight: 300; line-height: 16px; padding: 4px 8px; text-decoration: none; text-transform: uppercase; } a.colab-button:hover { background: white; border-color: rgba(0, 0, 0, .2); color: #666; } a.colab-button span { background: url(/images/colab_logo_button.svg) no-repeat 1px 1px / 20px; border-radius: 4px; display: inline-block; padding-left: 24px; text-decoration: none; } @media screen and (max-width: 600px) { .tfo-notebook-buttons td { display: block; } } /* guide and tutorials landing page cards and sections */ .tfo-landing-page-card { padding: 16px; box-shadow: 0 0 36px rgba(0,0,0,0.1); border-radius: 10px; } /* Page section headings */ .tfo-landing-page-heading h2, h2.tfo-landing-page-heading { font-family: "Google Sans", sans-serif; color: #425066; font-size: 30px; font-weight: 700; line-height: 40px; } /* Item title headings */ .tfo-landing-page-heading h3, h3.tfo-landing-page-heading, .tfo-landing-page-card h3, h3.tfo-landing-page-card { font-family: "Google Sans", sans-serif; color: #425066; font-size: 20px; font-weight: 500; line-height: 26px; } /* List of tutorials notebooks for subsites */ .tfo-landing-page-resources-ul { padding-left: 15px } .tfo-landing-page-resources-ul > li { margin: 6px 0; } /* Temporary fix to hide product description in header on landing pages */ devsite-header .devsite-product-description { display: none; } </style><style> /* Styles inlined from /site-assets/css/prod.min.css */ .tensorsite-icon--address::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath fill='%23425066' fill-rule='nonzero' d='M11.6667 0L11.56.02 8 1.4 4 0 .24 1.2667c-.14.0466-.24.1666-.24.32v10.08C0 11.8533.1467 12 .3333 12l.1067-.02L4 10.6 8 12l3.76-1.2667c.14-.0466.24-.1666.24-.32V.3333A.3301.3301 0 0 0 11.6667 0zM8 10.6667L4 9.26V1.3333L8 2.74v7.9267z'/%3E%3Cpath d='M-2-2h16v16H-2z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--arrow-upward span::before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 0 24 24' width='24px' fill='%23ff6f00'%3E%3Cpath d='M0 0h24v24H0V0z' fill='none'/%3E%3Cpath d='M13 19V7.83l4.88 4.88c.39.39 1.03.39 1.42 0 .39-.39.39-1.02 0-1.41l-6.59-6.59c-.39-.39-1.02-.39-1.41 0l-6.6 6.58c-.39.39-.39 1.02 0 1.41.39.39 1.02.39 1.41 0L11 7.83V19c0 .55.45 1 1 1s1-.45 1-1z'/%3E%3C/svg%3E")}.tensorsite-icon--arrow-upward span::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 0 24 24' width='24px' fill='%23425066'%3E%3Cpath d='M0 0h24v24H0V0z' fill='none'/%3E%3Cpath d='M13 19V7.83l4.88 4.88c.39.39 1.03.39 1.42 0 .39-.39.39-1.02 0-1.41l-6.59-6.59c-.39-.39-1.02-.39-1.41 0l-6.6 6.58c-.39.39-.39 1.02 0 1.41.39.39 1.02.39 1.41 0L11 7.83V19c0 .55.45 1 1 1s1-.45 1-1z'/%3E%3C/svg%3E")}.tensorsite-icon--build span::before{background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 12h12V0H0z'/%3E%3Cpath d='M1 11h1v-1H1v1zm1-2H1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zm7-6h1V2H9v1zm1-2H9a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM9 7h1V6H9v1zm1-2H9a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zM5 7h1V6H5v1zm1-2H5a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zm3 6h1v-1H9v1zm1-2H9a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zm-5 2h1v-1H5v1zm1-2H5a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1z' fill='%23425066'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--build span::after{background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 12h12V0H0z'/%3E%3Cpath d='M1 11h1v-1H1v1zm1-2H1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zm7-6h1V2H9v1zm1-2H9a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM9 7h1V6H9v1zm1-2H9a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zM5 7h1V6H5v1zm1-2H5a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zm3 6h1v-1H9v1zm1-2H9a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zm-5 2h1v-1H5v1zm1-2H5a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1z' fill='%23ffffff%0A'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--certificate span::after{background-image:url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 0h24v24H0z'/%3E%3Cg fill='%23425066'%3E%3Cpath d='M12 9.6l-3.84 2.88a2.3984 2.3984 0 0 0-.96 1.92v8.6378c0 .792.9024 1.2433 1.536.768L12 21.966l3.264 1.8399c.6336.4752 1.536.024 1.536-.768V14.4c0-.756-.3552-1.4664-.96-1.92L12 9.6z'/%3E%3Cpath d='M6 6c0 3.3144 2.6856 6 6 6s6-2.6856 6-6-2.6856-6-6-6-6 2.6856-6 6'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--chat span::after{background-image:url("data:image/svg+xml,%3C?xml version='1.0' encoding='utf-8'?%3E %3C!-- Generator: Adobe Illustrator 25.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E %3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 600 600' style='enable-background:new 0 0 600 600;' xml:space='preserve'%3E %3Cstyle type='text/css'%3E .st0%7Bfill:%23435066;%7D %3C/style%3E %3Cpath class='st0' d='M471,181v20.4h29.8v268.4l-62.6-62.5l-222.4,0.1v-29.2h-20.4v49.6l234.4-0.1l91.4,91.4V181H471z M459,110.9 H79.7v338.2l84.4-82.9h295V110.9z M303.8,305H132v-23.9h171.8V305z M405.6,246.1H132v-24h273.7V246.1z M405.6,187.1H132v-24h273.7 V187.1z'/%3E %3C/svg%3E")}.tensorsite-icon--check::before{background-image:url("data:image/svg+xml,%3Csvg width='21' height='20' viewBox='0 0 21 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='translate(1 1)' fill='none' fill-rule='evenodd'%3E%3Ccircle stroke='%23FF6F00' cx='9' cy='9' r='9'/%3E%3Cpath stroke='%23425066' stroke-width='3' d='M4 9l3.729 3.729L18.064 2.393'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--code span::before{background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 12h12V0H0z'/%3E%3Cpath d='M4.832 1.126a.5.5 0 0 0-.706.042l-4 4.5a.5.5 0 0 0 0 .664l4 4.5a.5.5 0 1 0 .748-.664L1.169 6l3.705-4.168a.5.5 0 0 0-.042-.706m7.042 5.206l-4 4.5a.5.5 0 1 1-.748-.664L10.831 6 7.126 1.832a.5.5 0 1 1 .748-.664l4 4.5a.5.5 0 0 1 0 .664' fill='%23425066'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--code span::after{background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 12h12V0H0z'/%3E%3Cpath d='M4.832 1.126a.5.5 0 0 0-.706.042l-4 4.5a.5.5 0 0 0 0 .664l4 4.5a.5.5 0 1 0 .748-.664L1.169 6l3.705-4.168a.5.5 0 0 0-.042-.706m7.042 5.206l-4 4.5a.5.5 0 1 1-.748-.664L10.831 6 7.126 1.832a.5.5 0 1 1 .748-.664l4 4.5a.5.5 0 0 1 0 .664' fill='%23ffffff%0A'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--devlibrary span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1378.16 666.81'%3E%3Cg id='Layer_2' data-name='Layer 2'%3E%3Cg id='Layer_1-2' data-name='Layer 1'%3E%3Cpath d='M592.21,55.08A110.11,110.11,0,0,0,441.79,14.77L55.08,238h0a110.09,110.09,0,0,0,0,190.72L441.79,652A110.12,110.12,0,0,0,551.91,461.31L330.37,333.41,551.91,205.5A110.12,110.12,0,0,0,592.21,55.08Z' style='fill:%23425066'/%3E%3Cpath d='M1323.08,238,936.38,14.77A110.12,110.12,0,1,0,826.26,205.5l221.53,127.91L826.26,461.31A110.12,110.12,0,1,0,936.38,652l385.56-222.61.93-.53.21-.13h0a110.11,110.11,0,0,0,0-190.73Z' style='fill:%23425066'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--download span::before{background-image:url("data:image/svg+xml,<svg width='16' height='16' xmlns='http://www.w3.org/2000/svg'><g fill='none' fill-rule='evenodd'><path d='M0 16h16V0H0z'/><g fill='%23ff6f00'><path d='M13.2207 6h-2.721V1.5c0-.276-.223-.5-.5-.5h-4c-.276 0-.5.224-.5.5V6h-2.721c-.455 0-.673.559-.339.867l5.221 4.82c.192.176.487.176.679 0l5.221-4.82c.334-.308.116-.867-.34-.867M2 13.5v1c0 .276.224.5.5.5h11c.276 0 .5-.224.5-.5v-1c0-.276-.224-.5-.5-.5h-11c-.276 0-.5.224-.5.5'/></g></g></svg>")}.tensorsite-icon--download span::after{background-image:url("data:image/svg+xml,<svg width='16' height='16' xmlns='http://www.w3.org/2000/svg'><g fill='none' fill-rule='evenodd'><path d='M0 16h16V0H0z'/><g fill='%23425066'><path d='M13.2207 6h-2.721V1.5c0-.276-.223-.5-.5-.5h-4c-.276 0-.5.224-.5.5V6h-2.721c-.455 0-.673.559-.339.867l5.221 4.82c.192.176.487.176.679 0l5.221-4.82c.334-.308.116-.867-.34-.867M2 13.5v1c0 .276.224.5.5.5h11c.276 0 .5-.224.5-.5v-1c0-.276-.224-.5-.5-.5h-11c-.276 0-.5.224-.5.5'/></g></g></svg>")}.tensorsite-icon--email::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='12'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M-1-2h16v16H-1z'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' d='M12.3333.6667H1.6667C.9333.6667.34 1.2667.34 2l-.0067 8c0 .7333.6 1.3333 1.3334 1.3333h10.6666c.7334 0 1.3334-.6 1.3334-1.3333V2c0-.7333-.6-1.3333-1.3334-1.3333zm0 9.3333H1.6667V3.3333L7 6.6667l5.3333-3.3334V10zM7 5.3333L1.6667 2h10.6666L7 5.3333z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--external span::before,.tensorsite-icon--newsletter span::before{background-image:url("data:image/svg+xml;utf8,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M10 1H2c-.6 0-1 .4-1 1s.4 1 1 1h5.6L1.3 9.3c-.4.4-.4 1 0 1.4.4.4 1 .4 1.4 0L9 4.4V10c0 .6.4 1 1 1s1-.4 1-1V2c0-.6-.4-1-1-1z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(2 2)'%3E%3Cmask id='b' fill='%23ff6f00'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23ff6f00' xlink:href='%23a'/%3E%3Cpath fill='%23ff6f00' fill-rule='nonzero' mask='url(%23b)' d='M0 0h12v12H0z'/%3E%3C/g%3E%3Cpath fill='none' d='M2 2h12v12H2z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--external span::after,.tensorsite-icon--newsletter span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M10 1H2c-.6 0-1 .4-1 1s.4 1 1 1h5.6L1.3 9.3c-.4.4-.4 1 0 1.4.4.4 1 .4 1.4 0L9 4.4V10c0 .6.4 1 1 1s1-.4 1-1V2c0-.6-.4-1-1-1z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(2 2)'%3E%3Cmask id='b' fill='%23425066'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23425066' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M0 0h12v12H0z'/%3E%3C/g%3E%3Cpath fill='none' d='M2 2h12v12H2z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--github span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='32' height='32' viewBox='0 0 22 22' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M12 1C5.924 1 1 5.925 1 12c0 4.86 3.151 8.982 7.523 10.438.55.1.751-.24.751-.531 0-.26-.01-.953-.015-1.87-3.06.664-3.705-1.475-3.705-1.475-.5-1.271-1.222-1.609-1.222-1.609-.998-.683.076-.67.076-.67 1.104.08 1.685 1.135 1.685 1.135.981 1.68 2.574 1.195 3.201.914.1-.711.384-1.196.698-1.47-2.442-.278-5.01-1.222-5.01-5.437 0-1.2.429-2.183 1.132-2.952-.113-.278-.49-1.396.108-2.91 0 0 .924-.297 3.025 1.127a10.536 10.536 0 0 1 2.754-.371c.934.005 1.875.126 2.753.37 2.1-1.423 3.022-1.127 3.022-1.127.6 1.515.223 2.633.11 2.911.705.77 1.13 1.751 1.13 2.952 0 4.225-2.571 5.155-5.022 5.427.395.34.747 1.011.747 2.038 0 1.47-.014 2.656-.014 3.017 0 .294.198.637.757.53C19.85 20.977 23 16.858 23 12 23 5.925 18.075 1 12 1' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-1 -1)'%3E%3Cmask id='b' fill='%23425066'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23425066' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M0 0h24v24H0z'/%3E%3C/g%3E%3Cpath d='M-1-1h24v24H-1z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--codepen span::after{background-image:url("data:image/svg+xml,%3Csvg enable-background='new 0 0 500 500' height='500' viewBox='0 0 500 500' width='500' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m250.001 0c-138.074 0-250.001 111.927-250.001 250.001 0 138.076 111.927 249.999 250.001 249.999 138.072 0 249.999-111.923 249.999-249.999 0-138.074-111.927-250.001-249.999-250.001zm0 458.943c-115.212 0-208.941-93.733-208.941-208.942 0-115.208 93.729-208.941 208.941-208.941 115.208 0 208.938 93.733 208.938 208.941 0 115.209-93.729 208.942-208.938 208.942z'/%3E%3Cpath d='m404.462 201.172c-.028-.195-.076-.382-.109-.577-.065-.374-.135-.748-.232-1.114-.057-.22-.138-.431-.206-.642-.106-.326-.212-.651-.342-.968-.091-.22-.196-.439-.297-.651-.14-.3-.285-.593-.452-.877-.122-.212-.251-.416-.377-.618-.18-.277-.362-.546-.562-.806-.146-.194-.3-.39-.454-.577-.212-.243-.432-.487-.664-.716-.174-.178-.346-.357-.528-.521-.244-.219-.496-.431-.752-.633-.198-.155-.395-.31-.602-.456-.078-.049-.146-.114-.22-.163l-141.296-94.197c-4.464-2.976-10.274-2.976-14.738 0l-141.295 94.196c-.073.049-.142.114-.219.163-.208.146-.403.301-.598.456-.26.203-.512.415-.752.633-.187.164-.357.342-.533.521-.231.229-.451.473-.658.716-.159.188-.313.383-.459.577-.195.26-.383.529-.557.806-.134.203-.26.406-.382.618-.163.284-.309.577-.451.877-.102.211-.208.431-.297.651-.13.317-.236.642-.341.968-.07.211-.146.422-.208.642-.097.366-.162.74-.231 1.114-.032.195-.081.382-.106.577-.077.569-.122 1.146-.122 1.732v94.197c0 .585.044 1.162.122 1.74.025.188.074.382.106.568.069.374.134.748.231 1.114.062.22.138.432.208.643.105.324.211.65.341.975.089.222.195.433.297.645.143.3.289.592.451.885.122.204.248.406.382.61.174.276.362.545.557.806.146.203.301.391.459.577.208.243.427.488.658.716.175.178.346.357.533.52.24.221.492.432.752.635.195.155.391.31.598.454.077.05.146.115.219.163l141.295 94.197c2.231 1.487 4.802 2.236 7.371 2.236 2.566 0 5.135-.749 7.368-2.236l141.295-94.197c.074-.048.142-.113.22-.163.207-.145.403-.299.602-.454.256-.203.508-.414.752-.635.183-.162.354-.342.528-.52.232-.228.452-.473.664-.716.154-.187.308-.374.454-.577.2-.261.383-.529.562-.806.126-.204.255-.406.377-.61.167-.293.312-.585.452-.885.101-.212.206-.423.297-.645.13-.324.235-.65.342-.975.068-.211.149-.423.206-.643.098-.366.167-.74.232-1.114.033-.187.081-.381.109-.568.073-.578.119-1.155.119-1.74v-94.197c0-.585-.046-1.162-.119-1.731zm-141.176-67.639 104.088 69.387-46.493 31.103-57.595-38.527zm-26.571 0v61.963l-57.592 38.527-46.497-31.103zm-114.725 94.238 33.238 22.231-33.238 22.233zm114.725 138.7-104.088-69.388 46.497-31.094 57.592 38.52v61.962zm13.286-85.04-46.988-31.429 46.988-31.428 46.985 31.428zm13.285 85.04v-61.962l57.595-38.52 46.493 31.094zm114.724-94.237-33.233-22.233 33.233-22.231z'/%3E%3C/svg%3E")}.tensorsite-icon--glitch span::after{background-image:url("data:image/svg+xml,%3Csvg width='310' height='310' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M80.2 153.3c-10.37 1.94-16.1 1.71-24.3 1.71-8.56 0-42.4-13.03-53.32-27 0 0 16.94-4.18 16.94-7.73 0-3.54-19.35-10.09-19.35-10.09s-2.93-16.34 17.8-32.66c20.74-16.31 36.26-24.06 53.7-24.97 17.43-.9 23.28-.9 23.28-.9s15.18-20.77 23.15-20.77c3.99 0 62.4 12.58 67.45 20.77 5.06 8.19 7.52 7.6 10.1 9.56 2.6 1.96.96.39 12.68 3.04 29.3 6.64 25.3 9.24 47.08 13.27 8.81 1.64 49.2-18.48 53-16.53 1.78.91 3.17 18.21-3.76 29.56-6.93 11.34 5.56 20.71-.05 34.92-5.61 14.2 6.43 24.72 3.82 29.53-2.62 4.81-45.5-15.74-53-14.25-7.52 1.49-30.47 12.67-77 19.73-16.74 2.54-33.85 2.16-48.94.68 3.96 7.66 3.1 15.34 3.1 15.34s-9.63 2.94-27.02-.8c-16.5-3.55-24.58-20.67-25.36-22.4z' fill='%23000'/%3E%3Cpath d='M80.62 75.1a43.7 43.7 0 011.4 1.85 53.93 53.93 0 013.2 5.08c2.41 4.36 4 8.68 4.39 12.62.21 2.16.06 4.78-.42 7.75a71.28 71.28 0 01-2.38 9.75 97.99 97.99 0 01-2.94 8.08c-.8 1.86-.14 4.1 1.5 5.03 1.64.91 3.62.15 4.43-1.71a106.06 106.06 0 003.24-8.88 79.35 79.35 0 002.66-10.9c.59-3.65.78-6.98.48-9.96-.52-5.24-2.47-10.55-5.36-15.77a61.43 61.43 0 00-5.38-8.09 3.04 3.04 0 00-4.67-.16 4.12 4.12 0 00-.15 5.3zM111.24 74.44a3697.76 3697.76 0 0120.5 1.13c4.46.26 8.21.5 11.09.7 10.83.76 27.52 3.3 40.27 5.88 19.54 3.95 35.49 9.8 60.82 21.18l8.72 3.94c1.7.76 3.62-.18 4.3-2.1.67-1.93-.16-4.11-1.86-4.88l-8.73-3.94c-25.7-11.54-42.02-17.53-62.1-21.59-12.97-2.62-29.9-5.2-41.01-5.99a999.18 999.18 0 00-16.13-.99 3703.41 3703.41 0 00-22.13-1.17l-.5-.03c-2.55-.13-4.26 2.92-3.08 5.48l.27.62c.23.54.5 1.15.77 1.84.81 1.98 1.62 4.13 2.37 6.4a75.27 75.27 0 012.7 10.27c.23 1.2.4 2.36.5 3.46.32 3.2-.4 8.7-1.94 15.67-.54 2.46-1.18 5.05-1.89 7.72a266.87 266.87 0 01-3.97 13.48c-.64 1.94.22 4.1 1.93 4.84 1.71.73 3.62-.25 4.26-2.2a70 70 0 00.36-1.1c.28-.89.6-1.89.93-2.99.96-3.14 1.93-6.47 2.82-9.86.74-2.78 1.4-5.48 1.98-8.06 1.72-7.8 2.52-14 2.1-18.34-.14-1.33-.34-2.7-.6-4.13-.65-3.65-1.69-7.5-3-11.42-.44-1.34-.9-2.65-1.38-3.9l1.63.08z' fill='%23FFF' fill-rule='nonzero'/%3E%3Cg transform='matrix(-1 0 0 1 58.34 81.29)'%3E%3Cellipse fill='%23000' cx='14.48' cy='16.43' rx='14.48' ry='16.43'/%3E%3Cpath d='M28.96 16.62v-.19C28.96 7.36 22.48 0 14.48 0S0 7.36 0 16.43c0 9.08 6.48 16.44 14.48 16.44 7.17 0 13.12-5.9 14.28-13.66-1 5.83-5.53 10.24-10.96 10.24-6.16 0-11.16-5.68-11.16-12.67 0-7 5-12.67 11.16-12.67 6.12 0 11.09 5.58 11.16 12.5z' fill='%23FFF'/%3E%3Cellipse fill='%23FFF' cx='21.12' cy='20.54' rx='3.02' ry='3.42'/%3E%3C/g%3E%3Cg%3E%3Cpath d='M80.2 254.62c-10.37 1.94-16.1 1.71-24.3 1.71-8.56 0-42.4-13.03-53.32-27 0 0 16.94-4.19 16.94-7.73S.17 211.51.17 211.51s-2.93-16.34 17.8-32.66c20.74-16.32 36.26-24.06 53.7-24.97 17.43-.9 23.28-.9 23.28-.9s15.18-20.78 23.15-20.78c3.99 0 62.4 12.59 67.45 20.78 5.06 8.19 7.52 7.59 10.1 9.55 2.6 1.97.96.4 12.68 3.05 29.3 6.64 25.3 9.24 47.08 13.27 8.81 1.63 49.2-18.48 53-16.53 1.78.91 3.17 18.21-3.76 29.56-6.93 11.34 5.56 20.7-.05 34.91-5.61 14.2 6.43 24.73 3.82 29.54-2.62 4.8-45.5-15.74-53-14.25-7.52 1.48-30.47 12.67-77 19.73-16.74 2.54-33.85 2.16-48.94.68 3.96 7.66 3.1 15.34 3.1 15.34s-9.63 2.93-27.02-.8c-16.5-3.55-24.58-20.68-25.36-22.41z' fill='%23000'/%3E%3Cpath d='M80.62 176.4c.05.07.18.22.35.46a53.93 53.93 0 014.25 6.5c2.41 4.34 4 8.67 4.39 12.61.21 2.16.06 4.78-.42 7.75a71.28 71.28 0 01-2.38 9.75 97.99 97.99 0 01-2.94 8.08c-.8 1.86-.14 4.1 1.5 5.02 1.64.92 3.62.15 4.43-1.7a106.06 106.06 0 003.24-8.88 79.35 79.35 0 002.66-10.91c.59-3.64.78-6.98.48-9.95-.52-5.24-2.47-10.55-5.36-15.77a61.43 61.43 0 00-5.38-8.1 3.04 3.04 0 00-4.67-.16 4.12 4.12 0 00-.15 5.3zM111.24 175.76a3697.76 3697.76 0 0120.5 1.12c4.46.27 8.21.5 11.09.7 10.83.77 27.52 3.3 40.27 5.89 19.54 3.95 35.49 9.8 60.82 21.18l8.72 3.93c1.7.77 3.62-.17 4.3-2.1.67-1.92-.16-4.1-1.86-4.87l-8.73-3.94c-25.7-11.55-42.02-17.53-62.1-21.6-12.97-2.62-29.9-5.2-41.01-5.98a999.18 999.18 0 00-16.13-.99 3703.41 3703.41 0 00-22.13-1.18l-.5-.02c-2.55-.13-4.26 2.92-3.08 5.48l.27.62c.23.53.5 1.15.77 1.84.81 1.98 1.62 4.13 2.37 6.39a75.27 75.27 0 012.7 10.28c.23 1.2.4 2.36.5 3.46.32 3.2-.4 8.7-1.94 15.66-.54 2.46-1.18 5.06-1.89 7.73a266.87 266.87 0 01-3.97 13.48c-.64 1.94.22 4.1 1.93 4.84 1.71.73 3.62-.26 4.26-2.2a70 70 0 00.36-1.1c.28-.89.6-1.89.93-2.99.96-3.14 1.93-6.48 2.82-9.86.74-2.79 1.4-5.49 1.98-8.07 1.72-7.79 2.52-13.99 2.1-18.33-.14-1.33-.34-2.71-.6-4.13-.65-3.65-1.69-7.5-3-11.43-.44-1.33-.9-2.64-1.38-3.9l1.63.09z' fill='%23FFF' fill-rule='nonzero'/%3E%3Cg transform='matrix(-1 0 0 1 58.34 182.6)'%3E%3Cellipse fill='%23000' cx='14.48' cy='16.43' rx='14.48' ry='16.43'/%3E%3Cpath d='M28.96 16.62v-.19C28.96 7.36 22.48 0 14.48 0S0 7.36 0 16.43c0 9.08 6.48 16.44 14.48 16.44 7.17 0 13.12-5.9 14.28-13.66-1 5.83-5.53 10.24-10.96 10.24-6.16 0-11.16-5.68-11.16-12.67 0-7 5-12.67 11.16-12.67 6.12 0 11.09 5.58 11.16 12.5z' fill='%23FFF'/%3E%3Cellipse fill='%23FFF' cx='21.12' cy='20.54' rx='3.02' ry='3.42'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--github--orange span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='32' height='32' viewBox='0 0 22 22' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M12 1C5.924 1 1 5.925 1 12c0 4.86 3.151 8.982 7.523 10.438.55.1.751-.24.751-.531 0-.26-.01-.953-.015-1.87-3.06.664-3.705-1.475-3.705-1.475-.5-1.271-1.222-1.609-1.222-1.609-.998-.683.076-.67.076-.67 1.104.08 1.685 1.135 1.685 1.135.981 1.68 2.574 1.195 3.201.914.1-.711.384-1.196.698-1.47-2.442-.278-5.01-1.222-5.01-5.437 0-1.2.429-2.183 1.132-2.952-.113-.278-.49-1.396.108-2.91 0 0 .924-.297 3.025 1.127a10.536 10.536 0 0 1 2.754-.371c.934.005 1.875.126 2.753.37 2.1-1.423 3.022-1.127 3.022-1.127.6 1.515.223 2.633.11 2.911.705.77 1.13 1.751 1.13 2.952 0 4.225-2.571 5.155-5.022 5.427.395.34.747 1.011.747 2.038 0 1.47-.014 2.656-.014 3.017 0 .294.198.637.757.53C19.85 20.977 23 16.858 23 12 23 5.925 18.075 1 12 1' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-1 -1)'%3E%3Cmask id='b' fill='%23ff6f00'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23ff6f00' xlink:href='%23a'/%3E%3Cpath fill='%23ff6f00' fill-rule='nonzero' mask='url(%23b)' d='M0 0h24v24H0z'/%3E%3C/g%3E%3Cpath d='M-1-1h24v24H-1z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--github--slate span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='32' height='32' viewBox='0 0 22 22' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M12 1C5.924 1 1 5.925 1 12c0 4.86 3.151 8.982 7.523 10.438.55.1.751-.24.751-.531 0-.26-.01-.953-.015-1.87-3.06.664-3.705-1.475-3.705-1.475-.5-1.271-1.222-1.609-1.222-1.609-.998-.683.076-.67.076-.67 1.104.08 1.685 1.135 1.685 1.135.981 1.68 2.574 1.195 3.201.914.1-.711.384-1.196.698-1.47-2.442-.278-5.01-1.222-5.01-5.437 0-1.2.429-2.183 1.132-2.952-.113-.278-.49-1.396.108-2.91 0 0 .924-.297 3.025 1.127a10.536 10.536 0 0 1 2.754-.371c.934.005 1.875.126 2.753.37 2.1-1.423 3.022-1.127 3.022-1.127.6 1.515.223 2.633.11 2.911.705.77 1.13 1.751 1.13 2.952 0 4.225-2.571 5.155-5.022 5.427.395.34.747 1.011.747 2.038 0 1.47-.014 2.656-.014 3.017 0 .294.198.637.757.53C19.85 20.977 23 16.858 23 12 23 5.925 18.075 1 12 1' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-1 -1)'%3E%3Cmask id='b' fill='%23425066'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23425066' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M0 0h24v24H0z'/%3E%3C/g%3E%3Cpath d='M-1-1h24v24H-1z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--github--white span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='32' height='32' viewBox='0 0 22 22' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M12 1C5.924 1 1 5.925 1 12c0 4.86 3.151 8.982 7.523 10.438.55.1.751-.24.751-.531 0-.26-.01-.953-.015-1.87-3.06.664-3.705-1.475-3.705-1.475-.5-1.271-1.222-1.609-1.222-1.609-.998-.683.076-.67.076-.67 1.104.08 1.685 1.135 1.685 1.135.981 1.68 2.574 1.195 3.201.914.1-.711.384-1.196.698-1.47-2.442-.278-5.01-1.222-5.01-5.437 0-1.2.429-2.183 1.132-2.952-.113-.278-.49-1.396.108-2.91 0 0 .924-.297 3.025 1.127a10.536 10.536 0 0 1 2.754-.371c.934.005 1.875.126 2.753.37 2.1-1.423 3.022-1.127 3.022-1.127.6 1.515.223 2.633.11 2.911.705.77 1.13 1.751 1.13 2.952 0 4.225-2.571 5.155-5.022 5.427.395.34.747 1.011.747 2.038 0 1.47-.014 2.656-.014 3.017 0 .294.198.637.757.53C19.85 20.977 23 16.858 23 12 23 5.925 18.075 1 12 1' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-1 -1)'%3E%3Cmask id='b' fill='%23ffffff%0A'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23ffffff%0A' xlink:href='%23a'/%3E%3Cpath fill='%23ffffff%0A' fill-rule='nonzero' mask='url(%23b)' d='M0 0h24v24H0z'/%3E%3C/g%3E%3Cpath d='M-1-1h24v24H-1z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--google-ai span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='24' height='22' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M3.036 6.413c-.574 0-1.024.424-1.035.98-.013.564.465 1.035 1.042 1.027a1.015 1.015 0 0 0 1.012-1.014c.002-.554-.448-.993-1.019-.993m-.028 10.15c-.55.012-1.02.493-1.007 1.029a1.044 1.044 0 0 0 1.03 1.007 1.033 1.033 0 0 0 1.024-1.05 1.038 1.038 0 0 0-1.047-.987m.01-3.056a1.015 1.015 0 0 0 1.037-.99c.016-.559-.467-1.046-1.035-1.041A1.042 1.042 0 0 0 2 12.493a1.021 1.021 0 0 0 1.017 1.013m4.42 5.38c-.698-.007-1.22.498-1.226 1.184a1.19 1.19 0 0 0 1.196 1.223c.68.008 1.22-.517 1.227-1.193.007-.689-.505-1.21-1.197-1.215m-.04-12.769a1.192 1.192 0 0 0 1.237-1.184 1.174 1.174 0 0 0-1.186-1.227c-.702-.008-1.226.49-1.237 1.175a1.192 1.192 0 0 0 1.186 1.236m.049 7.723a1.206 1.206 0 0 0-1.235 1.223 1.214 1.214 0 0 0 1.208 1.217 1.214 1.214 0 0 0 1.216-1.21 1.205 1.205 0 0 0-1.189-1.23M7.422 8.72a1.186 1.186 0 0 0-1.21 1.209c0 .692.515 1.202 1.21 1.202.697 0 1.215-.514 1.213-1.203A1.187 1.187 0 0 0 7.422 8.72m4.41.123c.782-.005 1.43-.654 1.412-1.414a1.43 1.43 0 0 0-1.447-1.391 1.418 1.418 0 0 0-1.404 1.427c.012.79.63 1.383 1.44 1.378m1.41 8.698c.007-.769-.64-1.407-1.426-1.408-.785-.001-1.427.632-1.424 1.405a1.414 1.414 0 0 0 1.42 1.409 1.424 1.424 0 0 0 1.43-1.406M11.8 11.089a1.414 1.414 0 0 0-1.406 1.423 1.419 1.419 0 0 0 1.438 1.393 1.425 1.425 0 0 0 1.413-1.423c-.007-.77-.66-1.399-1.445-1.393m.033 10.08a1.436 1.436 0 0 0-1.439 1.402c-.012.77.627 1.42 1.405 1.429.777.009 1.43-.62 1.446-1.396.015-.752-.645-1.422-1.412-1.436M11.81 1c-.787 0-1.42.63-1.418 1.408A1.41 1.41 0 0 0 11.82 3.81c.793-.004 1.43-.635 1.425-1.412A1.416 1.416 0 0 0 11.811 1m4.349 17.487a1.624 1.624 0 0 0-1.658 1.62c-.008.957.692 1.673 1.637 1.676a1.648 1.648 0 0 0 1.675-1.656 1.651 1.651 0 0 0-1.654-1.64m.013-15.26c-.94-.008-1.655.679-1.671 1.602-.016.956.683 1.681 1.625 1.687.945.006 1.686-.715 1.687-1.642a1.64 1.64 0 0 0-1.641-1.647m-.013 10.2c-.94-.001-1.66.72-1.658 1.666.003.93.704 1.628 1.638 1.631.943.003 1.678-.723 1.674-1.654a1.663 1.663 0 0 0-1.654-1.642m1.654-3.486a1.673 1.673 0 0 0-1.669-1.675 1.635 1.635 0 0 0-1.643 1.644c-.005.945.718 1.679 1.652 1.673a1.667 1.667 0 0 0 1.66-1.642m2.666-.624c1.082.001 1.9-.805 1.901-1.875a1.88 1.88 0 0 0-1.897-1.895 1.873 1.873 0 0 0-1.899 1.89c-.006 1.069.81 1.878 1.895 1.88m.023 6.389c-1.088-.007-1.907.787-1.918 1.86a1.867 1.867 0 0 0 1.878 1.909c1.073.004 1.91-.81 1.918-1.868.01-1.069-.806-1.895-1.878-1.901m-1.918-3.19c-.003-1.068.818-1.886 1.894-1.887 1.075 0 1.902.817 1.902 1.882.001 1.066-.819 1.88-1.896 1.882-1.08.001-1.896-.806-1.9-1.877' id='a'/%3E%3C/defs%3E%3Cg transform='translate(0 -.5)' fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 .5h24v24H0z'/%3E%3Cmask id='b' fill='%23C6CAD1'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23C6CAD1' xlink:href='%23a'/%3E%3Cpath fill='%23C6CAD1' fill-rule='nonzero' mask='url(%23b)' d='M0 .5h24v24H0z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--google-ai.tensorsite-content__subtitle-icon span::after{top:-3px}.tensorsite-icon--group span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='22' height='14' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M16 11c1.66 0 2.99-1.34 2.99-3S17.66 5 16 5c-1.66 0-3 1.34-3 3s1.34 3 3 3zm-8 0c1.66 0 2.99-1.34 2.99-3S9.66 5 8 5C6.34 5 5 6.34 5 8s1.34 3 3 3zm0 2c-2.33 0-7 1.17-7 3.5V18c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-1.5c0-2.33-4.67-3.5-7-3.5zm8 0c-.29 0-.62.02-.97.05.02.01.03.03.04.04 1.14.83 1.93 1.94 1.93 3.41V18c0 .35-.07.69-.18 1H22c.55 0 1-.45 1-1v-1.5c0-2.33-4.67-3.5-7-3.5z' id='a'/%3E%3C/defs%3E%3Cg stroke-width='0' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-1 -5)'%3E%3Cmask id='b' fill='%23425066'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23425066' fill-rule='nonzero' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M0 0h24v24H0z'/%3E%3C/g%3E%3Cpath d='M-1-5h24v24H-1z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--internal span::before{background-image:url("data:image/svg+xml;utf8,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M11.7 5.3l-5-5c-.4-.4-1-.4-1.4 0-.4.4-.4 1 0 1.4L8.6 5H1c-.6 0-1 .4-1 1s.4 1 1 1h7.6l-3.3 3.3c-.4.4-.4 1 0 1.4.4.4 1 .4 1.4 0l5-5c.4-.4.4-1 0-1.4z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(2 2)'%3E%3Cmask id='b' fill='%23ff6f00'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23ff6f00' xlink:href='%23a'/%3E%3Cpath fill='%23ff6f00' fill-rule='nonzero' mask='url(%23b)' d='M0 0h12v12H0z'/%3E%3C/g%3E%3Cpath fill='none' d='M2 2h12v12H2z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--internal span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M11.7 5.3l-5-5c-.4-.4-1-.4-1.4 0-.4.4-.4 1 0 1.4L8.6 5H1c-.6 0-1 .4-1 1s.4 1 1 1h7.6l-3.3 3.3c-.4.4-.4 1 0 1.4.4.4 1 .4 1.4 0l5-5c.4-.4.4-1 0-1.4z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(2 2)'%3E%3Cmask id='b' fill='%23425066'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23425066' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M0 0h12v12H0z'/%3E%3C/g%3E%3Cpath fill='none' d='M2 2h12v12H2z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--mailbox span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='20' height='16' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M18 0H2C.9 0 0 .9 0 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V2c0-1.1-.9-2-2-2zm-.4 4.25l-6.54 4.09c-.65.41-1.47.41-2.12 0L2.4 4.25a.85.85 0 1 1 .9-1.44L10 7l6.7-4.19a.85.85 0 1 1 .9 1.44z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cmask id='b' fill='%23425066'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23425066' fill-rule='nonzero' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M-2-4h24v24H-2z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--math span::before{background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.75 7.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0m.75 2.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5m2-1.5h-4a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1M4.444 7.556a.499.499 0 0 0-.707 0L2.5 8.793 1.263 7.556a.499.499 0 0 0-.707 0 .499.499 0 0 0 0 .707L1.793 9.5.556 10.737a.499.499 0 0 0 0 .707.499.499 0 0 0 .707 0L2.5 10.207l1.237 1.237a.499.499 0 0 0 .707 0 .499.499 0 0 0 0-.707L3.207 9.5l1.237-1.237a.499.499 0 0 0 0-.707M7.5 3h4a.5.5 0 0 0 0-1h-4a.5.5 0 0 0 0 1M5 2.5a.5.5 0 0 1-.5.5H3v1.5a.5.5 0 0 1-1 0V3H.5a.5.5 0 0 1 0-1H2V.5a.5.5 0 0 1 1 0V2h1.5a.5.5 0 0 1 .5.5' fill='%23425066' fill-rule='evenodd'/%3E%3C/svg%3E")}.tensorsite-icon--math span::after{background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.75 7.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0m.75 2.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5m2-1.5h-4a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1M4.444 7.556a.499.499 0 0 0-.707 0L2.5 8.793 1.263 7.556a.499.499 0 0 0-.707 0 .499.499 0 0 0 0 .707L1.793 9.5.556 10.737a.499.499 0 0 0 0 .707.499.499 0 0 0 .707 0L2.5 10.207l1.237 1.237a.499.499 0 0 0 .707 0 .499.499 0 0 0 0-.707L3.207 9.5l1.237-1.237a.499.499 0 0 0 0-.707M7.5 3h4a.5.5 0 0 0 0-1h-4a.5.5 0 0 0 0 1M5 2.5a.5.5 0 0 1-.5.5H3v1.5a.5.5 0 0 1-1 0V3H.5a.5.5 0 0 1 0-1H2V.5a.5.5 0 0 1 1 0V2h1.5a.5.5 0 0 1 .5.5' fill='%23ffffff%0A' fill-rule='evenodd'/%3E%3C/svg%3E")}.tensorsite-icon--blog span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpolygon points='0 0 24 0 24 24 0 24'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' d='M21,11.01 L3,11 L3,13 L21,13 L21,11.01 Z M3,16 L15,16 L15,18 L3,18 L3,16 Z M21,6 L3,6 L3,8.01 L21,8 L21,6 Z'/%3E%3C/g%3E%3C/svg%3E%0A")}.tensorsite-icon--next span::before{background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.418 7.01h11.17l-4.88-4.88c-.39-.39-.39-1.03 0-1.42a.996.996 0 0 1 1.41 0l6.59 6.59c.39.39.39 1.02 0 1.41l-6.59 6.59a.996.996 0 1 1-1.41-1.41l4.88-4.88H1.417c-.55 0-1-.45-1-1s.45-1 1-1z' fill='%23ff6f00' fill-rule='nonzero'/%3E%3C/svg%3E")}.tensorsite-icon--next span::after{background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.418 7.01h11.17l-4.88-4.88c-.39-.39-.39-1.03 0-1.42a.996.996 0 0 1 1.41 0l6.59 6.59c.39.39.39 1.02 0 1.41l-6.59 6.59a.996.996 0 1 1-1.41-1.41l4.88-4.88H1.417c-.55 0-1-.45-1-1s.45-1 1-1z' fill='%23425066' fill-rule='nonzero'/%3E%3C/svg%3E")}.tensorsite-icon--newsletter::before{background:center/contain no-repeat url("data:image/svg+xml;utf8,%3Csvg width='20' height='16' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M18 0H2C.9 0 0 .9 0 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V2c0-1.1-.9-2-2-2zm-.4 4.25l-6.54 4.09c-.65.41-1.47.41-2.12 0L2.4 4.25a.85.85 0 1 1 .9-1.44L10 7l6.7-4.19a.85.85 0 1 1 .9 1.44z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cmask id='b' fill='%23ff6f00'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23ff6f00' fill-rule='nonzero' xlink:href='%23a'/%3E%3Cpath fill='%23ff6f00' fill-rule='nonzero' mask='url(%23b)' d='M-2-4h24v24H-2z'/%3E%3C/g%3E%3C/svg%3E");content:'\00a0';display:inline-block;height:20px;margin-right:7px;width:20px}.tensorsite-icon--previous span::before{background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M15 7H3.83l4.88-4.88c.39-.39.39-1.03 0-1.42A.996.996 0 0 0 7.3.7L.71 7.29a.996.996 0 0 0 0 1.41l6.59 6.59a.996.996 0 1 0 1.41-1.41L3.83 9H15c.55 0 1-.45 1-1s-.45-1-1-1z' id='a'/%3E%3C/defs%3E%3Cuse fill='%23ff6f00' transform='matrix(1 0 0 -1 -.417 15.99)' xlink:href='%23a' fill-rule='evenodd'/%3E%3C/svg%3E")}.tensorsite-icon--previous span::after{background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M15 7H3.83l4.88-4.88c.39-.39.39-1.03 0-1.42A.996.996 0 0 0 7.3.7L.71 7.29a.996.996 0 0 0 0 1.41l6.59 6.59a.996.996 0 1 0 1.41-1.41L3.83 9H15c.55 0 1-.45 1-1s-.45-1-1-1z' id='a'/%3E%3C/defs%3E%3Cuse fill='%23425066' transform='matrix(1 0 0 -1 -.417 15.99)' xlink:href='%23a' fill-rule='evenodd'/%3E%3C/svg%3E")}.tensorsite-icon--product-hub span::after{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 385.34 385.34' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3ClinearGradient id='a' gradientTransform='matrix(1 0 0 -1 -107.33 494.67)' gradientUnits='userSpaceOnUse' x1='144.09' x2='431.73' y1='302' y2='302'%3E%3Cstop offset='0' stop-color='%23425066'/%3E%3Cstop offset='1' stop-color='%23425066'/%3E%3C/linearGradient%3E%3Ccircle cx='192.67' cy='192.67' fill='url(%23a)' r='192.67'/%3E%3Cg fill='%23fff'%3E%3Cpath d='m285.6 234.34-40.94-23.64-10.09 17.48 41.2 23.78v19.6l27.33 15.78 27.32-15.78v-31.55l-27.32-15.78z'/%3E%3Cpath d='m203.39 247.18h-20.18v46.51l-17.24 9.95v31.55l27.33 15.78 27.33-15.78v-31.55l-17.24-9.95z'/%3E%3Cpath d='m101.53 233.96-17.65-10.19-27.33 15.78v31.55l27.33 15.77 27.33-15.77v-19.42l40.74-23.53-10.09-17.47z'/%3E%3Cpath d='m220.61 51.01v31.56l-17.2 9.99v40.74l-10.13-5.85-10.07 5.78v-40.67l-17.2-9.99v-31.56l27.27-15.77z'/%3E%3Cpath d='m149.48 165.6-5.85 10.06-16.32-9.45-25.7-14.83-17.14 9.93-27.33-15.77v-31.56l27.33-15.77 27.34 15.77v20l23.6 13.6 11.42 6.66-8.5 4.9z'/%3E%3Cpath d='m330.44 114.12v31.55l-27.34 15.78-17.82-10.27-26.11 15.1h-.07l-16.18 9.38-5.85-10.06-.14-.28 11.02-6.32-8.3-4.76 11.43-6.66 24.68-14.22v-19.24l27.34-15.78z'/%3E%3Cpath d='m358.41 254.91-47.67-27.48-10.2-5.91-10 5.78-47.81 27.61-8.09 4.69v76.09l12.11 7 43.79 25.31 10 5.78 10.2-5.91 43.65-25.16 12.11-7v-76.11zm-14.15 17.75-43.72 25.22v.28l-43.73-25.23-11.15-6.46 8.5-4.9 36.38-21 10.07-5.78 10.13 5.85 36.26 20.93 8.3 4.76z' transform='translate(-107.33 -107.33)'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--phone::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M-2-2h16v16H-2z'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' d='M2.4133 5.1933C3.3733 7.08 4.92 8.62 6.8067 9.5867L8.2733 8.12c.18-.18.4467-.24.68-.16.7467.2467 1.5534.38 2.38.38.3667 0 .6667.3.6667.6667v2.3266c0 .3667-.3.6667-.6667.6667C5.0733 12 0 6.9267 0 .6667 0 .3.3 0 .6667 0H3c.3667 0 .6667.3.6667.6667 0 .8333.1333 1.6333.38 2.38.0733.2333.02.4933-.1667.68L2.4133 5.1933z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--puzzle-build::before{background-image:url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 36h36V0H0z'/%3E%3Cpath d='M34.935 18.52a1.98 1.98 0 0 1-1.337 1.39 1.979 1.979 0 0 1-1.796-.32.5.5 0 0 0-.802.398V30.5a.5.5 0 0 1-.5.5h-20A5.506 5.506 0 0 1 5 25.5v-20c0-.276.224-.5.5-.5h9.677a3.021 3.021 0 0 0-.046 1.883 2.999 2.999 0 0 0 2.108 2.023 3.026 3.026 0 0 0 2.607-.542A2.982 2.982 0 0 0 20.826 5H30.5a.5.5 0 0 1 .5.5v10.513c0 .19.108.363.277.447.17.085.373.067.524-.049.866-.656 2.128-.469 2.776.358.382.49.513 1.128.358 1.752zm.43-2.366c-.785-1.005-2.181-1.406-3.366-.98V5.5c0-.826-.671-1.5-1.5-1.5H19.99a.503.503 0 0 0-.45.278.504.504 0 0 0 .05.524c.27.356.41.77.41 1.199 0 .62-.28 1.194-.768 1.577a2.02 2.02 0 0 1-1.75.359 1.978 1.978 0 0 1-1.392-1.338 1.976 1.976 0 0 1 .322-1.796.497.497 0 0 0 .047-.524.499.499 0 0 0-.446-.278H5.5C4.673 4 4 4.672 4 5.5v20c0 3.584 2.915 6.5 6.5 6.5h20a1.5 1.5 0 0 0 1.5-1.5v-9.677a3.028 3.028 0 0 0 1.883.046 2.997 2.997 0 0 0 2.023-2.108 3.022 3.022 0 0 0-.541-2.607zM16.998 18h1v-1h-1v1zm1-2h-1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zm3-2h1v-1h-1v1zm1-2h-1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zm-1 6h1v-1h-1v1zm1-2h-1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zm-1 6h1v-1h-1v1zm1-2h-1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zm-9 2h1v-1h-1v1zm1-2h-1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1zm3 2h1v-1h-1v1zm1-2h-1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1z' fill='%23425066'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--puzzle-code::before{background-image:url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 36h36V0H0z'/%3E%3Cpath d='M27.094 17.24a2.996 2.996 0 0 1 2.022-2.109 2.983 2.983 0 0 1 1.884.043V5.5a.5.5 0 0 0-.5-.5h-20A5.506 5.506 0 0 0 5 10.5v20a.5.5 0 0 0 .5.5h10.511a.5.5 0 0 1 .4.802 1.97 1.97 0 0 0-.32 1.796 1.973 1.973 0 0 0 1.39 1.337 2.026 2.026 0 0 0 1.75-.359c.488-.382.77-.957.77-1.576 0-.429-.143-.844-.41-1.198a.5.5 0 0 1 .398-.802H30.5a.5.5 0 0 0 .5-.5v-9.675c-1.18.427-2.579.026-3.364-.979a3.02 3.02 0 0 1-.542-2.607zm.971.24a2.028 2.028 0 0 0 .358 1.75c.647.83 1.91 1.016 2.775.36a.5.5 0 0 1 .802.398V30.5c0 .827-.673 1.5-1.5 1.5h-9.676a2.987 2.987 0 0 1-.977 3.364 2.993 2.993 0 0 1-1.85.635c-.252 0-.506-.03-.758-.093A2.992 2.992 0 0 1 15.177 32H5.5c-.827 0-1.5-.673-1.5-1.5v-20C4 6.916 6.916 4 10.5 4h20c.827 0 1.5.673 1.5 1.5v10.511a.5.5 0 0 1-.802.4 1.979 1.979 0 0 0-1.797-.32 1.974 1.974 0 0 0-1.336 1.388zm-8.19-4.312a.5.5 0 0 0-.749.664L22.831 18l-3.705 4.168a.5.5 0 1 0 .748.664l4-4.5a.5.5 0 0 0 0-.664l-4-4.5zm-3 .664L13.168 18l3.705 4.168a.501.501 0 0 1-.748.664l-4-4.5a.5.5 0 0 1 0-.664l4-4.5a.5.5 0 1 1 .748.664z' fill='%23425066'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--puzzle-math::before{background-image:url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 36h36V0H0z'/%3E%3Cpath d='M31 10.5C31 7.468 28.532 5 25.5 5h-20c-.275 0-.5.225-.5.5v10.512a.499.499 0 0 1-.802.398 1.982 1.982 0 0 0-1.797-.32 1.979 1.979 0 0 0-1.337 1.389 2.031 2.031 0 0 0 .36 1.752c.646.829 1.909 1.014 2.774.359a.5.5 0 0 1 .802.398V30.5c0 .275.225.5.5.5h9.675a2.983 2.983 0 0 1 .978-3.364 3.02 3.02 0 0 1 2.608-.542 3 3 0 0 1 2.108 2.022A3.014 3.014 0 0 1 20.823 31H30.5c.275 0 .5-.225.5-.5v-20zm1 0v20c0 .827-.673 1.5-1.5 1.5H19.988a.499.499 0 0 1-.398-.802c.395-.522.51-1.161.32-1.797a1.978 1.978 0 0 0-1.39-1.337 2.025 2.025 0 0 0-1.75.36c-.49.382-.77.957-.77 1.576 0 .43.142.844.41 1.198a.501.501 0 0 1-.398.802H5.5c-.827 0-1.5-.673-1.5-1.5v-9.675c-1.184.427-2.58.027-3.364-.978a3.021 3.021 0 0 1-.542-2.608 2.996 2.996 0 0 1 2.022-2.108A3.021 3.021 0 0 1 4 15.177V5.5C4 4.673 4.673 4 5.5 4h20c3.584 0 6.5 2.916 6.5 6.5zm-9.75 9.25a.75.75 0 1 0-1.501 0 .75.75 0 0 0 1.5 0zM23.5 21h-4a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1zm0-7h-4a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1zm-7.056 5.556a.499.499 0 0 0-.707 0L14.5 20.793l-1.237-1.237a.499.499 0 0 0-.707 0 .499.499 0 0 0 0 .707l1.237 1.237-1.237 1.237a.499.499 0 0 0 0 .707.499.499 0 0 0 .707 0l1.237-1.237 1.237 1.237a.499.499 0 0 0 .707 0 .499.499 0 0 0 0-.707L15.207 21.5l1.237-1.237a.499.499 0 0 0 0-.707zM21.5 22.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5zm-4.5-8a.5.5 0 0 1-.5.5H15v1.5a.5.5 0 0 1-1 0V15h-1.5a.5.5 0 0 1 0-1H14v-1.5a.5.5 0 0 1 1 0V14h1.5a.5.5 0 0 1 .5.5z' fill='%23425066'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--puzzle-theory::before{background-image:url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 36h36V0H0z'/%3E%3Cpath d='M31 5.5c0-.275-.225-.5-.5-.5H19.988a.499.499 0 0 1-.398-.802c.395-.522.51-1.161.32-1.797a1.979 1.979 0 0 0-1.389-1.337 2.023 2.023 0 0 0-1.752.36A1.988 1.988 0 0 0 16 3c0 .43.142.844.41 1.198a.501.501 0 0 1-.398.802H5.5c-.275 0-.5.225-.5.5v9.675c1.183-.427 2.579-.027 3.364.978.574.734.772 1.684.542 2.608a3 3 0 0 1-2.022 2.108A3.02 3.02 0 0 1 5 20.823V30.5c0 .275.225.5.5.5h20c3.032 0 5.5-2.468 5.5-5.5v-20zm1 0v20c0 3.584-2.916 6.5-6.5 6.5h-20c-.827 0-1.5-.673-1.5-1.5V19.988a.499.499 0 0 1 .802-.398 1.978 1.978 0 0 0 1.797.32 1.978 1.978 0 0 0 1.337-1.39 2.028 2.028 0 0 0-.36-1.75c-.646-.83-1.909-1.016-2.774-.36A.501.501 0 0 1 4 16.012V5.5C4 4.673 4.673 4 5.5 4h9.675a2.981 2.981 0 0 1 .978-3.364 3.025 3.025 0 0 1 2.608-.542 2.996 2.996 0 0 1 2.108 2.022A3.014 3.014 0 0 1 20.823 4H30.5c.827 0 1.5.673 1.5 1.5zM23.5 13h-11a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1zm0 6h-11a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1zm-6 3h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm6.5-5.5a.5.5 0 0 1-.5.5h-11a.5.5 0 0 1 0-1h11a.5.5 0 0 1 .5.5z' fill='%23425066'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--wechat span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' x='0' y='0' viewBox='0 0 24 24' xml:space='preserve'%3E%3Cg%3E%3Cpath fill='none' d='M0 0h24v24H0z'/%3E%3Cg%3E%3Cpath fill='%23425066' d='M9.09 3.02c.01 0 .03.01.04.01.21.01.41.02.62.04.25.03.5.07.75.11.32.05.63.13.93.22.36.11.71.23 1.05.38.13.06.26.11.38.18.49.24.95.53 1.37.86.16.13.32.26.48.4.13.11.25.23.37.36.22.23.42.47.6.73.12.18.24.35.34.54.17.29.31.6.42.92.08.23.15.46.2.7v.03c-.06-.01-.12-.01-.18-.02-.29-.03-.58-.04-.87-.02-.49.02-.97.09-1.45.21-.4.1-.78.23-1.15.4-.51.23-.98.52-1.41.86-.25.2-.48.41-.69.65-.3.32-.56.67-.78 1.04-.2.33-.36.68-.49 1.05-.12.34-.21.69-.26 1.05-.03.2-.06.39-.06.58 0 .19-.02.38-.01.56.01.24.03.48.08.71.04.2.09.41.14.61 0 .02.01.03.01.05v.02c-.04 0-.07.01-.11.01-.07 0-.15.01-.22.01-.15 0-.3.01-.45.01-.22 0-.44-.01-.66-.04-.2-.02-.4-.05-.6-.08-.25-.04-.5-.09-.75-.14l-.6-.12c-.03-.01-.06 0-.09.01l-1.62.81c-.22.11-.45.22-.67.34-.11.06-.23.12-.34.17-.01.01-.02.01-.03.02h-.01v-.01-.02c.25-.77.51-1.53.76-2.3v-.01c-.08-.06-.16-.11-.23-.17-.17-.14-.34-.27-.51-.41-.25-.2-.48-.43-.71-.67-.27-.28-.51-.59-.72-.92-.1-.15-.19-.31-.28-.47-.16-.28-.28-.58-.38-.89-.09-.28-.16-.57-.2-.86-.02-.14-.03-.28-.05-.42-.01-.05-.01-.11-.02-.16 0-.01-.01-.02-.01-.03C1 9.74 1 9.57 1 9.4c.01 0 .02-.01.02-.02 0-.06.01-.12.01-.18.01-.12.02-.23.04-.35.04-.34.12-.68.23-1.01.13-.4.31-.79.52-1.15.28-.48.62-.92 1.01-1.31.14-.14.3-.28.45-.41.17-.14.34-.27.51-.4.29-.22.6-.41.92-.57.38-.2.76-.36 1.16-.5.36-.12.73-.22 1.1-.3.29-.06.59-.1.88-.13.2-.02.41-.03.62-.04.02 0 .03-.01.04-.01h.58zm2.57 3.32c-.3.01-.63.12-.88.4-.19.2-.26.44-.21.71.04.24.18.43.37.58.27.2.58.28.92.24.39-.05.66-.25.78-.63.07-.22.07-.45 0-.67-.07-.22-.2-.39-.4-.5-.16-.09-.34-.13-.58-.13zm-5.43 0c-.05.01-.14.01-.22.03-.29.06-.54.19-.72.42-.17.21-.23.46-.16.72.06.26.22.44.44.58.26.15.53.22.83.18.34-.03.6-.2.75-.51.13-.29.13-.58.01-.88-.05-.12-.12-.22-.22-.3-.19-.17-.42-.23-.71-.24z'/%3E%3Cpath fill='%23425066' d='M20.86 20.98c-.04-.03-.08-.05-.12-.08-.25-.14-.51-.28-.76-.42-.24-.13-.48-.26-.73-.4-.16-.09-.31-.17-.47-.26-.04-.02-.07-.02-.11-.01-.28.07-.55.14-.83.2-.28.06-.56.11-.84.14-.2.02-.4.03-.6.03-.21-.01-.43 0-.64-.02-.39-.03-.77-.08-1.14-.18-.22-.05-.43-.11-.65-.18-.23-.08-.46-.17-.68-.26-.26-.11-.5-.24-.74-.39-.26-.16-.51-.33-.75-.53-.22-.18-.43-.38-.62-.59-.3-.32-.56-.68-.78-1.07-.2-.37-.36-.76-.47-1.17-.06-.24-.11-.51-.14-.79-.02-.22-.03-.44-.02-.66.02-.35.06-.7.15-1.04.08-.3.18-.58.3-.86.19-.41.43-.79.71-1.14.1-.12.2-.24.31-.35.13-.13.25-.26.39-.38.22-.2.45-.37.7-.53.26-.18.54-.33.82-.47.36-.17.74-.31 1.12-.42.36-.1.72-.17 1.08-.22.14-.02.28-.03.42-.04.13-.01.25-.01.38-.02.09 0 .18-.01.27-.01l.54.03c.32.02.63.07.93.13.28.06.56.13.83.23.27.09.54.2.8.33.45.21.87.47 1.26.77.16.12.3.25.45.38.08.07.15.14.22.21.19.19.36.4.52.61.17.23.33.48.46.74.19.37.34.75.43 1.15.05.22.1.44.11.67 0 .01.01.02.01.03v.77c0 .01-.01.02-.01.03-.01.25-.07.49-.13.73-.1.37-.25.71-.44 1.04-.16.28-.34.55-.54.81-.16.2-.32.39-.5.57-.14.14-.28.27-.42.4l-.39.33c-.09.07-.18.14-.27.22.01.03.01.05.02.08.03.11.07.22.1.33l.24.81c.07.24.15.49.22.73.01-.01 0-.01 0-.01zM14.29 12c-.11 0-.2.02-.28.05-.17.07-.3.18-.4.33-.11.17-.16.35-.11.54.08.28.26.47.53.58.12.05.24.05.36.03.29-.04.53-.15.7-.39.13-.18.16-.39.08-.6-.06-.14-.15-.26-.27-.35-.18-.13-.4-.18-.61-.19zm4.31 1.55c.05-.01.15-.02.25-.05.23-.06.42-.19.55-.4.08-.13.11-.27.09-.42-.04-.25-.2-.42-.41-.55-.14-.08-.3-.12-.46-.14-.13-.01-.25.01-.37.07-.18.09-.31.22-.4.38-.09.15-.11.32-.06.49.05.18.15.31.29.43.13.12.29.19.52.19z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--share span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M18 19H6c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h5c.55 0 1-.45 1-1s-.45-1-1-1H5a2 2 0 0 0-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-6c0-.55-.45-1-1-1s-1 .45-1 1v5c0 .55-.45 1-1 1zM14 4c0 .55.45 1 1 1h2.59l-9.13 9.13a.996.996 0 1 0 1.41 1.41L19 6.41V9c0 .55.45 1 1 1s1-.45 1-1V4c0-.55-.45-1-1-1h-5c-.55 0-1 .45-1 1z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cmask id='b' fill='%23fff'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill-rule='nonzero' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M0 0h24v24H0z'/%3E%3Cpath d='M0 0h24v24H0z'/%3E%3C/g%3E%3C/svg%3E%0A")}.tensorsite-icon--stackoverflow span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M6.715 14.673l10.154 2.167.43-2.085L7.145 12.59l-.43 2.084zm1.343-4.937l9.402 4.47.86-1.92L8.918 7.79l-.86 1.947zm2.606-4.717l7.978 6.774 1.316-1.618-7.978-6.774-1.316 1.618zM15.82 0l-1.665 1.262 6.178 8.502L22 8.502 15.821 0zM6.5 19.5v-2.112h10.37V19.5H6.5zm12.395 2.382V15.5H21V24H2v-8.5h2.105v6.382h14.79z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-2)'%3E%3Cmask id='b' fill='%23fff'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill-rule='nonzero' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M0 0h24v24H0z'/%3E%3C/g%3E%3Cpath d='M-2 0h24v24H-2z'/%3E%3C/g%3E%3C/svg%3E%0A")}.tensorsite-icon--theory span::before{background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 12h12V0H0z'/%3E%3Cpath d='M.5 11h5a.5.5 0 0 0 0-1h-5a.5.5 0 0 0 0 1m0-3h11a.5.5 0 0 0 0-1H.5a.5.5 0 0 0 0 1m0-3h11a.5.5 0 0 0 0-1H.5a.5.5 0 0 0 0 1M0 1.5A.5.5 0 0 1 .5 1h11a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5' fill='%23425066'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--theory span::after{background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 12h12V0H0z'/%3E%3Cpath d='M.5 11h5a.5.5 0 0 0 0-1h-5a.5.5 0 0 0 0 1m0-3h11a.5.5 0 0 0 0-1H.5a.5.5 0 0 0 0 1m0-3h11a.5.5 0 0 0 0-1H.5a.5.5 0 0 0 0 1M0 1.5A.5.5 0 0 1 .5 1h11a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5' fill='%23ffffff%0A'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--twitter span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='22' height='18' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M22.208 3.333a8.848 8.848 0 0 1-2.843 1.1A4.433 4.433 0 0 0 16.099 3c-2.47 0-4.473 2.035-4.473 4.544 0 .356.039.702.115 1.035-3.718-.19-7.015-1.997-9.223-4.75a4.592 4.592 0 0 0-.606 2.288 4.56 4.56 0 0 0 1.991 3.781 4.425 4.425 0 0 1-2.028-.566v.055c0 2.203 1.543 4.04 3.591 4.456a4.401 4.401 0 0 1-2.021.08c.57 1.804 2.221 3.118 4.18 3.154a8.89 8.89 0 0 1-5.558 1.945c-.36 0-.718-.02-1.067-.062A12.542 12.542 0 0 0 7.86 21c8.23 0 12.73-6.923 12.73-12.928 0-.198-.004-.395-.011-.59a9.127 9.127 0 0 0 2.23-2.351 8.83 8.83 0 0 1-2.569.715 4.542 4.542 0 0 0 1.968-2.513' id='a'/%3E%3C/defs%3E%3Cg transform='translate(-1 -3)' fill='none' fill-rule='evenodd'%3E%3Cmask id='b' fill='%23425066'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23425066' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M0 0h24v24H0z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--website::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M-1-1h16v16H-1z'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' d='M6.9933.3333C3.3133.3333.3333 3.32.3333 7c0 3.68 2.98 6.6667 6.66 6.6667 3.6867 0 6.6734-2.9867 6.6734-6.6667 0-3.68-2.9867-6.6667-6.6734-6.6667zm4.62 4H9.6467C9.4333 3.5 9.1267 2.7 8.7267 1.96c1.2266.42 2.2466 1.2733 2.8866 2.3733zM7 1.6933c.5533.8.9867 1.6867 1.2733 2.64H5.7267c.2866-.9533.72-1.84 1.2733-2.64zm-5.16 6.64C1.7333 7.9067 1.6667 7.46 1.6667 7c0-.46.0666-.9067.1733-1.3333h2.2533C4.04 6.1067 4 6.5467 4 7c0 .4533.04.8933.0933 1.3333H1.84zm.5467 1.3334h1.9666c.2134.8333.52 1.6333.92 2.3733a5.3245 5.3245 0 0 1-2.8866-2.3733zm1.9666-5.3334H2.3867A5.3245 5.3245 0 0 1 5.2733 1.96c-.4.74-.7066 1.54-.92 2.3733zM7 12.3067c-.5533-.8-.9867-1.6867-1.2733-2.64h2.5466c-.2866.9533-.72 1.84-1.2733 2.64zm1.56-3.9734H5.44c-.06-.44-.1067-.88-.1067-1.3333 0-.4533.0467-.9.1067-1.3333h3.12c.06.4333.1067.88.1067 1.3333 0 .4533-.0467.8933-.1067 1.3333zm.1667 3.7067c.4-.74.7066-1.54.92-2.3733h1.9666c-.64 1.1-1.66 1.9533-2.8866 2.3733zm1.18-3.7067C9.96 7.8933 10 7.4533 10 7c0-.4533-.04-.8933-.0933-1.3333H12.16c.1067.4266.1733.8733.1733 1.3333 0 .46-.0666.9067-.1733 1.3333H9.9067z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--video span::before{background-image:url("data:image/svg+xml;utf8,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M6.8 4.1l4.7 3.5c.3.2.3.6 0 .8l-4.7 3.5c-.3.3-.8 0-.8-.4v-7c0-.4.5-.7.8-.4zM8 0c4.4 0 8 3.6 8 8s-3.6 8-8 8-8-3.6-8-8 3.6-8 8-8zm0 14c3.3 0 6-2.7 6-6s-2.7-6-6-6-6 2.7-6 6 2.7 6 6 6z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cmask id='b' fill='%23ff6f00'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23ff6f00' xlink:href='%23a'/%3E%3Cpath fill='%23ff6f00' fill-rule='nonzero' mask='url(%23b)' d='M0 0h16v16H0z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--video span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M6.8 4.1l4.7 3.5c.3.2.3.6 0 .8l-4.7 3.5c-.3.3-.8 0-.8-.4v-7c0-.4.5-.7.8-.4zM8 0c4.4 0 8 3.6 8 8s-3.6 8-8 8-8-3.6-8-8 3.6-8 8-8zm0 14c3.3 0 6-2.7 6-6s-2.7-6-6-6-6 2.7-6 6 2.7 6 6 6z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cmask id='b' fill='%23425066'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23425066' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M0 0h16v16H0z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--youku span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='%23425066' fill-rule='evenodd'%3E%3Cpath d='M12,24 C5.372583,24 0,18.627417 0,12 C0,5.372583 5.372583,0 12,0 C18.627417,0 24,5.372583 24,12 C24,18.627417 18.627417,24 12,24 Z M12,20.25 C16.5563492,20.25 20.25,16.5563492 20.25,12 C20.25,7.44365081 16.5563492,3.75 12,3.75 C7.44365081,3.75 3.75,7.44365081 3.75,12 C3.75,16.5563492 7.44365081,20.25 12,20.25 Z'/%3E%3Cpath d='M16.6557974,13.689665 L10.8450403,17.6090702 C9.98654383,18.1881334 8.82117141,17.9616079 8.2421082,17.1031114 C7.66304499,16.2446149 7.88957044,15.0792425 8.74806695,14.5001793 L12.3626201,12.0621324 L8.76409468,9.6348964 C7.90559817,9.05583318 7.67907272,7.89046077 8.25813593,7.03196425 C8.83719914,6.17346774 10.0025716,5.94694229 10.8610681,6.5260055 L16.7679608,10.5102549 C17.6264573,11.0893181 17.8529827,12.2546906 17.2739195,13.1131871 C17.1086958,13.3581413 16.8957391,13.551645 16.6557974,13.689665 Z'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-icon--youtube span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='24' height='18' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M23.5 3.14A3 3 0 0 0 21.38 1C19.51.5 12 .5 12 .5S4.49.5 2.62 1A3 3 0 0 0 .5 3.14 31.668 31.668 0 0 0 0 8.95c-.011 1.95.156 3.899.5 5.82a3 3 0 0 0 2.12 2.13c1.87.51 9.38.51 9.38.51s7.51 0 9.38-.51a3 3 0 0 0 2.12-2.13c.344-1.921.511-3.87.5-5.82a31.668 31.668 0 0 0-.5-5.81zM9.55 12.5V5.39l6.27 3.56-6.27 3.55z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg%3E%3Cmask id='b' fill='%23425066'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23425066' fill-rule='nonzero' xlink:href='%23a'/%3E%3Cpath fill='%23425066' fill-rule='nonzero' mask='url(%23b)' d='M0-3h24v24H0z'/%3E%3C/g%3E%3Cpath d='M0-3h24v24H0z'/%3E%3C/g%3E%3C/svg%3E");position:relative;top:3px}.tensorsite-icon--youtube--white span::after{background-image:url("data:image/svg+xml;utf8,%3Csvg width='24' height='18' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M23.5 3.14A3 3 0 0 0 21.38 1C19.51.5 12 .5 12 .5S4.49.5 2.62 1A3 3 0 0 0 .5 3.14 31.668 31.668 0 0 0 0 8.95c-.011 1.95.156 3.899.5 5.82a3 3 0 0 0 2.12 2.13c1.87.51 9.38.51 9.38.51s7.51 0 9.38-.51a3 3 0 0 0 2.12-2.13c.344-1.921.511-3.87.5-5.82a31.668 31.668 0 0 0-.5-5.81zM9.55 12.5V5.39l6.27 3.56-6.27 3.55z' id='a'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg%3E%3Cmask id='b' fill='%23ffffff%0A'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cuse fill='%23ffffff%0A' fill-rule='nonzero' xlink:href='%23a'/%3E%3Cpath fill='%23ffffff%0A' fill-rule='nonzero' mask='url(%23b)' d='M0-3h24v24H0z'/%3E%3C/g%3E%3Cpath d='M0-3h24v24H0z'/%3E%3C/g%3E%3C/svg%3E");position:relative;top:3px}.tensorsite-icon--redesign-arrow span::before{background-image:url("data:image/svg+xml,%3Csvg width='12' height='24' viewBox='0 0 12 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 12L2.09852 24L-1.11005e-07 21.4605L7.83251 12L-9.38069e-07 2.53949L2.09852 -9.17293e-08L12 12Z' fill='%23FFFFFF'/%3E%3C/svg%3E%0A");position:relative}.tensorsite-icon--redesign-arrow span::after{background-image:url("data:image/svg+xml,%3Csvg width='12' height='24' viewBox='0 0 12 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 12L2.09852 24L-1.11005e-07 21.4605L7.83251 12L-9.38069e-07 2.53949L2.09852 -9.17293e-08L12 12Z' fill='%23FF6F00'/%3E%3C/svg%3E%0A");position:relative}.tensorsite-icon--redesign-arrow--small span::before{background-image:url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.5 4.5L6.4425 5.5575L9.8775 9L6.4425 12.4425L7.5 13.5L12 9L7.5 4.5Z' fill='%23FFFFFF'/%3E%3C/svg%3E%0A");position:relative;left:5px}.tensorsite-icon--redesign-arrow--small span::after{background-image:url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.5 4.5L6.4425 5.5575L9.8775 9L6.4425 12.4425L7.5 13.5L12 9L7.5 4.5Z' fill='%23FF6F00'/%3E%3C/svg%3E%0A");position:relative;left:5px}.tensorsite-icon--colab span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_1' data-name='Layer 1' viewBox='0 0 600 600'%3E%3Cpath d='M112.83,236.3,53.89,177.11a173.82,173.82,0,0,0,0,245.56l59.19-59.19A90.06,90.06,0,0,1,112.83,236.3Z' style='fill:%23e8710a'/%3E%3Cpath d='M53.89,177.11l58.94,59.19a90.05,90.05,0,0,1,127.35-.07l.08.07,42.89-73.49h0l-2.51-2h0A173.83,173.83,0,0,0,53.89,177.11Z' style='fill:%23f9ab00'/%3E%3Cpath d='M283.4,437h0l-43.14-73.24a90,90,0,0,1-127.35.07l-.08-.07L53.89,422.92a173.82,173.82,0,0,0,225.75,16.31L282.4,437' style='fill:%23f9ab00'/%3E%3Cpath d='M300,177.11a173.84,173.84,0,0,0,0,245.56l59.2-59.19A90.1,90.1,0,0,1,486.57,236.05L546,177.11a173.83,173.83,0,0,0-245.83-.24Z' style='fill:%23f9ab00'/%3E%3Cpath d='M546,177.11,487.08,236.3A90.11,90.11,0,0,1,359.65,363.73h0L300,422.92A173.91,173.91,0,1,0,546,177.11Z' style='fill:%23e8710a'/%3E%3C/svg%3E");position:relative}.tensorsite-icon--colab:hover span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' id='Layer_1' x='0px' y='0px' viewBox='0 0 600 600' style='enable-background:new 0 0 600 600;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23FFFFFF;%7D%0A%3C/style%3E%3Cg%3E%3Cpath class='st0' d='M113.1,363.5c-35.1-35.1-35.2-92-0.2-127.2c35.1-35.2,92.2-35.2,127.3-0.1l0,0l0.1,0.1l42.9-73.5l-2.5-2 c-69.2-51.6-165.7-44.7-226.8,16.3c-67.7,67.9-67.7,177.7,0,245.6L113.1,363.5z'/%3E%3Cpath class='st0' d='M240.3,363.8c-35.1,35.2-92.1,35.2-127.3,0.1c0,0,0,0-0.1-0.1l-0.1-0.1l-58.9,59.2 c60.9,60.4,156.8,67.3,225.8,16.3l2.8-2.2h1L240.3,363.8z'/%3E%3C/g%3E%3Cg%3E%3Cpath class='st0' d='M300.2,176.9l-0.2,0.2c-67.7,67.9-67.7,177.7,0,245.6l59.2-59.2c-34.6-35.8-33.5-92.8,2.3-127.4 c34.9-33.7,90.2-33.7,125.1,0l59.4-58.9C478.2,109.2,368.1,109.1,300.2,176.9z'/%3E%3Cpath class='st0' d='M550.5,181.6c-1.5-1.5-3-3-4.5-4.5l-58.9,59.2c34.9,35.5,34.4,92.5-1.1,127.4c-35.1,34.5-91.3,34.5-126.3,0 L300,422.9c66.6,69.2,176.7,71.2,245.9,4.6S617.1,250.8,550.5,181.6z'/%3E%3C/g%3E%3C/svg%3E");position:relative}.tensorsite-icon--course span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48'%3E%3Cpath d='m23.95 42-14.5-7.95v-12L2 18 23.95 6 46 18v15.85h-3v-14.1l-4.55 2.3v12Zm0-15.4L39.7 18 23.95 9.55 8.3 18Zm0 12 11.5-6.35v-8.4L23.95 30l-11.5-6.25v8.5Zm.05-12Zm-.05 3.7Zm0 0Z'/%3E%3C/svg%3E");position:relative}.tensorsite-icon--video-series span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48'%3E%3Cpath d='M5 31.5v-3h15.3v3Zm0-8.25v-3h23.65v3ZM5 15v-3h23.65v3Zm27.1 27V25.9L43 33.95Z'/%3E%3C/svg%3E");position:relative}.tensorsite-icon--codelab span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48'%3E%3Cpath d='m18.95 30.85 2.2-2.2L16.5 24l4.6-4.6-2.2-2.2-6.8 6.8Zm10.1 0L35.9 24l-6.85-6.85-2.2 2.2L31.5 24l-4.65 4.65ZM9 42q-1.2 0-2.1-.9Q6 40.2 6 39V9q0-1.2.9-2.1Q7.8 6 9 6h30q1.2 0 2.1.9.9.9.9 2.1v30q0 1.2-.9 2.1-.9.9-2.1.9Zm0-3h30V9H9v30ZM9 9v30V9Z'/%3E%3C/svg%3E");position:relative}.tensorsite-icon--codelab--white span::after{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24" style="&%2310;"><path d="m384-336 56-57-87-87 87-87-56-57-144 144 144 144Zm192 0 144-144-144-144-56 57 87 87-87 87 56 57ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Z" style="&%2310; fill: %23fff;&%2310;"/></svg>');position:relative}.tensorsite-icon--group span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48'%3E%3Cpath d='M1.9 40v-4.7q0-1.75.9-3.175Q3.7 30.7 5.3 30q3.65-1.6 6.575-2.3Q14.8 27 17.9 27q3.1 0 6 .7t6.55 2.3q1.6.7 2.525 2.125.925 1.425.925 3.175V40Zm35 0v-4.7q0-3.15-1.6-5.175t-4.2-3.275q3.45.4 6.5 1.175t4.95 1.775q1.65.95 2.6 2.35.95 1.4.95 3.15V40Zm-19-16.05q-3.3 0-5.4-2.1-2.1-2.1-2.1-5.4 0-3.3 2.1-5.4 2.1-2.1 5.4-2.1 3.3 0 5.4 2.1 2.1 2.1 2.1 5.4 0 3.3-2.1 5.4-2.1 2.1-5.4 2.1Zm18-7.5q0 3.3-2.1 5.4-2.1 2.1-5.4 2.1-.55 0-1.225-.075T25.95 23.6q1.2-1.25 1.825-3.075.625-1.825.625-4.075t-.625-3.975Q27.15 10.75 25.95 9.3q.55-.15 1.225-.25t1.225-.1q3.3 0 5.4 2.1 2.1 2.1 2.1 5.4ZM4.9 37h26v-1.7q0-.8-.475-1.55T29.25 32.7q-3.6-1.6-6.05-2.15-2.45-.55-5.3-.55-2.85 0-5.325.55T6.5 32.7q-.7.3-1.15 1.05-.45.75-.45 1.55Zm13-16.05q1.95 0 3.225-1.275Q22.4 18.4 22.4 16.45q0-1.95-1.275-3.225Q19.85 11.95 17.9 11.95q-1.95 0-3.225 1.275Q13.4 14.5 13.4 16.45q0 1.95 1.275 3.225Q15.95 20.95 17.9 20.95Zm0 16.05Zm0-20.55Z'/%3E%3C/svg%3E");position:relative}.tensorsite-icon--community span::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36' fill='none'%3E%3Cg clip-path='url(%23clip0_163_1111)'%3E%3Ccircle cx='18' cy='18' r='17.5' stroke='%23425066'/%3E%3Ccircle cx='18.0543' cy='11.0837' r='3.58371' fill='%23425066'/%3E%3Ccircle cx='25.4118' cy='12.9027' r='2.47059' fill='%23425066'/%3E%3Ccircle cx='11.2941' cy='12.9027' r='2.47059' fill='%23425066'/%3E%3Cpath d='M11.6471 18.0792C11.6471 16.9746 12.5425 16.0792 13.6471 16.0792H22.3529C23.4575 16.0792 24.3529 16.9746 24.3529 18.0792V25.4615C24.3529 25.7377 24.1291 25.9615 23.8529 25.9615H12.1471C11.8709 25.9615 11.6471 25.7377 11.6471 25.4615V18.0792Z' fill='%23425066'/%3E%3Cpath d='M6 18.0792C6 16.9746 6.89543 16.0792 8 16.0792H13.0588L12.3917 16.2698C11.5331 16.5151 10.9412 17.2998 10.9412 18.1928V18.4993V24.0498C10.9412 24.3259 10.7173 24.5498 10.4412 24.5498H6.5C6.22386 24.5498 6 24.3259 6 24.0498V18.0792Z' fill='%23425066'/%3E%3Cpath d='M30 18.0792C30 16.9746 29.1046 16.0792 28 16.0792H22.9412L23.6083 16.2698C24.4669 16.5151 25.0588 17.2998 25.0588 18.1928V18.4993V24.0498C25.0588 24.3259 25.2827 24.5498 25.5588 24.5498H29.5C29.7761 24.5498 30 24.3259 30 24.0498V18.0792Z' fill='%23425066'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_163_1111'%3E%3Crect width='36' height='36' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");position:relative}[template=page] .devsite-article-body{margin-top:0px}.wrapper{overflow:clip}body{background:transparent;font-family:"Roboto",sans-serif;font-size:16px;line-height:28px;color:#616161;-webkit-font-smoothing:antialiased;margin:0}h1{font-family:"Google Sans",sans-serif;font-size:34px;font-weight:500;line-height:44px;margin:0}h2{font-family:"Google Sans",sans-serif;font-size:36px;font-weight:700;line-height:48px;margin:0}@media only screen and (max-width: 767px){h2{font-size:28px;line-height:36px;font-weight:700;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px){h2{font-size:28px;line-height:36px;font-weight:700;letter-spacing:-0.25px}}h3{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px;margin:0}h4{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px;margin:0}h5{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:700;line-height:26px;margin:0}h6{font-family:"Google Sans",sans-serif;font-size:14px;font-weight:700;line-height:22px;margin:0}.hidden-text{height:1px;overflow:hidden;pointer-events:none;position:absolute;top:-10px;width:1px}img,video{border:0;height:auto;max-width:100%}.desktop-only{display:block}@media only screen and (max-width: 1279px){.desktop-only{display:none}}.tablet-only{display:none}@media only screen and (max-width: 1279px){.tablet-only{display:block}}.tensorsite-container{margin:80px auto;max-width:1420px;padding:0 40px;width:100%}@media only screen and (max-width: 767px){.tensorsite-container{margin:50px auto;padding:0 20px}}.tensorsite-container--no-margin-top{margin-top:0}.tensorsite-container--narrow{max-width:1160px}.tensorsite-container--narrower{max-width:860px}.tensorsite-container--half-margin{margin:40px auto}.tensorsite-container--redesign-margin{margin:120px auto}@media only screen and (max-width: 767px){.tensorsite-container--redesign-margin{margin:48px auto}}body[theme="tensorflow-theme"][layout="full"] .devsite-main-content{max-width:none;padding:0}body[theme="tensorflow-theme"][layout="full"] .devsite-banner{margin:0}body[devsite-framebox]{margin:0;overflow:hidden}body[devsite-framebox] .tensorsite-container{margin:0 auto}body[ready] .devsite-wrapper{overflow:clip !important}.tensorsite-block{display:flex;flex-basis:calc(100% / 3 - 30px);flex-direction:column;flex-grow:0;flex-shrink:1;margin:15px}.tensorsite-block:not(.tensorsite-block--code-block) .tensorsite-content{padding-bottom:0}.tensorsite-block .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px}.tensorsite-block .tensorsite-content__description{font-family:"Roboto",sans-serif;font-size:16px;line-height:28px}.tensorsite-block .tensorsite-content__description p:last-of-type{margin-bottom:0}.tensorsite-block__image-wrapper{margin:auto;position:relative;width:30%}.tensorsite-block__image{height:auto;max-width:100%;width:auto}@media only screen and (min-width: 768px){.tensorsite-block__image:focus{outline:2px solid #425066;outline-offset:2px}}.tensorsite-block--action .tensorsite-content__subtitle{padding:0}.tensorsite-block--plain,.tensorsite-block--plain-links{margin:15px;text-align:center}@media only screen and (max-width: 1000px){.tensorsite-block--plain,.tensorsite-block--plain-links{margin-bottom:20px;margin-top:20px}}@media only screen and (-ms-high-contrast: none), (-ms-high-contrast: active){.tensorsite-block--plain,.tensorsite-block--plain-links{display:block}}.tensorsite-block--plain .tensorsite-content__cta,.tensorsite-block--plain-links .tensorsite-content__cta{align-self:center}.tensorsite-block--plain .tensorsite-content__cta-wrapper a,.tensorsite-block--plain-links .tensorsite-content__cta-wrapper a{align-self:center}.tensorsite-block--plain-links .tensorsite-content{padding-top:0}.tensorsite-block--code-block{overflow:hidden}.tensorsite-block--code-block .tensorsite-content{text-align:center}.tensorsite-block--code-block .tensorsite-content__description{flex-grow:0}.tensorsite-block--code-block .devsite-landing-row-item-code{flex-grow:1}.tensorsite-block--code-block .devsite-landing-row-item-code devsite-code,.tensorsite-block--code-block .devsite-landing-row-item-code devsite-code>pre{border-radius:8px 8px 0 0;box-shadow:none}.tensorsite-block--code-block .colab-callout-footer{background:#e3e4e7;border-radius:0 0 8px 8px;color:#37474f;padding:20px}.tensorsite-block--code-block .colab-callout-row devsite-code[dark-code]+.colab-callout-footer{background:#3f4f66}.tensorsite-block--code-block .colab-callout-footer>a>span{vertical-align:middle;color:#37474f;font-size:14px}.tensorsite-block--code-block .colab-callout-row devsite-code[dark-code]+.colab-callout-footer>a>span{color:#fff}.tensorsite-block--code-block .colab-callout-footer>a:focus{box-shadow:0 0 0 2px #fff}.tensorsite-block--code-block .colab-callout-footer>a>span{font-size:12px}.tensorsite-block--code-block .colab-callout-footer .button{background:linear-gradient(to top right, #ff6f00, #FFA800);border:0;color:#fff;position:relative;z-index:1}.tensorsite-block--code-block .colab-callout-footer .button::before{background:#ff6f00;bottom:0;content:'';left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s;z-index:-1}.tensorsite-block--code-block .colab-callout-footer .button:focus{outline:1px dotted #fff;outline:5px auto #fff}.tensorsite-block--code-block .colab-callout-footer .button:hover::before{opacity:1}.tensorsite-block--code-block devsite-code,.tensorsite-block--code-block devsite-code pre{height:100%}@media only screen and (max-width: 767px){.tensorsite-block--code-block devsite-code,.tensorsite-block--code-block devsite-code pre{height:auto}}.tensorsite-breadcrumb-link{color:#616161;font-size:12px;padding:10px 6px;transition:color .2s linear}.tensorsite-breadcrumb-link:hover{color:#ff6f00}.tensorsite-breadcrumb-link:first-of-type{padding-left:0}.tensorsite-breadcrumb-arrow:last-of-type{display:none}.tensorsite-button-tab{background:#fff;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);margin:auto;overflow:hidden;z-index:1}@media only screen and (max-width: 767px){.tensorsite-button-tab{border-radius:0}}.tensorsite-button-tab ::-webkit-scrollbar{background:transparent;display:none}.tensorsite-button-tab input[name='tabs']{left:-10000px;opacity:0;position:absolute}.tensorsite-button-tab input[name='tabs']#tab-1:checked ~ .tensorsite-button-tab__image-wrapper:nth-of-type(1){display:flex}.tensorsite-button-tab input[name='tabs']#tab-1:checked ~ .tensorsite-button-tab__content--info .tensorsite-button-tab__tabs label:nth-of-type(1){color:#fff}.tensorsite-button-tab input[name='tabs']#tab-1:checked ~ .tensorsite-button-tab__content--info .tensorsite-button-tab__tabs label:nth-of-type(1)::after{background:#425066}.tensorsite-button-tab input[name='tabs']#tab-1:checked ~ .tensorsite-button-tab__content--info .tensorsite-button-tab__content__text:nth-of-type(2){display:flex}.tensorsite-button-tab input[name='tabs']#tab-2:checked ~ .tensorsite-button-tab__image-wrapper:nth-of-type(2){display:flex}.tensorsite-button-tab input[name='tabs']#tab-2:checked ~ .tensorsite-button-tab__content--info .tensorsite-button-tab__tabs label:nth-of-type(2){color:#fff}.tensorsite-button-tab input[name='tabs']#tab-2:checked ~ .tensorsite-button-tab__content--info .tensorsite-button-tab__tabs label:nth-of-type(2)::after{background:#425066}.tensorsite-button-tab input[name='tabs']#tab-2:checked ~ .tensorsite-button-tab__content--info .tensorsite-button-tab__content__text:nth-of-type(3){display:flex}.tensorsite-button-tab input[name='tabs']#tab-3:checked ~ .tensorsite-button-tab__image-wrapper:nth-of-type(3){display:flex}.tensorsite-button-tab input[name='tabs']#tab-3:checked ~ .tensorsite-button-tab__content--info .tensorsite-button-tab__tabs label:nth-of-type(3){color:#fff}.tensorsite-button-tab input[name='tabs']#tab-3:checked ~ .tensorsite-button-tab__content--info .tensorsite-button-tab__tabs label:nth-of-type(3)::after{background:#425066}.tensorsite-button-tab input[name='tabs']#tab-3:checked ~ .tensorsite-button-tab__content--info .tensorsite-button-tab__content__text:nth-of-type(4){display:flex}.tensorsite-button-tab .tensorsite-button-tab__content{display:flex;padding:40px}@media only screen and (max-width: 1279px){.tensorsite-button-tab .tensorsite-button-tab__content{flex-direction:column}}@media only screen and (max-width: 767px){.tensorsite-button-tab .tensorsite-button-tab__content{padding:20px}}.tensorsite-button-tab__image-wrapper{display:none;flex:1;justify-content:center}@media only screen and (max-width: 1279px){.tensorsite-button-tab__image-wrapper{margin-right:0}}.tensorsite-button-tab__content--info{display:flex;flex:2;flex-direction:column;margin-top:40px;padding-left:60px;position:relative}@media only screen and (max-width: 1279px){.tensorsite-button-tab__content--info{align-items:center;padding-left:0}.tensorsite-button-tab__content--info::after{z-index:-1}}.tensorsite-button-tab__content--info::after{border-left:1px solid #e3e5e8;bottom:0;content:'';height:115%;left:0;position:absolute;top:0;-webkit-transform:translateY(-12%);transform:translateY(-12%)}.tensorsite-button-tab__content__text{-webkit-animation-duration:0.5s;animation-duration:0.5s;-webkit-animation-name:tensorsite-button-tab__content-fade;animation-name:tensorsite-button-tab__content-fade;display:none}label.tensorsite-button-tab__button:focus-within::after{opacity:.3}.tensorsite-button-tab__tabs{margin-bottom:32px}@media only screen and (max-width: 767px){.tensorsite-button-tab__tabs{align-items:center;display:flex;flex-direction:column}}.tensorsite-button-tab__tabs label{margin:6px 14px 6px 0}@-webkit-keyframes tensorsite-button-tab__content-fade{from{opacity:0}to{opacity:1}}@keyframes tensorsite-button-tab__content-fade{from{opacity:0}to{opacity:1}}.tensorsite-button{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:700;line-height:20px;background:none;border:none;border-radius:8px;box-shadow:0 0 20px rgba(0,0,0,0);color:#425066;display:inline-block;height:auto;outline:none;padding:13px 18px;position:relative;text-transform:none;transition:box-shadow .2s linear,background .2s linear,color .2s linear;z-index:1}.tensorsite-button:active{box-shadow:none}.tensorsite-button:hover,.tensorsite-button:focus,.tensorsite-button.tensorsite-content__cta:hover,.tensorsite-button.tensorsite-content__cta:focus{color:#fff;outline:none}.tensorsite-button:hover::after,.tensorsite-button:focus::after,.tensorsite-button.tensorsite-content__cta:hover::after,.tensorsite-button.tensorsite-content__cta:focus::after{opacity:0}.tensorsite-button::before{background:linear-gradient(to top right, #ff6f00, #FFA800);border-radius:8px;content:'';height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.tensorsite-button::after{background:#fff;border-radius:7px;content:'';height:calc(100% - 4px);left:2px;opacity:1;position:absolute;top:2px;transition:.3s opacity linear;width:calc(100% - 4px);z-index:-1}.tensorsite-button--white-text{color:#fff}.tensorsite-button--white{color:#425066;padding:13px 22px}.tensorsite-button--white::before{background:#425066}.tensorsite-button--white::after{height:100%;left:0;top:0;width:100%}.tensorsite-button--gray::after{background:#f5f6f7}.tensorsite-button--dark-gray{color:#425066}.tensorsite-button--dark-gray:hover{color:#fff}.tensorsite-button--dark-gray::before{background:#425066}.tensorsite-button--dark-gray::after{background:#e3e5e8;height:100%;left:0;top:0;width:100%}.tensorsite-arrow-button{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:24px;color:#425066;background-color:#fff;border:1px solid #ccc;border-radius:4px;padding:8px 16px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:100%;transition:box-shadow .2s linear,background .2s linear,color .2s linear;font-weight:500 !important}.tensorsite-arrow-button:hover,.tensorsite-arrow-button:focus{color:#f5f5f5}.tensorsite-arrow-button:hover,.tensorsite-arrow-button:focus{background:linear-gradient(to top right, #ff6f00, #FFA800);border:1px solid #ff6f00;color:#fff}.tensorsite-arrow-button:hover ::before,.tensorsite-arrow-button:focus ::before{opacity:1}.tensorsite-arrow-button:hover ::after,.tensorsite-arrow-button:focus ::after{opacity:0}.tensorsite-arrow-button:hover span::after,.tensorsite-arrow-button:hover span::before,.tensorsite-arrow-button:focus span::after,.tensorsite-arrow-button:focus span::before{-webkit-transform:translateX(4px);transform:translateX(4px)}button.tensorsite-play-button,a.tensorsite-play-button{background:#fff center/contain no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96'%3E%3ClinearGradient id='a' gradientUnits='userSpaceOnUse' x1='-427.9393' y1='229.2344' x2='-428.1819' y2='228.8326' gradientTransform='matrix(20 0 0 -30 8610 6917)'%3E%3Cstop offset='0' stop-color='%23ff9100'/%3E%3Cstop offset='1' stop-color='%23ff6f00'/%3E%3C/linearGradient%3E%3Cpath d='M41 63V33l20 15-20 15z' fill='url(%23a)'/%3E%3C/svg%3E");border:0;border-radius:50%;bottom:0;box-shadow:0 0 20px rgba(0,0,0,0.08);height:96px;margin:auto;padding:0;top:0;transition:-webkit-transform .3s cubic-bezier(0.4, 0, 0.2, 1);transition:transform .3s cubic-bezier(0.4, 0, 0.2, 1);transition:transform .3s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform .3s cubic-bezier(0.4, 0, 0.2, 1);width:96px}button.tensorsite-play-button:focus,button.tensorsite-play-button:hover,a.tensorsite-play-button:focus,a.tensorsite-play-button:hover{-webkit-transform:scale(1.2);transform:scale(1.2)}.tensorsite-version-button.button-row{flex-direction:row;justify-content:start;margin:auto;position:relative;text-align:center}.tensorsite-version-button.button-row .stars-number{color:#fff;background-color:#ff6f00;padding:4px 20px 4px 15px;border-radius:5px;margin-right:10px}.tensorsite-version-button.button-row .stars-number::before{content:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTciIHZpZXdCb3g9IjAgMCAxOCAxNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEuNzAyNDEgNi4zNTcxNEg2Ljg5NTMzQzcuMTI0NzYgNi4zNTcxNCA3LjMyNDc1IDYuMjAwOTkgNy4zODA0IDUuOTc4NDFMOC41MTQ5MyAxLjQ0MDI5QzguNjQxMTcgMC45MzUzMDkgOS4zNTg4MyAwLjkzNTMxIDkuNDg1MDcgMS40NDAyOUwxMC42MTk2IDUuOTc4NDFDMTAuNjc1MiA2LjIwMDk5IDEwLjg3NTIgNi4zNTcxNCAxMS4xMDQ3IDYuMzU3MTRIMTYuMjk3NkMxNi43OTY2IDYuMzU3MTQgMTYuOTg3NyA3LjAwNzg4IDE2LjU2OCA3LjI3NzczTDEyLjM1MDcgOS45ODg4NEMxMi4xNDc2IDEwLjExOTQgMTIuMDY2OCAxMC4zNzY1IDEyLjE1ODcgMTAuNTk5OEwxNC4yMDc2IDE1LjU3NTZDMTQuNDA3NyAxNi4wNjE1IDEzLjgxODggMTYuNDg3NiAxMy40MTk5IDE2LjE0NTZMOS4zMjU0IDEyLjYzNjFDOS4xMzgxNSAxMi40NzU2IDguODYxODUgMTIuNDc1NiA4LjY3NDYgMTIuNjM2MUw0LjU4MDE0IDE2LjE0NTZDNC4xODExNyAxNi40ODc2IDMuNTkyMzMgMTYuMDYxNSAzLjc5MjQgMTUuNTc1Nkw1Ljg0MTI2IDEwLjU5OThDNS45MzMyIDEwLjM3NjUgNS44NTI0MiAxMC4xMTk0IDUuNjQ5MyA5Ljk4ODg0TDEuNDMyMDMgNy4yNzc3M0MxLjAxMjI2IDcuMDA3ODggMS4yMDMzOCA2LjM1NzE0IDEuNzAyNDEgNi4zNTcxNFoiIGZpbGw9IndoaXRlIiBzdHJva2U9IndoaXRlIi8+Cjwvc3ZnPg==");position:relative;top:2px;margin-right:5px}.tensorsite-version-button.button-row .tensorsite-content{padding:0}.tensorsite-version-button.button-row .tensorsite-content__cta-wrapper{flex-direction:row;align-self:center;align-self:flex-start}@media only screen and (max-width: 385px){.tensorsite-version-button.button-row .tensorsite-content__cta-wrapper{justify-content:center}}.tensorsite-version-button.button-row .tensorsite-content__cta{align-self:center;border:none;outline:none;width:unset}.tensorsite-version-button.button-row .tensorsite-content__cta:hover,.tensorsite-version-button.button-row .tensorsite-content__cta:focus{color:#ff6f00}.tensorsite-card{-webkit-backface-visibility:hidden;backface-visibility:hidden;background:linear-gradient(to top right, #ff6f00, #FFA800);border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);display:flex;flex-basis:calc(100% / 3 - 30px);flex-direction:column;flex-grow:0;flex-shrink:1;margin:15px;position:relative;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);transition:box-shadow .2s linear,opacity .2s linear}.tensorsite-card::before{background:#fff;border-radius:10px;content:'';height:100%;left:0;pointer-events:none;position:absolute;top:0;transition:opacity .2s linear;width:100%}.tensorsite-card .tensorsite-content{border-radius:0 0 10px 10px;position:static}@media only screen and (max-width: 767px){.tensorsite-card .tensorsite-content{padding-left:30px;padding-right:30px}}.tensorsite-card .tensorsite-content--under-image::before{top:-1px}.tensorsite-card .tensorsite-content .tensorsite-content__subtitle,.tensorsite-card .tensorsite-content .tensorsite-content__description,.tensorsite-card .tensorsite-content .tensorsite-content__cta-wrapper,.tensorsite-card .tensorsite-content ul{position:relative}.tensorsite-card .tensorsite-content .tensorsite-content__cta-wrapper--shorter{padding-right:70px}.tensorsite-card .tensorsite-content__image-wrapper{border-bottom:solid 1px #dadada;border-radius:10px 10px 0 0;overflow:hidden;position:relative;transition:border-color .2s linear;z-index:1}.tensorsite-card .tensorsite-content__image-wrapper img{background-color:#fbfcfc;-webkit-transform:scale(1.01);transform:scale(1.01);transition:-webkit-transform .5s cubic-bezier(0.25, 0.1, 0.25, 1);transition:transform .5s cubic-bezier(0.25, 0.1, 0.25, 1);transition:transform .5s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform .5s cubic-bezier(0.25, 0.1, 0.25, 1);will-change:transform}.tensorsite-card .tensorsite-content__image-wrapper .tensorsite-content__image__play-button{bottom:0;left:0;margin:auto;overflow:visible;position:absolute;right:0;top:0}.tensorsite-card .tensorsite-price-tag__inner{transition:background-color .2s linear,color .2s linear}.tensorsite-card .tensorsite-content__categories{display:flex;flex-wrap:wrap;margin-bottom:-8px;margin-top:30px;padding-top:18px;position:relative;z-index:1}.tensorsite-card .tensorsite-content__categories::before{border-top:1px solid #dadada;content:'';left:-30px;position:absolute;top:0;width:calc(100% + 60px)}.tensorsite-card .tensorsite-content__categories .tensorsite-content__category{padding-right:18px}.tensorsite-card .tensorsite-content__categories .tensorsite-content__category:last-child{padding-right:0}.tensorsite-card .tensorsite-content__categories .tensorsite-content__category-text{font-size:12px;line-height:18px;color:#425066;padding-left:16px;position:relative;text-transform:capitalize;transition:color .2s linear}.tensorsite-card .tensorsite-content__categories .tensorsite-content__category-text::before,.tensorsite-card .tensorsite-content__categories .tensorsite-content__category-text::after{background-position:center center;background-repeat:no-repeat;bottom:0;content:'';height:12px;left:0;margin:auto;position:absolute;top:0;width:12px}.tensorsite-card .tensorsite-content__categories .tensorsite-content__category-text::before{transition:opacity .2s linear;z-index:1}.tensorsite-card .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px;align-items:center;display:flex;justify-content:space-between;z-index:1}.tensorsite-card .tensorsite-content__title:before{bottom:0;content:'';left:0;position:absolute;right:0;top:0}.tensorsite-card .tensorsite-content__subtitle{font-family:"Google Sans",sans-serif;font-size:14px;font-weight:700;line-height:18px}.tensorsite-card .tensorsite-content__subtitle--thin{font-family:"Roboto",sans-serif;font-weight:400}.tensorsite-card .tensorsite-content__subtitle--thin.tensorsite-content__subtitle--under-title{margin-bottom:18px;margin-top:0px}.tensorsite-card .tensorsite-content__description{font-size:14px;line-height:22px}.tensorsite-card .tensorsite-content__description strong:first-child:last-child{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:700;line-height:26px;color:#425066;display:inline-block;margin-top:8px;transition:color .2s linear}.tensorsite-card .tensorsite-content__cta{color:#425066;z-index:3}.tensorsite-card:hover:not(.no-link){box-shadow:0 0 64px rgba(0,0,0,0.22);cursor:pointer}.tensorsite-card.no-link .tensorsite-content__title::before{content:none}.tensorsite-card.font-size-body .tensorsite-content__description{font-family:"Roboto",sans-serif;font-size:16px;line-height:28px}.tensorsite-card--double{flex-grow:0;flex-shrink:1}.tensorsite-card__href{height:100%;left:0;opacity:0;position:absolute;top:0;width:100%;z-index:2}.tensorsite-card--hero .tensorsite-content__cta:hover{color:#425066}.tensorsite-card--hero-whitecta .tensorsite-content__cta{color:#fff}.tensorsite-card--hero-whitecta a span::after{-webkit-filter:grayscale(100%) invert(1) brightness(2);filter:grayscale(100%) invert(1) brightness(2)}.tensorsite-card--hero-whitecta .tensorsite-content__cta:hover{color:#fff}.tensorsite-card--hero-whitetext .tensorsite-content__title{color:#fff}.tensorsite-card--hero-bluegradient .tensorsite-content--under-image{background-image:linear-gradient(0deg, rgba(32,18,20,0) 0%, rgba(32,18,20,0) 45%, #5464b5 100%)}.tensorsite-card--hero-h3title .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px}.tensorsite-card--hero .tensorsite-content__title{flex-grow:1}.tensorsite-card--hero .tensorsite-content__title::after{-webkit-filter:grayscale(100%) invert(1) brightness(2);filter:grayscale(100%) invert(1) brightness(2)}.tensorsite-card--hero .tensorsite-content__image-wrapper{border-bottom:none;border-radius:10px;height:100%;position:absolute;width:100%}.tensorsite-card--hero .tensorsite-content__image{height:100%;-o-object-fit:cover;object-fit:cover}.tensorsite-card--hero .tensorsite-content__image,.tensorsite-card--hero .tensorsite-content--under-image{border-radius:10px}.tensorsite-card--clip .tensorsite-content{background:transparent;margin-top:40%;padding-top:17%;position:static;z-index:1}@media only screen and (-ms-high-contrast: none), (-ms-high-contrast: active){.tensorsite-card--clip .tensorsite-content{background-color:#fff;padding-top:20px}}.tensorsite-card--clip .tensorsite-content__clip-bg{padding-top:40%}.tensorsite-card--clip .tensorsite-content__clip-bg+.tensorsite-content__title{padding-top:7%}.tensorsite-card--clip .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px;max-width:81%}@media only screen and (max-width: 1000px){.tensorsite-card--clip .tensorsite-content__title{max-width:none}}@media only screen and (max-width: 850px){.tensorsite-card--clip .tensorsite-content__title{max-width:80%}}@media only screen and (max-width: 767px){.tensorsite-card--clip .tensorsite-content__title{max-width:60%}}@media only screen and (max-width: 480px){.tensorsite-card--clip .tensorsite-content__title{max-width:80%}}.tensorsite-card--clip .tensorsite-content__subtitle{color:#425066;font-weight:700;max-width:42%}.tensorsite-card--clip .tensorsite-content__image-wrapper{border-bottom:0;border-radius:10px;height:100%;position:absolute;width:100%}.tensorsite-card--horizontal{flex-basis:calc(100% - 30px);max-width:calc(100% - 30px)}.tensorsite-card--horizontal .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px}@media only screen and (min-width: 851px){.tensorsite-card--horizontal{flex-direction:row}.tensorsite-card--horizontal .tensorsite-content__image-wrapper,.tensorsite-card--horizontal .tensorsite-content--under-image{flex:1 0 50%;max-width:50%}.tensorsite-card--horizontal .tensorsite-content__image-wrapper{border-bottom:0;border-radius:10px 0 0 10px;border-right:1px solid #dadada}.tensorsite-card--horizontal .tensorsite-content__image{border-radius:10px 0 0 10px;height:100%;-o-object-fit:cover;object-fit:cover}}@media only screen and (min-width: 851px) and (-ms-high-contrast: none), only screen and (min-width: 851px) and (-ms-high-contrast: active){.tensorsite-card--horizontal .tensorsite-content__image-wrapper{display:flex;flex-direction:column;justify-content:center}.tensorsite-card--horizontal .tensorsite-content__image{height:auto;-o-object-fit:unset;object-fit:unset}}.tensorsite-card .tensorsite-content__cta-wrapper .tensorsite-content__cta-icon:hover span::before{opacity:0}.tensorsite-card .tensorsite-content__cta-wrapper .tensorsite-content__cta-icon:hover span::after{opacity:1}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover::before{opacity:0}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content a,.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content div,.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content strong{color:#fff}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content::before{opacity:1;transition:opacity .2s linear}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content ul a span::after,.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__cta-wrapper .tensorsite-content__cta-icon span::after{-webkit-filter:grayscale(100%) invert(1) brightness(2);filter:grayscale(100%) invert(1) brightness(2)}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__title span::after,.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__subtitle span::after{-webkit-filter:grayscale(100%) invert(1) brightness(2);filter:grayscale(100%) invert(1) brightness(2)}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__tag{color:#fff}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__cta-wrapper .tensorsite-price-tag__inner{background-color:#fff;color:#ff6f00}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__cta-wrapper .tensorsite-price-tag__inner::before{background-image:url("data:image/svg+xml,%3Csvg width='12' height='24' viewBox='0 0 12 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M9.474 0H56a2 2 0 0 1 2 2v20a2 2 0 0 1-2 2H9.474a2 2 0 0 1-1.636-.85l-7.03-10a2 2 0 0 1 0-2.3l7.03-10A2 2 0 0 1 9.474 0z' fill='%23FFF'/%3E%3Ccircle fill='%23FF6F00' cx='10' cy='12' r='2'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__categories .tensorsite-content__category-text{color:#fff}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__clip-bg::before{background:#ff6f00}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__clip-shape path{fill:#ff6f00}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__category-text::before{opacity:0}html[dir='rtl'] .tensorsite-content__clip-shape{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.tensorsite-card:hover .tensorsite-content__image-wrapper{border-color:transparent}.tensorsite-card:hover .tensorsite-content__image-wrapper img{-webkit-transform:scale(1.03);transform:scale(1.03);transition:-webkit-transform 1s cubic-bezier(0.25, 0.1, 0.25, 1);transition:transform 1s cubic-bezier(0.25, 0.1, 0.25, 1);transition:transform 1s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 1s cubic-bezier(0.25, 0.1, 0.25, 1)}.tensorsite-card--bnw img{-webkit-filter:grayscale(100%);filter:grayscale(100%)}.tensorsite-card--bnw:hover img{-webkit-filter:grayscale(0%);filter:grayscale(0%)}.tensorsite-card .tensorsite-content__title:hover ~ div.tensorsite-content__cta-wrapper .tensorsite-content__cta:first-child span::after,.tensorsite-card .tensorsite-card__href:hover ~ .tensorsite-content div.tensorsite-content__cta-wrapper .tensorsite-content__cta:first-child span::after{-webkit-transform:translateX(4px);transform:translateX(4px)}.tensorsite-card .tensorsite-content__title:hover ~ ul.tensorsite-content__cta-wrapper li:first-child .tensorsite-content__cta span::after{-webkit-transform:translateX(4px);transform:translateX(4px)}.tensorsite-card .tensorsite-content__title:focus::before{border-radius:10px;box-shadow:0 0 0 2px #425066}.tensorsite-card .tensorsite-card__href:focus ~ .tensorsite-content .tensorsite-content__title::before{border-radius:10px;box-shadow:0 0 0 2px #425066}.tensorsite-content{border-radius:10px;display:flex;flex-basis:auto;flex-direction:column;flex-grow:1;flex-shrink:1;overflow-wrap:break-word;padding:26px 30px;position:relative;word-wrap:break-word}@media only screen and (max-width: 767px){.tensorsite-content{padding-left:15px;padding-right:15px}}.tensorsite-content a:not(.tensorsite-content__button),.tensorsite-content div{transition:color .2s linear}.tensorsite-content ol,.tensorsite-content ul{padding-left:18px}.tensorsite-content ol li,.tensorsite-content ul li{margin:8px 0}.tensorsite-content ol li:last-of-type,.tensorsite-content ul li:last-of-type{margin-bottom:0}.tensorsite-content p a,.tensorsite-content-underline{line-height:normal;display:inline-block;border-bottom:1px solid #ff6f00;color:#616161;transition:color .2s linear}.tensorsite-content p a:focus,.tensorsite-content-underline:focus{outline:2px solid #425066;outline-offset:2px}.tensorsite-content p a:hover,.tensorsite-content-underline:hover{color:#ff6f00}.tensorsite-content p{margin:10px 0}.tensorsite-content p:first-child{margin-top:0}.tensorsite-content p:last-child{margin-bottom:0}.tensorsite-content ol+p,.tensorsite-content ul+p{margin-top:calc(1em + 10px)}.tensorsite-content__clip-bg{display:flex;flex-direction:column;height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:-1}@media only screen and (-ms-high-contrast: none), (-ms-high-contrast: active){.tensorsite-content__clip-bg{display:none}}.tensorsite-content__clip-bg::after{background:#fff;border-radius:0 0 10px 10px;content:'';display:block;flex:1 0 auto;margin-top:-2px;transition:background .2s linear;width:100%}.tensorsite-content__clip-shape{margin-left:-1px;width:102%}.tensorsite-content__clip-shape path{transition:fill .2s linear}.tensorsite-content__cta-wrapper{display:flex;flex-direction:column;line-height:1;margin-top:-4px}@media only screen and (max-width: 767px){.tensorsite-content__cta-wrapper{width:100%}}.tensorsite-content__cta-wrapper--abreast{display:block}.tensorsite-content__cta-wrapper--abreast .tensorsite-content__cta{margin-right:21px}@media only screen and (min-width: 768px){.tensorsite-content__cta-wrapper--row{flex-direction:row;justify-content:center;width:100%}.tensorsite-content__cta-wrapper--row a:not(:last-child){margin-right:20px}}.tensorsite-content__cta-wrapper--row .tensorsite-content__button{text-align:center;width:100%}.tensorsite-content__cta-wrapper .tensorsite-content__button{margin-top:8px}.tensorsite-content__cta{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:700;line-height:20px;align-self:flex-start;color:#425066;display:inline-block;margin-top:8px;position:relative}.tensorsite-content__cta:focus{outline:2px solid #425066;outline-offset:2px}.tensorsite-content__cta:last-child{margin-right:0}.tensorsite-content__cta--disabled,.tensorsite-content__cta--disabled:hover{color:#818181}.tensorsite-content__cta-image:focus,.tensorsite-content__cta-image:hover{outline:none;color:#ff6f00}.tensorsite-content__cta-image:focus span::after,.tensorsite-content__cta-image:focus span::before,.tensorsite-content__cta-image:hover span::after,.tensorsite-content__cta-image:hover span::before{-webkit-transform:translateX(4px);transform:translateX(4px)}.tensorsite-content__cta-image:focus span::after,.tensorsite-content__cta-image:hover span::after{opacity:0}.tensorsite-content__cta-image:focus span::before,.tensorsite-content__cta-image:hover span::before{opacity:1}.tensorsite-content__cta-image:focus:focus .cta-image,.tensorsite-content__cta-image:hover:focus .cta-image{box-shadow:0px 2px 12px rgba(66,80,102,0.24)}.tensorsite-content__cta-image:focus img,.tensorsite-content__cta-image:hover img{-webkit-filter:none;filter:none}.tensorsite-content__cta-icon span{margin-left:-3px;position:relative;white-space:nowrap}.tensorsite-content__cta-icon span::after,.tensorsite-content__cta-icon span::before{background-repeat:no-repeat;background-size:contain;content:'\00a0';display:inline-block;height:20px;margin-left:4px;transition:opacity .2s linear,-webkit-filter .2s linear,-webkit-transform .5s;transition:filter .2s linear,transform .5s,opacity .2s linear;transition:filter .2s linear,transform .5s,opacity .2s linear,-webkit-filter .2s linear,-webkit-transform .5s;vertical-align:text-bottom;width:20px}.tensorsite-content__cta-icon span::before{bottom:0;margin-left:7px;opacity:0;position:absolute;right:0}.tensorsite-content__cta-icon.tensorsite-icon--internal span::after,.tensorsite-content__cta-icon.tensorsite-icon--internal span::before,.tensorsite-content__cta-icon.tensorsite-icon--external span::after,.tensorsite-content__cta-icon.tensorsite-icon--external span::before,.tensorsite-content__cta-icon.tensorsite-icon--newsletter span::after,.tensorsite-content__cta-icon.tensorsite-icon--newsletter span::before,.tensorsite-content__cta-icon.tensorsite-icon--video span::after,.tensorsite-content__cta-icon.tensorsite-icon--video span::before{background-position:center;background-size:80%;margin-left:0}.tensorsite-content__cta.devsite-dialog-button:hover{cursor:pointer}.tensorsite-content__cta.tensorsite-content__button ~ *:not(.tensorsite-content__button){line-height:46px}.tensorsite-content__image-wrapper{position:relative}.tensorsite-content__image-wrapper .tensorsite-content__image__play-button{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;-webkit-transform:scale(0.8);transform:scale(0.8);transition:-webkit-transform .3s cubic-bezier(0.4, 0, 0.2, 1);transition:transform .3s cubic-bezier(0.4, 0, 0.2, 1);transition:transform .3s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform .3s cubic-bezier(0.4, 0, 0.2, 1)}.tensorsite-content__description{font-family:"Roboto",sans-serif;font-size:16px;line-height:28px;flex-basis:auto;flex-grow:1;flex-shrink:1;margin-bottom:48px}@media only screen and (min-width: 1280px){.tensorsite-content__description{font-size:18px}}.tensorsite-content__description p a{font-weight:500}.tensorsite-content__description:last-child{margin-bottom:0}.tensorsite-content__image{border-radius:10px 10px 0 0;display:block;height:auto;width:100%}.tensorsite-content__subtitle{font-size:14px;line-height:22px;align-items:center;color:#425066;display:flex;margin-bottom:8px;position:relative}.tensorsite-content__subtitle-icon{margin-left:40px}.tensorsite-content__subtitle-icon span::after{background-repeat:no-repeat;background-size:contain;content:'';height:20px;left:-40px;position:absolute;top:0;transition:-webkit-filter .2s linear;transition:filter .2s linear;transition:filter .2s linear, -webkit-filter .2s linear;width:24px}.tensorsite-content__subtitle--under-title{margin-top:10px}.tensorsite-content__subtitle--bold{font-weight:700}.tensorsite-content__subtitle--gray{color:#818181;font-family:"Google Sans",sans-serif}.tensorsite-content__small-title{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px;margin-bottom:12px}.tensorsite-content__small-title a:focus{outline:2px solid #425066;outline-offset:2px}.tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:36px;font-weight:700;line-height:48px;color:#425066;margin-bottom:12px;width:100%;position:relative}@media only screen and (max-width: 767px){.tensorsite-content__title{font-size:28px;line-height:36px;font-weight:700;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px){.tensorsite-content__title{font-size:28px;line-height:36px;font-weight:700;letter-spacing:-0.25px}}.tensorsite-content__title span::after{background-repeat:no-repeat;background-size:contain;content:'';height:24px;position:absolute;right:0;top:0;transition:-webkit-filter .2s linear;transition:filter .2s linear;transition:filter .2s linear, -webkit-filter .2s linear;width:24px}.tensorsite-content>.tensorsite-content__title:last-child{margin-bottom:0}.tensorsite-content__title.tensorsite-icon{padding-right:26px}.tensorsite-content__title--clip{-webkit-transform:translateY(-35px);transform:translateY(-35px)}.tensorsite-content__title--grow{flex-grow:1}.tensorsite-content__title--grow span{top:auto}.tensorsite-content__title--orange{color:#ff6f00}.tensorsite-content__title--sideheading{font-family:"Google Sans",sans-serif;font-size:28px;font-weight:700;line-height:32px}.tensorsite-content__title--sidesubheading{font-family:"Google Sans",sans-serif;font-size:22px;font-weight:700;line-height:32px}.tensorsite-content__title i{font-size:32px;margin-right:-6px}.tensorsite-content--under-image{border-radius:0 0 10px 10px}.tensorsite-content__title+.tensorsite-content__cta{margin-top:16px}.tensorsite-content__description--align-left{text-align:left}.tensorsite-content__tag{color:#818181}.tensorsite-content__toc{margin-top:20px}.tensorsite-content__toc a:hover{color:#ff6f00}.tensorsite-content__toc a:hover span::after,.tensorsite-content__toc a:hover span::before{-webkit-transform:translateX(4px);transform:translateX(4px)}.tensorsite-content__toc a:hover span::after{opacity:0}.tensorsite-content__toc a:hover span::before{opacity:1}.tensorsite-content__toc a:hover span::after,.tensorsite-content__toc a:hover span::before{-webkit-transform:translateX(0px) translateY(-4px);transform:translateX(0px) translateY(-4px)}.tensorsite-content__toc .tensorsite-content__cta-image:focus .cta-image{box-shadow:none}.tensorsite-content__toc--main{display:flex;flex-direction:row;align-items:center;justify-content:space-evenly;width:100%;max-width:1000px;margin:10px auto}.tensorsite-content__toc--main a{display:flex;flex-direction:column;align-items:center}@media only screen and (max-width: 850px){.tensorsite-content__toc{display:flex;flex-direction:column;align-items:center}}.tensorsite-content__toc img{max-width:100px}@media only screen and (max-width: 767px){.tensorsite-content--center-on-mobile{text-align:center;align-items:center;padding:26px 0}.tensorsite-content--center-on-mobile a{align-self:center}}.tensorsite-content--align-center{text-align:center;align-items:center}.tensorsite-content--align-center a{align-self:center}.tensorsite-expandable__section{margin-bottom:16px}.tensorsite-expandable__section:last-child{margin-bottom:0}.tensorsite-expandable__section input{display:none}.tensorsite-expandable__section input:checked ~ .tensorsite-expandable__content{max-height:1000px}.tensorsite-expandable__section input:checked ~ label::after{-webkit-transform:rotate(0deg);transform:rotate(0deg)}.tensorsite-expandable__section label{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px;background:#fff;border:1px #ccc solid;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);color:#425066;display:block;padding:20px 40px 18px 25px;position:relative}.tensorsite-expandable__section label::before,.tensorsite-expandable__section label::after{background:#425066;content:'';height:2px;position:absolute;right:25px;top:50%;transition:-webkit-transform .2s cubic-bezier(0.4, 0, 0.2, 1);transition:transform .2s cubic-bezier(0.4, 0, 0.2, 1);transition:transform .2s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform .2s cubic-bezier(0.4, 0, 0.2, 1);width:11px}.tensorsite-expandable__section label::after{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.tensorsite-expandable__section .tensorsite-expandable__content{max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(0.4, 0, 0.2, 1)}.tensorsite-expandable__section .tensorsite-expandable__content .tensorsite-content{padding:16px 25px}.tensorsite-expandable__section .tensorsite-expandable__content .tensorsite-content__description{font-size:14px;line-height:22px}a{color:#ff6f00;text-decoration:none}a:active,a:focus{text-decoration:none}.firesite-cta{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:700;line-height:20px}.tensorsite-video-modal{width:720px}@media only screen and (min-width: 1280px){.tensorsite-video-modal{width:1124px}}.tensorsite-video-modal .devsite-dialog-buttons{display:none}.tensorsite-video-modal__buttons{padding:8px 16px 0;text-align:right}.tensorsite-video-modal__buttons .material-icons{cursor:pointer;font-size:20px;pointer-events:none}.tensorsite-video-modal__buttons .devsite-dialog-buttons{padding:8px 16px 0}.tensorsite-video-modal__buttons .video-wrapper-full-width{float:none;margin:0;width:100%}.tensorsite-video-modal__buttons .devsite-dialog-close{color:#425066;border:none;box-shadow:none;justify-content:center;margin:0;padding:0}.tensorsite-price-tag{position:absolute;right:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.tensorsite-price-tag__inner{background-color:#425066;border-radius:0 4px 4px 0;color:#fff;font-weight:bold;margin-left:12px;padding:4px 10px;position:relative;transition:background-color .2s linear,color .2s linear}.tensorsite-price-tag__inner::before{background-image:url("data:image/svg+xml,%3Csvg width='12' height='24' viewBox='0 0 12 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M9.474 0H56a2 2 0 0 1 2 2v20a2 2 0 0 1-2 2H9.474a2 2 0 0 1-1.636-.85l-7.03-10a2 2 0 0 1 0-2.3l7.03-10A2 2 0 0 1 9.474 0z' fill='%23425066'/%3E%3Ccircle fill='%23FFF' cx='10' cy='12' r='2'/%3E%3C/g%3E%3C/svg%3E");content:"";height:100%;position:absolute;right:100%;top:0;transition:background-image .2s linear;width:12px}.tensorsite-profile-wrapper:not(:first-of-type){margin-top:30px}@media only screen and (min-width: 768px){.tensorsite-profile__info{align-items:center;display:flex}}.tensorsite-profile__image{border-radius:50%;max-width:110px;min-width:55px;width:20%}@media only screen and (min-width: 768px){.tensorsite-profile__image{padding-right:20px}}.tensorsite-profile__name{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:700;line-height:26px;color:#425066}.tensorsite-profile__name p{margin:0}.tensorsite-sidenote{background-color:#fff;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);padding:26px 35px}@media only screen and (max-width: 767px){.tensorsite-sidenote{padding:30px 30px}}.tensorsite-sidenote__header-content .tensorsite-content{padding:26px 15px}.tensorsite-sidenote__header-content .tensorsite-content .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px}.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:first-child .tensorsite-list,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:first-child .tensorsite-profile,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:first-child .tensorsite-content{padding-top:26px}@media only screen and (max-width: 767px){.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:first-child .tensorsite-list,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:first-child .tensorsite-profile,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:first-child .tensorsite-content{padding-top:0}}.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:last-child .tensorsite-list,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:last-child .tensorsite-profile,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:last-child .tensorsite-content{border-bottom:none;padding-bottom:26px}@media only screen and (max-width: 767px){.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:last-child .tensorsite-list,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:last-child .tensorsite-profile,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child:last-child .tensorsite-content{padding-bottom:0}}.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child.tensorsite-sidenote__large-title .tensorsite-content__title,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child.tensorsite-sidenote__large-title .tensorsite-list__title{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px}.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child.tensorsite-sidenote__large-title .tensorsite-list__title{margin-bottom:16px}.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child.tensorsite-sidenote__no-border .tensorsite-list,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child.tensorsite-sidenote__no-border .tensorsite-profile,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child.tensorsite-sidenote__no-border .tensorsite-content{border-bottom:none}.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-list,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-profile,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-content{border-bottom:1px solid #dadada;padding:39px 15px}@media only screen and (max-width: 767px){.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-list,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-profile,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-content{padding:26px 0}}.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:700;line-height:26px}@media only screen and (max-width: 767px){.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-content__cta-wrapper li,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-content__cta-wrapper.tensorsite-content__cta-wrapper--abreast li{text-align:center}}@media only screen and (max-width: 767px){.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-content__cta-wrapper li:last-child,.tensorsite-sidenote__sub-wrapper .tensorsite-sidenote__child .tensorsite-content__cta-wrapper.tensorsite-content__cta-wrapper--abreast li:last-child{margin-bottom:0}}.tensorsite-top-tab{background:#fff;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);margin:auto;overflow:hidden;z-index:1}@media only screen and (max-width: 767px){.tensorsite-top-tab{border-radius:0}}.tensorsite-top-tab ::-webkit-scrollbar{background:transparent;display:none}.tensorsite-top-tab input[name='tabs']{left:-10000px;opacity:0;position:absolute}.tensorsite-top-tab input[name='tabs']#tab-1:checked ~ .tensorsite-top-tab__contents .tensorsite-top-tab__content:nth-of-type(1){display:block}.tensorsite-top-tab input[name='tabs']#tab-1:checked ~ .tensorsite-top-tab__tabs label:nth-child(1){color:#293241}.tensorsite-top-tab input[name='tabs']#tab-1:checked ~ .tensorsite-top-tab__tabs label:nth-child(1)::after{width:calc(100% - 30px)}.tensorsite-top-tab input[name='tabs'].key-down-focus#tab-1:checked ~ .tensorsite-top-tab__tabs label:nth-child(1){outline:2px solid #425066;outline-offset:2px;outline-offset:-5px}.tensorsite-top-tab input[name='tabs']#tab-2:checked ~ .tensorsite-top-tab__contents .tensorsite-top-tab__content:nth-of-type(2){display:block}.tensorsite-top-tab input[name='tabs']#tab-2:checked ~ .tensorsite-top-tab__tabs label:nth-child(2){color:#293241}.tensorsite-top-tab input[name='tabs']#tab-2:checked ~ .tensorsite-top-tab__tabs label:nth-child(2)::after{width:calc(100% - 30px)}.tensorsite-top-tab input[name='tabs'].key-down-focus#tab-2:checked ~ .tensorsite-top-tab__tabs label:nth-child(2){outline:2px solid #425066;outline-offset:2px;outline-offset:-5px}.tensorsite-top-tab input[name='tabs']#tab-3:checked ~ .tensorsite-top-tab__contents .tensorsite-top-tab__content:nth-of-type(3){display:block}.tensorsite-top-tab input[name='tabs']#tab-3:checked ~ .tensorsite-top-tab__tabs label:nth-child(3){color:#293241}.tensorsite-top-tab input[name='tabs']#tab-3:checked ~ .tensorsite-top-tab__tabs label:nth-child(3)::after{width:calc(100% - 30px)}.tensorsite-top-tab input[name='tabs'].key-down-focus#tab-3:checked ~ .tensorsite-top-tab__tabs label:nth-child(3){outline:2px solid #425066;outline-offset:2px;outline-offset:-5px}.tensorsite-top-tab input[name='tabs']#tab-4:checked ~ .tensorsite-top-tab__contents .tensorsite-top-tab__content:nth-of-type(4){display:block}.tensorsite-top-tab input[name='tabs']#tab-4:checked ~ .tensorsite-top-tab__tabs label:nth-child(4){color:#293241}.tensorsite-top-tab input[name='tabs']#tab-4:checked ~ .tensorsite-top-tab__tabs label:nth-child(4)::after{width:calc(100% - 30px)}.tensorsite-top-tab input[name='tabs'].key-down-focus#tab-4:checked ~ .tensorsite-top-tab__tabs label:nth-child(4){outline:2px solid #425066;outline-offset:2px;outline-offset:-5px}.tensorsite-top-tab input[name='tabs']#tab-5:checked ~ .tensorsite-top-tab__contents .tensorsite-top-tab__content:nth-of-type(5){display:block}.tensorsite-top-tab input[name='tabs']#tab-5:checked ~ .tensorsite-top-tab__tabs label:nth-child(5){color:#293241}.tensorsite-top-tab input[name='tabs']#tab-5:checked ~ .tensorsite-top-tab__tabs label:nth-child(5)::after{width:calc(100% - 30px)}.tensorsite-top-tab input[name='tabs'].key-down-focus#tab-5:checked ~ .tensorsite-top-tab__tabs label:nth-child(5){outline:2px solid #425066;outline-offset:2px;outline-offset:-5px}.tensorsite-top-tab input[name='tabs']#tab-6:checked ~ .tensorsite-top-tab__contents .tensorsite-top-tab__content:nth-of-type(6){display:block}.tensorsite-top-tab input[name='tabs']#tab-6:checked ~ .tensorsite-top-tab__tabs label:nth-child(6){color:#293241}.tensorsite-top-tab input[name='tabs']#tab-6:checked ~ .tensorsite-top-tab__tabs label:nth-child(6)::after{width:calc(100% - 30px)}.tensorsite-top-tab input[name='tabs'].key-down-focus#tab-6:checked ~ .tensorsite-top-tab__tabs label:nth-child(6){outline:2px solid #425066;outline-offset:2px;outline-offset:-5px}.tensorsite-top-tab .tensorsite-top-tab__tabs label::after{transition:width .3s ease}.tensorsite-top-tab .tensorsite-top-tab__content{-webkit-animation-duration:0.5s;animation-duration:0.5s;-webkit-animation-name:tensorsite-top-tab__content-fade;animation-name:tensorsite-top-tab__content-fade;display:none;padding:0 40px 40px 40px}.tensorsite-top-tab .tensorsite-top-tab__content a{display:inline-block;line-height:normal;border-bottom:1px solid #ff6f00;color:#616161;font-weight:500;transition:color .2s linear}.tensorsite-top-tab .tensorsite-top-tab__content a:hover{color:#ff6f00}@media only screen and (max-width: 767px){.tensorsite-top-tab .tensorsite-top-tab__content{padding:20px 0}}.tensorsite-top-tab__content--inner{align-items:center;display:flex;flex-wrap:wrap}.tensorsite-top-tab__content--inner .tensorsite-top-tab__content__text{flex-basis:calc(40% - 30px)}.tensorsite-top-tab__content--inner .tensorsite-top-tab__image{background-position:center;background-repeat:no-repeat;background-size:contain;flex-basis:calc(60% - 30px);height:100%;margin-top:39px;min-height:400px}.tensorsite-top-tab__content--inner .tensorsite-top-tab__content__text,.tensorsite-top-tab__content--inner .tensorsite-top-tab__image{margin:15px}@media only screen and (max-width: 1000px){.tensorsite-top-tab__content--inner .tensorsite-top-tab__content__text,.tensorsite-top-tab__content--inner .tensorsite-top-tab__image{flex-basis:calc(100% - 30px);margin:0 auto}}.tensorsite-top-tab__tabs{display:flex;margin:auto;-ms-overflow-style:none;overflow-x:auto;position:relative;scrollbar-width:none;white-space:nowrap;width:84%}@media only screen and (max-width: 1000px){.tensorsite-top-tab__tabs{width:100%}}.tensorsite-top-tab__tabs label{font-size:14px;line-height:22px;color:#425066;cursor:pointer;flex:1 1 auto;font-weight:500;padding:45px 18px 18px 18px;position:relative;text-align:center;transition:color .2s linear;-webkit-user-select:none;-ms-user-select:none;user-select:none}.tensorsite-top-tab__tabs label:focus::after,.tensorsite-top-tab__tabs label:hover::after{width:calc(100% - 30px)}.tensorsite-top-tab__tabs label::after{background:#293241;border-radius:5px 5px 0 0;bottom:0;content:'';height:3px;left:15px;position:absolute;width:0;z-index:1}@media only screen and (max-width: 767px){.tensorsite-top-tab__tabs label:last-child{border-bottom:1px solid #dadada}}.tensorsite-top-tab__tabs::after{background:#dadada;bottom:0;content:'';height:1px;left:18px;position:absolute;width:calc(100% - 36px)}@media only screen and (max-width: 1000px){.tensorsite-top-tab__tabs::after{width:calc(180% - 36px)}}@media only screen and (min-width: 768px){.tensorsite-top-tab__tabs::after{width:calc(100% - 36px)}}@-webkit-keyframes tensorsite-top-tab__content-fade{from{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes tensorsite-top-tab__content-fade{from{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}.tensorsite-sub-step__header-content .tensorsite-content{padding-left:0}@media only screen and (max-width: 767px){.tensorsite-sub-step__header-content .tensorsite-content{padding-right:0}}.tensorsite-sub-step__header-content .tensorsite-content__title{font-size:22px}.tensorsite-sub-step__title{color:#425066;font-size:22px;font-weight:500;margin-bottom:12px;margin-top:38px}@media only screen and (min-width: 768px){.tensorsite-sub-step__cards{display:flex;flex-wrap:wrap;justify-content:space-between}}.tensorsite-sub-step__cards .tensorsite-card{flex-shrink:0;margin-left:0;margin-right:0}@media only screen and (-ms-high-contrast: none), (-ms-high-contrast: active){.tensorsite-sub-step__cards .tensorsite-card{flex-basis:calc(50% / 3 - 30px - 1px)}}@supports (-ms-ime-align: auto){.tensorsite-sub-step__cards .tensorsite-card{flex-basis:calc(50% / 3 - 30px - 1px)}}@media only screen and (max-width: 850px){.tensorsite-sub-step__cards .tensorsite-card{flex-basis:100%;max-width:100%}}@media only screen and (max-width: 767px){.tensorsite-sub-step__cards .tensorsite-card{display:inline-block}}.tensorsite-list{padding:26px 0}@media only screen and (max-width: 767px){.tensorsite-list{padding:26px 0}}.tensorsite-list h5{overflow:visible}.tensorsite-list__title{color:#425066}.tensorsite-list__description a,.tensorsite-list__secondary-description a{display:inline-block;line-height:normal;border-bottom:1px solid #ff6f00;color:#616161;font-weight:500;transition:color .2s linear}.tensorsite-list__description a:hover,.tensorsite-list__secondary-description a:hover{color:#ff6f00}.tensorsite-list__items{padding-left:30px}.tensorsite-list__items--check{padding-left:40px}.tensorsite-list__items--custom-large{padding-left:56px}.tensorsite-list__item--check,.tensorsite-list__item--custom,.tensorsite-list__item--custom-large{list-style:none;position:relative}.tensorsite-list__item--check::before,.tensorsite-list__item--custom::before,.tensorsite-list__item--custom-large::before{content:'';position:absolute;top:3px}.tensorsite-list__item--check-large::before,.tensorsite-list__item--custom-large::before,.tensorsite-list__item--custom-large-large::before{height:36px;right:calc(100% + 20px);width:36px}.tensorsite-list__item--check::before{height:20px;left:-40px;width:20px}.tensorsite-list__item--custom::before{background-position:center;background-repeat:no-repeat;height:16px;left:-30px;width:16px}.tensorsite-list__item--email a{word-break:break-word}.tensorsite-list__item a{display:inline-block;line-height:normal;border-bottom:1px solid #ff6f00;color:#616161;font-weight:500;transition:color .2s linear}.tensorsite-list__item a:hover{color:#ff6f00}.tensorsite-list__item a p{display:inline}.tensorsite-list--box{border:1px #dadada solid;border-radius:10px;padding:26px}.tensorsite-list--white-bg{background-color:#fff}.tensorsite-list--large-title .tensorsite-list__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px}.tensorsite-list--no-padding-bottom{padding-bottom:0 !important}.tensorsite-list--no-padding-top{padding-top:0 !important}.tensorsite-inline-video{margin:auto;width:100%}@media only screen and (max-width: 1279px){.tensorsite-inline-video{width:720px}}@media only screen and (min-width: 1280px){.tensorsite-inline-video{width:1124px}}.tensorsite-tooltip__container{display:inline-block;vertical-align:middle}.tensorsite-tooltip__container:hover{cursor:help}.tensorsite-tooltip__container:hover .tensorsite-tooltip__content-wrapper,.tensorsite-tooltip__container:hover .tensorsite-tooltip__content{display:block}.tensorsite-tooltip{background:none;border:none;box-shadow:none;display:inline-block;height:auto;margin:0;overflow:unset;padding:0;pointer-events:auto;position:relative;text-transform:unset;white-space:initial;width:auto;z-index:2}.tensorsite-tooltip a:hover{cursor:pointer}.tensorsite-tooltip .tensorsite-tooltip__content-wrapper{display:none;height:auto;left:-53px;padding:20px 0 0 0;position:absolute;width:auto}.tensorsite-tooltip .tensorsite-tooltip__content:before{border:none;border-bottom:10px solid #323232;border-left:10px solid transparent;border-right:10px solid transparent;content:'';height:10px;left:27px;position:absolute;top:11px;width:10px}.tensorsite-tooltip .tensorsite-tooltip__content{background-color:#323232;box-sizing:border-box;color:rgba(255,255,255,0.8);display:none;padding:15px;text-align:left;width:200px;border-radius:10px}.tensorsite-article-hero{margin:0 auto;max-width:1140px;position:relative}@media only screen and (min-width: 768px){.tensorsite-article-hero{padding:100px 180px 0}}@media only screen and (max-width: 1279px){.tensorsite-article-hero{flex-direction:column;padding:100px 100px 0}}@media only screen and (max-width: 1279px) and (-ms-high-contrast: none), only screen and (max-width: 1279px) and (-ms-high-contrast: active){.tensorsite-article-hero{display:block}}@media only screen and (max-width: 767px){.tensorsite-article-hero{padding:50px 35px 0}}.tensorsite-article-hero__inner{margin-bottom:80px}.tensorsite-article-hero .tensorsite-group__divider{margin:0 auto;width:100%}.tensorsite-article-hero__content .tensorsite-content{padding-left:0;padding-right:0}.tensorsite-article-hero__content:last-of-type .tensorsite-content{padding-bottom:0}.tensorsite-article-hero__content--white-bg{border:1px #ccc solid;border-radius:10px;padding:26px}.tensorsite-article-hero__content--white-bg .tensorsite-content{padding:0}.tensorsite-casestudy{background-color:#f5f6f7;margin:auto;min-height:1200px;padding:10px 40px;position:relative;display:flex;flex-direction:column;align-items:center}@media only screen and (max-width: 767px){.tensorsite-casestudy{padding:10px 20px}}.tensorsite-casestudy .tensorsite-card{background-color:#fff;max-width:none;z-index:1}@media only screen and (max-width: 1000px){.tensorsite-casestudy .tensorsite-card{flex-basis:calc(100% / 2 - 30px)}}@media only screen and (max-width: 767px){.tensorsite-casestudy .tensorsite-card{flex-basis:calc(100% - 30px)}}.tensorsite-casestudy .tensorsite-group__header{padding:0 40px;max-width:1380px}.tensorsite-casestudy .tensorsite-group__header .tensorsite-content{padding:0}@media only screen and (max-width: 767px){.tensorsite-casestudy .tensorsite-group__header{padding:0 12px}}.tensorsite-casestudy .tensorsite-container{padding:0}.tensorsite-casestudy__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px;color:#425066;margin:15px 15px 60px 15px}.tensorsite-casestudy__content{align-items:center;display:flex;flex-direction:column}@media only screen and (max-width: 767px){.tensorsite-casestudy__content{display:block}}.tensorsite-casestudy__content--centered{display:block}.tensorsite-casestudy__cards{flex-basis:calc(3 * 100% / 4 - 30px);flex-grow:0;flex-shrink:1;width:100%}.tensorsite-casestudy__cards .tensorsite-group__inner{border-bottom:none}.tensorsite-casestudy__cards .tensorsite-container{padding:0px}.tensorsite-casestudy__filters{margin-top:24px}.tensorsite-casestudy__filters button{font-size:14px;line-height:22px;background-color:transparent;color:#425066;font-weight:500;transition:color .2s linear;padding:0 16px 0 2px;margin:0 20px 12px 0;border:1px solid #ff6f00;border-radius:20px;height:auto}@media only screen and (max-width: 480px){.tensorsite-casestudy__filters button{margin:8px 0}}.tensorsite-casestudy__filters button:focus:not([selected]),.tensorsite-casestudy__filters button:hover:not([selected]){color:#ff6f00;border:1px solid #ff6f00;background-color:transparent}.tensorsite-casestudy__filters button[selected]{background-color:#ff6f00}.tensorsite-casestudy__filters button[selected]::before{content:none}.tensorsite-casestudy__filters button[selected] .icon{display:none}.tensorsite-casestudy__filters button[selected] .icon--checked{display:block}.tensorsite-casestudy__filters button span{display:none;visibility:collapse}.tensorsite-casestudy__filters button img{max-width:40px}.tensorsite-casestudy__filters button .icon{display:block}.tensorsite-casestudy__filters button .icon--checked{display:none}#filter-checkboxes-match-all{display:flex;flex-direction:row;justify-content:flex-start;flex-wrap:wrap;padding:12px 40px 0;max-width:1380px;margin:0 auto}#filter-checkboxes-match-all label{font-size:14px;line-height:22px;color:#425066;font-weight:500;transition:color .2s linear;padding:0 16px 0 2px;margin:0 20px 12px 0;border:1px solid #ff6f00;border-radius:20px;display:flex;align-items:center}#filter-checkboxes-match-all label:focus,#filter-checkboxes-match-all label:hover{color:#ff6f00}#filter-checkboxes-match-all label::before{content:none}#filter-checkboxes-match-all label span{display:none;visibility:collapse}#filter-checkboxes-match-all label img{max-width:40px}#filter-checkboxes-match-all label .icon{display:block}#filter-checkboxes-match-all label .icon--checked{display:none}#filter-checkboxes-match-all input[type='checkbox']{position:absolute;visibility:hidden}#filter-checkboxes-match-all input[type='checkbox']:checked+label{background-color:#ff6f00;color:white}#filter-checkboxes-match-all input[type='checkbox']:checked+label .icon{display:none}#filter-checkboxes-match-all input[type='checkbox']:checked+label .icon--checked{display:block}#filter-checkboxes-match-all input[type='checkbox']::after{content:none}.tensorsite-column-list{margin:0 auto 52px;max-width:1440px;padding:0 30px}.tensorsite-column-list__intro{margin:0 auto;max-width:642px}.tensorsite-column-list__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px;color:#425066;text-align:center}.tensorsite-column-list__description{color:#616161;text-align:center}.tensorsite-column-list__description a{display:inline-block;line-height:normal;border-bottom:1px solid #ff6f00;color:#616161;font-weight:500;transition:color .2s linear}.tensorsite-column-list__description a:hover{color:#ff6f00}.tensorsite-column-list__description a:focus{outline:2px solid #425066;outline-offset:2px;text-decoration:none}.tensorsite-column-list__item{border-top:1px solid #dadada;display:flex;padding:50px 100px 30px}.tensorsite-column-list__item:last-child{border-bottom:1px solid #dadada}@media only screen and (max-width: 767px){.tensorsite-column-list__item{border-top:0;flex-direction:column;margin:20px 0;padding:20px;text-align:center}}@media only screen and (min-width: 768px){.tensorsite-column-list__item-image{flex:0 0 8%;margin-right:30px}}@media only screen and (max-width: 767px){.tensorsite-column-list__item-image{margin:15px 0}}.tensorsite-column-list__item-image img{max-height:96px;max-width:96px;width:100%}@media only screen and (min-width: 768px){.tensorsite-column-list__item-heading{flex:0 0 30%;margin-right:20px}}@media only screen and (max-width: 767px){.tensorsite-column-list__item-heading{margin:0}.tensorsite-column-list__item-heading .tensorsite-column-list__item-cta{display:none}}.tensorsite-column-list__item-title{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px;color:#425066;margin-bottom:20px}.tensorsite-column-list__item-cta{transition:color .2s linear}@media only screen and (max-width: 767px){.tensorsite-column-list__item-cta{align-self:center}}@media only screen and (min-width: 768px){.tensorsite-column-list__item-cta--mobile{display:none}}.tensorsite-column-list__item-description{color:#616161}.tensorsite-column-list__item-description p:first-child{margin-top:0}.tensorsite-dynamic-blog-section .devsite-card-wrapper{flex-basis:auto;max-width:none;padding:0}.tensorsite-dynamic-blog-section .devsite-card-group{grid-template-columns:repeat(4, 1fr);margin:0 15px}@media only screen and (max-width: 1000px){.tensorsite-dynamic-blog-section .devsite-card-group{grid-template-columns:repeat(2, 1fr)}}@media only screen and (max-width: 1000px){.tensorsite-ecosystem .tensorsite-container{padding:0}}.tensorsite-ecosystem .ecosystem{background:#fff;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);padding:60px}@media only screen and (max-width: 1000px){.tensorsite-ecosystem .ecosystem{overflow:scroll;padding:50px 20px}}.tensorsite-ecosystem .ecosystem__row{border-bottom:1px solid #dadada;display:flex}@media only screen and (max-width: 1000px){.tensorsite-ecosystem .ecosystem__row{width:970px}.tensorsite-ecosystem .ecosystem__row::after{content:'';display:block;flex:0 0 20px;height:1px}}.tensorsite-ecosystem .ecosystem__row--header{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:700;line-height:26px;border:none;color:#425066;text-align:center}.tensorsite-ecosystem .ecosystem__row--header .ecosystem__col{padding-top:30px;position:relative}.tensorsite-ecosystem .ecosystem__row--header .ecosystem__col::before{font-size:18px;line-height:30px;background:#fff;border-radius:50%;box-shadow:0 0 36px rgba(0,0,0,0.1);color:#ff6f00;display:block;height:32px;left:50%;position:absolute;top:0;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);width:32px}.tensorsite-ecosystem .ecosystem__row--header .ecosystem__col:nth-child(0)::before{content:"-1"}.tensorsite-ecosystem .ecosystem__row--header .ecosystem__col:nth-child(1)::before{content:"0"}.tensorsite-ecosystem .ecosystem__row--header .ecosystem__col:nth-child(2)::before{content:"1"}.tensorsite-ecosystem .ecosystem__row--header .ecosystem__col:nth-child(3)::before{content:"2"}.tensorsite-ecosystem .ecosystem__row--header .ecosystem__col:nth-child(4)::before{content:"3"}.tensorsite-ecosystem .ecosystem__row--header .ecosystem__row-body__bg::before,.tensorsite-ecosystem .ecosystem__row--header .ecosystem__row-body__bg::after,.tensorsite-ecosystem .ecosystem__row--header .ecosystem__row-body__bg .ecosystem__row-body__bg-col{border-top-left-radius:10px;border-top-right-radius:10px}.tensorsite-ecosystem .ecosystem__row-header{align-items:center;display:flex;flex:0 0 11%;flex-direction:column;justify-content:center;max-width:11%;padding:20px;text-align:center}.tensorsite-ecosystem .ecosystem__row-header__image{background-position:center;background-repeat:no-repeat;background-size:contain;height:40px;margin-bottom:10px;width:100%}@media only screen and (max-width: 1279px){.tensorsite-ecosystem .ecosystem__row-header__image{height:32px}}.tensorsite-ecosystem .ecosystem__row-header__title{font-family:"Google Sans",sans-serif;font-size:14px;font-weight:700;line-height:18px;align-items:center;color:#425066;font-weight:500}@media only screen and (max-width: 1279px){.tensorsite-ecosystem .ecosystem__row-header__title{font-size:11px;line-height:14px}}.tensorsite-ecosystem .ecosystem__row-header__labels{font-family:"Google Sans",sans-serif;font-size:12px;font-weight:700;line-height:18px;color:#616161;margin-top:15px}@media only screen and (max-width: 1279px){.tensorsite-ecosystem .ecosystem__row-header__labels{font-size:10px;line-height:14px;margin-top:10px}}.tensorsite-ecosystem .ecosystem__row-body{display:flex;flex:0 0 89%;justify-content:space-between;max-width:89%;position:relative}.tensorsite-ecosystem .ecosystem__row-body__bg{bottom:0;display:flex;justify-content:space-between;left:0;position:absolute;right:0;top:0}.tensorsite-ecosystem .ecosystem__row-body__bg::before,.tensorsite-ecosystem .ecosystem__row-body__bg::after,.tensorsite-ecosystem .ecosystem__row-body__bg .ecosystem__row-body__bg-col{background:#f5f6f7;content:'';display:block;flex:0 0 calc(33.33% - 5px);max-width:calc(33.33% - 5px)}.tensorsite-ecosystem .ecosystem__col{display:flex;flex:0 0 calc(100%/3 - 5px);flex-direction:column;max-width:calc(100%/3 - 5px);padding:20px 20px 0;position:relative}.tensorsite-ecosystem .ecosystem__col--full{flex:0 0 100%;max-width:100%}.tensorsite-ecosystem .ecosystem__col--full .ecosystem-card__main-content,.tensorsite-ecosystem .ecosystem__col--full .ecosystem-card__expanding-content{margin:0 auto;max-width:450px;width:60%}@media only screen and (max-width: 1279px){.tensorsite-ecosystem .ecosystem__col{padding:15px 15px 0}}.tensorsite-ecosystem .ecosystem__next{background-image:url(/site-assets/images/marketing/icon/icon_ecosystem_next.svg);background-position:center;background-repeat:no-repeat;background-size:80%;display:inline-block;height:20px;margin:-15px auto 5px;text-align:center;width:20px}@media only screen and (max-width: 1279px){.tensorsite-ecosystem .ecosystem__next{margin-top:-10px}}.tensorsite-ecosystem .ecosystem-input{left:-10000px;opacity:0;position:fixed}.tensorsite-ecosystem .ecosystem-input:checked+.ecosystem-card{z-index:10}.tensorsite-ecosystem .ecosystem-input:checked+.ecosystem-card .ecosystem-card__expanding-content{margin-bottom:20px;max-height:200px;opacity:1}.tensorsite-ecosystem .ecosystem-input:checked+.ecosystem-card .ecosystem-card__lower-content{box-shadow:0 0 64px rgba(0,0,0,0.22)}.tensorsite-ecosystem .ecosystem-input:checked+.ecosystem-card .ecosystem-card__toggle{background-image:url(/site-assets/images/marketing/icon/icon_ecosystem_close.svg)}.tensorsite-ecosystem .ecosystem-card{border-radius:10px;font-weight:500;margin-bottom:20px;position:relative;font-family:"Google Sans",sans-serif;font-size:12px;line-height:16px}@media only screen and (max-width: 1279px){.tensorsite-ecosystem .ecosystem-card{font-size:10px;line-height:14px;margin-bottom:15px}}.tensorsite-ecosystem .ecosystem-card--no-cta .ecosystem-card__lower-content{padding-bottom:32px}.tensorsite-ecosystem .ecosystem-card__label{font-family:"Google Sans",sans-serif;font-size:12px;font-weight:700;line-height:18px;border-bottom:1px solid rgba(66,80,102,0.08);color:#425066;font-size:9px;position:relative;text-align:center;text-transform:uppercase;z-index:2}.tensorsite-ecosystem .ecosystem-card__content-wrapper{padding-bottom:31px}@media only screen and (max-width: 1279px){.tensorsite-ecosystem .ecosystem-card__content-wrapper{padding-bottom:29px}}.tensorsite-ecosystem .ecosystem-card__main-content{align-items:center;display:flex;height:80px;justify-content:center;margin:0 30px;overflow:hidden;position:relative;text-align:center;z-index:2}@media only screen and (max-width: 1279px){.tensorsite-ecosystem .ecosystem-card__main-content{height:60px;margin:0 15px}}.tensorsite-ecosystem .ecosystem-card__lower-content{background:#fff;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);height:auto;left:0;padding:100px 30px 15px;position:absolute;right:0;text-align:center;top:0;transition:box-shadow .3s ease;z-index:1}@media only screen and (max-width: 1279px){.tensorsite-ecosystem .ecosystem-card__lower-content{padding:80px 15px 15px}}.tensorsite-ecosystem .ecosystem-card__expanding-content{max-height:0px;opacity:0;overflow:hidden;text-align:center;transition:all .3s ease}.tensorsite-ecosystem .ecosystem-card__cta{display:inline-block;line-height:normal;border-bottom:1px solid #ff6f00;color:#616161;font-weight:500;transition:color .2s linear;color:#616161;font-weight:700}.tensorsite-ecosystem .ecosystem-card__cta:hover{color:#ff6f00}.tensorsite-ecosystem .ecosystem-card__cta:focus{outline:2px solid #425066;outline-offset:2px}.tensorsite-ecosystem .ecosystem-card__toggle{background-image:url(/site-assets/images/marketing/icon/icon_ecosystem_info.svg);background-position:center;background-repeat:no-repeat;background-size:auto;border-radius:50%;bottom:12px;cursor:pointer;height:24px;position:absolute;right:12px;width:24px}@media only screen and (max-width: 1000px){.tensorsite-ecosystem .ecosystem-card__toggle{bottom:0;height:48px;right:0;width:48px}}.tensorsite-examples-table{background:#fff;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);padding:40px}.tensorsite-examples-table input.tensorsite-examples-table__search{background:#f1f3f4;border:0;border-bottom:2px solid transparent;border-radius:2px;margin:12px 0;max-width:426px;padding:8px}.tensorsite-examples-table input.tensorsite-examples-table__search:focus{border-bottom:2px solid #1a73e8}.tensorsite-examples-table .devsite-select--multiple{margin:0 16px 8px 0}.tensorsite-examples-table .devsite-select .devsite-icon-arrow-drop-down{right:0}.tensorsite-examples-table .checkbox-demo{margin:8px 0}.tensorsite-examples-table table{border-radius:10px;margin-top:24px;overflow:hidden}.tensorsite-examples-table thead{background:#425066;color:#fff}.tensorsite-examples-table thead th{font-family:"Google Sans",sans-serif;font-size:14px;font-weight:700;line-height:22px;background:none;color:#fff;padding:14px 24px}.tensorsite-examples-table thead th.widest-column{min-width:210px}.tensorsite-examples-table thead th.medium-column{min-width:150px}.tensorsite-examples-table tr{border:0}.tensorsite-examples-table tr td{min-width:130px;padding:12px 24px;vertical-align:middle;width:140px}.tensorsite-examples-table tr td>a{font-family:"Google Sans",sans-serif;font-weight:700;font-size:14px;line-height:22px}.tensorsite-examples-table tr td span:before,.tensorsite-examples-table tr td span:after{width:16px}.tensorsite-examples-table tr:nth-child(even){background-color:#425066}.tensorsite-examples-table .tensorsite-content__cta-wrapper a{align-self:center}.tensorsite-fancy-hero-wrapper{background-color:transparent;margin:0 auto;overflow:hidden;position:relative;width:100%}.tensorsite-fancy-hero-wrapper iframe.framebox{opacity:0}@media only screen and (min-width: 768px){.tensorsite-fancy-hero-wrapper iframe{min-height:550px}}.tensorsite-fancy-hero-wrapper devsite-framebox iframe{opacity:1}@media only screen and (min-width: 768px){.tensorsite-fancy-hero-wrapper+.tensorsite-casestudy{margin-top:-90px}}.tensorsite-fancy-hero-wrapper--short{min-height:0}.tensorsite-fancy-hero{background-color:transparent;margin:0 auto;max-width:1420px;padding:0 40px;position:relative}@media only screen and (min-width: 768px){.tensorsite-fancy-hero{min-height:440px}}@media only screen and (max-width: 767px){.tensorsite-fancy-hero{padding:0 20px}}.tensorsite-fancy-hero .tensorsite-content__subtitle{font-family:"Google Sans",sans-serif;font-size:14px;font-weight:700;line-height:22px;font-weight:600}.tensorsite-fancy-hero .tensorsite-content__description{font-size:18px;line-height:30px;color:#425066}.tensorsite-fancy-hero .tensorsite-content__cta-wrapper{margin-top:8px}.tensorsite-fancy-hero__brand-image{background-repeat:no-repeat;background-size:contain;height:40px;margin:0 15px;width:calc(16.66667% - $margin-gutter)}.tensorsite-fancy-hero__image{position:absolute;right:-22%;top:0;width:70%}.tensorsite-fancy-hero__image img{max-height:430px}@media only screen and (max-width: 767px){.tensorsite-fancy-hero__image{width:110%}}.tensorsite-fancy-hero__content{margin:0 15px;padding:0;text-align:left;width:calc(41.66667% - 30px)}@media only screen and (max-width: 1000px){.tensorsite-fancy-hero__content{width:calc(50% - 30px)}}@media only screen and (max-width: 767px){.tensorsite-fancy-hero__content{margin:40% 0 0;width:100%}}@media only screen and (max-width: 767px){.tensorsite-fancy-hero__content .tensorsite-content{padding:26px 15px}}.tensorsite-fancy-hero__slides-wrapper{position:relative}.tensorsite-fancy-hero__slide{left:0;opacity:1;top:0;transition:.3s opacity linear;width:100%}@media only screen and (min-width: 768px){.tensorsite-fancy-hero__slide{padding:40px 8.33333%}}@media only screen and (max-width: 1279px){.tensorsite-fancy-hero__slide{flex-direction:column;padding:40px 0}}@media only screen and (max-width: 767px){.tensorsite-fancy-hero__slide{box-sizing:border-box;overflow:hidden;padding:50px 15px 20px}}.tensorsite-fancy-hero__slide--fade{-webkit-animation-duration:1.5s;animation-duration:1.5s;-webkit-animation-name:tensorsite-fancy-hero__slide-fade;animation-name:tensorsite-fancy-hero__slide-fade}.tensorsite-fancy-hero__slide.is-carousel{position:absolute}.tensorsite-fancy-hero__slide.is-invisible{opacity:0;pointer-events:none}.tensorsite-fancy-hero__slide .tensorsite-content{padding-left:0;padding-right:0}.tensorsite-fancy-hero__dots{bottom:140px;position:absolute}@media only screen and (min-width: 1280px){.tensorsite-fancy-hero__dots{margin:30px 0 30px calc(8.33333% + (30px / 2 - 7px))}}@media only screen and (max-width: 1279px){.tensorsite-fancy-hero__dots{margin:30px 0 30px 10px}}@media only screen and (max-width: 767px){.tensorsite-fancy-hero__dots{bottom:20px;margin:0 0 30px 15px}}.tensorsite-fancy-hero__dot{background:none;border:2px #ccc solid;border-radius:50%;cursor:pointer;display:inline-block;height:14px;margin:0 2px;min-width:0;padding:0;transition:background-color .3s linear;width:14px}.tensorsite-fancy-hero__dot:focus{outline:2px solid #425066;outline-offset:2px}.tensorsite-fancy-hero__dot.is-active{background-color:#ccc}.tensorsite-footer{margin-top:-92px;overflow:hidden;padding-top:92px;pointer-events:none;position:relative}.tensorsite-footer::before,.tensorsite-footer::after{bottom:0;content:'';display:block;position:absolute}.tensorsite-footer::before{background:#ff6f00;left:0;right:calc(1440px + ((100% - 1440px) / 2) + (192px / 2));top:184px}.tensorsite-footer::after{background:#FFA800;left:calc(1440px + ((100% - 1440px) / 2) + (192px / 2));right:0;top:0}.tensorsite-footer--gray{margin-top:0px;background-color:#f5f6f7}.tensorsite-footer__container{background-image:linear-gradient(-90deg, #FFA800 18%, #ff6f00 86%);margin:0 auto;max-width:calc(100% - 192px);min-height:350px;padding:70px 0;position:relative}@media screen and (min-width: 1440px){.tensorsite-footer__container{max-width:1248px}}@media only screen and (max-width: 767px){.tensorsite-footer__container{background-image:linear-gradient(-90deg, #FFA800, #ff6f00);padding-bottom:100px}}.tensorsite-footer__side{bottom:0;position:absolute;width:192px}.tensorsite-footer__side::before{content:'';display:block;height:92px;margin-top:-92px;width:100%}.tensorsite-footer__side--left{background:#ff6f00;left:-192px;top:92px}.tensorsite-footer__side--left::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 192 92'%3E%3Cpath d='M162 8L96 46 30 84a60.7 60.7 0 0 1-30 8h192V0a60.7 60.7 0 0 0-30 8z' fill='%23FF6F00'/%3E%3C/svg%3E")}.tensorsite-footer__side--right{background:#FFA800;right:-192px;top:0}.tensorsite-footer__side--right::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 192 92'%3E%3Cpath d='M162 8L96 46 30 84a60.7 60.7 0 0 1-30 8h192V0a60.7 60.7 0 0 0-30 8z' fill='%23ffa800'/%3E%3C/svg%3E")}.tensorsite-footer__content{pointer-events:auto;position:relative;z-index:3}.tensorsite-footer__content .tensorsite-content{margin:0 auto;max-width:650px;padding:0}.tensorsite-footer__content .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:36px;font-weight:700;line-height:48px;color:#fff;padding:0;text-align:center;width:auto}@media only screen and (max-width: 767px){.tensorsite-footer__content .tensorsite-content__title{font-size:28px;line-height:36px;font-weight:700;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px){.tensorsite-footer__content .tensorsite-content__title{font-size:28px;line-height:36px;font-weight:700;letter-spacing:-0.25px}}.tensorsite-footer__content .tensorsite-content__description{font-size:18px;line-height:30px;color:#fff;text-align:center}.tensorsite-footer__content .tensorsite-content__cta-wrapper{margin-top:10px;text-align:center}.tensorsite-footer__content .tensorsite-content__cta-wrapper a{align-self:center}.tensorsite-footer__content .tensorsite-content .tensorsite-content__title+.tensorsite-content__cta-wrapper{margin-top:40px}@media only screen and (max-width: 767px){.tensorsite-footer__content{margin:36px -76px}}.tensorsite-footer__lines{background:url(/site-assets/images/marketing/footer-lines.svg) center bottom/100% auto no-repeat;bottom:0;left:50%;max-width:1720px;min-width:1320px;pointer-events:none;position:absolute;top:0;-webkit-transform:translate(-50%, 0);transform:translate(-50%, 0);width:90vw;z-index:2}@media only screen and (max-width: 767px){.tensorsite-footer__lines{-webkit-transform:translate(-30%, 0);transform:translate(-30%, 0)}}@media only screen and (max-width: 480px){.tensorsite-footer__lines{-webkit-transform:translate(-20%, 0);transform:translate(-20%, 0)}}.tensorsite-footer--redesign .tensorsite-content{max-width:unset}.tensorsite-footer--redesign .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:48px;font-weight:700;line-height:72px;letter-spacing:-0.5px;color:#fff;color:#fff;text-align:center}@media only screen and (max-width: 1279px){.tensorsite-footer--redesign .tensorsite-content__title{line-height:58px}}@media only screen and (max-width: 767px){.tensorsite-footer--redesign .tensorsite-content__title{font-size:36px;line-height:44px;letter-spacing:-0.25px}}.tensorsite-footer--redesign .tensorsite-content__cta-wrapper{flex-direction:row;text-align:center;align-self:center;gap:34px}@media only screen and (max-width: 767px){.tensorsite-footer--redesign .tensorsite-content__cta-wrapper{flex-direction:column;gap:16px}}.tensorsite-footer--redesign .tensorsite-content .tensorsite-button{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:24px;color:#616161;text-decoration:underline;text-underline-offset:4px;text-decoration:none;align-self:center}.tensorsite-footer--redesign .tensorsite-content .tensorsite-button:hover,.tensorsite-footer--redesign .tensorsite-content .tensorsite-button:focus{color:#ff6f00}.tensorsite-footer--redesign .tensorsite-content .tensorsite-button:hover{color:#fff}.tensorsite-footerlink{color:#425066;margin:0 auto 80px;max-width:1140px}@media only screen and (min-width: 768px){.tensorsite-footerlink{padding:0 180px}}@media only screen and (max-width: 1279px){.tensorsite-footerlink{flex-direction:column;margin-bottom:50px;padding:0 100px}}@media only screen and (max-width: 1279px) and (-ms-high-contrast: none), only screen and (max-width: 1279px) and (-ms-high-contrast: active){.tensorsite-footerlink{display:block}}@media only screen and (max-width: 767px){.tensorsite-footerlink{padding:35px 35px 0}}.tensorsite-footerlink__inner{display:flex}.tensorsite-footerlink__wrapper{color:#425066;cursor:pointer;margin-bottom:auto;transition:.2s color linear;width:46%}.tensorsite-footerlink__wrapper:focus{outline:2px solid #425066;outline-offset:2px}.tensorsite-footerlink__wrapper-left{margin-right:auto;text-align:left}.tensorsite-footerlink__wrapper-left .tensorsite-footerlink__label{padding-left:35px}.tensorsite-footerlink__wrapper-left .tensorsite-footerlink__label::before,.tensorsite-footerlink__wrapper-left .tensorsite-footerlink__label::after{left:0}.tensorsite-footerlink__wrapper-right{margin-left:auto;text-align:right}.tensorsite-footerlink__wrapper-right .tensorsite-footerlink__label{padding-right:35px}.tensorsite-footerlink__wrapper-right .tensorsite-footerlink__label::before,.tensorsite-footerlink__wrapper-right .tensorsite-footerlink__label::after{right:0}.tensorsite-footerlink__wrapper:hover,.tensorsite-footerlink__wrapper:focus{color:#ff6f00}.tensorsite-footerlink__wrapper:hover .tensorsite-footerlink__label::before,.tensorsite-footerlink__wrapper:focus .tensorsite-footerlink__label::before{opacity:1}.tensorsite-footerlink__wrapper:hover .tensorsite-footerlink__label::after,.tensorsite-footerlink__wrapper:focus .tensorsite-footerlink__label::after{opacity:0}.tensorsite-footerlink__label{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px;position:relative}.tensorsite-footerlink__label::before,.tensorsite-footerlink__label::after{background-repeat:no-repeat;background-size:contain;bottom:0;content:'';height:18px;margin:auto 0;position:absolute;right:0px;top:0;transition:.2s opacity linear;width:18px}.tensorsite-footerlink__label::before{opacity:0}.tensorsite-footerlink__body{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px}.tensorsite-hero+.tensorsite-group:not(.tensorsite-group--has-top-divider) .tensorsite-container:first-child{margin-top:0}@media only screen and (max-width: 767px){.tensorsite-group .tensorsite-block .tensorsite-card{flex-basis:calc(100% - 30px);flex-shrink:0}}@media only screen and (max-width: 767px){.tensorsite-group .tensorsite-expandable{padding:0 15px}}.tensorsite-group__divider{border-top:1px solid #dadada;margin:auto 80px;max-width:1420px}@media only screen and (min-width: 1430px){.tensorsite-group__divider{margin:auto;width:90%}}.tensorsite-group__divider--footerlink{border-color:#425066;margin:0 auto 22px;width:100%}.tensorsite-group__header .tensorsite-content{padding-bottom:50px;padding-top:0}@media only screen and (max-width: 767px){.tensorsite-group__header .tensorsite-content{padding-left:15px;padding-right:15px}}.tensorsite-group__header:last-child .tensorsite-content{padding-bottom:0}.tensorsite-group__header,.tensorsite-group__footer{margin:0 auto;text-align:center}.tensorsite-group__header .tensorsite-content__title,.tensorsite-group__footer .tensorsite-content__title{align-self:flex-start;margin:auto;max-width:540px}.tensorsite-group__header .tensorsite-content__small-title,.tensorsite-group__footer .tensorsite-content__small-title{align-self:flex-start;margin:auto;max-width:860px}.tensorsite-group__header .tensorsite-content__description,.tensorsite-group__footer .tensorsite-content__description{margin:10px auto;width:55%}@media only screen and (max-width: 1279px){.tensorsite-group__header .tensorsite-content__description,.tensorsite-group__footer .tensorsite-content__description{width:70%}}@media only screen and (max-width: 767px){.tensorsite-group__header .tensorsite-content__description,.tensorsite-group__footer .tensorsite-content__description{width:100%}}.tensorsite-group__header .tensorsite-content__description:last-child,.tensorsite-group__footer .tensorsite-content__description:last-child{margin-bottom:0}.tensorsite-group__header .tensorsite-content__cta-wrapper,.tensorsite-group__footer .tensorsite-content__cta-wrapper{margin-top:16px}.tensorsite-group__header ul.tensorsite-content__cta-wrapper,.tensorsite-group__footer ul.tensorsite-content__cta-wrapper{justify-content:center}.tensorsite-group__header .tensorsite-content__cta,.tensorsite-group__header .tensorsite-content__button,.tensorsite-group__footer .tensorsite-content__cta,.tensorsite-group__footer .tensorsite-content__button{align-self:center}.tensorsite-group__header--align-left,.tensorsite-group__footer--align-left{text-align:left}@media only screen and (max-width: 850px){.tensorsite-group__header--align-left,.tensorsite-group__footer--align-left{max-width:600px}}.tensorsite-group__header--align-left .tensorsite-content__description,.tensorsite-group__header--align-left .tensorsite-content__title,.tensorsite-group__footer--align-left .tensorsite-content__description,.tensorsite-group__footer--align-left .tensorsite-content__title{align-self:flex-start;margin-left:0;margin-right:0}.tensorsite-group__header--align-left .tensorsite-content__cta,.tensorsite-group__footer--align-left .tensorsite-content__cta{align-self:flex-start}.tensorsite-group__footer .tensorsite-content{padding-bottom:0;padding-top:50px}.tensorsite-group__footer .tensorsite-content .tensorsite-content__cta-wrapper a{align-self:center}.tensorsite-group__footer .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px}.tensorsite-group__inner{display:flex;flex-wrap:wrap;list-style:none;margin:-15px auto}.tensorsite-group__inner[data-carousel-container]{flex-wrap:nowrap;transition:-webkit-transform .5s cubic-bezier(0.4, 0, 0.2, 1);transition:transform .5s cubic-bezier(0.4, 0, 0.2, 1);transition:transform .5s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform .5s cubic-bezier(0.4, 0, 0.2, 1);will-change:transform}.tensorsite-group [data-carousel-wrapper]{position:relative}.tensorsite-group__button-previous,.tensorsite-group__button-next{background:#fff;border-radius:50%;box-shadow:0 0 36px rgba(0,0,0,0.1);height:46px;opacity:0;pointer-events:none;position:absolute;top:50%;-webkit-transform:translateY(-50%) translateY(20px);transform:translateY(-50%) translateY(20px);transition:box-shadow .3s cubic-bezier(0.4, 0, 0.2, 1),opacity .2s linear,-webkit-transform .2s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow .3s cubic-bezier(0.4, 0, 0.2, 1),opacity .2s linear,transform .2s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow .3s cubic-bezier(0.4, 0, 0.2, 1),opacity .2s linear,transform .2s cubic-bezier(0.4, 0, 0.2, 1),-webkit-transform .2s cubic-bezier(0.4, 0, 0.2, 1);width:46px;z-index:10}@media only screen and (max-width: 1279px){.tensorsite-group__button-previous.is-visible,.tensorsite-group__button-next.is-visible{opacity:1;pointer-events:auto;-webkit-transform:translateY(-50%);transform:translateY(-50%)}}.tensorsite-group__button-previous:focus,.tensorsite-group__button-previous:hover,.tensorsite-group__button-next:focus,.tensorsite-group__button-next:hover{box-shadow:0 0 64px rgba(0,0,0,0.22)}.tensorsite-group__button-previous .material-icons,.tensorsite-group__button-next .material-icons{color:#ff6f00;font-size:36px;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}.tensorsite-group:focus__button-previous.is-visible,.tensorsite-group:focus__button-next.is-visible,.tensorsite-group:hover__button-previous.is-visible,.tensorsite-group:hover__button-next.is-visible{opacity:1;pointer-events:auto;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.tensorsite-group__button-previous{left:40px}@media only screen and (min-width: 1280px){.tensorsite-group__button-previous{left:calc((100vw - 1420px) / -2 + 40px)}}@media only screen and (max-width: 1279px){.tensorsite-group__button-previous{left:0}}.tensorsite-group__button-next{right:40px}@media only screen and (min-width: 1280px){.tensorsite-group__button-next{right:calc((100vw - 1420px) / -2 + 40px)}}@media only screen and (max-width: 1279px){.tensorsite-group__button-next{right:0}}.tensorsite-group--gray{background-color:#f5f6f7}.tensorsite-group--gray:not(.tensorsite-group--redesign){margin-bottom:-120px;padding-bottom:120px;padding-top:80px}.tensorsite-group--gray .tensorsite-container{margin-top:0}.tensorsite-group--gray+.tensorsite-footer{margin-top:-180px}.tensorsite-group--gray.padding-100{padding:100px 0}.tensorsite-group--condensed-top{padding-top:60px}.tensorsite-group--show-all .tensorsite-container{padding-bottom:86px;position:relative}.tensorsite-group--show-all .tensorsite-group__show-all-toggle{bottom:0;left:50%;opacity:0;position:absolute;-webkit-transform:translate(-50%, -5px);transform:translate(-50%, -5px)}.tensorsite-group--show-all .tensorsite-group__show-all-toggle ~ .tensorsite-group__inner{margin-bottom:0;max-height:500px;overflow:hidden;transition:.3s max-height cubic-bezier(0.4, 0, 0.2, 1),.3s margin-bottom cubic-bezier(0.4, 0, 0.2, 1)}.tensorsite-group--show-all .tensorsite-group__show-all-toggle+label{bottom:0;left:50%;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tensorsite-group--show-all .tensorsite-group__show-all-toggle+label span::before{content:attr(data-show-all-default);display:inline-block}.tensorsite-group--show-all .tensorsite-group__show-all-toggle:checked{pointer-events:none}.tensorsite-group--show-all .tensorsite-group__show-all-toggle:checked ~ .tensorsite-group__inner{max-height:500px}.tensorsite-group--show-all .tensorsite-group__show-all-toggle:checked+label span::before{content:attr(data-show-all-collapse)}@media only screen and (max-width: 850px){.tensorsite-group--2up .tensorsite-group__inner,.tensorsite-group--row .tensorsite-group__inner{max-width:600px}}.tensorsite-group--2up .tensorsite-block,.tensorsite-group--2up .tensorsite-card:not(.tensorsite-card--horizontal),.tensorsite-group--row .tensorsite-block,.tensorsite-group--row .tensorsite-card:not(.tensorsite-card--horizontal){flex-shrink:0}.tensorsite-group--2up .devsite-landing-row-item-code,.tensorsite-group--row .devsite-landing-row-item-code{display:flex;flex-direction:column}@media only screen and (max-width: 850px){.tensorsite-group--2up .tensorsite-block,.tensorsite-group--2up .tensorsite-card:not(.tensorsite-card--horizontal),.tensorsite-group--row .tensorsite-block,.tensorsite-group--row .tensorsite-card:not(.tensorsite-card--horizontal){flex-basis:calc(100% - 30px);max-width:calc(100% - 30px);order:0 !important}}@media only screen and (-ms-high-contrast: none), (-ms-high-contrast: active){.tensorsite-group--2up .tensorsite-content,.tensorsite-group--row .tensorsite-content{display:block}}@media only screen and (max-width: 850px){.tensorsite-group--3up .tensorsite-group__inner,.tensorsite-group--3up-small .tensorsite-group__inner,.tensorsite-group--3up-short .tensorsite-group__inner{max-width:600px}}@media only screen and (-ms-high-contrast: none), (-ms-high-contrast: active){.tensorsite-group--3up .tensorsite-block,.tensorsite-group--3up .tensorsite-card,.tensorsite-group--3up-small .tensorsite-block,.tensorsite-group--3up-small .tensorsite-card,.tensorsite-group--3up-short .tensorsite-block,.tensorsite-group--3up-short .tensorsite-card{flex-basis:calc(100% / 3 - 30px - 1px)}}@supports (-ms-ime-align: auto){.tensorsite-group--3up .tensorsite-block,.tensorsite-group--3up .tensorsite-card,.tensorsite-group--3up-small .tensorsite-block,.tensorsite-group--3up-small .tensorsite-card,.tensorsite-group--3up-short .tensorsite-block,.tensorsite-group--3up-short .tensorsite-card{flex-basis:calc(100% / 3 - 30px - 1px)}}@media only screen and (max-width: 850px){.tensorsite-group--3up .tensorsite-block,.tensorsite-group--3up .tensorsite-card,.tensorsite-group--3up-small .tensorsite-block,.tensorsite-group--3up-small .tensorsite-card,.tensorsite-group--3up-short .tensorsite-block,.tensorsite-group--3up-short .tensorsite-card{flex-basis:calc(100% - 30px);max-width:calc(100% - 30px);order:0 !important}}@media only screen and (max-width: 1000px){.tensorsite-group--3up .tensorsite-block .tensorsite-content,.tensorsite-group--3up-small .tensorsite-block .tensorsite-content,.tensorsite-group--3up-short .tensorsite-block .tensorsite-content{padding-left:0;padding-right:0}}@media only screen and (max-width: 767px){.tensorsite-group--3up .tensorsite-block .tensorsite-content,.tensorsite-group--3up-small .tensorsite-block .tensorsite-content,.tensorsite-group--3up-short .tensorsite-block .tensorsite-content{padding:0 30px}}.tensorsite-group--3up .tensorsite-block .devsite-landing-row-item-code,.tensorsite-group--3up .tensorsite-card:not(.tensorsite-card--horizontal) .devsite-landing-row-item-code,.tensorsite-group--3up-small .tensorsite-block .devsite-landing-row-item-code,.tensorsite-group--3up-small .tensorsite-card:not(.tensorsite-card--horizontal) .devsite-landing-row-item-code,.tensorsite-group--3up-short .tensorsite-block .devsite-landing-row-item-code,.tensorsite-group--3up-short .tensorsite-card:not(.tensorsite-card--horizontal) .devsite-landing-row-item-code,.tensorsite-group--row .tensorsite-block .devsite-landing-row-item-code,.tensorsite-group--row .tensorsite-card:not(.tensorsite-card--horizontal) .devsite-landing-row-item-code{display:flex;flex-direction:column}.tensorsite-group--3up-small .tensorsite-group__inner{justify-content:center;width:75%}@media only screen and (max-width: 1000px){.tensorsite-group--3up-small .tensorsite-group__inner{width:auto}}.tensorsite-group--3up-short .tensorsite-content__image-wrapper{align-items:center;display:flex;justify-content:center;max-height:150px;overflow:hidden}.tensorsite-group--4up .tensorsite-group__inner,.tensorsite-group--5up .tensorsite-group__inner{justify-content:center}@media only screen and (max-width: 767px){.tensorsite-group--4up .tensorsite-group__inner,.tensorsite-group--5up .tensorsite-group__inner{max-width:600px}}@media only screen and (max-width: 767px){.tensorsite-group--4up .tensorsite-block,.tensorsite-group--5up .tensorsite-block{margin:40px 0}}@media only screen and (max-width: 767px){.tensorsite-group--4up .tensorsite-card--hero,.tensorsite-group--5up .tensorsite-card--hero{min-height:400px}}.tensorsite-group--4up .tensorsite-content__title,.tensorsite-group--5up .tensorsite-content__title{max-width:none}.tensorsite-group--4up .tensorsite-block--plain .tensorsite-content,.tensorsite-group--5up .tensorsite-block--plain .tensorsite-content{padding-left:0;padding-right:0}.tensorsite-group--4up .tensorsite-block,.tensorsite-group--4up .tensorsite-card{flex-basis:calc(50% - 30px);max-width:calc(50% - 30px)}@media only screen and (max-width: 767px){.tensorsite-group--4up .tensorsite-block,.tensorsite-group--4up .tensorsite-card{flex-basis:calc(100% - 30px);max-width:calc(100% - 30px)}}.tensorsite-group--5up .tensorsite-block,.tensorsite-group--5up .tensorsite-card{flex-basis:calc(20% - 30px);flex-shrink:0;max-width:calc(20% - 30px)}@media only screen and (max-width: 1279px){.tensorsite-group--5up .tensorsite-block,.tensorsite-group--5up .tensorsite-card{flex-basis:calc(50% - 30px);max-width:calc(50% - 30px)}}@media only screen and (max-width: 767px){.tensorsite-group--5up .tensorsite-block,.tensorsite-group--5up .tensorsite-card{flex-basis:calc(100% - 30px);max-width:calc(100% - 30px)}}.tensorsite-group--logos .tensorsite-group__inner,.tensorsite-group--logos-small .tensorsite-group__inner{justify-content:center;margin-top:-20px}.tensorsite-group--logos .tensorsite-block,.tensorsite-group--logos .tensorsite-card,.tensorsite-group--logos-small .tensorsite-block,.tensorsite-group--logos-small .tensorsite-card{flex-basis:calc(12.5% - 30px);flex-grow:0;flex-shrink:0}@media only screen and (max-width: 1279px){.tensorsite-group--logos .tensorsite-block,.tensorsite-group--logos .tensorsite-card,.tensorsite-group--logos-small .tensorsite-block,.tensorsite-group--logos-small .tensorsite-card{flex-basis:calc(25% - 30px)}}@media only screen and (max-width: 767px){.tensorsite-group--logos .tensorsite-block,.tensorsite-group--logos .tensorsite-card,.tensorsite-group--logos-small .tensorsite-block,.tensorsite-group--logos-small .tensorsite-card{flex-basis:calc(50% - 30px)}}.tensorsite-group--logos .tensorsite-block,.tensorsite-group--logos-small .tensorsite-block{margin-bottom:0;margin-top:20px}.tensorsite-group--logos .tensorsite-block:nth-child(n+9),.tensorsite-group--logos-small .tensorsite-block:nth-child(n+9){visibility:hidden}.tensorsite-group--logos .tensorsite-block:last-of-type,.tensorsite-group--logos-small .tensorsite-block:last-of-type{margin-bottom:4px}.tensorsite-group--logos .tensorsite-block__image,.tensorsite-group--logos-small .tensorsite-block__image{background-position:center center;background-repeat:no-repeat;background-size:contain;height:65px;outline-offset:-4px}.tensorsite-group--logos .tensorsite-group__show-all-toggle ~ .tensorsite-group__inner,.tensorsite-group--logos-small .tensorsite-group__show-all-toggle ~ .tensorsite-group__inner{max-height:90px}@media only screen and (max-width: 1279px){.tensorsite-group--logos .tensorsite-group__show-all-toggle ~ .tensorsite-group__inner,.tensorsite-group--logos-small .tensorsite-group__show-all-toggle ~ .tensorsite-group__inner{max-height:calc(86px * 2)}}@media only screen and (max-width: 767px){.tensorsite-group--logos .tensorsite-group__show-all-toggle ~ .tensorsite-group__inner,.tensorsite-group--logos-small .tensorsite-group__show-all-toggle ~ .tensorsite-group__inner{max-height:calc(86px * 4)}}.tensorsite-group--logos .tensorsite-group__show-all-toggle:checked ~ .tensorsite-group__inner,.tensorsite-group--logos-small .tensorsite-group__show-all-toggle:checked ~ .tensorsite-group__inner{--number-of-rows: 6;max-height:510px;max-height:calc(86px * var(--number-of-rows))}@media only screen and (max-width: 1279px){.tensorsite-group--logos .tensorsite-group__show-all-toggle:checked ~ .tensorsite-group__inner,.tensorsite-group--logos-small .tensorsite-group__show-all-toggle:checked ~ .tensorsite-group__inner{max-height:1020px;max-height:calc(86px * var(--number-of-rows) * 2)}}@media only screen and (max-width: 767px){.tensorsite-group--logos .tensorsite-group__show-all-toggle:checked ~ .tensorsite-group__inner,.tensorsite-group--logos-small .tensorsite-group__show-all-toggle:checked ~ .tensorsite-group__inner{max-height:1020px;max-height:calc(86px * var(--number-of-rows) * 4)}}.tensorsite-group--logos .tensorsite-group__show-all-toggle:checked ~ .tensorsite-group__inner .tensorsite-block:nth-child(n+9),.tensorsite-group--logos-small .tensorsite-group__show-all-toggle:checked ~ .tensorsite-group__inner .tensorsite-block:nth-child(n+9){visibility:visible}.tensorsite-group--logos-wide .tensorsite-block{margin-left:30px;margin-right:30px}.tensorsite-group--row .tensorsite-group__header,.tensorsite-group--row-3up .tensorsite-group__header{display:flex;flex-basis:calc(100% / 3);flex-direction:column;flex-grow:0;flex-shrink:0;margin:15px 0;max-width:calc(100% / 3);text-align:left}@media only screen and (max-width: 850px){.tensorsite-group--row .tensorsite-group__header,.tensorsite-group--row-3up .tensorsite-group__header{flex-basis:100%;max-width:none}}@media only screen and (max-width: 767px){.tensorsite-group--row .tensorsite-group__header,.tensorsite-group--row-3up .tensorsite-group__header{flex-basis:100%;max-width:100%}}.tensorsite-group--row .tensorsite-group__header .tensorsite-content,.tensorsite-group--row-3up .tensorsite-group__header .tensorsite-content{padding-bottom:0;padding-top:0;flex-grow:0;flex-shrink:0;position:sticky;top:120px}.tensorsite-group--row .tensorsite-group__header .tensorsite-content__title,.tensorsite-group--row-3up .tensorsite-group__header .tensorsite-content__title{align-self:flex-start;margin:0;max-width:none}.tensorsite-group--row .tensorsite-group__header .tensorsite-content__description,.tensorsite-group--row-3up .tensorsite-group__header .tensorsite-content__description{margin:0;flex-grow:0;flex-shrink:0;width:auto}.tensorsite-group--row .tensorsite-group__inner-wrapper,.tensorsite-group--row-3up .tensorsite-group__inner-wrapper{display:flex;flex-basis:calc(100% / 3 * 2);flex-wrap:wrap;max-width:calc(100% / 3 * 2)}@media only screen and (max-width: 850px){.tensorsite-group--row .tensorsite-group__inner-wrapper,.tensorsite-group--row-3up .tensorsite-group__inner-wrapper{flex-basis:100%;max-width:none}}@media only screen and (max-width: 767px){.tensorsite-group--row .tensorsite-group__inner-wrapper,.tensorsite-group--row-3up .tensorsite-group__inner-wrapper{flex-basis:100%;max-width:100%}}@media only screen and (min-width: 851px){.tensorsite-group--row-3up .tensorsite-container{display:flex}}@media only screen and (max-width: 850px){.tensorsite-group--row-3up .tensorsite-container .tensorsite-group__inner{max-width:600px}}@media only screen and (min-width: 851px){.tensorsite-group--row-3up .tensorsite-group__header{max-width:calc(100% / 4)}}.tensorsite-group--row-3up .tensorsite-group__header .tensorsite-content{padding:0 15px 50px}@media only screen and (max-width: 850px){.tensorsite-group--row-3up .tensorsite-group__header .tensorsite-content{text-align:center}}.tensorsite-group--row-3up .tensorsite-group__header .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px}@media only screen and (max-width: 850px){.tensorsite-group--row-3up .tensorsite-group__header .tensorsite-content__title{align-self:center}}@media only screen and (max-width: 850px){.tensorsite-group--row-3up .tensorsite-group__header .tensorsite-content__subtitle{margin:0 auto 8px}}.tensorsite-group--row-3up .tensorsite-group__inner{width:100%}.tensorsite-group--row-3up .tensorsite-group__inner .tensorsite-card{max-width:calc(100% / 3 - 30px)}@media only screen and (max-width: 1279px){.tensorsite-group--row-3up .tensorsite-group__inner .tensorsite-card{flex-basis:calc(100% / 2 - 30px);max-width:calc(100% / 2 - 30px)}}@media only screen and (max-width: 850px){.tensorsite-group--row-3up .tensorsite-group__inner .tensorsite-card{flex-basis:calc(100% - 30px);max-width:calc(100% - 30px)}}.tensorsite-group--why-learn{position:relative;z-index:1}@media only screen and (max-width: 850px){.tensorsite-group--single-card .tensorsite-group__inner{max-width:600px}}.tensorsite-group--single-card .tensorsite-card{margin:15px auto;max-width:calc(66.66667% - 30px)}@media only screen and (max-width: 1279px){.tensorsite-group--single-card .tensorsite-card{max-width:calc(83.33333% - 30px)}}@media only screen and (max-width: 850px){.tensorsite-group--single-card .tensorsite-card{max-width:100%}}.tensorsite-group--full-width .tensorsite-content__title{max-width:100%}.tensorsite-group--full-width .tensorsite-content__description{width:auto}.tensorsite-group--standalone .tensorsite-container{margin-bottom:0}.tensorsite-group--community-day .tensorsite-content__small-title,.tensorsite-group--community-day .tensorsite-content__title{font-size:24px}.tensorsite-group--community-day .tensorsite-content__description p{font-family:"Google Sans",sans-serif;font-size:20px}.tensorsite-group--community-day-program .tensorsite-card--horizontal{flex-direction:column}.tensorsite-group--community-day-program .tensorsite-content:not(:last-child){padding-bottom:0}.tensorsite-hero{display:flex;margin:0 auto;max-width:1420px;padding:0 40px;position:relative;overflow-clip-margin:calc(50vw - 710px)}@media only screen and (min-width: 768px){.tensorsite-hero{padding:100px 40px 50px}}@media only screen and (max-width: 1279px){.tensorsite-hero{flex-direction:column;padding:100px 100px 50px}}@media only screen and (max-width: 1279px) and (-ms-high-contrast: none), only screen and (max-width: 1279px) and (-ms-high-contrast: active){.tensorsite-hero{display:block}}@media only screen and (max-width: 767px){.tensorsite-hero{padding:50px 20px 0}}@media only screen and (min-width: 1280px){.tensorsite-hero--river,.tensorsite-hero--river-large{align-items:center;justify-content:space-between}}.tensorsite-hero--river::before,.tensorsite-hero--river-large::before{background:url(/site-assets/images/marketing/hero-river-bg-left.svg) center/cover no-repeat;content:'';height:304px;left:-250px;position:absolute;top:0;width:443px}@media only screen and (min-width: 768px){.tensorsite-hero--river::after,.tensorsite-hero--river-large::after{background:url(/site-assets/images/marketing/hero-river-bg-right.svg) center/cover no-repeat;content:'';height:904px;position:absolute;right:-350px;top:0;width:1440px;z-index:-1}}.tensorsite-hero--river .tensorsite-hero__side--left,.tensorsite-hero--river-large .tensorsite-hero__side--left{background-color:#ff6f00;height:304px;right:calc(100% + 250px);top:0}.tensorsite-hero--river .tensorsite-hero__side--right,.tensorsite-hero--river-large .tensorsite-hero__side--right{background:linear-gradient(to bottom, #f5f6f7, rgba(255,255,255,0));height:904px;left:calc(100% + 350px);top:0}.tensorsite-hero--center .tensorsite-hero__content{flex-basis:100% !important;margin-left:0;max-width:none !important}.tensorsite-hero--center .tensorsite-hero__content .tensorsite-content{margin:0 auto;text-align:center;width:50%}@media only screen and (max-width: 767px){.tensorsite-hero--center .tensorsite-hero__content .tensorsite-content{width:auto}}.tensorsite-hero--river .tensorsite-hero__content{flex:0 0 calc(41.66667% - 30px);max-width:calc(41.66667% - 30px)}@media only screen and (max-width: 1279px){.tensorsite-hero--river .tensorsite-hero__content{flex-basis:83.33333%;margin:0 auto;max-width:83.33333%}}@media only screen and (max-width: 767px){.tensorsite-hero--river .tensorsite-hero__content{flex-basis:100%;max-width:100%}}.tensorsite-hero--river.tensorsite-hero--wider .tensorsite-hero__content{flex:auto;max-width:inherit}@media only screen and (min-width: 768px){.tensorsite-hero--river.tensorsite-hero--wider .tensorsite-hero__image{flex:0 0 35%}}@media only screen and (min-width: 768px){.tensorsite-hero--river.tensorsite-hero--wider .tensorsite-content{max-width:580px}}.tensorsite-hero--river-large{padding-left:180px;padding-right:180px}@media only screen and (max-width: 767px){.tensorsite-hero--river-large{padding:80px 20px 40px}}.tensorsite-hero--river-large::before{background:url(/site-assets/images/marketing/hero-river-bg-left-large.svg) center/cover no-repeat;height:546px;left:-450px;width:774px}.tensorsite-hero--river-large .tensorsite-hero__side--left{height:546px;right:calc(100% + 449px)}.tensorsite-hero--river-large .tensorsite-hero__image{display:none}.tensorsite-hero--image{display:block}@media only screen and (min-width: 768px){.tensorsite-hero--image{min-height:550px}}@media only screen and (max-width: 1279px){.tensorsite-hero--image{padding-left:70px;padding-right:70px}}@media only screen and (max-width: 767px){.tensorsite-hero--image{padding:50px 20px}}@media only screen and (min-width: 768px){.tensorsite-hero--image+.tensorsite-casestudy{margin-top:-90px}}.tensorsite-hero--image .tensorsite-hero__image{margin:0 auto;padding:0;position:absolute;right:-18%;top:0;width:68%}@media only screen and (max-width: 767px){.tensorsite-hero--image .tensorsite-hero__image{width:122%}.tensorsite-hero--image .tensorsite-hero__image img{max-width:100%}}@media only screen and (min-width: 768px){.tensorsite-hero--image .tensorsite-hero__content{width:33.33333%}}@media only screen and (max-width: 1279px){.tensorsite-hero--image .tensorsite-hero__content{text-align:left;width:41.66667%}}@media only screen and (max-width: 767px){.tensorsite-hero--image .tensorsite-hero__content{margin:60% 0 0;padding-top:26px;width:100%}}.tensorsite-hero--image .tensorsite-hero__content .tensorsite-content__description{font-family:"Roboto",sans-serif;font-size:16px;line-height:28px}@media only screen and (min-width: 768px){.tensorsite-hero--image .tensorsite-hero__content .tensorsite-content__description{padding-bottom:100px}}@media only screen and (min-width: 1280px){.tensorsite-hero--shape{align-items:center;justify-content:space-between;padding-bottom:0;padding-top:20px}}.tensorsite-hero--shape::before{background:url(/site-assets/images/marketing/hero-shape-bg.svg) center/cover no-repeat;content:'';height:402.25179px;position:absolute;right:-32%;top:0;width:1500px;z-index:-1}@media only screen and (max-width: 767px){.tensorsite-hero--shape::before{left:50%;right:auto;top:0;-webkit-transform:translateX(-50%);transform:translateX(-50%)}}@media only screen and (max-width: 1279px){.tensorsite-hero--shape .tensorsite-hero__content{flex-basis:66.66667%;margin:0 auto;max-width:66.66667%}}@media only screen and (max-width: 767px){.tensorsite-hero--shape .tensorsite-hero__content{flex-basis:100%;max-width:100%}}.tensorsite-hero--video{height:600px;margin-bottom:50px}@media only screen and (min-width: 1280px){.tensorsite-hero--video{padding-top:120px}}@media only screen and (max-width: 1279px){.tensorsite-hero--video{flex-direction:row}}@media only screen and (max-width: 1000px){.tensorsite-hero--video{flex-direction:column;height:auto}}@media only screen and (max-width: 767px){.tensorsite-hero--video{margin-bottom:0}}.tensorsite-hero--video::after{background:#dadada;bottom:0;content:'';height:1px;left:50%;position:absolute;-webkit-transform:translate(-50%, 0);transform:translate(-50%, 0);width:100vw;z-index:1}.tensorsite-hero--video::before{background:url(/site-assets/images/marketing/hero-video-bg.svg) top right/cover no-repeat;bottom:0;content:'';left:0;position:absolute;top:0;width:75%;z-index:1}@media only screen and (max-width: 1000px){.tensorsite-hero--video::before{display:none}}.tensorsite-hero--video .tensorsite-hero__content{position:relative;z-index:1}@media only screen and (max-width: 1279px){.tensorsite-hero--video .tensorsite-hero__content{text-align:left}}@media only screen and (min-width: 1280px){.tensorsite-hero--video .tensorsite-hero__content{max-width:calc(33.33333% - 30px)}}@media only screen and (max-width: 1000px){.tensorsite-hero--video .tensorsite-hero__content{padding-bottom:50px;text-align:center}}@media only screen and (min-width: 768px){.tensorsite-hero--video .tensorsite-hero__content .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:46px;font-weight:700;line-height:56px}}@media only screen and (max-width: 1000px){.tensorsite-hero--video .tensorsite-content__cta-wrapper{justify-content:center}}.tensorsite-hero--video .tensorsite-hero__image{bottom:0;left:0;margin-bottom:0;margin-top:0;padding:0;position:absolute;right:0;top:0}@media only screen and (min-width: 1441px){.tensorsite-hero--video .tensorsite-hero__image{margin-left:2px;margin-right:calc((100vw - 1420px) / -2)}}@media only screen and (max-width: 1000px){.tensorsite-hero--video .tensorsite-hero__image{height:45vw;margin-left:-100px;margin-right:-100px;min-height:350px;position:relative}.tensorsite-hero--video .tensorsite-hero__image.tensorsite-hero__image--has-mobile .tensorsite-hero__image--desktop{display:none}}.tensorsite-hero--video .tensorsite-hero__image--desktop,.tensorsite-hero--video .tensorsite-hero__image--mobile{background:center right 45% / cover no-repeat;bottom:0;left:0;position:absolute;right:0;top:0}.tensorsite-hero--video .tensorsite-hero__image--mobile{display:none}@media only screen and (max-width: 1000px){.tensorsite-hero--video .tensorsite-hero__image--mobile{display:block}}.tensorsite-hero--video .tensorsite-hero__side--left{background-color:#fff;height:100%;right:100%;top:0;z-index:1}.tensorsite-hero--video .tensorsite-hero__play-button{bottom:0;position:absolute;right:20%;top:0;z-index:2}@media only screen and (max-width: 1000px){.tensorsite-hero--video .tensorsite-hero__play-button{left:0;right:0}}@media only screen and (min-width: 1280px){.tensorsite-hero--community{padding-bottom:20px;padding-right:60px;padding-top:20px}.tensorsite-hero--community .tensorsite-hero__content{max-width:400px}}.tensorsite-hero--narrow{min-height:440px}.tensorsite-hero--narrow .tensorsite-hero__content .tensorsite-content{width:500px}@media only screen and (max-width: 1279px){.tensorsite-hero--narrow .tensorsite-hero__content .tensorsite-content{width:auto}}@media only screen and (max-width: 767px){.tensorsite-hero--narrow .tensorsite-hero__content .tensorsite-content{padding:0 15px;width:auto}}@media only screen and (max-width: 767px){.tensorsite-hero--narrow .tensorsite-hero__content .tensorsite-hero__buttons{padding:0 15px}}@media only screen and (min-width: 1280px){.tensorsite-hero--community-day{padding:0px}.tensorsite-hero--community-day .tensorsite-hero__content{flex:0 0 50%;max-width:50%}.tensorsite-hero--community-day .tensorsite-hero__content .tensorsite-content__title{font-size:40px;line-height:52px}}.tensorsite-hero.hero-library-extensions::before{top:-25px}.tensorsite-hero__side{position:absolute;width:calc((100vw - 1440px) / 2)}@media only screen and (min-width: 1280px){.tensorsite-hero__content{margin-left:calc(8.33333% + (30px / 2))}.tensorsite-hero--shape .tensorsite-hero__content{max-width:400px}}@media only screen and (max-width: 1279px){.tensorsite-hero__content{text-align:center}}@media only screen and (min-width: 768px){.tensorsite-hero__content{flex:0 0 50%}}.tensorsite-hero__content .tensorsite-content{padding:0}@media only screen and (max-width: 767px){.tensorsite-hero__content .tensorsite-content{padding:0 15px}}.tensorsite-hero__content .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:36px;font-weight:700;line-height:48px}@media only screen and (max-width: 767px){.tensorsite-hero__content .tensorsite-content__title{font-size:28px;line-height:36px;font-weight:700;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px){.tensorsite-hero__content .tensorsite-content__title{font-size:28px;line-height:36px;font-weight:700;letter-spacing:-0.25px}}.tensorsite-hero__content .tensorsite-content__description{font-size:18px;line-height:30px;color:#425066}.tensorsite-hero__content .tensorsite-content__description a{color:#425066}.tensorsite-hero__content .tensorsite-content__cta-wrapper{margin-top:8px}@media only screen and (max-width: 1279px){.tensorsite-hero__content .tensorsite-content__cta-wrapper .tensorsite-content__cta{align-self:center}}.tensorsite-hero__buttons{-webkit-column-gap:20px;-moz-column-gap:20px;column-gap:20px;display:grid;grid-template-rows:-webkit-max-content -webkit-max-content;grid-template-rows:max-content max-content;margin:24px auto 20px;max-width:300px}@media only screen and (min-width: 768px){.tensorsite-hero__buttons{grid-auto-flow:column;grid-template-columns:1fr 1fr 1fr;max-width:none}}@media only screen and (max-width: 1279px){.tensorsite-hero__buttons{justify-content:center}}.tensorsite-hero__buttons--fixed-width{grid-template-columns:auto}.tensorsite-hero__buttons--fixed-width .tensorsite-hero__button-column{width:160px}.tensorsite-hero__buttons--fixed-width .tensorsite-hero__button{width:100%}.tensorsite-hero__button{align-items:center;display:flex;justify-content:center;text-align:center}.tensorsite-hero__button-subtitle{font-size:12px;line-height:18px;color:#616161}@media only screen and (max-width: 767px){.tensorsite-hero__image{margin:20px -8%}}@media only screen and (min-width: 768px){.tensorsite-hero__image{flex:0 0 50%}}@media only screen and (max-width: 1279px){.tensorsite-hero__image{margin:20px auto;text-align:center}}@media only screen and (min-width: 1280px){.tensorsite-hero__image{padding-left:25px}.tensorsite-hero__image.video-wrapper{padding-right:10%}}@media only screen and (max-width: 767px){.tensorsite-hero__image img{max-width:500px;width:100%}}@media only screen and (min-width: 768px){.tensorsite-hero__image img{min-width:480px}}.tensorsite-hero--redesign .tensorsite-hero__content .tensorsite-content{width:80%}@media only screen and (max-width: 767px){.tensorsite-hero--redesign .tensorsite-hero__content .tensorsite-content{width:auto}}.tensorsite-hero--redesign .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:52px;font-weight:500;line-height:62px;letter-spacing:-0.5px;color:#425066}@media only screen and (max-width: 1279px){.tensorsite-hero--redesign .tensorsite-content__title{font-size:40px;line-height:48px}}@media only screen and (max-width: 767px){.tensorsite-hero--redesign .tensorsite-content__title{font-size:30px;line-height:36px;letter-spacing:-0.25px}}@media only screen and (max-width: 767px){.tensorsite-hero--redesign .tensorsite-content__title{text-align:left}}.tensorsite-hero--redesign .tensorsite-content__description{font-family:"Roboto",sans-serif;font-size:18px;font-weight:400;line-height:28px;color:#616161}@media only screen and (max-width: 767px){.tensorsite-hero--redesign .tensorsite-content__description{text-align:left}}.tensorsite-partner-detail{background:#f5f6f7}.tensorsite-partner-detail .tensorsite-container{margin:0 auto;max-width:1420px;padding:0 40px}@media only screen and (max-width: 767px){.tensorsite-partner-detail .tensorsite-container{padding:0 20px}}.tensorsite-partner-detail .tensorsite-container::after{clear:both;content:'';display:table}.tensorsite-partner-detail+.tensorsite-footer{margin-top:0}.tensorsite-partner-detail__section{float:left;margin-left:calc(8.33333% + (30px / 2));margin-right:15px;padding:50px 0;position:relative;width:calc(58.33333% - 30px)}@media only screen and (max-width: 1279px){.tensorsite-partner-detail__section{margin-left:15px;padding:30px 0}}@media only screen and (max-width: 1000px){.tensorsite-partner-detail__section{margin-left:0;margin-right:0;width:100%}.tensorsite-partner-detail__section:first-child::after{content:none}}.tensorsite-partner-detail__section::after{border-bottom:1px solid #dadada;bottom:0;content:'';height:1px;left:0;position:absolute;right:0}@media only screen and (max-width: 1000px){.tensorsite-partner-detail__section::after{left:15px;right:15px}}.tensorsite-partner-detail__section:last-child{padding-bottom:0}.tensorsite-partner-detail__section:last-child::after,.tensorsite-partner-detail__section--secondary::after{content:none}.tensorsite-partner-detail__section--secondary{float:right;margin:0 15px;padding-top:120px;width:calc(25% - (30px))}@media only screen and (max-width: 1279px){.tensorsite-partner-detail__section--secondary{padding-top:100px;width:calc(33.33333% - 30px)}}@media only screen and (max-width: 1000px){.tensorsite-partner-detail__section--secondary{float:left;margin:0;padding:0 15px 60px;width:100%}.tensorsite-partner-detail__section--secondary::after{content:''}}@media only screen and (max-width: 767px){.tensorsite-partner-detail__section--secondary{padding:0 15px 60px}}.tensorsite-partner-detail__section--secondary .tensorsite-list+.tensorsite-list{margin-top:30px}.tensorsite-partner-detail__section--links .tensorsite-partner-detail__section-inner .tensorsite-content:first-child,.tensorsite-partner-detail__section--links .tensorsite-partner-detail__section-inner .tensorsite-content+.tensorsite-content{padding-top:0}.tensorsite-partner-detail__section--lists .tensorsite-partner-detail__section-inner{display:flex;flex-wrap:wrap;justify-content:space-between;padding:0}@media only screen and (max-width: 1000px){.tensorsite-partner-detail__section--lists .tensorsite-partner-detail__section-inner{padding:0 15px}}.tensorsite-partner-detail__section--lists .tensorsite-partner-detail__section-inner .tensorsite-list{flex:0 0 calc(50% - (30px / 2));margin-bottom:30px}@media only screen and (max-width: 1000px){.tensorsite-partner-detail__section--lists .tensorsite-partner-detail__section-inner .tensorsite-list{flex:0 0 100%}}.tensorsite-partner-detail__section--text .tensorsite-content__image-wrapper{background-position:center;background-size:cover;margin:0 auto 30px;padding-top:56.75%;width:100%}@media only screen and (max-width: 1000px){.tensorsite-partner-detail__section--text .tensorsite-content__image-wrapper{width:calc(100% - 30px)}}.tensorsite-partner-detail__section .tensorsite-content{padding-left:0;padding-right:0}@media only screen and (max-width: 1000px){.tensorsite-partner-detail__section .tensorsite-content{padding-left:15px;padding-right:15px}}.tensorsite-partner-detail .tensorsite-list{font-size:14px;line-height:22px}.tensorsite-partner-detail .tensorsite-list__description p:last-child,.tensorsite-partner-detail .tensorsite-list__item:last-child{margin-bottom:0}.tensorsite-partner-detail-hero{padding:70px 0}.tensorsite-partner-detail-hero .tensorsite-container{display:flex;justify-content:space-between;margin:0 auto;max-width:1420px;padding:0 40px}@media only screen and (max-width: 1000px){.tensorsite-partner-detail-hero .tensorsite-container{flex-wrap:wrap}}@media only screen and (max-width: 767px){.tensorsite-partner-detail-hero .tensorsite-container{padding:0 20px}}.tensorsite-partner-detail-hero__main{display:flex;margin-left:calc(8.33333% + (30px / 2));margin-right:15px;width:calc(58.33333% - 30px)}@media only screen and (max-width: 1279px){.tensorsite-partner-detail-hero__main{margin-left:15px;width:calc(66.66667% + 30px)}}@media only screen and (max-width: 1000px){.tensorsite-partner-detail-hero__main{flex-wrap:wrap;margin-left:0;margin-right:0;width:100%}}@media only screen and (max-width: 767px){.tensorsite-partner-detail-hero__main{padding:0 15px}}.tensorsite-partner-detail-hero__image{display:flex;flex:0 0 50%;flex-direction:column;justify-content:center;padding-right:50px}.tensorsite-partner-detail-hero__image-wrapper{display:flex;flex-direction:column;height:155px;justify-content:center}.tensorsite-partner-detail-hero__image img{display:block;margin-right:auto;max-height:100%;max-width:252px}@media only screen and (max-width: 1000px){.tensorsite-partner-detail-hero__image{flex:0 0 100%;flex-direction:row;margin-bottom:26px;padding-right:0}.tensorsite-partner-detail-hero__image-wrapper{height:auto;margin:0 auto;max-height:100px;max-width:300px}.tensorsite-partner-detail-hero__image img{margin:0 auto}}.tensorsite-partner-detail-hero__content{padding:30px 0 30px 50px;position:relative}.tensorsite-partner-detail-hero__content::before{background:#dadada;content:'';height:100%;left:0;position:absolute;top:0;width:1px}@media only screen and (min-width: 768px){.tensorsite-partner-detail-hero__content .tensorsite-content{padding-left:0;padding-right:0}}.tensorsite-partner-detail-hero__content .tensorsite-content__subtitle{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:700;line-height:26px}@media only screen and (max-width: 1279px){.tensorsite-partner-detail-hero__content{padding-left:30px;padding-right:30px}}@media only screen and (max-width: 1000px){.tensorsite-partner-detail-hero__content{flex:0 0 100%;padding:0;text-align:center}.tensorsite-partner-detail-hero__content::before{display:block;height:1px;margin:0 auto;position:relative;width:30%}.tensorsite-partner-detail-hero__content .tensorsite-content__subtitle{align-self:center}}.tensorsite-partner-detail-hero__secondary{flex:0 0 auto;margin:0 15px;padding:30px 0;width:calc(25% - (30px))}@media only screen and (max-width: 1279px){.tensorsite-partner-detail-hero__secondary{width:calc(33.33333% - 30px)}}@media only screen and (max-width: 1000px){.tensorsite-partner-detail-hero__secondary{margin:0 auto;max-width:100%;padding:0 15px;width:auto}}@media only screen and (max-width: 767px){.tensorsite-partner-detail-hero__secondary{padding:30px 15px 0}}.tensorsite-partner-detail-hero__secondary .tensorsite-list{font-size:14px;line-height:22px;background:#f5f6f7}.tensorsite-partner-detail-hero__secondary .tensorsite-list__description p:last-child,.tensorsite-partner-detail-hero__secondary .tensorsite-list__item:last-child{margin-bottom:0}.tensorsite-side-side .tensorsite-container{margin:0 auto;max-width:1420px;padding:80px 40px}@media only screen and (max-width: 767px){.tensorsite-side-side .tensorsite-container{padding:80px 20px}}.tensorsite-side-side .tensorsite-container--no-padding{padding-top:0;padding-bottom:0}.tensorsite-side-side--condensed-bottom .tensorsite-container{padding-bottom:60px}.tensorsite-side-side--no-bottom .tensorsite-container{padding-bottom:0}.tensorsite-side-side .tensorsite-content{padding-left:0;padding-right:0}@media only screen and (max-width: 767px){.tensorsite-side-side .tensorsite-content{padding:26px 0}}.tensorsite-side-side .tensorsite-content p{margin:10px 0}.tensorsite-side-side .tensorsite-content__title{margin-bottom:24px}.tensorsite-side-side .tensorsite-content__image-wrapper{background-position:center;background-size:cover;border-radius:10px;height:100%}@media only screen and (max-width: 1000px){.tensorsite-side-side .tensorsite-content__image-wrapper{height:300px;margin:0}}.tensorsite-side-side .tensorsite-content__image-wrapper.contain-image{background-size:contain;width:100%;background-position:center;background-repeat:no-repeat}.tensorsite-side-side--gray{background-color:#f5f6f7}.tensorsite-side-side--multi-partial .tensorsite-side-side-wrapper{justify-content:space-between}@media only screen and (max-width: 767px){.tensorsite-side-side--multi-partial .tensorsite-side-side-wrapper{display:block}}@media only screen and (min-width: 768px){.tensorsite-side-side--multi-partial .tensorsite-side-side-wrapper .tensorsite-side-side__secondary-section{margin-top:15px}}@media only screen and (max-width: 767px){.tensorsite-side-side--multi-partial .tensorsite-side-side-wrapper .tensorsite-side-side__secondary-section{border-top:1px solid #dadada;margin-top:50px;padding-top:50px}}.tensorsite-side-side--multi-partial .tensorsite-content{height:auto;padding-left:0;padding-right:0}.tensorsite-side-side--multi-partial .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px;margin-bottom:0}.tensorsite-side-side--multi-partial .tensorsite-card{flex-basis:100%;margin-left:0;margin-right:0}@media only screen and (min-width: 768px){.tensorsite-side-side--multi-partial .tensorsite-card{max-width:100%}}@media only screen and (max-width: 767px){.tensorsite-side-side--multi-partial .tensorsite-card{max-width:100%}}.tensorsite-side-side--multi-partial .tensorsite-card .tensorsite-content{padding:26px 30px}.tensorsite-side-side--multi-partial .tensorsite-card .tensorsite-content__image-wrapper{border-radius:10px 10px 0 0;height:auto}.tensorsite-side-side--multi-partial .tensorsite-list--no-background .tensorsite-list__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px}@media only screen and (max-width: 1279px){.tensorsite-side-side--centered .tensorsite-side-side__main-section,.tensorsite-side-side--centered .tensorsite-side-side__secondary-section{flex-basis:calc(41.66667% - 30px);max-width:calc(41.66667% - 30px)}}@media only screen and (max-width: 1000px){.tensorsite-side-side--centered .tensorsite-side-side__main-section,.tensorsite-side-side--centered .tensorsite-side-side__secondary-section{flex-basis:calc(100% - 30px);max-width:calc(100% - 30px)}}.tensorsite-side-side--centered .tensorsite-side-side__main-section{margin-left:calc(4.16667% + (30px / 2))}@media only screen and (max-width: 1000px){.tensorsite-side-side--centered .tensorsite-side-side__main-section{margin-left:15px}}.tensorsite-side-side--centered .tensorsite-side-side__secondary-section{margin-right:calc(4.16667% + (30px / 2))}@media only screen and (max-width: 1000px){.tensorsite-side-side--centered .tensorsite-side-side__secondary-section{margin-right:15px}}.tensorsite-side-side--centered .tensorsite-side-side-wrapper--reverse .tensorsite-side-side__main-section{margin-right:calc(4.16667% + (30px / 2))}@media only screen and (max-width: 1000px){.tensorsite-side-side--centered .tensorsite-side-side-wrapper--reverse .tensorsite-side-side__main-section{margin-right:15px}}.tensorsite-side-side--centered .tensorsite-side-side-wrapper--reverse .tensorsite-side-side__secondary-section{margin-left:calc(4.16667% + (30px / 2))}@media only screen and (max-width: 1000px){.tensorsite-side-side--centered .tensorsite-side-side-wrapper--reverse .tensorsite-side-side__secondary-section{margin-left:15px}}.tensorsite-side-side-wrapper{display:flex;flex:1 1 auto;flex-wrap:wrap;justify-content:space-between}.tensorsite-side-side-wrapper--reverse{flex-direction:row-reverse}.tensorsite-side-side-wrapper .tensorsite-side-side__secondary-section{margin-left:calc(8.33333% + (30px / 2))}@media only screen and (max-width: 1000px){.tensorsite-side-side-wrapper .tensorsite-side-side__secondary-section{margin-left:15px}}.tensorsite-side-side__main-section,.tensorsite-side-side__secondary-section{flex-basis:calc(41.66667% - 30px);margin:15px;max-width:calc(41.66667% - 30px);z-index:1}@media only screen and (max-width: 1000px){.tensorsite-side-side__main-section,.tensorsite-side-side__secondary-section{flex-basis:calc(100% - 30px);max-width:calc(100% - 30px)}}.tensorsite-side-side__main-section{margin-left:calc(8.33333% + (30px / 2));margin-right:15px}@media only screen and (max-width: 1279px){.tensorsite-side-side__main-section{flex-basis:calc(50% - 30px);margin-left:15px;max-width:calc(50% - 30px)}}@media only screen and (max-width: 1000px){.tensorsite-side-side__main-section{flex-basis:calc(100% - 30px);margin-left:15px;max-width:calc(100% - 30px)}}.tensorsite-side-side__main-section .tensorsite-content .tensorsite-content__description{margin-bottom:24px}.tensorsite-side-side__main-section .tensorsite-content .tensorsite-content__description:last-child{margin-bottom:0}.tensorsite-side-side__text-wrapper--white-bg{background-color:#fff;border:1px #ccc solid;border-radius:10px;flex-basis:calc(40% - 30px);margin-bottom:26px;padding:0}@media only screen and (max-width: 1000px){.tensorsite-side-side__text-wrapper--white-bg{flex-basis:calc(100% - 30px)}}.tensorsite-side-side__text-wrapper--white-bg .tensorsite-content{padding:40px}.tensorsite-side-side__text-wrapper--white-bg .tensorsite-content__description{margin-bottom:24px}.tensorsite-side-side__text-wrapper--white-bg .tensorsite-content__description strong{color:#425066}@media only screen and (min-width: 1001px){.tensorsite-side-side__text-wrapper--short{margin-top:140px}}.tensorsite-side-side--why-bg,.tensorsite-side-side--learn-bg,.tensorsite-side-side--home-bg{position:relative}.tensorsite-side-side--why-bg::before,.tensorsite-side-side--why-bg::after,.tensorsite-side-side--learn-bg::before,.tensorsite-side-side--learn-bg::after,.tensorsite-side-side--home-bg::before,.tensorsite-side-side--home-bg::after{background:#f5f6f7;content:'';position:absolute;width:calc((100vw - 1794px) / 2)}.tensorsite-side-side--why-bg .tensorsite-side-side__background,.tensorsite-side-side--learn-bg .tensorsite-side-side__background,.tensorsite-side-side--home-bg .tensorsite-side-side__background{background:url(/site-assets/images/marketing/why/whytf-bg.svg) center/contain no-repeat;content:'';height:1932px;left:50%;position:absolute;top:60%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);width:1794px;z-index:-1}.tensorsite-side-side--why-bg::before{bottom:-411px;left:50%;top:-643px;-webkit-transform:translateX(-100%) translateX(-897px);transform:translateX(-100%) translateX(-897px)}.tensorsite-side-side--why-bg::after{bottom:-751px;left:50%;top:284px;-webkit-transform:translateX(896px);transform:translateX(896px)}.tensorsite-side-side--learn-bg::before{bottom:-324px;left:50%;top:-513px;-webkit-transform:translateX(-100%) translateX(-897px);transform:translateX(-100%) translateX(-897px)}.tensorsite-side-side--learn-bg::after{bottom:-664px;left:50%;top:415px;-webkit-transform:translateX(896px);transform:translateX(896px)}.tensorsite-side-side--home-bg::before{bottom:-329px;left:50%;top:-521px;-webkit-transform:translateX(-100%) translateX(-895px);transform:translateX(-100%) translateX(-895px);z-index:-1}.tensorsite-side-side--home-bg::after{bottom:-670px;left:50%;top:406px;-webkit-transform:translateX(895px);transform:translateX(895px);z-index:-1}.tensorsite-step{margin:0 auto;max-width:1140px}@media only screen and (min-width: 768px){.tensorsite-step{padding:0 180px}}@media only screen and (max-width: 1279px){.tensorsite-step{flex-direction:column;padding:0 100px}}@media only screen and (max-width: 1279px) and (-ms-high-contrast: none), only screen and (max-width: 1279px) and (-ms-high-contrast: active){.tensorsite-step{display:block}}@media only screen and (max-width: 767px){.tensorsite-step{padding:35px 35px 0}}.tensorsite-step__title{color:#425066}.tensorsite-step .tensorsite-container{padding:0}.tensorsite-step .tensorsite-group__divider{margin:0 auto;width:100%}@media only screen and (max-width: 1000px){.tensorsite-tab-group .tensorsite-container{padding:0;width:100%}}.tensorsite-tab-group .tensorsite-button-tab{max-width:1090px}.tensorsite-tab-group .tensorsite-top-tab{max-width:1200px;min-height:580px}@media only screen and (max-width: 1000px){.tensorsite-tab-group .tensorsite-top-tab__tabs::after{left:85px}}@media only screen and (max-width: 767px){.tensorsite-tab-group .tensorsite-top-tab__tabs::after{left:45px}}@media only screen and (max-width: 1000px){.tensorsite-tab-group .tensorsite-top-tab__tabs{padding:0 67px}}@media only screen and (max-width: 767px){.tensorsite-tab-group .tensorsite-top-tab__tabs{padding:0 27px}}@media only screen and (-ms-high-contrast: none), (-ms-high-contrast: active){.tensorsite-tab-group .tensorsite-top-tab__content--inner{display:block;padding:0 30px;width:30%}}.tensorsite-tab-group--text-heavy .tensorsite-top-tab__content--inner .tensorsite-top-tab__content__text{flex-basis:calc(60% - 30px)}@media only screen and (max-width: 1000px){.tensorsite-tab-group--text-heavy .tensorsite-top-tab__content--inner .tensorsite-top-tab__content__text{order:2}}.tensorsite-tab-group--text-heavy .tensorsite-top-tab__content--inner .tensorsite-top-tab__image{flex-basis:calc(40% - 30px)}@media only screen and (max-width: 1000px){.tensorsite-tab-group--text-heavy .tensorsite-top-tab__content--inner .tensorsite-top-tab__content__text,.tensorsite-tab-group--text-heavy .tensorsite-top-tab__content--inner .tensorsite-top-tab__image{flex-basis:calc(100% - 30px)}}.tensorsite-tab-group--equal-tab-width .tensorsite-top-tab__tabs label{flex-basis:100%}.tensorsite-tab-group--extra-margin-bottom{margin-bottom:160px}@media only screen and (max-width: 1279px){.tensorsite-tab-group--extra-margin-bottom{margin-bottom:80px}}.tensorsite-diagram{opacity:0;position:relative}.tensorsite-diagram--loaded{opacity:1}.tensorsite-diagram .tensorsite-content__cta{margin-top:16px;font-family:"Google Sans",sans-serif;font-size:14px;font-weight:700;line-height:19.6px}.tensorsite-diagram .tensorsite-content__cta-icon span:before,.tensorsite-diagram .tensorsite-content__cta-icon span:after{height:14px;width:14px}.tensorsite-diagram__dimmer{background-color:rgba(255,255,255,0.5);height:100%;position:absolute;width:100%;z-index:-1}.tensorsite-diagram__dimmer.active{z-index:2}.tensorsite-diagram__dimmer.scroll-active{cursor:ew-resize}.tensorsite-diagram__scrollbox{box-sizing:content-box;overflow-x:auto}.tensorsite-diagram__scrollbox.grabbing *{cursor:grabbing;cursor:-webkit-grabbing}.tensorsite-diagram__overlay{background:linear-gradient(90deg, rgba(255,255,255,0), #fff);height:calc(100% - 15px);opacity:0;pointer-events:none;position:absolute;right:0;transition:opacity 500ms;width:20vw;z-index:4}.tensorsite-diagram__overlay.active{opacity:1}.tensorsite-diagram .tensorsite-container{display:flex;position:relative}.tensorsite-diagram .tensorsite-container.scroll-active{cursor:ew-resize}.tensorsite-diagram .tensorsite-container.scroll-active .last-section{padding-right:50px}.tensorsite-diagram p{margin:0}.tensorsite-diagram__section{box-sizing:border-box;display:inline-block}.tensorsite-diagram__section hr{background:#dadce0;border:0;height:1px;margin:16px auto;width:calc(100% - (16px * 2))}.tensorsite-diagram__section.first-section hr,.tensorsite-diagram__section.last-section hr{width:calc(100% - (16px))}.tensorsite-diagram__section.first-section hr{margin-left:0}.tensorsite-diagram__section.last-section hr{margin-right:0}.tensorsite-diagram__title{position:relative;text-align:center;font-family:"Google Sans",sans-serif;font-size:14px;font-weight:700;line-height:18px}.tensorsite-diagram__title.active{z-index:3}.tensorsite-diagram__cols{display:flex}.tensorsite-diagram__col{align-items:center;display:flex;flex-direction:column;padding:0 16px}.tensorsite-diagram__col.first-col{padding-left:0}.tensorsite-diagram__col.last-col{padding-right:0}.tensorsite-diagram__nodes{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:40px;min-height:252px}.tensorsite-diagram__product.active{z-index:3}.tensorsite-diagram__product .tensorsite-content__cta{align-self:center;margin-top:0;max-width:160px;min-height:154px;text-align:center}.tensorsite-diagram__product .cta-image{align-items:center;border:1px solid #e3e5e8;border-radius:50%;display:flex;height:100px;justify-content:center;margin:0 auto;margin-bottom:16px;width:100px}.tensorsite-diagram__product .cta-image img{max-height:64px;max-width:64px}.tensorsite-diagram .box{background:#fff;border:1px solid transparent;border-radius:6px;box-shadow:0px 2px 8px rgba(66,80,102,0.16);box-sizing:border-box;cursor:pointer;height:52px;margin:16px 0;min-width:196px;outline:none;overflow:hidden;position:relative;text-align:center;transition:all ease-in-out 0.2s;width:100%;z-index:1}.tensorsite-diagram .box .position{transition:all ease-in-out 0.2s}.tensorsite-diagram .box:hover,.tensorsite-diagram .box:focus,.tensorsite-diagram .box.enlarged{box-shadow:0px 2px 12px rgba(66,80,102,0.24)}.tensorsite-diagram .box:hover .position,.tensorsite-diagram .box:focus .position,.tensorsite-diagram .box.enlarged .position{color:#ff6f00}.tensorsite-diagram .box.enlarged,.tensorsite-diagram .box:focus{border:1px solid #ff6f00}.tensorsite-diagram .position{font-family:"Google Sans",sans-serif;font-size:14px;font-weight:700;line-height:18px;margin-bottom:16px}.tensorsite-diagram .additionalInfo{font-size:14px;line-height:22px}.tensorsite-diagram .information{padding:16px}.tfx-diagram-arrow{display:none}.tfx-arrow--up{-webkit-transform:translateY(50%) translateX(-3%);transform:translateY(50%) translateX(-3%)}.tfx-arrow--right{-webkit-transform:translateX(-64%) translateY(2%);transform:translateX(-64%) translateY(2%)}.tfx-arrow--down{-webkit-transform:translateY(-50%) translateX(3%);transform:translateY(-50%) translateX(3%)}.jsplumb-draggable{pointer-events:none}.tensorsite-adjacent-partials-wrapper{display:flex}@media only screen and (max-width: 767px){.tensorsite-adjacent-partials-wrapper{flex-direction:column}}@media only screen and (max-width: 767px){.tensorsite-adjacent-partials-wrapper--mobile-reverse{flex-direction:column-reverse}}.tensorsite-adjacent-partials__main-section,.tensorsite-adjacent-partials__secondary-section{width:100%}@media only screen and (max-width: 767px){.tensorsite-adjacent-partials__main-section .tensorsite-content__cta-wrapper,.tensorsite-adjacent-partials__main-section .tensorsite-content__button,.tensorsite-adjacent-partials__secondary-section .tensorsite-content__cta-wrapper,.tensorsite-adjacent-partials__secondary-section .tensorsite-content__button{align-self:center}}@media only screen and (min-width: 1280px){.tensorsite-adjacent-partials .tensorsite-container--redesign-margin{padding:0 132px}}.tensorsite-blog-carousel--gray{background-color:#f5f6f7;padding-bottom:20px;padding-top:20px}@media only screen and (max-width: 767px){.tensorsite-blog-carousel{margin:0;padding:0}}.tensorsite-blog-carousel .tensorsite-content{align-items:center}.tensorsite-blog-carousel__card{background:#fff;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);margin:auto;overflow:hidden;padding:50px 20px;text-align:center}@media only screen and (max-width: 767px){.tensorsite-blog-carousel__card{background:none;border-radius:0px;box-shadow:none;padding:0px}}.tensorsite-blog-carousel__card .tensorsite-content__description{max-width:600px}.tensorsite-blog-carousel__section{padding:30px 20px;position:relative}.tensorsite-blog-carousel__section::after{content:"";position:absolute;bottom:0;right:20px;pointer-events:none;background-image:linear-gradient(to right, rgba(255,255,255,0), #fff 100%);width:2em;height:100%}@media only screen and (max-width: 767px){.tensorsite-blog-carousel__section{padding:0 20px}.tensorsite-blog-carousel__section::before,.tensorsite-blog-carousel__section::after{content:none}}.tensorsite-blog-carousel__section ul{align-items:stretch;padding:20px;gap:16px}.tensorsite-blog-carousel__section li{background:#fff;width:25%;width:calc(25% - 10px)}@media only screen and (max-width: 1279px){.tensorsite-blog-carousel__section li{width:calc(50% - 10px)}}@media only screen and (max-width: 767px){.tensorsite-blog-carousel__section li{width:100%}}.tensorsite-blog-carousel__section li:first-child{padding-left:20px}.tensorsite-blog-carousel__section li:nth-last-child(2){padding-right:20px}.tensorsite-blog-carousel__section li:first-child,.tensorsite-blog-carousel__section li:nth-last-child(2){width:calc(25% + 10px)}@media only screen and (max-width: 1279px){.tensorsite-blog-carousel__section li:first-child,.tensorsite-blog-carousel__section li:nth-last-child(2){width:calc(50% + 10px)}}@media only screen and (max-width: 767px){.tensorsite-blog-carousel__section li:first-child,.tensorsite-blog-carousel__section li:nth-last-child(2){width:100%}}@media only screen and (max-width: 767px){.tensorsite-blog-carousel__section li{padding:0}.tensorsite-blog-carousel__section li:first-child{padding-left:0}.tensorsite-blog-carousel__section li:nth-last-child(2){padding-right:0}}.tensorsite-blog-carousel__wrapper{display:flex;flex-direction:column;gap:12px;padding:30px;text-align:left;border-radius:10px;border:none;border:1px solid #DADCE0;height:100%}.tensorsite-blog-carousel__wrapper:hover,.tensorsite-blog-carousel__wrapper:focus{box-shadow:0px 4px 14px rgba(0,0,0,0.25)}.tensorsite-blog-carousel__wrapper .tensorsite-blog-carousel__eyebrow{font-family:"Roboto",sans-serif;font-size:14px;font-weight:400;line-height:20px;color:#818181;letter-spacing:0.5px;text-transform:uppercase;margin:0}.tensorsite-blog-carousel__wrapper .tensorsite-blog-carousel__title{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:28px;color:#425066;transition:color .2s linear}.tensorsite-blog-carousel__wrapper .tensorsite-blog-carousel__title:hover,.tensorsite-blog-carousel__wrapper .tensorsite-blog-carousel__title:focus{color:#ff6f00}.tensorsite-blog-carousel__wrapper .tensorsite-blog-carousel__title::after{content:'';display:block;border-bottom:1px solid #ff6f00}.tensorsite-blog-carousel__wrapper .tensorsite-blog-carousel__description{font-size:16px;font-weight:400;line-height:24px;color:#616161;margin-top:0px;max-height:100px}.tensorsite-blog-carousel__ctas{display:flex;justify-content:space-evenly;padding:0 10%}@media only screen and (max-width: 767px){.tensorsite-blog-carousel__ctas{flex-direction:column;padding:0}}.tensorsite-blog-carousel__ctas>a{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:28px;color:#425066;transition:color .2s linear;text-align:center;width:100%}.tensorsite-blog-carousel__ctas>a:hover,.tensorsite-blog-carousel__ctas>a:focus{color:#ff6f00}.tensorsite-blog-carousel__footer .tensorsite-container{margin:26px 0}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-container{padding:24px 20px}}.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:48px;font-weight:500;line-height:56px;letter-spacing:-0.5px;color:#425066;max-width:900px}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__title{font-size:32px;line-height:38px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__title{font-size:28px;line-height:36px;letter-spacing:-0.25;font-weight:500}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:48px;font-weight:500;line-height:56px;letter-spacing:-0.5px;color:#425066;text-align:left;padding-bottom:0}}@media only screen and (max-width: 767px) and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__title{font-size:32px;line-height:38px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 767px) and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__title{font-size:28px;line-height:36px;letter-spacing:-0.25;font-weight:500}}.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__small-title{font-family:"Google Sans",sans-serif;font-size:36px;font-weight:400;line-height:44px;letter-spacing:-0.25px;color:#425066;max-width:-webkit-max-content;max-width:max-content}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__small-title{font-size:20px;line-height:28px;font-weight:500;letter-spacing:0px}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__small-title{font-size:24px;line-height:36px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__small-title{font-family:"Google Sans",sans-serif;font-size:48px;font-weight:500;line-height:56px;letter-spacing:-0.5px;color:#425066}}@media only screen and (max-width: 1279px) and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__small-title{font-size:32px;line-height:38px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px) and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__small-title{font-size:28px;line-height:36px;letter-spacing:-0.25;font-weight:500}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content__small-title{text-align:left}}.tensorsite-side-side--redesign .tensorsite-side-side__secondary-section{margin-top:0px;margin-bottom:0px;width:600px;margin:0px !important;flex-basis:50%}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__secondary-section{flex-basis:calc(100% - 30px);max-width:calc(100% - 30px);margin-right:0px}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__secondary-section{flex-basis:calc(100%);max-width:calc(100%);margin-right:0px}}.tensorsite-side-side--redesign .tensorsite-side-side__secondary-section .tensorsite-content__image-wrapper{padding-top:48.5% !important;background-repeat:no-repeat;border-radius:0}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__secondary-section .tensorsite-content__image-wrapper{height:200px}}.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content{padding-bottom:80px}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-group__header .tensorsite-content{padding-bottom:24px}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign.home-join-tf .tensorsite-group__header .tensorsite-content{padding-bottom:12px}}.tensorsite-side-side--redesign .tensorsite-side-side-wrapper{justify-content:space-around}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side-wrapper{flex-wrap:nowrap}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side-wrapper{flex-wrap:wrap-reverse;flex-direction:row;justify-content:center}}.tensorsite-side-side--redesign .tensorsite-side-side-wrapper.tensorsite-side-side-wrapper--one-way{justify-content:space-between}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side-wrapper.tensorsite-side-side-wrapper--one-way .tensorsite-side-side__secondary-section{max-width:50%}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side-wrapper.tensorsite-side-side-wrapper--one-way .tensorsite-side-side__secondary-section{max-width:100%}}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side-wrapper.tensorsite-side-side-wrapper--one-way{flex-wrap:nowrap;gap:20px}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side-wrapper.tensorsite-side-side-wrapper--one-way{flex-wrap:wrap}}.tensorsite-side-side--redesign.card .tensorsite-side-side-wrapper{background:#fff;padding:80px;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1)}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign.card .tensorsite-side-side-wrapper{padding:20px 20px 20px 0px}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign.card .tensorsite-side-side-wrapper{padding:20px 0px 20px 20px}.tensorsite-side-side--redesign.card .tensorsite-side-side-wrapper .tensorsite-side-side__main-section{flex-basis:100%}}.tensorsite-side-side--redesign .tensorsite-side-side__main-section{display:flex;align-items:center;width:600px;margin:0 0 0 0 !important;flex-basis:50%}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section{margin:0 0 0 5% !important;flex-basis:calc(100% - 75px)}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section{margin:0 auto 0 0 !important;flex-basis:calc(100%);max-width:calc(100%)}}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content{padding:0}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:36px;font-weight:400;line-height:44px;letter-spacing:-0.25px;color:#425066;font-weight:400;padding-top:20px;padding-bottom:14px;margin-bottom:0}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__title{font-size:20px;line-height:28px;font-weight:500;letter-spacing:0px}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__title{font-size:24px;line-height:36px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:48px;font-weight:500;line-height:56px;letter-spacing:-0.5px;color:#425066;font-weight:400}}@media only screen and (max-width: 1279px) and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__title{font-size:32px;line-height:38px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px) and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__title{font-size:28px;line-height:36px;letter-spacing:-0.25;font-weight:500}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:40px;font-weight:400;line-height:48px;letter-spacing:-0.5px;color:#425066;font-weight:400}}@media only screen and (max-width: 767px) and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__title{font-size:24px;line-height:36px;font-weight:500;letter-spacing:0px}}@media only screen and (max-width: 767px) and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__title{font-weight:400;line-height:30px}}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__subtitle{font-family:"Roboto",sans-serif;font-size:28px;font-weight:400;line-height:36px;color:#616161}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__subtitle{font-size:18px;line-height:28px;font-weight:500}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__subtitle{font-weight:400}}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__subtitle{font-family:"Google Sans",sans-serif;font-size:18px;font-weight:500;line-height:28px;color:#616161}}@media only screen and (max-width: 1279px) and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__subtitle{font-weight:400}}@media only screen and (max-width: 1279px) and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__subtitle{font-size:16px}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__subtitle{font-family:"Roboto",sans-serif;font-size:24px;font-weight:400;line-height:28px;color:#616161;margin-top:24px}}@media only screen and (max-width: 767px) and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__subtitle{font-size:18px;line-height:28px;font-weight:500}}@media only screen and (max-width: 767px) and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__subtitle{font-size:18px;font-weight:400;line-height:28px}}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__description{font-family:"Roboto",sans-serif;font-size:18px;font-weight:400;line-height:28px;color:#616161;font-family:"Roboto",sans-serif;margin-bottom:25px}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__cta-wrapper{gap:25px}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__cta:not(.tensorsite-content__button){font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:20px;color:#425066;letter-spacing:0.5px;text-decoration:underline;-webkit-text-decoration-color:#ff6f00;text-decoration-color:#ff6f00;text-transform:uppercase;text-underline-offset:4px}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__cta:not(.tensorsite-content__button):hover,.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__cta:not(.tensorsite-content__button):focus{color:#ff6f00}@media only screen and (max-width: 1279px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__cta:not(.tensorsite-content__button){line-height:21px}}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-content__cta:not(.tensorsite-content__button){letter-spacing:0;line-height:24px}}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-button{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:24px;color:#425066;border:1px solid #818181;margin-top:40px;border-radius:4px}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-button:hover,.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-button:focus{color:#f5f5f5}@media only screen and (max-width: 767px){.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-button{margin-top:24px}}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-button::before{border-radius:3px}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-button::after{border-radius:4px;width:100%;height:100%;top:0px;left:0px}.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-button:hover,.tensorsite-side-side--redesign .tensorsite-side-side__main-section .tensorsite-button:focus{border:1px solid #E6E6E6}.scrollfit.tensorsite-side-side__code-block devsite-code{height:360px;overflow-x:hidden;overflow-y:auto;border-radius:8px}.tensorsite-home-footer{background-image:linear-gradient(to top right, #ff6f00, #FFA800)}.tensorsite-home-footer__container{margin:0 auto;position:relative;height:625px}@media only screen and (max-width: 767px){.tensorsite-home-footer__container{height:500px}}.tensorsite-home-footer__content{position:relative;padding-top:10%}.tensorsite-home-footer__content .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:48px;font-weight:700;line-height:72px;letter-spacing:-0.5px;color:#fff;color:#fff;text-align:center;margin-bottom:80px}@media only screen and (max-width: 1279px){.tensorsite-home-footer__content .tensorsite-content__title{line-height:58px}}@media only screen and (max-width: 767px){.tensorsite-home-footer__content .tensorsite-content__title{font-size:36px;line-height:44px;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px){.tensorsite-home-footer__content .tensorsite-content__title{margin-bottom:60px;margin-inline:auto;max-width:500px}}@media only screen and (max-width: 767px){.tensorsite-home-footer__content .tensorsite-content__title{margin-bottom:48px;max-width:300px}}.tensorsite-home-footer__content .tensorsite-content__cta-wrapper{flex-direction:row;text-align:center;align-self:center;gap:34px}@media only screen and (max-width: 767px){.tensorsite-home-footer__content .tensorsite-content__cta-wrapper{flex-direction:column;gap:16px}}.tensorsite-home-footer__content .tensorsite-content .tensorsite-button{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:24px;color:#616161;text-decoration:underline;text-underline-offset:4px;text-decoration:none;align-self:center}.tensorsite-home-footer__content .tensorsite-content .tensorsite-button:hover,.tensorsite-home-footer__content .tensorsite-content .tensorsite-button:focus{color:#ff6f00}.tensorsite-home-footer__content .tensorsite-content .tensorsite-button:hover{color:#fff}.tensorsite-home-footer__lines{background-image:url(/site-assets/images/marketing/home-footer-lines.png);background-size:100%;background-repeat:no-repeat;background-position:top;position:relative;bottom:0;left:50%;width:1444px;position:absolute;top:0;-webkit-transform:translate(-50%, 0);transform:translate(-50%, 0)}@media only screen and (max-width: 1279px){.tensorsite-home-footer__lines{width:100%;background-position:bottom}}@media only screen and (max-width: 767px){.tensorsite-home-footer__lines{-webkit-transform:translate(-50%, 0);transform:translate(-50%, 0);width:600px}}@media only screen and (max-width: 480px){.tensorsite-home-footer__lines{-webkit-transform:translate(-35%, 0);transform:translate(-35%, 0)}}.tensorsite-card--redesign{-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);display:flex;flex-direction:column;flex-grow:0;flex-shrink:1;position:relative;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);transition:box-shadow .2s linear,opacity .2s linear}@media only screen and (max-width: 767px){.tensorsite-card--redesign{flex-basis:auto;max-width:100%}}.tensorsite-card--redesign::before{background:#fff;border-radius:10px;content:'';height:100%;left:0;pointer-events:none;position:absolute;top:0;transition:opacity .2s linear;width:100%}.tensorsite-card--redesign .tensorsite-content{border-radius:0 0 10px 10px;position:static;padding:20px}.tensorsite-card--redesign .tensorsite-content__image{-webkit-transform:scale(0.9);transform:scale(0.9)}.tensorsite-card--redesign .tensorsite-content__hover-image,.tensorsite-card--redesign .tensorsite-content__hover-video{display:none}@media only screen and (max-width: 767px){.tensorsite-card--redesign .tensorsite-content{padding:24px}}.tensorsite-card--redesign .tensorsite-content--under-image::before{top:-1px}.tensorsite-card--redesign .tensorsite-content .tensorsite-content__subtitle,.tensorsite-card--redesign .tensorsite-content .tensorsite-content__description,.tensorsite-card--redesign .tensorsite-content .tensorsite-content__cta-wrapper,.tensorsite-card--redesign .tensorsite-content ul{position:relative}.tensorsite-card--redesign .tensorsite-content .tensorsite-content__cta-wrapper--shorter{padding-right:70px}.tensorsite-card--redesign .tensorsite-content__image-wrapper{margin:20px 20px 1px 20px;border:1px solid #E6E6E6;border-radius:10px !important;overflow:hidden;position:relative;transition:border-color .2s linear;z-index:1}.tensorsite-card--redesign .tensorsite-content__image-wrapper img{background-color:#fbfcfc;transition:-webkit-transform .5s cubic-bezier(0.25, 0.1, 0.25, 1);transition:transform .5s cubic-bezier(0.25, 0.1, 0.25, 1);transition:transform .5s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform .5s cubic-bezier(0.25, 0.1, 0.25, 1);will-change:transform}.tensorsite-card--redesign .tensorsite-content__image-wrapper .tensorsite-content__image__play-button{bottom:0;left:0;margin:auto;overflow:visible;position:absolute;right:0;top:0}.tensorsite-card--redesign .tensorsite-price-tag__inner{transition:background-color .2s linear,color .2s linear}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__categories{display:flex;flex-wrap:wrap;position:relative;z-index:1;margin-top:0px;margin-bottom:12px}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__categories::before{content:''}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__categories .tensorsite-content__category{padding-right:8px;padding-top:0px}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__categories .tensorsite-content__category:last-child{padding-right:0}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__categories .tensorsite-content__category-text{font-family:"Roboto",sans-serif;font-size:14px;font-weight:400;line-height:20px;color:#818181;letter-spacing:0.5px;text-transform:uppercase;position:relative;transition:color .2s linear;padding:4px 6px 3px 6px;border-radius:5px;background-color:#E6E6E6}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__categories .tensorsite-content__category-text::before,.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__categories .tensorsite-content__category-text::after{background-position:center center;background-repeat:no-repeat;bottom:0;content:'';height:12px;left:0;margin:auto;position:absolute;top:0;width:12px}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__categories .tensorsite-content__category-text::before{transition:opacity .2s linear;z-index:1}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__title{font-size:24px;font-weight:500;line-height:30px;letter-spacing:0px;margin-bottom:16px;align-items:center;display:flex;justify-content:space-between;z-index:1}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__title:before{bottom:0;content:'';left:0;position:absolute;right:0;top:0}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__subtitle{font-family:"Google Sans",sans-serif;font-size:14px;font-weight:700;line-height:18px}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__subtitle--thin{font-size:16px;font-family:"Roboto",sans-serif;font-weight:400;color:#818181}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__subtitle--thin.tensorsite-content__subtitle--under-title{margin-bottom:18px;margin-top:0px}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__description{margin-bottom:24px}.tensorsite-card--redesign .tensorsite-content--under-image .tensorsite-content__description strong:first-child:last-child{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:700;line-height:26px;color:#425066;display:inline-block;margin-top:8px;transition:color .2s linear}.tensorsite-card--redesign .tensorsite-content__cta{z-index:3;font-weight:500}.tensorsite-card--redesign .tensorsite-content__cta:hover:not(.no-link){color:#fff}.tensorsite-card--redesign:hover:not(.no-link){box-shadow:0 0 64px rgba(0,0,0,0.22);cursor:pointer}.tensorsite-card--redesign:hover:not(.no-link) .tensorsite-content__main-image{display:none}.tensorsite-card--redesign:hover:not(.no-link) .tensorsite-content__hover-image,.tensorsite-card--redesign:hover:not(.no-link) .tensorsite-content__hover-video{display:flex}.tensorsite-card--redesign:hover:not(.no-link) .tensorsite-content__image__play-button{-webkit-transform:scale(1.2);transform:scale(1.2)}.tensorsite-card--redesign.no-link .tensorsite-content__title::before{content:none}.tensorsite-card--redesign.font-size-body .tensorsite-content__description{font-family:"Roboto",sans-serif;font-size:16px;line-height:28px}.tensorsite-card--redesign--double{flex-grow:0;flex-shrink:1}.tensorsite-card--redesign__href{height:100%;left:0;opacity:0;position:absolute;top:0;width:100%;z-index:2}.tensorsite-card--redesign--hero .tensorsite-content__cta:hover{color:#425066}.tensorsite-card--redesign--hero-whitecta .tensorsite-content__cta{color:#fff}.tensorsite-card--redesign--hero-whitecta a span::after{-webkit-filter:grayscale(100%) invert(1) brightness(2);filter:grayscale(100%) invert(1) brightness(2)}.tensorsite-card--redesign--hero-whitecta .tensorsite-content__cta:hover{color:#fff}.tensorsite-card--redesign--hero-whitetext .tensorsite-content__title{color:#fff}.tensorsite-card--redesign--hero-bluegradient .tensorsite-content--under-image{background-image:linear-gradient(0deg, rgba(32,18,20,0) 0%, rgba(32,18,20,0) 45%, #5464b5 100%)}.tensorsite-card--redesign--hero-h3title .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px}.tensorsite-card--redesign--hero .tensorsite-content__title{flex-grow:1}.tensorsite-card--redesign--hero .tensorsite-content__title::after{-webkit-filter:grayscale(100%) invert(1) brightness(2);filter:grayscale(100%) invert(1) brightness(2)}.tensorsite-card--redesign--hero .tensorsite-content__image-wrapper{border-bottom:none;border-radius:10px;height:100%;position:absolute;width:100%}.tensorsite-card--redesign--hero .tensorsite-content__image{height:100%;-o-object-fit:cover;object-fit:cover}.tensorsite-card--redesign--hero .tensorsite-content__image,.tensorsite-card--redesign--hero .tensorsite-content--under-image{border-radius:10px}.tensorsite-card--redesign--clip .tensorsite-content{background:transparent;margin-top:40%;padding-top:17%;position:static;z-index:1}@media only screen and (-ms-high-contrast: none), (-ms-high-contrast: active){.tensorsite-card--redesign--clip .tensorsite-content{background-color:#fff;padding-top:20px}}.tensorsite-card--redesign--clip .tensorsite-content__clip-bg{padding-top:40%}.tensorsite-card--redesign--clip .tensorsite-content__clip-bg+.tensorsite-content__title{padding-top:7%}.tensorsite-card--redesign--clip .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px;max-width:81%}@media only screen and (max-width: 1000px){.tensorsite-card--redesign--clip .tensorsite-content__title{max-width:none}}@media only screen and (max-width: 850px){.tensorsite-card--redesign--clip .tensorsite-content__title{max-width:80%}}@media only screen and (max-width: 767px){.tensorsite-card--redesign--clip .tensorsite-content__title{max-width:60%}}@media only screen and (max-width: 480px){.tensorsite-card--redesign--clip .tensorsite-content__title{max-width:80%}}.tensorsite-card--redesign--clip .tensorsite-content__subtitle{color:#425066;font-weight:700;max-width:42%}.tensorsite-card--redesign--clip .tensorsite-content__image-wrapper{border-bottom:0;border-radius:10px;height:100%;position:absolute;width:100%}.tensorsite-card--redesign--horizontal{flex-basis:calc(100% - 30px);max-width:calc(100% - 30px)}.tensorsite-card--redesign--horizontal .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:24px;font-weight:700;line-height:32px}@media only screen and (min-width: 851px){.tensorsite-card--redesign--horizontal{flex-direction:row}.tensorsite-card--redesign--horizontal .tensorsite-content__image-wrapper,.tensorsite-card--redesign--horizontal .tensorsite-content--under-image{flex:1 0 50%;max-width:50%}.tensorsite-card--redesign--horizontal .tensorsite-content__image-wrapper{border-bottom:0;border-radius:10px 0 0 10px;border-right:1px solid #dadada}.tensorsite-card--redesign--horizontal .tensorsite-content__image{border-radius:10px 0 0 10px;height:100%;-o-object-fit:cover;object-fit:cover}}@media only screen and (min-width: 851px) and (-ms-high-contrast: none), only screen and (min-width: 851px) and (-ms-high-contrast: active){.tensorsite-card--redesign--horizontal .tensorsite-content__image-wrapper{display:flex;flex-direction:column;justify-content:center}.tensorsite-card--redesign--horizontal .tensorsite-content__image{height:auto;-o-object-fit:unset;object-fit:unset}}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover::before{opacity:0}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content a,.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content div,.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content strong{color:#fff}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content::before{opacity:1;transition:opacity .2s linear}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content ul a span::after,.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__cta-wrapper .tensorsite-content__cta-icon span::after{-webkit-filter:grayscale(100%) invert(1) brightness(2);filter:grayscale(100%) invert(1) brightness(2)}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__title span::after,.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__subtitle span::after{-webkit-filter:grayscale(100%) invert(1) brightness(2);filter:grayscale(100%) invert(1) brightness(2)}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__tag{color:#fff}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__cta-wrapper .tensorsite-price-tag__inner{background-color:#fff;color:#ff6f00}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__cta-wrapper .tensorsite-price-tag__inner::before{background-image:url("data:image/svg+xml,%3Csvg width='12' height='24' viewBox='0 0 12 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M9.474 0H56a2 2 0 0 1 2 2v20a2 2 0 0 1-2 2H9.474a2 2 0 0 1-1.636-.85l-7.03-10a2 2 0 0 1 0-2.3l7.03-10A2 2 0 0 1 9.474 0z' fill='%23FFF'/%3E%3Ccircle fill='%23FF6F00' cx='10' cy='12' r='2'/%3E%3C/g%3E%3C/svg%3E")}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__categories .tensorsite-content__category-text{color:#fff}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__clip-bg::before{background:#ff6f00}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__clip-shape path{fill:#ff6f00}.tensorsite-card:not(.tensorsite-card--clip):not(.tensorsite-card--hero):not(.no-link):hover .tensorsite-content .tensorsite-content__category-text::before{opacity:0}html[dir='rtl'] .tensorsite-content__clip-shape{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.tensorsite-card:hover .tensorsite-content__image-wrapper{border-color:transparent}.tensorsite-card:hover .tensorsite-content__image-wrapper img{-webkit-transform:scale(1.03);transform:scale(1.03);transition:-webkit-transform 1s cubic-bezier(0.25, 0.1, 0.25, 1);transition:transform 1s cubic-bezier(0.25, 0.1, 0.25, 1);transition:transform 1s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 1s cubic-bezier(0.25, 0.1, 0.25, 1)}.tensorsite-card--bnw img{-webkit-filter:grayscale(100%);filter:grayscale(100%)}.tensorsite-card--bnw:hover img{-webkit-filter:grayscale(0%);filter:grayscale(0%)}.tensorsite-card .tensorsite-content__title:hover ~ div.tensorsite-content__cta-wrapper .tensorsite-content__cta:first-child span::after,.tensorsite-card .tensorsite-card__href:hover ~ .tensorsite-content div.tensorsite-content__cta-wrapper .tensorsite-content__cta:first-child span::after{-webkit-transform:translateX(4px);transform:translateX(4px)}.tensorsite-card .tensorsite-content__title:hover ~ ul.tensorsite-content__cta-wrapper li:first-child .tensorsite-content__cta span::after{-webkit-transform:translateX(4px);transform:translateX(4px)}.tensorsite-card .tensorsite-content__title:focus::before{border-radius:10px;box-shadow:0 0 0 2px #425066}.tensorsite-card .tensorsite-card__href:focus ~ .tensorsite-content .tensorsite-content__title::before{border-radius:10px;box-shadow:0 0 0 2px #425066}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-container{margin:24px auto;padding:0 20px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-container .tensorsite-group__header .tensorsite-content .tensorsite-content__description{text-align:center}}@media only screen and (max-width: 1279px){.tensorsite-group--redesign .tensorsite-container .tensorsite-group__header .tensorsite-content{padding-left:0px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-container .tensorsite-group__header .tensorsite-content .tensorsite-content__description{text-align:center}}.tensorsite-group--redesign .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:36px;font-weight:700;line-height:48px;margin-bottom:12px;max-width:900px}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-content__title{font-size:28px;line-height:36px;font-weight:700;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px){.tensorsite-group--redesign .tensorsite-content__title{font-size:28px;line-height:36px;font-weight:700;letter-spacing:-0.25px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-content__title:last-child{margin-bottom:24px}}.tensorsite-group--redesign h1.tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:52px;font-weight:500;line-height:62px;letter-spacing:-0.5px;color:#425066;margin-bottom:30px;max-width:680px}@media only screen and (max-width: 1279px){.tensorsite-group--redesign h1.tensorsite-content__title{font-size:40px;line-height:48px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign h1.tensorsite-content__title{font-size:30px;line-height:36px;letter-spacing:-0.25px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign h1.tensorsite-content__title{margin:unset}}.tensorsite-group--redesign h3.tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:36px;font-weight:400;line-height:44px;letter-spacing:-0.25px;color:#425066;margin-bottom:0px;max-width:680px}@media only screen and (max-width: 1279px){.tensorsite-group--redesign h3.tensorsite-content__title{font-size:20px;line-height:28px;font-weight:500;letter-spacing:0px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign h3.tensorsite-content__title{font-size:24px;line-height:36px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign h3.tensorsite-content__title{margin:unset}}.tensorsite-group--redesign .tensorsite-content__small-title{font-family:"Roboto",sans-serif;font-size:24px;font-weight:400;line-height:28px;color:#616161;margin-bottom:48px;max-width:905px}@media only screen and (max-width: 1279px){.tensorsite-group--redesign .tensorsite-content__small-title{font-size:18px;line-height:28px;font-weight:500}}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-content__small-title{font-size:18px;font-weight:400;line-height:28px}}@media only screen and (max-width: 1279px){.tensorsite-group--redesign .tensorsite-content__small-title{max-width:440px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-content__small-title{text-align:left;max-width:100%}}.tensorsite-group--redesign .tensorsite-content__button{align-self:flex-start}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-content__button{align-self:center}}.tensorsite-group--redesign .tensorsite-group__inner{margin:0;display:grid;gap:24px;grid-template-columns:repeat(2, 1fr)}@media only screen and (max-width: 1279px){.tensorsite-group--redesign .tensorsite-group__inner{grid-template-columns:repeat(1, 1fr);justify-content:center;max-width:100%}}.tensorsite-group--redesign .tensorsite-content__image-wrapper{border-radius:2px 2px 0 0}.tensorsite-group--redesign .tensorsite-content__image-wrapper::after{content:none}.tensorsite-group--redesign .tensorsite-content__image-wrapper .tensorsite-content__image{border-radius:0px;scale:1.11}.tensorsite-group--redesign .tensorsite-card{margin:0;border-radius:4px;border:1px solid #DADCE0;box-shadow:0px 4px 14px rgba(0,0,0,0.25)}.tensorsite-group--redesign .tensorsite-card::before{border-radius:2px}.tensorsite-group--redesign .tensorsite-card .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:28px;font-weight:400;line-height:36px;letter-spacing:-0.25px;color:#425066;flex-basis:86px;align-items:flex-start;margin-bottom:0}.tensorsite-group--redesign .tensorsite-card .tensorsite-content__description{font-family:"Roboto",sans-serif;font-size:18px;font-weight:400;line-height:28px;color:#616161;margin-bottom:48px}.tensorsite-group--redesign .tensorsite-card .tensorsite-content__cta{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:20px;color:#425066;letter-spacing:0.5px;text-decoration:underline;-webkit-text-decoration-color:#ff6f00;text-decoration-color:#ff6f00;text-transform:uppercase;text-underline-offset:4px}.tensorsite-group--redesign .tensorsite-card .tensorsite-content__cta:hover,.tensorsite-group--redesign .tensorsite-card .tensorsite-content__cta:focus{color:#ff6f00}@media only screen and (max-width: 1279px){.tensorsite-group--redesign .tensorsite-card .tensorsite-content__cta{line-height:21px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-card .tensorsite-content__cta{letter-spacing:0;line-height:24px}}.tensorsite-group--redesign .tensorsite-card:hover .tensorsite-content__cta{-webkit-text-decoration-color:#fff;text-decoration-color:#fff}.tensorsite-group--redesign .tensorsite-card:hover .tensorsite-content__image-wrapper::after{content:none}.tensorsite-group--redesign .tensorsite-block{margin:0;gap:48px}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-block{gap:20px}}.tensorsite-group--redesign .tensorsite-block--sideside{display:flex;flex-direction:row}.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content{padding-top:0;padding-bottom:48px;width:100%}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content{padding-bottom:12px}}.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:36px;font-weight:400;line-height:44px;letter-spacing:-0.25px;color:#425066;color:#425066;margin-bottom:24px}@media only screen and (max-width: 1279px){.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__title{font-size:20px;line-height:28px;font-weight:500;letter-spacing:0px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__title{font-size:24px;line-height:36px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__title{margin-bottom:12px}}.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__description{font-family:"Roboto",sans-serif;font-size:18px;font-weight:400;line-height:28px;color:#616161;margin-bottom:24px}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__description{margin-bottom:12px}}.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__cta{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:20px;color:#425066;letter-spacing:0.5px;text-decoration:underline;-webkit-text-decoration-color:#ff6f00;text-decoration-color:#ff6f00;text-transform:uppercase;text-underline-offset:4px}.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__cta:hover,.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__cta:focus{color:#ff6f00}@media only screen and (max-width: 1279px){.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__cta{line-height:21px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-content__cta{letter-spacing:0;line-height:24px}}.tensorsite-group--redesign .tensorsite-block--sideside .tensorsite-block__image-wrapper{margin:0}.tensorsite-group--redesign.tensorsite-group--3up.home-module3-browsetf .tensorsite-container{padding:0 40px}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.home-module3-browsetf .tensorsite-container{padding:20px;margin:0px}}.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-group__divider{border-top:1px solid #ff6f00;max-width:1340px;width:100%}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-group__divider{border-top:1px solid transparent}}.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-group__inner{display:grid;gap:24px;padding:0 30px;grid-template-columns:repeat(3, 1fr)}@media only screen and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-group__inner{padding-left:0px;padding-right:0px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-group__inner{grid-template-columns:repeat(1, 1fr);padding-left:0px;padding-right:0px;gap:48px}}@media only screen and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block{flex-basis:calc(100% / 3 - 30px)}}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block{flex-basis:calc(100%)}}.tensorsite-group--redesign.tensorsite-group--3up.home-module3-browsetf .tensorsite-block--plain .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:28px;font-weight:500;line-height:36px;letter-spacing:-0.25px;color:#425066}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.home-module3-browsetf .tensorsite-block--plain .tensorsite-content__title{font-size:24px;line-height:30px}}.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block--plain .tensorsite-content{align-items:flex-start;padding:0}.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block--plain .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:28px;font-weight:500;line-height:36px;letter-spacing:-0.25px;color:#425066;margin-bottom:48px;text-align:left}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block--plain .tensorsite-content__title{font-size:24px;line-height:30px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block--plain .tensorsite-content__title{margin-bottom:24px}}.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block--plain .tensorsite-content__cta{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:20px;color:#425066;letter-spacing:0.5px;text-decoration:underline;-webkit-text-decoration-color:#ff6f00;text-decoration-color:#ff6f00;text-transform:uppercase;text-underline-offset:4px}.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block--plain .tensorsite-content__cta:hover,.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block--plain .tensorsite-content__cta:focus{color:#ff6f00}@media only screen and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block--plain .tensorsite-content__cta{line-height:21px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block--plain .tensorsite-content__cta{letter-spacing:0;line-height:24px}}.tensorsite-group--redesign.tensorsite-group--3up .tensorsite-block--plain .tensorsite-content__cta-wrapper{text-align:left}.tensorsite-group--redesign.tensorsite-group--3up.small{padding-bottom:68px}.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-container{margin-bottom:0}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-container{margin:0px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__header .tensorsite-content{padding-bottom:24px;padding-top:0px}}.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__header .tensorsite-content__title{padding-top:68px;padding-bottom:18px;font-family:"Google Sans",sans-serif;font-size:36px;font-weight:400;line-height:44px;letter-spacing:-0.25px;color:#425066}@media only screen and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__header .tensorsite-content__title{font-size:20px;line-height:28px;font-weight:500;letter-spacing:0px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__header .tensorsite-content__title{font-size:24px;line-height:36px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__header .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:48px;font-weight:500;line-height:56px;letter-spacing:-0.5px;color:#425066;padding-bottom:0px}}@media only screen and (max-width: 1279px) and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__header .tensorsite-content__title{font-size:32px;line-height:38px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px) and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__header .tensorsite-content__title{font-size:28px;line-height:36px;letter-spacing:-0.25;font-weight:500}}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__header .tensorsite-content__title{text-align:left;margin:0;padding-top:24px}}.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner{max-width:85%;margin:auto}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner{max-width:100%;font-family:"Google Sans",sans-serif;font-size:20px;font-weight:400;line-height:28px;color:#425066;margin:0;gap:24px}}.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card{flex-direction:row;border:1px solid #ccc;border-radius:8px;background-color:#fff;gap:0px;flex-basis:calc(100% / 3 - 57px);max-width:100%}@media only screen and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card{flex-direction:column;align-items:center;padding-right:0px;flex-basis:calc(100% / 3 - 30px)}}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card{flex-direction:row;flex-basis:100%;padding-right:0px}}.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-block__image-wrapper{display:flex;width:100%;max-width:77px;margin:12px 20px}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-block__image-wrapper{margin-right:15px}}.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content{display:flex;justify-content:space-between;height:100%;padding:24px 0 16px 0;align-self:center}@media only screen and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content{align-items:center}}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content{align-items:flex-start}}.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:400;line-height:28px;color:#425066;font-weight:500;color:#616161;margin-bottom:0px;flex-grow:0}@media only screen and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content__title{text-align:center}}.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content__cta{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:20px;color:#425066;letter-spacing:0.5px;text-decoration:underline;-webkit-text-decoration-color:#ff6f00;text-decoration-color:#ff6f00;text-transform:uppercase;text-underline-offset:4px}.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content__cta:hover,.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content__cta:focus{color:#ff6f00}@media only screen and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content__cta{line-height:21px}}@media only screen and (max-width: 767px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content__cta{letter-spacing:0;line-height:24px}}@media only screen and (max-width: 1279px){.tensorsite-group--redesign.tensorsite-group--3up.small .tensorsite-group__inner .tensorsite-block--horizontal-card .tensorsite-content__cta{padding-bottom:12px}}.hide-cards-on-mobile .tensorsite-card{display:flex}@media only screen and (max-width: 1279px){.hide-cards-on-mobile .tensorsite-card{display:none}}.hide-cards-on-mobile .tensorsite-block{display:none}@media only screen and (max-width: 1279px){.hide-cards-on-mobile .tensorsite-block{display:flex}}.tensorsite-group--accordion .tensorsite-container{padding-top:80px;padding-bottom:68px;margin:0 auto}@media only screen and (max-width: 1279px){.tensorsite-group--accordion .tensorsite-container{padding-top:60px;padding-bottom:60px;margin:0 auto}}@media only screen and (max-width: 767px){.tensorsite-group--accordion .tensorsite-container{padding-top:12px;padding-bottom:12px;margin:0 auto}}.tensorsite-group--accordion .tensorsite-group__header .tensorsite-content{padding:0}.tensorsite-group--accordion .tensorsite-group__header .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:48px;font-weight:500;line-height:56px;letter-spacing:-0.5px;color:#425066;max-width:900px}@media only screen and (max-width: 1279px){.tensorsite-group--accordion .tensorsite-group__header .tensorsite-content__title{font-size:32px;line-height:38px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 767px){.tensorsite-group--accordion .tensorsite-group__header .tensorsite-content__title{font-size:28px;line-height:36px;letter-spacing:-0.25;font-weight:500}}@media only screen and (max-width: 1279px){.tensorsite-group--accordion .tensorsite-group__header .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:52px;font-weight:500;line-height:62px;letter-spacing:-0.5px;color:#425066;font-weight:500}}@media only screen and (max-width: 1279px) and (max-width: 1279px){.tensorsite-group--accordion .tensorsite-group__header .tensorsite-content__title{font-size:40px;line-height:48px}}@media only screen and (max-width: 1279px) and (max-width: 767px){.tensorsite-group--accordion .tensorsite-group__header .tensorsite-content__title{font-size:30px;line-height:36px;letter-spacing:-0.25px}}@media only screen and (max-width: 767px){.tensorsite-group--accordion .tensorsite-group__header .tensorsite-content__title{text-align:left;max-width:350px;flex-direction:row;align-items:flex-start;margin:0}}@media only screen and (max-width: 767px){.tensorsite-group--accordion .tensorsite-accordion .expanded-container__section{max-width:100%;padding-bottom:24px}}@media only screen and (max-width: 767px){.tensorsite-group--accordion .tensorsite-accordion .expanded-container__section .tensorsite-button{margin-top:0px}}.tensorsite-group.tensorsite-group--redesign .recsys{position:relative;z-index:-1;margin:0 auto;max-width:1420px;width:100%;top:-200px;left:150px;-webkit-transform:scale(1.2);transform:scale(1.2);max-height:280px}@media only screen and (max-width: 1279px){.tensorsite-group.tensorsite-group--redesign .recsys{top:-150px;left:100px;-webkit-transform:scale(1.2);transform:scale(1.2)}}@media only screen and (max-width: 767px){.tensorsite-group.tensorsite-group--redesign .recsys{top:-50px;-webkit-transform:scale(2);transform:scale(2)}}.tensorsite-jumbotron{margin:0 auto;max-width:1420px;width:100%}@media only screen and (max-width: 767px){.tensorsite-jumbotron{-webkit-transform:scale(2) translateX(-25%);transform:scale(2) translateX(-25%);margin:50px auto}}.tensorsite-jumbotron--grey-gradient::before{content:' ';background-image:linear-gradient(180deg, #E6E9EA, transparent, transparent, transparent);width:200%;display:block;height:350px;position:absolute;z-index:-1;-webkit-transform:translateX(-25%);transform:translateX(-25%)}.tensorsite-jumbotron--grey-gradient{position:relative;z-index:-1}.tensorsite-stay-connected__container{margin:0 auto;display:flex;flex-direction:row}@media only screen and (max-width: 767px){.tensorsite-stay-connected__container{flex-direction:column}}.tensorsite-stay-connected__text-container{padding-left:0px}@media only screen and (max-width: 767px){.tensorsite-stay-connected__text-container{margin-top:24px;padding-bottom:0px}}.tensorsite-stay-connected__text-container .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:48px;font-weight:500;line-height:56px;letter-spacing:-0.5px;color:#425066}@media only screen and (max-width: 1279px){.tensorsite-stay-connected__text-container .tensorsite-content__title{font-size:32px;line-height:38px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 767px){.tensorsite-stay-connected__text-container .tensorsite-content__title{font-size:28px;line-height:36px;letter-spacing:-0.25;font-weight:500}}@media only screen and (max-width: 767px){.tensorsite-stay-connected__text-container .tensorsite-content__title{font-family:"Google Sans",sans-serif;font-size:52px;font-weight:500;line-height:62px;letter-spacing:-0.5px;color:#425066;font-weight:400;text-align:center}}@media only screen and (max-width: 767px) and (max-width: 1279px){.tensorsite-stay-connected__text-container .tensorsite-content__title{font-size:40px;line-height:48px}}@media only screen and (max-width: 767px) and (max-width: 767px){.tensorsite-stay-connected__text-container .tensorsite-content__title{font-size:30px;line-height:36px;letter-spacing:-0.25px}}.tensorsite-stay-connected__text-container .tensorsite-content__description{margin-bottom:48px;font-family:"Roboto",sans-serif;font-size:18px;font-weight:400;line-height:28px;color:#616161;flex-grow:unset}@media only screen and (max-width: 767px){.tensorsite-stay-connected__text-container .tensorsite-content__description{text-align:center;margin-bottom:0px;font-size:16px;line-height:26px}}.tensorsite-stay-connected .tensorsite-content__cta-wrapper{gap:12px}.tensorsite-stay-connected__steps-container{width:100%}.tensorsite-logo-ctas-container{display:flex;gap:40px;text-align:center}.tensorsite-logo-ctas-container>a{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:24px;color:#425066}.tensorsite-logo-ctas-container.show-on-mobile{display:none}.tensorsite-logo-ctas-container.show-on-desktop{display:flex}@media only screen and (max-width: 767px){.tensorsite-logo-ctas-container{gap:20px;flex-wrap:wrap;justify-content:center;align-self:center}.tensorsite-logo-ctas-container>a{flex-basis:calc(50% - 64px)}.tensorsite-logo-ctas-container.show-on-mobile{display:flex}.tensorsite-logo-ctas-container.show-on-desktop{display:none}}.tensorsite-stay-connected{position:relative;padding:30px 0;background-color:#f5f6f7}.tensorsite-stay-connected .tensorsite-stay-connected__background{background:url(/site-assets/images/marketing/home-bg-stay-connected.svg) center/cover no-repeat;content:'';height:100%;position:absolute;top:-125%;width:100vw;-webkit-transform:scale(1.5);transform:scale(1.5);z-index:-1}.tensorsite-home-hero-wrapper{background:url(/site-assets/images/marketing/home/hero/tf-hero-desktop.svg) no-repeat center top/cover;-webkit-transform:translate(0, 70%);transform:translate(0, 70%);background-size:contain;height:1000px;overflow:hidden;position:absolute;width:100%}@media only screen and (max-width: 1279px){.tensorsite-home-hero-wrapper{background:none}}@media only screen and (min-width: 768px){.tensorsite-home-background::after{background:url(/site-assets/images/marketing/hero-river-bg-right.svg) center/cover no-repeat;content:'';height:904px;position:absolute;right:0;top:0;width:1440px;z-index:-1}}@media only screen and (max-width: 1279px){.tensorsite-container{padding:16px}}@media only screen and (max-width: 767px){.tensorsite-container{padding:16px}}@media only screen and (min-width: 768px){.tensorsite-home-background::after{background:url(/site-assets/images/marketing/hero-river-bg-right.svg) center/cover no-repeat;content:'';height:904px;position:absolute;right:0;top:0;width:1440px;z-index:-1}}.tensorsite-home-hero{max-height:750px;position:relative;display:flex}@media only screen and (max-width: 767px){.tensorsite-home-hero{flex-direction:column;align-items:flex-start;max-width:350px;max-height:680px;margin:auto;padding:0px}}.tensorsite-home-hero__main-section{width:70%}@media only screen and (max-width: 767px){.tensorsite-home-hero__main-section{margin-top:48px;width:100%}}.tensorsite-home-hero__main-section .tensorsite-content__title{max-width:650px;font-family:"Google Sans",sans-serif;font-size:48px;font-weight:500;line-height:56px;letter-spacing:-0.5px;color:#425066;font-weight:700;margin-bottom:36px}@media only screen and (max-width: 1279px){.tensorsite-home-hero__main-section .tensorsite-content__title{font-size:32px;line-height:38px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 767px){.tensorsite-home-hero__main-section .tensorsite-content__title{font-size:28px;line-height:36px;letter-spacing:-0.25;font-weight:500}}@media only screen and (max-width: 1279px){.tensorsite-home-hero__main-section .tensorsite-content__title{font-weight:700}}.tensorsite-home-hero__header{padding:0 30px;width:100%}@media only screen and (max-width: 767px){.tensorsite-home-hero__header{padding:0px}}.tensorsite-accordion{width:100%;padding-top:48px}.tensorsite-accordion .main-container{border-top:1px solid #ff6f00;margin-bottom:0;padding:48px 0}@media only screen and (max-width: 767px){.tensorsite-accordion .main-container{border-top:2px solid #ff6f00}}.tensorsite-accordion .main-container:last-child{border-top:1px solid #ff6f00;border-bottom:1px solid #ff6f00}@media only screen and (max-width: 767px){.tensorsite-accordion .main-container:last-child{border-top:2px solid #ff6f00;border-bottom:2px solid #ff6f00}}.tensorsite-accordion .main-container button{background:none;border:none;box-shadow:none;padding:0;text-align:left;white-space:unset;overflow:unset}.tensorsite-accordion .main-container button .material-icons{font-size:50px;height:50px;width:50px;top:0px}.tensorsite-accordion .main-container button:focus{border:2px solid #425066}.tensorsite-accordion .main-container button:focus:not(:focus-visible){border:none}.tensorsite-accordion .expand-control{display:flex;width:100%;color:#ff6f00;flex-direction:row;justify-content:space-between;align-items:center}.tensorsite-accordion .expand-control__title{font-family:"Google Sans",sans-serif;font-size:36px;font-weight:400;line-height:44px;letter-spacing:-0.25px;color:#425066}@media only screen and (max-width: 1279px){.tensorsite-accordion .expand-control__title{font-size:20px;line-height:28px;font-weight:500;letter-spacing:0px}}@media only screen and (max-width: 767px){.tensorsite-accordion .expand-control__title{font-size:24px;line-height:36px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px){.tensorsite-accordion .expand-control__title{font-family:"Google Sans",sans-serif;font-size:48px;font-weight:500;line-height:56px;letter-spacing:-0.5px;color:#425066}}@media only screen and (max-width: 1279px) and (max-width: 1279px){.tensorsite-accordion .expand-control__title{font-size:32px;line-height:38px;font-weight:400;letter-spacing:-0.25px}}@media only screen and (max-width: 1279px) and (max-width: 767px){.tensorsite-accordion .expand-control__title{font-size:28px;line-height:36px;letter-spacing:-0.25;font-weight:500}}@media only screen and (max-width: 767px){.tensorsite-accordion .expand-control__title{font-family:"Google Sans",sans-serif;font-size:40px;font-weight:400;line-height:48px;letter-spacing:-0.5px;color:#425066}}@media only screen and (max-width: 767px) and (max-width: 1279px){.tensorsite-accordion .expand-control__title{font-size:24px;line-height:36px;font-weight:500;letter-spacing:0px}}@media only screen and (max-width: 767px) and (max-width: 767px){.tensorsite-accordion .expand-control__title{font-weight:400;line-height:30px}}.tensorsite-accordion .expand-control .collapser{-webkit-transform:rotate(180deg);transform:rotate(180deg);transition:all .15s ease-in-out}.tensorsite-accordion .expand-control .close-collapser{-webkit-transform:rotate(0);transform:rotate(0);transition:all .15s ease-in-out}.tensorsite-accordion .close-container{display:none}.tensorsite-accordion .expanded-container{display:flex;width:100%;max-height:1000px;flex-direction:row;align-items:flex-start;padding-top:68px}@media only screen and (max-width: 1279px){.tensorsite-accordion .expanded-container{align-items:center;flex-direction:column;padding-top:48px}}@media only screen and (max-width: 767px){.tensorsite-accordion .expanded-container{flex-direction:column;padding-top:48px}}.tensorsite-accordion .expanded-container__section{max-width:50%}@media only screen and (max-width: 1279px){.tensorsite-accordion .expanded-container__section{max-width:100%}}@media only screen and (max-width: 767px){.tensorsite-accordion .expanded-container__section{max-width:100%;padding-bottom:48px}}.tensorsite-accordion .expanded-container__section .tensorsite-button{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:24px;color:#425066;border:1px solid #818181;margin-top:40px;border-radius:4px}.tensorsite-accordion .expanded-container__section .tensorsite-button:hover,.tensorsite-accordion .expanded-container__section .tensorsite-button:focus{color:#f5f5f5}.tensorsite-accordion .expanded-container__section .tensorsite-button::before{border-radius:4px}.tensorsite-accordion .expanded-container__section .tensorsite-button::after{border-radius:3px;width:100%;height:100%;top:0px;left:0px}.tensorsite-accordion .expanded-container__section .tensorsite-button:hover,.tensorsite-accordion .expanded-container__section .tensorsite-button:focus{border:1px solid #E6E6E6}.tensorsite-accordion .expanded-container__image{width:613px;height:411px;border-radius:14px;-o-object-fit:cover;object-fit:cover}@media only screen and (max-width: 1279px){.tensorsite-accordion .expanded-container__image{width:1200px}}@media only screen and (max-width: 767px){.tensorsite-accordion .expanded-container__image{height:220px}}.tensorsite-accordion .expanded-container p{margin:0px;font-family:"Roboto",sans-serif;font-size:28px;font-weight:400;line-height:36px;color:#616161;padding-left:94px}@media only screen and (max-width: 1279px){.tensorsite-accordion .expanded-container p{font-size:18px;line-height:28px;font-weight:500}}@media only screen and (max-width: 767px){.tensorsite-accordion .expanded-container p{font-weight:400}}@media only screen and (max-width: 1279px){.tensorsite-accordion .expanded-container p{padding-left:0}}.tensorsite-accordion .expanded-container p a{display:inline;margin:0px;font-family:"Roboto",sans-serif;font-size:28px;font-weight:500;line-height:36px;color:#616161;text-decoration:underline;text-underline-offset:4px}.tensorsite-accordion .expanded-container p a:hover,.tensorsite-accordion .expanded-container p a:focus{color:#ff6f00}@media only screen and (max-width: 1279px){.tensorsite-accordion .expanded-container p a{font-size:18px;line-height:28px}}.tensorsite-accordion .expanded-container p a:focus{color:#ff6f00}.tensorsite-accordion .expanded-container .tensorsite-content{padding-top:48px;padding-left:94px}@media only screen and (max-width: 1279px){.tensorsite-accordion .expanded-container .tensorsite-content{padding-left:0;padding-bottom:0}}@media only screen and (max-width: 767px){.tensorsite-accordion .expanded-container .tensorsite-content{padding-left:0}}.tensorsite-single-cta{margin-top:0px;max-width:780px;text-align:center}.tensorsite-single-cta .tensorsite-content__cta{font-family:"Google Sans",sans-serif;font-size:28px;font-weight:500;line-height:36px;letter-spacing:-0.25px;color:#425066;display:inline-block;line-height:normal;border-bottom:1px solid #ff6f00;color:#616161;font-weight:500;transition:color .2s linear;text-decoration:underline;border-bottom:none}@media only screen and (max-width: 767px){.tensorsite-single-cta .tensorsite-content__cta{font-size:24px;line-height:30px}}.tensorsite-single-cta .tensorsite-content__cta:hover{color:#ff6f00}.dac-form-after-submit{display:none}.dac-form-error{display:none}.dac-form-failed .dac-form-error{display:inline-block;margin:0 .5em}.dac-form-submitted .dac-form-after-submit{display:block}.dac-form-submitted .dac-subscribe-hero:not(:has(.tensorsite-newsletter-container--simplified)){display:none}.dac-recaptcha-invalid{display:none}.dac-form-recaptcha-invalid .dac-recaptcha-invalid{display:inline}.tensorflow-select{background-color:#fff;width:100%;max-width:100%;color:#616161;padding:10px;width:100%;font-family:"Roboto Mono",monospace;font-size:17px;height:auto;font-weight:normal;border:1px solid #425066;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='12' viewBox='0 0 19 12' fill='none'%3E%3Cpath d='M19 2.2834L16.7675 -9.75857e-08L9.5 7.417L2.2325 -7.32931e-07L-9.98106e-08 2.2834L9.5 12L19 2.2834Z' fill='%23FF6F00'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:calc(100% - 12px) center}.tensorflow-select:hover,.tensorflow-select:focus{background-color:#fff;border:1px solid #425066}.dac-form label{margin-bottom:16px;color:#303E4E;font:17px "Roboto",sans-serif;font-weight:500}.dac-field-group{margin:0;color:#425066;width:100%;font:17px "Roboto",sans-serif;text-align:left}.dac-field-group .dac-legend,.dac-field-group .dac-checkbox label{color:#303E4E;font:17px "Roboto",sans-serif;font-weight:500;margin-bottom:24px}.dac-field-group .dac-label-description{display:block;margin:16px 0 24px 30px;color:#616161;font:17px "Roboto",sans-serif;line-height:25px}@media only screen and (max-width: 767px){.dac-field-group .dac-label-description{font-size:14px}}.dac-form-container{max-width:700px;margin:auto}.dac-names-field{display:flex;gap:50px}@media only screen and (max-width: 1279px){.dac-names-field{gap:20px}}.dac-field{margin:0 0 24px;width:100%}@media only screen and (max-width: 1279px){.dac-field{margin:0 0 12px}}.dac-field input{color:#616161;padding:15px 10px;width:100%;font-family:"Roboto Mono",monospace;font-size:17px;border:1px solid #425066;border-radius:4px}.dac-field input::-webkit-input-placeholder{color:#616161}.dac-field input:-ms-input-placeholder{color:#616161}.dac-field input::-ms-input-placeholder{color:#616161}.dac-field input::placeholder{color:#616161}.dac-field input:focus{padding-bottom:15px;border-bottom:1px solid #425066}.dac-checkbox{margin-left:10px}.dac-checkbox--consent{margin-top:32px;display:flex}.dac-checkbox--consent .dac-form-checkbox{margin-top:2px}.dac-checkbox--consent .dac-label-description{margin:0px 0 24px 0px}.dac-checkbox--consent .dac-label-description a{color:#616161;display:inline-block;text-decoration:underline;text-underline-offset:4px;font-weight:500}.subscribe-button{border:1px solid #E6E6E6;display:flex;font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:24px;color:#425066}.subscribe-button:hover,.subscribe-button:focus{color:#f5f5f5}.devsite-select-list{width:100%}.tensorsite-content.tensorsite-content--newsletter{padding-bottom:0px}.tensorsite-content.tensorsite-content--newsletter .tensorsite-content__title{margin-inline:auto;text-align:center}.tensorsite-group.newsletter .tensorsite-group__inner{justify-content:center}.tensorsite-group.newsletter .tensorsite-content__image-wrapper .tensorsite-content__image{-o-object-fit:cover;object-fit:cover;height:150px}.tensorsite-group.newsletter input[type=text]:focus,.tensorsite-group.newsletter input[type=email]:focus{padding-bottom:15px;border-bottom:1px solid #425066}.tensorflow-custom-select{position:relative}.tensorflow-custom-selecttext{width:100%;max-width:100%;color:#616161;padding:15px 10px;width:100%;font-family:"Roboto Mono",monospace;font-size:17px;height:auto;font-weight:normal;border:1px solid #425066;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='12' viewBox='0 0 19 12' fill='none'%3E%3Cpath d='M19 2.2834L16.7675 -9.75857e-08L9.5 7.417L2.2325 -7.32931e-07L-9.98106e-08 2.2834L9.5 12L19 2.2834Z' fill='%23FF6F00'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:calc(100% - 12px) center;border-radius:4px}.tensorflow-custom-selecttext::-ms-expand{display:none}.tensorflow-custom-selecttext:hover,.tensorflow-custom-selecttext:focus{background-color:var(--devsite-select-background-color-hover, var(--devsite-background-3));border:var(--devsite-select-border-hover, var(--devsite-select-border, var(--devsite-secondary-border)));color:var(--devsite-select-color-hover)}.tensorflow-custom-select-options{border:1px solid #E6E6E6;border-radius:0 0 0.25em 0.25em;line-height:1.5;margin:0;margin-top:-0.5em;padding:0;list-style-type:none;font-weight:normal;cursor:pointer;z-index:2;position:absolute;width:calc(100% - 1px);background-color:#fff}.tensorflow-custom-select-options li{padding:1em}.tensorflow-select option{background-color:#fff}.tensorflow-custom-select-options li:hover,.tensorflow-custom-select-options li:focus,.tensorflow-select option:focus,.tensorflow-select option:hover{background-color:var(--devsite-select-background-color-hover, var(--devsite-background-3))}#tensorflow-custom-select-input{opacity:0;float:left;position:absolute;top:0;text-align:center}.hidden-all{display:none}.hidden-visually{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);border:0}.tensorsite-newsletter-container--simplified .tensorsite-newsletter-communication{display:flex}@media only screen and (max-width: 1279px){.tensorsite-newsletter-container--simplified .tensorsite-newsletter-communication{flex-direction:column}}.tensorsite-newsletter-container--simplified .tensorsite-newsletter-communication .communication-checkboxes{width:100%}.tensorsite-newsletter-container--simplified .tensorsite-newsletter-communication .communication-checkboxes .dac-checkbox:not(:last-child){margin-bottom:16px}.tensorsite-newsletter-container--simplified .dac-checkbox--consent{margin-top:0px}.tensorsite-newsletter-container--simplified .dac-checkbox--consent .dac-label-description{margin-bottom:0px}.tensorsite-newsletter-container--simplified .newsletter-submission{display:flex}@media only screen and (max-width: 1279px){.tensorsite-newsletter-container--simplified .newsletter-submission{flex-direction:column}}@media only screen and (min-width: 1280px){.tensorsite-newsletter-container--simplified .subscribe-button{width:100%;align-items:center;height:70px;align-self:center;justify-content:center;margin-bottom:24px}}.tensorsite-library-divider{border-left:1px solid #DADCE0;height:100%}@media only screen and (max-width: 1279px){.tensorsite-library-divider{border-left:none;border-top:1px solid #DADCE0;width:100%}}.tensorsite-library__filters{display:flex;margin-bottom:20px;flex-direction:row;position:sticky;top:48px;background-color:#fff;padding:8px 10px;border-radius:0 0 10px 10px;z-index:1}@media only screen and (max-width: 1279px){.tensorsite-library__filters{flex-direction:column;margin-bottom:0}}.tensorsite-library__filters-container{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tensorsite-library__filters-checkboxes{display:flex;align-items:center;flex-direction:row;gap:10px}@media only screen and (max-width: 1279px){.tensorsite-library__filters-checkboxes{align-items:start;margin-top:20px;flex-direction:column}}.tensorsite-library__filters-checkboxes input[type=checkbox]{margin-top:2px}.tensorsite-library__filters-checkboxes span{margin-left:20px}@media only screen and (max-width: 1279px){.tensorsite-library__filters-checkboxes span{margin-left:0px}}.tensorsite-library__filters-checkboxes label,.tensorsite-library__filters-checkboxes span{font-family:"Roboto",sans-serif;font-size:13px;font-weight:500;line-height:28px;color:#616161;letter-spacing:1.5px;text-transform:uppercase}.tensorsite-library__clear{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:24px;color:#425066}.tensorsite-library__clear:hover,.tensorsite-library__clear:focus{color:#f5f5f5}.tensorsite-library__clear:hover,.tensorsite-library__clear:focus{background:linear-gradient(to top right, #ff6f00, #FFA800);border:1px solid #ff6f00}.tensorsite-library-3up{display:grid;grid-template-columns:repeat(3, 1fr);padding:0px;gap:18px}@media only screen and (max-width: 1000px){.tensorsite-library-3up{grid-template-columns:repeat(2, 1fr)}}@media only screen and (max-width: 767px){.tensorsite-library-3up{grid-template-columns:repeat(1, 1fr)}}.tensorsite-library-3up li{margin:0}.tensorsite-library-3up li[no-matches]{display:block;font-family:"Google Sans",sans-serif;font-size:20px;font-weight:400;line-height:28px;color:#425066;font-weight:500}.tensorsite-library-card{background:#fff;border-radius:10px;box-shadow:0 0 36px rgba(0,0,0,0.1);list-style-type:none;display:flex;flex-direction:column;justify-content:space-between}.tensorsite-library-card__body{padding:20px;display:flex;flex-direction:column;justify-content:space-between}.tensorsite-library-card__body-container{min-height:144px}@media only screen and (max-width: 767px){.tensorsite-library-card__body-container{min-height:auto;margin-bottom:20px}}.tensorsite-library-card__title-container{display:flex;justify-content:space-between;margin-bottom:16px}.tensorsite-library-card__title{font-size:24px;font-weight:500;line-height:30px;letter-spacing:0px}.tensorsite-library-card__icon span::after{display:block;content:'';width:30px;height:30px;background-size:30px}.tensorsite-library__github{padding:14px 20px;justify-content:space-between;display:flex;gap:2px;background:#ebebeb;border-radius:0 0 10px 10px;align-items:center}.tensorsite-library__github-cta{font-family:"Google Sans",sans-serif;font-size:16px;font-weight:500;line-height:24px;color:#425066}.tensorsite-library__github-cta:hover,.tensorsite-library__github-cta:focus{color:#f5f5f5}.tensorsite-library__github-cta:hover,.tensorsite-library__github-cta:focus{color:#425066;text-decoration:underline}.tensorsite-library__github-data{display:flex;gap:5px}.tensorsite-library__github-data-group{display:flex;fill:#425066;transition:color,fill .2s linear}.tensorsite-library__github-data-group:hover,.tensorsite-library__github-data-group:focus{fill:#ff6f00}.tensorsite-library__github-data-group:hover .tensorsite-library__github-data-text,.tensorsite-library__github-data-group:focus .tensorsite-library__github-data-text{color:#ff6f00}.tensorsite-library__github-icon{width:20px;height:20px;padding:2px}.tensorsite-library__github-data-text{font-family:"Google Sans",sans-serif;font-size:18px;font-weight:500;line-height:28px;color:#616161;color:#425066;margin:0}@media only screen and (max-width: 1279px){.tensorsite-library__github-data-text{font-weight:400}}@media only screen and (max-width: 767px){.tensorsite-library__github-data-text{font-size:16px}}.tensorsite-content__code-block .colab-callout-footer{background:#e3e4e7;border-radius:0 0 8px 8px;color:#37474f;padding:20px}.tensorsite-content__code-block .colab-callout-row devsite-code[dark-code]+.colab-callout-footer{background:#3f4f66}.tensorsite-content__code-block .colab-callout-row devsite-code[dark-code]+.colab-callout-footer>a>span{color:#fff}.tensorsite-content__code-block .colab-callout-footer>a:focus{box-shadow:0 0 0 2px #fff}.tensorsite-content__code-block .colab-callout-footer .button{background:#425066;border:0;color:#fff;position:relative;z-index:1}.tensorsite-content__code-block .colab-callout-footer .button span{vertical-align:middle}.tensorsite-content__code-block .colab-callout-footer .button::before{background:#ff6f00;bottom:0;content:'';left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s;z-index:-1}.tensorsite-content__code-block .colab-callout-footer .button:focus{outline:1px dotted #fff;outline:5px auto #fff}.tensorsite-content__code-block .colab-callout-footer .button:hover::before{opacity:1}.tensorsite-content__code-block devsite-code,.tensorsite-content__code-block devsite-code pre{margin:0;height:100%;border-radius:8px 8px 0 0;box-shadow:none}@media only screen and (max-width: 767px){.tensorsite-content__code-block devsite-code,.tensorsite-content__code-block devsite-code pre{height:auto}}body[layout=full] devsite-code{overflow:hidden}.tensorsite-tile{background:#fff;border-radius:10px;border:1px solid #DADCE0;padding:30px;height:100%}.tensorsite-tile:hover,.tensorsite-tile:focus{box-shadow:0px 4px 14px rgba(0,0,0,0.25)}.tensorsite-tile__wrapper{display:flex;flex-direction:row-reverse;text-align:left;gap:10px}@media only screen and (max-width: 1279px){.tensorsite-tile__wrapper{flex-direction:column}}@media only screen and (max-width: 767px){.tensorsite-tile__wrapper{flex-direction:column}}.tensorsite-tile__wrapper .tensorsite-tile__image-wrapper{min-width:20%;text-align:center}.tensorsite-tile__wrapper .tensorsite-tile__title{font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:28px;color:#425066;transition:color .2s linear;margin-bottom:12px}.tensorsite-tile__wrapper .tensorsite-tile__title:hover,.tensorsite-tile__wrapper .tensorsite-tile__title:focus{color:#ff6f00}.tensorsite-tile__wrapper .tensorsite-tile__description{font-size:16px;font-weight:400;line-height:24px;color:#616161;margin-top:0px;max-height:100px}.tensorsite-grid-group__wrapper{display:grid}.tensorsite-grid-group__wrapper--2up{grid-template-columns:repeat(2, 1fr);gap:16px}.tensorsite-grid-group__wrapper--3up{grid-template-columns:repeat(3, 1fr);gap:16px}@media only screen and (max-width: 767px){.tensorsite-grid-group__wrapper--3up{grid-template-columns:repeat(1, 1fr)}}.tensorsite-home-dynamic-blog .devsite-card-group{display:grid;grid-template-columns:repeat(2, 1fr);margin:0 15px 40px 15px}@media only screen and (max-width: 767px){.tensorsite-home-dynamic-blog .devsite-card-group{grid-template-columns:repeat(1, 1fr)}}.tensorsite-home-dynamic-blog .devsite-card{border:none;box-shadow:0 0 36px rgba(0,0,0,0.1);transition:box-shadow .2s linear,opacity .2s linear}.tensorsite-home-dynamic-blog .devsite-card:hover{box-shadow:0 0 64px rgba(0,0,0,0.22)}.tensorsite-home-dynamic-blog .devsite-card-image-container{padding:0 0 240px}.tensorsite-home-dynamic-blog .devsite-card-image{margin:20px;width:calc(100% - 40px);height:calc(100% - 40px);max-height:200px;border-radius:8px;border:1px solid #E6E6E6}.tensorsite-home-dynamic-blog .devsite-card-content{display:flex;flex-direction:column;margin:0 20px 20px 20px;padding:0}.tensorsite-home-dynamic-blog .devsite-card-content>a{order:1}.tensorsite-home-dynamic-blog .devsite-card-buttons{display:none}.tensorsite-home-dynamic-blog .devsite-pagination-less-button,.tensorsite-home-dynamic-blog .devsite-pagination-more-button{background-color:#fff;color:#425066;transition:box-shadow .2s linear,background .2s linear,color .2s linear}.tensorsite-home-dynamic-blog .devsite-pagination-less-button .material-icons,.tensorsite-home-dynamic-blog .devsite-pagination-more-button .material-icons{color:#ff6f00}.tensorsite-home-dynamic-blog .devsite-pagination-less-button:hover,.tensorsite-home-dynamic-blog .devsite-pagination-less-button:focus,.tensorsite-home-dynamic-blog .devsite-pagination-more-button:hover,.tensorsite-home-dynamic-blog .devsite-pagination-more-button:focus{background:linear-gradient(to top right, #ff6f00, #FFA800);border:1px solid #ff6f00;color:#fff}.tensorsite-home-dynamic-blog .devsite-pagination-less-button:hover .material-icons,.tensorsite-home-dynamic-blog .devsite-pagination-less-button:focus .material-icons,.tensorsite-home-dynamic-blog .devsite-pagination-more-button:hover .material-icons,.tensorsite-home-dynamic-blog .devsite-pagination-more-button:focus .material-icons{color:#fff}.tensorsite-home-dynamic-blog .devsite-pagination-less-button:hover ::before,.tensorsite-home-dynamic-blog .devsite-pagination-less-button:focus ::before,.tensorsite-home-dynamic-blog .devsite-pagination-more-button:hover ::before,.tensorsite-home-dynamic-blog .devsite-pagination-more-button:focus ::before{opacity:1}.tensorsite-home-dynamic-blog .devsite-pagination-less-button:hover ::after,.tensorsite-home-dynamic-blog .devsite-pagination-less-button:focus ::after,.tensorsite-home-dynamic-blog .devsite-pagination-more-button:hover ::after,.tensorsite-home-dynamic-blog .devsite-pagination-more-button:focus ::after{opacity:0}.tensorsite-home-dynamic-blog .devsite-card-date{font-size:16px;font-family:"Roboto",sans-serif;font-weight:400;color:#818181;margin-bottom:12px}.tensorsite-home-dynamic-blog .devsite-card h3{font-size:24px;font-weight:500;line-height:30px;letter-spacing:0px;margin:0;color:#425066;transition:color .2s linear}.tensorsite-home-dynamic-blog .devsite-card h3:hover{color:#ff6f00} </style> <div class="devsite-article-meta nocontent" role="navigation"> <ul class="devsite-breadcrumb-list" aria-label="Breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://www.tensorflow.org/" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="TensorFlow" > TensorFlow </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://www.tensorflow.org/about" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="2" track-type="globalNav" track-name="breadcrumb" track-metadata-position="2" track-metadata-eventdetail="" > Why TensorFlow </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://www.tensorflow.org/about/case-studies" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="3" track-type="globalNav" track-name="breadcrumb" track-metadata-position="3" track-metadata-eventdetail="" > Case studies </a> </li> </ul> </div> <devsite-feature-tooltip ack-key="AckCollectionsBookmarkTooltipDismiss" analytics-category="Site-Wide Custom Events" analytics-action-show="Callout Profile displayed" analytics-action-close="Callout Profile dismissed" analytics-label="Create Collection Callout" class="devsite-page-bookmark-tooltip nocontent" dismiss-button="true" id="devsite-collections-dropdown" dismiss-button-text="Dismiss" close-button-text="Got it"> <devsite-bookmark></devsite-bookmark> <span slot="popout-heading"> Stay organized with collections </span> <span slot="popout-contents"> Save and categorize content based on your preferences. </span> </devsite-feature-tooltip> <devsite-toc class="devsite-nav" depth="2" devsite-toc-embedded disabled> </devsite-toc> <div class="devsite-article-body clearfix devsite-no-page-title"> <div class="wrapper"> <section class="tensorsite-hero tensorsite-hero--image"> <div class="tensorsite-hero__side tensorsite-hero__side--left"> </div> <div class="tensorsite-hero__side tensorsite-hero__side--right"> </div> <div class="tensorsite-hero__side tensorsite-hero__side--left-lower"> </div> <div class="tensorsite-hero__content"> <div class="tensorsite-content"> <h1 class="tensorsite-content__title" id="learn-how-tensorflow-solves-real,-everyday-machine-learning-problems" data-text=" Learn how TensorFlow solves real, everyday machine learning problems " tabindex="-1"> Learn how TensorFlow solves real, everyday machine learning problems </h1> <div class="tensorsite-content__description"> <inline-html> <p>Explore how various companies from a wide variety of industries implement ML to solve their biggest problems. From <a href="https://blog.tensorflow.org/2019/03/intelligent-scanning-using-deep-learning.html" item-id="healthcare">healthcare</a> to <a href="https://blog.tensorflow.org/2019/03/ranking-tweets-with-tensorflow.html" item-id="social networks">social networks</a> and even <a href="https://blog.tensorflow.org/2019/09/using-tensorflow-to-predict-product.html" item-id="ecommerce">ecommerce</a>, ML can be integrated into your industry and company.</p> </inline-html> </div> </div> </div> <div class="tensorsite-hero__image"> <img alt src="/static/site-assets/images/marketing/why/case-studies/case_studies_hero.png"> </div> </section> <section class="tensorsite-casestudy"> <div class="tensorsite-container"> <div class="tensorsite-group__header tensorsite-group__header--align-left"> <div class="tensorsite-content"> <div class="tensorsite-content__title tensorsite-content__title--grow"> Case studies </div> </div> <devsite-nav-buttons class="tensorsite-casestudy__filters" id="tf-filters" name="filter"> <button value="all"> <img alt="all icon" class="icon" loading="lazy" src="/static/site-assets/images/marketing/icon/icon-all-tensorflow.png"> <img alt="all icon checked" class="icon--checked" loading="lazy" src="/static/site-assets/images/marketing/icon/icon-all-tensorflow-white.png"> All TensorFlow </img> </button> <button value="Lite"> <img alt="Lite icon" class="icon" loading="lazy" src="/static/site-assets/images/marketing/icon/icon-tensorflow-lite.png"> <img alt="Lite icon checked" class="icon--checked" loading="lazy" src="/static/site-assets/images/marketing/icon/icon-tensorflow-lite-white.png"> TensorFlow Lite </button> <button value="TensorFlow.js"> <img alt="TensorFlow.js icon" class="icon" loading="lazy" src="/static/site-assets/images/marketing/icon/icon-tensorflowjs.png"> <img alt="TensorFlow.js icon checked" class="icon--checked" loading="lazy" src="/static/site-assets/images/marketing/icon/icon-tensorflowjs-white.png"> TensorFlow.js </button> <button value="TFX"> <img alt="TFX icon" class="icon" loading="lazy" src="/static/site-assets/images/marketing/icon/icon-tensorflow-extended.png"> <img alt="TFX icon checked" class="icon--checked" loading="lazy" src="/static/site-assets/images/marketing/icon/icon-tensorflow-extended-white.png"> TFX </button> </devsite-nav-buttons> </div> <div class="tensorsite-casestudy__content"> <div class="tensorsite-casestudy__cards"> <div class="tensorsite-container"> <div class="tensorsite-group__inner list"> <div class="tensorsite-card" data-filter-tag="airbnb Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_airbnb.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://medium.com/airbnb-engineering/categorizing-listing-photos-at-airbnb-f9483f3ab7e3" item-id="Airbnb" rel="noopener noreferrer" target="_blank"> Airbnb improves the guest experience by using TensorFlow to classify images and detect objects at scale </a> <div class="tensorsite-content__description"> <inline-html> <p>The Airbnb engineering and data science team applies machine learning using TensorFlow to classify images and detect objects at scale, helping to improve the guest experience.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://medium.com/airbnb-engineering/categorizing-listing-photos-at-airbnb-f9483f3ab7e3" item-id="Airbnb" rel="noopener noreferrer" tabindex="-1" target="_blank"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://airbnb.io/" item-id="Airbnb" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="airbus TFX"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_airbus.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TFX </p> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2020/04/how-airbus-detects-anomalies-iss-telemetry-data-tfx.html" item-id="Airbus"> Airbus uses TensorFlow to extract information from their satellite images and deliver valuable insights to clients </a> <div class="tensorsite-content__description"> <inline-html> <p>ML helps with monitoring changes to the Earth's surface for urban planning, fighting illegal construction and mapping damage and landscape changes caused by natural catastrophes.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--internal" href="https://blog.tensorflow.org/2020/04/how-airbus-detects-anomalies-iss-telemetry-data-tfx.html" item-id="Airbus" tabindex="-1"> Learn More <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.airbus.com/innovation.html" item-id="Airbus" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="arm Lite"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_arm.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TensorFlow Lite </p> <a class="tensorsite-content__title" href="https://github.com/ARM-software/android-nn-driver" item-id="Arm" rel="noopener noreferrer" target="_blank"> Arm's Hardware Abstraction Layer leads to a more than 4x performance boost to TensorFlow Lite </a> <div class="tensorsite-content__description"> <inline-html> <p>Arm NN for Android Neural Networks API (NNAPI) provides a Hardware Abstraction Layer (HAL) that targets Arm Mali GPUs and leads to more than a 4x performance boost to machine learning frameworks such as TensorFlow Lite.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://github.com/ARM-software/android-nn-driver" item-id="Arm" rel="noopener noreferrer" tabindex="-1" target="_blank"> Learn more <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="carousell Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_carousell.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://medium.com/carousell-insider/tagged/data-science" item-id="Carousell" rel="noopener noreferrer" target="_blank"> Carousell uses TensorFlow to improve the buyer and seller experience </a> <div class="tensorsite-content__description"> <inline-html> <p>Carousell builds machine learning models with deep image and natural language understanding using TensorFlow on Google Cloud ML. Sellers benefit from a simplified posting experience with image recognition, and buyers discover more relevant listings through recommendations and image search.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://medium.com/carousell-insider/tagged/data-science" item-id="Carousell" rel="noopener noreferrer" tabindex="-1" target="_blank"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.carousell.sg/" item-id="Carousell" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="ceva Lite"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_ceva.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TensorFlow Lite </p> <a class="tensorsite-content__title" href="https://www.ceva-dsp.com/" item-id="CEVA" rel="noopener noreferrer" target="_blank"> CEVA converts TensorFlow trained networks in their Deep Learning processors </a> <div class="tensorsite-content__description"> <inline-html> <p>CEVA’s NeuPro and CEVA-XM AI processors for Deep Learning and AI inferencing at the edge automatically convert TensorFlow trained networks for use in real-time embedded devices using the CEVA CDNN Compiler.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.ceva-dsp.com/" item-id="CEVA" rel="noopener noreferrer" tabindex="-1" target="_blank"> Website <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.ceva-dsp.com/press/ceva-announces-dsp-and-voice-neural-networks-integration-with-tensorflow-lite-for-microcontrollers/" item-id="CEVA" rel="noopener noreferrer" target="_blank"> Learn more <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="china-mobile Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_china_mobile.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://www.chinamobileltd.com" item-id="China Mobile" rel="noopener noreferrer" target="_blank"> China Mobile uses TensorFlow to improve their success rate of network element cutovers </a> <div class="tensorsite-content__description"> <inline-html> <p>China Mobile has created a deep learning system using TensorFlow that can automatically predict cutover time window, verify operation logs, and detect network anomalies. This has already successfully supported the world’s largest relocation of hundreds of millions IoT HSS numbers.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.chinamobileltd.com" item-id="China Mobile" rel="noopener noreferrer" tabindex="-1" target="_blank"> Learn more <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="coca-cola Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_cocacola.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://developers.googleblog.com/2017/09/how-machine-learning-with-tensorflow.html" item-id="Coca-Cola" rel="noopener noreferrer" target="_blank"> TensorFlow enables mobile proof-of-purchase at Coca-Cola </a> <div class="tensorsite-content__description"> <inline-html> <p>Advances in artificial intelligence and the maturity of TensorFlow enabled the Coca-Cola Company to achieve a long-sought frictionless proof-of-purchase capability for their loyalty program.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://developers.googleblog.com/2017/09/how-machine-learning-with-tensorflow.html" item-id="Coca-Cola" rel="noopener noreferrer" tabindex="-1" target="_blank"> Learn more <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="ge-healthcare Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_gehealthcare.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2019/03/intelligent-scanning-using-deep-learning.html" item-id="GE Healthcare"> GE trained a neural network using TensorFlow to identify anatomy on MRIs of the brain </a> <div class="tensorsite-content__description"> <inline-html> <p>Using TensorFlow, GE Healthcare is training a neural network to identify specific anatomy during brain magnetic resonance imaging (MRI) exams to help improve speed and reliability.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--internal" href="https://blog.tensorflow.org/2019/03/intelligent-scanning-using-deep-learning.html" item-id="GE Healthcare" tabindex="-1"> Learn more <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="google Lite"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_google.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TensorFlow Lite </p> <a class="tensorsite-content__title" href="https://ai.googleblog.com/search/label/TensorFlow" item-id="Google" rel="noopener noreferrer" target="_blank"> Google built TensorFlow to bring machine learning to everyone </a> <div class="tensorsite-content__description"> <inline-html> <p>Google uses TensorFlow to power ML implementations in products like Search, Gmail, and Translate, to aid researchers in new discoveries, and even to forge advances in humanitarian and environmental challenges.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://ai.googleblog.com/search/label/TensorFlow" item-id="Google" rel="noopener noreferrer" tabindex="-1" target="_blank"> Learn more <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="inspace TensorFlow.js"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_inspace.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TensorFlow.js </p> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2020/12/inspace-new-video-conferencing-platform-uses-tensorflowjs-for-toxicity-filters-in-chat.html" item-id="InSpace"> InSpace uses TensorFlow.js for real time toxicity filters in online chat </a> <div class="tensorsite-content__description"> <inline-html> <p>InSpace uses TensorFlow.js to detect toxic comments before they are even sent by performing all inference client side in the browser, removing the need to send text to a third-party server for classification.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--internal" href="https://blog.tensorflow.org/2020/12/inspace-new-video-conferencing-platform-uses-tensorflowjs-for-toxicity-filters-in-chat.html" item-id="InSpace" tabindex="-1"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://inspace.chat/" item-id="InSpace" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="intel Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_intel.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://www.intel.ai/tensorflow-optimizations-intel-xeon-scalable-processor/#gs.CxZXtywx" item-id="Intel" rel="noopener noreferrer" target="_blank"> Intel optimizes TensorFlow inference performance on the Xeon® Scalable processor </a> <div class="tensorsite-content__description"> <inline-html> <p>Intel's partnership with Google has resulted in up to 2.8x inference performance improvement across different models to benefit a wide range of customers running TensorFlow on Intel platforms.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.intel.ai/tensorflow-optimizations-intel-xeon-scalable-processor/#gs.CxZXtywx" item-id="Intel" rel="noopener noreferrer" tabindex="-1" target="_blank"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.intel.ai/#gs.psK4IZXL" item-id="Intel" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="kakao TFX"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_kakao.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TFX </p> <a class="tensorsite-content__title" href="https://www.kakaocorp.com/?lang=en" item-id="Kakao" rel="noopener noreferrer" target="_blank"> Kakao uses TensorFlow to predict the completion rate of ride-hailing requests </a> <div class="tensorsite-content__description"> <inline-html> <p>Kakao Mobility uses TensorFlow and TensorFlow Serving to predict the probability of trip completed rates when drivers are dispatched to fulfill ride-hailing requests.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.kakaocorp.com/?lang=en" item-id="Kakao" rel="noopener noreferrer" tabindex="-1" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="lenovo Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_lenovo.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://www.lenovo.com/us/en/data-center/software/Lenovo-Intelligent-Computing-Orchestration/p/WMD00000356" item-id="Lenovo" rel="noopener noreferrer" target="_blank"> Lenovo Intelligent Computing Orchestration uses TensorFlow to help accelerate the intelligent revolution </a> <div class="tensorsite-content__description"> <inline-html> <p>The Lenovo LiCO platform accelerates AI training and traditional High Performance Computing, and optimizes deep learning training with TensorFlow integration and optimization. LiCO provides various built-in TensorFlow models and supports optimized distributed training of these models.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.lenovo.com/us/en/data-center/software/Lenovo-Intelligent-Computing-Orchestration/p/WMD00000356" item-id="Lenovo" rel="noopener noreferrer" tabindex="-1" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="liulishuo Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_liulishuo.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://mp.weixin.qq.com/s/HrrAb05PjXRytwLIICMNMw" item-id="Liulishuo" rel="noopener noreferrer" target="_blank"> Liulishuo uses TensorFlow to help teach new languages </a> <div class="tensorsite-content__description"> <inline-html> <p>The Liulishuo algorithm team first applied TensorFlow to its internal machine learning project in early 2016. This easy-to-use machine learning framework helped the team build an application to teach English.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.liulishuo.com/en/" item-id="Liulishuo" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="modiface TensorFlow.js"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_modiface.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TensorFlow.js </p> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2020/02/how-modiface-utilized-tensorflowjs-in-ar-makeup-in-browser.html" item-id="Modiface"> Modiface utilized TensorFlow.js in production for AR makeup try on in the browser </a> <div class="tensorsite-content__description"> <inline-html> <p>ModiFace leverages the TensorFlow.js FaceMesh model to identify key facial features and combine them with WebGL shaders, allowing users to digitally try on makeup for L’Oreal brand products while preserving privacy. The live experience runs entirely in the browser, so no user data is ever sent to a server for processing.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--internal" href="https://blog.tensorflow.org/2020/02/how-modiface-utilized-tensorflowjs-in-ar-makeup-in-browser.html" item-id="Modiface" tabindex="-1"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://modiface.com/" item-id="Modiface" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="naver Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_naver.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2019/05/auto-classification-of-naver-shopping.html" item-id="NAVER"> Auto-classification of NAVER Shopping Product Categories using TensorFlow </a> <div class="tensorsite-content__description"> <inline-html> <p>Using TensorFlow NAVER Shopping automatically matches over 20 million newly registered products a day to around 5,000 categories in order to organize products systematically and allow easier searching for users.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--internal" href="https://blog.tensorflow.org/2019/05/auto-classification-of-naver-shopping.html" item-id="NAVER" tabindex="-1"> Learn more <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="nersc Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_nersc.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2019/02/scaling-summit-of-exascale-deep-learning.html" item-id="NERSC"> NERSC scaled a scientific DL application to 27,000+ Nvidia V100 Tensor Core GPUs using TensorFlow </a> <div class="tensorsite-content__description"> <inline-html> <p>NERSC and NVIDIA succeeded at scaling a scientific deep learning application to 27,000+ Nvidia V100 Tensor Core GPUs, breaking the ExaFLOP barrier in the process.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--internal" href="https://blog.tensorflow.org/2019/02/scaling-summit-of-exascale-deep-learning.html" item-id="NERSC" tabindex="-1"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.nersc.gov/" item-id="NERSC" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="openx TFX"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_openx.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TFX </p> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2021/02/how-openx-trains-and-serves-for-million-queries-per-second.html" item-id="OpenX"> OpenX prioritizes traffic for high volume requests using TFX </a> <div class="tensorsite-content__description"> <inline-html> <p>OpenX integrates TFX and Google Cloud Platform in their ad exchange to process more than one million requests every second and serve responses in under 15 milliseconds.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--internal" href="https://blog.tensorflow.org/2021/02/how-openx-trains-and-serves-for-million-queries-per-second.html" item-id="OpenX" tabindex="-1"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.openx.com/" item-id="OpenX" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="paypal Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_paypal.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://medium.com/paypal-engineering" item-id="PayPal" rel="noopener noreferrer" target="_blank"> PayPal uses TensorFlow to stay at the cutting edge of Fraud Detection </a> <div class="tensorsite-content__description"> <inline-html> <p>Using TensorFlow, deep transfer learning and generative modeling, PayPal has been able to recognize complex temporally varying fraud patterns to increase fraud decline accuracy while improving experience of legitimate users through increased precision in identification.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://medium.com/paypal-engineering" item-id="PayPal" rel="noopener noreferrer" tabindex="-1" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="qualcomm Lite"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_qualcomm.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TensorFlow Lite </p> <a class="tensorsite-content__title" href="https://www.qualcomm.com/news/onq/2017/01/09/tensorflow-machine-learning-now-optimized-snapdragon-835-and-hexagon-682-dsp" item-id="Qualcomm" rel="noopener noreferrer" target="_blank"> Qualcomm accelerates TensorFlow models on Snapdragon mobile platforms and beyond </a> <div class="tensorsite-content__description"> <inline-html> <p>Qualcomm optimizes and accelerates TensorFlow and TensorFlow Lite models on Snapdragon mobile platforms, and across chipset portfolios designed for IoT, compute, XR and automotive.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.qualcomm.com/news/onq/2017/01/09/tensorflow-machine-learning-now-optimized-snapdragon-835-and-hexagon-682-dsp" item-id="Qualcomm" rel="noopener noreferrer" tabindex="-1" target="_blank"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.qualcomm.com/" item-id="Qualcomm" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="sinovation-ventures Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_sinovation.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="http://www.sinovationventures.com/" item-id="Sinovation Ventures" rel="noopener noreferrer" target="_blank"> Detecting disease on OCT images of the retina with TensorFlow </a> <div class="tensorsite-content__description"> <inline-html> <p>Disease classification and segmentation were performed on retinal OCT images using TensorFlow. The three disease types were classified as either choroidal neovascularization, vitreous warts or diabetic retinal edema. After segmentation, Sinovation Ventures provided the boundary of the suspected lesions in the imaging.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="http://www.sinovationventures.com/" item-id="Sinovation Ventures" rel="noopener noreferrer" tabindex="-1" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="spotify TFX"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_spotify.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TFX </p> <a class="tensorsite-content__title" href="https://engineering.atspotify.com/2019/12/13/the-winding-road-to-better-machine-learning-infrastructure-through-tensorflow-extended-and-kubeflow/" item-id="Spotify" rel="noopener noreferrer" target="_blank"> Spotify personalizes recommendations for users with TFX </a> <div class="tensorsite-content__description"> <inline-html> <p>Spotify leverages TFX and Kubeflow pipelines in its Paved Road for ML systems, an opinionated set of products and configurations to deploy an end-to-end machine learning solution targeted at teams starting out on their ML journeys.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://engineering.atspotify.com/2019/12/13/the-winding-road-to-better-machine-learning-infrastructure-through-tensorflow-extended-and-kubeflow/" item-id="Spotify" rel="noopener noreferrer" tabindex="-1" target="_blank"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.spotify.com/" item-id="Spotify" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="swisscom Core"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_swisscom.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2019/04/how-swisscoms-custom-built-tensorflow.html" item-id="Swisscom"> Swisscom optimizes customer support operations with custom-built TensorFlow model </a> <div class="tensorsite-content__description"> <inline-html> <p>Swisscom leverages TensorFlow's capacity for deeply customized machine learning models to classify text and determine the intent of their customers upon receiving their inquiries.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--internal" href="https://blog.tensorflow.org/2019/04/how-swisscoms-custom-built-tensorflow.html" item-id="Swisscom" tabindex="-1"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.swisscom.ch/en/about/company/innovation.html" item-id="Swisscom" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="texas-instruments Lite"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_texasinstruments.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TensorFlow Lite </p> <a class="tensorsite-content__title" href="http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components_Machine_Learning.html" item-id="Texas Instruments" rel="noopener noreferrer" target="_blank"> Texas Instruments Processor SDK integrates TensorFlow Lite for machine learning inference at the edge </a> <div class="tensorsite-content__description"> <inline-html> <p>Processor SDK optimizes TensorFlow Lite models, offloading CNN/DNN inference from general compute Arm® cores to purpose built hardware accelerators, which enhances machine learning capabilities in machine vision, robotics, automotive ADAS and many other applications.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components_Machine_Learning.html" item-id="Texas Instruments" rel="noopener noreferrer" tabindex="-1" target="_blank"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="http://www.ti.com" item-id="Texas Instruments" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="twitter TFX"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_twitter.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TFX </p> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2019/03/ranking-tweets-with-tensorflow.html" item-id="Twitter"> Ranking tweets with TensorFlow </a> <div class="tensorsite-content__description"> <inline-html> <p>Twitter used TensorFlow to build their "Ranked Timeline," allowing users to ensure that they don't miss their most important tweets even if they follow thousands of users.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--internal" href="https://blog.tensorflow.org/2019/03/ranking-tweets-with-tensorflow.html" item-id="Twitter" tabindex="-1"> Learn more <span> </span> </a> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://cortex.twitter.com/en.html" item-id="Twitter" rel="noopener noreferrer" target="_blank"> Website <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="vsco Lite"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_vsco.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TensorFlow Lite </p> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2019/06/vsco-suggesting-presets-for-images.html" item-id="VSCO"> Suggesting presets for images: building “For This Photo” at VSCO </a> <div class="tensorsite-content__description"> <inline-html> <p>VSCO used TensorFlow Lite to develop the “For This Photo” feature, which uses on-device machine learning to identify what kind of photo someone is editing and then suggest relevant presets from a curated list.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper tensorsite-content__cta-wrapper--abreast"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--internal" href="https://blog.tensorflow.org/2019/06/vsco-suggesting-presets-for-images.html" item-id="VSCO" tabindex="-1"> Learn more <span> </span> </a> </div> </div> </div> <div class="tensorsite-card" data-filter-tag="wps-office Lite"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/why/case-studies/tile_logo_wps_office.png"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <p class="tensorsite-content__subtitle tensorsite-content__tag"> TensorFlow Lite </p> <a class="tensorsite-content__title" href="https://www.wps.com" item-id="WPS Office" rel="noopener noreferrer" target="_blank"> WPS Office: an intelligent office based on TensorFlow </a> <div class="tensorsite-content__description"> <inline-html> <p>WPS Office implements multiple business scenarios, such as on-device image recognition and image OCR based on TensorFlow.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-content__cta-icon tensorsite-icon--external" href="https://www.wps.com" item-id="WPS Office" rel="noopener noreferrer" tabindex="-1" target="_blank"> Website <span> </span> </a> </div> </div> </div> </div> </div> </div> </div> </div> </section> <section class="tensorsite-footer tensorsite-footer--gray" data-section-id="footer"> <div class="tensorsite-container tensorsite-footer__container"> <div class="tensorsite-footer__side tensorsite-footer__side--left"> </div> <div class="tensorsite-footer__side tensorsite-footer__side--right"> </div> <div class="tensorsite-footer__content"> <div class="tensorsite-content"> <h2 class="tensorsite-content__title tensorsite-content__title--grow" id="build,-deploy,-and-experiment-easily-with-tensorflow" data-text=" Build, deploy, and experiment easily with TensorFlow " tabindex="-1"> Build, deploy, and experiment easily with TensorFlow </h2> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__button tensorsite-button tensorsite-button--white" devsite="true" href="/tutorials" item-id="Get started"> Get started </a> </div> </div> </div> </div> <div class="tensorsite-footer__lines"> </div> </section> <footer> </footer> </div> </div> <div class="devsite-floating-action-buttons"> </div> </article> <devsite-notification > </devsite-notification> <div class="devsite-content-data"> <template class="devsite-content-data-template"> [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],[],[],[]] </template> </div> </devsite-content> </main> <devsite-footer-promos class="devsite-footer"> </devsite-footer-promos> <devsite-footer-linkboxes class="devsite-footer"> <nav class="devsite-footer-linkboxes nocontent" aria-label="Footer links"> <ul class="devsite-footer-linkboxes-list"> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Stay connected</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//blog.tensorflow.org" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Blog </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//discuss.tensorflow.org" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Forum </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//github.com/tensorflow/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > GitHub </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//twitter.com/tensorflow" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Twitter </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//youtube.com/tensorflow" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > YouTube </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Support</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//github.com/tensorflow/tensorflow/issues" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Issue tracker </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//github.com/tensorflow/tensorflow/blob/master/RELEASE.md" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Release notes </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//stackoverflow.com/questions/tagged/tensorflow" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Stack Overflow </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/extras/tensorflow_brand_guidelines.pdf" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Brand guidelines </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/about/bib" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Cite TensorFlow </a> </li> </ul> </li> </ul> </nav> </devsite-footer-linkboxes> <devsite-footer-utility class="devsite-footer"> <div class="devsite-footer-utility nocontent"> <nav class="devsite-footer-utility-links" aria-label="Utility links"> <ul class="devsite-footer-utility-list"> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/terms" data-category="Site-Wide Custom Events" data-label="Footer Terms link" > Terms </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link" > Privacy </a> </li> <li class="devsite-footer-utility-item glue-cookie-notification-bar-control"> <a class="devsite-footer-utility-link gc-analytics-event" href="#" data-category="Site-Wide Custom Events" data-label="Footer Manage cookies link" aria-hidden="true" > Manage cookies </a> </li> <li class="devsite-footer-utility-item devsite-footer-utility-button"> <span class="devsite-footer-utility-description">Sign up for the TensorFlow newsletter</span> <a class="devsite-footer-utility-link gc-analytics-event" href="//www.tensorflow.org/subscribe" data-category="Site-Wide Custom Events" data-label="Footer Subscribe link" > Subscribe </a> </li> </ul> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="it" >Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi" >Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr" >Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he" >עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar" >العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa" >فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi" >हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn" >বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th" >ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> </nav> </div> </devsite-footer-utility> <devsite-panel></devsite-panel> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip ></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics> <script type="application/json" analytics>[{"dimensions": {"dimension12": false, "dimension1": "Signed out", "dimension5": "en", "dimension4": "TensorFlow", "dimension3": false, "dimension6": "en"}, "gaid": "UA-69864048-1", "metrics": {"ratings_count": "metric2", "ratings_value": "metric1"}, "purpose": 0}]</script> <script type="application/json" tag-management>{"at": "True", "ga4": [], "ga4p": [], "gtm": [{"id": "GTM-MXSL34P", "purpose": 0}], "parameters": {"internalUser": "False", "language": {"machineTranslated": "False", "requested": "en", "served": "en"}, "pageType": "article", "projectName": "TensorFlow", "signedIn": "False", "tenant": "tensorflow", "recommendations": {"sourcePage": "", "sourceType": 0, "sourceRank": 0, "sourceIdenticalDescriptions": 0, "sourceTitleWords": 0, "sourceDescriptionWords": 0, "experiment": ""}, "experiment": {"ids": ""}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <script nonce="Jyy2BFCBbjpDdepRR53aY0z0N1jU3U"> (function(d,e,v,s,i,t,E){d['GoogleDevelopersObject']=i; t=e.createElement(v);t.async=1;t.src=s;E=e.getElementsByTagName(v)[0]; E.parentNode.insertBefore(t,E);})(window, document, 'script', 'https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/tensorflow/js/app_loader.js', '[15,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/tensorflow","https://tensorflow-dot-devsite-v2-prod-3p.appspot.com",1,null,["/_pwa/tensorflow/manifest.json","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/tensorflow/images/favicon.png","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/tensorflow/images/lockup.svg","https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"],1,null,[1,6,8,12,14,17,21,25,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,112,113,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,147,148,149,151,152,156,157,158,159,161,163,164,168,169,170,179,180,182,183,186,191,193,196],"AIzaSyCNm9YxQumEXwGJgTDjxoxXK6m1F-9720Q","AIzaSyCc76DZePGtoyUjqKrLdsMGk_ry7sljLbY","www.tensorflow.org","AIzaSyB9bqgQ2t11WJsOX8qNsCQ6U-w91mmqF-I","AIzaSyAdYnStPdzjcJJtQ0mvIaeaMKj7_t6J_Fg",null,null,null,["Concierge__enable_pushui","Search__enable_page_map","MiscFeatureFlags__developers_footer_image","Profiles__enable_awarding_url","MiscFeatureFlags__enable_view_transitions","Cloud__enable_free_trial_server_call","EngEduTelemetry__enable_engedu_telemetry","CloudShell__cloud_shell_button","MiscFeatureFlags__enable_explain_this_code","Profiles__enable_release_notes_notifications","Cloud__enable_cloudx_ping","Cloud__enable_llm_concierge_chat","Cloud__enable_cloudx_experiment_ids","Search__enable_dynamic_content_confidential_banner","SignIn__enable_refresh_access_tokens","Profiles__enable_public_developer_profiles","DevPro__enable_developer_subscriptions","TpcFeatures__enable_mirror_tenant_redirects","Profiles__enable_profile_collections","Profiles__enable_complete_playlist_endpoint","Experiments__reqs_query_experiments","MiscFeatureFlags__emergency_css","MiscFeatureFlags__enable_project_variables","Profiles__enable_completecodelab_endpoint","MiscFeatureFlags__enable_variable_operator","Cloud__enable_cloud_dlp_service","Cloud__enable_cloud_shell_fte_user_flow","DevPro__enable_cloud_innovators_plus","Profiles__enable_developer_profiles_callout","BookNav__enable_tenant_cache_key","Cloud__enable_cloud_facet_chat","Search__enable_ai_eligibility_checks","CloudShell__cloud_code_overflow_menu","Cloud__enable_legacy_calculator_redirect","Profiles__enable_recognition_badges","Search__enable_suggestions_from_borg","Profiles__require_profile_eligibility_for_signin","MiscFeatureFlags__developers_footer_dark_image","Profiles__enable_dashboard_curated_recommendations","Profiles__enable_page_saving","TpcFeatures__enable_required_headers","Analytics__enable_clearcut_logging","Cloud__enable_cloud_shell","MiscFeatureFlags__enable_firebase_utm"],null,null,"AIzaSyA58TaKli1DculwmAmbpzLVGuWc8eCQgQc","https://developerscontentserving-pa.googleapis.com","AIzaSyDWBU60w0P9hEkr29kkksYs8Z7gvZ8u_wc","https://developerscontentsearch-pa.googleapis.com",2,4,null,"https://developerprofiles-pa.googleapis.com",[15,"tensorflow","TensorFlow","www.tensorflow.org",null,"tensorflow-dot-devsite-v2-prod-3p.appspot.com",null,null,[null,1,null,null,null,null,null,null,null,null,null,[1],null,null,null,null,null,null,[1],[1,null,null,[1]],null,null,null,[1,null,1],[1,1,null,1,1]],null,[25,null,null,null,null,null,"/images/lockup.svg","/images/logo.png",null,null,null,1,1,null,null,null,null,null,null,null,null,1,null,null,null,null,[]],[],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[6,1],null,[[],[1,1]],[[["UA-69864048-1"],["UA-69864048-4"],null,null,["UA-69864048-5"],["GTM-MXSL34P"],null,null,[["UA-69864048-1",1]],null,[["UA-69864048-5",1]],[["GTM-MXSL34P",1]],1],[[6,5],[12,8],[5,4],[3,2],[4,3],[1,1]],[[1,1],[2,2]]],null,4]]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>