:root {
  --clr--primary--300: hsl(225, 100%, 94%);
  --clr--secondary--700: hsl(245, 75%, 52%);
  --clr--hover--600: hsl(245, 86%, 69%);

  --clr--neutral--200: hsl(225, 100%, 98%);
  --clr--neutral--400: hsl(224, 23%, 55%);
  --clr--neutral--800: hsl(223, 47%, 23%);

  --ff-body: 'Red Hat Display', sans-serif;

  --fw-regular: 500;
  --fw-semi-bold: 700;
  --fw-bold: 900;
}


/* Josh Comeau's CSS Reset to remove default properties.
  1. Use a more-intuitive box-sizing model.
*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

/*
    2. Remove default margin
  */
* {
  margin: 0;
}

/*
    3. Allow percentage-based heights in the application
  */
html,
body {
  height: 100%;
}

/*
    Typographic tweaks!
    4. Add accessible line-height
    5. Improve text rendering
  */
body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

/*
    6. Improve media defaults
  */
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

/*
    7. Remove built-in form typography styles
  */
input,
button,
textarea,
select {
  font: inherit;
}

/*
    8. Avoid text overflows
  */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

body {
  font-family: var(--ff-body);
  font-size: 0.8rem;
  /*the following enlargest the pattern and stops it from repeating*/
  background-image: url(/images/pattern-background-mobile.svg);
  background-color: var(--clr--primary--300);
  background-size: 50rem;
  background-repeat: no-repeat;
  display: grid;

  place-content: center;
}

main {
  width: 377px;
}

.summary {
  padding: 1rem;
}

.order-summary-card {
  background-color: white;
  border-radius: 1.35rem;
  /* to make sure all the borders are curved */
  overflow: hidden;
  display: grid;
  height: 640px;

  text-align: center;
}

h1 {
  margin-top: -10px;
  font-weight: var(--fw-bold);
}

h1, .price-plan{
  color: var(--clr--neutral--800);
}

.summary-content,
.cancel {
  font-size: 1.10rem;
  color: var(--clr--neutral--400);
}

.summary-content {
  padding: 20px 20px 0 20px;
}

.btn {
  text-align: center;
  margin-top: 30px;
}

.button {
  cursor: pointer;
  text-decoration: none;

  width: 320px;
  height: 57px;

  border: 0;
  border-radius: 0.75rem;

  background-color: var(--clr--secondary--700);

  font-size: 1.10rem;
  font-weight: var(--fw-bold);
  color: white;
  box-shadow: 5px 10px 30px var(--clr--neutral--400);
}

.cancel {
  font-weight: var(--fw-bold);
  text-align: center;
  margin: 0 auto 10px auto;
  width: 120px;
  height: 20px;
}

.price {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  justify-content: center;
  align-items: center;

  background-color: var(--clr--neutral--200);
  margin: -0.8rem 1.8rem 0 1.8rem;
  padding: 0.2rem 0 0 0;
  font-size: 1rem;
  border-radius: 0.75rem;
}

.price-music__icon {
  width: 55px;
  height: 55px;
  margin-left: 20px;
}

.item-2 {
  margin-left: -40px;
}

.price-plan,
.price-plan-change {
  font-weight: var(--fw-semi-bold);
}

.price-amount {
  font-size: 1rem;
  color: var(--clr--neutral--400);
}

.attribution {
  text-align: center;
}

/* HOVER STATES */

.button:hover{
  cursor: pointer;
  background-color:var(--clr--hover--600);
}

a:hover{
  cursor: pointer;
  text-decoration: none;
  color: var(--clr--hover--600);
}

.cancel:hover{
  cursor: pointer;
  color: var(--clr--neutral--800);
}