/* The reading pages (Install, Release notes, Privacy): the landing page's type, inks and notch, on a quiet night with the
   planet's rim under the title; one column of text. */
@font-face { font-family: "Tacit Sans"; src: url("fonts/TacitSans[wght].ttf") format("truetype"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Tacit Sans Display"; src: url("fonts/TacitSansDisplay[wght].ttf") format("truetype"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Tacit Sans Condensed"; src: url("fonts/TacitSansCondensed[wght].ttf") format("truetype"); font-weight: 100 900; font-display: swap; }
:root {
    color-scheme: dark;
    --ink-main: #ede8e6; --ink-sec: #e6dfdd; --ink-meta: #d9d3d1; --ink-faint: #b8b2b1; --accent: #dfc0b2; --on-accent: #3b2a22;
    --frost: rgba(44, 41, 40, .74); --wash: rgba(232, 225, 223, .08); --light: 255, 226, 200;
}
* { box-sizing: border-box; }
html, body { margin: 0; background: #0b0605; color: var(--ink-main); font-family: "Tacit Sans", sans-serif; -webkit-font-smoothing: antialiased; }
html { cursor: url("cursor/left_ptr.png") 5 3, auto; }
a { color: var(--accent); text-decoration: none; cursor: url("cursor/hand2.png") 15 4, pointer; }
a:hover { color: #ecd6cc; }
a:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 4px; }

/* the notch: the site's menu, docked to the top edge */
.notch { position: fixed; top: 0; left: 50%; transform: translateX(-50%); z-index: 2; display: flex; align-items: center; gap: 26px; height: 34px;
         padding: 0 26px; border-radius: 0 0 14px 14px; background: var(--frost); backdrop-filter: blur(28px) saturate(1.15);
         -webkit-backdrop-filter: blur(28px) saturate(1.15); font: 15px "Tacit Sans Condensed"; white-space: nowrap; }
.notch .name { color: var(--ink-main); font-variation-settings: "wght" 560; }
.notch a:not(.name) { color: var(--ink-meta); font-variation-settings: "wght" 450; }
.notch a:not(.name):hover, .notch a[aria-current] { color: var(--ink-main); }

/* the title over the planet's rim */
header { position: relative; height: min(62vh, 560px); overflow: hidden; display: flex; align-items: center; justify-content: center; text-align: center;
         padding: 0 24px; }
/* the planet dissolves into the night below it instead of stopping at the header's edge */
header { -webkit-mask-image: linear-gradient(#000 0, #000 66%, transparent 100%); mask-image: linear-gradient(#000 0, #000 66%, transparent 100%); }
header .rim { position: absolute; left: 50%; top: 78%; width: 260vw; height: 260vw; transform: translateX(-50%); border-radius: 50%;
              background: #140d0a; border-top: 1.5px solid rgba(var(--light), .85); }
header .glow { position: absolute; left: 0; right: 0; top: 50%; height: 50%;
               background: radial-gradient(60% 46% at 50% 56%, rgba(var(--light), .16), transparent 70%); }
header .t { position: relative; margin-top: -6vh; }
h1 { font: 600 clamp(44px, 6.4vw, 96px)/1.02 "Tacit Sans Display"; letter-spacing: -0.02em; margin: 0; color: #f3f0ea; }
header p { margin: 22px auto 0; max-width: 620px; font-size: clamp(17px, 1.4vw, 21px); line-height: 1.45; color: var(--ink-sec); text-wrap: balance; }

/* the text */
main { max-width: 720px; margin: 0 auto; padding: 24px 24px 96px; }
h2 { font: 600 clamp(26px, 2.6vw, 34px)/1.15 "Tacit Sans Display"; letter-spacing: -0.01em; margin: 64px 0 14px; color: #f3f0ea; }
h3 { font: 600 20px/1.3 "Tacit Sans Display"; margin: 34px 0 8px; color: #f3f0ea; }
p, li { font-size: 18px; line-height: 1.6; color: var(--ink-sec); }
p { margin: 0 0 14px; }
ul, ol { margin: 0 0 14px; padding-left: 22px; }
li { margin: 6px 0; }
li::marker { color: var(--ink-faint); }
strong { color: var(--ink-main); font-weight: 600; }
.path { color: var(--ink-main); }
.meta { color: var(--ink-meta); font-size: 16px; }
/* one step: its number in sand */
.step { display: grid; grid-template-columns: 44px 1fr; gap: 0 14px; margin-top: 52px; }
.step .n { font: 600 26px/1.15 "Tacit Sans Display"; color: var(--accent); }
.step h2 { margin: 0 0 12px; }
/* a fact that matters before going on, on a soft wash rather than in a box */
.note { margin: 18px 0; padding: 16px 20px; border-radius: 14px; background: var(--wash); }
.note p:last-child { margin-bottom: 0; }
/* the download: the landing page's sand slab */
.get { display: inline-flex; align-items: center; height: 52px; padding: 0 34px; border-radius: 26px; background: var(--accent);
       color: var(--on-accent); font: 600 17px "Tacit Sans"; text-decoration: none; transition: background .25s; }
.get:hover { background: #e9cfc3; }
.fine { font-size: 15px; color: var(--ink-meta); }
/* the download, while there is none */
.soon { display: inline-flex; align-items: center; height: 52px; padding: 0 34px; border-radius: 26px; background: var(--wash); color: var(--accent);
        font: 500 17px "Tacit Sans"; }
table { width: 100%; border-collapse: collapse; margin: 8px 0 16px; font-size: 17px; }
td { padding: 9px 0; color: var(--ink-sec); vertical-align: top; }
td:first-child { color: var(--ink-main); width: 42%; padding-right: 16px; }
tr + tr td { border-top: 1px solid rgba(232, 225, 223, .07); }
footer { max-width: 720px; margin: 0 auto; padding: 0 24px 48px; display: flex; flex-wrap: wrap; gap: 10px 26px; font-size: 15px; color: var(--ink-meta); }
footer a { color: var(--ink-meta); }
footer a:hover { color: var(--ink-main); }
@media (max-width: 760px) {
    .notch { gap: 18px; padding: 0 18px; font-size: 14px; }
    .step { grid-template-columns: 34px 1fr; }
}
