:root {
  --page-background: #000000;
  --photo-border: rgba(255, 255, 255, 0.1);
  --photo-shadow: rgba(0, 0, 0, 0.7);
}

* {
  box-sizing: border-box;
}

html,
body {
  min-height: 100%;
  margin: 0;
}

body {
  background: var(--page-background);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.page {
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding: clamp(1.5rem, 6vw, 4.5rem) clamp(1rem, 4vw, 3rem) 3rem;
}

.cat-photo {
  display: block;
  width: min(86vw, 46rem);
  height: auto;
  max-height: 72vh;
  object-fit: contain;
  border-radius: clamp(0.75rem, 2vw, 1.5rem);
  border: 1px solid var(--photo-border);
  box-shadow: 0 1.5rem 3rem var(--photo-shadow);
}

@media (max-width: 480px) {
  .cat-photo {
    width: min(92vw, 28rem);
    max-height: 68vh;
  }
}
