/* Media queries */
@media (max-width: 1100px) {
  :root { --card-size: min(44vw, 460px); }
}

@media (max-width: 640px) {
  :root {
    --gutter: 1rem;
    --card-size: 84vw;
    --card-gap: 1rem;
  }
  /* The header stays at the top and the cards sit a little above the middle of the space below it,
     closer to the thumb (svh = the screen height with the browser bars showing; the bottom padding
     is what lifts the cards: raise it to move them up more) */
  body {
    min-height: 100vh;
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    padding-bottom: 10svh;
  }
  .card-row { margin-block: auto; }
  .bio-face,
  .card-promo,
  .card-contact { padding: 1.5rem; }
  .icon-btn-next { left: 1.5rem; bottom: 1.5rem; }
  .icon-btn-arrow { right: 1.5rem; bottom: 1.5rem; }
  .work-caption { top: 1.5rem; left: 1.5rem; }
  .work-arrows { top: 1.25rem; right: 1rem; }
  .review-dialog-inner { padding: 1.25rem 1.5rem 1.5rem; }
  .review-dialog-author .testimonial-photo { width: 44px; }
  .review-dialog-text { font-size: 1rem; }
}
