@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url('/brand/fonts/inter-latin-var.woff2') format('woff2-variations');
}

:root {
  color-scheme: dark;
  --night: #0d0f12;
  --blue: #0e1620;
  --brand: #ff6a00;
  --brand-hover: #ff8a00;
  --brand-deep: #e55f00;
  --brand-on-light: #af3c00;
  --live: #5fb87a;
  --live-on-light: #257a41;
  --next: #2fbf5f;
  --next-hover: #27a851;
  --prestige: #d4af37;
  --prestige-deep: #b8902a;
  --prestige-on-light: #7b5f1f;
  --warning: #d8962e;
  --error: #e17c78;
  --danger-fill: #b73330;
  --info: #77c8ed;
  --paper: #f4f1ea;
  --ink: #cbd3dd;
  --muted: #8a93a0;
  --line: #242c35;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: linear-gradient(145deg, var(--night), var(--blue)); color: var(--paper); font-family: Inter, ui-sans-serif, system-ui, -apple-system, sans-serif; line-height: 1.7; }
a { color: inherit; text-decoration: none; }

.bar { min-height: 34px; padding: 8px 20px; text-align: center; background: var(--blue); border-bottom: 1px solid rgba(255,106,0,.16); color: var(--muted); font-size: 11px; font-weight: 720; letter-spacing: .14em; }
.bar a { color: var(--brand); margin-left: 10px; }
.header { height: 88px; max-width: 1220px; margin: auto; padding: 0 26px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; border-bottom: 1px solid rgba(203,211,221,.08); }
.logo img { height: 64px; }
.nav { display: flex; gap: 28px; color: var(--muted); font-size: 13px; font-weight: 600; }
.nav a:hover { color: var(--brand); }
.header .cta { justify-self: end; }
.mobile-menu { display: none; position: relative; }
.mobile-menu summary { min-width: 44px; min-height: 44px; padding: 0 12px; display: grid; place-items: center; border: 1px solid #3a424c; border-radius: 11px; color: var(--ink); cursor: pointer; font-size: 12px; font-weight: 750; list-style: none; }
.mobile-menu summary::-webkit-details-marker { display: none; }
.mobile-menu nav { position: absolute; z-index: 20; top: calc(100% + 9px); right: 0; min-width: 220px; padding: 10px; display: flex; flex-direction: column; border: 1px solid #303842; border-radius: 15px; background: #0d1117; box-shadow: 0 22px 60px rgba(0,0,0,.58); }
.mobile-menu nav a { min-height: 44px; padding: 0 12px; display: flex; align-items: center; border-bottom: 1px solid #222a33; color: var(--ink); font-size: 13px; }
.mobile-menu nav a:last-child { border-bottom: 0; }
.mobile-menu nav a:hover, .mobile-menu nav a:focus-visible { color: var(--brand); }
.cta, .cta-ghost { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px; border-radius: 11px; font-size: 13px; font-weight: 750; transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease; }
.cta { background: var(--brand); color: var(--night); }
.cta:hover { background: var(--brand-hover); transform: translateY(-1px); }
.cta-next { background: var(--next); color: var(--night); }
.cta-next:hover { background: var(--next-hover); }
.cta-ghost { border: 1px solid #3a424c; color: var(--ink); }
.cta-ghost:hover { border-color: var(--brand); color: var(--paper); }
.cta:focus-visible, .cta-ghost:focus-visible, .nav a:focus-visible, details.faq summary:focus-visible { outline: 2px solid var(--brand); outline-offset: 4px; }

.hero { min-height: 660px; margin: 0; padding: 125px max(28px, calc((100vw - 1160px) / 2)) 115px; position: relative; isolation: isolate; display: flex; flex-direction: column; justify-content: center; overflow: hidden; }
.hero:before { content: ""; position: absolute; inset: 0; z-index: -2; background: url('/brand/first-light/desktop.webp') center bottom / cover no-repeat; }
.hero:after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(7,10,14,.95), rgba(7,10,14,.63) 58%, rgba(7,10,14,.38)), linear-gradient(0deg, rgba(7,10,14,.78), transparent 42%); }
.kicker { color: var(--prestige); font-size: 12px; font-weight: 760; letter-spacing: .18em; text-transform: uppercase; }
h1 { max-width: 1000px; margin: 25px 0 30px; font-size: clamp(3.2rem, 6.2vw, 6.2rem); font-weight: 680; line-height: .96; letter-spacing: -.045em; text-wrap: balance; }
h1 em, h2 em { color: inherit; font: inherit; }
.earned-word { color: var(--prestige); font: inherit; }
.lede { max-width: 740px; margin: 0; color: var(--ink); font-size: clamp(1rem, 1.6vw, 1.25rem); text-shadow: 0 2px 16px rgba(0,0,0,.9); }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 34px; }

.intro-band { border-block: 1px solid var(--line); background: var(--night); }
.intro-grid, .sections, .footer-inner { max-width: 1160px; margin: auto; }
.intro-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.intro-grid > div { padding: 30px; border-right: 1px solid var(--line); }
.intro-grid > div:last-child { border-right: 0; }
.intro-grid b { display: block; color: var(--brand); font: 720 11px Inter, ui-sans-serif, system-ui, sans-serif; font-variant-numeric: tabular-nums; letter-spacing: .12em; }
.intro-grid span { display: block; margin-top: 8px; color: var(--ink); font-size: 14px; font-weight: 700; }

.sections { padding: 80px 28px 120px; }
.section { display: grid; grid-template-columns: 280px 1fr; gap: 7vw; padding: 72px 0; border-bottom: 1px solid var(--line); }
.section:last-child { border-bottom: 0; }
.section .num { color: var(--prestige); font: 720 12px Inter, ui-sans-serif, system-ui, sans-serif; font-variant-numeric: tabular-nums; letter-spacing: .15em; }
.section h2 { margin: 0 0 20px; max-width: 730px; font-size: clamp(2rem, 4vw, 4.4rem); font-weight: 680; line-height: 1; letter-spacing: -.045em; }
.section p { max-width: 720px; color: var(--ink); }
.section ul { max-width: 720px; margin: 24px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); }
.section li { padding: 15px 17px; border-bottom: 1px solid var(--line); color: var(--ink); font-size: 13px; }
.section li:before { content: "✓"; color: var(--live); margin-right: 9px; font-weight: 900; }

.principle { padding: 120px 28px; text-align: center; background: var(--night); border-block: 1px solid var(--line); }
.principle h2 { max-width: 940px; margin: 0 auto; color: var(--paper); font-family: Inter, ui-sans-serif, system-ui, sans-serif; font-size: clamp(2.4rem, 5vw, 5.7rem); font-weight: 680; line-height: 1.02; letter-spacing: -.045em; }
.principle p { color: var(--muted); margin: 25px auto 0; max-width: 640px; }
.closing { min-height: 600px; padding: 90px 24px; position: relative; isolation: isolate; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; overflow: hidden; }
.closing:before { content: ""; position: absolute; inset: 0; z-index: -2; background: url('/brand/first-light/desktop.webp') center bottom / cover no-repeat; }
.closing:after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, rgba(7,10,14,.7), rgba(7,10,14,.92)); }
.closing h2 { font-size: clamp(3rem, 6vw, 6rem); font-weight: 680; line-height: .95; letter-spacing: -.045em; margin: 20px 0 30px; }

.footer { padding: 75px 28px 28px; border-top: 1px solid var(--line); background: var(--night); }
.footer-inner { display: grid; grid-template-columns: 1.2fr 2fr; gap: 70px; }
.footer-brand img { height: 68px; }
.footer-brand p { color: var(--muted); font-size: 13px; max-width: 350px; }
.footer-nav { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }
.footer-nav div { display: flex; flex-direction: column; gap: 9px; }
.footer-nav b { color: var(--prestige); font-size: 10px; letter-spacing: .15em; text-transform: uppercase; margin-bottom: 7px; }
.footer-nav a { color: var(--muted); font-size: 13px; }
.footer-nav a:hover { color: var(--paper); }
.fine { max-width: 1160px; margin: 55px auto 0; padding-top: 20px; border-top: 1px solid var(--line); color: var(--muted); opacity: .72; font-size: 11px; }

details.faq { max-width: 760px; border-top: 1px solid var(--line); padding: 22px 0; }
details.faq:last-child { border-bottom: 1px solid var(--line); }
details.faq summary { cursor: pointer; color: var(--paper); font-size: 18px; font-weight: 750; }
details.faq p { color: var(--muted); }
.contact-card { max-width: 760px; padding: 30px; border: 1px solid rgba(255,106,0,.3); background: rgba(24,31,35,.75); border-radius: 18px; }
.contact-card a.email { display: block; color: var(--brand); font-size: clamp(1.5rem, 3vw, 2.7rem); font-weight: 720; letter-spacing: -.035em; }
.contact-card p { color: var(--muted); }

@media (max-width: 760px) {
  .bar { font-size: 10px; letter-spacing: .08em; }
  .header { height: 74px; padding: 0 13px; grid-template-columns: 1fr auto auto; gap: 7px; }
  .logo img { height: 46px; }
  .nav { display: none; }
  .mobile-menu { display: block; }
  .header .cta { min-height: 42px; padding: 0 15px; font-size: 11px; }
  .hero { min-height: 640px; padding: 85px 21px; }
  .hero:before { background-image: url('/brand/first-light/mobile.webp'); }
  .hero:after { background: linear-gradient(0deg, rgba(7,10,14,.82), rgba(7,10,14,.42) 50%, rgba(7,10,14,.74)); }
  .hero h1 { font-size: clamp(2.65rem, 10.5vw, 3.75rem); }
  .intro-grid { grid-template-columns: 1fr; }
  .intro-grid > div { border-right: 0; border-bottom: 1px solid var(--line); }
  .section { grid-template-columns: 1fr; gap: 20px; padding: 55px 0; }
  .section ul { grid-template-columns: 1fr; }
  .sections { padding: 45px 21px 85px; }
  .principle { padding: 80px 21px; }
  .closing:before { background-image: url('/brand/first-light/mobile.webp'); }
  .footer { padding: 60px 21px 25px; }
  .footer-inner { grid-template-columns: 1fr; gap: 45px; }
  .footer-nav { grid-template-columns: 1fr 1fr; }
  .fine { margin-top: 45px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* About: product philosophy first, founder context only where the origin helps. */
.about-hero .lede { max-width: 680px; }

.about-thesis {
  padding: 110px max(28px, calc((100vw - 1160px) / 2));
  background: var(--paper);
  color: #15191e;
  border-block: 1px solid #d6d3cc;
}
.about-thesis .kicker { color: #96520d; }
.about-thesis h2 {
  max-width: 980px;
  margin: 22px 0 30px;
  font-size: clamp(2.5rem, 5vw, 5.4rem);
  font-weight: 680;
  line-height: .99;
  letter-spacing: -.045em;
  text-wrap: balance;
}
.about-thesis > p:last-child {
  max-width: 760px;
  margin: 0;
  color: #505861;
  font-size: 1.04rem;
  line-height: 1.8;
}

.about-doctrine {
  padding: 120px max(28px, calc((100vw - 1160px) / 2));
  background: var(--night);
}
.about-doctrine-head {
  display: grid;
  grid-template-columns: .75fr 1.5fr 1fr;
  gap: 48px;
  align-items: end;
  margin-bottom: 64px;
}
.about-doctrine-head h2 {
  margin: 0;
  font-size: clamp(2.5rem, 4.4vw, 4.9rem);
  font-weight: 680;
  line-height: 1;
  letter-spacing: -.045em;
}
.about-doctrine-head > p:last-child { margin: 0; color: var(--ink); }
.about-law-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.about-law-grid article {
  min-height: 290px;
  padding: 32px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: #0b1016;
}
.about-law-grid b { color: var(--brand); font-size: .72rem; letter-spacing: .14em; }
.about-law-grid h3 {
  max-width: 430px;
  margin: 72px 0 14px;
  color: var(--paper);
  font-size: clamp(1.35rem, 2vw, 2rem);
  line-height: 1.12;
  letter-spacing: -.025em;
}
.about-law-grid p { max-width: 470px; margin: 0; color: var(--muted); }

.about-origin {
  display: grid;
  grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
  gap: clamp(54px, 8vw, 120px);
  align-items: center;
  padding: 120px max(28px, calc((100vw - 1160px) / 2));
  background: var(--blue);
  border-block: 1px solid var(--line);
}
.about-origin-photo {
  position: relative;
  margin: 0;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border: 1px solid #38414a;
  border-radius: 22px;
  background: #080b0f;
  box-shadow: 0 35px 90px rgba(0, 0, 0, .5);
}
.about-origin-photo picture,
.about-origin-photo img { width: 100%; height: 100%; display: block; }
.about-origin-photo img { object-fit: cover; object-position: center; }
.about-origin-photo::after {
  content: "";
  position: absolute;
  inset: 45% 0 0;
  background: linear-gradient(0deg, rgba(7, 10, 14, .96), transparent);
  pointer-events: none;
}
.about-origin-photo figcaption {
  position: absolute;
  z-index: 1;
  inset: auto 30px 28px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.about-origin-photo figcaption b {
  color: var(--paper);
  font-size: clamp(1.5rem, 2.4vw, 2.5rem);
  line-height: 1;
  letter-spacing: -.035em;
}
.about-origin-photo figcaption span { color: var(--ink); font-size: .9rem; }
.about-origin-copy h2 {
  margin: 24px 0 28px;
  font-size: clamp(2.6rem, 4.7vw, 5.2rem);
  font-weight: 680;
  line-height: .98;
  letter-spacing: -.045em;
}
.about-origin-copy > p:not(.kicker) {
  max-width: 680px;
  color: var(--ink);
  font-size: 1rem;
  line-height: 1.8;
}
.about-bio { margin-top: 36px; padding-top: 28px; border-top: 1px solid #36404a; }
.about-bio > div { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.about-bio b { color: var(--paper); font-size: 1rem; }
.about-bio span { color: var(--prestige); font-size: .72rem; font-weight: 760; letter-spacing: .1em; text-transform: uppercase; }
.about-bio p { max-width: 660px; margin: 14px 0 0; color: var(--muted); font-size: .9rem; line-height: 1.72; }

.about-standard {
  padding: 120px max(28px, calc((100vw - 1160px) / 2));
  background: var(--night);
  text-align: center;
}
.about-standard h2 {
  max-width: 970px;
  margin: 24px auto 34px;
  font-size: clamp(2.5rem, 5vw, 5.3rem);
  font-weight: 680;
  line-height: 1;
  letter-spacing: -.045em;
  text-wrap: balance;
}

@media (max-width: 900px) {
  .about-thesis,
  .about-doctrine,
  .about-origin,
  .about-standard { padding: 82px 22px; }
  .about-doctrine-head { grid-template-columns: 1fr; gap: 18px; margin-bottom: 42px; }
  .about-law-grid { grid-template-columns: 1fr; }
  .about-law-grid article { min-height: 230px; padding: 26px; }
  .about-law-grid h3 { margin-top: 48px; }
  .about-origin { grid-template-columns: 1fr; gap: 48px; }
  .about-origin-photo { width: min(100%, 560px); justify-self: center; }
}

@media (max-width: 520px) {
  .about-thesis h2,
  .about-doctrine-head h2,
  .about-origin-copy h2,
  .about-standard h2 { font-size: 2.45rem; }
  .about-origin-photo { border-radius: 16px; }
  .about-origin-photo figcaption { inset: auto 22px 22px; }
}

/* Install link in the static-page nav, menu and footer. Added 2026-09-09: rackiq.ai/app
   was live and orphaned, with no link to it on any surface, so every visitor who wanted
   the app had nowhere to go. Brand orange so it reads as the action in a row of grey
   navigation links, not as one more page. */
.nav-get-app{color:#ff6a00;font-weight:750}
.nav-get-app:hover{color:#ff8a00}
