/* Ask the Razz — blog theme
   Layout: black masthead, orange poster hero on the homepage only, calm light pages for reading. */
:root{
  --ink:#141114;          /* masthead, footer, comic outlines */
  --orange:#ED9934;       /* Razz's orange (hero, highlights) */
  --orange-deep:#A3561A;  /* links + buttons on light backgrounds (readable) */
  --orange-soft:#FBE7CC;
  --bg:#EEEAF0;           /* same light background as the app */
  --paper:#FFFFFF;
  --text:#1F1A26; --muted:#6C6478; --line:#DCD5E2;
  --display:"Bebas Neue", "Oswald", Impact, "Arial Narrow", sans-serif;
  --ui:"Rubik", "Segoe UI", system-ui, sans-serif;
  --read:"Source Serif 4", Georgia, "Times New Roman", serif;
  --comic:"Comic Neue", "Rubik", sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--text);font:16px/1.5 var(--ui);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:1160px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}

/* masthead */
.bar{background:var(--ink);color:#fff;position:sticky;top:0;z-index:5}
.bar .wrap{display:flex;align-items:center;justify-content:space-between;height:58px}
.bar .logo{font:400 30px/1 var(--display);letter-spacing:.08em}
.bar .ico{width:26px;height:26px;stroke:#fff;fill:none;stroke-width:2.2;stroke-linecap:round}
.bar nav{display:flex;gap:26px;font:500 14px var(--ui);letter-spacing:.06em;text-transform:uppercase}
.bar nav a{opacity:.8} .bar nav a.on{opacity:1;box-shadow:inset 0 -2px 0 var(--orange);padding-bottom:3px}
.bar .side{display:flex;align-items:center;gap:22px;min-width:110px}
.bar .side.r{justify-content:flex-end}
.strip{height:6px;background:var(--orange)}

/* homepage poster hero */
.hero{background:var(--orange);position:relative;overflow:hidden}
.hero .wrap{position:relative;min-height:470px;display:flex;align-items:center}
.slogan{margin:0;font:400 clamp(64px,10vw,132px)/.88 var(--display);color:#fff;letter-spacing:.02em;
  -webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:6px 6px 0 var(--ink);position:relative;z-index:2;padding-block:40px}
.hero p{position:relative;z-index:2;margin:16px 0 0;font:400 13px/1.45 var(--ui);color:#fff;max-width:420px;letter-spacing:.02em}
.hero .ask{position:relative;z-index:2;display:inline-flex;align-items:center;gap:8px;margin:20px 0 44px;background:var(--ink);color:#fff;
  border-radius:999px;padding:5px 14px 5px 5px;font:600 13px var(--ui)}
.hero .ask img{width:28px;height:28px;border-radius:50%;background:var(--orange);border:2px solid #fff}
.hero p b{font-weight:700}
.peek{position:absolute;right:max(10px,calc(50% - 560px));bottom:-330px;height:860px;z-index:1;filter:drop-shadow(-6px 6px 0 rgba(20,17,20,.22))}
.hero .burst{position:absolute;z-index:2;right:max(330px,calc(50% - 250px));top:56px;background:#fff;color:var(--ink);border:3px solid var(--ink);
  border-radius:20px;padding:10px 16px;font:700 18px/1.25 var(--comic);box-shadow:4px 4px 0 var(--ink);max-width:220px;transform:rotate(-3deg)}
.hero .burst::before{content:"";position:absolute;right:-19px;top:20px;border-style:solid;border-width:11px 0 11px 19px;border-color:transparent transparent transparent var(--ink)}
.hero .burst::after{content:"";position:absolute;right:-12px;top:23.5px;border-style:solid;border-width:7.5px 0 7.5px 12px;border-color:transparent transparent transparent #fff}

/* category chips */
.cats{display:flex;gap:10px;flex-wrap:wrap;padding-block:22px 6px}
.cats a{border:2px solid var(--ink);border-radius:999px;padding:6px 16px;font:600 13px var(--ui);letter-spacing:.06em;text-transform:uppercase;background:var(--paper)}
.cats a.on{background:var(--ink);color:#fff}

/* homepage grid */
.home{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;padding-block:22px 56px}
.sec{font:400 30px/1 var(--display);letter-spacing:.05em;margin:0 0 16px;display:flex;align-items:center;gap:12px}
.sec::after{content:"";flex:1;height:3px;background:var(--ink)}
.card{background:var(--paper);border-radius:16px;overflow:hidden;border:1px solid var(--line);display:flex;flex-direction:column}
.thumb{position:relative;aspect-ratio:16/9;max-width:100%;display:grid;place-items:center;overflow:hidden}
.thumb span{font:400 clamp(36px,6vw,64px)/1 var(--display);letter-spacing:.06em;color:rgba(255,255,255,.95);-webkit-text-stroke:2px rgba(20,17,20,.85);paint-order:stroke fill;text-shadow:4px 4px 0 rgba(20,17,20,.85)}
.t-mov{background:repeating-linear-gradient(90deg,#2B2430 0 22px,#352D3B 22px 44px)}
.t-eat{background:radial-gradient(circle at 30% 30%,#F6C27A,#D9822A)}
.t-tv{background:linear-gradient(135deg,#3B4C6B,#24314A)}
.t-spo{background:repeating-linear-gradient(45deg,#2F7D4F 0 26px,#2A7046 26px 52px)}
.t-tra{background:linear-gradient(160deg,#7FB2C9,#3E7E9A)}
.card .in{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px}
.kick{font:600 12px var(--ui);letter-spacing:.1em;text-transform:uppercase;color:var(--orange-deep)}
.card h3{margin:0;font:600 19px/1.28 var(--ui);text-wrap:balance}
.meta{display:flex;flex-wrap:wrap;gap:6px 14px;font:400 13px var(--ui);color:var(--muted);align-items:center;font-variant-numeric:tabular-nums}
.meta svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;vertical-align:-2px;margin-right:4px}
.feature{display:grid;grid-template-columns:1.25fr 1fr;margin-bottom:28px}
.feature .thumb{aspect-ratio:auto;min-height:300px}
.feature .in{padding:26px 26px;justify-content:center;gap:10px}
.feature h3{font:400 44px/1 var(--display);letter-spacing:.02em}
.feature .ex{font:400 16px/1.6 var(--read);color:#3A3442;margin:0}
.badge{align-self:flex-start;background:var(--orange);color:var(--ink);font:700 11px var(--ui);letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;border-radius:6px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.more{display:block;text-align:center;margin-top:26px;font:600 14px var(--ui);color:var(--orange-deep);letter-spacing:.06em;text-transform:uppercase}

/* sidebar */
.side-col{display:flex;flex-direction:column;gap:28px}
.box{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:18px}
.box h4{margin:0 0 12px;font:400 24px/1 var(--display);letter-spacing:.06em}
ol.top{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;counter-reset:n}
ol.top li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;counter-increment:n}
ol.top li::before{content:counter(n);font:400 34px/.9 var(--display);color:var(--orange)}
ol.top b{display:block;font:600 14px/1.3 var(--ui)}
ol.top small{font:400 12px var(--ui);color:var(--muted);font-variant-numeric:tabular-nums}
.askbox{background:var(--ink);color:#fff;border:0;display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:center}
.askbox img{width:72px;height:72px;border-radius:50%;background:var(--orange);border:3px solid var(--orange)}
.askbox p{margin:0 0 8px;font:700 16px/1.3 var(--comic)}
.askbox a{color:var(--orange);font:600 13px var(--ui);letter-spacing:.06em;text-transform:uppercase}
.catlist{list-style:none;margin:0;padding:0;columns:2;font:500 14px/2 var(--ui)}
.catlist span{color:var(--muted);font-variant-numeric:tabular-nums}

/* post page */
.post{max-width:760px;margin:0 auto;padding-block:34px 20px}
.crumb{font:500 13px var(--ui);color:var(--muted);letter-spacing:.04em}
.crumb a{color:var(--orange-deep)}
.post h1{font:400 clamp(44px,6.4vw,70px)/.96 var(--display);letter-spacing:.015em;margin:14px 0 18px;text-wrap:balance}
.byline{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.byline img{width:46px;height:46px;border-radius:50%;background:var(--orange);border:2px solid var(--ink)}
.byline b{font:600 15px var(--ui)}
.hero-img{margin:26px 0 8px;border-radius:16px;aspect-ratio:16/8;max-width:100%}
.cap{font:400 13px var(--ui);color:var(--muted);margin:0 0 26px}
.series{background:var(--paper);border:2px solid var(--ink);border-radius:16px;padding:16px 18px;margin:0 0 30px;box-shadow:4px 4px 0 var(--orange)}
.series h5{margin:0 0 10px;font:600 12px var(--ui);letter-spacing:.12em;text-transform:uppercase;color:var(--orange-deep)}
.series ol{margin:0;padding-left:20px;font:500 15px/1.9 var(--ui)}
.series li.now{font-weight:700}
.series li.now::marker{color:var(--orange-deep)}
.body p{font:400 19px/1.72 var(--read);margin:0 0 1.15em;color:#25202B}
.body p:first-of-type::first-letter{float:left;font:400 64px/1 var(--display);margin:6px 12px 0 0;padding:6px 12px 2px;background:var(--orange);color:var(--ink);border:2.5px solid var(--ink);border-radius:10px;box-shadow:3px 3px 0 var(--ink)}
.body blockquote{margin:30px 0;padding:6px 0 6px 22px;border-left:5px solid var(--orange);font:italic 400 23px/1.45 var(--read);color:var(--text)}
.tags{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0}
.tags a{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:5px 12px;font:500 13px var(--ui);color:var(--muted)}
.minirazz{display:grid;grid-template-columns:84px minmax(0,1fr);gap:18px;align-items:start;margin:34px 0}
.minirazz img{width:84px;height:84px;border-radius:50%;background:var(--orange);border:2.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}
.bubble{position:relative;background:#FFFDF7;border:2.5px solid var(--ink);border-radius:20px;padding:12px 16px;box-shadow:3px 3px 0 var(--ink);font:700 17px/1.4 var(--comic)}
.bubble::before{content:"";position:absolute;left:-17px;top:24px;border:10px solid transparent;border-right:17px solid var(--ink);border-left:0}
.bubble::after{content:"";position:absolute;left:-11px;top:27.5px;border:6.5px solid transparent;border-right:11px solid #FFFDF7;border-left:0}
.bubble a{color:var(--orange-deep);text-decoration:underline}
.author{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:18px;margin:10px 0 40px}
.author img{width:72px;height:72px;border-radius:50%;background:var(--orange)}
.author b{font:400 24px/1 var(--display);letter-spacing:.05em}
.author p{margin:4px 0 0;font:400 14px/1.5 var(--ui);color:var(--muted)}
.comments h2,.related h2{font:400 32px/1 var(--display);letter-spacing:.05em;margin:0 0 18px;display:flex;gap:12px;align-items:center}
.comments h2::after,.related h2::after{content:"";flex:1;height:3px;background:var(--ink)}
.cmt{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;margin-bottom:18px}
.av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font:600 16px var(--ui);color:#fff}
.cmt .who{font:600 15px var(--ui)} .cmt .who small{font-weight:400;color:var(--muted);margin-left:6px}
.cmt p{margin:4px 0 0;font:400 16px/1.6 var(--read)}
.cmt.reply{margin-left:54px}
.cmt .razzav{background:var(--orange);overflow:hidden}
.cmt .razzav img{width:100%;height:100%;object-fit:cover}
.authtag{background:var(--ink);color:#fff;border-radius:6px;padding:1px 7px;font:600 10px var(--ui);letter-spacing:.1em;margin-left:6px;vertical-align:2px}
form.reply{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0 44px}
form.reply textarea,form.reply input{font:400 15px var(--ui);border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--bg);color:var(--text);width:100%}
form.reply textarea{grid-column:1/-1;min-height:110px;resize:vertical}
form.reply .row{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px;font:400 13px var(--ui);color:var(--muted)}
.btn{background:var(--orange-deep);color:#fff;border:0;border-radius:999px;padding:11px 22px;font:600 15px var(--ui);cursor:pointer}
.related .grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:56px}
.related .card h3{font-size:16px}
.related .thumb span{font-size:34px}

footer{background:var(--ink);color:#C9C2D0}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding-block:30px;font:400 14px var(--ui)}
footer .logo{font:400 26px/1 var(--display);letter-spacing:.08em;color:#fff}
footer .logo b{color:var(--orange);font-weight:400}

@media (max-width:900px){
  .home{grid-template-columns:minmax(0,1fr)}
  .bar nav{display:none}
  .bar .side{min-width:0}
}
@media (max-width:640px){
  .hero .wrap{min-height:400px;align-items:flex-start}
  .slogan{font-size:68px;padding-block:34px 0;-webkit-text-stroke:2px var(--ink);text-shadow:4px 4px 0 var(--ink)}
  .hero p{font-size:12px;max-width:190px}
  .slogan{font-size:54px}
  .peek{height:470px;bottom:-140px;right:-30px}
  .hero .ask{font-size:12.5px;margin-bottom:40px}
  .hero .burst{display:none}
  .feature{grid-template-columns:minmax(0,1fr)}
  .feature .thumb{min-height:190px}
  .feature h3{font-size:36px}
  .grid2,.related .grid3{grid-template-columns:minmax(0,1fr)}
  .body p{font-size:18px}
  form.reply{grid-template-columns:minmax(0,1fr)}
  .minirazz{grid-template-columns:64px minmax(0,1fr)} .minirazz img{width:64px;height:64px}
  .cmt.reply{margin-left:30px}
}

/* ---------- intro: full-body Razz, zooms into his face on the first click/scroll ---------- */
:root{--ease:cubic-bezier(.65,0,.25,1)}
.hero .wrap{transition:min-height .95s var(--ease)}
body.intro .hero .wrap{min-height:calc(100vh - 58px)}
body.intro{overflow:hidden}
.peek{bottom:auto;top:40px;height:1000px;right:max(10px,calc(50% - 480px));transition:top .95s var(--ease),height .95s var(--ease),right .95s var(--ease)}
body.intro .peek{top:74px;height:calc(100vh - 160px)}
.hero .burst{right:calc(max(10px,50% - 480px) + 360px);top:70px;transition:opacity .35s ease .85s,transform .35s ease .85s}
body.intro .hero .burst{opacity:0;transform:rotate(-3deg) scale(.6);transition:none}
.enter{position:absolute;z-index:3;left:50%;bottom:16px;transform:translateX(-50%);background:none;border:0;padding:6px;color:#fff;cursor:pointer;transition:opacity .3s;opacity:0;pointer-events:none}
body.intro .enter{opacity:1;pointer-events:auto}
.enter svg{display:block;width:56px;height:56px;stroke:currentColor;fill:none;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(2px 2px 0 rgba(20,17,20,.55));animation:bob 1.2s ease-in-out infinite}
.enter:focus-visible{outline:2px solid #fff;outline-offset:2px;border-radius:12px}
@keyframes bob{50%{transform:translateY(6px)}}
@media (min-width:901px){.hero .wrap>div:first-child{margin-left:80px}}
@media (max-width:640px){
  .enter{left:12px;transform:none;bottom:14px}
  .enter svg{width:48px;height:48px}
  body.intro .hero .wrap{min-height:calc(100svh - 58px)}
  .peek{top:92px;height:540px;right:-34px}
  body.intro .peek{height:calc(100svh - 360px);top:calc(100svh - 58px - 28px - (100svh - 360px));right:-6px}
}

/* ---------- real content ---------- */
.thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.thumb.t-none{background:repeating-linear-gradient(90deg,#2B2430 0 22px,#352D3B 22px 44px)}
a.card:hover h3,a.card:focus-visible h3{color:var(--orange-deep)}
a.card:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.hero-img{display:block;width:100%;object-fit:cover;background:var(--ink)}
.body{overflow-wrap:break-word}
.body h2,.body h3{font:400 34px/1.05 var(--display);letter-spacing:.03em;margin:1.4em 0 .5em}
.body h3{font-size:27px}
.body ul,.body ol{font:400 19px/1.7 var(--read);padding-left:1.3em;margin:0 0 1.15em}
.body li{margin-bottom:.3em}
.body a{color:var(--orange-deep);text-decoration:underline;text-underline-offset:3px}
.body img{max-width:100%;height:auto;border-radius:12px}
.body figure{margin:28px 0}
.body figcaption,.body .wp-element-caption{font:400 13px var(--ui);color:var(--muted);margin-top:8px;text-align:center}
.body table{width:100%;border-collapse:collapse;font:400 15px/1.5 var(--ui);margin:0 0 1.2em;display:block;overflow-x:auto}
.body th,.body td{border:1px solid var(--line);padding:8px 10px;text-align:left}
.body th{background:var(--paper)}
.body iframe,.body video,.body embed{max-width:100%}
.body .wp-block-embed__wrapper{position:relative}
.body .wp-block-media-text{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px;align-items:center}
.body [dir="rtl"],.body:has(> p:only-child)[dir="rtl"]{text-align:right}
.rtl .body p:first-of-type::first-letter{float:none;font:inherit;padding:0;margin:0;background:none;border:0;box-shadow:none;color:inherit}
.rtl .body,.rtl h1{direction:rtl;text-align:right;font-family:"Noto Naskh Arabic","Amiri",var(--read)}
.av.initials{background:#3B4C6B}

/* lists, pagination, search */
.listhead{padding-block:34px 6px}
.listhead .kick{display:block;margin-bottom:6px}
.listhead h1{margin:0;font:400 clamp(40px,6vw,64px)/1 var(--display);letter-spacing:.02em}
.listhead p{max-width:640px;color:var(--muted);margin:8px 0 0}
.listhead small{color:var(--muted)}
.pager{display:flex;justify-content:center;gap:10px;margin-top:30px;flex-wrap:wrap}
.pager a,.pager span{border:2px solid var(--ink);border-radius:999px;padding:6px 16px;font:600 13px var(--ui);background:var(--paper)}
.pager span{background:var(--ink);color:#fff}
.empty{background:var(--paper);border:1px dashed var(--line);border-radius:16px;padding:28px;text-align:center;color:var(--muted)}
.notice{border-radius:12px;padding:12px 16px;margin:0 0 16px;font:500 14px var(--ui)}
.notice.ok{background:#DDF0E3;color:#1E5A36}.notice.err{background:#FBE1DF;color:#8A1F17}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* menu drawer + search sheet */
.bar button.icon{background:none;border:0;padding:6px;margin:-6px;cursor:pointer;color:#fff}
.bar button.icon:focus-visible{outline:2px solid var(--orange);border-radius:8px}
.drawer{position:fixed;inset:0;z-index:20;display:none}
.drawer.open{display:block}
.drawer .shade{position:absolute;inset:0;background:rgba(20,17,20,.5)}
.drawer nav{position:absolute;left:0;top:0;bottom:0;width:min(320px,86vw);background:var(--ink);color:#fff;padding:22px 22px calc(22px + env(safe-area-inset-bottom,0px));overflow-y:auto;display:flex;flex-direction:column;gap:4px}
.drawer nav .logo{font:400 28px/1 var(--display);letter-spacing:.08em;margin-bottom:16px}
.drawer nav a{padding:10px 4px;font:500 16px var(--ui);border-bottom:1px solid #2A242C}
.drawer nav a small{float:right;color:#8E8597;font-variant-numeric:tabular-nums}
.drawer nav .app{margin-top:16px;border:0;color:var(--orange);display:flex;gap:10px;align-items:center}
.drawer nav .app img{width:34px;height:34px;border-radius:50%;background:var(--orange)}
.searchsheet{position:fixed;left:0;right:0;top:0;z-index:20;background:var(--ink);padding:14px max(20px,env(safe-area-inset-left,0px)) 18px;display:none;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.searchsheet.open{display:block}
.searchsheet form{max-width:760px;margin:0 auto;display:flex;gap:10px}
.searchsheet input{flex:1;min-width:0;font:400 17px var(--ui);padding:12px 16px;border-radius:999px;border:0}
.searchsheet button{border:0;border-radius:999px;background:var(--orange);color:var(--ink);font:700 15px var(--ui);padding:0 20px;cursor:pointer}

/* placeholders + caps even before the display font arrives */
.thumb span{font-size:clamp(26px,3.2vw,42px);line-height:1;padding:0 16px;text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.feature .thumb span{font-size:clamp(34px,4.2vw,56px)}
.related .thumb span{font-size:28px}
.logo,.slogan,.sec,.post h1,.listhead h1,.feature h3,.box h4,.comments h2,.related h2,.thumb span,.drawer nav .logo{text-transform:uppercase}
.rtl .post h1,.post h1[dir=rtl]{text-transform:none}

/* ================= motion ================= */
/* smooth page-to-page changes (Chrome, Edge, Safari): the black bar stays put, the page cross-fades */
@view-transition{navigation:auto}
.bar{view-transition-name:bar}
::view-transition-old(root){animation:vt-out .22s ease both}
::view-transition-new(root){animation:vt-in .38s cubic-bezier(.2,.7,.2,1) both}
@keyframes vt-out{to{opacity:0;transform:translateY(-8px)}}
@keyframes vt-in{from{opacity:0;transform:translateY(14px)}}

/* every page eases in (also in browsers without the above) */
.post,.listhead,.cats,.home{animation:rise .55s cubic-bezier(.2,.7,.2,1) both}
.home{animation-delay:.08s}
@keyframes rise{from{opacity:0;transform:translateY(16px)}}
.hero .slogan{animation:slam .7s cubic-bezier(.2,.9,.25,1.2) both}
.hero p,.hero .ask{animation:rise .6s cubic-bezier(.2,.7,.2,1) .25s both}
@keyframes slam{from{opacity:0;transform:translateY(-26px) rotate(-2deg) scale(1.06)}}
.post .hero-img{animation:fadein .8s ease both}
@keyframes fadein{from{opacity:0}}

/* things slide up as you scroll to them */
.rv{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.rv.seen{opacity:1;transform:none}

/* cards lift, pictures zoom a touch */
a.card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
a.card:hover{transform:translateY(-5px);box-shadow:0 16px 30px -18px rgba(20,17,20,.45);border-color:var(--orange)}
a.card .thumb img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
a.card:hover .thumb img{transform:scale(1.06)}
a.card h3{transition:color .2s}

/* buttons and chips */
.cats a,.tags a,.pager a,.btn,.hero .ask,.searchsheet button,.drawer nav a,.top li a,.catlist a{transition:background-color .2s,color .2s,transform .2s,box-shadow .2s,border-color .2s}
.cats a:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}
.tags a:hover{border-color:var(--orange);color:var(--orange-deep);transform:translateY(-2px)}
.pager a:hover{background:var(--ink);color:#fff}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 16px -8px rgba(163,86,26,.7)}
.hero .ask:hover{transform:translateY(-3px) rotate(-1deg);box-shadow:4px 4px 0 rgba(20,17,20,.35)}
.hero .ask img{transition:transform .35s cubic-bezier(.2,.9,.25,1.4)}
.hero .ask:hover img{transform:rotate(-12deg) scale(1.12)}
.drawer nav a:hover{color:var(--orange);padding-left:10px}
.bar .icon{transition:transform .2s,background-color .2s;border-radius:10px}
.bar .icon:hover{transform:scale(1.1)}
.bar .logo{transition:letter-spacing .3s,color .2s}
.bar .logo:hover{color:var(--orange);letter-spacing:.12em}

/* menu slides in, search drops down */
.drawer{display:block;visibility:hidden;pointer-events:none;transition:visibility 0s linear .35s}
.drawer.open{visibility:visible;pointer-events:auto;transition:visibility 0s}
.drawer .shade{opacity:0;transition:opacity .35s ease}
.drawer.open .shade{opacity:1}
.drawer nav{transform:translateX(-102%);transition:transform .38s cubic-bezier(.2,.8,.2,1)}
.drawer.open nav{transform:none}
.searchsheet{display:block;visibility:hidden;transform:translateY(-110%);transition:transform .32s cubic-bezier(.2,.8,.2,1),visibility 0s linear .32s}
.searchsheet.open{visibility:visible;transform:none;transition:transform .32s cubic-bezier(.2,.8,.2,1),visibility 0s}

/* Mini Razz pops in with his line */
.minirazz.rv{transform:translateY(22px) scale(.96)}
.minirazz.rv.seen{transform:none}
.minirazz.seen img{animation:wobble .7s cubic-bezier(.2,.9,.25,1.3) .2s both}
@keyframes wobble{0%{transform:rotate(-14deg) scale(.8)}60%{transform:rotate(6deg) scale(1.05)}100%{transform:none}}

/* ================= about ================= */
.abouthero .wrap{min-height:470px;align-items:flex-end}
.abouthero .wrap>div:first-child{padding-bottom:110px}
.abouthero .slogan{padding-block:10px 0;font-size:clamp(64px,9vw,120px)}
.kickw{display:inline-block;margin-top:40px;background:var(--ink);color:var(--orange);font:700 12px var(--ui);letter-spacing:.18em;text-transform:uppercase;padding:5px 12px;border-radius:999px;position:relative;z-index:2}
.abouthero .peek{top:auto;bottom:-150px;height:580px;right:max(10px,calc(50% - 520px));transition:none}
.abouthero .burst{right:max(300px,calc(50% - 250px));left:auto;top:70px;transition:none;opacity:1}
.about{padding-block:34px 70px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:-80px 0 44px;position:relative;z-index:3}
.stat{background:var(--paper);border:2.5px solid var(--ink);border-radius:18px;box-shadow:5px 5px 0 var(--ink);padding:16px 18px 14px;display:flex;flex-direction:column;gap:2px}
.stat b{font:400 58px/.9 var(--display);color:var(--orange);-webkit-text-stroke:2px var(--ink);paint-order:stroke fill;text-shadow:3px 3px 0 var(--ink);letter-spacing:.02em}
.stat span{font:700 15px/1.25 var(--comic);color:var(--ink)}
.stat:nth-child(2){transform:rotate(1deg)} .stat:nth-child(3){transform:rotate(-1deg)}
.stat.rv{transform:translateY(22px)} .stat.rv.seen:nth-child(2){transform:rotate(1deg)} .stat.rv.seen:nth-child(3){transform:rotate(-1deg)}
.founder{display:grid;grid-template-columns:minmax(0,330px) minmax(0,1fr);gap:46px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:34px;margin-bottom:54px}
.polaroid{margin:0;background:#fff;padding:12px 12px 8px;border:2.5px solid var(--ink);box-shadow:8px 8px 0 var(--orange),8px 8px 0 2.5px var(--ink);transform:rotate(-3deg);transition:transform .4s cubic-bezier(.2,.9,.25,1.3)}
.polaroid:hover{transform:rotate(0) scale(1.02)}
.polaroid img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 25%;background:var(--bg)}
.polaroid figcaption{font:700 18px var(--comic);text-align:center;padding-top:8px;color:var(--ink)}
.founder .kick{font:700 12px var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--orange-deep)}
.founder h2{margin:4px 0 14px;font:400 clamp(56px,7vw,92px)/.9 var(--display);letter-spacing:.03em;text-transform:uppercase}
.founder .lead{font:400 18.5px/1.7 var(--serif);margin:0 0 18px;color:var(--text)}
.likes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.likes span{border:2px solid var(--ink);border-radius:999px;padding:5px 13px;font:600 13.5px var(--ui);background:var(--paper)}
.founder .btn{display:inline-block}
.crew{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:54px}
.mate{display:flex;align-items:center;gap:20px;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:20px 22px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s}
a.mate:hover{transform:translateY(-5px);box-shadow:0 16px 30px -18px rgba(20,17,20,.45);border-color:var(--orange)}
.mate img{width:104px;height:104px;flex:0 0 104px;border-radius:50%;object-fit:cover;object-position:50% 30%;border:3px solid var(--ink);box-shadow:0 0 0 5px var(--orange),5px 5px 0 5px var(--ink);background:var(--bg)}
.mate b{display:block;font:400 40px/1 var(--display);letter-spacing:.04em;text-transform:uppercase}
.mate span{display:block;font:500 15px var(--ui);color:var(--muted);margin:2px 0 8px}
.mate small{font:700 13px var(--ui);color:var(--orange-deep)}
.aboutask{max-width:820px;margin:0 auto}
.aboutask img{width:96px;height:96px}
.aboutask .bubble{font-size:18px}
@media (max-width:900px){
  .founder{grid-template-columns:minmax(0,1fr);padding:24px;gap:28px}
  .polaroid{max-width:250px;margin:0 auto}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:-60px}
  .crew{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .abouthero .wrap{min-height:440px;align-items:flex-start}
  .abouthero .wrap>div:first-child{padding-bottom:0;max-width:62%}
  .abouthero .slogan{font-size:60px}
  .abouthero p{font-size:12.5px}
  .abouthero .peek{height:420px;bottom:-110px;right:-30px}
  .stats{gap:12px} .stat b{font-size:46px} .stat span{font-size:13.5px}
  .stat,.stat:nth-child(n),.stat.rv.seen:nth-child(n){transform:none}
  .abouthero .wrap>div:first-child{padding-bottom:90px}
  .mate{padding:16px} .mate img{width:80px;height:80px;flex-basis:80px} .mate b{font-size:32px}
  .aboutask img{width:64px;height:64px}
}

/* menu: HOME, ABOUT, ALL POSTS in caps; categories tucked under ALL POSTS */
.drawer nav a.main{font:400 21px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;padding:12px 4px}
.drawer nav a.sub{font:400 15px var(--ui);color:#CFC8D6;padding:8px 4px 8px 22px;border-bottom-color:#221D24}
.drawer nav a.sub:hover{color:var(--orange);padding-left:28px}

/* category tree */
.drawer nav a.sub2{padding-left:42px;font-size:14px;color:#A79EB2}
.drawer nav a.sub2::before{content:"↳ ";color:#5E5666}
.drawer nav a.sub2:hover{padding-left:48px}
.catlist li{break-inside:avoid}
.catlist li.child{padding-left:14px;font-size:13px}
.catlist li.child a::before{content:"↳ ";color:var(--muted)}
.listhead .kick a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.subcats{margin:12px 0 10px;padding:0}
.subcats a small{opacity:.6;margin-left:3px}

/* menu: folding categories */
.drawer nav .mrow{display:flex;align-items:stretch;border-bottom:1px solid #2A242C}
.drawer nav .mrow>a{flex:1;border-bottom:0}
.drawer nav .sub-row{border-bottom-color:#221D24}
.drawer nav .tog{background:none;border:0;color:#CFC8D6;width:44px;display:grid;place-items:center;cursor:pointer;border-radius:8px;transition:background-color .2s,color .2s}
.drawer nav .tog:hover{background:#221D24;color:var(--orange)}
.drawer nav .tog svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.drawer nav .tog[aria-expanded="true"]{color:var(--orange)}
.drawer nav .tog[aria-expanded="true"] svg{transform:rotate(180deg)}
.drawer nav .sub-row .tog{width:38px}.drawer nav .sub-row .tog svg{width:16px;height:16px}
.fold{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.2,.8,.2,1)}
.fold.open{grid-template-rows:1fr}
.fold>div{overflow:hidden;min-height:0;display:flex;flex-direction:column}
.fold:not(.open)>div{visibility:hidden;transition:visibility 0s .35s}

/* browse by date */
.archive h4{margin-bottom:6px}
.arow{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;border-bottom:1px solid var(--line);padding:9px 2px;cursor:pointer;color:var(--ink);text-align:left;font:inherit;transition:color .2s}
.arow:hover{color:var(--orange-deep)}
.arow b{font:400 20px/1 var(--display);letter-spacing:.05em}
.arow span{font:500 14.5px var(--ui)}
.arow small{margin-left:auto;color:var(--muted);font:500 12.5px var(--ui);font-variant-numeric:tabular-nums}
.arow svg{width:16px;height:16px;flex:0 0 16px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.arow[aria-expanded="true"]{color:var(--orange-deep)}
.arow[aria-expanded="true"] svg{transform:rotate(180deg)}
.arow.mo{padding-left:14px;border-bottom-style:dashed}
.aposts{list-style:none;margin:0;padding:4px 0 8px 26px}
.aposts li{padding:5px 0;font:500 13.5px/1.35 var(--ui)}
.aposts a:hover{color:var(--orange-deep);text-decoration:underline}
.archive>.fold:last-child>div>.arow:last-of-type{border-bottom:0}
.arow.mo.on{color:var(--orange-deep);font-weight:600}.arow.mo.on span{font-weight:700}
.arow.mo:hover span{text-decoration:underline;text-underline-offset:3px}
