/* ==========================================================================
   LUA — project page stylesheet. Self-contained: the only font is embedded
   below as a data URI (STIX Two Text, variable weight, latin subset, OFL).
   Palette: cool paper + ink + cobalt. Signature: the hero's densifying
   latent grid (44 → 22 → 11 px), i.e. ×2 / ×4 upscaling drawn as ambience.
   ========================================================================== */

@font-face {
  font-family: "STIX Two Text";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(data:font/woff2;base64,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) format("woff2");
}

/* ---------------- Tokens ---------------- */
:root {
  --paper:       #faf9f7;
  --card:        #ffffff;
  --wash:        #f3f0ec;
  --ink:         #1a1512;
  --muted:       #6b625c;
  --line:        #e9e3dd;
  --line-strong: #d3c9c1;
  --accent:      #c8102e;
  --accent-deep: #97001f;
  --accent-wash: rgba(200, 16, 46, .055);
  --grid-line:   rgba(200, 16, 46, .09);
  --code-bg:     #1c1210;
  --code-fg:     #f3ebe7;
  --shadow:      0 1px 2px rgba(26, 21, 18, .05), 0 8px 28px rgba(26, 21, 18, .07);

  --serif: "STIX Two Text", Georgia, "Times New Roman", serif;
  --sans:  -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --mono:  ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;

  --maxw: 1060px;
  --prose: 720px;
  --radius: 12px;
}

@media (prefers-color-scheme: dark) {
  :root {
    --paper:       #131010;
    --card:        #1b1616;
    --wash:        #171212;
    --ink:         #f1ece8;
    --muted:       #b3a79f;
    --line:        #322a27;
    --line-strong: #52453f;
    --accent:      #ff6b60;
    --accent-deep: #ffb0a8;
    --accent-wash: rgba(255, 107, 96, .09);
    --grid-line:   rgba(255, 107, 96, .10);
    --shadow:      0 1px 2px rgba(0, 0, 0, .4), 0 10px 32px rgba(0, 0, 0, .45);
  }
}
:root[data-theme="dark"] {
  --paper:       #131010;
  --card:        #1b1616;
  --wash:        #171212;
  --ink:         #f1ece8;
  --muted:       #b3a79f;
  --line:        #322a27;
  --line-strong: #52453f;
  --accent:      #ff6b60;
  --accent-deep: #ffb0a8;
  --accent-wash: rgba(255, 107, 96, .09);
  --grid-line:   rgba(255, 107, 96, .10);
  --shadow:      0 1px 2px rgba(0, 0, 0, .4), 0 10px 32px rgba(0, 0, 0, .45);
}
:root[data-theme="light"] {
  --paper:       #faf9f7;
  --card:        #ffffff;
  --wash:        #f3f0ec;
  --ink:         #1a1512;
  --muted:       #6b625c;
  --line:        #e9e3dd;
  --line-strong: #d3c9c1;
  --accent:      #c8102e;
  --accent-deep: #97001f;
  --accent-wash: rgba(200, 16, 46, .055);
  --grid-line:   rgba(200, 16, 46, .09);
  --code-bg:     #1c1210;
  --code-fg:     #f3ebe7;
  --shadow:      0 1px 2px rgba(26, 21, 18, .05), 0 8px 28px rgba(26, 21, 18, .07);
}

/* ---------------- Base ---------------- */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 64px; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 400 17px/1.65 var(--sans);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; text-underline-offset: 3px; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 4px; }
img { max-width: 100%; height: auto; }
p { margin: 0 0 16px; }

.container { max-width: var(--maxw); margin: 0 auto; padding: 0 24px; }
.prose { max-width: var(--prose); margin-left: auto; margin-right: auto; }

/* ---------------- Theme toggle ---------------- */
.theme-toggle {
  position: fixed; top: 12px; right: 16px; z-index: 60;
  width: 38px; height: 38px; border-radius: 50%;
  display: grid; place-items: center;
  background: var(--card); color: var(--muted);
  border: 1px solid var(--line-strong);
  cursor: pointer;
  box-shadow: var(--shadow);
  transition: color .12s ease, transform .12s ease;
}
.theme-toggle:hover { color: var(--accent); transform: translateY(-1px); }
.theme-toggle svg { width: 17px; height: 17px; }
/* Icon shows the theme you'd switch TO, driven by the same mechanism as the tokens */
.theme-toggle .ic-sun { display: none; }
@media (prefers-color-scheme: dark) {
  .theme-toggle .ic-moon { display: none; }
  .theme-toggle .ic-sun { display: block; }
}
:root[data-theme="dark"] .theme-toggle .ic-moon { display: none; }
:root[data-theme="dark"] .theme-toggle .ic-sun { display: block; }
:root[data-theme="light"] .theme-toggle .ic-moon { display: block; }
:root[data-theme="light"] .theme-toggle .ic-sun { display: none; }

/* ---------------- Sticky section nav ---------------- */
.topnav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 50;
  background: var(--paper);
  border-bottom: 1px solid var(--line);
  transform: translateY(-102%);
  transition: transform .25s ease;
}
.topnav.show { transform: none; }
.topnav-inner {
  position: relative;
  max-width: var(--maxw); margin: 0 auto; padding: 0 66px 0 24px;
  height: 50px;
  display: flex; align-items: center; gap: 26px;
}
.topnav .brand {
  font: 700 17px/1 var(--serif);
  color: var(--accent);
  letter-spacing: .01em;
  margin-right: auto;
}
.topnav .brand:hover { text-decoration: none; }
.topnav-links {
  display: flex; gap: 20px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.topnav-links::-webkit-scrollbar { display: none; }
.topnav .nlink {
  font: 600 13.5px/1 var(--sans);
  color: var(--muted);
  white-space: nowrap;
  padding: 6px 0;
}
.topnav .nlink:hover { color: var(--ink); text-decoration: none; }
.topnav .progress {
  position: absolute; left: 0; bottom: -1px;
  height: 2px; width: 0%;
  background: var(--accent);
  pointer-events: none;
}

/* ---------------- Hero ---------------- */
.hero { position: relative; padding: 84px 0 56px; text-align: center; overflow: hidden; }

/* Signature: latent grid that refines ×2, then ×4, left to right. */
.gridfx {
  position: absolute; inset: 0; pointer-events: none; user-select: none;
  -webkit-mask: radial-gradient(120% 130% at 50% -18%, #000 40%, transparent 78%);
          mask: radial-gradient(120% 130% at 50% -18%, #000 40%, transparent 78%);
}
.gridfx i { position: absolute; inset: 0; }
.gridfx .g1 {
  background:
    linear-gradient(var(--grid-line) 1px, transparent 1px) 0 0 / 44px 44px,
    linear-gradient(90deg, var(--grid-line) 1px, transparent 1px) 0 0 / 44px 44px;
  -webkit-mask: linear-gradient(90deg, #000 12%, transparent 46%);
          mask: linear-gradient(90deg, #000 12%, transparent 46%);
}
.gridfx .g2 {
  background:
    linear-gradient(var(--grid-line) 1px, transparent 1px) 0 0 / 22px 22px,
    linear-gradient(90deg, var(--grid-line) 1px, transparent 1px) 0 0 / 22px 22px;
  -webkit-mask: linear-gradient(90deg, transparent 26%, #000 50%, transparent 74%);
          mask: linear-gradient(90deg, transparent 26%, #000 50%, transparent 74%);
}
.gridfx .g3 {
  background:
    linear-gradient(var(--grid-line) 1px, transparent 1px) 0 0 / 11px 11px,
    linear-gradient(90deg, var(--grid-line) 1px, transparent 1px) 0 0 / 11px 11px;
  -webkit-mask: linear-gradient(90deg, transparent 56%, #000 88%);
          mask: linear-gradient(90deg, transparent 56%, #000 88%);
}
.hero .container { position: relative; }

.conf {
  display: inline-block;
  font: 700 12.5px/1 var(--sans);
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--accent);
  border: 1px solid var(--line-strong);
  background: var(--card);
  padding: 8px 16px; border-radius: 999px;
  margin-bottom: 32px;
}

.title {
  font: 640 clamp(34px, 5.2vw, 58px)/1.06 var(--serif);
  letter-spacing: -0.015em;
  text-wrap: balance;
  margin: 0 auto 20px;
  max-width: 22ch;
}
.title .lua { color: var(--accent); }

.subtitle {
  font: 400 clamp(17px, 2.2vw, 20.5px)/1.55 var(--serif);
  color: var(--muted);
  max-width: 56ch;
  text-wrap: balance;
  margin: 0 auto 38px;
}

.authors { font: 600 18.5px/1.6 var(--sans); margin: 0 auto 14px; }
.authors a { color: var(--ink); }
.authors a:hover { color: var(--accent); text-decoration: none; }
.authors .author { white-space: nowrap; margin: 0 .5em; }
.authors sup { color: var(--accent); font-weight: 700; font-size: .72em; }
.a-ico { display: inline-block; width: 13px; height: 13px; vertical-align: -1px; margin-left: 4px; opacity: .9; }
.affil { color: var(--muted); font-size: 15px; margin: 0 auto 10px; }
.affil .num { color: var(--accent); font-weight: 700; }
.contrib-note { color: var(--muted); font-size: 13.5px; margin: 0 auto; }
.contrib-note .star { color: var(--accent); font-weight: 700; }

.session {
  color: var(--muted); font-size: 14px; line-height: 1.5;
  margin: 22px auto 0; max-width: 620px;
}
.session b { color: var(--ink); font-weight: 600; }
.session .pin { color: var(--accent); font-size: 9px; vertical-align: 2px; }

.links { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin: 42px auto 0; }
.btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 10px 19px; border-radius: 999px;
  font: 600 15px/1.2 var(--sans);
  background: var(--ink); color: var(--paper);
  border: 1px solid transparent;
  transition: transform .14s ease, box-shadow .14s ease;
}
.btn:hover { text-decoration: none; transform: translateY(-1px); box-shadow: var(--shadow); }
.btn svg { width: 17px; height: 17px; flex: none; }
.btn.primary { background: var(--accent); color: #fff; }
@media (prefers-color-scheme: dark) { .btn.primary { color: #131010; } }
:root[data-theme="dark"] .btn.primary { color: #131010; }
:root[data-theme="light"] .btn.primary { color: #fff; }
.btn.ghost {
  background: transparent; color: var(--muted);
  border-color: var(--line-strong);
  cursor: default;
}
.btn.ghost:hover { transform: none; box-shadow: none; }
.btn .soon {
  font: 700 10.5px/1 var(--sans); letter-spacing: .06em; text-transform: uppercase;
  color: var(--accent); border: 1px solid currentColor;
  padding: 3px 7px; border-radius: 999px;
}

/* Hero load sequence */
@media (prefers-reduced-motion: no-preference) {
  .hero .rise { opacity: 0; transform: translateY(14px); animation: rise .7s cubic-bezier(.2,.7,.2,1) forwards; }
  .hero .rise.d1 { animation-delay: .05s; }
  .hero .rise.d2 { animation-delay: .14s; }
  .hero .rise.d3 { animation-delay: .23s; }
  .hero .rise.d4 { animation-delay: .32s; }
  @keyframes rise { to { opacity: 1; transform: none; } }
}

/* ---------------- Sections ---------------- */
section { padding: 64px 0; }
section.wash { background: var(--wash); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
section + section.plain { padding-top: 0; }

.eyebrow {
  display: flex; align-items: center; gap: 14px;
  justify-content: center;
  font: 700 12.5px/1 var(--sans);
  letter-spacing: .16em; text-transform: uppercase;
  color: var(--accent);
  margin: 0 0 14px;
}
.eyebrow::before, .eyebrow::after {
  content: ""; height: 1px; width: 44px; background: var(--line-strong);
}

h2.section-title {
  text-align: center;
  font: 620 clamp(25px, 3.2vw, 35px)/1.18 var(--serif);
  letter-spacing: -0.012em;
  text-wrap: balance;
  margin: 0 0 12px;
}
.lede {
  text-align: center;
  font: 400 18px/1.65 var(--serif);
  color: var(--muted);
  max-width: 62ch;
  text-wrap: balance;
  margin: 0 auto 40px;
}
.lede b, .lede strong { color: var(--ink); font-weight: 600; }

/* Abstract */
.abstract p {
  font: 400 18.5px/1.78 var(--serif);
  margin-bottom: 20px;
}
.abstract p:last-child { margin-bottom: 0; }
.abstract b { font-weight: 620; }

/* ---------------- Figures ---------------- */
figure { margin: 0 auto; text-align: center; }
figure + figure { margin-top: 48px; }
.gallery figure { margin: 0; }   /* grid gap spaces gallery tiles, not the stacked-figure margin */
figure.narrow img { max-width: min(100%, 600px); }   /* plots that don't need full width */
figure img {
  max-width: min(100%, 900px);   /* a notch narrower than the container */
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: var(--shadow);
}
figcaption {
  font: 400 14.5px/1.6 var(--sans);
  color: var(--muted);
  max-width: 76ch;
  margin: 16px auto 0;
}
figcaption b { color: var(--ink); font-weight: 600; }
figure img { cursor: zoom-in; }

/* Method figure carousel */
.method-carousel { max-width: 900px; }
.carousel-stage {
  position: relative;
  width: 100%;
  aspect-ratio: 1600 / 963;
  display: grid;
  place-items: center;
}
.carousel-slide {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
}
.carousel-slide[hidden], .carousel-caption[hidden] { display: none; }
.carousel-slide picture {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
}
.carousel-slide img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}
.carousel-arrow {
  position: absolute;
  z-index: 4;
  top: 50%;
  width: 44px;
  height: 44px;
  padding: 0;
  display: grid;
  place-items: center;
  transform: translateY(-50%);
  color: var(--ink);
  background: var(--card);
  border: 1px solid var(--line-strong);
  border-radius: 50%;
  box-shadow: var(--shadow);
  cursor: pointer;
  transition: color .14s ease, transform .14s ease, border-color .14s ease;
}
.carousel-arrow:hover {
  color: var(--accent);
  border-color: var(--accent);
  transform: translateY(-50%) scale(1.05);
}
.carousel-arrow svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.carousel-prev { left: 12px; }
.carousel-next { right: 12px; }
.carousel-pagination {
  min-height: 24px;
  margin: 12px auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.carousel-dot {
  width: 8px;
  height: 8px;
  padding: 0;
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  background: transparent;
  cursor: pointer;
  transition: width .16s ease, background .16s ease, border-color .16s ease;
}
.carousel-dot.is-active {
  width: 24px;
  background: var(--accent);
  border-color: var(--accent);
}
.carousel-slide-label {
  margin-left: 4px;
  color: var(--muted);
  font: 600 12px/1 var(--sans);
  letter-spacing: .025em;
}
.carousel-caption { display: inline; }

/* Lightbox */
.lightbox {
  position: fixed; inset: 0; z-index: 100;
  display: grid; place-items: center;
  padding: 24px;
  background: rgba(12, 9, 8, .93);
  opacity: 0; pointer-events: none;
  transition: opacity .18s ease;
  cursor: zoom-out;
}
.lightbox.open { opacity: 1; pointer-events: auto; }
.lightbox-close {
  position: absolute; top: 18px; right: 18px; z-index: 2;
  width: 42px; height: 42px; border-radius: 999px;
  display: grid; place-items: center; cursor: pointer;
  color: #fff; background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .28);
  font: 400 22px/1 var(--sans);
}
.lightbox-close:hover { background: rgba(255, 255, 255, .22); }
.lightbox-close:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.lightbox img {
  max-width: min(1600px, 94vw);
  max-height: 92vh;
  width: auto; height: auto;
  border-radius: 8px;
  box-shadow: 0 24px 80px rgba(0, 0, 0, .6);
  background: #fff;
}
figcaption .m { font-family: var(--mono); font-size: .92em; }

/* ---------------- Highlight cards ---------------- */
.cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 26px 24px 24px;
}
.card .ico {
  width: 42px; height: 42px; border-radius: 10px;
  display: grid; place-items: center;
  color: var(--accent); background: var(--accent-wash);
  margin-bottom: 16px;
}
.card .ico svg { width: 22px; height: 22px; }
.card h3 { font: 620 19px/1.3 var(--serif); margin: 0 0 8px; letter-spacing: -0.005em; }
.card p { margin: 0; color: var(--muted); font-size: 15.5px; line-height: 1.62; }

/* ---------------- Stats ---------------- */
.stats {
  display: flex; flex-wrap: wrap; justify-content: center;
  gap: 0; margin: 0 auto 44px;
  border: 1px solid var(--line); border-radius: var(--radius);
  background: var(--card); overflow: hidden;
  max-width: 920px;
}
.stat { flex: 1 1 170px; padding: 16px 13px 14px; text-align: center; border-left: 1px solid var(--line); }
.stat:first-child { border-left: none; }
.stat .hdr {
  font: 700 11.5px/1 var(--sans);
  letter-spacing: .08em; text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 8px;
}
.stat .num {
  font: 600 clamp(16.5px, 1.9vw, 20px)/1.3 var(--serif);
  font-variant-numeric: tabular-nums;
  color: var(--ink);
}
.stat .num b { color: var(--accent-deep); font-weight: 700; }
.stat .num .was { color: var(--muted); font-weight: 400; }
.stat .num .arr { color: var(--muted); font-size: .82em; }
.stat .lbl { color: var(--muted); font-size: 12px; margin-top: 5px; line-height: 1.45; }

/* ---------------- Booktabs results table ---------------- */
.table-wrap { overflow-x: auto; max-width: 880px; margin: 0 auto; }
table.results {
  width: 100%; min-width: 680px;
  border-collapse: collapse;
  font-size: 14px;
  border-top: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
}
table.results th {
  font: 600 13px/1.4 var(--sans);
  padding: 10px 12px 9px;
  border-bottom: 1px solid var(--ink);
  text-align: right;
}
table.results td {
  padding: 7px 12px;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
table.results th:first-child, table.results th:nth-child(2) { text-align: left; }
/* First logical columns (resolution rowspan cell + method name) align left */
table.results td[rowspan],
table.results tbody tr:not(:first-child) td:first-child,
table.results tbody tr:first-child td:nth-child(2) { text-align: left; }
table.results td[rowspan] {
  vertical-align: middle;
  font: 600 13px/1.4 var(--sans);
  color: var(--muted);
  white-space: nowrap;
}
table.results tbody + tbody tr:first-child td { border-top: 1px solid var(--line-strong); }
table.results tr.lua td { background: var(--accent-wash); font-weight: 600; }
table.results .best { font-weight: 700; color: var(--accent-deep); }
.table-note {
  text-align: center; color: var(--muted);
  font-size: 13.5px; margin-top: 14px;
}

/* ---------------- Drag-compare slider ---------------- */
.slider {
  position: relative;
  max-width: 720px; margin: 0 auto;
  aspect-ratio: 1 / 1;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  overflow: hidden;
  background: var(--wash);
  user-select: none; touch-action: none;
  cursor: ew-resize;
  box-shadow: var(--shadow);
}
.slider .pane { position: absolute; inset: 0; overflow: hidden; }
.slider .pane.before { z-index: 2; }
.slider img {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  max-width: none;
  border: 0; border-radius: 0; box-shadow: none;
}
/* 'vs base' mode magnifies the pixel-aligned pair; 'vs direct' shows full frames */
.slider.zoomed img { transform: scale(2.4); transform-origin: 50% 40%; }
.slider .pane.before img:not(.active) { display: none; }
.slider .divider {
  position: absolute; top: 0; bottom: 0; left: 50%; width: 2px;
  background: #fff; z-index: 3; transform: translateX(-50%);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, .22);
}
.slider .knob {
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 40px; height: 40px; border-radius: 50%;
  background: #fff; z-index: 4;
  box-shadow: 0 2px 12px rgba(0, 0, 0, .35);
  display: grid; place-items: center;
}
.slider .knob::before, .slider .knob::after {
  content: ""; width: 0; height: 0; position: absolute;
  border-top: 5px solid transparent; border-bottom: 5px solid transparent;
}
.slider .knob::before { left: 9px;  border-right: 6px solid #131722; }
.slider .knob::after  { right: 9px; border-left:  6px solid #131722; }
.slider .tag {
  position: absolute; z-index: 5;
  font: 700 12px/1.5 var(--sans); letter-spacing: .04em;
  color: #fff; background: rgba(10, 12, 20, .62);
  padding: 5px 12px; border-radius: 999px;
  pointer-events: none;
}
.slider .tag.l  { left: 12px;  bottom: 12px; }
.slider .tag.r  { right: 12px; bottom: 12px; }
.slider .tag.tl { left: 12px;  top: 12px; }
.slider .tag.tr { right: 12px; top: 12px; }

.chips { display: flex; gap: 8px; justify-content: center; margin-top: 18px; }
.chip {
  font: 600 13.5px/1 var(--sans);
  color: var(--muted);
  background: var(--card);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 8px 16px; cursor: pointer;
  transition: background .12s ease, color .12s ease;
}
.chip[aria-pressed="true"] { background: var(--ink); color: var(--paper); border-color: var(--ink); }

/* ---------------- Gallery ---------------- */
.gallery { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.gallery a { display: block; border-radius: 10px; overflow: hidden; border: 1px solid var(--line); background: var(--wash); }
.gallery img {
  display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover;
  border: 0; border-radius: 0; box-shadow: none;
  transition: transform .25s ease;
}
@media (prefers-reduced-motion: no-preference) { .gallery a:hover img { transform: scale(1.04); } }
.gallery .cap {
  display: block; text-align: center;
  font: 500 13px/1.4 var(--sans); color: var(--muted);
  margin-top: 7px;
}

/* ---------------- BibTeX ---------------- */
.bibtex-wrap { position: relative; max-width: 840px; margin: 0 auto; }
pre.bibtex {
  background: var(--code-bg); color: var(--code-fg);
  border-radius: var(--radius);
  padding: 24px 24px;
  overflow-x: auto;
  font: 400 13.5px/1.65 var(--mono);
  margin: 0;
}
.copy-btn {
  position: absolute; top: 13px; right: 13px;
  font: 600 12.5px/1 var(--sans);
  color: #fff; background: rgba(255, 255, 255, .13);
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 7px; padding: 7px 13px; cursor: pointer;
  transition: background .12s ease;
}
.copy-btn:hover { background: rgba(255, 255, 255, .26); }

/* ---------------- Footer ---------------- */
footer {
  border-top: 1px solid var(--line);
  padding: 44px 0 40px;
  color: var(--muted);
  font-size: 14px;
  background: var(--wash);
}
.foot-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  max-width: 720px; margin: 0 auto 34px;
}
.foot-col h4 {
  font: 700 11.5px/1 var(--sans);
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--muted);
  margin: 0 0 12px;
}
.foot-col a, .foot-col .soon-inline {
  display: block;
  padding: 3.5px 0;
  font-size: 14.5px;
  color: var(--ink);
}
.foot-col a:hover { color: var(--accent); text-decoration: none; }
.foot-col .soon-inline { color: var(--muted); }
.foot-person {
  display: flex; align-items: center; gap: 10px;
  padding: 3.5px 0;
}
.foot-person .name { font-size: 14.5px; color: var(--ink); }
.foot-person .socials { display: inline-flex; gap: 4px; }
.foot-person .socials a {
  display: inline-flex; padding: 3px;
  color: var(--muted);
}
.foot-person .socials a:hover { color: var(--accent); }
.foot-person .socials svg { width: 14px; height: 14px; }
.foot-copy {
  text-align: center;
  margin: 0;
  font-size: 13px;
  color: var(--muted);
}
@media (max-width: 560px) {
  .foot-grid { grid-template-columns: 1fr; gap: 22px; text-align: center; }
  .foot-person { justify-content: center; }
}

/* ---------------- Responsive ---------------- */
@media (max-width: 880px) {
  .cards { grid-template-columns: 1fr; }
  .gallery { grid-template-columns: repeat(3, 1fr); }
  .stat { flex-basis: 45%; border-left: none; border-top: 1px solid var(--line); }
  .stat:nth-child(-n+2) { border-top: none; }
  .stat:nth-child(even) { border-left: 1px solid var(--line); }
}
@media (max-width: 560px) {
  body { font-size: 16px; }
  section { padding: 48px 0; }
  .hero { padding-top: 64px; }
  .gallery { grid-template-columns: repeat(2, 1fr); }
  .gallery .wide-last { grid-column: span 2; }
  .btn { padding: 9px 15px; font-size: 14px; }
  .conf { font-size: 11px; letter-spacing: .1em; }
  .carousel-arrow { width: 38px; height: 38px; }
  .carousel-arrow svg { width: 19px; height: 19px; }
  .carousel-prev { left: 8px; }
  .carousel-next { right: 8px; }
  .carousel-slide-label { font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .btn, .gallery img, .chip, .topnav, .theme-toggle, .lightbox,
  .carousel-arrow, .carousel-dot { transition: none; }
}
