.blog-page { background: #070f10; color: #f5f1e7; }
.blog-page ::selection { background: #a3e4dc; color: #071616; }
.blog-page a { text-underline-offset: .25em; }
.blog-page a:focus-visible { outline: 3px solid #79dcd2; outline-offset: 5px; }
.blog-header, .blog-footer { max-width: 1360px; margin-inline: auto; padding: 24px clamp(20px, 4vw, 56px); }
.blog-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 32px; border-bottom: 1px solid #293737; }
.blog-header .brand { min-height: 44px; }
.blog-header nav, .blog-footer nav { display: flex; flex-wrap: wrap; gap: 8px 28px; align-items: center; }
.blog-header nav a, .blog-footer nav a { display: inline-flex; align-items: center; min-height: 44px; font-size: .9375rem; font-weight: 600; }
.blog-header nav a:hover, .blog-footer nav a:hover { color: #79dcd2; text-decoration: underline; }
.blog-header a[aria-current="page"] { color: #79dcd2; }
.blog-skip { position: absolute; top: -100px; left: 16px; z-index: 50; padding: 12px 20px; background: #f5f1e7; color: #071616; }
.blog-skip:focus { top: 12px; }
.blog-page main { max-width: 1360px; margin-inline: auto; padding: 64px clamp(20px, 4vw, 56px) 80px; }
.blog-page h1 { font-size: clamp(2.5rem, 4.4vw, 4.5rem); line-height: 1.08; letter-spacing: -.025em; text-wrap: balance; }
.blog-page h2 { font-size: clamp(1.75rem, 3vw, 2.5rem); letter-spacing: -.02em; text-wrap: balance; }
.blog-hero { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(32px, 5vw, 72px); padding-bottom: 64px; border-bottom: 1px solid #293737; }
.blog-hero-copy { min-width: 0; }
.blog-subtitle { margin-top: 20px; font-size: 1.25rem; line-height: 1.5; color: #d4dfdb; }
.blog-byline { margin-top: 14px; font-size: .9375rem; color: #c1cfcb; }
.blog-stores { display: flex; flex-wrap: wrap; gap: 14px 18px; align-items: center; margin-top: 28px; }
.blog-stores a { display: inline-flex; align-items: center; min-height: 50px; max-width: 100%; }
.blog-stores img { height: 50px; width: auto; max-width: 100%; object-fit: contain; }
.blog-stores a[href*="play.google.com"] img { height: 74.4px; }
.blog-stores a:hover { opacity: .85; }
.blog-pro { margin-top: 16px; font-size: .875rem; line-height: 1.6; color: #c1cfcb; }
.blog-founder img, .blog-index-photo img { width: 100%; height: auto; }
.blog-founder figcaption { margin-top: 12px; color: #c1cfcb; font-size: .875rem; }
.blog-story { padding-top: 56px; }
.blog-section { max-width: 66ch; margin-inline: auto; font-size: 1.125rem; line-height: 1.8; }
.blog-section + .blog-section { margin-top: 56px; }
.blog-section h2 { margin-bottom: 24px; }
.blog-section p + p { margin-top: 24px; }
.blog-section:first-child p:first-child { font-size: 1.375rem; line-height: 1.65; color: #f5f1e7; }
.blog-section p { color: #d4dfdb; }
.blog-proof { display: grid; grid-template-columns: minmax(0, 1fr) 280px; max-width: 1040px; gap: 64px; align-items: start; padding-block: 40px; border-block: 1px solid #293737; }
.blog-example img { width: 280px; height: auto; margin-inline: auto; }
.blog-example figcaption { margin-top: 16px; font-size: .8125rem; line-height: 1.65; color: #c1cfcb; }
.blog-example figcaption strong { display: block; font-size: .9375rem; color: #f5f1e7; margin-bottom: 6px; }
.blog-download { max-width: 66ch; margin: 64px auto 0; padding-top: 40px; border-top: 1px solid #293737; }
.blog-download h2 { max-width: 24ch; }
.blog-download-labels { margin-top: 16px; font-size: .9375rem; color: #d4dfdb; }
.blog-text-link { display: inline-flex; align-items: center; min-height: 44px; margin-top: 20px; font-weight: 600; color: #79dcd2; text-decoration: underline; }
.blog-footer { display: flex; flex-wrap: wrap; gap: 20px 40px; justify-content: space-between; border-top: 1px solid #293737; padding-block: 36px; }
.blog-footer p { flex-basis: 100%; max-width: 90ch; font-size: .8125rem; line-height: 1.7; color: #c1cfcb; }
.blog-index-story { display: grid; grid-template-columns: 1.1fr 1fr; gap: 48px; align-items: center; margin-top: 48px; }
.blog-index-story h2 a:hover { text-decoration: underline; }
.blog-index-story p:not([class]) { margin-top: 24px; max-width: 50ch; font-size: 1.125rem; line-height: 1.8; }
@media (max-width: 900px) {
  .blog-hero { grid-template-columns: 1fr; gap: 36px; }
  .blog-hero-copy { max-width: 650px; }
  .blog-page main { padding-top: 40px; }
  .blog-proof { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .blog-example { max-width: 320px; margin-inline: auto; }
  .blog-index-story { grid-template-columns: 1fr; gap: 28px; }
}
@media (max-width: 480px) {
  .blog-header { padding-block: 16px; gap: 4px 20px; }
  .blog-header nav { gap: 20px; }
  .blog-header nav a { font-size: .875rem; }
  .blog-hero { padding-bottom: 36px; }
  .blog-stores { gap: 12px; }
  .blog-stores img { height: 44px; }
  .blog-stores a[href*="play.google.com"] img { height: 65.5px; }
  .blog-section { font-size: 1.0625rem; line-height: 1.8; }
  .blog-story { padding-top: 36px; }
  .blog-section + .blog-section { margin-top: 40px; }
}
@media (prefers-reduced-motion: reduce) { .blog-page { scroll-behavior: auto; } }
