@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--paper:#f0ecdf;--ink:#191918;--acid:#e7ee51;--red:#b33127}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#d4d0c4;color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--red);outline-offset:6px}::selection{background:var(--acid);color:var(--ink)}main{max-width:1600px;margin:auto;background:var(--paper)}.cover{padding:20px 36px 0;overflow:hidden;position:relative}.edition,.under-masthead,.cover-footer,.section-label,.art-top,.art-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:10px;letter-spacing:1.3px;font-weight:700}.edition{padding-bottom:12px;border-bottom:1px solid}.edition a:hover{text-decoration:underline}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(100px,20.6vw,310px);line-height:.85;letter-spacing:-.075em;margin:8px 0 10px;text-align:center;border-bottom:3px solid;padding-bottom:8px}.under-masthead{font-size:9px}.cover-body{min-height:590px;display:grid;grid-template-columns:34% 43% 23%;position:relative;padding-top:40px}.headline{z-index:3;padding-top:24px}.tiny,.story-number,.portrait-note,.case-name,.case-caption{font-size:9px;font-weight:700;letter-spacing:1.2px}.headline h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(72px,8.2vw,130px);font-weight:800;letter-spacing:-2px;line-height:.88;margin:18px 0 22px}.headline h2 em{font-family:Georgia,serif;font-weight:400;color:var(--red);font-size:1.16em;letter-spacing:-8px}.headline p{font-size:16px;line-height:1.55}.text-link{font-size:11px;font-weight:700;display:inline-flex;gap:35px;border-bottom:1px solid;padding:14px 0 8px}.text-link span{transition:transform .25s}.text-link:hover span{transform:translate(3px,-3px)}.portrait{position:relative;align-self:stretch;min-height:560px;margin-top:-100px}.halo{position:absolute;background:var(--acid);width:90%;height:75%;top:18%;left:1%;transform:rotate(-8deg);border-radius:48% 46% 43% 42%;background-image:radial-gradient(var(--ink) .6px,transparent .8px);background-size:6px 6px}.hero-photo{position:absolute;width:130%;height:112%;object-fit:contain;left:-16%;bottom:-25px;z-index:2;transform:rotate(-4deg)}.hero-photo.original{object-fit:cover;object-position:50% 25%;width:94%;height:95%;left:0;bottom:0;mix-blend-mode:multiply;border:7px solid var(--paper);transform:rotate(-5deg)}.portrait-note{position:absolute;right:-4%;bottom:12%;z-index:3;line-height:1.6;transform:rotate(-90deg);font-size:8px}.cover-stories{z-index:3;padding:25px 0 0 32px}.story-number{border-bottom:1px solid;padding-bottom:12px}.cover-stories>a,.cover-stories>div:not(.story-number){display:block;margin:26px 0 0;font-family:'Barlow Condensed',Impact,sans-serif;font-size:32px;line-height:.95;font-weight:700}.cover-stories a:hover{color:var(--red)}.cover-stories span{display:block;font:700 8px 'DM Sans',sans-serif;letter-spacing:1px;margin-bottom:9px}.footnote{font-family:Georgia,serif;font-size:12px;font-style:italic;line-height:1.5;margin-top:30px}.cover-footer{border-top:1px solid;padding:14px 0;font-size:8px;position:relative;z-index:4;background:var(--paper)}.barcode{width:70px;height:22px;background:repeating-linear-gradient(90deg,var(--ink) 0 1px,transparent 1px 3px,var(--ink) 3px 5px,transparent 5px 7px)}.work{border-top:9px solid var(--ink);padding:35px 36px 70px}.section-label{border-bottom:1px solid;padding-bottom:15px;font-size:9px}.case-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;margin-top:40px;align-items:center}.case-copy h2{font:800 clamp(65px,7vw,112px)/.9 'Barlow Condensed',Impact,sans-serif;letter-spacing:-2px;margin:0 0 24px}.case-name{margin-bottom:18px}.case-copy>p:not(.case-caption){max-width:340px;font-size:15px;line-height:1.7}.case-link{display:flex;justify-content:space-between;max-width:340px;border-bottom:1px solid;padding:20px 0 12px;font-size:11px;font-weight:700}.case-link:hover{color:var(--red)}.case-caption{font-family:Georgia,serif;font-weight:400;letter-spacing:0;font-size:12px;font-style:italic;margin-top:18px}.case-art{background:var(--acid);padding:24px;min-height:410px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:transform .4s cubic-bezier(.2,.8,.2,1);transform:rotate(2deg);border:1px solid}.case-art:hover{transform:rotate(0)}.clean-word{font:900 clamp(70px,8vw,130px)/.85 'Barlow Condensed',Impact,sans-serif;letter-spacing:-3px;z-index:1;margin:30px 0}.clean-word em{font-style:normal;-webkit-text-stroke:1px var(--ink);color:transparent}.art-top,.art-bottom{font-size:8px}.art-arrow{font-size:48px;font-weight:400}.preview-footer{background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:space-between;padding:24px 36px;gap:15px}.preview-footer>span{font:32px Georgia,serif;letter-spacing:-2px}.preview-footer p{font:italic 13px Georgia,serif}.preview-footer a{font-size:9px;letter-spacing:1px}.cover.ready .hero-photo{animation:photo-in 900ms cubic-bezier(.16,1,.3,1) both}.cover.ready h1{animation:type-in 650ms cubic-bezier(.16,1,.3,1) both}.cover.ready .headline{animation:type-in 700ms 100ms cubic-bezier(.16,1,.3,1) both}.cover.ready .cover-stories{animation:type-in 600ms 240ms cubic-bezier(.16,1,.3,1) both}@keyframes type-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes photo-in{from{opacity:0;translate:0 55px;rotate:4deg}to{opacity:1;translate:0 0;rotate:0deg}}
@media(min-width:1500px){h1{font-size:310px}}@media(max-width:950px){.cover{padding:15px 22px 0}.edition{font-size:8px;letter-spacing:.5px}.edition>span:last-child{display:none}.cover-body{grid-template-columns:42% 58%;min-height:600px}.cover-stories{grid-column:1 / -1;display:flex;padding:10px 0 22px;align-items:start;gap:25px;justify-content:space-between}.cover-stories>a,.cover-stories>div:not(.story-number){font-size:23px;margin:0}.cover-stories .story-number,.footnote{display:none}.portrait{min-height:460px;margin-top:-50px}.headline h2{font-size:80px}.work{padding:30px 22px 50px}.case-layout{gap:30px}.case-art{min-height:350px}.clean-word{font-size:84px}}
@media(max-width:600px){.cover{padding:12px 16px 0}h1{font-size:21vw;margin:10px 0;padding-bottom:8px;letter-spacing:-.07em}.under-masthead{font-size:7px;letter-spacing:.6px}.edition{font-size:7px}.cover-body{grid-template-columns:48% 52%;padding-top:22px;min-height:0}.headline{padding-top:12px}.tiny{font-size:6px;letter-spacing:.7px;display:block;max-width:130px;line-height:1.5}.headline h2{font-size:clamp(48px,12vw,72px);letter-spacing:-1px;margin:14px 0 18px}.headline h2 em{letter-spacing:-4px}.headline p{font-size:12px;line-height:1.5;max-width:170px}.text-link{font-size:8px;gap:22px;margin-bottom:20px}.portrait{margin-top:-16px;min-height:345px}.hero-photo{width:160%;left:-28%;height:110%;bottom:-5px}.hero-photo.original{width:113%;left:-8%;height:90%;bottom:8%}.halo{width:113%;left:-8%;height:73%;top:17%}.portrait-note{font-size:6px;right:-35px;bottom:12%}.cover-stories{padding:18px 0 22px;gap:8px;border-top:1px solid}.cover-stories>a,.cover-stories>div:not(.story-number){font-size:19px}.cover-stories span{font-size:6px;letter-spacing:.3px;line-height:1.5}.cover-footer{font-size:6px;letter-spacing:.6px;padding:12px 0}.cover-footer>span:first-child{max-width:160px;line-height:1.6}.barcode{width:42px;height:18px}.cover-footer>a{display:none}.work{padding:25px 16px 40px;border-top-width:6px}.section-label{font-size:7px;letter-spacing:.7px}.case-layout{grid-template-columns:1fr;gap:25px;margin-top:28px}.case-copy h2{font-size:76px}.case-copy>p:not(.case-caption){font-size:14px}.case-art{min-height:340px;transform:rotate(1deg);margin:0 5px}.clean-word{font-size:110px}.preview-footer{padding:20px 16px;flex-wrap:wrap}.preview-footer p{font-size:11px}.preview-footer a{font-size:7px}.preview-footer>span{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.case-art{min-height:440px}.clean-word{font-size:clamp(40px,5.5vw,84px);margin:20px 0;letter-spacing:-2px}.site-preview{display:block;width:100%;height:auto;border:1px solid var(--ink);margin-bottom:18px}.art-arrow{font-size:35px}@media(max-width:600px){.case-art{min-height:0}.clean-word{font-size:50px}.under-masthead>span:last-child{visibility:hidden}}
/* Photographic pose sequence. The feet stay anchored; only the poses change. */
.portrait.has-gesture .hero-photo{display:none}.gesture-figure{position:absolute;width:155%;left:-27%;bottom:-20px;background-image:url('assets/andrew-gesture-sheet.png');background-size:300% 200%;background-repeat:no-repeat;z-index:2;pointer-events:none}.gesture-replay{position:absolute;bottom:9px;left:12px;z-index:5;background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:8px 12px;font:700 9px 'DM Sans',sans-serif;letter-spacing:1px;cursor:pointer;transition:background .2s}.gesture-replay:hover{background:var(--acid)}.gesture-replay:focus-visible{outline:3px solid var(--red);outline-offset:4px}.gesture-replay[hidden]{display:none}.headline p{transition:color .2s}.headline p.answer-cue{color:var(--red)}.answer-cue{animation:answer-emphasis 850ms cubic-bezier(.16,1,.3,1) both}@keyframes answer-emphasis{0%{transform:translateX(0)}25%{transform:translateX(-5px)}100%{transform:translateX(0)}}@media(max-width:950px){.gesture-figure{width:175%;left:-36%;bottom:-16px}}@media(max-width:600px){.gesture-figure{width:220%;left:-59%;bottom:0}.gesture-replay{font-size:7px;left:22px;bottom:3px;padding:6px 8px}.portrait.has-gesture .portrait-note{right:-26px}}
.gesture-figure{background-image:none}.gesture-body,.gesture-head{position:absolute;inset:0;background-image:url('assets/andrew-gesture-sheet.png');background-size:300% 200%;background-position:inherit;background-repeat:no-repeat}.gesture-body{clip-path:inset(18.8% 0 0 0)}.gesture-head{clip-path:inset(0 0 80% 0)}.gesture-head.nodding{animation:head-nod 650ms cubic-bezier(.3,0,.2,1) both}@keyframes head-nod{0%{transform:rotate(0) translateY(0)}38%{transform:rotate(-4deg) translateY(3px)}76%{transform:rotate(1deg) translateY(-1px)}100%{transform:rotate(0) translateY(0)}}
/* Interactive figure and the quiet after-scene loop. */
.headline{position:relative;z-index:4;pointer-events:none}.headline a{pointer-events:auto}.gesture-figure{width:140%;left:-37%;bottom:-8px;pointer-events:auto;cursor:pointer;outline:none;touch-action:manipulation}.gesture-figure:focus-visible::after{content:'';position:absolute;inset:3% 25%;border:2px dashed var(--red);border-radius:40%}.gesture-controls{position:absolute;bottom:7px;left:0;display:flex;gap:5px;z-index:5}.gesture-controls[hidden]{display:none}.gesture-controls .gesture-replay,.gesture-pause{position:static;background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:8px 10px;font:700 8px 'DM Sans',sans-serif;letter-spacing:.7px;cursor:pointer}.gesture-pause:hover,.gesture-controls .gesture-replay:hover{background:var(--acid)}.gesture-pause:focus-visible{outline:3px solid var(--red);outline-offset:3px}.idle-head{display:none;position:absolute;width:24%;height:24%;top:-1%;left:27%;background-image:url('assets/andrew-idle-heads.png');background-size:300% 100%;background-repeat:no-repeat;transform-origin:50% 90%}.idling .gesture-head{visibility:hidden}.idling .idle-head{display:block}.wink-star{display:none;position:absolute;top:12%;left:48%;font-size:clamp(18px,2.7vw,38px);color:var(--red);line-height:1;text-shadow:1px 1px var(--paper),-1px -1px var(--paper);pointer-events:none}.winking .wink-star{display:block;animation:wink-spark 500ms cubic-bezier(.16,1,.3,1) both}@keyframes wink-spark{0%{opacity:0;transform:translate(-6px,4px) scale(.2) rotate(-25deg)}35%{opacity:1;transform:translate(0,0) scale(1) rotate(8deg)}100%{opacity:0;transform:translate(6px,-8px) scale(.4) rotate(25deg)}}@media(max-width:950px){.gesture-figure{width:160%;left:-46%;bottom:-5px}}@media(max-width:600px){.gesture-figure{width:205%;left:-73%;bottom:3px}.gesture-controls{left:-10px;bottom:1px}.gesture-controls .gesture-replay,.gesture-pause{font-size:6px;padding:6px}.wink-star{font-size:20px}}
/* Keep shoulder silhouettes intact when replacing the head. */
.idling .gesture-body{clip-path:none;mask-image:radial-gradient(ellipse 12% 11% at 39% 10%,transparent 98%,#000 100%)}.idle-head{width:22%;height:22%;left:28%;top:.3%}.wink-star{left:48%;top:11%}.winking .wink-star{animation:wink-spark 800ms cubic-bezier(.16,1,.3,1) both}
@media(min-width:951px){.gesture-figure{left:-47%}.halo{left:-9%}}
@media(min-width:951px){.gesture-figure{width:120%;left:-47%}.halo{left:-20%;width:85%}}
@media(max-width:600px){.gesture-figure{width:190%;left:-73%}}
.idle-head{top:1.3%}.idling .gesture-body{mask-image:radial-gradient(ellipse 12% 10.5% at 39% 9.5%,transparent 98%,#000 100%)}
@media(max-width:600px){.gesture-figure{left:-63%}}
/* Whole-body replacement: no head cut, neck mask, or separate head layer. */
.gesture-body,.idling .gesture-body{clip-path:none;mask-image:none}.gesture-head,.idle-head{display:none!important}.idling .gesture-body{visibility:hidden}.idle-body{display:none;position:absolute;inset:0;background-image:url('assets/andrew-idle-whole.png');background-size:300% 100%;background-repeat:no-repeat}.idling .idle-body{display:block}.wink-star{left:60%;top:14%}
@media(min-width:951px){.gesture-figure{width:98%;left:-35%}.halo{width:72%;height:64%;left:-15%;top:30%}}
@media(min-width:601px) and (max-width:950px){.gesture-figure{width:125%;left:-28%}}
@media(max-width:600px){.gesture-figure{width:150%;left:-43%}.halo{width:95%;height:60%;left:-3%;top:31%}}
