/* FRAMEWORK */

/* INDEX 

   1. SIZING
   2. SPACING
   3. POSITIONING
   4. TRANSITIONS
   5. ELEMENTS
   6. DISPLAY
   7. TYPOGRAPHY
   8. BACKGROUNDS
	
*/

/* 1. SIZING */

.full {
	height: 100%;
	width: 100%;
}

.full-h {
	height: 100%;
}

.full-w {
	width: 100%;
	height: auto;
}

.h-50 {
	height: 50px;
}

.w-50 {
	width: 50px;
}

.h-75 {
	height: 75px;
}

.w-75 {
	width: 75px;
}

.h-100 {
	height: 100px;
}

.w-100 {
	width: 100px;
}

.h-150 {
	height: 150px;
}

.w-150 {
	width: 150px;
}

.h-200 {
	height: 200px;
}

.w-200 {
	width: 200px;
}

.h-250 {
	height: 250px;
}

.w-250 {
	width: 250px;
}
	
.h-300 {
	height: 300px;
}

.w-300 {
	width: 300px;
}

.h-350 {
	height: 350px;
}

.w-350 {
	width: 350px;
}

.h-400 {
	height: 400px;
}

.w-400 {
	width: 400px;
}

.h-450 {
	height: 450px;
}

.w-450 {
	width: 450px;
}

.h-500 {
	height: 500px;
}

.w-500 {
	width: 500px;
}

.h-550 {
	height: 550px;
}

.w-550 {
	width: 550px;
}

.h-600 {
	height: 600px;
}

.w-600 {
	width: 600px;
}		

/* 2. SPACING */

.no-padd {
	padding: 0;
}

.no-marg {
	margin: 0;
}

.center {
	margin: 0 auto;
}

.marg-10 {
	margin: 10px;
}

.marg-x-10 {
	margin: 0 10px;
}

.marg-y-10 {
	margin: 10px 0;
}

.marg-top-10 {
	margin-top: 10px;
}

.marg-bott-10 {
	margin-bottom: 10px;
}

.marg-left-10 {
	margin-left: 10px;
}

.marg-right-10 {
	margin-right: 10px;
}

.padd-10 {
	padding: 10px;
}

.padd-x-10 {
	padding: 0 10px;
}

.padd-y-10 {
	padding: 10px 0;
}

.padd-top-10 {
	padding-top: 10px;
}

.padd-bott-10 {
	padding-bottom: 10px;
}

.padd-left-10 {
	padding-left: 10px;
}

.padd-right-10 {
	padding-right: 10px;
}

.marg-25 {
	margin: 25px;
}

.marg-x-25 {
	margin: 0 25px;
}

.marg-y-25 {
	margin: 25px 0;
}

.marg-top-25 {
	margin-top: 25px;
}

.marg-bott-25 {
	margin-bottom: 25px;
}

.marg-left-25 {
	margin-left: 25px;
}

.marg-right-25 {
	margin-right: 25px;
}

.padd-25 {
	padding: 25px;
}

.padd-x-25 {
	padding: 0 25px;
}

.padd-y-25 {
	padding: 25px 0;
}

.padd-top-25 {
	padding-top: 25px;
}

.padd-bott-25 {
	padding-bottom: 25px;
}

.padd-left-25 {
	padding-left: 25px;
}

.padd-right-25 {
	padding-right: 25px;
}

.marg-50 {
	margin: 50px;
}

.marg-x-50 {
	margin: 0 50px;
}

.marg-y-50 {
	margin: 50px 0;
}

.marg-top-50 {
	margin-top: 50px;
}

.marg-bott-50 {
	margin-bottom: 50px;
}

.marg-left-50 {
	margin-left: 50px;
}

.marg-right-50 {
	margin-right: 50px;
}

.padd-50 {
	padding: 50px;
}

.padd-x-50 {
	padding: 0 50px;
}

.padd-y-50 {
	padding: 50px 0;
}

.padd-top-50 {
	padding-top: 50px;
}

.padd-bott-50 {
	padding-bottom: 50px;
}

.padd-left-50 {
	padding-left: 50px;
}

.padd-right-50 {
	padding-right: 50px;
}

.marg-75 {
	margin: 75px;
}

.marg-x-75 {
	margin: 0 75px;
}

.marg-y-75 {
	margin: 75px 0;
}

.marg-top-75 {
	margin-top: 75px;
}

.marg-bott-75 {
	margin-bottom: 75px;
}

.marg-left-75 {
	margin-left: 75px;
}

.marg-right-75 {
	margin-right: 75px;
}

.padd-75 {
	padding: 75px;
}

.padd-x-75 {
	padding: 0 75px;
}

.padd-y-75 {
	padding: 75px 0;
}

.padd-top-75 {
	padding-top: 75px;
}

.padd-bott-75 {
	padding-bottom: 75px;
}

.padd-left-75 {
	padding-left: 75px;
}

.padd-right-75 {
	padding-right: 75px;
}

.marg-100 {
	margin: 100px;
}

.marg-x-100 {
	margin: 0 100px;
}

.marg-y-100 {
	margin: 100px 0;
}

.marg-top-100 {
	margin-top: 100px;
}

.marg-bott-100 {
	margin-bottom: 100px;
}

.marg-left-100 {
	margin-left: 100px;
}

.marg-right-100 {
	margin-right: 100px;
}

.padd-100 {
	padding: 100px;
}

.padd-x-100 {
	padding: 0 100px;
}

.padd-y-100 {
	padding: 100px 0;
}

.padd-top-100 {
	padding-top: 100px;
}

.padd-bott-100 {
	padding-bottom: 100px;
}

.padd-left-100 {
	padding-left: 100px;
}

.padd-right-100 {
	padding-right: 100px;
}

/* 3. POSITIONING */

.posit-f {
	position: fixed;
}

.posit-a {
	position: absolute;
}

.posit-r {
	position: relative;
}

.posit-s {
	position: static;
}

.top-0 {
	top: 0;
}

.top-50 {
	top: 50px;
}

.top-70 {
	top: 70px;
}

.top-100 {
	top: 100px;
}

.top-120 {
	top: 120px;
}

.top-140 {
	top: 140px;
}

.top-150 {
	top: 150px;
}

.top-200 {
	top: 200px;
}

.top-250 {
	top: 250px;
}

.top-300 {
	top: 300px;
}

.left-0 {
	left: 0;
}

.left-50 {
	left: 50px;
}

.left-100 {
	left: 100px;
}

.left-150 {
	left: 150px;
}

.left-200 {
	left: 200px;
}

.left-250 {
	left: 250px;
}

.left-300 {
	left: 300px;
}

.bott-0 {
	bottom: 0;
}

.bott-50 {
	bottom: 50px;
}

.bott-70 {
	bottom: 70px;
}

.bott-100 {
	bottom: 100px;
}

.bott-120 {
	bottom: 120px;
}

.bott-140 {
	bottom: 140px;
}

.bott-200 {
	bottom: 200px;
}

.bott-250 {
	bottom: 250px;
}

.bott-300 {
	bottom: 300px;
}

.right-0 {
	right: 0;
}

.right-50 {
	right: 50px;
}

.right-100 {
	right: 100px;
}

.right-150 {
	right: 150px;
}

.right-200 {
	right: 200px;
}

.right-250 {
	right: 250px;
}

.right-300 {
	right: 300px;
}

/* z-index */

.z-9999 {
	z-index: 9999;
}

.z-999 {
	z-index: 999;
}

.z-99 {
	z-index: 99;
}

.z-10 {
	z-index: 10;
}

.z-9 {
	z-index: 9;
}

.z-8 {
	z-index: 8;
}

.z-7 {
	z-index: 7;
}

.z-6 {
	z-index: 6;
}

.z-5 {
	z-index: 5;
}

.z-4 {
	z-index: 4;
}

.z-3 {
	z-index: 3;
}

.z-2 {
	z-index: 2;
}

.z-1 {
	z-index: 1;
}

.z-0 {
	z-index: 0;
}

/* 4. TRANSITIONS */

.desktop .transit {
	transition: 0.3s all ease-in-out;
	-moz-transition: 0.3s all ease-in-out;
	-ms-transition: 0.3s all ease-in-out;
	-o-transition: 0.3s all ease-in-out;
	-webkit-transition: 0.3s all ease-in-out;
}

.desktop .transit-m {
	transition: 0.1s all ease-in-out;
	-moz-transition: 0.1s all ease-in-out;
	-ms-transition: 0.1s all ease-in-out;
	-o-transition: 0.1s all ease-in-out;
	-webkit-transition: 0.1s all ease-in-out;
}

.transit-scale {
	-moz-transform: scale(0,0);
	-ms-transform: scale(0,0);
	-o-transform: scale(0,0);
	-webkit-transform: scale(0,0);
	transform: scale(0,0);
	transform-origin: top left;
	-moz-transform-origin: top left;
	-ms-transform-origin: top left;
	-o-transform-origin: top left;
	-webkit-transform-origin: top left;
}

.transit-side {
	-moz-transform: scale(0,1);
	-ms-transform: scale(0,1);
	-o-transform: scale(0,1);
	-webkit-transform: scale(0,1);
	transform: scale(0,1);
}

.transit-centre {
	-moz-transform: scale(0,0);
	-ms-transform: scale(0,0);
	-o-transform: scale(0,0);
	-webkit-transform: scale(0,0);
	transform: scale(0,0);
	transform-origin: center;
	-moz-transform-origin: center;
	-ms-transform-origin: center;
	-o-transform-origin: center;
	-webkit-transform-origin: center;
}

.transit-slidebott {
	-moz-transform: scale(1,0);
	-ms-transform: scale(1,0);
	-o-transform: scale(1,0);
	-webkit-transform: scale(1,0);
	transform: ;
	transform-origin: bottom;
	-moz-transform-origin: bottom;
	-ms-transform-origin: bottom;
	-o-transform-origin: bottom;
	-webkit-transform-origin: bottom;
}

.transit-slidetop {
	-moz-transform: scale(1,0);
	-ms-transform: scale(1,0);
	-o-transform: scale(1,0);
	-webkit-transform: scale(1,0);
	transform: ;
	transform-origin: bottom;
	-moz-transform-origin: bottom;
	-ms-transform-origin: bottom;
	-o-transform-origin: bottom;
	-webkit-transform-origin: bottom;
}

.desktop .transit-fade,
.desktop .transit-left,
.desktop .transit-right,
.desktop .transit-top,
.desktop .transit-bottom,
.desktop .transit-bouncein,
.desktop .transit-flip,
.desktop .transit-rotate {
	opacity: 0;
}

/* transition hover */

.desktop div:hover > .transit-centre,
.desktop div:hover > .transit-scale,
.desktop div:hover > .transit-side,
.desktop div:hover > .transit-slidebott,
.desktop div:hover > .transit-slidetop {
	-moz-transform: scale(1,1);
	-ms-transform: scale(1,1);
	-o-transform: scale(1,1);
	-webkit-transform: scale(1,1);
	transform: scale(1,1);
}

/* 5. ELEMENTS */

.clear {
	clear: both;
}

.line-l {
	margin: 20px 0;
	width: 25px;
	border-style: solid;
	border-width: 1px;
}

.line-c {
	margin: 20px auto;
	width: 25px;
	border-style: solid;
	border-width: 1px;
}

/* cursors */

.curs-p {
	cursor: pointer;
}

.curs-d {
	cursor: default;
}

.curs-m {
	cursor: move;
}

/* reset box */

.brd-box {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
}

/* icons */

.icon-rad {
	border: 2px solid;
	line-height: 100%;
	border-radius: 100%;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	-ms-border-radius: 100%;
	display: inline-block;
}

.icon-rad-bg {
	display: inline-block;
	line-height: 100%;
	border-radius: 100%;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	-ms-border-radius: 100%;
}

.icon-box-bg {
	display: inline-block;
	line-height: 100%;
}

.icon-box {
	padding: 10px;
	border: 2px solid;
	line-height: 100%;
	display: inline-block;
}

.icon-b {
	font-size: 70px;
	margin-bottom: 25px;
}

.icon-m {
	font-size: 40px;
	margin-bottom: 25px;
}

.icon-s {
	font-size: 30px;
	margin-bottom: 25px;
}

/* buttons */

.btn {
	display: inline-block;
	border-style: solid;
	border-width: 2px;
	font-weight: 400;
}

.btn a {
	display: block;
}

.btn-s a {
	padding: 5px;
}

.btn-m a {
	padding: 10px;
}

.btn-b a {
	padding: 15px;
}

/* 6. DISPLAY */

.disp-b {
	display: block;
}

.disp-n {
	display: none;
}

.disp-i {
	display: inline;
}

.disp-ib {
	display: inline-block;
}

.disp-t {
	display: table;
}

.disp-tc {
	display: table-cell;
	vertical-align: middle;
}

.opa-0 {
	opacity: 0;
}

/* 	opacity */ 

.opa-1 {
	opacity: 0.1;
}

.opa-2 {
	opacity: 0.2;
}

.opa-3 {
	opacity: 0.3;
}

.opa-4 {
	opacity: 0.4;
}

.opa-5 {
	opacity: 0.5;
}

.opa-6 {
	opacity: 0.6;
}

.opa-7 {
	opacity: 0.7;
}

.opa-8 {
	opacity: 0.8;
}

.opa-9 {
	opacity: 0.9;
}

.hov-opa {
	opacity: 0;
	cursor: pointer;
}

.hov-opa:hover {
	opacity: 1;
}

.hov-opa:hover {
	opacity: 1;
}

.overf-h {
	overflow: hidden;
}

.float-l {
	float: left;
}

.float-r {
	float: right;
}

/* 7. TYPOGRAPHY */

/* alignments */

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

.text-r {
	text-align: right;
}

.text-l {
	text-align: left;
}

/* lists */

.list li {
	font-size: 14px;
	line-height: 22px;
}

/* headings */

.head-b {
	font-size: 100px;
	height: 150px;
	line-height: 150px;
	text-transform: uppercase;
	font-weight: 700;
	display: inline-block;
}

.head-m {
	font-size: 80px;
	height: 120px;
	line-height: 120px;
	font-weight: 700;
	display: inline-block;
}

.head-s {
	font-size: 70px;
	height: 100px;
	line-height: 100px;
	font-weight: 700;
	display: inline-block;
}

.caption-b {
	font-size: 50px;
	height: 70px;
	line-height: 70px;
	text-transform: uppercase;
	font-weight: 700;
	display: inline-block
}

.caption-m {
	font-size: 40px;
	height: 70px;
	line-height: 70px;
	text-transform: uppercase;
	font-weight: 400;
	display: inline-block;
}

.caption-s {
	font-size: 30px;
	height: 70px;
	line-height: 70px;
	font-weight: 300;
	display: inline-block;
}

.title-b {
	letter-spacing: 2px;
	font-size: 40px;
	line-height: 60px;
	margin-bottom: 10px;
	font-weight: 700;
	text-transform: uppercase;
}

.title-m {
	letter-spacing: 2px;
	font-size: 30px;
	line-height: 40px;
	margin-bottom: 10px;
	font-weight: 700;
	text-transform: uppercase;
}

.title-s {
	letter-spacing: 2px;
	font-size: 25px;
	line-height: 35px;
	margin-bottom: 20px;
	font-weight: 400;
}

.content-b {
	font-size: 18px;
	line-height: 26px;
}

.content-m {
	font-size: 16px;
	line-height: 24px;
}

.content-s {
	font-size: 14px;
	line-height: 22px;
}

/* 8. BACKGROUNDS */

.bg-rep {
	background-repeat: repeat;
}

.bg-cov {
	background-position: center;
	background-size: cover;
	-moz-background-size: cover;
	-webkit-background-size: cover;
	-ms-background-size: cover;
	background-repeat: no-repeat;
	background-attachment: inherit;
}

.bg-cov-bott {
	background-position: bottom center;
	background-size: cover;
	-moz-background-size: cover;
	-webkit-background-size: cover;
	-ms-background-size: cover;
	background-repeat: no-repeat;
	background-attachment: inherit;
}

.bg-cov-top {
	background-position: top center;
	background-size: cover;
	-moz-background-size: cover;
	-webkit-background-size: cover;
	-ms-background-size: cover;
	background-repeat: no-repeat;
	background-attachment: inherit;
}

.bg-fix {
	background-position: center;
	background-size: cover;
	-moz-background-size: cover;
	-webkit-background-size: cover;
	-ms-background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
}