CINXE.COM

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/"><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/" /><link rel="alternate" hreflang="x-default" href="https://www.tensorflow.org/" /><link rel="alternate" hreflang="ar" href="https://www.tensorflow.org/?hl=ar" /><link rel="alternate" hreflang="bn" href="https://www.tensorflow.org/?hl=bn" /><link rel="alternate" hreflang="zh-Hans" href="https://www.tensorflow.org/?hl=zh-cn" /><link rel="alternate" hreflang="zh-Hant" href="https://www.tensorflow.org/?hl=zh-tw" /><link rel="alternate" hreflang="fa" href="https://www.tensorflow.org/?hl=fa" /><link rel="alternate" hreflang="fr" href="https://www.tensorflow.org/?hl=fr" /><link rel="alternate" hreflang="he" href="https://www.tensorflow.org/?hl=he" /><link rel="alternate" hreflang="hi" href="https://www.tensorflow.org/?hl=hi" /><link rel="alternate" hreflang="id" href="https://www.tensorflow.org/?hl=id" /><link rel="alternate" hreflang="it" href="https://www.tensorflow.org/?hl=it" /><link rel="alternate" hreflang="ja" href="https://www.tensorflow.org/?hl=ja" /><link rel="alternate" hreflang="ko" href="https://www.tensorflow.org/?hl=ko" /><link rel="alternate" hreflang="pl" href="https://www.tensorflow.org/?hl=pl" /><link rel="alternate" hreflang="pt-BR" href="https://www.tensorflow.org/?hl=pt-br" /><link rel="alternate" hreflang="pt" href="https://www.tensorflow.org/?hl=pt" /><link rel="alternate" hreflang="ru" href="https://www.tensorflow.org/?hl=ru" /><link rel="alternate" hreflang="es" href="https://www.tensorflow.org/?hl=es" /><link rel="alternate" hreflang="es-419" href="https://www.tensorflow.org/?hl=es-419" /><link rel="alternate" hreflang="th" href="https://www.tensorflow.org/?hl=th" /><link rel="alternate" hreflang="tr" href="https://www.tensorflow.org/?hl=tr" /><link rel="alternate" hreflang="vi" href="https://www.tensorflow.org/?hl=vi" /><title>TensorFlow</title> <meta property="og:title" content="TensorFlow"><meta name="description" content="An end-to-end open source machine learning platform for everyone. Discover TensorFlow&#39;s flexible ecosystem of tools, libraries and community resources."> <meta property="og:description" content="An end-to-end open source machine learning platform for everyone. Discover TensorFlow&#39;s flexible ecosystem of tools, libraries and community resources."><meta property="og:url" content="https://www.tensorflow.org/"><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": "http://schema.org/", "@type": "Organization", "name": "TensorFlow", "logo": "https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/tensorflow/images/logo.png", "url": "https://www.tensorflow.org/" } </script> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "WebSite", "name": "TensorFlow", "url": "https://www.tensorflow.org/", "potentialAction": { "@type": "SearchAction", "target": "https://www.tensorflow.org/s/results?q={search_term_string}", "query-input": "required name=search_term_string" } } </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="product" 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 "> <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" 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" >Español</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" >Português</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 devsite-header-no-lower-tabs "> <div class="devsite-header-background"> </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 " 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> </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 &amp; datasets" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Models &amp; 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" > <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> </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-group tensorsite-home-background" data-section-id="hero"> <div class="tensorsite-home-hero-wrapper"> </div> <div class="tensorsite-container tensorflow-container--redesign-margin tensorsite-home-hero"> <div class="tensorsite-home-hero__main-section"> <div class="tensorsite-home-hero__header"> <devsite-iframe><iframe src="https://www.tensorflow.org/frame/root_2a0e3d959d29c491dcb2794e8a49d963c41382f6bdfb80903cbd57de26ebca4c.frame" class="framebox inherit-locale " allow="clipboard-write https://tensorflow-dot-devsite-v2-prod-3p.appspot.com" allowfullscreen is-upgraded></iframe></devsite-iframe> </div> <div class="tensorsite-content tensorsite-content--center-on-mobile"> <div class="tensorsite-content__title tensorsite-content__title--grow"> An end-to-end platform for machine learning </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-content__button tensorsite-button" devsite="true" href="/install" item-id="Install TensorFlow"> Install TensorFlow </a> </div> </div> </div> <div class="tensorsite-home-hero__secondary-section"> <img aria-hidden="true" loading="lazy" role="presentation" src="/static/site-assets/images/marketing/learn/learn-hero.svg"> </div> </div> </section> <section class="tensorsite-adjacent-partials tensorsite-adjacent-partials--get-started-with-tf"> <div class="tensorsite-container tensorsite-container--redesign-margin"> <div class="tensorsite-adjacent-partials-wrapper"> <div class="tensorsite-adjacent-partials__main-section"> <div class="tensorsite-content tensorsite-content--center-on-mobile"> <h2 class="tensorsite-content__title" id="get-started-with-tensorflow" data-text=" Get started with TensorFlow " tabindex="-1"> Get started with TensorFlow </h2> <div class="tensorsite-content__description"> <inline-html> <p>TensorFlow makes it easy to create ML models that can run in any environment. Learn how to use the intuitive APIs through interactive code samples.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-arrow-button tensorsite-content__cta-icon tensorsite-icon--redesign-arrow--small" devsite="true" href="/tutorials" item-id="View tutorials"> View tutorials <span> </span> </a> </div> </div> </div> <div class="tensorsite-adjacent-partials__secondary-section"> <div class="tensorsite-content"> <div class="tensorsite-content__code-block"> <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="Python"><span class="devsite-syntax-kn">import</span> <span class="devsite-syntax-nn">tensorflow</span> <span class="devsite-syntax-k">as</span> <span class="devsite-syntax-nn">tf</span> <span class="devsite-syntax-n">mnist</span> <span class="devsite-syntax-o">=</span> <span class="devsite-syntax-n">tf</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">keras</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">datasets</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">mnist</span> <span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">x_train</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">y_train</span><span class="devsite-syntax-p">),(</span><span class="devsite-syntax-n">x_test</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">y_test</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-o">=</span> <span class="devsite-syntax-n">mnist</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">load_data</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-n">x_train</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">x_test</span> <span class="devsite-syntax-o">=</span> <span class="devsite-syntax-n">x_train</span> <span class="devsite-syntax-o">/</span> <span class="devsite-syntax-mf">255.0</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">x_test</span> <span class="devsite-syntax-o">/</span> <span class="devsite-syntax-mf">255.0</span> <span class="devsite-syntax-n">model</span> <span class="devsite-syntax-o">=</span> <span class="devsite-syntax-n">tf</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">keras</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">models</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">Sequential</span><span class="devsite-syntax-p">([</span> <span class="devsite-syntax-n">tf</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">keras</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">layers</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">Flatten</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">input_shape</span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-mi">28</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-mi">28</span><span class="devsite-syntax-p">)),</span> <span class="devsite-syntax-n">tf</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">keras</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">layers</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">Dense</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-mi">128</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">activation</span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-s1">'relu'</span><span class="devsite-syntax-p">),</span> <span class="devsite-syntax-n">tf</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">keras</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">layers</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">Dropout</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-mf">0.2</span><span class="devsite-syntax-p">),</span> <span class="devsite-syntax-n">tf</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">keras</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">layers</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">Dense</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-mi">10</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">activation</span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-s1">'softmax'</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-p">])</span> <span class="devsite-syntax-n">model</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">compile</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">optimizer</span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-s1">'adam'</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">loss</span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-s1">'sparse_categorical_crossentropy'</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">metrics</span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-p">[</span><span class="devsite-syntax-s1">'accuracy'</span><span class="devsite-syntax-p">])</span> <span class="devsite-syntax-n">model</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">fit</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">x_train</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">y_train</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">epochs</span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-mi">5</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-n">model</span><span class="devsite-syntax-o">.</span><span class="devsite-syntax-n">evaluate</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">x_test</span><span class="devsite-syntax-p">,</span> <span class="devsite-syntax-n">y_test</span><span class="devsite-syntax-p">)</span></pre></devsite-code> <div class="colab-callout-footer"> <a class="button tensorsite-content__cta-icon tensorsite-icon--colab" content-type="colab" href="https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/tutorials/quickstart/beginner.ipynb" item-id="Run quickstart" rel="noopener" target="_blank"> Run quickstart <span> </span> </a> </div> </div> </div> </div> </div> </div> </section> <section #="" analytics="" anchors="" class="tensorsite-group tensorsite-group--redesign tensorsite-group--3up tensorsite-side-side--home-bg" data-section-id="solutions" for=""> <div class="tensorsite-side-side__background"> </div> <div class="tensorsite-container tensorsite-container--redesign-margin"> <div class="tensorsite-group__header"> <div class="tensorsite-content tensorsite-content--align-center tensorsite-content--center-on-mobile"> <h2 class="tensorsite-content__title" id="solve-real-world-problems-with-ml" data-text=" Solve real-world problems with ML " tabindex="-1"> Solve real-world problems with ML </h2> <div class="tensorsite-content__description"> <inline-html> <p>Explore examples of how TensorFlow is used to advance research and build AI-powered applications.</p> </inline-html> </div> </div> </div> <div class="tensorsite-group__inner"> <div class="tensorsite-card--redesign tensorsite-card--redesign tensorsite-card--video"> <button aria-label="Watch now" class="tensorsite-card__href devsite-dialog-button" data-modal-dialog-id="video-modal--tF70o1Q8VkM"> </button> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image" src="/static/site-assets/images/marketing/cards/webai-summit-2024.jpg"> <svg aria-hidden="true" class="tensorsite-content__image__play-button" height="96" width="96" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <defs> <path d="M48 0C21.504 0 0 21.504 0 48s21.504 48 48 48 48-21.504 48-48S74.496 0 48 0z" id="b"> </path> <filter filterunits="objectBoundingBox" height="175%" id="a" width="175%" x="-37.5%" y="-37.5%"> <feoffset in="SourceAlpha" result="shadowOffsetOuter1"> </feoffset> <fegaussianblur in="shadowOffsetOuter1" result="shadowBlurOuter1" stddeviation="12"> </fegaussianblur> <fecolormatrix in="shadowBlurOuter1" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.08 0"> </fecolormatrix> </filter> <lineargradient id="c" x1="60.966%" x2="36.71%" y1="29.2%" y2="69.385%"> <stop offset="0%" stop-color="#FF9100"> </stop> <stop offset="100%" stop-color="#FF6F00"> </stop> </lineargradient> </defs> <g fill="none" fill-rule="nonzero"> <use fill="#000" filter="url(#a)" xlink:href="#b"> </use> <use fill="#FFF" xlink:href="#b"> </use> <path d="M41 63V33l20 15z" fill="url(#c)"> </path> </g> </svg> </img> </div> <div class="tensorsite-content tensorsite-content--under-image"> <div class="tensorsite-content__categories"> <div class="tensorsite-content__category"> <span class="tensorsite-content__category-text"> TENSORFLOW.JS </span> </div> </div> <a class="tensorsite-content__title"> Catch up on the latest from the Web AI Summit </a> <div class="tensorsite-content__description"> <inline-html> <p>Explore the latest advancements in running models client-side with speakers from Chrome, MediaPipe, Intel, Hugging Face, Microsoft, LangChain, and more.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-arrow-button tensorsite-content__cta-icon tensorsite-icon--redesign-arrow--small" href="https://www.youtube.com/watch?v=tF70o1Q8VkM&amp;list=PLNYkxOF6rcIAEVKJ98bDkQRkwvO4grhnt" item-id="Watch the Web AI Summit 2024"> Watch now <span> </span> </a> </div> </div> </div> <div class="devsite-dialog tensorsite-video-modal" id="video-modal--tF70o1Q8VkM"> <div class="tensorsite-video-modal__buttons"> <button class="devsite-dialog-close"> <i class="material-icons" aria-hidden="true" translate="no"> close </i> </button> </div> <div class="devsite-dialog-contents"> <div class="video-wrapper-full-width"> <iframe allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="true" class="devsite-embedded-youtube-video" data-autohide="1" data-showinfo="0" data-video-id="tF70o1Q8VkM" frameborder="0"> </iframe> </div> </div> </div> <div class="tensorsite-card--redesign tensorsite-card--redesign"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image tensorsite-content__main-image" src="/static/site-assets/images/marketing/cards/tensorflow-gnn.png"> <div class="tensorsite-content__hover-video"> <video autoplay="" data-video="" loop="" muted="" playsinline="" poster="/site-assets/images/marketing/cards/tensorflow-gnn.png" preload="" src="/static/site-assets/images/marketing/cards/tensorflow-gnn.mp4"> </video> </div> </div> <div class="tensorsite-content tensorsite-content--under-image"> <div class="tensorsite-content__categories"> <div class="tensorsite-content__category"> <span class="tensorsite-content__category-text"> TensorFlow GNN </span> </div> </div> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2024/02/graph-neural-networks-in-tensorflow.html" item-id="Analyze relational data using graph neural networks"> Analyze relational data using graph neural networks </a> <div class="tensorsite-content__description"> <inline-html> <p>GNNs can process complex relationships between objects, making them a powerful technique for traffic forecasting, medical discovery, and more.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-arrow-button tensorsite-content__cta-icon tensorsite-icon--redesign-arrow--small" href="https://blog.tensorflow.org/2024/02/graph-neural-networks-in-tensorflow.html" item-id="Analyze relational data using graph neural networks" tabindex="-1"> Learn about TF GNN <span> </span> </a> </div> </div> </div> <div class="tensorsite-card--redesign tensorsite-card--redesign"> <div class="tensorsite-content__image-wrapper"> <img alt class="tensorsite-content__image tensorsite-content__main-image" src="/static/site-assets/images/marketing/cards/spotify-tensorflow-agents-recommendation-systems.png"> <img class="tensorsite-content__hover-image" src="/static/site-assets/images/marketing/cards/spotify-tensorflow-agents-recommendation-systems.gif"> </div> <div class="tensorsite-content tensorsite-content--under-image"> <div class="tensorsite-content__categories"> <div class="tensorsite-content__category"> <span class="tensorsite-content__category-text"> TensorFlow Agents </span> </div> </div> <a class="tensorsite-content__title" href="https://blog.tensorflow.org/2023/10/simulated-spotify-listening-experiences-reinforcement-learning-tensorflow-tf-agents.html" item-id="Build recommendation systems with reinforcement learning"> Build recommendation systems with reinforcement learning </a> <div class="tensorsite-content__description"> <inline-html> <p>Learn how Spotify uses the TensorFlow ecosystem to design an extendable offline simulator and train RL Agents to generate playlists.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-arrow-button tensorsite-content__cta-icon tensorsite-icon--redesign-arrow--small" href="https://blog.tensorflow.org/2023/10/simulated-spotify-listening-experiences-reinforcement-learning-tensorflow-tf-agents.html" item-id="Build recommendation systems with reinforcement learning" tabindex="-1"> Read the blog <span> </span> </a> </div> </div> </div> </div> </div> </section> <section class="tensorsite-grid-group tensorsite-container" data-section-id="news"> <div> <div class="tensorsite-content tensorsite-content--align-center"> <h2 class="tensorsite-content__title" id="whats-new-in-tensorflow" data-text=" What's new in TensorFlow " tabindex="-1"> What's new in TensorFlow </h2> <div class="tensorsite-content__description"> <inline-html> <p>Read the latest announcements from the TensorFlow team and community.</p> </inline-html> </div> </div> </div> <div class="tensorsite-grid-group__wrapper"> <div class="tensorsite-home-dynamic-blog"> <devsite-dynamic-content dynamic-card-type="card" fields="title image date" initial-results="2" items-per-page="2" maxresults="6" query="tenant:tensorflow+type:blog"> </devsite-dynamic-content> </div> </div> </section> <section class="tensorsite-blog-carousel tensorsite-blog-carousel--gray"> <div class="tensorsite-container tensorsite-container--redesign-margin tensorsite-content--center-on-mobile"> <div class="tensorsite-blog-carousel__card"> <div> <div class="tensorsite-content"> <h2 class="tensorsite-content__title" id="explore-the-ecosystem" data-text=" Explore the ecosystem " tabindex="-1"> Explore the ecosystem </h2> <div class="tensorsite-content__description"> <inline-html> <p>Discover production-tested tools to accelerate modeling, deployment, and other workflows.</p> </inline-html> </div> </div> </div> <div class="tensorsite-blog-carousel__section"> <devsite-carousel data-controls-position="center" data-hide-mobile-controls="true" data-items-per-slide="auto"> <ul> <li> <a href="/js" item-id="TensorFlow.js"> <div class="tensorsite-blog-carousel__wrapper"> <p class="tensorsite-blog-carousel__eyebrow"> Library </p> <h3 class="tensorsite-blog-carousel__title" id="tensorflow.js" data-text=" TensorFlow.js " tabindex="-1"> TensorFlow.js </h3> <p class="tensorsite-blog-carousel__description"> Train and run models directly in the browser using JavaScript or Node.js. </p> </div> </a> </li> <li> <a href="https://ai.google.dev/edge/litert" item-id="LiteRT"> <div class="tensorsite-blog-carousel__wrapper"> <p class="tensorsite-blog-carousel__eyebrow"> Library </p> <h3 class="tensorsite-blog-carousel__title" id="litert" data-text=" LiteRT " tabindex="-1"> LiteRT </h3> <p class="tensorsite-blog-carousel__description"> Deploy ML on mobile and edge devices such as Android, iOS, Raspberry Pi, and Edge TPU. </p> </div> </a> </li> <li> <a devsite="true" href="/guide/data" item-id="tf.data"> <div class="tensorsite-blog-carousel__wrapper"> <p class="tensorsite-blog-carousel__eyebrow"> API </p> <h3 class="tensorsite-blog-carousel__title" id="tf.data" data-text=" tf.data " tabindex="-1"> tf.data </h3> <p class="tensorsite-blog-carousel__description"> Preprocess data and create input pipelines for ML models. </p> </div> </a> </li> <li> <a href="/tfx" item-id="TFX"> <div class="tensorsite-blog-carousel__wrapper"> <p class="tensorsite-blog-carousel__eyebrow"> Library </p> <h3 class="tensorsite-blog-carousel__title" id="tfx" data-text=" TFX " tabindex="-1"> TFX </h3> <p class="tensorsite-blog-carousel__description"> Create production ML pipelines and implement MLOps best practices. </p> </div> </a> </li> <li> <a devsite="true" href="/guide/keras" item-id="tf.keras"> <div class="tensorsite-blog-carousel__wrapper"> <p class="tensorsite-blog-carousel__eyebrow"> API </p> <h3 class="tensorsite-blog-carousel__title" id="tf.keras" data-text=" tf.keras " tabindex="-1"> tf.keras </h3> <p class="tensorsite-blog-carousel__description"> Create ML models with TensorFlow's high-level API. </p> </div> </a> </li> <li> <a href="https://www.kaggle.com/models" item-id="Kaggle Models"> <div class="tensorsite-blog-carousel__wrapper"> <p class="tensorsite-blog-carousel__eyebrow"> Resource </p> <h3 class="tensorsite-blog-carousel__title" id="kaggle-models" data-text=" Kaggle Models " tabindex="-1"> Kaggle Models </h3> <p class="tensorsite-blog-carousel__description"> Find pre-trained models ready for fine-tuning and deployment. </p> </div> </a> </li> <li> <a devsite="true" href="/datasets" item-id="TensorFlow Datasets"> <div class="tensorsite-blog-carousel__wrapper"> <p class="tensorsite-blog-carousel__eyebrow"> Resource </p> <h3 class="tensorsite-blog-carousel__title" id="tensorflow-datasets" data-text=" TensorFlow Datasets " tabindex="-1"> TensorFlow Datasets </h3> <p class="tensorsite-blog-carousel__description"> Browse the collection of standard datasets for initial training and validation. </p> </div> </a> </li> <li> <a devsite="true" href="/tensorboard" item-id="TensorBoard"> <div class="tensorsite-blog-carousel__wrapper"> <p class="tensorsite-blog-carousel__eyebrow"> Tool </p> <h3 class="tensorsite-blog-carousel__title" id="tensorboard" data-text=" TensorBoard " tabindex="-1"> TensorBoard </h3> <p class="tensorsite-blog-carousel__description"> Visualize and track development of ML models. </p> </div> </a> </li> </ul> </devsite-carousel> </div> <div class="tensorsite-blog-carousel__footer"> <section class="tensorsite-grid-group tensorsite-container"> <div class="tensorsite-grid-group__wrapper tensorsite-grid-group__wrapper--3up"> <div class="tensorsite-tile"> <a href="/resources/models-datasets" item-id=""> <div class="tensorsite-tile__wrapper"> <div class="tensorsite-tile__image-wrapper"> <img alt class="tensorsite-tile__image" src="/static/site-assets/images/marketing/home/model.svg"> </div> <div class="tensorsite-tile-content"> <h3 class="tensorsite-tile__title" id="ml-models-datasets" data-text=" ML models &amp; datasets " tabindex="-1"> ML models &amp; datasets </h3> <p class="tensorsite-tile__description"> Pretrained models and ready-to-use datasets for image, text, audio, and video use cases. </p> </div> </div> </a> </div> <div class="tensorsite-tile"> <a href="/resources/libraries-extensions" item-id=""> <div class="tensorsite-tile__wrapper"> <div class="tensorsite-tile__image-wrapper"> <img alt class="tensorsite-tile__image" src="/static/site-assets/images/marketing/home/research.svg"> </div> <div class="tensorsite-tile-content"> <h3 class="tensorsite-tile__title" id="libraries-extensions" data-text=" Libraries &amp; extensions " tabindex="-1"> Libraries &amp; extensions </h3> <p class="tensorsite-tile__description"> Packages for domain-specific applications and APIs for languages other than Python. </p> </div> </div> </a> </div> <div class="tensorsite-tile"> <a href="/resources/tools" item-id=""> <div class="tensorsite-tile__wrapper"> <div class="tensorsite-tile__image-wrapper"> <img alt class="tensorsite-tile__image" src="/static/site-assets/images/marketing/home/robust.svg"> </div> <div class="tensorsite-tile-content"> <h3 class="tensorsite-tile__title" id="developer-tools" data-text=" Developer tools " tabindex="-1"> Developer tools </h3> <p class="tensorsite-tile__description"> Tools to evaluate models, optimize performance, and productionize ML workflows. </p> </div> </div> </a> </div> </div> </section> </div> </div> </div> </section> <section class="tensorsite-adjacent-partials"> <div class="tensorsite-container tensorsite-container--redesign-margin"> <div class="tensorsite-adjacent-partials-wrapper"> <div class="tensorsite-adjacent-partials__main-section"> <img loading="lazy" src="/static/site-assets/images/marketing/home/home-join-3.svg"> </div> <div class="tensorsite-adjacent-partials__secondary-section"> <div class="tensorsite-content tensorsite-content--center-on-mobile"> <div class="tensorsite-content__title"> Join the community </div> <div class="tensorsite-content__description"> <inline-html> <p>Collaborate, find support, and share your projects by joining interest groups or attending developer events.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-arrow-button tensorsite-content__cta-icon tensorsite-icon--redesign-arrow--small" href="/community" item-id="Get involved"> Get involved <span> </span> </a> </div> </div> </div> </div> </div> </section> <section class="tensorsite-adjacent-partials"> <div class="tensorsite-container tensorsite-container--redesign-margin"> <div class="tensorsite-adjacent-partials-wrapper tensorsite-adjacent-partials-wrapper--mobile-reverse"> <div class="tensorsite-adjacent-partials__main-section"> <div class="tensorsite-content tensorsite-content--center-on-mobile"> <div class="tensorsite-content__title"> Learn ML </div> <div class="tensorsite-content__description"> <inline-html> <p>New to machine learning? Begin with TensorFlow's curated curriculums or browse the resource library of books, online courses, and videos.</p> </inline-html> </div> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__cta tensorsite-arrow-button tensorsite-content__cta-icon tensorsite-icon--redesign-arrow--small" href="/resources/learn-ml" item-id="Explore resources"> Explore resources <span> </span> </a> </div> </div> </div> <div class="tensorsite-adjacent-partials__secondary-section"> <img loading="lazy" src="/static/site-assets/images/marketing/home/home-join-2.svg"> </div> </div> </div> </section> <section class="tensorsite-stay-connected" data-section-id="stay-connected"> <div class="tensorsite-stay-connected__background"> </div> <div class="tensorsite-stay-connected__container tensorsite-container tensorsite-container--redesign-margin"> <div class="tensorsite-content tensorsite-stay-connected__text-container"> <h2 class="tensorsite-content__title" id="stay-connected" data-text=" Stay connected " tabindex="-1"> Stay connected </h2> <p class="tensorsite-content__description"> <inline-html>Learn the latest in machine learning and TensorFlow by following our channels or signing up for the newsletter. View past newsletters in the <a href="/subscribe/latest">archive</a>. </inline-html> </p> <div class="tensorsite-logo-ctas-container show-on-desktop"> <a class="tensorsite-content__cta-image" href="https://discuss.tensorflow.org/" item-id="Forum"> <div class="cta-image"> <img alt="forum logo" src="/static/site-assets/images/marketing/home/forum-logo.svg"> </img> </div> Forum </a> <a class="tensorsite-content__cta-image" href="https://twitter.com/tensorflow" item-id="X"> <div class="cta-image"> <img alt="x logo" src="/static/site-assets/images/marketing/home/x-logo.svg"> </img> </div> X </a> <a class="tensorsite-content__cta-image" href="https://www.youtube.com/tensorflow" item-id="YouTube"> <div class="cta-image"> <img alt="youtube logo" src="/static/site-assets/images/marketing/home/youtube-logo.svg"> </img> </div> YouTube </a> <a class="tensorsite-content__cta-image" href="https://www.linkedin.com/showcase/tensorflowdev/" item-id="Linkedin"> <div class="cta-image"> <img alt="linkedin logo" src="/static/site-assets/images/marketing/home/linkedin-logo.svg"> </img> </div> Linkedin </a> </div> </div> <div class="tensorsite-stay-connected__steps-container"> <devsite-iframe><iframe src="https://www.tensorflow.org/frame/root_0d59a23ad3e341e7562f6b4c3fbdaa71f48cc0d8ea17ba7f5ad9ccebb14112a0.frame" class="framebox inherit-locale " allow="clipboard-write https://tensorflow-dot-devsite-v2-prod-3p.appspot.com" allowfullscreen is-upgraded></iframe></devsite-iframe> </link> </div> <div class="tensorsite-logo-ctas-container show-on-mobile"> <a class="tensorsite-content__cta-image" href="https://discuss.tensorflow.org/" item-id="Forum"> <div class="cta-image"> <img alt="forum logo" src="/static/site-assets/images/marketing/home/forum-logo.svg"> </img> </div> Forum </a> <a class="tensorsite-content__cta-image" href="https://twitter.com/tensorflow" item-id="X"> <div class="cta-image"> <img alt="x logo" src="/static/site-assets/images/marketing/home/x-logo.svg"> </div> X </a> <a class="tensorsite-content__cta-image" href="https://www.youtube.com/tensorflow" item-id="YouTube"> <div class="cta-image"> <img alt="youtube logo" src="/static/site-assets/images/marketing/home/youtube-logo.svg"> </div> YouTube </a> <a class="tensorsite-content__cta-image" href="https://www.linkedin.com/showcase/tensorflowdev/" item-id="Linkedin"> <div class="cta-image"> <img alt="linkedin logo" src="/static/site-assets/images/marketing/home/linkedin-logo.svg"> </div> Linkedin </a> </div> </div> </section> <section class="tensorsite-footer tensorsite-footer--gray tensorsite-footer--redesign" 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="start-building-with-tensorflow" data-text=" Start building with TensorFlow " tabindex="-1"> Start building with TensorFlow </h2> <div class="tensorsite-content__cta-wrapper"> <a class="tensorsite-content__button tensorsite-button tensorsite-button--white tensorsite-content__button tensorsite-button tensorsite-button--white tensorsite-content__cta-icon tensorsite-icon--redesign-arrow--small" devsite="true" href="/install" item-id="Install TensorFlow"> Install TensorFlow <span> </span> </a> <a class="tensorsite-content__button tensorsite-button tensorsite-button--white tensorsite-content__button tensorsite-button tensorsite-button--white tensorsite-content__cta-icon tensorsite-icon--redesign-arrow--small" devsite="true" href="/tutorials" item-id="Explore tutorials"> Explore tutorials <span> </span> </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" >Español</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" >Português</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>[{&#34;dimensions&#34;: {&#34;dimension1&#34;: &#34;Signed out&#34;, &#34;dimension3&#34;: false, &#34;dimension12&#34;: false, &#34;dimension5&#34;: &#34;en&#34;, &#34;dimension6&#34;: &#34;en&#34;, &#34;dimension4&#34;: &#34;TensorFlow&#34;}, &#34;gaid&#34;: &#34;UA-69864048-1&#34;, &#34;metrics&#34;: {&#34;ratings_count&#34;: &#34;metric2&#34;, &#34;ratings_value&#34;: &#34;metric1&#34;}, &#34;purpose&#34;: 0}]</script> <script type="application/json" tag-management>{&#34;at&#34;: &#34;True&#34;, &#34;ga4&#34;: [], &#34;ga4p&#34;: [], &#34;gtm&#34;: [{&#34;id&#34;: &#34;GTM-MXSL34P&#34;, &#34;purpose&#34;: 0}], &#34;parameters&#34;: {&#34;internalUser&#34;: &#34;False&#34;, &#34;language&#34;: {&#34;machineTranslated&#34;: &#34;False&#34;, &#34;requested&#34;: &#34;en&#34;, &#34;served&#34;: &#34;en&#34;}, &#34;pageType&#34;: &#34;product&#34;, &#34;projectName&#34;: &#34;TensorFlow&#34;, &#34;signedIn&#34;: &#34;False&#34;, &#34;tenant&#34;: &#34;tensorflow&#34;, &#34;recommendations&#34;: {&#34;sourcePage&#34;: &#34;&#34;, &#34;sourceType&#34;: 0, &#34;sourceRank&#34;: 0, &#34;sourceIdenticalDescriptions&#34;: 0, &#34;sourceTitleWords&#34;: 0, &#34;sourceDescriptionWords&#34;: 0, &#34;experiment&#34;: &#34;&#34;}, &#34;experiment&#34;: {&#34;ids&#34;: &#34;&#34;}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <script nonce="yytKOgg1sg2O1cvZuPJS9gVV+AH8Fl"> (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,["CloudShell__cloud_shell_button","Profiles__enable_completecodelab_endpoint","Profiles__enable_developer_profiles_callout","Cloud__enable_cloud_shell","Search__enable_ai_eligibility_checks","Profiles__enable_recognition_badges","MiscFeatureFlags__enable_explain_this_code","MiscFeatureFlags__developers_footer_dark_image","Profiles__enable_complete_playlist_endpoint","SignIn__enable_refresh_access_tokens","Cloud__enable_llm_concierge_chat","Cloud__enable_cloud_dlp_service","MiscFeatureFlags__enable_firebase_utm","EngEduTelemetry__enable_engedu_telemetry","Profiles__enable_release_notes_notifications","MiscFeatureFlags__developers_footer_image","Experiments__reqs_query_experiments","Profiles__enable_public_developer_profiles","Cloud__enable_legacy_calculator_redirect","Cloud__enable_cloudx_experiment_ids","Cloud__enable_cloudx_ping","Profiles__enable_page_saving","TpcFeatures__enable_mirror_tenant_redirects","Profiles__enable_awarding_url","Cloud__enable_cloud_facet_chat","BookNav__enable_tenant_cache_key","DevPro__enable_developer_subscriptions","MiscFeatureFlags__emergency_css","MiscFeatureFlags__enable_project_variables","Search__enable_dynamic_content_confidential_banner","Search__enable_suggestions_from_borg","Search__enable_page_map","MiscFeatureFlags__enable_view_transitions","MiscFeatureFlags__enable_variable_operator","Cloud__enable_free_trial_server_call","TpcFeatures__enable_required_headers","CloudShell__cloud_code_overflow_menu","Analytics__enable_clearcut_logging","Cloud__enable_cloud_shell_fte_user_flow","Profiles__require_profile_eligibility_for_signin","DevPro__enable_cloud_innovators_plus","Profiles__enable_dashboard_curated_recommendations","Profiles__enable_profile_collections","Concierge__enable_pushui"],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],[[3,2],[12,8],[5,4],[6,5],[1,1],[4,3]],[[1,1],[2,2]]],null,4]]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10