/**
 * @file
 * Grid system definition for the content narrow layout.
 */

/*
 * Media query breakpoints.
 * Processed by postcss/postcss-custom-media.
 */

/* Navigation related breakpoints */

/* Grid related breakpoints */

/* Grid shifts from 6 to 14 columns. */

/* Width of the entire grid maxes out. */

.layout--content-narrow,
.layout--pass--content-narrow > * {
  grid-column: 1 / 7;
  width: 100%;
}

@media (min-width: 768px) {

.layout--content-narrow,
.layout--pass--content-narrow > * {
    grid-column: 2 / 14;
}
  }

@media (min-width: 1024px) {

.layout--content-narrow,
.layout--pass--content-narrow > * {
    grid-column: 3 / 11;
}
  }

/*
  If .layout--content-narrow is nested within any of the following, allocate the appropriate
  amount of columns within its parent .grid-full.
    - .layout--content-narrow class.
    - Element that's inheriting the layout--content-narrow styles from its parent region.
    - .layout--content-medium class.
    - Element that's inheriting the layout--content-medium styles from its parent region.
*/

@media (min-width: 768px) {

.layout--content-narrow .layout--content-narrow,
  .layout--pass--content-narrow > * .layout--content-narrow,
  .layout--content-medium .layout--content-narrow,
  .layout--pass--content-medium > * .layout--content-narrow,
  .layout--content-narrow .layout--pass--content-narrow > *,
  .layout--pass--content-narrow > * .layout--pass--content-narrow > *,
  .layout--content-medium .layout--pass--content-narrow > *,
  .layout--pass--content-medium > * .layout--pass--content-narrow > * {
      grid-column: 1 / 13;
  }
    }

@media (min-width: 1024px) {

.layout--content-narrow .layout--content-narrow,
  .layout--pass--content-narrow > * .layout--content-narrow,
  .layout--content-medium .layout--content-narrow,
  .layout--pass--content-medium > * .layout--content-narrow,
  .layout--content-narrow .layout--pass--content-narrow > *,
  .layout--pass--content-narrow > * .layout--pass--content-narrow > *,
  .layout--content-medium .layout--pass--content-narrow > *,
  .layout--pass--content-medium > * .layout--pass--content-narrow > * {
      grid-column: 1 / 9;
  }
    }

/*
  Special grid-breaking treatment for text-content elements that
  reside in a content-narrow layout.
*/

@media (min-width: 768px) {

.layout--content-narrow.text-content blockquote::before, .layout--pass--content-narrow > *.text-content blockquote::before, .layout--content-narrow .text-content blockquote::before, .layout--pass--content-narrow > * .text-content blockquote::before {
          inset-inline-start: calc(-1 * (var(--grid-col-width) + var(--grid-gap)));
      }
        }

@media (min-width: 768px) {

.layout--content-narrow.text-content blockquote::after, .layout--pass--content-narrow > *.text-content blockquote::after, .layout--content-narrow .text-content blockquote::after, .layout--pass--content-narrow > * .text-content blockquote::after {
          inset-inline-start: calc(-1 * (var(--grid-col-width) + var(--grid-gap)));
          width: var(--sp);
          height: calc(100% - 45px);
          margin-inline-start: 2px;
      }
        }

@media (min-width: 768px) {

.layout--content-narrow.text-content blockquote, .layout--pass--content-narrow > *.text-content blockquote, .layout--content-narrow .text-content blockquote, .layout--pass--content-narrow > * .text-content blockquote {
        width: calc(10 * var(--grid-col-width) + 9 * var(--grid-gap));
        margin-block: var(--sp3);
        padding-inline-start: 0;
    }
      }

@media (min-width: 768px) {

.layout--content-narrow.text-content pre, .layout--pass--content-narrow > *.text-content pre, .layout--content-narrow .text-content pre, .layout--pass--content-narrow > * .text-content pre {
        margin-block: var(--sp3);
    }
      }

@media (min-width: 1024px) {

.layout--content-narrow.text-content pre, .layout--pass--content-narrow > *.text-content pre, .layout--content-narrow .text-content pre, .layout--pass--content-narrow > * .text-content pre {
        width: calc(12 * var(--grid-col-width) + 11 * var(--grid-gap));
        margin-inline-start: calc(-1 * (var(--grid-col-width) + var(--grid-gap)));
    }
      }

/**
 * <pre> and <blockquote> elements should not break containers and overflow
 * into sidebar region when present.
 */

.sidebar-grid .layout--content-narrow.text-content blockquote,
      .sidebar-grid .layout--pass--content-narrow > *.text-content blockquote,
      .sidebar-grid .layout--content-narrow .text-content blockquote,
      .sidebar-grid .layout--pass--content-narrow > * .text-content blockquote,
      .sidebar-grid .layout--content-narrow.text-content pre,
      .sidebar-grid .layout--pass--content-narrow > *.text-content pre,
      .sidebar-grid .layout--content-narrow .text-content pre,
      .sidebar-grid .layout--pass--content-narrow > * .text-content pre {
        width: auto;
      }
