:root {
  --bg: #fbf8ea;
  --teal: #56b5b7;
  --teal-dark: #2d7f88;
  --teal-soft: #a9ddcf;
  --cream: #fff4c8;
  --gold: #e8bd4d;
  --sand: #b99b6c;
  --text: #1f5961;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  min-height: 100vh;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--text);
  background:
    radial-gradient(circle at top, rgba(169, 221, 207, 0.45), transparent 38%),
    linear-gradient(135deg, var(--bg), var(--cream));
  display: grid;
  place-items: center;
  padding: 24px;
}

main {
  width: min(100%, 760px);
  text-align: center;
  padding: 48px 28px;
  border: 1px solid rgba(86, 181, 183, 0.24);
  border-radius: 32px;
  background: rgba(255, 248, 226, 0.72);
  box-shadow: 0 24px 80px rgba(45, 127, 136, 0.12);
  backdrop-filter: blur(8px);
}

.logo {
  width: min(260px, 70vw);
  height: auto;
  display: block;
  margin: 0 auto 28px;
  filter: drop-shadow(0 18px 28px rgba(45, 127, 136, 0.14));
}

h1 {
  font-size: clamp(3rem, 10vw, 6.8rem);
  line-height: 0.9;
  letter-spacing: 0.08em;
  color: var(--teal-dark);
  text-transform: uppercase;
}

.tagline {
  margin-top: 18px;
  font-size: clamp(1rem, 3vw, 1.3rem);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--sand);
}

.gar {
  margin-top: 14px;
  font-size: clamp(1.15rem, 3vw, 1.75rem);
  font-weight: 700;
  color: var(--teal);
}

.spotify-embed {
  width: min(100%, 560px);
  margin: 34px auto 0;
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 18px 40px rgba(45, 127, 136, 0.14);
}

.spotify-embed iframe {
  display: block;
  width: 100%;
  border: 0;
}
