.disabled > * {
  pointer-events: none;
}

.wrapper {
  /* 7 columns. */
  grid-template-columns: 1fr 1fr 1fr 8fr 1fr 1fr 1fr;
  /* 5 rows. */
  grid-template-rows: minmax(min-content, max-content) minmax(min-content, max-content) minmax(min-content, max-content) minmax(min-content, max-content) minmax(min-content, max-content);
}

#messageWrapper {
  position: relative; /* for result */

  grid-column: 1 / span 7;
  grid-row: 2 / span 1;

  padding-top: 0;
  padding-bottom: 0;
  min-height: 2rem;

  display: flex;
  align-items: center;
  justify-content: center;
}

form#send {
  grid-row: 1;
}

#contactW, #pleaseW {
  grid-column: 1 / span 7;
  grid-row: 3 / span 1;

  padding-top: 0;
  width: 100%;

  display: flex;
}

#contactW {
  flex-direction: column;
  align-items: center;
}

#pleaseW {
  margin-top: 1rem;
  justify-content: center;
}

div.msgW {
  width: 100%;
  max-width: 34rem;
  display: grid;
  grid-gap: 0.3rem;
  /* 1 column. */
  grid-template-columns: auto;
  /* 8 rows. */
  grid-template-rows: 0 2rem 2rem 2rem 2rem 2rem minmax(8rem, auto) 3.4rem 3rem;
}

.headerRow {
  grid-column: 1 / span 1;

  margin-top: auto;
  margin-bottom: 0;
}

div.messageRow {
  grid-column: 1 / span 1;
  display: flex;
}

#sendButton {
  margin-top: 0.2rem;
  margin-bottom: 0.2rem;
  grid-column: 1 / span 1;
}

#sendButton.down {
  background-color: var(--color-emphasis-border);
}

#msg {
  resize: vertical;
  min-height: 8rem;
}

#socialWrapper {
  grid-column: 1 / span 7;
  grid-row: 5 / span 1;

  margin-top: 1rem;
}

#twitterImg {
  border: 0.12rem solid var(--color-primary-border);
  background-color: var(--color-primary-text);
  height: 2rem;
  width: 2rem;
  margin-bottom: 0;
}

#faqW {
  grid-column: 1 / span 7;
  grid-row: 4 / span 1;

  display: flex;
  justify-content: center;
}

#faqW > div {
  width: 100%;
  max-width: 34rem;
  display: flex;
}

div#helloWrapper {
  grid-column: 3 / span 3;
  grid-row: 4 / span 1;

  margin-top: 0;
  padding: 0;
}

#hello {
  font-size: 1.5rem;
  margin-top: 2rem;
  margin-right: 2rem;
}

.social {
  font-size: 0.95rem;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}

#privacy {
  font-size: 0.9rem;

  display: flex;
  align-items: center;
  flex-direction: column;
}

#privacy > div {
  text-align: center;
}

#ttButton {
  background-color: var(--color-primary-light);
}

#studentHint {
  margin-bottom: 1rem;
  line-height: 1.5;
}

#pleaseW.retracted {
  display: none;
}
