*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --tap-ink:#0a0a0a;
  --tap-bone:#f4f1ea;
  --tap-lime:#c8f542;
  --tap-display:"Syne",sans-serif;
  --tap-body:"DM Sans",system-ui,sans-serif;
}
html{scroll-behavior:smooth}
.tap-body{font-family:var(--tap-body);background:var(--tap-ink);color:var(--tap-bone);line-height:1.6}
.tap-skip{position:absolute;left:-9999px;z-index:9999;padding:.75rem;background:var(--tap-lime);color:var(--tap-ink)}
.tap-skip:focus{left:1rem;top:1rem}
.tap-bar{position:sticky;top:0;z-index:50;width:100%}
.tap-bar--dark{background:var(--tap-ink);border-bottom:1px solid rgba(244,241,234,.12)}
.tap-bar__inner{max-width:1200px;margin:0 auto;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center}
.tap-bar__mark{font-family:var(--tap-display);font-weight:800;font-size:1rem;letter-spacing:.25em;color:var(--tap-bone);text-decoration:none}
.tap-bar__cta{font-size:.85rem;color:var(--tap-lime);text-decoration:none;font-weight:600;border:1px solid var(--tap-lime);padding:.4rem 1rem}
.tap-band{width:100%;padding:clamp(3rem,8vw,6rem) 1.5rem}
.tap-band--dark{background:var(--tap-ink);color:var(--tap-bone)}
.tap-band--light{background:var(--tap-bone);color:var(--tap-ink)}
.tap-band__content{max-width:640px;margin:0 auto}
.tap-band__content--wide{max-width:900px}
.tap-band__title{font-family:var(--tap-display);font-size:clamp(1.25rem,3vw,1.75rem);font-weight:700;margin-bottom:1.25rem;text-transform:uppercase;letter-spacing:.08em}
.tap-band__title--lime{color:var(--tap-lime)}
.tap-band--light .tap-band__title{color:var(--tap-ink)}
.tap-band__addr{margin-top:1rem;font-size:.9rem;opacity:.7}
.tap-launch{text-align:center;padding:clamp(4rem,12vw,10rem) 1.5rem}
.tap-launch__label{font-size:.75rem;letter-spacing:.3em;text-transform:uppercase;opacity:.6;margin-bottom:1rem}
.tap-launch__name{font-family:var(--tap-display);font-size:clamp(4rem,18vw,12rem);font-weight:800;line-height:.9;letter-spacing:-.02em;margin-bottom:1.5rem;color:var(--tap-lime)}
.tap-launch__sub{font-size:clamp(1rem,2.5vw,1.25rem);max-width:480px;margin:0 auto;opacity:.85}
.tap-strip{display:flex;flex-wrap:wrap;gap:1rem;list-style:none;margin-top:1.5rem}
.tap-strip li{flex:1 1 180px;padding:1.25rem;border:1px solid rgba(200,245,66,.35);font-family:var(--tap-display);font-weight:600;font-size:.95rem;text-transform:uppercase;letter-spacing:.05em}
.tap-band a{color:var(--tap-lime)}
.tap-band--light a{color:var(--tap-ink);text-decoration:underline}
.tap-form{margin-top:1.5rem}
.tap-form__field{margin-bottom:1rem}
.tap-form__field label{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.35rem}
.tap-form__field input,.tap-form__field textarea{width:100%;padding:.75rem;background:transparent;border:1px solid rgba(244,241,234,.3);color:var(--tap-bone);font-family:inherit;font-size:1rem}
.tap-form__field input:focus,.tap-form__field textarea:focus{outline:2px solid var(--tap-lime);border-color:var(--tap-lime)}
.tap-form__check{display:flex;gap:.6rem;font-size:.85rem;align-items:flex-start;margin-bottom:.35rem}
.tap-form__check input{margin-top:.2rem}
.tap-form__check a{color:var(--tap-lime)}
.tap-form__err{display:block;color:#ff6b6b;font-size:.8rem;min-height:1.1rem}
.tap-submit{background:var(--tap-lime);color:var(--tap-ink);border:none;padding:.85rem 2.5rem;font-family:var(--tap-display);font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;margin-top:.5rem}
.tap-submit:disabled{opacity:.5;cursor:not-allowed}
.tap-form__ok{color:var(--tap-lime);font-weight:600;margin-top:1rem;padding:1rem;border:1px solid var(--tap-lime)}
.tap-legal h2{font-family:var(--tap-display);font-size:1.1rem;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.06em}
.tap-footer{text-align:center;padding:2rem 1.5rem;background:var(--tap-ink);border-top:1px solid rgba(244,241,234,.1)}
.tap-footer nav{display:flex;justify-content:center;gap:1.5rem;margin-bottom:.75rem;flex-wrap:wrap}
.tap-footer a{color:var(--tap-lime);text-decoration:none;font-size:.85rem}
.tap-footer p{font-size:.75rem;opacity:.5}
@media(max-width:480px){.tap-strip li{flex:1 1 100%}}
