<!DOCTYPE html><html lang="en"><head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# tupaloapp: http://ogp.me/ns/fb/tupaloapp#"><title>Signin to Tupalo</title><meta content="en" http-equiv="content-language"/><meta name="viewport" content="width=device-width, initial-scale=1"/><script type="text/plain" src="https://www.google-analytics.com/analytics.js" data-cookiecategory="analytics" async=""></script><link href="//assets0.tupalocdn.com" rel="preconnect"/><link href="//static.tupalocdn.com" rel="preconnect"/><link href="//cdnjs.cloudflare.com" rel="preconnect"/><link href="//snapshot.apple-mapkit.com" rel="preconnect"/><link href="//new.tupalo.biz" rel="preconnect"/><link referrerpolicy="no-referrer" crossorigin="anonymous" integrity="sha512-d0v474klOFSF7qD9WDvyRxAvXaWSxCHDZdnBSZQjo8BpVr6vpjwAgqetpqkKP38DzlOzdVPaLVnzzW1Ba8wB9w==" href="https://cdnjs.cloudflare.com/ajax/libs/tachyons/4.11.1/tachyons.min.css" rel="stylesheet"/><link rel="stylesheet" href="//new.tupalo.biz/tupalo7_base.css?v=d8b39bb9"/><link rel="stylesheet" href="//new.tupalo.biz/tupalo7_user.css?v=3e9241cd"/><style hx-preserve="true">.bg-coffee-cream {
background-color: #f2efe4;
}
.bg-light-pink {
background-color: #fcf7fa;
}
.bg-pink {
background-color: #ff96cc;
}
.bg-facebook {
background-color: #3b5998;
}
.bg-twitter {
background-color: white;
}
.bg-old-twitter {
background-color: #00aced;
}
.bg-instagram {
background-color: #E1306C;
}
.bg-youtube {
background-color: #ff0000;
}
.bg-website {
background-color: white;
}
.bg-phone {
background-color: white;
}
.bg-online-shop {
background-color: lightyellow;
}
.fg-facebook {
color: white;
}
.fg-twitter {
color: black;
}
.fg-old-twitter {
color: white;
}
.fg-instagram {
color: white;
}
.fg-youtube {
color: white;
}
.fg-website {
color: black;
}
.fg-phone {
color: black;
}
.fg-online-shop {
color: orangered;
}
.tupalo-blue {
color: #0065A3;
}
.tupalo-light-blue {
color: #0065A320;
}
.tupalo-green {
color: #66BB6A;
}
.tupalo-gold {
color: #ffe7ad;
}
.tupalo-dark-gold {
color: #ffd462;
}
.tupalo-light-gold {
color: #fff6e0;
}
.bg-tupalo-blue {
background-color: #0065A3;
}
.bg-tupalo-light-blue {
background-color: #0065A320;
}
.bg-tupalo-green {
background-color: #66BB6A;
}
.bg-tupalo-light-green {
background-color: #ECF7EC;
}
.bg-tupalo-gold {
background-color: #ffe7ad;
}
.bg-tupalo-dark-gold {
background-color: #ffd462;
}
.bg-tupalo-light-gold {
background-color: #fff6e0;
}
.b--tupalo-blue {
border-color: #0065A3;
}
.b--tupalo-light-blue {
border-color: #0065A320;
}
.b--tupalo-green {
border-color: #66BB6A;
}
.b--tupalo-gold {
border-color: #ffe7ad;
}
.b--tupalo-dark-gold {
border-color: #ffd462;
}
.b--tupalo-light-gold {
border-color: #fff6e0;
}
.hover-bg-tupalo-blue:hover {
background-color: #0065A3;
}
.hover-bg-tupalo-blue:focus {
background-color: #0065A3;
}
.hover-bg-tupalo-light-blue:hover {
background-color: #0065A320;
}
.hover-bg-tupalo-light-blue:focus {
background-color: #0065A320;
}
.hover-bg-tupalo-green:hover {
background-color: #66BB6A;
}
.hover-bg-tupalo-green:focus {
background-color: #66BB6A;
}
.hover-bg-tupalo-light-green:hover {
background-color: #ECF7EC;
}
.hover-bg-tupalo-light-green:focus {
background-color: #ECF7EC;
}
.hover-bg-tupalo-gold:hover {
background-color: #ffe7ad;
}
.hover-bg-tupalo-gold:focus {
background-color: #ffe7ad;
}
.hover-bg-tupalo-light-gold:hover {
background-color: #fff6e0;
}
.hover-bg-tupalo-light-gold:focus {
background-color: #fff6e0;
}
.hover-b--tupalo-blue:hover {
border-color: #0065A3;
}
.hover-b--tupalo-blue:focus {
border-color: #0065A3;
}
.shadow-tup {
box-shadow: 2px 2px 0 1px rgba(0, 0, 0, 0.5);
}
.shadow-tup.pressed {
box-shadow: inset 2px 2px 0 1px rgba(0, 0, 0, 0.5);
}
button.pressed {
color: rgb(0 0 0 / 70%);
}
.gallery-image {
width: 24%;
margin-right: 1px;
}
.hover-brighten:focus {
filter: brightness(150%);
}
.hover-brighten:hover {
filter: brightness(150%);
}
.hover-darken:focus {
filter: brightness(90%);
}
.hover-darken:hover {
filter: brightness(90%);
}
.filter-animate {
transition: filter .15s ease-in-out;
}
.opacity-animate {
transition: opacity .15s ease-in-out;
}
.no-underline2 {
text-decoration: none !important;
}
.no-underline2 * {
text-decoration: none !important;
}
:root {
--instagram-red: #E1306C;
--tupalo-light-gold: #fff6e0;
--facebook-blue: #3b5998;
--tupalo-dark-gold: #ffd462;
--tupalo-gold: #ffe7ad;
--sl-color-success-500: rgb(from #66BB6A calc(r + 30) calc(g + 30) calc(b + 30));
--tupalo-blue: #0065A3;
--sl-color-success-600: #66BB6A;
--tupalo-green: #66BB6A;
--sl-color-primary-600: #0065A3;
}
.hover-o-100:hover {
opacity: 1.0;
}
.left-10 {
left: 10%;
}
.left-30 {
left: 30%;
}
.bottom-3 {
bottom: 4rem;
}
.bottom-4 {
bottom: 8rem;
}
.w1_5 {
width: 1.5rem;
}
.w2_5 {
width: 2.5rem;
}
.w3_5 {
width: 6rem;
}
.min_w3_5 {
min-width: 6rem;
}
.h2_5 {
height: 2.5rem;
}
.w-eigth {
width: 12.5%;
}
.mw7_5 {
max-width: 960px;
}
.min-h-1000 {
min-height: 1000px;
}
.w-180 {
width: 180px;
}
.h-180 {
height: 180px;
}
.hcenter {
transform: translateX(-50%);
left: 50%;
}
.shadow-paper {
box-shadow: 2px 2px 3px rgba(34, 25, 25, 0.45);
}
.grid-gap-1 {
gap: 1rem;
}
.w-05 {
width: 5%;
}
@media screen and (min-width: 30em) {
.left-10-ns {
left: 10%;
}
.left-30-ns {
left: 30%;
}
.w1_5-ns {
width: 1.5rem;
}
.w2_5-ns {
width: 2.5rem;
}
.h2_5-ns {
height: 2.5rem;
}
.w-eigth-ns {
width: 12.5%;
}
.min-h-1000-ns {
min-height: 1000px;
}
.w-180-ns {
width: 180px;
}
.h-180-ns {
height: 180px;
}
.shadow-paper-ns {
box-shadow: 2px 2px 3px rgba(34, 25, 25, 0.45);
}
.w-32-ns {
width: 32%;
}
.grid-gap-1_7-ns {
gap: 1.7rem;
}
.w-05-ns {
width: 5%;
}
}
@media screen and (min-width: 30em) and (max-width: 60em) {
.left-10-m {
left: 10%;
}
.left-30-m {
left: 30%;
}
.w1_5-m {
width: 1.5rem;
}
.w2_5-m {
width: 2.5rem;
}
.h2_5-m {
height: 2.5rem;
}
.w-eigth-m {
width: 12.5%;
}
.shadow-paper-m {
box-shadow: 2px 2px 3px rgba(34, 25, 25, 0.45);
}
.w-05-m {
width: 5%;
}
}
@media (screen: true) and (min-width: 60em) {
.left-10-l {
left: 10%;
}
.left-30-l {
left: 30%;
}
.w1_5-l {
width: 1.5rem;
}
.w2_5-l {
width: 2.5rem;
}
.h2_5-l {
height: 2.5rem;
}
.w-eigth-l {
width: 12.5%;
}
.shadow-paper-l {
box-shadow: 2px 2px 3px rgba(34, 25, 25, 0.45);
}
.w-05-l {
width: 5%;
}
}
.blur1 {
filter: blur(1px);
}
.blur2 {
filter: blur(.125rem);
}
.blur3 {
filter: blur(.25rem);
}
.blur4 {
filter: blur(.5rem);
}
.blur5 {
filter: blur(1rem);
}
@media screen and (min-width: 30em) {
.blur1-ns {
filter: blur(1px);
}
.blur2-ns {
filter: blur(.125rem);
}
.blur3-ns {
filter: blur(.25rem);
}
.blur4-ns {
filter: blur(.5rem);
}
.blur5-ns {
filter: blur(1rem);
}
}
@media screen and (min-width: 30em) and (max-width: 60em) {
.blur1-m {
filter: blur(1px);
}
.blur2-m {
filter: blur(.125rem);
}
.blur3-m {
filter: blur(.25rem);
}
.blur4-m {
filter: blur(.5rem);
}
.blur5-m {
filter: blur(1rem);
}
}
@media (screen: true) and (min-width: 60em) {
.blur1-l {
filter: blur(1px);
}
.blur2-l {
filter: blur(.125rem);
}
.blur3-l {
filter: blur(.25rem);
}
.blur4-l {
filter: blur(.5rem);
}
.blur5-l {
filter: blur(1rem);
}
}</style><style hx-preserve="true">.work-in-progress {
border: 1px solid #ff9900;
position: relative;
font-family: 'Courier New', Courier, monospace;
padding: 4px;
border-radius: 5px;
font-size: 14px;
}
.work-in-progress:before {
content: "🚧";
padding-right: 10px;
}
.grayed-out {
filter: grayscale(100%) blur(0px);;
}</style><style hx-preserve="true">a {
color: #0065A3;
}
address {
font-style: normal;
}</style><style hx-preserve="true">
.flash {
-webkit-animation: yellow-fade 3s;
-moz-animation: yellow-fade 3s;
animation: yellow-fade 3s
}
@-webkit-keyframes yellow-fade {
5% {
background-color: #ff8
}
}
@-moz-keyframes yellow-fade {
5% {
background-color: #ff8
}
}
@keyframes yellow-fade {
5% {
background-color: #ff8
}
}</style><style hx-preserve="true">.color-on-hover {filter: grayscale(100%) blur(0px); transition: filter 0.3s ease;} .color-on-hover:hover {filter: none;}</style><style hx-preserve="true">
.flag\:AT {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='600'%3E%3Cg fill-rule='evenodd'%3E%3Cpath fill='%23c8102e' d='M0 0h900v200H0z'/%3E%3Cpath fill='%23fff' d='M0 200h900v200H0z'/%3E%3Cpath fill='%23c8102e' d='M0 400h900v200H0z'/%3E%3C/g%3E%3C/svg%3E");
}
.flag\:DE {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='600'%3E%3Cpath fill='%23000' d='M0 0h900v200H0z'/%3E%3Cpath fill='%23dd0000' d='M0 200h900v200H0z'/%3E%3Cpath fill='%23ffce00' d='M0 400h900v200H0z'/%3E%3C/svg%3E");
}
.flag\:US {
background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 513 342'%3e%3cpath fill='white' d='M0 0h513v342H0z'/%3e%3cpath d='M0 0h513v26.3H0zm0 52.6h513v26.3H0zm0 52.6h513v26.3H0zm0 52.6h513v26.3H0zm0 52.7h513v26.3H0zm0 52.6h513v26.3H0zm0 52.6h513V342H0z' fill='%23D80027'/%3e%3cpath fill='%232E52B2' d='M0 0h256.5v184.1H0z'/%3e%3cpath d='m47.8 138.9-4-12.8-4.4 12.8H26.2l10.7 7.7-4 12.8 10.9-7.9 10.6 7.9-4.1-12.8 10.9-7.7zm56.3 0-4.1-12.8-4.2 12.8H82.6l10.7 7.7-4 12.8 10.7-7.9 10.8 7.9-4-12.8 10.7-7.7zm56.5 0-4.3-12.8-4 12.8h-13.5l11 7.7-4.2 12.8 10.7-7.9 11 7.9-4.2-12.8 10.7-7.7zm56.2 0-4-12.8-4.2 12.8h-13.3l10.8 7.7-4 12.8 10.7-7.9 10.8 7.9-4.3-12.8 11-7.7zM100 75.3l-4.2 12.8H82.6L93.3 96l-4 12.6 10.7-7.8 10.8 7.8-4-12.6 10.7-7.9h-13.4zm-56.2 0-4.4 12.8H26.2L36.9 96l-4 12.6 10.9-7.8 10.6 7.8L50.3 96l10.9-7.9H47.8zm112.5 0-4 12.8h-13.5l11 7.9-4.2 12.6 10.7-7.8 11 7.8-4.2-12.6 10.7-7.9h-13.2zm56.5 0-4.2 12.8h-13.3l10.8 7.9-4 12.6 10.7-7.8 10.8 7.8-4.3-12.6 11-7.9h-13.5zm-169-50.6-4.4 12.6H26.2l10.7 7.9-4 12.7L43.8 50l10.6 7.9-4.1-12.7 10.9-7.9H47.8zm56.2 0-4.2 12.6H82.6l10.7 7.9-4 12.7L100 50l10.8 7.9-4-12.7 10.7-7.9h-13.4zm56.3 0-4 12.6h-13.5l11 7.9-4.2 12.7 10.7-7.9 11 7.9-4.2-12.7 10.7-7.9h-13.2zm56.5 0-4.2 12.6h-13.3l10.8 7.9-4 12.7 10.7-7.9 10.8 7.9-4.3-12.7 11-7.9h-13.5z' fill='white'/%3e%3c/svg%3e")
}
.flag\:NL {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='600'%3E%3Cpath fill='%23ae1c28' d='M0 0h900v200H0z'/%3E%3Cpath fill='%23fff' d='M0 200h900v200H0z'/%3E%3Cpath fill='%2321468b' d='M0 400h900v200H0z'/%3E%3C/svg%3E");
}
.flag\:FI {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1800' height='1100'%3E%3Cpath fill='%23fff' d='M0 0h1800v1100H0z'/%3E%3Cpath fill='%23003580' d='M0 400h700v300H0zm800 0h1000v300H800zM700 0h100v1100H700z'/%3E%3C/svg%3E");
}
.flag\:FR {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='600'%3E%3Cpath fill='%23ed2939' d='M600 0h300v600H600z'/%3E%3Cpath fill='%23fff' d='M300 0h300v600H300z'/%3E%3Cpath fill='%230055a4' d='M0 0h300v600H0z'/%3E%3C/svg%3E");
}
.flag\:DK {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='370' height='280'%3E%3Cpath fill='%23c8102e' d='M0 0h370v280H0z'/%3E%3Cpath fill='%23fff' d='M120 0h40v280h-40zM0 120h370v40H0z'/%3E%3C/svg%3E");
}
.flag\:PL {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1280' height='800'%3E%3Cpath fill='%23fff' d='M0 0h1280v400H0z'/%3E%3Cpath fill='%23dc143c' d='M0 400h1280v400H0z'/%3E%3C/svg%3E");
}
.flag\:SE {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='1000'%3E%3Cpath fill='%23006aa7' d='M0 0h1600v1000H0z'/%3E%3Cpath fill='%23fecc00' d='M0 400h640v200H0zm800 0h800v200H800zM640 0h160v1000H640z'/%3E%3C/svg%3E");
}
/* Base flag styling */
[class*='flag\:'] {
display: inline-block;
width: 1.5em;
height: 1em;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
margin-right: 0.5em;
border-radius: 0.125rem;
vertical-align: middle;
}
</style><script type="text/javascript">var texts = {"cookie":{"title":"We use cookies!","description":"We use necessary cookies to provide our service and optional cookies to analyse and improve our service.","accept_all":"Accept all","accept_necessary":"Decline optional","learn_more":"Learn more"}};var config = {"ga_id":"UA-44074426-1","dev_host":false,"matomo_tag":"https://analytics.tupalo.com/js/container_bgAXIw3S.js"};</script><script type="text/hyperscript">behavior DropDownButton(menu)
on click from me
toggle .dn on menu
halt
end
on click from body
-- log event.target
if event.target is not in menu or me
add .dn to menu
end
end
end
behavior AutoresizeTextarea
def autoresize()
set *height to 'auto'
measure my scrollHeight
log 'scrollHeight ' + scrollHeight
if scrollHeight < 160
set *height to scrollHeight + 'px'
set *width to '100%'
remove .overflow-auto
add .overflow-hidden
else
set *height to '160px'
set *width to '100%'
add .overflow-auto
remove .overflow-hidden
end
end
init autoresize() end
on input
autoresize()
end
end
behavior LoadingOnSubmit()
on htmx:beforeRequest from closest <form/>
set my loading to true
end
on htmx:afterRequest from closest <form/>
set my loading to false
end
on htmx:responseError from closest <form/>
set my loading to false
end
end
</script><script src="//new.tupalo.biz/tupalo7.js?v=82080cf2" defer=""></script><script src="//new.tupalo.biz/tupalo7_user.js?v=b07cc047" defer=""></script></head><body class="sans-serif"><div hx-headers="{"X-CSRF-Token":"qrC4h0ys83uYW9XiKp9RVhTsnSbsg6+J12uZycjCDbs="}" hx-ext="head-support" hx-boost="true"><header id="header" class="w-100 bg-tupalo-blue"><div class="center flex items-center mw7_5 h3 ph1"><div class="h2 mh2 ml0-ns"><a href="/" title="tupalo.com" class="link h2"><svg space="preserve" xlink="http://www.w3.org/1999/xlink" serif="http://www.serif.com/" width="100px" xmlns="http://www.w3.org/2000/svg" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2" version="1.1" viewBox="0 0 1713 550" height="100%"><title>tupalo.com</title><g><path d="M133.204,481c12.371,0 22.4,-9.854 22.4,-22.017c0,-12.162 -10.029,-22.016 -22.4,-22.016c-12.371,0 -22.404,9.854 -22.404,22.016c0,12.163 10.033,22.017 22.404,22.017Zm220.85,-312.308l-136.104,0l0,-41.73l-16.25,0.001l0,41.729l-136.104,0c-26.563,0 -48.092,21.516 -48.092,48.071l0,288.466c0,26.55 21.529,48.079 48.092,48.079l288.454,0c26.558,0 48.079,-21.529 48.079,-48.079l0,-288.467c0.004,-26.554 -21.516,-48.07 -48.075,-48.07Zm-270.437,360.579c-23.221,0 -42.067,-18.833 -42.067,-42.075l0,-231.613c7.196,4.83 20.542,10.821 25.692,13.871c99.583,59.046 137.816,170.575 138.691,259.813l-122.316,0l0,0.004Zm294.479,-42.075c0,23.242 -18.829,42.075 -42.071,42.075l-117.083,0c0.383,-13.575 2.421,-42.796 4.654,-56.9c7.762,-49.442 25.917,-99 59.204,-142.671c13.808,-18.1 30.358,-35.279 50.4,-50c8.988,-6.612 18.683,-12.75 29.15,-18.125c1.758,-0.921 10.371,-4.729 15.742,-7.529l0,233.15l0.004,0Zm-91.638,-50.229c-12.379,0 -22.425,9.854 -22.425,22.016c0,12.163 10.046,22.017 22.425,22.017c12.363,0 22.4,-9.854 22.4,-22.017c0,-12.162 -10.037,-22.016 -22.4,-22.016Zm130.125,-420.292c-20.816,-10.708 -44.933,-16.688 -64.616,-14.683c-58.954,5.962 -120.717,45.945 -125.692,120.362c-0.037,0.638 0.079,1.238 0.292,1.821l190.016,-107.5Zm-185.55,114.092c66.334,34.054 132.425,1.716 167.925,-45.734c11.85,-15.845 19.134,-39.583 20.684,-62.941l-190.017,107.483c0.379,0.475 0.829,0.892 1.408,1.192Zm-42.412,-1.613c0.567,-0.291 1.021,-0.712 1.412,-1.183l-190.033,-107.488c1.546,23.371 8.846,47.109 20.696,62.955c35.492,47.445 101.571,79.783 167.925,45.716Zm4.742,-8.408c-4.971,-74.417 -66.734,-114.392 -125.688,-120.371c-19.687,-1.979 -43.8,3.992 -64.625,14.704l190.033,107.479c0.196,-0.579 0.325,-1.166 0.28,-1.812Z" style="fill:#fff;fill-rule:nonzero"></path><g><path d="M514.619,232.261l-24.498,0c-16.067,0 -27.984,-2.536 -35.75,-7.63c-7.758,-5.079 -11.645,-12.781 -11.645,-23.09c0,-10.573 3.923,-18.446 11.753,-23.597c7.83,-5.166 19.711,-7.745 35.642,-7.745l115.808,0c15.853,0 27.741,2.579 35.664,7.745c7.923,5.151 11.888,13.016 11.888,23.597c0,10.309 -3.937,18.011 -11.788,23.09c-7.859,5.094 -19.782,7.63 -35.764,7.63l-24.783,0l0,186.786c0,15.932 -2.744,27.784 -8.216,35.557c-5.48,7.758 -13.831,11.638 -25.048,11.638c-11.223,0 -19.575,-3.88 -25.055,-11.638c-5.479,-7.773 -8.208,-19.618 -8.208,-35.557l0,-186.786Z" style="fill:#fff;fill-rule:nonzero"></path><path d="M640.228,374.424l0,-86.574c0,-15.96 2.68,-27.812 8.045,-35.528c5.358,-7.716 13.538,-11.581 24.533,-11.581c10.859,0 18.925,3.865 24.226,11.581c5.301,7.716 7.945,19.561 7.945,35.528l0,73.286c0,17.317 2.614,29.556 7.865,36.743c5.244,7.172 13.789,10.759 25.627,10.759c11.83,0 20.375,-3.587 25.619,-10.759c5.244,-7.187 7.873,-19.426 7.873,-36.743l0,-73.286c0,-15.96 2.636,-27.812 7.908,-35.528c5.273,-7.716 13.453,-11.581 24.541,-11.581c10.816,0 18.832,3.837 24.033,11.481c5.201,7.644 7.816,19.518 7.816,35.621l0,86.567c0,30.784 -8.38,54.296 -25.134,70.549c-16.76,16.267 -41.015,24.39 -72.785,24.39c-31.77,0 -56.061,-8.123 -72.878,-24.39c-16.825,-16.246 -25.234,-39.758 -25.234,-70.535Z" style="fill:#fff;fill-rule:nonzero"></path><path d="M948.737,505.935c0,16.06 -2.672,27.977 -8.015,35.735c-5.344,7.759 -13.503,11.638 -24.455,11.638c-10.959,0 -19.082,-3.879 -24.355,-11.638c-5.279,-7.758 -7.916,-19.675 -7.916,-35.735l0,-218.027c0,-15.839 2.637,-27.57 7.916,-35.236c5.273,-7.644 13.396,-11.481 24.355,-11.481c6.544,0 12.352,1.701 17.432,5.094c5.079,3.394 9.552,8.552 13.431,15.475c6.701,-7.38 14.588,-12.946 23.647,-16.718c9.059,-3.75 19.011,-5.637 29.885,-5.637c27.898,0 51.374,10.86 70.42,32.542c19.047,21.697 28.577,48.824 28.577,81.366c0,32.399 -9.759,59.919 -29.284,82.551c-19.525,22.633 -43.023,33.95 -70.528,33.95c-9.795,0 -18.882,-1.565 -27.262,-4.701c-8.38,-3.136 -16.339,-7.844 -23.848,-14.124l0,54.946Zm-1.2,-151.829c0,16.66 3.951,30.07 11.852,40.215c7.895,10.145 18.218,15.21 30.942,15.21c12.724,0 23.04,-5.094 30.942,-15.31c7.894,-10.216 11.852,-23.583 11.852,-40.115c0,-15.989 -4.051,-29.048 -12.159,-39.193c-8.109,-10.145 -18.311,-15.225 -30.635,-15.225c-12.459,0 -22.704,5.051 -30.741,15.125c-8.038,10.073 -12.053,23.176 -12.053,39.293Z" style="fill:#fff;fill-rule:nonzero"></path><path d="M1275.83,442.78c-6.573,8.066 -14.525,14.217 -23.848,18.446c-9.323,4.23 -19.489,6.352 -30.484,6.352c-27.77,0 -51.146,-10.895 -70.121,-32.721c-18.982,-21.811 -28.47,-49.045 -28.47,-81.716c0,-32.249 9.788,-59.411 29.378,-81.501c19.582,-22.075 43.458,-33.128 71.628,-33.128c10.994,0 20.753,1.872 29.277,5.594c8.515,3.737 16.067,9.531 22.64,17.389c3.736,-6.851 8.208,-12.016 13.431,-15.503c5.208,-3.486 11.023,-5.243 17.439,-5.243c10.823,0 18.839,3.836 24.047,11.48c5.208,7.659 7.823,19.547 7.823,35.664l0,130.075c0,16.003 -2.643,27.891 -7.916,35.693c-5.279,7.801 -13.259,11.695 -23.954,11.695c-7.223,0 -13.303,-1.815 -18.247,-5.444c-4.943,-3.622 -9.144,-9.33 -12.623,-17.132Zm-85.945,-90.56c0,15.881 3.9,28.662 11.702,38.329c7.801,9.68 17.96,14.51 30.477,14.51c12.238,0 22.261,-4.901 30.063,-14.71c7.801,-9.809 11.709,-22.519 11.709,-38.136c0,-15.21 -3.936,-27.613 -11.802,-37.229c-7.873,-9.602 -17.86,-14.417 -29.963,-14.417c-12.374,0 -22.497,4.772 -30.37,14.317c-7.873,9.545 -11.816,22.004 -11.816,37.336Z" style="fill:#fff;fill-rule:nonzero"></path><path d="M1389.5,196.161c0,-16.06 2.665,-27.976 8.009,-35.749c5.344,-7.759 13.488,-11.652 24.44,-11.652c10.681,0 18.661,3.922 23.941,11.752c5.272,7.844 7.908,19.718 7.908,35.649l0,222c0,16.06 -2.607,27.948 -7.815,35.635c-5.209,7.702 -13.224,11.538 -24.034,11.538c-10.952,0 -19.096,-3.879 -24.44,-11.638c-5.344,-7.758 -8.009,-19.603 -8.009,-35.542l0,-221.993Z" style="fill:#fff;fill-rule:nonzero"></path><path d="M1492.01,353.17c0,-33.771 10.337,-61.547 31.02,-83.33c20.683,-21.769 46.945,-32.664 78.801,-32.664c31.984,0 58.211,10.86 78.701,32.571c20.475,21.711 30.72,49.524 30.72,83.43c0,33.907 -10.245,61.748 -30.72,83.523c-20.483,21.783 -46.717,32.664 -78.701,32.664c-31.856,0 -58.126,-10.91 -78.801,-32.764c-20.683,-21.84 -31.02,-49.645 -31.02,-83.43Zm66.977,-0.85c0,16.66 3.958,30.07 11.874,40.215c7.908,10.145 18.246,15.21 30.991,15.21c12.738,0 23.069,-5.094 30.992,-15.31c7.909,-10.217 11.874,-23.583 11.874,-40.115c0,-15.989 -4.058,-29.049 -12.174,-39.193c-8.123,-10.145 -18.347,-15.225 -30.692,-15.225c-12.616,0 -22.911,5.051 -30.891,15.125c-7.98,10.073 -11.974,23.176 -11.974,39.293Z" style="fill:#fff;fill-rule:nonzero"></path></g></g></svg></a></div><div style="margin-top:28px" class="flex flex-column h-100 flex-grow-1"><form id="search"><input hx-swap="outerHTML" hx-vals="{"search-result-id":"search-results","search-type":"default"}" placeholder="Search for a spot..." tabindex="0" _="
init set :cursor to 0 as Int end
on keydown[key is 'Escape']
set my value to '' then
remove <#search-results .list/>
trigger cancel_search
end
on keydown[key is 'Enter']
-- TODO: if cursor is not on a hit
-- trigger search then
trigger select_cursor on next .list then
halt
end
on keydown[key is 'ArrowUp']
trigger cursor_up on next .list then halt end
on keydown[key is 'ArrowDown']
trigger cursor_down on next .list then halt end
on click[target.value.length > 2]
trigger search then
halt
end
on click elsewhere
remove <#search-results .list/>
end
on keydown[key is '/'] from elsewhere
call me.focus() then halt
end" autocapitalize="off" name="q" value="" hx-trigger="keyup[target.value.length > 2] changed delay:100ms, search" autocorrect="off" style="border-width:1px;border-style:solid;box-sizing:border-box;outline:0px" autocomplete="off" hx-target="#search-results" hx-post="/en/api/v5/spots/search" class="courier br2 ph2 f5 w-100 ma0 h2"/></form><div id="search-results" style="top:0.3rem" class="courier z-9999 w6 mw6 relative"></div></div><div class="mh2 mr0-ns flex flex-column flex-row-ns items-center"><div class="ml2 dn db-ns"><a rel="nofollow noopener noreferrer" href="/en/api/v5/spot/new"><button class="ba br2 ph2 pv1 pointer b--black bg-tupalo-green ml2 white-90 shadow-tup">Add your business</button></a></div></div></div></header><div class="center flex flex-column items-center mw7_5"><a href="https://new.tupalo.biz/en/b/i/z/add?utm_source=minisite_promotion&utm_medium=banner&utm_campaign=header_promotion" class="center"><img src="https://zentr1.ams3.digitaloceanspaces.com/s/tupalo/7bca489dda2c00f9b0b5fff083fd9d3447679bc373e0cf8721437e616fa68d76.png" alt="Your New Mini Website" class="h-auto mt2-ns"/></a></div><div class="center flex flex-column items-center justify-center mw7_5 pa0-ns ph2 mt5"><div class="w-two-thirds-ns w-90 center"><h1>Welcome back! Let's get you signed in.</h1><form hx-post="?back=https%3A%2F%2Ftupalo.com%2Fen%2Fusers%2F6904634" hx-target="#login-error"><div class="flex flex-column w-100 w-50-ns"><label for="email" class="mv1 f6 black-70">Enter your email</label><input type="text" name="email" placeholder="Email" autocomplete="true" class="pa1 mv1"/><label for="password" class="mv1 f6 black-70">Enter your password</label><div class="flex flex-row items-center"><input type="password" name="password" autocomplete="current-password" placeholder="Password" class="pa1 mv1"/><div _="on click
set i to the previous <input/>
if i.type is 'password' then
set i.type to 'text'
set my innerHTML to @data-hide-text
else
set i.type to 'password'
set my innerHTML to @data-show-text
end
" data-hide-text="Hide" data-show-text="Show" class="ml1 pointer f6 black-50">Show</div></div><div class="mb2"><a href="./password/new" hx-target="body" hx-include="[name='email']" class="black-70 f6">Forgot your password?</a></div></div><script src="https://www.google.com/recaptcha/api.js?onload=onRecaptchaLoad&render=explicit" async="" defer=""></script><span><script>
window.recaptchaWidgetId = null;
function onRecaptchaLoad() {
// console.log('onRecaptchaLoad called');
renderRecaptcha();
}
function renderRecaptcha() {
// console.log('renderRecaptcha called. grecaptcha available?', typeof grecaptcha !== 'undefined');
if (typeof grecaptcha === 'undefined' || typeof grecaptcha.render === 'undefined') {
// console.log('grecaptcha or grecaptcha.render is not available yet.');
return;
}
var container = document.getElementById('recaptcha-container');
if (!container) {
// console.log('No recaptcha-container found in the DOM.');
return;
}
var sitekey = container.getAttribute('data-sitekey');
if (!sitekey) {
// console.warn('data-sitekey attribute not found on recaptcha-container.');
return;
}
if (window.recaptchaWidgetId !== null) {
try {
// console.log('Attempting to reset widgetId:', window.recaptchaWidgetId);
grecaptcha.reset(window.recaptchaWidgetId);
// console.log('Widget ' + window.recaptchaWidgetId + ' reset successfully.');
} catch (e) {
// console.warn('Failed to reset reCAPTCHA widget with ID ' + window.recaptchaWidgetId + '. Error:', e);
window.recaptchaWidgetId = null;
}
}
if (window.recaptchaWidgetId === null) {
try {
// console.log('Attempting to render new reCAPTCHA widget in container:', container.id);
window.recaptchaWidgetId = grecaptcha.render(container, {
'sitekey': sitekey
});
// console.log('New reCAPTCHA widget rendered. ID:', window.recaptchaWidgetId);
} catch (e) {
// console.warn('Failed to render new reCAPTCHA widget. Error:', e);
}
}
}
document.addEventListener('htmx:afterSettle', function(event) {
// console.log('htmx:afterSettle detected.');
setTimeout(renderRecaptcha, 100);
});
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', onRecaptchaLoad);
} else {
onRecaptchaLoad();
}
</script></span><span><div id='recaptcha-container' data-sitekey='6LccDmUqAAAAAJ1ObMt2YMeWyW9u4rfaDgp5lwXp'></div></span><div class="flex flex-row mt3 h2_5"><button type="submit" class="ba br2 ph2 pv1 pointer b--black h2_5 bg-tupalo-green ph3 white-90">Sign In</button></div><div class="flex flex-row mt3 h3"><div id="login-error" style="color:red"></div></div></form><div class="mt2"><h2 class="ma0 pa0 mb1">New around here?</h2><a href="./sign_up?back=https%3A%2F%2Ftupalo.com%2Fen%2Fusers%2F6904634" hx-target="body" class="black-70">Register an account and join the community.</a></div></div></div><div class="center flex flex-column justify-center mw_75 bg-white w-100 bt b--black-10 z-max mt3 mt0-ns fixed-ns bottom-0-ns"><div id="footer" class="f6"><div class="pv2-ns pv1 mb2 mid-gray mw8 center flex items-center flex-column flex-row-ns"><div class="pv1 pv0-ns"><a href="https://new.tupalo.biz/hey" class="dib ph1 link hover-black-80 black-60"><span>👋</span><span class="ml2"></span>Contact</a><a href="https://new.tupalo.biz/about" class="dib ph1 link hover-black-80 black-60">About</a><a href="https://new.tupalo.biz/faq" class="dib ph1 link hover-black-80 black-60">Help & FAQ</a><span class="ml3 b"><a href="https://new.tupalo.biz/partners" class="dib ph1 link hover-black-80 black-60">Partners</a></span></div><div class="pv1 pv0-ns"><a rel="nofollow noopener noreferrer" href="/en/api/v5/spot/new"><button class="ba br2 ph2 pv1 pointer b--black bg-tupalo-green ml2 white-90 shadow-tup">Add your business</button></a></div><div class="pv1 pv0-ns flex flex-row ml-auto-ns"></div><div class="pv1 pv0-ns"><a href="https://new.tupalo.biz/terms" class="dib ph1 link hover-black-80 black-60">Terms</a><a href="https://new.tupalo.biz/privacy" class="dib ph1 link hover-black-80 black-60">Privacy</a><a href="/" class="ml2 no-underline dark-gray">© 2025 Tupalo</a></div></div></div></div></div></body></html>