/* =========================================================
   Tiago Fister — "The Growth Gazette"
   Retro two-colour print aesthetic: warm ink + vintage red on cream paper.
   ========================================================= */

:root {
  --paper: #f3e8cf;
  --paper-2: #ecdfc0;
  --paper-3: #e2d0a6;
  --ink: #1c1814;
  --ink-2: #3a3229;
  --ink-3: #6b5f50;
  --red: #c0352a;        /* 4.5:1 on paper — safe for text */
  --red-ink: #a32a1e;    /* deeper red for small text */
  --red-dark: #8c2318;
  --mustard: #e7b53c;

  --font-display: "Anton", Impact, "Arial Narrow Bold", sans-serif;
  --font-label: "Oswald", "Arial Narrow", Arial, sans-serif;
  --font-body: "Libre Franklin", "Helvetica Neue", Arial, sans-serif;
  --font-type: "Special Elite", "Courier New", monospace;
  --font-script: "Yellowtail", "Brush Script MT", cursive;

  --maxw: 1240px;
  --gutter: clamp(16px, 4vw, 40px);
  --topbar-h: 60px;

  --noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n' x='0' y='0'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .2 0 0 0 0 .14 0 0 0 0 .08 .9 0 0 0 -.38'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --dots-ink: radial-gradient(circle, var(--ink) 1.15px, transparent 1.7px);
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--topbar-h) + 12px); }
body {
  margin: 0;
  color: var(--ink);
  background: var(--noise), var(--paper);
  font: 400 1.0625rem/1.6 var(--font-body);
  overflow-x: clip;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration-thickness: 2px; text-underline-offset: 3px; }
a:hover { color: var(--red-ink); }
:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
strong, b { font-weight: 700; }
h1, h2, h3, h4 { text-wrap: balance; }
p { text-wrap: pretty; }
mark { color: inherit; background: linear-gradient(transparent 58%, rgba(231,181,60,.75) 58%); padding: 0 .08em; }

.wrap { width: 100%; max-width: var(--maxw); margin-inline: auto; padding-inline: var(--gutter); }
.sr-only { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.skip-link { position: absolute; left: 12px; top: -60px; z-index: 100; background: var(--ink); color: var(--paper); padding: 10px 16px; font: 600 1rem var(--font-label); text-decoration: none; }
.skip-link:focus { top: 12px; color: var(--paper); }
.grain { display: none; }

/* Edition switching (default site vs. /deverr special edition) */
html:not([data-edition="deverr"]) .only-deverr { display: none !important; }
html[data-edition="deverr"] .only-default { display: none !important; }

/* ---------- Buttons ---------- */
.btn {
  display: inline-flex; align-items: center; gap: .5em;
  font: 400 1.05rem/1 var(--font-display); letter-spacing: .06em; text-transform: uppercase; text-decoration: none;
  color: var(--paper); background: var(--ink);
  border: 3px solid var(--ink); padding: .85em 1.35em;
  box-shadow: 5px 5px 0 var(--ink);
  cursor: pointer; transition: transform .15s ease, box-shadow .15s ease, background-color .15s;
}
.btn:hover { color: var(--paper); transform: translate(-2px, -2px); box-shadow: 7px 7px 0 var(--ink); }
.btn:active { transform: translate(3px, 3px); box-shadow: 2px 2px 0 var(--ink); }
.btn--red { background: var(--red); }
.btn--red:hover { background: var(--red-ink); }
.btn--ink { background: var(--ink); }
.btn--sm { font-size: .9rem; padding: .6em 1em; box-shadow: 3px 3px 0 var(--ink); }
.btn--sm:hover { box-shadow: 5px 5px 0 var(--ink); }
.btn--lg { font-size: 1.3rem; }

/* ---------- Top bar ---------- */
.topbar {
  position: fixed; inset: 0 0 auto; z-index: 60;
  background: var(--noise), var(--paper);
  border-bottom: 3px solid var(--ink);
  transform: translateY(-110%);
  transition: transform .35s cubic-bezier(.2,.8,.2,1);
}
.topbar.is-visible, .topbar:focus-within { transform: none; }
.topbar__progress { position: absolute; left: 0; right: 0; top: 0; height: 4px; }
.topbar__progress span { display: block; height: 100%; background: var(--red); transform-origin: left; transform: scaleX(var(--progress, 0)); }
.topbar__inner { height: var(--topbar-h); display: flex; align-items: center; gap: 20px; }
.topbar__brand { display: flex; align-items: center; gap: 10px; text-decoration: none; font: 400 1.35rem/1 var(--font-display); text-transform: uppercase; letter-spacing: .02em; }
.topbar__seal { width: 36px; height: 36px; }
.topbar__nav { display: flex; gap: clamp(10px, 1.8vw, 26px); margin-left: auto; }
.topbar__nav a { font: 600 .82rem/1 var(--font-label); letter-spacing: .14em; text-transform: uppercase; text-decoration: none; padding: 6px 0; border-bottom: 2px solid transparent; }
.topbar__nav a:hover { border-bottom-color: var(--red); }

/* ---------- Special-edition ribbon ---------- */
.ribbon {
  position: relative; z-index: 2;
  background: var(--ink); color: var(--paper);
  text-align: center; padding: 10px var(--gutter);
  font: 500 .9rem/1.4 var(--font-label); letter-spacing: .16em; text-transform: uppercase;
  border-bottom: 4px solid var(--red);
}
.ribbon span { color: var(--mustard); }
.ribbon strong { color: var(--mustard); font-weight: 700; }

/* ---------- Shared bits ---------- */
.kicker {
  display: inline-flex; align-items: center; gap: .65em;
  margin: 0; color: var(--red);
  font: 600 .9rem/1.2 var(--font-label); letter-spacing: .22em; text-transform: uppercase;
}
.kicker::before { content: ""; width: 30px; height: 3px; background: currentColor; flex: none; }
.kicker--script { font: 400 1.9rem/1 var(--font-script); letter-spacing: 0; text-transform: none; }
.kicker--script::before { display: none; }

.ticks { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.ticks li { position: relative; padding-left: 1.45em; line-height: 1.5; }
.ticks li::before {
  content: ""; position: absolute; left: .2em; top: .5em;
  width: .52em; height: .52em; background: var(--red); transform: rotate(45deg);
}
.ticks--tight { gap: 7px; font-size: .98rem; }

.box {
  --pad: clamp(18px, 2.5vw, 28px);
  position: relative; background: var(--paper);
  border: 3px solid var(--ink); box-shadow: 8px 8px 0 var(--ink);
  padding: var(--pad);
}
.box--dark { background: var(--noise), var(--paper-2); }
.box__bar {
  margin: calc(var(--pad) * -1) calc(var(--pad) * -1) 18px;
  padding: 12px var(--pad);
  background: var(--ink); color: var(--paper);
  font: 400 clamp(1.35rem, 2.2vw, 1.7rem)/1 var(--font-display); letter-spacing: .02em; text-transform: uppercase;
}
.box__bar--red { background: var(--red); }

.facts { list-style: none; margin: 0; padding: 0; }
.facts li { display: grid; grid-template-columns: 7.2em 1fr; gap: 12px; padding: 10px 0; border-bottom: 1px dashed rgba(28,24,20,.4); }
.facts li:last-child { border-bottom: 0; }
.facts span { font: 600 .76rem/1.6 var(--font-label); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-3); }
.facts b { font-weight: 600; line-height: 1.45; }

.pill { display: inline-block; background: var(--red); color: var(--paper); padding: 3px 9px 2px; border-radius: 99px; margin-right: 6px; font-weight: 700; letter-spacing: .12em; }

/* =========================================================
   FRONT PAGE
   ========================================================= */
.front { position: relative; padding: clamp(14px, 2.4vw, 28px) 0 clamp(44px, 6vw, 84px); overflow: clip; }
.front__bg { position: absolute; inset: 0; pointer-events: none; }
.front__dots { position: absolute; border-radius: 50%; background: var(--dots-ink) 0 0 / 9px 9px; opacity: .13;
  -webkit-mask: radial-gradient(circle, #000 18%, transparent 68%); mask: radial-gradient(circle, #000 18%, transparent 68%); }
.front__dots--a { width: 620px; height: 620px; top: -160px; right: -180px; }
.front__dots--b { width: 560px; height: 560px; bottom: -220px; left: -240px; background-size: 12px 12px; }

.masthead { position: relative; }
.masthead__contacts {
  display: flex; justify-content: space-between; gap: 16px;
  padding-bottom: 10px; border-bottom: 3px solid var(--ink);
  font: 500 .82rem/1.45 var(--font-label); letter-spacing: .08em; text-transform: uppercase;
}
.masthead__contacts p { margin: 0; }
.masthead__contacts a { text-decoration: none; }
.masthead__contacts a:hover { text-decoration: underline; }
.masthead__right { text-align: right; }

.masthead__banner {
  container-type: inline-size;
  position: relative; display: flex; align-items: center; gap: clamp(10px, 2vw, 26px);
  margin-top: 14px; padding: clamp(8px, 1.2vw, 14px) clamp(12px, 2.2vw, 28px);
  background: var(--noise), var(--red);
  border: 4px solid var(--ink); box-shadow: 8px 8px 0 var(--ink);
}
.seal { width: clamp(44px, 12cqi, 156px); height: auto; flex: none; filter: drop-shadow(3px 3px 0 var(--ink)); }
.seal__ring { font-family: var(--font-label); font-weight: 600; }
.seal__spin { transform-origin: 100px 100px; animation: spin 40s linear infinite; }
.seal__tf { font-family: var(--font-display); }
.masthead__name {
  margin: 0; flex: 1; min-width: 0;
  font: 400 clamp(2rem, 16.4cqi, 13rem)/.88 var(--font-display);
  letter-spacing: .012em; text-transform: uppercase; white-space: nowrap;
  color: var(--paper); text-shadow: .035em .035em 0 var(--ink);
  padding-top: .04em;
}
.masthead__role {
  margin: 0; position: relative; z-index: 1;
  background: var(--ink); color: var(--paper);
  font: 500 clamp(.78rem, 2.1vw, 1.45rem)/1.25 var(--font-label); letter-spacing: .3em; text-transform: uppercase; text-align: center;
  padding: .75em 1em; border: 4px solid var(--ink); border-top: 0;
  box-shadow: 8px 8px 0 var(--ink);
}
.dateline {
  display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 18px;
  margin-top: 20px; padding: 8px 0 7px;
  border-top: 5px double var(--ink); border-bottom: 2px solid var(--ink);
  font: 600 .78rem/1.3 var(--font-label); letter-spacing: .16em; text-transform: uppercase;
}

.front__grid {
  display: grid; grid-template-columns: minmax(0, 1.22fr) minmax(0, .78fr);
  gap: clamp(18px, 4vw, 56px); align-items: center;
  margin-top: clamp(26px, 4vw, 48px);
}
.front__headline {
  margin: .22em 0 .32em;
  font: 400 clamp(2.5rem, 6.1vw, 5.5rem)/.93 var(--font-display);
  letter-spacing: .005em; text-transform: uppercase;
}
.front__headline em { font-style: normal; color: var(--red); text-shadow: .03em .03em 0 var(--ink); }
.front__deck { margin: 0; max-width: 33em; font-size: clamp(1.05rem, 1.55vw, 1.28rem); line-height: 1.55; color: var(--ink-2); }
.front__deck strong { color: var(--ink); background: linear-gradient(transparent 60%, rgba(231,181,60,.7) 60%); }

.front__cta { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 14px; margin: clamp(18px, 3vw, 30px) 0 4px; }
.front__hand { width: clamp(124px, 15vw, 196px); animation: poke 1.5s ease-in-out infinite; }
.front__more { font: 600 .9rem/1 var(--font-label); letter-spacing: .14em; text-transform: uppercase; margin-left: 6px; }

.burst { position: relative; display: grid; place-items: center; width: clamp(112px, 11vw, 148px); aspect-ratio: 1; text-decoration: none; color: var(--paper); transition: transform .2s; }
.burst:hover { color: var(--paper); transform: scale(1.08) rotate(-6deg); }
.burst__shape { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; animation: spin 26s linear infinite; }
.burst__shape polygon { fill: var(--red); stroke: var(--ink); stroke-width: 5; stroke-linejoin: round; filter: drop-shadow(5px 5px 0 var(--ink)); }
.burst__text { position: relative; font: 400 clamp(1.45rem, 2.2vw, 1.95rem)/.92 var(--font-display); text-transform: uppercase; text-align: center; transform: rotate(-9deg); text-shadow: 2px 2px 0 var(--ink); }

.front__extras { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 16px; margin-top: clamp(22px, 3vw, 34px); }
.inside, .forecast { border: 2px solid var(--ink); background: var(--noise), var(--paper-2); padding: 12px 14px; }
.inside__title, .forecast__title { margin: 0 0 6px; font: 400 1.05rem/1 var(--font-display); letter-spacing: .04em; text-transform: uppercase; border-bottom: 2px solid var(--ink); padding-bottom: 6px; }
.inside ol { list-style: none; margin: 0; padding: 0; }
.inside a { display: flex; align-items: baseline; gap: 6px; padding: 3px 0; text-decoration: none; font: 500 .9rem/1.3 var(--font-label); letter-spacing: .04em; }
.inside a i { flex: 1; border-bottom: 2px dotted rgba(28,24,20,.5); transform: translateY(-3px); }
.inside a b { font-weight: 700; color: var(--red-ink); }
.inside a:hover span { text-decoration: underline; }
.forecast { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 10px; }
.forecast__title { grid-column: 1 / -1; }
.forecast__sun { width: 54px; height: 54px; grid-column: 2; grid-row: 2; animation: spin 24s linear infinite; }
.forecast__text { margin: 0; grid-row: 2; font: 400 1rem/1.4 var(--font-type); }

.front__art { position: relative; display: grid; place-items: center; min-height: clamp(360px, 46vw, 600px); }
.front__sunburst { position: absolute; left: 50%; top: 50%; width: 132%; max-width: 760px; aspect-ratio: 1; transform: translate(-50%, -50%); pointer-events: none; }
.sunburst {
  width: 100%; height: 100%; border-radius: 50%;
  background: repeating-conic-gradient(from 0deg, var(--red) 0deg 7.5deg, transparent 7.5deg 15deg);
  -webkit-mask: radial-gradient(circle, #000 0 22%, rgba(0,0,0,.75) 42%, transparent 69%);
  mask: radial-gradient(circle, #000 0 22%, rgba(0,0,0,.75) 42%, transparent 69%);
  opacity: .82; animation: spin 90s linear infinite;
}
.front__boy { position: relative; z-index: 1; width: clamp(200px, 25vw, 330px); }
.front__boy img { width: 100%; animation: bob 3.4s ease-in-out infinite alternate; transform-origin: 50% 100%; }
.front__extra {
  position: absolute; z-index: 2; top: 4%; left: 2%;
  width: clamp(96px, 10vw, 138px); aspect-ratio: 1; display: grid; place-items: center;
  transform: rotate(-12deg);
}
.front__extra svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.front__extra polygon { fill: var(--mustard); stroke: var(--ink); stroke-width: 6; stroke-linejoin: round; filter: drop-shadow(4px 4px 0 var(--ink)); }
.front__extra span { position: relative; font: 400 clamp(1.25rem, 1.9vw, 1.7rem)/1 var(--font-display); text-transform: uppercase; color: var(--ink); }

/* ---------- Ticker ---------- */
.ticker { position: relative; z-index: 2; overflow: hidden; background: var(--ink); color: var(--paper); border-top: 6px solid var(--red); border-bottom: 3px solid var(--ink); }
.ticker__track { display: flex; width: max-content; animation: ticker 52s linear infinite; }
.ticker:hover .ticker__track { animation-play-state: paused; }
.ticker__list { display: flex; flex: none; margin: 0; padding: 14px 0; list-style: none; white-space: nowrap; font: 500 1.02rem/1 var(--font-label); letter-spacing: .1em; text-transform: uppercase; }
.ticker__list li { display: flex; align-items: center; }
.ticker__list li::after { content: "✦"; color: var(--mustard); margin: 0 1.6rem; }
.ticker__list b { color: var(--mustard); margin-right: .4em; }

/* =========================================================
   SECTIONS
   ========================================================= */
.section { position: relative; padding-block: clamp(60px, 7.5vw, 108px); }
.section__head { position: relative; display: grid; gap: 6px; justify-items: start; margin-bottom: clamp(30px, 4.5vw, 56px); padding-top: 18px; border-top: 6px double var(--ink); }
.section__page { position: absolute; top: 14px; right: 0; margin: 0; font: 600 .85rem/1 var(--font-label); letter-spacing: .2em; text-transform: uppercase; }
.section__title {
  margin: 0; font: 400 clamp(2.8rem, 8vw, 6.4rem)/.9 var(--font-display); letter-spacing: .005em; text-transform: uppercase;
  text-shadow: .045em .045em 0 rgba(192,53,42,.9);
}
.section__lede { margin: 8px 0 0; max-width: 40em; font-size: clamp(1.05rem, 1.5vw, 1.24rem); color: var(--ink-2); }
.section__head--light { border-top-color: var(--paper); }
.section__head--light .kicker, .section__head--light .section__page { color: var(--paper); }
.section__head--light .section__title { color: var(--paper); text-shadow: .045em .045em 0 var(--ink); }

.giant { position: absolute; top: clamp(30px, 5vw, 70px); left: 0; right: 0; overflow: hidden; pointer-events: none; }
.giant span { display: block; white-space: nowrap; padding-left: 8vw; font: 400 clamp(6rem, 17vw, 15rem)/1 var(--font-display); text-transform: uppercase; color: transparent; -webkit-text-stroke: 2px rgba(28,24,20,.11); }

/* ---------- The Big Four ---------- */
.section--big4 { background: var(--noise), linear-gradient(var(--paper), var(--paper-2)); overflow: clip; }
.big4 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(22px, 3.2vw, 40px); }
.ad {
  position: relative; background: var(--noise), var(--paper);
  border: 3px solid var(--ink); box-shadow: 8px 8px 0 var(--ink);
  transition: transform .25s ease, box-shadow .25s ease;
}
.ad:hover { transform: translate(-4px, -4px) rotate(-.35deg); box-shadow: 12px 12px 0 var(--ink); }
.ad__bar { display: flex; align-items: baseline; gap: 14px; padding: 12px 20px 10px; background: var(--ink); color: var(--paper); }
.ad--red .ad__bar { background: var(--noise), var(--red); }
.ad__no { font: 600 .82rem/1 var(--font-label); letter-spacing: .2em; text-transform: uppercase; opacity: .85; }
.ad__title { margin: 0; font: 400 clamp(2rem, 3.6vw, 3.1rem)/1 var(--font-display); letter-spacing: .015em; text-transform: uppercase; }
.ad__body { display: flow-root; padding: 18px 20px 70px; }
.ad__art { float: right; width: clamp(108px, 12vw, 158px); margin: -4px -6px 10px 14px; transition: transform .35s cubic-bezier(.2,1.6,.4,1); }
.ad__art--tall { width: clamp(64px, 6.8vw, 88px); margin-right: 6px; }
.ad:hover .ad__art { transform: rotate(-6deg) scale(1.06); }
.ad__sub { margin: 0 0 12px; font: 600 1rem/1.3 var(--font-label); letter-spacing: .12em; text-transform: uppercase; color: var(--red-ink); }
.stamp {
  position: absolute; right: 18px; bottom: 16px;
  font: 700 .95rem/1 var(--font-label); letter-spacing: .16em; text-transform: uppercase;
  color: var(--red); border: 4px double var(--red); border-radius: 4px; padding: 7px 11px 6px;
  transform: rotate(-9deg); opacity: .88; mix-blend-mode: multiply;
}

/* ---------- By the Numbers ---------- */
.section--numbers { background: var(--noise), var(--red); color: var(--paper); border-block: 4px solid var(--ink); overflow: clip; }
.numbers__halftone { position: absolute; inset: 0; background: radial-gradient(circle, rgba(28,24,20,.28) 1.5px, transparent 2.1px) 0 0 / 11px 11px;
  -webkit-mask: linear-gradient(110deg, transparent 25%, #000 80%); mask: linear-gradient(110deg, transparent 25%, #000 80%); pointer-events: none; }
.numbers__rocket { position: absolute; right: clamp(-30px, 3vw, 70px); bottom: -180px; width: clamp(150px, 21vw, 290px); pointer-events: none; }
.stats { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; max-width: min(100%, 980px); border-block: 3px solid var(--paper); }
.stat { display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: 10px; padding: 24px clamp(12px, 1.8vw, 22px); border-left: 3px solid var(--paper); }
.stat:first-child { border-left: 0; padding-left: 0; }
.stat__value { margin: 0; font: 400 clamp(3rem, 5.4vw, 5rem)/.9 var(--font-display); text-shadow: .05em .05em 0 var(--ink); font-variant-numeric: tabular-nums; white-space: nowrap; }
.stat__label { font: 500 .92rem/1.35 var(--font-label); letter-spacing: .08em; text-transform: uppercase; }
.stat--wide { grid-column: 1 / -1; flex-direction: row-reverse; align-items: center; gap: 22px; padding-left: 0; border-left: 0; border-top: 3px solid var(--paper); }
.stat--wide .stat__label { max-width: 26em; font-size: 1.02rem; }

/* ---------- Marketer Profile ---------- */
.profile { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: clamp(22px, 3vw, 34px); align-items: start; }
.profile__main { grid-row: span 2; }
.profile__quote { margin: 0; font-size: clamp(1.08rem, 1.55vw, 1.28rem); line-height: 1.68; }
.profile__quote::before { content: "“"; float: left; margin: .05em .08em 0 -.04em; font: 400 5.4rem/.8 var(--font-display); color: var(--red); }
.objective { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px 18px; align-items: center; margin-top: 28px; padding-top: 24px; border-top: 2px dashed rgba(28,24,20,.5); }
.objective__hand { width: clamp(92px, 11vw, 146px); grid-row: span 2; animation: poke 1.5s ease-in-out infinite; }
.objective__text { margin: 0; font: 400 clamp(1.06rem, 1.5vw, 1.2rem)/1.55 var(--font-type); color: var(--red-ink); }
.objective__label { display: block; margin-bottom: 4px; font: 700 .82rem/1 var(--font-label); letter-spacing: .18em; text-transform: uppercase; color: var(--ink); }
[data-typewriter] .tw { position: relative; opacity: 0; }
[data-typewriter] .tw.on { opacity: 1; }
[data-typewriter] .tw.cur::after { content: "▌"; position: absolute; left: 100%; top: 0; color: var(--ink); animation: blink .8s steps(1) infinite; }
.sticker {
  justify-self: start; display: inline-block; padding: 8px 16px 7px;
  background: var(--red); color: var(--paper); text-decoration: none;
  font: 400 1.3rem/1 var(--font-display); letter-spacing: .05em; text-transform: uppercase;
  border: 3px solid var(--ink); border-radius: 6px; box-shadow: 4px 4px 0 var(--ink);
  transform: rotate(-4deg); transition: transform .2s;
}
.sticker:hover { color: var(--paper); transform: rotate(2deg) scale(1.06); }

/* ---------- In the News ---------- */
.section--news { background: var(--noise), linear-gradient(var(--paper-2), var(--paper)); }
.news { background: var(--noise), var(--paper); border: 3px solid var(--ink); box-shadow: 10px 10px 0 var(--ink); padding: clamp(18px, 3vw, 40px); }
.news__dateline { margin: 0; font: 600 .85rem/1 var(--font-label); letter-spacing: .2em; text-transform: uppercase; color: var(--red); }
.news__headline { margin: 10px 0 24px; padding-bottom: 18px; border-bottom: 5px double var(--ink); font: 400 clamp(2.2rem, 5.3vw, 4.5rem)/.95 var(--font-display); text-transform: uppercase; }
.news__grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.25fr) minmax(0, .75fr); gap: clamp(18px, 3vw, 38px); align-items: start; }
.news__body { padding-inline: clamp(0px, 1.5vw, 20px); border-inline: 1px solid rgba(28,24,20,.35); }
.news__body p { margin: 0 0 14px; font-size: 1.05rem; line-height: 1.7; }
.dropcap::first-letter { float: left; margin: .07em .08em 0 0; font: 400 4.7em/.78 var(--font-display); color: var(--red); }
.callout { margin-top: 20px; padding: 16px; border: 2px dashed var(--ink); background: var(--noise), var(--paper-2); }
.callout p { font-size: .98rem; margin: 0 0 12px; }
.callout .callout__title { margin: 0 0 6px; font: 400 1.4rem/1 var(--font-display); text-transform: uppercase; }

.clipping { position: relative; margin: 0; padding: 10px 10px 12px; background: #f8f1df; border: 1px solid rgba(28,24,20,.25); box-shadow: 0 14px 28px rgba(60,40,10,.22); transform: rotate(-1.6deg); transition: transform .3s; }
.clipping:hover { transform: rotate(0deg) scale(1.02); }
.clipping::before, .clipping::after { content: ""; position: absolute; width: 86px; height: 26px; background: rgba(231,181,60,.6); box-shadow: 0 1px 2px rgba(0,0,0,.1); }
.clipping::before { top: -12px; left: 14px; transform: rotate(-8deg); }
.clipping::after { bottom: -10px; right: 12px; transform: rotate(-6deg); }
.clipping__photo { position: relative; overflow: hidden; aspect-ratio: 316 / 590; background: var(--ink); }
.clipping__inner { position: absolute; inset: -32px 0; }
.clipping__inner img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) sepia(.28) contrast(1.18) brightness(1.04); transition: filter .5s; }
.clipping__photo::after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle, rgba(28,24,20,.45) .85px, transparent 1.35px) 0 0 / 4px 4px; mix-blend-mode: multiply; transition: opacity .5s; pointer-events: none; }
.clipping:hover .clipping__inner img { filter: none; }
.clipping:hover .clipping__photo::after { opacity: 0; }
.clipping figcaption { margin-top: 9px; font: italic 400 .88rem/1.4 var(--font-body); color: var(--ink-2); }

.news__sketch { text-align: center; }
.news__sketch img { width: 100%; max-width: 260px; margin-inline: auto; }
.news__sketch-note { margin: 4px 0 0; font: 400 1.6rem/1 var(--font-script); color: var(--red-ink); transform: rotate(-4deg); }

/* ---------- Professional Record ---------- */
.section--record { padding-bottom: clamp(40px, 6vw, 80px); }
.current { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: clamp(22px, 3vw, 34px); align-items: start; }
.job { display: flow-root; }
.job__head { margin-bottom: 14px; padding-bottom: 12px; border-bottom: 2px solid var(--ink); }
.job__when { margin: 0 0 8px; font: 500 .8rem/1.5 var(--font-label); letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); }
.job__title { margin: 0; font: 400 clamp(1.6rem, 2.9vw, 2.35rem)/1.02 var(--font-display); text-transform: uppercase; }
.job__title small { display: block; margin-top: 5px; font: 500 .98rem/1.3 var(--font-label); letter-spacing: .06em; color: var(--ink-2); }
.job__org { margin: 6px 0 0; font: 700 1.02rem/1.2 var(--font-label); letter-spacing: .12em; text-transform: uppercase; color: var(--red-ink); }
.job__globe { float: right; width: clamp(110px, 13vw, 168px); margin: 0 0 10px 18px; }
.job__lede { font-weight: 600; margin: 0 0 12px; }
.job p { margin: 0 0 12px; }
.job__stat b { font: 400 2.7rem/1 var(--font-display); color: var(--red); margin-right: .12em; vertical-align: -.12em; }
.highlights { clear: both; margin-top: 20px; padding: 16px 18px; background: var(--noise), var(--ink); color: var(--paper); }
.highlights__title { margin: 0 0 10px; font: 400 1.25rem/1 var(--font-display); letter-spacing: .05em; text-transform: uppercase; color: var(--mustard); }
.highlights ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 22px; }
.highlights li { position: relative; padding-left: 1.4em; font-size: .97rem; line-height: 1.45; }
.highlights li::before { content: "★"; position: absolute; left: 0; color: var(--mustard); }

.subhead { display: flex; align-items: center; gap: 18px; margin: clamp(52px, 7vw, 88px) 0 8px; font: 400 clamp(1.8rem, 3.8vw, 2.9rem)/1 var(--font-display); text-transform: uppercase; }
.subhead::after { content: ""; flex: 1; height: 7px; border-block: 2px solid var(--ink); }

.hscroll { position: relative; margin-top: clamp(40px, 5.5vw, 72px); }
.hscroll__sticky .subhead { margin: 0 0 2px; }
.hscroll__sticky { display: flex; flex-direction: column; justify-content: center; gap: 18px; }
.hscroll__rail { display: flex; align-items: center; gap: 14px; font: 600 .85rem/1 var(--font-label); letter-spacing: .16em; }
.hscroll__bar { position: relative; flex: 1; height: 10px; border: 2px solid var(--ink); background: var(--paper-2); }
.hscroll__bar i { position: absolute; inset: 0; background: var(--red); transform-origin: left; transform: scaleX(var(--p, 0)); }
.hscroll__track { display: flex; gap: clamp(16px, 2vw, 26px); margin: 0; padding: 12px var(--gutter) 30px; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--gutter); }
.hscroll.is-pinned .hscroll__sticky { position: sticky; top: 0; height: 100vh; height: 100svh; overflow: hidden; padding-top: var(--topbar-h); }
.hscroll.is-pinned .hscroll__track { overflow: visible; width: max-content; scroll-snap-type: none; will-change: transform; padding-left: max(var(--gutter), calc((100vw - var(--maxw)) / 2 + var(--gutter))); padding-right: max(var(--gutter), calc((100vw - var(--maxw)) / 2 + var(--gutter))); }
.card { position: relative; flex: 0 0 clamp(272px, 27vw, 340px); scroll-snap-align: start; background: var(--noise), var(--paper); border: 3px solid var(--ink); box-shadow: 6px 6px 0 var(--ink); padding: 18px 20px 22px; transition: transform .25s, box-shadow .25s; }
.card:nth-child(odd) { transform: rotate(-.6deg); }
.card:nth-child(even) { transform: rotate(.6deg); }
.card:hover { transform: translate(-3px, -3px) rotate(0deg); box-shadow: 10px 10px 0 var(--ink); }
.card--alt { background: var(--noise), var(--paper-2); }
.card__year { margin: 0 0 4px; font: 400 3.5rem/1 var(--font-display); color: var(--red); text-shadow: 3px 3px 0 var(--ink); }
.card__role { margin: 0; font: 400 1.4rem/1.05 var(--font-display); text-transform: uppercase; }
.card__role small { display: block; margin-top: 4px; font: 500 .82rem/1.3 var(--font-label); letter-spacing: .1em; color: var(--ink-3); }
.card__org { margin: 8px 0 10px; padding-bottom: 10px; border-bottom: 2px solid var(--ink); font: 700 .92rem/1.35 var(--font-label); letter-spacing: .06em; text-transform: uppercase; color: var(--red-ink); }
.card__org span { font-weight: 500; color: var(--ink-3); text-transform: none; letter-spacing: .02em; }
.card ul { margin: 0; padding-left: 1.1em; font-size: .95rem; line-height: 1.5; display: grid; gap: 5px; }
.card li::marker { color: var(--red); }

/* ---------- Education ---------- */
.section--edu { background: var(--noise), linear-gradient(var(--paper), var(--paper-2)); }
.edu { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(26px, 3.4vw, 40px); }
.diploma {
  position: relative; text-align: center; background: var(--noise), var(--paper);
  border: 3px double var(--ink); outline: 3px solid var(--ink); outline-offset: 5px;
  padding: 26px 22px 34px; margin: 8px;
}
.diploma::after {
  content: "★"; position: absolute; right: -22px; bottom: -22px; width: 58px; height: 58px; border-radius: 50%;
  display: grid; place-items: center; background: var(--red); color: var(--paper); font-size: 1.5rem;
  border: 3px solid var(--ink); box-shadow: 0 0 0 4px var(--paper), 0 0 0 6px var(--ink);
}
.diploma__year { margin: 0; font: 600 .85rem/1 var(--font-label); letter-spacing: .22em; text-transform: uppercase; color: var(--red-ink); }
.diploma__title { margin: 10px 0 12px; font: 400 1.45rem/1.08 var(--font-display); text-transform: uppercase; }
.diploma__school { margin: 0; font: 400 1.02rem/1.4 var(--font-type); }
.edu__extras { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: clamp(22px, 3vw, 34px); margin-top: clamp(40px, 5vw, 60px); align-items: start; }
.typecase { padding: 18px; background: var(--noise), var(--ink); border: 3px solid var(--ink); box-shadow: 8px 8px 0 var(--red); color: var(--paper); }
.typecase__title { margin: 0 0 14px; font: 400 1.6rem/1 var(--font-display); text-transform: uppercase; letter-spacing: .03em; }
.typecase__list { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
.typecase__list li { padding: 8px 12px 7px; background: var(--paper); color: var(--ink); border: 2px solid var(--paper-3); box-shadow: inset 0 -3px 0 rgba(28,24,20,.18); font: 600 .88rem/1 var(--font-label); letter-spacing: .1em; text-transform: uppercase; transition: transform .2s; }
.typecase__list li:nth-child(3n) { transform: rotate(-1.5deg); }
.typecase__list li:nth-child(4n+1) { transform: rotate(1deg); }
.typecase__list li:hover { transform: translateY(-3px) rotate(0); }
.typecase__list li.is-hot { background: var(--red); color: var(--paper); border-color: var(--red-dark); }

/* ---------- Coupon ---------- */
.section--coupon { background: var(--noise), var(--red); border-top: 4px solid var(--ink); overflow: clip; }
.coupon__dots { position: absolute; inset: 0; background: radial-gradient(circle, rgba(243,232,207,.2) 1.4px, transparent 2px) 0 0 / 12px 12px; -webkit-mask: radial-gradient(ellipse at 50% 0%, #000 10%, transparent 70%); mask: radial-gradient(ellipse at 50% 0%, #000 10%, transparent 70%); pointer-events: none; }
.coupon__headline { position: relative; margin: 0; text-align: center; color: var(--paper); font: 400 clamp(3rem, 10.5vw, 8.6rem)/.9 var(--font-display); text-transform: uppercase; text-shadow: .05em .05em 0 var(--ink); }
.coupon__sub { position: relative; margin: 12px 0 0; text-align: center; color: var(--paper); font: 500 1.05rem/1.4 var(--font-label); letter-spacing: .12em; text-transform: uppercase; }
.coupon { position: relative; margin-top: clamp(28px, 4vw, 44px); padding: clamp(20px, 3.4vw, 40px); background: var(--noise), var(--paper); border: 3px dashed var(--ink); box-shadow: 10px 10px 0 var(--ink); }
.coupon__scissors { position: absolute; top: -22px; left: 28px; font-size: 2.1rem; line-height: 1; color: var(--paper); text-shadow: 2px 2px 0 var(--ink); transition: left 1.6s cubic-bezier(.45,.05,.55,.95); }
.coupon:hover .coupon__scissors { left: calc(100% - 64px); }
.coupon__grid { display: grid; grid-template-columns: minmax(0, .78fr) minmax(0, 1.4fr); gap: clamp(22px, 4vw, 48px); }
.coupon__mailto { border-right: 2px solid var(--ink); padding-right: clamp(16px, 3vw, 36px); }
.coupon__label { margin: 0; font: 400 1.9rem/1 var(--font-display); text-transform: uppercase; }
.coupon__addr { margin: 10px 0 0; font: 400 1.08rem/1.6 var(--font-type); overflow-wrap: anywhere; }
.coupon__phone { width: min(220px, 80%); margin: 18px 0 8px; }
.coupon__fine { margin: 0; font: 400 .74rem/1.4 var(--font-body); color: var(--ink-3); }
.coupon__form { display: grid; gap: 8px; align-content: start; }
.field { display: flex; align-items: baseline; gap: 10px; padding: 8px 0 3px; border-bottom: 2px solid var(--ink); }
.field:focus-within { border-bottom-color: var(--red); box-shadow: 0 2px 0 var(--red); }
.field label, .checks legend { flex: none; font: 400 1.22rem/1 var(--font-display); letter-spacing: .03em; text-transform: uppercase; }
.field input, .field textarea { flex: 1; width: 0; min-width: 0; padding: 4px 2px; border: 0; background: transparent; color: var(--ink); font: 400 1.08rem/1.6 var(--font-type); outline: none; }
.field--area { flex-direction: column; align-items: stretch; }
.field textarea { resize: vertical; min-height: 4.8em; background-image: repeating-linear-gradient(transparent 0 1.6em, rgba(28,24,20,.25) 1.6em calc(1.6em + 1px)); background-attachment: local; }
.checks { margin: 6px 0 0; padding: 8px 0 6px; border: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 16px; }
.checks legend { margin-bottom: 8px; padding: 0; }
.checks label { display: flex; align-items: center; gap: 9px; font: 500 1rem/1.25 var(--font-label); letter-spacing: .03em; cursor: pointer; }
.checks input { appearance: none; -webkit-appearance: none; flex: none; display: grid; place-items: center; width: 22px; height: 22px; margin: 0; border: 2px solid var(--ink); background: var(--paper); cursor: pointer; }
.checks input::after { content: "✕"; font: 700 15px/1 var(--font-label); color: var(--red); transform: scale(0); transition: transform .15s cubic-bezier(.2,1.8,.4,1); }
.checks input:checked::after { transform: scale(1); }
.coupon__form .btn { justify-self: start; margin-top: 14px; }
.coupon__note { margin: 4px 0 0; font: 400 .82rem/1.4 var(--font-body); color: var(--ink-3); }
.coupon__form.is-sent .coupon__note { color: var(--red-ink); font-weight: 700; }

.lines { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin: clamp(28px, 4vw, 44px) 0 0; padding: 0; list-style: none; }
.line { display: block; height: 100%; padding: 14px 16px 15px; background: var(--paper); border: 3px solid var(--ink); box-shadow: 5px 5px 0 var(--ink); text-decoration: none; font: 600 1rem/1.35 var(--font-label); letter-spacing: .03em; overflow-wrap: anywhere; transition: transform .15s, box-shadow .15s; }
.line span { display: block; margin-bottom: 4px; font: 500 .74rem/1 var(--font-label); letter-spacing: .18em; text-transform: uppercase; color: var(--red-ink); }
.line:hover { color: var(--ink); transform: translate(-2px, -2px); box-shadow: 8px 8px 0 var(--ink); }
.line--red { background: var(--ink); color: var(--paper); }
.line--red span { color: var(--mustard); }
.line--red:hover { color: var(--paper); }

/* ---------- Footer ---------- */
.footer { background: var(--noise), var(--ink); color: var(--paper); padding: 26px 0 30px; border-top: 6px solid var(--red); }
.footer__inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 24px; font: 500 .86rem/1.5 var(--font-label); letter-spacing: .06em; }
.footer p { margin: 0; }
.footer__type { opacity: .7; }
.footer__top { text-transform: uppercase; letter-spacing: .14em; text-decoration: none; color: var(--mustard); }
.footer__top:hover { color: var(--paper); }

/* =========================================================
   MOTION
   ========================================================= */
.plx { will-change: translate; }

@keyframes spin   { to { transform: rotate(360deg); } }
@keyframes poke   { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(12px); } }
@keyframes bob    { from { transform: translateY(0) rotate(-1.2deg); } to { transform: translateY(-12px) rotate(1.2deg); } }
@keyframes ticker { to { transform: translateX(-50%); } }
@keyframes blink  { 50% { opacity: 0; } }

/* first-paint intro (only `from` keyframes: they land on each element's own resting transform) */
@keyframes in-drop  { from { transform: translateY(-130%); opacity: 0; } }
@keyframes in-spin  { from { transform: scale(.06) rotate(-540deg); opacity: 0; } 45% { opacity: 1; } }
@keyframes in-rise  { from { transform: translateY(90px) scale(.92); opacity: 0; } }
@keyframes in-stamp { from { transform: scale(2.8) rotate(-30deg); opacity: 0; } }

/* scroll reveals */
@keyframes rv-up   { from { opacity: 0; transform: translateY(46px); } }
@keyframes rv-slam { 0% { opacity: 0; transform: translateY(26px) scale(1.16) rotate(-3deg); } 55% { opacity: 1; } }
@keyframes rv-pop  { from { opacity: 0; transform: scale(.5); } }
@keyframes stamp-in { from { opacity: 0; transform: scale(2.6) rotate(-32deg); } }

@media (prefers-reduced-motion: no-preference) {
  .js .intro--drop  { animation: in-drop .9s cubic-bezier(.2,1.25,.4,1) var(--d, 0s) backwards; }
  .js .intro--spin  { animation: in-spin 1.15s cubic-bezier(.16,.8,.26,1) var(--d, 0s) backwards; }
  .js .intro--rise  { animation: in-rise 1s cubic-bezier(.2,1.25,.4,1) var(--d, 0s) backwards; }
  .js .intro--stamp { animation: in-stamp .6s cubic-bezier(.2,1.6,.4,1) var(--d, 0s) backwards; }

  .js [data-reveal]:not(.is-in) { opacity: 0; }
  .js [data-reveal].is-in { animation: rv-up .85s cubic-bezier(.2,.75,.25,1) var(--d, 0s) backwards; }
  .js [data-reveal="slam"].is-in { animation-name: rv-slam; animation-duration: .7s; }
  .js [data-reveal="pop"].is-in { animation-name: rv-pop; animation-timing-function: cubic-bezier(.2,1.5,.4,1); }
  .js .ad.is-in .stamp { animation: stamp-in .5s cubic-bezier(.2,1.6,.4,1) calc(var(--d, 0s) + .55s) backwards; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-delay: 0s !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
  .ticker__track { animation: none !important; width: auto; }
  .ticker { overflow-x: auto; }
  .ticker__list[aria-hidden="true"] { display: none; }
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 1100px) {
  .topbar__nav a:nth-child(n+5) { display: none; }
  .news__grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.3fr); }
  .news__sketch { display: none; }
  .news__body { border-right: 0; padding-right: 0; }
  .current { grid-template-columns: 1fr; }
  .stats { max-width: calc(100% - 150px); }
}

@media (max-width: 860px) {
  :root { --topbar-h: 56px; }
  .topbar__nav { display: none; }
  .topbar .btn { margin-left: auto; }
  .front__grid { grid-template-columns: 1fr; }
  .front__art { order: -1; min-height: 0; height: clamp(300px, 70vw, 440px); margin-top: -6px; }
  .front__boy { width: clamp(160px, 38vw, 250px); }
  .front__sunburst { width: 110%; }
  .big4 { grid-template-columns: 1fr; }
  .profile { grid-template-columns: 1fr; }
  .profile__main { grid-row: auto; }
  .stats { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: none; }
  .stat { border-left: 0; padding-left: 0; border-top: 3px solid var(--paper); }
  .stat:nth-child(-n+2) { border-top: 0; }
  .stat:nth-child(even) { padding-left: 16px; border-left: 3px solid var(--paper); }
  .stat--wide { flex-direction: column-reverse; align-items: flex-start; gap: 10px; }
  .numbers__rocket { opacity: .35; right: -40px; }
  .edu { grid-template-columns: 1fr; gap: 40px; }
  .edu__extras { grid-template-columns: 1fr; }
  .coupon__grid { grid-template-columns: minmax(0, 1fr); }
  .coupon__mailto { border-right: 0; padding-right: 0; border-bottom: 2px solid var(--ink); padding-bottom: 18px; display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 16px; }
  .coupon__mailto .coupon__phone { grid-row: 1 / span 3; grid-column: 2; width: 120px; margin: 0; align-self: center; }
  .lines { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .highlights ul { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .masthead__contacts { font-size: .7rem; letter-spacing: .05em; }
  .masthead__banner { box-shadow: 5px 5px 0 var(--ink); }
  .masthead__role { letter-spacing: .16em; box-shadow: 5px 5px 0 var(--ink); }
  .dateline span:nth-child(1), .dateline span:nth-child(5) { display: none; }
  .dateline { justify-content: center; text-align: center; }
  .front__extras { grid-template-columns: 1fr; }
  .front__more { flex-basis: 100%; margin: 10px 0 0; }
  .news__grid { grid-template-columns: 1fr; }
  .news__body { border: 0; padding: 0; }
  .clipping { max-width: 330px; margin-inline: auto; }
  .checks { grid-template-columns: 1fr; }
  .box, .ad, .news, .coupon { box-shadow: 6px 6px 0 var(--ink); }
  .ad__body { padding: 16px 16px 64px; }
  .ad__art { width: 92px; margin: 0 -4px 6px 10px; }
  .ad__art--tall { width: 50px; margin-right: 4px; }
  .coupon__addr { font-size: .95rem; }
  .coupon__mailto .coupon__phone { width: 86px; }
  .section__page { top: 16px; }
  .facts li { grid-template-columns: 1fr; gap: 2px; }
}

@media (max-width: 420px) {
  .lines { grid-template-columns: 1fr; }
  .stats { grid-template-columns: 1fr; }
  .stat, .stat:nth-child(even) { border-left: 0; padding-left: 0; border-top: 3px solid var(--paper); }
  .stat:first-child { border-top: 0; }
  .stat:nth-child(2) { border-top: 3px solid var(--paper); }
}

/* =========================================================
   PRINT
   ========================================================= */
@media print {
  @page { margin: 14mm; }
  body { background: #fff; font-size: 11pt; }
  .topbar, .ribbon, .ticker, .front__bg, .front__art, .front__cta, .front__extras, .giant, .numbers__rocket,
  .numbers__halftone, .coupon__dots, .coupon__form, .coupon__phone, .coupon__scissors, .news__sketch, .stamp,
  .ad__art, .job__globe, .objective__hand, .sticker, .hscroll__rail, .footer__top, .skip-link { display: none !important; }
  .js [data-reveal], .js [data-reveal]:not(.is-in) { opacity: 1 !important; animation: none !important; }
  .section { padding-block: 18pt; break-inside: auto; }
  .section--numbers, .section--coupon, .section--big4, .section--news, .section--edu { background: #fff !important; color: #000; }
  .section__head--light .section__title, .section__head--light .kicker, .stat__value, .coupon__headline, .coupon__sub { color: #000 !important; text-shadow: none !important; }
  .box, .ad, .news, .card, .coupon, .line, .diploma { box-shadow: none !important; break-inside: avoid; }
  .hscroll__sticky { position: static !important; height: auto !important; }
  .hscroll__track { flex-wrap: wrap; transform: none !important; width: auto !important; overflow: visible; padding: 0; }
  .card { flex: 1 1 45%; transform: none !important; }
  .big4, .stats { grid-template-columns: 1fr 1fr; }
  a { text-decoration: none; }
}
