/* Lunar — dark, precise, and deliberately quiet. */
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url("/fonts/geist.woff2") format("woff2");
}
@font-face {
  font-family: "Geist Mono";
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url("/fonts/geist-mono.woff2") format("woff2");
}

:root {
  --bg:#0D0B09;
  --surface:#17130F;
  --raised:#211A14;
  --border-mid:rgba(242,235,221,.14);
  --border-hair:rgba(242,235,221,.07);
  --text:#F2EBDD;
  --text-mid:#CBC0AE;
  --text-muted:#9F9586;
  --text-faint:#746B60;
  --accent:#C87F3D;
  --accent-soft:#E7A866;
  --font:"Geist",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --max:72rem;
  --measure:43rem;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;color-scheme:dark;-webkit-text-size-adjust:100%}
body{
  background:
    radial-gradient(900px 540px at 50% -12%,rgba(200,127,61,.12),transparent 64%),
    var(--bg);
  color:var(--text);
  font:400 1.05rem/1.68 var(--font);
  -webkit-font-smoothing:antialiased;
}
body.has-fixed-chrome{padding-top:3rem}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;
  background-image:radial-gradient(rgba(242,235,221,.34) .55px,transparent .7px);
  background-size:38px 38px;
  -webkit-mask-image:linear-gradient(#000,transparent 72%);mask-image:linear-gradient(#000,transparent 72%);
}
main,footer{position:relative;z-index:1}
a{color:var(--accent-soft);text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
:focus{outline:none}
:focus-visible{outline:2px solid var(--accent-soft);outline-offset:3px;border-radius:3px}
::selection{background:rgba(200,127,61,.34);color:#fff}
.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(1.25rem,4vw,2.75rem)}
.measure{max-width:var(--measure)}
.mono{font-family:var(--mono)}
.eyebrow{
  color:var(--accent-soft);font:500 .7rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:.65rem;
}
.eyebrow::before{content:"";width:24px;height:1px;background:currentColor}
h1,h2,h3{font-weight:300;line-height:1.08;letter-spacing:-.025em;text-wrap:balance}
p{color:var(--text-mid)}
strong{font-weight:500;color:var(--text)}

.hero{padding:clamp(3.5rem,10vh,7rem) 0 clamp(3rem,8vh,5.5rem)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:clamp(2rem,7vw,6rem);align-items:center}
.hero h1{font-size:clamp(3.2rem,8vw,6.6rem);margin:1.2rem 0 1.4rem;max-width:9ch}
.hero h1 em{font-style:normal;color:var(--accent-soft)}
.hero .lede{font-size:clamp(1.08rem,1.8vw,1.3rem);max-width:37rem;margin-bottom:1.6rem}
.moon{
  width:min(72vw,360px);aspect-ratio:1;border-radius:50%;margin:auto;
  background:
    radial-gradient(circle at 38% 33%,rgba(255,255,255,.28) 0 2%,transparent 3%),
    radial-gradient(circle at 61% 54%,rgba(45,38,31,.30) 0 6%,transparent 7%),
    radial-gradient(circle at 46% 72%,rgba(55,45,36,.26) 0 5%,transparent 6%),
    radial-gradient(circle at 35% 50%,#F2EBDD 0 54%,#C8BBA7 72%,#8B7B68 100%);
  box-shadow:0 0 0 1px rgba(242,235,221,.14),0 0 80px rgba(242,235,221,.12),0 40px 100px rgba(0,0,0,.65);
  position:relative;overflow:hidden;
}
.moon::after{content:"";position:absolute;inset:-2%;border-radius:50%;background:#080706;transform:translateX(-56%);filter:blur(3px)}
.spec{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.6rem}
.spec span{border:1px solid var(--border-mid);border-radius:999px;background:rgba(23,19,15,.7);padding:.42rem .8rem;color:var(--text-muted);font:500 .68rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}

section{padding:clamp(3rem,8vh,5.5rem) 0;border-top:1px solid var(--border-hair)}
.section-head{max-width:42rem;margin-bottom:2rem}
.section-head h2{font-size:clamp(2rem,5vw,3.5rem);margin:.9rem 0 1rem}
.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.card{background:linear-gradient(180deg,var(--raised),var(--surface));border:1px solid var(--border-mid);border-radius:18px;padding:1.45rem}
.card .label{color:var(--accent-soft);font:500 .67rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase}
.card h3{font-size:1.35rem;margin:.8rem 0 .6rem;font-weight:400}
.card p{font-size:.96rem;color:var(--text-muted)}
.cta{display:inline-flex;margin-top:1.4rem;border:1px solid rgba(200,127,61,.55);border-radius:999px;padding:.65rem 1rem;text-decoration:none;background:rgba(200,127,61,.10)}

.doc{padding:clamp(3.5rem,8vh,5rem) 0 clamp(4rem,9vh,7rem)}
.doc-head{margin-bottom:2.4rem}
.doc-head h1{font-size:clamp(2.5rem,6vw,4rem);margin:1rem 0}
.meta{color:var(--text-muted);font:.78rem/1.5 var(--mono)}
.doc article{max-width:var(--measure)}
.doc article>p,.doc li{color:var(--text-mid)}
.doc h2{font-size:1.55rem;font-weight:400;margin:2.7rem 0 .85rem}
.doc h3{font-size:1.12rem;font-weight:400;margin:1.7rem 0 .5rem}
.doc p{margin-bottom:1rem}
.doc ul,.doc ol{padding-left:1.25rem;margin:.6rem 0 1rem}
.doc li{margin:.45rem 0}
.doc li::marker{color:var(--accent)}
.callout{background:var(--surface);border:1px solid var(--border-mid);border-left:3px solid var(--accent);border-radius:14px;padding:1.2rem 1.3rem;margin:1.5rem 0;color:var(--text-mid)}
.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1.5rem 0}
.metric{border:1px solid var(--border-mid);border-radius:14px;padding:1rem;background:var(--surface)}
.metric strong{display:block;color:var(--accent-soft);font:500 .75rem/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.4rem}
.metric span{color:var(--text-mid)}
.faq dt{color:var(--text);font-weight:500;margin-top:1.6rem}
.faq dd{color:var(--text-mid);margin-top:.35rem}

@media(max-width:760px){.hero-grid{grid-template-columns:1fr}.hero-art{order:-1}.moon{width:min(66vw,290px)}.features{grid-template-columns:1fr}.metrics{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}}
