.dualuse {
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px; --s-6: 32px; --s-7: 48px; --s-8: 64px; --s-9: 96px;
  --section-y: clamp(64px, 11vw, 176px);
  --gutter: clamp(16px, 3vw, 32px);
  --measure: 62ch;
  --t-cover: clamp(56px, 8vw, 112px);
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
}
.dualuse h1, .dualuse h2, .dualuse h3 { line-height: 0.95; margin-bottom: var(--s-5); }
.dualuse .du-cover h1 { font-size: var(--t-cover); letter-spacing: -0.03em; }
.dualuse .du-h1 { font-family: Anton, Impact, sans-serif; font-weight: 400; font-size: clamp(44px, 6vw, 92px); line-height: 0.92; text-transform: uppercase; }
.dualuse .du-deck { max-width: var(--measure); font-size: clamp(19px, 1.7vw, 24px); line-height: 1.4; font-weight: 500; margin-bottom: var(--s-8); }
.dualuse .du-sheet { background-image: none; background-color: var(--du-paper); }
.dualuse .du-section.du-sheet,
.dualuse .du-kit-cover.du-sheet {
  position: relative;
  inset: auto;
  z-index: auto;
  max-height: none;
  overflow: visible;
  border-top: 0;
}
.dualuse .du-section.du-sheet { padding: 72px 0; }
.dualuse .du-kit-cover.du-sheet { padding: 24px 0 12px; }
.dualuse .du-section { padding: var(--section-y) 0; }
.dualuse .du-grid { width: min(1200px, calc(100% - var(--gutter) * 2)); max-width: 100%; margin: 0 auto; min-width: 0; }
.dualuse .du-grid > *, .dualuse .du-cover-grid > * { min-width: 0; max-width: 100%; }
.dualuse h1, .dualuse h2, .dualuse .du-h1, .dualuse .du-deck { max-width: 100%; overflow-wrap: break-word; }
.dualuse, .dualuse-page { overflow-x: clip; }
.dualuse .du-folio { display: flex; justify-content: space-between; gap: var(--s-4); border-top: 2px solid var(--du-ink); padding-top: var(--s-3); margin-bottom: var(--s-6); color: var(--du-brown); letter-spacing: 0.14em; text-transform: uppercase; font-size: 12px; }
.dualuse .du-ink .du-folio { border-color: var(--du-paper); color: var(--du-paper); }
.du-contents { position: sticky; top: 0; z-index: 20; display: flex; gap: var(--s-4); overflow-x: auto; scrollbar-width: none; background: var(--du-paper); border-bottom: 2px solid var(--du-ink); padding: 10px var(--gutter); }
.du-contents::-webkit-scrollbar { display: none; }
.du-contents a { color: var(--du-ink); text-decoration: none; white-space: nowrap; }
.du-contents a.is-on { box-shadow: inset 0 -2px 0 var(--du-orange); }
.du-readbar { position: absolute; left: 0; bottom: 0; height: 3px; width: 100%; background: var(--du-field); transform: scaleX(var(--read, 0)); transform-origin: 0 50%; }
.du-headnav { display: none; }
@media (min-width: 800px) {
  .du-headnav { display: flex; gap: 16px; margin-left: auto; }
  .du-headnav a { color: var(--du-ink); text-decoration: none; }
}
.du-cover { padding: 24px 0 12px; }
.du-cover-grid { display: grid; gap: var(--s-6); align-items: center; }
.du-masthead-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 0 0 18px; }
.dualuse .du-paper p.du-masthead {
  display: inline-block; margin: 0;
  font-family: Anton, Impact, sans-serif;
  font-size: clamp(30px, 4.6vw, 64px);
  font-weight: 400; line-height: 0.95; letter-spacing: 0.01em; text-transform: uppercase;
  background: var(--du-ink); color: var(--du-paper);
  padding: 0.16em 0.3em;
  box-shadow: 6px 6px 0 var(--du-orange);
}
.dualuse .du-paper p.du-masthead em { color: var(--du-orange); font-style: normal; }
.du-event-chip {
  display: inline-block; margin: 0;
  border: 1.5px solid var(--du-ink); padding: 8px 10px;
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase;
}
.du-cover .du-viewfinder {
  min-height: 460px;
  display: flex; flex-direction: column; justify-content: flex-end;
  overflow: visible;
  padding: 16px 16px 18px;
}
.du-cover .du-drone-slot {
  top: 8%;
  width: min(200px, 58%);
  height: auto;
  aspect-ratio: 1;
  transform: translate(-50%, 0);
}
.du-cover .du-countdown {
  position: relative; z-index: 3;
  width: 100%;
  background: var(--du-paper);
  container-type: inline-size;
}
.du-cover .du-cd-blocks { width: 100%; gap: clamp(2px, 1.5cqi, 10px); }
.du-cover .du-cd-block { min-width: 0; flex: 1 1 0; }
.du-cover .du-cd-block b { font-size: clamp(22px, 16cqi, 56px); }
.du-cover .du-colon { font-size: clamp(16px, 8cqi, 40px); padding-bottom: 0.35em; }
@media (min-width: 900px) {
  .du-cover { min-height: calc(100svh - 120px); }
  .du-cover-grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr); }
}
.du-tiles { display: grid; grid-template-columns: 1fr 1fr; gap: var(--gutter); align-items: stretch; }
.du-tiles .is-mystery { grid-column: 1 / -1; background: var(--du-ink); color: var(--du-white); }
.du-tile {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 5;
  background: var(--du-paper);
  color: var(--du-ink);
  border: 2px solid var(--du-ink);
  min-width: 0;
  text-align: left;
}
.du-tile h3, .du-tile p { margin: 8px 12px; text-align: left; }
.du-tile .du-mono span, .du-tile-art { color: var(--du-orange-ink); }
.du-tile-art { aspect-ratio: 4 / 3; overflow: hidden; background: var(--du-paper); }
.du-tile-art svg { width: 100%; height: 100%; }
.du-tile.is-mystery .du-tile-art { background: var(--du-ink); }
.du-tile.is-mystery .du-q { display: grid; place-items: center; height: 100%; font-family: Anton, sans-serif; font-size: 96px; color: var(--du-peach); }
.du-tile.is-mystery .du-tile-blurb { grid-row: 3 / span 3; }
.du-tile-partner { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.du-tile-partner img { width: auto; height: 44px; max-width: 100%; object-fit: contain; object-position: left center; background: transparent; flex: none; }
.du-tile-partner .du-mono, .du-tile-prize { min-width: 0; }
.du-cross-note { margin-top: 16px; }
.du-partner-cross { background: var(--du-ink); color: var(--du-paper); padding: 20px; display: grid; gap: 8px; }
.dualuse .du-partner-cross, .dualuse .du-partner-cross p, .dualuse .du-partner-cross li, .dualuse .du-partner-cross h3 { color: var(--du-paper); }
.du-partner-cross h3, .du-partner-card h3, .du-mystery-strip h3, .du-partner-headline {
  font-family: Anton, Impact, sans-serif; font-weight: 400; text-transform: uppercase; line-height: 0.95; margin: 0;
}
.du-partner-cross h3, .du-partner-headline { font-size: clamp(32px, 4vw, 56px); }
.du-partner-cross h3 em { color: var(--du-peach); font-style: normal; }
.du-partner-headline em, .du-mystery-strip h3 em { color: var(--du-rust); font-style: normal; }
.du-partner-logo img { height: 88px; width: auto; max-width: 340px; object-fit: contain; }
.du-partner-logo.is-tile { background: #fff; display: inline-flex; padding: 8px 12px; width: fit-content; }
.du-partner-grid { display: grid; gap: 16px; margin-top: 16px; }
.du-partner-card { border: 2px solid var(--du-ink); background: var(--du-paper); color: var(--du-ink); padding: 16px; }
.du-lens-tag { display: inline-block; border: 1.5px solid var(--du-ink); padding: 4px 8px; }
.du-new { display: inline-block; margin-left: 8px; background: var(--du-field); color: var(--du-ink); font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 11px; letter-spacing: 0.08em; padding: 3px 6px; vertical-align: middle; }
.du-bullets { list-style: none; padding: 0; margin: 8px 0 0; }
.du-bullets li { display: flex; gap: 8px; align-items: flex-start; margin: 8px 0; }
.du-bullets svg { flex: none; margin-top: 3px; }
.du-mystery-strip { display: grid; gap: 12px; border: 2px dashed var(--du-ink); padding: 16px; margin-top: 16px; align-items: center; }
.du-mystery-mark { width: 64px; height: 64px; border-radius: 50%; background: var(--du-ink); color: var(--du-orange); display: grid; place-items: center; font-family: Anton, Impact, sans-serif; font-size: 36px; font-weight: 400; }
.du-sheet-links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
.du-bob-card { display: grid; gap: 4px; border: 2px solid var(--du-orange); color: var(--du-white); padding: 14px; text-decoration: none; margin-bottom: 12px; }
.dualuse .du-ink .du-bob-card, .dualuse .du-ink .du-bob-card strong, .dualuse .du-ink .du-bob-card span { color: var(--du-white); }
@media (min-width: 800px) {
  .du-partner-grid { grid-template-columns: 1fr 1fr; }
  .du-mystery-strip { grid-template-columns: auto 1fr; }
}
@media (min-width: 720px) { .du-tiles { grid-template-columns: repeat(3, 1fr); } .du-tiles .is-mystery { grid-column: auto; } }
@media (min-width: 1024px) { .du-tiles { grid-template-columns: repeat(5, 1fr); } }
.du-stakes, .du-field { display: grid; gap: var(--s-6); }
@media (min-width: 900px) {
  .du-stakes { grid-template-columns: 5fr 7fr; }
  .du-stake-left { grid-column: 1; }
  .du-stake-right { grid-column: 2; }
  .du-stakes .du-folio, .du-stakes h2, .du-field .du-folio, .du-field > h2 { grid-column: 1 / -1; }
}
.du-prizes { display: table; width: 100%; border-collapse: collapse; font-size: 15px; table-layout: fixed; }
.du-prizes th, .du-prizes td { text-align: left; padding: 8px; border-bottom: 1px solid var(--du-paper); vertical-align: top; }
.du-prizes th:nth-child(4), .du-prizes td:nth-child(4) { width: 46%; overflow-wrap: anywhere; }
.du-stake-right { min-width: 0; }
.dualuse .du-ink .du-pod .du-mono { color: var(--du-white); }
.du-pull { font-family: Anton, Impact, sans-serif; font-size: clamp(28px, 3vw, 48px); line-height: 0.95; color: var(--du-white); }
.du-pull span { color: var(--du-peach); }
.du-sheet .du-pull { color: var(--du-ink); }
.du-sheet .du-pull span { color: var(--du-rust); }
.du-feature, .du-side, .du-sides { display: grid; gap: var(--s-5); }
.dualuse h2.du-feature-title {
  font-family: Anton, Impact, sans-serif; font-weight: 400; text-transform: uppercase;
  font-size: clamp(32px, 3.4vw, 52px); line-height: 0.95; letter-spacing: 0.01em;
  margin: 8px 0 14px; max-width: 14ch;
}
.du-feature .du-deck { font-size: clamp(17px, 1.35vw, 20px); line-height: 1.45; margin: 0 0 16px; max-width: 42ch; }
.dualuse .du-feature-quote { font-size: clamp(20px, 1.8vw, 28px); line-height: 1.25; margin: 4px 0 16px; max-width: 28ch; }
.du-nowrap { white-space: nowrap; overflow-wrap: normal; word-break: keep-all; hyphens: none; }
@media (min-width: 800px) {
  .du-feature { grid-template-columns: 5fr 7fr; align-items: start; }
  .du-sides { grid-template-columns: 1fr 1fr; }
  .du-side { grid-template-columns: 3fr 4fr; }
}
.du-frame { border: 2px solid var(--du-ink); box-shadow: 8px 8px 0 var(--du-orange); background: var(--du-ink); aspect-ratio: 4 / 5; overflow: hidden; }
.du-side .du-frame { aspect-ratio: 3 / 4; }
.du-frame img, .du-mono-tile, .du-contact-frame img { width: 100%; height: 100%; object-fit: cover; }
.du-mono-tile { display: grid; place-items: center; color: var(--du-orange); background: var(--du-ink); position: relative; }
.du-mono-tile img { position: absolute; inset: 12%; opacity: 0.25; object-fit: contain; }
.du-mono-tile b { position: relative; font-family: Anton, sans-serif; font-size: 72px; }
.du-note { color: var(--du-orange-ink); font-weight: 700; }
.du-mast-head { display: grid; gap: 18px; align-items: end; margin-bottom: 8px; }
@media (min-width: 800px) { .du-mast-head { grid-template-columns: minmax(220px, 0.7fr) minmax(0, 1.3fr); } }
.dualuse .du-mast-head h2 { font-size: clamp(40px, 5vw, 72px); line-height: 0.9; letter-spacing: -0.03em; margin: 0; max-width: 10ch; }
.du-mast-head .du-filters { margin: 0; }
.du-mast-stats { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 16px 0 28px; }
.du-mast-stats li {
  margin: 0; border: 1.5px solid var(--du-ink); padding: 8px 10px;
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 12px;
  letter-spacing: 0.06em; text-transform: uppercase;
}
.du-mast-stats b { font-weight: 700; }
.dualuse h3.du-band { font-family: Anton, Impact, sans-serif; font-weight: 400; font-size: 22px; letter-spacing: 0.04em; text-transform: uppercase; margin: 8px 0 12px; }
.du-jury { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-bottom: 16px; align-items: stretch; }
.du-ink-fill { background: var(--du-ink); color: var(--du-paper, #faf7f0); padding: 16px; display: flex; flex-direction: column; justify-content: flex-end; gap: 8px; min-height: 180px; }
.du-ink-fill[hidden] { display: none; }
.du-ink-fill .du-mono { color: var(--du-orange); }
.du-ink-fill h3 { font-family: Anton, Impact, sans-serif; font-weight: 400; font-size: clamp(28px, 3vw, 44px); line-height: 0.95; letter-spacing: -0.02em; margin: 0; color: #fff; }
.du-ink-fill p { margin: 0; }
.du-jury-note { margin: 0 0 28px; }
@media (min-width: 768px) { .du-jury { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .du-jury { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 1280px) { .du-jury { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.du-sheetgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
@media (min-width: 768px) { .du-sheetgrid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .du-sheetgrid { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
@media (min-width: 1280px) { .du-sheetgrid { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.dualuse .du-contact {
  aspect-ratio: auto;
  height: auto;
  display: flex;
  flex-direction: column;
  background: rgba(250, 247, 240, 0.96);
  color: #111518;
  overflow: hidden;
}
.du-contact-copy {
  display: grid;
  gap: 6px;
  padding: 12px 12px 14px;
  background: rgba(250, 247, 240, 0.94);
  color: #111518;
}
.du-contact-copy strong {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.5em;
  max-height: 2.5em;
  margin: 0;
  color: #111518;
  font-family: Archivo, sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.02em;
}
.du-contact-hook {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 3em;
  font-family: Anton, Impact, sans-serif;
  font-weight: 400;
  font-size: 22px;
  line-height: 1;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.du-contact-org { color: var(--du-brown, #5c4a3a); letter-spacing: 0.04em; }
.du-contact-title {
  color: #111518;
  font-size: 14.5px;
  font-weight: 650;
  line-height: 1.35;
}
.du-contact-blurb {
  margin: 0;
  color: #241c18;
  font-size: 14.5px;
  font-weight: 500;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.du-contact-li {
  justify-self: start;
  margin-top: 2px;
  color: #111518;
  background: rgba(255, 255, 255, 0.72);
  border: 1.5px solid #111518;
  padding: 6px 10px;
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
}
.du-contact-li:hover { background: var(--du-field); color: var(--du-cream); }
.du-contact-frame { position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: var(--du-ink); }
.du-corner { position: absolute; top: 6px; left: 6px; background: var(--du-ink); color: var(--du-paper); padding: 2px 4px; font-size: 10px; }
.du-contact-frame .du-photo { filter: grayscale(1); border: 1.5px solid var(--du-ink); transition: filter 160ms linear; }
.du-contact:hover .du-contact-frame .du-photo,
.du-contact:focus-within .du-contact-frame .du-photo { filter: none; }
.du-detail-media .du-photo, .du-feature-photo .du-photo, .du-side .du-photo, .du-keynote-photo .du-photo { filter: none; }
.du-marquee { overflow: hidden; mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.du-orgs { display: flex; gap: 28px; white-space: nowrap; }
html.du-can-move .du-orgs { animation: du-marquee 28s linear infinite; }
.du-marquee:hover .du-orgs { animation-play-state: paused; }
@keyframes du-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.du-calbar { margin-bottom: var(--s-5); }
.du-calsheet { display: grid; gap: 8px; margin-top: 12px; max-width: 68ch; }
.du-calsheet label { display: flex; align-items: center; gap: 8px; font-weight: 650; }
.du-calsheet a { display: block; color: var(--du-ink); border: 1.5px solid var(--du-ink); padding: 10px 12px; text-decoration: none; line-height: 1.4; background: var(--du-paper); }
.du-calnote { margin: 4px 0 0; font-weight: 650; }
.du-fine { display: grid; gap: var(--s-6); align-items: start; }
.dualuse .du-fine h3 { font-family: Anton, Impact, sans-serif; font-weight: 400; font-size: 28px; letter-spacing: 0.02em; text-transform: uppercase; margin: 0 0 14px; }
.du-fine ol { list-style: decimal; margin: 0; padding: 0 0 0 1.25em; display: grid; gap: 14px; }
.du-fine ol li { line-height: 1.45; padding-left: 4px; }
@media (min-width: 900px) { .du-fine { grid-template-columns: 1fr 1fr 1.15fr; } }
.du-bring { list-style: none; padding: 0; margin: 0; display: grid; gap: 14px; }
.du-bring li { display: flex; gap: 12px; align-items: flex-start; margin: 0; color: var(--du-ink); line-height: 1.35; }
.du-bring svg { flex: none; color: var(--du-orange-ink); margin-top: 2px; }
.du-bring b { display: block; }
.du-bring-note { display: block; color: var(--du-brown); font-weight: 500; margin-top: 2px; }
.du-faq details p { margin: 4px 0 12px; line-height: 1.5; max-width: 46ch; }
.du-back { background: var(--du-field); color: var(--du-cream); padding: var(--section-y) 0; background-image: linear-gradient(rgba(243,234,220,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(243,234,220,.08) 1px, transparent 1px); background-size: 24px 24px; }
.du-back h2, .du-back p { color: var(--du-cream); }
.du-story { display: grid; gap: var(--s-5); }
@media (min-width: 900px) { .du-story { grid-template-columns: 1fr 280px; } }
.du-bezel { border: 10px solid var(--du-ink); border-radius: 36px; background: var(--du-paper); color: var(--du-ink); min-height: 220px; padding: 16px; }
.du-story-step { padding: 4px 0 4px 12px; border-left: 3px solid transparent; }
.du-story-step.is-on { border-left-color: var(--du-orange); }
@media (min-width: 900px) {
  html.du-can-move .du-story-step { min-height: 42vh; }
}
.du-phone-sticky { display: none; }
html.du-can-move .du-step-phone { display: block; }
@media (min-width: 900px) {
  html.du-can-move .du-phone-sticky { display: block; position: sticky; top: 88px; }
  html.du-can-move .du-step-phone { display: none; }
  html.du-can-move .du-screen { display: none; }
  html.du-can-move .du-screen.is-on { display: block; }
}
.du-guide-grid { display: grid; gap: 12px; }
@media (min-width: 700px) { .du-guide-grid { grid-template-columns: 1fr 1fr; } }
.du-guide, .du-kitcard { display: block; background: var(--du-paper); color: var(--du-ink); padding: 16px; text-decoration: none; min-height: 140px; }
.du-kitcard { background: var(--du-field); margin-top: 12px; }
.du-mini-code, .du-mini-drop, .du-mini-score { font-family: Anton, sans-serif; font-size: 28px; }
.du-mini-bar { height: 8px; background: var(--du-grid); }
.du-mini-bar i { display: block; height: 100%; width: 100%; background: var(--du-field); }
.dualuse .site-footer, .dualuse .site-footer a, .dualuse .footer-brand .wordmark, .dualuse .footer-brand .wordmark span { color: var(--du-paper); }
.dualuse .footer-brand .wordmark b { color: var(--du-cream); }
.dualuse .site-footer { background: var(--du-field); }
.dualuse .du-person-meta, .dualuse .du-person-meta strong { color: var(--du-ink); }
.dualuse .du-person-tagline { color: var(--du-orange-ink); }
@media print {
  * { opacity: 1 !important; transform: none !important; animation: none !important; }
}
@media (prefers-reduced-motion: reduce) {
  .du-orgs { animation: none !important; flex-wrap: wrap; white-space: normal; }
}
.du-kit-hero { display: grid; gap: var(--s-6); align-items: center; }
@media (min-width: 900px) { .du-kit-hero { grid-template-columns: 1.3fr 0.7fr; } }
.du-kit-cover { background-image: linear-gradient(rgba(17,21,24,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(17,21,24,.06) 1px, transparent 1px); background-size: 24px 24px; }
.du-kitbar { position: sticky; top: 64px; z-index: 15; background: var(--du-paper); border-bottom: 2px solid var(--du-ink); padding: 12px 0; }
.du-kit-search input { width: min(100%, 420px); border: 2px solid var(--du-ink); background: var(--du-paper); color: var(--du-ink); padding: 10px 12px; font: inherit; }
.du-kitbar .du-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0; }
.du-kitbar .du-chips button { border: 2px solid var(--du-ink); background: var(--du-paper); color: var(--du-ink); padding: 6px 10px; font-family: "JetBrains Mono", monospace; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.du-kitbar .du-chips button.is-on { background: var(--du-field); }
.du-kit-jumps { display: flex; gap: 14px; overflow-x: auto; }
.du-kit-jumps a { color: var(--du-ink); white-space: nowrap; }
.du-kit-empty { margin: 24px auto; }
.du-perk-grid, .du-deadline-row, .du-flash-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--gutter); }
@media (max-width: 420px) { .du-perk-grid, .du-deadline-row, .du-flash-grid { grid-template-columns: 1fr; } }
.du-perk, .du-learn, .du-deadline { display: block; border: 2px solid var(--du-ink); background: var(--du-paper); color: var(--du-ink); padding: 14px; text-decoration: none; }
.du-perk h3, .du-learn h3 { font-family: Archivo, sans-serif; font-weight: 700; font-size: 18px; line-height: 1.3; text-transform: none; margin: 8px 0; }
.du-perk-top { display: flex; justify-content: space-between; gap: 8px; align-items: flex-start; }
.du-badges { display: flex; flex-wrap: wrap; gap: 4px; margin: 0; }
.du-badge { font-family: "JetBrains Mono", monospace; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; padding: 2px 6px; border: 1px solid var(--du-ink); }
.du-badge.is-free { background: var(--du-field); border-color: var(--du-orange); color: var(--du-ink); }
.du-badge.is-tier { background: var(--du-ink); color: var(--du-paper); }
.du-badge.is-credits { background: transparent; color: var(--du-ink); }
.du-badge.is-code { border-style: dashed; border-color: var(--du-orange-ink); color: var(--du-orange-ink); }
.du-badge.is-paper { background: var(--du-paper); }
.du-claim { color: var(--du-orange-ink); margin: 0; }
.du-caption { color: var(--du-brown); font-size: 13px; line-height: 1.45; }
.du-learn .du-mono, .du-deadline .du-mono { color: var(--du-orange-ink); }
.du-deadline-date { font-family: Anton, Impact, sans-serif; font-size: 40px; line-height: 0.95; margin: 0 0 8px; }
.du-deadline.is-soon { border-color: var(--du-orange); box-shadow: 4px 4px 0 var(--du-orange); }
.du-deadline.is-closed { opacity: 0.55; }
.du-apply-list { display: grid; }
.du-apply { display: grid; gap: 4px; padding: 12px 0; border-top: 1px solid var(--du-ink); color: var(--du-ink); text-decoration: none; }
@media (min-width: 800px) { .du-apply { grid-template-columns: 1.1fr 2fr auto; align-items: baseline; gap: 16px; } }
.du-flash { margin-top: var(--s-6); background: var(--du-ink); color: var(--du-paper); padding: 16px; }
.du-flash header { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; align-items: baseline; }
.du-flash a, .du-flash h3 { color: var(--du-paper); }
.du-flash-grid p { display: grid; gap: 4px; margin: 0; background: var(--du-paper); color: var(--du-ink); padding: 12px; }
.du-know { display: grid; gap: var(--s-5); }
@media (min-width: 800px) { .du-know { grid-template-columns: 1fr 1fr; } .du-know h2, .du-know .du-caption { grid-column: 1 / -1; } }
@media (hover: hover) {
  .du-perk:hover, .du-learn:hover { transform: translateY(-2px); transition: transform 160ms var(--ease-out); }
}
@media (prefers-reduced-motion: reduce) {
  .du-perk:hover, .du-learn:hover { transform: none; }
}

.du-fold .du-cover { min-height: 0; padding: 10px 0 0; }
#brief, #stories, #partners, #stakes, #talks, #masthead, #weekend, #field, #fineprint, #one-pager, #cta, .du-flight {
  content-visibility: auto;
  contain-intrinsic-size: auto 720px;
}
.du-fold .du-cover h1 { font-size: clamp(32px, 8.4vw, 68px); margin: 0 0 8px; }
.du-eyebrow { margin: 0 0 6px; }
.du-define { max-width: 68ch; font-size: 15px; line-height: 1.35; margin: 0 0 6px; }
.du-source { margin: 0 0 8px; font-size: 12px; }
.du-source a { color: var(--du-orange-ink); }
.du-stats { display: block; background: var(--du-rust); color: var(--du-cream); padding: 14px 0 16px; }
.du-stats ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 10px; }
.du-stats li { min-width: 0; }
.du-stats b { display: block; font-family: Anton, Impact, sans-serif; font-weight: 400; font-size: 40px; line-height: 0.85; letter-spacing: 0.01em; color: var(--du-peach); }
.du-stats span { display: block; margin-top: 4px; font-size: 13px; line-height: 1.25; }
@media (min-width: 800px) {
  .du-stats ul { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .du-stats b { font-size: 56px; }
}
.du-hero-side { min-height: 280px; margin: 12px var(--gutter) 0; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; padding: 148px 12px 12px; }
.du-hero-side .du-drone-slot { width: 128px; height: 128px; top: 12px; transform: translate(-50%, 0); }
.du-hero-side .du-countdown { position: relative; z-index: 2; width: 100%; background: var(--du-paper); container-type: inline-size; }
.du-hero-side .du-cd-blocks { width: 100%; gap: clamp(2px, 1.5cqi, 8px); }
.du-hero-side .du-cd-block { min-width: 0; flex: 1 1 0; }
.du-hero-side .du-cd-block b { font-size: clamp(22px, 18cqi, 48px); }
.du-hero-side .du-colon { font-size: clamp(16px, 8cqi, 32px); padding-bottom: 0.35em; }
@media (min-width: 960px) {
  .du-fold { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(240px, 0.55fr); align-items: stretch; }
  .du-fold .du-cover { grid-column: 1; grid-row: 1; }
  .du-fold .du-hero-side { grid-column: 2; grid-row: 1; margin: 12px var(--gutter) 0 0; min-height: 0; }
  .du-fold .du-stats, .du-fold .du-keynote, .du-fold .du-rsvp { grid-column: 1 / -1; }
}
.du-keynote { background: var(--du-field); color: var(--du-cream); padding: 18px 0; }
.du-keynote h2 { color: var(--du-paper); font-size: clamp(28px, 4vw, 44px); margin-bottom: 8px; }
.du-keynote-grid { display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 16px; align-items: center; }
.du-keynote-photo .du-photo, .du-keynote-photo .du-mono-tile { width: 84px; height: 104px; object-fit: cover; border: 1.5px solid var(--du-paper); display: block; }
.du-keynote .du-btn-primary { background: var(--du-paper); color: var(--du-ink); }
.du-textlink { color: var(--du-paper); margin-left: 12px; }
.du-rsvp { background: var(--du-field); color: var(--du-cream); padding: 28px 0; }
.du-rsvp h2 { font-size: clamp(36px, 7vw, 72px); margin-bottom: 8px; }
.du-rsvp-live { display: none; }
.du-rsvp.is-live .du-rsvp-now { display: none; }
.du-rsvp.is-live .du-rsvp-live { display: block; }
.du-rsvp .du-btn-lg { background: var(--du-ink); color: var(--du-paper); min-height: 56px; padding: 14px 22px; font-size: 16px; }
.du-prize-lead { font-family: Anton, Impact, sans-serif; font-weight: 400; text-transform: uppercase; letter-spacing: 0.01em; font-size: 26px; line-height: 0.95; margin: 0 0 10px; }
@media (min-width: 800px) { .du-prize-lead { font-size: 32px; } }
.du-tile-about { display: block; margin-top: 4px; font-family: Archivo, sans-serif; font-size: 14px; font-weight: 400; letter-spacing: 0; text-transform: none; line-height: 1.35; }
.du-worked-title { font-family: Anton, Impact, sans-serif; font-weight: 400; text-transform: uppercase; font-size: clamp(28px, 4vw, 48px); margin: 28px 0 12px; }
.du-worked { overflow: hidden; height: auto; display: flex; align-items: center; margin: 0 0 8px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.du-worked-track { display: flex; align-items: center; width: max-content; animation: du-worked 42s linear infinite; }
.du-worked-set { display: flex; align-items: flex-start; gap: 36px; padding-right: 36px; }
.du-worked-tile { display: flex; flex-direction: column; align-items: center; gap: 6px; min-width: 92px; }
.du-worked-logo { height: 36px; width: auto; max-width: 120px; object-fit: contain; fill: currentColor; color: var(--du-ink); display: block; }
.du-worked-word { height: 30px; display: flex; align-items: center; font: 700 15px/1.1 Archivo, sans-serif; color: var(--du-ink); white-space: nowrap; }
.du-worked-caption { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 11px; letter-spacing: 0.04em; text-transform: uppercase; color: var(--du-ink); text-align: center; max-width: 120px; }
.du-worked-name { height: 30px; font: 700 22px/30px Archivo, sans-serif; color: var(--du-ink); white-space: nowrap; }
.du-worked:hover .du-worked-track, .du-worked:focus-within .du-worked-track { animation-play-state: paused; }
.du-worked-note { color: var(--du-brown); font-size: 13px; margin-top: 10px; }
@keyframes du-worked { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  .du-worked-track { animation: none; width: auto; flex-wrap: wrap; }
  .du-worked-set[aria-hidden="true"] { display: none; }
}
.du-snapshot, .du-awards { width: 100%; border-collapse: collapse; margin: 0 0 20px; }
.du-snapshot th, .du-snapshot td, .du-awards th, .du-awards td { border-bottom: 1px solid var(--du-ink); text-align: left; vertical-align: top; padding: 8px 12px 8px 0; }
.du-awards { display: block; overflow-x: auto; }
.du-places, .du-hub ul, .du-contacts { margin: 0 0 16px; padding-left: 1.1em; }
.du-hub { display: grid; gap: 20px; margin: 24px 0; }
@media (min-width: 800px) { .du-hub { grid-template-columns: 1fr 1fr 1fr; } }
.du-lead-stats { list-style: none; margin: 0 0 16px; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.du-lead-stats b { display: block; font-family: Anton, Impact, sans-serif; font-weight: 400; font-size: 40px; line-height: 0.9; }
.du-quick { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 16px; }
.du-quick a { color: var(--du-orange-ink); }
.du-qr { display: block; width: 180px; height: 180px; background: #fff; border: 1.5px solid var(--du-ink); margin-bottom: 8px; }
.du-stories article { margin-bottom: 28px; }
.du-stories p { max-width: 68ch; }
.du-score { margin: 0 0 12px; padding-left: 1.2em; }
.du-brand, .du-brand b, .du-brand span, .du-brand small { color: var(--du-forest); }
.du-paper a, .du-sheet a, .du-source a, .du-quick a { color: var(--du-rust); }
.du-ink a, .du-keynote a, .du-rsvp a, .du-back a, .du-textlink { color: var(--du-peach); }
.du-paper em { color: var(--du-rust); }
.du-ink em, .du-keynote em, .du-back em { color: var(--du-peach); }
.du-btn-primary, .du-highlight, .du-tag, .du-must, .du-more, .du-person-tag, .du-final,
.du-pod.is-first, .du-pod.is-first .du-pod-bar, .du-lens .du-iconcirc, .du-lens.is-mystery,
.du-filters button.is-on, .du-badge-card header, .dualuse.app .notice, .du-chips input:checked + span {
  color: var(--du-cream);
}
.du-keynote .du-btn-primary, .du-rsvp .du-btn-lg { background: var(--du-cream); color: var(--du-field); }
.du-paper a.du-btn-primary, .du-sheet a.du-btn-primary, a.du-btn-primary { color: var(--du-cream); }
.du-keynote a.du-btn-primary, .du-rsvp a.du-btn-lg { background: var(--du-cream); color: var(--du-field); }
.du-paper a.du-btn-secondary, .du-sheet a.du-btn-secondary { color: var(--du-cream); }
.dualuse a.du-btn-primary, .dualuse button.du-btn.du-btn-primary { color: var(--du-cream); }
.dualuse .du-keynote a.du-btn-primary,
.dualuse .du-rsvp a.du-btn-lg,
.dualuse .du-back a.du-btn-primary { background: var(--du-cream); color: var(--du-field); }
.dualuse .du-rsvp h2, .dualuse .du-keynote h2, .dualuse .du-back h2, .dualuse .du-back p { color: var(--du-cream); }
.dualuse .du-back .du-cd-block span, .dualuse .du-back .du-cd-label { color: var(--du-cream); }
.dualuse .du-partner-cross a { color: var(--du-peach); }
.dualuse .du-ink .du-guide,
.dualuse .du-ink .du-guide h3,
.dualuse .du-ink .du-guide p,
.dualuse .du-ink .du-guide .du-mono,
.dualuse .du-ink .du-guide span,
.dualuse .du-ink .du-kitcard,
.dualuse .du-ink .du-kitcard strong,
.dualuse .du-ink .du-kitcard span,
.dualuse .du-bezel,
.dualuse .du-bezel h3,
.dualuse .du-bezel p,
.dualuse .du-bezel .du-mono { color: var(--du-ink); }
.du-kitcard, .du-kitcard strong { background: var(--du-paper); color: var(--du-ink); }
.du-badge.is-free, .du-kitbar .du-chips button.is-on, .du-new,
.du-pod.is-first, .du-pod.is-first .du-mono, .du-pod.is-first b { color: var(--du-cream); }
.dualuse .footer-brand .wordmark b, .dualuse .site-footer a:hover { color: var(--du-cream); }
.du-demo-board { list-style: none; padding: 0; margin: 12px 0 0; }
.du-demo-board li { display: flex; justify-content: space-between; gap: 16px; font-size: clamp(28px, 4vw, 48px); font-family: Anton, Impact, sans-serif; text-transform: uppercase; border-bottom: 1px solid var(--du-ink); padding: 8px 0; }
.du-pilot, .du-rail { position: fixed; z-index: 40; pointer-events: none; }
.du-pilot { width: 64px; height: 64px; left: 0; top: 0; opacity: 0; }
.du-pilot.on { opacity: 1; }
.du-pilot svg { width: 64px; height: 64px; display: block; }
.du-rail { right: 10px; top: 96px; bottom: 24px; width: 0; border-right: 2px dashed #111418; opacity: 0; }
.du-rail.on { opacity: 0.55; }
@media (max-width: 760px) {
  .du-rail { top: auto; right: 12px; left: 12px; bottom: 18px; height: 0; width: auto; border-right: 0; border-bottom: 2px dashed #111418; }
}
@media (prefers-reduced-motion: reduce) {
  .du-pilot, .du-rail { display: none; }
}

/* Start here: our own four guides, ahead of the 130 outside links. */
.du-first-list { list-style: none; margin: 18px 0 0; padding: 0; display: grid; gap: 10px; counter-reset: none; }
.du-first-list a {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px 18px;
  padding: 16px 18px;
  border: 1.5px solid currentColor;
  text-decoration: none;
  color: inherit;
  transition: background-color 0.15s ease, color 0.15s ease;
}
.du-first-n { font-size: 0.8rem; opacity: 0.6; }
.du-first-body { display: grid; gap: 2px; min-width: 0; }
.du-first-body strong { font-size: 1.05rem; line-height: 1.25; }
.du-first-body em { font-style: normal; opacity: 0.72; font-size: 0.92rem; }
.du-first-time { font-size: 0.78rem; opacity: 0.6; white-space: nowrap; }
.du-first-list a:hover, .du-first-list a:focus-visible { background: #111418; color: #fbf6ef; }
@media (max-width: 620px) {
  .du-first-list a { grid-template-columns: auto minmax(0, 1fr); }
  .du-first-time { grid-column: 2; }
}

/* The line between what the weekend needs and the library behind it. */
.du-library-rule { border-top: 1.5px solid currentColor; }
.du-library-rule .du-deck { max-width: 60ch; }
