/* fluhd.com — what every page shares: the type, and the menu (top right) */
@font-face { font-family: "Inter"; src: url(../fonts/Inter-SY01.woff2) format("woff2"); font-weight: 100 900; font-display: swap; }

.menu-btn { position: fixed; z-index: 20; top: max(14px, env(safe-area-inset-top)); right: 14px; width: 44px; height: 44px;
  border: 0; padding: 10px; cursor: pointer; color: rgba(255, 255, 255, .88); transition: opacity .6s;
  border-radius: 50%; background: rgba(10, 10, 11, .42); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.menu-btn svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; }
.menu-btn:hover { color: #fff; }
.menu { position: fixed; z-index: 20; top: max(62px, calc(env(safe-area-inset-top) + 48px)); right: 22px; min-width: 160px;
  padding: 8px 0; background: rgba(10, 10, 11, .62); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, .12); border-radius: 8px; font-family: "Inter", sans-serif; }
.menu[hidden] { display: none; }
.menu a { display: block; padding: 10px 20px; color: rgba(255, 255, 255, .78); text-decoration: none; font-size: 14px; letter-spacing: 3px; }
.menu a:hover, .menu a[aria-current] { color: #fff; }

/* footer */
footer[data-site] { position: relative; z-index: 1; padding: 110px 28px 44px; max-width: 1180px; margin: 0 auto;
  font-family: "Inter", sans-serif; color: rgba(255, 255, 255, .55); font-size: 14px; }
.foot-wrap { display: flex; flex-direction: column; align-items: center; gap: 36px;
  padding-top: 40px; border-top: 1px solid rgba(255, 255, 255, .08); }   /* one centered stack: logo, links, small print */
.foot-brand { display: flex; align-items: center; gap: 12px; color: rgba(255, 255, 255, .85); text-decoration: none;
  letter-spacing: 4px; font-size: 14px; }
.foot-brand .mark { width: 54px; height: auto; }
.foot-cols { display: grid; grid-template-columns: repeat(3, 160px); gap: 24px; }   /* equal columns: the middle one sits under the logo */
.foot-cols div { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.foot-cols b { font-weight: 500; font-size: 12px; letter-spacing: 3px; text-transform: uppercase; color: rgba(255, 255, 255, .4); margin-bottom: 4px; }
.foot-cols a { color: inherit; text-decoration: none; white-space: nowrap; }
@media (max-width: 560px) { .foot-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; width: 100%; } }
.foot-cols a:hover { color: #fff; }
.foot-fine { margin: 40px 0 0; font-size: 12px; letter-spacing: 2px; color: rgba(255, 255, 255, .35); text-align: center; }

/* text pages (license terms, privacy, refunds, contact) */
body.doc { margin: 0; min-height: 100vh; color: #ecedf0; font: 400 17px/1.75 "Inter", sans-serif; -webkit-font-smoothing: antialiased;
  background-color: #0a0a0b;
  background-image: radial-gradient(60% 40% at 70% 0%, rgba(128, 92, 255, .16), transparent 70%),
    linear-gradient(180deg, #100e1a, #0b0b10 50%, #0d0b0b); }
.doc main { max-width: 760px; margin: 0 auto; padding: 120px 28px 0; }
.doc .eyebrow { margin: 0 0 14px; font-size: 12px; font-weight: 500; letter-spacing: 5px; color: #8b8d94; text-transform: uppercase; }
.doc h1 { margin: 0 0 12px; font-size: clamp(34px, 5vw, 52px); font-weight: 500; letter-spacing: -.015em; line-height: 1.1; }
.doc .updated { margin: 0 0 48px; color: #8b8d94; font-size: 14px; }
.doc h2 { margin: 44px 0 10px; font-size: 20px; font-weight: 500; }
.doc p, .doc li { color: #c9cacf; }
.doc ul { padding-left: 20px; }
.doc a { color: #eca13f; }
.doc .draft { margin: 0 0 40px; padding: 14px 18px; border-radius: 10px; border: 1px dashed rgba(236, 161, 63, .5);
  color: #eca13f; font-size: 14px; }
