
html, body { height: 100%; }
body {
  background: transparent;
  color: #000;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12pt;
  margin: 0;
  padding: 20px;
  line-height: 1.4;
  position: relative;
  overflow-x: hidden;
}
a { color: blue; text-decoration: underline; }
nav {
  display: inline-flex;
  width: fit-content;
  background: rgba(255,255,255,0.85);
  padding: 6px 10px;
  margin: 6px 0 12px 0;
  position: relative;
  z-index: 2;
}
nav span.current { color: black; text-decoration: none; cursor: default; padding-right: 12px; }
nav a { margin-right: 12px; }
p, li, label, footer, form, h1, h2, h3, h4, h5, h6 {
  display: inline-block;
  width: fit-content;
  background: rgba(255,255,255,0.85);
  padding: 6px 10px;
  margin: 6px 0 12px 0;
}
.bg-photo {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 300px;
  height: 300px;
  background: url('assets/photo.png') center/cover no-repeat;
  z-index: 0;
  pointer-events: none;
}
.bg-side {
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  aspect-ratio: 1 / 1;
  background-image: url('assets/side.png');
  background-repeat: no-repeat;
  background-position: right center;
  background-size: contain;
  z-index: 0;
  pointer-events: none;
}
.bg-overlay {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 300px;
  height: 300px;
  z-index: 3;
  pointer-events: auto;
  background: url('assets/overlay.png') center/cover no-repeat;
}
main, section, header {
  position: relative;
  z-index: 2;
  background: transparent;
  max-width: 780px;
}
footer { position: relative; z-index: 2; }
form {
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,0.85);
}
@media (max-width: 420px) {
  form { flex-wrap: wrap; }
  input[type="email"], button.linky { flex: 1 1 100%; }
}
input[type="email"] {
  flex: 1 1 auto;
  padding: 4px 8px;
  border: 1px solid #000;
  background: #fff;
  outline: none;
  width: clamp(250px, 40vw, 480px);
}
button.linky {
  background: none;
  border: none;
  color: #000;
  text-decoration: none;
  cursor: default;
  padding: 0;
  white-space: nowrap;
}
button.linky.enabled { color: blue; text-decoration: underline; cursor: pointer; }
.wrapper {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 2;
  background: transparent;
}
main { flex: 1; }
