/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/.
 *
 * This Source Code Form is "Incompatible With Secondary Licenses", as
 * defined by the Mozilla Public License, v. 2.0. */

.product {
  margin: 40px auto;
  max-width: 960px;
}

.product > header,
.product .instructions {
  margin: 0 auto;
  max-width: 800px;
  text-align: center;
}

.product h1 {
  margin: 0;
}

.product > header p {
  font-size: var(--font-size-x-large);
  line-height: var(--line-height-comfortable);
}

.product .instructions p {
  font-style: italic;
}

.component {
  display: flex;
  margin: 8px 0;
  border-radius: var(--primary-region-border-radius);
  padding: 16px;
  background-color: var(--primary-region-background-color);
  box-shadow: var(--primary-region-box-shadow);
}

.component.highlight {
  border: 2px solid var(--focused-control-border-color);
}

.component header {
  flex: none;
  margin-right: 16px;
  width: 280px;
}

.component h2 {
  margin: 0;
  font-size: var(--font-size-h3);
  font-weight: normal;
}

.component header ~ div {
  flex: auto;
  margin: 2px 0;
  font-size: var(--font-size-large);
  line-height: var(--line-height-comfortable);
}

.component p {
  margin: 0;
}

.component ul.people {
  display: flex;
  margin: 8px 0 0;
  border-top: 1px solid var(--secondary-region-border-color);
  padding: 8px 0 0;
  color: var(--secondary-region-border-color);
  list-style: none;
}

.component ul.people li {
  margin: 0 16px 0 0;
  padding: 0;
}

.component footer {
  flex: none;
  margin-left: 16px;
}

.component footer:empty {
  display: none;
}
