/* ==================================================
   Basic Styles
================================================== */

@font-face {
	font-family: "Flama-Basic";
	src: url("../fonts/Flama-Basic.otf") format("opentype");
}

@font-face {
	font-family: "Flama-Bold";
	src: url("../fonts/Flama-Bold.otf") format("opentype");
}

@font-face {
	font-family: "Flama-Book";
	src: url("../fonts/Flama-Book.otf") format("opentype");
}

@font-face {
	font-family: "Flama-Light";
	src: url("../fonts/Flama-Light.otf") format("opentype");
}

@font-face {
	font-family: "Flama-Medium";
	src: url("../fonts/Flama-Medium.otf") format("opentype");
}

@font-face {
	font-family: "Flama-Semibold";
	src: url("../fonts/Flama-Semibold.otf") format("opentype");
}

@font-face {
	font-family: "Flama-Thin";
	src: url("../fonts/Flama-Thin.otf") format("opentype");
}

@font-face {
	font-family: "Flama-Ultralight";
	src: url("../fonts/Flama-Ultralight.otf") format("opentype");
}


html, body {
	font-family: 'Flama-Basic', sans-serif;
	height: 100%;
	margin: 0;
}

html, hmtl a {
	width: 100%;
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}


.margin5 {
	margin: 0 0 5px 0;	
}
.margin10 {
	margin: 0 0 10px 0;	
}
.margin15 {
	margin: 0 0 15px 0;	
}
.margin20 {
	margin: 0 0 20px 0;	
}
.margin30 {
	margin: 0 0 30px 0;	
}
.margin40 {
	margin: 0 0 40px 0;	
}
.margin50 {
	margin: 0 0 50px 0;	
}
.margin60 {
	margin: 0 0 60px 0;	
}
.margin80 {
	margin: 0 0 80px 0;	
}
.margin100 {
	margin: 0 0 100px 0;	
}

.margin-mobile-5, .margin-mobile-10, .margin-mobile-20, .margin-mobile-30, .margin-mobile-40, .margin-mobile-60, .margin-mobile-80 {
	margin: 0;	
}

.hr-01 {
  	border-top: 1px solid rgba(0,0,0,0.7);
	margin: 10px 0;	
}
.hr-02 {
  	border-top: 3px dotted #575757;
	margin: 10px 0;	
}
.hr-03 {
  	border-top: 1px solid rgba(0,0,0,0.2);
	margin: 10px 0;	
}
.hr-04 {
  	border-top: 5px solid rgba(0,0,0,0.1);
	margin: 20px 0;	
}


.strong-01 {
	font-weight: 500!important;
}
.strong-02 {
	font-weight: 600!important;
}
.strong-03 {
	font-weight: 700!important;
}
.strong-04 {
	font-size: 18px;
	font-weight: 700;
}

.color-01 {
	color: #fff;
}
.color-02 {
	color: #ccc;
}
.color-03 {
	color: #999;
}

.center {
	text-align: center!important;
}

/* ==================================================
   Typography
================================================== */
body {
	font-family: 'Flama-Book', sans-serif;
	font-size: 17px;
	line-height: 1.8em;
	color: #000;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Flama-Bold', sans-serif;
}

.box-1 h2 {
	font-family: 'Flama-Bold', sans-serif;
	font-size: 3.2em;
	letter-spacing: 2px;
	text-transform: uppercase;
    line-height: 1em;
	color: #66cc33;
	margin: 0 0 2em 0;
}

.box-1 h5 {
	font-family: 'Flama-Semibold', sans-serif;
	font-size: 1.6em;
    line-height: 1.4em;
	color: #0f6542;
	margin: 0 0 0.6em 0;
}

p {
	font-family: 'Flama-Light', sans-serif;
	font-size: 1.7em;
    line-height: 1.4em;
	color: #000;
	margin: 0 0 0.6em 0;
}

a {
	font-family: 'Flama-Basic', sans-serif;
	font-size: 1.7em;
    line-height: 1.4em;
	color: #0f6542;
	text-decoration: none;
	cursor: pointer;
	margin: 0;
}
a:hover {
	color: #000;
}



/* ==================================================
   Top bar
================================================== */
.top-bar {
    position: absolute;
	top: 0;
	left: 0;
	right: 0;
    display: table;
	width: 100%;	
	margin: 0 0 20px 0;
	vertical-align: middle;
}

.logo {
    display: table-cell;
    max-width: 400px;
	vertical-align: middle;
	padding: 0 0 0 40px;
}
.logo img {
    width: 80%;
    height: auto;
	vertical-align: bottom;
}
.logo-1 {
    display: block;
}
.logo-2 {
    display: none;
}


.nav-01-button {
    display: none;
}
.nav-01 {
    display: table-cell;
	vertical-align: middle;
	padding: 0 20px 0 0;
}
.nav-01 ul {
    display: table;
    width: 80%;
	list-style-type: none;
	list-style: none;
	overflow: hidden;
	padding: 0;
    margin: auto 0 auto auto;
}
.nav-01 li {
    display: table-cell;
	padding: 0;
	margin: 0;
}
.nav-01 li a {
	font-family: 'Flama-Book', sans-serif;
	display: block;
	font-size: 12px;
	line-height: 1.4em;
	text-transform: uppercase;
	letter-spacing: 2px;
	text-align: center;
	color: #fff;
	white-space: nowrap;
    width: 100px;
	padding: 5px 10px 6px 10px;
	margin: 0 0 0 5px;
}
.nav-01 li.current a {
	color: #fff;
    background-color: #66cc33;
}
.nav-01 li a:hover {
	color: #fff;
    background-color: #66cc33;
}


/* ==================================================
   Main
================================================== */
.page-01 {
	display: table;
	width: 100%;
	height: 100%;
}

.parallax-1, 
.parallax-2, 
.parallax-3, 
.parallax-4,
.parallax-projects-1,
.parallax-projects-1-birla,
.parallax-about-1, 
.parallax-services-1 
{
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	height: calc(50vw - 15vh);
}
.parallax-1 {
	background-image: url("../images/home-bg-1.jpg");
}
.parallax-1 h1 {
	display: block;
	position: absolute;	
	font-family: 'Flama-Semibold', sans-serif;
	font-size: 5em;
    line-height: 1.1em;
	color: rgba(255,255,255,0.95);
	left: 40px;
	bottom: 30%;
	width: 72%;
}
.parallax-2 {
	background-image: url("../images/home-bg-2.jpg");
}
.parallax-3 {
	background-image: url("../images/home-bg-3.jpg");
}
.parallax-4 {
	background-image: url("../images/home-bg-4.jpg");
}
.parallax-projects-1 {
	background-image: url("../images/projects-bg-1.jpg");
}
.parallax-projects-1-birla {
	background-image: url("../images/projects-bg-1-birla.jpg");
}
.parallax-about-1 {
	background-image: url("../images/about-bg-1.jpg");
}
.parallax-services-1 {
	background-image: url("../images/services-bg-1.jpg");
}

.box-1 {
	padding: 3em 3em 2em 3em;
    background-color: #fff;
}
.box-1-text {
	display: block;
	width: 80%;
	margin: 0 0 6em 0;
}
.box-1-text-1 {
	display: block;
	width: 80%;
	margin: 8em 0;
}

.home-module-text h4 {
	font-family: 'Flama-Medium', sans-serif;
	font-size: 2em;
    line-height: 1em;
	color: #000;
	margin: 0 0 2em 0;
}
.home-module-text h6 {
	font-family: 'Flama-Book', sans-serif;
	font-size: 0.9em;
    line-height: 1em;
	letter-spacing: 4px;
	text-transform: uppercase;
	color: #000;
	margin: 0 0 2em 0;
}
.home-module-text p {
	margin: 0 0 2em 0;
}
.home-module-text p.list-1 {
	margin: 0 0 0.4em 0;
}
.home-module-text a {
	font-family: 'Flama-Basic', sans-serif;
	font-size: 1.7em;
    line-height: 40px;
	color: #fff;
	text-decoration: none;
	cursor: pointer;
}
.home-module-text a:hover {
	color: #000;
}

.box-1-module-1 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 0;
	grid-template-areas: 'img text';
	width: 100%;
	margin: 2em 0;
}
.box-1-module-1-img {
	grid-area: img;
	display: block;
}
.box-1-module-1-img img {
	display: block;
	max-width: 100%;
}
.box-1-module-1-text {
	grid-area: text;
	display: block;
	padding: 2em;
	border-bottom-right-radius: 3em;
    background-color: #66cc33;
}

.box-1-module-2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 0;
	grid-template-areas: 'text img';
	width: 100%;
	margin: 2em 0;
}
.box-1-module-2-img {
	grid-area: img;
	display: block;
}
.box-1-module-2-img img {
	display: block;
	max-width: 100%;
}
.box-1-module-2-text {
	grid-area: text;
	display: block;
	padding: 2em;
	border-bottom-left-radius: 3em;
    background-color: #66cc33;
}

.box-1-module-1 h4, 
.box-1-module-1 p, 
.box-1-module-2 h4, 
.box-1-module-2 p {
	margin: 0 0 1.6em 0;
}


.box-1-module-3 {
	display: block;
	margin: 6em 0;
}
.box-1-module-3-header {
	display: block;
	font-family: 'Flama-Basic', sans-serif;
	font-size: 0.9em;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #333;
	text-align: right;
	margin: 0 0 10px 0;
}
.box-1-module-3-pics {
	display: grid;
	grid-auto-flow: column;
	grid-gap: 10px;
	align-items: center;
	justify-items: center;
	padding: 20px 0;
	border-top: 2px dotted #999;
	border-bottom: 2px dotted #999;
}
.box-1-module-3-pics > div {
	display: block;
}
.box-1-module-3-pics > div img {
	display: block;
	width: 120px;
}



.page-pics-1 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 0;
	margin: 80px 0;
}
.page-pics-1 > div {
	display: block;
}
.page-pics-1 > div img {
	display: block;
	width: 100%;
}



.footer {
	display: block;
	text-align: right;
	padding: 100px 50px 0 8%;
}
.footer a {
	display: inline-block;
	font-size: 0.8em;
	letter-spacing: 1px;
    line-height: 2em;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: #ccc;
	background-color: #000;
	height: 100%;
	padding: 4px 20px;
	margin: 0;
}


/* ==================================================
   Media
================================================== */

@media (min-width: 1401px) and (max-width: 1600px) {
.parallax-1, 
.parallax-2, 
.parallax-3, 
.parallax-4,
.parallax-projects-1,
.parallax-projects-1-birla,
.parallax-about-1, 
.parallax-services-1 
{
	background-position: top;
}
.parallax-1 h1 {
	font-size: 4.7em;
    line-height: 1.1em;
	bottom: 36%;
	width: 65%;
}

p {
	font-size: 1.4em;
    line-height: 1.4em;
}
a {
	font-size: 1.4em;
    line-height: 1.4em;
}

.home-module-text h4 {
	font-size: 2em;
    line-height: 1em;
	margin: 0 0 1.4em 0;
}
.home-module-text p {
	font-size: 1.4em;
    line-height: 1.4em;
	margin: 0 0 1.4em 0;
}
.home-module-text a {
	font-size: 1.4em;
    line-height: 1.4em;
}
}



@media (min-width: 1201px) and (max-width: 1400px) {
.parallax-1, 
.parallax-2, 
.parallax-3, 
.parallax-4,
.parallax-projects-1,
.parallax-projects-1-birla,
.parallax-about-1, 
.parallax-services-1 
{
	background-position: top;
}
.parallax-1 h1 {
	font-size: 4.5em;
    line-height: 1.1em;
	bottom: 36%;
	width: 70%;
}

p {
	font-size: 1.4em;
    line-height: 1.2em;
}
a {
	font-size: 1.4em;
    line-height: 1.2em;
}

.home-module-text h4 {
	font-size: 1.8em;
    line-height: 1em;
	margin: 0 0 1em 0;
}
.home-module-text p {
	font-size: 1.4em;
    line-height: 1.2em;
	margin: 0 0 1.4em 0;
}
.home-module-text a {
	font-size: 1.4em;
    line-height: 1.2em;
}
}



@media (min-width: 961px) and (max-width: 1200px) {
.parallax-1, 
.parallax-2, 
.parallax-3, 
.parallax-4,
.parallax-projects-1,
.parallax-projects-1-birla,
.parallax-about-1, 
.parallax-services-1 
{
	background-position: top;
}
.parallax-1 h1 {
	font-size: 3.6em;
    line-height: 1.1em;
	left: 40px;
	top: 20%;
	width: 70%;
}

p {
	font-size: 1.2em;
    line-height: 1.2em;
}
a {
	font-size: 1.2em;
    line-height: 1.2em;
}

.home-module-text h4 {
	font-size: 1.8em;
    line-height: 1em;
	margin: 0 0 0.6em 0;
}
.home-module-text p {
	font-size: 1.2em;
    line-height: 1.2em;
	margin: 0 0 0.6em 0;
}
.home-module-text a {
	font-size: 1.2em;
    line-height: 1.2em;
}
}


@media (min-width: 1px) and (max-width: 960px) {
.top-bar {
    position: absolute;
	top: 0;
	left: 0;
	right: 0;
    display: table;
	width: 100%;	
	margin: 0 0 20px 0;
	vertical-align: middle;
}

.logo {
    display: table-cell;
	vertical-align: middle;
	padding: 10px 0 0 17px;	
}
.logo img {
    width: 260px;
    height: auto;
	vertical-align: top;
}

.nav-01 {
    display: table-cell;
	vertical-align: top;
	padding: 0 10px 0 10px;
}
.nav-01-button {
    position: absolute;
	display: block;
	top: 1.2em;
	right: 0.8em;
	width: 30px;	
	cursor: pointer;
}
.nav-01-button img {
	display: block;
	width: 95%;
}
.nav-01 {
    position: absolute;
	display: none;
	top: 70px;
	left: 0;
	right: 0;
	vertical-align: top;
	text-align: middle;
	padding: 0 1em;
	margin: 0;
	text-align: middle;
	white-space: nowrap;
	overflow: auto;
	z-index: 1000;
}
.nav-01 ul {
	display: inline-block;
	list-style-type: none;
	list-style: none;
	overflow: hidden;
	padding: 1em 0;
	margin: 0 auto;
	width: 100%;
	background: #fff;
	box-shadow: 5px 5px 20px 0 rgba(0,0,0,0.2);
}
.nav-01 li {
	display: block;
	padding: 0;
	margin: 0;
	width: 100%;
}
.nav-01 li a {
	display: block;
	font-size: 15px;
	line-height: 1.4em;
	text-align: center;
	color: #000;
	width: 100%;
	padding: 1.3em 0;
	margin: 0;
    border: 0;
}
.nav-01 li.current a {
	color: #000;
    border: 0;
	background: #fff;
}
.nav-01 li a:hover {
	color: #000;
    border: 0;
}


.parallax-1, 
.parallax-2, 
.parallax-3, 
.parallax-4,
.parallax-projects-1,
.parallax-projects-1-birla,
.parallax-about-1, 
.parallax-services-1 
{
	background-attachment: local;
	background-position: top;
	background-repeat: no-repeat;
	background-size: 100% auto;
	height: calc(50vw - 1vh);
}
.parallax-1 {
	background-image: url("../images/home-bg-1-small.jpg");
}
.parallax-2 {
  background-image: url("../images/home-bg-2-small.jpg");
}
.parallax-3 {
  background-image: url("../images/home-bg-3-small.jpg");
}
.parallax-4 {
  background-image: url("../images/home-bg-4-small.jpg");
}
.parallax-projects-1 {
	background-image: url("../images/projects-bg-1-small.jpg");
}
.parallax-projects-1-birla {
	background-image: url("../images/projects-bg-1-birla-small.jpg");
}
.parallax-about-1 {
	background-image: url("../images/about-bg-1-small.jpg");
}
.parallax-services-1 {
	background-image: url("../images/services-bg-1-small.jpg");
}
.parallax-1 h1 {
	font-family: 'Flama-Thin', sans-serif;
	font-size: 1.7em;
    line-height: 1.1em;
	text-align: center;
	left: 40px;
	right: 40px;
	top: 70px;
	width: auto;
}

p {
	font-size: 1.2em;
    line-height: 1.4em;
}
a {
	font-size: 1.2em;
    line-height: 1.4em;
}

.box-1 {
	padding: 20px;
}
.box-1-text {
	display: block;
	width: auto;
	margin: 0 0 20px 0;
}
.box-1-text-1 {
	display: block;
	width: auto;
	margin: 40px 0;
}
.box-1 h2 {
	font-family: 'Flama-Medium', sans-serif;
	font-size: 1.4em;
	letter-spacing: 1px;
	text-transform: uppercase;
    line-height: 1em;
	margin: 0 0 40px 0;
}
.box-1 h5 {
	font-family: 'Flama-Medium', sans-serif;
	font-size: 1.2em;
    line-height: 1.2em;
	letter-spacing: 0;
	text-transform: none;
	margin: 0 0 10px 0;
}
.home-module-text h4 {
	font-family: 'Flama-Medium', sans-serif;
	font-size: 1.2em;
    line-height: 1em;
	color: #000;
	margin: 0 0 40px 0;
}
.home-module-text h6 {
	font-family: 'Flama-Book', sans-serif;
	font-size: 0.9em;
    line-height: 1.2em;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #000;
	margin: 0 0 40px 0;
}
.home-module-text p {
	font-family: 'Flama-Light', sans-serif;
	font-size: 1.2em;
    line-height: 1.4em;
	color: #000;
	margin: 0 0 40px 0;
}
.home-module-text p.list-1 {
    line-height: 1.4em;
	margin: 0 0 10px 0;
}
.home-module-text a {
	font-family: 'Flama-Basic', sans-serif;
	font-size: 1.2em;
    line-height: 1.4em;
	color: #fff;
}
.home-module-text a:hover {
	color: #000;
}

.box-1-module-1 {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 0;
	grid-template-areas: 'img' 'text';
	min-width: 0;
	min-height: 0;
	overflow: hidden;
	margin: 20px 0;
}
.box-1-module-1-img {
	grid-area: img;
	display: block;
}
.box-1-module-1-img img {
	display: block;
	max-width: 100%;
}
.home-module-text {
	grid-area: text;
	display: block;
	padding: 20px;
	border-bottom-left-radius: 1em;
	border-bottom-right-radius: 1em;
    background-color: #66cc33;
}

.box-1-module-2 {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 0;
	grid-template-areas: 'img' 'text';
	min-width: 0;
	min-height: 0;
	overflow: hidden;
	margin: 20px 0;
}
.box-1-module-2-img {
	grid-area: img;
	display: block;
}
.box-1-module-2-img img {
	display: block;
	max-width: 100%;
}
.box-1-module-2-text {
	grid-area: text;
	display: block;
	padding: 20px;
	border-bottom-left-radius: 1em;
	border-bottom-right-radius: 1em;
	background-color: #66cc33;
}

.box-1-module-1 h4, 
.box-1-module-1 p, 
.box-1-module-2 h4, 
.box-1-module-2 p {
	margin: 0 0 20px 0;
}


.box-1-module-3 {
	display: block;
	margin: 6em 0;
}
.box-1-module-3-header {
	display: block;
	font-family: 'Flama-Basic', sans-serif;
	font-size: 0.9em;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #333;
	text-align: center;
	margin: 0 0 20px 0;
}
.box-1-module-3-pics {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-auto-flow: row;
	grid-template-rows: auto auto;
  	row-gap: 20px;
	align-items: center;
	justify-items: center;
	height: 100vh;
	padding: 20px 0;
	border-top: 2px dotted #999;
	border-bottom: 2px dotted #999;
}
.box-1-module-3-pics > div {
	display: block;
}
.box-1-module-3-pics > div img {
	display: block;
	max-width: 100%;
}


.page-pics-1 {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 20px;
	margin: 40px 0;
}
.page-pics-1 > div {
	display: block;
}
.page-pics-1 > div img {
	display: block;
	width: 100%;
}


.footer {
	padding: 0 5%;
}
}



@media (min-width: 1px) and (max-width: 800px) { 
.logo-1 {
    display: none;
}
.logo-2 {
    display: block;
}
.logo img {
    width: 220px;
}
.nav-01-button {
	top: 1.2em;
}
}

@media (min-width: 1px) and (max-width: 638px) {

}
