/* ============================================================
   MANISHA VASWANI | punk academic portfolio
   Plain CSS. No build step. Edit variables below to re-skin.
   ============================================================ */

:root{
  --ink:#1a1611;          /* near-black ink */
  --ink-2:#2a251d;
  --paper:#f2ecdc;        /* xerox cream */
  --paper-2:#e9e2cf;
  --acid:#c99a3f;         /* muted ochre */
  --acid-deep:#8a6a1c;    /* ochre for text on cream */
  --orange:#e8a05c;
  --mint:#a9cdb4;
  --blue:#4a7fb5;
  --rail:96px;            /* left rail width on desktop */
  --font-display:'Archivo Black',sans-serif;
  --font-serif:'Instrument Serif',serif;
  --font-mono:'Space Mono',monospace;
  --font-body:'Space Grotesk',sans-serif;
}

*{margin:0;padding:0;box-sizing:border-box;border-radius:0!important;}
html{scroll-behavior:smooth;}
body{
  background:var(--paper);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.6;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  -webkit-user-select:none;user-select:none;
}
input,textarea{-webkit-user-select:text;user-select:text;}
::selection{background:var(--acid);color:var(--ink);}
img{max-width:100%;display:block;}
a{color:inherit;}

/* ---------- photocopy grain overlay ---------- */
.grain{
  position:fixed;inset:-50%;width:200%;height:200%;
  pointer-events:none;z-index:2000;opacity:.07;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:grain 8s steps(10) infinite;
}
@keyframes grain{
  0%,100%{transform:translate(0,0)}10%{transform:translate(-5%,-8%)}
  30%{transform:translate(3%,-5%)}50%{transform:translate(-7%,4%)}
  70%{transform:translate(6%,7%)}90%{transform:translate(-4%,2%)}
}

/* ---------- left rail nav (desktop) ---------- */
.rail{
  position:fixed;left:0;top:0;bottom:0;width:var(--rail);
  background:var(--acid);color:var(--ink);z-index:900;
  display:flex;flex-direction:column;align-items:center;
  border-right:3px solid var(--ink);
}
.rail .mark{
  font-family:var(--font-display);font-size:20px;line-height:1;
  padding:18px 0 14px;text-decoration:none;text-align:center;
  border-bottom:3px solid var(--ink);width:100%;
}
.rail nav{
  flex:1;display:flex;flex-direction:column;justify-content:center;gap:2px;
}
.rail nav a{
  writing-mode:vertical-rl;transform:rotate(180deg);
  font-family:var(--font-mono);font-size:12px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;text-decoration:none;
  padding:12px 6px;min-height:44px;display:flex;align-items:center;
  border-left:3px solid transparent;transition:background .18s ease-out,color .18s ease-out;
}
.rail nav a:hover{background:var(--ink);color:var(--acid);}
.rail nav a.active{background:var(--ink);color:var(--acid);}
.rail .rail-foot{
  font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;
  padding:12px 0;writing-mode:vertical-rl;transform:rotate(180deg);
}

/* ---------- mobile top bar ---------- */
.topbar{display:none;}

/* ---------- page shell ---------- */
.shell{margin-left:var(--rail);}
.section{padding:96px 6vw;position:relative;}
.section.paper{background:var(--paper);color:var(--ink);}
.section.ink{background:var(--paper-2);color:var(--ink);}
.section.acid{background:var(--acid);color:var(--ink);}
.section.orange{background:var(--orange);color:var(--ink);}

/* torn edge divider */
.torn{display:block;width:100%;height:26px;}
.torn svg{width:100%;height:100%;display:block;}

/* ---------- type ---------- */
h1,h2,h3{font-family:var(--font-display);text-transform:uppercase;line-height:.92;letter-spacing:-.01em;}
.display-xl{font-size:clamp(52px,9vw,140px);}
.display-lg{font-size:clamp(40px,6.5vw,96px);}
.display-md{font-size:clamp(28px,4vw,56px);}
.serif-i{font-family:var(--font-serif);font-style:italic;text-transform:none;letter-spacing:0;}
.mono{font-family:var(--font-mono);}
.acid-word{color:var(--acid-deep);}
.paper .acid-word{color:var(--ink);background:var(--acid);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone;}

/* ransom-word emphasis inside display headlines */
.cutout{display:inline-block;background:var(--paper);color:var(--ink);padding:.02em .1em;transform:rotate(-2deg);}
.cutout.a{background:var(--acid);transform:rotate(1.5deg);}
.cutout.o{background:var(--orange);transform:rotate(-1deg);}
.paper .cutout{background:var(--ink);color:var(--paper);}
.paper .cutout.a{background:var(--ink);color:var(--acid);}
.paper .cutout.o{background:var(--ink);color:var(--orange);}

/* section header row */
.sec-head{display:flex;align-items:baseline;gap:20px;flex-wrap:wrap;margin-bottom:56px;position:relative;}
.sec-num{
  font-family:var(--font-mono);font-weight:700;font-size:14px;letter-spacing:.14em;
  border:2px solid currentColor;padding:6px 10px;
}
.sec-head h2{flex:1;min-width:min(100%,420px);}

/* tape strip */
.tape{position:relative;display:inline-block;}
.tape::before,.tape::after{
  content:"";position:absolute;width:88px;height:24px;
  background:rgba(201,154,63,.8);top:-14px;
  mix-blend-mode:multiply;
}
.tape::before{left:-30px;transform:rotate(-8deg);}
.tape::after{right:-30px;transform:rotate(6deg);}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--font-mono);font-weight:700;font-size:14px;
  letter-spacing:.12em;text-transform:uppercase;text-decoration:none;
  background:var(--acid);color:var(--ink);border:3px solid var(--ink);
  padding:14px 22px;min-height:44px;cursor:pointer;
  box-shadow:6px 6px 0 var(--ink);
  transition:transform .18s ease-out,box-shadow .18s ease-out,background .18s ease-out;
}
.btn:hover{transform:translate(-2px,-2px);box-shadow:9px 9px 0 var(--ink);}
.btn:active{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink);}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink);box-shadow:6px 6px 0 rgba(201,154,63,.55);}
.btn.dark{background:var(--ink);color:var(--acid);}
.btn.small{padding:9px 14px;font-size:12px;box-shadow:4px 4px 0 var(--ink);}
.btn[disabled]{opacity:.4;pointer-events:none;}

/* ---------- marquee ---------- */
.marquee{
  overflow:hidden;white-space:nowrap;border-top:3px solid var(--ink);
  border-bottom:3px solid var(--ink);background:var(--acid);color:var(--ink);
  padding:14px 0;position:relative;
}
.marquee.reverse{background:var(--ink);color:var(--acid);border-color:var(--acid);}
.marquee-track{display:inline-flex;animation:mq 32s linear infinite;will-change:transform;}
.marquee:hover .marquee-track{animation-play-state:paused;}
.marquee span{
  font-family:var(--font-display);font-size:clamp(20px,3vw,34px);
  text-transform:uppercase;padding:0 26px;letter-spacing:.02em;
}
.marquee .dot{color:var(--orange);}
.marquee.reverse .dot{color:var(--paper);}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- rotating sticker ---------- */
.sticker{width:150px;height:150px;position:relative;flex:none;}
.hero-sticker{width:210px;height:210px;}
.scholar-sticker{width:170px;height:170px;}
.sticker svg{width:100%;height:100%;animation:spin 20s linear infinite;}
.sticker .core{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-size:30px;color:var(--acid-deep);
}
@keyframes spin{to{transform:rotate(360deg)}}

/* ---------- hero ---------- */
.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:12vh 6vw 8vh;position:relative;overflow:hidden;}
.hero h1 .line{display:block;overflow:hidden;}
.hero h1 .line:nth-child(3){margin-top:.18em;}
.hero h1 .line span{display:inline-block;transform:translateY(110%);animation:rise .9s cubic-bezier(.16,1,.3,1) forwards;}
.hero h1 .line:nth-child(2) span{animation-delay:.12s;}
.hero h1 .line:nth-child(3) span{animation-delay:.24s;}
@keyframes rise{to{transform:translateY(0)}}
.hero-meta{
  margin-top:40px;display:flex;gap:16px;flex-wrap:wrap;align-items:center;
}
.hero-tag{
  font-family:var(--font-mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;
  border:2px solid var(--ink);color:var(--ink);padding:8px 14px;
}
.hero-roles{
  font-family:var(--font-mono);font-size:14px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--acid-deep);margin-top:26px;
}
.hero-sub{max-width:560px;margin-top:28px;font-size:18px;color:#453d30;}
.hero-sticker{position:absolute;right:6vw;top:12vh;}

/* glitch hover on hero name */
.glitch{position:relative;display:inline-block;}
.glitch:hover::before,.glitch:hover::after{
  content:attr(data-text);position:absolute;left:0;top:0;width:100%;
}
.glitch:hover::before{color:var(--orange);transform:translate(3px,-2px);clip-path:inset(20% 0 40% 0);}
.glitch:hover::after{color:var(--blue);transform:translate(-3px,2px);clip-path:inset(60% 0 10% 0);}

/* ---------- index cards / lists ---------- */
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;}
.grid-3{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px;}

.zine-card{
  border:3px solid var(--ink);background:var(--paper);color:var(--ink);
  padding:26px;position:relative;box-shadow:8px 8px 0 var(--ink);
  transition:transform .18s ease-out,box-shadow .18s ease-out;
}
.zine-card:hover{transform:translate(-3px,-3px) rotate(-.4deg);box-shadow:12px 12px 0 var(--ink);}
.ink .zine-card{background:var(--paper);color:var(--ink);border-color:var(--ink);box-shadow:8px 8px 0 var(--ink);}
.ink .zine-card:hover{box-shadow:12px 12px 0 var(--ink);}
.zine-card h3{font-size:20px;margin-bottom:12px;line-height:1.1;}
.zine-card .tag{
  display:inline-block;font-family:var(--font-mono);font-size:11px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:var(--acid);
  padding:4px 10px;margin-bottom:14px;
}
.zine-card .tag.o{background:var(--orange);color:var(--ink);}
.zine-card .tag.m{background:var(--mint);color:var(--ink);}
.zine-card p{font-size:15px;}
.zine-card .meta{font-family:var(--font-mono);font-size:12px;margin-top:14px;opacity:.75;}

/* publication entry */
.pub{
  border-top:3px solid currentColor;padding:26px 0;display:grid;
  grid-template-columns:110px 1fr;gap:24px;align-items:start;
}
.pub .yr{font-family:var(--font-mono);font-weight:700;font-size:15px;}
.pub h3{font-size:clamp(19px,2.2vw,26px);margin-bottom:8px;text-transform:none;line-height:1.15;}
.pub .venue{font-family:var(--font-serif);font-style:italic;font-size:18px;}
.pub .authors{font-size:14px;opacity:.8;margin-top:6px;}
.pub .status{
  display:inline-block;font-family:var(--font-mono);font-size:11px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;padding:3px 9px;margin-left:10px;
  vertical-align:middle;
}
.status.pub-d{background:var(--acid);color:var(--ink);}
.status.rev{background:var(--orange);color:var(--ink);}
.status.con{background:var(--ink);color:var(--acid);border:1px solid var(--acid);}
.paper .status.con{background:var(--ink);color:var(--acid);}

/* filter tabs */
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:44px;}
.filters button{
  font-family:var(--font-mono);font-weight:700;font-size:13px;letter-spacing:.1em;
  text-transform:uppercase;background:transparent;color:inherit;
  border:2px solid currentColor;padding:10px 18px;min-height:44px;cursor:pointer;
  transition:all .18s ease-out;
}
.filters button:hover{transform:translateY(-2px);}
.filters button.on{background:var(--acid);color:var(--ink);border-color:var(--ink);box-shadow:4px 4px 0 var(--ink);}
.ink .filters button.on{box-shadow:4px 4px 0 var(--ink);}

/* timeline (teaching) */
.tl{border-left:4px solid var(--acid);padding-left:34px;position:relative;}
.tl-item{position:relative;padding-bottom:52px;}
.tl-item::before{
  content:"";position:absolute;left:-47px;top:4px;width:20px;height:20px;
  background:var(--acid);border:3px solid var(--ink);
}
.tl-item .when{font-family:var(--font-mono);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--acid-deep);}
.paper .tl-item .when{color:var(--ink);background:var(--acid);display:inline-block;padding:2px 8px;}
.tl-item h3{font-size:clamp(22px,3vw,34px);margin:8px 0 2px;}
.tl-item .where{font-family:var(--font-serif);font-style:italic;font-size:19px;margin-bottom:14px;}
.course-list{list-style:none;display:flex;flex-wrap:wrap;gap:10px;}
.course-list li{
  font-family:var(--font-mono);font-size:13px;border:2px solid currentColor;
  padding:7px 12px;transition:all .15s ease-out;
}
.course-list li:hover{background:var(--acid);color:var(--ink);border-color:var(--ink);transform:translateY(-2px);}
.course-list .term{opacity:.6;font-size:11px;display:block;}

/* ---------- reveal on scroll ---------- */
.rv{opacity:0;transform:translateY(34px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);}
.rv.in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}
  .rv{opacity:1;transform:none;}
}

/* ---------- decorative visuals ---------- */
/* torn paper rip strip between sections */
.rip{
  height:20px;background:var(--ink);
  clip-path:polygon(0 55%,3% 20%,6% 65%,9% 30%,13% 75%,17% 25%,21% 60%,25% 15%,29% 70%,33% 35%,37% 80%,41% 30%,45% 65%,49% 20%,53% 70%,57% 30%,61% 75%,65% 25%,69% 60%,73% 15%,77% 70%,81% 35%,85% 78%,89% 28%,93% 62%,97% 22%,100% 58%,100% 100%,0 100%);
}
.rip.flip{transform:scaleY(-1);}
/* giant outlined ghost word behind a section */
.ghost-word{
  position:absolute;top:18px;right:2%;
  font-family:var(--font-display);text-transform:uppercase;line-height:.9;
  font-size:clamp(72px,13vw,200px);letter-spacing:-.02em;
  color:transparent;-webkit-text-stroke:2px rgba(26,22,17,.13);
  pointer-events:none;user-select:none;white-space:nowrap;
}
.section.ink .ghost-word{-webkit-text-stroke-color:rgba(26,22,17,.2);}
/* halftone dot corner block */
.halftone{
  position:absolute;width:180px;height:180px;pointer-events:none;
  background-image:radial-gradient(rgba(26,22,17,.22) 1.6px,transparent 1.7px);
  background-size:13px 13px;
}
.halftone.tl{top:0;left:0;}
.halftone.br{bottom:0;right:0;transform:rotate(180deg);}
/* hand-drawn doodle arrow */
.doodle{width:120px;height:80px;overflow:visible;}
.doodle path{fill:none;stroke:var(--acid-deep);stroke-width:5;stroke-linecap:round;}

/* ---------- footer ---------- */
.footer{
  background:var(--ink);border-top:3px solid var(--acid);
  padding:64px 6vw;display:flex;flex-wrap:wrap;gap:40px;
  justify-content:space-between;align-items:flex-end;
}
.footer h2{font-size:clamp(28px,4vw,52px);}
.footer a.mail{color:var(--acid);text-decoration:none;border-bottom:3px solid var(--acid);}
.footer a.mail:hover{background:var(--acid);color:var(--ink);}
.footer .fine{font-family:var(--font-mono);font-size:12px;opacity:.6;}

/* ---------- forms / gates ---------- */
.gate{
  border:3px solid var(--ink);padding:36px;max-width:640px;
  background:var(--paper);box-shadow:10px 10px 0 var(--acid);
}
.gate input[type=email],.gate input[type=text]{
  width:100%;font-family:var(--font-mono);font-size:16px;padding:14px;
  background:var(--paper-2);color:var(--ink);border:3px solid var(--ink);
  margin:14px 0;min-height:52px;
}
.gate input:focus{outline:none;border-color:var(--acid-deep);box-shadow:0 0 0 3px rgba(201,154,63,.35);}
.gate .msg{font-family:var(--font-mono);font-size:13px;margin-top:12px;min-height:20px;}
.gate .msg.err{color:#b03a1e;}
.gate .msg.ok{color:var(--acid-deep);}

/* sim download cards */
.sim-card{position:relative;}
.sim-card.locked .dl{filter:blur(0px);pointer-events:none;opacity:.35;}
.lock-badge{
  position:absolute;top:-14px;right:14px;background:var(--orange);color:var(--ink);
  font-family:var(--font-mono);font-weight:700;font-size:11px;letter-spacing:.1em;
  padding:5px 10px;text-transform:uppercase;transform:rotate(3deg);
}

/* ---------- tutorials ---------- */
.tut-tabs{display:flex;flex-wrap:wrap;gap:0;border:3px solid var(--ink);margin-bottom:0;}
.ink .tut-tabs{border-color:var(--ink);}
.tut-tabs button{
  flex:1;min-width:140px;font-family:var(--font-mono);font-weight:700;font-size:13px;
  letter-spacing:.1em;text-transform:uppercase;padding:16px 12px;min-height:52px;
  background:transparent;color:inherit;border:none;border-right:3px solid var(--ink);
  cursor:pointer;transition:all .15s ease-out;
}
.ink .tut-tabs button{border-right-color:var(--ink);}
.tut-tabs button:last-child{border-right:none;}
.tut-tabs button.on{background:var(--acid);color:var(--ink);}
.tut-tabs button:hover:not(.on){background:rgba(201,154,63,.18);}
.tut-body{border:3px solid var(--ink);border-top:none;padding:40px;background:var(--paper);color:var(--ink);}
.ink .tut-body{border-color:var(--ink);}
.tut-body h3{font-size:clamp(24px,3.4vw,42px);margin-bottom:16px;}
.tut-body .lede{font-family:var(--font-serif);font-style:italic;font-size:21px;margin-bottom:22px;}
.tut-body .cols{columns:2;column-gap:44px;}
@media(max-width:760px){.tut-body .cols{columns:1;}}
.tut-body p{margin-bottom:14px;font-size:16px;}
.band-list{list-style:none;margin-top:20px;}
.band-list li{
  border-top:2px solid var(--ink);padding:12px 0;display:flex;gap:14px;align-items:baseline;
  cursor:pointer;transition:background .15s ease-out;
}
.band-list li:hover{background:rgba(201,154,63,.3);}
.band-list .no{font-family:var(--font-mono);font-weight:700;font-size:13px;}
.band-list b{font-family:var(--font-display);font-size:17px;text-transform:uppercase;}
.band-list .why{font-size:14px;opacity:.8;}
.band-detail{
  margin-top:8px;padding:18px;border:3px solid var(--ink);background:var(--acid);
  font-size:15px;display:none;
}
.band-list li.open .band-detail{display:block;}

/* ---------- videos ---------- */
.vid-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;}
.vid-box{
  border:3px solid var(--ink);background:var(--paper);position:relative;
  box-shadow:8px 8px 0 var(--acid);
}
.vid-box .thumb{
  aspect-ratio:16/9;width:100%;background:var(--ink);position:relative;
  cursor:pointer;border:none;display:block;padding:0;overflow:hidden;
}
.vid-box .thumb img{width:100%;height:100%;object-fit:cover;opacity:.85;transition:opacity .2s,transform .3s;}
.vid-box .thumb:hover img{opacity:1;transform:scale(1.03);}
.vid-box .play{
  position:absolute;inset:0;margin:auto;width:72px;height:72px;
  background:var(--acid);border:3px solid var(--ink);display:flex;
  align-items:center;justify-content:center;pointer-events:none;
}
.vid-box .play svg{width:26px;height:26px;fill:var(--ink);margin-left:4px;}
.vid-box iframe{aspect-ratio:16/9;width:100%;border:none;display:block;}
.vid-box .cap{padding:14px 16px;font-family:var(--font-mono);font-size:13px;}

/* ---------- gallery ---------- */
#vortex-wrap{position:fixed;inset:0;margin-left:var(--rail);}
#vortex-canvas{width:100%;height:100%;display:block;cursor:grab;}
#vortex-canvas:active{cursor:grabbing;}
.vortex-ui{
  position:fixed;z-index:50;left:calc(var(--rail) + 24px);bottom:24px;
  font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--acid);pointer-events:none;
}
.vortex-title{
  position:fixed;z-index:50;left:calc(var(--rail) + 24px);top:28px;pointer-events:none;
}
#fs-overlay{
  position:fixed;inset:0;z-index:1500;background:rgba(10,10,8,.94);
  display:none;align-items:center;justify-content:center;flex-direction:column;gap:18px;
  padding:5vh 5vw;
}
#fs-overlay.open{display:flex;}
#fs-overlay img{max-width:92vw;max-height:78vh;border:4px solid var(--paper);box-shadow:12px 12px 0 var(--acid);}
#fs-overlay .cap{font-family:var(--font-mono);color:var(--acid);letter-spacing:.1em;text-transform:uppercase;font-size:13px;}
#fs-close{position:absolute;top:22px;right:26px;}

/* ---------- utility ---------- */
.lede{font-family:var(--font-serif);font-style:italic;font-size:clamp(20px,2.6vw,27px);max-width:760px;line-height:1.4;}
.mt-40{margin-top:40px;}.mt-24{margin-top:24px;}
.note{font-family:var(--font-mono);font-size:12.5px;opacity:.7;max-width:640px;}
.hr-scribble{border:none;border-top:3px dashed currentColor;margin:56px 0;opacity:.5;}

/* ---------- responsive ---------- */
@media(max-width:900px){
  .rail{display:none;}
  .shell{margin-left:0;}
  #vortex-wrap{margin-left:0;}
  .vortex-ui{left:20px;}
  .vortex-title{left:20px;top:76px;}
  .topbar{
    display:flex;position:sticky;top:0;z-index:900;background:var(--acid);
    color:var(--ink);border-bottom:3px solid var(--ink);align-items:stretch;
  }
  .topbar .mark{
    font-family:var(--font-display);font-size:16px;padding:14px 16px;
    text-decoration:none;border-right:3px solid var(--ink);display:flex;align-items:center;
  }
  .topbar nav{
    display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;flex:1;
  }
  .topbar nav a{
    font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.1em;
    text-transform:uppercase;text-decoration:none;padding:0 16px;
    display:flex;align-items:center;min-height:52px;white-space:nowrap;flex:none;
  }
  .topbar nav a.active,.topbar nav a:hover{background:var(--ink);color:var(--acid);}
  .section{padding:72px 20px;}
  .hero{padding:16vh 20px 10vh;}
  .hero-sticker{display:none;}
  .scholar-sticker{
    width:96px;height:96px;position:relative;margin-left:auto;margin-bottom:8px;
  }
  .pub{grid-template-columns:1fr;gap:6px;}
  .footer{padding:48px 20px;}
}
