CINXE.COM

Firebase App Hosting | Build and deploy modern, full-stack web apps

<!doctype html> <html lang="en" dir="ltr"> <head> <meta name="google-signin-client-id" content="721724668570-nbkv1cfusk7kk4eni4pjvepaus73b13t.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email https://www.googleapis.com/auth/developerprofiles https://www.googleapis.com/auth/developerprofiles.award"> <meta property="og:site_name" content="Firebase"> <meta property="og:type" content="website"><meta name="theme-color" content="#a8c7fa"><meta charset="utf-8"> <meta content="IE=Edge" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="manifest" href="/_pwa/firebase/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//www.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.googleapis.com" crossorigin> <link rel="preconnect" href="//apis.google.com" crossorigin> <link rel="preconnect" href="//www.google-analytics.com" crossorigin><link rel="stylesheet" href="//fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined&display=block"><link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/css/app.css"> <link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/css/dark-theme.css" disabled> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/images/favicon.png"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/images/touchicon-180.png"><link rel="canonical" href="https://firebase.google.com/products/app-hosting"><link rel="search" type="application/opensearchdescription+xml" title="Firebase" href="https://firebase.google.com/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="https://firebase.google.com/products/app-hosting" /><link rel="alternate" hreflang="x-default" href="https://firebase.google.com/products/app-hosting" /><link rel="alternate" hreflang="zh-Hans" href="https://firebase.google.com/products/app-hosting?hl=zh-cn" /><link rel="alternate" hreflang="id" href="https://firebase.google.com/products/app-hosting?hl=id" /><link rel="alternate" hreflang="ja" href="https://firebase.google.com/products/app-hosting?hl=ja" /><link rel="alternate" hreflang="ko" href="https://firebase.google.com/products/app-hosting?hl=ko" /><link rel="alternate" hreflang="pt-BR" href="https://firebase.google.com/products/app-hosting?hl=pt-br" /><link rel="alternate" hreflang="es-419" href="https://firebase.google.com/products/app-hosting?hl=es-419" /><title>Firebase App Hosting | Build and deploy modern, full-stack web apps</title> <meta property="og:title" content="Firebase App Hosting | Build and deploy modern, full-stack web apps"><meta name="description" content="Discover Firebase, Google’s mobile and web app development platform that helps developers build apps and games that users will love."> <meta property="og:description" content="Discover Firebase, Google’s mobile and web app development platform that helps developers build apps and games that users will love."><meta property="og:url" content="https://firebase.google.com/products/app-hosting"><meta property="og:locale" content="en"><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "Firebase App Hosting | Build and deploy modern, full-stack web apps" } </script> <meta content="IE=edge" http-equiv="X-UA-Compatible"/> <meta content="width=device-width, initial-scale=1" name="viewport"/> <meta content="Firebase App Hosting | Build and deploy modern, full-stack web apps" name="name"/> <meta content="https://firebase.google.com/images/social.png" name="image"/> <meta content="Firebase App Hosting | Build and deploy modern, full-stack web apps" name="twitter:title"/> <meta content="Discover Firebase, Google’s mobile and web app development platform that helps developers build apps and games that users will love." name="twitter:description"/> <meta content="@firebase" name="twitter:site"/> <meta content="firebase.google.com" name="twitter:domain"/> <meta content="/images/products/app-hosting/hero.png" name="twitter:image"/> <meta name="twitter:image:alt" value=""/> <meta name="twitter:card" value=""/> <meta content="Firebase App Hosting | Build and deploy modern, full-stack web apps" property="og:title"/> <meta content="website" property="og:type"/> <meta content="https://firebase.google.com/products/app-hosting/" property="og:url"/> <meta content="https://firebase.google.com/images/social.png" property="og:image"/> <meta content="Discover Firebase, Google’s mobile and web app development platform that helps developers build apps and games that users will love." property="og:description"/> <meta content="no" name="msapplication-tap-highlight"/> <link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&amp;display=swap" rel="stylesheet" data-page-link><link href="https://fonts.googleapis.com/css?family=Google+Sans:400,500,600,700" rel="stylesheet" data-page-link> <link rel="stylesheet" href="/extras.css"></head> <body class="firebase-page-product firebase__bg--white firesite-lang--en firebase-page-product firebase__bg--white" template="page" theme="firebase-icy-theme" type="article" appearance="device" appearance layout="full" concierge='hide' pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"> <devsite-cookie-notification-bar></devsite-cookie-notification-bar><devsite-header role="banner" keep-tabs-visible> <div class="devsite-header--inner nocontent"> <div class="devsite-top-logo-row-wrapper-wrapper"> <div class="devsite-top-logo-row-wrapper"> <div class="devsite-top-logo-row"> <button type="button" id="devsite-hamburger-menu" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Navigation menu button" visually-hidden aria-label="Open menu"> </button> <div class="devsite-product-name-wrapper"> <a href="/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="firebase" track-metadata-position="nav" track-metadata-eventDetail="nav"> <picture> <source srcset="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/images/lockup.svg" media="(prefers-color-scheme: dark)" class="devsite-dark-theme" alt="Firebase"> <img src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/images/lockup.svg" class="devsite-site-logo" alt="Firebase"> </picture> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> </li> </ul> </span> </div> <div class="devsite-top-logo-row-middle"> <div class="devsite-header-upper-tabs"> <devsite-tabs class="upper-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Upper tabs"> <tab class="devsite-dropdown "> <a href="https://firebase.google.com/products-build" track-metadata-eventdetail="https://firebase.google.com/products-build" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - build" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Build" track-name="build" > Build </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Build" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products-build" track-metadata-position="nav - build" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Build" track-name="build" 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 firebase-dropdown firebase-dropdown--primary firebase-build"> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Build</li> <li class="devsite-nav-description">Get to market quickly and securely with products that can scale globally </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products-build" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products-build" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build" tooltip > <div class="devsite-nav-item-title"> Go to Build </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column firebase-dropdown firebase-dropdown--secondary firebase-build"> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Build Products</li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/app-check" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/app-check" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> App Check </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/app-hosting" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/app-hosting" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> App Hosting </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/auth" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/auth" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Authentication </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/functions" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/functions" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Cloud Functions </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/storage" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/storage" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Cloud Storage </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/data-connect" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/data-connect" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Data Connect </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/extensions" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/extensions" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Extensions </div> </a> </li> </ul> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/ml" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/ml" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Firebase ML </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/firestore" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/firestore" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Firestore </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/genkit" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/genkit" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Genkit </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/hosting" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/hosting" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Hosting </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/realtime-database" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/realtime-database" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Realtime Database </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/vertex-ai-in-firebase" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/vertex-ai-in-firebase" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Vertex AI in Firebase </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/generative-ai" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/generative-ai" track-metadata-position="nav - build" track-metadata-module="tertiary nav" track-metadata-module_headline="build products" tooltip > <div class="devsite-nav-item-title"> Generative AI </div> </a> </li> </ul> </div> </div> </div> </tab> <tab class="devsite-dropdown "> <a href="https://firebase.google.com/products-run" track-metadata-eventdetail="https://firebase.google.com/products-run" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - run" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Run" track-name="run" > Run </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Run" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products-run" track-metadata-position="nav - run" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Run" track-name="run" 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 firebase-dropdown firebase-dropdown--primary firebase-run"> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Run</li> <li class="devsite-nav-description">Run your app with confidence and deliver the best experience for your users </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products-run" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products-run" track-metadata-position="nav - run" track-metadata-module="tertiary nav" track-metadata-module_headline="run" tooltip > <div class="devsite-nav-item-title"> Go to Run </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column firebase-dropdown firebase-dropdown--secondary"> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Run Products</li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/ab-testing" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/ab-testing" track-metadata-position="nav - run" track-metadata-module="tertiary nav" track-metadata-module_headline="run products" tooltip > <div class="devsite-nav-item-title"> A/B Testing </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/app-distribution" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/app-distribution" track-metadata-position="nav - run" track-metadata-module="tertiary nav" track-metadata-module_headline="run products" tooltip > <div class="devsite-nav-item-title"> App Distribution </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/cloud-messaging" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/cloud-messaging" track-metadata-position="nav - run" track-metadata-module="tertiary nav" track-metadata-module_headline="run products" tooltip > <div class="devsite-nav-item-title"> Cloud Messaging </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/crashlytics" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/crashlytics" track-metadata-position="nav - run" track-metadata-module="tertiary nav" track-metadata-module_headline="run products" tooltip > <div class="devsite-nav-item-title"> Crashlytics </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/analytics" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/analytics" track-metadata-position="nav - run" track-metadata-module="tertiary nav" track-metadata-module_headline="run products" tooltip > <div class="devsite-nav-item-title"> Google Analytics </div> </a> </li> </ul> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/in-app-messaging" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/in-app-messaging" track-metadata-position="nav - run" track-metadata-module="tertiary nav" track-metadata-module_headline="run products" tooltip > <div class="devsite-nav-item-title"> In-App Messaging </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/performance" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/performance" track-metadata-position="nav - run" track-metadata-module="tertiary nav" track-metadata-module_headline="run products" tooltip > <div class="devsite-nav-item-title"> Performance Monitoring </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/remote-config" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/remote-config" track-metadata-position="nav - run" track-metadata-module="tertiary nav" track-metadata-module_headline="run products" tooltip > <div class="devsite-nav-item-title"> Remote Config </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/products/test-lab" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/products/test-lab" track-metadata-position="nav - run" track-metadata-module="tertiary nav" track-metadata-module_headline="run products" tooltip > <div class="devsite-nav-item-title"> Test Lab </div> </a> </li> </ul> </div> </div> </div> </tab> <tab > <a href="https://firebase.google.com/solutions" track-metadata-eventdetail="https://firebase.google.com/solutions" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - solutions" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Solutions" track-name="solutions" > Solutions </a> </tab> <tab > <a href="https://firebase.google.com/pricing" track-metadata-eventdetail="https://firebase.google.com/pricing" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - pricing" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Pricing" track-name="pricing" > Pricing </a> </tab> <tab class="devsite-dropdown "> <a href="https://firebase.google.com/docs" track-metadata-eventdetail="https://firebase.google.com/docs" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - docs" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Docs" track-name="docs" > Docs </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Docs" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/docs" track-metadata-position="nav - docs" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Docs" track-name="docs" 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://firebase.google.com/docs" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/docs" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Overview </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/docs/guides" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/docs/guides" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Fundamentals </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/docs/build" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/docs/build" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Build </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/docs/run" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/docs/run" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Run </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/docs/reference" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/docs/reference" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Reference </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/docs/samples" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/docs/samples" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Samples </div> </a> </li> </ul> </div> </div> </div> </tab> <tab class="devsite-dropdown "> <a href="https://firebase.google.com/community" track-metadata-eventdetail="https://firebase.google.com/community" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - community" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" > Community </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Community" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/community" track-metadata-position="nav - community" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://firebase.google.com/community/learn" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/community/learn" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Learn </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/community/events" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/community/events" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Events </div> </a> </li> <li class="devsite-nav-item"> <a href="https://firebase.google.com/community/stories" track-type="nav" track-metadata-eventdetail="https://firebase.google.com/community/stories" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Stories </div> </a> </li> </ul> </div> </div> </div> </tab> <tab > <a href="https://firebase.google.com/support" track-metadata-eventdetail="https://firebase.google.com/support" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - support" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Support" track-name="support" > Support </a> </tab> </nav> </devsite-tabs> </div> <devsite-search enable-signin enable-search enable-suggestions enable-query-completion project-name="Firebase" tenant-name="Firebase" > <form class="devsite-search-form" action="https://firebase.google.com/s/results" method="GET"> <div class="devsite-search-container"> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-expanded="false" aria-haspopup="listbox" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="combobox" type="text" value="" > <div class="devsite-search-image material-icons" aria-hidden="true"> </div> <div class="devsite-search-shortcut-icon-container" aria-hidden="true"> <kbd class="devsite-search-shortcut-icon">/</kbd> </div> </div> </div> </form> <button type="button" search-close class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Close search"></button> </devsite-search> </div> <devsite-appearance-selector></devsite-appearance-selector> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> <a class="devsite-header-link devsite-top-button button gc-analytics-event" href="//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"> <span class="button devsite-top-button" aria-hidden="true" visually-hidden>Sign in</span> </devsite-user> </div> </div> </div> <div class="devsite-collapsible-section devsite-header-no-lower-tabs "> <div class="devsite-header-background"> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars hidden> <div class="devsite-book-nav-filter" hidden> <span class="filter-list-icon material-icons" aria-hidden="true"></span> <input type="text" placeholder="Filter" aria-label="Type to filter" role="searchbox"> <span class="filter-clear-button hidden" data-title="Clear filter" aria-label="Clear filter" role="button" tabindex="0"></span> </div> <nav class="devsite-book-nav devsite-nav nocontent" aria-label="Side menu"> <div class="devsite-mobile-header"> <button type="button" id="devsite-close-nav" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Close navigation" aria-label="Close navigation"> </button> <div class="devsite-product-name-wrapper"> <a href="/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="firebase" track-metadata-position="nav" track-metadata-eventDetail="nav"> <picture> <source srcset="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/images/lockup.svg" media="(prefers-color-scheme: dark)" class="devsite-dark-theme" alt="Firebase"> <img src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/images/lockup.svg" class="devsite-site-logo" alt="Firebase"> </picture> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> </li> </ul> </span> </div> </div> <div class="devsite-book-nav-wrapper"> <div class="devsite-mobile-nav-top"> <ul class="devsite-nav-list"> <li class="devsite-nav-item"> <a href="/products-build" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Build" track-name="build" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Build" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Build </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Build" track-name="build" > <span class="devsite-nav-text" tooltip menu="Build"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Build"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/products-run" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Run" track-name="run" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Run" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Run </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Run" track-name="run" > <span class="devsite-nav-text" tooltip menu="Run"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Run"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/solutions" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Solutions" track-name="solutions" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Solutions" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Solutions </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/pricing" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Pricing" track-name="pricing" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Pricing" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Pricing </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Docs" track-name="docs" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Docs" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Docs </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Docs" track-name="docs" > <span class="devsite-nav-text" tooltip menu="Docs"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Docs"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/community" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Community" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Community </span> <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 data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" > <span class="devsite-nav-text" tooltip menu="Community"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Community"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/support" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Support" track-name="support" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Support" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <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="//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"> <span class="devsite-nav-text" tooltip > Go to console </span> </a> </li> </ul> </div> <div class="devsite-mobile-nav-bottom"> <ul class="devsite-nav-list" menu="Build" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Build </span> </span> </li> <li class="devsite-nav-item"> <a href="/products-build" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Go to Build" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Go to Build </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Build Products </span> </span> </li> <li class="devsite-nav-item"> <a href="/products/app-check" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: App Check" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > App Check </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/app-hosting" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: App Hosting" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > App Hosting </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/auth" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Authentication" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Authentication </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/functions" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Cloud Functions" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Cloud Functions </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/storage" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Cloud Storage" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Cloud Storage </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/data-connect" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Data Connect" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Data Connect </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/extensions" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Extensions" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Extensions </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/ml" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Firebase ML" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Firebase ML </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/firestore" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Firestore" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Firestore </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/genkit" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Genkit" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Genkit </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/hosting" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Hosting" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Hosting </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/realtime-database" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Realtime Database" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Realtime Database </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/vertex-ai-in-firebase" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Vertex AI in Firebase" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Vertex AI in Firebase </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/generative-ai" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Generative AI" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Generative AI </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Run" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Run </span> </span> </li> <li class="devsite-nav-item"> <a href="/products-run" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Go to Run" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Go to Run </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Run Products </span> </span> </li> <li class="devsite-nav-item"> <a href="/products/ab-testing" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: A/B Testing" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > A/B Testing </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/app-distribution" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: App Distribution" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > App Distribution </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/cloud-messaging" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Cloud Messaging" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Cloud Messaging </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/crashlytics" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Crashlytics" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Crashlytics </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/analytics" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Analytics" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Analytics </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/in-app-messaging" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: In-App Messaging" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > In-App Messaging </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/performance" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Performance Monitoring" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Performance Monitoring </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/remote-config" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Remote Config" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Remote Config </span> </a> </li> <li class="devsite-nav-item"> <a href="/products/test-lab" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Test Lab" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Test Lab </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Docs" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="/docs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Overview" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Overview </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/guides" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Fundamentals" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Fundamentals </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/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"> <span class="devsite-nav-text" tooltip > Build </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/run" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Run" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Run </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/reference" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Reference" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Reference </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/samples" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Samples" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Samples </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Community" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="/community/learn" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Learn" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Learn </span> </a> </li> <li class="devsite-nav-item"> <a href="/community/events" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Events" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Events </span> </a> </li> <li class="devsite-nav-item"> <a href="/community/stories" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Stories" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Stories </span> </a> </li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" class="devsite-main-content" > <devsite-content> <article class="devsite-article"><style> /* Styles inlined from /styles/main.css */ @font-face{font-family:'GMP Icons';src:local("GMP Icons"),url(//www.gstatic.com/mobilesdk/220318_mobilesdk/GMPIcons.eot) format("embedded-opentype"),url(//www.gstatic.com/mobilesdk/220318_mobilesdk/GMPIcons.woff2) format("woff2"),url(//www.gstatic.com/mobilesdk/220318_mobilesdk/GMPIcons.ttf) format("truetype");font-weight:400;font-style:normal}.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;-webkit-font-smoothing:antialiased;font-style:normal;font-weight:400;height:1em;letter-spacing:normal;line-height:1;-moz-osx-font-smoothing:grayscale;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}:root{--firebase-bg-color:#1a73e8;--firebase-bg-white-color:#fff;--firebase-header-color:#000;--firebase-body-color:rgba(0,0,0,.67);--firebase-button-bg-color:#1a73e8;--firebase-button-bg-hover-color:#1967d2;--firebase-button-text-color:#fff;--firebase-button-white-text-color:#1a73e8;--firebase-button-white-hover-color:#e8f0fe;--firebase-button-black-text-color:#000;--firebase-link-color:#1e88e5;--firebase-link-hover-color:#1a73e8;--firebase-link-bg-hover-color:#e8f0fe;--firebase-card-bg-color:#fff;--firebase-border-color:#dadce0;--firebase-hr-color:#cfd8dc;--firebase-product-text-color:#202124;--firebase-product-link-color:#1967d2;--firebase-product-card-bg-color:#f8f9fa;--firebase-product-card-hover-color:#d2e3fc;--firebase-product-feature-color:#0e4c97;--firebase-product-row-card-bg-color:#fff;--firebase-pricing-header-color:#000;--firebase-pricing-body-color:rgba(0,0,0,.67);--demo-day-card-bg-color:#fff}:root .color-scheme--dark{--firebase-bg-color:#112537;--firebase-bg-white-color:#000;--firebase-header-color:#fff;--firebase-body-color:rgba(255,255,255,.67);--firebase-button-bg-color:#fff;--firebase-button-bg-hover-color:#92cceb;--firebase-button-text-color:#112537;--firebase-button-white-text-color:#112537;--firebase-button-white-hover-color:#92cceb;--firebase-button-black-text-color:#fff;--firebase-link-color:#92cceb;--firebase-link-hover-color:#92cceb;--firebase-link-bg-hover-color:rgba(255,255,255,.2);--firebase-card-bg-color:#1b3a57;--firebase-border-color:rgba(255,255,255,.2);--firebase-hr-color:rgba(255,255,255,.2);--firebase-product-text-color:#fff;--firebase-product-link-color:#92cceb;--firebase-product-card-bg-color:#1b3a57;--firebase-product-card-hover-color:#112537;--firebase-product-feature-color:#0c1a28;--firebase-product-row-card-bg-color:#2d2d2d;--firebase-pricing-header-color:#fff;--firebase-pricing-body-color:#fff;--demo-day-card-bg-color:#1e1e1e}body{-moz-osx-font-smoothing:grayscale;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;background-color:#fafafa;text-size-adjust:100%}@media screen and (min-width:1000px){body{font:400 16px/28px "Google Sans",sans-serif}}body,main,table{color:var(--firebase-body-color)}body,table{font:400 16px/24px "Google Sans",sans-serif}@media screen and (min-width:1000px){table{font:400 16px/28px "Google Sans",sans-serif}}main{margin-top:0;position:relative}.three-column__column .no-link,h1,h2,h3,h4,h5,h6{color:var(--firebase-header-color);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:500 44px/54px "Google Sans",sans-serif;font-weight:600}}h4{font:500 18px/28px "Google Sans",sans-serif}@media screen and (min-width:1000px){h4{font:500 28px/36px "Google Sans",sans-serif}}.three-column__column .no-link,h5{font:500 16px/24px "Google Sans",sans-serif}@media screen and (min-width:1000px){.three-column__column .no-link,h5{font:500 20px/26px "Google Sans",sans-serif}}img.firesite-darkmode-image,video.firesite-darkmode-image{display:none}.color-scheme--dark img.firesite-darkmode-image,.color-scheme--dark video.firesite-darkmode-image,img.firesite-lightmode-image,video.firesite-lightmode-image{display:block}.color-scheme--dark img.firesite-lightmode-image,.color-scheme--dark video.firesite-lightmode-image{display:none}.color-scheme--dark img{-webkit-filter:unset;filter:unset}ul.reset{list-style:none;padding:0}.brand-guidelines__text li,body,p.reset{margin:0}@media screen and (min-width:1280px){main{padding:0 80px 120px}}button{background:0 0;border:none;box-shadow:none;padding:0}button:active,button:focus,button:hover{background:0 0;border:none;box-shadow:none}:link,:visited,a{color:var(--firebase-link-color)}a{text-decoration:none}a[aria-level]{color:#000}a[aria-level].product-icon__name{color:#757575}.color-scheme--dark a[aria-level].product-icon__name,.link--white{color:#fff}a:focus,a:hover{text-decoration:underline}[role=button]:focus,button:focus{outline:none}.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;width:100%}.card .card__banner .card__banner__inner p:last-of-type,.content-wrapper:last-of-type>.card{margin-bottom:0}.firesite__bg--container{overflow:hidden;position:absolute;width:100%;height:100%;top:0;left:0}.firebase__bg--blue{background-color:var(--firebase-bg-color)}.firebase__bg--white{background-color:var(--firebase-bg-white-color)}.firebase__bg--grey{background-color:#1e1e1e}.firesite__bg>img{top:-13%;padding-bottom:0;-webkit-transform:translateX(-50%) scale(1.5);transform:translateX(-50%) scale(1.5);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%}}.firesite__bg>svg{left:calc(50% + 470px);position:absolute;top:200px;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media screen and (min-width:1000px){.firesite__bg>svg{top:640px;left:calc(50% + 180px)}}.firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px}@media screen and (min-width:1000px){.firesite__bg--top>svg{left:calc(50% + 500px);top:-2240px}}.firesite__bg--accent>svg{left:calc(50% + 470px);position:absolute;top:800px;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.firebase-grow{margin-top:48px}.background--dark,.color-scheme--dark .background--dark{background-color:#1e1e1e}.background--dark .three-column__column .no-link,.background--dark div,.background--dark h1,.background--dark h2,.background--dark h3,.background--dark h4,.background--dark h5,.background--dark h6,.background--dark span,.three-column__column .background--dark .no-link{color:#fff}@media screen and (min-width:720px){.bottom-padding{padding-bottom:80px}.top-padding{padding-top:80px}}.firebase-modal{width:720px;display:-webkit-flex;display:-ms-flexbox;display:flex;height:calc(100vh - 48px);-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:1280px){.firebase-modal{width:90vw;max-width:1800px;max-height:1200px}}.firebase-modal .material-icons{cursor:pointer;font-size:20px;pointer-events:none}.firebase-modal .iframe-wrapper{float:none;margin:0;width:100%;min-height:700px;height:100%;position:relative}.firebase-modal .iframe-wrapper iframe{position:absolute;height:100%;width:100%}.devsite-dialog-contents{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;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.devsite-dialog-buttons{padding:8px 16px 0}.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}.firebase-video-modal{width:720px;height:auto}@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 .video-wrapper{float:none;margin:0;width:100%}.firebase-speaker-modal{padding-bottom:50px}@media screen and (min-width:720px){.firebase-speaker-modal{min-width:600px}}@media screen and (min-width:1000px){.firebase-speaker-modal{min-width:800px}}.speaker-detail{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;text-align:left}@media screen and (min-width:720px){.speaker-detail{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}}.speaker-detail img{object-fit:cover;width:200px;height:100%}@media screen and (min-width:720px){.speaker-detail img{margin-right:40px;height:auto}}.speaker-detail .devsite-dialog__subheading{font-size:20px;line-height:28px;font-weight:400;font-family:"Google Sans",sans-serif;color:#202124}.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;background:0 0;color:var(--firebase-link-color);letter-spacing:.24px;padding:6px 8px;margin-left:-8px;margin-right:-8px}@media screen and (min-width:1000px){.cta-link{font:500 16px/20px "Google Sans",sans-serif;letter-spacing:.57px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}}.cta-link:not(.cta-link--white):active,.cta-link:not(.cta-link--white):focus,.cta-link:not(.cta-link--white):hover{text-decoration:none;background-color:#e1f3fc;color:#0288d1}.cta-link:focus>img,.three-column devsite-pagination .button:focus>img,.three-column__column--dynamic .devsite-card-buttons a:focus>img{outline:3px solid rgba(3,155,229,.2)}.cta-link--small,.three-column__column--dynamic .devsite-card-buttons a--small{font-size:14px;letter-spacing:.15px;line-height:16px}.cta-link--with-icon,.three-column__column--dynamic .devsite-card-buttons a--with-icon{padding-bottom:10px;padding-right:10px;padding-top:10px}.cta-link--with-icon>i,.devsite-article .cta-link--with-icon>i{margin-right:12px}.cta-link--with-medium-icon,.three-column__column--dynamic .devsite-card-buttons a--with-medium-icon{font:700 18px/24px "Google Sans",sans-serif;padding-bottom:10px;padding-right:10px;padding-top:10px}.cta-link--hover-orange>i,.cta-link--with-medium-icon>i,.devsite-article .cta-link--hover-orange>i,.devsite-article .cta-link--with-medium-icon>i{font-size:20px;height:20px;vertical-align:middle;width:20px}.cta-link--grey:active,.cta-link--grey:focus,.cta-link--grey:hover,.cta-link--white:active,.cta-link--white:focus,.cta-link--white:hover,.three-column__column--dynamic .devsite-card-buttons a--grey:active,.three-column__column--dynamic .devsite-card-buttons a--grey:focus,.three-column__column--dynamic .devsite-card-buttons a--grey:hover,.three-column__column--dynamic .devsite-card-buttons a--white:active,.three-column__column--dynamic .devsite-card-buttons a--white:focus,.three-column__column--dynamic .devsite-card-buttons a--white:hover{opacity:.85}.cta-link--white{color:#fff}.cta-link--white:hover,.three-column__column--dynamic .devsite-card-buttons a--white:hover{background:rgba(255,255,255,.2);color:#fff;border:0}.cta-link--hover-orange,.three-column__column--dynamic .devsite-card-buttons a--hover-orange{color:#fff;font:700 18px/24px "Google Sans",sans-serif;padding-bottom:10px;padding-right:10px;padding-top:10px}.cta-link--hover-orange:hover{color:#dd2c00;border:0}.color-scheme--dark .cta-link--footer:hover,.color-scheme--dark .cta-link--hover-orange:hover,.color-scheme--dark .three-column__column--dynamic .devsite-card-buttons a--footer:hover,.color-scheme--dark .three-column__column--dynamic .devsite-card-buttons a--hover-orange:hover{color:#ffc400;border:0}.cta-link--expand-arrow{padding:10px 0;width:100%;color:#fff}.cta-link--expand-arrow:hover{text-decoration:none}.cta-link--expand-arrow:focus .product-icon__name svg path,.cta-link--expand-arrow:hover .product-icon__name svg path{d:path("M0.7 9.35772H50.9956L44.2001 2.29941L46.4134 0L57 11L46.4134 22L44.2001 19.7006L50.9956 12.6423H0V9.35772Z")}.cta-link--expand-arrow:focus{text-decoration:underline;-webkit-text-decoration-color:#fff;-moz-text-decoration-color:#fff;text-decoration-color:#fff}.cta-link--grey,.three-column__column--dynamic .devsite-card-buttons a--grey{color:#979797}.color-scheme--dark .cta-link--grey,.color-scheme--dark .three-column__column--dynamic .devsite-card-buttons a--grey{color:#92cceb}.color-scheme--dark .cta-link--black,.cta-link--black{color:#000}.cta-link--primary,.three-column__column--dynamic .devsite-card-buttons a--primary{font:500 14px/16px "Google Sans",sans-serif}@media screen and (min-width:1000px){.cta-link--primary{font:500 20px/26px "Google Sans",sans-serif}}.cta-link--footer:hover,.three-column__column--dynamic .devsite-card-buttons a--footer:hover,.three-column__column--dynamic .devsite-card-buttons a--hover-orange:hover{color:#dd2c00;border:0}.cta-button{background:0 0;border:none;box-shadow:none;background-color:var(--firebase-button-bg-color);border-radius:8px;color:var(--firebase-button-text-color);display:inline-block;font:500 14px/16px "Google Sans",sans-serif;letter-spacing:.15px;max-width:255px;padding:10px 50px;text-align:center;white-space:normal;width:100%}.cta-button:active,.cta-button:focus,.cta-button:hover{background:0 0;border:none;box-shadow:none;text-decoration:none;background-color:var(--firebase-button-bg-hover-color)}@media screen and (min-width:600px){.cta-button{width:auto}}@media screen and (min-width:1000px){.cta-button{max-width:unset;font:500 20px/26px "Google Sans",sans-serif;padding:20px 52px}.cta-button--long-text{max-width:none}}.cta-button--medium{padding:20px 30px}.cta-button--small{font:500 14px/16px "Google Sans",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:var(--firebase-button-white-text-color);text-decoration:none!important;border:0}.cta-button--orange:active,.cta-button--orange:focus,.cta-button--orange:hover{background-color:var(--firebase-button-white-hover-color)}.cta-button--white:active,.cta-button--white:focus,.cta-button--white:hover{border:0;background-color:var(--firebase-button-white-hover-color);box-shadow:none}.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--orange{font:700 18px/24px "Google Sans",sans-serif;color:#000;background-color:#ffa000;text-decoration:none!important;border:0;border-radius:100px;padding:10px 20px}.cta-button--orange:active,.cta-button--orange:focus,.cta-button--orange:hover{border:0;color:#000;background-color:#ffa000;box-shadow:none}.color-scheme--dark .cta-button--orange{color:#000;background-color:#ffa000}.color-scheme--dark .cta-button--darkmode-transparent{background-color:transparent;color:#92cceb}.color-scheme--dark .cta-button--darkmode-transparent:active,.color-scheme--dark .cta-button--darkmode-transparent:focus,.color-scheme--dark .cta-button--darkmode-transparent:hover{background-color:rgba(255,255,255,.2)}.cta-button--outline{border:1px solid var(--firebase-border-color);border-radius:8px}.cta-button--outline:focus,.cta-button--outline:hover{border:1px solid var(--firebase-border-color)}.cta-button--outline-orange{font:700 18px/24px "Google Sans",sans-serif;color:var(--firebase-button-black-text-color);border:2px solid #ff9100;border-radius:100px;padding:5px 20px}.cta-button--outline-orange:active,.cta-button--outline-orange:hover{text-decoration:none;color:#000;border:2px solid #ff9100;background-color:#ff9100;transition:background-color .15s linear}.cta-button--outline-orange:focus{text-decoration:none;color:#000;border:2px solid #cecece;background-color:#cecece;transition:background-color .15s linear}.cta-button--text-blue{background-color:transparent;color:#039be5}.cta-button--text-orange{color:#fbbc04}.cta-button--text-teal{color:#46bdc6}.cta-button--text-green{color:#8bc34a}.cta-button--text-sky-blue{color:#039be5}.background--dark .cta-button--outline-orange,.background--dark .cta-link--hover-orange,.cta-button--text-white{color:#fff}.cta-dialog{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;overflow:visible;height:auto}.mobile-cta{display:inline-block}@media screen and (min-width:1000px){.mobile-cta{display:none}}.accordion .disabled-toggle .right-column .expand-control .material-icons,.desktop-cta{display:none}@media screen and (min-width:1000px){.desktop-cta{display:inline-block}}.background--dark .cta-button--outline-orange:active,.background--dark .cta-button--outline-orange:focus,.background--dark .cta-button--outline-orange:hover{font-weight:700;color:#000}.background--dark .cta-link--hover-orange:focus,.background--dark .cta-link--hover-orange:hover{color:#ffc400;border:0}.background--dark .cta-link--hover-orange:active{color:#fff;border:0}.accordion{overflow:hidden;border:1px solid #eceff1}.accordion:first-of-type{border-radius:10px 10px 0 0}.accordion:last-of-type{border-bottom-left-radius:10px;border-bottom-right-radius:10px}.accordion devsite-expandable,.accordion--grow{padding:24px 12px}@media screen and (min-width:1000px){.accordion devsite-expandable,.accordion--grow{padding:26px 48px}}.accordion devsite-expandable:not(:last-child),.accordion--grow:not(:last-child){border-bottom:1px solid #eceff1}.accordion .main-container{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.accordion .disabled-toggle{pointer-events:none}.accordion .left-column{display:-webkit-flex;display:-ms-flexbox;display:flex;width:60%;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;border-bottom:1px solid #eceff1;border-right:1px solid #eceff1}@media screen and (min-width:720px){.accordion .left-column{width:25%}}@media screen and (min-width:1000px){.accordion .left-column{width:15%}}.accordion .time-title{margin:0;padding:5px;text-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.accordion .right-column{border-bottom:1px solid #eceff1}.accordion .control-column,.accordion .expand-control,.accordion .right-column{display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.accordion .expand-control{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.accordion .expand-control:focus .three-column__column .no-link,.accordion .expand-control:focus h5,.three-column__column .accordion .expand-control:focus .no-link{color:#1e88e5}.accordion--agenda{margin-bottom:10px;border-color:#d8d8d8}.accordion--agenda:first-of-type{border-radius:10px}.accordion--agenda .expandable__title{font-size:24px;line-height:32px;font-weight:400;font-family:"Google Sans",sans-serif}.accordion--agenda .expandable__body p{max-width:800px;color:#424242}.accordion--agenda .accordion--grow:not(:last-child),.accordion--agenda devsite-expandable:not(:last-child){border-color:#d8d8d8}.expandable__header{background-color:#eceff1;padding:24px 40px}@media screen and (min-width:1000px){.expandable__header{padding:26px 48px}}.expandable__header h4{text-align:left;margin:0}.expandable__title{display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0;-webkit-flex:1 0;-ms-flex:1 0;flex:1 0;color:#202124}.expandable__body{margin:24px 0}@media screen and (min-width:1000px){.expandable__body{margin:44px 0}.expandable__body p{max-width:600px}}.expandable__ctas{padding:4px 0;margin:24px 0}@media screen and (min-width:720px){.expandable__ctas{margin:44px 0}}.expandable__tag{color:gray}.expandable__green-tag{color:#7cb342}.expandable__blue-tag{color:#1967d2}.brand-guidelines__row-header{margin-bottom:50px}.brand-guidelines .material-icons{vertical-align:middle}.brand-guidelines h2,.brand-guidelines p{margin-bottom:32px}.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}.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--outline .brand-guidelines__swatch--color{border:2px solid #323232}.brand-guidelines__swatch-wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;gap:20px;-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;width:100%;-webkit-flex:1;-ms-flex:1;flex:1}@media screen and (min-width:720px){.brand-guidelines__swatch{width:130px}}@media screen and (min-width:1000px){.brand-guidelines__swatch{width:200px}}.brand-guidelines__swatch--color{border-radius:20px;height:130px;width:100%}.brand-guidelines__swatch--text{border-top:0;min-height:86px;padding:0 10px}.brand-guidelines__swatch--text>p{font-size:14px;margin-bottom:0}.brand-guidelines__swatch--text .brand-guidelines__swatch--label{margin:4px 0}.brand-guidelines__swatch--label{font-weight:500}.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__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{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.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}}.card{background:var(--firebase-card-bg-color);border-radius:16px;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:empty,.card p:empty{display:none}.card hr{border:none;border-top:1px solid var(--firebase-hr-color);margin:48px 0}@media screen and (min-width:720px){.card hr{margin:100px 0 80px}}.card .card__divider.card__divider--noline{border-top:none}.card--transparent{background:0 0;border:none;border-radius:0;box-shadow:none}.card--summit{background:#f1f3f4}.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 16px/24px "Google Sans",sans-serif;padding:16px 32px;text-align:center}@media screen and (min-width:1000px){.card .card__banner .card__banner__inner{font:400 16px/28px "Google Sans",sans-serif}}.card .card__banner .card__banner__inner a{color:#01579b;font-weight:500}.card .products__card-header .card__header{margin-bottom:0}.card .devsite-nav-buttons-container{padding:20px}.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: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{position:relative;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:center}.card .card__header h2{margin-bottom:16px;text-align:center}@media screen and (max-width:400px){.card .card__header h2 br{display:none}}.card .card__header .card__divider{margin:60px 0 40px}.card .card__subheading{font:400 18px/28px "Google Sans",sans-serif;margin:0 auto 16px;max-width:680px;text-align:center}.card .card__smallheading{text-align:left}.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;gap:16px}@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__footer.card__footer--dark{background:#eceff1}.color-scheme--dark .card .card__footer.card__footer--dark{background:rgba(17,37,55,.7)}@media screen and (min-width:1000px){.card .card__footer{padding:32px 112px 24px}}.card-ctas-with-space .card__content{padding:80px 14% 100px}@media screen and (min-width:600px){.card-ctas-with-space .card__content{min-width:285px}}@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:500 12px/12px "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:500 20px/26px "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}}.card-ctas-with-space .card__divider{opacity:0;visibility:hidden}@media screen and (min-width:720px){.card-ctas-with-space .card__divider{margin-top:60px;opacity:1;visibility:visible}}@media screen and (min-width:600px){.card-ctas-with-space.community-stories .card__cta:last-child{text-align:center;min-width:110px}}.header-left .card__header .card__heading{text-align:left}.header-left .card__ctas{-webkit-justify-content:start;-ms-flex-pack:start;justify-content:start}.card-block-wrapper{max-width:1280px;height:100%;margin-inline:auto;border-radius:40px;border:1px solid #00000026;box-shadow:0 4px 12px 0 #00000026;background-color:var(--firebase-product-row-card-bg-color);position:relative}@media screen and (min-width:1000px){.card-block-wrapper{min-width:325px;min-height:325px}}@media screen and (min-width:1280px){.card-block-wrapper{width:400px;height:350px}}.card-block-wrapper__card{padding:32px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;height:100%}.card-block-wrapper__icon img{width:60px;height:60px}.card-block-wrapper__badge{font:700 20px/30px "JetBrains Mono",monospace;text-transform:uppercase;padding:6px 12px;background-color:#1a73e8;color:#fff;position:absolute;right:32px;top:-20px;border-radius:60px}.card-block-wrapper__content,.card-block-wrapper__content .content,.fb-price-row.features.cta-row div div{height:100%}@media screen and (min-width:720px){.card-block-wrapper__content .content__title{font:700 22px/26px "Google Sans",sans-serif}.card-block-wrapper__content .content__body{font:400 16px/24px "Google Sans",sans-serif}}.card-block-wrapper__content .content__ctas{margin-top:auto}.card-block-wrapper__content .content__ctas .cta-button--outline-orange{font:400 14px/28px "Google Sans",sans-serif}.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 .three-column__column .no-link,.card-footer h5,.three-column__column .card-footer .no-link{margin:24px 0 12px;font:500 18px/22px "Google Sans",sans-serif}@media screen and (min-width:600px){.card-footer .three-column__column .no-link,.card-footer h5,.three-column__column .card-footer .no-link{font:500 16px/24px "Google Sans",sans-serif}}@media screen and (min-width:720px){.card-footer .three-column__column .no-link,.card-footer h5,.three-column__column .card-footer .no-link{font:500 20px/26px "Google Sans",sans-serif;margin:0 0 6px}}.card-footer a{color:var(--firebase-link-hover-color);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:400 10px/18px "Google Sans",sans-serif;text-align:left;margin:0 0 12px;max-width:300px}@media screen and (min-width:600px){.card-footer p{font:400 12px/20px "Google Sans",sans-serif}}@media screen and (min-width:720px){.card-footer p{font:400 14px/20px "Google Sans",sans-serif;margin-bottom:4px;max-width:532px}.card-footer__text .three-column__column .no-link br,.card-footer__text h5 br,.three-column__column .card-footer__text .no-link 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}}.darkmode-card .content{color:#000}.content{display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;color:var(--firebase-button-black-text-color)}.content__icon{margin-bottom:32px}.content__eyebrow{font:400 14px/16px "JetBrains Mono",monospace;text-transform:uppercase;padding-bottom:20px}@media screen and (min-width:1000px){.content__eyebrow{font:400 22px/15px "JetBrains Mono",monospace}}.content__heading{font:700 20px/30px "Google Sans",sans-serif;margin-bottom:32px}@media screen and (min-width:1000px){.content__heading{font:700 35px/45px "Google Sans",sans-serif}}.content__title{font:700 20px/30px "Google Sans",sans-serif;padding-bottom:10px}@media screen and (min-width:1000px){.content__title{font:700 26px/26px "Google Sans",sans-serif}}.content__body{font:400 18px/25px "Google Sans",sans-serif;color:var(--firebase-body-color);margin-bottom:32px}@media screen and (min-width:1000px){.content__body{font:400 22px/30px "Google Sans",sans-serif}}.content__products{padding-bottom:32px}@media screen and (min-width:720px){.content__products{padding:60px 0}}.content__products-list-item:last-child{border:none}.content__products-list-item,.content__products-list-item .product-cols__text .product-icon__name svg{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.content__products-list-item{-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;border-bottom:2px solid #323232;padding:12px 0;margin:0}.content__products-list-item .product-icon .product-icon__icon,.content__products-list-item .product-icon .product-icon__image{margin-bottom:4px;margin-right:20px;width:40px;height:40px;background:#f57c00}.content__products-list-item .product-icon .product-icon__icon .gmp-icons,.content__products-list-item .product-icon .product-icon__image .gmp-icons{color:#1e1e1e;font-size:16px}@media screen and (min-width:720px){.content__products-list-item .product-icon .product-icon__icon .gmp-icons,.content__products-list-item .product-icon .product-icon__image .gmp-icons{font-size:24px}.content__products-list-item{-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%}}.content__products-list-item .product-cols__text{margin:0 0 4px;width:100%}.content__products-list-item .product-cols__text .product-icon__name{display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;font:400 14px/15px "JetBrains Mono",monospace}.content__products-list-item .product-cols__text .product-icon__name svg{height:15px;width:50px;transition:250ms all ease;margin-left:auto}.content__products-list-item .product-cols__text .product-icon__name svg path,.side-side-wrapper__left-container .products-list-item .product-cols__text .product-icon__name svg path,.side-side-wrapper__right-container .products-list-item .product-cols__text .product-icon__name svg path{transition:250ms all ease;height:100%;-webkit-transform:scale(.5);transform:scale(.5)}.content ul,main{padding:0}.content__products-list{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:1;-ms-flex:1;flex:1;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:720px){.content__products-list{max-width:100%}}.content__illo img{border-radius:20px}.content__video{text-align:center}.content__video video{margin:auto}.content__video--light{display:block}.color-scheme--dark .content__video--light,.content__video--dark{display:none}.color-scheme--dark .content__video--dark{display:block}.cta-banner{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-order:1;-ms-flex-order:1;order:1;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}@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 h4{text-align:left}}@media screen and (min-width:720px) and (min-width:720px){.cta-banner__text h4{max-width:420px}}@media screen and (min-width:720px){.cta-banner__text--right{-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end;text-align:right}.cta-banner__text--right h4{text-align:right}}@media screen and (max-width:600px){.cta-banner__text--center-mobile{text-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}}.cta-banner__text>h5,.three-column__column .cta-banner__text>.no-link{margin:16px 0}@media screen and (min-width:720px){.cta-banner__text>p{max-width:450px}}.cta-banner__cta{margin-top:14px}.cta-banner__container{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:15px}@media screen and (min-width:1000px){.cta-banner__container{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.cta-banner__illo:nth-child(2){display:none}@media screen and (min-width:1280px){.cta-banner__illo:nth-child(2){display:-webkit-flex;display:-ms-flexbox;display:flex}}.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--before-ctas{-webkit-order:unset;-ms-flex-order:unset;order:unset}@media screen and (min-width:1280px){.cta-banner__illo--before-ctas{display:none}}.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--left{-webkit-order:0;-ms-flex-order:0;order:0;padding-left:0;padding-right:36px}}.cta-banner__illo--large{-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.cta-banner__illo--fit>img,.cta-banner__illo--large>img{width:100%;max-width:none}.cta-banner__illo--fit{-webkit-flex-basis:60%;-ms-flex-preferred-size:60%;flex-basis:60%;margin-top:-50px}@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-banner--ctas-row .cta-banner__text{color:#424242}.cta-banner--ctas-row .cta-banner__text inline-html{margin-bottom:30px}.cta-banner--ctas-row .cta-banner__cta{margin-top:10px}@media screen and (min-width:600px){.cta-banner--ctas-row .cta-banner__cta{margin-right:15px}}@media screen and (min-width:720px){.cta-banner--ctas-row .cta-banner__cta{margin-top:0}}.cta-banner--ctas-row .cta-banner__cta .cta-button{padding:12px;min-width:110px;font:500 12px/12px "Google Sans",sans-serif}@media screen and (min-width:1000px){.cta-banner--ctas-row .cta-banner__cta .cta-button{font:500 20px/26px "Google Sans",sans-serif}}@media screen and (min-width:720px){.cta-banner--ctas-row .cta-banner__container{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.cta-grid__grid--2up{display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;row-gap:44px;-webkit-column-gap:84px;-moz-column-gap:84px;column-gap:84px}@media screen and (min-width:720px){.cta-grid__grid--2up{-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr}}@media screen and (min-width:1000px){.cta-grid__grid--2up{-ms-grid-columns:(1fr)[2];grid-template-columns:repeat(2,1fr)}}.cta-grid__grid--3up{display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;row-gap:84px;-webkit-column-gap:44px;-moz-column-gap:44px;column-gap:44px}@media screen and (min-width:720px){.cta-grid__grid--3up{-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr}}@media screen and (min-width:1000px){.cta-grid__grid--3up{-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr)}}.cta-grid__category{text-transform:uppercase;margin-bottom:16px;font:500 16px/24px "Google Sans",sans-serif;line-height:56px}.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-grid__icon--full{width:100%;height:auto}@media screen and (min-width:1280px){.cta-grid__speakers-row{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}}.cta-grid__ctas-col{width:auto;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;row-gap:10px}.cta-hero-footer{padding:32px 0 100px}@media screen and (min-width:1000px){.cta-hero-footer{padding:140px 0}}.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:1000px){.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--title{font:500 28px/32px "Google Sans",sans-serif;margin:20px 0 12px}@media screen and (min-width:600px){.cta-hero-footer__text--title{font:500 44px/54px "Google Sans",sans-serif;margin:32px 0 16px}}.cta-hero-footer__text>p{font:500 20px/26px "Google Sans",sans-serif;font-weight:400;opacity:66%;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}.cta-hero-footer__text--white p,.cta-hero-footer__text--white>span[aria-level="2"]{color:#fff}.devsite-banner{padding:0;margin:0;width:100%}.devsite-banner a:link:not(.button),.devsite-banner a:visited:not(.button){background:0}.devsite-banner a:focus,.devsite-banner a:hover,.three-column__column--dynamic .devsite-card-buttons a--expand-arrow:hover{text-decoration:none}.devsite-banner-blue{background:#e8f0fe}.devsite-banner-blue a,.devsite-banner-blue>*{color:#1967d2}.devsite-banner-yellow{background:#ffca28}.devsite-banner-yellow a,.devsite-banner-yellow>*{color:#c2185b}.devsite-banner-message.bold>*{font-weight:600}.devsite-banner-message.medium>*{font-weight:500}.devsite-banner-message.medium>* a,.pricing-table .header-bold .pricing-table__body__cell code{font-weight:700}.devsite-banner-summit-blue{background:#e1f3fc;color:#0288d1}.devsite-banner-summit-blue a{color:#0288d1}.devsite-banner-summit-dark-blue{background:#5374d4;color:#fff}.devsite-banner-summit-dark-blue a{color:#fff}.devsite-banner-message-text.center{margin:0 auto}.banner-container{width:100%;background:0 0}.banner-container--full-width{width:100vw;margin-left:-20px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}@media screen and (min-width:1280px){.banner-container--full-width{margin-left:-80px}}.banner-container--card{position:absolute;top:0;left:0}.banner-container--card .grow-banner{margin-top:0}.banner-container--card-padding{height:80px}@media screen and (min-width:1000px){.banner-container--card-padding{height:0}}.grow-banner{padding:20px 24px!important;margin-top:-40px}.firebase-page-home iframe body,.pricing-table tr,.show-all-button,.show-all-button:active{background-color:transparent}.show-all-button:focus,.show-all-button:hover{background-color:var(--firebase-link-bg-hover-color)}.show-all-button__icon{font-size:30px!important;height:auto!important;width:auto!important;position:relative;top:0!important;pointer-events:none}.show-all-button,.show-all-button:active,.show-all-button:focus,.show-all-button:hover{margin:30px auto 0;border-radius:0;color:var(--firebase-link-hover-color);display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;font-size:14px;font-weight:500;font-family:"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 var(--firebase-hr-color);border-bottom:1px solid var(--firebase-hr-color);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{margin:60px auto 0;border-radius:8px;padding:10px 5px 10px 20px;border:none;width:auto;font-size:20px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}}.floating-action-button-container .floating-action-button[aria-expanded=false] .floating-action-button__icon--less,.floating-action-button-container .floating-action-button[aria-expanded=true] .floating-action-button__icon--more,.show-all-button[aria-expanded=false] .show-all-button__icon--less,.show-all-button[aria-expanded=true] .show-all-button__icon--more{display:none}.show-all-button--small{border:none;font-size:14px;line-height:14px;font-weight:500;font-family:"Google Sans",sans-serif;padding-top:10px;padding-bottom:10px;border-radius:8px}.show-all-button--small:active,.show-all-button--small:focus,.show-all-button--small:hover{font-size:14px;line-height:14px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:1280px){.firebase-status__message{max-width:60%}}.firebase-status__issue a{color:inherit}.floating-action-button-container .ctas,.floating-action-button-container devsite-expandable{display:-webkit-flex;display:-ms-flexbox;display:flex}.floating-action-button-container .ctas{gap:20px;margin:0 32px;-webkit-align-items:center;-ms-flex-align:center;align-items:center}@media screen and (min-width:720px){.floating-action-button-container .ctas{gap:32px}}.floating-action-button-container .cta,.floating-action-button-container .cta-fab-button{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.floating-action-button-container .cta-fab-button{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;background-color:transparent;padding:10px!important;border-radius:36px;border:1px solid #4a4a4a;line-height:0;width:60px;height:60px}.floating-action-button-container .cta-fab-button img{width:30px!important;height:30px!important}.floating-action-button-container .cta-fab-button:active,.floating-action-button-container .cta-fab-button:focus,.floating-action-button-container .cta-fab-button:hover{background-color:#fff}.floating-action-button-container .floating-action-button{opacity:1;min-width:60px;background-color:#fff;color:#112537}.floating-action-button-container .floating-action-button,.floating-action-button-container .floating-action-button:active,.floating-action-button-container .floating-action-button:focus,.floating-action-button-container .floating-action-button:hover{border-radius:16px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;font-size:16px;font-weight:700;font-family:"Google Sans",sans-serif;letter-spacing:.15px;padding:32px 10px;text-align:center;white-space:nowrap;line-height:normal;box-shadow:none;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.floating-action-button-container .floating-action-button__icon--less,.homepage-hero__bubble::after{display:none}@media screen and (min-width:720px){.floating-action-button-container .floating-action-button__icon--less{display:inline}}.floating-action-button-container .material-icons.floating-action-button__icon--less,.floating-action-button-container .material-icons.floating-action-button__icon--more{-webkit-transform:rotate(-90deg);transform:rotate(-90deg);font-size:24px;height:24px;width:24px}.floating-action-button-container .material-icons.floating-action-button__icon--event{top:0;font-size:24px;height:24px;width:24px}.banner-container{margin:0}.content-wrapper{margin:0;padding:0;max-width:100%}.homepage-hero,.homepage-hero__body{display:-webkit-flex;display:-ms-flexbox;display:flex}.homepage-hero{position:relative}.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__body{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.homepage-hero__heading,.homepage-hero__subtitle{text-align:center;color:#fff}.homepage-hero__heading{font:700 45px/65px "Google Sans",sans-serif;padding:60px 0;position:relative;z-index:0}@media screen and (min-width:1000px){.homepage-hero__heading{padding-top:120px;font:700 75px/100px "Google Sans",sans-serif}}.homepage-hero__heading video{position:relative;z-index:-1;vertical-align:middle;width:100px;height:100px;margin:-100px -10px}@media screen and (min-width:1000px){.homepage-hero__heading video{width:200px;height:200px;margin:-200px -20px}}.homepage-hero__bubble{padding:0}@media screen and (min-width:1000px){.homepage-hero__bubble::after{display:inline-block;content:url(../images/homepage/home-icon-build.png);-webkit-transform:scale(1) translate(0,25%);transform:scale(1) translate(0,25%)}}.homepage-hero__subtitle{font:400 18px/24px "Google Sans",sans-serif;padding-bottom:40px;word-wrap:balance}@media screen and (min-width:720px){.homepage-hero__subtitle{font:400 35px/45px "Google Sans",sans-serif;max-width:900px}}.homepage-hero h1,.homepage-hero h3,.homepage-hero__ctas{position:relative}.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,.three-column__column--dynamic .devsite-card-buttons a img{margin-right:8px}.homepage-hero__content{display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;height:100%;margin:0 auto;max-width:1480px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding-inline:40px;gap:64px}@media screen and (min-width:1000px){.homepage-hero__content{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.homepage-hero__ctas{font:700 18px/24px "Google Sans",sans-serif;-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;gap:30px}@media screen and (min-width:720px){.homepage-hero__ctas{padding-bottom:60px}}.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:nth-child(n+3){margin-left:20px}.homepage-hero__ctas .cta-button{margin:0 30px 0 0}.homepage-hero__ctas .cta-mobile-hidden{display:block}}.homepage-hero__illo,.landing-header__text br{display:none}@media screen and (min-width:1280px){.homepage-hero__illo{display:inline;position:absolute;left:calc(37% + 10px);top:6%}.homepage-hero__illo img{-webkit-transform:scale(.75);transform:scale(.75)}}.homepage-hero__image-desktop{display:none;width:100%}@media screen and (min-width:1000px){.homepage-hero__image-desktop{display:block;-webkit-transform:scale(1.25);transform:scale(1.25)}}@media screen and (min-width:1280px){.homepage-hero__image-desktop{display:block;-webkit-transform:scale(1.25) translateY(-50px);transform:scale(1.25) translateY(-50px)}}.homepage-hero__image-mobile{display:block}@media screen and (min-width:1000px){.homepage-hero__image-mobile{display:none}}body,html{background:0}@media screen and (min-width:600px){.grow-hero-padding{margin-top:100px}}@media screen and (min-width:1000px){.grow-hero-padding{margin-top:250px}}.storiespage-hero{opacity:1;margin-left:auto;margin-right:auto;max-width:1352px;width:100%}.storiespage-hero__content{padding-top:160px}@media screen and (min-width:600px){.storiespage-hero__content{padding-top:90px}}@media screen and (min-width:1000px){.storiespage-hero__content{padding-top:0;margin-top:260px;margin-bottom:130px}}.storiespage-hero__hero{z-index:-1;position:absolute;top:-460px;-webkit-transform:scale(.5) translateX(-70%);transform:scale(.5) translateX(-70%)}@media screen and (min-width:400px){.storiespage-hero__hero{top:-470px;-webkit-transform:scale(.5) translateX(-58%);transform:scale(.5) translateX(-58%)}}@media screen and (min-width:600px){.storiespage-hero__hero{top:-460px;-webkit-transform:scale(.6) translateX(-38%);transform:scale(.6) translateX(-38%)}}@media screen and (min-width:1000px){.storiespage-hero__hero{top:-470px;-webkit-transform:scale(.7) translateX(-8%);transform:scale(.7) translateX(-8%)}}@media screen and (min-width:1280px){.storiespage-hero__hero{top:-470px;-webkit-transform:scale(1) translateX(8%);transform:scale(1) translateX(8%)}}.storiespage-hero__video{position:absolute;top:283px;left:734px;-webkit-transform:scale(.6);transform:scale(.6)}.stories-header h1{max-width:150px;margin:auto}@media screen and (min-width:400px){.stories-header h1{max-width:100%}}@media screen and (min-width:600px){.stories-header h1{max-width:150px;margin:0}}@media screen and (min-width:1000px){.stories-header__content{padding:0 90px 0 20px}}.stories-header__prefix-heading{margin-top:20px;font-size:28px;font-weight:500;color:#fff;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;gap:5px;content:""}@media screen and (min-width:600px){.stories-header__prefix-heading{font:400 24px/26px "Google Sans",sans-serif;font-weight:500}}@media screen and (min-width:1000px){.stories-header__prefix-heading{font-size:54px;line-height:48px;gap:12px;-webkit-align-items:baseline;-ms-flex-align:baseline;align-items:baseline}}.stories-header__prefix-heading::before{display:inline-block;content:'';background-image:url(../images/icons/firebase-logo-icon.svg);background-repeat:no-repeat;background-position:center;background-size:contain;width:32px;height:32px}@media screen and (min-width:1000px){.stories-header__prefix-heading::before{width:54px;height:54px}}.landing-header .three-column__column .no-link,.landing-header h1,.landing-header h4,.landing-header h5,.stories-header__subheading,.three-column__column .landing-header .no-link{color:#fff}.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:#fbbc04}.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:1480px;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}}.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:500 20px/26px "Google Sans",sans-serif;line-height:28px;color:#eceff1}@media screen and (min-width:720px){.landing-header__back>.cta-link{font:500 24px/26px "Google Sans",sans-serif}}@media screen and (min-width:1000px){.landing-header--case-study .landing-header__inner-wrapper{padding-left:40px}}.landing-header--case-study .landing-header__ctas,.logo-row__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:1000px){.landing-header--case-study .landing-header__ctas{-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}}.landing-header--case-study .landing-header__ctas>.cta-link{margin-top:40px}.color-scheme--dark .darkmode-card a,.color-scheme--dark .darkmode-card span,.color-scheme--dark .three-column__column--dynamic .devsite-card-buttons a--black,.three-column__column--dynamic .devsite-card-buttons a--black{color:#000}.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}@media screen and (min-width:600px){.logo-row--mods .logo-row__container--with-titles .logo-row__logo{max-width:180px}}.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;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;overflow-x:auto;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:24px}@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;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.card .card__subpartial .logo-row__container{padding:0}}.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-justify-content:center;-ms-flex-pack:center;justify-content:center;padding:18px}}.logo-row__container--with-titles{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-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}}.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{-webkit-flex:calc(50% - 24px);-ms-flex:calc(50% - 24px);flex:calc(50% - 24px)}@media screen and (min-width:720px){.logo-row__container--with-titles .logo-row__logo{-webkit-flex:calc(20% - 24px);-ms-flex:calc(20% - 24px);flex:calc(20% - 24px)}}@media screen and (min-width:1280px){.logo-row__container--with-titles .logo-row__logo{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto}}.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;max-width:-webkit-min-content;max-width:-moz-min-content;max-width:min-content}.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}.logo-row__container--with-titles .logo-row__logo img{width:60px}.logo-row__container--with-titles a,.logo-row__container--with-titles span{color:var(--firebase-body-color);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;text-align:center;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;min-height:120px;-webkit-flex-basis:auto;-ms-flex-preferred-size:auto;flex-basis:auto}.logo-row__logo img{max-width:100%;max-height:100%}.logo-row__logo a img{max-width:72px}.logo-row--socials,.logo-row--socials .logo-row__logo{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.logo-row--socials,.logo-row--socials .logo-row__container{-webkit-align-items:center;-ms-flex-align:center;align-items:center}.logo-row--socials .logo-row__container{-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.logo-row--socials .logo-row__logo{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding:0 12px 40px}.logo-row--socials .logo-row__logo a{min-width:auto}.logo-row--socials .logo-row__logo a:focus,.logo-row--socials .logo-row__logo a:hover{-webkit-filter:brightness(75%);filter:brightness(75%)}.logo-row--socials .logo-row__logo img{height:30px;width:30px}.map-directory{margin-bottom:80px;width:100%;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;max-height:880px;transition:all .2s ease-in-out}@media screen and (min-width:720px){.map-directory{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}}.map__group__header{border:none;color:#000;text-align:left;padding:0;font-size:16px;font-weight:400}.map__group__header:focus,.map__group__header:hover{background-color:#fff;border:none;color:#000}.map__group__list{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;max-height:0;overflow:hidden;transition:max-height .2s ease-out}.map__group__list a{color:#000;padding:4px 24px;font-size:14px;line-height:24px}.map__group__list a:hover{font-weight:500}.tsf-directory__region__title{font-weight:500;margin-bottom:8px}.tsf-directory__region{display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.tsf-directory__caret{float:left;padding:6px 6px 0 4px}@media (min-width:800px){.tsf-directory__regions{-ms-flex-direction:row;-webkit-flex-direction:row;flex-direction:row}#directory-map{padding-bottom:56%}}.tsf-directory__map__item a{display:inline-block;font-weight:400;margin:16px 0}.pricing-table .pricing-table-mobile__plan__products__row--notice aside,.tsf-directory__map__item h4,.tsf-directory__map__item p{margin:0}.tsf-directory__map__location{font-size:18px;font-weight:700;margin:8px 0}.devsite-directory__filters{background:#425066}@media (min-width:700px) and (max-width:920px){.devsite-directory__filters,.devsite-directory__filters__dropdowns{-ms-flex-align:center;-webkit-align-items:center;align-items:center;-ms-flex-direction:row;-webkit-flex-direction:row;flex-direction:row}.devsite-directory__filters__search{margin-bottom:0;margin-right:24px;min-width:280px;width:auto}.devsite-directory__filters__dropdowns .devsite-directory__filters__filter:first-child{margin-right:12px}.devsite-directory__filters__dropdowns .devsite-directory__filters__filter:not(:first-child){margin-left:12px}.devsite-directory__filters__dropdowns .devsite-directory__filters__filter{margin-bottom:0}}@media (max-width:420px){.map-directory{max-height:1200px}}.break{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;width:0}.devsite-directory__main--error .devsite-directory__error{display:block}.devsite-directory__error,.devsite-directory__main--content-disabled .devsite-directory__wrapper,.devsite-directory__main--error .devsite-directory__filters,.devsite-directory__main--error .devsite-directory__wrapper{display:none}.devsite-directory__filters{-ms-flex-align:center;-webkit-align-items:center;align-items:center;background:#4285f4;color:#fff;display:-ms-flexbox;display:-webkit-flex;display:flex;padding:24px}.devsite-directory__filters.launchpad-filters{background:#db4437}.devsite-directory__filters.gbg-filters{background:#34a853}.devsite-directory__filters__icon{display:-ms-inline-flexbox;display:-webkit-inline-flex;display:inline-flex}.devsite-directory__filters__icon .material-icons{-ms-flex:0 0 32px;-webkit-flex:0 0 32px;flex:0 0 32px}.devsite-directory__filters__label{text-transform:capitalize;margin-right:8px}.devsite-directory__filters__filter{display:-ms-flexbox;display:-webkit-flex;display:flex;margin-right:24px;position:relative}.devsite-directory__filters__filter:last-of-type{margin:0}.devsite-directory__filters__search{margin-right:24px;position:relative;width:260px}.devsite-directory__filters__search .devsite-directory__filters__search__field{padding-left:52px;width:100%}.devsite-directory__filters__search .devsite-search-image{color:rgba(0,0,0,.54);left:14px;position:absolute;top:6px}.devsite-directory__filters__search .devsite-search-image::before{content:'search'}.devsite-directory__filters__dropdowns{display:-ms-flexbox;display:-webkit-flex;display:flex;margin-left:auto}.devsite-directory__filters__filter-title{border-bottom:1px solid #fff;color:#fff;cursor:pointer;min-width:110px;padding-right:24px}.devsite-directory__filters__filter-title:focus{outline:2px solid #202124;outline-offset:2px;border-radius:2px}.devsite-directory__filters__selected-items::before{color:transparent;content:".";position:relative}.devsite-directory__filters__filter-title .material-icons{position:absolute;right:0}.devsite-directory__filters__input-wrapper{background:#fff;box-shadow:0 2px 4px 0 rgba(0,0,0,.15);display:none;max-height:250px;overflow-y:scroll;padding:5px 10px;position:absolute;right:0;top:calc(100% - 1px);z-index:10}.devsite-directory__filters__input{padding:5px 0;white-space:nowrap}.is-active .devsite-directory__filters__input-wrapper{display:block}.cards__wrapper{display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap}#directory-map{padding-bottom:32%}#directory-map:not(.enabled){display:none}.devsite-directory__info-window__wrapper{max-height:250px;max-width:400px}.devsite-directory__info-window__item{padding:10px 0}.devsite-directory__info-window__item:not(:last-of-type){border-bottom:1px solid rgba(0,0,0,.12)}#directory-map button.gm-ui-hover-effect{right:-11px!important}@media screen and (max-width:1200px){#directory-map{padding-bottom:40%}}@media screen and (max-width:700px){#directory-map{padding-bottom:100%}}@media only screen and (max-width:920px){.devsite-directory__filters{-ms-flex-align:flex-start;-webkit-align-items:flex-start;align-items:flex-start;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;height:auto;padding:20px}.devsite-directory__filters__icon{padding-bottom:15px}.devsite-directory__filters__search{margin-bottom:20px;margin-right:0;width:100%}.devsite-directory__filters__input-wrapper{width:100%}.devsite-directory__filters__input{white-space:normal}.devsite-directory__filters__dropdowns{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;width:100%}.devsite-directory__filters__filter{margin:0 0 20px;width:100%}.devsite-directory__filters__filter:last-of-type{padding:0}.devsite-directory__filters__filter-title{width:100%}}.mod-detail h3,.mod-detail__strong{font:500 16px/24px "Google Sans",sans-serif;line-height:22px;color:#000}@media screen and (min-width:720px){.mod-detail h3,.mod-detail__strong{font:500 20px/26px "Google Sans",sans-serif;line-height:24px}}.mod-detail h4{font:500 18px/28px "Google Sans",sans-serif}@media screen and (min-width:720px){.mod-detail h4{font:500 16px/24px "Google Sans",sans-serif}}.mod-detail h6{font:400 16px/28px "Google Sans",sans-serif;color:#757575}.mod-detail pre{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:400 13px/20px "Google Sans",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:500 44px/54px "Google Sans",sans-serif;font-size:38px}}.mod-detail__heading p{max-width:440px}.mod-detail__alpha-header{font:500 16px/24px "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:#000;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 ol,.mod-detail__description ul,.mod-detail__plan h3{margin-bottom:16px}.fb-price-row.included .header strong,.mod-detail__plan__link{font-weight:500}.mod-detail__plan__spec{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,.platforms-footer{display:-webkit-flex;display:-ms-flexbox;display:flex}.mod-detail__plan__list{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-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}.mod-detail__description .three-column__column .no-link,.mod-detail__description h1,.mod-detail__description h2,.mod-detail__description h3,.mod-detail__description h4,.mod-detail__description h5,.mod-detail__description h6,.three-column__column .mod-detail__description .no-link{color:#000;text-align:left;margin-bottom:16px;line-height:normal;font-weight:500}.mod-detail__description h1{font-size:24px}.mod-detail__description h2{font-size:22px}.mod-detail__description h3{font-size:20px}.mod-detail__description h4,.pricing-table .pricing-table-mobile__free-products .product-icon__icon>i{font-size:18px}.mod-detail__description .three-column__column .no-link,.mod-detail__description h5,.product-cols li[role=listitem] .product-icon .product-icon__icon .gmp-icons,.product-cols li[role=listitem] .product-icon .product-icon__image .gmp-icons,.three-column__column .mod-detail__description .no-link{font-size:16px}.mod-detail__description h6{font-size:14px}.platforms-footer{-webkit-align-items:center;-ms-flex-align:center;align-items:center;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:400 12px/24px "Google Sans",sans-serif}@media screen and (min-width:1000px){.platforms-footer span{font:400 16px/24px "Google Sans",sans-serif}}.color-scheme--dark .platforms-footer span{color:#fff}.mdl-slider{width:calc(100% - 40px);margin:0 20px;-webkit-tap-highlight-color:rgba(255,255,255,0)}.mdl-slider__background-lower,.mdl-slider__background-upper{-webkit-flex:0;-ms-flex:0;flex:0;position:relative;border:0;padding:0}.mdl-slider__background-flex{position:absolute;height:2px;width:calc(100% - 52px);top:50%;left:0;margin:0 26px;overflow:hidden;border:0;padding:0;-webkit-transform:translate(0,-1px);transform:translate(0,-1px)}.fb-calculator-body .mdl-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:2px;background:0 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;outline:0;padding:0;-webkit-align-self:center;-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center;z-index:1;cursor:pointer;--firebase-pricing-thumb-color:#1967d2;--firebase-pricing-thumb-hover-color:#01579b;text-shadow:none}.fb-calculator-body .mdl-slider .color-scheme--dark{--firebase-pricing-thumb-color:#7ec5ea;--firebase-pricing-thumb-hover-color:#039be5}.fb-calculator-body .mdl-slider::-webkit-slider-thumb{-webkit-appearance:none;width:15px;height:15px;border-radius:50%;border:0;background:var(--firebase-pricing-thumb-color)}.fb-calculator-body .mdl-slider::-webkit-slider-thumb:active,.fb-calculator-body .mdl-slider::-webkit-slider-thumb:hover{background:var(--firebase-pricing-thumb-hover-color)}.fb-calculator-body .mdl-slider::-moz-range-thumb{-webkit-appearance:none;width:15px;height:15px;border-radius:50%;border:0;background:var(--firebase-pricing-thumb-color)}.fb-calculator-body .mdl-slider::-moz-range-thumb:active,.fb-calculator-body .mdl-slider::-moz-range-thumb:hover{background:var(--firebase-pricing-thumb-hover-color)}.fb-calculator-body .mdl-slider:focus:not(:active)::-webkit-slider-thumb{background:var(--firebase-pricing-thumb-color)}.fb-calculator-body .mdl-slider:focus:not(:active)::-moz-range-thumb{background:var(--firebase-pricing-thumb-color)}.fb-calculator-body .mdl-slider:active::-webkit-slider-thumb{border:none}.fb-calculator-body .mdl-slider:active::-moz-range-thumb{border:none}.fb-calculator-body .mdl-slider::-ms-fill-lower,.fb-calculator-body .mdl-slider::-ms-thumb,.fb-calculator-body .mdl-slider:active::-ms-thumb,.fb-calculator-body .mdl-slider:focus:not(:active):-ms-thumb{background:var(--firebase-pricing-thumb-color)}.firesite-feature-icon{display:inline-block;font-size:46px;width:1em;height:1em;border-radius:50%;position:relative;overflow:hidden}.firesite-feature-icon .product-icon .product-icon__image{margin:0;width:100%;height:100%}.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}.color-scheme--dark .firesite-feature-icon .gmp-icons{color:#112537}.mdl-tooltip{-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:top center;transform-origin:top center;z-index:999;background:rgba(97,97,97,.9);border-radius:2px;color:#fff;display:inline-block;font-size:10px;font-weight:500;line-height:14px;max-width:170px;position:fixed;padding:8px;text-align:center}.color-scheme--dark .mdl-tooltip{background:#112537}.mdl-tooltip.is-active{-webkit-transform:scale(1);transform:scale(1);transition:transform 50ms cubic-bezier(0,0,.2,1);transition:transform 50ms cubic-bezier(0,0,.2,1),-webkit-transform 50ms cubic-bezier(0,0,.2,1)}.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 "Google Sans",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;display:-webkit-flex;display:-ms-flexbox;display:flex;padding-left:16px}.fb-calculator-item .featuretitle{color:var(--firebase-pricing-header-color);font-family:"Google Sans",sans-serif;font-size:20px;font-weight:500;line-height:26px}.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{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:"Google Sans",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}.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:"Google Sans",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:"Google Sans",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 var(--firebase-border-color);border-bottom:0}.fb-calculator>section:last-of-type{border:1px solid var(--firebase-border-color)}.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}@media only screen and (max-width:900px){.fb-calculator--top-right--mobile{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:transparent;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 .three-column__column .no-link,.fb-calculator-item header h5,.three-column__column .fb-calculator-item header .no-link{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,.fb-calculator-total{font-family:"Google Sans",sans-serif;font-weight:500}.fb-calculator-reset-button{background-color:var(--firebase-button-bg-color);border-radius:8px;cursor:pointer;letter-spacing:.15px;padding:10px 20px;text-align:center;transition:all .2s ease-in-out;color:var(--firebase-button-text-color);font-size:14px;line-height:16px}.fb-calculator-reset-button:hover{background-color:var(--firebase-button-bg-hover-color)}.fb-calculator-total{color:var(--firebase-pricing-header-color);font-size:18px;line-height:26px}.fb-calculator-cell{padding:12px;width:200px;position:relative}.fb-calculator-cell span:first-child{z-index:1}.fb-calculator-cell i{z-index:1}.fb-calculator-cell label{color:var(--firebase-pricing-body-color)}.fb-calculator-total-cell{max-width:275px}.fb-calculator-total-cell.with-header{margin-top:30px}.fb-calculator-cell .mdl-slider-container,.fb-calculator-cell .mdl-slider__background-flex{background:0 0;display:-webkit-flex;display:-ms-flexbox;display:flex}.fb-calculator-cell .mdl-slider__container{height:24px;margin-left:20px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;position:relative}.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}.color-scheme--dark .fb-calculator-cell .mdl-slider__container::before{background-color:#41b0e7}.fb-calculator-cell .mdl-slider__background-lower{background:#ffca2b}.fb-calculator-cell .mdl-slider__background-upper{background:#eceff1}.color-scheme--dark .fb-calculator-cell .mdl-slider__background-upper{background:#112537}.fb-calculator-header>div,.fb-calculator-range-cell,.fb-calculator-total-cell{-webkit-flex:1;-ms-flex:1;flex:1}.calculator-header-label{color:var(--firebase-pricing-header-color);font-weight:700;margin-bottom:30px;pointer-events:none}.fb-calculator-cost-cell{-webkit-align-items:center;-ms-flex-align:center;align-items:center;background:#2e3a4d;color:#fff;display:-webkit-flex;display:-ms-flexbox;display:flex;font:500 16px/24px "Google Sans",sans-serif;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:relative;z-index:auto}.fb-calculator-cost-cell.with-header{margin-top:30px}.fb-calculator-header>div{background:#f8f9fa;border:1px solid var(--firebase-border-color);border-bottom:0;overflow:hidden}.color-scheme--dark .fb-calculator-header>div{background:0 0}.fb-calculator-header-label{font-weight:700;padding-bottom:17px}.fb-calculator-header-cell{-webkit-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex;height:70px;padding:0 12px}.fb-calculator-header-billing-cell{background:#2e3a4d;border:1px solid var(--firebase-border-color);color:#fff;font:400 14px/20px "Google Sans",sans-serif;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;overflow:hidden;width:200px}.color-scheme--dark .fb-calculator-header-billing-cell{background:#0c1a28}.fb-calculator-header-cell .label{color:#fff;font-family:"Google Sans",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 "Google Sans",sans-serif;padding:36px 12px;text-align:center;width:200px;border-top:1px solid var(--firebase-border-color);border-left:1px solid var(--firebase-border-color);z-index:1}.color-scheme--dark .fb-calculator-grandtotal-cell{background:#0c1a28}.fb-calculator-grandtotal-cell .label,.fb-calculator-summary{font-family:"Google Sans",sans-serif;font-size:14px;line-height:20px}.fb-calculator-grandtotal-cell .label{color:#fff;text-align:center}.fb-calculator-summary{color:var(--firebase-pricing-body-color)}.fb-calculator-item-cost{display:none}.firebase-feature .expand-control.showalways{color:var(--firebase-pricing-body-color);font-size:16px;line-height:24px;margin:20px 0;padding-right:44px;border-bottom:1px solid #cfd8dc}.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:"Google Sans",sans-serif}.fb-quantity-wrapper,.fb-quantity-wrapper input{background:0 0;color:var(--firebase-pricing-header-color);font-family:"Google Sans",sans-serif;font-size:18px;font-weight:500;line-height:26px;border:none}.fb-quantity-wrapper{display:inline-block;padding:0 5px;border-radius:4px;border-width:2px;border-color:transparent;border-style:solid;position:relative;left:-5px}.fb-quantity-wrapper:focus-within:not(.active),.fb-quantity-wrapper:hover:not(.active){padding:1px 6px;border:1px solid #979797}.fb-quantity-wrapper.active{border-color:#039be5}.fb-quantity-wrapper input{text-align:left;outline:none;margin-right:-10px}body.fb-calculator-body{padding:0!important}.fb-calculator-footnote{border-top:none;color:var(--firebase-pricing-body-color);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;border-left:1px solid var(--firebase-border-color)}.color-scheme--dark .fb-calculator-cost-cell:not(:last-of-type)::after{background:#0c1a28}.fb-calculator-cost-cell.cost-border::after{border-top:1px solid var(--firebase-border-color)}}@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 var(--firebase-border-color);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 "Google Sans",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::before{content:"expand_more";transition:all .2s ease-in-out}.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:#f8f9fa;width:auto}.color-scheme--dark .fb-calculator-header-billing-cell{background-color:transparent}.fb-calculator:not(.fb-calculator-free) .fb-calculator-header-billing-cell{display:none}.fb-calculator-header-cell{padding:12px}.fb-calculator-header-cell.fb-calculator-header-billing-cell .label{color:var(--firebase-pricing-header-color)}}@media only screen and (max-width:720px){.firebase-pricing-page .devsite-main-content{padding:0 16px}}.pricing-table{--firebase-products-color:#f5f7f8;--firebase-spark-color:#039be5;--firebase-blaze-color:#2e3a4d}.color-scheme--dark .pricing-table{--firebase-products-color:transparent;--firebase-spark-color:#0e4c97;--firebase-blaze-color:#0c1a28}.pricing-table .cta-button{padding-left:30px;padding-right:30px}@media screen and (min-width:1183px){.pricing-table .product-icon__image{display:none}}.pricing-table td,.pricing-table th{border-left:1px solid var(--firebase-border-color);background-color:transparent}.pricing-table .header-bold .pricing-table__body__cell{font-weight:700;color:var(--firebase-pricing-header-color)}.pricing-table__body{border-right:1px solid var(--firebase-border-color);border-right-width:2px}.pricing-table__table{border-radius:8px;overflow:clip;display:none}@media screen and (min-width:1183px){.pricing-table__table{display:block}}.pricing-table__footer__cell,.pricing-table__header__cell{padding:20px;vertical-align:top;width:24%}.pricing-table__footer__cell__title,.pricing-table__header__cell__title{font:600 24px/28px "Google Sans",sans-serif;font-weight:500}@media screen and (min-width:1440px){.pricing-table__footer__cell__title,.pricing-table__header__cell__title{font-size:36px;line-height:46px}}.pricing-table__footer__cell__plan-description,.pricing-table__header__cell__plan-description{font-size:14px;line-height:20px;font-weight:400;font-family:"Google Sans",sans-serif;margin-bottom:8px}.pricing-table__footer__cell__plan-description .link--white,.pricing-table__header__cell__plan-description .link--white{text-decoration:underline}.color-scheme--dark .pricing-table__footer__cell__plan-description .link--white,.color-scheme--dark .pricing-table__header__cell__plan-description .link--white{color:var(--firebase-link-color)}.pricing-table__footer__cell__disclaimer,.pricing-table__header__cell__disclaimer{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-top:24px;font-size:14px;gap:4px;color:#fff}@media screen and (min-width:1183px){.pricing-table__footer__cell__disclaimer,.pricing-table__header__cell__disclaimer{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;font-size:12px;margin-top:8px}}.pricing-table__footer__cell__disclaimer .material-icons,.pricing-table__header__cell__disclaimer .material-icons{font-size:24px;margin-bottom:12px;-webkit-align-self:center;-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center}@media screen and (min-width:1183px){.pricing-table__footer__cell__disclaimer .material-icons,.pricing-table__header__cell__disclaimer .material-icons{font-size:12px;margin-bottom:0}}.pricing-table__footer__cell--products,.pricing-table__header__cell--products{border:1px solid var(--firebase-border-color);background-color:var(--firebase-products-color)}.color-scheme--dark .pricing-table .material-icons.icon-green,.color-scheme--dark .pricing-table .material-icons.icon-red,.pricing-table__footer__cell--blaze,.pricing-table__footer__cell--blaze .three-column__column .no-link,.pricing-table__footer__cell--blaze h5,.pricing-table__footer__cell--spark,.pricing-table__footer__cell--spark .three-column__column .no-link,.pricing-table__footer__cell--spark h5,.pricing-table__header__cell--blaze,.pricing-table__header__cell--blaze .three-column__column .no-link,.pricing-table__header__cell--blaze h5,.pricing-table__header__cell--spark,.pricing-table__header__cell--spark .three-column__column .no-link,.pricing-table__header__cell--spark h5,.three-column__column .pricing-table__footer__cell--blaze .no-link,.three-column__column .pricing-table__footer__cell--spark .no-link,.three-column__column .pricing-table__header__cell--blaze .no-link,.three-column__column .pricing-table__header__cell--spark .no-link{color:#fff}.pricing-table__footer__cell--spark,.pricing-table__header__cell--spark{border:1px solid var(--firebase-spark-color);background-color:var(--firebase-spark-color)!important}.pricing-table__footer__cell--blaze,.pricing-table__header__cell--blaze{border:1px solid var(--firebase-blaze-color);background-color:var(--firebase-blaze-color)!important}.pricing-table__body__cell{padding:16px 24px}.pricing-table__body__cell--banner{text-align:center;border:1px solid var(--firebase-border-color)}.pricing-table__body__cell__subtitle{font-size:12px;line-height:18px;font-weight:400;font-family:"Google Sans",sans-serif;font-style:italic;text-wrap:wrap}.pricing-table__body__row--free .pricing-table__body__cell{vertical-align:middle}.pricing-table__body__row--free .pricing-table__body__cell__item{text-align:center}.pricing-table__body__row--product,.pricing-table__body__row--product-name{border-bottom:transparent}.pricing-table__body__row--product .pricing-table__body__cell{padding:8px 24px}.pricing-table__body__row--product.last-feature-row td{padding-bottom:32px;border-bottom:1px solid var(--firebase-border-color)}.pricing-table__body__row--gemini-in-firebase .pricing-table__body__cell .banner{text-align:left;padding:24px 12px;background-color:#d2e3fc;color:rgba(0,0,0,.67)}.color-scheme--dark .pricing-table__body__row--cloud-storage .pricing-table__body__cell .banner a,.color-scheme--dark .pricing-table__body__row--data-connect .pricing-table__body__cell--blaze .banner a,.color-scheme--dark .pricing-table__body__row--gemini-in-firebase .pricing-table__body__cell .banner a{color:#0e4c97}.pricing-table__body__row--data-connect .pricing-table__body__cell--blaze .banner{padding:12px;background-color:#d2e3fc;color:rgba(0,0,0,.67)}.pricing-table__body__row--cloud-storage .pricing-table__body__cell .banner{text-align:left;font-size:14px;line-height:16px;font-weight:400;font-family:"Google Sans",sans-serif;padding:8px;background-color:#d2e3fc;color:rgba(0,0,0,.67)}.pricing-table__body__row--cloud-storage .pricing-table__body__cell .banner code{font-weight:400;color:rgba(0,0,0,.67)}.pricing-table .firesite-tooltip__container{vertical-align:top}.pricing-table .material-icons{vertical-align:middle}.pricing-table .material-icons.icon-green{color:#02bfa6}.pricing-table .material-icons.icon-red{color:#f92953}.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 .pricing-table__header__cell__rule{border-color:#fff;margin:20px 0}.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__plan{background-color:transparent;margin-bottom:32px;border:1px solid var(--firebase-border-color);border-radius:8px;overflow:hidden}.pricing-table .pricing-table-mobile__plan__name,.pricing-table .pricing-table-mobile__plan__name>h5,.pricing-table .three-column__column .pricing-table-mobile__plan__name>.no-link,.three-column__column .pricing-table .pricing-table-mobile__plan__name>.no-link{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--spark{background-color:var(--firebase-spark-color)}.pricing-table .pricing-table-mobile__plan__header--blaze{background-color:var(--firebase-blaze-color)}.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 var(--firebase-border-color)}.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:var(--firebase-pricing-body-color);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--notice{padding:0}.pricing-table .pricing-table-mobile__plan__products__row--fee-label{padding:auto}.pricing-table .pricing-table-mobile__plan__products__row--disclaimer,.three-column__wrapper--extra .three-column__column__description devsite-pagination{-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:var(--firebase-pricing-body-color);position:relative;text-align:right}.pricing-table .pricing-table-mobile__plan__products__row__item__header{font:500 16px/20px "Google Sans",sans-serif;-webkit-align-items:center;-ms-flex-align:center;align-items:center;color:var(--firebase-pricing-body-color);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:500 20px/26px "Google Sans",sans-serif;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,.pricing-table .pricing-table-mobile__plan__products__row__item__header .product-icon__image{height:40px;width:40px}@media screen and (min-width:600px){.pricing-table .pricing-table-mobile__plan__products__row__item__header .product-icon__icon,.pricing-table .pricing-table-mobile__plan__products__row__item__header .product-icon__image{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:var(--firebase-spark-color)}.pricing-table .pricing-table-mobile__plan__cta--blaze{background-color:var(--firebase-blaze-color)}.pricing-table div[aria-expanded=true] .arrow{opacity:0;width:0;visibility:collapse}.pricing-table div[aria-expanded=false] .arrow,.pricing-table div[aria-expanded=true] .expanded{opacity:1;padding-top:10px;width:24px;visibility:visible}.pricing-table div[aria-expanded=false] .expanded{opacity:0;width:0;visibility:collapse}.pricing-table .devsite-article-body .arrow{cursor:pointer!important}@media screen and (min-width:1000px){.pricing-table .hide-title-mobile{display:none}}.product-grid-integrations{margin-top:28px;display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;row-gap:40px;-webkit-column-gap:84px;-moz-column-gap:84px;column-gap:84px}@media screen and (min-width:720px){.product-grid-integrations{margin-top:60px}}@media screen and (min-width:1280px){.product-grid-integrations{margin-top:80px}}@media screen and (min-width:720px){.product-grid-integrations{-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr}}@media screen and (min-width:1000px){.product-grid-integrations{-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr)}}.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:400 14px/20px "Google Sans",sans-serif;color:#174ea6;margin:0}.product-grid-integrations__sub-label{font:400 14px/20px "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-weight:400;font-size:12px;line-height:1;margin-right:8px;padding:4px 6px}.product-grid-integrations__product{position:relative;padding-bottom:44px}@media screen and (min-width:720px){.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:1000px){.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;margin-bottom:40px}.color-scheme--dark .product-card-grid .product-card-grid__product-hero{border:none}.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:500 34px/64px "Google Sans",sans-serif}.product-card-grid .product-card-grid__product-hero p{padding:0;font:400 20px/28px "Google Sans",sans-serif;text-align:left}.product-card-grid .product-card-grid__product-hero a{font:500 20px/40px "Google Sans",sans-serif}.product-card-grid .product-card-grid__product-hero .product-icon-large .product-icon__icon{top:150px;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-grid__description{max-width:275px}.product-card-grid .product-card-grid__product-hero .product-card-header-firestore{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-firestore_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-firestore{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-auth{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-auth_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-auth{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-realtime-db{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-realtime-db_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-realtime-db{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-ml{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-ml_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-ml{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-functions{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-functions_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-functions{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-storage{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-storage_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-storage{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-hosting{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-hosting_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-hosting{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-remote-config{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-remote-config_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-remote-config{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-cloud-msg{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-cloud-msg_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-cloud-msg{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-analytics{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-analytics_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-analytics{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-test-lab{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-test-lab_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-test-lab{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-app-distro{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-app-distro_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-app-distro{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-perf{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-perf_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-perf{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-predict{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-predict_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-predict{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-ab{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-ab_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-ab{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-inapp-messaging{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-inapp-messaging_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-inapp-messaging{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-dynamic-links{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-dynamic-links_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-dynamic-links{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-crashlytics{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-crashlytics_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-crashlytics{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-mods{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-mods_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-mods{background-size:auto 95%}}@media screen and (min-width:1000px){.product-card-grid .product-card-grid__product-hero .product-card-header-app_check{background:var(--firebase-product-feature-color) url(../images/products/product-card-bgs/featured-app_check_2x.png) right center no-repeat;background-size:auto 75%}}@media screen and (min-width:1000px) and (min-width:1280px){.product-card-grid .product-card-grid__product-hero .product-card-header-app_check{background-size:auto 95%}}.product-card-grid__product{width:100%;margin-top:25px;margin-bottom:25px;min-height:330px}.product-card-grid__product .product-card-grid__title a{line-height:24px}.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:400 10px/16px "Google Sans",sans-serif}.product-card-grid__description p{margin-bottom:-16px}@media screen and (min-width:720px){.product-card-grid__description{font:400 16px/28px "Google Sans",sans-serif;margin-top:0}}.product-card-grid .card__header{grid-column:1/-1}.product-card-grid .card__header .card__subheading{margin-bottom:0}.product-card-grid,.product-grid{text-align:center;margin-top:28px;display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;row-gap:40px;-webkit-column-gap:24px;-moz-column-gap:24px;column-gap:24px}@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}}@media screen and (min-width:720px){.product-card-grid,.product-grid{-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr)}}.product-card-grid__titles,.product-grid__titles{margin:70px 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}.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:"Google Sans",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-weight:400;font-size:12px;line-height:1;margin-right:8px;padding:4px 6px}.product-card-grid__product,.product-grid__product{border:1px solid var(--firebase-border-color);position:relative;border-radius:8px;padding-bottom:0}.product-card-grid__product .product-icon-large .product-icon__icon,.product-grid__product .product-icon-large .product-icon__icon{top:-60px}.color-scheme--dark .product-card-grid__product .product-icon-large .product-icon__icon,.color-scheme--dark .product-grid__product .product-icon-large .product-icon__icon{border:none}.product-card-grid__product:hover,.product-grid__product:hover{background:var(--firebase-product-card-hover-color);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:1000px){.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(../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(../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(../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(../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(../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(../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(../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(../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(../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(../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(../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(../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(../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(../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(../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(../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(../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(../images/products/product-card-bgs/crashlytics_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-mods,.product-grid__product .product-card-header-mods{background:#7b1fa2 url(../images/products/product-card-bgs/mods_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-app_check,.product-grid__product .product-card-header-app_check{background:#2a353c url(../images/products/product-card-bgs/app_check_2x.png) top center/cover no-repeat}.product-card-grid__product .product-card-header-blue,.product-grid__product .product-card-header-blue{background:#4285f4}.product-card-grid__product .product-card-header-orange,.product-grid__product .product-card-header-orange{background:#fbbc04}.product-card-grid__product .product-card-header-teal,.product-grid__product .product-card-header-teal{background:#46bdc6}.product-card-grid__product .product-card-header-green,.product-grid__product .product-card-header-green{background:#8bc34a}.product-card-grid__product .product-card-header-sky-blue,.product-grid__product .product-card-header-sky-blue{background:#039be5}.product-card-grid__product .product-card-header-fuchsia,.product-grid__product .product-card-header-fuchsia{background:#ab54ba}.product-card-grid__product .product-card-header-violet,.product-grid__product .product-card-header-violet{background:#34449f}.product-card-grid__product .product-card-header-lavender,.product-grid__product .product-card-header-lavender{background:#7e57c2}.product-card-grid__product .product-card-header-periwinkle-blue,.product-grid__product .product-card-header-periwinkle-blue{background:#5c6bc0}.product-card-grid__product .product-card-header-pink,.product-grid__product .product-card-header-pink{background:#d85380}.product-card-grid__product .product-card-header-yellow-orange,.product-grid__product .product-card-header-yellow-orange{background:#ffa000}.product-card-grid__product .product-card-header-yellow,.product-grid__product .product-card-header-yellow{background:#fbbc04}.product-card-grid__product .product-card-header-deep-orange,.product-grid__product .product-card-header-deep-orange{background:#ff6d01}.product-card-grid__product .product-card-header-dark-teal,.product-grid__product .product-card-header-dark-teal{background:#00897b}.product-card-grid__product .product-card-header-night-blue,.product-grid__product .product-card-header-night-blue{background:#00105c}.product-card-grid__product .product-card-header-slate-grey,.product-grid__product .product-card-header-slate-grey{background:#2a363c}.product-card-grid__product .product-card-header-coral,.product-grid__product .product-card-header-coral{background:#ff8a65}.product-card-grid__product .product-card-header-stories-yellow,.product-grid__product .product-card-header-stories-yellow{background:#ffc700}.product-card-grid__product .product-card-header-stories-orange,.product-grid__product .product-card-header-stories-orange{background:#ff7300}.product-card-grid__product .product-card-header-stories-salmon,.product-grid__product .product-card-header-stories-salmon{background:#ff8a64}.product-card-grid__product .product-card-header-stories-blue,.product-grid__product .product-card-header-stories-blue{background:#4285f5}.color-scheme--dark .product-card-grid__product .product-card-header,.color-scheme--dark .product-grid__product .product-card-header{opacity:.8}.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;padding:0 12px}.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}.product-card-grid--2up{display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;row-gap:40px;-webkit-column-gap:24px;-moz-column-gap:24px;column-gap:24px}@media screen and (min-width:720px){.product-card-grid--2up{-ms-grid-columns:(1fr)[2];grid-template-columns:repeat(2,1fr)}}.product-card-grid--2up .card__header,.product-card-grid--center .card__header{width:100%;text-align:center;color:#424242}.product-card-grid--center{display:-webkit-flex;display:-ms-flexbox;display:flex}@media screen and (min-width:1280px){.product-card-grid--center{padding-left:16%;padding-right:16%}.product-grid__product__end{margin-right:0}}.product-grid__product-hero{margin-right:0;-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width:720px){.product-grid__product-hero{-ms-grid-column-span:3;-ms-grid-column:1;grid-column:1/span 3}}@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}}.product-card-row-wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;max-width:1280px;padding:32px;margin-inline:auto;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:1000px){.product-card-row-wrapper{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}@media screen and (min-width:1280px){.product-card-row-wrapper{padding:100px 0}}.extensions-grid p,.product-card-row-wrapper__left-container{-webkit-flex:1;-ms-flex:1;flex:1}@media screen and (min-width:720px){.product-card-row-wrapper__left-container{-webkit-flex:2;-ms-flex:2;flex:2;margin-right:64px}}.product-card-row-wrapper__right-container{display:none}@media screen and (min-width:720px){.product-card-row-wrapper__right-container{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:3;-ms-flex:3;flex:3}}.product-card-row-wrapper__right-container-card-blocks{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}@media screen and (min-width:720px){.product-card-row-wrapper__right-container-card-blocks{display:-ms-grid;display:grid;grid-auto-flow:row;-webkit-column-gap:28px;-moz-column-gap:28px;column-gap:28px;row-gap:46px;-ms-grid-columns:(1fr)[2];grid-template-columns:repeat(2,1fr);grid-auto-rows:1fr}}.product-card-row-wrapper__mobile-carousel li{padding:24px}@media screen and (min-width:720px){.product-card-row-wrapper__mobile-carousel{display:none}}.extensions-grid{margin-top:28px;display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;row-gap:40px;-webkit-column-gap:84px;-moz-column-gap:84px;column-gap:84px}@media screen and (min-width:720px){.extensions-grid{margin-top:60px}}@media screen and (min-width:1280px){.extensions-grid{margin-top:80px}}@media screen and (min-width:720px){.extensions-grid{-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr}}@media screen and (min-width:1000px){.extensions-grid{-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr)}}.extensions-grid__titles{display:-webkit-flex;display:-ms-flexbox;display:flex;gap:6px;margin:4px 0 12px}.extensions-grid__titles .product-grid__subtitle{margin-top:-28px;margin-bottom:14px}.extensions-grid__title{margin:0}.extensions-grid p{padding-right:24px;margin-bottom:0}@media screen and (min-width:720px){.extensions-grid{margin-top:42px}}.extensions-grid__eyebrow{font:400 14px/20px "Google Sans",sans-serif;font-weight:500;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:400 13px/20px "Google Sans",sans-serif;margin:0}.extensions-grid__subtitle a{text-decoration:underline}.extensions-grid__sub-label{font:400 14px/20px "Google Sans",sans-serif;font-weight:500;color:#039be5}.extensions-grid__pay-to-scale{border-radius:2px;border:1px solid #b5c0c5;box-sizing:border-box;color:#b5c0c5;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: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: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--alpha{-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--alpha:not(:nth-of-type(2n)){margin-right:0}.extensions-grid__product--alpha:not(:nth-of-type(3n+2)){margin-right:84px}.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--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 #product-header-nacho{fill:#039be5}.product-header .product-icon__beta,.product-header .three-column__column .no-link,.product-header h5,.three-column__column .product-header .no-link{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__subheading__dark{font-size:20px;color:#757575}.product-header__category{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__content svg{position:absolute;top:-20px;left:0;right:0;width:100%;z-index:-1;max-height:100px}@media screen and (min-width:400px){.product-header__content svg{top:-20px;max-height:80px}}@media screen and (min-width:600px){.product-header__content svg{width:auto;top:12px;left:-20px;max-height:120px}}@media screen and (min-width:720px){.product-header__content svg{left:-12px}}@media screen and (min-width:1000px){.product-header__content svg{top:28px;left:12px;max-height:none}}.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;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:12px}@media screen and (min-width:600px){.product-header__ctas{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:20px}}@media screen and (min-width:1000px){.product-header__ctas{gap:30px}}.product-header-large .product-header__wrapper{margin-bottom:-84px;padding-bottom:0;padding-top:40px}.product-header-large .product-header__wrapper .product-header__illo img{top:-25px;right:-50px}@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-header-new{margin:0 -20px;text-align:center}@media screen and (min-width:1000px){.product-header-new{text-align:left;margin:0 -80px}}.product-header-new__hero-image{position:relative}.product-header-new br{display:none}@media screen and (min-width:1000px){.product-header-new br{display:inline}}.product-header-new h1{font:700 45px/55px "Google Sans",sans-serif}@media screen and (min-width:720px){.product-header-new h1{font:700 65px/75px "Google Sans",sans-serif;margin-bottom:36px}}.product-header-new__body{font:500 28px/36px "Google Sans",sans-serif;font-weight:400;opacity:66%;margin-bottom:36px}.product-header-new__category{margin-bottom:20px}.product-header-new__wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin:0 auto;max-width:1440px;padding:0 20px 36px;position:relative}@media screen and (min-width:600px){.product-header-new__wrapper{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}@media screen and (min-width:720px){.product-header-new__wrapper{padding-bottom:120px}}@media screen and (min-width:1000px){.product-header-new__wrapper{padding:120px 80px}}.product-header-new__content{padding:32px}.product-header-new__content,.product-header-new__illo{-webkit-flex:1;-ms-flex:1;flex:1}@media screen and (min-width:1280px){.product-header-new__illo img{margin:-50px auto auto}}.product-header-new__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-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:12px}@media screen and (min-width:600px){.product-header-new__ctas{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:20px}}@media screen and (min-width:1000px){.product-header-new__ctas{gap:30px}}.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}}.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:var(--firebase-body-color);-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}.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}@media screen and (min-width:720px){.product-row__media--right{-webkit-order:1;-ms-flex-order:1;order:1;padding-right:40px}}.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--chip .product-icon__link .product-icon__icon{color:var(--firebase-link-color);width:20px}.product-row__products-row .product-icon--chip .product-icon__name{font:500 14px/18px "Google Sans",sans-serif;font-weight:400}.product-row__speaker,.product-row__speaker-ctas{display:-webkit-flex;display:-ms-flexbox;display:flex}.product-row__speaker{-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.product-row__speaker-ctas{width:100%;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;row-gap:10px}.product-row__ctas a{width:43%;margin-right:20px;margin-top:30px}.product-row__ctas .cta-button--small{padding:10px}.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{margin:0}.devsite-article .three-column__column--dynamic .devsite-card-buttons a--with-icon>i,.product-row__footnote--with-icon img,.three-column__column--dynamic .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{-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;max-width:350px}@media screen and (max-width:1000px){.games-product-row .product-row__products-row{max-width:175px}}.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:500 12px/18px "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:500 20px/26px "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}}@media screen and (min-width:600px){.games-product-row.games-hero .product-row__text .three-column__column .no-link,.games-product-row.games-hero .product-row__text h5,.three-column__column .games-product-row.games-hero .product-row__text .no-link{font:500 36px/45px "Google Sans",sans-serif}}@media screen and (min-width:1000px){.games-product-row.games-hero .product-row__text .three-column__column .no-link,.games-product-row.games-hero .product-row__text h5,.three-column__column .games-product-row.games-hero .product-row__text .no-link{font:500 52px/60px "Google Sans",sans-serif;line-height:62px}}.games-product-row.games-hero .product-row__text p{font:400 17px/23px "Google Sans",sans-serif}@media screen and (min-width:1000px){.games-product-row.games-hero .product-row__text p{font:400 20px/28px "Google Sans",sans-serif}}.products-footer{background:var(--firebase-bg-white-color)}.products-footer-wrapper{display:none}@media screen and (min-width:1000px){.products-footer-wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;padding:80px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}@media screen and (min-width:1280px){.products-footer-wrapper{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;max-width:1440px;margin:auto;width:100%}}.products-footer-wrapper__left-container{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex:1;-ms-flex:1;flex:1}@media screen and (min-width:1000px){.products-footer-wrapper__left-container{min-width:360px}}.products-footer-wrapper__left-container-title{font:700 34px/44px "Google Sans",sans-serif}.products-footer-wrapper__right-container{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex:3;-ms-flex:3;flex:3;-webkit-justify-content:space-around;-ms-flex-pack:distribute;justify-content:space-around}.products-footer-wrapper ul{list-style:none}.products-footer-wrapper__linkbox{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.products-footer-wrapper__linkbox-heading{text-transform:uppercase;font:400 20px/24px "JetBrains Mono",monospace}.products-footer-wrapper__linkbox-list{display:-ms-grid;display:grid;grid-auto-flow:column;-ms-grid-rows:(1fr)[7];grid-template-rows:repeat(7,1fr);grid-auto-columns:1fr;padding:0}@media screen and (min-width:1000px){.products-footer-wrapper__linkbox-list{-webkit-column-gap:32px;-moz-column-gap:32px;column-gap:32px}}.products-footer-wrapper__linkbox a{font:400 16px/24px "Google Sans",sans-serif;color:#000;margin:6px 10px 6px 0}.color-scheme--dark .products-footer-wrapper__linkbox a,.three-column__column--dynamic .devsite-card-buttons a--white{color:#fff}.products-footer-wrapper__secondary-cta{margin-top:16px}.products-footer-wrapper__secondary-cta a{font-weight:500}.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-color:var(--firebase-product-card-bg-color);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%}.color-scheme--dark .product-cols .product-cols__header{border:1px solid rgba(255,255,255,.2)}}@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:var(--firebase-product-card-hover-color);box-shadow:0 6px 10px 0 rgba(60,64,67,.15),0 2px 3px 0 rgba(60,64,67,.3)}.color-scheme--dark .product-cols .product-cols__header:hover{border:1px solid transparent;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15)}}.product-cols .product-cols__heading,.product-cols .product-cols__heading .three-column__column .no-link,.product-cols .product-cols__heading h5,.three-column__column .product-cols .product-cols__heading .no-link{margin:18px 0 12px;font:500 24px/30px "Google Sans",sans-serif}@media screen and (min-width:600px){.product-cols .product-cols__heading,.product-cols .product-cols__heading .three-column__column .no-link,.product-cols .product-cols__heading h5,.three-column__column .product-cols .product-cols__heading .no-link{margin:18px 0 24px;font:500 30px/30px "Google Sans",sans-serif}}@media screen and (min-width:720px){.product-cols .product-cols__heading,.product-cols .product-cols__heading .three-column__column .no-link,.product-cols .product-cols__heading h5,.three-column__column .product-cols .product-cols__heading .no-link{text-align:center;margin-top:28px}}.product-cols .product-cols__subheading{font:300 12px/16px "Google Sans",sans-serif;min-height:20px}@media screen and (min-width:720px){.product-cols .product-cols__subheading{font:300 18px/28px "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) .three-column__column .no-link,.product-cols .product-cols__col:nth-child(2) h5,.three-column__column .product-cols .product-cols__col:nth-child(2) .no-link{width:110%}}.product-cols .product-cols__col:nth-of-type(3) .product-cols__spacer{visibility:hidden;display:none;opacity:0}.product-cols .product-cols__col--summit-card{-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto}.product-cols .product-cols__col--summit-card .product-cols__header{color:#424242;border-radius:16px;margin:16px 0}.product-cols .product-cols__col--summit-card .product-cols__spacer{display:none}.product-cols .product-cols__col--summit-card .three-column__column .no-link,.product-cols .product-cols__col--summit-card h5,.three-column__column .product-cols .product-cols__col--summit-card .no-link{color:#424242}.product-cols .product-cols__col--yellow .product-cols__header{background-color:#ffca28}.product-cols .product-cols__col--coral .product-cols__header{background-color:#ff8a65}.product-cols .product-cols__col--amber .product-cols__header{background-color:#ffa000}.product-cols .product-cols__col--inactive .product-cols__header{background-color:#d8d8d8;box-shadow:none}@media screen and (min-width:720px){.product-cols .product-cols__col--inactive .product-cols__header img,.product-cols .product-cols__col--inactive .product-cols__header svg{width:100%;max-width:211px}}@media screen and (min-width:1280px){.product-cols .product-cols__col--inactive .product-cols__header:hover{background-color:#d8d8d8;cursor:default}}.product-cols .product-cols__col--inactive .product-cols__header .three-column__column .no-link,.product-cols .product-cols__col--inactive .product-cols__header h5,.product-cols .product-cols__col--inactive .product-cols__header p,.three-column__column .product-cols .product-cols__col--inactive .product-cols__header .no-link{color:#afafaf}.product-cols .product-cols__col--inactive .product-cols__product-info{visibility:hidden}.product-cols .product-cols__col--inactive .product-cols__question-mark img{min-width:auto}@media screen and (max-width:720px){.product-cols .product-cols__col--inactive .product-cols__question-mark img{width:40px}}.product-cols .cta-link{font:500 20px/26px "Google Sans",sans-serif;background-color:#1967d2;color:#fff;display:inline-block;margin:20px 0 0;min-width:248px;padding:10px 0;width:100%}.color-scheme--dark .product-cols .cta-link{border:1px solid var(--firebase-border-color);background-color:transparent;color:var(--firebase-link-color)}@media screen and (min-width:720px){.product-cols .cta-link{font:500 18px/22px "Google Sans",sans-serif;line-height:24px;max-width:500px}}@media screen and (min-width:1000px){.color-scheme--dark .product-cols .cta-link,.product-cols .cta-link{background-color:transparent;color:var(--firebase-product-link-color)}.product-cols .cta-link{font:500 20px/26px "Google Sans",sans-serif;line-height:30px;margin:0}.color-scheme--dark .product-cols .cta-link{border:none}}.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}@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:var(--firebase-link-hover-color)}@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:400 12px/12px "Google Sans",sans-serif}@media screen and (min-width:720px){.product-cols li[role=listitem] .product-cols__text .product-icon__name{font:500 18px/32px "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}.product-cols ul{padding:0}@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,.side-side-wrapper__divider::after,.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}.simple__title{margin-bottom:0}.simple__body{margin:24px 0 0}@media screen and (min-width:1000px){.simple__body{margin:44px 0 0}}.simple__illo{padding-bottom:50px}.search{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:100%}.search devsite-filter input[type=text]{margin:0 0 40px;max-width:400px;border-radius:4px;background-color:#f1f3f4;border-color:#f1f3f4;font-size:14px;line-height:16px;font-weight:400;font-family:"Google Sans",sans-serif;color:#000}.search devsite-filter .list{padding-left:0}.search devsite-filter li[no-matches]{list-style-type:none;padding:0}.search,.search__filter,.search__filter__input{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}.search__filter{width:100%}.search__filter__input{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;min-width:300px}@media screen and (min-width:720px){.search__filter__input{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.search__filter__list{width:100%;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:0}.three-column__wrapper--extra{min-height:440px}.side-side-wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;position:relative;max-width:1280px;margin-inline:auto;padding:64px 32px}@media screen and (min-width:720px){.side-side-wrapper{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:64px;padding:0 32px}.side-side-wrapper__divider::after{content:'';display:block;height:100%;width:1px;background:#323232;position:absolute;left:50%;right:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);top:50%}}.side-side-wrapper__left-container,.side-side-wrapper__right-container{-webkit-flex:1;-ms-flex:1;flex:1;padding-top:60px}@media screen and (min-width:720px){.side-side-wrapper__left-container,.side-side-wrapper__right-container{-webkit-flex:4;-ms-flex:4;flex:4;padding-top:40px}}.side-side-wrapper__left-container .products-list-item,.side-side-wrapper__right-container .products-list-item{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;border-bottom:2px solid #323232;padding:0;margin:0}.side-side-wrapper__left-container .products-list-item a,.side-side-wrapper__right-container .products-list-item a,.three-column__column--dynamic .devsite-card-buttons a--expand-arrow{padding:10px 0;width:100%;color:#fff}.side-side-wrapper__left-container .products-list-item a:hover,.side-side-wrapper__right-container .products-list-item a:hover{text-decoration:none}.side-side-wrapper__left-container .products-list-item a:hover .product-icon__name svg,.side-side-wrapper__right-container .products-list-item a:hover .product-icon__name svg{width:30px;margin-left:auto}.side-side-wrapper__left-container .products-list-item a:hover .product-icon__name svg path,.side-side-wrapper__right-container .products-list-item a:hover .product-icon__name svg path{d:path("M0.7 9.35772H50.9956L44.2001 2.29941L46.4134 0L57 11L46.4134 22L44.2001 19.7006L50.9956 12.6423H0V9.35772Z")}.side-side-wrapper__left-container .products-list-item a:focus,.side-side-wrapper__right-container .products-list-item a:focus{text-decoration:underline}.side-side-wrapper__left-container .products-list-item .product-icon .product-icon__icon,.side-side-wrapper__left-container .products-list-item .product-icon .product-icon__image,.side-side-wrapper__right-container .products-list-item .product-icon .product-icon__icon,.side-side-wrapper__right-container .products-list-item .product-icon .product-icon__image{margin-bottom:4px;margin-right:20px;padding:10px;width:40px;height:40px;radius:100%;background:#f57c00}.side-side-wrapper__left-container .products-list-item .product-icon .product-icon__icon .gmp-icons,.side-side-wrapper__left-container .products-list-item .product-icon .product-icon__image .gmp-icons,.side-side-wrapper__right-container .products-list-item .product-icon .product-icon__icon .gmp-icons,.side-side-wrapper__right-container .products-list-item .product-icon .product-icon__image .gmp-icons{color:#1e1e1e;font-size:16px}@media screen and (min-width:720px){.side-side-wrapper__left-container .products-list-item .product-icon .product-icon__icon .gmp-icons,.side-side-wrapper__left-container .products-list-item .product-icon .product-icon__image .gmp-icons,.side-side-wrapper__right-container .products-list-item .product-icon .product-icon__icon .gmp-icons,.side-side-wrapper__right-container .products-list-item .product-icon .product-icon__image .gmp-icons{font-size:24px}.side-side-wrapper__left-container .products-list-item .product-icon .product-icon__icon,.side-side-wrapper__left-container .products-list-item .product-icon .product-icon__image,.side-side-wrapper__right-container .products-list-item .product-icon .product-icon__icon,.side-side-wrapper__right-container .products-list-item .product-icon .product-icon__image{width:auto;height:auto}.side-side-wrapper__left-container .products-list-item,.side-side-wrapper__right-container .products-list-item{-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%}}.side-side-wrapper__left-container .products-list-item .product-cols__text,.side-side-wrapper__right-container .products-list-item .product-cols__text{margin:0 0 4px;width:100%}.side-side-wrapper__left-container .products-list-item .product-cols__text .product-icon__name,.side-side-wrapper__right-container .products-list-item .product-cols__text .product-icon__name{display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;font:400 14px/15px "JetBrains Mono",monospace}.side-side-wrapper__left-container .products-list-item .product-cols__text .product-icon__name svg,.side-side-wrapper__right-container .products-list-item .product-cols__text .product-icon__name svg{height:15px;width:15px;transition:250ms all ease;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;margin-left:auto}.side-side-wrapper .content{text-align:center}@media screen and (min-width:720px){.side-side-wrapper .content{text-align:left}.side-side-wrapper .content__title{max-width:400px}}.no-right-container-padding .side-side-wrapper__right-container{padding-top:20px}.productspage-footer .side-side-wrapper{padding-top:0;padding-bottom:100px}@media screen and (min-width:720px){.productspage-footer .side-side-wrapper{-webkit-align-items:end;-ms-flex-align:end;align-items:end}}.productspage-footer .side-side-wrapper .side-side-wrapper__right-container{margin-top:100px}@media screen and (min-width:720px){.productspage-footer .side-side-wrapper .side-side-wrapper__right-container{margin-top:unset;margin-left:100px}}.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 .three-column__column .no-link,.text-illo h5,.three-column__column .text-illo .no-link{margin:0}.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:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;row-gap:64px;-webkit-column-gap:24px;-moz-column-gap:24px;column-gap:24px}@media screen and (min-width:720px){.three-column__wrapper{-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr)}}.three-column__column{text-align:left;-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{margin:auto;-webkit-flex:1 1 calc(100%/3);-ms-flex:1 1 calc(100%/3);flex:1 1 calc(100%/3);max-width:310px;height:100%}}.three-column__column>.no-link,.three-column__column>h5{margin:0 0 8px}.three-column__column>p{margin:0 0 12px;text-align:left}.three-column__column__description{font:400 16px/24px "Google Sans",sans-serif;min-height:100px}.three-column__column__ctas>a{color:var(--firebase-button-black-text-color)}.three-column__column__ctas>a:not(:last-child){margin-right:20px}.three-column__column--dynamic{min-height:415px;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){.three-column__column--dynamic{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.three-column__column--dynamic .devsite-card{border:none;border-radius:0;overflow:visible;background:0 0}.three-column__column--dynamic devsite-dynamic-content{box-sizing:content-box;margin:0;-webkit-flex:1 1 100%;-ms-flex:1 1 100%;flex:1 1 100%}.three-column__column--dynamic devsite-dynamic-content .devsite-card-category{font:400 14px/20px "Google Sans",sans-serif;font-weight:500}@media screen and (min-width:720px){.three-column__column--dynamic devsite-dynamic-content .devsite-card-category{font:500 16px/20px "Google Sans",sans-serif}}.three-column__column--dynamic devsite-dynamic-content h3{font:500 16px/24px "Google Sans",sans-serif;line-height:26px;margin:0 0 8px}@media screen and (min-width:720px){.three-column__column--dynamic devsite-dynamic-content h3{font:500 20px/26px "Google Sans",sans-serif}}.three-column__column--dynamic devsite-dynamic-content>p{margin:0 0 12px}.three-column__column--dynamic .devsite-card-content{padding:0}.three-column__column--dynamic .devsite-card-content a:hover{text-decoration:none}.three-column__column--dynamic .devsite-card-summary{font:400 16px/24px "Google Sans",sans-serif}.three-column__column--dynamic .devsite-card-buttons{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;padding:0;margin-top:16px}.three-column__column--dynamic .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;background:0 0;color:var(--firebase-link-color);letter-spacing:.24px;padding:6px 8px;margin-left:-8px;margin-right:-8px}@media screen and (min-width:1000px){.three-column__column--dynamic .devsite-card-buttons a{font:500 16px/20px "Google Sans",sans-serif;letter-spacing:.57px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}}.three-column__column--dynamic .devsite-card-buttons a:not(.cta-link--white):active,.three-column__column--dynamic .devsite-card-buttons a:not(.cta-link--white):focus,.three-column__column--dynamic .devsite-card-buttons a:not(.cta-link--white):hover{text-decoration:none;background-color:#e1f3fc;color:#0288d1}.devsite-article .three-column__column--dynamic .devsite-card-buttons a--hover-orange>i,.devsite-article .three-column__column--dynamic .devsite-card-buttons a--with-medium-icon>i,.three-column__column--dynamic .devsite-card-buttons a--hover-orange>i,.three-column__column--dynamic .devsite-card-buttons a--with-medium-icon>i{font-size:20px;height:20px;vertical-align:middle;width:20px}.three-column devsite-pagination .button--expand-arrow:focus .product-icon__name svg path,.three-column devsite-pagination .button--expand-arrow:hover .product-icon__name svg path,.three-column__column--dynamic .devsite-card-buttons a--expand-arrow:focus .product-icon__name svg path,.three-column__column--dynamic .devsite-card-buttons a--expand-arrow:hover .product-icon__name svg path{d:path("M0.7 9.35772H50.9956L44.2001 2.29941L46.4134 0L57 11L46.4134 22L44.2001 19.7006L50.9956 12.6423H0V9.35772Z")}.three-column__column--dynamic .devsite-card-buttons a--expand-arrow:focus{text-decoration:underline;-webkit-text-decoration-color:#fff;-moz-text-decoration-color:#fff;text-decoration-color:#fff}@media screen and (min-width:1000px){.three-column__column--dynamic .devsite-card-buttons a--primary{font:500 20px/26px "Google Sans",sans-serif}}@media screen and (min-width:720px){.three-column__column--dynamic .devsite-card-buttons a{font-size:16px}}.three-column__column--dynamic .devsite-card-buttons a:hover{background-color:#e1f3fc}.three-column__column--dynamic .devsite-card-buttons .button,body{background:0 0}.three-column__column--dynamic .devsite-card-image-container{position:relative;height:0;padding:0 0 56.19%}.three-column__column--dynamic .devsite-card-image-container>img{position:absolute;top:0;bottom:0;object-fit:cover;height:100%;width:100%}.three-column__column--dynamic .devsite-card-category{display:none;visibility:collapse}.three-column__column--dynamic .devsite-card-group{display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%;margin:0}.three-column__column--dynamic .devsite-card-wrapper{padding:0;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.three-column__column--dynamic .devsite-card-image-container{margin-bottom:42px}.three-column__column--dynamic devsite-dynamic-content .devsite-card-wrapper:not(:last-child){display:none}.three-column__column__image-link button,.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 button,.three-column__column__image-link>a{margin-bottom:32px}}.three-column__column__image-link:focus,.three-column__column__image-link:hover{background-color:transparent!important}.three-column__column-image>img,.three-column__column__image-link img{margin-bottom:12px;width:100%;height:100%;border-radius:20px}.three-column__image--with-dynamic a{padding:0 6px}.three-column--icons .three-column__column-image>img{height:50px;width:50px;opacity:.54}.color-scheme--dark .three-column--icons .three-column__column-image>img{opacity:1}.three-column--youtube .devsite-card-category{color:#c2185b;display:block;visibility:initial}.color-scheme--dark .three-column--youtube .devsite-card-category{color:#ffca28}.three-column--youtube .devsite-card .button:before{content:url(../images/icons/play-icon.svg);margin:2px 8px 0 0;position:relative}.color-scheme--dark .three-column--youtube .devsite-card .button:before{content:url(../images/icons/play-icon-dark.svg)}.three-column--blog .medium .devsite-card-category{color:#1a73e8;display:block;visibility:initial}.color-scheme--dark .three-column--blog .medium .devsite-card-category{color:#ff8a65}.three-column--blog .blogger .devsite-card-category{color:#e65100;display:block;visibility:initial}.color-scheme--dark .three-column--blog .blogger .devsite-card-category{color:#ffca28}.three-column--news-events .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}.three-column--news-events .three-column__column__image-link{margin-bottom:42px}@media screen and (min-width:720px){.three-column--news-events .three-column__column__image-link{height:0;padding:0 0 56.125%}}.three-column--news-events .three-column__column__image-link>a{padding:0;margin:0}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid img,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row img,.three-column--news-events .three-column__column--dynamic .devsite-card-image{border-radius:20px}.three-column--news-events .three-column__column--dynamic .devsite-card-summary{max-height:100%}.three-column--news-events .three-column__column--dynamic .devsite-card-buttons .button{background-color:transparent!important;color:var(--firebase-button-black-text-color)}.three-column--news-events .three-column__column--dynamic .devsite-card-buttons .button:active,.three-column--news-events .three-column__column--dynamic .devsite-card-buttons .button:focus,.three-column--news-events .three-column__column--dynamic .devsite-card-buttons .button:hover{color:#dd2c00;border:0}.color-scheme--dark .three-column--news-events .three-column__column--dynamic .devsite-card-buttons .button:active,.color-scheme--dark .three-column--news-events .three-column__column--dynamic .devsite-card-buttons .button:focus,.color-scheme--dark .three-column--news-events .three-column__column--dynamic .devsite-card-buttons .button:hover{color:#ffc400}.three-column--news-events .three-column__column--dynamic .devsite-card-buttons .button:after{display:inline-block;content:'arrow_forward';font:20px/1 "Material Icons",sans-serif}@media screen and (min-width:720px){.three-column br{display:initial}}.three-column devsite-pagination .button{border:none;box-shadow:none;color:#1e88e5;border-radius:8px;font:500 14px/18px "Google Sans",sans-serif;background:0 0;color:var(--firebase-link-color);letter-spacing:.24px;padding:6px 8px;margin-left:-8px;margin-right:-8px}.three-column devsite-pagination .button:active,.three-column devsite-pagination .button:focus,.three-column devsite-pagination .button:hover{background:0 0;border:none;box-shadow:none}@media screen and (min-width:1000px){.three-column devsite-pagination .button{font:500 16px/20px "Google Sans",sans-serif;letter-spacing:.57px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}}.three-column devsite-pagination .button:not(.cta-link--white):active,.three-column devsite-pagination .button:not(.cta-link--white):focus,.three-column devsite-pagination .button:not(.cta-link--white):hover{text-decoration:none;background-color:#e1f3fc;color:#0288d1}.three-column devsite-pagination .button--small{font-size:14px;letter-spacing:.15px;line-height:16px}.three-column devsite-pagination .button--with-icon{padding-bottom:10px;padding-right:10px;padding-top:10px}.devsite-article .three-column devsite-pagination .button--with-icon>i,.three-column devsite-pagination .button--with-icon>i{margin-right:12px}.three-column devsite-pagination .button--with-medium-icon{font:700 18px/24px "Google Sans",sans-serif;padding-bottom:10px;padding-right:10px;padding-top:10px}.devsite-article .three-column devsite-pagination .button--hover-orange>i,.devsite-article .three-column devsite-pagination .button--with-medium-icon>i,.three-column devsite-pagination .button--hover-orange>i,.three-column devsite-pagination .button--with-medium-icon>i{font-size:20px;height:20px;vertical-align:middle;width:20px}.three-column devsite-pagination .button--grey:active,.three-column devsite-pagination .button--grey:focus,.three-column devsite-pagination .button--grey:hover,.three-column devsite-pagination .button--white:active,.three-column devsite-pagination .button--white:focus,.three-column devsite-pagination .button--white:hover{opacity:.85}.three-column devsite-pagination .button--white{color:#fff}.three-column devsite-pagination .button--white:hover{background:rgba(255,255,255,.2);color:#fff;border:0}.three-column devsite-pagination .button--hover-orange{color:#fff;font:700 18px/24px "Google Sans",sans-serif;padding-bottom:10px;padding-right:10px;padding-top:10px}.three-column devsite-pagination .button--hover-orange:hover{color:#dd2c00;border:0}.color-scheme--dark .three-column devsite-pagination .button--footer:hover,.color-scheme--dark .three-column devsite-pagination .button--hover-orange:hover{color:#ffc400;border:0}.three-column devsite-pagination .button--expand-arrow{padding:10px 0;width:100%;color:#fff}.three-column devsite-pagination .button--expand-arrow:hover{text-decoration:none}.three-column devsite-pagination .button--expand-arrow:focus{text-decoration:underline;-webkit-text-decoration-color:#fff;-moz-text-decoration-color:#fff;text-decoration-color:#fff}.three-column devsite-pagination .button--grey{color:#979797}.color-scheme--dark .three-column devsite-pagination .button--grey{color:#92cceb}.color-scheme--dark .three-column devsite-pagination .button--black,.three-column devsite-pagination .button--black{color:#000}.three-column devsite-pagination .button--primary{font:500 14px/16px "Google Sans",sans-serif}@media screen and (min-width:1000px){.three-column devsite-pagination .button--primary{font:500 20px/26px "Google Sans",sans-serif}}.three-column devsite-pagination .button--footer:hover{color:#dd2c00;border:0}.three-column .cta-button:not(:last-child),.three-column .cta-link:not(:last-child){margin-right:20px}.three-column__wrapper--extra .three-column__column p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.three-column__wrapper--extra .three-column__column__description{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.three-column__wrapper--extra .three-column__column__description .three-column__column__description--full{max-height:100%;margin-top:-90px;overflow:inherit;-webkit-line-clamp:inherit;background-color:#fff}@media screen and (min-width:720px){.three-column__wrapper--extra .three-column__column__description .three-column__column__description--full{margin-top:-110px}}.three-column__wrapper--extra .three-column__column__description devsite-pagination .button{width:0;padding-right:77px}.three-column__wrapper--extra .three-column__column__description devsite-pagination .devsite-pagination-more-button::before{content:'See more '}.three-column__wrapper--extra .three-column__column__description devsite-pagination .devsite-pagination-less-button{padding-right:70px}.three-column__wrapper--extra .three-column__column__description devsite-pagination .devsite-pagination-less-button::before{content:'See less '}.three-column__wrapper--extra .three-column__column__description devsite-pagination .devsite-pagination .material-icons{display:none}@media screen and (min-width:720px){.three-column__wrapper--extra{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.three-column__wrapper--extra .three-column__column__show{-webkit-order:2;-ms-flex-order:2;order:2;scroll-margin-top:280px;text-align:right}.three-column__wrapper--extra .three-column__column__show-less{display:none;scroll-margin-top:480px}.three-column__wrapper--extra .three-column__column__show-less:target{display:block}.three-column__wrapper--extra .three-column__column__show-less:target~p{display:block;max-height:100%}.three-column__wrapper--extra .three-column__column__show-less:target+a{display:none}.three-column__wrapper--extra .card__no-margin{margin:0 0 32px;padding:0}}@media screen and (min-width:720px) and (min-width:720px){.three-column__wrapper--extra .card__no-margin{margin:0;padding:0 24px 0 0}}@media screen and (min-width:720px) and (min-width:1280px){.three-column__wrapper--extra .card__no-margin{padding:0 84px 0 0}}.three-column__logo-wrapper .three-column__column__image-link a{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;margin-bottom:24px;height:70px}.three-column__logo-wrapper .three-column__column__image-link a>img{width:auto;-webkit-align-self:center;-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center;max-height:100%}@media screen and (min-width:720px){.three-column--align-left .three-column__wrapper{-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}}.use-cases .three-column__column__image-link>a>img{border-radius:8px}.use-case__header{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding-top:18px;margin-bottom:18px}@media screen and (min-width:1000px){.use-case__header{margin-bottom:32px;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}}.use-case__cards,.use-case__header .use-case__title{display:-webkit-flex;display:-ms-flexbox;display:flex;gap:8px}@media screen and (min-width:1000px){.use-case__header .use-case__title{gap:12px}}.use-case__header h2{-webkit-align-self:center;-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center;margin-bottom:0}.use-case__header img{height:32px;width:32px}@media screen and (min-width:1000px){.use-case__header img{height:62px;width:62px}}.use-case__cards{width:100%;gap:24px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:1000px){.use-case__cards{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.use-case__case-study{border:1px solid var(--firebase-border-color);border-radius:16px;padding:32px;width:100%;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.use-case__case-study__title{color:#4a4a4a}.color-scheme--dark .use-case__case-study__description,.color-scheme--dark .use-case__case-study__title{color:#fff}.carousel devsite-carousel,.use-case__case-study__body{margin-bottom:16px}.use-case__case-study__description{color:#474747;white-space:pre-wrap}.use-case__case-study devsite-expandable[expanded] p{max-height:100%;overflow:inherit;-webkit-line-clamp:inherit}.use-case__case-study__ctas{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-column-gap:30px;-moz-column-gap:30px;column-gap:30px;row-gap:12px;margin-top:auto}.use-case__products-row{display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr}@media screen and (min-width:1000px){.use-case__products-row{margin-bottom:32px;-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr}}.use-case .mobile-cta{margin-top:14px;text-align:center;width:100%}.use-cases.card .card__content{padding:40px 12px}@media screen and (min-width:1000px){.use-cases.card .card__content{padding:40px}}@media screen and (min-width:1280px){.use-cases.card .card__content{padding:80px 90px}}.use-cases .product-icon .product-icon__name,h2 .product-icon__beta{font-size:16px}.use-cases .product-icon .product-icon__icon{display:inline-block;font-size:32px;width:32px;height:32px;border-radius:50%;position:relative;overflow:hidden;background:#ffca28}.use-cases .product-icon .product-icon__icon:hover{background:#ffa000}.use-cases .product-icon .product-icon__icon .gmp-icons{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);font-size:50%;color:#3c4043}.use-cases .product-icon .product-icon__image{width:32px;height:32px;border-radius:0}.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--small{font:500 16px/20px "Google Sans",sans-serif}.use-case-detail-row__title--main{font:500 26px/34px "Google Sans",sans-serif}}.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{-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}}.use-case-detail-row__media.desktop,.video-hero-row.hide-chat .video-hero-column-chat{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__partner.narrow>img{width:60px}.use-case-detail-row__partner.white-background>img{padding:5px;border-radius:2px;background-color:#fff}@media screen and (min-width:1280px){.use-case-detail-row__case-study{width:50%}}.use-case-detail-row__results{color:var(--firebase-header-color);font:500 18px/22px "Google Sans",sans-serif;line-height:24px}.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__image.narrow>img{width:60px}.use-case-detail-row__case-study__image.white-background>img{padding:5px;border-radius:2px;background-color:#fff}.use-case-detail-row__case-study__quote-section{margin-top:60px}@media screen and (min-width:1000px){.use-case-detail-row__case-study__quote-section{margin-top:80px}}.use-case-detail-row__case-study__quote{border-left:2px solid var(--firebase-border-color);padding-left:12px}.use-case-detail-row__case-study__quote__paragraph{color:var(--firebase-body-color);font-style:italic;margin-bottom:0}.use-case-detail-row__case-study__quote__citation{font:500 14px/24px "Google Sans",sans-serif;color:#4a4a4a}.color-scheme--dark .use-case-detail-row__case-study__quote__citation{color:#fff}.video-hero{width:100%;margin:auto auto 40px}@media screen and (min-width:720px){.video-hero{max-width:1280px}}.video-hero .video-wrapper-full-width,.video-hero-row .video-wrapper-full-width{width:100%;float:none;margin:0}.video-hero iframe{width:100%;display:block}.video-hero iframe.devsite-embedded-youtube-video{visibility:visible}.devsite-framebox,.productpage-hero ul{padding:0}.video-hero-card{background:0 0;overflow:hidden;z-index:5}.video-hero-row{display:-webkit-flex;display:-ms-flexbox;display:flex;min-width:0;max-width:100%}.video-hero-row.hide-chat .video-hero-column-video{width:100%}.video-hero-toggle{text-align:center;display:block}@media screen and (min-width:600px){.video-hero-toggle{text-align:right}}.video-hero-toggle .toggle-live-chat{margin:10px 0}.video-hero-column-video{transition:width .2s ease-in-out;width:80%}.video-hero-column-chat{display:block;min-width:300px;border:1px solid #fff;margin-bottom:24px}@media screen and (min-width:600px){.video-hero-column-chat{margin-bottom:0}}.video-hero-live-chat-iframe{width:100%;height:100%}.video-hero-live-chat-iframe iframe{width:100%;height:100%;border:0;min-height:365px;display:block}.video-hero-live-chat-iframe .video-hero-mobile-cta{display:block;text-align:center;margin:10px auto;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:10px}@media screen and (min-width:600px){.video-hero-live-chat-iframe .video-hero-mobile-cta{display:none}}@media screen and (max-width:1100px){.video-hero-row{display:block}.video-hero-column-chat,.video-hero-column-video{width:100%}}.firebase-summit-2022 .video-hero-toggle{text-align:center}.firebase-summit-2022 .video-hero{margin-bottom:200px}.firebase-summit-2022 .video-hero-row{margin:auto;min-height:600px}@media screen and (min-width:720px){.firebase-summit-2022 .video-hero-row{min-height:800px}}@media screen and (min-width:1000px){.firebase-summit-2022 .video-hero-row{min-height:unset;max-height:600px;max-width:1100px}}@media screen and (min-width:720px){.firebase-summit-2022 .video-hero-row.hide-chat{max-width:800px}}@media screen and (min-width:1000px){.firebase-summit-2022 .video-hero-row.hide-chat{max-width:800px}}.firebase-summit-2022 .video-hero-column-chat{background:#fff}.firebase-summit-2022 .video-hero-column-video{transition:none}.products-logo-row .card__subheading{font:400 16px/28px "Google Sans",sans-serif}.products-logo-row .three-column__column .no-link,.products-logo-row h5,.three-column__column .products-logo-row .no-link{margin-bottom:8px}.products-logo-row p{font:400 10px/16px "Google Sans",sans-serif;padding:0 20px}@media screen and (min-width:600px){.products-logo-row p{font:400 16px/28px "Google Sans",sans-serif;line-height:30px}}@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:var(--firebase-link-color);margin-bottom:40px}@media screen and (min-width:1000px){.products-logo-row__container--with-titles .cta-link{margin-bottom:20px}}.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;width:auto}.products-ctas__content .cta-button--white:first-child{margin:0 20px 0 0}}.custom-video{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:1000px){.custom-video{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.custom-video__text{margin:auto;text-align:center}@media screen and (min-width:1000px){.custom-video__text{text-align:left;width:33%}}.custom-video__text h4{font-size:40px;line-height:28px;font-weight:500;font-family:"Google Sans",sans-serif;color:#202124}.custom-video__text .three-column__column .no-link,.custom-video__text h5,.three-column__column .custom-video__text .no-link{font-size:30px;line-height:28px;font-weight:700;font-family:"Google Sans",sans-serif;color:#202124}@media screen and (min-width:1000px){.custom-video__video{width:66%}}.custom-video .cta-button,.solutions-links{display:-webkit-flex;display:-ms-flexbox;display:flex}.custom-video .cta-button{background-color:#fff;color:#0075ec;padding:10px 50px;font-size:17px;line-height:150%;font-weight:500;font-family:"Google Sans",sans-serif;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;text-decoration:none;margin:auto auto 16px}.custom-video .cta-button img{margin-right:12px}@media screen and (min-width:1000px){.custom-video .cta-button{margin:unset;margin-bottom:0}}.solutions-links{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;text-align:center;-webkit-column-gap:50px;-moz-column-gap:50px;column-gap:50px;place-content:center;margin:24px auto;display:none}@media screen and (min-width:1000px){.solutions-links{display:-webkit-flex;display:-ms-flexbox;display:flex}}.solutions-links .cta-link:active,.solutions-links .cta-link:focus,.solutions-links .cta-link:hover{text-decoration:none}.carousel{margin-inline:auto;text-align:center;max-width:1280px;padding:80px 20px}.carousel,.carousel .three-column__column .no-link,.carousel h5,.carousel__slide .three-column__column .no-link,.carousel__slide h5,.carousel__slide p,.color-scheme--dark .block.darkmode-card>.block-wrapper .three-column__column .no-link,.color-scheme--dark .block.darkmode-card>.block-wrapper h1,.color-scheme--dark .block.darkmode-card>.block-wrapper h2,.color-scheme--dark .block.darkmode-card>.block-wrapper h3,.color-scheme--dark .block.darkmode-card>.block-wrapper h4,.color-scheme--dark .block.darkmode-card>.block-wrapper h5,.color-scheme--dark .block.darkmode-card>.block-wrapper h6,.color-scheme--dark .block.darkmode-card>.block-wrapper main,.color-scheme--dark .block.darkmode-card>.block-wrapper p,.three-column__column .carousel .no-link,.three-column__column .carousel__slide .no-link,.three-column__column .color-scheme--dark .block.darkmode-card>.block-wrapper .no-link{color:#000}.carousel .carousel__header{max-width:600px;margin-inline:auto}@media screen and (min-width:720px){.carousel .carousel__header{margin-bottom:100px}}@media screen and (min-width:1280px){.carousel li{padding:0 32px}}.carousel__image-wrapper,.carousel__slide{display:-webkit-flex;display:-ms-flexbox;display:flex}.carousel__slide{background-color:#fff;padding:32px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;border-radius:40px;height:100%}.carousel--large-icons .carousel__image-wrapper img{height:100px;width:100px}.carousel__image-wrapper{-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;height:176px;width:176px;border-radius:100%;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;margin-bottom:24px}.carousel__image-wrapper img{margin:auto;width:auto;height:auto}.carousel__hidden{display:none!important}.carousel .cta-link--hover-orange{margin-top:auto;color:#000}.carousel .cta-link--hover-orange:hover{color:#dd2c00}.card__subpartial.carousel{padding:0;text-align:left}.card__subpartial.carousel .carousel__image-wrapper{height:70px;width:auto;-webkit-align-self:start;-ms-flex-item-align:start;-ms-grid-row-align:start;align-self:start;background-color:transparent}.card__subpartial.carousel .carousel__image-wrapper--white{background-color:#fff;border-radius:20px;padding:8px}.card__subpartial.carousel .carousel__image-wrapper img{width:auto;height:100%}.card__subpartial.carousel .carousel__slide{background-color:transparent;border-radius:0;padding:0}.card__subpartial.carousel .three-column__column .no-link,.card__subpartial.carousel h5,.three-column__column .card__subpartial.carousel .no-link{color:var(--firebase-header-color)}.card__subpartial.carousel p{color:var(--firebase-body-color)}.highlights-row-wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;max-width:1280px;margin-inline:auto;padding:32px 20px;gap:65px;font:400 22px/30px "Google Sans",sans-serif;text-align:center;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width:1280px){.highlights-row-wrapper{padding:95px 20px;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.highlights-row-wrapper a{-webkit-flex:1;-ms-flex:1;flex:1}.highlights-row__content{-webkit-flex:2;-ms-flex:2;flex:2;-webkit-align-self:center;-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center}@media screen and (min-width:1280px){.highlights-row__content{text-align:left}}.firebase-agenda-page-summit-2022 devsite-nav-buttons button[selected]::before,.highlights-row__highlights{display:none}@media screen and (min-width:720px){.highlights-row__highlights{background:url(../images/backgrounds/firebase-gradient.png) left center/cover no-repeat;-webkit-flex:3;-ms-flex:3;flex:3;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:32px;padding:40px;border-radius:40px}}.highlights-row__highlights a:hover{text-decoration:none}.highlights-row__highlights a:focus{text-decoration:underline;-webkit-text-decoration-color:#000;-moz-text-decoration-color:#000;text-decoration-color:#000}.highlights-row__mobile-card{background:url(../images/backgrounds/firebase-gradient-mobile.png) left center/cover no-repeat;color:#000;padding:40px;border-radius:40px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:auto}.highlights-row__card{border-radius:20px;color:#000;padding:32px;height:100%;background-color:rgba(255,255,255,.6);display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;box-shadow:0 4px 12px 0 rgba(0,0,0,.15)}.highlights-row__card:focus,.highlights-row__card:hover{box-shadow:0 6px 10px 0 rgba(60,64,67,.15),0 2px 3px 0 rgba(60,64,67,.3);background-color:#fff;transition:250ms all ease}.highlights-row__image-wrapper{background-color:#fff;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;height:120px;width:120px;border-radius:100%;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;margin-bottom:24px;box-shadow:0 4px 12px 0 rgba(0,0,0,.15)}.highlights-row__image-wrapper img{height:auto;margin:auto;width:72px}@media screen and (min-width:720px){.highlights-row__mobile-carousel{display:none}}.block-wrapper{max-width:1280px;text-align:center;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-inline:auto;padding:40px 20px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:40px}.block-wrapper__content{padding:0 20px}.block-wrapper--half-width{max-width:800px}.block.darkmode-card>.block-wrapper{padding:40px 0}@media screen and (min-width:720px){.block.darkmode-card>.block-wrapper{padding:40px}}.color-scheme--dark .block.darkmode-card>.block-wrapper{background-color:#fff;color:#000}@media screen and (min-width:720px){.color-scheme--dark .block.darkmode-card>.block-wrapper{border-radius:40px}}.block.darkmode-card>.block-wrapper .block__content{padding:0 32px}@media screen and (min-width:1280px){.block.darkmode-card>.block-wrapper .block__content{padding:0}}.productpage-hero{max-width:1280px;padding:100px 32px;margin-inline:auto;text-align:center}@media screen and (min-width:1000px){.productpage-hero{text-align:left;padding:100px 20px}}.productpage-hero__category{font:700 30px/26px "JetBrains Mono",monospace;text-transform:uppercase;padding:10px 20px;margin-bottom:20px;background-color:rgba(255,255,255,.66);color:#000!important;border-radius:40px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin-inline:auto}@media screen and (min-width:1000px){.productpage-hero__category{font:700 30px/26px "JetBrains Mono",monospace;margin-inline:unset}}.productpage-hero__body{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){.productpage-hero__body{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}}.productpage-hero__heading{font:700 45px/55px "Google Sans",sans-serif}@media screen and (min-width:1000px){.productpage-hero__heading{font:700 55px/70px "Google Sans",sans-serif;max-width:450px;width:100%}}.productpage-hero__heading .highlight-build{background:linear-gradient(90deg,#ffaf01 0%,#e03600 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.productpage-hero__heading .highlight-run{background:linear-gradient(90deg,#ffc400 0%,#ff9200 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.productpage-hero__description{font:700 20px/30px "Google Sans",sans-serif;font-weight:400;margin:32px 12px 64px}@media screen and (min-width:1000px){.productpage-hero__description{font:700 35px/45px "Google Sans",sans-serif;font-weight:400}}@media screen and (min-width:1280px){.productpage-hero__description{margin:32px 64px 64px;height:225px}}.productpage-hero__products{position:relative;border-radius:40px;background-color:rgba(255,255,255,.05);box-shadow:0 4px 12px 0 rgba(0,0,0,.1);padding:32px}@media screen and (min-width:1000px){.productpage-hero__products{padding:32px 64px}}.productpage-hero__products-title{font:700 20px/30px "JetBrains Mono",monospace;text-transform:uppercase;padding:5px 20px;margin-bottom:20px;background-color:#e6e6e6;color:#000!important;position:absolute;top:0;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:-webkit-max-content;width:-moz-max-content;width:max-content;border-radius:40px}@media screen and (min-width:1000px){.productpage-hero__products-list{display:-ms-grid;display:grid;grid-auto-flow:column;-webkit-column-gap:32px;-moz-column-gap:32px;column-gap:32px}.productpage-hero__products-list.products-build{-ms-grid-rows:(1fr)[7];grid-template-rows:repeat(7,1fr)}.productpage-hero__products-list.products-build .productpage-hero__products-list-item:nth-child(7n),.productpage-hero__products-list.products-run .productpage-hero__products-list-item:nth-child(5n){border:none}.productpage-hero__products-list.products-run{-ms-grid-rows:(1fr)[5];grid-template-rows:repeat(5,1fr)}}@media screen and (max-width:720px){.productpage-hero__products-list .productpage-hero__products-list-item:last-child{border:none}}.productpage-hero__products-list-item,.productpage-hero__products-list-item .product-cols__text .product-icon__name svg{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.productpage-hero__products-list-item{-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;border-bottom:2px solid #323232;padding:12px 0;margin:0;text-align:left}@media screen and (min-width:720px){.productpage-hero__products-list-item{gap:24px}}.productpage-hero__products-list-item .product-icon__link{background:#f57c00;width:52px;height:52px;border-radius:52px;margin-bottom:4px;margin-right:20px}.productpage-hero__products-list-item .product-icon .product-icon__icon,.productpage-hero__products-list-item .product-icon .product-icon__image{margin:0}@media screen and (min-width:1000px){.productpage-hero__products-list-item{-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%}}.productpage-hero__products-list-item .product-cols__text{width:100%}.productpage-hero__products-list-item .product-cols__text .product-icon__name{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;width:100%;font:400 14px/15px "JetBrains Mono",monospace}@media screen and (min-width:600px){.productpage-hero__products-list-item .product-cols__text .product-icon__name{white-space:nowrap}}.productpage-hero__products-list-item .product-cols__text .product-icon__name svg{height:15px;width:15px}.productpage-hero__products-list-item .product-cols__text .product-icon__name svg path{height:100%;-webkit-transform:scale(.5);transform:scale(.5)}@media screen and (min-width:400px){.productpage-hero__products-list-item .product-cols__text .product-icon__name svg{width:50px;transition:250ms all ease}.productpage-hero__products-list-item .product-cols__text .product-icon__name svg path{transition:250ms all ease}}.platform-icon{color:#979797}.platform-icon:not(.plat_android):not(.plat_ios){margin:0 2px}.color-scheme--dark .platform-icon{color:#fff}.platform-icon.gmp-icons{font-size:30px}.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-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%;top:42px;-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 .product-icon__icon-mods{background:#7b1fa2!important}.product-icon-large .product-icon__icon-app_check{background:#2a353c!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}.color-scheme--dark .product-icon .product-icon__icon{color:#fff}.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 .product-icon__image--overflow{border-radius:0}.product-icon .product-card-grid__icon{height:108px;width:108px;position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.product-icon__image{border-radius:50%;height:40px;width:auto}.product-icon--chip{margin-bottom:16px}.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-icon__beta{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 .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}.speakers-list{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}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .main-container .right-column .expandable__body,.firebase-page-community devsite-dynamic-content,.speakers-list .cta-dialog{margin:0}.speakers-list .product-icon--chip{-webkit-align-items:center;-ms-flex-align:center;align-items:center}.expandable__speakers__speaker p,.speakers-list .product-icon--chip img{margin-bottom:0}.speakers-list .show-all-button{margin-top:8px;margin-bottom:8px}.expandable__speakers{-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:20px 0}.expandable__speakers,.expandable__speakers__speaker,.expandable__speakers__speaker a{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.expandable__speakers__speaker{margin:4px 8px 4px 0;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}@media screen and (min-width:720px){.expandable__speakers__speaker{margin-right:48px;min-width:220px}}.expandable__speakers__speaker a{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;color:#202124;font-size:16px;line-height:20px;font-weight:500;font-family:"Google Sans",sans-serif}.expandable__speakers__speaker img{max-width:55px;object-fit:cover;border-radius:50%;margin-right:12px}.firebase-table tr{border:0}.firebase-table td{background-color:transparent;padding-top:20px;padding-bottom:20px}.firesite-tooltip,.firesite-tooltip__container{--firebase-tooltip-bg-color:#323232;display:inline-block}.firesite-tooltip__container{color:#d8d8d8}.color-scheme--dark .firesite-tooltip__container{--firebase-tooltip-bg-color:#112537}.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;height:auto;margin:0;overflow:unset;padding:0;pointer-events:auto;position:relative;text-transform:unset;white-space:initial;width:auto;z-index:2}.color-scheme--dark .firesite-tooltip{--firebase-tooltip-bg-color:#112537}.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 var(--firebase-tooltip-bg-color);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:400 12px/16px "Google Sans",sans-serif;background-color:var(--firebase-tooltip-bg-color);box-sizing:border-box;color:rgba(255,255,255,.8);display:none;padding:15px;text-align:left;width:200px}.firesite-tooltip .firesite-tooltip__content code{color:rgba(255,255,255,.8)}.firesite-tooltip .firesite-tooltip__content>a{font:500 12px/16px "Google Sans",sans-serif;color:var(--firebase-link-color)}@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 var(--firebase-tooltip-bg-color);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:var(--firebase-tooltip-bg-color);bottom:-9px;content:'';height:px;left:27px;position:absolute}.firesite-tooltip--link .firesite-tooltip__content{background-color:var(--firebase-tooltip-bg-color);border:1px solid rgba(102,157,246,.4)}.firesite__video .devsite-embedded-youtube-video{height:101%;left:-.5%;position:absolute;top:-.5%;width:101%}.inline-image{position:relative}.inline-image:focus img{-webkit-filter:brightness(75%);filter:brightness(75%)}.inline-image .firesite-play-button{left:0;margin:auto;overflow:visible;position:absolute;right:0;transition:transform .3s cubic-bezier(.4,0,.2,1);transition:transform .3s cubic-bezier(.4,0,.2,1),-webkit-transform .3s cubic-bezier(.4,0,.2,1);-webkit-transform:scale(1);transform:scale(1)}.inline-image:focus .firesite-play-button,.inline-image:hover .firesite-play-button{-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-filter:brightness(100%);filter:brightness(100%)}.firebase-agenda-page-summit-2022{background-color:#0075ec}.firebase-agenda-page-summit-2022 firesite__bg--container,.firebase-faq-page-summit-2022 firesite__bg--container,.firebase-learn-page-summit-2022 firesite__bg--container{z-index:-1}.firebase-agenda-page-summit-2022 .firesite__bg--custom{opacity:.5;background-repeat:repeat;background-image:url(../images/summit/2022/background_pattern_lg.svg);height:100%;background-size:35%;margin-top:338px;background-position:top center}@media screen and (min-width:720px){.firebase-agenda-page-summit-2022 .firesite__bg--custom{margin-top:460px}}@media screen and (min-width:1280px){.firebase-agenda-page-summit-2022 .firesite__bg--custom{margin-top:495px}}@media screen and (min-width:1440px){.firebase-agenda-page-summit-2022 .firesite__bg--custom{margin-top:510px}}.firebase-agenda-page-summit-2022 .header-bubble{padding:17px 40px 14px 5px}@media screen and (min-width:720px){.firebase-agenda-page-summit-2022 .header-bubble{padding:22px 45px 20px 40px}}@media screen and (min-width:1000px){.firebase-agenda-page-summit-2022 .header-bubble{padding:34px 81px 28px 68px}}.firebase-agenda-page-summit-2022 .product-header h1{position:relative;top:-30px;font-size:25px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif;max-width:100%;margin-bottom:0}@media screen and (min-width:600px){.firebase-agenda-page-summit-2022 .product-header h1{font-size:30px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:720px){.firebase-agenda-page-summit-2022 .product-header h1{font-size:40px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1000px){.firebase-agenda-page-summit-2022 .product-header h1{font-size:60px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1280px){.firebase-agenda-page-summit-2022 .product-header h1{font-size:65px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1440px){.firebase-agenda-page-summit-2022 .product-header h1{font-size:75px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper{padding:0 40px 25px}@media screen and (min-width:600px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper{padding:0 55px 70px}}@media screen and (min-width:720px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper{padding:0 75px 100px}}@media screen and (min-width:1000px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper{padding:0 130px 150px}}@media screen and (min-width:1280px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper{padding:25px 140px 165px}}@media screen and (min-width:1440px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper{padding:50px 140px 180px}}.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:65px 0 0;text-align:left}@media screen and (min-width:600px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:60px 0 0}}@media screen and (min-width:720px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1000px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1280px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1440px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{position:absolute;bottom:calc(-48%);left:calc(13%);-webkit-transform:rotate(-9.5deg) scale(.8);transform:rotate(-9.5deg) scale(.8);z-index:-1}@media screen and (min-width:600px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{bottom:calc(-36%);left:calc(32%);-webkit-transform:rotate(-9.5deg) scale(1.2);transform:rotate(-9.5deg) scale(1.2)}}@media screen and (min-width:720px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{bottom:calc(-22%);left:calc(38%);-webkit-transform:rotate(-9.5deg) scale(1.5);transform:rotate(-9.5deg) scale(1.5)}}@media screen and (min-width:1000px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{bottom:calc(-32%);left:calc(60%);-webkit-transform:rotate(-8.5deg) scale(1.65);transform:rotate(-8.5deg) scale(1.65)}}@media screen and (min-width:1280px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{bottom:calc(-28%);left:calc(50%);-webkit-transform:rotate(-9.5deg) scale(1.45);transform:rotate(-9.5deg) scale(1.45)}}@media screen and (min-width:1440px){.firebase-agenda-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{bottom:calc(-32%);left:calc(53%);-webkit-transform:rotate(-8.25deg) scale(1.55);transform:rotate(-8.25deg) scale(1.55)}}.firebase-agenda-page-summit-2022 .card p{max-width:100%;font-size:16px;line-height:140%;font-weight:400;font-family:"Google Sans",sans-serif;color:#202124}.firebase-agenda-page-summit-2022 .card .card__content{padding:10px}@media screen and (min-width:600px){.firebase-agenda-page-summit-2022 .card .card__content{padding:35px}}@media screen and (min-width:720px){.firebase-agenda-page-summit-2022 .card .card__content{padding:65px}}.firebase-agenda-page-summit-2022 .card .card__subpartial:not(.card__subpartial--no-margin){margin:0}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .expandable__header h4{font-size:26px;line-height:130%;font-weight:500;font-family:"Google Sans",sans-serif}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .expandable__header.expandable__header--yellow{background:#ffc701}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .expandable__header.expandable__header--orange,.firebase-agenda-page-summit-2022 devsite-nav-buttons button.button-orange[selected]{background:#ff8a65}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .expandable__tag{font-size:13px;line-height:16.5px;font-weight:500;font-family:"Google Sans",sans-serif;color:#202124}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .icon-expert-tag::before,.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .icon-expert-tag::before,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .icon-expert-tag::before,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .icon-expert-tag::before{content:url(../images/summit/2022/expert-tag.svg);display:inline-block;width:25px;margin-left:5px}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .icon-ignite-tag::before,.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .icon-ignite-tag::before,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .icon-ignite-tag::before,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .icon-ignite-tag::before{content:url(../images/summit/2022/ignite-tag.svg);display:inline-block;width:25px;margin-left:5px}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .icon-qna-tag::before,.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .icon-qna-tag::before,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .icon-qna-tag::before,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .icon-qna-tag::before{content:url(../images/summit/2022/qna-tag.svg);display:inline-block;width:25px;margin-left:5px}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .main-container .right-column .expand-control .arrow{color:#48494b}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .main-container .right-column .expand-control .material-icons{font-size:32px}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .main-container:last-child{pointer-events:none}.firebase-agenda-page-summit-2022 .card .card__content .card__subpartial .main-container:last-child .right-column .expand-control .material-icons{display:none}.firebase-agenda-page-summit-2022 devsite-nav-buttons button,.firebase-learn-page-summit-2022 devsite-nav-buttons button,.firebase-page-summit-2022 devsite-nav-buttons button,.firebase-page-summit-2022-launch5 devsite-nav-buttons button,.firebase-page-summit-2022-launch6 devsite-nav-buttons button{border:2px solid transparent;background:#979797;color:#000}.firebase-agenda-page-summit-2022 devsite-nav-buttons button:focus{border:2px solid #000!important;background:#d8d8d8}.firebase-agenda-page-summit-2022 devsite-nav-buttons button:hover{border:2px solid #000!important;background:#d8d8d8}.firebase-agenda-page-summit-2022 devsite-nav-buttons button[selected]{border:2px solid transparent;padding:0 16px}.firebase-agenda-page-summit-2022 devsite-nav-buttons button.button-yellow[selected]{background:#ffc701}.firebase-page-brand-guidelines .firesite__bg>svg{left:calc(50% + 470px);-webkit-transform:translateX(-50%);transform:translateX(-50%);position:absolute;top:200px}.firebase-page-brand-guidelines .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px}@media screen and (min-width:1000px){.firebase-page-brand-guidelines .firesite__bg--top>svg{left:calc(50% + 500px);top:-2940px}}.firebase-page-brand-guidelines .firesite__bg--accent>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:1000px}@media screen and (min-width:1000px){.firebase-page-brand-guidelines .firesite__bg--accent>svg{left:calc(50% + 360px);top:1540px}}.firebase-page-community .firesite__bg>svg{left:calc(50% + 470px);position:absolute;top:-18%}@media screen and (min-width:1000px){.firebase-page-community .firesite__bg>svg{top:200px;left:calc(50% + 120px);-webkit-transform:translateX(-50%);transform:translateX(-50%)}}.firebase-page-community .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px}@media screen and (min-width:1000px){.firebase-page-community .firesite__bg--top>svg{left:calc(50% + 500px);top:-2940px}}.firebase-page-community .card hr{margin:70px 0}.firebase-page-community .medium-author .devsite-card-attribution-author::before{content:"by "}.firebase-page-demo-day-2023{position:relative;background-color:var(--firebase-bg-color);background-image:url(../images/demo-day/2023/grid.png);background-repeat:repeat;background-position:center top}.firebase-page-demo-day-2023 .content-wrapper:last-child{margin-bottom:40px}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .content-wrapper:last-child{margin-bottom:80px}}.firebase-page-demo-day-2023 .hero-container{overflow-x:clip;position:relative}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .hero-container{position:inherit}}.firebase-page-demo-day-2023 .hero-container__background{z-index:-1;position:relative;background:url(../images/demo-day/2023/demo-day-hero.png) no-repeat top center;background-size:contain;left:0%;top:48px;width:100%;height:100%;-webkit-transform:scale(1.9);transform:scale(1.9)}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .hero-container__background{position:absolute;top:4%;-webkit-transform:scale(1.1);transform:scale(1.1)}}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .hero-container__background{-webkit-transform:scale(1);transform:scale(1);top:-1%}}.firebase-page-demo-day-2023 .demo-day-hero__shape{position:absolute;width:250px;height:250px;background-size:contain;background-repeat:no-repeat;z-index:-1}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-hero__shape{width:500px;height:500px;background-size:auto}}.firebase-page-demo-day-2023 .demo-day-hero__shape--plus{background-image:url(../images/demo-day/2023/plus.svg);top:2030px;left:100%;-webkit-transform:translate(-25%,0%);transform:translate(-25%,0%);position:relative}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-hero__shape--plus{position:absolute;top:185px;left:83%}}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .demo-day-hero__shape--plus{top:220px;left:80%;-webkit-transform:translate(-25%,0%) scale(1.2);transform:translate(-25%,0%) scale(1.2)}}.firebase-page-demo-day-2023 .demo-day-hero__shape--equal{background-image:url(../images/demo-day/2023/equal.svg);top:-35px;left:105%;-webkit-transform:translate(-75%,0%) scale(.6);transform:translate(-75%,0%) scale(.6);position:absolute}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-hero__shape--equal{top:-140px;left:96%;-webkit-transform:translate(-75%,0%) scale(.8);transform:translate(-75%,0%) scale(.8)}}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .demo-day-hero__shape--equal{top:-65px;left:86%;-webkit-transform:translate(-75%,0%);transform:translate(-75%,0%)}}.firebase-page-demo-day-2023 .demo-day-hero__shape--curve{background-image:url(../images/demo-day/2023/curve.svg);top:345px;left:28%;position:absolute;-webkit-transform:translate(-25%,0%);transform:translate(-25%,0%)}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-hero__shape--curve{top:4000px}}.firebase-page-demo-day-2023 .demo-day-hero__shape--asterisk{background-image:url(../images/demo-day/2023/asterisk.svg);top:1000%;left:25%;position:absolute;-webkit-transform:translate(-75%,0%);transform:translate(-75%,0%)}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-hero__shape--asterisk{top:2000px}}.firebase-page-demo-day-2023 .demo-day-hero__shape--bracket{overflow-x:clip;background-image:url(../images/demo-day/2023/bracket.svg);top:1500%;left:80%;position:absolute;-webkit-transform:translate(-20%,0%);transform:translate(-20%,0%)}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-hero__shape--bracket{top:3000px}}.firebase-page-demo-day-2023 .demo-day-hero__shape--sparky{background-image:url(../images/demo-day/2023/waving-sparky.png);top:-30px;left:20%;-webkit-transform:translate(-25%,0%);transform:translate(-25%,0%)}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-hero__shape--sparky{top:-200px;left:48%;-webkit-transform:translate(-25%,0%) scale(.4);transform:translate(-25%,0%) scale(.4)}}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .demo-day-hero__shape--sparky{top:-95px;left:45%;-webkit-transform:translate(-25%,0%) scale(.6);transform:translate(-25%,0%) scale(.6)}}.firebase-page-demo-day-2023 .demo-day-hero__shape--lady{background-image:url(../images/demo-day/2023/waving-lady.png);top:300px;left:50%;-webkit-transform:translate(-25%,0%);transform:translate(-25%,0%)}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-hero__shape--lady{top:30px;left:73%;-webkit-transform:translate(-25%,0%) scale(.5);transform:translate(-25%,0%) scale(.5)}}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .demo-day-hero__shape--lady{top:80px;left:70%;-webkit-transform:translate(-25%,0%) scale(.9);transform:translate(-25%,0%) scale(.9)}}.firebase-page-demo-day-2023 .demo-day-hero__shape--logo{background-image:url(../images/demo-day/2023/logo.svg);top:195px;left:24%;width:100%;-webkit-transform:translate(-25%,0%) scale(.8);transform:translate(-25%,0%) scale(.8)}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-hero__shape--logo{display:none}}.firebase-page-demo-day-2023 .demo-day-nav{margin:0 32px}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .demo-day-nav{max-width:1280px;margin:0 auto}}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons-container{padding:36px 0;width:100%}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons-container{width:-webkit-max-content;width:-moz-max-content;width:max-content}}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;border-bottom:1px solid #fff}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a{font:500 20px/26px "Google Sans",sans-serif;font-weight:400;border:none;color:#fff;text-align:center;text-decoration:none;border-bottom:4px solid transparent}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a{font:500 18px/32px "Google Sans",sans-serif}}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a{font:500 20px/26px "Google Sans",sans-serif}}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.mobile-only{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:10px}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.mobile-only{display:none}}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.desktop-only{display:none}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.desktop-only:before{content:''!important}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.desktop-only{display:-webkit-flex;display:-ms-flexbox;display:flex;gap:20px}}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a:focus,.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a:hover{background:0 0;border-bottom:4px solid #fff}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.button-navicon:before{content:'';background-repeat:no-repeat;background-size:85px;width:85px;height:85px;background-position:center;display:inline-block}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.button--scale:before{background-image:url(../images/demo-day/2023/scale.svg)}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.button--scale[selected]:before{background-image:url(../images/demo-day/2023/scale-selected.svg)}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.button--run::before{background-image:url(../images/demo-day/2023/run.svg)}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.button--run[selected]:before{background-image:url(../images/demo-day/2023/run-selected.svg)}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.button--accelerate::before{background-image:url(../images/demo-day/2023/accelerate.svg)}.firebase-page-demo-day-2023 .demo-day-nav .nav-buttons a.button--accelerate[selected]:before{background-image:url(../images/demo-day/2023/accelerate-selected.svg)}.firebase-page-demo-day-2023 .card{margin:20px 32px}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .card{margin:0 auto 80px}}.firebase-page-demo-day-2023 .card.hero-card{margin-bottom:24px}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .card.hero-card{margin-bottom:80px}}.firebase-page-demo-day-2023 .card.hero-card .card__content{padding:0}.firebase-page-demo-day-2023 .card.hero-card .card__heading{text-align:center;color:#fff;font:500 40px/44px "Google Sans",sans-serif;font-weight:400;margin:300px 30px 0}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .card.hero-card .card__heading{text-align:left;margin:150px 0 0}}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .card.hero-card .card__heading{margin:200px 0 30px}}.firebase-page-demo-day-2023 .card.hero-card .card__heading:before{content:url(../images/demo-day/2023/logo.svg);position:absolute;left:0%;text-align:center;-webkit-transform:scale(.6);transform:scale(.6);-webkit-transform-origin:left top;transform-origin:left top;display:none}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .card.hero-card .card__heading:before{display:block;top:-90px;left:unset}}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .card.hero-card .card__heading:before{top:-90px;left:unset}}.firebase-page-demo-day-2023 .card.hero-card .card__subheading{margin-bottom:100px;font:400 24px/26px "Google Sans",sans-serif;text-align:center;margin-left:0;color:#fff;margin-top:30px}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .card.hero-card .card__subheading{text-align:left;margin-bottom:145px;max-width:400px}}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .card.hero-card .card__subheading{margin-bottom:225px}}.firebase-page-demo-day-2023 .card.media-card{position:relative;border-radius:0}.firebase-page-demo-day-2023 .card.media-card .card__content{padding:20px}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .card.media-card .card__content{padding:50px}}.firebase-page-demo-day-2023 .card.media-card .card__heading{text-align:center;color:var(--firebase-product-text-color);margin:24px 0;font:500 30px/34px "Google Sans",sans-serif}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .card.media-card .card__heading{font:500 40px/44px "Google Sans",sans-serif;font-weight:400}}.firebase-page-demo-day-2023 .footer-banner{border-radius:0}.firebase-page-demo-day-2023 .footer-banner .card__subpartial{margin-top:0}.firebase-page-demo-day-2023 .footer-banner .card__content{padding:20px}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .footer-banner .card__content{padding:50px}.firebase-page-demo-day-2023 .footer-banner .card__heading{textalign:left}}.firebase-page-demo-day-2023 .footer-banner .cta-banner__container{-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.firebase-page-demo-day-2023 .footer-banner .cta-banner__cta{text-align:left;margin-right:0}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .footer-banner .cta-banner__cta{margin-right:50px}}.firebase-page-demo-day-2023 .footer-banner .cta-banner__text{color:var(--firebase-product-text-color)}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .footer-banner .cta-banner__text{-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}}.firebase-page-demo-day-2023 .footer-banner .cta-banner__text p{font:400 20px/28px "Google Sans",sans-serif}.firebase-page-demo-day-2023 .footer-banner .cta-banner__text h4{font:500 28px/36px "Google Sans",sans-serif;font-weight:400;margin:auto auto 50px}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .footer-banner .cta-banner__text h4{font:500 40px/44px "Google Sans",sans-serif;font-weight:400;margin-top:0;margin-left:0}}.firebase-page-demo-day-2023 .simple__title{font:400 24px/26px "Google Sans",sans-serif;line-height:36px;margin-bottom:24px}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .simple__title{max-width:46%}.firebase-page-demo-day-2023 .simple--right .simple .simple__title{margin-left:54%}}.firebase-page-demo-day-2023 .product-row{display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;row-gap:44px;-webkit-column-gap:84px;-moz-column-gap:84px;column-gap:84px}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .product-row{-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr}}@media screen and (min-width:1000px){.firebase-page-demo-day-2023 .product-row{-ms-grid-columns:(1fr)[2];grid-template-columns:repeat(2,1fr)}}.firebase-page-demo-day-2023 .product-row__media{-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .product-row__media--right{padding-right:0}}.firebase-page-demo-day-2023 .product-row__text{color:var(--firebase-header-color);-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .product-row__text{max-width:100%;padding-right:0}}.firebase-page-demo-day-2023 .product-row__title{margin-left:50%;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.firebase-page-demo-day-2023 .product-row__speaker{-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}@media screen and (min-width:1280px){.firebase-page-demo-day-2023 .product-row__speaker{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-ms-flex-align:center;align-items:center}}.firebase-page-demo-day-2023 .cta-grid--hero .three-column__column .no-link,.firebase-page-demo-day-2023 .cta-grid--hero h5,.firebase-page-demo-day-2023 .cta-grid--hero p,.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__header h2,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__header h2,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__header h2,.three-column__column .firebase-page-demo-day-2023 .cta-grid--hero .no-link{color:#fff}.firebase-page-demo-day-2023 .cta-grid .cta-grid__grid .cta-grid__card .three-column__column .no-link,.firebase-page-demo-day-2023 .cta-grid .cta-grid__grid .cta-grid__card h5,.three-column__column .firebase-page-demo-day-2023 .cta-grid .cta-grid__grid .cta-grid__card .no-link{font:400 24px/26px "Google Sans",sans-serif;line-height:36px}@media screen and (min-width:720px){.firebase-page-demo-day-2023 .cta-grid .cta-grid__grid .cta-grid__card inline-html p{margin-top:32px}}.firebase-page-demo-day-2023 .expandable__speakers{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.firebase-page-demo-day-2023 .expandable__speakers__speaker img{margin-right:40px}.color-scheme--dark.firebase-page-demo-day-2023 .button--scale::before{background-image:url(../images/demo-day/2023/scale-dark.svg)}.color-scheme--dark.firebase-page-demo-day-2023 .button--scale[selected]::before{background-image:url(../images/demo-day/2023/scale-selected-dark.svg)}.color-scheme--dark.firebase-page-demo-day-2023 .button--run::before{background-image:url(../images/demo-day/2023/run-dark.svg)}.color-scheme--dark.firebase-page-demo-day-2023 .button--run[selected]::before{background-image:url(../images/demo-day/2023/run-selected-dark.svg)}.color-scheme--dark.firebase-page-demo-day-2023 .button--accelerate::before{background-image:url(../images/demo-day/2023/accelerate-dark.svg)}.color-scheme--dark.firebase-page-demo-day-2023 .button--accelerate[selected]::before{background-image:url(../images/demo-day/2023/accelerate-selected-dark.svg)}.firebase-page-demo-day-2024.color-scheme--dark{background-color:#000}.firebase-page-demo-day-2024.color-scheme--light{background:url(../images/demo-day/2024/background-event-day-gradient-1.svg) center 500px no-repeat,url(../images/demo-day/2024/background-event-day-gradient-2.svg) center 2450px no-repeat,url(../images/demo-day/2024/background-event-day-gradient-3.svg) center 4250px no-repeat,url(../images/demo-day/2024/background-event-day-gradient-4.svg) center 6050px no-repeat;background-size:cover}.firebase-page-demo-day-2024 .devsite-main-content .card.hero-card{margin:0;max-width:100%;height:500px;background-color:#000;background-repeat:no-repeat;background-position:60% 0%;background-size:cover;background-image:url(../images/demo-day/2024/background-event-day-mobile.png)}@media screen and (min-width:720px){.firebase-page-demo-day-2024 .devsite-main-content .card.hero-card{background-position:51% 0%;background-image:url(../images/demo-day/2024/background-event-day-lg-3.png)}}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.hero-card{background-position:50% 0%;background-size:175%;background-image:url(../images/demo-day/2024/background-event-day-lg-3.jpg)}}.firebase-page-demo-day-2024 .devsite-main-content .card.hero-card .card__content{margin:195px auto 150px;padding:0}.firebase-page-demo-day-2024 .devsite-main-content .card.hero-card .card__heading{text-align:center;color:#fff;font:500 40px/44px "Google Sans",sans-serif;font-weight:700;background:linear-gradient(to right,#ff9f00 0%,#fdace8 50%,#ff9f00 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:24px}@media screen and (min-width:720px){.firebase-page-demo-day-2024 .devsite-main-content .card.hero-card .card__heading{font-size:80px;line-height:115px;font-weight:700;font-family:"Google Sans",sans-serif}}.firebase-page-demo-day-2024 .devsite-main-content .card.hero-card .card__subheading{max-width:350px;font-size:22px;line-height:28px;font-weight:400;font-family:"Google Sans",sans-serif;text-align:center;color:#fff;margin:0 auto;padding-bottom:24px}@media screen and (min-width:720px){.firebase-page-demo-day-2024 .devsite-main-content .card.hero-card .card__subheading{max-width:600px}}.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav{margin:0 20px}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav{max-width:1280px;margin:0 auto}}.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons-container{width:100%}@media screen and (min-width:720px){.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons-container{width:-webkit-max-content;width:-moz-max-content;width:max-content}}.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;border-bottom:.5px solid #4a4a4a;gap:20px;overflow-x:auto}.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons-container{padding:24px 0}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons-container{padding:45px 0 60px}}.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons a{border:none;color:var(--firebase-button-black-text-color);text-align:center;text-decoration:none;border-bottom:4px solid transparent;padding-bottom:15px;font-size:20px;line-height:26px;font-weight:500;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons a{font-size:20px;line-height:26px;font-weight:400;font-family:"Google Sans",sans-serif}}.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons a.mobile-only{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:10px;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}@media screen and (min-width:720px){.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons a.mobile-only{display:none}}.firebase-learn-page-summit-2022 devsite-nav-buttons button[selected]::before,.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons a.desktop-only,.firebase-page-gcp .firebase-page-gcp__get-started.card__subpartial br,.firebase-page-summit-2022 devsite-nav-buttons button[selected]::before,.firebase-page-summit-2022-launch5 devsite-nav-buttons button[selected]::before,.firebase-page-summit-2022-launch6 devsite-nav-buttons button[selected]::before{display:none}@media screen and (min-width:720px){.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons a.desktop-only{display:-webkit-flex;display:-ms-flexbox;display:flex}}.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons a:focus,.firebase-page-demo-day-2024 .devsite-main-content .demo-day-nav .nav-buttons a:hover{border-bottom:4px solid #f57c00}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card{margin:20px;border-radius:32px;background-color:var(--demo-day-card-bg-color)}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.media-card{scroll-margin-top:1000px;margin:0 auto 80px;border-radius:40px}}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .card__content{padding:64px 15px 56px}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .card__content{padding:64px 40px}}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .card__heading{color:var(--firebase-button-black-text-color);font-size:32px;line-height:36px;font-weight:400;font-family:"Google Sans",sans-serif}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .card__heading{font-size:40px;line-height:46px;font-weight:400;font-family:"Google Sans",sans-serif}}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-button{max-width:100%;padding:16px 24px;font-size:16px;line-height:24px;font-weight:500;font-family:"Google Sans",sans-serif;color:#000;background-color:#f57c00;border:1px solid #f57c00;border-radius:8px}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-button{width:100%;max-width:-webkit-fit-content;max-width:-moz-fit-content;max-width:fit-content}}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-button:focus,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-button:hover{border:1px solid #f57c00;background:rgba(245,124,0,.6)}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .card__subpartial{margin:unset}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid .three-column__column .no-link:focus,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid h5:focus,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid:focus,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row .three-column__column .no-link:focus,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row h5:focus,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row:focus,.three-column__column .firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid .no-link:focus,.three-column__column .firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row .no-link:focus{outline:none}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row{margin:unset;padding:64px 0 0}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid .three-column__column .no-link,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid h5,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row .three-column__column .no-link,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row h5,.three-column__column .firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid .no-link,.three-column__column .firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row .no-link{padding:32px 0 24px;margin:unset;color:var(--firebase-button-black-text-color);font-size:32px;line-height:36px;font-weight:400;font-family:"Google Sans",sans-serif}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid p,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row p{margin:unset;color:var(--firebase-button-black-text-color);font-size:16px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speaker,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speakers-row,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speaker,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speakers-row{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speaker,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speakers-row,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speaker,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speakers-row{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speaker .expandable__speakers,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speakers-row .expandable__speakers,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speaker .expandable__speakers,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speakers-row .expandable__speakers{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;padding:32px 0 40px;margin:unset;max-width:-webkit-fit-content;max-width:-moz-fit-content;max-width:fit-content}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speaker .expandable__speakers,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speakers-row .expandable__speakers,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speaker .expandable__speakers,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speakers-row .expandable__speakers{margin-top:auto}}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speaker .expandable__speakers__speaker,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speakers-row .expandable__speakers__speaker,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speaker .expandable__speakers__speaker,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speakers-row .expandable__speakers__speaker{min-width:unset}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speaker .expandable__speakers__speaker img,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__speakers-row .expandable__speakers__speaker img,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speaker .expandable__speakers__speaker img,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speakers-row .expandable__speakers__speaker img{border-radius:1000px}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__grid--2up{row-gap:64px;-webkit-column-gap:32px;-moz-column-gap:32px;column-gap:32px}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .cta-grid__ctas-col .cta-button,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__speaker-ctas .cta-button{max-width:none}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row{gap:32px;row-gap:64px}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row .three-column__column .no-link,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row h5,.three-column__column .firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row .no-link{padding:0 0 24px}.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__media,.firebase-page-demo-day-2024 .devsite-main-content .card.media-card .product-row__text{padding:0}}.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner{margin-bottom:80px}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner{margin-bottom:160px}}.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .card__content{padding:64px 15px 56px}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .card__content{padding:115px 124px}}.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner img,.firebase-page-demo-day-2024 .devsite-main-content devsite-video{border-radius:20px}.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .cta-button{color:#000}.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .cta-banner .no-link,.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .cta-banner__text{color:var(--firebase-button-black-text-color);max-width:100%}.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .cta-banner .no-link h4,.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .cta-banner__text h4{font-size:48px;line-height:58px;font-weight:400;font-family:"Google Sans",sans-serif}.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .cta-banner .no-link p,.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .cta-banner__text p{margin:unset;font-size:28px;line-height:32px;font-weight:400;font-family:"Google Sans",sans-serif}.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .cta-banner__container{margin-top:40px;width:100%}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .card.footer-banner .cta-banner__container{margin-top:auto}}.firebase-page-demo-day-2024 .devsite-main-content .scroll-spacer{padding-top:150px}.firebase-page-demo-day-2024 .devsite-main-content .scroll-header{display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:100%;color:var(--firebase-button-black-text-color);font-size:48px;line-height:58px;font-weight:400;font-family:"Google Sans",sans-serif}@media screen and (min-width:1280px){.firebase-page-demo-day-2024 .devsite-main-content .scroll-header{font-size:40px;line-height:46px;font-weight:400;font-family:"Google Sans",sans-serif}}.firebase-explore-extensions .firesite__bg>img{top:-21%;-webkit-transform:translateX(-50%) scale(1.9);transform:translateX(-50%) scale(1.9)}.firebase-faq-page-summit-2022{background-color:#ffc701}.firebase-faq-page-summit-2022 .firesite__bg--custom{opacity:.5;background-repeat:repeat;background-image:url(../images/summit/2022/background_pattern_lg.svg);height:100%;background-size:35%;margin-top:338px;background-position:top center}@media screen and (min-width:720px){.firebase-faq-page-summit-2022 .firesite__bg--custom{margin-top:460px}}@media screen and (min-width:1280px){.firebase-faq-page-summit-2022 .firesite__bg--custom{margin-top:495px}}@media screen and (min-width:1440px){.firebase-faq-page-summit-2022 .firesite__bg--custom{margin-top:510px}}.firebase-faq-page-summit-2022 .header-bubble{padding:17px 40px 14px 5px}@media screen and (min-width:720px){.firebase-faq-page-summit-2022 .header-bubble{padding:22px 45px 20px 40px}}@media screen and (min-width:1000px){.firebase-faq-page-summit-2022 .header-bubble{padding:34px 81px 28px 68px}}.firebase-faq-page-summit-2022 .product-header h1{color:#202124;position:relative;top:-30px;font-size:25px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif;max-width:100%;margin-bottom:0}@media screen and (min-width:600px){.firebase-faq-page-summit-2022 .product-header h1{font-size:30px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:720px){.firebase-faq-page-summit-2022 .product-header h1{font-size:40px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1000px){.firebase-faq-page-summit-2022 .product-header h1{font-size:60px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1280px){.firebase-faq-page-summit-2022 .product-header h1{font-size:65px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1440px){.firebase-faq-page-summit-2022 .product-header h1{font-size:75px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}.firebase-faq-page-summit-2022 .product-header .product-header__wrapper{padding:0 40px 25px}@media screen and (min-width:600px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper{padding:0 55px 70px}}@media screen and (min-width:720px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper{padding:0 75px 100px}}@media screen and (min-width:1000px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper{padding:0 130px 150px}}@media screen and (min-width:1280px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper{padding:25px 140px 165px}}@media screen and (min-width:1440px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper{padding:50px 140px 180px}}.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:65px 0 0;text-align:left}@media screen and (min-width:600px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:60px 0 0}}@media screen and (min-width:720px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1000px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1280px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1440px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{position:absolute;top:calc(30%);left:calc(40%);-webkit-transform:scale(1.5);transform:scale(1.5);z-index:-1}@media screen and (min-width:600px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{top:calc(50%);left:calc(55%);-webkit-transform:scale(2.15);transform:scale(2.15)}}@media screen and (min-width:720px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{top:calc(58%);left:calc(55%);-webkit-transform:scale(2.15);transform:scale(2.15)}}@media screen and (min-width:1000px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{top:calc(135%);left:calc(78%);-webkit-transform:scale(2.5);transform:scale(2.5)}}@media screen and (min-width:1280px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{top:calc(20%);left:calc(50%);-webkit-transform:scale(1.15);transform:scale(1.15)}}@media screen and (min-width:1440px){.firebase-faq-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{top:calc(42%);left:calc(58%);-webkit-transform:scale(1.3);transform:scale(1.3)}}.firebase-faq-page-summit-2022 .card p,.firebase-learn-page-summit-2022 .card p,.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .main-container .right-column .expandable__body p,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .main-container .right-column .expandable__body p,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .main-container .right-column .expandable__body p{max-width:100%;font-size:16px;line-height:140%;font-weight:400;font-family:"Google Sans",sans-serif;color:#202124}.firebase-faq-page-summit-2022 .card .card__content{padding:10px}@media screen and (min-width:600px){.firebase-faq-page-summit-2022 .card .card__content{padding:35px}}@media screen and (min-width:720px){.firebase-faq-page-summit-2022 .card .card__content{padding:65px}}.firebase-faq-page-summit-2022 .card .card__subpartial:not(.card__subpartial--no-margin){margin:0}.firebase-faq-page-summit-2022 .card .card__content .card__subpartial .expandable__header h4,.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content h4,.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__header h4,.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content h4,.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__header h4,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__header h4,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content h4,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__header h4,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__header h4,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content h4,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__header h4,.firebase-venue-page-summit-2022 .card .card__content .card__subpartial .expandable__header h4{font-size:26px;line-height:130%;font-weight:500;font-family:"Google Sans",sans-serif}.firebase-faq-page-summit-2022 .card .card__content .card__subpartial .main-container .right-column .expand-control .arrow,.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .main-container .right-column .expand-control .arrow,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .main-container .right-column .expand-control .arrow,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .main-container .right-column .expand-control .arrow{color:#48494b}.firebase-faq-page-summit-2022 .card .card__content .card__subpartial .main-container .right-column .expand-control .material-icons,.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .main-container .right-column .expand-control .material-icons,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .main-container .right-column .expand-control .material-icons,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .main-container .right-column .expand-control .material-icons{font-size:32px}.firebase-page-gcp .firesite__bg>svg{position:absolute;top:120px;left:calc(50% + 120px);-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media screen and (min-width:1000px){.firebase-page-gcp .firesite__bg>svg{top:1020px}}.firebase-page-gcp .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px}@media screen and (min-width:1000px){.firebase-page-gcp .firesite__bg--top>svg{left:calc(50% + 500px);top:-2240px}}@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-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content .cta-banner__illo img,.firebase-page-home,.firebase-page-home--illustration{position:relative}.firebase-page-home iframe{border:0;margin:0;width:100%}.firebase-page-home .homepage-buildrun .side-side-wrapper .content{height:100%}.firebase-page-home .homepage-buildrun .side-side-wrapper .content__products{margin-top:auto}.firebase-page-home--illustration .card__header{position:relative;z-index:1}.firebase-page-home__text-illo-container .firebase-page-home__text-illustration{background:url(../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(../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(../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(../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(../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(../images/homepage/solutions-illo_2x.png) center bottom/contain no-repeat}}.firebase-page-home .firesite__bg>svg{left:calc(50% + 470px);position:absolute;top:200px;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media screen and (min-width:1000px){.firebase-page-home .firesite__bg>svg{top:640px;left:calc(50% + 180px)}}.firebase-page-home .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px}@media screen and (min-width:1000px){.firebase-page-home .firesite__bg--top>svg{left:calc(50% + 500px);top:-2240px}}.firebase-page-home .firesite__bg--accent>svg{left:calc(50% + 470px);position:absolute;top:800px;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media screen and (min-width:1000px){.firebase-page-home .firesite__bg--accent>svg{top:1440px;-webkit-transform:translateX(-50%) scale(.9);transform:translateX(-50%) scale(.9);left:calc(50% + 180px)}}.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>svg{left:calc(50% + 470px);position:absolute;top:800px}@media screen and (min-width:1000px){.firebase-page-integrations .firesite__bg>svg{top:400px;left:calc(50% + 320px);-webkit-transform:translateX(-50%);transform:translateX(-50%)}}.firebase-page-integrations .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px}@media screen and (min-width:1000px){.firebase-page-integrations .firesite__bg--top>svg{left:calc(50% + 540px);top:-2840px}}.firebase-page-integrations .product-grid__youtube-label{display:inline}.firebase-page-integrations .product-grid__youtube-label+i{top:-2px}.firebase-page-integrations .devsite-dialog-button.cta-link{padding:8px 16px;text-transform:none}.firebase-learn-page-summit-2022{background-color:#0075ec}.firebase-learn-page-summit-2022 .firesite__bg--custom{opacity:.5;background-repeat:repeat;background-image:url(../images/summit/2022/background_pattern_lg.svg);height:100%;background-size:35%;margin-top:338px;background-position:top center}@media screen and (min-width:720px){.firebase-learn-page-summit-2022 .firesite__bg--custom{margin-top:460px}}@media screen and (min-width:1280px){.firebase-learn-page-summit-2022 .firesite__bg--custom{margin-top:495px}}@media screen and (min-width:1440px){.firebase-learn-page-summit-2022 .firesite__bg--custom{margin-top:510px}}.firebase-learn-page-summit-2022 .header-bubble{padding:17px 40px 14px 5px}@media screen and (min-width:720px){.firebase-learn-page-summit-2022 .header-bubble{padding:22px 45px 20px 40px}}@media screen and (min-width:1000px){.firebase-learn-page-summit-2022 .header-bubble{padding:34px 81px 28px 68px}}.firebase-learn-page-summit-2022 .product-header h1{position:relative;top:-30px;font-size:25px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif;max-width:100%;margin-bottom:0}@media screen and (min-width:600px){.firebase-learn-page-summit-2022 .product-header h1{font-size:30px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:720px){.firebase-learn-page-summit-2022 .product-header h1{font-size:40px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1000px){.firebase-learn-page-summit-2022 .product-header h1{font-size:60px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1280px){.firebase-learn-page-summit-2022 .product-header h1{font-size:65px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1440px){.firebase-learn-page-summit-2022 .product-header h1{font-size:75px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}.firebase-learn-page-summit-2022 .product-header .product-header__wrapper{padding:0 40px 25px}@media screen and (min-width:600px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper{padding:0 55px 70px}}@media screen and (min-width:720px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper{padding:0 75px 100px}}@media screen and (min-width:1000px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper{padding:0 130px 150px}}@media screen and (min-width:1280px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper{padding:25px 140px 165px}}@media screen and (min-width:1440px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper{padding:50px 140px 180px}}.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:65px 0 0;text-align:left}@media screen and (min-width:600px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:60px 0 0}}@media screen and (min-width:720px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1000px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1280px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1440px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{position:absolute;bottom:calc(-16%);left:calc(8%);-webkit-transform:scale(.8);transform:scale(.8);z-index:-1}@media screen and (min-width:600px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{bottom:calc(-12%);left:calc(12%);-webkit-transform:scale(1);transform:scale(1)}}@media screen and (min-width:720px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{bottom:calc(-5%);left:calc(18%);-webkit-transform:scale(1.14);transform:scale(1.14)}}@media screen and (min-width:1000px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{bottom:calc(-16%);left:calc(35%);-webkit-transform:scale(1.28);transform:scale(1.28)}}@media screen and (min-width:1280px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{bottom:calc(-14%);left:calc(42%);-webkit-transform:scale(1.45);transform:scale(1.45)}}@media screen and (min-width:1440px){.firebase-learn-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{bottom:calc(-14%);left:calc(45%);-webkit-transform:scale(1.55);transform:scale(1.55)}}.firebase-learn-page-summit-2022 .card .card__content{padding:10px}@media screen and (min-width:600px){.firebase-learn-page-summit-2022 .card .card__content{padding:35px}}@media screen and (min-width:720px){.firebase-learn-page-summit-2022 .card .card__content{padding:65px}}.firebase-learn-page-summit-2022 .card .card__content .card__header{padding:10px;margin-bottom:35px;border-radius:10px}.firebase-learn-page-summit-2022 .card .card__content .card__header h2{text-align:left;margin:0;font-size:28px;line-height:36px;font-weight:500;font-family:"Google Sans",sans-serif}.firebase-learn-page-summit-2022 .card .card__subpartial:not(.card__subpartial--no-margin){margin:0}.firebase-learn-page-summit-2022 devsite-nav-buttons button:focus{border:2px solid #000!important;background:#d8d8d8}.firebase-learn-page-summit-2022 devsite-nav-buttons button:hover{border:2px solid #000!important;background:#d8d8d8}.firebase-learn-page-summit-2022 devsite-nav-buttons button[selected]{border:2px solid transparent;padding:0 16px}.firebase-learn-page-summit-2022 devsite-nav-buttons button.button-orange[selected]{background:#ff8a65}.firebase-learn-page-summit-2022 devsite-nav-buttons button.button-yellow[selected]{background:#ffc701}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .card__subpartial{margin-bottom:25px}@media screen and (min-width:1000px){.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .card__subpartial{margin-bottom:50px}}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .card__subpartial .three-column__wrapper{-ms-grid-column-align:center;justify-items:center}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .ask-firebase-section .card__header{padding:20px 40px;background:#ffc701}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .ask-firebase-section .three-column__wrapper{-ms-grid-columns:(1fr)[1];grid-template-columns:repeat(1,1fr)}@media screen and (min-width:720px){.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .ask-firebase-section .three-column__wrapper{-ms-grid-columns:(1fr)[2];grid-template-columns:repeat(2,1fr)}}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .ask-firebase-section .three-column__wrapper .three-column__column{max-width:480px}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .ask-firebase-section .three-column__wrapper .three-column__column__description--full{margin-top:-105px}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .ignite-talks-section .card__header{padding:20px 40px;background:#ff8a65}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .demos-section .card__header,.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .card__header{padding:20px 40px;background:#ffa000}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .demos-section .three-column__wrapper .three-column__column{max-width:480px}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .demos-section .three-column__wrapper .three-column__column__description--full{margin-top:-105px}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__wrapper .three-column__column{max-width:480px}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__wrapper .three-column__column__description--full{margin-top:-105px}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__wrapper{-ms-grid-columns:(1fr)[1];grid-template-columns:repeat(1,1fr)}@media screen and (min-width:720px){.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__wrapper{-ms-grid-columns:(1fr)[2];grid-template-columns:repeat(2,1fr)}}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column .no-link,.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column h5{margin-top:10px;height:45px}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column .cta-button{max-width:100%}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column a:first-child img:first-child{display:none}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column a:nth-child(2){background-color:#0075ec;color:#fff;padding:10px 30px;font-size:17px;line-height:150%;font-weight:500;font-family:"Google Sans",sans-serif}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column a:nth-child(2) img{margin-right:12px}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column .three-column__column__description p{display:block;margin-top:10px;height:120px}@media screen and (min-width:1280px){.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column .three-column__column__description p{height:90px}}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column:first-child .cta-button:first-child{border-radius:0;background-color:#ffc701}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column:nth-child(2) .cta-button:first-child{border-radius:0;background-color:#ff8a65}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column:nth-child(3) .cta-button:first-child{border-radius:0;background-color:#0075ec}.firebase-learn-page-summit-2022 .card.card--summit-2022-videos .card__content .pathways-section .three-column__column:nth-child(4) .cta-button:first-child{border-radius:0;background-color:#ffa000}.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback{border-radius:10px;background-color:#fe8f00}.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content{padding:40px}@media screen and (min-width:1000px){.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content{padding:50px 90px}}.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content .card__subpartial{margin-top:0}.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content h2{text-align:center;color:#202124;font-size:46px;line-height:120%;font-weight:600;font-family:"Google Sans",sans-serif}.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content p{font-size:16px;line-height:150%;font-weight:400;font-family:"Google Sans",sans-serif;color:#202124}.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content .cta-banner__illo{-webkit-flex-basis:70%;-ms-flex-preferred-size:70%;flex-basis:70%}@media screen and (min-width:720px){.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content .cta-banner__illo img{left:25px}}@media screen and (min-width:1000px){.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content .cta-banner__illo img{left:70px}}.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content .cta-banner__cta{margin-top:20px}.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content .cta-button{background-color:#fff;color:#0075ec;padding:10px;margin-right:8px;font-size:17px;line-height:150%;font-weight:500;font-family:"Google Sans",sans-serif;display:-webkit-flex;display:-ms-flexbox;display:flex}.firebase-learn-page-summit-2022 .card.card--summit-2022-feedback .card__content .cta-button img{margin-right:12px}.firebase-page-product .firesite__bg>svg{left:calc(50% + 470px);position:absolute;top:200px;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media screen and (min-width:1000px){.firebase-page-product .firesite__bg>svg{top:400px}}.firebase-page-product .firesite__bg--top>svg,.firebase-page-product--games .firesite__bg>img{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px}@media screen and (min-width:1000px){.firebase-page-product .firesite__bg--top>svg{left:calc(50% + 500px);top:-2840px}}.firebase-page-product .product-header--inapp-messaging .product-header__illo>img{margin-bottom:-16px;z-index:-1}.firebase-page-product--games .gamespage-hero,.firebase-page-product--in-app-messaging .firesite__bg--top>svg,.firebase-venue-page-summit-2022 firesite__bg--container{z-index:-1}.firebase-page-product--games .firesite__bg>img{height:100%;left:57%;max-width:none;padding-bottom:1200px;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-product .product-header--remote-config .product-header__illo>img,.firebase-page-summit-2022 .card.card--summit-2022-recap .card__content .product-row .product-row__media img,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap .card__content .product-row .product-row__media img,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap .card__content .product-row .product-row__media img{width:700px}.firebase-page-products .firesite__bg>svg{left:calc(50% + 400px);position:absolute;top:200px;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media screen and (min-width:1000px){.firebase-page-products .firesite__bg>svg{top:680px}}.firebase-page-products .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px;z-index:-1}@media screen and (min-width:1000px){.firebase-page-products .firesite__bg--top>svg{left:calc(50% + 500px);top:-2600px}}.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;line-height:30px}@media screen and (min-width:720px){.firebase-page-products .card__subheading{margin-bottom:50px;margin-left:auto}}.firebase-page-products .product-card+.card:not(.product-card){margin-bottom:0}.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(../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(../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.product-tabs{-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.product-tabs{padding:20px}}.firebase-page-products .product-tabs .three-column__column{padding:0;text-align:center;max-width:205px;position:relative;margin:24px auto 0;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;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.firebase-page-products .product-tabs .three-column__column:hover{cursor:pointer}@media screen and (min-width:600px){.firebase-page-products .product-tabs .three-column__column{margin-top:0}}@media screen and (min-width:720px){.firebase-page-products .product-tabs .three-column__column{margin-left:0;margin-right:0}}.firebase-page-products .product-tabs .three-column__column a{position:absolute;top:0;right:0;left:0;bottom:0;z-index:1}.firebase-page-products .product-tabs .three-column__column .no-link,.firebase-page-products .product-tabs .three-column__column h5{color:#fff;font-size:14px;line-height:20px;position:relative;display:inline-block;margin-top:48px}@media screen and (min-width:600px){.firebase-page-products .product-tabs .three-column__column .no-link,.firebase-page-products .product-tabs .three-column__column h5{font-size:24px;line-height:28px;margin-top:68px}}.firebase-page-products .product-tabs a{border-radius:100%;margin:0 auto;padding-bottom:56px}.firebase-page-products .product-tabs a img{margin-bottom:0;max-height:40px;max-width:40px}@media screen and (min-width:600px){.firebase-page-products .product-tabs a img{max-height:56px;max-width:56px}}.firebase-page-products .product-tabs .three-column__wrapper,.firebase-page-products .products-overview-icons .three-column__wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.firebase-page-products .products-overview-icons .three-column__wrapper{-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 .three-column__column .no-link,.firebase-page-products .products-overview-icons h5,.three-column__column .firebase-page-products .products-overview-icons .no-link{font:300 12px/16px "Google Sans",sans-serif;text-align:center}@media screen and (min-width:720px){.firebase-page-products .products-overview-icons .three-column__column .no-link,.firebase-page-products .products-overview-icons h5,.three-column__column .firebase-page-products .products-overview-icons .no-link{font:300 20px/28px "Google Sans",sans-serif}}.firebase-page-products .products-overview-icons .three-column__column-image{margin:0 auto;width:80px}.firebase-page-products .products-overview-icons .three-column__column{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;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 .product-tabs .cta-link,.firebase-page-summit-landing .summitpage-hero__text .title b{font-weight:500}.firebase-page-products .logo-row .card__subheading{font:400 16px/28px "Google Sans",sans-serif;font-size:20px;font-family:"Google Sans",sans-serif}.firebase-page-products .products__card-header{margin-bottom:0}.firebase-page-products .products__card-header .three-column__column .no-link,.firebase-page-products .products__card-header h5,.three-column__column .firebase-page-products .products__card-header .no-link{font:600 24px/28px "Google Sans",sans-serif;font-weight:500}.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 .three-column__column .no-link,.firebase-page-products .products-tablinks:hover h5,.three-column__column .firebase-page-products .products-tablinks:hover .no-link{transition:all .2s ease-in-out}.firebase-page-products .products-tablinks.active .three-column__column .no-link:after,.firebase-page-products .products-tablinks.active h5:after,.firebase-page-products .products-tablinks:hover .three-column__column .no-link:after,.firebase-page-products .products-tablinks:hover h5:after,.three-column__column .firebase-page-products .products-tablinks.active .no-link:after,.three-column__column .firebase-page-products .products-tablinks:hover .no-link: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-stories,.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content .cta-banner__illo img,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content .cta-banner__illo img,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content .cta-banner__illo img{position:relative}.firebase-page-stories .firesite__bg--container{z-index:-1;overflow:initial}.firebase-page-stories .firesite__bg--container img{top:-40%;left:55%;-webkit-transform:translateX(-50%) scale(3);transform:translateX(-50%) scale(3)}@media screen and (min-width:1000px){.firebase-page-stories .product-row__text{margin:auto}.firebase-page-stories .cta-grid__card{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.firebase-page-stories .cta-link{margin-top:auto;gap:6px}.firebase-page-stories .product-grid__content .product-grid__titles{margin-bottom:32px}}.firebase-page-stories .cta-grid__icon--full>img,.firebase-page-stories .cta-link>img{border-radius:8px}.firebase-page-summit-2022{background-image:url(../images/summit/2022/backpack_mobile.png);background-size:900px}.firebase-page-summit-2022,.firebase-page-summit-2022-launch5,.firebase-page-summit-2022-launch6{position:relative;background-repeat:no-repeat;background-position:center top}@media screen and (min-width:600px){.firebase-page-summit-2022,.firebase-page-summit-2022-launch5,.firebase-page-summit-2022-launch6{background-size:900px}}@media screen and (min-width:720px){.firebase-page-summit-2022,.firebase-page-summit-2022-launch5,.firebase-page-summit-2022-launch6{background-size:1000px}}@media screen and (min-width:1000px){.firebase-page-summit-2022,.firebase-page-summit-2022-launch5,.firebase-page-summit-2022-launch6{background-image:url(../images/summit/2022/backpack_desktop_large.png);background-size:3800px}}@media screen and (min-width:1280px){.firebase-page-summit-2022,.firebase-page-summit-2022-launch5,.firebase-page-summit-2022-launch6{background-image:url(../images/summit/2022/backpack_desktop_large.png);background-size:3300px}}.firebase-page-summit-2022 .summitpage-hero__text,.firebase-page-summit-2022-launch5 .summitpage-hero__text,.firebase-page-summit-2022-launch6 .summitpage-hero__text{margin-top:-10px}.firebase-page-summit-2022 .summitpage-hero__text h2,.firebase-page-summit-2022-launch5 .summitpage-hero__text h2,.firebase-page-summit-2022-launch6 .summitpage-hero__text h2{color:#fff;text-align:center;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;gap:16px}.firebase-page-summit-2022 .summitpage-hero__text ::before,.firebase-page-summit-2022-launch5 .summitpage-hero__text ::before,.firebase-page-summit-2022-launch6 .summitpage-hero__text ::before{display:inline-block;content:url(../images/community/stories/firebase-icon.svg);-webkit-transform:scale(.8);transform:scale(.8)}@media screen and (min-width:600px){.firebase-page-summit-2022 .summitpage-hero__text ::before,.firebase-page-summit-2022-launch5 .summitpage-hero__text ::before,.firebase-page-summit-2022-launch6 .summitpage-hero__text ::before{-webkit-transform:scale(1);transform:scale(1)}}@media screen and (min-width:1000px){.firebase-page-summit-2022 .summitpage-hero__text ::before,.firebase-page-summit-2022-launch5 .summitpage-hero__text ::before,.firebase-page-summit-2022-launch6 .summitpage-hero__text ::before{-webkit-transform:scale(1.2);transform:scale(1.2)}}.firebase-page-summit-2022 .card.card--summit-2022,.firebase-page-summit-2022-launch5 .card.card--summit-2022,.firebase-page-summit-2022-launch6 .card.card--summit-2022{background-color:rgba(255,255,255,.65);box-shadow:none;margin-top:100px}.firebase-page-summit-2022 .card.card--summit-2022 .card__content,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__content,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__content{padding:40px 40px 0}.firebase-page-summit-2022 .card.card--summit-2022 .card__custom-html p,.firebase-page-summit-2022 .card.card--summit-2022 .card__heading,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__custom-html p,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__heading,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__custom-html p,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__heading{letter-spacing:-.5px;color:#202124;margin-bottom:16px}@media screen and (min-width:720px){.firebase-page-summit-2022 .card.card--summit-2022 .card__custom-html p,.firebase-page-summit-2022 .card.card--summit-2022 .card__heading,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__custom-html p,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__heading,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__custom-html p,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__heading{font-size:30px;line-height:45px;font-weight:400;font-family:"Google Sans",sans-serif;margin-bottom:32px}}.firebase-page-summit-2022 .card.card--summit-2022 .card__heading.card__heading--small,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__heading.card__heading--small,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__heading.card__heading--small{color:#202124;margin-bottom:16px;font-size:16px;line-height:6.7px;font-weight:400;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.firebase-page-summit-2022 .card.card--summit-2022 .card__heading.card__heading--small,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__heading.card__heading--small,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__heading.card__heading--small{font-size:20px;line-height:6.7px;font-weight:400;font-family:"Google Sans",sans-serif;margin-bottom:32px}}.firebase-page-summit-2022 .card.card--summit-2022 .card__subheading,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__subheading,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__subheading{color:#202124;max-width:500px;text-align:left;font-size:13px;line-height:24px;font-weight:400;font-family:"Google Sans",sans-serif}@media screen and (min-width:720px){.firebase-page-summit-2022 .card.card--summit-2022 .card__subheading,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__subheading,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__subheading{text-align:center}}.firebase-page-summit-2022 .card.card--summit-2022 .card__ctas,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__ctas,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__ctas{padding-top:0;gap:12px}@media screen and (min-width:720px){.firebase-page-summit-2022 .card.card--summit-2022 .card__ctas,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__ctas,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__ctas{gap:24px}}.firebase-page-summit-2022 .card.card--summit-2022 .cta-button,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .cta-button,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .cta-button{padding:8px 24px;border-radius:4px}@media screen and (min-width:720px){.firebase-page-summit-2022 .card.card--summit-2022 .cta-button,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .cta-button,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .cta-button{font-size:16px;line-height:19.2px;font-weight:500;font-family:"Google Sans",sans-serif}}.firebase-page-summit-2022 .card.card--summit-2022 .cta-button:focus,.firebase-page-summit-2022 .card.card--summit-2022 .cta-button:hover,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .cta-button:focus,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .cta-button:hover,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .cta-button:focus,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .cta-button:hover{-webkit-filter:brightness(75%);filter:brightness(75%)}.firebase-page-summit-2022 .card.card--summit-2022 .cta-link,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .cta-link,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .cta-link{color:#202124;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;gap:10px;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;margin-inline:auto;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}@media screen and (min-width:720px){.firebase-page-summit-2022 .card.card--summit-2022 .cta-link,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .cta-link,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .cta-link{font-size:16px;line-height:19.2px;font-weight:500;font-family:"Google Sans",sans-serif}}.firebase-page-summit-2022 .card.card--summit-2022 .card__footer,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__footer,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__footer{padding:0}.firebase-page-summit-2022 .card.card--summit-2022 .logo-row__logo,.firebase-page-summit-2022-launch5 .card.card--summit-2022 .logo-row__logo,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .logo-row__logo{padding:12px;min-height:auto}.firebase-page-summit-2022 .card.card--summit-2022-twitter,.firebase-page-summit-2022-launch5 .card.card--summit-2022-twitter,.firebase-page-summit-2022-launch6 .card.card--summit-2022-twitter{background-color:#ff8a65}@media screen and (min-width:1000px){.firebase-page-summit-2022 .card.card--summit-2022-twitter .card__content,.firebase-page-summit-2022-launch5 .card.card--summit-2022-twitter .card__content,.firebase-page-summit-2022-launch6 .card.card--summit-2022-twitter .card__content{padding:0 90px 25px}.firebase-page-summit-2022 .card.card--summit-2022-twitter .card__subpartial,.firebase-page-summit-2022-launch5 .card.card--summit-2022-twitter .card__subpartial,.firebase-page-summit-2022-launch6 .card.card--summit-2022-twitter .card__subpartial{margin:25px 0}}.firebase-page-summit-2022 .card.card--summit-2022-twitter .cta-button,.firebase-page-summit-2022-launch5 .card.card--summit-2022-twitter .cta-button,.firebase-page-summit-2022-launch6 .card.card--summit-2022-twitter .cta-button{background-color:#fff;color:#0075ec}.firebase-page-summit-2022 .custom.custom--summit-2022-title,.firebase-page-summit-2022-launch5 .custom.custom--summit-2022-title,.firebase-page-summit-2022-launch6 .custom.custom--summit-2022-title{margin-top:50px;margin-bottom:35px}.firebase-page-summit-2022 .custom.custom--summit-2022-title .heading,.firebase-page-summit-2022-launch5 .custom.custom--summit-2022-title .heading,.firebase-page-summit-2022-launch6 .custom.custom--summit-2022-title .heading{font-size:46px;line-height:120%;font-weight:700;font-family:"Google Sans",sans-serif;color:#202124;text-align:center}.firebase-page-summit-2022 .card.card--summit-2022-agenda,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda{background-color:#0075ec;margin-top:190px}@media screen and (min-width:600px){.firebase-page-summit-2022 .card.card--summit-2022-agenda,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda{margin-top:120px}}@media screen and (min-width:720px){.firebase-page-summit-2022 .card.card--summit-2022-agenda,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda{margin-top:135px}}@media screen and (min-width:1440px){.firebase-page-summit-2022 .card.card--summit-2022-agenda,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda{margin-top:150px;margin-bottom:60px}}.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content{padding:25px 10px}@media screen and (min-width:1440px){.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content{padding:60px 30px}}.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial{margin-top:20px;border-radius:10px;background-color:#fff}@media screen and (min-width:1440px){.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial{margin-top:40px}}@media screen and (min-width:720px){.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container{margin-left:20px;margin-right:20px}}@media screen and (min-width:1440px){.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container{padding:20px 75px}}.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__header.expandable__header--yellow,.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__header.expandable__header--yellow,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__header.expandable__header--yellow,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__header.expandable__header--yellow,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__header.expandable__header--yellow,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__header.expandable__header--yellow{background:#ffc701}.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__header.expandable__header--orange,.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__header.expandable__header--orange,.firebase-page-summit-2022 devsite-nav-buttons button.button-orange[selected],.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__header.expandable__header--orange,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__header.expandable__header--orange,.firebase-page-summit-2022-launch5 devsite-nav-buttons button.button-orange[selected],.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__header.expandable__header--orange,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__header.expandable__header--orange,.firebase-page-summit-2022-launch6 devsite-nav-buttons button.button-orange[selected]{background:#ff8a65}.firebase-page-summit-2022 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__tag,.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__tag,.firebase-page-summit-2022-launch5 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__tag,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__tag,.firebase-page-summit-2022-launch6 .card.card--summit-2022-agenda .card__content .card__subpartial .nav-buttons-container .accordion .expandable__tag,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion .expandable__tag{font-size:13px;line-height:16.5px;font-weight:500;font-family:"Google Sans",sans-serif;color:#202124}.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda{background-color:#fff}@media screen and (min-width:720px){.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda{margin-bottom:48px;margin-left:20px;margin-right:20px}}@media screen and (min-width:1440px){.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda{margin-left:145px;margin-right:145px}}.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion{border-radius:10px;background-color:#fff}.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion .icon-expert-tag::before,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion .icon-expert-tag::before,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion .icon-expert-tag::before{content:url(../images/summit/2022/expert-tag.svg);display:inline-block;width:25px;margin-left:5px}.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion .icon-ignite-tag::before,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion .icon-ignite-tag::before,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion .icon-ignite-tag::before{content:url(../images/summit/2022/ignite-tag.svg);display:inline-block;width:25px;margin-left:5px}.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion .icon-qna-tag::before,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion .icon-qna-tag::before,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion .icon-qna-tag::before{content:url(../images/summit/2022/qna-tag.svg);display:inline-block;width:25px;margin-left:5px}.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion .main-container .right-column .expandable__body p,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion .main-container .right-column .expandable__body p,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion .main-container .right-column .expandable__body p{max-width:100%;font-size:16px;line-height:140%;font-weight:400;font-family:"Google Sans",sans-serif;color:#202124}.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion .main-container .right-column .expand-control .arrow,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion .main-container .right-column .expand-control .arrow,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion .main-container .right-column .expand-control .arrow{color:#48494b}.firebase-page-summit-2022 .dynamic-navigation.accordion--summit-2022-agenda .accordion .main-container .right-column .expand-control .material-icons,.firebase-page-summit-2022-launch5 .dynamic-navigation.accordion--summit-2022-agenda .accordion .main-container .right-column .expand-control .material-icons,.firebase-page-summit-2022-launch6 .dynamic-navigation.accordion--summit-2022-agenda .accordion .main-container .right-column .expand-control .material-icons{font-size:32px}.firebase-page-summit-2022 .devsite-nav-buttons-container,.firebase-page-summit-2022-launch5 .devsite-nav-buttons-container,.firebase-page-summit-2022-launch6 .devsite-nav-buttons-container{padding-bottom:25px}.firebase-page-summit-2022 devsite-nav-buttons button:focus,.firebase-page-summit-2022-launch5 devsite-nav-buttons button:focus,.firebase-page-summit-2022-launch6 devsite-nav-buttons button:focus{border:2px solid #000!important;background:#d8d8d8}.firebase-page-summit-2022 devsite-nav-buttons button:hover,.firebase-page-summit-2022-launch5 devsite-nav-buttons button:hover,.firebase-page-summit-2022-launch6 devsite-nav-buttons button:hover{border:2px solid #000!important;background:#d8d8d8}.firebase-page-summit-2022 devsite-nav-buttons button[selected],.firebase-page-summit-2022-launch5 devsite-nav-buttons button[selected],.firebase-page-summit-2022-launch6 devsite-nav-buttons button[selected]{border:2px solid transparent;padding:0 16px}.firebase-page-summit-2022 devsite-nav-buttons button.button-yellow[selected],.firebase-page-summit-2022-launch5 devsite-nav-buttons button.button-yellow[selected],.firebase-page-summit-2022-launch6 devsite-nav-buttons button.button-yellow[selected]{background:#ffc701}.firebase-page-summit-2022 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq{margin-top:40px;border-radius:10px;background-color:#ffc701}@media screen and (min-width:400px){.firebase-page-summit-2022 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq{margin-top:50px}}@media screen and (min-width:600px){.firebase-page-summit-2022 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq{margin-top:35px}}@media screen and (min-width:720px){.firebase-page-summit-2022 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq{margin-top:0}}@media screen and (min-width:1440px){.firebase-page-summit-2022 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq{margin-top:60px}}.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content{padding:40px}@media screen and (min-width:1000px){.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content{padding:50px 90px 10px}}.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content .card__subpartial,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content .card__subpartial,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content .card__subpartial{margin-top:0}.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content h2,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content h2,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content h2{color:#202124;font-size:46px;line-height:120%;font-weight:600;font-family:"Google Sans",sans-serif}.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content p,.firebase-page-summit-2022 .card.card--summit-2022-recap .card__content p,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content p,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap .card__content p,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content p,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap .card__content p{font-size:16px;line-height:150%;font-weight:400;font-family:"Google Sans",sans-serif;color:#202124}.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content .cta-banner__illo,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content .cta-banner__illo,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content .cta-banner__illo{-webkit-flex-basis:70%;-ms-flex-preferred-size:70%;flex-basis:70%}@media screen and (min-width:720px){.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content .cta-banner__illo img,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content .cta-banner__illo img,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content .cta-banner__illo img{left:25px}}@media screen and (min-width:1000px){.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content .cta-banner__illo img,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content .cta-banner__illo img,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content .cta-banner__illo img{left:70px}}.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content .cta-button,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content .cta-button,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content .cta-button{background-color:#fff;color:#0075ec;padding:10px 50px;font-size:17px;line-height:150%;font-weight:500;font-family:"Google Sans",sans-serif;display:-webkit-flex;display:-ms-flexbox;display:flex}.firebase-page-summit-2022 .card.card--summit-2022-faq .card__content .cta-button img,.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq .card__content .cta-button img,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq .card__content .cta-button img{margin-right:12px}.firebase-page-summit-2022 .card.card--summit-2022-recap,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap{border-radius:10px;background-color:#ffc701;margin-top:565px}@media screen and (min-width:600px){.firebase-page-summit-2022 .card.card--summit-2022-recap,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap{margin-top:565px}}@media screen and (min-width:1280px){.firebase-page-summit-2022 .card.card--summit-2022-recap,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap{margin-top:435px}}@media screen and (min-width:1440px){.firebase-page-summit-2022 .card.card--summit-2022-recap,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap{margin-top:520px}}@media screen and (min-width:2400px){.firebase-page-summit-2022 .card.card--summit-2022-recap,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap{margin-top:765px}}.firebase-page-summit-2022 .card.card--summit-2022-recap .card__content,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap .card__content,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap .card__content{padding-top:40px}.firebase-page-summit-2022 .card.card--summit-2022-recap .card__content h4,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap .card__content h4,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap .card__content h4{font-size:26px;line-height:130%;font-weight:500;font-family:"Google Sans",sans-serif;color:#202124}.firebase-page-summit-2022 .card.card--summit-2022-recap .card__content hr,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap .card__content hr,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap .card__content hr{border-top:5px solid #ff8a65}.firebase-page-summit-2022 .card.card--summit-2022-recap .card__content .product-row,.firebase-page-summit-2022-launch5 .card.card--summit-2022-recap .card__content .product-row,.firebase-page-summit-2022-launch6 .card.card--summit-2022-recap .card__content .product-row{-webkit-align-items:center;-ms-flex-align:center;align-items:center}.firebase-page-summit-2022-launch5{background-image:url(../images/summit/2022/l5_backpack.jpg);background-size:2235px}@media screen and (min-width:400px){.firebase-page-summit-2022-launch5,.firebase-page-summit-2022-launch6{background-size:2420px}}@media screen and (min-width:600px){.firebase-page-summit-2022-launch5,.firebase-page-summit-2022-launch6{background-size:2045px}}@media screen and (min-width:720px){.firebase-page-summit-2022-launch5,.firebase-page-summit-2022-launch6{background-size:1975px}}@media screen and (min-width:1000px){.firebase-page-summit-2022-launch5,.firebase-page-summit-2022-launch6{background-size:1815px}}@media screen and (min-width:1440px){.firebase-page-summit-2022-launch5,.firebase-page-summit-2022-launch6{background-size:3500px}}@media screen and (min-width:1000px){.firebase-page-summit-2022-launch5 .card.card--summit-2022-faq,.firebase-page-summit-2022-launch6 .card.card--summit-2022-faq{margin-top:170px}}.firebase-page-summit-2022-launch5 .card.card--summit-2022,.firebase-page-summit-2022-launch6 .card.card--summit-2022{margin-bottom:40px}@media screen and (min-width:400px){.firebase-page-summit-2022-launch5 .card.card--summit-2022,.firebase-page-summit-2022-launch6 .card.card--summit-2022{margin-bottom:192px}}@media screen and (min-width:600px){.firebase-page-summit-2022-launch5 .card.card--summit-2022,.firebase-page-summit-2022-launch6 .card.card--summit-2022{margin-bottom:200px}}@media screen and (min-width:720px){.firebase-page-summit-2022-launch5 .card.card--summit-2022,.firebase-page-summit-2022-launch6 .card.card--summit-2022{margin-top:115px;margin-bottom:255px}}@media screen and (min-width:1000px){.firebase-page-summit-2022-launch5 .card.card--summit-2022,.firebase-page-summit-2022-launch6 .card.card--summit-2022{margin-bottom:250px}}@media screen and (min-width:1280px){.firebase-page-summit-2022-launch5 .card.card--summit-2022,.firebase-page-summit-2022-launch6 .card.card--summit-2022{margin-bottom:240px}}@media screen and (min-width:1440px){.firebase-page-summit-2022-launch5 .card.card--summit-2022,.firebase-page-summit-2022-launch6 .card.card--summit-2022{margin-top:265px;margin-bottom:515px}}.firebase-page-summit-2022-launch5 .card.card--summit-2022 .card__custom-html p,.firebase-page-summit-2022-launch6 .card.card--summit-2022 .card__custom-html p{text-align:center;font-size:28px;line-height:36px;font-weight:400;font-family:"Google Sans",sans-serif}.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn{border-radius:10px;background-color:#0075ec}.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content{padding:40px}@media screen and (min-width:1000px){.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content{padding:50px 90px 10px}}.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content .card__subpartial,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content .card__subpartial{margin-top:0}.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content h2,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content h2,.firebase-venue-page-summit-2022 .product-header h1{color:#fff;font-size:46px;line-height:120%;font-weight:600;font-family:"Google Sans",sans-serif}.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content h4,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content h4{color:#fff;font-size:26px;line-height:130%;font-weight:500;font-family:"Google Sans",sans-serif}.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content p,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content p{font-size:16px;line-height:150%;font-weight:400;font-family:"Google Sans",sans-serif;color:#fff}.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content .cta-banner__illo,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content .cta-banner__illo{-webkit-flex-basis:70%;-ms-flex-preferred-size:70%;flex-basis:70%}.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content .cta-banner__illo img,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content .cta-banner__illo img{position:relative}@media screen and (min-width:720px){.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content .cta-banner__illo img,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content .cta-banner__illo img{left:25px}}@media screen and (min-width:1000px){.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content .cta-banner__illo img,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content .cta-banner__illo img{left:70px}}.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content .cta-button,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content .cta-button{background-color:#fff;color:#0075ec;padding:10px 50px;font-size:17px;line-height:150%;font-weight:500;font-family:"Google Sans",sans-serif;display:-webkit-flex;display:-ms-flexbox;display:flex}.devsite-firebase-status-content aside:before,.firebase-page-summit-2022-launch5 .card.card--summit-2022-learn .card__content .cta-button img,.firebase-page-summit-2022-launch6 .card.card--summit-2022-learn .card__content .cta-button img{margin-right:12px}.firebase-page-summit-2022-launch6{background-image:url(../images/summit/2022/l6_background_crop.jpg);background-size:2620px;background-position-y:35px}@media screen and (min-width:400px){.firebase-page-summit-2022-launch6{background-size:2595px}}@media screen and (min-width:600px){.firebase-page-summit-2022-launch6{background-size:2740px}}@media screen and (min-width:1280px){.firebase-page-summit-2022-launch6{background-size:2000px}}@media screen and (min-width:1440px){.firebase-page-summit-2022-launch6{background-size:2500px}}@media screen and (min-width:2400px){.firebase-page-summit-2022-launch6{background-size:3500px}}.firebase-venue-page-summit-2022{background-color:#ff8a65}.firebase-venue-page-summit-2022 .firesite__bg--custom{opacity:.5;background-repeat:repeat;background-image:url(../images/summit/2022/background_pattern_lg.svg);height:100%;background-size:35%;margin-top:355px;background-position:top center}@media screen and (min-width:720px){.firebase-venue-page-summit-2022 .firesite__bg--custom{margin-top:400px}}@media screen and (min-width:1000px){.firebase-venue-page-summit-2022 .firesite__bg--custom{margin-top:455px}}@media screen and (min-width:1280px){.firebase-venue-page-summit-2022 .firesite__bg--custom{margin-top:500px}}@media screen and (min-width:1440px){.firebase-venue-page-summit-2022 .firesite__bg--custom{margin-top:470px}}.firebase-venue-page-summit-2022 .header-bubble{padding:17px 40px 14px 5px}@media screen and (min-width:720px){.firebase-venue-page-summit-2022 .header-bubble{padding:22px 45px 20px 40px}}@media screen and (min-width:1000px){.firebase-venue-page-summit-2022 .header-bubble{padding:34px 81px 28px 68px}}.firebase-venue-page-summit-2022 .product-header h1{color:#202124;position:relative;top:-30px;font-size:25px;line-height:90px;max-width:100%;margin-bottom:0}@media screen and (min-width:600px){.firebase-venue-page-summit-2022 .product-header h1{font-size:30px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:720px){.firebase-venue-page-summit-2022 .product-header h1{font-size:40px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1000px){.firebase-venue-page-summit-2022 .product-header h1{font-size:60px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1280px){.firebase-venue-page-summit-2022 .product-header h1{font-size:65px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}@media screen and (min-width:1440px){.firebase-venue-page-summit-2022 .product-header h1{font-size:75px;line-height:90px;font-weight:600;font-family:"Google Sans",sans-serif}}.firebase-venue-page-summit-2022 .product-header .product-header__wrapper{padding:10px 40px 15px}@media screen and (min-width:600px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper{padding:10px 80px 60px}}@media screen and (min-width:720px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper{padding:10px 80px 90px}}@media screen and (min-width:1000px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper{padding:40px 140px 110px}}@media screen and (min-width:1280px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper{padding:40px 140px 145px}}.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:65px 0 0;text-align:left}@media screen and (min-width:600px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:60px 0 0}}@media screen and (min-width:720px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1000px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1280px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}@media screen and (min-width:1440px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__content{padding:115px 0 0}}.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{position:absolute;-webkit-transform:scale(.6);transform:scale(.6);bottom:calc(-24%);left:calc(16%);z-index:-1}@media screen and (min-width:400px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{-webkit-transform:scale(.7);transform:scale(.7);bottom:calc(-20%);left:calc(20%)}}@media screen and (min-width:600px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{-webkit-transform:scale(.9);transform:scale(.9);bottom:calc(-8%);left:calc(28%)}}@media screen and (min-width:720px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{-webkit-transform:scale(.9);transform:scale(.9);bottom:calc(-6%);left:calc(28%)}}@media screen and (min-width:1000px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{-webkit-transform:scale(.9);transform:scale(.9);bottom:calc(-1%);left:calc(32%)}}@media screen and (min-width:1280px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{-webkit-transform:scale(1);transform:scale(1);bottom:calc(-2%);left:calc(38%)}}@media screen and (min-width:1440px){.firebase-venue-page-summit-2022 .product-header .product-header__wrapper .product-header__illo img{-webkit-transform:scale(1);transform:scale(1);bottom:calc(-2%);left:calc(43%)}}.firebase-venue-page-summit-2022 .card p{max-width:100%;font-size:16px;line-height:140%;font-weight:400;font-family:"Google Sans",sans-serif}.firebase-venue-page-summit-2022 .card .card__content{padding:10px}@media screen and (min-width:600px){.firebase-venue-page-summit-2022 .card .card__content{padding:35px}}@media screen and (min-width:720px){.firebase-venue-page-summit-2022 .card .card__content{padding:65px}}.firebase-venue-page-summit-2022 .card .card__content .card__header{padding-bottom:25px}.firebase-venue-page-summit-2022 .card .card__content .card__header h2{text-align:start;color:#202124}.firebase-venue-page-summit-2022 .card .card__content .card__header p{text-align:start;background-image:url(../images/summit/2022/marker.png);background-repeat:no-repeat;padding-left:24px;background-size:15px}.firebase-venue-page-summit-2022 .card .card__subpartial:not(.card__subpartial--no-margin){margin:0}.firebase-venue-page-summit-2022 .card .card__content .card__subpartial .main-container .right-column .expand-control .arrow{color:#48494b}.firebase-venue-page-summit-2022 .card .card__content .card__subpartial .main-container .right-column .expand-control .material-icons{font-size:32px}.firebase-venue-page-summit-2022 .card__custom-html{padding-bottom:50px}.firebase-venue-page-summit-2022 .card__custom-html iframe{width:100%;height:500px}.firebase-page-summit-community .expandable__body li,.firebase-page-summit-community .simple__body li,.firebase-venue-page-summit-2022 .expandable__body{margin:0}.firebase-venue-page-summit-2022 .expandable__body p{display:none}.firebase-page-summit,.firebase-page-summit-community{position:relative}.firebase-page-summit img{-webkit-filter:unset;filter:unset}.firebase-page-summit .three-column__column .no-link,.firebase-page-summit h2,.firebase-page-summit h4,.firebase-page-summit h5,.firebase-page-summit main,.firebase-page-summit p,.three-column__column .firebase-page-summit .no-link{color:#000}.firebase-page-summit .cta-button{background-color:#1a73e8;color:#fff}.firebase-page-summit .cta-button:active,.firebase-page-summit .cta-button:focus,.firebase-page-summit .cta-button:hover{background-color:#1967d2}.firebase-page-summit .product-cols__col .product-cols__header{background-color:#f8f9fa}.firebase-page-summit .product-icon__name{color:#202124}.firebase-page-summit .card,.firebase-page-summit devsite-dialog{background-color:#fff}.firebase-page-summit .card hr{border-top:1px solid #cfd8dc}.firebase-page-summit .show-all-button,.firebase-page-summit .three-column devsite-pagination .button,.firebase-page-summit a{color:#1e88e5}.firebase-page-summit-landing .firesite__bg--container{z-index:-1;background-color:#ffca28}.firebase-page-summit-landing .firesite__bg--container img{z-index:2;max-width:800px;height:auto;top:48px}@media screen and (min-width:720px){.firebase-page-summit-landing .firesite__bg--container img{max-width:1600px;height:auto;top:-160px}}.firebase-page-summit-landing .firesite__bg--container svg{z-index:1;top:-800px;left:calc(50% - 80px)}.firebase-page-summit-landing .summitpage-hero{position:relative;height:352px}@media screen and (min-width:720px){.firebase-page-summit-landing .summitpage-hero{height:436px}}.firebase-page-summit-landing .summitpage-hero__illo{background:url(../images/summit/nachos/hero_image_1x.png) center top/cover no-repeat;min-height:500px;-webkit-transform:scale(1.2);transform:scale(1.2);max-width:100%}@media screen and (min-width:720px){.firebase-page-summit-landing .summitpage-hero__illo{-webkit-transform:scale(1.1);transform:scale(1.1);min-height:800px}}@media screen and (min-width:1280px){.firebase-page-summit-landing .summitpage-hero__illo{background:url(../images/summit/nachos/hero_image_2x.png) center center/contain no-repeat;-webkit-transform:scale(2);transform:scale(2);min-height:900px}}@media screen and (min-width:1440px){.firebase-page-summit-landing .summitpage-hero__illo{min-height:1000px}}.firebase-page-summit-landing .summitpage-hero__text{position:absolute;text-align:center;height:100%;margin-left:auto;margin-right:auto;top:0;left:0;right:0}@media screen and (min-width:400px){.firebase-page-summit-landing .summitpage-hero__text{width:400px}}@media screen and (min-width:1000px){.firebase-page-summit-landing .summitpage-hero__text{width:460px}}.firebase-page-summit-landing .summitpage-hero__text .title{background:url(../images/summit/nachos/hero_title.svg) center center/contain no-repeat;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;height:132px}@media screen and (min-width:1000px){.firebase-page-summit-landing .summitpage-hero__text .title{height:152px}}.firebase-page-summit-landing .summitpage-hero__text .title h2{color:#fff;padding-left:32px;margin:0;font-weight:400}@media screen and (min-width:1000px){.firebase-page-summit-landing .summitpage-hero__text .title h2{padding-left:48px;font-size:32px}}@media screen and (max-width:400px){.firebase-page-summit-landing .summitpage-hero__text .title h2{font-size:clamp(18px,6vw,28px)}}.firebase-page-summit-landing .summitpage-hero__text h2{color:#5374d4}@media screen and (min-width:720px){.firebase-page-summit-landing .summitpage-hero__text h2{margin-top:24px}}.firebase-page-summit-community .firesite__bg--container{background-color:#ffca28;z-index:-1}.firebase-page-summit-community .firesite__bg--container svg{z-index:0;left:calc(50% - 20px)}.firebase-page-summit-community .firesite__bg--top svg{top:-1480px}@media screen and (min-width:1000px){.firebase-page-summit-community .firesite__bg--top svg{top:-1200px}}.firebase-page-summit-community .product-header h1{max-width:150px;margin:auto}@media screen and (min-width:400px){.firebase-page-summit-community .product-header h1{max-width:100%}}@media screen and (min-width:600px){.firebase-page-summit-community .product-header h1{max-width:150px;margin:0}}.firebase-page-summit-community .product-header__wrapper{padding-top:60px;padding-bottom:180px}@media screen and (max-width:1000px){.firebase-page-summit-community .product-header__wrapper{padding:50px 40px 120px}}@media screen and (max-width:720px){.firebase-page-summit-community .product-header__wrapper{padding:40px 40px 80px}}@media screen and (max-width:600px){.firebase-page-summit-community .product-header__wrapper{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding-top:60px}}.firebase-page-summit-community .product-header__illo{min-height:180px;z-index:-1}@media screen and (min-width:600px){.firebase-page-summit-community .product-header__illo{min-height:150px}}.firebase-page-summit-community .product-header__illo img{position:absolute;bottom:-40px;right:12px;-webkit-transform:scale(1);transform:scale(1)}@media screen and (min-width:600px){.firebase-page-summit-community .product-header__illo img{-webkit-transform:scale(.6);transform:scale(.6);bottom:auto;top:-120px;right:-150px;max-height:none;max-width:none;height:auto}}@media screen and (min-width:720px){.firebase-page-summit-community .product-header__illo img{-webkit-transform:scale(.8);transform:scale(.8);top:-80px;right:-80px}}@media screen and (min-width:1000px){.firebase-page-summit-community .product-header__illo img{-webkit-transform:scale(.9);transform:scale(.9);max-width:none;width:auto;top:-40px;right:40px}}@media screen and (min-width:1280px){.firebase-page-summit-community .product-header__illo img{-webkit-transform:scale(1);transform:scale(1);right:40px}}.firebase-page-summit-community .card__divider{margin:24px 0}@media screen and (min-width:720px){.firebase-page-summit-community .card__divider{margin:48px 0}}.firebase-page-summit-community .simple__title{max-width:880px}.firebase-page-support .devsite-article{width:auto;margin-left:0}.firebase-page-support .card__heading{font:500 16px/24px "Google Sans",sans-serif;line-height:22px;margin-bottom:20px!important;text-align:left}@media screen and (min-width:1000px){.firebase-page-support .card__heading{font:500 28px/36px "Google Sans",sans-serif}}.firebase-page-support .firesite__bg>svg{position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:200px;left:calc(50% + 400px)}@media screen and (min-width:1000px){.firebase-page-support .firesite__bg>svg{top:500px}}.firebase-page-support .firesite__bg--top>svg{left:1000px;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:-3000px}@media screen and (min-width:1000px){.firebase-page-support .firesite__bg--top>svg{left:calc(50% + 500px);top:-2700px}}.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}}@media screen and (min-width:1000px){.firebase-page-use-cases .firesite__bg>svg{top:100px;left:calc(50% + 120px)}}.firebase-page-use-cases .firesite__bg>svg{left:calc(50% + 400px);position:absolute;top:240px;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@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}@media screen and (min-width:1000px){.firebase-page-use-cases .firesite__bg--top>svg{left:calc(50% + 500px);top:-2400px}.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 .landing-header--coral{margin-bottom:40px}@media screen and (min-width:1000px){.firebase-page-use-cases .landing-header--coral{margin-bottom:140px}}.firebase-page-use-cases .product-icon__name{font:500 14px/26px "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{overflow-x:clip}[template=page] .devsite-article-body{margin-top:0!important}body[ready][concierge] #gc-wrapper{-webkit-margin-end:0!important;-moz-margin-end:0!important;margin-inline-end:0!important}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}h2{padding-right:0!important}.expandable{width:100%}.expand-control{position:relative}.devsite-product-id-row,.devsite-rating-container{display:none!important}.devsite-iframe{padding:0}.devsite-wrapper{position:relative;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:500 12px/12px "Google Sans",sans-serif;line-height:16px;color:rgba(0,0,0,.67);letter-spacing:.2px;margin:0;text-transform:none}.kd-menulist .kd-menulistitem{font:500 14px/18px "Google Sans",sans-serif;font-weight:400;padding:12px}.kd-menulist .kd-menulistitem:hover{background-color:#eceff1}.firebase-video-modal:not([open]){width:0}.firebase-video-modal:not([open]) .devsite-dialog-close{display:none!important}.carousel devsite-iframe>iframe{padding:0 16px}.devsite-article .devsite-article-body h1:first-of-type{display:block}.cta-dialog:active,.cta-dialog:focus,.cta-dialog:hover{border:0;color:#fff}.cta-dialog--transparent:active,.cta-dialog--transparent:focus,.cta-dialog--transparent:hover{border:0;color:#202124;background-color:transparent;text-decoration:underline}.cta-link--white:focus{background-color:transparent;text-decoration:underline}devsite-pagination .devsite-pagination-less-button,devsite-pagination .devsite-pagination-more-button{background:0 0;color:var(--firebase-link-color)}devsite-pagination .devsite-pagination-less-button:focus,devsite-pagination .devsite-pagination-less-button:hover,devsite-pagination .devsite-pagination-more-button:focus,devsite-pagination .devsite-pagination-more-button:hover{color:var(--firebase-link-color);background:var(--firebase-link-bg-hover-color)}devsite-pagination .devsite-pagination .material-icons{display:none}.completed-title{color:var(--firebase-body-color)!important}.sharing{color:var(--firebase-link-color)!important}.view-profile-button{color:var(--firebase-button-text-color)!important} </style> <div class="devsite-article-meta nocontent" role="navigation"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> <a href="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-20241114-r00-rc02.464922260396498922" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="header" class="nocontent" project-feedback-url="https://firebase.google.com/support/contact/bugs-features/" project-icon="https://firebase.google.com/_static/firebase/images/icon.svg" project-support-url="https://firebase.google.com/support/" > <button> Send feedback </button> </devsite-feedback> <devsite-feature-tooltip ack-key="AckCollectionsBookmarkTooltipDismiss" analytics-category="Site-Wide Custom Events" analytics-action-show="Callout Profile displayed" analytics-action-close="Callout Profile dismissed" analytics-label="Create Collection Callout" class="devsite-page-bookmark-tooltip nocontent" dismiss-button="true" id="devsite-collections-dropdown" dismiss-button-text="Dismiss" close-button-text="Got it"> <devsite-bookmark></devsite-bookmark> <span slot="popout-heading"> Stay organized with collections </span> <span slot="popout-contents"> Save and categorize content based on your preferences. </span> </devsite-feature-tooltip> <devsite-toc class="devsite-nav" depth="2" devsite-toc-embedded disabled> </devsite-toc> <div class="devsite-article-body clearfix devsite-no-page-title"> <main> <div class="content-wrapper background--dark"> <section class="product-header-new" id="build-and-deploy-modern-full-stack-web-apps"> <header class="product-header-new__wrapper"> <div class="product-header-new__content"> <h1 id="product-header-title" data-text=" Build and deploy modern, full-stack web apps " tabindex="-1"> Build and deploy modern, full-stack web apps </h1> <h2 class="product-header-new__body" id="quickly-ship-angular-and-next.js-apps-with-the-security-and-scalability-of-google-cloud.-a-single-product-to-manage-everything-from-the-cdn-to-server-side-rendering." data-text=" Quickly ship Angular and Next.js apps with the security and scalability of Google Cloud. A single product to manage everything from the CDN to server-side rendering. " tabindex="-1"> Quickly ship Angular and Next.js apps with the security and scalability of Google Cloud. A single product to manage everything from the CDN to server-side rendering. </h2> <div class="product-header-new__ctas"> <a class="cta-button--outline-orange gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" href="https://console.firebase.google.com/project/_/apphosting"> Get Started </a> <a class="cta-button--outline-orange gc-analytics-event" data-action="linkClick" data-category="viewDocs" data-label="hero" devsite="true" href="/docs/app-hosting"> View Docs </a> </div> </div> <div aria-hidden="true" class="product-header-new__illo" role="presentation"> <img alt="App Hosting illustration" aria-hidden="true" class="firesite-darkmode-image" role="presentation" src="/static/images/products/app-hosting/hero-dark.png" srcset="https://firebase.google.com/static/images/products/app-hosting/hero-dark.png 2x,https://firebase.google.com/static/images/products/app-hosting/hero-dark.png 1x"> <img alt="App Hosting illustration" aria-hidden="true" class="firesite-lightmode-image" role="presentation" src="/static/images/products/app-hosting/hero.png" srcset="https://firebase.google.com/static/images/products/app-hosting/hero.png 2x,https://firebase.google.com/static/images/products/app-hosting/hero.png 1x"> </div> </header> </section> </div> <div class="content-wrapper"> <section class="side-side top-padding bottom-padding no-right-container-padding"> <div class="side-side-wrapper"> <div class="side-side-wrapper__left-container"> <div class="content"> <h3 class="content__heading" id="roll-out-to-production-with-a-simple-git-push" data-text=" Roll out to production with a simple 'git push' " tabindex="-1"> Roll out to production with a simple 'git push' </h3> <div class="content__body"> <inline-html><p>Connect App Hosting to your GitHub repository using the Firebase console or CLI. When it's time to deploy, push your changes to GitHub and watch App Hosting roll them out to production using reproducible, cloud-based builds.</p></inline-html> </div> <div class="content__ctas"> <div class="content__cta"> <a class="cta-button--outline-orange gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" devsite="true" href="/docs/app-hosting/rollouts"> Learn more </a> </div> </div> </div> </div> <div class="side-side-wrapper__right-container"> <div class="content"> <div class="content__video"> <video autoplay="true" class="" loop="true" muted="true" playsinline="true" preload=""> <source src="/static/images/products/app-hosting/Github End to End.webm" type="video/webm"/> <track kind="captions" src="/static/images/captions.vtt"/> </video> </div> </div> </div> </div> </section> </div> <div class="content-wrapper"> <section class="side-side top-padding bottom-padding"> <div class="side-side-wrapper"> <div class="side-side-wrapper__left-container"> <div class="content"> <div class="content__video"> <video autoplay="true" class="content__video--light" loop="true" muted="true" playsinline="true" preload=""> <source src="/static/images/products/app-hosting/Google Cloud Logo_LightMode.webm" type="video/webm"/> <track kind="captions" src="/static/images/captions.vtt"/> </video> <video autoplay="true" class="content__video--dark" loop="true" muted="true" playsinline="true" preload=""> <source src="/static/images/products/app-hosting/Google Cloud Logo_DarkMode.webm" type="video/webm"/> <track kind="captions" src="/static/images/captions.vtt"/> </video> </div> </div> </div> <div class="side-side-wrapper__right-container"> <div class="content"> <h3 class="content__heading" id="secure,-scalable-google-cloud-foundation" data-text=" Secure, scalable Google Cloud foundation " tabindex="-1"> Secure, scalable Google Cloud foundation </h3> <div class="content__body"> <inline-html><p>App Hosting is powered by Google Cloud. Apps are built with Cloud Build, served on Cloud Run with automatic scaling, and cached in Cloud CDN. Integrated services like Cloud Secret Manager keep your API keys safe.</p></inline-html> </div> <div class="content__ctas"> <div class="content__cta"> <a class="cta-button--outline-orange gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" devsite="true" href="/docs/app-hosting"> Learn more </a> </div> </div> </div> </div> </div> </section> </div> <div class="content-wrapper"> <section class="block top-padding"> <div class="block-wrapper block-wrapper--half-width"> <div class="block__content"> <div class="content"> <h3 class="content__heading" id="a-full-stack-solution-to-manage-everything-from-the-cdn-to-server-side-rendering" data-text=" A full-stack solution to manage everything from the CDN to server-side rendering " tabindex="-1"> A full-stack solution to manage everything from the CDN to server-side rendering </h3> <div class="content__body"> <inline-html><p>App Hosting supports full-stack web apps end-to-end, with support for static site generation, client-side rendering, and server-side rendering. Combine rendering methods to optimize your app's performance and SEO without worrying about the required infrastructure.</p></inline-html> </div> <div class="content__ctas"> <div class="content__cta"> <a class="cta-button--outline-orange gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" devsite="true" href="/docs/app-hosting"> Learn more </a> </div> </div> </div> </div> </div> </section> </div> <div class="content-wrapper"> <section class="side-side top-padding no-right-container-padding"> <div class="side-side-wrapper"> <div class="side-side-wrapper__left-container"> <div class="content"> <h3 class="content__heading" id="ship-performant-ai-powered-features-to-your-users" data-text=" Ship performant AI-powered features to your users " tabindex="-1"> Ship performant AI-powered features to your users </h3> <div class="content__body"> <inline-html><p>Use our ready-to-deploy Gemini sample apps to get started with AI faster. App Hosting's streaming support helps ensure your app has fast initial load times, even as you add more and more generative AI features into your app.</p></inline-html> </div> <div class="content__ctas"> <div class="content__cta"> <a class="cta-button--outline-orange gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" devsite="true" href="/solutions/portal?product=firebaseapphosting"> Learn more </a> </div> </div> </div> </div> <div class="side-side-wrapper__right-container"> <div class="content"> <div class="content__video"> <video autoplay="true" class="" loop="true" muted="true" playsinline="true" preload=""> <source src="/static/images/products/app-hosting/Firebase_AppHosting_AITemplates.webm" type="video/webm"/> <track kind="captions" src="/static/images/captions.vtt"/> </video> </div> </div> </div> </div> </section> </div> <div class="content-wrapper"> <section class="block top-padding bottom-padding"> <div class="block-wrapper"> <div> <div class="three-column"> <div class="three-column__wrapper"> <div class="three-column__column"> <div class="three-column__column__image-link inline-image"> <a class="gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" devsite="true" href="/docs/app-hosting/about-app-hosting"> <img alt="Zero-config support for popular frameworks" class loading="lazy" src="/static/images/products/app-hosting/AppHosting_Feature01_1x.png" srcset="https://firebase.google.com/static/images/products/app-hosting/AppHosting_Feature01_2x.png 2x,https://firebase.google.com/static/images/products/app-hosting/AppHosting_Feature01_1x.png 1x"> </a> </div> <div class="no-link"> Zero-config support for popular frameworks </div> <div class="three-column__column__description"> <p> App Hosting is able to detect and understand Next.js and Angular configurations, so it can automatically set up your infrastructure with Cloud Build and Cloud Run based on your source code. </p> </div> <div class="three-column__column__ctas"> <a class="cta-button--outline-orange gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" devsite="true" href="/docs/app-hosting/about-app-hosting"> Learn more </a> </div> </div> <div class="three-column__column"> <div class="three-column__column__image-link inline-image"> <a class="gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" devsite="true" href="/docs/app-hosting/configure"> <img alt="Enterprise-grade secrets management" class loading="lazy" src="/static/images/products/app-hosting/AppHosting_Feature02_1x.png" srcset="https://firebase.google.com/static/images/products/app-hosting/AppHosting_Feature02_2x.png 2x,https://firebase.google.com/static/images/products/app-hosting/AppHosting_Feature02_1x.png 1x"> </a> </div> <div class="no-link"> Enterprise-grade secrets management </div> <div class="three-column__column__description"> <p> Protect sensitive information like API keys by creating secrets through the Firebase CLI. Firebase App Hosting integrates with Cloud Secret Manager, giving you access to enterprise-grade security features like versioning, rotation, and fine-tuned IAM. </p> </div> <div class="three-column__column__ctas"> <a class="cta-button--outline-orange gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" devsite="true" href="/docs/app-hosting/configure"> Learn more </a> </div> </div> <div class="three-column__column"> <div class="three-column__column__image-link inline-image"> <a class="gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" devsite="true" href="/docs/app-hosting/custom-domain"> <img alt="Domain management" class loading="lazy" src="/static/images/products/app-hosting/AppHosting_Feature03_1x.png" srcset="https://firebase.google.com/static/images/products/app-hosting/AppHosting_Feature03_2x.png 2x,https://firebase.google.com/static/images/products/app-hosting/AppHosting_Feature03_1x.png 1x"> </a> </div> <div class="no-link"> Domain management </div> <div class="three-column__column__description"> <p> Use a Firebase-provided subdomain or add domains you own (e.g. www.myname.com) to your App Hosting backend, so when your users type that domain into their browser, they're taken to your web app. </p> </div> <div class="three-column__column__ctas"> <a class="cta-button--outline-orange gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="hero" devsite="true" href="/docs/app-hosting/custom-domain"> Learn more </a> </div> </div> </div> </div> </div> </div> </section> </div> <div class="content-wrapper background--dark"> <section class="side-side top-padding"> <div class="side-side-wrapper side-side-wrapper__divider"> <div class="side-side-wrapper__left-container"> <div class="content"> <h3 class="content__heading" id="documentation" data-text=" Documentation " tabindex="-1"> Documentation </h3> <div class="content__body"> <inline-html><p>Learn how to get started with App Hosting by reviewing our technical documentation</p></inline-html> </div> <div class="content__ctas"> <div class="content__cta"> <a class="cta-button--outline-orange" devsite="true" href="/docs/app-hosting"> Get started </a> </div> </div> </div> </div> <div class="side-side-wrapper__right-container"> <div class="content"> <h3 class="content__heading" id="pricing" data-text=" Pricing " tabindex="-1"> Pricing </h3> <div class="content__body"> <inline-html><p>Understand App Hosting's pricing</p></inline-html> </div> <div class="content__ctas"> <div class="content__cta"> <a class="cta-button--outline-orange" devsite="true" href="/docs/app-hosting/costs"> View pricing </a> </div> </div> </div> </div> </div> </section> </div> <div class="content-wrapper background--dark"> <section class="cta-hero-footer"> <div class="content-wrapper"> <div class="cta-hero-footer__text"> <svg fill="none" height="91" viewbox="0 0 73 91" width="73" xmlns="http://www.w3.org/2000/svg"> <path d="M22.5752 87.933C26.3634 89.4568 30.4722 90.3615 34.7873 90.5132C40.6261 90.717 46.1816 89.5089 51.1455 87.2147C45.1923 84.8757 39.8009 81.4554 35.1974 77.2024C32.2171 81.9798 27.805 85.7506 22.5752 87.933Z" fill="#FF9100"> </path> <path d="M35.1996 77.2049C24.6952 67.4909 18.3219 53.4295 18.8613 38.0059C18.8787 37.5063 18.906 37.0042 18.9359 36.5046C17.0542 36.0174 15.0905 35.7216 13.0697 35.6495C10.1764 35.5476 7.37501 35.908 4.73026 36.6512C1.92643 41.5629 0.233686 47.1979 0.0224039 53.2356C-0.521958 68.8158 8.90619 82.4273 22.5749 87.9331C27.8047 85.7532 32.2168 81.9849 35.1996 77.2049Z" fill="#FFC400"> </path> <path d="M35.1998 77.2047C37.6433 73.2973 39.1222 68.7137 39.2962 63.7772C39.7486 50.792 31.019 39.6214 18.9361 36.5044C18.9063 37.004 18.8789 37.5061 18.8615 38.0057C18.3246 53.4268 24.6954 67.4883 35.1998 77.2047Z" fill="#FF9100"> </path> <path d="M37.9435 0C31.0632 5.51321 25.6271 12.7813 22.341 21.1555C20.4594 25.9529 19.2762 31.1032 18.9307 36.5045C31.0135 39.6216 39.7432 50.7922 39.2883 63.7798C39.1168 68.7163 37.6304 73.2949 35.1919 77.2074C39.7929 81.4653 45.1868 84.8806 51.14 87.2196C63.0911 81.6965 71.5697 69.81 72.0594 55.7511C72.3775 46.6411 68.8777 38.5229 63.9337 31.6699C58.7113 24.4242 37.9435 0 37.9435 0Z" fill="#DD2C00"> </path> </svg> <span class="cta-hero-footer__text--title dark"> Try Firebase today </span> <p class="dark"> Integrating it into your app is easy. </p> <a class="cta-button--outline-orange gc-analytics-event" data-action="linkClick" data-category="getStarted" data-label="homepage-footer" href="https://console.firebase.google.com/"> Get started </a> </div> </div> </section> </div> <div class="content-wrapper"> <section class="products-footer" id="all-firebase-products"> <div class="products-footer-wrapper"> <div class="products-footer-wrapper__left-container"> <h4 class="products-footer-wrapper__left-container-title" id="footer-title" data-text=" All Firebase products " tabindex="-1"> All Firebase products </h4> </div> <div class="products-footer-wrapper__right-container"> <div class="products-footer-wrapper__linkbox"> <h5 class="products-footer-wrapper__linkbox-heading" id="build" data-text=" Build " tabindex="-1"> Build </h5> <ul class="products-footer-wrapper__linkbox-list"> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/app-check"> App Check </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/app-hosting"> App Hosting </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/auth"> Authentication </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/functions"> Cloud Functions </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/storage"> Cloud Storage </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/data-connect"> Data Connect </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/extensions"> Extensions </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/firestore"> Firestore </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/ml"> Firebase ML </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/genkit"> Genkit </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" devsite="true" href="/products/hosting"> Hosting </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/realtime-database"> Realtime Database </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/vertex-ai-in-firebase"> Vertex AI in Firebase </a> </li> </ul> <div class="products-footer-wrapper__secondary-cta"> <a class="cta-link--footer" href="/products/generative-ai"> Generative AI </a> </div> </div> <div class="products-footer-wrapper__linkbox"> <h5 class="products-footer-wrapper__linkbox-heading" id="run" data-text=" Run " tabindex="-1"> Run </h5> <ul class="products-footer-wrapper__linkbox-list"> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/ab-testing"> A/B Testing </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/app-distribution"> App Distribution </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/cloud-messaging"> Cloud Messaging </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/crashlytics"> Crashlytics </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/analytics"> Google Analytics </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/in-app-messaging"> In-App Messaging </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/performance"> Performance Monitoring </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/remote-config"> Remote Config </a> </li> <li class="products-footer-wrapper__linkbox-item"> <a class="cta-link--footer" href="/products/test-lab"> Test Lab </a> </li> </ul> </div> </div> </div> </section> </div> </main> </div> <div class="devsite-floating-action-buttons"> </div> </article> <devsite-notification > </devsite-notification> <div class="devsite-content-data"> <template class="devsite-thumb-rating-feedback"> <devsite-feedback position="thumb-rating" project-name="Firebase" product-id="719752" bucket="" context="" version="t-devsite-webserver-20241114-r00-rc02.464922260396498922" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="thumb-rating" class="nocontent" project-feedback-url="https://firebase.google.com/support/contact/bugs-features/" project-icon="https://firebase.google.com/_static/firebase/images/icon.svg" project-support-url="https://firebase.google.com/support/" > <button> Need to tell us more? </button> </devsite-feedback> </template> <template class="devsite-content-data-template"> [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],[],[],[]] </template> </div> </devsite-content> </main> <devsite-footer-promos class="devsite-footer"> </devsite-footer-promos> <devsite-footer-linkboxes class="devsite-footer"> <nav class="devsite-footer-linkboxes nocontent" aria-label="Footer links"> <ul class="devsite-footer-linkboxes-list"> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Learn</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/docs/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Developer guides </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/docs/reference/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > SDK & API reference </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/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="/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="//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="//firebase.blog" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Check out the blog </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//www.reddit.com/r/Firebase" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Find us on Reddit </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//x.com/Firebase" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Follow on X </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//www.youtube.com/user/Firebase" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Subscribe on YouTube </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/community/events" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Attend an event </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="/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="//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="//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="//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="/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="/brand-guidelines/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)" > Brand guidelines </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/support/faq/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 7)" > 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://developers.google.com/" class="devsite-footer-sites-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Developers Link"> <picture> <source srcset="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/images/lockup-google-for-developers-dark-theme.svg" media="(prefers-color-scheme: none)" class="devsite-dark-theme" loading="lazy" alt="Google Developers"> <img class="devsite-footer-sites-logo" src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/images/lockup-google-for-developers.svg" loading="lazy" alt="Google Developers"> </picture> </a> <ul class="devsite-footer-sites-list"> <li class="devsite-footer-sites-item"> <a href="//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="//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="//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="//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="//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="/terms/" data-category="Site-Wide Custom Events" data-label="Footer Terms link" > Terms </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link" > Privacy </a> </li> <li class="devsite-footer-utility-item glue-cookie-notification-bar-control"> <a class="devsite-footer-utility-link gc-analytics-event" href="#" data-category="Site-Wide Custom Events" data-label="Footer Manage cookies link" aria-hidden="true" > Manage cookies </a> </li> </ul> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> </nav> </div> </devsite-footer-utility> <devsite-panel></devsite-panel> <devsite-concierge data-info-panel data-ai-panel > </devsite-concierge> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip ></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics> <script type="application/json" analytics>[]</script> <script type="application/json" tag-management>{&#34;at&#34;: &#34;True&#34;, &#34;ga4&#34;: [], &#34;ga4p&#34;: [], &#34;gtm&#34;: [{&#34;id&#34;: &#34;GTM-N84485&#34;, &#34;purpose&#34;: 0}], &#34;parameters&#34;: {&#34;internalUser&#34;: &#34;False&#34;, &#34;language&#34;: {&#34;machineTranslated&#34;: &#34;False&#34;, &#34;requested&#34;: &#34;en&#34;, &#34;served&#34;: &#34;en&#34;}, &#34;pageType&#34;: &#34;article&#34;, &#34;projectName&#34;: &#34;Firebase&#34;, &#34;signedIn&#34;: &#34;False&#34;, &#34;tenant&#34;: &#34;firebase&#34;, &#34;recommendations&#34;: {&#34;sourcePage&#34;: &#34;&#34;, &#34;sourceType&#34;: 0, &#34;sourceRank&#34;: 0, &#34;sourceIdenticalDescriptions&#34;: 0, &#34;sourceTitleWords&#34;: 0, &#34;sourceDescriptionWords&#34;: 0, &#34;experiment&#34;: &#34;&#34;}, &#34;experiment&#34;: {&#34;ids&#34;: &#34;&#34;}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <firebase-gtm></firebase-gtm> <firebase-utm></firebase-utm> <script nonce="RDWl8+l5h7rqvjhrII3yPNzJSkhdjl"> (function(d,e,v,s,i,t,E){d['GoogleDevelopersObject']=i; t=e.createElement(v);t.async=1;t.src=s;E=e.getElementsByTagName(v)[0]; E.parentNode.insertBefore(t,E);})(window, document, 'script', 'https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/js/app_loader.js', '[4,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase","https://firebase-dot-devsite-v2-prod.appspot.com",1,null,["/_pwa/firebase/manifest.json","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/images/favicon.png","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/firebase/images/lockup.svg","https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"],1,null,[1,6,8,12,14,17,21,25,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,112,113,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,147,148,149,151,152,156,157,158,159,161,163,164,168,169,170,179,180,182,183,186,191,193,196],"AIzaSyAP-jjEJBzmIyKR4F-3XITp8yM9T1gEEI8","AIzaSyB6xiKGDR5O3Ak2okS4rLkauxGUG7XP0hg","firebase.google.com","AIzaSyAQk0fBONSGUqCNznf6Krs82Ap1-NV6J4o","AIzaSyCCxcqdrZ_7QMeLCRY20bh_SXdAYqy70KY",null,null,null,["MiscFeatureFlags__emergency_css","CloudShell__cloud_shell_button","TpcFeatures__enable_required_headers","Profiles__require_profile_eligibility_for_signin","Cloud__enable_cloud_facet_chat","TpcFeatures__enable_mirror_tenant_redirects","Experiments__reqs_query_experiments","MiscFeatureFlags__enable_explain_this_code","Search__enable_suggestions_from_borg","Profiles__enable_page_saving","MiscFeatureFlags__developers_footer_image","Analytics__enable_clearcut_logging","Cloud__enable_cloud_shell","Profiles__enable_developer_profiles_callout","DevPro__enable_developer_subscriptions","DevPro__enable_cloud_innovators_plus","Cloud__enable_cloudx_experiment_ids","Cloud__enable_cloud_shell_fte_user_flow","Cloud__enable_llm_concierge_chat","MiscFeatureFlags__enable_firebase_utm","Search__enable_dynamic_content_confidential_banner","Profiles__enable_complete_playlist_endpoint","Profiles__enable_awarding_url","Search__enable_ai_eligibility_checks","Profiles__enable_release_notes_notifications","MiscFeatureFlags__enable_view_transitions","EngEduTelemetry__enable_engedu_telemetry","Profiles__enable_dashboard_curated_recommendations","Profiles__enable_recognition_badges","Cloud__enable_cloudx_ping","Concierge__enable_concierge","Search__enable_page_map","Profiles__enable_completecodelab_endpoint","Profiles__enable_profile_collections","Significatio__enable_by_tenant","Profiles__enable_public_developer_profiles","MiscFeatureFlags__enable_dark_theme","MiscFeatureFlags__developers_footer_dark_image","MiscFeatureFlags__enable_variable_operator","Cloud__enable_legacy_calculator_redirect","Cloud__enable_cloud_dlp_service","CloudShell__cloud_code_overflow_menu","Search__enable_ai_search_summaries","BookNav__enable_tenant_cache_key","Concierge__enable_pushui","Cloud__enable_free_trial_server_call","MiscFeatureFlags__enable_project_variables"],null,null,"AIzaSyBLEMok-5suZ67qRPzx0qUtbnLmyT_kCVE","https://developerscontentserving-pa.clients6.google.com","AIzaSyCM4QpTRSqP5qI4Dvjt4OAScIN8sOUlO-k","https://developerscontentsearch-pa.clients6.google.com",1,4,null,"https://developerprofiles-pa.clients6.google.com",[4,"firebase","Firebase","firebase.google.com",null,"firebase-dot-devsite-v2-prod.appspot.com",null,null,[1,1,null,null,null,null,null,null,null,null,null,[1],null,null,null,null,null,null,[1],[1,null,null,[1]],null,null,null,[1,null,1],[1,1,null,null,1]],null,[68,null,null,null,null,null,"/images/lockup.svg","/images/touchicon-180.png",null,null,null,1,1,1,null,null,null,null,null,null,null,2,null,null,null,"/images/lockup.svg",[]],[],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[6,1,20,22,23,29,37],null,[[],[1,1]],[[null,null,null,null,["UA-24532603-9"],["GTM-N84485"],null,null,null,null,[["UA-24532603-9",1]],[["GTM-N84485",1]],1],[[36,4],[2,5],[16,2],[46,8],[17,1]],null,1],null,4],null,"pk_live_5170syrHvgGVmSx9sBrnWtA5luvk9BwnVcvIi7HizpwauFG96WedXsuXh790rtij9AmGllqPtMLfhe2RSwD6Pn38V00uBCydV4m"]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>

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