:root {
  --paper: #f2ede2;
  --paper-2: #e9e2d2;
  --ink: #1a1a1a;
  --ink-soft: #3b3a37;
  --red: #d33a26;
  --yellow: #f6e35c;
  --lilac: #b9b4ea;
  --navy: #000080;
  --tape: rgba(232, 221, 186, .82);
  --grey98: #c0c0c0;
  --s: 1;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: clip; }

body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 400 18px/1.6 "Courier Prime", "Courier New", monospace;
  overflow-x: clip;
}

/* paper grain over everything */
body::before {
  content: "";
  position: fixed; inset: 0;
  pointer-events: none;
  z-index: 100;
  opacity: .35;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .45  0 0 0 0 .4  0 0 0 0 .32  0 0 0 .55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}

img { display: block; max-width: 100%; }
a { color: inherit; }

.wrap { width: min(980px, 100% - 32px); margin: 0 auto; position: relative; z-index: 2; }
.center { text-align: center; }
.section { position: relative; padding: 110px 0; overflow-x: clip; }

/* ---------- reusable paper bits ---------- */

.scribble { font-family: "Caveat", cursive; font-weight: 700; }

.label-tape {
  display: inline-block;
  background: var(--ink);
  color: #fff;
  font: 400 22px/1 "Anton", sans-serif;
  letter-spacing: .12em;
  padding: 10px 16px 9px;
  box-shadow: 2px 3px 0 rgba(0,0,0,.18);
  clip-path: polygon(0 4%, 3% 0, 97% 6%, 100% 0, 99% 96%, 96% 100%, 4% 94%, 0 100%);
}
.tilt-l { transform: rotate(-3deg); }

.tape {
  position: absolute;
  width: 120px; height: 32px;
  background: var(--tape);
  box-shadow: 0 1px 2px rgba(0,0,0,.12);
  z-index: 3;
  clip-path: polygon(0 0, 4% 15%, 0 30%, 5% 48%, 0 66%, 4% 82%, 0 100%, 100% 100%, 96% 85%, 100% 68%, 95% 50%, 100% 33%, 96% 17%, 100% 0);
}
.tape-top { top: -16px; left: 50%; transform: translateX(-50%) rotate(-3deg); }
.tape-tl { top: -10px; left: -34px; transform: rotate(-38deg); }
.tape-br { bottom: -6px; right: -34px; transform: rotate(-36deg); }

/* torn edges come from script.js (random clip-path per element) */
.torn { position: relative; }

/* ---------- ransom headings ---------- */

.ransom {
  margin: 0;
  display: flex; flex-wrap: wrap; align-items: center;
  gap: 2px;
  line-height: 1;
}
.ransom .rl {
  height: var(--h);
  width: auto;
  transform: rotate(var(--r)) translateY(var(--y));
  filter: drop-shadow(2px 3px 0 rgba(0,0,0,.18));
  transition: transform .2s;
}
.ransom .rl:hover { transform: rotate(calc(var(--r) * -1.6)) translateY(-6px) scale(1.06); }
.ransom .gap { width: calc(var(--h) * .35); }
.ransom-xl { --h: clamp(80px, 17vw, 168px); margin: 18px 0 10px; }
.ransom-lg { --h: clamp(52px, 9vw, 86px); margin-bottom: 36px; }
.center .ransom { justify-content: center; }

/* ---------- hero ---------- */

.hero { padding-top: 70px; min-height: 92vh; }
.hero-inner { max-width: 980px; }

.sticky-note {
  position: relative;
  width: min(420px, 100%);
  margin: 26px 0 30px 6px;
  padding: 30px 26px 24px;
  background: var(--yellow);
  font: 600 25px/1.25 "Caveat", cursive;
  transform: rotate(-2deg);
  box-shadow: 3px 6px 0 rgba(0,0,0,.12), 0 18px 28px -18px rgba(0,0,0,.4);
}
.sticky-note b { font-weight: 700; text-decoration: underline wavy rgba(211,58,38,.7) 1.5px; text-underline-offset: 4px; }

.chips { list-style: none; padding: 0; margin: 0 0 26px; display: flex; flex-wrap: wrap; gap: 12px; }
.chip {
  background: #fff;
  padding: 8px 16px 9px;
  font: 700 17px/1 "Courier Prime", monospace;
  text-transform: uppercase; letter-spacing: .06em;
  box-shadow: 2px 3px 0 rgba(0,0,0,.14);
}
.chip:nth-child(odd) { transform: rotate(-2deg); }
.chip:nth-child(even) { transform: rotate(2.5deg); }
.chip-y { background: var(--yellow); }
.chip-p { background: var(--lilac); }
.chip-dash { background: transparent; box-shadow: none; outline: 2px dashed var(--ink); outline-offset: -2px; }

.typed {
  display: inline-block;
  font-size: 19px;
  background: #fff;
  padding: 4px 10px;
  border-left: 4px solid var(--red);
  margin: 0;
}
.typed::after { content: "_"; animation: blink 1s steps(1) infinite; }
@keyframes blink { 50% { opacity: 0; } }

.scroll-hint { font-size: 26px; margin: 46px 0 0; transform: rotate(-4deg); width: fit-content; color: var(--ink-soft); }

/* ---------- ticker ---------- */

.ticker {
  background: var(--ink);
  color: var(--paper);
  overflow: hidden;
  transform: rotate(-1.5deg);
  margin: 0 -20px;
  padding: 14px 0 12px;
  position: relative; z-index: 4;
  box-shadow: 0 6px 0 rgba(0,0,0,.12);
}
.ticker-track { display: flex; width: max-content; animation: slide 28s linear infinite; }
.ticker span { font: 400 28px/1 "Anton", sans-serif; letter-spacing: .08em; white-space: pre; }
@keyframes slide { to { transform: translateX(-50%); } }

/* ---------- book ---------- */

.book { background:
  linear-gradient(transparent 0 0),
  repeating-linear-gradient(0deg, transparent 0 31px, rgba(60,90,160,.08) 31px 32px),
  repeating-linear-gradient(90deg, transparent 0 31px, rgba(60,90,160,.08) 31px 32px);
}
.kicker { font-size: 28px; margin: -18px 0 40px; transform: rotate(-1.5deg); display: inline-block; color: var(--red); }

.book-grid { display: grid; grid-template-columns: minmax(220px, 340px) 1fr; gap: 56px; align-items: center; }

.cover {
  position: relative;
  display: block;
  transform: rotate(-4deg);
  background: #fff;
  padding: 10px 10px 12px;
  box-shadow: 4px 8px 0 rgba(0,0,0,.14), 0 26px 40px -20px rgba(0,0,0,.5);
  transition: transform .25s;
}
.cover:hover { transform: rotate(-1deg) scale(1.02); }
.note-arrow {
  position: absolute;
  left: 46%; bottom: -58px;
  font-size: 26px; color: var(--red);
  transform: rotate(4deg);
  white-space: nowrap;
}
.note-arrow::before {
  content: "";
  position: absolute; left: -34px; top: -26px;
  width: 30px; height: 36px;
  border-top: 2.5px solid var(--red);
  border-left: 2.5px solid var(--red);
  border-radius: 40px 0 0 0;
}

.book-card {
  background: #fff;
  padding: 42px 38px 36px;
  box-shadow: 3px 5px 0 rgba(0,0,0,.12);
  transform: rotate(1.2deg);
}
.book-card h3 { font: 400 clamp(40px, 6vw, 62px)/.95 "Anton", sans-serif; margin: 0; letter-spacing: .01em; text-transform: uppercase; }
.book-card .sub { font-style: italic; margin: 10px 0 6px; font-size: 18px; }
.book-card .meta { font-size: 14px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-soft); border-top: 1.5px dashed var(--ink); border-bottom: 1.5px dashed var(--ink); padding: 8px 0; margin: 16px 0 18px; }
.stamp {
  position: absolute; top: 18px; right: 20px; margin: 0;
  font: 400 22px/1 "Permanent Marker", cursive;
  color: var(--red);
  border: 3px solid var(--red);
  padding: 6px 10px 4px;
  transform: rotate(12deg);
  opacity: .85;
}

.btn98 {
  display: inline-flex; align-items: center; gap: 10px;
  margin-top: 10px;
  padding: 9px 18px 9px 10px;
  background: var(--grey98);
  font: 400 26px/1 "VT323", monospace;
  text-decoration: none;
  box-shadow: inset -2px -2px #0a0a0a, inset 2px 2px #fff, inset -4px -4px #808080, inset 4px 4px #dfdfdf;
}
.btn98 img { width: 30px; }
.btn98:hover { background: #d4d0c8; }
.btn98:active { box-shadow: inset 2px 2px #0a0a0a, inset -2px -2px #fff, inset 4px 4px #808080; }

/* ---------- about ---------- */

.about { background: var(--paper-2); }
.about-grid { display: grid; grid-template-columns: 1.5fr 1fr; gap: 50px; align-items: start; }

.notebook {
  position: relative;
  background:
    linear-gradient(90deg, transparent 54px, rgba(211,58,38,.45) 54px 56px, transparent 56px),
    repeating-linear-gradient(#fdfcf7 0 33px, #a9c1e6 33px 34px);
  padding: 34px 34px 30px 76px;
  line-height: 34px;
  font-size: 18px;
  transform: rotate(-1deg);
  box-shadow: 3px 6px 0 rgba(0,0,0,.12);
}
.notebook p { margin: 0 0 34px; }
.notebook mark { background: linear-gradient(transparent 30%, var(--yellow) 30% 88%, transparent 88%); padding: 0 3px; }
.notebook .sign { font-size: 32px; margin: 0; text-align: right; }

.stats { display: grid; gap: 22px; padding-top: 10px; }
.stat {
  background: var(--ink);
  color: var(--paper);
  padding: 22px 24px 20px;
  display: flex; align-items: baseline; gap: 16px;
}
.stat b { font: 400 54px/1 "Anton", sans-serif; color: var(--yellow); }
.stat span { font-size: 16px; line-height: 1.3; }
.s1 { transform: rotate(2deg); }
.s2 { transform: rotate(-2.5deg); background: var(--red); }
.s2 b { color: #fff; }
.s3 { transform: rotate(1deg); background: #fff; color: var(--ink); }
.s3 b { color: var(--ink); font-size: 44px; }

/* ---------- experience (win98) ---------- */

.win98 {
  background: var(--grey98);
  padding: 4px;
  max-width: 760px;
  margin: 0 auto;
  transform: rotate(-.8deg);
  box-shadow: inset -1px -1px #0a0a0a, inset 1px 1px #dfdfdf, inset -2px -2px #808080, inset 2px 2px #fff, 8px 10px 0 rgba(0,0,0,.18);
}
.win98-title {
  display: flex; justify-content: space-between; align-items: center;
  background: linear-gradient(90deg, var(--navy), #1084d0);
  color: #fff;
  font: 400 24px/1 "VT323", monospace;
  padding: 4px 4px 4px 6px;
}
.win98-title span:first-child { display: flex; align-items: center; gap: 8px; }
.win98-title img { width: 24px; }
.win98-btns { display: flex; gap: 2px; }
.win98-btns i {
  font-style: normal; color: #000;
  width: 22px; height: 20px; display: grid; place-items: center;
  background: var(--grey98);
  font: 400 18px/1 "VT323", monospace;
  box-shadow: inset -1px -1px #0a0a0a, inset 1px 1px #fff, inset -2px -2px #808080;
}
.win98-menu { font: 400 20px/1 "VT323", monospace; padding: 6px 6px 5px; }
.win98-body {
  list-style: none; margin: 0; padding: 8px 18px;
  background: #fff;
  box-shadow: inset 1px 1px #808080, inset -1px -1px #fff, inset 2px 2px #0a0a0a;
}
.win98-body li {
  display: grid; grid-template-columns: 64px 1fr auto; gap: 18px; align-items: center;
  padding: 18px 0;
  border-bottom: 1.5px dashed #9a9a9a;
}
.win98-body li:last-child { border-bottom: 0; }
.win98-body li > img { width: 60px; }
.win98-body li > img.tall { width: 44px; justify-self: center; }
.win98-body h3 { margin: 0 0 2px; font: 700 20px/1.25 "Courier Prime", monospace; }
.win98-body p { margin: 0; font-size: 16px; color: var(--ink-soft); }
.badge {
  font: 400 26px/1 "Permanent Marker", cursive;
  padding: 6px 10px 3px;
  border: 3px solid;
  transform: rotate(-8deg);
}
.badge-red { color: var(--red); }
.badge-blue { color: #2442c9; transform: rotate(6deg); font-size: 20px; }
.win98-status { display: flex; gap: 4px; font: 400 18px/1 "VT323", monospace; padding-top: 4px; }
.win98-status span { flex: 1; padding: 4px 6px; box-shadow: inset 1px 1px #808080, inset -1px -1px #fff; }

/* ---------- 3D models (cork board) ---------- */

.models { background:
  radial-gradient(circle at 20% 30%, rgba(120,80,40,.10) 1px, transparent 2px) 0 0 / 7px 9px,
  radial-gradient(circle at 70% 60%, rgba(90,60,30,.12) 1px, transparent 2px) 0 0 / 11px 8px,
  #c9a77c;
}
.models .kicker { color: var(--ink); }
.board { display: grid; grid-template-columns: repeat(3, 1fr); gap: 34px 30px; }
.polaroid {
  position: relative; margin: 0;
  background: #fbfaf5;
  padding: 10px 10px 0;
  box-shadow: 2px 5px 0 rgba(0,0,0,.14), 0 16px 26px -16px rgba(0,0,0,.55);
  transition: transform .25s;
}
.polaroid img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; background: #3a3a3a; }
.polaroid figcaption { font: 700 26px/1 "Caveat", cursive; text-align: center; padding: 12px 0 14px; }
.polaroid:hover { transform: rotate(0) scale(1.04); z-index: 6; }
.p1 { transform: rotate(-3deg); } .p2 { transform: rotate(2deg) translateY(14px); } .p3 { transform: rotate(-1.5deg); }
.p4 { transform: rotate(2.5deg); } .p5 { transform: rotate(-2deg) translateY(10px); } .p6 { transform: rotate(3deg); }
.p7 { transform: rotate(-2.5deg) translateY(8px); } .p8 { transform: rotate(1.5deg); } .p9 { transform: rotate(-3deg) translateY(12px); }
.pin {
  position: absolute; top: -9px; left: 50%; z-index: 3;
  width: 20px; height: 20px; margin-left: -10px; border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #ff8a75, var(--red) 55%, #8a1f12);
  box-shadow: 2px 3px 2px rgba(0,0,0,.35);
}

/* ---------- art ---------- */

.art { background: var(--paper); }
.art-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 50px; align-items: center; }
.canvas {
  position: relative; margin: 0;
  background: #fff; padding: 14px 14px 0;
  transform: rotate(-2deg);
  box-shadow: 4px 8px 0 rgba(0,0,0,.14), 0 26px 40px -20px rgba(0,0,0,.5);
}
.canvas figcaption { font-size: 15px; padding: 10px 2px 14px; letter-spacing: .04em; }
.canvas figcaption b { font: 400 22px/1 "Anton", sans-serif; letter-spacing: .06em; text-transform: uppercase; margin-right: 6px; }
.sketch-stack { display: grid; gap: 30px; }
.sketch {
  position: relative; margin: 0;
  background: #fdfdf9;
  padding: 14px;
  box-shadow: 3px 6px 0 rgba(0,0,0,.12);
}
.sketch img { width: 100%; height: 260px; object-fit: contain; mix-blend-mode: multiply; }
.sketch figcaption { position: absolute; right: 18px; bottom: 10px; font: 700 28px/1 "Caveat", cursive; color: var(--red); transform: rotate(-6deg); }
.s-a { transform: rotate(2.5deg); }
.s-b { transform: rotate(-1.5deg); margin-left: 30px; }

/* ---------- graphics (confidential folder) ---------- */

.graphics { background: var(--paper); }
.folder { max-width: 720px; margin: 0 auto; transform: rotate(-1.2deg); }
.folder-tab {
  display: inline-block;
  background: #e2c98f;
  padding: 10px 22px 8px;
  font: 700 14px/1 "Courier Prime", monospace; letter-spacing: .12em;
  border-radius: 8px 8px 0 0;
  margin-left: 26px;
}
.folder-body {
  position: relative;
  background: #e2c98f;
  padding: 38px 40px 30px;
  box-shadow: 4px 8px 0 rgba(0,0,0,.14), 0 26px 40px -22px rgba(0,0,0,.5);
}
.folder-body p { margin: 0 0 16px; max-width: 520px; }
.stamp-big {
  position: absolute; bottom: 118px; left: 50%; margin: 0 !important; z-index: 2;
  background: rgba(226,201,143,.55);
  font: 400 34px/1 "Permanent Marker", cursive;
  color: var(--red);
  border: 4px double var(--red);
  padding: 8px 14px 4px;
  transform: rotate(-10deg);
  opacity: .85;
}
.redact { background: var(--ink); color: transparent; padding: 0 4px; user-select: none; }
.redacted-list { list-style: none; padding: 0; margin: 24px 0 10px; display: grid; gap: 12px; }
.redacted-list .bar { display: block; height: 16px; background: var(--ink); transform: rotate(-.4deg); }
.redacted-list li:nth-child(even) .bar { transform: rotate(.5deg); }
.soon { font-size: 40px; color: var(--red); text-align: right; margin: 0 !important; max-width: none !important; transform: rotate(-4deg); }

/* ---------- websites ---------- */

.sites { background: var(--paper-2); }
.site-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 34px; }
.browser {
  display: block; text-decoration: none;
  background: var(--grey98);
  padding: 4px 4px 18px;
  box-shadow: inset -1px -1px #0a0a0a, inset 1px 1px #dfdfdf, inset -2px -2px #808080, inset 2px 2px #fff, 6px 8px 0 rgba(0,0,0,.16);
  transition: transform .25s;
}
.browser:hover { transform: rotate(0) translateY(-6px); }
.b1 { transform: rotate(-2deg); } .b2 { transform: rotate(1.5deg) translateY(16px); } .b3 { transform: rotate(-1deg); }
.browser-bar {
  display: flex; align-items: center; gap: 5px;
  background: linear-gradient(90deg, var(--navy), #1084d0);
  padding: 5px 6px;
}
.browser-bar i { width: 10px; height: 10px; background: var(--grey98); box-shadow: inset -1px -1px #0a0a0a, inset 1px 1px #fff; }
.browser-bar span { font: 400 18px/1 "VT323", monospace; color: #fff; margin-left: 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.browser-body {
  display: grid; place-items: center;
  aspect-ratio: 4 / 3;
  background: #fff;
  margin: 4px 0 14px;
  box-shadow: inset 1px 1px #808080, inset 2px 2px #0a0a0a;
}
.browser-body img { width: 46%; }
.browser-body.light { background: #f3f3f3; }
.browser-body.dark { background: #0c0c0c; }
.browser h3 { margin: 0 12px; font: 700 19px/1.2 "Courier Prime", monospace; }
.browser p { margin: 4px 12px 0; font-size: 15px; line-height: 1.4; color: var(--ink-soft); }
.aside { font-size: 28px; text-align: right; margin: 40px 20px 0 0; transform: rotate(-3deg); }

/* ---------- win98 extras ---------- */

.win98-body li > img.logo { width: 64px; }
.badge-green { color: #1f8a3a; transform: rotate(5deg); font-size: 17px; }
.snake { position: relative; width: 60px; height: 34px; display: block; }
.snake i {
  position: absolute; top: 11px;
  width: 14px; height: 14px; border-radius: 50%;
  background: #4fc35a; border: 2px solid #1a1a1a;
  animation: wobble 1.1s ease-in-out infinite;
}
.snake i:nth-child(1) { left: 0;    animation-delay: -.75s; }
.snake i:nth-child(2) { left: 9px;  animation-delay: -.6s; }
.snake i:nth-child(3) { left: 18px; animation-delay: -.45s; }
.snake i:nth-child(4) { left: 27px; animation-delay: -.3s; }
.snake i:nth-child(5) { left: 36px; animation-delay: -.15s; }
.snake i:nth-child(6) { left: 45px; width: 17px; height: 17px; top: 9px; background: #6fe07a; }
.snake i:nth-child(6)::after {
  content: ""; position: absolute; top: 3px; right: 2px;
  width: 4px; height: 4px; border-radius: 50%; background: #1a1a1a;
  box-shadow: 0 6px 0 #1a1a1a;
}
@keyframes wobble { 50% { translate: 0 -9px; } }

/* ---------- contact ---------- */

.contact { background:
  radial-gradient(circle at 1px 1px, rgba(0,0,0,.16) 1px, transparent 1.5px) 0 0 / 18px 18px,
  var(--paper);
  padding-bottom: 140px;
}
.contact-copy { max-width: 460px; margin: 0 auto 30px; font-size: 19px; background: var(--paper); padding: 4px 8px; }
.insta {
  font-size: clamp(28px, 6vw, 52px);
  padding: 16px 28px 14px;
  text-decoration: none;
  transform: rotate(-2deg);
  transition: transform .2s, background .2s;
}
.insta:hover { transform: rotate(1deg) scale(1.04); background: var(--red); }
.speech-wrap { position: relative; width: 260px; margin: 36px auto 0; transform: rotate(3deg); }
.speech-wrap span { position: absolute; inset: 0 0 18% 0; display: grid; place-items: center; font: 400 26px/1 "VT323", monospace; }

/* ---------- footer ---------- */

.footer { background: var(--ink); color: var(--paper); text-align: center; padding: 34px 16px 30px; font-size: 15px; }
.footer p { margin: 4px 0; }
.footer .scribble { font-size: 24px; color: var(--yellow); }

/* ---------- stickers ---------- */

.stk {
  position: absolute;
  left: var(--x); top: var(--y);
  width: calc(var(--w) * var(--s));
  transform: rotate(var(--r));
  z-index: 5;
  cursor: grab;
  user-select: none; -webkit-user-drag: none;
  touch-action: none;
  filter: drop-shadow(2px 4px 2px rgba(0,0,0,.28));
  transition: filter .15s, scale .15s;
}
.stk:hover { scale: 1.07; filter: drop-shadow(4px 8px 4px rgba(0,0,0,.3)); }
.stk.dragging { cursor: grabbing; scale: 1.12; z-index: 50; filter: drop-shadow(8px 14px 6px rgba(0,0,0,.3)); transition: none; }

/* stickers peel in on scroll */
.stk.pre { opacity: 0; scale: .6; }
.stk.in { opacity: 1; scale: 1; transition: opacity .4s, scale .5s cubic-bezier(.3,1.6,.5,1); }

/* ---------- responsive ---------- */

@media (max-width: 860px) {
  :root { --s: .72; }
  .book-grid, .about-grid, .art-grid { grid-template-columns: 1fr; }
  .board { grid-template-columns: repeat(2, 1fr); }
  .site-grid { grid-template-columns: 1fr; max-width: 420px; margin: 0 auto; }
  .b2 { transform: rotate(1.5deg); }
  .cover { max-width: 300px; margin: 0 auto; }
  .book-grid { gap: 70px; }
}

@media (max-width: 640px) {
  :root { --s: .55; }
  .hide-sm { display: none; }
  .section { padding: 80px 0; }
  body { font-size: 17px; }
  .notebook { padding: 34px 20px 24px 52px; background:
    linear-gradient(90deg, transparent 36px, rgba(211,58,38,.45) 36px 38px, transparent 38px),
    repeating-linear-gradient(#fdfcf7 0 33px, #a9c1e6 33px 34px); }
  .book-card { padding: 38px 22px 28px; }
  .win98-body { padding: 4px 10px; }
  .win98-body li { grid-template-columns: 40px 1fr; gap: 12px; }
  .win98-body li > img { width: 40px; }
  .win98-body li > img.tall { width: 30px; }
  .badge { grid-column: 2; justify-self: start; font-size: 18px; }
  .ticker span { font-size: 22px; }
  .stk { opacity: .95; }
  .board { gap: 22px 16px; }
  .polaroid figcaption { font-size: 21px; }
  .s-b { margin-left: 0; }
  .folder-body { padding: 32px 22px 24px; }
  .stamp-big { font-size: 24px; left: 28%; bottom: 112px; }
  .win98-body .snake { transform: scale(.7); transform-origin: left center; }
}

@media (prefers-reduced-motion: reduce) {
  .ticker-track, .typed::after, .snake i { animation: none; }
  .stk.pre { opacity: 1; scale: 1; }
  html { scroll-behavior: auto; }
}
