@font-face {
  font-family: "Timeless Sans";
  src: url("assets/fonts/timeless-sans-1.094.woff2") format("woff2");
  font-weight: 300 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Timeless Sans";
  src: url("assets/fonts/timeless-sans-1.094.woff2") format("woff2");
  font-weight: 300 800;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Timeless Serif";
  src: url("assets/fonts/timeless-serif-1.094.woff2") format("woff2");
  font-weight: 200 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Timeless Serif";
  src: url("assets/fonts/timeless-serif-italic-1.094.woff2") format("woff2");
  font-weight: 300 700;
  font-style: italic;
  font-display: swap;
}
:root {
  color-scheme: light;
  --track: 0px;
  --track-bold: 0px;
  --track-serif: 0px;
  --font-serif: ui-serif, "New York", "Timeless Serif", Georgia, "Times New Roman", serif;
  --paper: #f5f1e8;
  --panel: #fffdf8;
  --ink: #132542;
  --ink-soft: #35445f;
  --muted: #5b667c;
  --line: rgba(19, 37, 66, 0.1);
  --hover-wash: rgba(19, 37, 66, 0.06);
  --glass-bg: rgba(255, 253, 248, 0.7);
  --glass-bg-strong: rgba(255, 253, 248, 0.9);
  --glass-border: rgba(19, 37, 66, 0.09);
  --card-glass: rgba(255, 253, 248, 0.8);
  --card-glass-hover: rgba(255, 253, 248, 0.96);
  --feature-ink: #48556d;
  --cta-hover: #08152d;
  --btn-dark-a: #1b3157;
  --btn-dark-b: #132542;
  --btn-dark-text: #ffffff;
  --btn-dark-border: rgba(19, 37, 66, 0.9);
  --shadow-rgb: 19, 37, 66;
  --surface: #fffdf8;
  --highlight: rgba(255, 255, 255, 0.75);
  --highlight-soft: rgba(255, 255, 255, 0.55);
  --wash-a: 7%;
  --wash-b: 14%;
  --control-wash-direction: 180deg;
  --wash-quiet-a: 2.5%;
  --wash-quiet-b: 5%;
  --edge-quiet: 8%;
  --raised-shadow: 0 2px 10px rgba(var(--shadow-rgb), 0.08);
  --floating-shadow: 0 8px 28px rgba(var(--shadow-rgb), 0.14);
  --page-light: rgba(255, 255, 255, 0.6);
  --orbit: #254aa8;
  --circle: #b38040;
  --beacon: #3d4a9e;
  --echo: #2e7878;
  --watchlist: #ff000f;
  --circle-text: #93621f;
  --watchlist-text: #da030c;
  --aurora: #9a40c6;
  --logo-navy: #132542;
  --logo-blue: #356fbb;
  --logo-berry: #b33978;
}
:root[data-theme=dark] {
  color-scheme: dark;
  --paper: #0c172b;
  --panel: #121f36;
  --ink: #f5f1e8;
  --ink-soft: #c9d1df;
  --muted: #97a5bb;
  --line: rgba(245, 241, 232, 0.12);
  --hover-wash: rgba(245, 241, 232, 0.08);
  --glass-bg: rgba(12, 23, 43, 0.64);
  --glass-bg-strong: rgba(12, 23, 43, 0.88);
  --glass-border: rgba(245, 241, 232, 0.12);
  --card-glass: rgba(18, 31, 54, 0.74);
  --card-glass-hover: rgba(24, 40, 68, 0.94);
  --feature-ink: #aeb9ca;
  --cta-hover: #e9e3d7;
  --btn-dark-a: #faf7f0;
  --btn-dark-b: #e8e1d5;
  --btn-dark-text: #132542;
  --btn-dark-border: rgba(245, 241, 232, 0.9);
  --shadow-rgb: 1, 5, 14;
  --surface: #121f36;
  --highlight: rgba(255, 255, 255, 0.12);
  --highlight-soft: rgba(255, 255, 255, 0.08);
  --wash-a: 14%;
  --wash-b: 22%;
  --control-wash-direction: 0deg;
  --wash-quiet-a: 5%;
  --wash-quiet-b: 8%;
  --edge-quiet: 14%;
  --raised-shadow: 0 2px 10px rgba(0, 0, 0, 0.22);
  --floating-shadow: 0 8px 28px rgba(0, 0, 0, 0.32);
  --page-light: rgba(255, 255, 255, 0.045);
  --orbit: #66aaff;
  --circle: #edb345;
  --beacon: #a79af0;
  --echo: #46aeae;
  --watchlist: #ff3b34;
  --circle-text: #edb345;
  --watchlist-text: #ff3b34;
  --aurora: #d48aee;
}
@media (prefers-color-scheme: dark) {
  :root[data-theme=auto],
  :root:not([data-theme]) {
    color-scheme: dark;
    --paper: #0c172b;
    --panel: #121f36;
    --ink: #f5f1e8;
    --ink-soft: #c9d1df;
    --muted: #97a5bb;
    --line: rgba(245, 241, 232, 0.12);
    --hover-wash: rgba(245, 241, 232, 0.08);
    --glass-bg: rgba(12, 23, 43, 0.64);
    --glass-bg-strong: rgba(12, 23, 43, 0.88);
    --glass-border: rgba(245, 241, 232, 0.12);
    --card-glass: rgba(18, 31, 54, 0.74);
    --card-glass-hover: rgba(24, 40, 68, 0.94);
    --feature-ink: #aeb9ca;
    --cta-hover: #e9e3d7;
    --btn-dark-a: #faf7f0;
    --btn-dark-b: #e8e1d5;
    --btn-dark-text: #132542;
    --btn-dark-border: rgba(245, 241, 232, 0.9);
    --shadow-rgb: 1, 5, 14;
    --surface: #121f36;
    --highlight: rgba(255, 255, 255, 0.12);
    --highlight-soft: rgba(255, 255, 255, 0.08);
    --wash-a: 14%;
    --wash-b: 22%;
    --control-wash-direction: 0deg;
    --wash-quiet-a: 5%;
    --wash-quiet-b: 8%;
    --edge-quiet: 14%;
    --raised-shadow: 0 2px 10px rgba(0, 0, 0, 0.22);
    --floating-shadow: 0 8px 28px rgba(0, 0, 0, 0.32);
    --page-light: rgba(255, 255, 255, 0.045);
    --orbit: #66aaff;
    --circle: #edb345;
    --beacon: #a79af0;
    --echo: #46aeae;
    --watchlist: #ff3b34;
  --circle-text: #edb345;
  --watchlist-text: #ff3b34;
    --aurora: #d48aee;
  }
}
@property --wa {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --wb {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --e {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0%;
}
@supports (corner-shape: squircle) {
  .button,
  .hero-app,
  .hero-lead,
  .app-teaser,
  .feature-card,
  .detail,
  .request,
  .contact-card,
  .site-footer__panel,
  .site-footer__contact,
  .mobile-menu,
  .prose__note {
    corner-shape: squircle;
  }
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
:root.type-timeless {
  --track: calc(0.77px - 0.048em);
  --track-bold: calc(0.68px - 0.027em);
  --track-serif: calc(0.66px - 0.035em);
  letter-spacing: var(--track);
}
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Timeless Sans", Inter, ui-sans-serif, system-ui, "Segoe UI", sans-serif;
  font-variation-settings: "STYL" 100;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
:where(.type-timeless) :where(p, li, dd, dt, blockquote, figcaption, td, input, textarea, select) {
  letter-spacing: var(--track);
}
:where(.type-timeless) :where(h1, h2, h3, h4, h5, h6, th, button) {
  letter-spacing: var(--track-bold);
}
:where(em, i, cite, dfn, var) {
  font-variation-settings: "STYL" 100, "ital" 100;
}
body.is-menu-open {
  overflow: hidden;
}
::-moz-selection {
  background: color-mix(in srgb, var(--ink) 90%, transparent);
  color: var(--paper);
}
::selection {
  background: color-mix(in srgb, var(--ink) 90%, transparent);
  color: var(--paper);
}
img {
  display: block;
  max-width: 100%;
}
a {
  color: inherit;
}
.prose a:not([class]),
.detail-panel a:not([class]),
.intro__copy a:not([class]),
.faq a:not([class]),
.hero__lede a:not([class]),
.feature-card a:not([class]),
.pricing__footnote a:not([class]),
.site-footer__legal a:not([class]),
.article__body a:not([class]),
.support-collection__status a:not([class]),
.news-post__more a:not([class]),
.pricing-faq__more a:not([class]),
.press-facts dd a:not([class]),
.news-signup__note a:not([class]),
.support-collection__about,
.news-entry__more a {
  color: var(--ink);
  font-weight: 660;
  text-decoration: none;
  border-bottom: 1px solid color-mix(in srgb, var(--ink) 18%, transparent);
  padding-bottom: 2px;
  transition: color 180ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.prose a:not([class]):hover,
.detail-panel a:not([class]):hover,
.intro__copy a:not([class]):hover,
.faq a:not([class]):hover,
.hero__lede a:not([class]):hover,
.feature-card a:not([class]):hover,
.pricing__footnote a:not([class]):hover,
.site-footer__legal a:not([class]):hover,
.article__body a:not([class]):hover,
.support-collection__status a:not([class]):hover,
.news-post__more a:not([class]):hover,
.pricing-faq__more a:not([class]):hover,
.press-facts dd a:not([class]):hover,
.news-signup__note a:not([class]):hover,
.support-collection__about:hover,
.news-entry__more a:hover {
  color: var(--ink);
  border-color: color-mix(in srgb, var(--ink) 45%, transparent);
}
:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--app-accent, var(--ink)) 34%, transparent);
  outline-offset: 4px;
  border-radius: 6px;
  transition: outline-color 180ms ease, outline-offset 180ms ease;
}
.site-header {
  position: fixed;
  z-index: 20;
  top: 18px;
  left: 50%;
  width: min(100% - 32px, 1120px);
  min-height: 62px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 8px 8px 8px 20px;
  border: 1px solid var(--glass-border);
  border-radius: 999px;
  background: var(--glass-bg);
  box-shadow: inset 0 1px 0 var(--highlight), inset 0 -1px 0 color-mix(in srgb, var(--highlight) 45%, transparent), 0 1px 1px rgba(var(--shadow-rgb), 0.04), 0 16px 40px rgba(var(--shadow-rgb), 0.09);
  backdrop-filter: blur(28px) saturate(1.5);
  -webkit-backdrop-filter: blur(28px) saturate(1.5);
  transform: translateX(-50%);
  transition: background 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.site-header.is-scrolled {
  border-color: color-mix(in srgb, var(--ink) 12%, transparent);
  background: var(--glass-bg-strong);
  box-shadow: inset 0 1px 0 var(--highlight), inset 0 -1px 0 color-mix(in srgb, var(--highlight) 45%, transparent), 0 1px 1px rgba(var(--shadow-rgb), 0.05), 0 18px 44px rgba(var(--shadow-rgb), 0.12);
}
.brand,
.footer-brand {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  color: var(--ink);
  text-decoration: none;
  font-weight: 600;
  letter-spacing: calc(-0.018em + var(--track-bold));
}
.brand__mark {
  flex: none;
  width: 28px;
  height: auto;
}
.footer-brand .brand__mark {
  width: 25px;
}
.brand__mark--dark,
.app-icon--dark,
.shot-img--dark.shot-img--dark {
  display: none;
}
:root[data-theme=dark] .brand__mark--light,
:root[data-theme=dark] .app-icon--light,
:root[data-theme=dark] .shot-img--light {
  display: none;
}
:root[data-theme=dark] .brand__mark--dark,
:root[data-theme=dark] .app-icon--dark,
:root[data-theme=dark] .shot-img--dark {
  display: block;
}
@media (prefers-color-scheme: dark) {
  :root[data-theme=auto] .brand__mark--light,
  :root[data-theme=auto] .app-icon--light,
  :root[data-theme=auto] .shot-img--light,
  :root:not([data-theme]) .brand__mark--light,
  :root:not([data-theme]) .app-icon--light,
  :root:not([data-theme]) .shot-img--light {
    display: none;
  }
  :root[data-theme=auto] .brand__mark--dark,
  :root[data-theme=auto] .app-icon--dark,
  :root[data-theme=auto] .shot-img--dark,
  :root:not([data-theme]) .brand__mark--dark,
  :root:not([data-theme]) .app-icon--dark,
  :root:not([data-theme]) .shot-img--dark {
    display: block;
  }
}
@media (prefers-reduced-motion: no-preference) {
  @view-transition {
    navigation: auto;
  }
}
::view-transition-old(root),
::view-transition-new(root) {
  animation-duration: 320ms;
}
:root.is-theme-switching .site-header,
:root.is-theme-switching .mobile-menu {
  background: var(--paper);
  transition: none;
}
@media (prefers-reduced-motion: reduce) {
  ::view-transition-old(root),
  ::view-transition-new(root) {
    animation-duration: 0s;
  }
}
.brand__name,
.footer-brand span {
  font-family: inherit;
  font-size: 1rem;
  font-weight: 720;
  letter-spacing: calc(-0.015em + var(--track-bold));
  line-height: 1;
  white-space: nowrap;
}
.site-nav {
  display: flex;
  align-items: center;
  gap: 2px;
}
.site-nav a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: 0 16px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--muted);
  font-size: 0.94rem;
  font-weight: 640;
  letter-spacing: calc(-0.005em + var(--track-bold));
  white-space: nowrap;
  text-decoration: none;
  transition: background 180ms cubic-bezier(0.2, 0.65, 0.2, 1), color 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.site-nav a:not(.nav-cta):not([aria-current]):hover {
  background: var(--hover-wash);
  color: var(--ink);
}
.site-nav a[aria-current] {
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 999px;
  background: linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: 22%;
  --wb: 30%;
  --et: var(--t);
  --e: 45%;
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --e: 30%;
  color: var(--ink);
}
.site-nav .nav-cta {
  --t: var(--ink);
  flex: none;
  margin-left: 8px;
  padding: 0 20px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--t) 60%, transparent);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(0, 0, 0, 0.12)), linear-gradient(180deg, color-mix(in srgb, var(--t) 92%, white), var(--t));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18), 0 2px 3px color-mix(in srgb, var(--t) 18%, transparent);
  color: var(--paper);
  transition: transform 220ms cubic-bezier(0.3, 1.25, 0.5, 1), opacity 220ms cubic-bezier(0.2, 0.65, 0.2, 1), filter 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.site-nav .nav-cta:active {
  transform: scale(0.97);
  opacity: 0.86;
  transition: transform 90ms ease-out, opacity 90ms ease-out;
}
.site-nav .nav-cta:hover {
  color: var(--paper);
  filter: brightness(1.08);
}
.theme-toggle {
  position: relative;
  flex: none;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  margin-left: 4px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--muted);
  cursor: pointer;
  transition: background 180ms cubic-bezier(0.2, 0.65, 0.2, 1), color 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.theme-toggle:hover {
  background: var(--hover-wash);
  color: var(--ink);
}
.theme-toggle svg {
  width: 18px;
  height: 18px;
}
.theme-toggle .theme-toggle__auto,
.theme-toggle .theme-toggle__sun,
.theme-toggle .theme-toggle__moon {
  display: none;
}
html:not([data-theme]) .theme-toggle {
  display: none;
}
.theme-toggle::after {
  content: "System";
  position: absolute;
  z-index: 1;
  top: calc(100% + 8px);
  left: 50%;
  padding: 5px 11px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 999px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  box-shadow: inset 0 1px 0 var(--highlight-soft), var(--floating-shadow);
  color: var(--ink-soft);
  font-size: 0.74rem;
  font-weight: 620;
  letter-spacing: calc(-0.005em + var(--track-bold));
  line-height: 1.3;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transform: translate(-50%, -4px);
  transition: opacity 180ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
:root[data-theme=light] .theme-toggle::after {
  content: "Light";
}
:root[data-theme=dark] .theme-toggle::after {
  content: "Dark";
}
:root[data-theme=auto] .theme-toggle::after {
  content: "System";
}
@media (hover: hover) {
  .theme-toggle:hover::after {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}
.theme-toggle:focus-visible::after,
.theme-toggle.is-peek::after {
  opacity: 1;
  transform: translate(-50%, 0);
}
.menu-toggle {
  display: none;
  flex: none;
  width: 44px;
  height: 44px;
  place-items: center;
  padding: 0;
  border: none;
  border-radius: 999px;
  background: transparent;
  color: var(--ink);
  cursor: pointer;
  transition: background 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.menu-toggle:hover {
  background: var(--hover-wash);
}
.menu-toggle svg {
  width: 20px;
  height: 20px;
}
.menu-toggle .menu-toggle__close {
  display: none;
}
body.is-menu-open .menu-toggle .menu-toggle__open {
  display: none;
}
body.is-menu-open .menu-toggle .menu-toggle__close {
  display: block;
}
.mobile-menu {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  right: 0;
  display: none;
  padding: 10px;
  border: 1px solid var(--glass-border);
  border-radius: 20px;
  background: var(--glass-bg-strong);
  box-shadow: inset 0 1px 0 var(--highlight), var(--floating-shadow);
  backdrop-filter: blur(28px) saturate(1.5);
  -webkit-backdrop-filter: blur(28px) saturate(1.5);
}
.mobile-menu a {
  display: flex;
  align-items: center;
  min-height: 48px;
  padding: 0 16px;
  border: 1px solid transparent;
  border-radius: 12px;
  color: var(--ink);
  font-size: 1.05rem;
  font-weight: 660;
  text-decoration: none;
  transition: background 180ms cubic-bezier(0.2, 0.65, 0.2, 1), color 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.mobile-menu a:not([aria-current]):hover {
  background: var(--hover-wash);
  color: var(--ink);
}
.mobile-menu a[aria-current] {
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 12px;
  background: linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --e: 30%;
}
body.is-menu-open .mobile-menu {
  display: grid;
  gap: 2px;
}
@media (max-width: 860px) {
  .brand {
    min-width: 44px;
    min-height: 44px;
  }
  .menu-toggle {
    display: grid;
    order: 2;
  }
  .site-nav .nav-cta {
    order: 3;
  }
}
:root[data-theme=auto] .theme-toggle .theme-toggle__auto {
  display: block;
}
:root[data-theme=light] .theme-toggle .theme-toggle__sun {
  display: block;
}
:root[data-theme=dark] .theme-toggle .theme-toggle__moon {
  display: block;
}
.hero {
  min-height: 82svh;
  display: flex;
  align-items: center;
  padding: 132px 0 72px;
  background: linear-gradient(180deg, var(--page-light), transparent 48svh), var(--paper);
}
.hero--home {
  position: relative;
  min-height: 100svh;
  align-items: flex-start;
  padding: 176px 0 96px;
  overflow: hidden;
  background: linear-gradient(180deg, var(--page-light), transparent 48svh), var(--paper);
}
.hero--home h1 {
  max-width: 1000px;
  font-size: clamp(3.7rem, 6.1vw, 6.35rem);
}
.hero--home .hero__lede {
  max-width: 760px;
  margin-top: 20px;
}
.hero--home .hero__actions {
  margin-top: 26px;
}
.hero-collage {
  display: none;
  position: absolute;
  inset: 0;
  pointer-events: none;
}
@media (min-width: 760px) {
  .hero-collage {
    display: block;
  }
}
.hero-collage__icon {
  --tilt: 0deg;
  position: absolute;
  transform: rotate(var(--tilt));
  filter: drop-shadow(0 10px 22px rgba(var(--shadow-rgb), 0.16));
  animation: hero-collage-in 900ms cubic-bezier(0.2, 0.65, 0.2, 1) var(--enter-delay, 0ms) backwards, hero-collage-float var(--float, 9s) ease-in-out var(--float-delay, 0s) infinite alternate;
}
.hero-collage__icon img {
  width: 100%;
  height: auto;
}
.hero-collage__icon--orbit {
  top: 32px;
  left: 5%;
  width: 96px;
  --tilt: 10deg;
  --float: 9s;
  --float-delay: -1s;
  --enter-delay: 150ms;
}
.hero-collage__icon--circle {
  top: 56px;
  left: 21%;
  width: 72px;
  --tilt: -13deg;
  --float: 11s;
  --float-delay: -4s;
  --enter-delay: 300ms;
}
.hero-collage__icon--beacon {
  top: 26px;
  left: 38%;
  width: 104px;
  --tilt: 6deg;
  --float: 10s;
  --float-delay: -2.5s;
  --enter-delay: 450ms;
}
.hero-collage__icon--echo {
  top: 58px;
  left: 58%;
  width: 64px;
  --tilt: -15deg;
  --float: 12s;
  --float-delay: -6s;
  --enter-delay: 600ms;
}
.hero-collage__icon--watchlist {
  top: 38px;
  left: 74%;
  width: 84px;
  --tilt: 14deg;
  --float: 8.5s;
  --float-delay: -0.5s;
  --enter-delay: 750ms;
}
.hero-collage__icon--aurora {
  top: 54px;
  left: 90%;
  width: 70px;
  --tilt: -11deg;
  --float: 10.5s;
  --float-delay: -3.5s;
  --enter-delay: 900ms;
}
@media (min-width: 1152px) {
  .hero-collage__icon--orbit {
    left: calc(50% - 540px);
  }
  .hero-collage__icon--circle {
    left: calc(50% - 356px);
  }
  .hero-collage__icon--beacon {
    left: calc(50% - 166px);
  }
  .hero-collage__icon--echo {
    left: calc(50% + 58px);
  }
  .hero-collage__icon--watchlist {
    left: calc(50% + 236px);
  }
  .hero-collage__icon--aurora {
    left: calc(50% + 420px);
  }
}
@media (max-width: 759.98px) {
  .hero-collage {
    display: block;
  }
  .hero-collage__icon--orbit {
    top: 42px;
    left: 0%;
    width: 56px;
  }
  .hero-collage__icon--circle {
    top: 50px;
    left: 18%;
    width: 44px;
  }
  .hero-collage__icon--beacon {
    top: 40px;
    left: 34%;
    width: 60px;
  }
  .hero-collage__icon--echo {
    top: 52px;
    left: 55%;
    width: 40px;
  }
  .hero-collage__icon--watchlist {
    top: 46px;
    left: 69%;
    width: 50px;
  }
  .hero-collage__icon--aurora {
    top: 52px;
    left: 87%;
    width: 44px;
  }
}
@keyframes hero-collage-in {
  from {
    opacity: 0;
  }
}
@keyframes hero-collage-float {
  from {
    transform: rotate(var(--tilt)) translateY(-6px);
  }
  to {
    transform: rotate(calc(var(--tilt) + 3deg)) translateY(6px);
  }
}
.hero__inner {
  position: relative;
  width: min(100% - 40px, 1120px);
  margin: 0 auto;
}
.hero--home .hero__inner {
  display: grid;
  align-content: center;
  min-height: calc(100svh - 272px);
}
.hero.hero--home {
  padding: 116px 0 84px;
}
.hero--home .hero-collage {
  display: none !important;
}
.hero.hero--home .hero__inner {
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  align-content: center;
  min-height: calc(100svh - 200px);
}
.hero.hero--home .hero__inner > * {
  grid-column: 1 !important;
}
.hero--home .hero__text {
  display: grid;
  justify-items: center;
  max-width: 1120px;
  text-align: center;
}
.hero.hero--home h1 {
  margin-top: 0;
  font-size: clamp(3rem, 5vw, 4.5rem);
  text-wrap: balance;
}
.hero.hero--home .hero__lede {
  max-width: 900px;
  margin: 20px auto 0;
  text-wrap: balance;
}
.hero.hero--home .hero__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 28px;
}
.hero-scene {
  position: relative;
  width: min(100%, calc((100vw - 32px) / 1.14));
  aspect-ratio: 2.8;
  margin-top: 52px;
  --ax: 55%;
  --ay: 110%;
}
.hero-scene__glow {
  position: absolute;
  inset: 18% 8% -10%;
  border-radius: 50%;
  background: conic-gradient(from 210deg, var(--orbit), var(--circle), var(--echo), var(--watchlist), var(--aurora), var(--beacon), var(--orbit));
  filter: blur(60px);
  opacity: 0.22;
}
:root[data-theme=dark] .hero-scene__glow {
  opacity: 0.34;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .hero-scene__glow {
    opacity: 0.34;
  }
}
.hero-scene__orbit {
  position: absolute;
  inset: 0;
}
.hero-scene__ring {
  position: absolute;
  left: 50%;
  top: 100%;
  width: calc(var(--ax) * 2 * var(--k));
  height: calc(var(--ay) * 2 * var(--k));
  border: 1px solid var(--st-ring, color-mix(in srgb, var(--ink) 12%, transparent));
  border-radius: 50%;
  transform: translate(-50%, -50%);
  -webkit-mask-image: linear-gradient(to bottom, #000 0 44%, transparent 50%);
  mask-image: linear-gradient(to bottom, #000 0 44%, transparent 50%);
}
.hero-scene__ring--main { --k: 1; }
.hero-scene__ring--inner { --k: 0.86; opacity: 0.6; }
.hero-scene__ring--outer { --k: 0.72; opacity: 0.4; }
.hero-scene__icon {
  --size: clamp(40px, 5.4%, 64px);
  position: absolute;
  z-index: 7;
  left: calc(50% + var(--ax) * cos(var(--at)));
  bottom: calc(var(--ay) * sin(var(--at)));
  width: clamp(40px, 5.4cqw, 64px);
  aspect-ratio: 1;
  filter: drop-shadow(0 10px 18px rgba(var(--shadow-rgb), 0.22));
  transform: translate(-50%, 50%);
}
.hero-scene {
  container-type: inline-size;
}
.hero-scene__icon img {
  width: 100%;
  height: auto;
}
.hero-scene__icon[style*="--i: 0"] { --at: 165deg; }
.hero-scene__icon[style*="--i: 1"] { --at: 140deg; }
.hero-scene__icon[style*="--i: 2"] { --at: 120deg; }
.hero-scene__icon[style*="--i: 3"] { --at: 60deg; }
.hero-scene__icon[style*="--i: 4"] { --at: 40deg; }
.hero-scene__icon[style*="--i: 5"] { --at: 15deg; }
.hero-scene__device {
  position: absolute;
  bottom: 0;
  display: block;
}
.hero-scene__device img {
  width: 100%;
  height: auto;
}
.hero-scene__device--tv { z-index: 2; bottom: 21%; left: 31%; width: 38%; }
.hero-scene__device--mac { z-index: 3; left: 11%; width: 30%; }
.hero-scene__device--ipad { z-index: 3; right: 10%; width: 25%; }
.hero-scene__device--iphone { z-index: 5; left: 36%; width: 7.5%; }
.hero-scene__device--duo { z-index: 5; right: 31%; width: 9.5%; }
@media (max-width: 700px) {
  .hero-scene {
    width: 100%;
    aspect-ratio: 1.25;
    margin-top: 44px;
    --ax: 46%;
    --ay: 95%;
  }
  .hero-scene__icon {
    width: 38px;
  }
  .hero-scene__icon[style*="--i: 0"] { --at: 152deg; }
  .hero-scene__icon[style*="--i: 1"] { --at: 130deg; }
  .hero-scene__icon[style*="--i: 2"] { --at: 105deg; }
  .hero-scene__icon[style*="--i: 3"] { --at: 75deg; }
  .hero-scene__icon[style*="--i: 4"] { --at: 50deg; }
  .hero-scene__icon[style*="--i: 5"] { --at: 28deg; }
  .hero-scene__device--tv { bottom: 34%; left: 40%; width: 46%; }
  .hero-scene__device--ipad { left: 8%; width: 24%; }
  .hero-scene__device--mac { left: 10%; width: 52%; }
  .hero-scene__device--duo { right: 13%; width: 14%; }
  .hero-scene__device--iphone { right: 4%; width: 10.5%; }
}
.hero--home .hero__inner > * {
  animation: hero-rise 900ms cubic-bezier(0.2, 0.65, 0.2, 1) both;
}
.hero--home .hero__inner > :nth-child(2) {
  animation-delay: 70ms;
}
.hero--home .hero__inner > :nth-child(3) {
  animation-delay: 140ms;
}
.hero--home .hero__inner > :nth-child(4) {
  animation-delay: 220ms;
}
.hero--home .hero__inner > :nth-child(5) {
  animation-delay: 300ms;
}
@keyframes hero-rise {
  from {
    opacity: 0;
    transform: translateY(22px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 720;
  letter-spacing: calc(0.14em + var(--track-bold));
  text-transform: uppercase;
}
.eyebrow::before {
  content: "";
  flex: none;
  width: 12px;
  height: 13px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 416 460'%3E%3Cpath fill='%23b33978' d='M82.5 161V366A5 5 0 0 1 77.5 371C26.35 371 0 354 0 321V206C0 173 26.35 156 77.5 156A5 5 0 0 1 82.5 161Z'/%3E%3Cpath fill='%23356fbb' d='M215.5 75V402.5A5 5 0 0 1 210.5 407.5C147.14 407.5 114.5 388.12 114.5 350.5V127C114.5 89.38 147.14 70 210.5 70A5 5 0 0 1 215.5 75Z'/%3E%3Cpath fill='%23132542' d='M247.5 58C247.5 19.72 276.145 0 331.75 0C387.355 0 416 19.72 416 58V402C416 440.28 387.355 460 331.75 460C276.145 460 247.5 440.28 247.5 402Z'/%3E%3C/svg%3E") center/contain no-repeat;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 416 460'%3E%3Cpath fill='%23000' d='M82.5 161V366A5 5 0 0 1 77.5 371C26.35 371 0 354 0 321V206C0 173 26.35 156 77.5 156A5 5 0 0 1 82.5 161Z'/%3E%3Cpath fill='%23000' d='M215.5 75V402.5A5 5 0 0 1 210.5 407.5C147.14 407.5 114.5 388.12 114.5 350.5V127C114.5 89.38 147.14 70 210.5 70A5 5 0 0 1 215.5 75Z'/%3E%3Cpath fill='%23000' d='M247.5 58C247.5 19.72 276.145 0 331.75 0C387.355 0 416 19.72 416 58V402C416 440.28 387.355 460 331.75 460C276.145 460 247.5 440.28 247.5 402Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 416 460'%3E%3Cpath fill='%23000' d='M82.5 161V366A5 5 0 0 1 77.5 371C26.35 371 0 354 0 321V206C0 173 26.35 156 77.5 156A5 5 0 0 1 82.5 161Z'/%3E%3Cpath fill='%23000' d='M215.5 75V402.5A5 5 0 0 1 210.5 407.5C147.14 407.5 114.5 388.12 114.5 350.5V127C114.5 89.38 147.14 70 210.5 70A5 5 0 0 1 215.5 75Z'/%3E%3Cpath fill='%23000' d='M247.5 58C247.5 19.72 276.145 0 331.75 0C387.355 0 416 19.72 416 58V402C416 440.28 387.355 460 331.75 460C276.145 460 247.5 440.28 247.5 402Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
:root[data-theme=dark] .eyebrow::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 416 460'%3E%3Cpath fill='%23e366a2' d='M82.5 161V366A5 5 0 0 1 77.5 371C26.35 371 0 354 0 321V206C0 173 26.35 156 77.5 156A5 5 0 0 1 82.5 161Z'/%3E%3Cpath fill='%235e9ae9' d='M215.5 75V402.5A5 5 0 0 1 210.5 407.5C147.14 407.5 114.5 388.12 114.5 350.5V127C114.5 89.38 147.14 70 210.5 70A5 5 0 0 1 215.5 75Z'/%3E%3Cpath fill='%23f5f1e8' d='M247.5 58C247.5 19.72 276.145 0 331.75 0C387.355 0 416 19.72 416 58V402C416 440.28 387.355 460 331.75 460C276.145 460 247.5 440.28 247.5 402Z'/%3E%3C/svg%3E");
}
@media (prefers-color-scheme: dark) {
  :root[data-theme=auto] .eyebrow::before,
  :root:not([data-theme]) .eyebrow::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 416 460'%3E%3Cpath fill='%23e366a2' d='M82.5 161V366A5 5 0 0 1 77.5 371C26.35 371 0 354 0 321V206C0 173 26.35 156 77.5 156A5 5 0 0 1 82.5 161Z'/%3E%3Cpath fill='%235e9ae9' d='M215.5 75V402.5A5 5 0 0 1 210.5 407.5C147.14 407.5 114.5 388.12 114.5 350.5V127C114.5 89.38 147.14 70 210.5 70A5 5 0 0 1 215.5 75Z'/%3E%3Cpath fill='%23f5f1e8' d='M247.5 58C247.5 19.72 276.145 0 331.75 0C387.355 0 416 19.72 416 58V402C416 440.28 387.355 460 331.75 460C276.145 460 247.5 440.28 247.5 402Z'/%3E%3C/svg%3E");
  }
}
h1,
h2 {
  margin: 0;
  letter-spacing: calc(-0.032em + var(--track-bold));
  line-height: 1.03;
  text-wrap: balance;
}
h1 {
  max-width: 740px;
  font-size: clamp(4rem, 9vw, 8.2rem);
  font-weight: 790;
}
h2 {
  max-width: 780px;
  font-size: clamp(2.3rem, 5vw, 4.8rem);
  font-weight: 770;
}
.hero__lede {
  max-width: 680px;
  margin: 26px 0 0;
  color: var(--ink-soft);
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  font-weight: 480;
  line-height: 1.5;
  letter-spacing: calc(-0.01em + var(--track));
  text-wrap: pretty;
}
.hero-apps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  width: 100%;
  margin-top: 38px;
}
.hero-lead {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  align-items: center;
  gap: 8px 16px;
  padding: 20px 24px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 20px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  --t: var(--ink);
}
.hero-lead p {
  margin: 0;
}
.hero-lead .hero-lead__title {
  font-size: 1.18rem;
  font-weight: 760;
  letter-spacing: calc(-0.015em + var(--track-bold));
  text-wrap: balance;
}
.hero-lead .hero-lead__body {
  color: var(--muted);
  font-size: 0.94rem;
  text-wrap: pretty;
}
@media (max-width: 900px) {
  .hero-lead {
    grid-template-columns: 1fr;
  }
}
.hero-app {
  --app-accent: var(--ink);
  position: relative;
  min-height: 172px;
  display: grid;
  align-content: start;
  gap: 10px;
  padding: 24px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 20px;
  background: linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  --t: var(--app-accent);
  text-decoration: none;
  overflow: hidden;
  transition: --wa 260ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 260ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 260ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 260ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 260ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 260ms cubic-bezier(0.3, 1.25, 0.5, 1), opacity 160ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.hero-app:active {
  transform: scale(0.97);
  opacity: 0.86;
  transition: transform 90ms ease-out, opacity 90ms ease-out;
}
.hero-app:hover {
  --wa: 22%;
  --wb: 30%;
  --et: var(--t);
  --e: 45%;
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --e: 32%;
  box-shadow: inset 0 1px 0 var(--highlight), var(--raised-shadow);
  transform: translateY(-2px);
}
.hero-app:hover img {
  transform: scale(1.04);
}
.hero-app:active {
  transform: scale(0.97);
}
.hero-app img {
  width: 64px;
  height: 64px;
  filter: drop-shadow(0 10px 24px rgba(var(--shadow-rgb), 0.18)) drop-shadow(0 2px 6px rgba(var(--shadow-rgb), 0.1));
  transition: transform 300ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.hero-app span {
  display: block;
  margin-top: 10px;
  font-size: 1.18rem;
  font-weight: 760;
  letter-spacing: calc(-0.015em + var(--track-bold));
}
.hero-app small {
  color: var(--muted);
  font-size: 0.94rem;
}
.hero-app--orbit {
  --app-accent: var(--orbit);
}
.hero-app--echo {
  --app-accent: var(--echo);
}
.hero-app--watchlist {
  --app-accent: var(--watchlist); --app-accent-text: var(--watchlist-text);
}
.hero-app--beacon {
  --app-accent: var(--beacon);
}
.hero-app--circle {
  --app-accent: var(--circle); --app-accent-text: var(--circle-text);
}
.hero-app--aurora {
  --app-accent: var(--aurora);
}
.hero__actions,
.request__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 34px;
}
.scroll-cue {
  position: absolute;
  left: 50%;
  bottom: 26px;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid var(--glass-border);
  border-radius: 999px;
  background: var(--glass-bg);
  box-shadow: inset 0 1px 0 var(--highlight-soft), var(--raised-shadow);
  backdrop-filter: blur(16px) saturate(1.4);
  -webkit-backdrop-filter: blur(16px) saturate(1.4);
  text-decoration: none;
  transform: translateX(-50%);
  transition: border-color 200ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 200ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.scroll-cue span {
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--muted);
  border-bottom: 2px solid var(--muted);
  transform: translateY(-2px) rotate(45deg);
}
.scroll-cue:hover {
  border-color: color-mix(in srgb, var(--ink) 22%, transparent);
  box-shadow: inset 0 1px 0 var(--highlight-soft), var(--floating-shadow);
}
.scroll-cue[data-off] {
  visibility: hidden;
}
.button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 12px;
  background: linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  color: var(--ink);
  font-size: 0.98rem;
  font-weight: 680;
  letter-spacing: calc(-0.005em + var(--track-bold));
  text-decoration: none;
  transition: --wa 200ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 200ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 200ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 200ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 200ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.3, 1.25, 0.5, 1), opacity 160ms cubic-bezier(0.2, 0.65, 0.2, 1), filter 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.button:active {
  transform: scale(0.97);
  opacity: 0.86;
  transition: transform 90ms ease-out, opacity 90ms ease-out;
}
.button:hover {
  --wa: 22%;
  --wb: 30%;
  --et: var(--t);
  --e: 45%;
  --e: 38%;
}
.button--dark {
  --t: var(--btn-dark-b);
  border: 1px solid color-mix(in srgb, var(--t) 60%, transparent);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(0, 0, 0, 0.12)), linear-gradient(180deg, color-mix(in srgb, var(--t) 92%, white), var(--t));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18), 0 2px 3px color-mix(in srgb, var(--t) 18%, transparent);
  border-color: var(--btn-dark-border);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(0, 0, 0, 0.12)), linear-gradient(180deg, var(--btn-dark-a), var(--btn-dark-b));
  color: var(--btn-dark-text);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18), 0 2px 3px rgba(var(--shadow-rgb), 0.18);
}
.button--dark:hover {
  border-color: var(--ink);
  filter: brightness(1.08);
}
.button--quiet {
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
}
.button--quiet:hover {
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--ink);
  --e: 22%;
}
.intro,
.request,
.site-footer {
  width: min(100% - 40px, 1120px);
  margin: 0 auto;
}
.intro,
.apps,
.app,
.request {
  scroll-margin-top: 112px;
}
.intro {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.8fr);
  --intro-title: clamp(2.3rem, 5vw, 4.8rem);
  grid-template-areas:
    "eyebrow ."
    "title copy";
  align-items: start;
  -moz-column-gap: clamp(36px, 7vw, 96px);
  column-gap: clamp(36px, 7vw, 96px);
  row-gap: 0;
  padding: 104px 0 92px;
}
.intro > .section-heading {
  display: contents;
}
.intro .eyebrow {
  grid-area: eyebrow;
}
.intro h2 {
  grid-area: title;
  font-size: var(--intro-title);
}
.intro__copy {
  grid-area: copy;
  margin-top: calc(var(--intro-title) * 0.19 - 0.49em);
  color: var(--ink-soft);
  font-size: 1.1rem;
  line-height: 1.65;
  text-wrap: pretty;
}
.intro__copy p {
  margin: 0;
}
.intro__copy p + p {
  margin-top: 18px;
}
.apps {
  width: min(100% - 40px, 1120px);
  margin: 0 auto;
  display: grid;
  gap: 24px;
}
.app-teasers {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
}
.app-teaser {
  --app-accent: var(--ink);
  container-type: inline-size;
  position: relative;
  display: grid;
  align-content: start;
  padding: 32px 30px 30px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 20px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --t: var(--app-accent);
  box-shadow: inset 0 1px 0 var(--highlight), var(--raised-shadow);
  overflow: hidden;
}
.app-teaser h2 {
  font-size: clamp(2.5rem, 4vw, 3.6rem);
  line-height: 0.98;
}
.app-teaser p:not(.eyebrow) {
  margin: 16px 0 0;
  color: var(--ink-soft);
  font-size: 1.02rem;
  text-wrap: pretty;
}
.app-teaser .feature-list {
  margin-bottom: 28px;
}
@supports (font-size: 1cqw) {
  .app-teaser h2 {
    font-size: clamp(2.5rem, 16cqw, 3.6rem);
  }
}
.app-teaser .eyebrow::before,
.app-themed .eyebrow::before {
  display: none;
}
.app-teaser--orbit {
  --app-accent: var(--orbit);
}
.app-teaser--echo {
  --app-accent: var(--echo);
}
.app-teaser--watchlist {
  --app-accent: var(--watchlist); --app-accent-text: var(--watchlist-text);
}
.app-teaser--beacon {
  --app-accent: var(--beacon);
}
.app-teaser--circle {
  --app-accent: var(--circle); --app-accent-text: var(--circle-text);
}
.app-teaser--aurora {
  --app-accent: var(--aurora);
}
.app-teasers--bands {
  grid-template-columns: 1fr;
  gap: 28px;
}
.app-teasers--bands > .section-head {
  margin-bottom: 12px;
}
.app-teaser--band {
  grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
  grid-template-areas: "copy media";
  align-items: center;
  gap: clamp(28px, 4vw, 56px);
  padding: clamp(32px, 4vw, 52px);
}
.app-teaser--band:where(:nth-child(even of .app-teaser--band)) {
  grid-template-columns: minmax(0, 1.22fr) minmax(0, 0.78fr);
  grid-template-areas: "media copy";
}
.app-teaser--band .app-teaser__copy {
  grid-area: copy;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-content: center;
}
.app-teaser__name {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 22px;
  color: var(--app-accent-text, var(--app-accent));
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: calc(-0.01em + var(--track-bold));
  text-decoration: none;
}
.app-teaser__name .app-teaser__icon {
  width: 56px;
  height: 56px;
}
.app-teasers--bands .app-teaser--band h2 {
  font-size: clamp(1.9rem, 3.4vw, 3rem);
  line-height: 1.04;
  letter-spacing: calc(-0.025em + var(--track-bold));
  text-wrap: balance;
}
@supports (font-size: 1cqw) {
  .app-teasers--bands .app-teaser--band h2 {
    font-size: clamp(1.9rem, 4.4cqw, 3rem);
  }
}
.app-teaser--band .feature-list {
  margin: 22px 0 26px;
}
.app-teaser--band .app-teaser__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.app-teaser--band .app-teaser__actions .button {
  white-space: nowrap;
}
.app-teaser__media {
  grid-area: media;
  position: relative;
  display: block;
  height: 0;
  padding-bottom: calc(100% / var(--media-ratio, 1.45));
}
.app-teaser__main {
  position: absolute;
  inset: 0 9% 4% 0;
}
.app-teaser__side {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 21%;
}
.app-teaser__main .app-teaser__shot,
.app-teaser__side .app-teaser__shot {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.app-teaser__main .app-teaser__shot {
  -o-object-position: left top;
  object-position: left top;
}
.app-teaser--band:where(:nth-child(even of .app-teaser--band)) .app-teaser__main {
  inset: 0 0 4% 9%;
}
.app-teaser--band:where(:nth-child(even of .app-teaser--band)) .app-teaser__main .app-teaser__shot {
  -o-object-position: right top;
  object-position: right top;
}
.app-teaser--band:where(:nth-child(even of .app-teaser--band)) .app-teaser__side {
  right: auto;
  left: 0;
}
.app-teaser--band .app-teaser__media--solo .app-teaser__main {
  inset: 0;
}
.app-teaser--band .app-teaser__media--solo .app-teaser__main .app-teaser__shot {
  -o-object-position: center;
  object-position: center;
}
.app-teaser__media--trio {
  --media-ratio: 1.3;
}
.app-teaser__back {
  position: absolute;
  top: 0;
  right: 0;
  width: 76%;
}
.app-teaser__back .app-teaser__shot {
  width: 100%;
  height: auto;
}
.app-teaser--band .app-teaser__media--trio .app-teaser__main {
  inset: auto auto 3% 0;
  width: 66%;
  height: auto;
}
.app-teaser__media--trio .app-teaser__main .app-teaser__shot {
  height: auto;
}
.app-teaser__media--trio .app-teaser__side {
  width: 19%;
}
@media (max-width: 900px) {
  .app-teaser--band,
  .app-teaser--band:where(:nth-child(even of .app-teaser--band)) {
    grid-template-columns: 1fr;
    grid-template-areas: "copy" "media";
  }
  .app-teaser--band .app-teaser__actions {
    display: grid;
    grid-template-columns: 1fr;
  }
}
.app-teaser__icon {
  width: 82px;
  height: 82px;
  border-radius: 22.4%;
  box-shadow: 0 14px 30px rgba(var(--shadow-rgb), 0.2), 0 3px 8px rgba(var(--shadow-rgb), 0.1);
}
.app-teaser__icon-link {
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 26px;
  border-radius: 20px;
  transition: transform 220ms cubic-bezier(0.3, 1.25, 0.5, 1);
}
.app-teaser__icon-link:hover {
  transform: translateY(-2px) scale(1.03);
}
.app-teaser__icon-link:active {
  transform: scale(0.97);
  transition-duration: 90ms;
}
.app-teaser__actions {
  display: grid;
  gap: 10px;
  margin-top: auto;
}
.feature-list {
  display: grid;
  gap: 12px;
  margin: 28px 0 30px;
  padding: 0;
  list-style: none;
  color: var(--feature-ink);
  text-wrap: pretty;
}
.feature-list li {
  position: relative;
  padding-left: 24px;
}
.feature-list li::before {
  content: "";
  position: absolute;
  top: 0.7em;
  left: 0;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ink) 6%, transparent);
  transform: translateY(-50%);
}
.app-teaser .feature-list li::before,
.app-page .feature-list li::before {
  background: var(--app-accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--app-accent) 15%, transparent);
}
.request {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 42px;
  align-items: center;
  padding: 76px clamp(24px, 5vw, 60px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 26px;
  overflow: hidden;
  color: #f5f1e8;
  background: linear-gradient(180deg, color-mix(in srgb, var(--app-accent, #356fbb) 30%, transparent), transparent 70%), linear-gradient(180deg, #213a66, #132542 58%, #0b1730);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16), var(--floating-shadow);
}
.request .eyebrow {
  color: rgba(245, 241, 232, 0.62);
}
.request .eyebrow::before {
  display: block;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 416 460'%3E%3Cpath fill='%23e366a2' d='M82.5 161V366A5 5 0 0 1 77.5 371C26.35 371 0 354 0 321V206C0 173 26.35 156 77.5 156A5 5 0 0 1 82.5 161Z'/%3E%3Cpath fill='%235e9ae9' d='M215.5 75V402.5A5 5 0 0 1 210.5 407.5C147.14 407.5 114.5 388.12 114.5 350.5V127C114.5 89.38 147.14 70 210.5 70A5 5 0 0 1 215.5 75Z'/%3E%3Cpath fill='%23f5f1e8' d='M247.5 58C247.5 19.72 276.145 0 331.75 0C387.355 0 416 19.72 416 58V402C416 440.28 387.355 460 331.75 460C276.145 460 247.5 440.28 247.5 402Z'/%3E%3C/svg%3E");
}
.request h2 {
  color: #fff;
}
.request .button {
  --t: #f5f1e8;
  --surface: #1a2a4b;
  --highlight: rgba(255, 255, 255, 0.14);
  color: #fff;
}
.request .button:hover {
  --e: 40%;
}
.request .button--dark {
  --t: #fffdf8;
  border-color: rgba(255, 255, 255, 0.9);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(0, 0, 0, 0.06)), linear-gradient(180deg, #ffffff, #f1ece1);
  color: #132542;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 2px 3px rgba(0, 0, 0, 0.3);
}
.request .button--dark:hover {
  border-color: #fff;
  filter: brightness(1.02);
}
.request__content {
  position: relative;
}
.request__actions {
  position: relative;
  margin-top: 0;
}
.request__content p:not(.eyebrow) {
  max-width: 610px;
  margin: 20px 0 0;
  color: rgba(245, 241, 232, 0.74);
  font-size: 1.08rem;
  line-height: 1.6;
  text-wrap: pretty;
}
.app-page {
  padding-top: 118px;
}
.subhero,
.detail {
  width: min(100% - 40px, 1120px);
  margin: 0 auto;
}
.subhero {
  min-height: 58svh;
  display: grid;
  align-content: center;
  padding: 52px 0 82px;
}
.subhero h1 {
  font-size: clamp(4.4rem, 12vw, 9.4rem);
}
.subhero__icon {
  width: 116px;
  height: 116px;
  margin: 22px 0 32px;
}
.back-link {
  width: -moz-max-content;
  width: max-content;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 16px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 12px;
  background: linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  color: var(--muted);
  font-size: 0.92rem;
  font-weight: 660;
  text-decoration: none;
  transition: --wa 180ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 180ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 180ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 180ms cubic-bezier(0.2, 0.65, 0.2, 1), color 180ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.3, 1.25, 0.5, 1), opacity 160ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.back-link:active {
  transform: scale(0.97);
  opacity: 0.86;
  transition: transform 90ms ease-out, opacity 90ms ease-out;
}
.back-link::before {
  content: "";
  width: 8px;
  height: 8px;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
}
.back-link:hover {
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 32%;
  color: var(--ink);
}
.detail {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(320px, 0.72fr);
  gap: clamp(32px, 6vw, 72px);
  align-items: start;
  padding: 70px clamp(24px, 5vw, 56px);
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 26px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  box-shadow: inset 0 1px 0 var(--highlight-soft), var(--raised-shadow);
  --t: var(--app-accent, var(--ink));
}
.detail-panel {
  padding-top: 4px;
}
.app-page--orbit {
  --app-accent: var(--orbit);
}
.app-page--echo {
  --app-accent: var(--echo);
}
.app-page--watchlist {
  --app-accent: var(--watchlist); --app-accent-text: var(--watchlist-text);
}
.app-page--beacon {
  --app-accent: var(--beacon);
}
.app-page--circle {
  --app-accent: var(--circle); --app-accent-text: var(--circle-text);
}
.app-page--aurora {
  --app-accent: var(--aurora);
}
.features,
.craft {
  width: min(100% - 40px, 1120px);
  margin: 0 auto;
  scroll-margin-top: 112px;
}
.features {
  padding: 88px 0 8px;
}
.power-users {
  padding-top: 0;
}
.power-users__card--mcp {
  --app-accent: var(--orbit);
}
.power-users__card--device {
  --app-accent: var(--echo);
}
.power-users__card--control {
  --app-accent: var(--beacon);
}
.craft {
  padding: 72px 0 8px;
}
.section-head {
  max-width: 780px;
  margin-bottom: 40px;
}
.section-head h2 {
  font-size: clamp(2rem, 4vw, 3.1rem);
}
.section-head p:not(.eyebrow) {
  margin: 18px 0 0;
  max-width: 640px;
  color: var(--ink-soft);
  font-size: 1.08rem;
  line-height: 1.6;
  text-wrap: pretty;
}
.feature-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.feature-card {
  position: relative;
  display: grid;
  align-content: start;
  gap: 9px;
  padding: 30px 26px 28px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 20px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  --t: var(--app-accent, var(--ink));
  overflow: hidden;
}
.feature-card h3 {
  margin: 4px 0 0;
  font-size: 1.16rem;
  font-weight: 730;
  letter-spacing: calc(-0.02em + var(--track-bold));
  line-height: 1.22;
}
.feature-card p {
  margin: 0;
  color: var(--ink-soft);
  font-size: 0.98rem;
  line-height: 1.5;
  text-wrap: pretty;
}
.card-art {
  display: block;
  width: calc(100% + 20px);
  height: auto;
  margin: -10px -10px 10px;
  overflow: visible;
  --ca-glass: var(--surface);
  --art-ink: #132542;
  --art-ink-soft: oklch(0.88 0.05 262);
  --art-ink-glow: oklch(0.76 0.13 258);
  --art-blue: #356fbb;
  --art-blue-soft: oklch(0.85 0.1 256);
  --art-berry: #b33978;
  --art-berry-soft: oklch(0.88 0.08 352);
  --art-berry-glow: oklch(0.72 0.18 352);
  --art-on: #fff;
  --art-tint: color-mix(in oklch, var(--ink) 55%, var(--art-blue));
  --art-orbit: var(--art-ink);
  --art-echo: var(--art-ink);
  --art-aurora: var(--art-blue);
  --art-beacon: var(--art-blue);
  --art-circle: var(--art-berry);
  --art-watchlist: var(--art-berry);
  --art-orbit-soft: var(--art-ink-soft);
  --art-echo-soft: var(--art-ink-soft);
  --art-aurora-soft: var(--art-blue-soft);
  --art-beacon-soft: var(--art-blue-soft);
  --art-circle-soft: var(--art-berry-soft);
  --art-watchlist-soft: var(--art-berry-soft);
}
.card-art .ca-flood { flood-color: rgb(var(--shadow-rgb)); flood-opacity: 0.09; }
.card-art .ca-glow { opacity: 0.5; }
.card-art .ca-s { stroke: color-mix(in srgb, var(--ink) 9%, transparent); stroke-width: 0.8; }
.card-art .ca-s--on { stroke-width: 1.5; }
.card-art .ca-s--metal { fill: color-mix(in srgb, var(--surface) 90%, var(--ink)); }
.card-art .st-glass-top { stop-color: color-mix(in srgb, var(--ca-glass) 78%, white); stop-opacity: 0.94; }
.card-art .st-glass-foot { stop-color: var(--ca-glass); stop-opacity: 0.74; }
.card-art .ca-f { fill: color-mix(in srgb, var(--art-tint) 7%, transparent); }
.card-art .ca-r { fill: color-mix(in srgb, var(--art-tint) 16%, transparent); }
.card-art .ca-r--strong { fill: color-mix(in srgb, var(--art-tint) 40%, transparent); }
.card-art .ca-r--on { fill: var(--art-on); opacity: 0.92; }
.card-art .ca-on { fill: var(--art-on); }
.card-art .ca-light { fill: color-mix(in srgb, var(--art-tint) 22%, transparent); }
.card-art .ca-dot { fill: color-mix(in srgb, var(--art-tint) 18%, transparent); }
.card-art .ca-island { fill: color-mix(in srgb, var(--ink) 70%, transparent); }
.card-art .ca-soft { opacity: 0.16; }
.card-art .ca-wash { opacity: 0.07; }
.card-art--tile { width: 100%; margin: 0; }
.glyph-art { display: block; width: 64px; height: 64px; }
.footer-news__art { width: 64px; height: 64px; margin: 0 auto 18px; }
main p.pricing-faq__more { margin-top: 44px; color: var(--muted); font-size: 0.9rem; }
.pricing-faq__art { display: inline-block; width: 40px; height: 40px; margin-right: 14px; vertical-align: middle; }
.card-art .ca-flap { fill: none; stroke: var(--art-on); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.card-art .ca-handle { fill: none; stroke-width: 2.4; stroke-linecap: round; }
.card-art .ca-bughead { fill: color-mix(in srgb, var(--ink) 55%, transparent); }
.card-art .ca-seam { fill: none; stroke: var(--art-on); stroke-width: 1.3; }
.card-art .ca-spot { fill: color-mix(in srgb, var(--ink) 40%, transparent); }
.card-art .ca-hands { fill: none; stroke: var(--art-on); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.card-art .ca-pick { opacity: 0.9; }
.card-art .ca-spark { opacity: 0.95; }
.card-art .ca-knob { fill: var(--art-on); filter: drop-shadow(0 1px 1.5px rgba(var(--shadow-rgb), 0.24)); }
.card-art .ca-wave { fill: none; stroke: rgba(255, 255, 255, 0.4); stroke-width: 7; stroke-linecap: round; }
.card-art .ca-wave--soft { stroke: rgba(255, 255, 255, 0.22); stroke-width: 10; }
.card-art .ca-dash { fill: none; stroke: color-mix(in srgb, var(--ink) 22%, transparent); stroke-width: 1.3; stroke-dasharray: 1.4 4.6; stroke-linecap: round; }
.card-art .ca-ring { fill: none; stroke-width: 1.5; }
.card-art .ca-track { fill: none; stroke: color-mix(in srgb, var(--art-tint) 12%, transparent); stroke-width: 4; }
.card-art .ca-arc { fill: none; stroke-width: 4; stroke-linecap: round; stroke-dasharray: 46 100; }
.card-art .ca-arc--wide { stroke-width: 5.5; stroke-dasharray: 84 200; }
.card-art .ca-loop { fill: none; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.card-art .ca-loop--wide { stroke-width: 2.4; opacity: 0.8; }
.card-art .ca-tick { fill: none; stroke: var(--art-on); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.card-art .ca-tick--fine { stroke-width: 1.3; }
.card-art .ca-glyph { fill: color-mix(in srgb, var(--ink) 62%, transparent); font: 500 25px -apple-system, BlinkMacSystemFont, "SF Pro Display", system-ui, sans-serif; }
.card-art .k-ink { stroke: color-mix(in srgb, var(--ink) 24%, transparent); }
.card-art .st-white { stop-color: #fff; }
.card-art .c-orbit { fill: var(--art-orbit); }
.card-art .ca-glow .c-orbit,
.card-art .ca-glow .c-echo { fill: var(--art-ink-glow); }
.card-art .ca-glow .c-circle,
.card-art .ca-glow .c-watchlist { fill: var(--art-berry-glow); }
.card-art .k-orbit { stroke: var(--art-orbit); }
.card-art .st-orbit { stop-color: var(--art-orbit); }
.card-art .st-orbit-soft { stop-color: var(--art-orbit-soft); }
.card-art .c-beacon { fill: var(--art-beacon); }
.card-art .k-beacon { stroke: var(--art-beacon); }
.card-art .st-beacon { stop-color: var(--art-beacon); }
.card-art .st-beacon-soft { stop-color: var(--art-beacon-soft); }
.card-art .c-echo { fill: var(--art-echo); }
.card-art .k-echo { stroke: var(--art-echo); }
.card-art .st-echo { stop-color: var(--art-echo); }
.card-art .st-echo-soft { stop-color: var(--art-echo-soft); }
.card-art .c-aurora { fill: var(--art-aurora); }
.card-art .k-aurora { stroke: var(--art-aurora); }
.card-art .st-aurora { stop-color: var(--art-aurora); }
.card-art .st-aurora-soft { stop-color: var(--art-aurora-soft); }
.card-art .c-circle { fill: var(--art-circle); }
.card-art .k-circle { stroke: var(--art-circle); }
.card-art .st-circle { stop-color: var(--art-circle); }
.card-art .st-circle-soft { stop-color: var(--art-circle-soft); }
.card-art .c-watchlist { fill: var(--art-watchlist); }
.card-art .k-watchlist { stroke: var(--art-watchlist); }
.card-art .st-watchlist { stop-color: var(--art-watchlist); }
.card-art .st-watchlist-soft { stop-color: var(--art-watchlist-soft); }
.card-art .t-orbit { fill: var(--art-orbit-soft); }
.card-art .t-echo { fill: var(--art-echo-soft); }
.card-art .t-aurora { fill: var(--art-aurora-soft); }
.card-art .t-beacon { fill: var(--art-beacon-soft); }
.card-art .t-circle { fill: var(--art-circle-soft); }
.card-art .t-watchlist { fill: var(--art-watchlist-soft); }
:root[data-theme=dark] .card-art {
  --art-ink: #f5f1e8;
  --art-ink-soft: oklch(0.52 0.1 260);
  --art-ink-glow: oklch(0.62 0.16 258);
  --art-blue: #5e9ae9;
  --art-blue-soft: oklch(0.63 0.13 256);
  --art-berry: #e366a2;
  --art-berry-soft: oklch(0.63 0.13 352);
  --art-berry-glow: oklch(0.64 0.19 352);
  --art-on: #132542;
  --art-tint: color-mix(in oklch, var(--ink) 35%, var(--art-blue));
}
:root[data-theme=dark] .card-art .ca-glow { opacity: 0.7; }
:root[data-theme=dark] .card-art .ca-flood { flood-opacity: 0.32; }
:root[data-theme=dark] .card-art .ca-s { stroke: rgba(255, 255, 255, 0.08); }
:root[data-theme=dark] .card-art .st-glass-top { stop-color: color-mix(in srgb, var(--ca-glass) 90%, white); stop-opacity: 0.86; }
:root[data-theme=dark] .card-art .st-glass-foot { stop-opacity: 0.66; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .card-art {
    --art-ink: #f5f1e8;
    --art-ink-soft: oklch(0.52 0.1 260);
    --art-ink-glow: oklch(0.62 0.16 258);
    --art-blue: #5e9ae9;
    --art-blue-soft: oklch(0.63 0.13 256);
    --art-berry: #e366a2;
    --art-berry-soft: oklch(0.63 0.13 352);
    --art-berry-glow: oklch(0.64 0.19 352);
    --art-on: #132542;
    --art-tint: color-mix(in oklch, var(--ink) 35%, var(--art-blue));
  }
  :root:not([data-theme=light]) .card-art .ca-glow { opacity: 0.7; }
  :root:not([data-theme=light]) .card-art .ca-flood { flood-opacity: 0.32; }
  :root:not([data-theme=light]) .card-art .ca-s { stroke: rgba(255, 255, 255, 0.08); }
  :root:not([data-theme=light]) .card-art .st-glass-top { stop-color: color-mix(in srgb, var(--ca-glass) 90%, white); stop-opacity: 0.86; }
  :root:not([data-theme=light]) .card-art .st-glass-foot { stop-opacity: 0.66; }
}
.chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.chip-list li {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 9px 16px 9px 14px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 999px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  --t: var(--app-accent, var(--ink));
  color: var(--ink-soft);
  font-size: 0.92rem;
  font-weight: 560;
  line-height: 1.3;
}
.chip-list li::before {
  content: "";
  flex: none;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--app-accent, var(--ink));
}
.site-footer {
  margin-top: clamp(48px, 6vw, 80px);
  padding: 0 0 32px;
  color: var(--muted);
}
.site-footer__panel {
  position: relative;
  overflow: hidden;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 26px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  box-shadow: inset 0 1px 0 var(--highlight-soft), var(--raised-shadow);
  --t: var(--ink);
}
:root[data-theme=dark] { --logo-navy: #f5f1e8; --logo-blue: #5e9ae9; --logo-berry: #e366a2; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) { --logo-navy: #f5f1e8; --logo-blue: #5e9ae9; --logo-berry: #e366a2; }
}
.site-footer__panel {
  border-top-color: transparent;
  background-clip: padding-box;
}
.site-footer__panel::before {
  content: "";
  position: absolute;
  inset: 0;
  border-top: 3px solid transparent;
  border-radius: 25px;
  corner-shape: inherit;
  pointer-events: none;
  background: linear-gradient(90deg, var(--logo-navy) 0%, var(--logo-navy) 38%, var(--logo-blue) 68%, var(--logo-blue) 80%, var(--logo-berry) 100%) border-box;
  opacity: 0.75;
  -webkit-mask: linear-gradient(#000 0 0) padding-box, linear-gradient(#000 0 0) border-box;
  -webkit-mask-composite: xor;
  -webkit-mask: linear-gradient(#000 0 0) padding-box, linear-gradient(#000 0 0) border-box;
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) padding-box exclude, linear-gradient(#000 0 0) border-box;
}
.site-footer__main {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.58fr) minmax(0, 0.66fr) minmax(0, 1.08fr);
  gap: clamp(30px, 4vw, 58px);
  padding: clamp(34px, 4.8vw, 58px);
}
.site-footer__brand p {
  max-width: 250px;
  margin: 18px 0 0;
  color: var(--ink-soft);
  font-size: 1rem;
  line-height: 1.55;
  text-wrap: balance;
}
.site-footer__social {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  width: min(100%, 15rem);
  margin-top: 18px;
}
.site-footer__social a {
  flex: 0 0 auto;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 999px;
  background: linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  --t: var(--ink);
  color: var(--ink-soft);
  font-size: 0.86rem;
  font-weight: 680;
  text-decoration: none;
  transition: --wa 180ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 180ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 180ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 180ms cubic-bezier(0.2, 0.65, 0.2, 1), color 180ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.3, 1.25, 0.5, 1), opacity 160ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.site-footer__social a:active {
  transform: scale(0.97);
  opacity: 0.86;
  transition: transform 90ms ease-out, opacity 90ms ease-out;
}
.site-footer__social a:hover {
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --e: 24%;
  color: var(--ink);
}
.site-footer__social-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  fill: currentColor;
}
.site-footer__social-icon--x path {
  stroke: currentColor;
  stroke-width: 40;
  paint-order: stroke fill;
}
.site-footer__eyebrow {
  margin: 1px 0 14px;
  color: color-mix(in srgb, var(--ink-soft) 78%, transparent);
  font-size: 0.72rem;
  font-weight: 760;
  letter-spacing: calc(0.11em + var(--track-bold));
  line-height: 1.2;
  text-transform: uppercase;
}
.site-footer__links {
  display: grid;
  align-content: start;
  gap: 3px;
}
.site-footer__links a {
  width: -moz-max-content;
  width: max-content;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  margin-left: -12px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: var(--ink-soft);
  font-size: 0.95rem;
  font-weight: 650;
  text-decoration: none;
  transition: background 180ms cubic-bezier(0.2, 0.65, 0.2, 1), color 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.site-footer__links a:not([aria-current]):hover {
  background: var(--hover-wash);
  color: var(--ink);
}
.site-footer__links a[aria-current] {
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 999px;
  background: linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --e: 30%;
  color: var(--ink);
}
.site-footer__contact {
  align-self: start;
  padding: 22px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 20px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  --t: var(--ink);
}
.site-footer__contact > p:not(.site-footer__eyebrow) {
  margin: 0 0 18px;
  color: var(--ink-soft);
  font-size: 0.92rem;
  line-height: 1.5;
}
.site-footer__contact-link {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 14px 0 16px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 999px;
  background: linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --t: var(--ink);
  color: var(--ink);
  font-size: 0.9rem;
  font-weight: 720;
  text-decoration: none;
  transition: --wa 180ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 180ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 180ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 180ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.3, 1.25, 0.5, 1), opacity 160ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.site-footer__contact-link:active {
  transform: scale(0.97);
  opacity: 0.86;
  transition: transform 90ms ease-out, opacity 90ms ease-out;
}
.site-footer__contact-link span:last-child {
  font-size: 1.1rem;
  transition: transform 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.site-footer__contact-link:hover {
  --wa: 22%;
  --wb: 30%;
  --et: var(--t);
  --e: 45%;
  --e: 34%;
}
.site-footer__contact-link:hover span:last-child {
  transform: translateX(3px);
}
.footer-news {
  position: relative;
  overflow: hidden;
  margin: 0 0 20px;
  padding: clamp(48px, 6vw, 76px) 24px;
  border: 1px solid color-mix(in srgb, var(--ink) var(--edge-quiet), transparent);
  border-radius: 26px;
  text-align: center;
  background:
    radial-gradient(60% 90% at 14% 114%, color-mix(in srgb, var(--logo-blue) 20%, transparent), transparent 70%),
    radial-gradient(55% 85% at 52% 126%, color-mix(in srgb, var(--logo-navy) 12%, transparent), transparent 70%),
    radial-gradient(38% 60% at 90% 116%, color-mix(in srgb, var(--logo-berry) 12%, transparent), transparent 70%),
    radial-gradient(40% 60% at 76% -14%, color-mix(in srgb, var(--logo-blue) 10%, transparent), transparent 70%),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft), var(--raised-shadow);
}
.footer-news__inner {
  max-width: 520px;
  margin: 0 auto;
}
.footer-news__eyebrow {
  margin: 0 0 14px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 760;
  letter-spacing: calc(0.16em + var(--track-bold));
  text-transform: uppercase;
}
.footer-news__title {
  margin: 0;
  color: var(--ink);
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  font-weight: 720;
  letter-spacing: calc(-0.025em + var(--track-bold));
  line-height: 1.1;
  text-wrap: balance;
}
.footer-news__text {
  max-width: 440px;
  margin: 12px auto 0;
  color: var(--ink-soft);
  font-size: 0.95rem;
  line-height: 1.5;
  text-wrap: pretty;
}
.news-signup.footer-news__form {
  max-width: 420px;
  margin: 26px auto 0;
  text-align: left;
}
.footer-news__form .news-signup__label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.news-signup.footer-news__form .news-signup__row {
  flex-direction: row;
  align-items: center;
  gap: 6px;
  padding: 4px;
  border: 1px solid color-mix(in srgb, var(--ink) 14%, transparent);
  border-radius: 999px;
  background: var(--surface);
  box-shadow: inset 0 1px 2px rgba(var(--shadow-rgb), 0.05);
  transition: border-color 180ms ease;
}
.news-signup.footer-news__form .news-signup__row:focus-within {
  border-color: color-mix(in srgb, var(--ink) 30%, transparent);
}
.news-signup.footer-news__form .news-signup__input {
  min-width: 0;
  min-height: 38px;
  padding: 0 4px 0 14px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  font-size: 0.95rem;
}
.news-signup.footer-news__form .button {
  flex: none;
  min-height: 38px;
  padding: 0 18px;
  border-radius: 999px;
  font-size: 0.9rem;
  font-weight: 720;
}
.site-footer__legal {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.9fr);
  align-items: start;
  gap: 28px 52px;
  padding: 24px clamp(34px, 4.8vw, 58px) 28px;
  border-top: 1px solid color-mix(in srgb, var(--ink) 9%, transparent);
  color: color-mix(in srgb, var(--ink-soft) 78%, transparent);
  font-size: 0.82rem;
  line-height: 1.55;
}
.site-footer__legal p {
  margin: 0;
}
.site-footer__legal strong,
.site-footer__legal span,
.site-footer__legal address span {
  display: block;
}
.site-footer__legal strong {
  color: var(--ink);
  font-size: 0.9rem;
  font-weight: 720;
  letter-spacing: calc(-0.005em + var(--track-bold));
}
.site-footer__legal address {
  max-width: 440px;
  margin: 0;
  font-style: normal;
}
.site-footer__legal address span {
  margin-bottom: 2px;
  color: var(--ink-soft);
  font-weight: 680;
}
.reveal {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 700ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 700ms cubic-bezier(0.2, 0.65, 0.2, 1);
  transition-delay: var(--reveal-delay, 0ms);
}
.reveal.is-visible {
  opacity: 1;
  transform: none;
}
@media (max-width: 860px) {
  .site-header {
    top: 12px;
    width: calc(100% - 24px);
  }
  .site-nav a:not(.nav-cta) {
    display: none;
  }
  .site-nav .nav-cta {
    margin-left: 0;
  }
  .site-footer__main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .site-footer__legal {
    grid-template-columns: 1fr;
  }
  .hero {
    min-height: min(760px, 82svh);
    align-items: flex-start;
    padding: 118px 0 56px;
  }
  .hero--home {
    min-height: 100svh;
    padding: 148px 0 86px;
  }
  .hero--home .hero__inner {
    min-height: calc(100svh - 198px);
  }
  h1 {
    font-size: clamp(4rem, 18vw, 6.2rem);
  }
  .intro,
  .app-teasers,
  .detail,
  .request {
    grid-template-columns: 1fr;
  }
  .intro {
    grid-template-areas: "eyebrow" "title" "copy";
    row-gap: 20px;
  }
  .intro__copy {
    margin-top: 0;
  }
  .feature-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .features {
    padding-top: 68px;
  }
  .intro {
    padding-top: 76px;
  }
  .hero-apps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 520px;
  }
  .hero-app {
    min-height: 116px;
    grid-template-columns: 72px 1fr;
    align-items: center;
  }
  .hero-app span {
    margin-top: 0;
  }
  .app-page {
    padding-top: 100px;
  }
  .subhero {
    min-height: auto;
    padding-top: 38px;
  }
}
@media (max-width: 560px) {
  .hero,
  .intro,
  .apps,
  .subhero,
  .detail,
  .features,
  .craft,
  .request,
  .site-footer {
    width: calc(100% - 28px);
  }
  .site-footer__main {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 34px 26px 30px;
  }
  .site-footer__links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .site-footer__links a {
    min-height: 44px;
  }
  .site-footer__social a {
    min-height: 44px;
  }
  .site-footer__contact {
    padding: 20px;
  }
  .site-footer__contact-link {
    min-height: 46px;
  }
  .site-footer__legal {
    padding: 24px 26px 28px;
  }
  .brand__name {
    display: none;
  }
  .hero {
    width: auto;
  }
  .hero__inner {
    width: calc(100% - 28px);
  }
  .hero--home {
    min-height: max(100svh, 760px);
    padding: 142px 0 76px;
  }
  .hero--home h1 {
    font-size: clamp(3.1rem, 14vw, 4.4rem);
  }
  .hero--home .hero__inner {
    min-height: calc(100svh - 180px);
  }
  .scroll-cue {
    display: none;
  }
  .hero-apps {
    grid-template-columns: 1fr;
    gap: 10px;
    max-width: none;
  }
  .hero-lead {
    min-height: 0;
    padding: 20px 22px;
  }
  .hero-app {
    min-height: 88px;
    grid-template-columns: 56px minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    -moz-column-gap: 16px;
    column-gap: 16px;
    row-gap: 2px;
    align-items: center;
    align-content: center;
    padding: 15px 18px;
    border-radius: 16px;
  }
  .hero-app::after {
    grid-column: 3;
    grid-row: 1/3;
    align-self: center;
    width: 3px;
    height: 26px;
    margin: 0;
  }
  .hero-app img {
    grid-row: 1/3;
    width: 56px;
    height: 56px;
  }
  .hero-app span {
    grid-column: 2;
    margin: 0;
    font-size: 1.08rem;
  }
  .hero-app small {
    grid-column: 2;
    font-size: 0.88rem;
    line-height: 1.3;
  }
  .button {
    width: 100%;
  }
  .app-teaser h2,
  h2 {
    font-size: clamp(2.45rem, 14vw, 4rem);
  }
  .app-teaser,
  .detail {
    padding: 26px 24px;
  }
  .feature-cards {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .feature-card {
    padding: 24px 22px;
  }
  .subhero__icon {
    width: 96px;
    height: 96px;
  }
  .request {
    padding: 44px 24px;
    border-radius: 20px;
  }
}
main > .intro,
main > .features,
main > .subhero {
  padding-bottom: 0;
}
main > .intro,
main > .apps,
main > .subhero,
main > .features,
main > .detail,
main > .request {
  margin-bottom: 96px;
}
main > :last-child {
  margin-bottom: 0;
}
@media (max-width: 720px) {
  .hero--home .hero__inner > * {
    animation: none;
  }
  main > .intro,
  main > .apps,
  main > .subhero,
  main > .features,
  main > .detail,
  main > .request {
    margin-bottom: 64px;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
  .reveal {
    opacity: 1;
    transform: none;
  }
  .hero--home .hero__inner > * {
    animation: none;
  }
  .button:active,
  .nav-cta:active,
  .hero-app:active,
  .back-link:active,
  .site-footer__social a:active,
  .site-footer__contact-link:active,
  .app-teaser__icon-link:active {
    transform: none;
  }
}
@media (prefers-contrast: more) {
  .button,
  .hero-app,
  .hero-lead,
  .app-teaser,
  .feature-card,
  .detail,
  .contact-card,
  .back-link,
  .chip-list li,
  .site-footer__panel,
  .site-footer__contact,
  .site-footer__contact-link,
  .site-footer__social a {
    --e: 60%;
    border-width: 1.5px;
  }
}
@media (prefers-reduced-transparency: reduce) {
  :root {
    --highlight: transparent;
    --highlight-soft: transparent;
    --glass-bg: var(--panel);
    --glass-bg-strong: var(--panel);
  }
  .site-header,
  .mobile-menu,
  .scroll-cue {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}
.prose {
  width: min(100% - 40px, 760px);
  margin: 0 auto;
  padding: 132px 0 96px;
}
.prose h1 {
  margin: 0 0 10px;
  font-size: clamp(2.6rem, 5vw, 3.6rem);
  font-weight: 780;
  letter-spacing: calc(-0.03em + var(--track-bold));
  line-height: 1.04;
}
.prose h2 {
  margin: 48px 0 12px;
  font-size: 1.34rem;
  font-weight: 740;
  letter-spacing: calc(-0.018em + var(--track-bold));
}
.prose h3 {
  margin: 28px 0 8px;
  font-size: 1.04rem;
  font-weight: 720;
}
.prose p,
.prose li {
  color: var(--ink-soft);
  text-wrap: pretty;
}
.prose p {
  margin: 0 0 16px;
}
.prose ul {
  margin: 0 0 16px;
  padding-left: 22px;
}
.prose li {
  margin-bottom: 8px;
}
.prose strong {
  color: var(--ink);
}
.prose--press {
  width: min(100% - 32px, 880px);
}
.press-downloads,
.press-store {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 28px 0 8px;
}
.prose--press .button {
  color: var(--ink);
}
.prose--press .button--dark {
  color: var(--btn-dark-text);
}
.press-downloads .button small {
  margin-left: 6px;
  opacity: 0.7;
  font-weight: 500;
}
.press-facts {
  display: grid;
  margin: 0 0 16px;
  border-top: 1px solid var(--line);
}
.press-facts div {
  display: grid;
  grid-template-columns: 9em 1fr;
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
}
.press-facts dt {
  color: var(--muted);
}
.press-facts dd {
  margin: 0;
  color: var(--ink);
}
.prose .press-quote {
  position: relative;
  margin: 8px 0 20px;
  padding: 30px 30px 28px 30px;
  border: 1px solid color-mix(in srgb, var(--ink) var(--edge-quiet), transparent);
  border-left: 1px solid color-mix(in srgb, var(--ink) var(--edge-quiet), transparent);
  border-radius: 20px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--ink) var(--wash-quiet-a), transparent), color-mix(in srgb, var(--ink) var(--wash-quiet-b), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
}
.prose .press-quote p {
  margin: 0;
  color: var(--ink);
  font-size: 1.12rem;
  line-height: 1.6;
  font-style: normal;
  text-wrap: pretty;
}
.press-quote footer {
  color: var(--muted);
  font-size: 0.92rem;
}
.prose .press-walls {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin: 20px 0 16px;
  padding: 0;
  list-style: none;
}
.prose .press-gallery li,
.prose .press-walls li {
  margin: 0;
}
.press-gallery img,
.press-walls img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  background: var(--panel);
}
.prose .press-gallery {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 28px 0 24px;
}
.prose .press-gallery li {
  display: block;
  height: 156px;
  margin: 0;
  line-height: 0;
}
.prose .press-gallery img {
  max-width: none;
  width: auto;
  height: 100%;
  border-radius: 10px;
  background: none;
  box-shadow: 0 1px 2px rgba(var(--shadow-rgb), 0.08), 0 12px 32px rgba(var(--shadow-rgb), 0.14);
}
.prose .press-gallery li:first-child {
  height: 124px;
}
.prose .press-gallery li:first-child img {
  border-radius: 22.4%;
  box-shadow: 0 2px 4px rgba(var(--shadow-rgb), 0.08), 0 14px 30px rgba(var(--shadow-rgb), 0.18);
}
@media (max-width: 760px) {
  .prose .press-gallery { justify-content: center; gap: 16px; }
  .prose .press-gallery li { height: 132px; }
  .prose .press-gallery li:first-child { height: 104px; }
}
.press-walls span {
  display: block;
  margin-top: 6px;
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 600;
}
.press-walls small {
  color: var(--muted);
  font-weight: 400;
}
@media (max-width: 720px) {
  .prose .press-walls {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
}
@media (max-width: 560px) {
  .press-facts div {
    grid-template-columns: 1fr;
    gap: 2px;
  }
}
.prose__updated {
  color: var(--muted) !important;
  font-size: 0.9rem;
}
.prose__note {
  margin: 26px 0 32px !important;
  padding: 18px 22px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 16px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  --t: var(--ink);
  border-style: dashed;
  --e: 22%;
  color: var(--muted) !important;
  font-size: 0.92rem;
}
.contact-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 28px 0 38px;
}
.contact-card {
  padding: 20px 22px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 16px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 220ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 220ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 220ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  --t: var(--ink);
}
.contact-card h2 {
  margin: 0 0 7px;
  font-size: 1.08rem;
}
.contact-card p {
  margin: 0;
}
@media (max-width: 560px) {
  .prose {
    width: calc(100% - 28px);
    padding-top: 112px;
  }
  .contact-cards {
    grid-template-columns: 1fr;
  }
}
.app-themed--orbit {
  --app-accent: var(--orbit);
}
.app-themed--echo {
  --app-accent: var(--echo);
}
.app-themed--watchlist {
  --app-accent: var(--watchlist); --app-accent-text: var(--watchlist-text);
}
.app-themed--beacon {
  --app-accent: var(--beacon);
}
.app-themed--circle {
  --app-accent: var(--circle); --app-accent-text: var(--circle-text);
}
.app-themed--aurora {
  --app-accent: var(--aurora);
}
.app-themed {
  --app-tint: var(--app-accent);
  --app-tint-amount: 7%;
  --tint-paper: color-mix(in srgb, var(--app-tint) var(--app-tint-amount), var(--paper));
  --tint-glass: color-mix(in srgb, var(--app-tint) var(--app-tint-amount), var(--glass-bg));
  --tint-glass-strong: color-mix(in srgb, var(--app-tint) var(--app-tint-amount), var(--glass-bg-strong));
  --surface: color-mix(in srgb, var(--app-tint) 3%, var(--panel));
  background: var(--tint-paper);
}
.app-themed .app-page {
  background: linear-gradient(180deg, color-mix(in srgb, var(--app-accent) 20%, transparent), transparent 64svh), var(--tint-paper);
}
.app-themed .site-header {
  background: var(--tint-glass);
}
.app-themed .site-header.is-scrolled {
  background: var(--tint-glass-strong);
}
.app-themed .shot:not(:has(img)) {
  background: color-mix(in srgb, var(--app-accent) 8%, var(--surface));
}
.app-themed--circle .app-page {
  background: linear-gradient(180deg, color-mix(in srgb, var(--app-accent) 26%, transparent), transparent 64svh), var(--tint-paper);
}
.home .hero--home {
  background: var(--paper);
}
.mobile-menu {
  position: fixed;
  z-index: 101;
  top: calc(var(--menu-top, 84px) + 10px);
  left: var(--menu-left, 12px);
  right: auto;
  width: var(--menu-width, calc(100% - 24px));
  max-height: calc(100dvh - var(--menu-top, 84px) - 22px);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.app-page > .features,
.home > .intro,
.home > .apps {
  padding-top: 0;
  padding-bottom: 0;
}
.app-page > .subhero,
.app-page > .shots,
.app-page > .features,
.app-page > .pricing,
.app-page > .detail,
.home > .hero,
.home > .shots,
.home > .apps,
.home > .intro,
.home > .faq {
  margin-bottom: 96px;
}
.app-page > :last-child,
.home > :last-child {
  margin-bottom: 0;
}
:root {
  --app-card-wash: 2%;
}
:root[data-theme=dark] {
  --app-card-wash: 7%;
}
@media (prefers-color-scheme: dark) {
  :root[data-theme=auto],
  :root:not([data-theme]) {
    --app-card-wash: 7%;
  }
}
.badge-live {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  width: -moz-fit-content;
  width: fit-content;
  justify-self: start;
  margin: 0 0 18px;
  padding: 7px 16px 7px 13px;
  --t: var(--ink);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 999px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  color: var(--ink-soft);
  font-size: 0.86rem;
  font-weight: 680;
  letter-spacing: calc(-0.005em + var(--track-bold));
}
.badge-live::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #2ea6a1;
  box-shadow: 0 0 0 4px rgba(46, 166, 161, 0.16);
}
.app-teaser--orbit,
.app-themed--orbit {
  --store-top: light-dark(#3968bf, #356fc7);
  --store-bottom: light-dark(#254a9f, #214d9a);
  --store-text: #fff;
}
.app-teaser--circle,
.app-themed--circle {
  --store-top: light-dark(#ffdc54, #ffe46b);
  --store-bottom: light-dark(#d2aa27, #d8ae2d);
  --store-text: light-dark(#3b2f08, #342700);
}
.app-teaser--beacon,
.app-themed--beacon {
  --store-top: light-dark(#34418f, #c2baff);
  --store-bottom: light-dark(#181b5b, #8d82e7);
  --store-text: light-dark(#fff, #0c172b);
}
.app-teaser--echo,
.app-themed--echo {
  --store-top: light-dark(#317c7d, #68ded8);
  --store-bottom: light-dark(#225a60, #3ea7a5);
  --store-text: light-dark(#fff, #0c172b);
}
.app-teaser--watchlist,
.app-themed--watchlist {
  --store-top: light-dark(#d62a22, #ff4d43);
  --store-bottom: light-dark(#a80f12, #ff2424);
  --store-text: light-dark(#fff, #0c172b);
}
.app-teaser--aurora,
.app-themed--aurora {
  --store-top: light-dark(#a54fd0, #e0a4f5);
  --store-bottom: light-dark(#7a2ca3, #c378e2);
  --store-text: light-dark(#fff, #0c172b);
}
.button--store {
  --store-accent: var(--app-accent, var(--ink));
  gap: 7px;
  padding-inline: 22px;
  border-color: color-mix(in srgb, var(--store-text, #fff) 16%, var(--store-bottom, var(--store-accent)));
  background: linear-gradient(180deg, var(--store-top, var(--store-accent)), var(--store-bottom, var(--store-accent)));
  color: var(--store-text, #fff);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18), 0 2px 3px color-mix(in srgb, var(--store-accent) 22%, transparent);
}
.button--store:hover {
  border-color: color-mix(in srgb, var(--store-text, #fff) 16%, var(--store-bottom, var(--store-accent)));
}
.button--store:not([data-pending]):hover {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22), 0 3px 5px color-mix(in srgb, var(--store-accent) 30%, transparent);
}
.button--store:focus-visible {
  outline-color: color-mix(in srgb, var(--store-bottom, var(--store-accent)) 40%, transparent);
  outline-offset: 4px;
}
.button--store svg {
  order: 1;
  box-sizing: content-box;
  width: 17px;
  height: 17px;
  margin-left: 4px;
  padding-left: 12px;
  border-left: 1px solid color-mix(in srgb, currentColor 28%, transparent);
  flex: none;
  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.12));
}
.button--store span {
  display: contents;
  font-size: 1rem;
  font-weight: 720;
  letter-spacing: calc(-0.012em + var(--track-bold));
  line-height: 1;
}
.button--store span small {
  order: 2;
  display: inline-block;
  font-size: 0.68rem;
  font-weight: 720;
  letter-spacing: calc(0.055em + var(--track-bold));
  line-height: 1;
  opacity: 1;
  text-transform: uppercase;
}
.button[data-pending] {
  cursor: not-allowed;
  opacity: 0.55;
  box-shadow: none;
}
.button[data-pending]:hover {
  transform: none;
  box-shadow: none;
}
.button--store[data-pending] {
  opacity: 1;
}
.shots {
  width: 100%;
  margin: 0 auto 96px;
  padding: 0;
}
.shots .section-head {
  margin: 0;
}
.shots__head {
  width: min(calc(100% - 40px), 1120px);
  margin: 0 auto 22px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}
.shot-row {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: 0 max(20px, calc((100% - 1120px) / 2)) 14px;
  scroll-padding-left: max(20px, calc((100% - 1120px) / 2));
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.shot-row::-webkit-scrollbar {
  display: none;
}
.shot-row > * {
  scroll-snap-align: start;
}
.shot {
  --shot-height: clamp(360px, 46vh, 500px);
  position: relative;
  flex: none;
  height: var(--shot-height);
  aspect-ratio: 9 / 19.5;
  display: grid;
  place-items: center;
  padding: 18px;
  --t: var(--ink);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 26px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  border-style: dashed;
  --e: 22%;
  overflow: hidden;
}
.shot--wide {
  aspect-ratio: 4 / 3;
  border-radius: 20px;
}
.shot__label {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 640;
  letter-spacing: calc(-0.005em + var(--track-bold));
  text-align: center;
  text-wrap: balance;
}
.shot__label small {
  display: block;
  margin-top: 6px;
  font-size: 0.74rem;
  font-weight: 560;
  opacity: 0.72;
}
.shot:has(img) {
  grid-template-columns: max-content;
  grid-template-rows: var(--shot-height) auto;
  place-items: start center;
  height: auto;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  aspect-ratio: auto;
  overflow: visible;
}
.shot > img {
  grid-area: 1 / 1;
  display: block;
  width: auto;
  height: var(--shot-height);
  -o-object-fit: contain;
  object-fit: contain;
}
.shot-caption {
  grid-area: 2 / 1;
  width: 320px;
  max-width: 100%;
  margin: 0;
  padding-top: 18px;
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.4;
  letter-spacing: calc(-0.006em + var(--track));
  text-align: center;
  text-wrap: pretty;
}
.shot-caption__icon {
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  margin: 0 auto 12px;
  border-radius: 14px;
  text-decoration: none;
  transition: filter 180ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.shot-caption__icon img {
  grid-area: 1 / 1;
  width: 58px;
  height: 58px;
}
.shot-caption__icon:hover {
  filter: drop-shadow(0 8px 12px color-mix(in srgb, var(--shot-accent, var(--ink)) 20%, transparent));
  transform: translateY(-2px) scale(1.025);
}
.shot-caption strong {
  display: block;
  margin-bottom: 4px;
  color: var(--ink);
  font-size: 0.94rem;
  font-weight: 680;
  letter-spacing: calc(-0.012em + var(--track-bold));
}
.shot-caption span {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.shot-caption--orbit { --shot-accent: var(--orbit); }
.shot-caption--circle { --shot-accent: var(--circle); }
.shot-caption--beacon { --shot-accent: var(--beacon); }
.shot-caption--echo { --shot-accent: var(--echo); }
.shot-caption--watchlist { --shot-accent: var(--watchlist); }
.shot-caption--aurora { --shot-accent: var(--aurora); }
.shot-caption__explore {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 14px;
  padding: 7px 14px;
  --t: var(--shot-accent, var(--ink));
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 20%;
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 999px;
  background:
    linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  color: var(--ink);
  font-size: 0.78rem;
  font-weight: 720;
  line-height: 1;
  text-decoration: none;
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: --wa 180ms cubic-bezier(0.2, 0.65, 0.2, 1), --wb 180ms cubic-bezier(0.2, 0.65, 0.2, 1), --e 180ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 180ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.shot-caption__explore::after {
  content: "\2192";
  font-size: 0.92rem;
  transition: transform 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.shot-caption__explore:hover {
  --wa: 22%;
  --wb: 30%;
  --e: 40%;
  transform: translateY(-1px);
}
.shot-caption__explore:hover::after {
  transform: translateX(2px);
}
.shot:has(img) .shot__label {
  display: none;
}
.pricing {
  width: min(calc(100% - 40px), 1120px);
  margin: 0 auto;
}
.tiers {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 22px;
  align-items: start;
}
.tier {
  position: relative;
  display: grid;
  align-content: start;
  gap: 6px;
  padding: 30px 26px 28px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 20px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
}
.tier--featured {
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --et: var(--t);
  --e: 45%;
  box-shadow: inset 0 1px 0 var(--highlight), var(--raised-shadow);
}
.tier h3 {
  margin: 0;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 720;
  letter-spacing: calc(0.12em + var(--track-bold));
  text-transform: uppercase;
}
.tier__price {
  margin: 6px 0 0;
  font-size: clamp(2.4rem, 4vw, 3.1rem);
  font-weight: 780;
  letter-spacing: calc(-0.035em + var(--track-bold));
  line-height: 1;
}
.tier__price span:not([data-price]) {
  font-size: 1.05rem;
  font-weight: 640;
  letter-spacing: calc(-0.01em + var(--track-bold));
  color: var(--muted);
}
.tier__note {
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 0.94rem;
  text-wrap: pretty;
}
.tier__list {
  display: grid;
  gap: 10px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
  color: var(--feature-ink);
  text-wrap: pretty;
}
.tier__list li {
  position: relative;
  padding-left: 26px;
}
.tier__list li::before {
  content: "";
  position: absolute;
  top: 0.52em;
  left: 4px;
  width: 9px;
  height: 5px;
  border-left: 2px solid var(--app-accent, var(--ink));
  border-bottom: 2px solid var(--app-accent, var(--ink));
  border-radius: 1px;
  transform: rotate(-45deg);
  opacity: 0.85;
}
.pricing__intro {
  margin: 18px 0 0;
  color: var(--ink-soft);
  font-size: 1.06rem;
  text-wrap: pretty;
}
.pricing__footnote {
  max-width: 60ch;
  margin: 0;
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.5;
  text-align: center;
  text-wrap: pretty;
}
.faq {
  width: min(calc(100% - 40px), 1120px);
  margin: 0 auto 96px;
}
.faq details {
  border-bottom: 1px solid var(--line);
}
.faq summary {
  padding: 20px 34px 20px 0;
  position: relative;
  font-size: 1.06rem;
  font-weight: 700;
  letter-spacing: calc(-0.012em + var(--track-bold));
  cursor: pointer;
  list-style: none;
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 6px;
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--muted);
  border-bottom: 2px solid var(--muted);
  transform: translateY(-70%) rotate(45deg);
  transition: transform 260ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.faq:not(.is-enhanced) details[open] summary::after,
.faq details.is-open summary::after {
  transform: translateY(-30%) rotate(225deg);
}
.faq__answer {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows 320ms cubic-bezier(0.2, 0.65, 0.2, 1), opacity 240ms ease;
}
.faq:not(.is-enhanced) details[open] .faq__answer,
.faq details.is-open .faq__answer {
  grid-template-rows: 1fr;
  opacity: 1;
}
.faq__answer-inner {
  min-height: 0;
  overflow: hidden;
}
.faq__answer p {
  margin: 0;
  padding: 0 0 22px;
  max-width: 62ch;
  color: var(--ink-soft);
  line-height: 1.6;
  text-wrap: pretty;
}
.prose {
  width: min(calc(100% - 40px), 760px);
  margin: 0 auto;
  padding: 132px 0 96px;
}
.prose h1 {
  margin: 0 0 10px;
  font-size: clamp(2.6rem, 5vw, 3.6rem);
  font-weight: 780;
  letter-spacing: calc(-0.03em + var(--track-bold));
  line-height: 1.04;
}
.prose h2 {
  margin: 48px 0 12px;
  font-size: 1.34rem;
  font-weight: 740;
  letter-spacing: calc(-0.018em + var(--track-bold));
}
.prose p,
.prose li {
  color: var(--ink-soft);
  text-wrap: pretty;
}
.prose p { margin: 0 0 16px; }
.prose ul { margin: 0 0 16px; padding-left: 22px; }
.prose li { margin-bottom: 8px; }
.prose__updated {
  color: var(--muted);
  font-size: 0.9rem;
}
.prose__note {
  margin: 0 0 32px;
  padding: 18px 22px;
  --t: var(--ink);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 16px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  border-style: dashed;
  --e: 22%;
  color: var(--muted);
  font-size: 0.92rem;
}
@media (max-width: 560px) {
  .apps,
  .pricing,
  .faq,
  .prose { width: calc(100% - 28px); }
  .shots__head { width: calc(100% - 28px); }
  .shot-row {
    padding-left: 14px;
    padding-right: 14px;
    scroll-padding-left: 14px;
  }
  .shot { --shot-height: clamp(300px, 52vh, 420px); }
  .prose { padding-top: 112px; }
}
.bento__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
}
.bento-card {
  position: relative;
  grid-column: span 2;
  display: grid;
  align-content: start;
  gap: 8px;
  min-height: 188px;
  padding: 28px 26px 26px;
  border-radius: 26px;
  background: var(--panel);
  overflow: hidden;
}
:root[data-theme=dark] .bento-card {
  background: #1e2f4c;
}
@media (prefers-color-scheme: dark) {
  :root[data-theme=auto] .bento-card,
  :root:not([data-theme]) .bento-card {
    background: #1e2f4c;
  }
}
.bento-card > * {
  position: relative;
  margin: 0;
}
.bento-card--wide {
  grid-column: span 3;
  min-height: 210px;
}
.bento-card__kicker {
  color: color-mix(in srgb, var(--app-accent-text, var(--app-accent)) 78%, var(--ink));
  font-size: 0.78rem;
  font-weight: 740;
  letter-spacing: calc(0.09em + var(--track-bold));
  text-transform: uppercase;
}
.bento-card__title {
  color: var(--ink);
  font-size: 1.16rem;
  font-weight: 750;
  letter-spacing: calc(-0.014em + var(--track-bold));
  line-height: 1.2;
  text-wrap: balance;
}
.bento-card--wide .bento-card__title,
.bento-card--tall .bento-card__title,
.bento-card--tall .bento-card__caption {
  font-size: 1.4rem;
}
.bento-card--wide.bento-card--tall .bento-card__title,
.bento-card--wide.bento-card--tall .bento-card__caption {
  font-size: 1.5rem;
}
.bento-card__body {
  color: var(--feature-ink);
  font-size: 0.95rem;
  line-height: 1.5;
  text-wrap: pretty;
}
.bento__grid--visual {
  grid-auto-rows: minmax(172px, auto);
}
.bento__grid--visual .bento-card {
  min-height: 0;
}
.bento-card--slim {
  grid-column: span 2;
}
.bento-card--tall {
  grid-row: span 2;
}
.bento-card--w4 {
  grid-column: span 4;
}
.bento-card--full {
  grid-column: span 6;
}
.bento-card--full .bento-card__lede {
  max-width: 22ch;
}
.bento-card--full .bento-card__body {
  max-width: 68ch;
}
.bento-card--promo {
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: repeat(3, auto);
  -moz-column-gap: 32px;
  column-gap: 32px;
}
.bento-card--promo .bento-card__mark--lead,
.bento-card--promo .bento-card__title,
.bento-card--promo .bento-card__body {
  grid-column: 1;
}
.bento-card--promo .bento-card__cta {
  grid-column: 2;
  grid-row: 1 / -1;
  align-self: center;
  justify-self: end;
}
@media (max-width: 620px) {
  .bento-card--promo {
    grid-template-columns: minmax(0, 1fr);
  }
  .bento-card--promo .bento-card__cta {
    grid-column: 1;
    grid-row: auto;
    justify-self: start;
  }
}
.bento-card--tall:not(.bento-card--media) {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.bento-card--media {
  grid-template-rows: auto minmax(0, 1fr);
  align-content: stretch;
  gap: 14px;
  padding: 24px 0 0;
}
.bento-card--media .bento-card__caption {
  padding: 0 24px;
}
.bento-card__art {
  position: relative;
  overflow: hidden;
  min-height: 0;
  font-size: 0;
  line-height: 0;
}
.bento-card__art img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: left top;
  object-position: left top;
}
.bento-card__stack {
  position: relative;
  display: flex;
  align-items: flex-end;
  gap: 0;
  min-height: 0;
  padding: 0 0 0 24px;
  font-size: 0;
  line-height: 0;
}
.bento-card__widget {
  position: relative;
  display: grid;
  flex: none;
  line-height: 0;
  box-shadow: 0 18px 34px -18px rgba(var(--shadow-rgb), 0.55);
}
.bento-card__widget img {
  grid-area: 1 / 1;
  width: 100%;
  height: auto;
}
.bento-card__widget::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 1px 0 var(--widget-rim, rgba(255, 255, 255, 0.4));
  pointer-events: none;
}
.bento-card__widget--medium {
  width: 62%;
  border-radius: 7.435% / 15.822%;
}
.bento-card__widget--small {
  width: 29.1%; 
  border-radius: 15.822%;
  margin-left: 5%;
  margin-bottom: -5%;
}
.bento-card__caption {
  padding: 0;
  color: var(--ink);
  font-size: 1.16rem;
  font-weight: 750;
  letter-spacing: calc(-0.014em + var(--track-bold));
  line-height: 1.2;
  text-wrap: balance;
}
.bento-card--type {
  align-content: start;
}
.bento-card__lede {
  color: var(--app-accent-text, var(--app-accent));
  font-size: 2.3rem;
  font-weight: 780;
  letter-spacing: calc(-0.028em + var(--track-bold));
  line-height: 1.04;
  text-wrap: balance;
}
.bento-card--icon {
  grid-template-columns: minmax(0, 1fr) auto;
  align-content: center;
  align-items: center;
  -moz-column-gap: 14px;
  column-gap: 14px;
}
.bento-card__marks {
  display: flex;
  align-items: center;
  gap: 12px;
}
.bento-card__mark {
  width: 76px;
  height: 76px;
  filter: drop-shadow(0 6px 14px rgba(var(--shadow-rgb), 0.18));
}
.bento-card__marks .bento-card__mark {
  width: 68px;
  height: 68px;
}
.bento-card__field {
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: color-mix(in srgb, var(--ink) 4%, transparent);
  color: var(--ink);
  font-size: 0.95rem;
  line-height: 1.35;
}
.bento-card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0;
  list-style: none;
}
.bento-card__chips li {
  padding: 5px 11px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--app-accent) 14%, transparent);
  color: color-mix(in srgb, var(--app-accent-text, var(--app-accent)) 82%, var(--ink));
  font-size: 0.82rem;
  font-weight: 650;
  white-space: nowrap;
}
.bento-card__chips li[data-muted] {
  background: color-mix(in srgb, var(--ink) 7%, transparent);
  color: var(--feature-ink);
}
@media (max-width: 980px) {
  .bento-card,
  .bento-card--wide,
  .bento-card--slim {
    grid-column: span 3;
  }
  .bento-card--full {
    grid-column: span 6;
  }
  .bento-card--w4 {
    grid-column: span 3;
  }
  .bento__grid--visual {
    grid-auto-rows: minmax(158px, auto);
  }
}
@media (max-width: 620px) {
  .bento-card,
  .bento-card--wide,
  .bento-card--slim,
  .bento-card--full,
  .bento-card--w4 {
    grid-column: span 6;
    min-height: 0;
  }
  .bento-card--tall {
    grid-row: auto;
  }
  .bento__grid--visual {
    grid-auto-rows: minmax(196px, auto);
  }
  .bento-card--media .bento-card__art {
    min-height: 150px;
  }
  .bento-card--tall.bento-card--media .bento-card__art {
    min-height: 230px;
  }
}
.shot-rail__head {
  width: min(calc(100% - 40px), 1120px);
  margin: 0 auto 18px;
}
.shot-rail__head h3 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  font-weight: 760;
  letter-spacing: calc(-0.025em + var(--track-bold));
  line-height: 1.1;
}
.shot-rail__head p {
  max-width: 700px;
  margin: 9px 0 0;
  color: var(--ink-soft);
  font-size: 0.98rem;
  line-height: 1.55;
  text-wrap: pretty;
}
.shot-rail + .shot-rail {
  margin-top: 64px;
}
.shot-row--widgets {
  align-items: flex-start;
  gap: 24px;
}
.widget-slide {
  --widget-width: 164.333px;
  flex: none;
  display: grid;
  grid-template-rows: auto auto;
  width: var(--widget-width);
  margin: 0;
}
.widget-slide--medium,
.widget-slide--large {
  --widget-width: 349.667px;
}
.widget-slide__art {
  display: grid;
  width: 100%;
  place-items: start center;
  position: relative;
}
.widget-slide__art::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 26px;
  box-shadow: inset 0 1px 0 var(--widget-rim, rgba(255, 255, 255, 0.4));
  pointer-events: none;
}
.widget-slide__art img {
  grid-area: 1 / 1;
  display: block;
  width: 100%;
  height: auto;
}
.widget-slide .shot-caption {
  width: 100%;
  max-width: none;
}
@media (max-width: 560px) {
  .shot-rail__head {
    width: calc(100% - 28px);
  }
  .shot-rail + .shot-rail {
    margin-top: 52px;
  }
  .shot-row--widgets {
    gap: 16px;
  }
  .widget-slide {
    --widget-width: min(164.333px, calc(46.997vw - 13.159px));
  }
  .widget-slide--medium,
  .widget-slide--large {
    --widget-width: min(349.667px, calc(100vw - 28px));
  }
}
.shot[data-shot]::after {
  content: attr(data-shot);
  position: absolute;
  left: 10px;
  bottom: 10px;
  z-index: 1;
  padding: 3px 9px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--paper) 25%, transparent);
  background: color-mix(in srgb, var(--ink) 72%, transparent);
  color: var(--paper);
  font-family: ui-monospace, "SF Mono", monospace;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: calc(0.05em + var(--track-bold));
  pointer-events: none;
}
.shot-nav {
  width: min(calc(100% - 40px), 1120px);
  margin: 16px auto 0;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}
.shot-nav button {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid var(--glass-border);
  border-radius: 999px;
  background: var(--glass-bg);
  backdrop-filter: blur(16px) saturate(1.4);
  -webkit-backdrop-filter: blur(16px) saturate(1.4);
  box-shadow: inset 0 1px 0 var(--highlight-soft), var(--raised-shadow);
  color: var(--ink);
  cursor: pointer;
  transition: background 180ms cubic-bezier(0.2, 0.65, 0.2, 1), border-color 180ms cubic-bezier(0.2, 0.65, 0.2, 1), opacity 180ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.shot-nav button:hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--ink) 24%, transparent);
  background: var(--glass-bg-strong);
}
.shot-nav button:disabled {
  opacity: 0.35;
  cursor: default;
}
.shot-nav svg {
  width: 18px;
  height: 18px;
}
.family-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.family-grid .hero-app {
  min-height: 0;
  padding: 18px 18px 16px;
  gap: 6px;
}
.family-grid .hero-app img {
  width: 44px;
  height: 44px;
}
.family-grid .hero-app span {
  margin-top: 4px;
  font-size: 1.02rem;
}
.family-grid .hero-app small {
  font-size: 0.8rem;
}
.family-grid .hero-app::after {
  width: 34px;
  margin-top: 2px;
}
@media (max-width: 560px) {
  .family-grid {
    grid-template-columns: 1fr;
  }
}
.shot--ipad {
  aspect-ratio: 5 / 4;
}
.shot--mac {
  aspect-ratio: 13 / 10;
}
.shot[data-shot][data-device]::after {
  content: none;
}
.subhero--devices {
  position: relative;
}
main.app-page {
  overflow-x: clip;
}
.subhero__devices {
  display: none;
  position: absolute;
  top: 50%;
  left: 72%;
  height: min(540px, 58svh);
  transform: translateY(-46%);
  pointer-events: none;
}
.subhero__devices img {
  max-width: none;
}
.subhero__device-mac {
  height: 100%;
  width: auto;
}
.subhero__device-iphone {
  --tilt: -2deg;
  position: absolute;
  left: -104px;
  bottom: -34px;
  height: 78%;
  width: auto;
  animation: hero-collage-float 12s ease-in-out -3s infinite alternate;
}
.subhero__device-tv {
  position: absolute;
  z-index: -1;
  top: -28%;
  left: -64px;
  height: 84%;
  width: auto;
}
.subhero__devices--tv {
  transform: translateY(-38%);
}
@media (min-width: 1100px) {
  .subhero__devices {
    display: block;
  }
  .subhero--devices .hero__lede,
  .subhero--devices .eyebrow,
  .subhero--devices h1 {
    max-width: 56%;
  }
}
.site-header {
  z-index: 100;
}
.site-nav .nav-cta[aria-current] {
  background: var(--cta-hover);
  color: var(--paper);
}
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.support-page {
  width: min(calc(100% - 40px), 1080px);
  margin: 0 auto;
  padding: 118px 0 0;
}
.app-themed.support {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--app-accent) 14%, transparent), transparent 52svh),
    var(--tint-paper);
  background-repeat: no-repeat;
}
.support-hero {
  padding: 26px 0 12px;
  text-align: center;
}
.support-hero h1 {
  max-width: none;
  margin: 0 0 12px;
  font-size: clamp(2.8rem, 6vw, 4.2rem);
  font-weight: 780;
  letter-spacing: calc(-0.032em + var(--track-bold));
  line-height: 1.02;
}
.support-hero__lede {
  width: min(100%, 620px);
  margin: 0 auto 28px;
  color: var(--ink-soft);
  font-size: 1.06rem;
  line-height: 1.55;
  text-wrap: pretty;
}
.support-search {
  position: relative;
  z-index: 30;
  display: flex;
  align-items: center;
  gap: 10px;
  width: min(100%, 560px);
  margin: 0 0 22px;
  padding: 0 14px;
  border: 1px solid var(--glass-border);
  border-radius: 999px;
  background: var(--glass-bg-strong);
  backdrop-filter: blur(16px) saturate(1.4);
  -webkit-backdrop-filter: blur(16px) saturate(1.4);
  box-shadow: inset 0 1px 0 var(--highlight), var(--raised-shadow);
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.support-search--hero {
  margin-inline: auto;
  margin-bottom: 26px;
}
.support-search:focus-within {
  border-color: color-mix(in srgb, var(--app-accent, var(--ink)) 46%, var(--line));
  box-shadow: 0 1px 2px rgba(var(--shadow-rgb), 0.06), 0 10px 26px rgba(var(--shadow-rgb), 0.1);
}
.support-search__icon {
  flex: none;
  width: 19px;
  height: 19px;
  color: var(--muted);
}
.support-search input {
  flex: 1;
  min-width: 0;
  padding: 15px 0;
  border: 0;
  background: none;
  color: var(--ink);
  font: inherit;
  font-size: 1rem;
  outline: none;
}
.support-search input::-moz-placeholder { color: var(--muted); }
.support-search input::placeholder { color: var(--muted); }
.support-search input::-webkit-search-cancel-button { display: none; }
.support-search__clear {
  flex: none;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: var(--hover-wash);
  color: var(--ink-soft);
  cursor: pointer;
}
.support-search__clear[hidden] { display: none; }
.support-search__clear svg { width: 13px; height: 13px; }
.support-search__clear:hover { color: var(--ink); }
.support-results {
  position: absolute;
  z-index: 60;
  top: calc(100% + 10px);
  left: 0;
  right: 0;
  max-height: min(62vh, 460px);
  overflow-y: auto;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: var(--panel);
  box-shadow: 0 2px 6px rgba(var(--shadow-rgb), 0.08), 0 20px 48px rgba(var(--shadow-rgb), 0.22);
  text-align: left;
}
.support-result {
  display: grid;
  gap: 3px;
  padding: 12px 14px;
  border-radius: 15px;
  color: inherit;
  text-decoration: none;
}
.support-result:hover,
.support-result[aria-selected=true] {
  background: var(--hover-wash);
}
.support-result__collection {
  color: color-mix(in srgb, var(--app-accent, var(--muted)) 72%, var(--muted));
  font-size: 0.7rem;
  font-weight: 740;
  letter-spacing: calc(0.09em + var(--track-bold));
  text-transform: uppercase;
}
.support-result__title {
  color: var(--ink);
  font-size: 0.98rem;
  font-weight: 660;
  letter-spacing: calc(-0.012em + var(--track-bold));
}
.support-result__summary {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: var(--feature-ink);
  font-size: 0.87rem;
  line-height: 1.45;
}
.support-result mark {
  background: color-mix(in srgb, var(--app-accent, var(--orbit)) 26%, transparent);
  color: var(--ink);
  border-radius: 3px;
}
.support-results__empty {
  margin: 0;
  padding: 16px 14px;
  color: var(--ink-soft);
  font-size: 0.93rem;
  line-height: 1.5;
}
.chips {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}
.chip {
  padding: 8px 15px;
  --t: var(--ink);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 999px;
  background:
    linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  color: var(--ink-soft);
  font-size: 0.86rem;
  font-weight: 560;
  text-decoration: none;
  transition: --wa 0.16s ease, --wb 0.16s ease, --e 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}
.chip:hover {
  --wa: var(--wash-a); --wb: var(--wash-b); --et: var(--t); --e: 28%;
  color: var(--ink);
}
.support-browse { margin-top: 76px; }
.support-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(212px, 1fr));
  gap: 16px;
  margin-top: 26px;
}
.support-tile {
  --app-accent: var(--ink);
  position: relative;
  display: grid;
  align-content: start;
  justify-items: center;
  gap: 5px;
  padding: 28px 20px 22px;
  --t: var(--app-accent);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 20px;
  background:
    linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  color: inherit;
  text-align: center;
  text-decoration: none;
  overflow: hidden;
  transition: transform 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}
.support-tile > * { position: relative; }
.support-tile:hover {
  transform: translateY(-2px);
  --wa: var(--wash-a); --wb: var(--wash-b); --et: var(--t); --e: 28%;
  box-shadow: inset 0 1px 0 var(--highlight), var(--raised-shadow);
}
.support-tile img { width: 64px; height: 64px; }
.support-tile--orbit { --app-accent: var(--orbit); }
.support-tile--circle { --app-accent: var(--circle); --app-accent-text: var(--circle-text); }
.support-tile--beacon { --app-accent: var(--beacon); }
.support-tile--echo { --app-accent: var(--echo); }
.support-tile--watchlist { --app-accent: var(--watchlist); --app-accent-text: var(--watchlist-text); }
.support-tile--aurora { --app-accent: var(--aurora); }
.support-tile__name {
  margin-top: 8px;
  color: var(--ink);
  font-size: 1.06rem;
  font-weight: 720;
  letter-spacing: calc(-0.014em + var(--track-bold));
}
.support-tile small {
  color: var(--feature-ink);
  font-size: 0.87rem;
  line-height: 1.4;
  text-wrap: pretty;
}
.support-tile__count {
  margin-top: 6px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 620;
  letter-spacing: calc(0.05em + var(--track-bold));
  text-transform: uppercase;
}
.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 22px;
  color: var(--muted);
  font-size: 0.86rem;
}
.breadcrumb a {
  color: var(--ink-soft);
  text-decoration: none;
}
.breadcrumb a:hover {
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.breadcrumb [aria-current=page] { color: var(--muted); }
.breadcrumb span[aria-hidden] { opacity: 0.5; }
.support-bar {
  position: relative;
  z-index: 30;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 28px;
  margin-bottom: 26px;
}
.support-bar .breadcrumb {
  flex: 1 1 auto;
  margin-bottom: 0;
}
.support-bar .support-search {
  flex: 0 1 300px;
  width: auto;
  min-width: 220px;
  margin: 0;
}
.support-bar .support-search input {
  padding: 11px 0;
  font-size: 0.93rem;
}
.support-bar .support-results {
  left: auto;
  right: 0;
  width: max(100%, min(86vw, 430px));
}
@media (max-width: 700px) {
  .support-bar { gap: 12px; }
  .support-bar .support-search { flex: 1 1 100%; }
  .support-bar .support-results { left: 0; right: 0; width: auto; }
}
.support-collection {
  display: grid;
  justify-items: start;
  gap: 4px;
  padding-bottom: 8px;
}
.support-collection__icon {
  width: 88px;
  height: 88px;
  margin-bottom: 10px;
}
.support-collection h1 {
  max-width: none;
  margin: 0 0 8px;
  font-size: clamp(2.3rem, 5vw, 3.2rem);
  font-weight: 780;
  letter-spacing: calc(-0.03em + var(--track-bold));
  line-height: 1.04;
}
.support-collection__lede {
  width: min(100%, 620px);
  margin: 0 0 24px;
  color: var(--ink-soft);
  font-size: 1.02rem;
  line-height: 1.55;
  text-wrap: pretty;
}
.support-collection__actions:empty { display: none; }
.support-list { margin-top: 34px; }
.article-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 14px;
}
.article-card {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 22px 24px;
  --t: var(--app-accent, var(--ink));
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 20px;
  background:
    linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  color: inherit;
  text-decoration: none;
  transition: transform 0.18s ease, --wa 0.18s ease, --wb 0.18s ease, --e 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}
.article-card:hover {
  transform: translateY(-2px);
  --wa: var(--wash-a); --wb: var(--wash-b); --et: var(--t); --e: 28%;
  box-shadow: inset 0 1px 0 var(--highlight), var(--raised-shadow);
}
.article-card__title {
  color: var(--ink);
  font-size: 1.06rem;
  font-weight: 700;
  letter-spacing: calc(-0.014em + var(--track-bold));
  line-height: 1.25;
  text-wrap: balance;
}
.article-card__summary {
  color: var(--feature-ink);
  font-size: 0.92rem;
  line-height: 1.5;
  text-wrap: pretty;
}
.article-card__more {
  display: inline-flex;
  align-items: center;
  align-self: start;
  gap: 6px;
  margin-top: auto;
  padding-top: 10px;
  color: color-mix(in srgb, var(--app-accent, var(--ink)) 78%, var(--ink));
  font-size: 0.85rem;
  font-weight: 680;
}
.article-card__more svg { width: 13px; height: 13px; transition: transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1); }
.article-card:hover .article-card__more svg { transform: translateX(3px); }
.article-card--compact { padding: 18px 20px; }
.support-feedback {
  margin-top: 88px;
}
.support-feedback .section-head {
  margin-bottom: 26px;
}
.support-feedback__cards {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.support-feedback__card {
  padding: 28px;
}
.support-feedback__icon {
  width: 48px;
  height: 48px;
  margin-bottom: 10px;
  border-radius: 15px;
}
.support-feedback__icon svg {
  width: 100%;
  height: 100%;
}
.support-page--article { width: min(calc(100% - 40px), 1048px); }
.article {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0 56px;
  align-items: start;
}
.article__head { max-width: 720px; }
.article__head h1 {
  max-width: none;
  margin: 0 0 14px;
  font-size: clamp(2.3rem, 4.6vw, 3.2rem);
  font-weight: 780;
  letter-spacing: calc(-0.03em + var(--track-bold));
  line-height: 1.05;
  text-wrap: balance;
}
.article__summary {
  margin: 0 0 18px;
  color: var(--ink-soft);
  font-size: 1.14rem;
  line-height: 1.55;
  text-wrap: pretty;
}
.article__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin: 0 0 8px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--line);
  color: var(--muted);
  font-size: 0.84rem;
}
.article__applies::before {
  content: "Applies to ";
  opacity: 0.75;
}
.article__body {
  max-width: 720px;
  padding-top: 26px;
}
.article__body h2 {
  margin: 44px 0 14px;
  font-size: 1.42rem;
  font-weight: 750;
  letter-spacing: calc(-0.02em + var(--track-bold));
  line-height: 1.2;
  scroll-margin-top: 104px;
  text-wrap: balance;
}
.article__body h2:first-child { margin-top: 0; }
.article__body h3 {
  margin: 30px 0 10px;
  font-size: 1.08rem;
  font-weight: 720;
  letter-spacing: calc(-0.014em + var(--track-bold));
}
.article__body p,
.article__body li {
  color: var(--ink-soft);
  font-size: 1rem;
  line-height: 1.62;
  text-wrap: pretty;
}
.article__body p { margin: 0 0 16px; }
.article__body ul { margin: 0 0 18px; padding-left: 20px; }
.article__body li { margin-bottom: 9px; }
.article__body li::marker { color: var(--muted); }
.article__body strong { color: var(--ink); font-weight: 680; }
.steps {
  counter-reset: step;
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
}
.steps > li {
  position: relative;
  counter-increment: step;
  margin-bottom: 12px;
  padding-left: 40px;
}
.steps > li::before {
  content: counter(step);
  position: absolute;
  left: 0;
  top: 1px;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--app-accent, var(--ink)) 15%, transparent);
  color: color-mix(in srgb, var(--app-accent, var(--ink)) 88%, var(--ink));
  font-size: 0.82rem;
  font-weight: 760;
  font-variant-numeric: tabular-nums;
}
.article__body code {
  padding: 2px 6px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: color-mix(in srgb, var(--ink) 5%, transparent);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.88em;
}
.article__body kbd {
  display: inline-block;
  min-width: 1.5em;
  padding: 2px 7px;
  border: 1px solid var(--line);
  border-bottom-width: 2px;
  border-radius: 7px;
  background: var(--panel);
  color: var(--ink);
  font-family: inherit;
  font-size: 0.84em;
  font-weight: 620;
  line-height: 1.5;
  text-align: center;
}
.article__body kbd + kbd { margin-left: 3px; }
.shot-figure {
  display: grid;
  justify-items: center;
  gap: 12px;
  margin: 0 0 26px;
}
.shot-figure img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: min(58vh, 500px);
  -o-object-fit: contain;
  object-fit: contain;
}
.shot-figure figcaption {
  max-width: 56ch;
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.5;
  text-align: center;
  text-wrap: pretty;
}
.shot-figure-row {
  display: grid;
  gap: 20px;
  margin: 0 0 26px;
}
.shot-figure-row .shot-figure {
  margin: 0;
}
.shot-figure-row .shot-figure img {
  max-height: min(46vh, 400px);
}
.callout {
  display: grid;
  gap: 4px;
  margin: 0 0 22px;
  padding: 18px 22px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--callout-accent, var(--muted));
  border-radius: 6px 16px 16px 6px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--callout-accent, var(--ink)) var(--wash-a), transparent), color-mix(in srgb, var(--callout-accent, var(--ink)) var(--wash-b), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
}
.callout p { margin: 0; }
.callout__label {
  color: var(--callout-accent, var(--muted));
  font-size: 0.73rem;
  font-weight: 760;
  letter-spacing: calc(0.09em + var(--track-bold));
  text-transform: uppercase;
}
.callout--note { --callout-accent: var(--muted); }
.callout--tip { --callout-accent: var(--echo); }
.callout--important { --callout-accent: var(--watchlist); }
.table-wrap {
  margin: 0 0 22px;
  overflow-x: auto;
  --t: var(--ink);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 16px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
}
.table-wrap table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.94rem;
}
.table-wrap th,
.table-wrap td {
  padding: 12px 16px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--line);
}
.table-wrap thead th {
  color: var(--ink);
  font-size: 0.78rem;
  font-weight: 740;
  letter-spacing: calc(0.06em + var(--track-bold));
  text-transform: uppercase;
  white-space: nowrap;
}
.table-wrap td { color: var(--ink-soft); line-height: 1.5; }
.table-wrap tbody tr:last-child th,
.table-wrap tbody tr:last-child td { border-bottom: 0; }
.article-toc {
  display: none;
  position: sticky;
  top: 104px;
  grid-column: 2;
  grid-row: 1 / span 3;
  width: 232px;
  padding: 20px 22px;
  --t: var(--ink);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 20px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
}
.article-toc__title {
  margin: 0 0 10px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 760;
  letter-spacing: calc(0.09em + var(--track-bold));
  text-transform: uppercase;
}
.article-toc ol {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: none;
}
.article-toc li { margin-bottom: 3px; }
.article-toc a {
  display: block;
  padding: 5px 10px;
  margin-left: -10px;
  border-radius: 9px;
  color: var(--ink-soft);
  font-size: 0.87rem;
  line-height: 1.35;
  text-decoration: none;
}
.article-toc a:hover { color: var(--ink); }
.article-toc a.is-current {
  background: color-mix(in srgb, var(--app-accent, var(--ink)) 12%, transparent);
  color: color-mix(in srgb, var(--app-accent, var(--ink)) 86%, var(--ink));
  font-weight: 640;
}
@media (min-width: 1080px) {
  .article {
    grid-template-columns: minmax(0, 1fr) 232px;
  }
  .article-toc { display: block; }
}
.article-related {
  grid-column: 1;
  max-width: 720px;
  margin-top: 56px;
  padding-top: 34px;
  border-top: 1px solid var(--line);
}
.article-related h2 {
  margin: 0 0 18px;
  font-size: 1.16rem;
  font-weight: 740;
  letter-spacing: calc(-0.018em + var(--track-bold));
}
.article-related .article-cards {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}
.help-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 26px 48px;
  align-items: center;
  margin: 88px 0 112px;
  padding: 38px 40px;
  --t: var(--ink);
  --wa: var(--wash-quiet-a);
  --wb: var(--wash-quiet-b);
  --et: var(--ink);
  --e: var(--edge-quiet);
  border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
  border-radius: 26px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  box-shadow: inset 0 1px 0 var(--highlight-soft), var(--raised-shadow);
}
.help-cta .eyebrow {
  margin: 0 0 16px;
}
.help-cta h2 {
  margin: 0 0 10px;
  font-size: 1.7rem;
  font-weight: 760;
  letter-spacing: calc(-0.024em + var(--track-bold));
}
.help-cta p {
  margin: 0;
  max-width: 60ch;
  color: var(--ink-soft);
  font-size: 0.97rem;
  line-height: 1.55;
  text-wrap: pretty;
}
.help-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
@media (max-width: 860px) {
  .support-page { padding-top: 96px; }
  .help-cta {
    grid-template-columns: minmax(0, 1fr);
    margin: 64px 0 80px;
    padding: 30px 26px;
  }
  .support-browse { margin-top: 56px; }
  .support-collection__icon { width: 72px; height: 72px; }
  .article__body { padding-top: 20px; }
  .callout { padding: 16px 18px; }
}
@media (max-width: 560px) {
  .support-tiles { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
  .support-tile { padding: 22px 14px 18px; }
  .support-tile img, .support-tile .glyph-art { width: 52px; height: 52px; }
  .article-cards { grid-template-columns: minmax(0, 1fr); }
  .support-feedback__icon { width: 44px; height: 44px; }
  .steps > li { padding-left: 34px; }
}
.bento-card--figure {
  grid-template-rows: auto minmax(0, 1fr);
  align-content: stretch;
  gap: 13px;
  padding: 24px 26px 26px;
}
.bento-card--figure .bento-fig {
  align-self: center;
}
.bento-fig {
  display: grid;
  align-content: center;
  gap: 9px;
  min-height: 0;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--panel);
}
.bento-fig__track {
  height: 8px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--ink) 12%, transparent);
  overflow: hidden;
}
.bento-fig__track i {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: var(--app-accent);
}
.bento-fig__bars {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  gap: 9px;
}
.bento-fig__bars i {
  height: 8px;
  border-radius: 999px;
  background: var(--bar);
}
.bento-fig__bars i:nth-child(1) { --bar: #e2996b; }
.bento-fig__bars i:nth-child(2) { --bar: #e2849b; }
.bento-fig__bars i:nth-child(3) { --bar: #b27ae8; }
.bento-fig__bars i:nth-child(4) { --bar: #c4b174; }
:root[data-theme=dark] .bento-fig__bars i:nth-child(1) { --bar: #c57f46; }
:root[data-theme=dark] .bento-fig__bars i:nth-child(2) { --bar: #c3637e; }
:root[data-theme=dark] .bento-fig__bars i:nth-child(3) { --bar: #a277cb; }
:root[data-theme=dark] .bento-fig__bars i:nth-child(4) { --bar: #cbaf4d; }
@media (prefers-color-scheme: dark) {
  :root[data-theme=auto] .bento-fig__bars i:nth-child(1),
  :root:not([data-theme]) .bento-fig__bars i:nth-child(1) { --bar: #c57f46; }
  :root[data-theme=auto] .bento-fig__bars i:nth-child(2),
  :root:not([data-theme]) .bento-fig__bars i:nth-child(2) { --bar: #c3637e; }
  :root[data-theme=auto] .bento-fig__bars i:nth-child(3),
  :root:not([data-theme]) .bento-fig__bars i:nth-child(3) { --bar: #a277cb; }
  :root[data-theme=auto] .bento-fig__bars i:nth-child(4),
  :root:not([data-theme]) .bento-fig__bars i:nth-child(4) { --bar: #cbaf4d; }
}
.bento-fig__line {
  color: var(--feature-ink);
  font-size: 0.95rem;
  line-height: 1.35;
}
.bento-fig__say {
  display: flex;
  align-items: center;
  gap: 11px;
}
.bento-fig__avatar {
  flex: none;
  width: 46px;
  height: 46px;
}
.bento-fig__say p {
  padding: 10px 14px;
  border-radius: 15px;
  background: color-mix(in srgb, var(--ink) 6%, transparent);
  color: var(--feature-ink);
  font-size: 0.95rem;
  line-height: 1.35;
}
.bento-fig--rows {
  gap: 0;
  padding: 4px 16px;
}
.bento-fig--rows div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 0;
  font-size: 0.95rem;
}
.bento-fig--rows div + div {
  border-top: 1px solid var(--line);
}
.bento-fig--rows span {
  color: var(--muted);
}
.bento-fig--rows b {
  color: var(--ink);
  font-weight: 700;
}
.bento-fig--rows b[data-alert] {
  color: #e5484d;
}
.bento-fig__segmented {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  gap: 2px;
  padding: 3px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--ink) 8%, transparent);
}
.bento-fig__segmented span {
  padding: 6px 4px;
  border-radius: 999px;
  color: var(--feature-ink);
  font-size: 0.82rem;
  text-align: center;
}
.bento-fig__segmented span[data-on] {
  background: var(--panel);
  box-shadow: 0 1px 3px rgba(var(--shadow-rgb), 0.18);
  color: var(--ink);
  font-weight: 650;
}
.bento-fig__row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  color: var(--ink);
  font-size: 0.95rem;
  font-weight: 650;
}
.bento-fig__row em {
  color: var(--muted);
  font-style: normal;
  font-variation-settings: inherit;
  font-weight: 500;
}
.bento-fig--cells {
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  align-content: center;
  gap: 6px;
  padding: 12px;
}
.bento-fig--cells span {
  display: grid;
  grid-template-rows: 1.15em auto;
  gap: 2px;
  justify-items: center;
  padding: 7px 0 6px;
  border-radius: 9px;
  color: var(--muted);
  line-height: 1;
}
.bento-fig--cells span[data-mood] {
  background: color-mix(in srgb, var(--app-accent) 13%, transparent);
  color: var(--ink);
}
.bento-fig--cells span i {
  font-size: 1.05rem;
  font-style: normal;
  font-variation-settings: inherit;
  line-height: 1.15;
}
.bento-fig--cells span b {
  font-size: 0.72rem;
  font-weight: 600;
}
.bento-fig--transport {
  gap: 7px;
}
.bento-fig__times {
  display: flex;
  justify-content: space-between;
  color: var(--muted);
  font-size: 0.78rem;
  font-variant-numeric: tabular-nums;
}
.bento-fig__keys {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  padding-top: 2px;
  color: var(--ink);
}
.bento-fig__keys svg {
  width: 22px;
  height: 22px;
  fill: currentColor;
}
.bento-fig__keys svg:nth-child(2) {
  width: 26px;
  height: 26px;
}
.bento-fig--list {
  gap: 0;
  padding: 4px 14px;
}
.bento-fig--list div {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  font-size: 0.92rem;
}
.bento-fig--list div + div {
  border-top: 1px solid var(--line);
}
.bento-fig--list i {
  flex: none;
  width: 9px;
  height: 9px;
  border-radius: 3px;
  background: var(--app-accent);
}
.bento-fig--list div:nth-child(2) i { opacity: 0.66; }
.bento-fig--list div:nth-child(3) i { opacity: 0.42; }
.bento-fig--list div:nth-child(4) i { opacity: 0.28; }
.bento-fig--list span {
  flex: 1;
  color: var(--ink);
}
.bento-fig--list b {
  color: var(--muted);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
.bento-card__spec {
  justify-self: start;
  padding: 7px 13px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--app-accent) 13%, transparent);
  color: color-mix(in srgb, var(--app-accent-text, var(--app-accent)) 82%, var(--ink));
  font-size: 0.86rem;
  font-weight: 620;
}
.bento-card__cast {
  width: 100%;
  height: auto;
  margin-top: 2px;
}
.bento-card__mark--lead {
  width: 52px;
  height: 52px;
  margin-bottom: 2px;
  filter: drop-shadow(0 5px 12px rgba(var(--shadow-rgb), 0.16));
}
.bento-fig--keys {
  gap: 0;
  padding: 2px 14px;
}
.bento-fig--keys div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 0;
  color: var(--feature-ink);
  font-size: 0.92rem;
}
.bento-fig--keys div + div {
  border-top: 1px solid var(--line);
}
.bento-fig--keys b {
  display: flex;
  flex: none;
  gap: 4px;
}
.bento-fig--keys kbd {
  min-width: 24px;
  padding: 3px 7px;
  border-radius: 6px;
  background: color-mix(in srgb, var(--ink) 9%, transparent);
  color: var(--ink);
  font-family: inherit;
  font-size: 0.82rem;
  font-weight: 600;
  text-align: center;
}
.ai-panel__lead {
  font-size: 1.12rem;
  line-height: 1.5;
}
.ai-clients {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 22px 0 4px;
  padding: 0;
  list-style: none;
}
.ai-clients li {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px 15px 8px 9px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--ink) 6%, transparent);
  color: var(--ink);
  font-size: 0.94rem;
  font-weight: 640;
}
.ai-clients__mark {
  width: 30px;
  height: 30px;
}
.ai-clients__more {
  padding-left: 15px;
  background: none;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ink) 14%, transparent);
  color: var(--feature-ink);
  font-weight: 560;
}
.ai-points {
  display: grid;
  gap: 10px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}
.ai-points li {
  padding-left: 17px;
  position: relative;
  color: var(--feature-ink);
  line-height: 1.45;
}
.ai-points li::before {
  content: "";
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 7px;
  height: 7px;
  border-radius: 2px;
  background: var(--app-accent);
}
.ai-points strong {
  color: var(--ink);
}
.ai-panel__note {
  margin-top: 22px;
  color: var(--muted);
  font-size: 0.94rem;
}
.panel-links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}
.bento-card--full .bento-fig--keys {
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  padding: 4px 6px;
}
.bento-card--full .bento-fig--keys div {
  padding: 10px 16px;
}
.bento-card--full .bento-fig--keys div + div {
  border-top: 0;
  border-left: 1px solid var(--line);
}
.bento-surface {
  display: grid;
  gap: 12px;
  align-content: start;
  min-height: 0;
  padding: 16px;
  border-radius: 16px;
  background: color-mix(in srgb, var(--ink) 4%, transparent);
}
.bento-post__head {
  display: flex;
  align-items: center;
  gap: 10px;
}
.bento-post__avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  -o-object-fit: cover;
  object-fit: cover;
}
.bento-post__who {
  display: grid;
  gap: 1px;
  flex: 1;
  min-width: 0;
}
.bento-post__who strong {
  color: var(--ink);
  font-size: 0.98rem;
  font-weight: 700;
}
.bento-post__who span,
.bento-post__time {
  color: var(--muted);
  font-size: 0.85rem;
}
.bento-post__body {
  color: var(--feature-ink);
  font-size: 0.98rem;
  line-height: 1.45;
}
.bento-post__photo {
  width: 100%;
  height: 168px;
  border-radius: 12px;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center 62%;
  object-position: center 62%;
}
.bento-people {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  min-height: 0;
}
.bento-person {
  display: grid;
  align-content: start;
  justify-items: center;
  gap: 7px;
  padding: 18px 12px 16px;
  border-radius: 16px;
  background: color-mix(in srgb, var(--ink) 4%, transparent);
  text-align: center;
}
.bento-person img {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  -o-object-fit: cover;
  object-fit: cover;
}
.bento-person strong {
  color: var(--ink);
  font-size: 0.98rem;
  font-weight: 700;
}
.bento-person span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}
.bento-person__due {
  color: #e5484d;
  font-weight: 640;
}
.bento-person__actions {
  display: flex;
  gap: 6px;
  margin-top: 3px;
}
.bento-person__actions svg {
  width: 26px;
  height: 26px;
  padding: 6px;
  border-radius: 50%;
  background: #34c759;
  fill: #fff;
}
.bento-person__actions svg:last-child {
  background: #3478f6;
}
@media (max-width: 620px) {
  .bento-card--icon {
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
    row-gap: 16px;
  }
  .bento-card--full .bento-fig--keys {
    grid-auto-flow: row;
  }
  .bento-card--full .bento-fig--keys div {
    padding: 9px 10px;
  }
  .bento-card--full .bento-fig--keys div + div {
    border-left: 0;
    border-top: 1px solid var(--line);
  }
  .bento-fig--cells span:nth-child(n+6) {
    display: none;
  }
}
@media (hover: none) {
  .menu-toggle:hover {
    background: transparent;
  }
  .menu-toggle:active {
    background: var(--hover-wash);
    transform: scale(0.92);
  }
  .hero-app:hover {
    transform: none;
    --wa: var(--wash-quiet-a);
    --wb: var(--wash-quiet-b);
    --et: var(--ink);
    --e: var(--edge-quiet);
    box-shadow: inset 0 1px 0 var(--highlight-soft);
  }
  .hero-app:hover::after {
    width: 44px;
  }
  .hero-app:hover::before {
    opacity: 0;
  }
  .hero-app:active {
    transform: scale(0.985);
    transition: transform 90ms ease-out;
  }
}
.menu-toggle__bars {
  position: relative;
  display: block;
  width: 20px;
  height: 14px;
}
.menu-toggle__bars i {
  position: absolute;
  left: 0;
  width: 20px;
  height: 2.2px;
  border-radius: 2px;
  background: currentColor;
  transition:
    transform 400ms linear(0, 0.03, 0.114, 0.242, 0.4, 0.57, 0.738, 0.888, 1.006, 1.026, 1.028, 1.02, 1.01, 1.003, 1),
    opacity 140ms linear;
}
.menu-toggle__bars i:nth-child(1) { top: 0; }
.menu-toggle__bars i:nth-child(2) { top: 5.9px; }
.menu-toggle__bars i:nth-child(3) { top: 11.8px; }
body.is-menu-open .menu-toggle__bars i:nth-child(1) {
  transform: translateY(5.9px) rotate(45deg);
}
body.is-menu-open .menu-toggle__bars i:nth-child(2) {
  opacity: 0;
  transform: scaleX(0.4);
}
body.is-menu-open .menu-toggle__bars i:nth-child(3) {
  transform: translateY(-5.9px) rotate(-45deg);
}
@media (prefers-reduced-motion: reduce) {
  .menu-toggle__bars i {
    transition: opacity 1ms linear;
  }
}
.bento-board {
  --board-today: #da7d40;
  --board-week: #da607e;
  --board-tag: #5583e4;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  align-content: start;
  min-height: 0;
  padding: 16px;
  border-radius: 16px;
  background: color-mix(in srgb, var(--ink) 4%, transparent);
}
:root[data-theme=dark] .bento-board {
  --board-today: #f09349;
  --board-week: #ed7092;
  --board-tag: #76a8f8;
}
@media (prefers-color-scheme: dark) {
  :root[data-theme=auto] .bento-board,
  :root:not([data-theme]) .bento-board {
    --board-today: #f09349;
    --board-week: #ed7092;
    --board-tag: #76a8f8;
  }
}
.bento-board__col {
  --accent: var(--board-today);
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
}
.bento-board__col[data-accent=week] {
  --accent: var(--board-week);
}
.bento-board__head {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--ink);
  font-size: 0.98rem;
  font-weight: 700;
}
.bento-board__head svg {
  width: 15px;
  height: 15px;
  fill: var(--accent);
}
.bento-board__head b {
  min-width: 20px;
  padding: 1px 6px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--ink) 9%, transparent);
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 600;
  text-align: center;
}
.bento-board__task {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 3px 9px;
  padding: 7px 9px;
  border: 1px solid transparent;
  border-radius: 11px;
}
.bento-board__task[data-selected] {
  border-color: color-mix(in srgb, var(--accent) 55%, transparent);
  background: color-mix(in srgb, var(--accent) 10%, transparent);
}
.bento-board__check {
  grid-row: span 2;
  width: 15px;
  height: 15px;
  margin-top: 2px;
  border: 1.8px solid var(--accent);
  border-radius: 50%;
}
.bento-board__title {
  color: var(--ink);
  font-size: 0.92rem;
  line-height: 1.3;
}
.bento-board__meta {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--accent);
  font-size: 0.78rem;
  font-weight: 650;
}
.bento-board__meta svg {
  width: 11px;
  height: 11px;
  fill: var(--accent);
}
.bento-board__meta i {
  width: 9px;
  height: 9px;
  border-radius: 2.5px;
  background: color-mix(in srgb, var(--ink) 22%, transparent);
}
.bento-board__meta i[data-tag] {
  background: var(--board-tag);
}
.bento-gallery {
  display: grid;
  grid-template-rows: auto auto;
  gap: 12px;
  min-height: 0;
  padding: 14px;
  border-radius: 16px;
  background: color-mix(in srgb, var(--ink) 4%, transparent);
}
.bento-gallery__head {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--ink);
  font-size: 0.95rem;
  font-weight: 700;
}
.bento-gallery__head svg {
  width: 15px;
  height: 15px;
  fill: var(--app-accent);
}
.bento-gallery__head b {
  padding: 1px 7px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--ink) 9%, transparent);
  color: var(--muted);
  font-size: 0.75rem;
  font-weight: 600;
}
.bento-gallery__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.bento-gallery__card {
  position: relative;
  margin: 0;
  aspect-ratio: 4 / 5;
  border-radius: 12px;
  overflow: hidden;
}
.bento-gallery__card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.bento-gallery__card figcaption {
  position: absolute;
  inset: auto 0 0;
  display: grid;
  gap: 1px;
  padding: 22px 12px 10px;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.72), transparent);
  color: #fff;
}
.bento-gallery__card strong {
  font-size: 0.88rem;
  font-weight: 700;
}
.bento-gallery__card span {
  font-size: 0.76rem;
  opacity: 0.82;
}
.bento-gallery__more {
  position: absolute;
  top: 8px;
  right: 8px;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  font-size: 0.74rem;
  font-weight: 650;
}
.bento-place {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  min-height: 0;
  padding: 14px;
  border-radius: 16px;
  background: color-mix(in srgb, var(--ink) 4%, transparent);
}
.bento-place__map {
  width: 92px;
  height: 92px;
  border-radius: 13px;
  -o-object-fit: cover;
  object-fit: cover;
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--ink) 10%, transparent);
}
.bento-place__text {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.bento-place__text strong {
  color: var(--ink);
  font-size: 1rem;
  font-weight: 700;
}
.bento-place__text span {
  color: var(--muted);
  font-size: 0.86rem;
}
.bento-place__where {
  display: flex;
  align-items: center;
  gap: 5px;
  color: var(--app-accent-text, var(--app-accent));
  font-size: 0.82rem;
  font-weight: 650;
}
.bento-place__where svg {
  width: 12px;
  height: 12px;
  fill: currentColor;
}
.bento-review {
  display: grid;
  gap: 8px;
  align-content: start;
  min-height: 0;
  padding: 12px;
  border-radius: 16px;
  background: color-mix(in srgb, var(--ink) 4%, transparent);
}
.bento-review__row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  padding: 7px;
  border: 1px solid transparent;
  border-radius: 11px;
}
.bento-review__row[data-selected] {
  border-color: color-mix(in srgb, var(--app-accent) 45%, transparent);
  background: color-mix(in srgb, var(--app-accent) 9%, transparent);
}
.bento-review__thumb {
  position: relative;
  width: 96px;
  flex: none;
  aspect-ratio: 16 / 9;
  border-radius: 7px;
  overflow: hidden;
}
.bento-review__thumb img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.bento-review__time {
  position: absolute;
  right: 4px;
  bottom: 4px;
  padding: 1px 5px;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.72);
  color: #fff;
  font-size: 0.68rem;
  font-weight: 640;
  font-variant-numeric: tabular-nums;
}
.bento-review__text {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.bento-review__text strong {
  color: var(--ink);
  font-size: 0.9rem;
  font-weight: 660;
  line-height: 1.25;
}
.bento-review__text span {
  color: var(--muted);
  font-size: 0.78rem;
}
.bento-read {
  display: grid;
  gap: 7px;
  align-content: start;
  min-height: 0;
  padding: 16px 18px;
  border-radius: 16px;
  background: color-mix(in srgb, var(--ink) 4%, transparent);
}
.bento-read__source {
  color: var(--app-accent-text, var(--app-accent));
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: calc(0.07em + var(--track-bold));
  text-transform: uppercase;
}
.bento-read__head {
  font-family: var(--font-serif);
  font-size: 1.42rem;
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: calc(-0.01em + var(--track-serif));
  color: var(--ink);
}
.bento-read__body {
  font-family: var(--font-serif);
  font-size: 0.95rem;
  line-height: 1.62;
  letter-spacing: var(--track-serif);
  color: var(--feature-ink);
  max-width: 46ch;
}
.bento-read__controls {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 600;
}
.bento-read__controls b {
  padding: 3px 9px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--ink) 8%, transparent);
  color: var(--ink);
  font-weight: 650;
}
.bento-file {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  min-height: 0;
  padding: 14px 16px;
  border-radius: 16px;
  background: color-mix(in srgb, var(--ink) 4%, transparent);
}
.bento-file__doc {
  display: grid;
  place-items: center;
  width: 46px;
  height: 56px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--app-accent) 16%, transparent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--app-accent) 30%, transparent);
  color: var(--app-accent-text, var(--app-accent));
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: calc(0.04em + var(--track-bold));
}
.bento-file__text {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.bento-file__name {
  color: var(--ink);
  font-size: 0.98rem;
  font-weight: 700;
}
.bento-file__ways {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--muted);
  font-size: 0.84rem;
}
.bento-file__ways svg {
  width: 13px;
  height: 13px;
  fill: var(--app-accent);
}
@media (max-width: 620px) {
  .shot {
    grid-template-rows: auto auto;
    align-content: center;
  }
  .shot-caption {
    justify-self: start;
    margin-left: calc(18px + var(--shot-inset, 0) * (100% - 36px));
    width: calc(min(100%, 100vw - 26px) - (18px + var(--shot-inset, 0) * (100% - 36px)));
    max-width: calc(100vw - 44px);
    padding-top: 14px;
    text-align: left;
    text-wrap: pretty;
  }
  .shot-caption__icon {
    margin-left: 0;
    margin-right: auto;
  }
}
.shot[data-shot="B1"] { --shot-inset: 0.0192; }
.shot[data-shot="B10"] { --shot-inset: 0.0522; }
.shot[data-shot="B2"] { --shot-inset: 0.0192; }
.shot[data-shot="B3"] { --shot-inset: 0.0073; }
.shot[data-shot="B4"] { --shot-inset: 0.0499; }
.shot[data-shot="B5"] { --shot-inset: 0.0192; }
.shot[data-shot="B6"] { --shot-inset: 0.0073; }
.shot[data-shot="B7"] { --shot-inset: 0.0675; }
.shot[data-shot="B8"] { --shot-inset: 0.0073; }
.shot[data-shot="B9"] { --shot-inset: 0.0499; }
.shot[data-shot="C1"] { --shot-inset: 0.0192; }
.shot[data-shot="C10"] { --shot-inset: 0.0582; }
.shot[data-shot="C11"] { --shot-inset: 0.0582; }
.shot[data-shot="C2"] { --shot-inset: 0.0192; }
.shot[data-shot="C3"] { --shot-inset: 0.0073; }
.shot[data-shot="C4"] { --shot-inset: 0.0582; }
.shot[data-shot="C5"] { --shot-inset: 0.0582; }
.shot[data-shot="C6"] { --shot-inset: 0.0192; }
.shot[data-shot="C8"] { --shot-inset: 0.0073; }
.shot[data-shot="C9"] { --shot-inset: 0.0073; }
.shot[data-shot="E1"] { --shot-inset: 0.0192; }
.shot[data-shot="E10"] { --shot-inset: 0.0518; }
.shot[data-shot="E11"] { --shot-inset: 0.0518; }
.shot[data-shot="E3"] { --shot-inset: 0.0073; }
.shot[data-shot="E4"] { --shot-inset: 0.0518; }
.shot[data-shot="E6"] { --shot-inset: 0.0192; }
.shot[data-shot="E7"] { --shot-inset: 0.0192; }
.shot[data-shot="E8"] { --shot-inset: 0.0073; }
.shot[data-shot="E9"] { --shot-inset: 0.0073; }
.shot[data-shot="O1"] { --shot-inset: 0.0192; }
.shot[data-shot="O10"] { --shot-inset: 0.0675; }
.shot[data-shot="O11"] { --shot-inset: 0.0982; }
.shot[data-shot="O12"] { --shot-inset: 0.0553; }
.shot[data-shot="O13"] { --shot-inset: 0.0192; }
.shot[data-shot="O14"] { --shot-inset: 0.0553; }
.shot[data-shot="O15"] { --shot-inset: 0.0192; }
.shot[data-shot="O2"] { --shot-inset: 0.0192; }
.shot[data-shot="O3"] { --shot-inset: 0.0192; }
.shot[data-shot="O4"] { --shot-inset: 0.0073; }
.shot[data-shot="O5"] { --shot-inset: 0.0668; }
.shot[data-shot="O7"] { --shot-inset: 0.0073; }
.shot[data-shot="O8"] { --shot-inset: 0.0073; }
.shot[data-shot="O9"] { --shot-inset: 0.0499; }
.shot[data-shot="W1"] { --shot-inset: 0.0192; }
.shot[data-shot="W10"] { --shot-inset: 0.0073; }
.shot[data-shot="W2"] { --shot-inset: 0.0192; }
.shot[data-shot="W3"] { --shot-inset: 0.0073; }
.shot[data-shot="W5"] { --shot-inset: 0.0480; }
.shot[data-shot="W6"] { --shot-inset: 0.0480; }
.shot[data-shot="W7"] { --shot-inset: 0.0480; }
.shot[data-shot="W8"] { --shot-inset: 0.0192; }
.shot[data-shot="W9"] { --shot-inset: 0.0073; }
.prose--pricing {
  width: min(calc(100% - 40px), 980px);
}
.prose--pricing > :not(.pricing-cards) {
  max-width: 760px;
}
.prose--pricing .pricing-cards {
  display: grid;
  gap: 14px;
  margin: 34px 0 22px;
  padding: 0;
  list-style: none;
}
.pricing-card {
  --app-accent: var(--orbit);
  position: relative;
  display: grid;
  grid-template-columns: minmax(220px, 0.78fr) minmax(430px, 1.22fr);
  gap: 24px;
  align-items: center;
  padding: 18px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--app-accent) 20%, transparent);
  border-radius: 26px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--app-accent) var(--wash-a), transparent), color-mix(in srgb, var(--app-accent) var(--wash-b), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight), var(--raised-shadow);
  transition: border-color 200ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 200ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.prose--pricing .pricing-card {
  margin: 0;
  color: inherit;
}
.pricing-card:has(.pricing-card__app:hover) {
  border-color: color-mix(in srgb, var(--app-accent) 38%, var(--line));
  box-shadow: 0 2px 4px rgba(var(--shadow-rgb), 0.04), 0 18px 44px color-mix(in srgb, var(--app-accent) 10%, transparent);
}
.pricing-card--orbit { --app-accent: var(--orbit); }
.pricing-card--circle { --app-accent: var(--circle); --app-accent-text: var(--circle-text); }
.pricing-card--beacon { --app-accent: var(--beacon); }
.pricing-card--echo { --app-accent: var(--echo); }
.pricing-card--watchlist { --app-accent: var(--watchlist); --app-accent-text: var(--watchlist-text); }
.pricing-card--aurora { --app-accent: var(--aurora); }
.pricing-card__app {
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 0;
  padding: 8px 10px;
  border-radius: 18px;
  text-decoration: none;
}
.pricing-card__icon {
  flex: none;
  display: grid;
  width: 68px;
  height: 68px;
}
.pricing-card__icon img {
  grid-area: 1 / 1;
  width: 68px;
  height: 68px;
  border-radius: 22.4%;
  box-shadow: 0 10px 20px rgba(var(--shadow-rgb), 0.16), 0 2px 5px rgba(var(--shadow-rgb), 0.1);
  transition: transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.pricing-card__app:hover .pricing-card__icon img {
  transform: scale(1.045);
}
.pricing-card__identity {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.pricing-card__name {
  color: var(--ink);
  font-size: 1.28rem;
  font-weight: 760;
  letter-spacing: calc(-0.018em + var(--track-bold));
  line-height: 1.2;
}
.pricing-card__tagline {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.35;
  text-wrap: pretty;
}
.pricing-card__plans {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  min-width: 0;
  margin: 0;
}
.pricing-card__option {
  min-width: 0;
  padding: 15px 17px 16px;
  border: 1px solid color-mix(in srgb, var(--app-accent) 13%, var(--line));
  border-radius: 18px;
  background: color-mix(in srgb, var(--app-accent) 5%, var(--panel));
}
.pricing-card__option dt {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 760;
  letter-spacing: calc(0.085em + var(--track-bold));
  line-height: 1.2;
  text-transform: uppercase;
}
.pricing-card__option dd {
  margin: 0;
}
.pricing-card__price {
  margin-top: 6px !important;
  color: var(--ink);
  font-size: 1.45rem;
  font-variant-numeric: tabular-nums;
  font-weight: 780;
  letter-spacing: calc(-0.025em + var(--track-bold));
  line-height: 1.15;
  white-space: nowrap;
}
.pricing-card__price span:not([data-price]) {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 650;
  letter-spacing: var(--track-bold);
}
.pricing-card__detail {
  margin-top: 5px !important;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.38;
  text-wrap: pretty;
}
@media (max-width: 820px) {
  .pricing-card {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}
@media (max-width: 480px) {
  .pricing-card {
    padding: 14px;
    border-radius: 22px;
  }
  .pricing-card__plans {
    grid-template-columns: 1fr;
  }
}
.pricing__actions {
  display: grid;
  justify-items: center;
  gap: 14px;
  margin-top: 34px;
  text-align: center;
}
.pricing__requires {
  max-width: 46ch;
  margin: 0;
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.5;
  text-wrap: pretty;
}
.tier__badge {
  justify-self: start;
  margin: 0 0 10px;
  padding: 4px 11px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--app-accent) 15%, transparent);
  color: color-mix(in srgb, var(--app-accent-text, var(--app-accent)) 82%, var(--ink));
  font-size: 0.76rem;
  font-weight: 720;
  letter-spacing: calc(0.05em + var(--track-bold));
  text-transform: uppercase;
}
.tier--featured .tier__note {
  color: var(--feature-ink);
  font-size: 0.92rem;
  line-height: 1.5;
  text-wrap: pretty;
}
.shot-row--duo { align-items: flex-start; }
.duo-slide { flex: 0 0 auto; margin: 0; scroll-snap-align: start; }
.duo-slide .shot-caption { max-width: 34rem; padding-inline: 1rem; }
.duo-book {
  grid-area: 1 / 1;
  position: relative;
  display: block;
  width: calc(var(--shot-height) * 1.1885714286);
  height: var(--shot-height);
  perspective: 1100px;
  transform: scale(0.91);
  transform-origin: center center;
  filter: drop-shadow(0 12px 10px rgba(0, 0, 0, 0.16));
}
.duo-book.shot-img--dark {
  display: none;
}
.duo-book__leaf {
  position: absolute;
  top: 0;
  width: calc(50% + 1px);
  height: 100%;
  overflow: hidden;
  backface-visibility: hidden;
}
.duo-book__leaf--left {
  left: 0;
  transform-origin: calc(100% - 1px) center;
  transform: rotateY(25deg);
}
.duo-book__leaf--right {
  right: 0;
  transform-origin: 1px center;
  transform: rotateY(-25deg);
}
.duo-book__leaf img {
  position: absolute;
  top: 0;
  width: calc(var(--shot-height) * 1.1885714286);
  max-width: none;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.duo-book__leaf--left img { left: 0; }
.duo-book__leaf--right img { right: 0; }
.bento-styles {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  flex: 1;
  align-self: stretch;
  min-height: 0;
  margin: 0;
}
.bento-styles figure {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  gap: 8px;
  min-width: 0;
  margin: 0;
}
.bento-styles img {
  width: 100%;
  height: 100%;
  min-height: 150px;
  border-radius: 12px;
  -o-object-fit: cover;
  object-fit: cover;
}
.bento-styles figcaption {
  overflow: hidden;
  color: var(--feature-ink);
  font-size: 0.68rem;
  font-weight: 650;
  letter-spacing: calc(-0.015em + var(--track-bold));
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 560px) {
  .bento-styles {
    gap: 5px;
  }
  .bento-styles figcaption {
    font-size: 0.55rem;
    letter-spacing: calc(-0.03em + var(--track-bold));
  }
}
.app-teaser__media--panel {
  --media-ratio: 1.05;
}
.app-teaser--band .app-teaser__media--panel .app-teaser__main {
  inset: 0;
}
.app-teaser__media--panel .app-teaser__shot {
  filter: drop-shadow(0 18px 34px rgba(var(--shadow-rgb), 0.22)) drop-shadow(0 3px 8px rgba(var(--shadow-rgb), 0.12));
}
.app-teaser--band.app-teaser--desktop {
  --band-pad: clamp(32px, 4vw, 52px);
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  grid-template-areas: "copy .";
  align-content: center;
  aspect-ratio: 1200 / 680;
  min-width: 0;
  width: 100%;
  overflow: visible;
  isolation: isolate;
}
.app-teaser--desktop::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: linear-gradient(90deg, color-mix(in srgb, var(--surface) 62%, transparent) 0%, color-mix(in srgb, var(--surface) 30%, transparent) 38%, transparent 58%);
  pointer-events: none;
}
.app-teaser--desktop .app-teaser__media--desktop {
  position: absolute;
  inset: 0;
  z-index: -2;
  height: auto;
  padding: 0;
  border-radius: inherit;
  overflow: hidden;
}
.app-teaser--band.app-teaser--desktop .app-teaser__media--desktop .app-teaser__main {
  inset: 0;
}
.app-teaser--band.app-teaser--desktop .app-teaser__media--desktop .app-teaser__main .app-teaser__shot {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: right top;
  object-position: right top;
  filter: none;
}
@media (max-width: 900px) {
  .app-teaser--band.app-teaser--desktop {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "copy" "media";
    aspect-ratio: auto;
    overflow: hidden;
  }
  .app-teaser--desktop::before {
    display: none;
  }
  .app-teaser--desktop .app-teaser__media--desktop {
    position: relative;
    inset: auto;
    z-index: auto;
    aspect-ratio: 600 / 680;
    border-radius: 0;
    margin: 0 calc(-1 * var(--band-pad)) calc(-1 * var(--band-pad));
  }
}
.offer {
  --t: var(--app-accent, var(--ink));
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--t) 45%, transparent);
  border-radius: 28px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wash-a), transparent), color-mix(in srgb, var(--t) var(--wash-b), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight), var(--raised-shadow);
}
.offer__body {
  display: grid;
  align-content: center;
  padding: clamp(32px, 5vw, 56px);
}
.offer__label {
  margin: 0;
  color: var(--t);
  font-size: 0.78rem;
  font-weight: 720;
  letter-spacing: calc(0.12em + var(--track-bold));
  text-transform: uppercase;
}
.offer .offer__price {
  margin-top: 14px;
  font-size: clamp(3rem, 6vw, 4.4rem);
}
.offer__note {
  margin: 12px 0 0;
  color: var(--muted);
  font-size: 1rem;
}
.offer .offer__list {
  margin-top: 28px;
}
.offer__actions {
  display: grid;
  justify-items: start;
  gap: 14px;
  margin-top: 34px;
}
.offer__requires {
  margin: 0;
  color: var(--muted);
  font-size: 0.86rem;
  text-wrap: pretty;
}
.offer__art {
  position: relative;
  min-height: 100%;
  margin: 0;
}
.offer__art img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.offer__footnote {
  margin: 22px auto 0;
  text-align: center;
}
@media (max-width: 760px) {
  .offer {
    grid-template-columns: 1fr;
  }
  .offer__art {
    order: -1;
    min-height: 0;
    aspect-ratio: 16 / 9;
  }
}
.tiers--single {
  grid-template-columns: 1fr;
}
.tiers--three {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}
.pricing-card__plans--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 640px) {
  .pricing-card__plans--three {
    grid-template-columns: 1fr;
  }
}
.solar {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto 96px;
}
.solar__intro {
  max-width: 620px;
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 1.08rem;
  line-height: 1.5;
  text-wrap: pretty;
}
.solar__device {
  position: relative;
  margin: clamp(28px, 4vw, 48px) auto 0;
  max-width: 1100px;
  aspect-ratio: 2130 / 1420;
}
.solar__bezel {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.solar__screen {
  position: absolute;
  left: 9.4366%;
  top: 10.669%;
  width: 81.1268%;
  height: 78.662%;
  overflow: hidden;
  container-type: inline-size;
  background: #000;
}
.solar__frames,
.solar__set,
.solar__frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.solar__frames {
  z-index: 0;
}
.solar__menubar,
.solar__dock-row {
  z-index: 1;
}
.solar__frame {
  -o-object-fit: cover;
  object-fit: cover;
  opacity: 0;
}
.solar__frame:first-child {
  opacity: 1;
}
.solar__set[hidden] {
  display: none;
}
.solar__styles {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  gap: 2px;
  width: min(100%, 420px);
  margin: 0 auto 26px;
  padding: 3px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--ink) 8%, transparent);
}
.solar__style {
  padding: 8px 12px;
  border: 0;
  border-radius: 999px;
  background: none;
  color: var(--muted);
  font: inherit;
  font-size: 0.92rem;
  font-weight: 560;
  cursor: pointer;
}
.solar__style[aria-pressed="true"] {
  background: var(--panel);
  box-shadow: 0 1px 3px rgba(var(--shadow-rgb), 0.18);
  color: var(--ink);
  font-weight: 650;
}
.solar__style:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--app-accent) 40%, transparent);
  outline-offset: 3px;
}
.solar__menubar {
  position: absolute;
  inset: 0 0 auto;
  height: 2.14cqw;
  display: flex;
  align-items: center;
  gap: 1.15cqw;
  padding: 0 1.1cqw;
  color: #fff;
  font: 500 0.78cqw/1 -apple-system, BlinkMacSystemFont, "SF Pro Text", "Timeless Sans", system-ui, sans-serif;
  font-variation-settings: "STYL" 100;
  letter-spacing: var(--track);
  text-shadow: 0 0.03cqw 0.12cqw rgba(0, 0, 0, 0.3);
  transition: color 400ms ease;
}
.solar__screen[data-ink="dark"] .solar__menubar {
  color: rgba(0, 0, 0, 0.85);
  text-shadow: none;
}
.solar__menubar b {
  font-weight: 700;
}
.solar__status {
  display: flex;
  align-items: center;
  gap: 1cqw;
  margin-left: auto;
}
.solar__glyph {
  display: inline-block;
  width: 0.95cqw;
  height: 0.95cqw;
  background: currentColor;
  -webkit-mask: center / contain no-repeat;
  mask: center / contain no-repeat;
}
.solar__glyph--apple { -webkit-mask-image: url("assets/solar/glyphs/glyph-apple-logo.png"); mask-image: url("assets/solar/glyphs/glyph-apple-logo.png"); }
.solar__glyph--battery { width: 1.45cqw; -webkit-mask-image: url("assets/solar/glyphs/glyph-battery-100percent.png"); mask-image: url("assets/solar/glyphs/glyph-battery-100percent.png"); }
.solar__glyph--wifi { -webkit-mask-image: url("assets/solar/glyphs/glyph-wifi.png"); mask-image: url("assets/solar/glyphs/glyph-wifi.png"); }
.solar__glyph--search { width: 0.85cqw; -webkit-mask-image: url("assets/solar/glyphs/glyph-magnifyingglass.png"); mask-image: url("assets/solar/glyphs/glyph-magnifyingglass.png"); }
.solar__glyph--controls { -webkit-mask-image: url("assets/solar/glyphs/glyph-switch-2.png"); mask-image: url("assets/solar/glyphs/glyph-switch-2.png"); }
.solar__dock-row {
  position: absolute;
  inset: auto 0 0.4cqw;
  display: flex;
  justify-content: center;
}
.solar__dock {
  display: flex;
  align-items: center;
  gap: 0.14cqw;
  padding: 0.3cqw;
  border: 0.05cqw solid rgba(255, 255, 255, 0.4);
  border-radius: 1.5cqw;
  background: rgba(255, 255, 255, 0.24);
  box-shadow: inset 0 0.05cqw 0 rgba(255, 255, 255, 0.45), 0 0.5cqw 1.6cqw rgba(0, 0, 0, 0.18);
  backdrop-filter: blur(1.1cqw) saturate(1.6);
  -webkit-backdrop-filter: blur(1.1cqw) saturate(1.6);
  transition: background-color 400ms ease, border-color 400ms ease;
}
.solar__screen[data-appearance="dark"] .solar__dock {
  border-color: rgba(255, 255, 255, 0.16);
  background: rgba(30, 30, 34, 0.34);
  box-shadow: inset 0 0.05cqw 0 rgba(255, 255, 255, 0.16), 0 0.5cqw 1.6cqw rgba(0, 0, 0, 0.3);
}
.solar__icon {
  position: relative;
  display: block;
  width: 3cqw;
  height: 3cqw;
}
.solar__icon img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transition: opacity 400ms ease;
}
.solar__icon-dark,
.solar__screen[data-appearance="dark"] .solar__icon-light {
  opacity: 0;
}
.solar__screen[data-appearance="dark"] .solar__icon-dark {
  opacity: 1;
}
.solar__divider {
  width: 0.06cqw;
  height: 2.5cqw;
  margin: 0 0.35cqw;
  border-radius: 1px;
  background: rgba(255, 255, 255, 0.45);
}
.solar__controls {
  display: flex;
  align-items: center;
  gap: 16px;
  max-width: 760px;
  margin: 22px auto 0;
}
.solar__play {
  flex: none;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: var(--surface);
  color: var(--ink);
  cursor: pointer;
}
.solar__play svg {
  width: 18px;
  height: 18px;
}
.solar__play-play,
.solar__play[aria-pressed="false"] .solar__play-pause {
  display: none;
}
.solar__play[aria-pressed="false"] .solar__play-play {
  display: block;
}
.solar__track {
  position: relative;
  flex: 1;
  min-width: 0;
  display: flex;
}
.solar__range {
  flex: 1;
  min-width: 0;
  accent-color: var(--app-accent-text, var(--app-accent));
}
.solar__time {
  flex: none;
  width: 12em;
  white-space: nowrap;
  color: var(--muted);
  font-size: 0.95rem;
  font-variant-numeric: tabular-nums;
  text-align: right;
}
@media (max-width: 560px) {
  .solar__controls {
    flex-wrap: wrap;
  }
  .solar__range,
  .solar__track {
    flex: 1 1 0;
  }
  .solar__time {
    flex-basis: 100%;
    text-align: center;
  }
}
.prose--history {
  padding-bottom: 28px;
}
.prose--history .history-filter {
  justify-content: flex-start;
  margin-top: 26px;
}
.history-filter__chip[aria-current=true] {
  --wa: var(--wash-a);
  --wb: var(--wash-b);
  --e: 28%;
  color: var(--ink);
}
.history {
  display: grid;
  gap: 18px;
  width: min(calc(100% - 40px), 980px);
  margin: 0 auto;
  padding-bottom: 96px;
}
.history-app {
  --app-accent: var(--orbit);
  scroll-margin-top: 96px;
  padding: 26px 30px 30px;
  border: 1px solid color-mix(in srgb, var(--app-accent) 20%, transparent);
  border-radius: 26px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--app-accent) var(--wash-quiet-a), transparent), color-mix(in srgb, var(--app-accent) var(--wash-quiet-b), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight), var(--raised-shadow);
}
.history-app[hidden] {
  display: none;
}
.history-app--orbit { --app-accent: var(--orbit); }
.history-app--circle { --app-accent: var(--circle); --app-accent-text: var(--circle-text); }
.history-app--beacon { --app-accent: var(--beacon); }
.history-app--echo { --app-accent: var(--echo); }
.history-app--watchlist { --app-accent: var(--watchlist); --app-accent-text: var(--watchlist-text); }
.history-app--aurora { --app-accent: var(--aurora); }
.history-app__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid color-mix(in srgb, var(--app-accent) 14%, var(--line));
}
.history-app__identity {
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}
.history-app__icon {
  flex: none;
  display: grid;
  width: 60px;
  height: 60px;
}
.history-app__icon img {
  grid-area: 1 / 1;
  width: 60px;
  height: 60px;
  border-radius: 22.4%;
  box-shadow: 0 10px 20px rgba(var(--shadow-rgb), 0.16), 0 2px 5px rgba(var(--shadow-rgb), 0.1);
  transition: transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.history-app__identity:hover .history-app__icon img {
  transform: scale(1.045);
}
.history-app__name h2 {
  margin: 0;
  color: var(--ink);
  font-size: 1.5rem;
  font-weight: 760;
  letter-spacing: calc(-0.02em + var(--track-bold));
  line-height: 1.15;
}
.history-app__subtitle {
  color: var(--muted);
  font-size: 0.9rem;
}
.history-app__current {
  margin: 0;
  padding: 6px 13px;
  border: 1px solid color-mix(in srgb, var(--app-accent) 26%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--app-accent) 8%, var(--surface));
  color: var(--ink-soft);
  font-size: 0.84rem;
  font-weight: 620;
  font-variant-numeric: tabular-nums;
}
.history-release {
  padding-top: 22px;
  scroll-margin-top: 96px;
}
.history-release + .history-release {
  margin-top: 22px;
  border-top: 1px solid color-mix(in srgb, var(--app-accent) 14%, var(--line));
}
.history-release__head h3 {
  margin: 0;
  font-size: 1.12rem;
  font-weight: 740;
  letter-spacing: calc(-0.012em + var(--track-bold));
}
.history-release__head h3 a {
  color: var(--ink);
  text-decoration: none;
}
.history-release__head h3 a:hover {
  color: var(--app-accent-text, var(--app-accent));
}
.history-release__meta {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 0.86rem;
}
.history-release__intro {
  max-width: 680px;
  margin: 12px 0 0;
  color: var(--ink-soft);
  font-size: 1.02rem;
  line-height: 1.55;
  text-wrap: pretty;
}
.history-release--earlier > summary {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 2px 12px;
  cursor: pointer;
  list-style: none;
}
.history-release--earlier > summary::-webkit-details-marker {
  display: none;
}
.history-release--earlier > summary::after {
  content: "Show";
  margin-left: auto;
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 600;
}
.history-release--earlier[open] > summary::after {
  content: "Hide";
}
.history-groups {
  -moz-columns: 2 300px;
  columns: 2 300px;
  -moz-column-gap: 40px;
  column-gap: 40px;
  margin-top: 6px;
}
.history-group {
  -moz-column-break-inside: avoid;
  break-inside: avoid;
  padding-top: 20px;
}
.history-group h4 {
  margin: 0 0 8px;
  color: var(--app-accent-text, var(--app-accent));
  font-size: 0.74rem;
  font-weight: 720;
  letter-spacing: calc(0.12em + var(--track-bold));
  text-transform: uppercase;
}
.history-group ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.history-group li {
  position: relative;
  margin: 0 0 8px;
  padding-left: 16px;
  color: var(--ink-soft);
  font-size: 0.94rem;
  line-height: 1.5;
  text-wrap: pretty;
}
.history-group li::before {
  content: "";
  position: absolute;
  top: 0.62em;
  left: 2px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--app-accent) 70%, transparent);
}
.history-group li strong {
  color: var(--ink);
  font-weight: 650;
}
@media (max-width: 640px) {
  .history {
    width: min(calc(100% - 32px), 980px);
  }
  .history-app {
    padding: 20px 18px 22px;
    border-radius: 22px;
  }
  .history-app__icon,
  .history-app__icon img {
    width: 52px;
    height: 52px;
  }
}
.news-post__date {
  color: var(--muted);
}
.news-post__date::before {
  display: none;
}
.news-post__title a {
  color: inherit;
  text-decoration: none;
}
.news-post__title a:hover {
  color: var(--ink-soft);
}
.news-masthead + .news-post {
  margin-top: clamp(44px, 6vw, 64px);
}
.news-divider {
  display: block;
  height: 0;
  margin: 44px auto 52px;
  border: 0;
  border-top: 1px solid var(--line);
}
.news-earlier h2 {
  margin: 0 0 14px;
  font-size: 1.2rem;
}
.news-earlier ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.news-earlier li {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
}
.news-earlier li span {
  color: var(--muted);
  font-size: 0.88rem;
}
.news-post__figure {
  max-width: 920px;
  margin: 10px 0 0;
}
.news-post__figure img {
  width: 100%;
  height: auto;
}
.news-divider,
.news-earlier,
.news-post .article__head,
.news-post .article__body > :not(.news-flat, .news-animated, .news-film) {
  width: 100%;
  max-width: var(--page-measure);
  margin-inline: auto;
}
.news-post .article__body {
  width: 100%;
  max-width: none;
}
.news-post .article__body {
  font-size: 1.04rem;
}
.news-post .article__head {
  padding-bottom: 0;
}
.news-post .article__head > :last-child {
  margin-bottom: 0;
}
.news-index {
  padding-bottom: 40px;
}
.news-post .article__body p,
.news-post .article__body li,
.news-post .article__summary {
  text-wrap: wrap;
  line-height: 1.7;
}
.news-post .article__summary { line-height: 1.55; }
.news-post .article__body > p:first-child {
  color: var(--ink);
  font-size: 1.16rem;
}
.news-post {
  grid-template-columns: minmax(0, 1fr);
}
.themed-img,
.themed-img img {
  display: block;
  width: 100%;
  height: auto;
}
.news-flat {
  margin: 30px 0 34px;
}
.news-feature {
  width: 100%;
  margin: 22px 0 0;
}
.news-feature img {
  width: 100%;
  height: auto;
  border-radius: clamp(20px, 3vw, 32px);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--ink) 7%, transparent);
}
.news-feature figcaption {
  margin-top: 14px;
  color: var(--muted);
  font-size: 0.92rem;
  text-align: center;
}
.news-post .article__body > .news-devices {
  max-width: none;
  width: min(920px, 100vw - 40px);
  margin: 30px 0 36px;
  margin-inline: calc(50% - min(460px, 50vw - 20px));
}
.news-devices {
  display: grid;
  align-items: end;
  gap: clamp(10px, 2.4vw, 28px);
}
.news-devices__shot img {
  width: 100%;
  height: auto;
  filter: drop-shadow(0 14px 24px rgba(var(--shadow-rgb), 0.14));
}
.news-wallpapers {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px 14px;
  margin: 30px 0 34px;
}
.news-wallpapers__tile {
  margin: 0;
}
.news-wallpapers__tile img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 12px;
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--ink) 8%, transparent), 0 6px 16px rgba(var(--shadow-rgb, 19, 37, 66), 0.12);
}
.news-wallpapers__tile figcaption {
  margin-top: 8px;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 600;
}
.news-solar {
  width: auto;
  margin: 34px 0 40px;
}
.news-solar .solar__device {
  margin-top: 0;
}
@media (max-width: 860px) {
  .news-wallpapers { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .news-wallpapers { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 10px; }
}
:root {
  --page-measure: 760px;
  --text-measure: 600px;
  --page-top: 132px;
  --page-title-size: clamp(2.6rem, 5vw, 3.6rem);
}
.prose,
.news-page {
  padding-top: var(--page-top);
}
.prose h1,
.support-hero h1,
.news-masthead h1,
.news-post__title,
.article__head h1 {
  margin: 0 0 12px;
  font-size: var(--page-title-size);
  font-weight: 780;
  letter-spacing: calc(-0.03em + var(--track-bold));
  line-height: 1.04;
  text-wrap: balance;
}
.prose--pricing > :not(.pricing-cards) {
  max-width: var(--page-measure);
  margin-inline: auto;
}
.support-page--hub {
  padding-top: var(--page-top);
}
.support-hero {
  max-width: var(--page-measure);
  margin-inline: auto;
  padding: 0 0 12px;
  text-align: left;
}
.support-hero__lede {
  width: auto;
  margin: 0 0 28px;
}
.news-page {
  width: min(calc(100% - 40px), 1048px);
  margin: 0 auto;
  padding-bottom: 40px;
}
.news-masthead {
  max-width: var(--page-measure);
  margin: 0 auto;
  padding-bottom: clamp(40px, 6vw, 56px);
  border-bottom: 1px solid var(--line);
}
.news-masthead > p:not(.eyebrow) {
  margin: 0;
  color: var(--ink-soft);
  font-size: 1.08rem;
  line-height: 1.55;
}
.news-masthead__links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 22px;
  margin-top: 18px;
}
.news-post__date a {
  color: inherit;
  text-decoration: none;
}
.news-post__date a:hover {
  color: var(--ink);
}
.support-hero .support-search--hero {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}
.support-hero .chips {
  justify-content: flex-start;
}
.notfound {
  position: relative;
  display: grid;
  place-content: center;
  justify-items: center;
  min-height: 100vh;
  min-height: 100svh;
  padding: 112px 20px 32px;
  overflow-x: clip;
  overflow-y: visible;
  text-align: center;
}
.notfound__glow {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(84vw, 700px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: conic-gradient(from 210deg, var(--orbit), var(--circle), var(--echo), var(--watchlist), var(--aurora), var(--beacon), var(--orbit));
  filter: blur(90px);
  opacity: 0.2;
  transform: translate(-50%, -50%);
  animation: notfound-turn 40s linear infinite;
}
:root[data-theme=dark] .notfound__glow {
  opacity: 0.3;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .notfound__glow {
    opacity: 0.3;
  }
}
@keyframes notfound-turn {
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .notfound__glow {
    animation: none;
  }
}
.notfound__inner {
  position: relative;
  max-width: 640px;
}
.notfound .eyebrow {
  justify-content: center;
}
.notfound > .notfound__inner {
  margin-bottom: 0;
}
.newsflow .eyebrow::before {
  content: none;
}
.newsflow__art {
  width: 72px;
  height: 72px;
  margin: 0 auto 18px;
}
.notfound__code {
  margin: 0 0 6px;
  background: linear-gradient(120deg, var(--aurora), var(--orbit) 55%, var(--echo));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: clamp(5.5rem, 16vw, 9.5rem);
  font-weight: 800;
  letter-spacing: calc(-0.06em + var(--track-bold));
  line-height: 0.9;
}
.notfound h1 {
  margin: 0 0 14px;
  font-size: var(--page-title-size, clamp(2.6rem, 5vw, 3.6rem));
  font-weight: 780;
  letter-spacing: calc(-0.03em + var(--track-bold));
  line-height: 1.04;
  text-wrap: balance;
}
.notfound__lede {
  margin: 0 auto;
  max-width: 30em;
  color: var(--ink-soft);
  font-size: 1.12rem;
  text-wrap: balance;
}
.notfound__actions {
  justify-content: center;
  margin-top: 30px;
}
.notfound__apps {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 18px 22px;
  margin-top: 56px;
}
.notfound__app {
  display: grid;
  justify-items: center;
  gap: 8px;
  color: var(--ink-soft);
  font-size: 0.86rem;
  font-weight: 600;
  text-decoration: none;
  transition: transform 220ms cubic-bezier(0.3, 1.25, 0.5, 1), color 160ms ease;
}
.notfound__app img {
  width: 64px;
  height: 64px;
  border-radius: 15px;
  box-shadow: 0 1px 2px rgba(var(--shadow-rgb), 0.08), 0 8px 20px rgba(var(--shadow-rgb), 0.12);
}
.notfound__app:hover {
  color: var(--ink);
  transform: translateY(-3px);
}
@media (max-width: 860px) {
  .notfound {
    padding-top: 106px;
  }
}
@media (max-width: 560px) {
  .notfound__apps {
    display: grid;
    grid-template-columns: repeat(3, 76px);
    justify-content: center;
  }
}
.hero__film {
  margin: 18px 0 0;
}
.film-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 2px;
  border: 0;
  background: none;
  color: var(--ink);
  font: inherit;
  font-size: 1rem;
  font-weight: 620;
  cursor: pointer;
}
.film-link svg {
  width: 20px;
  height: 20px;
  transition: transform 160ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.film-link:hover svg {
  transform: scale(1.08);
}
.film-dialog {
  width: min(100vw - 48px, 1280px);
  max-width: none;
  padding: 0;
  border: 0;
  border-radius: clamp(14px, 2vw, 22px);
  background: #000;
  overflow: visible;
}
.film-dialog::backdrop {
  background: rgba(8, 10, 20, 0.82);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.film-link:focus,
.film-link:focus-visible,
.film-dialog,
.film-dialog:focus,
.film-dialog:focus-visible,
.film-dialog__video:focus,
.film-dialog__video:focus-visible,
.film-dialog__close:focus,
.film-dialog__close:focus-visible,
.news-film video:focus,
.news-film video:focus-visible,
.film-end__again:focus,
.film-end__again:focus-visible {
  outline: none;
}
.film-end {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: end center;
  padding-bottom: 9%;
  overflow: hidden;
  border-radius: inherit;
  background: #000;
}
.film-end[hidden] {
  display: none;
}
.film-end img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.film-end__again {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 50px;
  padding: 0 24px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 999px;
  background: rgba(20, 16, 40, 0.62);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  color: #fff;
  font: inherit;
  font-size: 1.05rem;
  font-weight: 650;
  cursor: pointer;
}
.film-end__again:hover {
  background: rgba(20, 16, 40, 0.78);
}
.film-end__again svg {
  width: 20px;
  height: 20px;
}
.film-dialog__video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  border-radius: inherit;
}
.film-dialog__close {
  position: absolute;
  top: -48px;
  right: 0;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}
.film-dialog__close:hover {
  background: rgba(255, 255, 255, 0.28);
}
.film {
  width: min(100% - 40px, 1080px);
  margin: 0 auto clamp(48px, 8vw, 96px);
}
.film .news-film {
  margin: 0;
}
.news-film {
  position: relative;
  margin: 30px 0 34px;
  overflow: hidden;
  border-radius: clamp(20px, 3vw, 32px);
  -webkit-mask-image: -webkit-radial-gradient(white, black);
}
.news-film video {
  display: block;
  width: 100%;
  height: auto;
}
.news-animated {
  margin: 34px 0 40px;
}
.news-animated img {
  display: block;
  width: 100%;
  height: auto;
}
.news-post__more {
  margin-top: 4px;
}
.prose,
.history,
.news-page,
.news-index {
  padding-bottom: 0;
}
.news-post .article__body > :last-child,
.prose > :last-child {
  margin-bottom: 0;
}
.news-masthead__links {
  gap: 8px;
  margin-top: 22px;
}
.news-masthead__chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.news-masthead__chip svg {
  width: 14px;
  height: 14px;
}
.news-masthead button.news-masthead__chip {
  font-family: inherit;
  line-height: inherit;
  cursor: pointer;
}
.news-signup {
  margin: 0;
  text-align: left;
}
.news-signup__label {
  display: block;
  margin: 0 0 8px;
  color: var(--ink);
  font-size: 0.95rem;
  font-weight: 650;
}
.news-signup__row {
  display: flex;
  gap: 10px;
}
.news-signup__input {
  flex: 1;
  min-width: 0;
  min-height: 48px;
  padding: 0 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--paper);
  color: var(--ink);
  font: inherit;
  font-size: 1rem;
}
.news-signup__input::-moz-placeholder {
  color: var(--muted);
}
.news-signup__input::placeholder {
  color: var(--muted);
}
.news-signup__input:focus {
  border-color: color-mix(in srgb, var(--app-accent, var(--ink)) 45%, transparent);
  outline: none;
}
.news-signup .button {
  flex: none;
  width: auto;
  min-height: 48px;
}
.news-signup__trap {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.news-signup__note {
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 0.85rem;
}
.newsflow .news-signup {
  max-width: 460px;
  margin: 28px auto 0;
}
.newsflow__note {
  max-width: 30em;
  margin: var(--space-5) auto 0;
  color: var(--muted);
  font-size: 0.9rem;
  text-wrap: balance;
}
.newsflow__note a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
@media (max-width: 480px) {
  .news-signup__row {
    flex-direction: column;
  }
}
.news-follow {
  width: min(100vw - 32px, 520px);
  padding: 30px 28px 28px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: var(--panel);
  color: var(--ink);
  box-shadow: 0 24px 60px rgba(var(--shadow-rgb), 0.22);
}
.news-follow::backdrop {
  background: rgba(16, 20, 40, 0.28);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}
.news-follow h2 {
  margin: 0 0 8px;
  font-size: 1.4rem;
  font-weight: 740;
  letter-spacing: calc(-0.02em + var(--track-bold));
}
.news-follow p {
  margin: 0 0 18px;
  color: var(--ink-soft);
}
.news-follow__url {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 6px 6px 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--paper);
}
.news-follow__url code {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  font-size: 0.9rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.news-follow__url .button {
  flex: none;
  width: auto;
  min-height: 38px;
  padding: 0 16px;
}
.news-follow__links {
  display: grid;
  margin-top: 16px;
}
.news-follow__close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 50%;
  background: var(--hover-wash, rgba(19, 37, 66, 0.06));
  color: var(--ink-soft);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}
.news-entry {
  margin-top: clamp(48px, 7vw, 72px);
}
.news-entry + .news-entry {
  padding-top: clamp(48px, 7vw, 72px);
  border-top: 1px solid var(--line);
}
.news-entry > :not(.news-entry__picture) {
  max-width: var(--page-measure);
  margin-inline: auto;
}
.news-entry__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 0;
  margin-bottom: 14px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 650;
  letter-spacing: calc(0.08em + var(--track-bold));
  text-transform: uppercase;
}
.news-entry__meta > * + *::before {
  content: "·";
  margin: 0 10px;
  color: color-mix(in srgb, var(--muted) 60%, transparent);
}
.news-entry__tag {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--ink-soft);
  text-decoration: none;
  transition: color 160ms ease;
}
.news-entry__tag img {
  width: 20px;
  height: 20px;
  border-radius: 5px;
}
.news-entry__tag:hover {
  color: var(--ink);
}
.news-entry__deck {
  margin: 0 0 6px;
  color: var(--ink-soft);
  font-size: clamp(1.08rem, 1.5vw, 1.2rem);
  line-height: 1.55;
}
.news-entry__picture {
  display: block;
  border-radius: clamp(20px, 3vw, 32px);
  transition: transform 260ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 260ms ease;
}
.news-entry__picture .news-feature {
  margin-top: 26px;
}
.news-entry__picture:hover {
  transform: translateY(-3px);
}
.news-entry__picture:hover img {
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--ink) 9%, transparent), var(--floating-shadow);
}
.news-entry__excerpt {
  margin-top: 30px;
  font-size: 1.04rem;
}
.news-entry__excerpt p {
  margin: 0;
  color: var(--ink);
  font-size: 1.12rem;
  line-height: 1.7;
}
.news-entry__more {
  margin-top: 18px;
}
.news-entry__more a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.news-entry__more a svg {
  transition: transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.news-entry__more a:hover svg {
  transform: translateX(4px);
}
.news-earlier {
  max-width: var(--page-measure);
  margin: clamp(56px, 8vw, 88px) auto 0;
  padding-top: 32px;
  border-top: 1px solid var(--line);
}
.news-earlier > h2 {
  margin: 0 0 8px;
  font-size: 1.3rem;
}
.news-earlier h3 {
  margin: 24px 0 6px;
  color: var(--muted);
  font-size: 0.78rem;
  letter-spacing: calc(0.08em + var(--track-bold));
  text-transform: uppercase;
}
.news-earlier ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.news-earlier li {
  display: grid;
  grid-template-columns: 7.5em minmax(0, 1fr);
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
}
.news-earlier li time {
  color: var(--muted);
  font-size: 0.9rem;
}
.news-earlier li a {
  color: var(--ink);
  font-weight: 620;
  text-decoration: none;
}
.news-earlier li a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
  .news-entry__picture,
  .news-entry__more a svg {
    transition: none;
  }
}
:root {
  --page-wide: 1120px;
}
.prose,
.history,
.news-page,
.support-page,
.support-page--article {
  width: min(calc(100% - 40px), var(--page-wide));
  margin-inline: auto;
}
.prose > * {
  max-width: var(--page-measure);
}
.prose--pricing > :not(.pricing-cards),
.support-hero,
.news-masthead,
.news-divider,
.news-earlier,
.news-post .article__head,
.news-post .article__body > :not(.news-flat, .news-animated),
.news-entry > :not(.news-entry__picture) {
  margin-inline: 0;
}
.prose--pricing .pricing-cards,
.prose--history .history-filter {
  max-width: none;
}
.news-masthead {
  max-width: none;
}
.news-masthead > p {
  max-width: var(--page-measure);
}
.prose:not(.prose--pricing):not(.prose--history) > *,
.news-masthead,
.news-divider,
.news-earlier,
.news-post .article__head,
.news-post .article__body > :not(.news-flat, .news-animated),
.news-entry > :not(.news-entry__picture) {
  margin-inline: auto;
}
.news-masthead {
  max-width: var(--page-measure);
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
}
.prose h1,
.support-hero h1,
.news-masthead h1,
.news-post__title {
  margin-bottom: var(--space-3);
}
.prose--history .history-filter,
.news-masthead__links,
.support-hero .support-search--hero {
  margin-top: var(--space-5);
}
.prose--history {
  padding-bottom: var(--space-7);
}
.support-hero {
  padding-bottom: 0;
}
.support-hero .chips {
  margin-bottom: 0;
}
.support-browse {
  margin-top: var(--space-7);
}
.news-masthead {
  padding-bottom: var(--space-7);
}
.news-entry {
  margin-top: var(--space-7);
}
.news-entry + .news-entry {
  margin-top: var(--space-8);
  padding-top: var(--space-8);
}
.news-feature,
.news-entry__picture .news-feature {
  margin-top: var(--space-6);
}
.news-flat,
.news-animated {
  margin: var(--space-6) 0;
}
.news-flat--steps {
  max-width: 560px;
  margin-inline: auto !important;
}
.news-flat--image img {
  width: 100%;
  height: auto;
}
.news-post .article__body h2 {
  margin: var(--space-7) 0 var(--space-3);
}
.news-post .article__body p,
.news-entry__excerpt p {
  margin: 0 0 var(--space-4);
}
.news-post .article__body {
  padding-top: var(--space-6);
}
.news-post__title,
.news-post .article__body h2,
.news-post .article__body h3 {
  font-family: var(--font-serif);
  font-weight: 600;
  text-wrap: balance;
}
.news-post__title,
.article__head .news-post__title {
  font-weight: 500;
  letter-spacing: calc(-0.012em + var(--track-serif));
  line-height: 1.06;
}
.news-post .article__body h2,
.news-post .article__body h3 {
  letter-spacing: calc(-0.01em + var(--track-serif));
}
.news-post .article__body p,
.news-post .article__body li,
.news-post .article__body blockquote,
.news-post .article__summary,
.news-entry__deck,
.news-entry__excerpt p {
  font-family: var(--font-serif);
  font-weight: 440;
  letter-spacing: var(--track-serif);
}
.news-post .article__body p,
.news-post .article__body li {
  font-size: 1.1rem;
  line-height: 1.66;
}
.news-post .article__body > p:first-child,
.news-post .article__summary {
  font-size: 1.24rem;
  line-height: 1.55;
}
.article__body > :is(p, ul, ol, blockquote, h2, h3, h4, .callout, .steps) {
  max-width: var(--text-measure);
}
.news-post .article__body > :is(p, ul, ol, blockquote, h2, h3, h4, .callout, .steps) {
  max-width: var(--text-measure);
}
@media (min-width: 820px) {
  .news-post .article__head {
    text-align: center;
  }
  .news-post .news-post__date {
    justify-content: center;
  }
  .news-post .article__summary {
    text-wrap: balance;
  }
}
@media (max-width: 819.98px) {
  .news-post .article__body > :is(p, ul, ol, blockquote, h2, h3, h4, .callout, .steps),
  .news-entry > .news-entry__excerpt {
    margin-left: 0;
  }
}
.prose--reading h1 {
  text-wrap: balance;
}
.prose--reading .prose__updated {
  margin-bottom: var(--space-6);
}
.prose.prose--reading > :is(p, ul:not([class]), ol:not([class]), h2, h3, .prose__note, .press-facts, .press-store, .press-quote):not(.eyebrow, .prose__updated) {
  max-width: var(--text-measure);
}
@media (min-width: 820px) {
  .prose--reading > :is(.eyebrow, h1, .prose__updated, h1 + p) {
    text-align: center;
  }
  .prose--reading > h1 + p {
    text-wrap: balance;
  }
  .prose--reading > .eyebrow,
  .prose--reading > .press-downloads {
    justify-content: center;
  }
}
@media (max-width: 819.98px) {
  .prose.prose--reading > :is(p, ul:not([class]), ol:not([class]), h2, h3, .prose__note, .press-facts, .press-store, .press-quote):not(.eyebrow, .prose__updated) {
    margin-left: 0;
  }
}
.prose--reading .pricing-preview p {
  flex: 1 1 320px;
  max-width: none;
}
.prose.prose--reading > .pricing-faq {
  display: grid;
  gap: var(--space-6) var(--space-7);
  max-width: calc(var(--page-measure) + var(--card-pad) * 2);
  margin-block: var(--space-7);
}
.pricing-faq__item h2 {
  margin: 0 0 var(--space-3);
}
.pricing-faq__item p {
  margin: 0;
}
.prose.prose--reading > :is(.pricing-faq__note, .pricing-faq__more) {
  color: var(--muted);
  font-size: 0.94rem;
}
@media (min-width: 820px) {
  .prose.prose--reading > .pricing-faq {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .prose.prose--reading > :is(.pricing-faq__note, .pricing-faq__more) {
    text-align: center;
    text-wrap: balance;
  }
}
@media (min-width: 820px) {
  .prose--history.prose--reading > * {
    margin-inline: auto;
  }
  .prose--history.prose--reading .history-filter {
    justify-content: center;
  }
}
.history-page .history {
  width: min(calc(100% - 40px), calc(var(--text-measure) + 62px));
}
.news-index .news-masthead > .eyebrow {
  padding-right: calc(24px - 0.14em);
}
@media (min-width: 820px) {
  .prose--reading > .eyebrow,
  .news-masthead > .eyebrow {
    padding-right: calc(24px - 0.14em);
  }
}
.news-masthead h1 {
  font-family: var(--font-serif);
  font-weight: 500;
  letter-spacing: calc(-0.012em + var(--track-serif));
}
.news-entry > .news-entry__excerpt {
  max-width: var(--text-measure);
}
@media (min-width: 820px) {
  .news-masthead,
  .news-entry > :not(.news-entry__picture, .news-entry__excerpt) {
    text-align: center;
  }
  .news-masthead > .eyebrow,
  .news-masthead__links,
  .news-entry__meta {
    justify-content: center;
  }
  .news-masthead > p:not(.eyebrow),
  .news-entry__deck {
    text-wrap: balance;
  }
}
.news-entry__excerpt {
  margin-top: var(--space-6);
}
.news-entry__more {
  margin-top: var(--space-4);
}
.news-index .news-masthead,
.news-index .news-entry > :not(.news-entry__picture),
.news-index .news-earlier {
  margin-inline: 0;
}
.news-index .news-masthead {
  max-width: none;
}
.news-index .news-masthead,
.news-index .news-entry > :not(.news-entry__picture),
.news-index .news-earlier,
.prose > *,
.prose--pricing > :not(.pricing-cards),
.support-hero {
  margin-inline: auto;
}
.news-index .news-masthead {
  max-width: var(--page-measure);
}
.prose--history .history-filter {
  max-width: var(--page-measure);
}
.prose.prose--history > *,
.prose:not(.prose--pricing):not(.prose--history) > * {
  max-width: var(--page-measure);
  margin-inline: auto;
}
.history {
  --history-pad: 30px;
  width: min(calc(100% - 40px), calc(var(--page-measure) + var(--history-pad) * 2));
  margin-inline: auto;
}
.history-groups {
  -moz-columns: 1;
  columns: 1;
}
.history-release__intro {
  max-width: none;
}
@media (max-width: 640px) {
  .history {
    --history-pad: 18px;
    width: min(calc(100% - 32px), calc(var(--page-measure) + var(--history-pad) * 2));
  }
}
.support-browse .section-head,
.support-feedback .section-head {
  max-width: var(--page-measure);
  margin: 0 auto var(--space-5);
}
.support-browse,
.support-feedback {
  margin-top: var(--space-8);
}
.support-tiles {
  margin-top: 0;
}
.help-cta {
  margin: var(--space-8) 0 0;
}
.support-page > .breadcrumb,
.support-collection {
  max-width: var(--page-measure);
  margin-inline: auto;
}
.support-page > .breadcrumb {
  margin-bottom: var(--space-5);
}
.support-collection {
  gap: 0;
  padding-bottom: 0;
}
.support-collection__icon {
  margin-bottom: var(--space-4);
}
.support-collection h1 {
  margin-bottom: var(--space-3);
}
.support-collection__lede {
  width: auto;
  margin: 0;
}
.support-collection .support-search {
  margin-top: var(--space-5);
}
.support-collection__actions {
  margin-top: var(--space-4);
}
.support-list {
  margin-top: var(--space-7);
}
.support-page--article {
  --doc-block: calc(var(--page-measure) + 232px + var(--space-8));
}
.support-page--article .support-bar,
.support-page--article .article,
.support-page--article .help-cta {
  max-width: var(--doc-block);
  margin-inline: auto;
}
.support-page--article .support-bar {
  margin-bottom: var(--space-6);
}
.support-page--article .support-bar .breadcrumb {
  margin-bottom: 0;
}
.support-page--article .article {
  grid-template-columns: minmax(0, var(--page-measure));
  -moz-column-gap: var(--space-8);
  column-gap: var(--space-8);
  justify-content: center;
}
.support-page--article .article__head,
.support-page--article .article__body,
.support-page--article .article-related {
  max-width: var(--page-measure);
}
.support-page--article .article__body {
  padding-top: var(--space-6);
}
.article-related {
  margin-top: var(--space-8);
  padding-top: var(--space-6);
}
@media (min-width: 1080px) {
  .support-page--article .article {
    grid-template-columns: minmax(0, var(--page-measure)) 232px;
    justify-content: space-between;
  }
}
.support-results__label {
  margin: 0;
  padding: var(--space-3) var(--space-4) var(--space-1);
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 650;
  letter-spacing: calc(0.08em + var(--track-bold));
  text-transform: uppercase;
}
.support-result--compact {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-4);
}
.support-result--compact .support-result__collection {
  flex: none;
  margin: 0;
}
.support-guides {
  margin-top: var(--space-8);
}
.support-guides .section-head {
  max-width: var(--page-measure);
  margin: 0 auto var(--space-5);
}
.support-guides__cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 860px) {
  .support-guides__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .support-guides__cards { grid-template-columns: minmax(0, 1fr); }
}
.support-page--article .article__head,
.support-page--article .article__body,
.support-page--article .article-related {
  grid-column: 1;
}
@media (min-width: 1080px) {
  .support-page--article .article:not(:has(.article-toc)) {
    grid-template-columns: minmax(0, var(--page-measure));
    justify-content: center;
  }
}
@media (min-width: 1080px) {
  .support-page--article:not(:has(.article-toc)) .support-bar,
  .support-page--article:not(:has(.article-toc)) .help-cta {
    max-width: var(--page-measure);
  }
}
:root {
  --card-pad: 30px;
  --page-cards: calc(var(--page-measure) + var(--card-pad) * 2);
}
.support-tiles,
.support-guides__cards,
.support-feedback__cards,
.support-list .article-cards,
.help-cta,
.prose--pricing .pricing-cards {
  max-width: var(--page-cards);
  margin-inline: auto;
}
.support-page--article .article-related {
  max-width: var(--page-measure);
}
@media (max-width: 640px) {
  :root { --card-pad: 18px; }
}
.support-tiles {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 860px) {
  .support-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.help-cta {
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-5);
  padding: var(--space-6) var(--card-pad);
}
.help-cta__actions {
  justify-content: flex-start;
}
.support-guides__cards .article-card,
.support-list .article-card,
.support-feedback__card {
  padding-inline: var(--card-pad);
}
.support-collection .support-search {
  width: 100%;
  max-width: none;
}
.support-collection__about {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: var(--space-2);
  white-space: nowrap;
}
.support-collection__about svg {
  transition: transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.support-collection__about:hover svg {
  transform: translateX(3px);
}
:root {
  --page-cards: 960px;
}
.support-guides__cards .article-card,
.support-list .article-card,
.support-feedback__card {
  padding-inline: 24px;
}
.help-cta {
  padding-inline: var(--space-6);
}
.help-cta,
.support-page--article .help-cta,
.support-page--article:not(:has(.article-toc)) .help-cta {
  max-width: var(--page-wide);
  margin-inline: auto;
}
.help-cta {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--space-5) var(--space-7);
  padding: var(--space-6) var(--space-7);
}
.help-cta__actions {
  justify-content: flex-end;
}
@media (max-width: 860px) {
  .help-cta {
    grid-template-columns: minmax(0, 1fr);
    padding: var(--space-6);
  }
  .help-cta__actions {
    justify-content: flex-start;
  }
}
body:has(main > .help-cta:last-child) .site-footer {
  margin-top: var(--space-6);
}
.support-page--hub .support-hero,
.support-page--hub .section-head,
.support-tiles,
.support-guides__cards,
.support-feedback__cards,
.support-page:not(.support-page--article) .help-cta,
.support-page > .breadcrumb,
.support-collection,
.support-list .article-cards {
  max-width: none;
  margin-inline: 0;
}
.support-hero .support-search--hero,
.support-collection .support-search {
  max-width: 720px;
}
.support-page--article {
  --doc-block: var(--page-wide);
}
.support-page--article .support-bar {
  align-items: flex-start;
}
.support-page--article .support-bar .breadcrumb {
  padding-top: 0;
}
@media (min-width: 1080px) {
  .support-page--article .article:not(:has(.article-toc)) {
    justify-content: start;
  }
  .support-page--article:not(:has(.article-toc)) .support-bar {
    max-width: var(--page-wide);
  }
}
.support-page--article .article {
  justify-content: start;
}
@media (min-width: 1080px) {
  .support-page--article .article:has(.article-toc) {
    justify-content: space-between;
  }
}
.app-teaser .eyebrow::before,
.app-themed .eyebrow::before,
.news-post__date::before {
  display: block;
}
.support-hero .support-search--hero,
.support-collection .support-search {
  width: 100%;
  max-width: none;
}
.article-side {
  display: contents;
}
.support-page--article .article__body > * {
  max-width: var(--text-measure);
}
@media (min-width: 1080px) {
  .support-page--article .article:has(.article-side) {
    grid-template-columns: minmax(0, var(--text-measure)) minmax(0, 1fr);
    -moz-column-gap: var(--space-8);
    column-gap: var(--space-8);
  }
  .support-page--article .article__head,
  .support-page--article .article__body {
    grid-column: 1;
  }
  .article-side {
    display: grid;
    gap: var(--space-5);
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: start;
    position: sticky;
    top: 104px;
  }
  .article-side > * {
    grid-column: auto;
    grid-row: auto;
  }
  .article-side .article-toc {
    position: static;
    width: auto;
  }
  .article-side .article-related {
    max-width: none;
    margin: 0;
    padding: 0;
    border: 0;
  }
  .article-side .article-related h2 {
    margin: 0 0 12px;
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 760;
    letter-spacing: calc(0.09em + var(--track-bold));
    text-transform: uppercase;
  }
  .article-side .article-related .article-cards {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }
  .support-page--article:has(.article-side) .support-bar {
    display: grid;
    grid-template-columns: minmax(0, var(--text-measure)) minmax(0, 1fr);
    -moz-column-gap: var(--space-8);
    column-gap: var(--space-8);
  }
  .support-page--article:has(.article-side) .support-bar .support-search {
    width: 100%;
    max-width: none;
  }
}
.news-index .news-entry__picture {
  max-width: var(--page-measure);
  margin-inline: auto;
}
.news-entry__more a {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  padding: 6px 6px 6px 18px;
  border: 1px solid color-mix(in srgb, var(--ink) 14%, transparent);
  border-radius: 999px;
  background:
    linear-gradient(var(--control-wash-direction), color-mix(in srgb, var(--ink) var(--wash-quiet-a), transparent), color-mix(in srgb, var(--ink) var(--wash-quiet-b), transparent)),
    var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight-soft);
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 650;
  text-decoration: none;
  transition: border-color 180ms ease, box-shadow 180ms ease;
}
.news-entry__arrow {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--ink);
  color: var(--paper);
}
.news-entry__arrow svg {
  width: 13px;
  height: 13px;
  transition: transform 220ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.news-entry__more a:hover {
  border-color: color-mix(in srgb, var(--ink) 32%, transparent);
  box-shadow: inset 0 1px 0 var(--highlight-soft), var(--raised-shadow);
}
.news-entry__more a:hover svg {
  transform: translateX(2px);
}
.news-entry__more {
  margin-top: var(--space-5);
}
.release-label {
  order: 1;
  flex-basis: 100%;
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-1);
  color: var(--ink-soft);
  font-size: 0.86rem;
  font-weight: 500;
}
.release-label::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  opacity: 0.6;
}
.detail__actions .release-label {
  margin-top: var(--space-4);
}
.pricing-preview {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4) var(--space-6);
  max-width: var(--page-cards);
  margin: var(--space-4) auto 0;
  padding: var(--space-5) var(--space-6);
  border: 1px dashed color-mix(in srgb, var(--ink) 20%, transparent);
  border-radius: 20px;
}
.pricing-preview p {
  margin: 0;
  max-width: 600px;
  color: var(--ink-soft);
  font-size: 0.96rem;
  line-height: 1.55;
}
.pricing-preview strong {
  color: var(--ink);
}
.support-collection__status {
  margin: var(--space-3) 0 0;
  color: var(--muted);
  font-size: 0.94rem;
}
[hidden] {
  display: none !important;
}
.prose--pricing > .pricing-preview {
  max-width: var(--page-cards);
  margin: var(--space-4) auto var(--space-6);
}
.hero__news {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: var(--space-5);
  padding: 5px 14px 5px 5px;
  border: 1px solid color-mix(in srgb, var(--ink) 14%, transparent);
  border-radius: 999px;
  color: var(--ink-soft);
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
  transition: border-color 160ms ease, color 160ms ease;
}
.hero__news span {
  padding: 3px 10px;
  border-radius: 999px;
  background: var(--ink);
  color: var(--paper);
  font-size: 0.78rem;
}
.hero__news:hover {
  border-color: color-mix(in srgb, var(--ink) 32%, transparent);
  color: var(--ink);
}
.hero-scene--trio .hero-scene__device--mac { z-index: 2; left: 21.6%; width: 49%; }
.hero-scene--trio .hero-scene__device--ipad { z-index: 3; right: 9.4%; width: 28%; }
.hero-scene--trio .hero-scene__device--iphone { z-index: 4; left: 16.1%; width: 10%; }
@media (min-width: 701px) {
  .hero.hero--launch {
    --hero-top: clamp(96px, 13vh, 128px);
    --hero-gap: clamp(28px, 4vh, 48px);
    padding: var(--hero-top) 0 100px;
  }
  .hero.hero--launch .hero__inner {
    min-height: calc(100svh - var(--hero-top) - 100px);
    align-content: center;
  }
  .hero-scene.hero-scene--trio {
    --scene-w: min(100vw - 96px, 1600px, calc(max(260px, 100svh - var(--hero-top) - var(--hero-gap) - 400px) * 2.8));
    order: -1;
    width: var(--scene-w);
    max-width: none;
    margin: 0 calc((100% - var(--scene-w)) / 2);
    justify-self: center;
  }
  .hero.hero--launch .hero__text {
    margin-top: var(--hero-gap);
  }
}
.hero--launch {
  --sky-1: 154, 64, 198;
  --sky-2: 58, 99, 216;
  --sky-3: 40, 180, 170;
  --sky-4: 222, 92, 168;
  --sky-strength: 1;
  isolation: isolate;
}
.hero--sky-orbit { --sky-1: 37, 74, 168; --sky-2: 72, 140, 230; --sky-3: 40, 170, 190; --sky-4: 120, 96, 220; }
.hero--sky-circle { --sky-1: 214, 150, 60; --sky-2: 230, 110, 90; --sky-3: 235, 190, 80; --sky-4: 210, 100, 140; }
.hero--sky-beacon { --sky-1: 61, 74, 158; --sky-2: 130, 100, 220; --sky-3: 70, 130, 230; --sky-4: 190, 110, 200; }
.hero--sky-echo { --sky-1: 46, 140, 140; --sky-2: 70, 170, 120; --sky-3: 60, 130, 200; --sky-4: 120, 200, 180; }
.hero--sky-watchlist { --sky-1: 230, 40, 50; --sky-2: 245, 110, 80; --sky-3: 245, 160, 60; --sky-4: 225, 80, 140; }
.hero--launch::before,
.hero--launch::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
}
.hero--launch::before {
  inset: -18% -25% 38%;
  background:
    radial-gradient(32% 42% at 24% 52%, rgba(var(--sky-1), calc(0.16 * var(--sky-strength))), transparent 70%),
    radial-gradient(30% 38% at 52% 40%, rgba(var(--sky-2), calc(0.13 * var(--sky-strength))), transparent 70%),
    radial-gradient(30% 42% at 78% 56%, rgba(var(--sky-3), calc(0.13 * var(--sky-strength))), transparent 70%);
  filter: blur(30px);
  animation: aurora-sky 28s ease-in-out infinite alternate;
}
.hero--launch::after {
  inset: 4% -30% 52%;
  background: linear-gradient(100deg, transparent 18%, rgba(var(--sky-4), calc(0.10 * var(--sky-strength))) 38%, rgba(var(--sky-1), calc(0.12 * var(--sky-strength))) 50%, rgba(var(--sky-3), calc(0.10 * var(--sky-strength))) 64%, transparent 84%);
  border-radius: 50%;
  filter: blur(46px);
  animation: aurora-ribbon 36s ease-in-out infinite alternate;
}
.hero-scene--trio .hero-scene__glow {
  background: conic-gradient(from 210deg, rgb(var(--sky-1)), rgb(var(--sky-2)), rgb(var(--sky-3)), rgb(var(--sky-4)), rgb(var(--sky-1)));
  animation: aurora-glow 40s linear infinite;
}
:root[data-theme=dark] .hero--launch {
  --sky-strength: 1.9;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .hero--launch {
    --sky-strength: 1.9;
  }
}
@keyframes aurora-sky {
  0% { transform: translate3d(-4%, 0, 0) scale(1); opacity: 0.8; }
  50% { transform: translate3d(2%, 3%, 0) scale(1.08); opacity: 1; }
  100% { transform: translate3d(5%, -2%, 0) scale(1.02); opacity: 0.85; }
}
@keyframes aurora-ribbon {
  0% { transform: translate3d(-8%, 0, 0) rotate(-4deg) scaleY(0.9); opacity: 0.6; }
  50% { transform: translate3d(0, 6%, 0) rotate(2deg) scaleY(1.15); opacity: 1; }
  100% { transform: translate3d(8%, -2%, 0) rotate(-1deg) scaleY(1); opacity: 0.75; }
}
@keyframes aurora-glow {
  to { transform: rotate(1turn); }
}
@media (prefers-reduced-motion: reduce) {
  .hero--launch::before,
  .hero--launch::after,
  .hero-scene--trio .hero-scene__glow {
    animation: none;
  }
}
@media (max-width: 700px) {
  .hero-scene.hero-scene--trio {
    aspect-ratio: 1.7;
    margin-top: 36px;
  }
  .hero-scene--trio .hero-scene__device--mac { left: 11%; width: 78%; }
  .hero-scene--trio .hero-scene__device--ipad { left: auto; right: 0; width: 46%; }
  .hero-scene--trio .hero-scene__device--iphone { left: 0; right: auto; width: 18%; }
}
.app-teasers__divider {
  margin-top: var(--space-9);
}
[style="--m:var(--st-all)"] { --m:var(--st-all) !important; }
[style="--m:var(--st-done)"] { --m:var(--st-done) !important; }
[style="--m:var(--st-project)"] { --m:var(--st-project) !important; }
[style="--m:var(--st-today)"] { --m:var(--st-today) !important; }
[style="--m:var(--st-week)"] { --m:var(--st-week) !important; }
[style="--p:0.3"] { --p:0.3 !important; }
[style="--p:0.8"] { --p:0.8 !important; }
[style="--p:1"] { --p:1 !important; }
[style="--w:40%"] { --w:40% !important; }
[style="--w:45%"] { --w:45% !important; }
[style="--w:50%"] { --w:50% !important; }
[style="--w:55%"] { --w:55% !important; }
[style="--w:60%"] { --w:60% !important; }
[style="--w:62%"] { --w:62% !important; }
[style="--w:66%"] { --w:66% !important; }
[style="--w:70%"] { --w:70% !important; }
[style="--w:75%"] { --w:75% !important; }
[style="--w:84%"] { --w:84% !important; }
[style="--w:85%"] { --w:85% !important; }
[style="--w:90%"] { --w:90% !important; }
[style="--w:92%"] { --w:92% !important; }
[style="--w:95%"] { --w:95% !important; }
[style="justify-self:start"] { justify-self:start !important; }
[style="width:38%"] { width:38% !important; }
.button--store[data-coming-soon] {
  cursor: default;
}
.button--store[data-coming-soon]:hover {
  transform: none;
}
.news-empty {
  position: relative;
  isolation: isolate;
  max-width: var(--page-measure);
  margin: var(--space-7) auto 0;
  padding: var(--space-8) var(--space-5) var(--space-9);
  text-align: center;
}
.news-empty__glow {
  position: absolute;
  z-index: -1;
  top: 42%;
  left: 50%;
  width: min(80vw, 460px);
  aspect-ratio: 1.5;
  border-radius: 50%;
  background: conic-gradient(from 200deg, var(--orbit), var(--aurora), var(--circle), var(--echo), var(--orbit));
  filter: blur(80px);
  opacity: 0.16;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
:root[data-theme=dark] .news-empty__glow {
  opacity: 0.26;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .news-empty__glow {
    opacity: 0.26;
  }
}
.news-empty__art {
  display: block;
  width: 84px;
  height: 84px;
  margin: 0 auto var(--space-5);
}
.news-empty__title {
  margin: 0 0 var(--space-3);
  font-size: clamp(1.6rem, 3.2vw, 2.1rem);
  font-weight: 760;
  letter-spacing: calc(-0.025em + var(--track-bold));
  line-height: 1.1;
  text-wrap: balance;
}
.news-empty__text {
  max-width: 26em;
  margin: 0 auto;
  color: var(--ink-soft);
  font-size: 1.08rem;
  text-wrap: balance;
}
.prose--pricing {
  --pricing-pad: 30px;
}
.prose--pricing .pricing-cards,
.prose--pricing > .pricing-preview {
  max-width: calc(var(--page-measure) + var(--pricing-pad) * 2);
  margin-inline: auto;
}
@media (max-width: 720px) {
  .prose--pricing {
    --pricing-pad: 18px;
  }
}
.pricing-card__plans:has(> .pricing-card__option:only-child) {
  grid-template-columns: minmax(0, 280px);
  justify-content: end;
}
@media (max-width: 860px) {
  .pricing-card__plans:has(> .pricing-card__option:only-child) {
    grid-template-columns: 1fr;
  }
}
.news-index .news-masthead {
  max-width: var(--page-wide);
  text-align: center;
  padding-top: var(--space-7);
  padding-bottom: 0;
  border-bottom: 0;
}
.news-index .news-masthead > .eyebrow {
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto var(--space-6);
}
.news-index .news-masthead h1 {
  font-family: var(--font-serif);
  font-optical-sizing: auto;
  font-kerning: normal;
  font-weight: 400;
  font-size: clamp(6.5rem, 20vw, 17rem);
  line-height: 0.8;
  letter-spacing: -0.045em;
  margin: 0 auto;
  padding-bottom: 0.06em;
  text-indent: -0.03em;
}
.news-index .news-masthead > p:not(.eyebrow) {
  max-width: 46ch;
  margin: var(--space-5) auto 0;
  color: var(--muted);
  font-family: var(--font-serif);
  font-style: italic;
  font-size: clamp(1.15rem, 1.6vw, 1.4rem);
  line-height: 1.45;
  letter-spacing: 0;
  text-wrap: balance;
}
.news-index .news-masthead__links {
  justify-content: center;
  margin-top: var(--space-6);
}
.news-index .news-masthead::after {
  content: "";
  display: block;
  width: min(100%, var(--page-wide));
  height: 1px;
  margin: var(--space-8) auto 0;
  background: linear-gradient(90deg,
    transparent,
    color-mix(in srgb, currentColor 22%, transparent) 18%,
    color-mix(in srgb, currentColor 22%, transparent) 82%,
    transparent);
}
.news-index .news-entry:not(.news-entry ~ .news-entry) .news-post__title {
  font-size: clamp(2.4rem, 4.6vw, 3.6rem);
  line-height: 1.04;
  letter-spacing: -0.02em;
  text-wrap: balance;
}
.news-nameplate {
  --bar-gap: 10px;
  --header-bottom: 80px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  -moz-column-gap: var(--space-5);
  column-gap: var(--space-5);
  position: relative;
  left: 50%;
  translate: -50% 0;
  width: var(--header-width, min(100vw - 32px, 1162px));
  margin: calc(var(--header-bottom) + var(--bar-gap) - var(--page-top)) 0 0;
  padding: var(--space-3) 9px var(--space-4) 21px;
  background: linear-gradient(90deg,
    transparent,
    color-mix(in srgb, currentColor 22%, transparent) 12%,
    color-mix(in srgb, currentColor 22%, transparent) 88%,
    transparent) bottom / 100% 1px no-repeat;
}
.news-nameplate__title {
  color: var(--ink);
  font-family: var(--font-serif);
  font-optical-sizing: auto;
  font-kerning: normal;
  font-weight: 400;
  font-size: clamp(2.6rem, 4vw, 3.4rem);
  line-height: 0.9;
  letter-spacing: -0.035em;
  text-decoration: none;
  translate: 0 -0.055em;
  transition: opacity 160ms ease;
}
.news-nameplate__title:hover {
  opacity: 0.72;
}
.news-nameplate__links {
  justify-content: flex-end;
  margin: 0;
}
.news-nameplate + .news-post {
  margin-top: calc(var(--space-8) + var(--space-3));
}
@media (max-width: 860px) {
  .news-nameplate {
    --header-bottom: 74px;
    --header-width: calc(100vw - 24px);
  }
}
@media (max-width: 760px) {
  .news-nameplate {
    grid-template-columns: 1fr;
    row-gap: var(--space-3);
    padding-inline: var(--space-4);
    text-align: center;
  }
  .news-nameplate__links {
    justify-content: center;
  }
}
.news-index .news-entry > :not(.news-entry__picture, .news-entry__excerpt),
.news-post .article__head {
  text-align: center;
}
.news-index .news-entry__meta,
.news-post .news-post__meta {
  justify-content: center;
}
.news-post .news-post__meta {
  margin-bottom: var(--space-3);
}
@media (min-width: 861px) {
  .site-header {
    width: min(100% - 32px, 1162px);
  }
  .hero__inner,
  .intro,
  .request,
  .site-footer,
  .apps,
  .subhero,
  .detail,
  .features,
  .craft,
  .shots__head,
  .pricing,
  .faq,
  .shot-rail__head,
  .shot-nav,
  .prose,
  .news-page,
  .support-page,
  .support-page--article {
    width: min(100% - 74px, var(--page-wide, 1120px));
  }
  .shot-row {
    padding-inline: max(37px, calc((100% - 1120px) / 2));
    scroll-padding-left: max(37px, calc((100% - 1120px) / 2));
  }
}
@media (min-width: 1080px) {
  .support-page--article .article:has(.article-side),
  .support-page--article:has(.article-side) .support-bar {
    -moz-column-gap: var(--space-6);
    column-gap: var(--space-6);
  }
  .article-side .article-toc {
    padding-inline: 20px;
  }
}
@media (max-width: 1079px) {
  .article-side .article-toc {
    display: block;
    position: static;
    grid-column: 1;
    grid-row: 2;
    width: auto;
    max-width: var(--page-measure);
    margin: 0 0 var(--space-6);
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
  }
  .article-side .article-toc__title {
    margin-bottom: var(--space-3);
  }
  .article-side .article-toc ol {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
  }
  .article-side .article-toc li {
    margin: 0;
  }
  .article-side .article-toc a {
    margin: 0;
    padding: 7px 14px;
    border: 1px solid color-mix(in srgb, var(--ink) 14%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--ink) 4%, transparent);
    font-size: 0.86rem;
  }
  .article-side .article-toc a:hover {
    border-color: color-mix(in srgb, var(--ink) 26%, transparent);
  }
}
@media (min-width: 1080px) {
  .article-side {
    display: contents;
  }
  .support-page--article .article:has(.article-side) .article__head {
    grid-row: 1;
  }
  .support-page--article .article:has(.article-side) .article__body {
    grid-row: 2;
  }
  .article-pin {
    grid-column: 2;
    grid-row: 1 / span 3;
    align-self: start;
    position: sticky;
    top: 104px;
    padding: 20px;
    --t: var(--ink);
    --wa: var(--wash-quiet-a);
    --wb: var(--wash-quiet-b);
    --et: var(--ink);
    --e: var(--edge-quiet);
    border: 1px solid color-mix(in srgb, var(--et) var(--e), transparent);
    border-radius: 20px;
    background:
      linear-gradient(180deg, color-mix(in srgb, var(--t) var(--wa), transparent), color-mix(in srgb, var(--t) var(--wb), transparent)),
      var(--surface);
    box-shadow: inset 0 1px 0 var(--highlight-soft);
  }
  .article-pin .article-toc {
    display: block;
    position: static;
    width: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
  }
  .article-pin .article-toc--related {
    margin-top: var(--space-4);
    padding-top: var(--space-4);
    border-top: 1px solid var(--line);
  }
  .article-pin .article-toc:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
  }
  .article-toc--related ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .article-side .article-related {
    grid-column: 1;
    grid-row: 3;
    max-width: var(--text-measure);
    margin-top: var(--space-8);
    padding-top: var(--space-6);
    border-top: 1px solid var(--line);
  }
  .article-side .article-related .article-cards {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: var(--space-3);
  }
  .support-page--article:has(.article-side) .support-bar {
    align-items: center;
  }
}
@media (max-width: 1079px) {
  .article-pin {
    display: contents;
  }
  .article-side .article-toc--related {
    display: none;
  }
}
@media (min-width: 701px) {
  .support-page--article .support-bar {
    align-items: center;
  }
}
.preview-cards {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
  min-width: 0;
}
.preview-card {
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-width: 0;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--ink) var(--edge-quiet), transparent);
  border-radius: 22px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--ink) var(--wash-quiet-a), transparent), color-mix(in srgb, var(--ink) var(--wash-quiet-b), transparent)), var(--surface);
  box-shadow: inset 0 1px 0 var(--highlight);
  transition: border-color 200ms cubic-bezier(0.2, 0.65, 0.2, 1), box-shadow 200ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.preview-card:hover {
  border-color: color-mix(in srgb, var(--app-accent) 32%, transparent);
  box-shadow: inset 0 1px 0 var(--highlight), var(--raised-shadow);
}
.preview-card a {
  color: inherit;
  text-decoration: none;
}
.preview-card__link {
  display: grid;
  justify-items: center;
  gap: 4px;
  padding: 22px 20px 12px;
  text-align: center;
}
.preview-card__icon,
.preview-card__icon img {
  width: 52px;
  height: 52px;
}
.preview-card__icon {
  margin-bottom: 10px;
}
.preview-card__name {
  color: var(--app-accent-text, var(--app-accent));
  font-size: 0.9rem;
  font-weight: 720;
}
.preview-card__title {
  font-size: 1.12rem;
  font-weight: 720;
  line-height: 1.2;
  letter-spacing: calc(-0.01em + var(--track-bold));
  text-wrap: balance;
}
.preview-card__shot {
  display: block;
  align-self: end;
  height: 190px;
  margin-top: 6px;
  padding: 0 24%;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(180deg, #000 70%, transparent);
  mask-image: linear-gradient(180deg, #000 70%, transparent);
}
.preview-card__shot .app-teaser__shot {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.preview-card__apply {
  display: block;
  padding: 12px 20px 16px;
  border-top: 1px solid var(--line);
  font-size: 0.92rem;
  font-weight: 680;
  text-align: center;
}
.preview-card__apply::after {
  content: " \203A";
}
.preview-card__apply:hover {
  color: var(--app-accent-text, var(--app-accent));
}
@media (max-width: 1180px) {
  .preview-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .preview-cards {
    display: flex;
    gap: 12px;
    margin-inline: calc(50% - 50vw);
    padding: 2px calc(50vw - 50%) 8px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 14px;
    scrollbar-width: none;
  }
  .preview-cards::-webkit-scrollbar {
    display: none;
  }
  .preview-card {
    flex: 0 0 min(66vw, 260px);
    scroll-snap-align: start;
  }
}
.store-badge {
  display: inline-flex;
  align-items: center;
  flex: none;
  border-radius: 9px;
  line-height: 0;
  transition: opacity 160ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 220ms cubic-bezier(0.3, 1.25, 0.5, 1);
}
.store-badge:hover {
  opacity: 0.86;
}
.store-badge:active {
  transform: scale(0.97);
}
.store-badge:focus-visible {
  outline: 2px solid var(--logo-blue);
  outline-offset: 3px;
}
.store-badge__img {
  width: auto;
  height: 50px;
}
.button:has(~ .store-badge),
.store-badge ~ .button {
  width: auto;
  min-width: 150px;
  padding-inline: 16px;
}
.store-badge__img--dark {
  display: none;
}
:root[data-theme=dark] .store-badge__img--light {
  display: none;
}
:root[data-theme=dark] .store-badge__img--dark {
  display: block;
}
@media (prefers-color-scheme: dark) {
  :root[data-theme=auto] .store-badge__img--light,
  :root:not([data-theme]) .store-badge__img--light {
    display: none;
  }
  :root[data-theme=auto] .store-badge__img--dark,
  :root:not([data-theme]) .store-badge__img--dark {
    display: block;
  }
}
.button--store {
  border-radius: 10.5px;
}
.button--store > span {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
}
.button--store > span small {
  order: 0;
}
.feature-cards--two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 560px) {
  .feature-cards--two {
    grid-template-columns: 1fr;
  }
}
.app-teaser__media.band-gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: center;
  gap: clamp(10px, 1.2vw, 16px);
  height: auto;
  padding-bottom: 0;
  aspect-ratio: 1.45;
}
.band-gallery__tile {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border-radius: clamp(10px, 1.2vw, 16px);
  box-shadow: inset 0 1px 0 var(--highlight), 0 10px 28px rgba(var(--shadow-rgb), 0.16), 0 2px 6px rgba(var(--shadow-rgb), 0.08);
}
.band-gallery__tile img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.band-gallery__name {
  position: absolute;
  left: 10px;
  bottom: 9px;
  padding: 3px 9px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--surface) 76%, transparent);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  color: var(--ink);
  font-size: 0.72rem;
  font-weight: 680;
}
.hero__price {
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 0.95rem;
}
.store-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: calc(16px + env(safe-area-inset-bottom));
  z-index: 40;
  display: flex;
  align-items: center;
  gap: 18px;
  width: -moz-max-content;
  width: max-content;
  max-width: calc(100% - 28px);
  margin-inline: auto;
  padding: 8px 8px 8px 12px;
  border: 1px solid var(--glass-border);
  border-radius: 18px;
  background: var(--glass-bg);
  -webkit-backdrop-filter: blur(20px) saturate(1.6);
  backdrop-filter: blur(20px) saturate(1.6);
  box-shadow: var(--floating-shadow);
  opacity: 0;
  transform: translateY(24px);
  pointer-events: none;
  transition: opacity 220ms cubic-bezier(0.2, 0.65, 0.2, 1), transform 320ms cubic-bezier(0.2, 0.65, 0.2, 1);
}
.store-bar.is-shown {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}
.store-bar__app {
  display: flex;
  align-items: center;
  gap: 10px;
}
.store-bar__icon {
  width: 36px;
  height: 36px;
  border-radius: 22.4%;
}
.store-bar__text {
  display: grid;
  line-height: 1.2;
}
.store-bar__text strong {
  font-size: 0.95rem;
}
.store-bar__price {
  color: var(--muted);
  font-size: 0.8rem;
}
.store-bar .store-badge__img {
  height: 40px;
}
@media (prefers-reduced-motion: reduce) {
  .store-bar {
    transition: opacity 120ms linear;
    transform: none;
  }
}
@media (max-width: 560px) {
  .family .feature-cards {
    display: flex;
    gap: 12px;
    margin-inline: calc(50% - 50vw);
    padding: 2px calc(50vw - 50%) 8px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 14px;
    scrollbar-width: none;
  }
  .family .feature-cards::-webkit-scrollbar {
    display: none;
  }
  .family .feature-card {
    flex: 0 0 min(78vw, 300px);
    scroll-snap-align: start;
  }
}
[data-solar-clock] {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
