/**
 * FRAMEBOX
 * This stylesheet is exclusively for use within DAC frameboxes.
 */

 :root {
  --headline-font-family: Google Sans, Noto Sans, Noto Sans JP, Noto Sans KR,
    Noto Naskh Arabic, Noto Sans Thai, Noto Sans Hebrew, Noto Sans Bengali,
    sans-serif;
}

/**
 * GRID
 */
.dac-container {
  padding: 0 1rem;
}

.dac-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -1rem;
}

.dac-row-no-margin {
  margin: 0;
}

.dac-row-no-margin .dac-col {
  padding: 0;
}

.dac-col {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 0px;
  flex: 1 0 0;
  max-width: 100%;
  min-height: 1px;
  padding: 0 1rem;
  position: relative;
  width: 100%;
}

.dac-col--6 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
}

.dac-col--12 {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
}

@media screen and (min-width: 721px) {
  .dac-col--md-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }

  .dac-grid-columns-md-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 32px;
  }
}

/**
 * PIXEL
 */
.dac-pixel-frame {
  background: transparent url("/images/styles/device_pixel_blank_port_span5.png") no-repeat scroll top left;
  background-size: contain;
  margin: 32px auto 0;
  max-width: 280px;
  min-width: 250px;
}

.dac-pixel-frame-content {
  display: block;
  padding: 20% 10%;
  position: relative;
}

.dac-pixel-frame-image {
  display: block;
  overflow: hidden;
  /* Padding forces the container to 9:16 ratio */
  padding-bottom: 177.78%;
  position: relative;
}

.dac-pixel-frame-image img {
  bottom: 0;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.dac-pixel-frame-label {
  font-style: italic;
  text-align: center;
}

/**
 * FORMS
 */
.dac-field,
.dac-field-group {
  margin: 0 0 2rem;
}

.dac-label-description {
  color: #5F6368;
  display: block;
  margin: 0 0 16px 30px;
}

.dac-form label {
  color: #073042;
  font: 500 18px/24px var(--headline-font-family);
  margin-bottom: 16px;
}

.dac-checkbox label {
  font-size: 16px;
}

.dac-checkbox {
  margin: .5rem 0 0;
}

.dac-form-error,
.dac-form-required {
  color: #d50000;
}

.dac-form input:not([type]),
.dac-form input[type='email'],
.dac-form input[type='tel'],
.dac-form input[type='text'],
.dac-form input[type='url'],
.dac-form select {
  width: 100%;
}

.dac-form-before-submit {
  display: block;
}

.dac-form-after-submit {
  display: none;
}

.dac-form-error {
  display: none;
}

.dac-form-failed .dac-form-error {
  display: inline-block;
  margin: 0 .5em;
}

.dac-form-submitted .dac-form-before-submit {
  display: none;
}

.dac-form-submitted .dac-form-after-submit {
  display: block;
}

.dac-recaptcha-invalid {
  display: none;
}

.dac-form-recaptcha-invalid .dac-recaptcha-invalid {
  display: inline;
}

.dac-legend {
  font: 500 18px/28px var(--headline-font-family);
}

.dac-form-info {
  color: #5F6368;
  font: 700 14px/21px var(--headline-font-family);
}

/**
 * SUCCESS GRAPHIC
 */
.dac-form-submitted > :not(.dac-form-after-submit) {
  display: none;
}

/**
 * Force the disabled background color on buttons, even in :hover state, because
 * this isn't handled by the core DevSite css.
 */
button:disabled,
button:disabled:active,
button:disabled:hover,
.button:disabled,
.button:disabled:active,
.button:disabled:hover {
  background-color: #ddd;
  -webkit-box-shadow: none;
  box-shadow: none;
}

/**
 * HELPERS
 */
.dac-partner-gif {
  display: block;
  max-height: 400px;
}

.dac-text-center {
  text-align: center;
}

.dac-container-centered {
  margin: auto;
}

.dac-container-narrow {
  max-width: 610px;
}

.dac-framebox-hero-heading {
  color: #073042;
  font: 600 32px/40px var(--headline-font-family);
}

.dac-framebox-hero-padding {
  padding-bottom: 40px;
}

.dac-privacy-framebox-hero-heading {
  color: #073042;
  font: 400 32px/40px var(--headline-font-family);
}