body {
	font-family: @body_font;
	-webkit-font-smoothing: antialiased;
	font-size: @body_font_size;
	font-weight: @body_font_weight;
	color: @text_color;
	position: relative;
	line-height: 1.73;
	letter-spacing: 0.03em;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	outline: none;
	&:extend(.accent-color);
	text-decoration: none;
}

a:hover,
a:focus {
	outline: none;
	text-decoration: underline;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1.3;
	margin-top: 35px;
	margin-bottom: 15px;
	&:extend(.heading-color);
	> a {
		.gsf-link;
	}
}

h1{
	font-family: @h1_font;
	font-size: @h1_font_size;
	font-weight: @h1_font_weight;
}
h2{
	font-family: @h2_font;
	font-size: @h2_font_size;
	font-weight: @h2_font_weight;
}

h3{
	font-family: @h3_font;
	font-size: @h3_font_size;
	font-weight: @h3_font_weight;
}

h4{
	font-family: @h4_font;
	font-size: @h4_font_size;
	font-weight: @h4_font_weight;
}

h5{
	font-family: @h5_font;
	font-size: @h5_font_size;
	font-weight: @h5_font_weight;
}

h6{
	font-family: @h6_font;
	font-size: @h6_font_size;
	font-weight: @h6_font_weight;
}

p {
	margin: 0 0 20px 0;
}

input, textarea, button, select {
	outline: none;
}

::-moz-selection {
	background-color: @accent_color;
	color: @foreground_accent_color;
}
::selection {
	background-color: @accent_color;
	color: @foreground_accent_color;
}

.alignright {
	margin: 5px 0 20px 20px;
	float: right;
}

.alignleft {
	margin: 5px 20px 15px 0;
	float: left;
}


// Text Padding
.gsf-padding-1-1 {
	margin-left: 5%;
	margin-right: 5%;
}

.gsf-padding-0-1 {
	margin-right: 5%;
}

.rtl .gsf-padding-0-1 {
	margin-right: auto;
	margin-left: 5%;
}

.gsf-padding-1-0 {
	margin-left: 5%;
}

.rtl .gsf-padding-1-0 {
	margin-left: auto;
	margin-right: 5%;
}

.gsf-padding-2-2 {
	margin-left: 10%;
	margin-right: 10%;
}

.gsf-padding-2-1 {
	margin-left: 10%;
	margin-right: 5%;
}

.rtl .gsf-padding-2-1 {
	margin-left: 5%;
	margin-right: 10%;
}

.gsf-padding-1-2 {
	margin-left: 5%;
	margin-right: 10%;
}

.rtl .gsf-padding-1-2 {
	margin-left: 10%;
	margin-right: 5%;
}

.gsf-padding-0-2 {
	margin-right: 10%;
}

.rtl .gsf-padding-0-2 {
	margin-left: 10%;
	margin-right: auto;
}

.gsf-padding-2-0 {
	margin-left: 10%;
}

.rtl .gsf-padding-2-0 {
	margin-left: auto;
	margin-right: 10%;
}

.gsf-padding-3-3 {
	margin-left: 15%;
	margin-right: 15%;
}

.gsf-padding-0-3 {
	margin-right: 15%;
}

.rtl .gsf-padding-0-3 {
	margin-right: auto;
	margin-left: 15%;
}

.gsf-padding-3-0 {
	margin-left: 15%;
}

.rtl .gsf-padding-3-0 {
	margin-left: auto;
	margin-right: 15%;
}

.gsf-padding-1-1,
.gsf-padding-1-0,
.gsf-padding-0-1,
.gsf-padding-2-2,
.gsf-padding-0-2,
.gsf-padding-2-0,
.gsf-padding-2-1,
.gsf-padding-1-2,
.gsf-padding-3-3 {
	position: relative;
}

.gsf-padding-1-1:after,
.gsf-padding-1-0:after,
.gsf-padding-0-1:after,
.gsf-padding-2-2:after,
.gsf-padding-0-2:after,
.gsf-padding-2-0:after,
.gsf-padding-2-1:after,
.gsf-padding-1-2:after,
.gsf-padding-3-3:after,
.gsf-padding-1-1:before,
.gsf-padding-0-1:before,
.gsf-padding-1-0:before,
.gsf-padding-2-2:before,
.gsf-padding-0-2:before,
.gsf-padding-2-0:before,
.gsf-padding-2-1:before,
.gsf-padding-1-2:before,
.gsf-padding-3-3:before {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	color: #dadada;
	font-size: 20px;
	font-weight: bold;
	opacity: 0;
	-webkit-transition: all .6s ease;
	-moz-transition: all .6s ease;
	-o-transition: all .6s ease;
	transition: all .6s ease;
}

.gsf-padding-1-0:before,
.gsf-padding-1-1:before,
.gsf-padding-1-2:before {
	left: -6%;
	content: '\21E5';
}

.rtl .gsf-padding-1-0:before,
.rtl .gsf-padding-1-1:before,
.rtl .gsf-padding-1-2:before {
	left: auto;
	right: -6%;
}

.gsf-padding-0-1:after,
.gsf-padding-1-1:after,
.gsf-padding-2-1:after {
	right: -6%;
	content: '\21E4';
}

.rtl .gsf-padding-0-1:after,
.rtl .gsf-padding-1-1:after,
.rtl .gsf-padding-2-1:after {
	right: auto;
	left: -6%;
}

.gsf-padding-2-2:before,
.gsf-padding-2-1:before {
	content: '\21E5\21E5';
	left: -12%;
}

.rtl .gsf-padding-2-2:before,
.rtl .gsf-padding-2-1:before {
	left: auto;
	right: -12%;
}

.gsf-padding-2-2:after,
.gsf-padding-1-2:after {
	content: '\21E4\21E4';
	right: -12%;
}

.rtl .gsf-padding-2-2:after,
.rtl .gsf-padding-1-2:after {
	right: auto;
	left: -12%;
}

.gsf-padding-3-3:before {
	content: '\21E5\21E5\21E5';
	left: -22%
}

.rtl .gsf-padding-3-3:before {
	left: auto;
	right: -22%
}

.gsf-padding-3-3:after {
	content: '\21E4\21E4\21E4';
	right: -22%
}

.rtl .gsf-padding-3-3:after {
	right: auto;
	left: -22%
}

.mceContentBody.mceContentBody:hover .gsf-padding-1-1:after,
.mceContentBody.mceContentBody:hover .gsf-padding-1-0:after,
.mceContentBody.mceContentBody:hover .gsf-padding-0-1:after,
.mceContentBody.mceContentBody:hover .gsf-padding-2-2:after,
.mceContentBody.mceContentBody:hover .gsf-padding-0-2:after,
.mceContentBody.mceContentBody:hover .gsf-padding-2-0:after,
.mceContentBody.mceContentBody:hover .gsf-padding-2-1:after,
.mceContentBody.mceContentBody:hover .gsf-padding-1-2:after,
.mceContentBody.mceContentBody:hover .gsf-padding-3-3:after,
.mceContentBody.mceContentBody:hover .gsf-padding-1-1:before,
.mceContentBody.mceContentBody:hover .gsf-padding-0-1:before,
.mceContentBody.mceContentBody:hover .gsf-padding-1-0:before,
.mceContentBody.mceContentBody:hover .gsf-padding-2-2:before,
.mceContentBody.mceContentBody:hover .gsf-padding-0-2:before,
.mceContentBody.mceContentBody:hover .gsf-padding-2-0:before,
.mceContentBody.mceContentBody:hover .gsf-padding-2-1:before,
.mceContentBody.mceContentBody:hover .gsf-padding-1-2:before,
.mceContentBody.mceContentBody:hover .gsf-padding-3-3:before {
	opacity: 1;
}

.has-drop-cap {
	&:not(:focus):first-letter {
		font-size: 3.75em;
		line-height: 1;
		font-weight: bold;
		margin: 0 0.25em 0 0;
		font-family: @primary_font;
		&:extend(.accent-color);
	}
}

//Dropcap
[class*="gsf-dropcap-"] {
	display: inline-block;
	&::first-letter {
		display: inline-block;
		float: left;
		margin: 0 8px -10px 0;
		font-size: 100px;
		line-height: 100px;
		height: 100px;
		font-weight: 600;
		text-transform: uppercase;
	}
}

.gsf-dropcap-default::first-letter {
	&:extend(.accent-color);
	height: 80px;
	line-height: 80px;
	padding-right: 12px;
	padding-bottom: 25px;
}

.gsf-dropcap-square::first-letter,
.gsf-dropcap-circle::first-letter {
	&:extend(.bg-accent-color);
	color: #fff;
	padding: 0 11px;
}

.gsf-dropcap-square-outline::first-letter,
.gsf-dropcap-square-outline::first-letter {
	background: transparent;
	border: 2px solid @accent_color;
	&:extend(.accent-color);
	padding: 0 11px;
}

.gsf-dropcap-circle::first-letter,
.gsf-dropcap-circle-outline::first-letter {
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}

// Highlighted
[class*="gsf-highlighted"] {
	padding: 0 3px;
}

.gsf-highlighted-red {
	background-color: red;
}

.gsf-highlighted-yellow {
	background-color: yellow;
}

// Custom List
[class*="gsf-list"] {
	padding-left: 20px;
	line-height: 1.8;
	list-style-type: none;
	li {
		position: relative;
		&:before {
			position: absolute;
			left: -20px;
			top: 50%;
			.transform(translateY(-50%));
			content: '';
			display: block;
			font-family: 'FontAwesome';
			font-style: normal;
			font-weight: normal;
			text-decoration: inherit;
			font-size: 12px;
			&:extend(.accent-color);
		}
	}
}

.gsf-list-check li:before {
	content: '\f00c';
}

.gsf-list-star li:before {
	content: '\f005';
}

.gsf-list-edit li:before {
	content: '\f044';
}

.gsf-list-folder li:before {
	content: '\f07b';
}

.gsf-list-file li:before {
	content: '\f15b';
}

.gsf-list-heart li:before {
	content: '\f004';
}

.gsf-list-asterisk li:before {
	content: '\f069';
}

// Dividers
.gsf-divider-small {
	width: 75%;
	margin-left: auto;
	margin-right: auto;
}

.gsf-divider-tiny {
	width: 50%;
	margin-left: auto;
	margin-right: auto;
}

.gsf-divider-large {
	border-top-width: 2px;
}

.alert.gsf-alert {
	border-color: #ddd;
	background-color: #eee;
}
