@font-face {
  font-family: 'Roboto Slab';
  src: url('fonts/RobotoSlab.ttf') format('truetype');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

:root {
  color-scheme: light;
  color: #30241d;
  background: #e6a64d;
}

* { box-sizing: border-box; }

body {
  min-height: 100vh;
  margin: 0;
  background: linear-gradient(#ebbd70, #df983e 60%, #d9822e);
}

.page {
  width: min(100% - 2rem, 48rem);
  min-height: 100vh;
  margin: auto;
  padding: clamp(1.5rem, 6vh, 4rem) 0 3rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}

.logo {
  display: block;
  width: clamp(11rem, min(38vw, 38vh), 22rem);
  height: auto;
}

.quote-card {
  width: 100%;
  height: 17rem;
  padding: clamp(1.5rem, 5vw, 3rem);
  overflow: auto;
  display: grid;
  place-items: center;
  text-align: center;
  background: rgba(255, 250, 241, .94);
  border: 2px solid #30241d;
  border-radius: .75rem;
  box-shadow: .5rem .5rem 0 #a85432;
}

.quote-card p {
  margin: 0;
  font: 500 clamp(1.375rem, 3vw, 2rem)/1.4 'Roboto Slab', Georgia, serif;
}

.new-quote {
  display: inline-block;
  padding: .8rem 1.5rem;
  border: 2px solid #30241d;
  border-radius: .5rem;
  background: #d84452;
  color: white;
  font: 700 1rem system-ui, sans-serif;
  text-decoration: none;
}

.new-quote:hover { background: #ad283a; }
.new-quote:focus-visible, footer a:focus-visible { outline: 3px solid #1b718d; outline-offset: 4px; }

footer {
  margin-top: auto;
  font: .9rem system-ui, sans-serif;
  text-align: center;
}

footer a { color: inherit; }

@media (max-width: 600px) {
  .quote-card { height: 19rem; }
}
