/*
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 */
/*
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 */
/* - Metropolis -*/
@font-face {
  font-family: metropolis;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-Regular.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-Regular.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-RegularItalic.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-RegularItalic.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-ExtraLight.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-ExtraLight.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-Light.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-Light.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-Thin.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-Thin.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: italic;
  font-weight: 100;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-ExtraLightItalic.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-ExtraLightItalic.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: italic;
  font-weight: 200;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-LightItalic.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-LightItalic.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-ThinItalic.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-ThinItalic.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-Medium.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-Medium.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-SemiBold.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-SemiBold.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-Bold.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-Bold.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-BoldItalic.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-BoldItalic.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-MediumItalic.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-MediumItalic.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-SemiBoldItalic.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-SemiBoldItalic.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-ExtraBold.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-ExtraBold.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: italic;
  font-weight: 800;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-ExtraBoldItalic.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-ExtraBoldItalic.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-Black.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-Black.woff") format("woff");
}
@font-face {
  font-family: metropolis;
  font-style: italic;
  font-weight: 900;
  font-display: swap;
  src: url("/media/fonts/Metropolis/Metropolis-BlackItalic.woff2") format("woff2"), url("/media/fonts/Metropolis/Metropolis-BlackItalic.woff") format("woff");
}
/*
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 */
/* - Inter -*/
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-Thin.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-Thin.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-ThinItalic.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-ThinItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-ExtraLight.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-ExtraLight.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 200;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-ExtraLightItalic.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-ExtraLightItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-Light.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-Light.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-LightItalic.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-LightItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-Regular.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-Regular.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-Italic.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-Italic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-Medium.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-Medium.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-MediumItalic.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-MediumItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-SemiBold.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-SemiBold.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-SemiBoldItalic.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-SemiBoldItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-Bold.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-Bold.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-BoldItalic.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-BoldItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-ExtraBold.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-ExtraBold.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 800;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-ExtraBoldItalic.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-ExtraBoldItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-Black.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-Black.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 900;
  font-display: swap;
  src: url("/media/fonts/Inter/Inter-BlackItalic.woff2?v=3.19") format("woff2"), url("/media/fonts/Inter/Inter-BlackItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: 'Inter var';
  font-weight: 100 900;
  font-display: swap;
  font-style: normal;
  font-named-instance: 'Regular';
  src: url("/media/fonts/Inter/Inter-roman.var.woff2?v=3.19") format("woff2");
}
@font-face {
  font-family: 'Inter var';
  font-weight: 100 900;
  font-display: swap;
  font-style: italic;
  font-named-instance: 'Italic';
  src: url("/media/fonts/Inter/Inter-italic.var.woff2?v=3.19") format("woff2");
}
:root {
  --color-red-10: #fee2e2;
  --color-red-20: #fecaca;
  --color-red-30: #fca5a5;
  --color-red-40: #f87171;
  --color-red-50: #ef4444;
  --color-red-60: #dc2626;
  --color-red-70: #b91c1c;
  --color-red-80: #991b1b;
  --color-red-90: #7f1d1d;
  --color-orange-10: #ffedd5;
  --color-orange-20: #fed7aa;
  --color-orange-30: #fdba74;
  --color-orange-40: #fb923c;
  --color-orange-50: #f97316;
  --color-orange-60: #ea580c;
  --color-orange-70: #c2410c;
  --color-orange-80: #9a3412;
  --color-orange-90: #7c2d12;
  --color-amber-10: #fef3c7;
  --color-amber-20: #fde68a;
  --color-amber-30: #fcd34d;
  --color-amber-40: #fbbf24;
  --color-amber-50: #f59e0b;
  --color-amber-60: #d97706;
  --color-amber-70: #b45309;
  --color-amber-80: #92400e;
  --color-amber-90: #78350f;
  --color-yellow-10: #fef9c3;
  --color-yellow-20: #fef08a;
  --color-yellow-30: #fde047;
  --color-yellow-40: #facc15;
  --color-yellow-50: #eab308;
  --color-yellow-60: #ca8a04;
  --color-yellow-70: #a16207;
  --color-yellow-80: #854d0e;
  --color-yellow-90: #713f12;
  --color-green-10: #dcfce7;
  --color-green-20: #bbf7d0;
  --color-green-30: #86efac;
  --color-green-40: #4ade80;
  --color-green-50: #22c55e;
  --color-green-60: #16a34a;
  --color-green-70: #15803d;
  --color-green-80: #166534;
  --color-green-90: #14532d;
  --color-teal-10: #cdfaf7;
  --color-teal-20: #9ff4f0;
  --color-teal-30: #62e9e6;
  --color-teal-40: #27d3d6;
  --color-teal-50: #0db7bd;
  --color-teal-60: #0a929d;
  --color-teal-70: #0e757f;
  --color-teal-80: #135e67;
  --color-teal-90: #144e56;
  --color-blue-10: #ddeefe;
  --color-blue-20: #bce0fd;
  --color-blue-30: #88ccfc;
  --color-blue-40: #4cb1f9;
  --color-blue-50: #2493ef;
  --color-blue-60: #1373d9;
  --color-blue-70: #105bbc;
  --color-blue-80: #124c9a;
  --color-blue-90: #15427c;
  --color-purple-10: #f3e8ff;
  --color-purple-20: #e9d5ff;
  --color-purple-30: #d8b4fe;
  --color-purple-40: #c084fc;
  --color-purple-50: #a855f7;
  --color-purple-60: #9333ea;
  --color-purple-70: #7e22ce;
  --color-purple-80: #6b21a8;
  --color-purple-90: #581c87;
  --color-magenta-10: #fbe7f9;
  --color-magenta-20: #f8cff3;
  --color-magenta-30: #f4a9e8;
  --color-magenta-40: #ee75d7;
  --color-magenta-50: #e247c4;
  --color-magenta-60: #cd26a5;
  --color-magenta-70: #b01a86;
  --color-magenta-80: #91186e;
  --color-magenta-90: #79195c;
  --color-brown-10: #f4e9d7;
  --color-brown-20: #efdfc4;
  --color-brown-30: #e4cdab;
  --color-brown-40: #d7bc96;
  --color-brown-50: #b6986c;
  --color-brown-60: #96764b;
  --color-brown-70: #755b38;
  --color-brown-80: #51412c;
  --color-brown-90: #47341f;
  --color-gray-05: #fafafa;
  --color-gray-10: #f4f4f5;
  --color-gray-20: #e4e4e7;
  --color-gray-30: #d4d4d8;
  --color-gray-40: #a1a1aa;
  --color-gray-50: #71717a;
  --color-gray-60: #52525b;
  --color-gray-70: #3f3f46;
  --color-gray-80: #27272a;
  --color-gray-90: #18181b;
  --color-ink-10: #f1f3fa;
  --color-ink-20: #e3e5f2;
  --color-ink-30: #cdd0e5;
  --color-ink-40: #9b9ec2;
  --color-ink-50: #6e6f9b;
  --color-ink-60: #52507c;
  --color-ink-70: #3e3c67;
  --color-ink-80: #2a284b;
  --color-ink-90: #1a1838;
  --color-white: #fff;
  --color-black: #000;
  --color-link: #1E4EAE;
  --color-button-border-active: #0B68CB;
}
a {
  color: currentColor;
  text-decoration: underline;
  transition: font-size 0.2s, text-decoration-color 0.2s;
}
a:focus-visible,
a.focused {
  outline: var(--focus-outline);
  outline-offset: var(--focus-outline-offset);
}
a.dotted {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-color: currentColor;
  text-underline-offset: 0.25em;
  text-decoration-thickness: 0.12em;
}
a.strong {
  text-decoration: none;
  font-weight: 600;
}
a.strong::after {
  --bg-img: url('/media/svg/chevron-right.svg');
  position: relative;
  top: 0.17rem;
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background-position: center;
  background-repeat: no-repeat;
  background-image: var(--bg-img);
  content: '';
  margin-left: 0.5rem;
  background-color: var(--color-blue-50);
  mask-image: var(--bg-img);
  mask-repeat: no-repeat;
  -webkit-mask-image: var(--bg-img);
  -webkit-mask-repeat: no-repeat;
}
a.donate,
a:hover,
a:hover:visited {
  text-decoration-color: var(--accent);
}
/*-------------------------
* Media Queries
*--------------------------*/
:root {
  --bg: white;
  --txt: var(--color-ink-80);
  --accent: var(--color-link);
  --glow: var(--color-purple-70);
  --separator-color: var(--color-gray-20);
  --nav-bg: transparent;
  --nav-txt: white;
  --nav-height: 5rem;
  --offset-x: 0;
  --offset-y: 0;
  --page-header-bg: #f2f2f2;
  --border-radius-sm: 0.1875rem;
  --border-radius-md: 0.375rem;
  --border-radius-lg: 0.75rem;
  --border-radius-circle: 100%;
  --border-radius: var(--border-radius-md);
  --border-color: #DEDEE0;
  --border-size: 1px;
  outline: 1px dotted ButtonText;
  --focus-outline-color: var(--color-link);
  --focus-outline-offset: 2px;
  --focus-outline: 2px solid var(--focus-outline-color);
}
.accordion {
  position: relative;
  width: 100%;
  min-width: 900px;
  min-height: 16px;
  margin-bottom: 1.5rem;
  text-align: left;
}
.accordion span {
  display: flex;
  align-content: center;
  margin-right: 0.5rem;
}
@media (max-width: 80rem) {
  .accordion {
    min-width: 100%;
  }
}
.accordion summary {
  list-style: none;
}
.accordion summary::-webkit-details-marker {
  display: none;
}
.accordion .question {
  border-radius: 6px;
  border: 1px solid var(--color-gray-30);
  padding: 1rem 2rem 1rem 1rem;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
}
.accordion .question::after {
  position: absolute;
  margin: auto auto;
  right: 0;
  padding-right: 1rem;
  content: url("/media/svg/zoom-out.svg");
}
.accordion[open] .question::after {
  content: url("/media/svg/zoom-in.svg");
}
.accordion .answer {
  padding-left: 1rem;
  padding-right: 1rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.accordion .answer br {
  margin-bottom: 1rem;
}
.accordion[open] summary ~ * {
  animation: sweep 0.5s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .accordion[open] summary ~ * {
    animation: none;
  }
}
.btn:focus-visible,
.btn-download:focus-visible,
[type="button"]:focus-visible,
.btn.focused,
.btn-download.focused,
[type="button"].focused {
  outline: var(--focus-outline);
  outline-offset: var(--focus-outline-offset);
}
.btn:focus,
.btn-download:focus,
[type="button"]:focus {
  outline: var(--focus-outline);
  outline-offset: var(--focus-outline-offset);
}
.btn {
  cursor: pointer;
}
.btn:disabled {
  cursor: not-allowed;
  filter: grayscale(50%);
}
/* Remove some list padding */
.download-dumb > ul {
  padding: 0;
}
.download-button > ul {
  padding: 0;
}
.header-donate,
.header-download {
  font-weight: 500;
  margin-top: -0.05rem;
  margin-left: -1rem;
}
.header-donate a.btn,
.header-download a.btn {
  padding: 0.72em 1em;
  border-width: 0.125rem;
}
.header-donate a.btn::after,
.header-download a.btn::after {
  background: transparent;
}
.header-donate svg,
.header-download svg {
  width: 1rem;
}
.btn-donate,
.btn-donate-lg,
.btn-download-inline,
.btn-download-link,
.download-link.btn-download,
.btn,
button {
  font-size: var(--font-md);
  background: var(--btn-bg, transparent);
  border-radius: 0.375rem;
  border: 0.125em solid currentColor;
  color: currentColor;
  padding: 0.5em 3em;
  position: relative;
  transition: font-size 0.2s;
  text-decoration: none;
  white-space: nowrap;
}
.btn-donate::before,
.btn-donate-lg::before,
.btn-download-inline::before,
.btn-download-link::before,
.download-link.btn-download::before,
.btn::before {
  content: '';
  position: absolute;
  background: var(--glow);
  border-radius: 50%;
  filter: blur(32px);
  opacity: 0.25;
  inset: -0.25em -2.5em;
  z-index: -2;
}
.btn-donate::after,
.btn-donate-lg::after,
.btn-download-inline::after,
.btn-download-link::after,
.download-link.btn-download::after,
.btn::after {
  content: '';
  position: absolute;
  background-color: transparent;
  background-image: radial-gradient(circle, var(--accent), var(--color-purple-60) 30%);
  background-size: 400%;
  background-position: center;
  opacity: 0.5;
  inset: 0;
  z-index: -1;
  transition: all 0.3s;
}
.download-link.btn-download:hover::after,
.btn:hover::after,
button:hover::after {
  opacity: 0.75;
  background-size: 500%;
}
/*
/** HACK for Mozilla Firefox */
@-moz-document url-prefix() {
  .download-link.btn-download::after {
    inset-inline-end: 0.25rem;
  }
}
.download-button .ios-download,
.download-button .linux-arm-download,
.download-button .unrecognized-download,
.download-button .unsupported-download,
.download-button .unsupported-download-osx,
.download-button .nojs-download {
  display: none;
}
.download-button .os_msi,
.download-button .os_winsha1,
.download-button .os_win64,
.download-button .os_win8-64,
.download-button .os_linux,
.download-button .os_linux64,
.win7-8.x86.x64 .download-button .os_win8,
.win10up.x86.x64 .download-button .os_win,
.android .download-button-desktop,
.windows.arm .download-button .os_win,
.linux.arm .download-button .os_linux,
.linux.x86.x64 .download-list .os_linux,
.download-button .os_win,
.download-button .os_win8,
.download-button .os_osx,
.download-button .os_android,
.download-button .os_ios,
.no-js .download-list,
.other .download-list {
  display: none !important;
}
.win7-8.x86 .download-button .os_win8,
.win7-8.x86.x64 .download-button .os_win8-64,
.win10up.x86.x64 .download-button .os_win64,
.win10up.x86 .download-button .os_win,
.linux .download-button .os_linux,
.linux.x86.x64 .download-button .os_linux64,
.osx .download-button .os_osx,
.android .download-button .os_android,
.download-button-android .os_android,
.android .download-button-desktop .download-list,
.android .download-button-desktop small.os_win,
.download-button-ios .os_ios,
.ios .download-button .os_ios,
.ios .download-button .ios-download,
.ios .download-button-desktop .download-list,
.other .download-button-android .download-list,
.other .download-button small.os_win {
  display: block !important;
}
.windows.arm .download-button .unsupported-download,
.linux.arm .download-button .linux-arm-download,
.chromeos .download-button .unsupported-download,
.oldwin .download-button .unsupported-download,
.oldmac .download-button .unsupported-download {
  display: block;
  max-width: 15.625rem;
}
.windows.arm .download-button .fx-privacy-link,
.linux.arm .download-button .fx-privacy-link,
.chromeos .download-button .fx-privacy-link,
.oldwin .download-button .fx-privacy-link,
.oldmac .download-button .fx-privacy-link {
  display: none;
}
.android .download-button-desktop .nojs-download,
.ios .download-button-desktop .nojs-download,
.no-js .download-button .nojs-download {
  display: block;
}
.other .download-button .unrecognized-download {
  display: block;
}
.download-button .download-list .os_android.x86,
.download-button .download-other.os_android .api-15,
.android.x86 .download-button .download-list .os_android.armv7up,
.android.x86 .download-button .download-other.os_android .x86 {
  display: none !important;
}
.android.x86 .download-button .download-list .os_android.x86 {
  display: block !important;
}
.android.x86 .download-button .download-other.os_android .armv7up {
  display: inline !important;
}
.windows.sha-1 .download-button .os_win {
  display: none !important;
}
.windows.sha-1 .download-button .os_winsha1 {
  display: block !important;
}
.download-button ul {
  list-style: none;
}
.download-button ul li {
  margin-block: 1.25rem;
}
.download-dumb ul li {
  margin-block: 2.5rem;
}
.all-downloads-link {
  margin-bottom: 2rem;
}
.download-button .btn-download {
  font-size: var(--font-lg);
  font-weight: 600;
}
.btn-no-bg {
  --btn-background-color: var(--color-white);
}
.btn-white-bg {
  --btn-background-color: var(--color-white);
}
.btn-black-bg {
  --btn-background-color: var(--color-black);
}
.btn-no-bg::after {
  background: transparent;
}
.btn-white-bg::after {
  opacity: 1 !important;
  background: var(--color-white) !important;
}
.btn-black-bg::after {
  opacity: 1 !important;
  background: var(--color-black) !important;
}
.btn-gradient::after {
  content: '';
  position: absolute;
  background-color: transparent;
  background-image: linear-gradient(90deg, var(--color-blue-60) 30%, var(--color-purple-60) 70%);
  background-size: 400%;
  background-position: center;
  opacity: 0.9;
  inset: 0;
  z-index: -1;
  transition: all 0.3s;
}
.btn-black-bg:hover,
.btn-white-bg:hover,
.btn-no-bg:hover {
  background: linear-gradient(var(--btn-background-color), var(--btn-background-color)) padding-box, linear-gradient(to right, var(--color-blue-50), var(--color-purple-50)) border-box;
  border-color: transparent;
  transition: all 250ms;
  color: black;
}
.btn-black-bg:hover::after,
.btn-white-bg:hover::after,
.btn-no-bg:hover::after {
  opacity: 0.75;
}
.btn-black-bg:active,
.btn-white-bg:active,
.btn-no-bg:active {
  background: linear-gradient(var(--btn-background-color), var(--btn-background-color)) padding-box, linear-gradient(to right, var(--color-button-border-active), var(--color-button-border-active)) border-box;
  border-color: transparent;
  transition: all 250ms;
  outline: none;
}
.btn-newsletter {
  position: relative;
  border: none;
  border-radius: 0;
  border-inline-start: 2px solid currentColor;
  padding: 0.75rem 2.5rem;
  margin: 0;
  font-size: var(--font-md);
  --btn-background-color: rgba(0, 0, 0, 0.8);
}
.btn-newsletter::after {
  background-color: var(--btn-background-color);
}
.btn-newsletter:hover {
  background: linear-gradient(var(--btn-background-color), var(--btn-background-color)) padding-box, linear-gradient(to right, var(--color-blue-50), var(--color-purple-50)) border-box;
  color: currentColor;
}
.btn-newsletter-icon {
  display: none;
  padding: 0.75em 1em;
}
@media (max-width: 40rem) {
  .btn-newsletter-text {
    display: none;
  }
  .btn-newsletter-icon {
    display: block;
  }
}
.btn-slim {
  display: flex;
  gap: 0.5rem;
  justify-content: center;
  font-size: var(--font-md) !important;
  min-width: 8rem;
  padding: 0.5rem 1rem;
}
.btn-no-bg-dark {
  --btn-background-color: rgba(0, 0, 0, 0.8);
}
.btn-no-bg-dark:hover {
  color: currentColor;
}
.download-icon {
  position: relative;
  top: 0.1rem;
  display: inline-block;
  width: 1rem;
  height: 1rem;
}
.download-buttons-container {
  margin-top: 5rem;
  margin-bottom: 4rem;
}
.download-button-products {
  --txt: var(--color-white);
}
.no-js .download-button-products,
.other .download-button-products {
  flex-direction: column;
}
.download-button-page,
.download-button-products {
  display: flex;
  gap: 2rem;
  justify-content: center;
  align-items: center;
  color: var(--txt);
  text-align: center;
}
@media (max-width: 64rem) {
  .download-button-page,
  .download-button-products {
    flex-direction: column;
  }
}
[data-download-os] {
  display: none;
}
[data-download-platform] {
  display: none;
}
.no-js-label,
.no-js-title {
  display: none;
}
.js-label {
  display: inline-block;
}
.no-js .no-js-label {
  display: inline-block;
}
.no-js .js-label {
  display: none;
}
.no-js [data-download-os] {
  display: block !important;
}
.page-desktop.android [data-download-platform="other"] {
  display: block !important;
}
.no-js [data-download-platform="other"],
.other [data-download-platform="other"],
.ios [data-download-platform="other"],
.chromeos [data-download-platform="other"],
.oldwin [data-download-platform="other"],
.oldmac [data-download-platform="other"],
.fxos [data-download-platform="other"] {
  display: block !important;
}
.js.osx [data-download-os="osx"] {
  display: block !important;
}
.js.win7-8.x64 [data-download-os="win8-64"] {
  display: block !important;
}
.js.win7-8.x86.x64 [data-download-os="win8"] {
  display: none !important;
}
.js.win7-8.x86 [data-download-os="win8"] {
  display: block !important;
}
.js.win10up.x64 [data-download-os="win64"] {
  display: block !important;
}
.js.win10up.x86.x64 [data-download-os="win"] {
  display: none !important;
}
.js.win10up.x86 [data-download-os="win"] {
  display: block !important;
}
.js.linux.x64 [data-download-os="linux64"] {
  display: block !important;
}
.js.linux.x86.x64 [data-download-os="linux"] {
  display: none !important;
}
.js.linux.x86 [data-download-os="linux"] {
  display: block !important;
}
.js.win7-8 [data-download-platform="desktop"],
.js.win10up [data-download-platform="desktop"],
.js.osx [data-download-platform="desktop"],
.js.linux [data-download-platform="desktop"] {
  display: block !important;
}
.js.android [data-download-platform="android"] {
  display: block !important;
}
.form-select {
  width: 100%;
  background-color: var(--color-white);
  padding: 0.75rem;
  border-radius: var(--border-radius-sm);
  border: 1px solid var(--color-gray-30);
  appearance: none;
  background-image: url("/media/svg/chevron-down.svg");
  background-position: calc(100% - 0.5rem);
  background-repeat: no-repeat;
}
#lang_form {
  display: flex;
  flex-direction: column;
  text-align: center;
  gap: 1rem;
}
#lang_form .form-select {
  font-size: 0.9rem;
}
.site-nav {
  --hamburger-background-inactive: var(--color-white);
  --hamburger-foreground-inactive: var(--color-black);
  --hamburger-background-active: var(--color-white);
  --hamburger-foreground-active: var(--color-black);
  /*
   * left-align is used to translate the fixed element right a bit. (hence negative)
   * right-align is used to enforce a maximum screen right value so the popover doesn't get cut off.
   * I tried to make this smarter, but in the end I used a @xxl media query to manually enforce this.
   */
  --popover-left-align: -2rem;
  --popover-right-align: auto;
  box-sizing: border-box;
  position: fixed;
  top: 0;
  inset-inline: 0;
  display: flex;
  padding-inline: 1rem;
  padding-block: 12px;
  background: var(--nav-bg);
  color: var(--txt);
  border-bottom: 1px solid transparent;
  box-shadow: none;
  height: var(--nav-height);
  backdrop-filter: blur(32px);
  transition: height 0.2s;
  z-index: 100000;
  max-width: 100vw;
}
@media (max-width: 90rem) {
  .site-nav #nav-cat-about,
  .site-nav #nav-cat-contribute {
    --popover-left-align: 0;
    --popover-right-align: 0.5rem;
  }
}
@media (max-width: 64rem) {
  .site-nav {
    --popover-left-align: 0;
    --popover-right-align: 0.5rem;
  }
}
.site-nav .btn-donate::before,
.site-nav .btn-donate-lg::before,
.site-nav .btn-download-inline::before,
.site-nav .btn-download-link::before,
.site-nav .download-link.btn-download::before,
.site-nav a.btn::before,
.site-nav button::before {
  display: none;
}
.site-nav .download-link {
  padding-left: 2rem;
  padding-right: 2rem;
}
.page-index .btn-no-bg,
.page-desktop .btn-no-bg,
.page-mobile .btn-no-bg {
  --btn-background-color: rgba(0, 0, 0, 0.8);
}
.page-index .btn-no-bg::after,
.page-desktop .btn-no-bg::after,
.page-mobile .btn-no-bg::after {
  background-color: var(--btn-background-color);
}
.page-index .btn-no-bg:hover,
.page-desktop .btn-no-bg:hover,
.page-mobile .btn-no-bg:hover {
  background: linear-gradient(var(--btn-background-color), var(--btn-background-color)) padding-box, linear-gradient(to right, var(--color-blue-50), var(--color-purple-50)) border-box;
  color: currentColor;
}
.scrolled-nav {
  --nav-height: 3.75rem;
  border-color: rgba(255, 255, 255, 0.25);
  box-shadow: 0 4px 8px -2px rgba(0, 0, 0, 0.25);
  background-color: rgba(0, 0, 0, 0.8);
  color: var(--nav-txt);
  backdrop-filter: blur(24px) saturate(120%);
  transition: all 0.5s;
  z-index: 100000;
}
.scrolled-nav .hamburger-btn {
  --hamburger-foreground-inactive: var(--nav-txt);
  margin: 0;
  transition: margin 0.2s;
}
.scrolled-nav .btn-no-bg {
  --btn-background-color: rgba(0, 0, 0, 0.8);
}
.scrolled-nav .btn-no-bg::after {
  background-color: var(--btn-background-color);
}
.scrolled-nav .btn-no-bg:hover {
  background: linear-gradient(var(--btn-background-color), var(--btn-background-color)) padding-box, linear-gradient(to right, var(--color-blue-50), var(--color-purple-50)) border-box;
  color: currentColor;
}
.nav-container {
  display: flex;
  flex-grow: 1;
  justify-content: space-between;
  max-width: 1280px;
  margin: 0 auto;
}
.hamburger-btn {
  cursor: pointer;
  display: none;
  height: 2.5rem;
  width: 2.5rem;
  margin-right: 4px;
  margin-top: 8px;
  transition: margin 0.2s;
  padding: 0;
}
.hamburger-btn::after {
  background: var(--hamburger-background-inactive) none;
}
@media (max-width: 64rem) {
  .hamburger-btn {
    display: block;
  }
}
[aria-expanded="true"].hamburger-btn {
  background-color: var(--hamburger-background-active);
  opacity: 100%;
}
[aria-expanded="true"] > .hamburger-icon span {
  border-color: var(--hamburger-foreground-active);
}
[aria-expanded="true"] > .hamburger-icon span:nth-child(1) {
  transform: translate(1px, 195%) rotateZ(45deg);
}
[aria-expanded="true"] > .hamburger-icon span:nth-child(2) {
  opacity: 0;
}
[aria-expanded="true"] > .hamburger-icon span:nth-child(3) {
  transform: translate(0, -195%) rotateZ(-45deg);
}
.hamburger-icon {
  content: '';
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.hamburger-icon span {
  margin: auto;
  width: 50%;
  height: 100%;
  border-bottom: 2px solid var(--hamburger-foreground-inactive);
  min-height: 1px;
  transition: all 0.3s ease-in;
}
.nav-links {
  display: flex;
  align-items: center;
  gap: 2rem;
  list-style: none;
  margin-top: 0;
  /*
   * Annoyingly buttons margin-left: -1rem
   * So we need to add some padding back to fix positioning
   */
}
.nav-links .nav-entry {
  position: relative;
  cursor: pointer;
  padding-top: 18px;
}
.nav-links .nav-entry .popover-container {
  display: none;
  position: fixed;
  right: var(--popover-right-align);
  translate: var(--popover-left-align);
  width: 100%;
  max-width: 30rem;
}
.nav-links .nav-entry .popover-container .popover-panel {
  position: relative;
  top: 0.25rem;
  background-color: var(--bg);
  color: var(--txt);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-2xl);
  margin: 1rem 1rem 1rem 0;
  padding: 1rem 1rem;
}
@media (prefers-contrast: more) {
  .nav-links .nav-entry .popover-container .popover-panel {
    border: 2px solid var(--color-ink-70);
  }
}
.nav-links .nav-entry .popover-container .popover-panel .entry-icon {
  display: flex;
  margin: 0.5rem;
  min-width: 48px;
  height: 100%;
  justify-content: center;
}
.nav-links .nav-entry .popover-container .popover-panel .entry-icon svg {
  width: 100%;
}
.nav-links .nav-entry .popover-container .popover-panel .entry-text {
  padding-right: 2rem;
}
.nav-links .nav-entry .popover-container .popover-panel .entry-text h2,
.nav-links .nav-entry .popover-container .popover-panel .entry-text h6 {
  margin: 0;
}
.nav-links .nav-entry .popover-container .popover-panel .entry-text h6 {
  font-weight: 600;
}
.nav-links .nav-entry .popover-container .popover-panel .entry-container {
  cursor: pointer;
  list-style: none;
  padding-top: 1rem;
}
.nav-links .nav-entry .popover-container .popover-panel .entry-container > a {
  display: flex;
  min-height: 4rem;
  padding-bottom: 1rem;
  border-bottom: 2px var(--color-gray-30) solid;
  text-decoration: none;
}
.nav-links .nav-entry .popover-container .popover-panel .entry-container:last-child > a {
  border: none;
}
.nav-links .nav-entry:focus-within .popover-container {
  display: block;
}
@media (min-width: 64rem) {
  .nav-links .nav-entry:hover .popover-container {
    display: block;
  }
}
.nav-links .nav-ln {
  cursor: pointer;
  border: none;
  padding: 0;
  font-weight: 600;
  font-size: 1.125rem;
}
.nav-links .nav-ln::after {
  height: 3px;
}
.nav-links .nav-ln:focus + .popover-container {
  display: block;
}
.nav-links .nav-ln:has(+ .popover-container:hover)::after,
.nav-links .nav-ln:has(+ .popover-container:focus-within)::after {
  width: 100%;
}
.nav-links .no-desktop {
  display: none;
}
.nav-links .nav-button-fix {
  padding-left: 1rem;
}
@media (max-width: 64rem) {
  .nav-links {
    display: none;
    position: absolute;
    flex-direction: column;
    background-color: var(--color-white);
    color: var(--txt);
    box-shadow: var(--shadow-2xl);
    width: 60%;
    right: 1.25rem;
    top: var(--nav-height);
    border-radius: 12px;
    align-items: unset;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .nav-links.expanded {
    display: block;
  }
  .nav-links .no-desktop {
    display: block;
  }
  .nav-links .no-mobile {
    display: none;
  }
  .nav-links .nav-entry {
    padding: 1rem 1rem;
    border-bottom: 2px var(--color-gray-30) solid;
  }
  .nav-links .nav-entry .popover-container {
    margin-left: 0;
    min-width: 100%;
    position: relative;
  }
  .nav-links .nav-entry .popover-container .popover-panel {
    border-radius: 0;
    box-shadow: none;
    margin: 0;
    padding: 1rem 1rem;
  }
  .nav-links .nav-entry .popover-container .popover-panel .entry-container {
    padding: 0;
  }
  .nav-links .nav-entry .popover-container .popover-panel .entry-container > a {
    min-height: var(--font-2xl);
    margin: 1rem 0;
    border-bottom: none;
    padding-bottom: 0;
  }
  .nav-links .nav-entry .popover-container .popover-panel .entry-icon {
    display: none;
  }
  .nav-links .nav-entry .popover-container .popover-panel .entry-icon svg {
    width: 0;
  }
  .nav-links .nav-entry .popover-container .popover-panel .entry-text {
    padding: 0;
  }
  .nav-links .nav-entry .popover-container .popover-panel .entry-text h6 {
    display: none;
  }
  .nav-links .nav-entry .popover-container .popover-panel .entry-text h2 {
    font-size: var(--font-lg);
  }
  .nav-links .nav-entry.no-border {
    border: none;
  }
}
@media (max-width: 40rem) {
  .nav-links {
    width: 80%;
  }
}
.always-show-for-nojs-on-mobile {
  display: none;
}
@media (max-width: 64rem) {
  .always-show-for-nojs-on-mobile {
    position: relative;
    display: flex;
    width: 100%;
    margin-top: var(--nav-height);
  }
  .always-show-for-nojs-on-mobile .nav-links {
    display: block;
    position: static;
    left: 0;
    width: 100%;
  }
}
@media (max-width: 64rem) {
  .no-js .hamburger-btn {
    display: none;
  }
}
.testimonials {
  display: grid;
  gap: 60px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(4, 1fr);
  margin-inline: auto;
  margin-block: 0 60px;
  max-width: 1000px;
  text-align: left;
}
@media (max-width: 64rem) {
  .testimonials {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 48rem) {
  .testimonials {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
}
.testimonials .testimonial-card {
  display: grid;
  place-items: center;
  grid-column: span 1;
  grid-row: span 1;
  padding: 1.5rem;
  border-radius: 24px;
  box-shadow: 0 4px 12px -2px var(--color-gray-30);
  overflow: hidden;
}
.testimonials .card-lg {
  --accent: var(--color-purple-20);
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-column: span 2;
  grid-row: span 2;
  background-image: linear-gradient(to left, var(--accent), transparent 90%);
}
@media (max-width: 48rem) {
  .testimonials .card-lg {
    display: flex;
  }
}
.testimonials .card-lg:nth-child(even) {
  --accent: var(--color-blue-20);
  grid-column: 2 / span 2;
  grid-row: 3 / span 2;
}
.testimonials .quote {
  font-weight: 400;
  display: grid;
  gap: 15px;
  grid-column: span 2;
  z-index: 2;
}
.testimonials .visual {
  position: absolute;
  overflow: hidden;
  width: 200%;
}
@media (max-width: 48rem) {
  .testimonials .visual {
    display: none;
  }
}
.testimonials .visual.unified-inbox {
  left: 10%;
}
.testimonials .visual.extensions {
  left: 30%;
}
.testimonials .attrib {
  display: grid;
  align-items: center;
  column-gap: 15px;
  grid-template-columns: auto 1fr;
  grid-template-rows: repeat(2, 1fr);
  line-height: 1.3;
}
.testimonials .attrib.no-photo {
  grid-template-rows: 1fr;
  grid-template-columns: 1fr;
}
.testimonials .profile-pic {
  height: 50px;
  width: 50px;
  grid-row: span 2;
  border-radius: 50%;
  overflow: hidden;
}
.testimonials .name {
  align-self: end;
}
.testimonials .title {
  align-self: start;
  font-size: 0.9rem;
}
:root {
  /* Adjust these as needed by the text amount */
  --site-announcement-height: 2.625rem;
  --site-announcement-padding: 0rem;
}
@media (max-width: 40rem) {
  :root {
    --site-announcement-height: 4.25rem;
    --site-announcement-padding: 0;
  }
}
.site-announcement {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: var(--site-announcement-padding);
  text-align: center;
  position: absolute;
  top: 0;
  width: 100%;
  height: var(--site-announcement-height);
  z-index: 99;
  background-color: var(--color-ink-90);
  color: var(--color-white);
  font-size: 80%;
  font-weight: 500;
}
.site-announcement > .strong::after {
  top: 0.22rem;
}
.site-announcement ~ .site-nav {
  top: var(--site-announcement-height);
}
.site-announcement ~ .scrolled-nav {
  top: 0;
}
#footer {
  width: 100%;
  background-color: black;
  color: var(--color-gray-20);
  font-family: "Inter", "sans-serif";
  font-size: 1rem;
  font-weight: 300;
  line-height: 100%;
  display: flex;
  justify-content: center;
}
#footer a:visited {
  color: var(--color-gray-20);
}
#footer .mozilla-logo {
  --accent: white;
}
#footer .mzla,
#footer .mozilla-logo {
  max-height: 12.625rem;
}
#footer .mzla,
#footer .legal-links,
#footer .footer-inner {
  display: flex;
  justify-content: flex-start;
  width: 100%;
}
#footer .legal-links {
  gap: 1.875rem;
  flex-wrap: wrap;
}
#footer .footer-inner {
  max-width: 80rem;
  display: flex;
  flex-direction: column;
  padding: 0 10.625rem 2rem;
}
@media (max-width: 64rem) {
  #footer .footer-inner {
    padding: 0 1rem 2rem;
  }
}
.donate-banner {
  --background-left: linear-gradient(92deg, #EA5757 60%, #DD2929 92.83%);
  --background-right: linear-gradient(to right, #FFEFEF, #FFEFEF);
  --accent-text: #5A0002;
  background: var(--color-red-50);
  background-image: var(--background-right);
  background-position: top left, center;
  background-size: contain;
  background-repeat: no-repeat;
  border-radius: 3px;
  box-shadow: 4px 4px 24px rgba(0, 0, 0, 0.15);
  color: white;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 1.125rem;
  line-height: 1.3;
  margin: -114px auto 0;
  text-decoration: none;
  text-shadow: var(--shadow);
  transition: transform 0.3s ease-in-out;
  position: relative;
  overflow: hidden;
  max-width: 462px;
  min-height: 123px;
  z-index: 10;
}
.donate-banner::after {
  content: '';
  position: absolute;
  top: -210px;
  left: -220px;
  /* -20px for l10n overlap */
  height: 420px;
  width: 420px;
  background: var(--background-left);
  transform: rotate(36deg);
  transition: transform 0.3s ease-in-out;
}
.donate-banner:hover {
  transform: scale(1.05);
}
.donate-banner:hover::after {
  transform: scale(3);
}
.donate-banner:hover #decoration,
.donate-banner:hover #donate-banner-right {
  opacity: 0;
}
.donate-banner:hover #donate-banner-left {
  transform: translate(24px, 6px);
}
#donate-banner-left,
#donate-banner-right {
  display: flex;
  flex-direction: column;
  flex: 1;
  transition: all 0.5s ease-in-out;
  z-index: 2;
}
#donate-banner-left {
  padding: 11px 12px;
  font-weight: 300;
}
#donate-banner-right {
  padding: 17px 12px;
  font-size: 1.5rem;
  font-weight: 300;
  padding-inline-start: 3px;
  text-shadow: 0 0 4px var(--color-gray-10), 0 1px 1px var(--color-gray-10);
}
#donate-banner-left > b {
  font-size: 2.0625rem;
  font-weight: 700;
  line-height: 1;
}
#donate-banner-right > b {
  font-size: 1.5rem;
  font-weight: 400;
}
#decoration > #pill-1 {
  animation: 20s infinite pill-float linear;
  animation-delay: 0.2s;
}
#decoration > #pill-2 {
  animation: 30s infinite pill-float linear;
}
#decoration > #pill-3 {
  animation: 35s infinite pill-float linear;
  animation-delay: 0.1s;
}
#decoration > #pill-4 {
  animation: 25s infinite pill-float linear;
  animation-delay: 0.3s;
}
#decoration > #pill-5 {
  animation: 40s infinite pill-float linear;
  animation-delay: 0.4s;
}
#decoration > #pill-6 {
  animation: 30s infinite pill-float linear;
  animation-delay: 0.5s;
}
#decoration > #pill-7 {
  animation: 25s infinite pill-float linear;
  animation-delay: 0.6s;
}
#decoration > #pill-8 {
  animation: 20s infinite pill-float linear;
  animation-delay: 0.7s;
}
#decoration > #pill-9 {
  animation: 40s infinite pill-float linear;
  animation-delay: 0.8s;
}
#decoration > #pill-10 {
  animation: 35s infinite pill-float linear;
  animation-delay: 0.4s;
}
#decoration {
  position: absolute;
  left: -55px;
  display: grid;
  gap: 3px;
  grid-template-columns: repeat(20, 1fr);
  grid-template-rows: repeat(10, 1fr);
  place-items: stretch;
  height: 90px;
  width: 500px;
  transform: rotate(-54deg);
  transition: opacity 0.5s ease-in-out;
  z-index: 1;
}
.pill {
  display: block;
  background: var(--color-red-40);
  opacity: 0.75;
  border-radius: 1000px;
  transform: translateX(-250px);
}
@keyframes pill-float {
  from {
    transform: translateX(-250px);
  }
  to {
    transform: translateX(250px);
  }
}
#pill-1 {
  grid-column: 4 / span 8;
  grid-row: 5 / span 3;
}
#pill-2 {
  grid-column: 10 / span 4;
  grid-row: 6 / span 1;
}
#pill-3 {
  grid-column: 8 / span 3;
  grid-row: 3 / span 1;
}
#pill-4 {
  grid-column: 4 / span 3;
  grid-row: 3 / span 1;
}
#pill-5 {
  grid-column: 6 / span 4;
  grid-row: 9 / span 1;
}
#pill-6 {
  grid-column: 11 / span 1;
  grid-row: 9 / span 1;
}
#pill-7 {
  grid-column: 13 / span 2;
  grid-row: 10 / span 1;
}
#pill-8 {
  grid-column: 13 / span 3;
  grid-row: 8 / span 1;
}
#pill-9 {
  grid-column: 14 / span 3;
  grid-row: 4 / span 1;
}
#pill-10 {
  grid-column: 12 / span 1;
  grid-row: 4 / span 1;
}
#hover-hearts {
  position: absolute;
  inset-block-end: 12px;
  inset-inline-end: 13px;
  display: none;
  gap: 3px;
  z-index: 1;
}
#hover-heart-1,
#hover-heart-2,
#hover-heart-3 {
  display: flex;
  align-items: end;
  opacity: 0;
}
#hover-heart-1 > svg {
  animation-delay: 0.6s;
}
#hover-heart-3 {
  animation-delay: 0.8s;
}
#hover-heart-1 > svg {
  transform: rotate(-45deg);
  width: 48px;
  height: 48px;
}
#hover-heart-2 > svg {
  width: 64px;
  height: 64px;
  transform: translateY(-9px);
}
#hover-heart-3 > svg {
  transform: rotate(45deg);
  width: 48px;
  height: 48px;
}
.donate-banner:hover #hover-hearts {
  display: flex;
}
.donate-banner:hover #hover-hearts > #hover-heart-1 {
  animation: 1s heart-fade forwards ease-in-out;
  animation-delay: 0.1s;
}
.donate-banner:hover #hover-hearts > #hover-heart-2 {
  animation: 1s heart-fade forwards ease-in-out;
}
.donate-banner:hover #hover-hearts > #hover-heart-3 {
  animation: 1s heart-fade forwards ease-in-out;
  animation-delay: 0.2s;
}
@keyframes heart-fade {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.dialog-bar {
  display: flex;
  justify-content: space-between;
  align-content: center;
}
.dialog-bar h2 {
  margin: 0;
}
.dialog-bar .close-btn {
  cursor: pointer;
}
/* Use .showModal() with this */
.sticky-dialog {
  width: 100%;
  top: auto;
  bottom: 0;
}
.particle-star {
  position: fixed;
  border-radius: 50%;
  z-index: 0;
}
@keyframes particle-animation-1 {
  100% {
    transform: translate3d(calc(30 * 1vw), calc(45 * 1vh), calc(73 * 1px));
  }
}
.particle-star:nth-child(1) {
  animation: particle-animation-1 60s infinite;
  opacity: calc(54/100);
  height: calc(3px + 5px);
  width: calc(3px + 5px);
  animation-delay: calc(-1 * 0.2s);
  transform: translate3d(calc(30 * 1vw), calc(60 * 1vh), calc(33 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-2 {
  100% {
    transform: translate3d(calc(47 * 1vw), calc(34 * 1vh), calc(43 * 1px));
  }
}
.particle-star:nth-child(2) {
  animation: particle-animation-2 60s infinite;
  opacity: calc(70/100);
  height: calc(2px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-2 * 0.2s);
  transform: translate3d(calc(59 * 1vw), calc(13 * 1vh), calc(47 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-3 {
  100% {
    transform: translate3d(calc(24 * 1vw), calc(60 * 1vh), calc(67 * 1px));
  }
}
.particle-star:nth-child(3) {
  animation: particle-animation-3 60s infinite;
  opacity: calc(27/100);
  height: calc(4px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-3 * 0.2s);
  transform: translate3d(calc(63 * 1vw), calc(29 * 1vh), calc(12 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-4 {
  100% {
    transform: translate3d(calc(35 * 1vw), calc(15 * 1vh), calc(71 * 1px));
  }
}
.particle-star:nth-child(4) {
  animation: particle-animation-4 60s infinite;
  opacity: calc(15/100);
  height: calc(1px + 5px);
  width: calc(2px + 5px);
  animation-delay: calc(-4 * 0.2s);
  transform: translate3d(calc(70 * 1vw), calc(87 * 1vh), calc(32 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-5 {
  100% {
    transform: translate3d(calc(55 * 1vw), calc(30 * 1vh), calc(54 * 1px));
  }
}
.particle-star:nth-child(5) {
  animation: particle-animation-5 60s infinite;
  opacity: calc(65/100);
  height: calc(1px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-5 * 0.2s);
  transform: translate3d(calc(84 * 1vw), calc(26 * 1vh), calc(40 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-6 {
  100% {
    transform: translate3d(calc(82 * 1vw), calc(17 * 1vh), calc(58 * 1px));
  }
}
.particle-star:nth-child(6) {
  animation: particle-animation-6 60s infinite;
  opacity: calc(93/100);
  height: calc(px + 5px);
  width: calc(3px + 5px);
  animation-delay: calc(-6 * 0.2s);
  transform: translate3d(calc(72 * 1vw), calc(48 * 1vh), calc(81 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-7 {
  100% {
    transform: translate3d(calc(89 * 1vw), calc(72 * 1vh), calc(7 * 1px));
  }
}
.particle-star:nth-child(7) {
  animation: particle-animation-7 60s infinite;
  opacity: calc(55/100);
  height: calc(1px + 5px);
  width: calc(px + 5px);
  animation-delay: calc(-7 * 0.2s);
  transform: translate3d(calc(58 * 1vw), calc(75 * 1vh), calc(55 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-8 {
  100% {
    transform: translate3d(calc(4 * 1vw), calc(51 * 1vh), calc(36 * 1px));
  }
}
.particle-star:nth-child(8) {
  animation: particle-animation-8 60s infinite;
  opacity: calc(75/100);
  height: calc(4px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-8 * 0.2s);
  transform: translate3d(calc(82 * 1vw), calc(34 * 1vh), calc(59 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-9 {
  100% {
    transform: translate3d(calc(26 * 1vw), calc(42 * 1vh), calc(40 * 1px));
  }
}
.particle-star:nth-child(9) {
  animation: particle-animation-9 60s infinite;
  opacity: calc(96/100);
  height: calc(1px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-9 * 0.2s);
  transform: translate3d(calc(35 * 1vw), calc(35 * 1vh), calc(51 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-10 {
  100% {
    transform: translate3d(calc(52 * 1vw), calc(8 * 1vh), calc(8 * 1px));
  }
}
.particle-star:nth-child(10) {
  animation: particle-animation-10 60s infinite;
  opacity: calc(77/100);
  height: calc(2px + 5px);
  width: calc(2px + 5px);
  animation-delay: calc(-10 * 0.2s);
  transform: translate3d(calc(45 * 1vw), calc(49 * 1vh), calc(75 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-11 {
  100% {
    transform: translate3d(calc(88 * 1vw), calc(7 * 1vh), calc(49 * 1px));
  }
}
.particle-star:nth-child(11) {
  animation: particle-animation-11 60s infinite;
  opacity: calc(77/100);
  height: calc(1px + 5px);
  width: calc(2px + 5px);
  animation-delay: calc(-11 * 0.2s);
  transform: translate3d(calc(70 * 1vw), calc(27 * 1vh), calc(77 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-12 {
  100% {
    transform: translate3d(calc(30 * 1vw), calc(38 * 1vh), calc(75 * 1px));
  }
}
.particle-star:nth-child(12) {
  animation: particle-animation-12 60s infinite;
  opacity: calc(85/100);
  height: calc(2px + 5px);
  width: calc(px + 5px);
  animation-delay: calc(-12 * 0.2s);
  transform: translate3d(calc(2 * 1vw), calc(33 * 1vh), calc(63 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-13 {
  100% {
    transform: translate3d(calc(88 * 1vw), calc(42 * 1vh), calc(40 * 1px));
  }
}
.particle-star:nth-child(13) {
  animation: particle-animation-13 60s infinite;
  opacity: calc(16/100);
  height: calc(4px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-13 * 0.2s);
  transform: translate3d(calc(27 * 1vw), calc(18 * 1vh), calc(48 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-14 {
  100% {
    transform: translate3d(calc(49 * 1vw), calc(74 * 1vh), calc(92 * 1px));
  }
}
.particle-star:nth-child(14) {
  animation: particle-animation-14 60s infinite;
  opacity: calc(6/100);
  height: calc(1px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-14 * 0.2s);
  transform: translate3d(calc(49 * 1vw), calc(21 * 1vh), calc(98 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-15 {
  100% {
    transform: translate3d(calc(66 * 1vw), calc(22 * 1vh), calc(84 * 1px));
  }
}
.particle-star:nth-child(15) {
  animation: particle-animation-15 60s infinite;
  opacity: calc(69/100);
  height: calc(1px + 5px);
  width: calc(4px + 5px);
  animation-delay: calc(-15 * 0.2s);
  transform: translate3d(calc(51 * 1vw), calc(37 * 1vh), calc(73 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-16 {
  100% {
    transform: translate3d(calc(40 * 1vw), calc(3 * 1vh), calc(77 * 1px));
  }
}
.particle-star:nth-child(16) {
  animation: particle-animation-16 60s infinite;
  opacity: calc(13/100);
  height: calc(4px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-16 * 0.2s);
  transform: translate3d(calc(19 * 1vw), calc(26 * 1vh), calc(39 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-17 {
  100% {
    transform: translate3d(calc(8 * 1vw), calc(9 * 1vh), calc(72 * 1px));
  }
}
.particle-star:nth-child(17) {
  animation: particle-animation-17 60s infinite;
  opacity: calc(2/100);
  height: calc(4px + 5px);
  width: calc(2px + 5px);
  animation-delay: calc(-17 * 0.2s);
  transform: translate3d(calc(58 * 1vw), calc(54 * 1vh), calc(55 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-18 {
  100% {
    transform: translate3d(calc(53 * 1vw), calc(71 * 1vh), calc(51 * 1px));
  }
}
.particle-star:nth-child(18) {
  animation: particle-animation-18 60s infinite;
  opacity: calc(4/100);
  height: calc(1px + 5px);
  width: calc(3px + 5px);
  animation-delay: calc(-18 * 0.2s);
  transform: translate3d(calc(39 * 1vw), calc(86 * 1vh), calc(16 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-19 {
  100% {
    transform: translate3d(calc(17 * 1vw), calc(31 * 1vh), calc(16 * 1px));
  }
}
.particle-star:nth-child(19) {
  animation: particle-animation-19 60s infinite;
  opacity: calc(94/100);
  height: calc(1px + 5px);
  width: calc(px + 5px);
  animation-delay: calc(-19 * 0.2s);
  transform: translate3d(calc(60 * 1vw), calc(12 * 1vh), calc(56 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-20 {
  100% {
    transform: translate3d(calc(71 * 1vw), calc(50 * 1vh), calc(37 * 1px));
  }
}
.particle-star:nth-child(20) {
  animation: particle-animation-20 60s infinite;
  opacity: calc(48/100);
  height: calc(2px + 5px);
  width: calc(px + 5px);
  animation-delay: calc(-20 * 0.2s);
  transform: translate3d(calc(64 * 1vw), calc(54 * 1vh), calc(24 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-21 {
  100% {
    transform: translate3d(calc(27 * 1vw), calc(13 * 1vh), calc(32 * 1px));
  }
}
.particle-star:nth-child(21) {
  animation: particle-animation-21 60s infinite;
  opacity: calc(16/100);
  height: calc(2px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-21 * 0.2s);
  transform: translate3d(calc(13 * 1vw), calc(45 * 1vh), calc(84 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-22 {
  100% {
    transform: translate3d(calc(46 * 1vw), calc(25 * 1vh), calc(19 * 1px));
  }
}
.particle-star:nth-child(22) {
  animation: particle-animation-22 60s infinite;
  opacity: calc(77/100);
  height: calc(3px + 5px);
  width: calc(4px + 5px);
  animation-delay: calc(-22 * 0.2s);
  transform: translate3d(calc(26 * 1vw), calc(59 * 1vh), calc(67 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-23 {
  100% {
    transform: translate3d(calc(38 * 1vw), calc(1 * 1vh), calc(77 * 1px));
  }
}
.particle-star:nth-child(23) {
  animation: particle-animation-23 60s infinite;
  opacity: calc(31/100);
  height: calc(2px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-23 * 0.2s);
  transform: translate3d(calc(57 * 1vw), calc(10 * 1vh), calc(53 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-24 {
  100% {
    transform: translate3d(calc(74 * 1vw), calc(40 * 1vh), calc(40 * 1px));
  }
}
.particle-star:nth-child(24) {
  animation: particle-animation-24 60s infinite;
  opacity: calc(26/100);
  height: calc(px + 5px);
  width: calc(2px + 5px);
  animation-delay: calc(-24 * 0.2s);
  transform: translate3d(calc(80 * 1vw), calc(3 * 1vh), calc(70 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-25 {
  100% {
    transform: translate3d(calc(22 * 1vw), calc(34 * 1vh), calc(56 * 1px));
  }
}
.particle-star:nth-child(25) {
  animation: particle-animation-25 60s infinite;
  opacity: calc(69/100);
  height: calc(px + 5px);
  width: calc(1px + 5px);
  animation-delay: calc(-25 * 0.2s);
  transform: translate3d(calc(13 * 1vw), calc(20 * 1vh), calc(23 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-26 {
  100% {
    transform: translate3d(calc(88 * 1vw), calc(85 * 1vh), calc(39 * 1px));
  }
}
.particle-star:nth-child(26) {
  animation: particle-animation-26 60s infinite;
  opacity: calc(53/100);
  height: calc(4px + 5px);
  width: calc(3px + 5px);
  animation-delay: calc(-26 * 0.2s);
  transform: translate3d(calc(47 * 1vw), calc(31 * 1vh), calc(44 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-27 {
  100% {
    transform: translate3d(calc(75 * 1vw), calc(6 * 1vh), calc(41 * 1px));
  }
}
.particle-star:nth-child(27) {
  animation: particle-animation-27 60s infinite;
  opacity: calc(58/100);
  height: calc(3px + 5px);
  width: calc(4px + 5px);
  animation-delay: calc(-27 * 0.2s);
  transform: translate3d(calc(7 * 1vw), calc(34 * 1vh), calc(50 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-28 {
  100% {
    transform: translate3d(calc(86 * 1vw), calc(53 * 1vh), calc(78 * 1px));
  }
}
.particle-star:nth-child(28) {
  animation: particle-animation-28 60s infinite;
  opacity: calc(41/100);
  height: calc(4px + 5px);
  width: calc(4px + 5px);
  animation-delay: calc(-28 * 0.2s);
  transform: translate3d(calc(79 * 1vw), calc(43 * 1vh), calc(10 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-29 {
  100% {
    transform: translate3d(calc(19 * 1vw), calc(53 * 1vh), calc(20 * 1px));
  }
}
.particle-star:nth-child(29) {
  animation: particle-animation-29 60s infinite;
  opacity: calc(3/100);
  height: calc(3px + 5px);
  width: calc(px + 5px);
  animation-delay: calc(-29 * 0.2s);
  transform: translate3d(calc(36 * 1vw), calc(86 * 1vh), calc(96 * 1px));
  background: hsl(45, 100%, 50%);
}
@keyframes particle-animation-30 {
  100% {
    transform: translate3d(calc(74 * 1vw), calc(34 * 1vh), calc(33 * 1px));
  }
}
.particle-star:nth-child(30) {
  animation: particle-animation-30 60s infinite;
  opacity: calc(22/100);
  height: calc(px + 5px);
  width: calc(2px + 5px);
  animation-delay: calc(-30 * 0.2s);
  transform: translate3d(calc(81 * 1vw), calc(22 * 1vh), calc(95 * 1px));
  background: hsl(45, 100%, 50%);
}
html,
body {
  min-height: 100%;
}
body {
  display: flex;
  flex-direction: column;
}
main {
  height: auto;
}
:root {
  --text-color: #FEFFFF;
  --card-text-color: #fff;
  --heading-color: #EDF9FF;
  --cta-color: #E4F6FF;
  --button-text-color: #1A202C;
  --extension-background: #18181B;
  --appeal-background: #18181B;
  --font-content: 'Inter', sans-serif;
  --canvas-width: 221rem;
  --canvas-height: 144rem;
  --content-max-width: 80rem;
  --eclipse-image: url('/media/svg/appeal/whatsnew-140/eclipse.svg');
  --cta-shadow-image: url('/media/svg/appeal/whatsnew-140/shadow.svg');
  --appeal-background-image: url('/media/img/thunderbird/appeal/whatsnew-140/dark-gradient.jpg');
  --appeal-background-image-set: image-set(url('/media/img/thunderbird/appeal/whatsnew-140/dark-gradient.avif') type('image/avif'), var(--appeal-background-image) type('image/jpeg'));
}
.page-whatsnew-140 html {
  background-color: var(--extension-background);
}
.page-whatsnew-140 body {
  margin: auto;
  max-width: var(--canvas-width);
  background: var(--extension-background);
  background-position: top center;
  background-repeat: repeat-x;
  color: var(--text-color);
  font-family: var(--font-content);
}
.page-whatsnew-140 .main-content {
  display: flex;
  flex-direction: column;
  position: relative;
  gap: 0;
  background-color: var(--appeal-background);
  min-height: var(--canvas-height);
}
.page-whatsnew-140 .main-content .header,
.page-whatsnew-140 .main-content .introduction {
  display: flex;
  flex-direction: column;
  align-items: center;
  align-self: center;
  padding: 3rem 6.25rem 1rem 9.25rem;
  z-index: 1;
  gap: 2.625rem;
  width: 100%;
  box-sizing: border-box;
  max-width: var(--content-max-width);
}
.page-whatsnew-140 .main-content .header .row,
.page-whatsnew-140 .main-content .introduction .row {
  display: flex;
  width: 100%;
  align-content: flex-start;
  justify-content: space-between;
}
.page-whatsnew-140 .main-content .header .row .header-logo,
.page-whatsnew-140 .main-content .introduction .row .header-logo {
  padding-top: 3rem;
  width: 34.125rem;
}
.page-whatsnew-140 .main-content .header .row .header-logo svg,
.page-whatsnew-140 .main-content .introduction .row .header-logo svg {
  width: 100%;
}
.page-whatsnew-140 .main-content .header .row .header-star-group,
.page-whatsnew-140 .main-content .introduction .row .header-star-group {
  max-height: 6.75rem;
}
.page-whatsnew-140 .main-content .header p.row,
.page-whatsnew-140 .main-content .introduction p.row {
  max-width: 50rem;
  text-align: center;
  text-shadow: 0 0.0625rem 0.625rem rgba(0, 98, 235, 0.7);
  /* web/body/large */
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 400;
  line-height: 140%;
}
.page-whatsnew-140 .main-content .features {
  padding: 1rem;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 2.4375rem;
  z-index: 1;
}
.page-whatsnew-140 .main-content .features .column {
  max-width: 31.375rem;
  gap: 2.25rem;
  display: flex;
  flex-direction: column;
  flex-grow: 0;
}
.page-whatsnew-140 .main-content .card {
  padding: 0.75rem 2rem 2rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-self: stretch;
  z-index: 1;
  max-width: 31.375rem;
  border-radius: 0.9375rem 0.1875rem;
  background: linear-gradient(137deg, #19333F 0.05%, #1E2531 32.83%) padding-box, linear-gradient(-247deg, #00eeff 0%, rgba(0, 102, 255, 0) 25%, rgba(0, 102, 255, 0) 75%, #00eeff 100%) border-box;
  border: 0.0625rem solid transparent;
}
.page-whatsnew-140 .main-content .card header {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  margin-left: -1rem;
  margin-right: -1rem;
  min-height: 4.3125rem;
}
.page-whatsnew-140 .main-content .card header h1 {
  width: 100%;
  margin: 0 0 0 -1.3125rem;
  color: var(--heading-color);
  text-shadow: 0 0.25rem 0.25rem rgba(0, 0, 0, 0.15), 0 0 1.54375rem rgba(88, 201, 255, 0.39);
  /* web/title/large */
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
.page-whatsnew-140 .main-content .card header .icon {
  width: 4.3125rem;
  opacity: 0.2;
}
.page-whatsnew-140 .main-content .card .row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}
.page-whatsnew-140 .main-content .card .row img {
  max-width: 100%;
}
.page-whatsnew-140 .main-content .card .row p {
  margin: 0;
  color: var(--card-text-color);
  font-feature-settings: 'liga' off, 'clig' off;
  /* web/body/default */
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 125%;
}
.page-whatsnew-140 .main-content .additional-features {
  z-index: 1;
  max-width: var(--content-max-width);
  align-self: center;
  padding-bottom: 6.25rem;
}
.page-whatsnew-140 .main-content .additional-features .additional-features-header {
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 0;
  padding-top: 2rem;
  padding-bottom: 1rem;
}
.page-whatsnew-140 .main-content .additional-features .bullet-points {
  padding: 0 7.1875rem;
  display: grid;
  grid-auto-flow: column;
  grid-template: "a c" 1fr "b d" 1fr;
}
.page-whatsnew-140 .main-content .additional-features .bullet-points header {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}
.page-whatsnew-140 .main-content .additional-features .bullet-points section h1 {
  /* web/title/medium */
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  margin: 0;
}
.page-whatsnew-140 .main-content .additional-features .bullet-points section li {
  color: var(--card-text-color);
  font-feature-settings: 'liga' off, 'clig' off;
  /* web/body/default */
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 125%;
}
.page-whatsnew-140 .main-content .call-to-action {
  z-index: 2;
  width: 100%;
  background-image: var(--cta-shadow-image);
  background-repeat: no-repeat;
  background-position: top center;
  min-height: 300px;
  padding-top: 3.4375rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.page-whatsnew-140 .main-content .call-to-action h1 {
  color: var(--cta-color);
  text-align: center;
  text-shadow: 0 0.25rem 0.25rem rgba(0, 0, 0, 0.15), 0 0 1.54375rem rgba(88, 201, 255, 0.39);
  /* web/title/large */
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin: 0;
}
.page-whatsnew-140 .main-content .call-to-action p {
  margin: 1.375rem 0 0;
  color: var(--card-text-color);
  text-align: center;
  text-shadow: 0 0 0.9375rem #000;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 116.667%;
  max-width: 60%;
}
.page-whatsnew-140 .main-content .cta-button {
  margin-top: 3rem;
  display: flex;
  gap: 1rem;
  justify-content: center;
  padding: 1.125rem 2rem;
  color: var(--button-text-color);
  text-shadow: 0.03125rem 0.03125rem 0 rgba(255, 255, 255, 0.1);
  font-size: 1rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: 0.03rem;
  text-transform: uppercase;
  text-decoration: none;
  background: linear-gradient(329deg, #1373D9 -21.06%, #58C9FF 64%) padding-box, linear-gradient(247deg, #2b8cdc 0%, rgba(0, 102, 255, 0) 10%, rgba(0, 102, 255, 0) 90%, #2b8cdc 100%) border-box;
  border: 0.0625rem solid transparent;
  border-radius: 1rem;
}
.page-whatsnew-140 .main-content .cta-button:hover {
  text-decoration: none;
}
.page-whatsnew-140 .main-content .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: var(--appeal-background-image-set);
  background-position: top center;
  z-index: 0;
}
.page-whatsnew-140 .main-content .eclipse {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: var(--eclipse-image);
  background-repeat: no-repeat;
  background-size: 80rem;
  background-position: top center;
  z-index: 0;
}
@media (max-width: 64rem) {
  .page-whatsnew-140 .main-content .header,
  .page-whatsnew-140 .main-content .introduction {
    padding: 1rem;
  }
  .page-whatsnew-140 .main-content .header p.row,
  .page-whatsnew-140 .main-content .introduction p.row {
    padding: 0;
  }
  .page-whatsnew-140 .main-content .features {
    gap: 1rem;
  }
}
@media (max-width: 40rem) {
  .page-whatsnew-140 .main-content .header,
  .page-whatsnew-140 .main-content .introduction {
    padding: 1rem;
  }
  .page-whatsnew-140 .main-content .header .row .header-star-group,
  .page-whatsnew-140 .main-content .introduction .row .header-star-group {
    display: none;
  }
  .page-whatsnew-140 .main-content .header p.row,
  .page-whatsnew-140 .main-content .introduction p.row {
    font-size: 1.0143125rem;
  }
  .page-whatsnew-140 .main-content .card {
    display: flex;
    padding: 8.205px 21.881px 21.881px 21.881px;
    gap: 21.881px;
  }
  .page-whatsnew-140 .main-content .card header {
    min-height: 2.95rem;
  }
  .page-whatsnew-140 .main-content .card header h1 {
    font-size: 1.5385rem;
  }
  .page-whatsnew-140 .main-content .card .row p {
    font-size: 0.68375rem;
  }
  .page-whatsnew-140 .main-content .card .row img {
    max-width: 100%;
  }
  .page-whatsnew-140 .main-content .features {
    flex-direction: column;
  }
  .page-whatsnew-140 .main-content .additional-features .additional-features-header h1 {
    font-size: 1.5rem;
    margin: 0;
  }
  .page-whatsnew-140 .main-content .additional-features .bullet-points {
    display: flex;
    flex-direction: column;
    padding: 1.5rem;
  }
  .page-whatsnew-140 .main-content .additional-features .bullet-points section h1 {
    font-size: 1rem;
  }
  .page-whatsnew-140 .main-content .additional-features .bullet-points section li {
    font-size: 0.875rem;
  }
  .page-whatsnew-140 .main-content .call-to-action {
    padding-bottom: 2rem;
  }
  .page-whatsnew-140 .main-content .call-to-action h1 {
    font-size: 1.5rem;
  }
  .page-whatsnew-140 .main-content .call-to-action p {
    font-size: 1.25rem;
    max-width: 90%;
  }
}
