CINXE.COM
Firebase ML | Machine learning for mobile developers
<!doctype html> <html lang="en" dir="ltr"> <head><script type="text/javascript" src="/_static/js/bundle-playback.js?v=HxkREWBo" charset="utf-8"></script> <script type="text/javascript" src="/_static/js/wombat.js?v=txqj7nKC" charset="utf-8"></script> <script>window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script> <script type="text/javascript" src="/_static/js/ruffle/ruffle.js"></script> <script type="text/javascript"> __wm.init("https://web.archive.org/web"); __wm.wombat("https://firebase.google.com/products/ml","20210302141517","https://web.archive.org/","web","/_static/", "1614694517"); </script> <link rel="stylesheet" type="text/css" href="/_static/css/banner-styles.css?v=S1zqJCYt" /> <link rel="stylesheet" type="text/css" href="/_static/css/iconochive.css?v=3PDvdIFv" /> <!-- End Wayback Rewrite JS Include --> <meta name="google-signin-client-id" content="721724668570-nbkv1cfusk7kk4eni4pjvepaus73b13t.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email"> <meta property="og:site_name" content="Firebase"> <meta property="og:type" content="website"> <meta name="theme-color" content="#039be5"> <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="/web/20210302141517/https://firebase.google.com/_pwa/firebase/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//web.archive.org/web/20210302141517/https://www.gstatic.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20210302141517/https://fonts.gstatic.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20210302141517/https://fonts.googleapis.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20210302141517/https://apis.google.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20210302141517/https://www.google-analytics.com/" crossorigin> <link rel="stylesheet" href="//web.archive.org/web/20210302141517cs_/https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700|Material+Icons"> <link rel="stylesheet" href="https://web.archive.org/web/20210302141517cs_/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19/firebase/css/app.css"> <noscript> </noscript> <link rel="shortcut icon" href="https://web.archive.org/web/20210302141517im_/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19/firebase/images/favicon.png"> <link rel="apple-touch-icon" href="https://web.archive.org/web/20210302141517im_/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19/firebase/images/touchicon-180.png"><link rel="canonical" href="https://web.archive.org/web/20210302141517/https://firebase.google.com/products/ml"><link rel="search" type="application/opensearchdescription+xml" title="Firebase" href="https://web.archive.org/web/20210302141517/https://firebase.google.com/s/opensearch.xml"> <title>Firebase ML | Machine learning for mobile developers</title> <meta property="og:title" content="Firebase ML | Machine learning for mobile developers"> <meta name="description" content="Firebase ML lets you bring powerful machine learning features to your app whether it's for Android or iOS, and whether you're an experienced machine learning developer or you're just getting started."> <meta property="og:description" content="Firebase ML lets you bring powerful machine learning features to your app whether it's for Android or iOS, and whether you're an experienced machine learning developer or you're just getting started."> <meta property="og:url" content="https://web.archive.org/web/20210302141517/https://firebase.google.com/products/ml"> <meta property="og:locale" content="en"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="name" content="Firebase ML | Machine learning for mobile developers"/> <meta name="image" content="https://firebase.google.com/images/social.png"> <meta name="twitter:title" content="Firebase ML | Machine learning for mobile developers"> <meta name="twitter:description" content="Firebase ML lets you bring powerful machine learning features to your app whether it's for Android or iOS, and whether you're an experienced machine learning developer or you're just getting started. "> <meta name="twitter:site" content="@firebase"> <meta name="twitter:domain" content="firebase.google.com"> <meta name="twitter:image" content="/web/20210302141517im_/https://firebase.google.com/images/products/ml-kit/mlkit-1.png"/> <meta name="twitter:image:alt" value=""/> <meta name="twitter:card" value=""/> <meta property="og:title" content="Firebase ML | Machine learning for mobile developers"/> <meta property="og:type" content="website"/> <meta property="og:url" content="https://web.archive.org/web/20210302141517/https://firebase.google.com/products/ml/"/> <meta property="og:image" content="https://web.archive.org/web/20210302141517im_/https://firebase.google.com/images/social.png"/> <meta property="og:description" content="Firebase ML lets you bring powerful machine learning features to your app whether it's for Android or iOS, and whether you're an experienced machine learning developer or you're just getting started. "/> <meta name="msapplication-tap-highlight" content="no"> </head> <body type="marketing" theme="firebase-theme" class="firebase-page-product firesite-lang--en firebase-page-product" layout="full" pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"><devsite-header> <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="/web/20210302141517/https://firebase.google.com/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="firebase" track-metadata-position="nav" track-metadata-eventdetail="nav"> <img src="https://web.archive.org/web/20210302141517im_/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19/firebase/images/lockup.png" class="devsite-site-logo" alt="Firebase"> </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 dropdown> <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/products-build" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="products" aria-haspopup="true" aria-expanded="false" data-category="Site-Wide Custom Events" data-label="Tab: Products"> Products </a> <a href="#" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu" role="button" track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="products" data-category="Site-Wide Custom Events" data-label="Tab: Products" 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://web.archive.org/web/20210302141517/https://firebase.google.com/products-build" track-type="navMenu" track-name="Build" track-metadata-position="nav" track-metadata-href="https://firebase.google.com/products-build" tooltip> <div class="devsite-nav-item-title"> Build </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/products-release" track-type="navMenu" track-name="Release & Monitor" track-metadata-position="nav" track-metadata-href="https://firebase.google.com/products-release" tooltip> <div class="devsite-nav-item-title"> Release & Monitor </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/products-engage" track-type="navMenu" track-name="Engage" track-metadata-position="nav" track-metadata-href="https://firebase.google.com/products-engage" tooltip> <div class="devsite-nav-item-title"> Engage </div> </a> </li> </ul> </div> </div> </div> </tab> <tab> <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/use-cases" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="useCases" data-category="Site-Wide Custom Events" data-label="Tab: Use Cases"> Use Cases </a> </tab> <tab> <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/pricing" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="pricing" data-category="Site-Wide Custom Events" data-label="Tab: Pricing"> Pricing </a> </tab> <tab> <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/docs" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="docs" data-category="Site-Wide Custom Events" data-label="Tab: Docs"> Docs </a> </tab> <tab> <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/community" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="community" data-category="Site-Wide Custom Events" data-label="Tab: Community"> Community </a> </tab> <tab> <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/support" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="support" data-category="Site-Wide Custom Events" data-label="Tab: Support"> Support </a> </tab> </nav> </devsite-tabs> </div> <devsite-search aria-expanded="false" aria-haspopup="listbox" enable-signin enable-search enable-suggestions enable-query-completion project-name="Firebase" tenant-name="Firebase" role="combobox"> <form class="devsite-search-form" action="https://web.archive.org/web/20210302141517/https://firebase.google.com/s/results" method="GET"> <div class="devsite-search-container"> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-haspopup="false" aria-multiline="false" aria-label="Search box" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" type="text" value=""> <div class="devsite-search-image material-icons" aria-hidden="true"></div> </div> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> </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> <devsite-select class="devsite-language-selector-menu"> <select aria-label="Select your language preference." class="devsite-language-selector-select" name="language" track-name="click" track-type="languageSelector"> <option>Language</option> <option value="en" lang="en" track-metadata-original-language="en" track-metadata-selected-language="en" track-name="changed" track-type="languageSelector"> English </option> <option value="id" lang="id" track-metadata-original-language="en" track-metadata-selected-language="id" track-name="changed" track-type="languageSelector"> Bahasa Indonesia </option> <option value="de" lang="de" track-metadata-original-language="en" track-metadata-selected-language="de" track-name="changed" track-type="languageSelector"> Deutsch </option> <option value="es_419" lang="es_419" track-metadata-original-language="en" track-metadata-selected-language="es_419" track-name="changed" track-type="languageSelector"> Español – América Latina </option> <option value="fr" lang="fr" track-metadata-original-language="en" track-metadata-selected-language="fr" track-name="changed" track-type="languageSelector"> Français </option> <option value="it" lang="it" track-metadata-original-language="en" track-metadata-selected-language="it" track-name="changed" track-type="languageSelector"> Italiano </option> <option value="pl" lang="pl" track-metadata-original-language="en" track-metadata-selected-language="pl" track-name="changed" track-type="languageSelector"> Polski </option> <option value="pt_br" lang="pt_br" track-metadata-original-language="en" track-metadata-selected-language="pt_br" track-name="changed" track-type="languageSelector"> Português – Brasil </option> <option value="vi" lang="vi" track-metadata-original-language="en" track-metadata-selected-language="vi" track-name="changed" track-type="languageSelector"> Tiếng Việt </option> <option value="tr" lang="tr" track-metadata-original-language="en" track-metadata-selected-language="tr" track-name="changed" track-type="languageSelector"> Türkçe </option> <option value="ru" lang="ru" track-metadata-original-language="en" track-metadata-selected-language="ru" track-name="changed" track-type="languageSelector"> Русский </option> <option value="he" lang="he" track-metadata-original-language="en" track-metadata-selected-language="he" track-name="changed" track-type="languageSelector"> עברית' </option> <option value="ar" lang="ar" track-metadata-original-language="en" track-metadata-selected-language="ar" track-name="changed" track-type="languageSelector"> العربيّة </option> <option value="fa" lang="fa" track-metadata-original-language="en" track-metadata-selected-language="fa" track-name="changed" track-type="languageSelector"> فارسی </option> <option value="hi" lang="hi" track-metadata-original-language="en" track-metadata-selected-language="hi" track-name="changed" track-type="languageSelector"> हिंदी </option> <option value="bn" lang="bn" track-metadata-original-language="en" track-metadata-selected-language="bn" track-name="changed" track-type="languageSelector"> বাংলা </option> <option value="th" lang="th" track-metadata-original-language="en" track-metadata-selected-language="th" track-name="changed" track-type="languageSelector"> ภาษาไทย </option> <option value="zh_cn" lang="zh_cn" track-metadata-original-language="en" track-metadata-selected-language="zh_cn" track-name="changed" track-type="languageSelector"> 中文 – 简体 </option> <option value="zh_tw" lang="zh_tw" track-metadata-original-language="en" track-metadata-selected-language="zh_tw" track-name="changed" track-type="languageSelector"> 中文 – 繁體 </option> <option value="ja" lang="ja" track-metadata-original-language="en" track-metadata-selected-language="ja" track-name="changed" track-type="languageSelector"> 日本語 </option> <option value="ko" lang="ko" track-metadata-original-language="en" track-metadata-selected-language="ko" track-name="changed" track-type="languageSelector"> 한국어 </option> </select> </devsite-select> </devsite-language-selector> <a class="devsite-header-link devsite-top-button button gc-analytics-event" href="//web.archive.org/web/20210302141517/https://console.firebase.google.com/" data-category="Site-Wide Custom Events" data-label="Site header link"> Go to console </a> <devsite-user enable-profiles fp-auth id="devsite-user"></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> <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="/web/20210302141517/https://firebase.google.com/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="firebase" track-metadata-position="nav" track-metadata-eventdetail="nav"> <img src="https://web.archive.org/web/20210302141517im_/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19/firebase/images/lockup.png" class="devsite-site-logo" alt="Firebase"> </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="/web/20210302141517/https://firebase.google.com/products-build" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Products" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="products"> <span class="devsite-nav-text" tooltip> Products </span> <span class="devsite-nav-icon material-icons" data-icon="forward"> </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip> <span class="devsite-nav-text" tooltip menu="Products"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Products"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/web/20210302141517/https://firebase.google.com/use-cases" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Use Cases" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="useCases"> <span class="devsite-nav-text" tooltip> Use Cases </span> <span class="devsite-nav-icon material-icons" data-icon="forward"> </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210302141517/https://firebase.google.com/pricing" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Pricing" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="pricing"> <span class="devsite-nav-text" tooltip> Pricing </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210302141517/https://firebase.google.com/docs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Docs" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="docs"> <span class="devsite-nav-text" tooltip> Docs </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210302141517/https://firebase.google.com/community" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Community" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="community"> <span class="devsite-nav-text" tooltip> Community </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210302141517/https://firebase.google.com/support" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Support" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="support"> <span class="devsite-nav-text" tooltip> Support </span> <span class="devsite-nav-icon material-icons" data-icon="forward"> </span> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210302141517/https://console.firebase.google.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Go to console" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="goToConsole"> <span class="devsite-nav-text" tooltip> Go to console </span> </a> </li> </ul> </div> <div class="devsite-mobile-nav-bottom" role="navigation"> <ul class="devsite-nav-list" menu="Products" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="/web/20210302141517/https://firebase.google.com/products-build" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Build" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="build"> <span class="devsite-nav-text" tooltip> Build </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210302141517/https://firebase.google.com/products-release" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Release & Monitor" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="release&Monitor"> <span class="devsite-nav-text" tooltip> Release & Monitor </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210302141517/https://firebase.google.com/products-engage" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Engage" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="engage"> <span class="devsite-nav-text" tooltip> Engage </span> </a> </li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" class="devsite-main-content"> <devsite-toc class="devsite-nav" disabled></devsite-toc> <devsite-content> <article class="devsite-article"><style> /* Styles inlined from /styles/main.css */ @font-face{font-family:'GMP Icons';src:local("GMP Icons"),url(//web.archive.org/web/20210302141517im_/https://www.gstatic.com/mobilesdk/200309_mobilesdk/GMPIcons.eot) format("embedded-opentype"),url(//web.archive.org/web/20210302141517im_/https://www.gstatic.com/mobilesdk/200309_mobilesdk/GMPIcons.woff2) format("woff2"),url(//web.archive.org/web/20210302141517im_/https://www.gstatic.com/mobilesdk/200309_mobilesdk/GMPIcons.ttf) format("truetype");font-weight:400;font-style:normal}.gmp-icons,body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.gmp-icons{cursor:default;direction:ltr;display:inline-block;font-family:'GMP Icons';-webkit-font-feature-settings:'liga';-moz-font-feature-settings:'liga';font-feature-settings:'liga';font-size:24px;font-style:normal;font-weight:400;height:1em;letter-spacing:normal;line-height:1;speak:none;text-decoration:none;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;width:1em;word-wrap:normal}a,a .gmp-icons,button{cursor:pointer}body{-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;background-color:#fafafa;font:400 12px/18px "Roboto",sans-serif;text-size-adjust:100%}@media screen and (min-width:1000px){body{font:400 14px/24px "Roboto",sans-serif}}h1,h2,h3,h4,h5,h6{color:#424242;margin-top:0}h1,h2{font:500 28px/32px "Google Sans",sans-serif}@media screen and (min-width:1000px){h1{font:500 52px/60px "Google Sans",sans-serif}h2{font:500 44px/54px "Google Sans",sans-serif}}h3{font:600 24px/28px "Google Sans",sans-serif}@media screen and (min-width:1000px){h3{font:600 44px/54px "Google Sans",sans-serif}}h4{font:500 16px/22px "Google Sans",sans-serif}@media screen and (min-width:1000px){h4{font:500 36px/46px "Google Sans",sans-serif}}h5{font:500 16px/24px "Google Sans",sans-serif}@media screen and (min-width:1000px){h5{font:500 20px/26px "Google Sans",sans-serif}}.light,.light>h1,.light>h2,.light>h3,.light>h4,.light>h5,.light>h6{color:#fff}.dark,.dark>h1,.dark>h2,.dark>h3,.dark>h4,.dark>h5,.dark>h6{color:#476282}.pricing-table .pricing-table__body__cell ul,ul.reset{list-style:none;padding:0}.brand-guidelines__text li,body,p.reset{margin:0}main,section{position:relative}main{overflow:hidden;padding:0 20px 80px}@media screen and (min-width:1280px){main{padding:0 80px 120px}}button{background:0 0;border:none;padding:0}:link,:visited,a{color:#1e88e5}a{text-decoration:none}a[aria-level]{color:#424242}a[aria-level].product-icon__name,body{color:#757575}[role=button]:focus,button:focus{outline:none}.link--white{color:#fff}.link--white:focus,.link--white:hover{background:0 0!important;opacity:.85;text-decoration:underline}img{max-width:100%}hr{border:1px solid #eceff1}.content-wrapper{opacity:1;margin-left:auto;margin-right:auto;max-width:1352px;width:100%}.card .card__banner .card__banner__inner p:last-of-type,.content-wrapper:last-of-type>.card{margin-bottom:0}.firesite__bg>img{top:-13%;padding-bottom:0;-webkit-transform:translateX(-50%) scale(1.5);transform:translateX(-50%) scale(1.5);z-index:-2;height:auto;left:50%;max-width:none;position:absolute;width:auto;-webkit-transform-origin:center;transform-origin:center}@media screen and (min-width:1000px){.firesite__bg>img{height:100%}}.firebase-video-modal{width:720px}@media screen and (min-width:1280px){.firebase-video-modal{width:1124px}}.firebase-video-modal__buttons{padding:8px 16px 0;text-align:right}.firebase-video-modal .material-icons{cursor:pointer;font-size:20px;pointer-events:none}.firebase-video-modal .devsite-dialog-buttons{padding:8px 16px 0}.firebase-video-modal .video-wrapper{float:none;margin:0;width:100%}.firebase-video-modal .devsite-dialog-close{color:#424242;border:none;box-shadow:none;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;margin:0;padding:0}.cta-button,.cta-link{box-sizing:border-box;cursor:pointer;transition:background-color .15s linear}.cta-button>i,.cta-link>i,.devsite-article .cta-button>i,.devsite-article .cta-link>i{font-size:24px;height:24px;margin-right:0;vertical-align:middle;width:24px}.cta-link{border-radius:8px;font:500 14px/18px "Google Sans",sans-serif;letter-spacing:.24px;padding:6px 8px;margin-left:-8px;margin-right:-8px}@media screen and (min-width:1000px){.cta-link{font-size:16px;line-height:20px;font-weight:500;font-family:"Roboto",sans-serif;letter-spacing:.57px}}.blog-row .devsite-card-buttons a:not(.cta-link--white):active,.blog-row .devsite-card-buttons a:not(.cta-link--white):focus,.blog-row .devsite-card-buttons a:not(.cta-link--white):hover,.cta-link:not(.cta-link--white):active,.cta-link:not(.cta-link--white):focus,.cta-link:not(.cta-link--white):hover,.news-events-row .devsite-card-buttons a:not(.cta-link--white):active,.news-events-row .devsite-card-buttons a:not(.cta-link--white):focus,.news-events-row .devsite-card-buttons a:not(.cta-link--white):hover,.news-events-row .three-column__column .cta-button:not(.cta-link--white):active,.news-events-row .three-column__column .cta-button:not(.cta-link--white):focus,.news-events-row .three-column__column .cta-button:not(.cta-link--white):hover,.youtube-row .devsite-card-buttons a:not(.cta-link--white):active,.youtube-row .devsite-card-buttons a:not(.cta-link--white):focus,.youtube-row .devsite-card-buttons a:not(.cta-link--white):hover{background-color:#e1f3fc;color:#0288d1}.blog-row .devsite-card-buttons a:focus>img,.cta-link:focus>img,.news-events-row .devsite-card-buttons a:focus>img,.news-events-row .three-column__column .cta-button:focus>img,.youtube-row .devsite-card-buttons a:focus>img{outline:3px solid rgba(3,155,229,.2)}.blog-row .devsite-card-buttons a--small,.cta-link--small,.news-events-row .devsite-card-buttons a--small{font-size:14px;letter-spacing:.15px;line-height:16px}.blog-row .devsite-card-buttons a--with-icon,.cta-link--with-icon,.news-events-row .devsite-card-buttons a--with-icon{padding-bottom:10px;padding-right:10px;padding-top:10px}.blog-row .devsite-card-buttons a--with-icon>i,.cta-link--with-icon>i,.devsite-article .blog-row .devsite-card-buttons a--with-icon>i,.devsite-article .cta-link--with-icon>i,.devsite-article .news-events-row .devsite-card-buttons a--with-icon>i,.devsite-article .news-events-row .three-column__column .cta-button--with-icon>i,.news-events-row .devsite-card-buttons a--with-icon>i,.news-events-row .three-column__column .cta-button--with-icon>i{margin-right:12px}.blog-row .devsite-card-buttons a--grey:active,.blog-row .devsite-card-buttons a--grey:focus,.blog-row .devsite-card-buttons a--grey:hover,.blog-row .devsite-card-buttons a--white:active,.blog-row .devsite-card-buttons a--white:focus,.blog-row .devsite-card-buttons a--white:hover,.cta-link--grey:active,.cta-link--grey:focus,.cta-link--grey:hover,.cta-link--white:active,.cta-link--white:focus,.cta-link--white:hover{opacity:.85}.cta-link--white{color:#fff}.blog-row .devsite-card-buttons a--white:hover,.cta-link--white:hover{background:rgba(255,255,255,.2)}.blog-row .devsite-card-buttons a--blue-light,.cta-link--blue-light,.news-events-row .devsite-card-buttons a--blue-light{color:#669df6;opacity:.9;border-radius:7px}.blog-row .devsite-card-buttons a--blue-light:hover,.cta-link--blue-light:hover,.news-events-row .devsite-card-buttons a--blue-light:hover{background-color:rgba(255,255,255,.1)!important;color:#669df6!important}.blog-row .devsite-card-buttons a--grey,.cta-link--grey,.news-events-row .devsite-card-buttons a--grey{color:#979797}.cta-button{background-color:#1a73e8;border-radius:8px;color:#fff;display:inline-block;font:500 14px/16px "Roboto",sans-serif;letter-spacing:.15px;max-width:255px;padding:10px 50px;text-align:center;white-space:nowrap;width:100%}@media screen and (min-width:600px){.cta-button{width:auto}}@media screen and (min-width:1000px){.cta-button{max-width:unset;font-family:"Google Sans",sans-serif;font-size:20px;letter-spacing:.21px;line-height:16px;padding:20px 52px}}.cta-button:focus{text-decoration:none}.cta-button:active,.cta-button:focus,.cta-button:hover{background-color:#1967d2}@media screen and (min-width:1000px){.cta-button--long-text{max-width:none}}.cta-button--small{font:500 14px/16px "Roboto",sans-serif;padding:10px 40px}.cta-button--with-icon{background-color:transparent;padding:10px 0}.cta-button--with-icon-large{max-width:none;padding-left:20px!important;padding-right:20px!important}.cta-button--white{background-color:#fff;color:#1a73e8;text-decoration:none!important}.cta-button--white:active,.cta-button--white:focus,.cta-button--white:hover{background-color:rgba(255,255,255,.85)}.cta-button--blue-deep{background-color:#1a73e8;color:#fff;text-decoration:none!important}.cta-button--blue-deep:active,.cta-button--blue-deep:focus,.cta-button--blue-deep:hover{background-color:rgba(25,103,210,.85)}.cta-button--outline{border:1px solid rgba(0,0,0,.12);border-radius:8px}.cta-button--text-blue{background-color:transparent;color:#039be5}.cta-button--text-orange{color:#f67f00}.cta-button--text-teal{color:#0097a7}.cta-button--text-green{color:#8bc34a}.cta-button--text-sky-blue{color:#039be5}.blog-row .devsite-card-buttons a--white,.cta-button--text-white,.news-events-row .devsite-card-buttons a--white{color:#fff}.product-header-large.product-header .cta-button--white{color:#e65100}.homepage-hero__ctas .cta-button--white{color:#1a73e8}.brand-guidelines__row-header>p{margin-bottom:50px}.brand-guidelines__row-header>h2{margin-bottom:32px!important}.brand-guidelines__row--default{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin:0 0 50px}@media screen and (min-width:720px){.brand-guidelines__row--default{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}@media screen and (min-width:1000px){.brand-guidelines__row--default{margin-bottom:100px}}.brand-guidelines__row-description{margin-bottom:30px;-webkit-order:1;-ms-flex-order:1;order:1}@media screen and (min-width:1440px){.brand-guidelines__row-description{-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%;margin-bottom:0}}.brand-guidelines--icon-image{margin:30px 0 20px}@media screen and (min-width:720px){.brand-guidelines--icon-image{margin-bottom:100px}}.brand-guidelines--icon-image .brand-guidelines__image{margin-top:50px}.brand-guidelines--icon-image .brand-guidelines__image>img{max-height:100px}@media screen and (min-width:400px){.brand-guidelines--icon-image .brand-guidelines__image>img{max-height:150px}}.brand-guidelines__image{-webkit-align-self:center;-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center;-webkit-flex-basis:60%;-ms-flex-preferred-size:60%;flex-basis:60%;margin-bottom:50px;max-width:450px;-webkit-order:2;-ms-flex-order:2;order:2;text-align:center}@media screen and (min-width:720px){.brand-guidelines__image{margin-bottom:0;max-width:100%}}.brand-guidelines__image-left{-webkit-order:1;-ms-flex-order:1;order:1}.brand-guidelines__text{-webkit-flex-basis:40%;-ms-flex-preferred-size:40%;flex-basis:40%;-webkit-order:2;-ms-flex-order:2;order:2}@media screen and (min-width:720px){.brand-guidelines__text{margin-right:70px;-webkit-order:1;-ms-flex-order:1;order:1}}.brand-guidelines__image-in-description{margin:40px 0 0;text-align:center}@media screen and (min-width:1000px){.brand-guidelines__image-in-description{margin:35% 0}}.brand-guidelines__image-in-description>img{height:24px;max-width:200px}.brand-guidelines__row--swatches{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-bottom:70px}@media screen and (min-width:1440px){.brand-guidelines__row--swatches{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.brand-guidelines__row--swatches__row-description{-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%;margin-bottom:30px;-webkit-order:1;-ms-flex-order:1;order:1}@media screen and (min-width:1440px){.brand-guidelines__row--swatches__row-description{-webkit-order:2;-ms-flex-order:2;order:2}}.brand-guidelines__swatch-wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-order:2;-ms-flex-order:2;order:2}@media screen and (min-width:1440px){.brand-guidelines__swatch-wrapper{-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-order:1;-ms-flex-order:1;order:1}}.brand-guidelines__swatch{display:inline-block;margin-bottom:20px;margin-right:20px;width:100%}@media screen and (min-width:400px){.brand-guidelines__swatch{width:auto}}@media screen and (min-width:720px){.brand-guidelines__swatch{margin-bottom:0;width:130px}}@media screen and (min-width:1000px){.brand-guidelines__swatch{width:150px}}.brand-guidelines__swatch--color{height:130px;width:100%}@media screen and (min-width:400px){.brand-guidelines__swatch--color{width:130px}}@media screen and (min-width:1000px){.brand-guidelines__swatch--color{height:150px;width:150px}}.brand-guidelines__swatch--text{border:1px solid #eceff1;min-height:86px;padding:0 10px}.brand-guidelines__swatch--text>p{font-size:14px}.brand-guidelines__swatch--text .brand-guidelines__swatch--label{margin:4px 0}.brand-guidelines__swatch--label{color:#757575;font-weight:500}.brand-guidelines__swatch--code{margin:0;text-align:right}.brand-guidelines__row--multi-image,.brand-guidelines__row--multi-image .brand-guidelines__row-item{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.brand-guidelines__row--multi-image{-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch}@media screen and (min-width:720px){.brand-guidelines__row--multi-image{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;margin-top:60px}}.brand-guidelines__row--multi-image .brand-guidelines__row-item{-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%;margin-right:0}@media screen and (min-width:720px){.brand-guidelines__row--multi-image .brand-guidelines__row-item{margin-right:70px}}@media screen and (min-width:1000px){.brand-guidelines__row--multi-image .brand-guidelines__row-item{margin-right:100px}}.brand-guidelines__row--multi-image .brand-guidelines__row-item .brand-guidelines__description{-webkit-flex:1;-ms-flex:1;flex:1}.brand-guidelines__row--multi-image .brand-guidelines__row-item .brand-guidelines__image{-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto;margin-bottom:32px;-webkit-order:1;-ms-flex-order:1;order:1}@media screen and (min-width:720px){.brand-guidelines__row--multi-image .brand-guidelines__row-item .brand-guidelines__image{margin-bottom:20px}}.brand-guidelines__row--multi-image .brand-guidelines__row-item .brand-guidelines__text{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0 0 50px}@media screen and (min-width:720px){.brand-guidelines__row--multi-image .brand-guidelines__row-item .brand-guidelines__text{margin:0}}.brand-guidelines__row--multi-image .brand-guidelines__row-item:last-child{margin:0}.brand-guidelines__row--multi-image .brand-guidelines__row-item:last-child .brand-guidelines__text{margin-bottom:0}.brand-guidelines__download-links>a{margin-right:20px}.brand-guidelines__donot{font-size:20px}@media screen and (min-width:400px){.brand-guidelines__donot{font-size:14px}}.butter-bar{background:#2e3a4d;color:#fff;margin-left:-20px;padding:20px;position:relative;text-align:center;width:calc(100% + 20px*2);z-index:1}@media screen and (min-width:1280px){.butter-bar{margin-left:-80px;width:calc(100% + 80px*2)}}.butter-bar :first-child{margin-top:0;max-width:1100px}.butter-bar :last-child{margin-bottom:0}.butter-bar--blm{background:#000}.butter-bar--blm a{color:#fff;text-decoration:underline}.blog-row,.blog-row .devsite-card-buttons a{display:-webkit-flex;display:-ms-flexbox;display:flex}.blog-row{min-height:415px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:720px){.blog-row{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.blog-row .devsite-card{border:none;border-radius:0;overflow:visible}.blog-row devsite-dynamic-content{box-sizing:content-box;margin:0;-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%}.blog-row devsite-dynamic-content .devsite-card-category,.blog-row devsite-dynamic-content h3{font-size:14px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.blog-row devsite-dynamic-content .devsite-card-category{font-size:16px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}}.blog-row devsite-dynamic-content h3{font-size:16px;line-height:26px;margin:0 0 8px}@media screen and (min-width:720px){.blog-row devsite-dynamic-content h3{font-size:20px;line-height:26px;font-weight:500;font-family:"Google Sans",sans-serif}}.blog-row devsite-dynamic-content>p,.news-events-row devsite-dynamic-content>p{margin:0 0 12px}.blog-row .devsite-card-content{padding:0}.blog-row .devsite-card-summary{font-size:12px;line-height:18px;font-weight:400;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.blog-row .devsite-card-summary{font-size:14px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif}}.blog-row .devsite-card-buttons{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;padding:0;margin-top:16px}.blog-row .devsite-card-buttons a{-webkit-align-items:center;-ms-flex-align:center;align-items:center;border:none;border-radius:8px;font:500 14px/18px "Google Sans",sans-serif;letter-spacing:.24px;padding:6px 8px;margin-left:-8px;margin-right:-8px}@media screen and (min-width:1000px){.blog-row .devsite-card-buttons a{font-size:16px;line-height:20px;font-weight:500;font-family:"Roboto",sans-serif;letter-spacing:.57px}}.blog-row .devsite-card-buttons a img{margin-right:8px}@media screen and (min-width:720px){.blog-row .devsite-card-buttons a{font-size:16px}}.blog-row .devsite-card-buttons a:hover{background-color:#e1f3fc}.blog-row .devsite-card-image-container{position:relative;height:0;margin-bottom:30px;padding:0 0 56.19%}.blog-row .devsite-card-image-container>img{position:absolute;top:0;bottom:0;object-fit:cover;height:100%;width:100%}@media screen and (min-width:720px){.blog-row devsite-dynamic-content{-webkit-flex:1 1 calc(100%/3);-ms-flex:1 1 calc(100%/3);flex:1 1 calc(100%/3)}}.blog-row devsite-dynamic-content:nth-of-type(3) .devsite-card-wrapper:first-of-type,.news-events-row .three-column__column devsite-dynamic-content:nth-of-type(3) .devsite-card-wrapper:first-of-type{display:none}.blog-row devsite-dynamic-content:not(:last-child),.news-events-row .three-column__column devsite-dynamic-content:not(:last-child){margin:0 0 32px;padding:0}@media screen and (min-width:720px){.blog-row devsite-dynamic-content:not(:last-child){margin:0;padding:0 24px 0 0}}@media screen and (min-width:1280px){.blog-row devsite-dynamic-content:not(:last-child){padding:0 84px 0 0}}.blog-row .devsite-card-group{display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%;margin:0}.blog-row .devsite-card-wrapper{padding:0;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.blog-row .medium .devsite-card-category{color:#1a73e8}.blog-row .blogger .devsite-card-category{color:#e65100}.card{background:#fff;border-radius:16px;border:1px solid #eceff1;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);margin:0 auto 20px;max-width:1280px;overflow:hidden}@media screen and (min-width:720px){.card{margin-bottom:48px}}.card h2{margin-bottom:16px;font-size:24px;line-height:28px;font-weight:500;font-family:"Google Sans",sans-serif;text-align:center}@media screen and (min-width:720px){.card h2{font-size:44px;line-height:54px;font-weight:500;font-family:"Google Sans",sans-serif}}@media screen and (max-width:400px){.card h2 br{display:none}}.card p{margin-top:0}.card h2:empty,.card p:empty{display:none}.card hr{border-top:1px solid #cfd8dc;margin:48px 0}@media screen and (min-width:720px){.card hr{margin:100px 0 80px}}.card--transparent{background:0 0;border:none;border-radius:0}.card hr,.card--no-border{border:none}@media screen and (min-width:1000px){.card.card--half-margin .card__content{padding:40px 45px}}.card .card__banner{background-color:#e1f3fc;margin:-40px -40px 24px}@media screen and (min-width:720px){.card .card__banner{margin:-40px -48px 40px}}@media screen and (min-width:1000px){.card .card__banner{margin:-80px -90px 60px}}.card .card__banner .card__banner__inner{color:#0288d1;border-bottom:1px solid #fafafa;font:400 12px/18px "Roboto",sans-serif;padding:16px 32px;text-align:center}@media screen and (min-width:1000px){.card .card__banner .card__banner__inner{font:400 14px/24px "Roboto",sans-serif}}.card .card__banner .card__banner__inner a{color:#01579b;font-weight:500}.card .products__card-header .card__header{margin-bottom:0}.card .card__subpartial .card__heading{margin:20px 0 16px;text-align:center}@media screen and (min-width:600px){.card .card__subpartial .card__heading{margin:32px 0}}@media screen and (min-width:720px){.card .card__subpartial .card__heading{margin:60px 0 16px}}.card .card__subpartial .card__heading--small{text-align:left}.card .card__subpartial .card__header{margin-bottom:20px}.card .card__subpartial:not(.card__subpartial--no-margin):last-of-type{margin-bottom:0}@media screen and (min-width:1000px){.card .card__subpartial:not(.card__subpartial--no-margin){margin:50px 0}}.card .card__content{padding:40px}@media screen and (min-width:1000px){.card .card__content{padding:80px 90px}}.card .card__footer{padding:32px}.card .integrations-mobile-padding{padding-left:40px}.card .integrations-mobile-padding--no-bottom-pad{padding-bottom:0}.card .integrations-mobile-padding--lg-header-gutter .card__header{margin-bottom:60px}.card .card__header{text-align:left}@media screen and (min-width:720px){.card .card__header{text-align:center}}.card .card__subheading{font-size:12px;line-height:18px;font-weight:400;font-family:"Roboto",sans-serif;margin:0 auto 16px;max-width:680px;text-align:center}@media screen and (min-width:720px){.card .card__subheading{font-size:16px;line-height:28px;font-weight:400;font-family:"Roboto",sans-serif}}.card .card__ctas{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding:0;text-align:center}@media screen and (min-width:720px){.card .card__ctas{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;padding-top:40px}}.card .card__cta{text-align:center;width:100%}@media screen and (min-width:600px){.card .card__cta{width:auto}}.card .card__cta:not(:last-child){margin-bottom:16px}@media screen and (min-width:720px){.card .card__cta:not(:last-child){margin-bottom:0;margin-right:16px}}.card .card__footer.card__footer--dark{background:#eceff1}@media screen and (min-width:1000px){.card .card__footer{padding:32px 112px 24px}}.card--dark{background:#202124;border:1px solid #48494b}.card--dark h4{color:#eceff1}.card--dark .card__content hr{border-color:#48494b}.card--dark .card__subpartial .card__heading{font-size:36px;line-height:46px;font-weight:400;font-family:"Roboto",sans-serif;color:#e6e6e6;margin:0;text-align:center}.card--dark .card__subpartial .card__header{margin-bottom:40px}.card--dark .card__subpartial--no-margin{margin:0}.card--dark .use-cases h5{color:#e6e6e6}@media screen and (min-width:720px){.card--dark hr{margin-top:60px}}.card-ctas-with-space .card__content{min-width:285px;padding:80px 14% 100px}@media screen and (min-width:720px){.card-ctas-with-space .card__content{padding:80px 112px 100px}}.card-ctas-with-space .card__ctas{padding-top:30px}@media screen and (max-width:600px){.card-ctas-with-space .card__ctas{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}@media screen and (min-width:600px){.card-ctas-with-space .card__ctas{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.card-ctas-with-space .card__cta .cta-button{font-size:12px;line-height:12px;font-weight:500;font-family:"Google Sans",sans-serif;margin-right:0}@media screen and (min-width:600px){.card-ctas-with-space .card__cta .cta-button{margin-right:11px;font-size:14px;line-height:16px;font-weight:500;font-family:"Google Sans",sans-serif}}.card-ctas-with-space .card__cta:last-child{-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;margin-left:8px;text-align:center}@media screen and (min-width:600px){.card-ctas-with-space .card__cta:last-child{text-align:left;min-width:110px}}#products .card__divider{opacity:0;visibility:hidden}@media screen and (min-width:720px){#products .card__divider{margin-top:60px;opacity:1;visibility:visible}}.card-footer{background:#eceff1;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;padding:28px 0 36px}@media screen and (min-width:600px){.card-footer{-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;padding:32px 0 26px;text-align:left}}.card-footer h5{margin:24px 0 12px;font-size:18px;line-height:22px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:600px){.card-footer h5{font-size:16px;line-height:24px;font-weight:500;font-family:"Google Sans",sans-serif}}@media screen and (min-width:720px){.card-footer h5{font-size:20px;line-height:26px;font-weight:500;font-family:"Google Sans",sans-serif;margin:0 0 6px}}.card-footer a{color:#1a73e8;display:inline-block;letter-spacing:0;margin-right:28px}.card-footer a:focus,.card-footer a:hover{background-color:transparent!important;text-decoration:underline}.card-footer p{font-size:10px;line-height:18px;font-weight:400;font-family:"Google Sans",sans-serif;text-align:left;margin:0 0 12px;max-width:300px}@media screen and (min-width:600px){.card-footer p{font-size:12px;line-height:20px;font-weight:400;font-family:"Google Sans",sans-serif}}@media screen and (min-width:720px){.card-footer p{font-size:14px;line-height:20px;font-weight:400;font-family:"Google Sans",sans-serif;margin-bottom:4px;max-width:532px}.card-footer__text h5 br{display:none}}.card-footer .card-footer__image{max-width:152px;margin-bottom:-12px}@media screen and (min-width:600px){.card-footer .card-footer__image{margin:0 24px}}@media screen and (min-width:720px){.card-footer .card-footer__image{max-width:192px;margin:0 48px;-webkit-order:0;-ms-flex-order:0;order:0}}.platforms-footer{-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;margin-top:20px}@media screen and (min-width:720px){.platforms-footer{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;margin:0}}.cta-spacing .cta-link:first-of-type{margin-top:12px}.comic__container{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;border-radius:2px;margin-bottom:40px}@media screen and (min-width:720px){.comic__container{margin-bottom:0}}@media screen and (min-width:1440px){.comic__container{display:-ms-grid;display:grid;-ms-grid-columns:379px 379px 379px;grid-template-columns:379px 379px 379px}}.comic__background{position:absolute;z-index:-2}.comic__image img{padding:1px;display:-webkit-flex;display:-ms-flexbox;display:flex;border:1px solid #202124;border-bottom:1px solid #fff}@media screen and (min-width:720px){.comic__image img{border:1px solid #202124;margin-bottom:50px}}.comic__image:nth-child(40) img{border-bottom:1px solid #202124}.comic__image:nth-child(3n-1) img{overflow:hidden}@media screen and (min-width:1440px){.comic__image:nth-child(3n-1) img{border-left:1px solid #fff;border-right:1px solid #fff}}.card--comic .card__content{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-ms-flex-align:center;align-items:center;padding:40px 18px}@media screen and (min-width:1280px){.card--comic .card__content{padding:80px 60px}}.cta-banner,.cta-hero-footer .content-wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:720px){.cta-banner{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.cta-banner__text{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-order:1;-ms-flex-order:1;order:1}@media screen and (min-width:720px){.cta-banner__text{-webkit-flex:1 1 60%;-ms-flex:1 1 60%;flex:1 1 60%}}.cta-banner__text>h2{font-size:24px;line-height:28px;font-weight:500;font-family:"Google Sans",sans-serif;margin-bottom:16px}@media screen and (min-width:720px){.cta-banner__text>h2{font-size:28px;line-height:36px;font-weight:500;font-family:"Google Sans",sans-serif;text-align:left}}@media screen and (min-width:1000px){.cta-banner__text>h2{font-size:38px;line-height:54px;font-weight:500;font-family:"Google Sans",sans-serif}}@media screen and (min-width:720px){.cta-banner__text>p{max-width:400px}}.cta-banner__cta{margin-top:8px}@media screen and (min-width:720px){.cta-banner__cta{margin-top:32px}}.cta-banner__cta--center-mobile{margin:8px auto 0}@media screen and (min-width:720px){.cta-banner__cta--center-mobile{margin:initial}}.cta-banner__illo{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-order:2;-ms-flex-order:2;order:2;margin-top:32px}@media screen and (min-width:720px){.cta-banner__illo{margin-top:0;-webkit-flex:1 1 40%;-ms-flex:1 1 40%;flex:1 1 40%;padding-left:36px}}.cta-banner__illo--above{-webkit-order:0;-ms-flex-order:0;order:0;-webkit-transform:translate(6%);transform:translate(6%);width:calc(100vw - 60px)}.cta-banner__illo--above>img{padding:0 0 36px}@media screen and (min-width:720px){.cta-banner__illo--above{-webkit-order:2;-ms-flex-order:2;order:2;-webkit-transform:scale(1.2) translate(8%);transform:scale(1.2) translate(8%);width:auto}.cta-banner__illo--above>img{padding:0}}.cta-banner__illo--large{-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.cta-banner__illo--large>img{width:100%;max-width:none}@media screen and (min-width:720px){.cta-banner__illo--products-marquee{margin:-100px -68px}}@media screen and (min-width:720px) and (min-width:720px){.cta-banner__illo--products-marquee>img{padding-right:70px}}@media screen and (min-width:720px) and (min-width:1000px){.cta-banner__illo--products-marquee>img{padding-right:0}}.cta-banner__illo--position-bottom{margin:60px 0 -50px}@media screen and (min-width:720px){.cta-banner__illo--position-bottom{margin:0;position:relative}.cta-banner__illo--position-bottom>img{bottom:-50px;max-height:130%;max-width:130%;position:absolute}}@media screen and (min-width:1000px){.cta-banner__illo--position-bottom>img{bottom:-80px}}.cta-banner__illo--faqs{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;margin:60px -20px -50px}@media screen and (min-width:720px){.cta-banner__illo--faqs{-webkit-flex-basis:60%;-ms-flex-preferred-size:60%;flex-basis:60%;margin:0 -40px 0 0;position:relative}}@media screen and (min-width:1000px){.cta-banner__illo--faqs{margin-right:-90px}}@media screen and (min-width:1280px){.cta-banner__illo--faqs{-webkit-flex-basis:90%;-ms-flex-preferred-size:90%;flex-basis:90%;margin-right:-100px}}@media screen and (min-width:720px){.cta-banner__illo--faqs>img{bottom:-50px;max-width:350px;position:absolute}}@media screen and (min-width:1000px){.cta-banner__illo--faqs>img{bottom:-90px;max-width:none}}.cta-grid{display:-ms-grid;display:grid;grid-column-gap:84px;grid-row-gap:44px}@media screen and (min-width:720px){.cta-grid{-ms-grid-columns:(1fr)[2];grid-template-columns:repeat(2,1fr)}}@media screen and (min-width:1280px){.cta-grid{-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr)}}.cta-grid__category{text-transform:uppercase;margin-bottom:16px;font-size:16px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}.cta-grid__category--codelab{color:#673ab7}.cta-grid__category--demo{color:#7cb342}.cta-grid__icon{margin-right:auto;margin-bottom:12px;width:45px;height:45px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center}@media screen and (min-width:720px){.cta-grid__icon{width:56px;height:56px}}.cta-grid__icon>img{max-width:100%;max-height:100%}@media screen and (min-width:720px){.cta-grid__icon--lg{width:64px}}.cta-hero-footer{margin:100px 0}@media screen and (min-width:1000px){.cta-hero-footer{margin:140px 0}.cta-hero-footer .content-wrapper{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}@media screen and (min-width:400px){.cta-hero-footer br{display:none}}@media screen and (min-width:600px){.cta-hero-footer br{display:inline}}.cta-hero-footer__background>img{bottom:-200px;left:50%;max-width:none;position:absolute;-webkit-transform:translateX(-50%) rotate(-20deg);transform:translateX(-50%) rotate(-20deg);z-index:-2}@media screen and (min-width:1000px){.cta-hero-footer__background>img{bottom:-350px;-webkit-transform:translateX(-50%) rotate(0deg);transform:translateX(-50%) rotate(0deg)}}@media screen and (min-width:1280px){.cta-hero-footer__background>img{bottom:-380px}}.cta-hero-footer__illo{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;height:auto;margin-bottom:0;position:relative;width:calc(100% + 130px);z-index:-1}@media screen and (min-width:600px){.cta-hero-footer__illo{-webkit-flex-basis:calc(100%/3*2);-ms-flex-preferred-size:calc(100%/3*2);flex-basis:calc(100%/3*2);overflow:visible;width:auto}}.cta-hero-footer__illo>img{margin-left:-130px}@media screen and (min-width:600px){.cta-hero-footer__illo>img{margin-left:0;max-height:600px}}@media screen and (min-width:1000px){.cta-hero-footer__illo>img{bottom:-60px;left:-146px;max-height:none;position:absolute;-webkit-transform:scale(1.5);transform:scale(1.5)}}@media screen and (min-width:1440px){.cta-hero-footer__illo>img{bottom:-160px;-webkit-transform:scale(1.4);transform:scale(1.4)}}.cta-hero-footer__text{-webkit-align-items:center;-ms-flex-align:center;align-items:center;box-sizing:content-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;margin:0 48px;text-align:center}.cta-hero-footer__text>p,.cta-hero-footer__text>span[aria-level="2"]{font-size:28px;line-height:1;font-weight:500;font-family:"Google Sans",sans-serif;margin:20px 0 12px}@media screen and (min-width:600px){.cta-hero-footer__text>span[aria-level="2"]{font-size:44px;line-height:54px;font-weight:500;font-family:"Google Sans",sans-serif;margin:32px 0 16px}}.cta-hero-footer__text>p{font-size:14px;line-height:28px;margin:0 0 30px}@media screen and (min-width:600px){.cta-hero-footer__text>p{font-size:20px;margin:0 0 40px}}.cta-hero-footer__text>svg{height:120px}@media screen and (min-width:1280px){.firebase-status__message{max-width:60%}}.firebase-status__issue a{color:inherit}.homepage-hero{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;position:relative;height:630px;margin-bottom:0}@media screen and (min-width:600px){.homepage-hero{height:690px}}.homepage-hero__background>svg{left:0;position:absolute;top:calc(-4022px + 1800px);z-index:-3;-webkit-transform:translate(-50%);transform:translate(-50%)}@media screen and (min-width:600px){.homepage-hero__background>svg{right:0}}@media screen and (min-width:720px){.homepage-hero__background>svg{top:calc(-4022px + 2000px)}}@media screen and (min-width:1000px){.homepage-hero__background>svg{top:-1822px}}@media screen and (min-width:1280px){.homepage-hero__background>svg{left:40%;top:calc(-4022px + 1800px)}}@media screen and (min-width:2400px){.homepage-hero__background>svg{top:calc(-4022px + 2200px)}}.homepage-hero h1,.homepage-hero h3{text-align:center;color:#fff;margin-bottom:24px}@media screen and (min-width:600px){.homepage-hero h1,.homepage-hero h3{text-align:left;margin-bottom:32px}}.homepage-hero h1>br,.homepage-hero h3>br{display:none}@media screen and (min-width:400px){.homepage-hero h1>br,.homepage-hero h3>br{display:inline}}.homepage-hero h1{font-size:30px;line-height:34px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:600px){.homepage-hero h1{font-size:40px;line-height:44px;font-weight:500;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1000px){.homepage-hero h1{font-size:52px;line-height:62px;font-weight:500;font-family:"Google Sans",sans-serif}}.homepage-hero h3,.landing-header h5{font-size:18px;line-height:24px;font-weight:300;font-family:"Google Sans",sans-serif}@media screen and (min-width:600px){.homepage-hero h3{font-size:24px;line-height:26px;font-weight:400;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1000px){.homepage-hero h3{font-size:24px;line-height:30px;font-weight:400;font-family:"Google Sans",sans-serif}}.homepage-hero h1,.homepage-hero h3,.homepage-hero__ctas{position:relative;z-index:2}.homepage-hero h1 .cta-link--with-icon .material-icons,.homepage-hero h3 .cta-link--with-icon .material-icons,.homepage-hero__ctas .cta-link--with-icon .material-icons,.news-events-row .devsite-card-buttons a img{margin-right:8px}.homepage-hero__content{display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;padding:40px 20px 0;height:100%;margin:0 auto;max-width:1352px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:600px){.homepage-hero__content{padding-top:80px}}@media screen and (min-width:720px){.homepage-hero__content{padding-left:48px;padding-top:112px}}@media screen and (min-width:1000px){.homepage-hero__content{padding-top:190px;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}@media only screen and (min-width:1592px){.homepage-hero__content{padding-left:148px}}.homepage-hero__ctas{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.homepage-hero__ctas .cta-button{margin-bottom:12px}.homepage-hero__ctas .cta-mobile-hidden{display:none}@media screen and (min-width:600px){.homepage-hero__ctas{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.homepage-hero__ctas .cta-link:not(:last-child){margin-right:30px}.homepage-hero__ctas .cta-link:nth-child(2){margin-right:20px}.homepage-hero__ctas .cta-link:last-child{margin-left:20px}.homepage-hero__ctas .cta-button{margin:0 30px 0 0}.homepage-hero__ctas .cta-mobile-hidden{display:block}}.homepage-hero .divider,.landing-header__text br{display:none}@media screen and (min-width:600px){.homepage-hero .divider{color:#fff;content:'';display:inline-block;height:30px;width:1px;opacity:.6;background:#fff}}.homepage-hero__illo{pointer-events:none;right:-12%;position:relative;top:88px;max-width:480px}@media screen and (-webkit-min-device-pixel-ratio:2),(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.homepage-hero__illo{right:0;top:68px}.homepage-hero__illo img{-webkit-transform:scale(2);transform:scale(2)}}@media screen and (min-width:400px){.homepage-hero__illo{right:-20%}}@media screen and (min-width:400px) and (-webkit-min-device-pixel-ratio:2),screen and (min-width:400px) and (min-resolution:192dpi){.homepage-hero__illo{right:-5%}}@media screen and (min-width:600px){.homepage-hero__illo{right:-40%;top:20px}}@media screen and (min-width:600px) and (-webkit-min-device-pixel-ratio:2),screen and (min-width:600px) and (min-resolution:192dpi){.homepage-hero__illo{right:-20%;top:20px;max-width:500px}.homepage-hero__illo img{-webkit-transform:scale(1.5);transform:scale(1.5)}}@media screen and (min-width:720px){.homepage-hero__illo{position:absolute;right:-10%;top:340px}}@media screen and (min-width:720px) and (-webkit-min-device-pixel-ratio:2),screen and (min-width:720px) and (min-resolution:192dpi){.homepage-hero__illo{right:-8%;top:280px}}@media screen and (min-width:1000px){.homepage-hero__illo{right:-8%;top:372px}}@media screen and (min-width:1000px) and (-webkit-min-device-pixel-ratio:2),screen and (min-width:1000px) and (min-resolution:192dpi){.homepage-hero__illo{right:-4%;top:332px}}@media screen and (min-width:1280px){.homepage-hero__illo{right:-1%;top:316px}.homepage-hero__illo img{-webkit-transform:scale(2);transform:scale(2)}}@media screen and (min-width:1280px) and (-webkit-min-device-pixel-ratio:2),screen and (min-width:1280px) and (min-resolution:192dpi){.homepage-hero__illo{right:-1%;top:308px}.homepage-hero__illo img{max-width:500px}}.gamespage-hero{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;min-height:39vw;position:relative}@media screen and (min-width:1280px){.gamespage-hero{min-height:29vw}}.gamespage-hero__background>svg{left:4%;position:absolute;top:calc(-4022px + 1611px);z-index:-4;-webkit-transform:rotate(19deg) translate(-29%);transform:rotate(19deg) translate(-29%)}@media screen and (min-width:1000px){.gamespage-hero__background>svg{top:calc(-4022px + 1781px)}}@media screen and (min-width:1280px){.gamespage-hero__background>svg{left:4%;position:absolute;top:calc(-4022px + 1934px);-webkit-transform:rotate(19deg) translate(-29%);transform:rotate(19deg) translate(-29%)}}.gamespage-hero__illo{margin-bottom:-37%}.gamespage-hero__illo img{-webkit-transform:scale(1.2);transform:scale(1.2)}.landing-header{margin-bottom:140px;position:relative}.landing-header__background>svg{left:0;position:absolute;top:calc(-2000px - 800px);z-index:-1;-webkit-transform:translate(-50%);transform:translate(-50%)}@media screen and (min-width:600px){.landing-header__background>svg{right:0}}@media screen and (min-width:720px){.landing-header__background>svg{top:calc(-2000px - 1000px)}}@media screen and (min-width:1280px){.landing-header__background>svg{left:50%;top:calc(-2000px - 1000px)}}@media screen and (min-width:2400px){.landing-header__background>svg{top:calc(-2000px - 1000px)}}.landing-header__background--additional>svg{left:0;position:absolute;top:calc(-2000px - 800px);z-index:-1;-webkit-transform:translate(-50%);transform:translate(-50%)}@media screen and (min-width:720px){.landing-header__background--additional>svg{left:50%;top:calc(-2000px)}}@media screen and (min-width:1000px){.landing-header:not(.landing-header--small-margin){margin-bottom:68px}}@media screen and (min-width:2000px){.landing-header:not(.landing-header--small-margin){margin-bottom:80px}}.landing-header--small-margin{margin-bottom:92px}@media screen and (min-width:1000px){.landing-header--small-margin{margin-bottom:64px}}.landing-header #landing-header-background{fill:#039be5}.landing-header--coral #landing-header-background{fill:#ff8a65}.landing-header--orange #landing-header-background{fill:#f67f00}.landing-header--slate-grey #landing-header-background{fill:#2a363c}.landing-header .landing-header__nacho--default{left:-820px;position:absolute;top:-3827px;z-index:-1}@media screen and (min-width:720px){.landing-header .landing-header__nacho--default{left:-830px;top:-3547px}}@media screen and (min-width:1000px){.landing-header .landing-header__nacho--default{top:-3497px}}@media screen and (min-width:1440px){.landing-header .landing-header__nacho--default{left:-230px}}@media screen and (min-width:2400px){.landing-header .landing-header__nacho--default{left:80px}}@media screen and (max-width:720px){.landing-header .landing-header__nacho--default>svg{-webkit-transform:rotate(-8deg);transform:rotate(-8deg)}}.landing-header .landing-header__nacho--mods{left:-820px;position:absolute;top:-2348px;z-index:-1}@media screen and (min-width:720px){.landing-header .landing-header__nacho--mods{left:-830px;top:-2508px}}@media screen and (min-width:1000px){.landing-header .landing-header__nacho--mods{top:-2458px}}@media screen and (min-width:1440px){.landing-header .landing-header__nacho--mods{left:-230px}}@media screen and (min-width:2400px){.landing-header .landing-header__nacho--mods{left:80px}}@media screen and (max-width:720px){.landing-header .landing-header__nacho--mods>svg{-webkit-transform:rotate(-8deg);transform:rotate(-8deg)}}.landing-header--text-heavy .landing-header__nacho{top:-3747px}@media screen and (min-width:600px){.landing-header--text-heavy .landing-header__nacho{top:-3797px}}@media screen and (min-width:720px){.landing-header--text-heavy .landing-header__nacho{top:-3547px}}@media screen and (min-width:1000px){.landing-header--text-heavy .landing-header__nacho{top:-3447px}}@media screen and (min-width:1440px){.landing-header--text-heavy .landing-header__nacho{top:-3497px}}@media screen and (min-width:3200px){.landing-header--text-heavy .landing-header__nacho{top:-3397px}}.landing-header__inner-wrapper{margin:0 auto;max-width:1352px;text-align:center}.landing-header__inner-wrapper h1{max-width:1000px}@media screen and (min-width:720px){.landing-header__inner-wrapper{padding-left:20px;text-align:left}}@media screen and (min-width:1000px){.landing-header__inner-wrapper{padding-left:90px}}.landing-header__text{margin:auto;max-width:412px;padding-top:40px;position:relative}@media screen and (min-width:600px){.landing-header__text{max-width:80%}}@media screen and (min-width:720px){.landing-header__text{padding-top:88px;max-width:100%}.landing-header__text br{display:inline}}.landing-header h5{font-size:14px;line-height:28px;font-weight:500;margin-top:0;margin-bottom:-14px}@media screen and (min-width:720px){.landing-header h5{margin-bottom:0;font-size:24px}}.devsite-article .landing-header h1:first-of-type,.landing-header h1{margin-top:24px;top:0}.devsite-article .landing-header h1:first-of-type:empty,.landing-header h1:empty{margin:0}.landing-header__back{margin-bottom:-24px}.landing-header__back .material-icons{font-weight:600;margin:0 8px 4px 0}.landing-header__back>.cta-link{font-size:14px;line-height:28px;font-weight:500;font-family:"Google Sans",sans-serif;color:#eceff1}@media screen and (min-width:720px){.landing-header__back>.cta-link{font-size:24px;line-height:26px;font-weight:500;font-family:"Google Sans",sans-serif}}@media screen and (max-width:600px){.logo-row .card__ctas{padding-top:0}}.logo-row--mods .logo-row__container--with-titles .logo-row__logo img{border-radius:50%;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);width:72px}.logo-row__container{-webkit-align-content:center;-ms-flex-line-pack:center;align-content:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;padding:20px 0 0}@media screen and (min-width:600px){.logo-row__container{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding:0 60px}.card .card__subpartial .logo-row__container{padding:0}}.logo-row__container--grid{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}@media screen and (min-width:720px){.logo-row__container--grid{-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}}.logo-row__container--grid .logo-row__logo{padding:14px}@media screen and (min-width:720px){.logo-row__container--grid .logo-row__logo{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:0 1 25%;-ms-flex:0 1 25%;flex:0 1 25%;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding:18px}}.logo-row__container--with-titles{-webkit-align-items:baseline;-ms-flex-align:baseline;align-items:baseline}@media screen and (min-width:720px){.logo-row__container--with-titles{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}}@media screen and (min-width:1000px){.logo-row__container--with-titles{-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}}.logo-row__container--with-titles .logo-row__logo,.logo-row__container--with-titles .logo-row__logo span,.logo-row__container--with-titles .logo-row__logo>a{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.logo-row__container--with-titles .logo-row__logo{padding:0 16px 32px}.logo-row__container--with-titles .logo-row__logo span,.logo-row__container--with-titles .logo-row__logo>a{-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.logo-row__container--with-titles .logo-row__logo span:hover span,.logo-row__container--with-titles .logo-row__logo>a:hover span{opacity:.85}.logo-row__container--with-titles .logo-row__logo span:focus span,.logo-row__container--with-titles .logo-row__logo>a:focus span{text-decoration:underline}@media screen and (min-width:720px){.logo-row__container--with-titles .logo-row__logo{-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto}}@media screen and (min-width:1000px){.logo-row__container--with-titles .logo-row__logo{padding-bottom:0}}.logo-row__container--with-titles .logo-row__logo img{width:60px}.logo-row__container--with-titles a,.logo-row__container--with-titles span{color:#757575;font:500 14px/18px "Google Sans",sans-serif;text-align:center;min-width:84px}.logo-row__container--with-titles a img,.logo-row__container--with-titles span img{margin-bottom:16px}.logo-row__logo{box-sizing:border-box;-webkit-flex:0 1 50%;-ms-flex:0 1 50%;flex:0 1 50%;min-height:40px;padding:12px;text-align:center}@media screen and (min-width:720px){.logo-row__logo{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;min-height:120px}}.logo-row__logo img{max-height:60px}.logo-row__logo a img{max-width:50px}@media screen and (min-width:600px){.logo-row__logo img{max-width:100%;max-height:100%}.logo-row__logo a img{max-width:72px}}.logo-row__logo--dark img{background-color:#fff}@media screen and (min-width:720px){.logo-row__logo{-webkit-flex-basis:auto;-ms-flex-preferred-size:auto;flex-basis:auto;max-width:100%}}.mod-detail h3,.mod-detail h4,.mod-detail__strong{font-weight:500;font-family:"Google Sans",sans-serif}.mod-detail h3,.mod-detail__strong{color:#424242;font-size:16px;line-height:18px}@media screen and (min-width:720px){.mod-detail h3,.mod-detail__strong{font-size:20px;line-height:24px;font-weight:500;font-family:"Google Sans",sans-serif}}.mod-detail h4{font-size:12px;line-height:16px}@media screen and (min-width:720px){.mod-detail h4{font-size:16px;line-height:24px;font-weight:500;font-family:"Google Sans",sans-serif}}.mod-detail h6{font-size:14px;line-height:24px;font-weight:400;font-family:"Roboto",sans-serif;color:#757575}.mod-detail pre,.use-cases .three-column__column__image-link>a>img{border-radius:8px}.mod-detail__header{-webkit-align-items:center;-ms-flex-align:center;align-items:center;border-bottom:1px solid #eceff1;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;padding-bottom:48px}@media screen and (min-width:1000px){.mod-detail__header{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.mod-detail__header__left{-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-bottom:48px}@media screen and (min-width:1000px){.mod-detail__header__left{-webkit-flex:1 1 calc(100% - 270px - 48px);-ms-flex:1 1 calc(100% - 270px - 48px);flex:1 1 calc(100% - 270px - 48px);margin-bottom:0;padding-right:48px}}@media screen and (max-width:720px){.mod-detail__header__right{width:100%}}@media screen and (min-width:1000px){.mod-detail__header__right{-webkit-flex-basis:270px;-ms-flex-preferred-size:270px;flex-basis:270px}}.mod-detail__header__right>a{width:100%;max-width:none}.mod-detail__made-by{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-bottom:7px}.mod-detail__made-by img{height:18px;margin-bottom:2px;margin-right:4px}.mod-detail__subtitle{font-size:13px;line-height:20px;font-weight:400;font-family:"Roboto",sans-serif;color:rgba(0,0,0,.54);margin:0}.mod-detail__image{border-radius:50%;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 2px 6px 2px rgba(60,64,67,.15);-webkit-flex-basis:52px;-ms-flex-preferred-size:52px;flex-basis:52px;margin-right:16px;max-width:52px}@media screen and (min-width:400px){.mod-detail__image{-webkit-flex-basis:120px;-ms-flex-preferred-size:120px;flex-basis:120px;max-width:120px}}@media screen and (min-width:720px){.mod-detail__image{margin-right:28px;width:120px}}.mod-detail h4,.mod-detail h6,.mod-detail__heading h1{margin-bottom:0}@media screen and (min-width:720px){.mod-detail__heading h1{font-size:38px;line-height:54px;font-weight:500;font-family:"Google Sans",sans-serif}}.mod-detail__heading p{max-width:440px}.mod-detail__alpha-header{font-size:16px;font-weight:500;font-family:"Google Sans",sans-serif;color:#1e88e5;line-height:22px;margin-left:3px}.mod-detail__body__wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}@media screen and (min-width:720px){.mod-detail__body__wrapper{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.mod-detail__body{-webkit-flex:1 1 calc(100% - 270px - 48px);-ms-flex:1 1 calc(100% - 270px - 48px);flex:1 1 calc(100% - 270px - 48px);max-width:515px;padding-right:48px}}.mod-detail__body ul{padding-left:22px}.mod-detail__body li{margin:4px 0;padding-left:8px}.mod-detail__body h6{font-weight:600}.mod-detail__expandables{margin-bottom:44px}.mod-detail__expandables>devsite-expandable{border-top:1px solid #eceff1;padding-bottom:16px;padding-top:16px}.mod-detail__expandables>devsite-expandable:last-of-type{border-bottom:1px solid #eceff1}.mod-detail__expandables .mod-detail__expandable__content{padding-left:40px}.mod-detail__expandables h6{color:#424242;font-family:"Google Sans",sans-serif;font-weight:500;margin-bottom:4px}.mod-detail__plan{-webkit-flex-basis:270px;-ms-flex-preferred-size:270px;flex-basis:270px}@media screen and (max-width:720px){.mod-detail__plan{border-top:1px solid #eceff1;margin-top:40px;padding-top:40px}}.mod-detail__description ul,.mod-detail__plan h3{margin-bottom:16px}.fb-price-row.included .header strong,.mod-detail__plan__link,.pricing-table .pricing-table__body__cell--blaze ul,.pricing-table .pricing-table__body__cell--spark ul{font-weight:500}.mod-detail__plan__spec,.use-case h4{margin-bottom:24px}.mod-detail__plan__role{border-radius:12px;border:1px solid rgba(0,0,0,.12);display:inline-block;font-size:13px;font-weight:500;margin-bottom:4px;padding:0 10px}.mod-detail__plan__list,.news-events-row{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.mod-detail__plan__list{-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.mod-detail__install .mod-detail__install__console{margin-bottom:40px}.mod-detail__install .mod-detail__install__help{display:block;margin-bottom:8px;position:relative;top:-12px}.news-events-row{min-height:415px}@media screen and (min-width:720px){.news-events-row{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.news-events-row .devsite-card{border:none;border-radius:0;overflow:visible}.news-events-row devsite-dynamic-content,.youtube-row devsite-dynamic-content{box-sizing:content-box}.news-events-row devsite-dynamic-content .devsite-card-category,.news-events-row devsite-dynamic-content h3{font-size:14px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.news-events-row devsite-dynamic-content .devsite-card-category{font-size:16px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}}.news-events-row devsite-dynamic-content h3{font-size:16px;line-height:26px;margin:0 0 8px}@media screen and (min-width:720px){.news-events-row devsite-dynamic-content h3{font-size:20px;line-height:26px;font-weight:500;font-family:"Google Sans",sans-serif}}.news-events-row .devsite-card-content,.product-cols ul{padding:0}.news-events-row .devsite-card-summary{font-size:12px;line-height:18px;font-weight:400;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.news-events-row .devsite-card-summary{font-size:14px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif}}.news-events-row .devsite-card-buttons{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;padding:0;margin-top:16px}.news-events-row .devsite-card-buttons a{-webkit-align-items:center;-ms-flex-align:center;align-items:center;border:none;display:-webkit-flex;display:-ms-flexbox;display:flex;border-radius:8px;font:500 14px/18px "Google Sans",sans-serif;letter-spacing:.24px;padding:6px 8px;margin-left:-8px;margin-right:-8px}@media screen and (min-width:1000px){.news-events-row .devsite-card-buttons a{font-size:16px;line-height:20px;font-weight:500;font-family:"Roboto",sans-serif;letter-spacing:.57px}}.news-events-row .devsite-card-buttons a--grey:active,.news-events-row .devsite-card-buttons a--grey:focus,.news-events-row .devsite-card-buttons a--grey:hover,.news-events-row .devsite-card-buttons a--white:active,.news-events-row .devsite-card-buttons a--white:focus,.news-events-row .devsite-card-buttons a--white:hover,.news-events-row .three-column__column .cta-button--grey:active,.news-events-row .three-column__column .cta-button--grey:focus,.news-events-row .three-column__column .cta-button--grey:hover,.news-events-row .three-column__column .cta-button--white:active,.news-events-row .three-column__column .cta-button--white:focus,.news-events-row .three-column__column .cta-button--white:hover{opacity:.85}.news-events-row .devsite-card-buttons a--white:hover,.news-events-row .three-column__column .cta-button--white:hover{background:rgba(255,255,255,.2)}@media screen and (min-width:720px){.news-events-row .devsite-card-buttons a{font-size:16px}}.news-events-row .devsite-card-buttons a:hover{background-color:#e1f3fc}.news-events-row .devsite-card-image-container{position:relative;height:0;margin-bottom:30px;padding:0 0 56.19%}.news-events-row .devsite-card-image-container>img{position:absolute;top:0;bottom:0;object-fit:cover;height:100%;width:100%}.news-events-row .three-column__column{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}@media screen and (min-width:720px){.news-events-row .three-column__column__image-link>a{margin-bottom:36px;padding-top:0}}.news-events-row .three-column__column .devsite-card-category{display:none;visibility:collapse}.news-events-row .three-column__column .devsite-card-group{display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%;margin:0}.news-events-row .three-column__column .devsite-card-wrapper{padding:0;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.news-events-row .three-column__column .devsite-card-image-container{margin-bottom:42px}.news-events-row .three-column__column devsite-dynamic-content{margin:0;-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%}@media screen and (min-width:720px){.news-events-row .three-column__column devsite-dynamic-content:not(:last-child){margin:0;padding:0 24px 0 0}}@media screen and (min-width:1280px){.news-events-row .three-column__column devsite-dynamic-content:not(:last-child){padding:0 84px 0 0}}@media screen and (min-width:720px){.news-events-row .three-column__column h5{font-size:20px;line-height:26px}}.news-events-row .three-column__column p{display:-webkit-box;font-size:12px;line-height:18px;overflow:hidden;margin-bottom:28px;text-overflow:ellipsis;-webkit-line-clamp:4;color:#5f6368;-webkit-box-orient:vertical}@media screen and (min-width:720px){.news-events-row .three-column__column p{max-height:96px;line-height:24px}}.news-events-row .three-column__column .cta-button{border-radius:8px;font:500 14px/18px "Google Sans",sans-serif;letter-spacing:.24px;padding:6px 8px;margin-left:-8px;margin-right:-8px}@media screen and (min-width:1000px){.news-events-row .three-column__column .cta-button{font-size:16px;line-height:20px;font-weight:500;font-family:"Roboto",sans-serif;letter-spacing:.57px}}.news-events-row .three-column__column .cta-button--small,.youtube-row .devsite-card-buttons a--small{font-size:14px;letter-spacing:.15px;line-height:16px}.news-events-row .three-column__column .cta-button--with-icon,.youtube-row .devsite-card-buttons a--with-icon{padding-bottom:10px;padding-right:10px;padding-top:10px}.news-events-row .three-column__column .cta-button--white{color:#fff}.news-events-row .three-column__column .cta-button--blue-light,.youtube-row .devsite-card-buttons a--blue-light{color:#669df6;opacity:.9;border-radius:7px}.news-events-row .three-column__column .cta-button--blue-light:hover,.youtube-row .devsite-card-buttons a--blue-light:hover{background-color:rgba(255,255,255,.1)!important;color:#669df6!important}.news-events-row .three-column__column .cta-button--grey,.youtube-row .devsite-card-buttons a--grey{color:#979797}.news-events-row .three-column__column .devsite-card-summary{font-family:"Roboto",sans-serif;margin-bottom:0}.platforms-footer{-webkit-align-items:center;-ms-flex-align:center;align-items:center;background:#eceff1;display:-webkit-flex;display:-ms-flexbox;display:flex;padding:16px 0 20px}@media screen and (min-width:1000px){.platforms-footer{padding:32px 0}}.platforms-footer span{color:#4a4a4a;margin:0 12px 0 0;font-size:12px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif}@media screen and (min-width:1000px){.platforms-footer span{font-size:16px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif}}.fb-calculator-body .mdl-slider.is-upgraded::-webkit-slider-thumb{border:0!important;background:#1967d2!important}.fb-calculator-body .mdl-slider.is-upgraded::-moz-range-thumb{border:0!important;background:#1967d2!important}.fb-calculator-body .mdl-slider.is-upgraded:focus:not(:active)::-webkit-slider-thumb{background:#1967d2}.fb-calculator-body .mdl-slider.is-upgraded:focus:not(:active)::-moz-range-thumb{background:#1967d2}.fb-calculator-body .mdl-slider.is-upgraded:active::-webkit-slider-thumb{border:none!important}.fb-calculator-body .mdl-slider.is-upgraded:active::-moz-range-thumb{border:none!important}.fb-calculator-body .mdl-slider.is-upgraded::-ms-fill-lower,.fb-calculator-body .mdl-slider.is-upgraded::-ms-thumb,.fb-calculator-body .mdl-slider.is-upgraded:active::-ms-thumb,.fb-calculator-body .mdl-slider.is-upgraded:focus:not(:active):-ms-thumb{background:#1967d2!important}html{height:auto!important}.firesite-feature-icon{background-color:#ffca28;display:inline-block;font-size:46px;width:1em;height:1em;margin-top:8px;margin-bottom:8px;border-radius:50%;position:relative;overflow:hidden}.firesite-feature-icon.firesite-feature-icon--quality{background-color:#ffa000}.firesite-feature-icon.firesite-feature-icon--grow{background-color:#ff8a65}.firesite-feature-icon .gmp-icons{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);font-size:50%;color:#fff}.mdl-tooltip{will-change:auto!important}.devsite-landing-row-item-description{width:100%!important}.fb-prices-clear{clear:both}.fb-prices{display:block}.fb-prices-resp{display:none}.material-icons.green{color:#02bfa6}.material-icons.red{color:#f92953}label{font:400 14px/24px "Roboto",sans-serif;line-height:16px}.fb-price-row{display:-webkit-flex;display:-ms-flexbox;display:flex}.fb-prices .fb-price-row{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.fb-price-row>div{-webkit-flex:1 1 250px;-ms-flex:1 1 250px;flex:1 1 250px;font-size:16px}.fb-price-row.features .aspect,.fb-price-row.features .feature{-webkit-flex:0 1 250px;-ms-flex:0 1 250px;flex:0 1 250px;min-width:150px}.fb-calculator-item .featuretitle,.fb-price-row.features .featuretitle{-webkit-align-items:center;-ms-flex-align:center;align-items:center;color:#424242;display:-webkit-flex;display:-ms-flexbox;display:flex;font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px;padding-left:16px}.fb-calculator-item .featureicon,.fb-price-row.features .featureicon{margin-left:20px}.fb-price-row.features .feature{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.fb-price-row.features .feature>div{background-color:#fafbfc;-webkit-flex:1 1;-ms-flex:1 1;flex:1 1;text-align:left}.fb-price-row .spacer{background-color:#fafbfc;display:inline-block;float:left;height:100%;width:24px}.fb-price-row .header .spacer,.pricing-table .pricing-table tr{background-color:#fff}.fb-price-row.included .spacer{background-color:#e0f2f1;float:none;vertical-align:top}.fb-price-row.features .aspect>div,.fb-price-row.features .feature>div{border-bottom:1px solid #cfd8dc;height:48px;line-height:48px}.fb-price-row.features .not-spark>div,.fb-price-row.features .spark>div{border-bottom:1px solid #cfd8dc;height:48px}.fb-price-row.features .material-icons{line-height:48px}.fb-price-row.features .aspect>div{background-color:#fafbfc;color:rgba(0,0,0,.54);font-size:14px;text-align:left}.fb-price-row.features .spark>div{background:#e1f3fb;line-height:48px;text-align:center}.fb-price-row.features .not-spark>div{background:#f2f5f6;line-height:48px;text-align:center}.fb-price-row.features .not-spark .footnote{line-height:40px}.fb-price-row .noshrink{-webkit-flex:0 1 250px;-ms-flex:0 1 250px;flex:0 1 250px;min-width:150px}.cta-container,.fb-price-row.included{-webkit-align-items:center;-ms-flex-align:center;align-items:center}.fb-price-row.included{background:#e0f2f1;border-bottom:1px solid #cfd8dc;border-top:1px solid #cfd8dc;color:#00897b}.fb-price-row.included .header-wrapper{-webkit-flex:0 1 500px;-ms-flex:0 1 500px;flex:0 1 500px}.fb-price-row.included .header{color:#00897b;font-size:14px;font-weight:400;padding:16px}.fb-price-row.included .body{text-align:center}.fb-price-row.headers .header{color:#fff;font-family:"Roboto",sans-serif;font-weight:400;height:160px;text-align:center}.fb-price-row.headers .header .padding{margin-left:24px;padding:12px;height:100%;box-shadow:0 4px 4px 0 #ccc}.fb-price-row.headers .header.spark,.fb-price-row.spark .header{background:#29b6f6;color:#fff}.fb-price-row.flame .header,.fb-price-row.headers .header.flame{background:#78909c;color:#fff}.fb-price-row.blaze .header,.fb-price-row.headers .header.blaze{background:#90a4ae;color:#fff}.fb-price-row.feature .header .title,.fb-price-row.headers .header .title{font-size:18px;line-height:24px;padding:8px}.fb-price-row.feature .header .price,.fb-price-row.headers .header .price{font-size:22px;line-height:20px}.fb-price-row.feature .header .description,.fb-price-row.headers .header .description{font-size:14px}.fb-price-row.headers .header hr,.fb-price-row.plan .header hr{border-top-width:2px;color:#fff;margin-left:36px;margin-right:36px;opacity:.3}.fb-price-row.features.cta-row div div{height:100%}.cta-container{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding:24px 0}.fb-price-row.cta-row div{border-bottom:none!important}.fb-price-row.cta-row .aspect>div,.fb-price-row.cta-row .feature>div,.fb-price-row.cta-row .spacer{background-color:#fff!important}.fb-price-header{font-family:"Roboto",sans-serif;height:100%;margin:0;padding:0;width:234px}.fb-price-section-header{background-color:#fafbfc;border-bottom:1px solid #cfd8dc;color:#212121;font-size:18px;text-align:left;width:190px}.fb-price-subsection-header{background-color:#fafbfc;color:rgba(0,0,0,.54);font-family:"Roboto",sans-serif;font-size:14px;height:32px;min-width:187px;padding:8px;text-align:left}.fb-footnote{color:rgba(0,0,0,.54);font-size:12px;font-style:italic;padding:0 16px 16px}.fb-price-calculator-heading h2{color:rgba(0,0,0,.87);font-size:24px;font-weight:400;line-height:32px;margin-bottom:0;margin-top:40px}.fb-price-calculator-heading p{color:rgba(0,0,0,.54);margin:24px 0;max-width:640px}.fb-calculator{padding:20px;border-radius:8px}.fb-calculator>section:not(:first-of-type):not(:last-of-type){border:1px solid #eceff1;border-bottom:0}.fb-calculator>section:last-of-type{border:1px solid #eceff1}.fb-calculator--top-left{border-top-left-radius:8px}@media only screen and (max-width:900px){.fb-calculator--top-left--mobile{border-top-left-radius:8px}}.fb-calculator--top-right{border-top-right-radius:8px}.fb-calculator--bottom-left{border-bottom-left-radius:8px}@media only screen and (max-width:900px){.fb-calculator--bottom-left--mobile{border-bottom-left-radius:8px}}.fb-calculator--bottom-right{border-bottom-right-radius:8px}.fb-calculator-item{-webkit-flex:1;-ms-flex:1;flex:1}.fb-calculator-item,.fb-calculator-item header,.fb-calculator-item header.showalways,.fb-calculator-range{display:-webkit-flex;display:-ms-flexbox;display:flex}.fb-calculator-item header{-webkit-align-items:center;-ms-flex-align:center;align-items:center;background-color:#fff;max-width:250px;min-width:180px;width:250px}.fb-calculator-item header.showalways{-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding:28px 0 36px}.fb-calculator-item header h1{margin:0;padding:12px}.fb-calculator-item .exw-control{display:none}.fb-calculator-range{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.fb-calculator-rangeholder{-webkit-flex:1;-ms-flex:1;flex:1}.fb-calculator .expandable>:not(.showalways):not(.exw-control):not(.exw-expanded-content):not(.expand-control){display:block}.fb-calculator-reset-button{background-color:#1967d2;border-radius:8px;color:#fff;cursor:pointer;font-family:"Roboto",sans-serif;font-size:14px;font-weight:500;letter-spacing:.15px;line-height:16px;padding:10px 20px;text-align:center;transition:all .2s ease-in-out}.fb-calculator-reset-button:hover{background-color:#0288d1;color:#fff!important}.fb-calculator-total{color:#424242;font-family:"Google Sans",sans-serif;font-size:18px;font-weight:500;line-height:26px}.fb-calculator-cell{background:#fff;padding:12px;width:200px;position:relative}.fb-calculator-cell span:first-child{z-index:1}.fb-calculator-cell i{z-index:1}.fb-calculator-total-cell{max-width:275px}.fb-calculator-cell .mdl-slider__container{height:24px;margin-left:20px}.fb-calculator-cell .mdl-slider__container::before{background-color:#1967d2;content:'';height:2px;left:-20px;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:46px}.fb-calculator-cell .mdl-slider__background-lower{background:#ffca2b}.fb-calculator-cell .mdl-slider__background-upper{background:#eceff1}.fb-calculator-header>div,.fb-calculator-range-cell,.fb-calculator-total-cell{-webkit-flex:1;-ms-flex:1;flex:1}.fb-calculator-cost-cell,.fb-calculator-header-cell{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex}.fb-calculator-cost-cell{background:#2e3a4d;color:#fff;font:500 16px/24px "Roboto",sans-serif;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:relative;z-index:auto}.fb-calculator-header>div{background:#f8f9fa;border:1px solid #eceff1;border-bottom:0;overflow:hidden}.fb-calculator-header-cell{height:70px;padding:0 12px}.fb-calculator-header-billing-cell{background:#2e3a4d;border:1px solid #eceff1;color:#fff;font:400 14px/20px "Roboto",sans-serif;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;overflow:hidden;width:200px}.fb-calculator-header-cell .label{color:#fff;font-family:"Roboto",sans-serif;font-size:12px;line-height:16px}.fb-calculator-grand-total>div{background:0 0;-webkit-flex:1;-ms-flex:1;flex:1}.fb-calculator-grandtotal-cell{background:#2e3a4d;color:#fff;font:500 16px/24px "Roboto",sans-serif;padding:36px 12px;text-align:center;width:200px}.fb-calculator-grandtotal-cell .label,.fb-calculator-summary{font-family:"Roboto",sans-serif;font-size:14px;line-height:20px}.fb-calculator-grandtotal-cell .label{text-align:center;color:#fff}.fb-calculator-summary{color:#757575}.fb-calculator-item-cost{display:none}.firebase-feature{border-bottom:1px solid #cfd8dc}.firebase-feature .expand-control.showalways{color:#757575;font-size:16px;line-height:24px;margin:20px 0;padding-right:44px}.firebase-feature p{margin-right:40px}.firebase-feature .expand-control::after{color:#bdbdbd;content:'expand_more';font:24px/1 "Material Icons",sans-serif;font-feature-settings:'liga';-moz-font-feature-settings:'liga';-moz-osx-font-smoothing:grayscale;-webkit-font-feature-settings:'liga';-webkit-font-smoothing:antialiased;height:20px;margin:2px 0;position:absolute;right:18px;text-rendering:optimizeLegibility;top:-2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:20px;word-wrap:normal}.firebase-feature .exw-expanded::after{content:"expand_less"}.firebase-pricing-page .devsite-main-content{padding:0 80px}.fb-calculator-body{background-color:transparent!important;font-family:"Roboto",sans-serif}body.fb-calculator-body{padding:0!important}.fb-calculator-footnote{border-top:none;color:#757575;font-size:12px}@media only screen and (max-width:1000px){.fb-price-row.headers .header .title{font-size:16px;line-height:24px}.fb-price-row.headers .header .price{font-size:18px;line-height:16px}.fb-price-row.headers .header .description{font-size:12px}.fb-price-row.features .aspect>div{font-size:13px}}@media only screen and (min-width:901px){.fb-calculator-item.expandable .exw-collapsed-content{display:block!important}.fb-calculator-cost-cell:not(:last-of-type)::after{background:#2e3a4d;content:'';height:200px;padding:0 12px;position:absolute;right:0;top:0;width:200px;z-index:0}}@media only screen and (max-width:900px){.fb-prices{display:none}.fb-prices-resp{display:block}.fb-price-row,.fb-price-row>div{display:block;-webkit-flex:none;-ms-flex:none;flex:none}.fb-price-row.included{border:none;display:block;height:auto;text-align:center}.fb-price-row.included .free{padding:16px}.fb-price-row.included .apps{padding:0 16px 16px}.fb-price-row.plan{padding-top:24px}.fb-price-row.plan .header{padding:24px;text-align:center}.fb-price-row.plan .header .price{font-size:24px;padding-top:8px}.fb-price-row.plan .features{background-color:#e6f7fe}.fb-price-row.blaze .features,.fb-price-row.flame .features{background-color:#f2f5f6}.fb-price-row.plan .features .expandable{clear:both}.fb-price-row.plan .features header.showalways{border-top:1px solid #dce9ef;padding-left:0}.fb-price-row.plan .features .exw-control,.fb-price-row.plan .features .exw-control:hover{background:0 0;display:block;right:16px;top:16px}.fb-price-row.plan .features header .title{color:#212121;font-size:18px;padding:16px}.fb-price-row .features .feature{border-top:1px solid #dce9ef;clear:both;line-height:48px}.fb-price-row .features .feature .name{color:rgba(0,0,0,.54);float:left;font-size:16px;padding:0 16px}.fb-price-row .features .feature .value{float:right;font-size:16px;padding:0 24px}.fb-price-row .features .feature .material-icons{position:relative;top:8px}.fb-calculator-range{display:inline;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;min-height:192px}.fb-calculator-range>div:not(.fb-calculator-footnote):first-of-type{border-top:1px solid #cfd8dc;padding-bottom:0}.fb-calculator-item{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.fb-calculator-item .firesite-feature-icon{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;font-size:34px;margin-bottom:0;margin-left:0;margin-top:0}.fb-calculator-item .featuretitle,.fb-price-row.features .featuretitle{font-family:'Google Sans',sans-serif;font-size:14px;line-height:18px}.fb-calculator-item header.showalways{-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;padding:16px;max-width:inherit;width:inherit}.fb-calculator-item .exw-control,.fb-calculator-item .exw-control:hover{background:0 0;display:block;right:16px;top:36px;-webkit-transform:translate(0,-50%);transform:translate(0,-50%);margin:0}.fb-calculator-item .exw-control::before,.fb-price-row.plan .features .exw-control::before{color:#b5c0c5}.fb-calculator-item-cost{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:1;-ms-flex:1;flex:1;margin-right:36px}.fb-calculator-item-cost>span{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;font:400 14px/18px "Roboto",sans-serif;text-align:right}.fb-calculator-cell{width:auto;background:0 0}.fb-calculator-total-cell{float:left;max-width:none}.fb-calculator-cost-cell{background:0 0;color:#fff;float:right;font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px;text-align:center}.fb-calculator-clear{clear:both}.fb-calculator-rangeholder{background:0 0}.fb-calculator-item a.exw-control{transition:all .2s ease-in-out}.fb-calculator-item a.exw-control::before{content:"expand_more"}.fb-calculator-item a.exw-control.exw-expanded{-webkit-transform:translate(0,-50%) rotate(180deg);transform:translate(0,-50%) rotate(180deg)}.fb-calculator .expandable>:not(.showalways):not(.exw-control):not(.exw-expanded-content):not(.expand-control){display:none}.fb-calculator-grand-total{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.fb-calculator-grand-total>div{-webkit-flex:0 1;-ms-flex:0 1;flex:0 1}.fb-calculator-grand-total>section{-webkit-flex:1;-ms-flex:1;flex:1}.fb-calculator-header-reset-cell{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.fb-calculator.fb-calculator-free .fb-calculator-header-reset-cell{display:none}.fb-calculator-header-billing-cell{background-color:#f5f7f8;border:none;width:100%}.fb-calculator:not(.fb-calculator-free) .fb-calculator-header-billing-cell{display:none}.fb-calculator-header-cell{padding:0}.fb-calculator-header-cell.fb-calculator-header-billing-cell .label{color:#424242}}@media only screen and (max-width:720px){.firebase-pricing-page .devsite-main-content{padding:0 16px}}.firesite-lang--es_419 .pricing-table__table,.firesite-lang--ja .pricing-table__table,.firesite-lang--pt_BR .pricing-table__table{display:none!important}@media screen and (min-width:1336px){.firesite-lang--es_419 .pricing-table__table,.firesite-lang--ja .pricing-table__table,.firesite-lang--pt_BR .pricing-table__table{display:block!important}}.firesite-lang--es_419 .pricing-table-mobile,.firesite-lang--ja .pricing-table-mobile,.firesite-lang--pt_BR .pricing-table-mobile{display:block!important}@media screen and (min-width:1336px){.firesite-lang--es_419 .pricing-table-mobile,.firesite-lang--ja .pricing-table-mobile,.firesite-lang--pt_BR .pricing-table-mobile{display:none!important}}.firesite-lang--es_419 .not-free .pricing-table__body__cell__list-item,.firesite-lang--pt_BR .not-free .pricing-table__body__cell__list-item{height:52px;white-space:normal}@media screen and (min-width:1183px){.card--pricing-table .card__content{padding:80px}}.pricing-table .cta-button{padding-left:30px;padding-right:30px}.pricing-table__table{border-radius:8px;display:none;overflow:hidden}@media screen and (min-width:1183px){.pricing-table__table{display:block}}.pricing-table .pricing-table__footer tr,.pricing-table__table tr{border:0}.pricing-table .pricing-table-mobile{display:block}@media screen and (min-width:1183px){.pricing-table .pricing-table-mobile{display:none}}.pricing-table .pricing-table-mobile__free-products{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.pricing-table .pricing-table-mobile__free-products .product-icon__icon{width:40px;height:40px}.pricing-table .pricing-table-mobile__free-products .product-icon__icon>i{font-size:18px}.pricing-table .pricing-table-mobile__plan{background-color:#fff;margin-bottom:32px;border:1px solid #eceff1;border-radius:8px;overflow:hidden}.pricing-table .pricing-table-mobile__plan__name,.pricing-table .pricing-table-mobile__plan__name>h5{color:#fff;font-size:20px;margin-bottom:4px}.pricing-table .pricing-table-mobile__plan__description{color:#fff;font-size:14px;font-weight:400}.pricing-table .pricing-table-mobile__plan__description a{color:inherit;text-decoration:underline}.pricing-table .pricing-table-mobile__plan__price{color:#fff;font-size:36px;line-height:36px;font-weight:300;margin-bottom:0}.pricing-table .pricing-table-mobile__plan__header{padding:24px;text-align:center}.pricing-table .pricing-table-mobile__plan__header--blaze,.pricing-table .pricing-table-mobile__plan__header--spark{color:#fff}.pricing-table .pricing-table-mobile__plan__header--spark{background-color:#039be5}.pricing-table .pricing-table-mobile__plan__header--blaze{background-color:#2e3a4d}.pricing-table .pricing-table-mobile__plan__header .firesite-feature-icon{font-size:30px}.pricing-table .pricing-table-mobile__plan__header .firesite-row__separator{margin:20px 40px;opacity:.5}.pricing-table .pricing-table-mobile__plan__header h3{margin-top:0;margin-bottom:8px}.pricing-table .pricing-table-mobile__plan__products .expandable{border-bottom:1px solid #eceff1}.pricing-table .pricing-table-mobile__plan__products__row{padding:16px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.pricing-table .pricing-table-mobile__plan__products__row--product-name{font-size:18px}@media only screen and (max-width:321px){.pricing-table .pricing-table-mobile__plan__products__row--product-name{font-size:15px}}.pricing-table .pricing-table-mobile__plan__products__row--product-name--google-cloud .firesite-pricing-mobile__plan__products__row__item{color:#039be5}.pricing-table .pricing-table-mobile__plan__products__row--product-name .firesite-feature-icon{font-size:36px;margin-right:10px;margin-bottom:0;vertical-align:middle}.pricing-table .pricing-table-mobile__plan__products__row--product-name .firesite-feature-custom-icon{margin-right:10px;vertical-align:middle;width:36px}.pricing-table .pricing-table-mobile__plan__products__row--product-name .firesite-pricing-mobile__plan__products__row__item--feature-support::before{display:inline-block;content:"";height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}.pricing-table .pricing-table-mobile__plan__products__row--product-name .firesite-pricing-mobile__plan__products__row__item--feature-support .material-icons{color:#757575;cursor:pointer}.pricing-table .pricing-table-mobile__plan__products__row--feature{padding:16px}.pricing-table .pricing-table-mobile__plan__products__row--feature .firesite-pricing-mobile__plan__products__row__item{max-width:50%}.pricing-table .pricing-table-mobile__plan__products__row--feature .firesite-pricing-mobile__plan__products__row__item:not(.firesite-pricing-mobile__plan__products__row__item--feature-support){color:#000}.pricing-table .pricing-table-mobile__plan__products__row--disclaimer{-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.pricing-table .pricing-table-mobile__plan__products__row--heading{background-color:#f5f7f8}.pricing-table .pricing-table-mobile__plan__products__row__item{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;font-size:14px;line-height:18px;max-width:60%}.pricing-table .pricing-table-mobile__plan__products__row__item--feature-support{color:#757575;position:relative;text-align:right}.pricing-table .pricing-table-mobile__plan__products__row__item__header{font-size:16px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif;-webkit-align-items:center;-ms-flex-align:center;align-items:center;color:#757575;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin-right:-40px}.pricing-table .pricing-table-mobile__plan__products__row__item__header>span{max-width:60%}@media screen and (min-width:600px){.pricing-table .pricing-table-mobile__plan__products__row__item__header{font-size:20px;line-height:26px;margin-right:0;padding-right:20px}}.pricing-table .pricing-table-mobile__plan__products__row__item__header .product-icon{margin-right:4px}@media screen and (min-width:600px){.pricing-table .pricing-table-mobile__plan__products__row__item__header .product-icon{margin-right:16px}}.pricing-table .pricing-table-mobile__plan__products__row__item__header .product-icon__icon{height:40px;width:40px}@media screen and (min-width:600px){.pricing-table .pricing-table-mobile__plan__products__row__item__header .product-icon__icon{height:50px;width:50px}}.pricing-table .pricing-table-mobile__plan__cta{padding:16px;text-align:center}.pricing-table .pricing-table-mobile__plan__cta--spark{background-color:#039be5}.pricing-table .pricing-table-mobile__plan__cta--blaze{background-color:#2e3a4d}.pricing-table .pricing-table__body__cell{padding:40px 24px}.pricing-table .pricing-table__body__cell:not(.pricing-table__body__cell--blaze){border-right:1px solid #eceff1}.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__body__cell:first-child{padding:40px 24px}.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__footer__cell:first-child,.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__footer__cell:last-child,.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__header__cell:first-child,.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__header__cell:last-child,.pricing-table .pricing-table__footer__cell,.pricing-table .pricing-table__header__cell{padding:20px}@media screen and (min-width:1280px){.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__footer__cell:first-child,.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__footer__cell:last-child,.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__header__cell:first-child,.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__header__cell:last-child,.pricing-table .pricing-table__footer__cell,.pricing-table .pricing-table__header__cell{padding:32px 8px 20px 20px}}.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__footer__cell:first-child__title,.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__footer__cell:last-child__title,.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__header__cell:first-child__title,.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__header__cell:last-child__title,.pricing-table .pricing-table__footer__cell__title,.pricing-table .pricing-table__header__cell__title{font-size:20px;line-height:26px}.pricing-table .firesite-tooltip__container{left:5px;top:-2px;position:relative}.pricing-table .firesite-tooltip__container.pricing__blaze-node{top:0}.pricing-table .firesite-tooltip__container .material-icons{font-size:20px}.pricing-table .firebase-pricing-bump-up{-webkit-transform:translateY(-16px);transform:translateY(-16px);display:inline-block}.pricing-table .devsite-wrapper{background-size:100vw}.pricing-table .firesite-row.is-page-header-row .firesite-row__inner{padding-bottom:40px}.pricing-table .firesite-row-header{position:relative;margin-bottom:20px}.pricing-table .firesite-row-header .collapser{display:none}.pricing-table .firesite-row-header.calculator-header{margin-bottom:60px}.pricing-table .firesite-row-header__title{margin-bottom:52px}.pricing-table .firesite-row-header__description strong{color:#424242;font-weight:500}@media screen and (max-width:1000px){.pricing-table .pricing-table{display:none}}.pricing-table .pricing-table td,.pricing-table .pricing-table th{padding:20px;border-left:1px solid #eceff1}.pricing-table .pricing-table__footer__cell__title,.pricing-table .pricing-table__header__cell__title{font-size:24px;line-height:28px;font-weight:500;font-family:"Google Sans",sans-serif;color:#fff}@media screen and (min-width:1440px){.pricing-table .pricing-table__footer__cell__title,.pricing-table .pricing-table__header__cell__title{font-size:36px;line-height:46px}}.pricing-table .pricing-table__footer__cell__plan-name,.pricing-table .pricing-table__footer__cell__plan-name>h5,.pricing-table .pricing-table__header__cell__plan-name,.pricing-table .pricing-table__header__cell__plan-name>h5{font-size:20px;line-height:1;margin-bottom:14px}.pricing-table .pricing-table__footer__cell__plan-name--empty,.pricing-table .pricing-table__footer__cell__plan-name>h5--empty,.pricing-table .pricing-table__header__cell__plan-name--empty,.pricing-table .pricing-table__header__cell__plan-name>h5--empty{height:20px}.pricing-table .pricing-table__footer__cell--products .pricing-table__footer__cell__title,.pricing-table .pricing-table__footer__cell--products .pricing-table__header__cell__title,.pricing-table .pricing-table__header__cell--products .pricing-table__footer__cell__title,.pricing-table .pricing-table__header__cell--products .pricing-table__header__cell__title{color:#424242}.pricing-table .pricing-table__header__cell{background-color:#f5f7f8;vertical-align:top;width:24%}.pricing-table .pricing-table__header__cell__plan-description{display:block;font-size:14px;font-weight:400;line-height:20px;margin-bottom:8px}.pricing-table .pricing-table__header__cell__plan-description .link--white{text-decoration:underline}.pricing-table .pricing-table__header__cell__rule{border-color:#fff;margin:20px 0}.pricing-table .pricing-table__header__cell__disclaimer{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;font-size:14px;line-height:1.5;margin-top:24px}@media screen and (min-width:1183px){.pricing-table .pricing-table__header__cell__disclaimer{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;font-size:12px;margin-top:0}}.pricing-table .pricing-table__header__cell__disclaimer .material-icons{font-size:24px;margin-right:0;margin-bottom:12px}@media screen and (min-width:1183px){.pricing-table .pricing-table__header__cell__disclaimer .material-icons{font-size:12px;margin-right:4px;margin-bottom:0;line-height:16px}}.pricing-table .pricing-table__footer__cell{vertical-align:top}.pricing-table .pricing-table__footer__cell__plan-description{display:block;font-size:14px;margin-bottom:24px}.pricing-table .pricing-table__footer__cell--products,.pricing-table .pricing-table__header__cell--products{border:1px solid #eceff1}.pricing-table .pricing-table__footer__cell--spark,.pricing-table .pricing-table__header__cell--spark{border:1px solid #039be5;background-color:#039be5}.pricing-table .pricing-table__footer__cell--blaze,.pricing-table .pricing-table__header__cell--blaze{border:1px solid #2e3a4d;background-color:#2e3a4d}.pricing-table .pricing-table__body{border-right:1px solid #eceff1;border-right-width:2px}.pricing-table .pricing-table__body__row{border:1px solid #eceff1}.pricing-table .pricing-table__body__row--free-products .pricing-table__body__cell{padding:8px 24px;position:relative;vertical-align:middle}.pricing-table .pricing-table__body__row--free-products .pricing-table__body__cell__list--fixed-height{height:34px}.pricing-table .pricing-table__body__row--free-products .pricing-table__body__cell__list-item{left:calc(-33px/2);position:absolute;top:0}.pricing-table .pricing-table__body__row--free-products .pricing-table__body__cell .firesite-feature-icon{font-size:30px;margin:0 8px 8px 0}.pricing-table .pricing-table__body__row--free-products .pricing-table__body__cell--blaze,.pricing-table .pricing-table__body__row--free-products .pricing-table__body__cell--spark{background-color:#f6fcfe}.pricing-table .pricing-table__body__row--free-products .pricing-table__body__cell--spark{border-right:0}.devsite-article-body>:not(devsite-selector) .pricing-table .pricing-table__body__row--free-products .pricing-table__body__cell:first-child{padding:8px 24px}.pricing-table .pricing-table__body__row--google-cloud .pricing-table__body__cell__title,.pricing-table .pricing-table__body__row--google-cloud .pricing-table__body__cell__title>h5{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex}.pricing-table .pricing-table__body__cell{background-color:#fff;font-size:14px;position:relative}@media screen and (min-width:1280px){.pricing-table .pricing-table__body__cell{font-size:16px}}.pricing-table .pricing-table__body__cell__heading{position:absolute;top:0;width:100%;left:0;height:64px;background-color:#f5f7f8;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;padding:12px 14px 6px 12px}.pricing-table .pricing-table__body__cell__heading>span{font-size:16px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}.pricing-table .pricing-table__body__cell__title{overflow:visible}.pricing-table .pricing-table__body__cell ul li{font-size:16px;line-height:26px;margin:12px 0}.pricing-table .pricing-table__body__cell .material-icons{font-size:24px}.pricing-table .pricing-table__body__cell .material-icons.icon-green,.pricing-table .pricing-table__body__cell .material-icons.icon-red{margin-top:-6px}.pricing-table .pricing-table__body__cell .firesite-feature-icon{display:none;vertical-align:middle;margin-bottom:0}.pricing-table .pricing-table__body__cell .firesite-feature-custom-icon{width:46px;display:none;vertical-align:middle;margin-bottom:0}.pricing-table .pricing-table__body__cell__title,.pricing-table .pricing-table__body__cell__title>h5{display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0;vertical-align:middle}.pricing-table .pricing-table__body__cell__disclaimer{bottom:14px;font-size:12px;font-family:"Roboto",sans-serif;left:24px;line-height:18px;position:absolute;right:0}.pricing-table .pricing-table__body__cell__list-item{color:#757575;display:-webkit-flex;display:-ms-flexbox;display:flex;white-space:nowrap}.pricing-table .pricing-table__body__cell__list-item--free-cell{color:#0288d1}@media screen and (min-width:720px){.pricing-table .pricing-table__body__cell__list-item{display:block}}.pricing-table .pricing-table__body__cell__description{font-size:14px;margin-top:8px}.pricing-table .pricing-table__body__cell--blaze,.pricing-table .pricing-table__body__cell--spark{font-size:16px;line-height:20px;font-weight:400;font-family:"Google Sans",sans-serif;text-align:center;vertical-align:bottom}@media screen and (min-width:1280px){.pricing-table .pricing-table__body__cell--blaze,.pricing-table .pricing-table__body__cell--spark{font-size:18px;line-height:26px}}@media screen and (min-width:1183px){.pricing-table .firesite-pricing-disclaimers{padding-left:20px}}.pricing-table .firesite-pricing-disclaimers .small{font-size:90%}.pricing-table .firesite-pricing-disclaimers p{margin:0}.pricing-table .firesite-row--tout .firesite-row__inner{background-size:650px;padding-right:780px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.pricing-table .firesite-row--tout .firesite-row__inner .firesite-row-header__title{margin-bottom:40px}}.pricing-table .material-icons{vertical-align:middle}.pricing-table .material-icons.icon-green{color:#02bfa6}.pricing-table .material-icons.icon-red{color:#f92953}@media screen and (max-width:720px){.firesite-page-pricing .firesite-row__inner{padding-bottom:40px}.firesite-page-pricing .firesite-row__separator{margin:60px -64px}.firesite-page-pricing .firesite-row--tout .firesite-row__inner{padding-right:410px;background-position-x:100%;background-size:400px auto}.firesite-page-pricing .firesite-row--tout .firesite-row__inner .firesite-row-header__title{margin-bottom:30px}}@media screen and (max-width:400px){.full-usecase__main{-webkit-order:2;-ms-flex-order:2;order:2}.firesite-page-pricing .firesite-row.is-page-header-row .firesite-row__inner{padding-bottom:40px}.firesite-page-pricing .firebase-pricing-bump-up{-webkit-transform:translateY(-24px);transform:translateY(-24px)}.firesite-page-pricing .firesite-row-header__title{padding-right:24px}.firesite-page-pricing .firesite-button.is-hero.is-raised{margin-bottom:16px}.firesite-page-pricing .firesite-row__separator{margin:30px -18px}.firesite-page-pricing .firesite-row--tout .firesite-row__inner{background-size:360px;padding:40px 18px 100px}}@media only screen and (max-width:400px) and (orientation:portrait){.firesite-page-pricing .firesite-row--tout .firesite-row__inner{padding-bottom:160px}}@media only screen and (max-width:400px) and (orientation:landscape) and (max-width:480px){.firesite-page-pricing .firesite-row--tout .firesite-row__inner{background-size:320px}}@media screen and (max-width:400px){.firesite-page-pricing .firesite-row--tout .firesite-row__inner .firesite-row-header__title{margin-bottom:30px}}@media only screen and (max-width:1200px) and (min-width:1000px){.firesite-row--tout .firesite-row__inner{padding-right:650px!important}}div[aria-expanded=true] .arrow{opacity:0;width:0;visibility:collapse}div[aria-expanded=false] .arrow,div[aria-expanded=true] .expanded{opacity:1;padding-top:10px;width:24px;visibility:visible}div[aria-expanded=false] .expanded{opacity:0;width:0;visibility:collapse}.devsite-article-body .arrow{cursor:pointer!important}.product-grid-integrations{margin-top:28px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}@media screen and (min-width:720px){.product-grid-integrations{margin-top:60px}}@media screen and (min-width:1280px){.product-grid-integrations{margin-top:80px}}.product-grid-integrations__titles{margin:4px 0 12px}.product-grid-integrations__titles--mods{margin:4px 0 30px}.product-grid-integrations__titles--mods .product-grid-integrations__subtitle{margin-top:-28px;margin-bottom:14px}.product-grid-integrations__title{margin:0}.extensions-grid__title>a,.product-card-grid__title>a,.product-grid-integrations__title>a,.product-grid__title>a{color:inherit}.product-grid-integrations p{-webkit-flex:1;-ms-flex:1;flex:1;padding-right:24px;margin-bottom:0;text-align:left}@media screen and (min-width:720px){.product-grid-integrations--mods{margin-top:42px}}.product-grid-integrations__ctas,.product-grid-integrations__meta{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex}.product-grid-integrations__meta{margin-bottom:16px}.product-grid-integrations__subtitle{font-size:14px;line-height:20px;font-weight:500;font-family:"Roboto",sans-serif;color:#174ea6;margin:0}.product-grid-integrations__sub-label{font-size:14px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif;color:#039be5}.product-grid-integrations__pay-to-scale{border-radius:2px;border:1px solid #b5c0c5;box-sizing:border-box;color:#b5c0c5;font-family:Roboto;font-weight:400;font-size:12px;line-height:1;margin-right:8px;padding:4px 6px}.product-grid-integrations__product{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding-bottom:44px;position:relative}.product-grid-integrations__product:nth-child(3n){margin-right:0}@media screen and (min-width:720px){.product-grid-integrations__product{-webkit-flex:0 1 calc((50% - 42px));-ms-flex:0 1 calc((50% - 42px));flex:0 1 calc((50% - 42px));margin-bottom:40px;margin-top:0;margin-right:84px}}@media screen and (min-width:1440px){.product-grid-integrations__product{-webkit-flex:0 1 calc((100% - 168px)/3);-ms-flex:0 1 calc((100% - 168px)/3);flex:0 1 calc((100% - 168px)/3)}.product-grid-integrations__product--no-bottom-border-desktop:after{display:none!important}.product-grid-integrations__product>img{margin-bottom:16px}}@media screen and (min-width:720px){.product-grid-integrations__product:not(:nth-child(2n)){margin-right:84px}.product-grid-integrations__product:nth-child(2n){margin-right:0}.product-grid-integrations__product:nth-child(2n+1):not(:nth-last-child(-n+2)):after{content:'';display:block;position:absolute;height:1px;width:calc(200% + 84px);background:#eceff1;bottom:0;left:0}.product-grid-integrations__product--no-bottom-border-tablet:after{display:none!important}}@media screen and (min-width:1440px){.product-grid-integrations__product:not(:nth-of-type(2n)){margin-right:0}.product-grid-integrations__product:not(:nth-of-type(3n)){margin-right:84px}.product-grid-integrations__product:nth-child(2n+1):not(:nth-last-child(-n+2)):after{display:none}.product-grid-integrations__product:nth-child(3n+1):not(:nth-last-child(-n+3)):after{content:'';display:block;position:absolute;height:1px;width:calc(300% + 168px);background:#eceff1;bottom:0;left:0}.product-grid-integrations__product--no-bottom-border-desktop:after{display:none!important}.product-grid-integrations__product>img{margin-bottom:16px}}.product-grid-integrations__content{-webkit-flex:1;-ms-flex:1;flex:1}.product-grid-integrations__roles-title{font-weight:600;margin-bottom:4px}.product-grid-integrations__role{border-radius:12px;border:1px solid rgba(0,0,0,.12);display:inline-block;font-weight:500;font-size:13px;margin-bottom:4px;padding:0 10px}.product-grid-integrations__ctas{margin-top:24px;min-height:36px}.product-grid-integrations__ctas .product-grid-integrations__youtube{background:0 0;border:none;box-shadow:none}.product-grid-integrations__ctas .product-grid-integrations__youtube:focus{opacity:.7}.product-grid-integrations__ctas .product-grid-integrations__youtube>*{pointer-events:none}.product-grid-integrations__ctas .product-grid-integrations__youtube-label{display:none}.extensions-grid__ctas .product-grid__youtube>i,.product-grid-integrations__ctas .product-grid-integrations__youtube>i{cursor:pointer;top:0}.product-grid-integrations .cta-button:first-child,.product-grid-integrations .cta-link:first-child{margin-right:24px}.product-grid-integrations .cta-button:nth-child(2),.product-grid-integrations .cta-link:nth-child(2){margin-right:36px}.product-grid-integrations .cta-button--small{padding:10px 20px;width:auto}@media screen and (max-width:1000px){.product-grid-integrations .cta-button--small{font-family:"Google Sans",sans-serif}}@media screen and (min-width:1000px){.product-grid-integrations .cta-button--small{font-size:16px}}.product-grid-integrations .product-icon__beta{display:inline}.product-grid-integrations .product-icon__image{border-radius:0}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero{text-align:left;height:400px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;overflow:hidden}}@media screen and (min-width:1000px) and (min-width:1000px){.product-card-grid .product-card-grid__product-hero{margin-bottom:60px}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero a,.product-card-grid .product-card-grid__product-hero p{color:#fff}.product-card-grid .product-card-grid__product-hero .product-grid__content{padding-left:150px;max-width:60%}.product-card-grid .product-card-grid__product-hero .product-card-grid__title a{font-size:36px;line-height:64px;font-weight:500;font-family:"Google Sans",sans-serif}.product-card-grid .product-card-grid__product-hero p{padding:0;font-size:20px;line-height:28px;font-weight:400;font-family:"Google Sans",sans-serif;text-align:left}.product-card-grid .product-card-grid__product-hero a{font-size:20px;line-height:40px;font-weight:500;font-family:"Google Sans",sans-serif}.product-card-grid .product-card-grid__product-hero .product-icon-large .product-icon__icon{left:116px;-webkit-transform:none;transform:none}.product-card-grid .product-card-grid__product-hero .product-card-grid__ctas,.product-card-grid .product-card-grid__product-hero .product-card-grid__titles{margin-top:32px}.product-card-grid .product-card-grid__product-hero .product-card-header-firestore{background:#ef6c00 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-firestore_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-auth{background:#ab47bc url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-auth_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-realtime-db{background:#37474f url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-realtime-db_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-ml{background:#4285f4 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-ml_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-functions{background:#37474f url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-functions_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-storage{background:#01acc1 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-storage_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-hosting{background:#283593 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-hosting_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-remote-config{background:#5c6bc0 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-remote-config_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-cloud-msg{background:#4285f4 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-cloud-msg_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-analytics{background:#ff7043 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-analytics_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-test-lab{background:#4db6ac url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-test-lab_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-app-distro{background:#4285f4 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-app-distro_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-perf{background:#3949ab url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-perf_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-predict{background:#7e57c2 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-predict_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-ab{background:#5c6bc0 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-ab_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-inapp-messaging{background:#4285f4 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-inapp-messaging_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-dynamic-links{background:#ec407a url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-dynamic-links_2x.png) right center no-repeat;background-size:auto 100%}.product-card-grid .product-card-grid__product-hero .product-card-header-crashlytics{background:#8bc34a url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/featured-crashlytics_2x.png) right center no-repeat;background-size:auto 100%}}.product-card-grid__product{margin-bottom:20px;width:100%;min-height:330px}.product-card-grid__product .product-card-grid__title a{font-size:18px;line-height:24px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.product-card-grid__product .product-card-grid__title a{font-size:16px;line-height:24px;font-weight:500;font-family:"Google Sans",sans-serif}}.product-card-grid__mask{position:absolute;top:0;bottom:0;left:0;right:0;display:block}.product-card-grid__description{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;height:64%;margin:-12px 0 12px;font-size:10px;line-height:16px;font-weight:400;font-family:"Google Sans",sans-serif}.product-card-grid__description p{margin-bottom:-16px}@media screen and (min-width:720px){.product-card-grid__description{font-size:16px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif;margin-top:0}}.product-card-grid,.product-grid{text-align:center;margin-top:28px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}@media screen and (min-width:720px){.product-card-grid,.product-grid{margin-top:60px}}@media screen and (min-width:1280px){.product-card-grid,.product-grid{margin-top:80px}}.product-card-grid__titles,.product-grid__titles{margin:58px 0 0}.product-card-grid__titles--mods,.product-grid__titles--mods{margin:4px 0 30px}.product-card-grid__titles--mods .product-grid__subtitle,.product-grid__titles--mods .product-grid__subtitle{margin-top:-28px;margin-bottom:14px}.product-card-grid__title,.product-grid__title{margin:0}@media screen and (min-width:1000px){.product-card-grid__title,.product-grid__title{font-size:20px;line-height:24px;font-weight:500;font-family:"Google Sans",sans-serif}}.product-card-grid p,.product-grid p{-webkit-flex:1;-ms-flex:1;flex:1;padding:20px 20px 4px;margin-bottom:0}@media screen and (min-width:720px){.product-card-grid p,.product-grid p{padding:4px 20px}.product-card-grid--mods,.product-grid--mods{margin-top:42px}}.product-card-grid__ctas,.product-card-grid__meta,.product-grid__ctas,.product-grid__meta{-webkit-align-items:center;-ms-flex-align:center;align-items:center}.product-card-grid__meta,.product-grid__meta{margin-bottom:16px}.product-card-grid__subtitle,.product-grid__subtitle{font-size:14px;line-height:20px;font-weight:500;font-family:"Roboto",sans-serif;color:#174ea6;margin:0}.product-card-grid__sub-label,.product-grid__sub-label{font-size:14px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif;color:#039be5}.product-card-grid__pay-to-scale,.product-grid__pay-to-scale{border-radius:2px;border:1px solid #b5c0c5;box-sizing:border-box;color:#b5c0c5;font-family:Roboto;font-weight:400;font-size:12px;line-height:1;margin-right:8px;padding:4px 6px}.product-card-grid__product,.product-grid__product{border:1px solid #dadce0;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;position:relative;border-radius:8px;padding-bottom:0}.product-card-grid__product:first-child,.product-grid__product:first-child{margin-right:0;-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (max-width:1440px){.product-card-grid__product:nth-child(2n+1),.product-grid__product:nth-child(2n+1){margin-right:0}}@media screen and (min-width:1440px){.product-card-grid__product:nth-child(3n+1),.product-grid__product:nth-child(3n+1){margin-right:0}}@media screen and (min-width:720px){.product-card-grid__product,.product-grid__product{-webkit-flex:0 1 calc((50% - 12px));-ms-flex:0 1 calc((50% - 12px));flex:0 1 calc((50% - 12px));margin-bottom:40px;margin-top:0;margin-right:24px}}@media screen and (min-width:1440px){.product-card-grid__product,.product-grid__product{-webkit-flex:0 1 calc((100% - 48px)/3);-ms-flex:0 1 calc((100% - 48px)/3);flex:0 1 calc((100% - 48px)/3)}.product-card-grid__product--no-bottom-border-desktop:after,.product-grid__product--no-bottom-border-desktop:after{display:none!important}.product-card-grid__product>img,.product-grid__product>img{margin-bottom:16px}}.product-card-grid__product:hover,.product-grid__product:hover{background:#f8f9fa;border-color:rgba(60,64,67,.3);box-shadow:0 2px 3px rgba(60,64,67,.3),0 6px 10px rgba(60,64,67,.15);transition:background .2s ease-in-out}.product-card-grid__product:hover--no-bottom-border-tablet:after,.product-grid__product:hover--no-bottom-border-tablet:after{display:none!important}@media screen and (min-width:1440px){.product-card-grid__product:nth-child(2n+1):not(:nth-last-child(-n+2)):after,.product-grid__product:nth-child(2n+1):not(:nth-last-child(-n+2)):after{display:none}.product-card-grid__product--no-bottom-border-desktop:after,.product-grid__product--no-bottom-border-desktop:after{display:none!important}.product-card-grid__product>img,.product-grid__product>img{margin-bottom:16px}}.product-card-grid__product .product-card-header,.product-grid__product .product-card-header{border-top-left-radius:7px;border-top-right-radius:7px;min-height:100px}.product-card-grid__product .product-card-header-firestore,.product-grid__product .product-card-header-firestore{background:#ef6c00 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/firestore_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-auth,.product-grid__product .product-card-header-auth{background:#ab47bc url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/auth_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-realtime-db,.product-grid__product .product-card-header-realtime-db{background:#37474f url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/realtime-db_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-ml,.product-grid__product .product-card-header-ml{background:#4285f4 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/ml_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-functions,.product-grid__product .product-card-header-functions{background:#37474f url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/functions_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-storage,.product-grid__product .product-card-header-storage{background:#01acc1 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/storage_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-hosting,.product-grid__product .product-card-header-hosting{background:#283593 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/hosting_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-remote-config,.product-grid__product .product-card-header-remote-config{background:#5c6bc0 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/remote-config_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-cloud-msg,.product-grid__product .product-card-header-cloud-msg{background:#4285f4 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/cloud-msg_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-analytics,.product-grid__product .product-card-header-analytics{background:#ff7043 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/analytics_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-test-lab,.product-grid__product .product-card-header-test-lab{background:#4db6ac url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/test-lab_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-app-distro,.product-grid__product .product-card-header-app-distro{background:#4285f4 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/app-distro_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-perf,.product-grid__product .product-card-header-perf{background:#3949ab url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/perf_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-predict,.product-grid__product .product-card-header-predict{background:#7e57c2 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/predict_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-ab,.product-grid__product .product-card-header-ab{background:#5c6bc0 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/ab_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-inapp-messaging,.product-grid__product .product-card-header-inapp-messaging{background:#4285f4 url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/inapp-messaging_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-dynamic-links,.product-grid__product .product-card-header-dynamic-links{background:#ec407a url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/dynamic-links_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-crashlytics,.product-grid__product .product-card-header-crashlytics{background:#8bc34a url(/web/20210302141517im_/https://firebase.google.com/images/products/product-card-bgs/crashlytics_2x.png) top center/cover no-repeat}.product-card-grid__content,.product-grid__content{-webkit-flex:1;-ms-flex:1;flex:1;font-size:16px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif;-webkit-order:0;-ms-flex-order:0;order:0}.product-card-grid__roles-title,.product-grid__roles-title{font-weight:600;margin-bottom:4px}.product-card-grid__role,.product-grid__role{border-radius:12px;border:1px solid rgba(0,0,0,.12);display:inline-block;font-weight:500;font-size:13px;margin-bottom:4px;padding:0 10px}.product-card-grid__ctas,.product-grid__ctas{margin-top:24px;min-height:36px}@media screen and (min-width:1000px){.product-card-grid__ctas,.product-grid__ctas{margin-top:12px}}.product-card-grid .cta-button--small,.product-grid .cta-button--small{padding:10px 20px;width:auto}@media screen and (max-width:1000px){.product-card-grid .cta-button--small,.product-grid .cta-button--small{font-family:"Google Sans",sans-serif}}@media screen and (min-width:1000px){.product-card-grid .cta-button--small,.product-grid .cta-button--small{font-size:16px}}.product-card-grid .product-icon__beta,.product-grid .product-icon__beta{display:inline}@media screen and (min-width:1000px){.product-grid__product-hero{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;padding:54px 115px}.product-grid__product-hero:first-of-type .product-card-header{position:absolute;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background-position:center right}.product-grid__product-hero:first-of-type .product-grid__content,.product-grid__product-hero:first-of-type .product-grid__ctas,.product-grid__product-hero:first-of-type .product-grid__titles{z-index:1}}.extensions-grid{margin-top:28px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}@media screen and (min-width:720px){.extensions-grid{margin-top:60px}}@media screen and (min-width:1280px){.extensions-grid{margin-top:80px}}.extensions-grid__titles{margin:4px 0 12px}.extensions-grid__titles .product-grid__subtitle{margin-top:-28px;margin-bottom:14px}.extensions-grid__title{margin:0}.extensions-grid p{-webkit-flex:1;-ms-flex:1;flex:1;padding-right:24px;margin-bottom:0}@media screen and (min-width:720px){.extensions-grid{margin-top:42px}}.extensions-grid__eyebrow{font-size:14px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif;color:#039be5;display:inline-block;margin-bottom:6px}.extensions-grid__ctas,.extensions-grid__meta{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex}.extensions-grid__meta{margin-bottom:16px}.extensions-grid__made-by{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-top:7px}.extensions-grid__made-by img{height:18px;margin-bottom:2px;margin-right:4px}.extensions-grid__subtitle{font-size:13px;line-height:20px;font-weight:400;font-family:"Roboto",sans-serif;color:rgba(0,0,0,.54);margin:0}.extensions-grid__sub-label{font-size:14px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif;color:#039be5}.extensions-grid__pay-to-scale{border-radius:2px;border:1px solid #b5c0c5;box-sizing:border-box;color:#b5c0c5;font-family:Roboto;font-weight:400;font-size:12px;line-height:1;margin-right:8px;padding:4px 6px}.extensions-grid__product{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding-bottom:44px;position:relative}@media screen and (min-width:720px){.extensions-grid__product{-webkit-flex:0 1 calc((50% - 42px));-ms-flex:0 1 calc((50% - 42px));flex:0 1 calc((50% - 42px));margin-bottom:40px}.extensions-grid__product:not(:nth-of-type(2n)){margin-right:84px}.extensions-grid__product:nth-of-type(2n+1):not(:nth-last-of-type(-n+2)):after{content:'';display:block;position:absolute;height:1px;width:calc(200% + 84px);background:#eceff1;bottom:0;left:0}.extensions-grid__product--no-bottom-border-tablet:after{display:none!important}}@media screen and (min-width:1440px){.extensions-grid__product{-webkit-flex:0 1 calc((100% - 168px)/3);-ms-flex:0 1 calc((100% - 168px)/3);flex:0 1 calc((100% - 168px)/3)}.extensions-grid__product:not(:nth-of-type(2n)){margin-right:0}.extensions-grid__product:not(:nth-of-type(3n)){margin-right:84px}.extensions-grid__product:nth-of-type(2n+1):not(:nth-last-of-type(-n+2)):after{display:none}.extensions-grid__product:nth-of-type(3n+1):not(:nth-last-of-type(-n+3)):after{content:'';display:block;position:absolute;height:1px;width:calc(300% + 168px);background:#eceff1;bottom:0;left:0}.extensions-grid__product--no-bottom-border-desktop:after{display:none!important}.extensions-grid__product>img{margin-bottom:16px}}.extensions-grid__content{-webkit-flex:1;-ms-flex:1;flex:1}.extensions-grid__roles-title{font-weight:600;margin-bottom:4px}.extensions-grid__role{border-radius:12px;border:1px solid rgba(0,0,0,.12);display:inline-block;font-weight:500;font-size:13px;margin-bottom:4px;padding:0 10px}.extensions-grid__ctas{margin-top:24px;min-height:36px}.extensions-grid__ctas .product-grid__youtube{background:0 0;border:none;box-shadow:none}.extensions-grid__ctas .product-grid__youtube:focus{opacity:.7}.extensions-grid__ctas .product-grid__youtube>*{pointer-events:none}.extensions-grid__ctas .product-grid__youtube-label,.product-header br{display:none}.extensions-grid .cta-button:first-child,.extensions-grid .cta-link:first-child{margin-right:24px}.extensions-grid .cta-button:nth-child(2),.extensions-grid .cta-link:nth-child(2){margin-right:36px}.extensions-grid .cta-button--small{padding:10px 20px;width:auto}@media screen and (max-width:1000px){.extensions-grid .cta-button--small{font-family:"Google Sans",sans-serif}}@media screen and (min-width:1000px){.extensions-grid .cta-button--small{font-size:16px}}.extensions-grid .product-icon__beta{display:inline}.product-header{margin:0 -20px}@media screen and (min-width:1000px){.product-header{margin:0 -80px}}.product-header--firestore .cta-button{color:#da4e02}.product-header--auth .cta-button{color:#7b1fa2}.product-header--realtime-db .cta-button{color:#263238}.product-header--ml .cta-button{color:#174ea6}.product-header--functions .cta-button{color:#37474f}.product-header--storage .cta-button{color:#00838f}.product-header--hosting .cta-button{color:#1a237e}.product-header--remote-config .cta-button{color:#283593}.product-header--cloud-msg .cta-button{color:#174ea6}.product-header--analytics .cta-button{color:#e53935}.product-header--test-lab .cta-button{color:#00897b}.product-header--app-distro .cta-button{color:#174ea6}.product-header--perf .cta-button{color:#1a237e}.product-header--predict .cta-button{color:#512da8}.product-header--ab .cta-button{color:#283593}.product-header--inapp-messaging .cta-button{color:#174ea6}.product-header--dynamic-links .cta-button{color:#c2185b}.product-header--crashlytics .cta-button{color:#558b2f}.product-header--no-image .product-header__content{padding-right:60px;text-align:left}.product-header--no-image .product-header__wrapper{padding-bottom:40px}@media screen and (min-width:1000px){.product-header--no-image .product-header__wrapper{padding-bottom:84px}}.product-header--no-image h1{max-width:none!important}.product-header--image-top .product-header__content{margin-top:0;-webkit-order:2;-ms-flex-order:2;order:2}@media screen and (min-width:600px){.product-header--image-top .product-header__content{margin-top:20px;-webkit-order:0;-ms-flex-order:0;order:0}}.product-header--image-top .product-header__illo>img{bottom:initial;-webkit-transform-origin:center right;transform-origin:center right}@media screen and (min-width:1280px){.product-header--image-top .product-header__illo>img{width:680px}}.product-header--image-top .product-header__nacho svg{top:-2684px}.product-header__hero-image{height:calc(38vh - 300px);position:relative}@media screen and (min-width:1280px){.product-header__hero-image{height:630px}}.product-header--mods .product-header__illo>img{bottom:-60px}.product-header #product-header-nacho{fill:#039be5}.product-header .product-icon__beta,.youtube-row .devsite-card-buttons a--white{color:#fff}.product-header__nacho svg{position:absolute;left:50%;top:-2900px;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media screen and (min-width:400px){.product-header__nacho svg{top:-2840px}}@media screen and (min-width:600px){.product-header__nacho svg{top:-2700px}}@media screen and (min-width:720px){.product-header__nacho svg{top:-2900px;z-index:-1}}@media screen and (min-width:1000px){.product-header__nacho svg{top:-2750px}.product-header br{display:inline}}.product-header h1{color:#fff;margin-bottom:36px;white-space:normal}@media screen and (min-width:720px){.product-header h1{max-width:75%}}@media screen and (min-width:1000px){.product-header h1{max-width:none;white-space:nowrap}}.product-header h5{font-size:14px;margin-bottom:8px}@media screen and (min-width:1000px){.product-header h5{font-size:24px;line-height:32px;margin-bottom:20px}}.product-header__subheading__dark{font-size:20px;color:#757575}.product-header__category{font-size:24px;line-height:26px;font-weight:400;font-family:"Google Sans",sans-serif;color:#fff;margin-bottom:20px}.product-header__wrapper{box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;margin:0 auto;max-width:1440px;padding:0 20px 36px;position:relative}@media screen and (min-width:600px){.product-header__wrapper{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}@media screen and (min-width:720px){.product-header__wrapper{padding-bottom:120px}}@media screen and (min-width:1000px){.product-header__wrapper{padding:0 80px 160px}}.product-header__content{-webkit-flex:1 2 100%;-ms-flex:1 2 100%;flex:1 2 100%;text-align:center;position:relative;z-index:1}@media screen and (min-width:600px){.product-header__content{padding:40px 20px 0;text-align:left}}@media screen and (min-width:1000px){.product-header__content{padding:76px 90px 0}}.product-header__illo{text-align:center}@media screen and (min-width:600px){.product-header__illo{-webkit-flex:1 1 50%;-ms-flex:1 1 50%;flex:1 1 50%;text-align:initial}}.product-header__illo>img{max-height:256px}@media screen and (min-width:600px){.product-header__illo>img{bottom:0;margin-bottom:0;position:absolute;right:0;z-index:0}}@media screen and (min-width:720px){.product-header__illo>img{max-height:100%}}@media screen and (min-width:1000px){.product-header__illo>img{height:100%;max-height:none;-webkit-transform-origin:bottom right;transform-origin:bottom right;-webkit-transform:scale(.8);transform:scale(.8);width:auto}}@media screen and (min-width:1280px){.product-header__illo>img{height:auto;-webkit-transform:none;transform:none;width:760px}}.product-header__ctas{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:600px){.product-header__ctas{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.product-header__ctas .cta-button.cta-button--blue,.product-header__ctas .cta-button.cta-button--white{margin-bottom:12px;padding-left:80px;padding-right:80px}@media screen and (min-width:600px){.product-header__ctas .cta-button.cta-button--blue,.product-header__ctas .cta-button.cta-button--white{margin:0 20px 0 0;padding-left:50px;padding-right:50px}}@media screen and (min-width:1000px){.product-header__ctas .cta-button.cta-button--blue,.product-header__ctas .cta-button.cta-button--white{margin-right:52px}}.product-header-large .product-header__wrapper{margin-bottom:-84px;padding-bottom:0;padding-top:40px}@media screen and (min-width:600px){.product-header-large .product-header__wrapper{margin-bottom:0;padding-bottom:120px;padding-top:60px}}@media screen and (min-width:1000px){.product-header-large .product-header__wrapper{padding-bottom:72px}}.product-row{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-bottom:48px}@media screen and (min-width:720px){.product-row{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;margin-bottom:0;margin-top:0!important}}.product-row br,.product-row+hr{display:none}@media screen and (min-width:1280px){.product-row br{display:inline}}@media screen and (min-width:600px){.product-row+hr{display:block}}.product-row__text{color:#757575;-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%;-webkit-order:2;-ms-flex-order:2;order:2}@media screen and (min-width:720px){.product-row__text{-webkit-flex:1 0 40%;-ms-flex:1 0 40%;flex:1 0 40%;max-width:80%;-webkit-order:1;-ms-flex-order:1;order:1;padding-right:40px}}.games-product-row .product-row__text>p:empty,.product-row__text>p:empty{display:none}.games-product-row .product-row__text a,.product-row__text a{font-weight:500}.product-row__media{-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%;margin-bottom:12px;max-width:624px;-webkit-order:1;-ms-flex-order:1;order:1}@media screen and (min-width:720px){.product-row__media{-webkit-flex-basis:60%;-ms-flex-preferred-size:60%;flex-basis:60%;margin-bottom:0;-webkit-order:2;-ms-flex-order:2;order:2}}.product-row__media img{width:100%}.product-row__media--push-right{text-align:right}.product-row__partner{margin-top:12px}@media screen and (min-width:600px){.product-row__partner{margin-top:0}}.product-row__partner>img{margin-bottom:24px;max-height:36px}.product-row__products-row{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:36px 0 12px}@media screen and (min-width:1000px){.product-row__products-row{margin-bottom:32px}}.product-row__products-row .product-icon--chip:not(:last-of-type){width:175px;margin-right:0}.product-row__products-row .product-icon__link{color:#669df6}.product-row__products-row .product-icon__link:hover,.product-row__products-row .product-icon__link:hover .product-icon__icon{color:#1967d2}.product-row__products-row .product-icon__link .product-icon__icon{color:#669df6;width:20px}.product-row__products-row .product-icon__link .product-icon__name{font-size:14px;line-height:1;font-weight:400;font-family:"Google Sans",sans-serif;color:#669df6}.product-row__ctas a{width:43%;margin-right:20px;margin-top:30px}.product-row__ctas .cta-button--small{padding:10px}.firebase-page-community #firebase-alpha-program .cta-banner__cta,.product-row__footnote{margin-top:20px}.product-row__footnote--with-icon{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex}.product-cols .product-cols__spacer hr,.product-row__footnote--with-icon .product-row__footnote-text p,.text-illo h5{margin:0}.devsite-article .youtube-row .devsite-card-buttons a--with-icon>i,.devsite-firebase-status-content aside:before,.product-row__footnote--with-icon img,.youtube-row .devsite-card-buttons a--with-icon>i{margin-right:12px}@media screen and (min-width:720px){.games-product-row{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;margin-bottom:0;margin-top:0!important}}.games-product-row .product-row__text{color:#757575;-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%;-webkit-order:2;-ms-flex-order:2;order:2}@media screen and (min-width:720px){.games-product-row .product-row__text{-webkit-flex:1 0 50%;-ms-flex:1 0 50%;flex:1 0 50%;max-width:80%;-webkit-order:1;-ms-flex-order:1;order:1;padding-right:40px}}.games-product-row .product-row__products-row{margin-bottom:0}.games-product-row .product-row__products-row .product-icon.product-icon--chip .product-icon__link:focus,.games-product-row .product-row__products-row .product-icon.product-icon--chip .product-icon__link:hover{color:#1967d2}.games-product-row .product-row__ctas{text-align:center}@media screen and (min-width:720px){.games-product-row .product-row__ctas{text-align:left}}.games-product-row .product-row__ctas a{width:100%;margin-top:30px;margin-right:6px;font-size:12px;line-height:18px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:450px){.games-product-row .product-row__ctas a{width:47%}}@media screen and (min-width:1000px){.games-product-row .product-row__ctas a{width:43%;margin-right:10px}}@media screen and (min-width:1280px){.games-product-row .product-row__ctas a{font-size:14px;line-height:16px;font-weight:500;font-family:"Google Sans",sans-serif;margin-right:20px}}.games-product-row .product-row__ctas .cta-button--small{padding:10px 4px}@media screen and (min-width:1280px){.games-product-row .product-row__ctas .cta-button--small{padding:10px}}.games-product-row .product-row__media,.games-product-row.games-hero .product-row__media{-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%;-webkit-order:1;-ms-flex-order:1;order:1;max-width:none}@media screen and (min-width:720px){.games-product-row .product-row__media,.games-product-row.games-hero .product-row__media{-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%;margin-bottom:0;-webkit-order:2;-ms-flex-order:2;order:2}}.games-product-row.games-hero .product-row__text{-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%;-webkit-order:2;-ms-flex-order:2;order:2}@media screen and (min-width:720px){.games-product-row.games-hero .product-row__text{-webkit-flex:1 0 50%;-ms-flex:1 0 50%;flex:1 0 50%;max-width:80%;-webkit-order:1;-ms-flex-order:1;order:1;padding-right:40px}}.games-product-row.games-hero .product-row__text h4{font-size:36px;line-height:45px;font-weight:400;font-family:"Google Sans",sans-serif}@media screen and (min-width:1000px){.games-product-row.games-hero .product-row__text h4{font-size:52px;line-height:62px;font-weight:400;font-family:"Google Sans",sans-serif}}.games-product-row.games-hero .product-row__text p{font-size:17px;line-height:23px;font-weight:400;font-family:"Roboto",sans-serif}@media screen and (min-width:1000px){.games-product-row.games-hero .product-row__text p{font-size:20px;line-height:28px;font-weight:400;font-family:"Roboto",sans-serif}}.product-cols,.product-cols .product-cols__header{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:1000px){.product-cols{-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}}.product-cols .product-cols__header{padding:40px 20px 30px;text-align:center;width:100%}@media screen and (min-width:1000px){.product-cols .product-cols__header{border-radius:16px;background:#f8f9fa;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);height:100%;padding:40px;width:88%}}@media screen and (min-width:1280px){.product-cols .product-cols__header{width:100%}.product-cols .product-cols__header:hover{transition:background .2s ease-in-out,box-shadow .2s ease-in-out;background:#d2e3fc;box-shadow:0 6px 10px 0 rgba(60,64,67,.15),0 2px 3px 0 rgba(60,64,67,.3)}}.product-cols .product-cols__heading,.product-cols .product-cols__heading h5{margin:18px 0 12px;font-size:24px;line-height:30px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:600px){.product-cols .product-cols__heading,.product-cols .product-cols__heading h5{margin:18px 0 24px;font-size:30px;line-height:30px;font-weight:500;font-family:"Google Sans",sans-serif}}@media screen and (min-width:720px){.product-cols .product-cols__heading,.product-cols .product-cols__heading h5{text-align:center;margin-top:28px}}.product-cols .product-cols__subheading{font-size:12px;line-height:16px;font-weight:300;font-family:"Google Sans",sans-serif;min-height:20px}@media screen and (min-width:720px){.product-cols .product-cols__subheading{font-size:18px;line-height:28px;font-weight:300;font-family:"Google Sans",sans-serif;min-height:40px}}.product-cols .product-cols__col{box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;position:relative;-webkit-align-items:center;-ms-flex-align:center;align-items:center;width:100%}.product-cols .product-cols__col:not(:first-child){margin-top:72px}@media screen and (min-width:720px){.product-cols .product-cols__col:not(:first-child){margin-top:0}}@media screen and (min-width:1000px){.product-cols .product-cols__col{-webkit-flex:0 1 33%;-ms-flex:0 1 33%;flex:0 1 33%}}.product-cols .product-cols__col img{width:120px}@media screen and (min-width:720px){.product-cols .product-cols__col img{width:auto}}@media screen and (min-width:1000px){.product-cols .product-cols__col:nth-child(2){margin-left:-8px;margin-right:-8px}.product-cols .product-cols__col:nth-child(2) .cta-link{margin:0 0 -11px;padding:0;width:100%}}@media screen and (min-width:1280px){.product-cols .product-cols__col:nth-child(2){margin-left:40px;margin-right:40px}.product-cols .product-cols__col:nth-child(2) .cta-link{margin:0}.product-cols .product-cols__col:nth-child(2) h5{width:110%}}.product-cols .product-cols__col:nth-of-type(3) .product-cols__spacer{visibility:hidden;display:none;opacity:0}.product-cols .cta-link{font-size:14px;line-height:16px;font-weight:500;font-family:"Google Sans",sans-serif;background-color:#1967d2;color:#fff;display:inline-block;margin:20px 0 0;min-width:248px;padding:10px 0;width:100%}@media screen and (min-width:720px){.product-cols .cta-link{font-size:18px;line-height:24px;font-weight:500;font-family:"Google Sans",sans-serif;max-width:500px}}@media screen and (min-width:1000px){.product-cols .cta-link{font-size:20px;line-height:30px;font-weight:500;font-family:"Google Sans",sans-serif;color:#1967d2;background-color:transparent;margin:0}}.product-cols .cta-link.anchor{position:absolute;top:0;left:0;right:0;bottom:0;background-color:transparent}.product-cols .cta-link.anchor:focus,.product-cols .cta-link.anchor:hover{background:0 0}.product-cols li[role=listitem]{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;margin:4px 0 -16px 50%;-webkit-flex:0 1 50%;-ms-flex:0 1 50%;flex:0 1 50%;text-align:center;-webkit-transform:translateX(-50%);transform:translateX(-50%);min-width:200px}@media screen and (min-width:720px){.product-cols li[role=listitem]{margin:20px 0 -12px 50%;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}@media screen and (min-width:1000px){.product-cols li[role=listitem]{-webkit-justify-content:left;-ms-flex-pack:left;justify-content:left}}@media screen and (min-width:1280px){.product-cols li[role=listitem]{margin:20px 0 -4px 50%}}.product-cols li[role=listitem] .product-icon .product-icon__icon,.product-cols li[role=listitem] .product-icon .product-icon__image{margin-bottom:4px;width:20px;height:32px}.product-cols li[role=listitem] .product-icon .product-icon__icon .gmp-icons,.product-cols li[role=listitem] .product-icon .product-icon__image .gmp-icons,h2 .product-icon__beta{font-size:16px}@media screen and (min-width:720px){.product-cols li[role=listitem] .product-icon .product-icon__icon .gmp-icons,.product-cols li[role=listitem] .product-icon .product-icon__image .gmp-icons{font-size:24px}.product-cols li[role=listitem] .product-icon .product-icon__icon,.product-cols li[role=listitem] .product-icon .product-icon__image{width:auto;height:auto}}.product-cols li[role=listitem]:hover .product-cols__text a,.product-cols li[role=listitem]:hover .product-icon__icon{transition:color .2s ease-in-out;color:#1a73e8}@media screen and (min-width:720px){.product-cols li[role=listitem]{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;text-align:left}}.product-cols li[role=listitem] .product-cols__text{margin:0 0 4px;text-align:center}@media screen and (min-width:1000px){.product-cols li[role=listitem] .product-cols__text{text-align:left}}.product-cols li[role=listitem] .product-cols__text .product-icon__name{font-size:12px;line-height:12px;font-weight:400;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.product-cols li[role=listitem] .product-cols__text .product-icon__name{font-size:18px;line-height:32px;font-weight:500;font-family:"Google Sans",sans-serif}}.product-cols .listitem-contain,.product-cols li[role=listitem]{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center}@media screen and (min-width:1280px){.product-cols ul{padding-left:30px}}.product-cols .product-cols__list{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:1;-ms-flex:1;flex:1;-webkit-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;list-style:none;margin:80px 0 0;padding:0;overflow:hidden}@media screen and (max-width:720px){.product-cols .product-cols__list{max-width:265px;margin:auto}}@media screen and (min-width:720px){.product-cols .product-cols__list{display:block}}.product-cols .product-cols__description,.show-all-button[aria-expanded=false] .show-all-button__icon--less,.show-all-button[aria-expanded=true] .show-all-button__icon--more,.three-column br{display:none}@media screen and (min-width:720px){.product-cols .product-cols__description{margin:0;line-height:20px;display:block}}.product-cols .product-cols__cta{margin-top:30px;text-align:center}@media screen and (min-width:720px){.product-cols .product-cols__cta{margin-top:60px}}.product-cols .product-cols__more-text{margin-top:24px;padding-left:58px}.product-cols .product-cols__more-text--hidden{visibility:hidden}.product-cols .product-cols__links{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;margin-top:-12px;width:100%}@media screen and (min-width:1000px){.product-cols .product-cols__links{margin-top:0;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}.product-cols .product-cols__spacer{margin:30px 0 -30px;max-width:500px;min-width:248px;width:100%}@media screen and (min-width:1000px){.product-cols .product-cols__spacer{visibility:hidden;display:none;opacity:0}}.product-cols .product-cols__product-info{width:100%;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}@media screen and (min-width:1000px){.product-cols .product-cols__product-info{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.products-showcase devsite-expandable{margin-top:80px}}.products-showcase__more-products .product-cols__list{margin-top:0}.products-showcase__more-products .product-icon__icon{margin-right:0!important;width:0!important}@media screen and (min-width:1000px){.products-showcase__more-products .product-icon__icon{margin-right:8px!important;width:auto!important}}.products-showcase__more-products .gmp-icons{opacity:0;visibility:hidden}@media screen and (min-width:1000px){.products-showcase__more-products .gmp-icons{opacity:1;visibility:visible}}.products-showcase .product-cols__col{margin-top:0!important}.firebase-page-home iframe body,.show-all-button{background-color:transparent}.show-all-button:active,.show-all-button:focus{background-color:transparent}.show-all-button:hover{background-color:#e8f0fe}.show-all-button,.show-all-button:active,.show-all-button:focus,.show-all-button:hover{margin:30px auto 0;border-radius:0;color:#1a73e8;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;font:500 20px 'Google Sans',sans-serif;letter-spacing:.15px;padding:30px 0 30px 10px;text-align:center;white-space:nowrap;line-height:normal;box-shadow:none;border-top:1px solid #d8d8d8;border-bottom:1px solid #d8d8d8;border-left:none;border-right:none;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:100%}@media screen and (min-width:720px){.show-all-button,.show-all-button:active,.show-all-button:focus,.show-all-button:hover{max-width:255px;margin:60px auto 0;border-radius:8px;padding:10px 5px 10px 20px;border:none;width:auto}}.show-all-button__icon{font-size:30px!important;height:auto!important;width:auto!important;position:relative;top:0!important;pointer-events:none}.simple__title{margin-bottom:8px}.text-illo{margin:0 0 60px}@media screen and (min-width:720px){.text-illo{margin:60px 0 72px 40px}}@media screen and (min-width:1000px){.text-illo{margin:180px 0 142px 88px}}.text-illo img{max-width:100%}@media screen and (min-width:1000px){.text-illo{margin-top:180px}}.text-illo h3{margin-bottom:12px}.text-illo h3+p{margin:0 0 42px}.text-illo .text-illo__container{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:720px){.text-illo .text-illo__container{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.text-illo .text-illo__text{-webkit-flex:1 1 40%;-ms-flex:1 1 40%;flex:1 1 40%}.text-illo .text-illo__text-container{padding:0 20px}@media screen and (min-width:400px){.text-illo .text-illo__text-container{padding:0 40px}}@media screen and (min-width:720px){.text-illo .text-illo__text-container{padding:0}}.text-illo .text-illo__block:not(:last-child){margin-bottom:28px}@media screen and (min-width:720px){.text-illo .text-illo__block:not(:last-child){margin-bottom:44px}}.text-illo .text-illo__block p{margin:12px 0 0}@media screen and (min-width:720px){.text-illo .text-illo__block p{margin:8px 0 0}.text-illo .text-illo__block{max-width:328px}.text-illo .text-illo__block:nth-child(3){max-width:292px}.text-illo .text-illo__block br{display:none}}@media screen and (min-width:1000px){.text-illo .text-illo__block:nth-child(3){max-width:310px}}.text-illo .text-illo__image{-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:1 0 60%;-ms-flex:1 0 60%;flex:1 0 60%;margin:24px 0 36px}@media screen and (min-width:720px){.text-illo .text-illo__image{margin:0 0 0 -5vw;-webkit-order:2;-ms-flex-order:2;order:2}}.text-illo .text-illo__cta{margin-top:32px;text-align:center}@media screen and (min-width:720px){.text-illo .text-illo__cta{margin-top:56px;text-align:left}}.three-column__wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}@media screen and (min-width:720px){.three-column__wrapper{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.three-column__column{-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%;box-sizing:content-box}@media screen and (min-width:720px){.three-column__column{-webkit-flex:1 1 calc(100%/3);-ms-flex:1 1 calc(100%/3);flex:1 1 calc(100%/3)}}.three-column__column>h5{margin:0 0 8px}.three-column__column>p{margin:0 0 12px;text-align:left}.three-column__column:not(:last-child){margin:0 0 32px;padding:0}@media screen and (min-width:720px){.three-column__column:not(:last-child){margin:0;padding:0 24px 0 0}}@media screen and (min-width:1280px){.three-column__column:not(:last-child){padding:0 84px 0 0}}.three-column__column__image-link>a{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-bottom:20px}@media screen and (min-width:720px){.three-column__column__image-link>a{margin-bottom:32px}}.three-column__column__image-link>a>img{margin-bottom:0;width:100%}.three-column__column__image-link>a:focus,.three-column__column__image-link>a:hover{background-color:transparent!important}.three-column__column-image>img{margin-bottom:12px;width:100%}.three-column--icons .three-column__column-image>img{height:50px;width:50px;opacity:.54}@media screen and (min-width:720px){.three-column br{display:initial}}.three-column .cta-button:not(:last-child),.three-column .cta-link:not(:last-child){margin-right:20px}.use-case{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:1000px){.use-case{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.use-case+hr{margin:84px 0}}.use-case br,.use-case--desktop{display:none}@media screen and (min-width:1000px){.use-case--desktop{display:-webkit-flex;display:-ms-flexbox;display:flex}}.use-case--mobile,.use-case--no-image .use-case__paragraphs{display:-webkit-flex;display:-ms-flexbox;display:flex}@media screen and (min-width:1000px){.use-case--mobile{display:none}}.use-case--mobile .expand-control .collapser{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.use-case--mobile [expanded] .expand-control .collapser{-webkit-transform:rotate(0);transform:rotate(0)}.use-case--mobile span[aria-level="2"]{color:#424242;display:block;font:500 28px/32px "Google Sans",sans-serif;font-weight:400;margin:0;padding:32px 48px 32px 0!important}.use-case--no-image .use-case__paragraphs{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:1000px){.use-case--no-image .use-case__paragraphs{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.use-case--no-image .use-case__paragraph{-webkit-flex:1 1 50%;-ms-flex:1 1 50%;flex:1 1 50%}.use-case--no-image .use-case__paragraph:not(:last-of-type){margin-right:36px}.use-case--no-image .use-case__case-study{width:50%}}.use-case--no-case-study .use-case__image{padding-bottom:0}.use-case--no-case-study .use-case__image>img{max-height:400px}.use-case--no-case-study .use-case__products-row{margin-bottom:0}@media screen and (min-width:1000px){.use-case br{display:inline}}.use-case__text{-webkit-flex:1 1 55%;-ms-flex:1 1 55%;flex:1 1 55%}.use-case__image{-webkit-flex:1 1 45%;-ms-flex:1 1 45%;flex:1 1 45%;padding:20px 0;text-align:center}@media screen and (min-width:1000px){.use-case__image{-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;-webkit-order:2;-ms-flex-order:2;order:2;padding:0 0 48px 40px}}.use-case__image>img{max-height:300px;width:auto}@media screen and (min-width:1000px){.use-case__image>img{max-height:600px}}.use-case__paragraph{font-size:14px;line-height:24px}.use-case__ctas>a:not(:last-child),.use-case__paragraph:not(:last-of-type){margin-bottom:16px}.use-case__paragraph h6{font:500 14px/24px "Google Sans",sans-serif;margin:0}@media screen and (min-width:1000px){.use-case__paragraph h6{font-size:16px}}.use-case__paragraph p{color:#757575}.use-case__products-row{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:36px 0 12px}@media screen and (min-width:1000px){.use-case__products-row{margin-bottom:32px}}.use-case__case-study{margin-top:80px}.use-case__case-study__image{margin-bottom:20px}.use-case__case-study__quote{padding-left:12px;border-left:2px solid #b5c0c5}.use-case__case-study__quote__paragraph{color:#757575;font-style:italic;margin-bottom:0}.use-case__case-study__quote__citation{color:#4a4a4a;font-size:14px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif}.use-case__ctas{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;margin-top:40px;text-align:center}@media screen and (min-width:1000px){.use-case__ctas{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.use-case__ctas>a:not(:last-child){margin-bottom:0;margin-right:40px}}.use-case__content{padding-bottom:44px}.use-cases{margin:44px auto}@media screen and (max-width:1000px){.use-cases .card__content{padding-top:0;padding-bottom:0}.use-cases hr{margin:0}}.use-cases .product-icon__icon{display:inline-block;font-size:46px;width:1em;height:1em;margin-top:0;margin-bottom:8px;border-radius:50%;position:relative;overflow:hidden}.use-cases .product-icon__icon--build{background:#ffca28}.use-cases .product-icon__icon--build:hover,.use-cases .product-icon__icon--release{background:#ffa000}.use-cases .product-icon__icon--grow{background:#ff8a65}.use-cases .product-icon__icon--release:hover{background:#ff6f00}.use-cases .product-icon__icon--grow:hover{background:#f4511e}.use-cases .product-icon__icon .gmp-icons{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);font-size:50%;color:#fff}.use-case-detail-row{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-bottom:24px}@media screen and (min-width:720px){.use-case-detail-row{-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;margin-bottom:0;margin-top:0!important}}.use-case-detail-row hr,.use-case-detail-row+hr{margin-bottom:28px;margin-top:28px}@media screen and (min-width:1000px){.use-case-detail-row hr,.use-case-detail-row+hr{margin-bottom:48px;margin-top:48px}}.use-case-detail-row__title{width:100%;max-width:750px}@media screen and (min-width:1000px){.use-case-detail-row__title--main,.use-case-detail-row__title--small{font-size:16px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}.use-case-detail-row__title--main{font-size:26px;line-height:34px}}.use-case-detail-row__text{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.use-case-detail-row__col,.use-case-detail-row__text,.youtube-row devsite-dynamic-content{-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%}@media screen and (min-width:720px){.use-case-detail-row__col,.use-case-detail-row__text{-webkit-flex:1 0 50%;-ms-flex:1 0 50%;flex:1 0 50%;padding-right:36px;width:100%}}.use-case-detail-row__col>p:empty,.use-case-detail-row__text>p:empty{display:none}.use-case-detail-row__col a,.use-case-detail-row__text a{font-weight:500}.use-case-detail-row__col a.use-case-detail-row__hidden-hr,.use-case-detail-row__text a.use-case-detail-row__hidden-hr{margin:8px 0;visibility:hidden}.use-case-detail-row__col ul li:first-child{margin-top:0}.use-case-detail-row__media{-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;margin:31px 12px 58px;position:relative}@media screen and (min-width:720px){.use-case-detail-row__media{-webkit-flex-basis:60%;-ms-flex-preferred-size:60%;flex-basis:60%;margin-top:0;margin-bottom:0}}.use-case-detail-row__media,.use-case-detail-row__media.mobile{display:-webkit-flex;display:-ms-flexbox;display:flex}@media screen and (min-width:720px){.use-case-detail-row__media.mobile{display:none}}.firebase-page-gcp .firebase-page-gcp__get-started.card__subpartial br,.firebase-page-pricing .landing-header br,.use-case-detail-row__media.desktop{display:none}@media screen and (min-width:720px){.use-case-detail-row__media.desktop{display:-webkit-flex;display:-ms-flexbox;display:flex}}.use-case-detail-row__image-container{position:relative}.use-case-detail-row__image-container:not(.in-phone)>img{max-height:400px}@media screen and (min-width:1000px){.use-case-detail-row__image-container:not(.in-phone)>img{max-height:530px;max-width:350px}}.use-case-detail-row__image-container.in-phone img.phone{height:100%;position:absolute;width:100%}.use-case-detail-row__image-container.in-phone.horizontal img:not(.phone){max-width:500px;padding:2% 10% 0 9%;width:100%}.use-case-detail-row__image-container.in-phone.vertical img:not(.phone){max-width:250px;padding:16% 4% 7%}.use-case-detail-row__partner{margin-bottom:26px}@media screen and (min-width:1000px){.use-case-detail-row__partner{margin-bottom:45px}}.use-case-detail-row__partner>img{width:103px;height:auto}@media screen and (min-width:1000px){.use-case-detail-row__partner>img{width:159px}}.use-case-detail-row__case-study__image.narrow>img,.use-case-detail-row__partner.narrow>img{width:60px}@media screen and (min-width:1280px){.use-case-detail-row__case-study{width:50%}}.use-case-detail-row__results{color:#424242;font-size:18px;line-height:24px;font-weight:500;font-family:"Google Sans",sans-serif}.use-case-detail-row__results p:first-child{font:500 16px/24px "Google Sans",sans-serif}@media screen and (min-width:1000px){.use-case-detail-row__results p:first-child{font:500 20px/26px "Google Sans",sans-serif}}.use-case-detail-row__case-study__image{margin-bottom:20px}.use-case-detail-row__case-study__image>img{width:108px;height:auto}@media screen and (min-width:1000px){.use-case-detail-row__case-study__image>img{width:142px}}.use-case-detail-row__case-study__quote-section{margin-top:91px}@media screen and (min-width:1000px){.use-case-detail-row__case-study__quote-section{margin-top:110px}}.use-case-detail-row__case-study__quote{border-left:2px solid #b5c0c5;padding-left:12px}.use-case-detail-row__case-study__quote__paragraph{color:#757575;font-style:italic;margin-bottom:0}.use-case-detail-row__case-study__quote__citation{font-size:14px;line-height:24px;font-weight:500;font-family:"Google Sans",sans-serif;color:#4a4a4a}.youtube-row,.youtube-row .devsite-card-buttons a{display:-webkit-flex;display:-ms-flexbox;display:flex}.youtube-row{min-height:415px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:720px){.youtube-row{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.youtube-row .devsite-card{border:none;border-radius:0;overflow:visible}.youtube-row devsite-dynamic-content .devsite-card-category,.youtube-row devsite-dynamic-content h3{font-size:14px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.youtube-row devsite-dynamic-content .devsite-card-category{font-size:16px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}}.youtube-row devsite-dynamic-content h3{font-size:16px;line-height:26px;margin:0 0 8px}@media screen and (min-width:720px){.youtube-row devsite-dynamic-content h3{font-size:20px;line-height:26px;font-weight:500;font-family:"Google Sans",sans-serif}}.youtube-row devsite-dynamic-content>p{margin:0 0 12px}.youtube-row .devsite-card-content{padding:0}.youtube-row .devsite-card-summary{font-size:12px;line-height:18px;font-weight:400;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.youtube-row .devsite-card-summary{font-size:14px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif}}.youtube-row .devsite-card-buttons{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;padding:0;margin-top:16px}.youtube-row .devsite-card-buttons a{-webkit-align-items:center;-ms-flex-align:center;align-items:center;border:none;border-radius:8px;font:500 14px/18px "Google Sans",sans-serif;letter-spacing:.24px;padding:6px 8px;margin-left:-8px;margin-right:-8px}@media screen and (min-width:1000px){.youtube-row .devsite-card-buttons a{font-size:16px;line-height:20px;font-weight:500;font-family:"Roboto",sans-serif;letter-spacing:.57px}}.youtube-row .devsite-card-buttons a--grey:active,.youtube-row .devsite-card-buttons a--grey:focus,.youtube-row .devsite-card-buttons a--grey:hover,.youtube-row .devsite-card-buttons a--white:active,.youtube-row .devsite-card-buttons a--white:focus,.youtube-row .devsite-card-buttons a--white:hover{opacity:.85}.youtube-row .devsite-card-buttons a--white:hover{background:rgba(255,255,255,.2)}.youtube-row .devsite-card-buttons a img{margin-right:8px}@media screen and (min-width:720px){.youtube-row .devsite-card-buttons a{font-size:16px}}.youtube-row .devsite-card-buttons a:hover{background-color:#e1f3fc}.youtube-row .devsite-card-image-container{position:relative;height:0;margin-bottom:30px;padding:0 0 56.19%}.youtube-row .devsite-card-image-container>img{position:absolute;top:0;bottom:0;object-fit:cover;height:100%;width:100%}.youtube-row .devsite-card-group{display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:720px){.youtube-row .devsite-card-group{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.youtube-row .devsite-card-category{color:#c2185b}.youtube-row .devsite-card-wrapper{box-sizing:content-box;-webkit-flex:1 1 calc(100%/3);-ms-flex:1 1 calc(100%/3);flex:1 1 calc(100%/3);min-width:0;padding:0}@media screen and (min-width:720px){.youtube-row .devsite-card-wrapper{-webkit-flex:1 1 calc((100%/3) - 48px);-ms-flex:1 1 calc((100%/3) - 48px);flex:1 1 calc((100%/3) - 48px)}}@media screen and (min-width:1280px){.youtube-row .devsite-card-wrapper{-webkit-flex:1 1 calc((100%/3) - 168px);-ms-flex:1 1 calc((100%/3) - 168px);flex:1 1 calc((100%/3) - 168px)}}.youtube-row .devsite-card-wrapper:not(:last-child){padding:0;margin:0 0 32px}@media screen and (min-width:720px){.youtube-row .devsite-card-wrapper:not(:last-child){margin:0;padding:0 24px 0 0}}@media screen and (min-width:1280px){.youtube-row .devsite-card-wrapper:not(:last-child){padding:0 84px 0 0}}.youtube-row .devsite-card .button:before{content:url(/web/20210302141517im_/https://firebase.google.com/images/icons/play-icon.svg);margin:2px 8px 0 0;position:relative}.products-logo-row .card__subheading{font-size:16px;line-height:24px;font-weight:400;font-family:"Roboto",sans-serif}.products-logo-row h5{font-size:18px;line-height:26px;font-weight:500;font-family:"Google Sans",sans-serif;margin-bottom:8px}@media screen and (min-width:600px){.products-logo-row h5{font-size:20px;line-height:26px;font-weight:500;font-family:"Google Sans",sans-serif}}.products-logo-row p{font-size:10px;line-height:16px;font-weight:400;font-family:"Google Sans",sans-serif;padding:0 20px}@media screen and (min-width:600px){.products-logo-row p{font-size:14px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1000px){.products-logo-row p{max-width:24vw}}.products-logo-row__container--with-titles{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:720px){.products-logo-row__container--with-titles{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.products-logo-row__container--with-titles .logo-row__logo{padding:0 12px;max-width:320px!important}@media screen and (min-width:1000px){.products-logo-row__container--with-titles .logo-row__logo{padding:0 20px}}@media screen and (min-width:1280px){.products-logo-row__container--with-titles .logo-row__logo{padding:0 30px}}.products-logo-row__container--with-titles .logo-row__logo img{width:52px!important;max-width:52px}.products-logo-row__container--with-titles .cta-link{color:#1a73e8;margin-bottom:40px}@media screen and (min-width:1000px){.products-logo-row__container--with-titles .cta-link{margin-bottom:20px}}.products-logo-row .cta-button{padding:20px}.products-logo-row .cta-button:focus,.products-logo-row .cta-button:hover{transition:background-color .2s ease-in-out;background-color:#d2e3fc}.logo-row--mods .logo-row__container,.products-ctas__content{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#firebase-extensions .logo-row__container .logo-row__logo:hover{opacity:.8;transition:all .2s ease-in-out}.products-ctas__content{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:600px){.products-ctas__content{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.products-ctas__content .cta-button--white{max-width:none;padding:20px;width:320px;margin-left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.products-ctas__content .cta-button--white:first-child{margin:0 0 20px 50%}@media screen and (min-width:600px){.products-ctas__content .cta-button--white{-webkit-transform:unset;transform:unset;margin-left:unset}.products-ctas__content .cta-button--white:first-child{margin:0 20px 0 0}}.products-ctas__content .cta-button--white:focus,.products-ctas__content .cta-button--white:hover{background-color:#d2e3fc}.banner-container{margin:0 0 40px;width:100%;background:0 0}.banner-container .devsite-banner{padding:0!important;margin:0!important}.banner-container .devsite-banner-blue{background:#e8f0fe}.banner-container .devsite-banner-blue a,.banner-container .devsite-banner-blue>*{color:#1967d2}.banner-container .devsite-banner-message.bold>*{font-weight:600}.platform-icon{color:#979797}.platform-icon:not(.plat_android):not(.plat_ios){margin:0 2px}.platform-icons__wrapper{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex}.product-icon--chip .product-icon__icon>i{font-size:20px}@media screen and (min-width:720px){.product-cols__more-text,.product-icon__name{text-align:left}}@media screen and (min-width:720px){.product-icon__beta{display:inline}}.product-icon__link:focus .product-icon__icon{opacity:.7}.product-icon,.product-icon-large,.product-icon-large .product-icon__icon{display:-webkit-flex;display:-ms-flexbox;display:flex}.product-icon-large .product-icon__icon{-webkit-align-items:center;-ms-flex-align:center;align-items:center;border-radius:108px;color:#fff;border:solid 2px #fff;height:108px;position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;line-height:135px;margin-bottom:8px;margin-right:8px;text-align:center;transition:background-color .2s ease-in-out;width:108px}.product-icon-large .product-icon__icon-firestore{background:#da4e02!important}.product-icon-large .product-icon__icon-auth{background:#7b1fa2!important}.product-icon-large .product-icon__icon-realtime-db{background:#263238!important}.product-icon-large .product-icon__icon-ml{background:#174ea6!important}.product-icon-large .product-icon__icon-functions{background:#37474f!important}.product-icon-large .product-icon__icon-storage{background:#00838f!important}.product-icon-large .product-icon__icon-hosting{background:#1a237e!important}.product-icon-large .product-icon__icon-remote-config{background:#283593!important}.product-icon-large .product-icon__icon-cloud-msg{background:#174ea6!important}.product-icon-large .product-icon__icon-analytics{background:#e53935!important}.product-icon-large .product-icon__icon-test-lab{background:#00897b!important}.product-icon-large .product-icon__icon-app-distro{background:#174ea6!important}.product-icon-large .product-icon__icon-perf{background:#1a237e!important}.product-icon-large .product-icon__icon-predict{background:#512da8!important}.product-icon-large .product-icon__icon-ab{background:#283593!important}.product-icon-large .product-icon__icon-inapp-messaging{background:#174ea6!important}.product-icon-large .product-icon__icon-dynamic-links{background:#c2185b!important}.product-icon-large .product-icon__icon-crashlytics{background:#558b2f!important}.product-icon-large .gmp-icons{font-size:60px}.product-icon-large .product-icon__image{height:108px;line-height:135px;margin-bottom:8px;margin-right:8px;transition:background-color .2s ease-in-out;width:108px}.product-icon .product-icon__icon{-webkit-align-items:center;-ms-flex-align:center;align-items:center;border-radius:52px;color:rgba(0,0,0,.54);display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.product-icon .product-icon__icon,.product-icon .product-icon__image{height:52px;line-height:65px;margin-bottom:8px;margin-right:8px;transition:background-color .2s ease-in-out;width:52px}.product-icon__image{border-radius:50%;height:40px;width:auto}.product-icon--chip{margin-bottom:16px}.product-icon--chip:not(:last-of-type){margin-right:40px}.product-icon--chip .product-icon__icon{height:40px;margin-bottom:0;width:40px}.product-icon--chip .product-icon__link:focus .product-icon__icon{opacity:1}.product-icon--chip .product-icon__icon,.product-icon--chip .product-icon__image{margin-right:10px}.product-cols__more-text,.product-icon__name{color:#424242;font:500 18px "Google Sans",sans-serif;line-height:32px;text-align:center}@media screen and (min-width:720px){.product-cols__more-text,.product-icon__name{text-align:left}}.product-icon__beta{color:#039be5;display:block;font-size:10px;text-align:center;font-weight:600}@media screen and (min-width:720px){.product-icon__beta{display:inline}}.product-icon__beta--inline{display:inline}.product-icon__link{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex}.product-icon__link:focus,.product-icon__link:hover{text-decoration:none}.product-icon__link:focus .product-icon__name,.product-icon__link:hover .product-icon__name{color:#1967d2}.product-icon__link:focus .firesite-tooltip--link .firesite-tooltip__content,.product-icon__link:focus .firesite-tooltip--link .firesite-tooltip__content-wrapper,.product-icon__link:hover .firesite-tooltip--link .firesite-tooltip__content,.product-icon__link:hover .firesite-tooltip--link .firesite-tooltip__content-wrapper{display:block}.product-icon__link .firesite-tooltip--link .firesite-tooltip__content-wrapper{bottom:25px;top:unset}.product-icon__link .firesite-tooltip--link .firesite-tooltip__content{border-radius:8px}.firesite-tooltip__container{display:inline-block;color:#d8d8d8}.firesite-tooltip__container:hover{cursor:help}.firesite-tooltip__container:hover .firesite-tooltip__content,.firesite-tooltip__container:hover .firesite-tooltip__content-wrapper{display:block}.firesite-tooltip__container .absolute-table,.firesite-tooltip__container.absolute-table .firesite-tooltip__icon{position:absolute;top:50%;right:25%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.firesite-tooltip__container .reversed .firesite-tooltip__content-wrapper{right:-25px;left:auto}.firesite-tooltip__container .reversed .firesite-tooltip__content:before{right:27px;left:auto}.firesite-tooltip{background:0 0;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}.firesite-tooltip a:hover{cursor:pointer}.firesite-tooltip i.material-icons{font-size:24px}.firesite-tooltip .firesite-tooltip__content-wrapper{display:none;height:auto;left:-53px;padding:20px 0 0;position:absolute;width:auto}.firesite-tooltip .firesite-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}.firesite-tooltip .firesite-tooltip__content{font-size:12px;line-height:16px;font-weight:400;font-family:"Roboto",sans-serif;background-color:#323232;box-sizing:border-box;color:rgba(255,255,255,.8);display:none;padding:15px;text-align:left;width:200px}.firesite-tooltip .firesite-tooltip__content>a{font-size:12px;line-height:16px;font-weight:500;font-family:"Google Sans",sans-serif;color:#1e88e5}@media screen and (max-width:400px){.firesite-tooltip .firesite-tooltip__content{left:unset;right:-10px}}@media only screen and (max-width:500px),(min-width:968px) and (max-width:1100px){.firesite-tooltip{display:block}}.firesite-tooltip--link:hover .firesite-tooltip__content,.firesite-tooltip--link:hover .firesite-tooltip__content-wrapper{display:block}.firesite-tooltip--link .firesite-tooltip__content-wrapper{display:none;height:auto;left:-27px;padding:20px 0 0;position:absolute;top:unset;width:auto}.firesite-tooltip--link .firesite-tooltip__content:after,.firesite-tooltip--link .firesite-tooltip__content:before{border:none;border-top:10px solid #323232;border-left:10px solid transparent;border-right:10px solid transparent;top:unset;width:10px}.firesite-tooltip--link .firesite-tooltip__content:before{border-top-color:rgba(102,157,246,.4);bottom:-10px}.firesite-tooltip--link .firesite-tooltip__content:after{border-top-color:#323232;bottom:-9px;content:'';height:px;left:27px;position:absolute}.firesite-tooltip--link .firesite-tooltip__content{background-color:#323232;border:1px solid rgba(102,157,246,.4)}.firesite__video .devsite-embedded-youtube-video{height:101%;left:-.5%;position:absolute;top:-.5%;width:101%}.firebase-page-brand-guidelines{background-color:#fafafa}.firebase-page-brand-guidelines .firesite__bg>img{left:calc(50% + 470px);top:-18%}@media screen and (min-width:1000px){.firebase-page-brand-guidelines .firesite__bg>img{top:200px;-webkit-transform:translateX(-50%) scale(.9);transform:translateX(-50%) scale(.9);z-index:-1}}.firebase-page-brand-guidelines .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-3}@media screen and (min-width:1000px){.firebase-page-brand-guidelines .firesite__bg--top>svg{left:calc(50% + 500px);top:-2240px;z-index:-2}}.firebase-page-community .firesite__bg>img{left:calc(50% + 470px);top:-18%}@media screen and (min-width:1000px){.firebase-page-community .firesite__bg>img{top:1400px;left:calc(50% + 120px);-webkit-transform:translateX(-50%) scale(1.25);transform:translateX(-50%) scale(1.25);z-index:-1}}.firebase-page-community .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-3}@media screen and (min-width:1000px){.firebase-page-community .firesite__bg--top>svg{left:calc(50% + 500px);top:-2240px;z-index:-2}}.firebase-page-community .card hr{margin:70px 0}.firebase-page-community devsite-dynamic-content{margin:0}.firebase-page-community .cta-banner__cta{margin-top:15px}@media screen and (min-width:1000px){.firebase-page-community .cta-banner__cta{margin-top:70px}}.firebase-page-community .cta-banner__text>h2{font-size:18px;line-height:32px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:1000px){.firebase-page-community .cta-banner__text>h2{font-size:24px;line-height:36px;font-weight:500;font-family:"Google Sans",sans-serif}.firebase-page-community #firebase-alpha-program .cta-banner__cta{margin-top:40px}}.firebase-explore-extensions .firesite__bg>img{top:-21%;-webkit-transform:translateX(-50%) scale(1.9);transform:translateX(-50%) scale(1.9)}.firebase-page-gcp .firesite__bg>img{left:calc(50% + 470px);top:-18%}@media screen and (min-width:1000px){.firebase-page-gcp .firesite__bg>img{left:calc(50% + 120px);top:2500px;-webkit-transform:translateX(-50%) scale(2);transform:translateX(-50%) scale(2);z-index:-1}}.firebase-page-gcp .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-3}@media screen and (min-width:1000px){.firebase-page-gcp .firesite__bg--top>svg{left:calc(50% + 500px);top:-2240px;z-index:-2}}@media screen and (min-width:720px){.firebase-page-gcp .product-row--can-i-use .product-row__media{-webkit-flex-basis:30%;-ms-flex-preferred-size:30%;flex-basis:30%}}.firebase-page-gcp .product-row--can-i-use+hr{display:block;margin-top:0}.firebase-page-gcp .differences-list__wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:720px){.firebase-page-gcp .differences-list__wrapper{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.firebase-page-gcp .differences-list__wrapper .differences-list{-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%;margin-right:40px}.firebase-page-gcp .differences-list__wrapper .differences-list:first-child{margin-bottom:32px}@media screen and (min-width:720px){.firebase-page-gcp .firebase-page-gcp__get-started.card__subpartial br{display:inline}}.firebase-page-gcp .firebase-page-gcp__get-started.card__subpartial .card__ctas{padding-top:0}.firebase-page-gcp .firebase-page-gcp__get-started.card__subpartial header{margin-bottom:36px}.firebase-page-home{position:relative}.firebase-page-home iframe{border:0;margin:0;width:100%}.firebase-page-home .code-picker{height:310px}@media screen and (min-width:1000px){.firebase-page-home .code-picker{height:510px}}.firebase-page-home--illustration .card__header{position:relative;z-index:1}.firebase-page-home__text-illo-container .firebase-page-home__text-illustration{background:url(/web/20210302141517im_/https://firebase.google.com/images/homepage/solutions-illo-mobile_1x.png) left center/contain no-repeat;width:100%;bottom:60px;left:0;position:absolute;right:0;min-height:300px}@media screen and (min-width:600px){.firebase-page-home__text-illo-container .firebase-page-home__text-illustration{background:url(/web/20210302141517im_/https://firebase.google.com/images/homepage/solutions-illo_1x.png) left center/contain no-repeat;left:-140px}}@media screen and (min-width:720px){.firebase-page-home__text-illo-container .firebase-page-home__text-illustration{background:url(/web/20210302141517im_/https://firebase.google.com/images/homepage/solutions-illo_1x.png) center bottom/contain no-repeat;bottom:0;left:60px;width:88%;min-height:500px}}@media screen and (min-width:1000px){.firebase-page-home__text-illo-container .firebase-page-home__text-illustration{left:160px;width:76%;min-height:600px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.firebase-page-home__text-illo-container .firebase-page-home__text-illustration{background:url(/web/20210302141517im_/https://firebase.google.com/images/homepage/solutions-illo-mobile_2x.png) left center/contain no-repeat}}@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:600px),screen and (min-resolution:192dpi) and (min-width:600px){.firebase-page-home__text-illo-container .firebase-page-home__text-illustration{background:url(/web/20210302141517im_/https://firebase.google.com/images/homepage/solutions-illo_2x.png) left center/contain no-repeat}}@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:720px),screen and (min-resolution:192dpi) and (min-width:720px){.firebase-page-home__text-illo-container .firebase-page-home__text-illustration{background:url(/web/20210302141517im_/https://firebase.google.com/images/homepage/solutions-illo_2x.png) center bottom/contain no-repeat}}.firebase-page-home .firesite__bg>img{left:calc(50% + 470px);top:-18%}@media screen and (min-width:1000px){.firebase-page-home .firesite__bg>img{top:200px;-webkit-transform:translateX(-50%) scale(.9);transform:translateX(-50%) scale(.9);z-index:-1}}.firebase-page-home .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-3}@media screen and (min-width:1000px){.firebase-page-home .firesite__bg--top>svg{left:calc(50% + 500px);top:-2240px;z-index:-2}}.firebase-page-home .code-picker-wrapper{margin:20px auto}@media screen and (min-width:1000px){.firebase-page-home .code-picker-wrapper{margin-top:56px}.firebase-page-home #products hr{margin-bottom:0}.firebase-page-home #products #extensions{margin-top:0;padding-top:20px}}.firebase-page-home--illustration .card__ctas{margin-top:300px}@media screen and (min-width:720px){.firebase-page-home--illustration .card__ctas{margin-top:225px}}.firebase-page-home--illustration .card__cta{z-index:1}.firebase-page-integrations .firesite__bg>img{left:calc(50% + 470px);top:800px}@media screen and (min-width:1000px){.firebase-page-integrations .firesite__bg>img{top:1600px;left:calc(50% + 320px);-webkit-transform:translateX(-50%) scale(1.5);transform:translateX(-50%) scale(1.5);z-index:-1}}.firebase-page-integrations .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-3}@media screen and (min-width:1000px){.firebase-page-integrations .firesite__bg--top>svg{left:calc(50% + 500px);top:-2240px;z-index:-2}}.firebase-page-integrations .product-grid__youtube-label{display:inline;color:#0288d1}.firebase-page-integrations .product-grid__youtube-label+i,.firebase-page-pricing .firesite-tooltip{top:-2px}.firebase-page-integrations .devsite-dialog-button.cta-link{padding:8px 16px;text-transform:none}@media screen and (min-width:1000px){.firebase-page-mods .cta-hero-footer__background>img{bottom:-800px;-webkit-transform:translateX(-50%) rotate(0deg) scaleX(-1);transform:translateX(-50%) rotate(0deg) scaleX(-1)}}.firebase-page-pricing h5{overflow:visible}.firebase-page-pricing .landing-header h1{font:500 28px/32px "Google Sans",sans-serif}@media screen and (min-width:1000px){.firebase-page-pricing .landing-header h1{font:500 52px/60px "Google Sans",sans-serif}}.firebase-page-pricing .firesite__bg>img{left:calc(50% + 470px);top:-18%}@media screen and (min-width:1000px){.firebase-page-pricing .firesite__bg>img{top:1000px;left:calc(50% + 120px);-webkit-transform:translateX(-50%) scale(1.25);transform:translateX(-50%) scale(1.25);z-index:-1}}.firebase-page-pricing .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-3}@media screen and (min-width:1000px){.firebase-page-pricing .firesite__bg--top>svg{left:calc(50% + 500px);top:-2240px;z-index:-2}.firebase-page-pricing .landing-header br{display:inline}}.firebase-page-pricing .pricing-table__footer tr,.firebase-page-pricing .pricing-table__header tr{background:0 0}.firebase-page-pricing .pricing-table__header td:first-child{background:#f5f7f8}.firebase-page-pricing .pricing-table__footer td:first-child{background:#f8f9fa}.firebase-page-product .firesite__bg>img{left:calc(50% + 470px);top:600px}@media screen and (min-width:1000px){.firebase-page-product .firesite__bg>img{top:800px;-webkit-transform:translateX(-50%) scale(.9);transform:translateX(-50%) scale(.9);z-index:-1}}.firebase-page-product .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-3}@media screen and (min-width:1000px){.firebase-page-product .firesite__bg--top>svg{left:calc(50% + 500px);top:-2440px;z-index:-2}}.firebase-page-product .product-header--inapp-messaging .product-header__illo>img{margin-bottom:-16px}.firebase-page-product--games{background-color:#1e1e1e}.firebase-page-product--games .firesite__bg>img{height:100%;left:57%;max-width:none;padding-bottom:1200px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:auto;top:9%}@media screen and (min-width:1280px){.firebase-page-product--games .firesite__bg>img{top:12%}}.firebase-page-product--games .games-product-header .cta-button{max-width:none}.firebase-page-product--games .cta-button--games{padding:20px}.firebase-page-product--games .games-logo-row .logo-row__logo{color:#fff;min-width:16%;max-width:200px}@media screen and (min-width:1000px){.firebase-page-product--games .games-logo-row .logo-row__logo{max-width:16%}}.firebase-page-product--games .games-logo-row .logo-row__logo img{opacity:.9;border-radius:4px;background-color:#fff}.firebase-page-products .firesite__bg>img{left:calc(50% + 400px);top:-18%}@media screen and (min-width:1000px){.firebase-page-products .firesite__bg>img{top:680px;-webkit-transform:translateX(-50%) scale(.9);transform:translateX(-50%) scale(.9);z-index:-1}}.firebase-page-products .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-3}@media screen and (min-width:1000px){.firebase-page-products .firesite__bg--top>svg{left:calc(50% + 500px);top:-2500px;z-index:-2}}.firebase-page-products .card__header{text-align:left}@media screen and (min-width:1000px){.firebase-page-products .card__header{text-align:center}}.firebase-page-products .card__subheading{margin-left:0;font-size:12px;line-height:30px;font-weight:400;font-family:"Google Sans",sans-serif;max-width:721px}@media screen and (min-width:720px){.firebase-page-products .card__subheading{font-size:24px;line-height:40px;font-weight:500;font-family:"Google Sans",sans-serif;margin-bottom:50px;margin-left:auto}}.firebase-page-products .products-logo-row .card__subheading{font-size:12px;line-height:16px;font-weight:400;font-family:"Roboto",sans-serif}@media screen and (min-width:600px){.firebase-page-products .products-logo-row .card__subheading{font-size:16px;line-height:24px;font-weight:400;font-family:"Roboto",sans-serif}}.firebase-page-products .jumplinks .three-column__column:not(:last-child),.firebase-page-products .product-card+.card:not(.product-card){margin-bottom:0}.firebase-page-products .logo-row--mods .card__heading{font-size:24px;line-height:28px;font-weight:500;font-family:"Google Sans",sans-serif}.firebase-page-products .mods-card .card__heading{margin-top:0}@media screen and (min-width:720px){.firebase-page-products .mods-card{background-color:#fff;background-image:url(/web/20210302141517im_/https://firebase.google.com/images/products/mods-background_1x.jpg);background-position:bottom right;background-repeat:no-repeat;background-size:auto 60%}}@media screen and (min-width:720px) and (-webkit-min-device-pixel-ratio:2),screen and (min-width:720px) and (min-resolution:192dpi){.firebase-page-products .mods-card{background-image:url(/web/20210302141517im_/https://firebase.google.com/images/products/mods-background_2x.jpg)}}@media screen and (min-width:1280px){.firebase-page-products .mods-card{background-size:auto calc(100% - 100px)}}.firebase-page-products .three-column.jumplinks{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding:40px 20px calc(20px + 3px)}@media screen and (min-width:600px){.firebase-page-products .three-column.jumplinks{padding:20px}}.firebase-page-products .jumplinks .three-column__column{padding:0;text-align:center;max-width:205px;position:relative;margin:24px auto 0}@media screen and (min-width:600px){.firebase-page-products .jumplinks .three-column__column{margin-top:0}}@media screen and (min-width:720px){.firebase-page-products .jumplinks .three-column__column{margin-left:0;margin-right:0}.firebase-page-products .jumplinks .three-column__column:not(:last-child){margin-bottom:52px}}@media screen and (min-width:1000px){.firebase-page-products .jumplinks .three-column__column:not(:last-child){margin-bottom:0}}.firebase-page-products .jumplinks .three-column__column a{position:absolute;top:0;right:0;left:0;bottom:0;z-index:1}.firebase-page-products .jumplinks .three-column__column h5{color:#fff;font-size:14px;line-height:20px;position:relative;display:inline-block;margin-top:12px}@media screen and (min-width:600px){.firebase-page-products .jumplinks .three-column__column h5{font-size:24px;line-height:28px}}.firebase-page-products .jumplinks .three-column__column-image{max-width:40px;max-height:40px;border-radius:100%;margin:0 auto}.firebase-page-products .jumplinks .three-column__column-image img{margin-bottom:0}@media screen and (min-width:600px){.firebase-page-products .jumplinks .three-column__column-image{max-width:56px;max-height:56px}}.firebase-page-products .jumplinks .three-column__wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.firebase-page-products .products-overview-icons .three-column__wrapper{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-justify-content:space-around;-ms-flex-pack:distribute;justify-content:space-around;margin:0 -20px}@media screen and (min-width:720px){.firebase-page-products .products-overview-icons .three-column__wrapper{-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;margin:0}}.firebase-page-products .products-overview-icons h5{font-size:12px;line-height:16px;font-weight:300;font-family:"Google Sans",sans-serif;text-align:center}@media screen and (min-width:720px){.firebase-page-products .products-overview-icons h5{font-size:20px;line-height:28px;font-weight:300;font-family:"Google Sans",sans-serif}}.firebase-page-products .products-overview-icons .three-column__column-image{margin:0 auto;width:80px}@media screen and (min-width:720px){.firebase-page-products .products-overview-icons .three-column__column-image{width:148px}}.firebase-page-products .products-overview-icons .three-column__column{max-width:120px}@media screen and (min-width:720px){.firebase-page-products .products-overview-icons .three-column__column{max-width:400px}}.firebase-page-products .three-column__column-image-link{margin:auto;max-width:180px}@media screen and (min-width:1000px){.firebase-page-products .three-column__column-image-link{max-width:200px}}.firebase-page-products .jumplinks .cta-link{font-weight:500}.firebase-page-products .logo-row .card__subheading{font:400 20px/24px "Google Sans",sans-serif}.firebase-page-products .products__card-header{margin-bottom:0}.firebase-page-products .products__card-header h5{font-size:24px;line-height:28px;font-weight:500;font-family:"Google Sans",sans-serif}.firebase-page-products .products-tablinks:hover .three-column__column-image{background-color:rgba(255,255,255,.1);transition:all .2s ease-in-out}.firebase-page-products .products-tablinks:hover h5{transition:all .2s ease-in-out}.firebase-page-products .products-tablinks.active h5:after,.firebase-page-products .products-tablinks:hover h5:after{content:'';height:3px;width:100%;opacity:1;background:#fff;display:block;position:absolute;bottom:-10px;margin:0 50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.firebase-page-products #pre-packaged-solutions-that-save-you-time .cta-button{color:#7770c5}.firebase-page-products .product-card .card__footer{-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;padding-left:40px}@media screen and (min-width:1000px){.firebase-page-products .product-card .card__footer{padding-left:90px}}.firebase-page-support .devsite-article{width:auto;margin-left:0}.firebase-page-support .card__heading{font:500 16px/22px "Google Sans",sans-serif;margin-bottom:20px!important;text-align:left}@media screen and (min-width:1000px){.firebase-page-support .card__heading{font:500 36px/46px "Google Sans",sans-serif}}.firebase-page-support .firesite__bg>img{-webkit-transform:translateX(-50%) scale(2);transform:translateX(-50%) scale(2);top:2200px;left:calc(50% + 400px)}.firebase-page-support .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-3}@media screen and (min-width:1000px){.firebase-page-support .firesite__bg--top>svg{left:calc(50% + 500px);top:-2240px;z-index:-3}}.firebase-page-support .product-header__content{padding:140px 90px 0}.firebase-page-support #ask-the-firebase-community .card__header{margin-bottom:24px}@media screen and (min-width:1000px){.firebase-page-support #ask-the-firebase-community .card__header{margin-bottom:48px}.firebase-page-support #ask-the-firebase-community .card__header .card__heading{text-align:left}}.firebase-page-use-cases .firesite__bg>img{left:calc(50% + 400px);top:-18%}@media screen and (min-width:1000px){.firebase-page-use-cases .firesite__bg>img{top:100px;left:calc(50% + 200px);-webkit-transform:translateX(-50%) scale(1.25);transform:translateX(-50%) scale(1.25);z-index:-1}}.firebase-page-use-cases .firesite__bg>svg{left:calc(50% + 400px);position:absolute;top:240px;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:-1}@media screen and (min-width:1000px){.firebase-page-use-cases .firesite__bg>svg{top:700px;left:calc(50% + 200px)}}.firebase-page-use-cases .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-3}@media screen and (min-width:1000px){.firebase-page-use-cases .firesite__bg--top>svg{left:calc(50% + 500px);top:-2400px;z-index:-2}.firebase-page-use-cases__logo-row .logo-row__container{padding:0}}.firebase-page-use-cases .landing-header{margin-bottom:0}@media screen and (min-width:1000px){.firebase-page-use-cases .landing-header{margin-bottom:140px}}.firebase-page-use-cases .product-icon__name{font-size:14px;line-height:26px;font-weight:500;font-family:"Google Sans",sans-serif}.firebase-page-use-cases .product-icon__image{margin-bottom:0}.firebase-page-single-use-case .firesite__bg>img{-webkit-transform:translateX(-50%) scale(2);transform:translateX(-50%) scale(2);top:0%}body[layout=full] .devsite-main-content{margin:0!important;max-width:none!important;padding:0!important}body[ready] .devsite-book-nav-bg[fixed],body[type=article] [ds-is=content] .devsite-breadcrumb-list,devsite-book-nav{display:none}body[devsite-iframe]{background-color:#fff}h2{padding-right:0!important}.expandable{width:100%}.expand-control{position:relative}.devsite-product-id-row,.devsite-rating-container{display:none!important}.devsite-iframe{background:0 0;padding:0}.devsite-wrapper{margin-top:0;padding:0}.devsite-overflow-menu{z-index:10}.gmp-icons{vertical-align:middle}.devsite-firebase-status-content aside{padding:10px 12px}@media screen and (min-width:720px){.devsite-firebase-status-content aside{padding:20px 24px}.devsite-firebase-status-content aside:before{margin-right:0}}.devsite-dialog-button .material-icons{margin:0}.devsite-firebase-status-text{font-size:14px;font-weight:500}@media screen and (min-width:720px){.devsite-firebase-status-text{font-size:18px}}.success::before{content:'check'}.firebase-page-support .devsite-support-quota{display:inline-block;margin:0}.firebase-page-support .devsite-support-quota-help{display:none}.firebase-page-support .devsite-overflow-menu .kd-tabbutton{height:46px;opacity:.5;padding:16px 20px 12px}.firebase-page-support .devsite-overflow-menu .kd-tabbutton h4{font-size:12px;line-height:16px;font-weight:500;font-family:"Google Sans",sans-serif;color:#757575;letter-spacing:.2px;margin:0;text-transform:none}.kd-menulist .kd-menulistitem{font-size:14px;line-height:18px;font-weight:400;font-family:"Google Sans",sans-serif;padding:12px}.kd-menulist .kd-menulistitem:hover{background-color:#eceff1}.firebase-video-modal:not([open]) .devsite-dialog-close{display:none!important}body[layout=full] .devsite-banner{margin:0 -100vw;padding:20px calc(100vw + 20px)}.carousel devsite-iframe>iframe{padding:0 16px}devsite-header .devsite-top-button{color:#1a73e8} </style> <div class="devsite-banner devsite-banner-announcement"> <div class="devsite-banner-message"> <div class="devsite-banner-message-text"> <style> .devsite-banner-announcement:not(.devsite-banner-tenant) { background: #202124; color: white; font-weight: 500; } .devsite-banner-announcement a { color: white; font-weight: 700; } .devsite-banner-announcement a:link, .devsite-banner-announcement a:visited { background: 0; } .devsite-banner-announcement a:hover, .devsite-banner-announcement a:focus { text-decoration: none; } .devsite-banner-announcement .devsite-banner-message-text { margin: 0 auto; } </style> Google is committed to advancing racial equity for Black communities. <a href="https://web.archive.org/web/20210302141517/https://google.com/racialequity" class="gc-analytics-event" data-category="Announcement" data-label="Racial Equity">See how.</a> </div> </div> </div> <div class="devsite-article-meta" role="navigation"> <ul class="devsite-breadcrumb-list"> <li class="devsite-breadcrumb-item "> <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/" 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="Firebase"> Firebase </a> </li> </ul> </div> <devsite-feedback position="header" project-name="Firebase" product-id="719752" bucket="" context="" version="t-devsite-webserver-20210223-r03-rc00.433352631197235302" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="header" project-feedback-url="https://firebase.google.com/support/contact/bugs-features/" project-icon="https://firebase.google.com/_static/firebase/images/logo.png" project-support-url="https://firebase.google.com/support/" feedback-type="star-rating"> <button> Send feedback </button> </devsite-feedback> <devsite-toc class="devsite-nav" devsite-toc-embedded disabled> </devsite-toc> <div class="devsite-article-body clearfix devsite-no-page-title"> <main> <div class="firesite__bg firesite__bg--desktop" aria-hidden="true"> <img src="/web/20210302141517im_/https://firebase.google.com/images/backgrounds/nachos/products/product_mid.svg" alt="" role="presentation"/> </div> <div class="firesite__bg--top"> <svg width="5494" height="5614" viewbox="0 0 5494 5614" fill="none" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M5134.73 3946.02c-44.22 489.57-1391.4 1154.88-2007.46 1023.73-616.06-131.15-1802.35-1281.82-1715.71-1816.35 86.63-534.52 1590.06-956.61 2142.86-819.11 552.81 137.51 1624.54 1122.17 1580.31 1611.73z" fill="#607D8B" fill-opacity=".12"/><path d="M3897.08 3349.92c-353.18 337.39-2360.1 1092.15-2893.9 582.57-533.795-509.58-146.733-2480.36 447.6-2917.86 594.33-437.508 2647.89 33.35 2919 439.62 271.1 406.26-119.53 1558.28-472.7 1895.67z" fill="#4285F4"/><path opacity=".8" fill-rule="evenodd" clip-rule="evenodd" d="M1887.06 4085.96c783.09-91.81 1772.02-508.68 2010.01-736.04 127.79-122.07 260.49-350.8 364.96-612.27-252.59-200.67-512.44-354.81-707.61-403.36-552.8-137.5-2056.23 284.59-2142.86 819.11-38.44 237.18 173.73 595.66 475.5 932.56z" fill="#1A73E8"/></svg> </div> <!-- @TODO(IK): refactor to not hardcode SVG --> <section id="machine-learning-for-mobile-developers" class="product-header product-header--ml"> <header class="product-header__wrapper"> <div class="product-header__content"> <h5 class="product-header__name light no-link" id="firebase-machine-learning-beta" data-text=" Firebase Machine Learning BETA "> Firebase Machine Learning <sup class="product-icon__beta product-icon__beta--inline">BETA</sup> </h5> <h1 id="machine-learning-for-mobile-developers" data-text="Machine learning for mobile developers">Machine learning for<br> mobile developers</h1> <div class="product-header__ctas"> <a href="https://web.archive.org/web/20210302141517/https://console.firebase.google.com/project/_/ml/apis" data-category="getStarted" data-action="linkClick" data-label="hero" class="cta-button cta-button--white gc-analytics-event"> Visit console </a> <a href="/web/20210302141517/https://firebase.google.com/docs/ml" data-category="viewDocs" data-action="linkClick" data-label="hero" class="cta-link cta-link--with-icon cta-link--white gc-analytics-event"> View docs </a> </div> </div> <div class="product-header__illo" role="presentation" aria-hidden="true"> <img srcset="https://web.archive.org/web/20210302141517im_/https://firebase.google.com/images/products/ml-kit/ml-kit-illo_2x.png 2x, https://web.archive.org/web/20210302141517im_/https://firebase.google.com/images/products/ml-kit/ml-kit-illo_1x.png 1x" src="/web/20210302141517im_/https://firebase.google.com/images/products/ml-kit/ml-kit-illo_1x.png" role="presentation" aria-hidden="true"> </div> </header> </section> <div class="content-wrapper"> <section class="card"> <div class="card__content"> <div id="add-machine-learning-capabilities-to-your-app" class="card__subpartial product-row "> <div class="product-row__media"> <div class="firesite__video"> <iframe class="devsite-embedded-youtube-video" data-video-id="p5-BDRCAkMI" data-list="PLl-K7zZEsYLmOF_07IayrTntevxtbUxDL" data-autohide="1" data-showinfo="0" frameborder="0" allowfullscreen> </iframe> </div> </div> <div class="product-row__text"> <h4 class="no-link" id="add-machine-learning-capabilities-to-your-app" data-text="Add machine learning capabilities to your app">Add machine learning capabilities to your app</h4> <p>Use Firebase ML to train and deploy custom models, or use a more turn-key solution with the Cloud Vision APIs.</p> <div class="platform-icons__wrapper" aria-label="Supported platforms" role="list"><i role="listitem" title="iOS supported" data-title="iOS supported" aria-label="iOS supported" class="platform-icon plat_ios gmp-icons" aria-hidden="true" translate="no">plat_ios</i> <i role="listitem" title="Android supported" data-title="Android supported" aria-label="Android supported" class="platform-icon plat_android gmp-icons" aria-hidden="true" translate="no">plat_android</i> </div> </div> </div> <hr class="card__divider"> <div id="deploy-custom-models-that-run-on-device" class="card__subpartial product-row "> <div class="product-row__media"> <img src="/web/20210302141517im_/https://firebase.google.com/images/products/ml-kit/mlkit-1.png" alt="Firebase ML Diagram"> </div> <div class="product-row__text"> <h4 class="no-link" id="deploy-custom-models-that-run-on-device" data-text="Deploy custom models that run on-device">Deploy custom models that run on-device</h4> <p>Whether you are starting with an existing <a href="https://web.archive.org/web/20210302141517/https://www.tensorflow.org/lite/models">TensorFlow Lite model</a> or training your own, you can use Firebase ML model deployment to distribute models to your users over the air. This reduces initial app installation size since models are downloaded by the device only when needed. It also allows you to A/B test multiple models, evaluate their performance and update models regularly without having to republish your entire app. Just <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/docs/ml/manage-hosted-models">upload your model</a> to the Firebase console, and we'll take care of hosting and serving it to your app. Or if you prefer, you can deploy models directly from your ML production pipeline or Colab notebook <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/docs/ml/manage-hosted-models#manage_models_with_the_firebase_admin_sdk">using the Firebase Admin SDK</a>.</p> </div> </div> <hr class="card__divider"> <div id="train-your-own-image-classification-custom-model" class="card__subpartial product-row "> <div class="product-row__media"> <img src="/web/20210302141517im_/https://firebase.google.com/images/products/ml-kit/mlkit-2.png" alt="AutoML Vision Edge"> </div> <div class="product-row__text"> <h4 class="no-link" id="train-your-own-image-classification-custom-model" data-text="Train your own image classification custom model">Train your own image classification custom model</h4> <p>With <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/docs/ml/automl-image-labeling">AutoML Vision Edge</a>, you can easily create custom image classification models tailored to your needs. For example, you may want your app to be able to identify different types of food, or distinguish between species of animals. Whatever your need, just upload your training data to the Firebase console and you can use Google’s AutoML technology to build a custom TensorFlow Lite model for you to run locally on your user's device.</p> </div> </div> <hr class="card__divider"> <div id="solve-for-common-use-cases-with-turn-key-apis" class="card__subpartial product-row "> <div class="product-row__media"> <img src="/web/20210302141517im_/https://firebase.google.com/images/products/ml-kit/mlkit-3.png" alt="Firebase ML Icons"> </div> <div class="product-row__text"> <h4 class="no-link" id="solve-for-common-use-cases-with-turn-key-apis" data-text="Solve for common use cases with turn-key APIs">Solve for common use cases with turn-key APIs</h4> <p>Firebase ML also comes with a set of ready-to-use cloud-based APIs for common mobile use cases: <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/docs/ml/recognize-text">recognizing text</a>, <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/docs/ml/label-images">labeling images</a>, and <a href="https://web.archive.org/web/20210302141517/https://firebase.google.com/docs/ml/recognize-landmarks">recognizing landmarks</a>. Unlike on-device APIs, these APIs leverage the power of Google Cloud's machine learning technology to give a high level of accuracy. You simply pass in data to the library, which seamlessly makes a request to models running on Google Cloud, and get back the information you need–all in a few lines of code.</p> </div> </div> <hr class="card__divider"> <div class="card__subpartial carousel "> <devsite-iframe><iframe src="/web/20210302141517if_/https://firebase.google.com/products/ml/index_82395175b9af68453bef183faee74e2db630413ca7a4ee5ac73eb6fb1e0d6088.frame" class="framebox inherit-locale carousel-case-studies" allowfullscreen is-upgraded></iframe></devsite-iframe> </div> </div> </section> </div> <div class="content-wrapper"> <section class="card"> <div class="card__content"> <div class="card__subpartial cta-banner card__subpartial--no-margin "> <div class="cta-banner__text"> <h2 class="no-link" id="part-of-the-firebase-platform" data-text="Part of the Firebase platform">Part of the Firebase platform</h2> <p>Firebase helps you develop high-quality apps, grow your user base, and earn more money. Each feature works independently, and they work even better together.</p> <div class="cta-banner__cta"> <a href="/web/20210302141517/https://firebase.google.com/products-build" data-category="useCases" data-action="linkClick" data-label="seeProducts" class="cta-button gc-analytics-event"> See products </a> </div> </div> <div class="cta-banner__illo cta-banner__illo--products-marquee cta-banner__illo--above"> <img srcset="https://web.archive.org/web/20210302141517im_/https://firebase.google.com/images/usecases/products-logo-marquee_2x.png 2x, https://web.archive.org/web/20210302141517im_/https://firebase.google.com/images/usecases/products-logo-marquee_1x.png 1x" src="/web/20210302141517im_/https://firebase.google.com/images/usecases/products-logo-marquee_1x.png" alt="Logo pattern" role="presentation" aria-hidden="true"> </div> </div> </div> </section> </div> <div class="content-wrapper"> <section class="cta-hero-footer"> <div class="content-wrapper"> <div class="cta-hero-footer__text"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 192 192"><defs><lineargradient id="d" x1="-108.63" y1="-692.24" x2="-58.56" y2="-742.31" gradienttransform="matrix(2.67 0 0 -2.67 317.23 -1808)" gradientunits="userSpaceOnUse"><stop offset="0" stop-color="#fff" stop-opacity=".1"/><stop offset="1" stop-color="#fff" stop-opacity="0"/></lineargradient><lineargradient id="b" x1="56.9" y1="102.54" x2="48.9" y2="98.36" gradientunits="userSpaceOnUse"><stop offset="0" stop-color="#a52714"/><stop offset=".4" stop-color="#a52714" stop-opacity=".5"/><stop offset=".8" stop-color="#a52714" stop-opacity="0"/></lineargradient><lineargradient id="c" x1="90.89" y1="90.91" x2="87.31" y2="87.33" gradientunits="userSpaceOnUse"><stop offset="0" stop-color="#a52714" stop-opacity=".8"/><stop offset=".5" stop-color="#a52714" stop-opacity=".21"/><stop offset="1" stop-color="#a52714" stop-opacity="0"/></lineargradient><clippath id="a"><path d="M143.41 47.34a4 4 0 00-6.77-2.16L115.88 66 99.54 34.89a4 4 0 00-7.08 0l-8.93 17-22.4-41.77a4 4 0 00-7.48 1.28L32 150l57.9 32.46a12 12 0 0011.7 0L160 150z"/></clippath></defs><g clip-path="url(#a)"><path d="M32 150L53.66 11.39a4 4 0 017.48-1.27l22.4 41.78 8.93-17a4 4 0 017.08 0L160 150z" fill="#ffa000"/><path opacity=".12" fill="url(#b)" d="M106 9L0 0v192l32-42L106 9z"/><path d="M106.83 96.01l-23.3-44.12L32 150l74.83-53.99z" fill="#f57c00"/><path opacity=".2" fill="url(#c)" d="M0 0h192v192H0z"/><path d="M160 150L143.41 47.34a4 4 0 00-6.77-2.16L32 150l57.9 32.47a12 12 0 0011.7 0z" fill="#ffca28"/><path d="M143.41 47.34a4 4 0 00-6.77-2.16L115.88 66 99.54 34.89a4 4 0 00-7.08 0l-8.93 17-22.4-41.77a4 4 0 00-7.48 1.28L32 150h-.08l.07.08.57.28L115.83 67l20.78-20.8a4 4 0 016.78 2.16l16.45 101.74.16-.1zM32.19 149.81L53.66 12.39a4 4 0 017.48-1.28l22.4 41.78 8.93-17a4 4 0 017.08 0l16 30.43z" fill="#fff" fill-opacity=".2"/><path d="M101.6 181.49a12 12 0 01-11.7 0l-57.76-32.4-.14.91 57.9 32.46a12 12 0 0011.7 0L160 150l-.15-.92z" style="isolation:isolate" fill="#a52714" opacity=".2"/><path d="M143.41 47.34a4 4 0 00-6.77-2.16L115.88 66 99.54 34.89a4 4 0 00-7.08 0l-8.93 17-22.4-41.77a4 4 0 00-7.48 1.28L32 150l57.9 32.46a12 12 0 0011.7 0L160 150z" fill="url(#d)"/></g></svg> <span aria-level="2" class="dark">Try Firebase today</span> <p class="dark">Integrating it into your app is easy. </p> <a href="https://web.archive.org/web/20210302141517/https://console.firebase.google.com/" data-category="getStarted" data-action="linkClick" data-label="homepage-footer" class="cta-button gc-analytics-event"> Get started </a> </div> </div> </section> </div> </main> </div> </article> </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">Learn</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/web/20210302141517/https://firebase.google.com/docs/guides/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)"> Guides </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20210302141517/https://firebase.google.com/docs/reference/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)"> Reference </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20210302141517/https://firebase.google.com/docs/samples/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)"> Samples </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20210302141517/https://firebase.google.com/docs/libraries/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)"> Libraries </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210302141517/https://github.com/firebase/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)"> GitHub </a> </li> </ul> </li> <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="//web.archive.org/web/20210302141517/https://firebase.googleblog.com/" 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="/web/20210302141517/https://firebase.google.com/summit/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)"> Firebase Summit </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210302141517/https://www.facebook.com/Firebase/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)"> Facebook </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210302141517/https://twitter.com/Firebase" 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="//web.archive.org/web/20210302141517/https://www.youtube.com/user/Firebase" 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="/web/20210302141517/https://firebase.google.com/support/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)"> Contact support </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210302141517/https://stackoverflow.com/questions/tagged/firebase" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)"> Stack Overflow </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210302141517/https://firebase.community/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)"> Slack community </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210302141517/https://groups.google.com/forum/#!forum/firebase-talk" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)"> Google group </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20210302141517/https://firebase.google.com/support/releases" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)"> Release notes </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20210302141517/https://firebase.google.com/support/faq/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)"> FAQs </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-sites" aria-label="Other Google Developers websites"> <a href="https://web.archive.org/web/20210302141517/https://developers.google.com/" class="devsite-footer-sites-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Developers Link"> <img class="devsite-footer-sites-logo" src="https://web.archive.org/web/20210302141517im_/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19/firebase/images/lockup-developers.svg" loading="lazy" alt="Google Developers"> </a> <ul class="devsite-footer-sites-list"> <li class="devsite-footer-sites-item"> <a href="//web.archive.org/web/20210302141517/https://developer.android.com/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Android Link"> Android </a> </li> <li class="devsite-footer-sites-item"> <a href="//web.archive.org/web/20210302141517/https://developer.chrome.com/home" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Chrome Link"> Chrome </a> </li> <li class="devsite-footer-sites-item"> <a href="//web.archive.org/web/20210302141517/https://firebase.google.com/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Firebase Link"> Firebase </a> </li> <li class="devsite-footer-sites-item"> <a href="//web.archive.org/web/20210302141517/https://cloud.google.com/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Cloud Platform Link"> Google Cloud Platform </a> </li> <li class="devsite-footer-sites-item"> <a href="//web.archive.org/web/20210302141517/https://developers.google.com/products/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer All products Link"> All products </a> </li> </ul> </nav> <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="/web/20210302141517/https://firebase.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="//web.archive.org/web/20210302141517/https://policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link"> Privacy </a> </li> </ul> <devsite-language-selector> <devsite-select class="devsite-language-selector-menu"> <select aria-label="Select your language preference." class="devsite-language-selector-select" name="language" track-name="click" track-type="languageSelector"> <option>Language</option> <option value="en" lang="en" track-metadata-original-language="en" track-metadata-selected-language="en" track-name="changed" track-type="languageSelector"> English </option> <option value="id" lang="id" track-metadata-original-language="en" track-metadata-selected-language="id" track-name="changed" track-type="languageSelector"> Bahasa Indonesia </option> <option value="de" lang="de" track-metadata-original-language="en" track-metadata-selected-language="de" track-name="changed" track-type="languageSelector"> Deutsch </option> <option value="es_419" lang="es_419" track-metadata-original-language="en" track-metadata-selected-language="es_419" track-name="changed" track-type="languageSelector"> Español – América Latina </option> <option value="fr" lang="fr" track-metadata-original-language="en" track-metadata-selected-language="fr" track-name="changed" track-type="languageSelector"> Français </option> <option value="it" lang="it" track-metadata-original-language="en" track-metadata-selected-language="it" track-name="changed" track-type="languageSelector"> Italiano </option> <option value="pl" lang="pl" track-metadata-original-language="en" track-metadata-selected-language="pl" track-name="changed" track-type="languageSelector"> Polski </option> <option value="pt_br" lang="pt_br" track-metadata-original-language="en" track-metadata-selected-language="pt_br" track-name="changed" track-type="languageSelector"> Português – Brasil </option> <option value="vi" lang="vi" track-metadata-original-language="en" track-metadata-selected-language="vi" track-name="changed" track-type="languageSelector"> Tiếng Việt </option> <option value="tr" lang="tr" track-metadata-original-language="en" track-metadata-selected-language="tr" track-name="changed" track-type="languageSelector"> Türkçe </option> <option value="ru" lang="ru" track-metadata-original-language="en" track-metadata-selected-language="ru" track-name="changed" track-type="languageSelector"> Русский </option> <option value="he" lang="he" track-metadata-original-language="en" track-metadata-selected-language="he" track-name="changed" track-type="languageSelector"> עברית' </option> <option value="ar" lang="ar" track-metadata-original-language="en" track-metadata-selected-language="ar" track-name="changed" track-type="languageSelector"> العربيّة </option> <option value="fa" lang="fa" track-metadata-original-language="en" track-metadata-selected-language="fa" track-name="changed" track-type="languageSelector"> فارسی </option> <option value="hi" lang="hi" track-metadata-original-language="en" track-metadata-selected-language="hi" track-name="changed" track-type="languageSelector"> हिंदी </option> <option value="bn" lang="bn" track-metadata-original-language="en" track-metadata-selected-language="bn" track-name="changed" track-type="languageSelector"> বাংলা </option> <option value="th" lang="th" track-metadata-original-language="en" track-metadata-selected-language="th" track-name="changed" track-type="languageSelector"> ภาษาไทย </option> <option value="zh_cn" lang="zh_cn" track-metadata-original-language="en" track-metadata-selected-language="zh_cn" track-name="changed" track-type="languageSelector"> 中文 – 简体 </option> <option value="zh_tw" lang="zh_tw" track-metadata-original-language="en" track-metadata-selected-language="zh_tw" track-name="changed" track-type="languageSelector"> 中文 – 繁體 </option> <option value="ja" lang="ja" track-metadata-original-language="en" track-metadata-selected-language="ja" track-name="changed" track-type="languageSelector"> 日本語 </option> <option value="ko" lang="ko" track-metadata-original-language="en" track-metadata-selected-language="ko" track-name="changed" track-type="languageSelector"> 한국어 </option> </select> </devsite-select> </devsite-language-selector> </nav> </div> </devsite-footer-utility> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics enable-analytics-iframe> <script type="application/json" analytics>[]</script> <script type="application/json" gtm>{"parameters": {"freeTrialEligibleUser": "False", "internalUser": "False", "language": {"machineTranslated": "False", "requested": "en", "served": "en"}, "pageType": "marketing", "projectName": "Firebase", "scriptsafe": null, "signedIn": "False", "tenant": "firebase"}, "tags": ["GTM-N84485"]}</script> </devsite-analytics> <devsite-badger></devsite-badger> <firebase-gtm></firebase-gtm> <script nonce="kd26Enrk0tIgZbWOYr4QBa4u3Y3gdG"> (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://web.archive.org/web/20210302141517/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19/firebase/js/app_loader.js', '[4,"en",null,"/js/devsite_app_module.js","https://web.archive.org/web/20210302141517/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19","https://web.archive.org/web/20210302141517/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19/firebase","https://web.archive.org/web/20210302141517/https://firebase-dot-devsite-v2-prod.appspot.com",1,null,["/_pwa/firebase/manifest.json","/_static/images/video-placeholder.svg","https://web.archive.org/web/20210302141517/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19/firebase/images/favicon.png","https://web.archive.org/web/20210302141517/https://www.gstatic.com/devrel-devsite/prod/vf8bcd170103a60a9457e3a7682d3f70251c619395c6349d20b56cd2a80761a19/firebase/images/lockup.png","https://web.archive.org/web/20210302141517/https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700|Material+Icons"],1,null,[1,6,8,12,14,17,21,25,40,50,63,70,75,76,80,87,88,91,92,93,97,98,100,101,102,103,105,107,108,111,113,115,116,117,118,120,122,125,129]]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html><!-- FILE ARCHIVED ON 14:15:17 Mar 02, 2021 AND RETRIEVED FROM THE INTERNET ARCHIVE ON 16:22:58 Nov 24, 2024. JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE. ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C. SECTION 108(a)(3)). --> <!-- playback timings (ms): captures_list: 0.984 exclusion.robots: 0.047 exclusion.robots.policy: 0.03 esindex: 0.019 cdx.remote: 7.83 LoadShardBlock: 101.643 (3) PetaboxLoader3.datanode: 77.545 (4) PetaboxLoader3.resolve: 116.923 (2) load_resource: 149.787 -->