@font-face{font-family:"Fraunces";src:url(/assets/fonts/fraunces.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url(/assets/fonts/fraunces-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Nunito";src:url(/assets/fonts/nunito.woff2) format("woff2");font-weight:200 1000;font-style:normal;font-display:swap}
@font-face{font-family:"Courier Prime";src:url(/assets/fonts/courier-prime.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}

:root{
  --paper:#f4ead8; --card:#fbf6ec; --blue:#a9c1dc; --blue-2:#dbe6f2;
  --ink:#12294a; --tan:#b98a55; --rust:#c4652a; --muted:#5a6a82;
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"Courier Prime","Courier New",ui-monospace,monospace;
  --shadow:4px 4px 0 var(--ink); --rad:6px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 clamp(16px,1.05vw,18px)/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:60;opacity:.35;mix-blend-mode:multiply;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .55 0 0 0 0 .45 0 0 0 0 .3 0 0 0 .09 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
img,svg{display:block;max-width:100%}
a{color:inherit}
.defs{position:absolute}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--paper);padding:.5em 1em;z-index:100}
.skip:focus{left:8px}
.wrap{width:min(1100px,100% - 32px);margin-inline:auto}
.ital{font-style:italic;font-weight:500;color:var(--rust)}
h1,h2,h3{font-family:var(--serif);margin:0;font-variation-settings:"SOFT" 100,"WONK" 1}
h2{font-weight:800;font-size:clamp(2.1rem,5.4vw,4rem);line-height:1;letter-spacing:-.015em;margin-bottom:.5em;font-optical-sizing:auto}
h3{font-weight:700;font-size:1.3rem;line-height:1.15}
section{padding-block:clamp(64px,9vw,120px);position:relative}
.chapter,.eyebrow,.micro,.hint{font-family:var(--mono);font-size:.82rem;letter-spacing:.06em;color:var(--muted);margin:0 0 .9em}
.chapter{color:var(--tan);text-transform:uppercase;letter-spacing:.14em;display:flex;align-items:center;gap:.8em}
.chapter::before,.chapter::after{content:"";height:1px;width:36px;background:currentColor}
.center{text-align:center;justify-content:center}
.chapter.center,section .chapter{justify-content:flex-start}

/* strip + nav */
.strip{background:var(--ink);color:var(--paper);font:400 .78rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;display:flex;gap:.8em;justify-content:center;padding:.6em 1em;flex-wrap:wrap}
.strip b{color:var(--blue);font-weight:400}
.nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:1rem;justify-content:space-between;padding:.55rem clamp(16px,3vw,40px);background:rgba(244,234,216,.92);backdrop-filter:blur(6px);border-bottom:2px solid var(--ink)}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;font:800 1.2rem/1 var(--serif)}
.brand img{border-radius:50%;border:2px solid var(--ink)}
.nav nav{display:none;gap:1.4rem;font-weight:700;font-size:.95rem}
.nav nav a{text-decoration:none;border-bottom:2px solid transparent}
.nav nav a:hover{border-color:var(--rust)}
@media(min-width:880px){.nav nav{display:flex}}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.5em;padding:.8em 1.25em;font:800 1rem/1 var(--sans);background:var(--ink);color:var(--paper);border:2px solid var(--ink);border-radius:var(--rad);box-shadow:4px 4px 0 var(--tan);text-decoration:none;cursor:pointer;transition:transform .1s,box-shadow .1s}
.btn:hover{transform:translate(-1px,-1px);box-shadow:6px 6px 0 var(--tan)}
.btn:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--tan)}
.btn-ghost{background:var(--card);color:var(--ink);box-shadow:var(--shadow)}
.btn-ghost:hover{box-shadow:6px 6px 0 var(--ink)}
.btn-sm{padding:.6em .95em;font-size:.9rem;box-shadow:3px 3px 0 var(--tan)}
.btn em,.postcard em{font:400 .72em/1 var(--mono);font-style:normal;text-transform:uppercase;letter-spacing:.1em;background:var(--blue);color:var(--ink);padding:.3em .5em;border-radius:3px}
.is-soon{cursor:not-allowed;opacity:.78;filter:saturate(.7)}
.is-soon:hover,.is-soon:active{transform:none}
.btn.is-soon:hover{box-shadow:4px 4px 0 var(--tan)}
.btn-ghost.is-soon:hover{box-shadow:var(--shadow)}
.cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.2rem}
button{font:inherit}
:focus-visible{outline:3px solid var(--rust);outline-offset:3px}

/* hero */
.hero{padding-block:clamp(14px,2.4vw,28px) clamp(40px,6vw,72px)}
.card-frame{position:relative;margin:0;background:var(--card);padding:clamp(6px,1vw,12px);border:2px solid var(--ink);border-radius:4px;box-shadow:6px 6px 0 var(--blue)}
.banner{width:100%;height:auto;border-radius:2px;aspect-ratio:1600/533}
.corner{position:absolute;width:22px;height:22px;border:2px solid var(--tan)}
.corner.tl{top:-7px;left:-7px;border-right:0;border-bottom:0}.corner.tr{top:-7px;right:-7px;border-left:0;border-bottom:0}
.corner.bl{bottom:-7px;left:-7px;border-right:0;border-top:0}.corner.br{bottom:-7px;right:-7px;border-left:0;border-top:0}
.hero-row{display:grid;gap:1rem;align-items:start;margin-top:-28px;position:relative;z-index:2}
.hero-pol{width:clamp(120px,30vw,210px);margin:0 0 0 4px}
.hero-copy{padding-top:.4rem}
.hero h1{font-weight:900;font-size:clamp(2.5rem,7.2vw,5.4rem);line-height:.95;letter-spacing:-.02em;position:relative;display:inline}
.hero .eyebrow{margin-bottom:.6em}
.lede{font:500 italic clamp(1.1rem,1.7vw,1.35rem)/1.4 var(--serif);margin:.6em 0 1em}
@media(min-width:760px){.hero-row{grid-template-columns:auto 1fr;gap:2.2rem;margin-top:-56px}.hero-copy{padding-top:72px}}

.stache-btn{display:inline-block;vertical-align:middle;background:none;border:0;padding:0 .1em;cursor:pointer;color:var(--ink);width:.95em}
.stache-btn svg{width:100%;fill:currentColor;transition:transform .3s}
.stache-btn:hover svg{animation:wiggle .5s ease-in-out}
.twirl{animation:twirl .9s cubic-bezier(.3,1.5,.5,1)!important}
@keyframes wiggle{0%,100%{transform:rotate(0)}25%{transform:rotate(-10deg) scaleX(1.08)}75%{transform:rotate(10deg) scaleX(1.08)}}
@keyframes twirl{0%{transform:rotate(0)}60%{transform:rotate(380deg) scale(1.3)}100%{transform:rotate(360deg)}}

/* polaroid */
.polaroid{position:relative;background:#fffdf7;padding:10px 10px 0;border:1px solid rgba(18,41,74,.25);box-shadow:var(--shadow);transform:rotate(var(--r,0deg));margin:0}
.polaroid img{width:100%;height:auto;aspect-ratio:1}
.polaroid figcaption{font:500 italic .95rem/1.25 var(--serif);padding:.6em .2em .8em;text-align:center}
.tape{position:absolute;top:-12px;left:50%;width:84px;height:24px;transform:translateX(-50%) rotate(3deg);background:rgba(169,193,220,.75);border-left:2px dashed rgba(255,255,255,.6);border-right:2px dashed rgba(255,255,255,.6)}

/* CA pill */
.ca{display:flex;align-items:center;gap:.6rem;max-width:520px;padding:.35rem .35rem .35rem .4rem;background:var(--card);border:2px solid var(--ink);border-radius:999px;box-shadow:var(--shadow)}
.ca-tag{background:var(--ink);color:var(--paper);font:700 .78rem/1 var(--mono);padding:.55em .8em;border-radius:999px;letter-spacing:.08em}
.ca code{flex:1;min-width:0;font:400 .92rem/1.2 var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ca-copy{background:var(--blue);color:var(--ink);border:2px solid var(--ink);border-radius:999px;font:800 .85rem/1 var(--sans);padding:.6em 1em;cursor:pointer}
.ca-copy:hover{background:var(--blue-2)}
.micro{margin-top:.8em;font-size:.76rem}

/* ticker */
.ticker{background:var(--blue);border-block:2px solid var(--ink);overflow:hidden;transform:rotate(-1deg);margin-inline:-10px;position:relative;z-index:3}
.ticker::before,.ticker::after{content:"";position:absolute;left:0;right:0;border-top:1.5px dashed rgba(18,41,74,.45)}
.ticker::before{top:5px}.ticker::after{bottom:5px}
.track{display:flex;width:max-content;animation:crawl 48s linear infinite}
.track span{display:flex;align-items:center;gap:1.4rem;padding:.85em 0 .85em 1.4rem;font:500 italic clamp(1.05rem,2vw,1.4rem)/1 var(--serif);white-space:nowrap}
.track span::after{content:"";width:34px;height:12px;background:var(--ink);-webkit-mask:var(--stache-mask) center/contain no-repeat;mask:var(--stache-mask) center/contain no-repeat}
:root{--stache-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 40'><path d='M60 13C53 4 40 3 31 11c-6 6-14 10-22 6-4-2-6-6-4-10-5 7-3 19 9 21 15 3 31-1 46-8 15 7 31 11 46 8 12-2 14-14 9-21 2 4 0 8-4 10-8 4-16 0-22-6C80 3 67 4 60 13Z'/></svg>")}
@keyframes crawl{to{transform:translateX(-50%)}}

/* about */
.about-grid{display:grid;gap:clamp(32px,5vw,72px);align-items:center}
.album-page{background:#1f3a5f;padding:clamp(24px,4vw,48px);border-radius:4px;box-shadow:inset 0 0 0 10px #233f66,var(--shadow);background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.03) 0 2px,transparent 2px 8px)}
.album-page .polaroid{max-width:360px;margin-inline:auto}
.mount{position:absolute;width:26px;height:26px;background:#0d1f38}
.m1{top:-4px;left:-4px;clip-path:polygon(0 0,100% 0,0 100%)}.m2{top:-4px;right:-4px;clip-path:polygon(0 0,100% 0,100% 100%)}
.m3{bottom:-4px;left:-4px;clip-path:polygon(0 0,0 100%,100% 100%)}.m4{bottom:-4px;right:-4px;clip-path:polygon(100% 0,100% 100%,0 100%)}
.about-copy p:not(.chapter){font-size:clamp(1.02rem,1.25vw,1.15rem);max-width:58ch}
.about-copy .dc::first-letter{font:900 3.4em/.8 var(--serif);float:left;margin:.08em .1em 0 0;color:var(--rust)}
.sig{font:500 italic 1.15rem var(--serif)!important;display:flex;align-items:center;gap:.5em}
.sig svg{width:44px;fill:var(--ink)}
@media(min-width:860px){.about-grid{grid-template-columns:.9fr 1.1fr}}

/* facts */
.facts{background:var(--blue-2);border-block:2px solid var(--ink);background-image:linear-gradient(rgba(18,41,74,.06) 1px,transparent 1px);background-size:100% 32px}
.hint{margin-top:-.6em}
.cards{list-style:none;padding:0;margin:2rem 0 0;display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))}
.index-card{position:relative;background:#fffdf7;border:1.5px solid rgba(18,41,74,.4);border-radius:3px;padding:1.6rem 1.4rem 1.2rem;box-shadow:var(--shadow);transform:rotate(var(--r,0deg));cursor:help;
  background-image:linear-gradient(#e7a3a3,#e7a3a3),repeating-linear-gradient(transparent 0 27px,rgba(80,120,170,.25) 27px 28px);background-size:100% 2px,100% 100%;background-position:0 46px,0 50px;background-repeat:no-repeat,repeat-y;transition:transform .2s}
.index-card:hover,.index-card:focus-visible,.index-card.on{transform:rotate(0) translateY(-4px)}
.index-card .no{font:400 .75rem var(--mono);color:var(--rust);letter-spacing:.1em;position:absolute;top:.7rem;right:1rem}
.index-card h3{margin-bottom:.55em}
.index-card p{margin:0;line-height:28px}

/* receipt / grumble */
.grumble-grid{display:grid;gap:clamp(36px,6vw,80px);align-items:center}
.receipt{font:400 .95rem/1.5 var(--mono);background:#fffefa;max-width:380px;margin-inline:auto;width:100%;padding:28px 24px 34px;box-shadow:var(--shadow);transform:rotate(-2deg);position:relative;
  -webkit-mask:linear-gradient(#000,#000) top/100% calc(100% - 10px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/16px 10px repeat-x;
  mask:linear-gradient(#000,#000) top/100% calc(100% - 10px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/16px 10px repeat-x}
.r-head{text-align:center;font-weight:700;letter-spacing:.1em;border-bottom:1.5px dashed var(--ink);padding-bottom:.8em;margin:0 0 .8em}
.r-head small{font-weight:400;letter-spacing:.04em}
.r-line{display:flex;justify-content:space-between;gap:1em;margin:.25em 0}
.r-line span:last-child{text-align:right}
.total{border-top:1.5px dashed var(--ink);padding-top:.6em;margin-top:.8em;font-weight:700}
.r-foot{text-align:center;font-size:.8rem;margin:1.2em 0 0}
.bubble{position:relative;background:var(--card);border:2px solid var(--ink);border-radius:18px;padding:1em 1.2em;font:500 italic clamp(1.2rem,2.2vw,1.6rem)/1.3 var(--serif);box-shadow:var(--shadow);max-width:520px;margin-top:1.2rem}
.bubble::after{content:"";position:absolute;left:34px;bottom:-14px;width:22px;height:22px;background:var(--card);border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg) skew(10deg,10deg)}
.bubble.pop{animation:pop .35s ease}
@keyframes pop{0%{transform:scale(.94)}60%{transform:scale(1.03)}100%{transform:scale(1)}}
@media(min-width:860px){.grumble-grid{grid-template-columns:.8fr 1.2fr}}

/* buy */
.buy{background:var(--card);border-block:2px solid var(--ink)}
.steps{list-style:none;padding:0;margin:2rem 0;display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.steps li{position:relative;border:2px solid var(--ink);border-radius:var(--rad);padding:1.4rem 1.2rem 1.2rem;background:var(--paper);box-shadow:var(--shadow)}
.steps .num{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--blue);border:2px solid var(--ink);font:900 1.3rem var(--serif);margin-bottom:.8rem}
.steps p{margin:.5em 0 0;font-size:.98rem}
.steps code{font-family:var(--mono);background:var(--blue-2);padding:.1em .35em;border-radius:3px}
.cta.center{justify-content:center}

/* budget */
.ledger{position:relative;max-width:720px;margin:2rem auto 0;background:#fffdf7;border:2px solid var(--ink);box-shadow:6px 6px 0 var(--blue);padding:.6rem 0;
  background-image:linear-gradient(90deg,transparent 64px,#e7a3a3 64px,#e7a3a3 66px,transparent 66px)}
.ledger-row{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 1.4rem .85rem 84px;border-bottom:1px solid rgba(80,120,170,.3);font-size:1.05rem}
.ledger-row:last-of-type{border-bottom:0}
.ledger-row span:first-child{font-family:var(--mono);color:var(--muted);font-size:.9rem;text-transform:uppercase;letter-spacing:.08em}
.ledger-row span:last-child{font:700 1.1rem var(--serif);text-align:right;overflow-wrap:anywhere}
.tba{color:var(--rust)}
.stamp{position:absolute;right:6%;top:42%;font:900 clamp(2.4rem,6vw,4rem)/1 var(--serif);color:var(--rust);border:4px double var(--rust);padding:.1em .3em;border-radius:6px;transform:rotate(-14deg);opacity:.55;pointer-events:none;letter-spacing:.06em}

/* fridge */
.fridge{background:var(--paper)}
.door{position:relative;height:clamp(560px,62vw,640px);margin-top:2rem;border:2px solid var(--ink);border-radius:22px;background:linear-gradient(100deg,#e9eef4,#f7f9fb 40%,#dfe7f0);box-shadow:inset -14px 0 0 #cdd8e5,var(--shadow);overflow:hidden;touch-action:pan-y}
.door::after{content:"";position:absolute;right:28px;top:22%;width:12px;height:30%;border-radius:8px;background:#b7c4d4;border:2px solid var(--ink)}
.sticker{position:absolute;left:var(--x);top:var(--y);transform:rotate(var(--r));cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none;filter:drop-shadow(0 0 0 #fff) drop-shadow(3px 4px 0 rgba(18,41,74,.35));transition:filter .15s}
.sticker img{pointer-events:none;-webkit-user-drag:none}
.sticker.drag{cursor:grabbing;filter:drop-shadow(6px 10px 0 rgba(18,41,74,.3));z-index:20}
.s-logo{width:clamp(120px,18vw,190px)}
.s-logo img{border-radius:50%;border:6px solid #fff}
.s-eyes{width:clamp(130px,20vw,210px);height:clamp(64px,9vw,96px);overflow:hidden;border:6px solid #fff;border-radius:12px;background:#fff}
.s-eyes img{width:100%;height:auto;margin-top:-32%}
.s-word{width:clamp(170px,26vw,280px);aspect-ratio:2/1;overflow:hidden;border:6px solid #fff;border-radius:10px;background:#fff}
.s-word img{width:200%;max-width:none;margin-left:-26%;margin-top:0}
.s-dog{width:clamp(110px,16vw,170px);aspect-ratio:3/4;overflow:hidden;border:6px solid #fff;border-radius:50% 50% 12px 12px;background:#fff}
.s-dog img{height:100%;width:auto;max-width:none;margin-left:-215%}
.s-stache{width:clamp(110px,15vw,160px);fill:var(--ink);background:#fff;padding:14px 16px;border-radius:999px}
.s-text{font:900 italic clamp(1.1rem,2.4vw,1.7rem)/1.05 var(--serif);background:var(--rust);color:#fff;padding:.5em .8em;border-radius:6px;border:3px solid #fff}
.s-stamp{font:900 clamp(1.8rem,4vw,2.8rem)/1 var(--serif);background:var(--ink);color:var(--paper);width:2.4em;height:2.4em;display:grid;place-items:center;border-radius:50%;border:4px solid #fff;outline:2px dashed var(--paper);outline-offset:-10px}
.s-note{font:400 clamp(.85rem,1.4vw,1rem)/1.35 var(--mono);background:#fff7a8;padding:1em 1.1em;width:clamp(130px,16vw,180px);box-shadow:inset 0 -18px 18px -18px rgba(0,0,0,.15)}
@media(max-width:640px){
  .sticker{left:calc(var(--x) * .8);}
  .s-logo{--x:4%!important;--y:3%!important}.s-eyes{--x:48%!important;--y:4%!important}
  .s-dog{--x:58%!important;--y:22%!important}.s-word{--x:4%!important;--y:32%!important}
  .s-text{--x:8%!important;--y:58%!important}.s-stache{--x:52%!important;--y:52%!important}
  .s-stamp{--x:60%!important;--y:74%!important}.s-note{--x:6%!important;--y:76%!important}
  .door::after{display:none}
}

/* family */
.postcards{display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));margin-top:2rem}
.postcard{position:relative;display:flex;flex-direction:column;gap:.4rem;min-height:190px;padding:1.6rem;text-decoration:none;background:#fffdf7;border:2px solid var(--ink);box-shadow:var(--shadow);border-radius:4px;
  background-image:linear-gradient(90deg,transparent calc(60% - 1px),rgba(18,41,74,.25) calc(60% - 1px),rgba(18,41,74,.25) 60%,transparent 60%)}
.postcard::before{content:"";position:absolute;inset:8px;border:2px solid transparent;border-image:repeating-linear-gradient(45deg,var(--rust) 0 10px,#fff 10px 20px,var(--blue) 20px 30px,#fff 30px 40px) 6;pointer-events:none;opacity:.8}
.pc-stamp{position:absolute;top:1.4rem;right:1.4rem;width:64px;height:76px;display:grid;place-items:center;background:var(--blue);border:2px dashed var(--ink);font:900 1.6rem var(--serif)}
.pc-title{font:800 clamp(1.4rem,2.6vw,2rem)/1.1 var(--serif);margin-top:auto;max-width:60%}
.pc-sub{font:400 .85rem var(--mono);text-transform:uppercase;letter-spacing:.14em;color:var(--rust)}

/* footer */
.foot{background:var(--ink);color:var(--paper);text-align:center;padding:72px 0 48px}
.foot-logo{margin:0 auto 1rem;border-radius:50%;border:3px solid var(--paper)}
.foot-word{font:900 clamp(2.4rem,7vw,4.6rem)/1 var(--serif);margin:0}
.foot-tag{font:500 italic 1.2rem var(--serif);color:var(--blue);margin:.4em 0 2rem}
.disclaimer{max-width:62ch;margin:0 auto 1.2rem;font-size:.9rem;opacity:.85;border-top:1px dashed rgba(244,234,216,.4);padding-top:1.4rem}
.foot .micro{color:var(--blue)}

/* toast + tip + cursor */
.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,140%);background:var(--ink);color:var(--paper);padding:.8em 1.2em;border-radius:8px;box-shadow:4px 4px 0 var(--tan);font-weight:700;z-index:90;transition:transform .3s;max-width:calc(100% - 32px);text-align:center}
.toast.show{transform:translate(-50%,0)}
.joke-tip{position:fixed;z-index:80;max-width:260px;background:var(--ink);color:var(--paper);font:500 italic .98rem/1.35 var(--serif);padding:.8em 1em;border-radius:8px;box-shadow:4px 4px 0 var(--blue);pointer-events:none}
.joke-tip::before{content:"Dad joke №" attr(data-n);display:block;font:400 .7rem var(--mono);font-style:normal;letter-spacing:.1em;color:var(--blue);margin-bottom:.3em;text-transform:uppercase}
.cursor-stache{position:fixed;left:0;top:0;width:46px;fill:var(--ink);pointer-events:none;z-index:95;opacity:0;transition:opacity .2s}
.cursor-stache.on{opacity:.9}

/* reveal */
[data-reveal]{opacity:0;translate:0 22px;transition:opacity .7s cubic-bezier(.2,.7,.2,1),translate .7s cubic-bezier(.2,.7,.2,1)}
[data-reveal].in{opacity:1;translate:0 0}
.no-js [data-reveal]{opacity:1;translate:none}
.hide-sm{display:none}
@media(min-width:640px){.hide-sm{display:inline}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}
  .track span[aria-hidden]{display:none}
  [data-reveal]{opacity:1;translate:none;transition:none}
  .stache-btn:hover svg,.twirl,.bubble.pop{animation:none!important}
  .cursor-stache{display:none}
  .index-card,.btn,.toast{transition:none}
}

.nav-r{display:flex;align-items:center;gap:.6rem}
.x-link{display:grid;place-items:center;width:38px;height:38px;border:2px solid var(--ink);border-radius:50%;background:var(--card);box-shadow:2px 2px 0 var(--ink)}
.x-link svg{width:16px;fill:var(--ink)}
.x-link:hover{background:var(--blue)}
.foot-links{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;margin:0 0 1.6rem}
.foot-links a,.soon-chip{font:700 .9rem/1 var(--sans);padding:.65em 1em;border:2px solid var(--paper);border-radius:999px;text-decoration:none}
.foot-links a{background:var(--paper);color:var(--ink)}
.foot-links a:hover{background:var(--blue)}
.soon-chip{opacity:.6}
html,body{overflow-x:clip}
.hero h1{font-size:clamp(2.5rem,6.4vw,4.6rem)}
@media(min-width:760px){.hero-copy{padding-top:38px}.hero-row{margin-top:-64px}.lede{margin:.4em 0 .8em}}
@media(min-width:760px) and (max-height:860px){.card-frame{max-width:980px;margin-inline:auto}}
.nw{white-space:nowrap}
@media(min-width:760px){.hero-copy{padding-top:84px}}
.ticker-wrap{overflow:hidden;padding-block:14px;margin-block:-14px;position:relative;z-index:3}
.ticker{margin-inline:-12px}
.toast{transform:translate(-50%,calc(100% + 40px));visibility:hidden;transition:transform .3s,visibility 0s .3s}
.toast.show{transform:translate(-50%,0);visibility:visible;transition:transform .3s}
.sticker img{height:auto}
.s-eyes img,.s-word img,.s-dog img{width:100%;height:100%;max-width:none;margin:0;object-fit:cover}
.s-eyes img{object-position:50% 37%}
.s-word{aspect-ratio:2.2/1}.s-word img{object-position:14% 50%}
.s-dog img{object-position:89% 50%}
