:root{--paper:#fffefa;--ink:#141216;--ink-2:#4a4650;--white:#ffffff;--rule:#d9d5de;--band:var(--ink);--on-band:var(--paper);--on-band-2:#c9c5cf;--violet:#5a2ee0;--on-violet:#ffffff;--lime:#d9ff4a;--on-lime:#141216;--lilac:#e9e3ff;--focus:#5a2ee0;--space-1:8px;--space-2:16px;--space-3:28px;--space-4:32px;--space-5:96px;--radius-sm:8px;--radius-lg:24px;--radius-pill:999px;--pen:2.5px;--font-display:"Bricolage Grotesque", "Arial Black", sans-serif;--font-text:"Instrument Sans", Helvetica, Arial, sans-serif;--font-hand:"Gochi Hand", "Comic Sans MS", cursive;}
html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.mj{background:var(--paper);color:var(--ink);font-family:var(--font-text);font-size:17px;line-height:26px;overflow-x:clip}
.mj *{box-sizing:border-box}
.mj img{display:block;max-width:100%}
.mj p{margin:0}
.mj a{color:inherit;text-underline-offset:3px}
.mj a:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}
.mj-w{max-width:1240px;margin:0 auto;padding-left:var(--space-4);padding-right:var(--space-4)}
.mj-sec{padding-top:var(--space-5);padding-bottom:0}
/* pen marks */
.art{display:block;overflow:visible}.art .ik{fill:currentColor}
.mark{position:absolute;pointer-events:none}
.art .reveal{stroke-dasharray:1 1;stroke-dashoffset:0}
.art .pn{fill:none;stroke:currentColor;stroke-width:3.3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 1.1;stroke-dashoffset:0}
.js .mj-hi:not(.in) .pn{stroke-dashoffset:1.05}
.mj-hi.in .p1{animation:mj-ink 1s cubic-bezier(.45,.05,.4,1) .2s backwards}
.mj-hi.in .p2{animation:mj-ink .22s ease-out 1.25s backwards}
.mj-hi.in .p3{animation:mj-ink .22s ease-out 1.5s backwards}
.mj-hi.in .nudge{animation:mj-nudge 1.5s ease-in-out 1.8s infinite alternate}
.mj-hi.in .mj-note{animation:mj-tilt 3.2s ease-in-out infinite alternate}
.js .mj-draw .reveal{stroke-dashoffset:1;transition:stroke-dashoffset 1.1s cubic-bezier(.4,0,.2,1) .15s}
.js .mj-draw.in .reveal{stroke-dashoffset:0}
/* header */
.mj-head{position:sticky;top:12px;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:16px;max-width:1176px;margin:12px auto 0;padding:8px 8px 8px 22px;background:var(--paper);border:var(--pen) solid var(--ink);border-radius:var(--radius-pill)}
.mj-name{font-family:var(--font-display);font-weight:800;font-size:21px;line-height:28px;letter-spacing:-.01em;text-decoration:none}
.mj-nav{display:flex;align-items:center;gap:4px}
.mj-nav a{font-size:15px;line-height:22px;font-weight:600;text-decoration:none;padding:8px 14px;border-radius:var(--radius-pill)}
.mj-nav a:hover,.mj-nav a[aria-current]{background:var(--lime);color:var(--on-lime)}
/* button */
.mj-btn{display:inline-block;font-family:var(--font-text);font-size:16px;line-height:24px;font-weight:600;padding:12px 24px;border:var(--pen) solid var(--ink);border-radius:var(--radius-pill);background:var(--paper);color:var(--ink);text-decoration:none;box-shadow:3px 3px 0 var(--ink);transition:transform .12s,box-shadow .12s}
.mj-btn:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.mj-btn:active{transform:translate(3px,3px);box-shadow:0 0 0 var(--ink)}
.mj a.mj-btn{color:var(--ink)}
.mj a.mj-btn--go{background:var(--violet);color:var(--on-violet)}
.mj-btns{display:flex;flex-wrap:wrap;gap:14px}
/* pill label */
.mj-pill{display:inline-block;font-size:14px;line-height:20px;font-weight:600;padding:5px 14px;border:var(--pen) solid currentColor;border-radius:var(--radius-pill)}
/* hero */
.mj-hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--space-4);align-items:end;padding-top:36px}
.mj-hero>div:first-child{align-self:center;padding-bottom:36px}
.mj-hero h1{font-family:var(--font-display);font-variation-settings:"opsz" 96;font-size:clamp(44px,6.6vw,84px);line-height:.98;font-weight:800;letter-spacing:-.03em;margin:0 0 18px}
.mj-hl{background:linear-gradient(var(--lime),var(--lime)) no-repeat 0 62%/100% 74%;color:var(--on-lime);padding:0 .1em;margin:0 -.05em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.js .mj-hero .mj-hl{animation:mj-sweep .7s cubic-bezier(.4,0,.2,1) .35s backwards}
.mj-lede{font-size:21px;line-height:32px;color:var(--ink-2);max-width:31em}
.mj-hero .mj-btns{margin-top:22px}
/* portrait sticker */
.mj-stick{position:relative;aspect-ratio:10/11;width:100%;max-width:520px;justify-self:center;margin-bottom:-26px}
.mj-blob{position:absolute;inset:8% 0 -4% 0;color:var(--ink);animation:mj-rock 14s ease-in-out infinite alternate;transform-origin:50% 60%}
.mj-blob .art{width:100%;height:100%}.mj-blob .lm{fill:var(--lime)}
.mj-cut{position:absolute;left:50%;bottom:0;height:100%;width:auto;max-width:none!important;transform:translateX(-50%) rotate(-1.5deg);transform-origin:50% 100%;filter:drop-shadow(3px 0 0 #fff) drop-shadow(-3px 0 0 #fff) drop-shadow(0 3px 0 #fff) drop-shadow(0 -3px 0 #fff)}
.mj-credit{position:absolute;left:91.5%;bottom:calc(9% + 2.5px);transform:translateY(50%);z-index:2;white-space:nowrap;font-size:11px;line-height:13px;color:var(--ink-2)}
.mj-note{font-family:var(--font-hand);font-weight:400;font-size:25px;line-height:29px;font-synthesis:none}
.mj-hi{position:absolute;inset:0;z-index:2;pointer-events:none}
.mj-hi .mj-note{position:absolute;left:-12%;top:-6%;white-space:nowrap;transform:rotate(-4deg)}
.mj-hi .art{position:absolute;left:-3%;top:1%;width:30%;height:auto;aspect-ratio:120/84;color:var(--ink)}
.mj-badge{position:absolute;right:-5%;bottom:18%;z-index:2;width:136px;height:136px;display:block;border-radius:50%;background:var(--violet);border:var(--pen) solid var(--ink);text-decoration:none;transition:transform .15s}
.mj a.mj-badge{color:var(--on-violet)}
.mj-badge:hover{transform:scale(1.06)}
.mj-badge svg{position:absolute;inset:0;width:100%;height:100%;animation:mj-spin 26s linear infinite}
.mj-badge text{font-family:var(--font-text);font-size:13.5px;font-weight:600;letter-spacing:.06em;fill:currentColor}
.mj-badge b{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-display);font-weight:800;font-size:30px}
/* moving band */
.mj-band{position:relative;z-index:1;background:var(--band);color:var(--on-band);overflow:hidden;padding:22px 0}
.mj-edge{display:block;width:100%;height:26px;color:var(--band);margin:-1px 0}
.mj-edge path{fill:currentColor}
.mj-track{display:flex;width:max-content;font-family:var(--font-display);font-weight:800;font-size:clamp(30px,4.6vw,52px);line-height:1.15;letter-spacing:-.02em;animation:mj-run 84s linear infinite}
.mj-band:hover .mj-track{animation-play-state:paused}
.mj-track span{white-space:nowrap;padding-right:.5em}
.mj-track i{flex:none;align-self:center;width:.18em;height:.18em;border-radius:50%;background:var(--lime);margin-right:.5em;transform:translateX(.023em)}
.mj-bandwrap{position:relative;z-index:3}
/* headings */
.mj-h2{font-family:var(--font-display);font-variation-settings:"opsz" 96;font-size:clamp(38px,5vw,56px);line-height:1.04;font-weight:800;letter-spacing:-.02em;margin:0 0 36px}
.mj-u{position:relative;display:inline-block}
.mj-u .mark{left:-2%;bottom:-.3em;width:104%;height:.34em;color:var(--violet)}
.mj-u .art{width:100%;height:100%}
/* bento */
.mj-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-2)}
.mj-tile{position:relative;display:flex;flex-direction:column;gap:12px;padding:var(--space-3);border:var(--pen) solid var(--ink);border-radius:var(--radius-lg);background:var(--white);transition:transform .15s,box-shadow .15s}
.mj-tile:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--ink)}
.mj-tile h3{font-family:var(--font-display);font-size:23px;line-height:28px;font-weight:800;letter-spacing:-.01em;margin:0}
.mj-tile h3 a{text-decoration:none}
.mj-tile h3 a::after{content:"";position:absolute;inset:0;border-radius:var(--radius-lg)}
.mj-tile h3 a:focus-visible::after{outline:3px solid var(--focus);outline-offset:3px}
.mj-tile h3 a:focus-visible{outline:none}
.mj-tile .mj-go{margin-top:auto;padding-top:8px;font-size:15px;line-height:22px;font-weight:600}
.mj-t-lead{grid-column:span 7;grid-row:span 2;min-height:520px;background:var(--violet);color:var(--on-violet);padding-right:47%}
.mj-t-lead h3{font-size:clamp(34px,4.4vw,52px);line-height:1;letter-spacing:-.02em}
.mj-t-lead .mj-sub{font-size:19px;line-height:26px;font-weight:500}
.mj-t-cover{position:absolute;right:8px;bottom:26px;width:42%;border:var(--pen) solid var(--ink);border-radius:6px;transform:rotate(4deg);box-shadow:6px 6px 0 var(--ink);transition:transform .2s}
.mj-t-lead:hover .mj-t-cover{transform:rotate(1.5deg)}
.mj-t-credit{font-size:13px;line-height:18px;opacity:.85}
.mj-t-globe{grid-column:span 5;background:var(--band);color:var(--on-band)}
.mj-t-globe h3,.mj-t-quote h3{font-size:clamp(28px,3vw,34px);line-height:37px;letter-spacing:-.015em}
.mj-t-globe p:not(.mj-pill){color:var(--on-band-2)}
.mj-t-quote{grid-column:span 5;background:var(--lime);color:var(--on-lime)}
.mj-t-full{grid-column:span 12}
.mj-t-lilac{background:var(--lilac)}
.mj-tile .mj-pill{align-self:flex-start}
/* press */
.mj-rows{list-style:none;margin:0;padding:0}
.mj-rows li{display:grid;grid-template-columns:190px minmax(0,1fr);gap:0 var(--space-4);padding:14px 0;border-top:1px solid var(--rule)}
.mj-rows li:last-child{border-bottom:1px solid var(--rule)}
.mj-rows a{background:linear-gradient(var(--lime),var(--lime)) no-repeat 0 90%/0% 38%;transition:background-size .25s;text-decoration:none;border-bottom:1.5px solid var(--ink)}
.mj-rows a:hover{background-size:100% 38%}
.mj-small{font-size:14px;line-height:20px;font-weight:600;color:var(--ink-2)}
.mj-cv li>div{max-width:46em}
.mj-cv h3{font-family:var(--font-display);font-size:21px;line-height:26px;font-weight:800;letter-spacing:-.01em;margin:0 0 2px}
.mj-role{font-weight:600}
.mj-cv ul{list-style:none;margin:8px 0 0;padding:0}
.mj-rows.mj-cv ul li{display:block;position:relative;padding:0 0 0 18px;margin-top:6px;border:0}
.mj-rows.mj-cv ul li::before{content:"";position:absolute;left:2px;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--violet)}
.mj-print.mj-cvcard{width:100%;padding:34px 26px 24px;text-align:center}
.mj-cvcard p{margin:0;line-height:28px}
.mj-cvcard .mj-cvname{font-family:var(--font-display);font-size:25px;line-height:30px;font-weight:800;letter-spacing:-.01em;margin-bottom:8px}
/* issues */
.mj-issues{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 56px}
.mj-issues>div{display:grid;grid-row:span 3;grid-template-rows:subgrid;justify-items:start}
.mj-n{position:relative;display:grid;place-items:center;width:58px;height:58px;font-family:var(--font-hand);font-weight:400;font-size:29px;margin-bottom:10px;font-synthesis:none}
.mj-n .art{position:absolute;inset:0;width:100%;height:100%;color:var(--violet)}
.mj-issues h3{font-family:var(--font-display);font-size:23px;line-height:28px;font-weight:800;letter-spacing:-.01em;margin:0 0 8px}
/* photo prints */
.mj-print{position:relative;margin:0;padding:10px 10px 0;background:var(--white);border:var(--pen) solid var(--ink);border-radius:var(--radius-sm);box-shadow:5px 5px 0 var(--ink);transition:transform .2s}
.mj-print:hover{transform:rotate(0deg)!important}
.mj-print img{width:100%;height:auto;border-radius:3px}
.mj-print figcaption{font-family:var(--font-hand);font-weight:400;font-size:21px;line-height:26px;padding:8px 4px 10px;font-synthesis:none}
.mj-print figcaption small{display:block;font-family:var(--font-text);font-size:13px;line-height:18px;color:var(--ink-2)}
.mj-print::before{content:"";position:absolute;left:50%;top:-14px;width:96px;height:26px;margin-left:-48px;background:var(--lime);opacity:.88;transform:rotate(-2.5deg);border:1.5px solid var(--ink)}
.mj-story{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-4);align-items:center}
.mj-story>div{grid-column:span 5}.mj-story>figure{grid-column:span 7}
.mj-story p+p{margin-top:14px}
.mj-pair{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;margin-top:48px}
.mj-pair .a{grid-column:1/span 8;grid-row:1;transform:rotate(-1deg);z-index:1}
.mj-pair .b{grid-column:8/span 5;grid-row:1;margin-top:96px;transform:rotate(2deg);z-index:2}
.mj-pair .a figcaption{padding-bottom:40px}
.mj-pair .b figcaption{text-align:right}
.mj-pair .c{grid-column:2/span 7;grid-row:2;margin:-56px 20px 0 0;transform:rotate(-1.5deg);z-index:3}
.mj-pair .c::before{left:78%}
@media(max-width:1000px){.mj-pair .a figcaption{padding-bottom:10px}.mj-pair .b figcaption{text-align:left}.mj-pair .c{margin:28px 0 0}.mj-pair .c::before{left:50%}}
.mj-ahero{align-items:center}
.mj-ahero>div:first-child{padding-bottom:0}
.mj-ahero .mj-print{max-width:420px;justify-self:center;transform:rotate(2deg)}
/* footer */
.mj-foot{margin-top:112px;color:var(--on-band)}
.mj-foot-in{background:var(--band);padding:44px 0 0;overflow:hidden}
.mj-foot-cols{display:grid;grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:var(--space-4)}
.mj-foot h2{font-family:var(--font-hand);font-size:25px;line-height:30px;font-weight:400;font-synthesis:none;color:var(--lime);margin:0 0 6px}
.mj-foot ul{list-style:none;margin:0;padding:0}
.mj-foot li{line-height:30px}
.mj-foot a{text-decoration:none}.mj-foot li a:hover{text-decoration:underline}
.mj-foot p{color:var(--on-band-2);max-width:24em}
.mj-social{display:grid;grid-template-columns:repeat(3,44px);gap:10px;margin-top:8px!important}
.mj-social li{line-height:0}
.mj-social a{display:grid;place-items:center;width:44px;height:44px;border:2px solid var(--on-band);border-radius:50%;transition:transform .2s,background .2s,color .2s}
.mj-social a:hover{background:var(--lime);border-color:var(--lime);color:var(--ink);transform:rotate(-6deg)}
.mj-social svg{width:20px;height:20px;fill:currentColor}
.mj-foot p.mj-big{max-width:none;font-family:var(--font-display);font-variation-settings:"opsz" 96;font-weight:800;font-size:13.6vw;line-height:.86;letter-spacing:-.035em;white-space:nowrap;text-align:center;color:var(--band);-webkit-text-stroke:2px var(--lime);paint-order:stroke fill;margin:44px 0 -.1em}
.mj-hello{position:relative;background:var(--paper);color:var(--ink);border:var(--pen) solid var(--ink);border-radius:var(--radius-lg);box-shadow:8px 8px 0 var(--lime);padding:var(--space-4);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--space-4);margin:0 8px 56px 0;scroll-margin-top:110px}
.mj-foot .mj-hello h2{font-family:var(--font-display);font-variation-settings:"opsz" 96;font-weight:800;font-size:48px;line-height:52px;letter-spacing:-.025em;color:var(--ink);margin:0 0 10px}
.mj-foot .mj-hello p{color:var(--ink-2);max-width:none}
.mj-hello form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.mj-hello label{display:grid;gap:4px;font-size:15px;line-height:22px;font-weight:600}
.mj-hello .mj-wide{grid-column:1/-1}
.mj-hello input,.mj-hello textarea{width:100%;font-family:var(--font-text);font-size:16px;line-height:24px;color:var(--ink);background:var(--white);border:var(--pen) solid var(--ink);border-radius:var(--radius-sm);padding:10px 12px}
.mj-hello textarea{min-height:120px;resize:vertical}
.mj-hello input:focus-visible,.mj-hello textarea:focus-visible,.mj-hello button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.mj-hello .mj-trap{position:absolute;left:-9999px}
.mj-hello .mj-send{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.mj-hello button.mj-btn{cursor:pointer}
.mj button.mj-btn--go{background:var(--violet);color:var(--on-violet)}
.mj-foot .mj-hello p.mj-status{color:var(--ink)}
@media(max-width:800px){.mj-hello,.mj-hello form{grid-template-columns:minmax(0,1fr)}}
/* motion */
@keyframes mj-ink{from{stroke-dashoffset:1.05}to{stroke-dashoffset:0}}
@keyframes mj-nudge{from{transform:rotate(-2deg) translate(-3px,1px)}to{transform:rotate(2deg) translate(4px,-1px)}}
@keyframes mj-tilt{from{transform:rotate(-5deg)}to{transform:rotate(-2.5deg)}}
@keyframes mj-sweep{from{background-size:0% 74%}}
@keyframes mj-rock{from{transform:rotate(-2.5deg)}to{transform:rotate(2.5deg)}}
@keyframes mj-spin{to{transform:rotate(360deg)}}
@keyframes mj-run{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){
 .mj *{animation:none!important;transition:none!important}
 .art .reveal,.art .pn{stroke-dashoffset:0!important}
 .mj-track{flex-wrap:wrap;width:auto;padding:0 var(--space-4)}.mj-track [aria-hidden]{display:none}
}
@media (max-width:980px){
 .mj-hero{grid-template-columns:minmax(0,1fr)}
 .mj-hero>div:first-child{padding-bottom:0}
 .mj-stick{max-width:440px;margin-top:12px}
 .mj-hi .mj-note{left:0;top:-5%}
 .mj-hi .art{left:3%;top:2%;width:27%}
 .mj-t-lead,.mj-t-globe,.mj-t-quote{grid-column:span 12}
 .mj-t-lead{min-height:0;padding-right:var(--space-3)}
 .mj-t-cover{position:relative;right:auto;bottom:auto;width:62%;margin:14px 0 6px auto}
 .mj-issues{gap:0 var(--space-4)}
 .mj-story>div,.mj-story>figure{grid-column:span 12}
}
@media (max-width:640px){
 .mj-w{padding-left:var(--space-2);padding-right:var(--space-2)}
 .mj-sec{padding-top:72px}
 .mj-head{top:8px;margin:8px 8px 0;padding-left:14px;gap:6px}
 .mj-name{white-space:nowrap;font-size:17px}
 .mj-nav{gap:0}
 .mj-nav a{padding:7px 8px;font-size:14px}
 .mj-name{font-size:18px}
 .mj-hero{padding-top:32px}
 .mj-lede{font-size:19px;line-height:29px}
 .mj-issues,.mj-rows li,.mj-foot-cols{grid-template-columns:minmax(0,1fr)}
 .mj-issues{gap:28px}.mj-issues>div{display:block}
 .mj-credit{left:auto;right:-8px;bottom:calc(10.5% + 4.75px)}
 .mj-badge{width:112px;height:112px;right:0;bottom:21%}.mj-badge svg text{font-size:13.5px}
 .mj-pair{display:block}.mj-pair .b,.mj-pair .c{margin-top:32px}
}
