.Reveal-module__vCs_Ea__reveal{opacity:1}.Reveal-module__vCs_Ea__ready{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(16px)}.Reveal-module__vCs_Ea__ready.Reveal-module__vCs_Ea__visible{opacity:1;transform:translateY(0)}
.ProductHero-module__lSRplq__hero{flex-direction:column;gap:clamp(2.5rem,2rem + 2vw,4rem);padding-top:0;padding-bottom:clamp(3rem,2rem + 4vw,6rem);display:flex}.ProductHero-module__lSRplq__inner{max-width:60rem;padding-inline:var(--page-pad);text-align:center;flex-direction:column;align-items:center;gap:1rem;width:100%;margin-inline:auto;display:flex}.ProductHero-module__lSRplq__eyebrow{font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-soft);font-weight:600}.ProductHero-module__lSRplq__title{letter-spacing:-.02em;text-wrap:balance;font-size:clamp(2.6rem,1.9rem + 3vw,4.5rem);font-weight:700;line-height:1.03}.ProductHero-module__lSRplq__title>span{display:block}.ProductHero-module__lSRplq__lede{font-size:var(--step-1);text-wrap:pretty;max-width:42ch;color:var(--color-ink-soft);line-height:1.4}.ProductHero-module__lSRplq__cta{margin-top:.5rem}.ProductHero-module__lSRplq__visual{width:100%;overflow:hidden}
.ProductUIShowcase-module__rwnhoG__section{background:var(--section-bg,transparent);padding-block:clamp(3rem,2rem + 4vw,6rem)}.ProductUIShowcase-module__rwnhoG__inner{max-width:var(--content-max);padding-inline:var(--page-pad);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(2rem,1.2rem + 3vw,4rem);margin-inline:auto;display:grid}.ProductUIShowcase-module__rwnhoG__reverse{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.ProductUIShowcase-module__rwnhoG__reverse .ProductUIShowcase-module__rwnhoG__text{order:2}.ProductUIShowcase-module__rwnhoG__reverse .ProductUIShowcase-module__rwnhoG__panel{order:1}.ProductUIShowcase-module__rwnhoG__text{flex-direction:column;gap:1rem;display:flex}.ProductUIShowcase-module__rwnhoG__eyebrow{font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-soft);font-weight:600}.ProductUIShowcase-module__rwnhoG__heading{font-size:var(--step-2);letter-spacing:-.02em;font-weight:700;line-height:1.08}.ProductUIShowcase-module__rwnhoG__body{font-size:var(--step-0);color:var(--color-ink-soft);max-width:38ch;line-height:1.5}.ProductUIShowcase-module__rwnhoG__panel{justify-content:center;min-width:0;display:flex}@media (max-width:860px){.ProductUIShowcase-module__rwnhoG__inner,.ProductUIShowcase-module__rwnhoG__reverse{grid-template-columns:1fr}.ProductUIShowcase-module__rwnhoG__text,.ProductUIShowcase-module__rwnhoG__reverse .ProductUIShowcase-module__rwnhoG__text{order:1}.ProductUIShowcase-module__rwnhoG__panel,.ProductUIShowcase-module__rwnhoG__reverse .ProductUIShowcase-module__rwnhoG__panel{order:2}}
.ColorSection-module__8sT_VG__section{background:var(--section-bg);padding-block:clamp(3rem,2.25rem + 3vw,5rem)}.ColorSection-module__8sT_VG__inner{max-width:var(--content-max);padding-inline:var(--page-pad);text-align:center;flex-direction:column;align-items:center;gap:1.25rem;margin-inline:auto;display:flex}.ColorSection-module__8sT_VG__split{text-align:left;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(2rem,1.2rem + 3vw,4rem);display:grid}.ColorSection-module__8sT_VG__split.ColorSection-module__8sT_VG__reverse{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.ColorSection-module__8sT_VG__split.ColorSection-module__8sT_VG__reverse .ColorSection-module__8sT_VG__text{order:2}.ColorSection-module__8sT_VG__split.ColorSection-module__8sT_VG__reverse .ColorSection-module__8sT_VG__panel{order:1}.ColorSection-module__8sT_VG__text{flex-direction:column;gap:1.25rem;display:flex}.ColorSection-module__8sT_VG__panel{justify-content:center;min-width:0;display:flex}@media (max-width:860px){.ColorSection-module__8sT_VG__split{text-align:center;grid-template-columns:1fr}.ColorSection-module__8sT_VG__split .ColorSection-module__8sT_VG__text{order:1;align-items:center}.ColorSection-module__8sT_VG__split .ColorSection-module__8sT_VG__panel{order:2}}.ColorSection-module__8sT_VG__eyebrow{font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-soft);font-weight:600}.ColorSection-module__8sT_VG__heading{font-size:var(--step-2);letter-spacing:-.02em;max-width:20ch;font-weight:700;line-height:1.1}.ColorSection-module__8sT_VG__body{font-size:var(--step-0);color:var(--color-ink-soft);max-width:40ch;line-height:1.5}
.WidgetShowcase-module__EkjtgG__section{background:var(--section-bg,transparent);padding-block:clamp(3rem,2.25rem + 2vw,4rem)}.WidgetShowcase-module__EkjtgG__inner{max-width:var(--content-max);padding-inline:var(--page-pad);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(2rem,1.2rem + 3vw,4rem);margin-inline:auto;display:grid}.WidgetShowcase-module__EkjtgG__reverse{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.WidgetShowcase-module__EkjtgG__reverse .WidgetShowcase-module__EkjtgG__text{order:2}.WidgetShowcase-module__EkjtgG__reverse .WidgetShowcase-module__EkjtgG__gallery{order:1}.WidgetShowcase-module__EkjtgG__text{flex-direction:column;gap:.75rem;display:flex}.WidgetShowcase-module__EkjtgG__eyebrow{font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-soft);font-weight:600}.WidgetShowcase-module__EkjtgG__heading{font-size:var(--step-2);letter-spacing:-.02em;font-weight:700;line-height:1.1}.WidgetShowcase-module__EkjtgG__body{font-size:var(--step-0);color:var(--color-ink-soft);max-width:38ch;line-height:1.5}.WidgetShowcase-module__EkjtgG__gallery{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(1rem,.6rem + 2vw,2rem);min-width:0;display:flex}@media (max-width:860px){.WidgetShowcase-module__EkjtgG__inner,.WidgetShowcase-module__EkjtgG__reverse{text-align:center;grid-template-columns:1fr}.WidgetShowcase-module__EkjtgG__text,.WidgetShowcase-module__EkjtgG__reverse .WidgetShowcase-module__EkjtgG__text{order:1;align-items:center}.WidgetShowcase-module__EkjtgG__gallery,.WidgetShowcase-module__EkjtgG__reverse .WidgetShowcase-module__EkjtgG__gallery{order:2}}
.AppScreenshot-module__l8qYDG__frame{border:1px solid var(--ff-outline);background:var(--ff-stone);border-radius:28px;width:100%;max-width:300px;margin-inline:auto;overflow:hidden;box-shadow:0 18px 40px -24px #00000059}.AppScreenshot-module__l8qYDG__bare{width:100%;max-width:300px;margin-inline:auto}.AppScreenshot-module__l8qYDG__image{width:100%;height:auto;display:block}
.page-module__PS_N2q__page{--tap-pitch:#81ad63;overflow:hidden}.page-module__PS_N2q__hero,.page-module__PS_N2q__harder{isolation:isolate;position:relative;overflow:hidden}.page-module__PS_N2q__hero{background-color:var(--tap-pitch);background-image:url(/projects/tapin/pitch-vertical.png);background-repeat:repeat;background-size:14rem 100%;height:clamp(29rem,46vw,36rem);margin-top:calc(-1*clamp(1rem,.5rem + 2vw,2.5rem))}.page-module__PS_N2q__visuallyHidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-module__PS_N2q__heroCopy{z-index:1;width:min(34rem, calc(100% - 2 * var(--page-pad)));text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.page-module__PS_N2q__how h2,.page-module__PS_N2q__harder h2,.page-module__PS_N2q__highScore h2{letter-spacing:-.04em;font-weight:700;line-height:1.02}.page-module__PS_N2q__heroCopy p{max-width:32ch;font-size:var(--step-1);margin:1.25rem auto 0;font-weight:600;line-height:1.4}.page-module__PS_N2q__logo{width:clamp(15rem,24vw,20rem);height:auto;margin-inline:auto;display:block}.page-module__PS_N2q__how{padding-block:clamp(5rem,10vw,9rem)}.page-module__PS_N2q__howInner{max-width:var(--content-max);padding-inline:var(--page-pad);grid-template-columns:minmax(15rem,4fr) minmax(0,8fr);align-items:center;gap:clamp(3rem,7vw,7rem);margin-inline:auto;display:grid}.page-module__PS_N2q__sectionCopy,.page-module__PS_N2q__harderCopy,.page-module__PS_N2q__highScore>div:first-child{flex-direction:column;gap:1rem;display:flex}.page-module__PS_N2q__how h2,.page-module__PS_N2q__harder h2,.page-module__PS_N2q__highScore h2{max-width:15ch;font-size:var(--step-2)}.page-module__PS_N2q__sectionCopy p,.page-module__PS_N2q__harderCopy p,.page-module__PS_N2q__highScore>div:first-child>p:last-child{max-width:34ch;color:var(--color-ink-soft);line-height:1.55}.page-module__PS_N2q__gameplay{border-radius:var(--radius);width:min(100%,760px);height:auto;display:block}.page-module__PS_N2q__harder{background:var(--tap-pitch);min-height:clamp(36rem,55vw,44rem)}.page-module__PS_N2q__harderPitch{z-index:0;object-fit:cover;object-position:center;width:72%;height:100%;position:absolute;inset:0 0 0 auto}.page-module__PS_N2q__harderCopy{top:50%;left:max(var(--page-pad), calc((100vw - var(--content-max)) / 2 + var(--page-pad)));z-index:1;width:min(25rem,25vw);position:absolute;transform:translateY(-50%)}.page-module__PS_N2q__harderCopy h2,.page-module__PS_N2q__harderCopy p{color:var(--color-page);text-shadow:0 1px 1px #1b3e1847}.page-module__PS_N2q__harderCopy p{font-weight:600}.page-module__PS_N2q__ending{max-width:var(--content-max);padding-inline:var(--page-pad);margin-inline:auto}.page-module__PS_N2q__highScore{justify-content:center;align-items:center;min-height:clamp(18rem,24vw,21rem);display:flex}.page-module__PS_N2q__highScore>div:first-child{width:min(100%,36rem)}.page-module__PS_N2q__kicker{color:var(--color-ink-soft);font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;font-weight:700}.page-module__PS_N2q__archive{justify-content:space-between;align-items:flex-end;gap:2rem;min-height:clamp(10rem,14vw,12rem);display:flex}.page-module__PS_N2q__archive>div{flex-direction:column;gap:.45rem;display:flex}.page-module__PS_N2q__archive h2{font-size:var(--step-2);letter-spacing:-.025em;line-height:1.08}.page-module__PS_N2q__archive p,.page-module__PS_N2q__archive a{color:var(--color-ink-soft);font-size:var(--step--1)}.page-module__PS_N2q__archive a{color:var(--color-ink);text-underline-offset:4px}@media (max-width:860px){.page-module__PS_N2q__howInner{grid-template-columns:1fr;gap:2.5rem}.page-module__PS_N2q__gameplay{width:100%}.page-module__PS_N2q__harderPitch{width:78%}.page-module__PS_N2q__harderCopy{left:var(--page-pad);width:35vw}}@media (max-width:640px){.page-module__PS_N2q__hero{background-size:11rem 100%;height:31rem;margin-top:-1rem}.page-module__PS_N2q__heroCopy{width:min(18rem,100% - 2.5rem)}.page-module__PS_N2q__heroCopy p{max-width:26ch;font-size:var(--step-0)}.page-module__PS_N2q__logo{width:min(13rem,62vw)}.page-module__PS_N2q__how{padding-block:4.5rem}.page-module__PS_N2q__gameplay{border-radius:8px}.page-module__PS_N2q__harder{flex-direction:column;min-height:38rem;display:flex}.page-module__PS_N2q__harderCopy{order:1;width:auto;padding:4.5rem 1.25rem 2.5rem;position:relative;top:auto;left:auto;transform:none}.page-module__PS_N2q__harderPitch{object-fit:contain;order:2;width:112%;height:auto;margin-left:-6%;position:relative;inset:auto}.page-module__PS_N2q__highScore{min-height:21rem}.page-module__PS_N2q__archive{flex-direction:column;justify-content:flex-end;align-items:flex-start;min-height:13rem;padding-bottom:0}}
