/**
 * @file
 * Is the responsive layout composition.
 *
 * Is intented to set basic layout rules to regions and global blocks.
 * Also add grid common rules.
 */



/**
 * Layout content
 */


/**
 * Grid row
 */
.grid-row {
	padding: 0 1rem;
}
@media all and (min-width: 700px) {
  .grid-row {
  	padding: 0;
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
  }
  .grid-row--12{
    max-width: 1200px;
  }
  .grid-row--10{
    max-width: 1080px;
  }
  .grid-row--8{
    max-width: 858px;
  }
  .grid-row--6{
    max-width: 783px;
  }
}

/**
 * Grid list (we assume grid list has a grid-row has direct parent)
 */
.grid-list {

}
@media all and (min-width: 750px) {
  .grid-list--2,
  .grid-list--3,
  .grid-list--4 {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
  }
  .grid-list--2 > *,
  .grid-list--3 > *,
  .grid-list--4 > * {
  	width: 48%;
  }
}
@media all and (min-width: 900px) {
  .grid-list--3::before,
  .grid-list--4::before {
  	order: 999;
  }
  .grid-list--3::before,
  .grid-list--4::before,
  .grid-list--4::after {
  	content: "";
  	height: 0;
  }
  .grid-list--3 > *,
  .grid-list--3::before {
  	width: 30%;
  }
  .grid-list--4 > *,
  .grid-list--4::before,
  .grid-list--4::after  {
  	width: 23%;
  }
}

/**
 * Vertical spacing - Top
 */
.top-spacing--xs {
 margin-top: .33rem;
}
.top-spacing--xs .section--primary,
.top-spacing--xs .section--primary-light,
.top-spacing--xs .section--secondary-light{
  padding-top: .33rem;
  margin-top: -.33rem;
 }
.top-spacing--s {
 margin-top: .66rem;
}
.top-spacing--s .section--primary,
.top-spacing--s .section--primary-light,
.top-spacing--s .section--secondary-light{
  padding-top: .66rem;
  margin-top: -.66rem;
 }
.top-spacing--m {
 margin-top: 1rem;
}
.top-spacing--m .section--primary,
.top-spacing--m .section--primary-light,
.top-spacing--m .section--secondary-light{
  padding-top: 1rem;
  margin-top: -1rem;
}

.top-spacing--l {
 margin-top: 1.5rem;
}
.top-spacing--xl{
  margin-top: 2.5rem;
 }

.top-spacing--xxl{
  margin-top: 3rem;
 }

.top-spacing--l .section--primary,
.top-spacing--l .section--primary-light,
.top-spacing--l .section--secondary-light {
  padding-top: 1.5rem;
  margin-top: -1.5rem;
 }
.top-spacing--xl .section--primary,
.top-spacing--xl .section--primary-light,
.top-spacing--xl .section--secondary-light{
  padding-top: 2.5rem;
  margin-top: -2.5rem;
 }


.top-spacing--xxl .section--primary,
.top-spacing--xxl .section--primary-light,
.top-spacing--xxl .section--secondary-light{
  padding-top: 3rem;
  margin-top: -3rem;
 }


@media all and (min-width: 750px) {
  .top-spacing--xl {
    margin-top: 3rem;
  }
  .top-spacing--xl .section--primary,
  .top-spacing--xl .section--primary-light,
  .top-spacing--xl .section--secondary-light {
    padding-top: 3rem;
    margin-top: -3rem;
  }
  .top-spacing--xxl {
    margin-top: 6rem;
  }
  .top-spacing--xxl .section--primary,
  .top-spacing--xxl .section--primary-light,
  .top-spacing--xxl .section--secondary-light {
    padding-top: 6rem;
    margin-top: -6rem;
  }
}





/**
 * Vertical spacing - Bottom
 */
.bottom-spacing--xs {
 margin-bottom: .33rem;
}
.bottom-spacing--xs .section--primary,
.bottom-spacing--xs .section--primary-light,
.bottom-spacing--xs .section--secondary-light{
  padding-bottom: .33rem;
  margin-bottom: -.33rem;
 }

.bottom-spacing--s {
 margin-bottom: .66rem;
}
.bottom-spacing--s .section--primary,
.bottom-spacing--s .section--primary-light,
.bottom-spacing--s .section--secondary-light{
  padding-bottom: .66rem;
  margin-bottom: -.66rem;
 }

.bottom-spacing--m {
 margin-bottom: 1rem;
}
.bottom-spacing--m .section--primary,
.bottom-spacing--m .section--primary-light,
.bottom-spacing--m .section--secondary-light{
  padding-bottom: 1rem;
  margin-bottom: -1rem;
 }


.bottom-spacing--l{
  margin-bottom: 1.5rem;
}
.bottom-spacing--xl{
  margin-bottom: 2.5rem;
}

.bottom-spacing--xxl{
  margin-bottom: 3rem;
}

.bottom-spacing--l .section--primary,
.bottom-spacing--l .section--primary-light,
.bottom-spacing--l.section--secondary-light{
  padding-bottom: 1.5rem;
  margin-bottom: -1.5rem
 }

.bottom-spacing--xl .section--primary,
.bottom-spacing--xl .section--primary-light,
.bottom-spacing--xl.section--secondary-light{
  padding-bottom: 2.5rem;
  margin-bottom: -2.5rem
 }

.bottom-spacing--xxl .section--primary,
.bottom-spacing--xxl .section--primary-light,
.bottom-spacing--xxl.section--secondary-light{
  padding-bottom: 3rem;
  margin-bottom: -3rem
 }

@media all and (min-width: 750px) {
  .bottom-spacing--xl {
    margin-bottom: 3rem;
  }
  .bottom-spacing--xl .section--primary,
  .bottom-spacing--xl .section--primary-light,
  .bottom-spacing--xl.section--secondary-light{
    padding-bottom: 3rem;
    margin-bottom: -3rem;
  }
  .bottom-spacing--xxl {
    margin-bottom: 6rem;
  }
  .bottom-spacing .section--primary,
  .bottom-spacing .section--primary-light,
  .bottom-spacing .section--secondary-light {
    padding-top: 6rem;
    margin-bottom: -6rem;
  }
}


/**
 * Custom Layout
 */

 .layout__region,
 .layout{
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.layout--threecol_25_25_50 .paragraph--type--image{
  margin-top: 0;
}

.layout--threecol-section--33-34-33 .layout__region--first{
  padding-right: 1rem;
}
.layout--threecol-section--33-34-33 .layout__region--second{
  padding-right: 1rem;
}


 @media screen and (min-width: 640px) {
  .layout--twocol .layout__region--first,
  .layout--twocol-section .layout__region--first {
    padding-right: 1rem;
  }
  .layout--twocol .layout__region--second,
  .layout--twocol-section .layout__region--second {
    padding-left: 1rem;
  }
  .layout--fourcol-section .card__wrapper--primary-light{
    margin: 1rem;
  }
}

@media screen and (min-width: 1000px) {
  .layout__region,
  .layout{
    margin-top: 0;
    margin-bottom: 0;
  }
  /* .layout--threecol-section--33-34-33 .layout__region--first,
  .layout--threecol-section--33-34-33 .layout__region--second{
    padding-right: 0rem;
  } */
}





