@font-face {
  font-family: "Instrument Sans Variable";
  font-style: normal;
  font-weight: 400 700;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/instrumentsans/v4/pxicypc9vsFDm051Uf6KVwgkfoSbT2lB.woff2") format("woff2");
}

:root {
  --mk-bg: #09090a;
  --mk-elevated: #111113;
  --mk-card: #0b0b0c;
  --mk-green: #295d4f;
  --mk-green-hover: #1f4a3e;
  --mk-logo: #59a590;
  --mk-mint: #9bc7b6;
  --mk-ink: #f5f5f5;
  --mk-body: #a7a7ac;
  --mk-muted: #7f8086;
  --mk-line: rgba(245, 245, 245, 0.08);
  --mk-line-strong: rgba(245, 245, 245, 0.14);
}

body.marketing-page {
  min-height: 100%;
  background-color: var(--mk-bg);
  background-image:
    radial-gradient(60% 50% at 82% 8%, rgba(41, 93, 79, 0.15), rgba(41, 93, 79, 0.04) 42%, transparent 72%),
    radial-gradient(50% 45% at 8% 22%, rgba(41, 76, 120, 0.08), rgba(41, 76, 120, 0.02) 45%, transparent 72%);
  background-repeat: no-repeat;
  color: var(--mk-ink);
  font-family: "Instrument Sans Variable", "Instrument Sans", system-ui, sans-serif;
  font-variation-settings: "wght" 400, "wdth" 100;
  letter-spacing: -0.005em;
}

body.marketing-page::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 999;
  pointer-events: none;
  opacity: 0.015;
  mix-blend-mode: soft-light;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

body.marketing-page h1,
body.marketing-page h2,
body.marketing-page h3 {
  color: var(--mk-ink);
  font-family: inherit;
  font-weight: 450;
  font-variation-settings: "wght" 450, "wdth" 100;
  letter-spacing: -0.035em;
}

body.marketing-page p,
body.marketing-page li,
body.marketing-page small {
  color: var(--mk-body);
}

body.marketing-page a:focus-visible,
body.marketing-page button:focus-visible,
body.marketing-page input:focus-visible,
body.marketing-page textarea:focus-visible {
  outline: 2px solid var(--mk-mint);
  outline-offset: 3px;
}

/* Shared logo and wide, borderless navigation */
body.marketing-page .brand svg > g:first-child,
body.marketing-page .brand .mark > g:first-child {
  fill: var(--mk-logo);
}

body.marketing-page .brand svg > g:nth-child(2),
body.marketing-page .brand .mark > g:nth-child(2) {
  fill: #fff;
}

body.marketing-page .brand svg,
body.marketing-page .brand .mark {
  height: 26px;
}

body.marketing-page .hnav,
body.guide-page header .bar {
  min-height: 72px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.marketing-page .hnav {
  margin-top: 0;
  padding: 15px 0;
}

body.marketing-page .back {
  min-height: 42px;
  padding: 0 16px;
  border-color: var(--mk-line-strong);
  border-radius: 12px;
  color: var(--mk-body);
  font-size: 14px;
  font-weight: 600;
}

body.marketing-page .back:hover {
  border-color: rgba(155, 199, 182, 0.38);
  color: var(--mk-ink);
}

/* Guides and resource articles */
body.guide-page header {
  position: relative;
  z-index: 10;
  padding: 0 24px;
  border: 0;
  background: transparent;
}

body.guide-page header .navwrap {
  max-width: none;
  margin: 0;
  padding: 0;
}

body.guide-page header .bar {
  height: auto;
  padding: 15px 0;
}

body.guide-page .btn {
  min-height: 42px;
  padding: 0 18px;
  border: 0;
  border-radius: 12px;
  background: var(--mk-green);
  box-shadow: none;
  color: #fff;
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
}

body.guide-page .btn:hover {
  background: var(--mk-green-hover);
  box-shadow: none;
}

body.guide-page main {
  padding-top: clamp(72px, 9vw, 128px);
}

body.guide-page main > .wrap {
  max-width: 920px;
}

body.guide-page h1 {
  max-width: 820px;
  font-size: clamp(44px, 6vw, 72px);
  line-height: 1.01;
  text-wrap: balance;
}

body.guide-page .lead {
  max-width: 720px;
  color: var(--mk-body);
  font-size: clamp(17px, 2vw, 20px);
  line-height: 1.55;
}

body.guide-page .eyebrow,
body.guide-page .checklist-head {
  color: var(--mk-mint);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body.guide-page .crumb,
body.guide-page .crumb a,
body.guide-page .src,
body.guide-page .note,
body.guide-page .tnote,
body.guide-page .getapp {
  color: var(--mk-muted);
}

body.guide-page .crumb a:hover,
body.guide-page .src a,
body.guide-page .getapp a,
body.guide-page .related a,
body.guide-page section a,
body.guide-page .prose a {
  color: var(--mk-mint);
}

body.guide-page main ul,
body.guide-page main li,
body.guide-page .related,
body.guide-page .faq details,
body.guide-page th,
body.guide-page td {
  border-color: var(--mk-line);
}

body.guide-page main li::before {
  border-color: rgba(155, 199, 182, 0.48);
  background: transparent;
}

body.guide-page .bullets li::before {
  background: var(--mk-mint);
}

body.guide-page .steps li::before {
  background: rgba(155, 199, 182, 0.12);
  color: var(--mk-mint);
}

body.guide-page .panel,
body.guide-page .resources,
body.guide-page .disclosure {
  border: 1px solid var(--mk-line-strong);
  background: rgba(11, 11, 12, 0.94);
  border-radius: 20px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.018);
}

body.guide-page .panel p,
body.guide-page .disclosure,
body.guide-page .prose p,
body.guide-page .bullets li,
body.guide-page .steps li,
body.guide-page .faq p {
  color: var(--mk-body);
}

body.guide-page .tablewrap {
  border-color: var(--mk-line);
  background: rgba(17, 17, 19, 0.65);
}

body.guide-page thead th,
body.guide-page table tr:first-child th {
  background: rgba(255, 255, 255, 0.035);
  color: var(--mk-muted);
}

body.guide-page tbody th,
body.guide-page table th[scope="row"],
body.guide-page .prose strong,
body.guide-page .faq summary {
  color: var(--mk-ink);
}

body.guide-page footer {
  margin-top: 56px;
  border-color: var(--mk-line);
  background: transparent;
}

body.guide-page footer .navwrap {
  max-width: 1440px;
  margin: 0 auto;
}

body.guide-page .foot nav,
body.guide-page .foot nav a {
  color: var(--mk-muted);
}

/* Contact */
body.contact-page .hero {
  padding: 0 0 12px;
  background: transparent;
}

body.contact-page .hero::after {
  display: none;
}

body.contact-page .hero-bar {
  max-width: none;
  padding: 0 24px;
}

body.contact-page .hero > .wrap:not(.hero-bar) {
  max-width: 1180px;
}

body.contact-page .hhead {
  max-width: 820px;
  padding: clamp(82px, 10vw, 140px) 0 clamp(48px, 7vw, 84px);
}

body.contact-page .hhead h1 {
  font-size: clamp(48px, 7vw, 78px);
  line-height: 1;
}

body.contact-page .hhead p {
  max-width: 680px;
  color: var(--mk-body);
  font-size: clamp(17px, 2vw, 20px);
}

body.contact-page .eyebrow {
  color: var(--mk-mint);
}

body.contact-page .band {
  margin: 0;
  border-radius: 0;
  background: transparent;
}

body.contact-page .band > .wrap {
  max-width: 1180px;
}

body.contact-page .panel {
  border: 1px solid var(--mk-line-strong);
  background: rgba(11, 11, 12, 0.94);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.018);
}

body.contact-page .aside h2,
body.contact-page .row b,
body.contact-page .field label,
body.contact-page .done h2 {
  color: var(--mk-ink);
}

body.contact-page .aside p,
body.contact-page .row small,
body.contact-page .fineprint,
body.contact-page .done p {
  color: var(--mk-body);
}

body.contact-page .mailto,
body.contact-page .row .ic,
body.contact-page .done .check {
  border-color: rgba(155, 199, 182, 0.2);
  background: rgba(155, 199, 182, 0.1);
  color: var(--mk-mint);
}

body.contact-page .rows,
body.contact-page .row,
body.contact-page footer {
  border-color: var(--mk-line);
}

body.contact-page .field input,
body.contact-page .field textarea {
  border-color: var(--mk-line-strong);
  background: rgba(255, 255, 255, 0.035);
  color: var(--mk-ink);
}

body.contact-page .field input::placeholder,
body.contact-page .field textarea::placeholder {
  color: #67686d;
}

body.contact-page .submit {
  background: var(--mk-green);
  font-family: inherit;
  font-weight: 600;
}

body.contact-page .submit:hover {
  background: var(--mk-green-hover);
}

body.contact-page footer {
  margin-top: 72px;
  background: transparent;
}

/* Legal and account-deletion pages. Embedded app sheets keep their native theme. */
html:not(.dr-embed) body.legal-page .hero {
  padding: 0;
  background: transparent;
}

html:not(.dr-embed) body.legal-page .hero::after {
  display: none;
}

html:not(.dr-embed) body.legal-page .hero > .wrap {
  max-width: none;
}

html:not(.dr-embed) body.legal-page .hhead {
  max-width: 900px;
  padding: clamp(82px, 10vw, 138px) 0 clamp(52px, 7vw, 86px);
}

html:not(.dr-embed) body.legal-page .hhead h1 {
  font-size: clamp(48px, 7vw, 78px);
  line-height: 1;
}

html:not(.dr-embed) body.legal-page .eyebrow {
  color: var(--mk-mint);
}

html:not(.dr-embed) body.legal-page .meta {
  color: var(--mk-muted);
}

html:not(.dr-embed) body.legal-page .meta b {
  color: var(--mk-body);
}

html:not(.dr-embed) body.legal-page .band {
  margin: 0;
  border-radius: 0;
  background: transparent;
}

html:not(.dr-embed) body.legal-page .doc {
  max-width: 1180px;
  padding-top: 16px;
}

html:not(.dr-embed) body.legal-page .toc {
  top: 28px;
}

html:not(.dr-embed) body.legal-page .toc .lbl,
html:not(.dr-embed) body.legal-page .toc a {
  color: var(--mk-muted);
}

html:not(.dr-embed) body.legal-page .toc a:hover,
html:not(.dr-embed) body.legal-page .toc a.on {
  color: var(--mk-ink);
}

html:not(.dr-embed) body.legal-page .toc a.on {
  border-color: var(--mk-mint);
}

html:not(.dr-embed) body.legal-page .card {
  border: 1px solid var(--mk-line-strong);
  background: rgba(11, 11, 12, 0.94);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.018);
}

html:not(.dr-embed) body.legal-page .lead {
  color: #c8c8cb;
}

html:not(.dr-embed) body.legal-page section + section,
html:not(.dr-embed) body.legal-page footer {
  border-color: var(--mk-line);
}

html:not(.dr-embed) body.legal-page p,
html:not(.dr-embed) body.legal-page li {
  color: var(--mk-body);
}

html:not(.dr-embed) body.legal-page li b,
html:not(.dr-embed) body.legal-page a.link {
  color: var(--mk-ink);
}

html:not(.dr-embed) body.legal-page h2 .n {
  color: var(--mk-mint);
}

html:not(.dr-embed) body.legal-page li::before {
  background: rgba(155, 199, 182, 0.45);
}

html:not(.dr-embed) body.legal-page .callout {
  border-color: var(--mk-line-strong);
  background: rgba(155, 199, 182, 0.07);
}

html:not(.dr-embed) body.legal-page footer {
  background: transparent;
}

html:not(.dr-embed) body.legal-page .foot,
html:not(.dr-embed) body.legal-page .foot a {
  color: var(--mk-muted);
}

/* The app opens these documents with ?embed=1. Preserve the native light and
   dark sheet surfaces instead of inheriting the public-site canvas. */
html.dr-embed body.legal-page {
  background: #fff;
  background-image: none;
  color: #111;
}

html.dr-embed body.legal-page::before {
  display: none;
}

html.dr-embed body.legal-page h1,
html.dr-embed body.legal-page h2,
html.dr-embed body.legal-page h3,
html.dr-embed body.legal-page li b,
html.dr-embed body.legal-page a.link {
  color: #111;
}

html.dr-embed body.legal-page p,
html.dr-embed body.legal-page li,
html.dr-embed body.legal-page small {
  color: #707070;
}

html.dr-embed.dr-dark body.legal-page {
  background: #0a0a0a;
  color: #ededed;
}

html.dr-embed.dr-dark body.legal-page h1,
html.dr-embed.dr-dark body.legal-page h2,
html.dr-embed.dr-dark body.legal-page h3,
html.dr-embed.dr-dark body.legal-page li b,
html.dr-embed.dr-dark body.legal-page a.link {
  color: #ededed;
}

html.dr-embed.dr-dark body.legal-page p,
html.dr-embed.dr-dark body.legal-page li,
html.dr-embed.dr-dark body.legal-page small {
  color: #a3a3a0;
}

@media (min-width: 1024px) {
  body.guide-page header {
    padding-right: 56px;
    padding-left: 56px;
  }

  body.contact-page .hero-bar {
    padding-right: 56px;
    padding-left: 56px;
  }
}

@media (max-width: 720px) {
  body.marketing-page .hnav,
  body.guide-page header .bar {
    min-height: 64px;
  }

  body.guide-page header {
    padding: 0 24px;
  }

  body.guide-page header .bar,
  body.marketing-page .hnav {
    padding: 11px 0;
  }

  body.marketing-page .brand svg,
  body.marketing-page .brand .mark {
    height: 23px;
  }

  body.guide-page .btn,
  body.marketing-page .back {
    min-height: 40px;
    padding: 0 13px;
    font-size: 13px;
  }

  body.guide-page main {
    padding-top: 64px;
  }

  body.guide-page h1 {
    font-size: clamp(38px, 12vw, 54px);
  }

  body.contact-page .hero-bar {
    padding: 0 24px;
  }

  body.contact-page .hhead,
  html:not(.dr-embed) body.legal-page .hhead {
    padding-top: 72px;
  }

  body.contact-page .hhead h1,
  html:not(.dr-embed) body.legal-page .hhead h1 {
    font-size: clamp(42px, 13vw, 58px);
  }
}
