:root{--bg:#07060a;--text:#eee4cf;--muted:#a69c88;--line:rgba(238,228,207,.18);--accent:#e2b43f;--accent-soft:rgba(226,180,63,.14);--panel:rgba(255,255,255,.018);--sticky-header-height:96px}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at 19% 28%,rgba(238,228,207,.055),transparent 28%),radial-gradient(circle at 75% 30%,rgba(226,180,63,.035),transparent 28%),radial-gradient(circle at 52% 86%,rgba(238,228,207,.03),transparent 30%),var(--bg);color:var(--text);font-family:"Courier New",monospace;letter-spacing:-.025em;line-height:1.62}
a{color:inherit;text-decoration:none}
.page{width:min(1770px,calc(100% - 96px));margin:0 auto}
header{height:96px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40;background:rgba(7,6,10,.94);backdrop-filter:blur(14px)}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:20.4px}
.brand-logo{width:1.15em;height:1.15em;display:block;flex:none}
nav{display:flex;align-items:center;gap:34px;font-size:18.7px}
nav a{padding:28px 0 21px;opacity:.92;position:relative}
nav a.active{color:var(--accent)}
nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent)}
nav span{color:var(--muted);opacity:.7}
.hero{min-height:440px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:80px;padding:24px 0 24px}
h1{margin:0 0 26px;font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(64.6px,6.8vw,107.1px);line-height:.9;letter-spacing:.015em;text-shadow:0 18px 44px rgba(0,0,0,.7)}
.definition{font-size:23.8px;line-height:1.45;margin-bottom:28px}
.divider-mark{font-size:22.1px;margin:20px 0}
.tagline{font-size:18.7px;max-width:700px;margin:0}
.explore{display:inline-flex;align-items:center;gap:14px;color:var(--accent);font-size:19.6px;margin-top:34px}
.quote-block{justify-self:center;margin-top:16px;min-width:min(520px,100%)}
.quote-line{display:inline-flex;align-items:center;gap:12px;font-size:28.9px;line-height:1.25;white-space:nowrap}
.quote-author{margin-top:22px;font-size:19.6px;opacity:.86}
.info{width:26px;height:26px;border:1px solid rgba(238,228,207,.65);border-radius:50%;color:var(--text);background:transparent;display:inline-grid;place-items:center;cursor:pointer;font:inherit;font-size:12.8px;line-height:1;padding:0;position:relative}
.info:hover,.info:focus-visible{color:var(--accent);border-color:var(--accent);outline:none;background:var(--accent-soft)}
.tooltip-root{display:inline-flex;position:relative}
.tooltip{position:absolute;top:calc(100% + 14px);right:0;width:430px;padding:22px 24px;border:1px solid rgba(238,228,207,.26);background:rgba(7,6,10,.96);box-shadow:0 28px 80px rgba(0,0,0,.65);border-radius:8px;font-size:12.8px;line-height:1.65;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .16s ease,transform .16s ease;z-index:20;white-space:pre-line;letter-spacing:-.02em}
.tooltip strong{display:block;color:var(--accent);font-weight:400;margin-bottom:10px;font-size:15.3px}
.tooltip-root.open .tooltip,.tooltip-root:hover .tooltip,.tooltip-root:focus-within .tooltip{opacity:1;transform:translateY(0);pointer-events:auto}
.grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.card{min-height:430px;padding:38px 34px 34px;border-right:1px solid var(--line);position:relative;background:linear-gradient(180deg,var(--panel),transparent)}
.card:last-child{border-right:0}.num{font-size:17px;opacity:.95}.icon{position:absolute;right:42px;top:40px;color:rgba(238,228,207,.58);width:40px;height:40px;line-height:1}.icon svg{width:100%;height:100%;display:block;stroke:currentColor}.icon .accent{stroke:var(--accent)}.icon .alien-icon{fill:currentColor;stroke:none}.icon .alien-icon path{fill:currentColor;stroke:none}
h2{margin:24px 0 10px;font-size:28.9px;font-weight:400;line-height:1}.mini-dash{font-size:20.4px;margin-bottom:22px}
ul{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:17px}
li a{display:flex;justify-content:space-between;gap:24px;align-items:center}li a span:last-child{color:var(--accent)}
.card-cta{position:absolute;left:34px;bottom:34px;color:var(--accent);font-size:17.8px}
footer{min-height:80px;display:grid;grid-template-columns:1fr auto;align-items:center;color:var(--muted);font-size:15.3px}.footer-left{text-align:left;justify-self:start}.footer-note{text-align:right;justify-self:end}

.tagline-mark{
  display:inline;
  text-decoration-line: underline;
  text-decoration-color: var(--accent);
  text-decoration-thickness: 1px;
  text-underline-offset: 8px;
  text-decoration-style: solid;
}

.tooltip-left .tooltip{
  left:0;
  right:auto;
  transform:translateY(-6px);
}

.tooltip-left.open .tooltip,
.tooltip-left:hover .tooltip,
.tooltip-left:focus-within .tooltip{
  transform:translateY(0);
}

.tooltip-quote .tooltip{
  right:0;
  left:auto;
}

@media(max-width:1100px){:root{--sticky-header-height:139px}.page{width:min(100% - 36px,900px)}header{height:var(--sticky-header-height);padding:24px 0;flex-direction:column;align-items:flex-start;gap:18px}nav{font-size:14.4px;gap:18px;flex-wrap:wrap}nav span{display:none}.hero{grid-template-columns:1fr;min-height:auto;gap:30px;padding:50px 0}.quote-block{justify-self:start}.quote-line{font-size:20.4px;white-space:normal}.grid{grid-template-columns:1fr 1fr}.card:nth-child(2){border-right:0}.card:nth-child(-n+2){border-bottom:1px solid var(--line)}footer{grid-template-columns:1fr;padding:24px 0;row-gap:8px}.footer-left{text-align:left;justify-self:start}.footer-note{text-align:left;justify-self:start}}
@media(max-width:650px){
  .definition,.tagline,.explore{font-size:15.3px}
  .grid{grid-template-columns:1fr}
  .card,.card:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}
  .card:last-child{border-bottom:0}
  .card{min-height:360px}
  .tooltip{
    width:min(340px,calc(100vw - 36px));
    left:0;
    right:auto;
    max-width:calc(100vw - 36px);
  }
  .quote-line{align-items:flex-start}
  .tooltip-quote .tooltip{
    left:auto;
    right:0;
  }
}

.section-hero{padding:58px 0 0}
.section-hero h1{font-size:58px;margin:0 0 22px}
.section-hero .mini-dash{font-size:24px;margin:18px 0}
.section-hero .tagline{font-size:16px;line-height:1.85;margin:0}

@media(max-width:650px){
  .section-hero h1{font-size:42px}
  .section-hero .tagline{font-size:14px}
}

.error-page{min-height:70vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:80px 0;gap:4px}

/* Legal / copyright page: a readable single column, matching the site type. */
.legal{max-width:760px;margin:0 auto;padding:64px 0 96px;color:var(--text)}
.legal h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(40px,5vw,64px);line-height:.95;margin:0 0 30px}
.legal h2{font-size:15px;letter-spacing:.02em;text-transform:lowercase;color:var(--muted);margin:34px 0 10px;font-weight:400}
.legal p{font-size:15px;line-height:1.75;margin:0 0 14px;color:var(--text)}
.legal a{color:var(--accent);text-decoration:none}
.legal a:hover{text-decoration:underline}
/* Footer legal link. */
.footer-left a{color:inherit;text-decoration:none;border-bottom:1px solid transparent}
.footer-left a:hover{border-bottom-color:currentColor}
/* Ensure links/buttons show the hand cursor on hover (some setups render the
   default arrow on styled anchors until :active). */
a[href],button,[role="button"],summary,label[for]{cursor:pointer}
