@font-face {
  font-family: "NGA";
  src: url("fonts/NGA-Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: fallback;
}

@font-face {
  font-family: "NGA";
  src: url("fonts/NGA-Bold.woff2") format("woff2");
  font-weight: bold;
  font-style: normal;
  font-display: fallback;
}

@font-face {
  font-family: "NGA";
  src: url("fonts/NGA-RegularItalic.woff2") format("woff2");
  font-weight: normal;
  font-style: italic;
  font-display: fallback;
}

@font-face {
  font-family: "NGA";
  src: url("fonts/NGA-BoldItalic.woff2") format("woff2");
  font-weight: bold;
  font-style: italic;
  font-display: fallback;
}

@font-face {
  font-family: "NGA Condensed";
  src: url("fonts/NGACond-Bold.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: fallback;
}

@font-face {
  font-family: "NGA Condensed";
  src: url("fonts/NGACond-BoldItalic.woff2") format("woff2");
  font-weight: normal;
  font-style: italic;
  font-display: fallback;
}

/*
	Improved screen reader only CSS class
	@author Gaël Poupard
		@note Based on Yahoo!'s technique
		@author Thierry Koblentz
		@see https://www.cssmojo.com/hide-content-from-sighted-users/
	* 1.
		@note `clip` is deprecated but works everywhere
		@see https://developer.mozilla.org/en-US/docs/Web/CSS/clip
	* 2.
		@note `clip-path` is the future-proof version, but not very well supported yet
		@see https://developer.mozilla.org/en-US/docs/Web/CSS/clip-path
		@see http://caniuse.com/#search=clip-path
		@author Yvain Liechti
		@see https://twitter.com/ryuran78/status/778943389819604992
	* 3.
		@note preventing text to be condensed
		author J. Renée Beach
		@see https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
		@note Drupal 8 goes with word-wrap: normal instead
		@see https://www.drupal.org/node/2045151
		@see http://cgit.drupalcode.org/drupal/commit/?id=5b847ea
	* 4.
		@note !important is important
		@note Obviously you wanna hide something
		@author Harry Roberts
		@see https://csswizardry.com/2016/05/the-importance-of-important/
*/

.sr-only {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  /* 1 */
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  /* 2 */
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
  /* 3 */
}

/*
	Use in conjunction with .sr-only to only display content when it's focused.
	@note Useful for skip links 
	@see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
	@note Based on a HTML5 Boilerplate technique, included in Bootstrap
	@note Fixed a bug with position: static on iOS 10.0.2 + VoiceOver
		@author Sylvain Pigeard
		@see https://github.com/twbs/bootstrap/issues/20732
*/
.sr-only-focusable:focus,
.sr-only-focusable:active {
  clip: auto !important;
  -webkit-clip-path: none !important;
  clip-path: none !important;
  height: auto !important;
  margin: auto !important;
  overflow: visible !important;
  width: auto !important;
  white-space: normal !important;
}

body {
  margin-left: 1rem;
  margin-right: 1rem;
  padding-top: 1rem;
  font-family: NGA, Arial, Helvetica, sans-serif;
  font-size: 1rem;
  font-weight: 400;

  @media screen and (min-width: 1024px) {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    margin-left: 2.5rem;
    margin-right: 2.5rem;
  }
}

a {
  color: black;
}

header {
  margin-bottom: 2rem;

  @media screen and (min-width: 1024px) {
    display: grid;
    grid-template-columns: subgrid;
    grid-column: span 12;
  }
}

.page-heading {
  margin: 0;
  font-family: "NGA Condensed", Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
  font-size: 4rem;
  font-weight: 400;
  line-height: 1;

  a {
    text-decoration: none;
    /* color: black; */
  }

  @media screen and (min-width: 1024px) {
    grid-column: span 6;
    font-size: 5rem;
  }
}

.pre-title {
  font-size: 1.5rem;

  @media screen and (min-width: 1024px) {
    font-size: 2rem;
  }
}

.description {
  padding-top: 2rem;

  @media screen and (min-width: 1024px) {
    grid-column: 8 / span 5;
  }
}

.main {
  margin-bottom: 2rem;

  @media screen and (min-width: 1024px) {
    display: grid;
    grid-template-columns: subgrid;
    grid-column: span 12;
  }
}

/* ///////////////////
Form 
////////////////// */

.caption-form {
  margin-bottom: 1rem;

  @media screen and (min-width: 1024px) {
    grid-column: span 12;
  }
}

.caption-form__input-box {
  display: flex;
  justify-content: space-between;
  height: 6rem;
  width: 100%;
  border: solid black 1px;
}

.caption-form__input {
  width: 66%;
  padding: 2rem;
  font-size: 2.5rem;
  border: none;

}

.caption-form__input::placeholder {
  font-weight: 400;
  color: #AAAAAA;
}

.caption-form__submit-button {
  padding-right: 2rem;
  background-color: transparent;
  font-size: 2rem;
  border: none;
  cursor: pointer;
}

.approval-statement {
  margin-top: 2rem;
  margin-bottom: 3rem;
  font-style: italic;
}

/* ///////////////////
Results
////////////////// */

.results {
  @media screen and (min-width: 1024px) {
    display: grid;
    grid-template-columns: subgrid;
    grid-column: span 12;
  }
}

.results__h2 {
  margin: 0;
  font-size: 1.5rem;
}

.usage {
  margin-top: 0;
  font-size: 0.875rem;
  font-weight: 400;
  /* font-style: italic; */
  /* color: rgb(125, 125, 125); */
}

.captions {
  @media screen and (min-width: 1024px) {
    grid-column: span 6;
  }
}

.caption {
  margin-bottom: 2rem;
  padding: 1rem;
  background-color: rgb(214, 223, 220);
}

.key-data {
  @media screen and (min-width: 1024px) {
    grid-column: 8 / span 5;
  }
}

.key-data__dl-entry {
  display: flex;
  padding-bottom: 0.5rem;
  border-bottom: solid black 0.5px;
}

.key-data__dl-entry+.key-data__dl-entry {
  margin-top: 0.5rem;
}

.key-data__dt,
.key-data__dd {
  margin: 0;
  width: 50%;
}

.key-data__dt {
  padding-right: 1.5rem;
}

.artwork-image {
  @media screen and (min-width: 1024px) {
    grid-column: 8 / span 3;
    width: 100%;
  }
}

.artwork-image__image {
  width: 100%;
  margin-top: 1rem;
}

/* ///////////////////
Footer
////////////////// */

footer {
  @media screen and (min-width: 1024px) {
    grid-column: span 12;
  }
}