
	/**
 	* @Header
 	* --------------------------------------------------
 	*/
	.s-header {
		align-items: center;
		display: grid;
		grid-template-columns: 1fr auto;
		padding: var(--space-fill-6x);
	}

	.s-header__brand,
	.s-header__contact {
		display: flex;
	}

	.s-header__contact {
		align-items: center;
		justify-content: flex-end;
	}

	.s-header__contact-infos {
		align-items: center;
		display: none;
	}

	.s-logo {
		height: auto;
		width: 200px;
	}

	.s-tel {
		color: var(--color-gray-1);
		font-size: var(--font-size-lg-1);
		font-weight: var(--font-weight-medium);
		margin-right: var(--space-fill-10x);
	}

	.s-nav {
		background: #fff;
		font-size: var(--font-size-md-1);
		height: 100vh;
		opacity: 0;
		padding: var(--space-fill-6x);
		padding-top: var(--space-fill-8x);
		position: fixed;
		right: -100vw;
		top: 0;
		transition: all 0.5s ease;
		width: 100vw;
		z-index: var(--z-index-1);
	}

	.s-nav--expanded {
		opacity: 1;
		right: 0;
	}


	/**
 	* @Hero
 	* --------------------------------------------------
 	*/
	.s-featured {}

	.s-featured__list {
		display: grid;
		grid-gap: var(--space-fill-8x);
		grid-template-columns: repeat(auto-fill, minmax(256px, 1fr));
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.s-featured__item {
		position: relative;
	}

	.s-featured__img {
		border-radius: 4px;
    	display: block;
    	height: auto;
    	max-width: var(--full-width);
    	width: var(--full-width);
	}

	.home .s-featured__img {
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04), 0 8px 16px rgba(0, 0, 0, 0.04), 0 8px 16px rgba(0, 0, 0, 0.08), 0 32px 64px rgba(0, 0, 0, 0.12);
	}

	.s-featured__figure {
		margin: 0;
	}

	.s-featured__caption {
		align-items: center;
		background-color: rgba(48, 43, 59, 0.85);
		border-radius: 0 0 var(--border-radius-md) var(--border-radius-md);
		bottom: 0;
		color: #fff;
		display: flex;
		font-size: var(--font-size-md-1);
		font-weight: var(--font-weight-medium);
		height: var(--space-fill-12x);
		left: 0;
		padding: 0 var(--space-fill-6x);
		position: absolute;
		width: 100%;
	}

	.s-hero {
		padding-top: 64px;
		text-align: center;
	}

	.s-hero .s-heading-2 {
		margin-bottom: var(--space-fill-12x);
	}

	.s-hero__bottom {
		background-color: var(--color-primary);
		height: 200px;
		margin-top: -70px;
		padding-top: 110px;
	}


	/**
 	* @Button
 	* --------------------------------------------------
 	*/
	.s-btn {
		align-items: center;
		background-color: transparent;
		border: none;
		border-radius: var(--border-radius-md);
		color: #000;
		cursor: pointer;
		display: inline-flex;
		font-family: inherit;
		font-size: 1rem;
		font-weight: var(--font-weight-medium);
		justify-content: center;
		line-height: 1;
		margin: 0;
		padding: 0;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
		touch-action: manipulation;
		transition: background-color 0.2s ease-out, color 0.2s ease-out;
		user-select: none;
		white-space: nowrap;
	}

	.s-btn + .s-btn {
		margin-left: 16px;
	}

	.s-btn:focus,
	.s-btn:active:focus {
		outline: none;
		text-decoration: none;
	}

	.s-btn:hover,
	.s-btn:visited {
		text-decoration: none;
	}

    .s-btn:disabled {
		cursor: not-allowed;
        opacity: .6;
    }

	.s-btn--primary {}

	.s-btn--primary:hover,
	.s-btn--primary:active,
	.s-btn--primary:focus {}

	.s-btn--secondary {
		background-color: var(--color-secondary);
		color: #000;
	}

	.s-btn--secondary:hover,
	.s-btn--secondary:active,
	.s-btn--secondary:focus {
		background-color: var(--color-secondary);
		color: #000;
	}

	.s-btn--tertiary {
		background-color: transparent;
		border: var(--border-width-md) solid #fff;
		color: #fff;
	}

	.s-btn--tertiary:hover,
	.s-btn--tertiary:active,
	.s-btn--tertiary:focus {
		background-color: transparent;
		border: var(--border-width-md) solid #fff;
		color: #fff;
	}

	.s-btn--md {
		font-size: var(--font-size-md-1);
		height: var(--button-size-md);
		padding: 0 var(--space-fill-4x);
	}

	.s-btn--lg {
		font-size: var(--font-size-md-2);
		height: var(--button-size-lg);
		padding: 0 var(--space-fill-6x);
	}

	.s-link--primary,
	.s-link--primary:hover {
		color: var(--color-primary);
	}

	.s-link--secondary,
	.s-link--secondary:hover {
		color: var(--color-secondary);
	}

	.s-btn--link {
		color: var(--color-secondary);
		font-size: var(--font-size-md-1);
		padding: var(--space-fill-base) 0;
	}

	.s-btn--link:hover,
	.s-btn--link:active,
	.s-btn--link:focus {
		color: var(--color-secondary);
	}

	.s-btn__label {
		align-items: center;
		align-self: stretch;
		display: inline-flex;
	}

	.s-btn__icon + .s-btn__label,
	.s-btn__label + .s-btn__icon {
		margin-left: var(--space-fill-2x);
	}


	/**
 	* @Heading
 	* --------------------------------------------------
 	*/
	.s-heading-1 {
		font-size: var(--font-size-xl-1);
		font-weight: var(--font-weight-medium);
		letter-spacing: -0.0375em;
		line-height: calc(var(--font-size-xl-1) * 1.25);
	}

	.s-heading-2 {
		font-size: var(--font-size-lg-2);
		font-weight: var(--font-weight-medium);
		letter-spacing: -0.025em;
		line-height: calc(var(--font-size-lg-2) * 1.3);
	}

	.s-heading-3 {
		font-size: var(--font-size-lg-1);
		font-weight: var(--font-weight-medium);
		letter-spacing: -0.0125em;
		line-height: calc(var(--font-size-lg-1) * 1.35);
	}

	.s-heading-4 {
		font-size: var(--font-size-md-2);
		font-weight: var(--font-weight-medium);
		line-height: calc(var(--font-size-md-2) * 1.4);
	}

	.s-heading-5 {
		font-size: var(--font-size-md-1);
		font-weight: var(--font-weight-medium);
		line-height: calc(var(--font-size-md-1) * 1.45);
	}

	.s-heading-6 {
		font-size: var(--font-size-sm-2);
		font-weight: var(--font-weight-medium);
		line-height: calc(var(--font-size-sm-2) * 1.5);
	}

	.s-overline {
		color: var(--color-gray-2);
		display: inline-block;
		font-size: var(--font-size-md-1);
		font-weight: var(--font-weight-medium);
		margin-bottom: var(--space-fill-3x);
		text-transform: uppercase;
	}

	.s-text-lg {
		font-size: var(--font-size-lg-1);
	}


	/**
 	* @Main
 	* --------------------------------------------------
 	*/
	.s-main {
		padding-bottom: var(--space-fill-30x);
	}


	/**
 	* @Lists
 	* --------------------------------------------------
 	*/
	.s-check-list {
		list-style: none;
		padding: var(--space-fill-10x) 0 0 0;
	}

	.s-check-list__item {
		align-items: center;
		color: var(--color-gray-1);
		display: flex;
		line-height: var(--line-height-normal);
		margin-bottom: var(--space-fill-3x);
		min-height: var(--space-fill-6x);
		padding-left: var(--space-fill-8x);
		position: relative;
	}

	.s-check-list__item:before {
		background: url(../img/icon-check.svg) no-repeat left center;
		content: "";
		height: var(--full-height);
		left: 0;
		position: absolute;
		top: 0;
		width: var(--space-fill-6x);
	}


	/**
 	* @Footer
 	* --------------------------------------------------
 	*/
	.s-footer {
		background-color: var(--color-bg-secondary);
		color: #fff;
		padding: var(--space-fill-24x) 0;
	}


	/**
 	* @Grid
 	* --------------------------------------------------
 	*/
	.s-grid {
		display: grid;
		grid-column-gap: var(--space-fill-8x);
		grid-row-gap: var(--space-fill-8x);
		grid-template-columns: 1fr;
	}

	.s-grid-col {
		grid-column: 1;
	}

	@media (min-width: 768px) {
		.s-grid {
			grid-template-columns: repeat(8, 1fr);
		}

		.s-grid-col-1-md {
			grid-column: span 1;
		}

		.s-grid-col-2-md {
			grid-column: span 2;
		}

		.s-grid-col-3-md {
			grid-column: span 3;
		}

		.s-grid-col-4-md {
			grid-column: span 4;
		}

		.s-grid-col-5-md {
			grid-column: span 5;
		}

		.s-grid-col-6-md {
			grid-column: span 6;
		}

		.s-grid-col-7-md {
			grid-column: span 7;
		}

		.s-grid-col-8-md {
			grid-column: span 8;
		}

	}

	@media (min-width: 1200px) {
		.s-grid {
			grid-template-columns: repeat(12, 1fr);
		}

		.s-grid-col-1-lg {
			grid-column: span 1;
		}

		.s-grid-col-2-lg {
			grid-column: span 2;
		}

		.s-grid-col-3-lg {
			grid-column: span 3;
		}

		.s-grid-col-4-lg {
			grid-column: span 4;
		}

		.s-grid-col-5-lg {
			grid-column: span 5;
		}

		.s-grid-col-6-lg {
			grid-column: span 6;
		}

		.s-grid-col-7-lg {
			grid-column: span 7;
		}

		.s-grid-col-8-lg {
			grid-column: span 8;
		}

		.s-grid-col-9-lg {
			grid-column: span 9;
		}

		.s-grid-col-10-lg {
			grid-column: span 10;
		}

		.s-grid-col-11-lg {
			grid-column: span 11;
		}

		.s-grid-col-12-lg {
			grid-column: span 12;
		}
	}

 	.s-container {
 		margin: 0 auto;
 		max-width: 1170px;
		padding-left: var(--space-fill-8x);
		padding-right: var(--space-fill-8x);
 	}

	.s-container-fluid {
		padding-left: var(--space-fill-8x);
		padding-right: var(--space-fill-8x);
	}

	@media (min-width: 768px) {

		.s-container-fluid {
			padding-left: var(--space-fill-8x);
			padding-right: var(--space-fill-8x);
		}

	}

	@media (min-width: 1200px) {

		.s-container-fluid {
			padding-left: var(--space-fill-12x);
			padding-right: var(--space-fill-12x);
		}

	}


	@media screen and (min-width: 320px) {
		.s-text-lg {
			font-size: calc(16px + 8 * ((100vw - 320px) / 1600));
		}
	}


	/**
	* @Helper classes
	* --------------------------------------------------
	*/
	.sr-only {
		border: 0;
		clip: rect(0, 0, 0, 0);
		clip-path: inset(50%);
		height: 1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		white-space: nowrap;
		width: 1px;
	}

	.sr-only-focusable:active,
	.sr-only-focusable:focus {
		clip: auto;
		clip-path: none;
		height: auto;
		overflow: visible;
		position: static;
		white-space: normal;
		width: auto;
	}

	.text-ellipsis {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
		word-break: break-all;
		word-wrap: break-word;
	}

	.imgr {
		background-repeat: no-repeat;
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
	} /* @INFO: classe para image replacement */

	.is-hidden {
		display: none !important;
		visibility: hidden;
	} /* @INFO: esconde de leitores de tela e browsers */

	/**/

	.u-text-left {
		text-align: left;
	}

	.u-text-center {
		text-align: center;
	}

	.u-text-right {
		text-align: right;
	}

	/**/

	.u-full-height {
		height: var(--full-height);
	}

	.u-full-width {
		width: var(--full-width);
	}

	/**/


	/* Padding Bottom */
	.u-pb-base {
		padding-bottom: var(--space-fill-base);
	}

	.u-pb-2x {
		padding-bottom: var(--space-fill-2x);
	}

	.u-pb-3x {
		padding-bottom: var(--space-fill-3x);
	}

	.u-pb-4x {
		padding-bottom: var(--space-fill-4x);
	}

	.u-pb-6x {
		padding-bottom: var(--space-fill-6x);
	}

	.u-pb-8x {
		padding-bottom: var(--space-fill-8x);
	}

	.u-pb-10x {
		padding-bottom: var(--space-fill-10x);
	}

	.u-pb-12x {
		padding-bottom: var(--space-fill-12x);
	}

	.u-pb-16x {
		padding-bottom: var(--space-fill-16x);
	}

	.u-pb-18x {
		padding-bottom: var(--space-fill-18x);
	}

	.u-pb-24x {
		padding-bottom: var(--space-fill-24x);
	}

	.u-pb-30x {
		padding-bottom: var(--space-fill-30x);
	}

	.u-pb-40x {
		padding-bottom: var(--space-fill-40x);
	}

	.u-pt-base {
		padding-top: var(--space-fill-base);
	}


	/* Padding Left */
	.u-pl-2x {
		padding-left: var(--space-fill-2x);
	}

	.u-pl-3x {
		padding-left: var(--space-fill-3x);
	}

	.u-pl-4x {
		padding-left: var(--space-fill-4x);
	}

	.u-pl-6x {
		padding-left: var(--space-fill-6x);
	}

	.u-pl-8x {
		padding-left: var(--space-fill-8x);
	}

	.u-pl-10x {
		padding-left: var(--space-fill-10x);
	}

	.u-pl-12x {
		padding-left: var(--space-fill-12x);
	}

	.u-pl-16x {
		padding-left: var(--space-fill-16x);
	}

	.u-pl-18x {
		padding-left: var(--space-fill-18x);
	}

	.u-pl-24x {
		padding-left: var(--space-fill-24x);
	}

	.u-pl-30x {
		padding-left: var(--space-fill-30x);
	}

	.u-pl-40x {
		padding-left: var(--space-fill-40x);
	}


	/* Padding Right */
	.u-pr-base {
		padding-right: var(--space-fill-base);
	}

	.u-pr-2x {
		padding-right: var(--space-fill-2x);
	}

	.u-pr-3x {
		padding-right: var(--space-fill-3x);
	}

	.u-pr-4x {
		padding-right: var(--space-fill-4x);
	}

	.u-pr-6x {
		padding-right: var(--space-fill-6x);
	}

	.u-pr-8x {
		padding-right: var(--space-fill-8x);
	}

	.u-pr-10x {
		padding-right: var(--space-fill-10x);
	}

	.u-pr-12x {
		padding-right: var(--space-fill-12x);
	}

	.u-pr-16x {
		padding-right: var(--space-fill-16x);
	}

	.u-pr-18x {
		padding-right: var(--space-fill-18x);
	}

	.u-pr-24x {
		padding-right: var(--space-fill-24x);
	}

	.u-pr-30x {
		padding-right: var(--space-fill-30x);
	}

	.u-pr-40x {
		padding-right: var(--space-fill-40x);
	}


	/* Padding Top */
	.u-pt-base {
		padding-top: var(--space-fill-base);
	}

	.u-pt-2x {
		padding-top: var(--space-fill-2x);
	}

	.u-pt-3x {
		padding-top: var(--space-fill-3x);
	}

	.u-pt-4x {
		padding-top: var(--space-fill-4x);
	}

	.u-pt-6x {
		padding-top: var(--space-fill-6x);
	}

	.u-pt-8x {
		padding-top: var(--space-fill-8x);
	}

	.u-pt-10x {
		padding-top: var(--space-fill-10x);
	}

	.u-pt-12x {
		padding-top: var(--space-fill-12x);
	}

	.u-pt-16x {
		padding-top: var(--space-fill-16x);
	}

	.u-pt-18x {
		padding-top: var(--space-fill-18x);
	}

	.u-pt-24x {
		padding-top: var(--space-fill-24x);
	}

	.u-pt-30x {
		padding-top: var(--space-fill-30x);
	}

	.u-pt-40x {
		padding-top: var(--space-fill-40x);
	}


	/* Padding Bottom & Top */
	.u-py-base {
		padding-bottom: var(--space-fill-base);
		padding-top: var(--space-fill-base);
	}

	.u-py-2x {
		padding-bottom: var(--space-fill-2x);
		padding-top: var(--space-fill-2x);
	}

	.u-py-3x {
		padding-bottom: var(--space-fill-3x);
		padding-top: var(--space-fill-3x);
	}

	.u-py-4x {
		padding-bottom: var(--space-fill-4x);
		padding-top: var(--space-fill-4x);
	}

	.u-py-6x {
		padding-bottom: var(--space-fill-6x);
		padding-top: var(--space-fill-6x);
	}

	.u-py-8x {
		padding-bottom: var(--space-fill-8x);
		padding-top: var(--space-fill-8x);
	}

	.u-py-10x {
		padding-bottom: var(--space-fill-10x);
		padding-top: var(--space-fill-10x);
	}

	.u-py-12x {
		padding-bottom: var(--space-fill-12x);
		padding-top: var(--space-fill-12x);
	}

	.u-py-16x {
		padding-bottom: var(--space-fill-16x);
		padding-top: var(--space-fill-16x);
	}

	.u-py-18x {
		padding-bottom: var(--space-fill-18x);
		padding-top: var(--space-fill-18x);
	}

	.u-py-24x {
		padding-bottom: var(--space-fill-24x);
		padding-top: var(--space-fill-24x);
	}

	.u-py-30x {
		padding-bottom: var(--space-fill-30x);
		padding-top: var(--space-fill-30x);
		/*
		padding-bottom: 12.75vh;
		padding-top: 12.75vh;
		*/
	}

	.u-py-40x {
		padding-bottom: var(--space-fill-40x);
		padding-top: var(--space-fill-40x);
	}


	/* Padding Left & Right */
	.u-px-base {
		padding-left: var(--space-fill-base);
		padding-right: var(--space-fill-base);
	}

	.u-px-2x {
		padding-left: var(--space-fill-2x);
		padding-right: var(--space-fill-2x);
	}

	.u-px-3x {
		padding-left: var(--space-fill-3x);
		padding-right: var(--space-fill-3x);
	}

	.u-px-4x {
		padding-left: var(--space-fill-4x);
		padding-right: var(--space-fill-4x);
	}

	.u-px-6x {
		padding-left: var(--space-fill-6x);
		padding-right: var(--space-fill-6x);
	}

	.u-px-8x {
		padding-left: var(--space-fill-8x);
		padding-right: var(--space-fill-8x);
	}

	.u-px-10x {
		padding-left: var(--space-fill-10x);
		padding-right: var(--space-fill-10x);
	}

	.u-px-12x {
		padding-left: var(--space-fill-12x);
		padding-right: var(--space-fill-12x);
	}

	.u-px-16x {
		padding-left: var(--space-fill-16x);
		padding-right: var(--space-fill-16x);
	}

	.u-px-18x {
		padding-left: var(--space-fill-18x);
		padding-right: var(--space-fill-18x);
	}

	.u-px-24x {
		padding-left: var(--space-fill-24x);
		padding-right: var(--space-fill-24x);
	}

	.u-px-30x {
		padding-left: var(--space-fill-30x);
		padding-right: var(--space-fill-30x);
	}

	.u-px-40x {
		padding-left: var(--space-fill-40x);
		padding-right: var(--space-fill-40x);
	}


	/**/

	.u-img-responsive {
		height: auto;
    	max-width: var(--full-width);
    	width: var(--full-width);
	}

	/**/

	.u-display-block {
		display: block;
	}

	.u-overflow-h {
		overflow: hidden;
	}

	.u-float-top-right {
		position: absolute;
		right: 0;
		top: 0;
	}

	.s-item-2,
	.s-item-3 {
		display: none;
	}


	/**
 	* @Responsive
 	* --------------------------------------------------
 	*/
	@media (min-width: 608px) {

		.s-item-2 {
			display: block;
		}

	}

	@media (min-width: 768px) {

		.s-header {
			padding: var(--space-fill-12x);
		}

		.s-header__contact-infos {
			display: flex;
		}

		.u-hidden-md-up {
			display: none;
		}

	}

	@media (min-width: 896px) {

		.s-item-3 {
			display: block;
		}

	}

