.generic-text img[style*="float: left"],
.generic-text img[style*="float:left"] {
  margin: 0 1.5rem 1.5rem 0;
}
.generic-text img[style*="float: right"],
.generic-text img[style*="float:right"] {
  margin: 0 0 1.5rem 1.5rem;
}

.generic-text .text-columns-2,
.generic-text .text-columns-3,
.generic-text .text-columns-4 {
    column-gap: 3rem;
}
.generic-text .text-columns-2 {
	column-count: 2;
}
.generic-text .text-columns-3 {
	column-count: 3;
}
.generic-text .text-columns-4 {
	column-count: 4;
}

.generic-text a,
.generic-text a:hover,
.generic-text a:active,
.generic-text a:focus {
	outline: none!important;
  	box-shadow: none!important;
}

.generic-text p .icon:not([data-size]),
.generic-text li .icon:not([data-size]),
.generic-text address .icon:not([data-size]),
.generic-text blockquote .icon:not([data-size]),
.generic-text table th .icon:not([data-size]),
.generic-text table td .icon:not([data-size]) {
	height: 1.6rem;
	width: 2rem;
}
.generic-text blockquote .icon:not([data-size]) {
	line-height: 2rem;
}
.generic-text p .icon:not([data-size])::before,
.generic-text li .icon:not([data-size])::before,
.generic-text address .icon:not([data-size])::before,
.generic-text blockquote .icon:not([data-size])::before,
.generic-text table th .icon:not([data-size])::before,
.generic-text table td .icon:not([data-size])::before {
	position: absolute;
	top: -1px;
	left: 0;
	font-size: 2rem;
}

.generic-text p,
.generic-text ul,
.generic-text ol,
.generic-text li,
.generic-text address,
.generic-text pre,
.generic-text table td,
.generic-text table th {
	font-size: 1.5rem;
	line-height: 2.4rem;
}

.generic-text.generic-text-big p {
	font-size: 1.6rem;
	line-height: 1.4;
}

.generic-text h1,
.generic-text h2,
.generic-text h3,
.generic-text h4,
.generic-text h5,
.generic-text h6,
.generic-text p,
.generic-text address,
.generic-text blockquote,
.generic-text ul,
.generic-text ol,
.generic-text pre,
.generic-text table {
	margin-bottom: 2.5rem;
}

.generic-text h1 {
	margin-top: 5.4rem;
}
.generic-text h2 {
	margin-top: 4.5rem;
}
.generic-text h3 {
	margin-top: 3.6rem;
}
.generic-text h4 {
	margin-top: 3.3rem;
}
.generic-text h5 {
	margin-top: 3rem;
}
.generic-text h6 {
	margin-top: 2.7rem;
}

.generic-text ul {
	list-style: disc;
	padding-left: 0;
}
.generic-text ul > li {
	margin-left: 3rem;
}
.generic-text ul > li > ul > li:first-child {
	margin-top: 1rem;
}
.generic-text ul > li:not(:last-child) {
	margin-bottom: 1rem;
}

.generic-text ol {
	counter-reset: item;
	padding-left: 0;
}
.generic-text ol > li {
	display: block;
	position: relative;
	padding-left: 3rem;
}
.generic-text ol > li > ol > li:first-child {
	margin-top: 1rem;
}
.generic-text ol > li:not(:last-child) {
	margin-bottom: 1rem;
}
.generic-text ol > li::before {
	position: absolute;
	top: 0;
	left: 0;
	content: counter(item) ".";
    counter-increment: item;
}

.generic-text blockquote,
.generic-text * > blockquote {
	padding: 1rem 2rem;
	border-left: 3px solid;
	margin-top: 2.5rem;
}
.generic-text blockquote,
.generic-text blockquote *:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
	font-size: 1.7rem;
	line-height: 2.6rem;
}

.generic-text blockquote.classic {
	border: 0;
	padding:  3rem 3rem 3rem 8.7rem;
	position: relative;
}

.generic-text blockquote.classic.no-icon {
	padding: 3rem;
}

.generic-text blockquote.classic.no-icon:after{
	display: none;
}

.generic-text blockquote.classic:after {
	font-family: "icomoon";
	content: "\eb1e";
	font-size: 3.2rem;
	position: absolute;
	top: 3.5rem;
	left: 3.5rem;
}

.generic-text a:hover {
  	text-decoration: underline;
}

.generic-text pre {
	border-radius: 0;
	padding: 2rem;
}

.generic-text hr {
  	border: 0;
  	border-top: 3px solid;
  	position: relative;
  	overflow: visible;
  	margin-top: 3rem;
  	margin-bottom: 3rem;
}
.generic-text hr::before {
	position: absolute;
	content: '';
	top: -2px;
	left: 0;
	width: 6.5rem;
	height: 2px;
}

.generic-text table {
  	width: 100%;
}
.generic-text table tbody > tr:nth-of-type(even) {
	transition: background-color 0.2s linear;
}
.generic-text table th,
.generic-text table td {
	padding: 1rem 1.5rem;
}
.widget.widget-center th {
    text-align: center;
}
.widget.widget-right th {
    text-align: right;
}

.generic-text .text-columns-2 > *:first-child,
.generic-text .text-columns-3 > *:first-child,
.generic-text .text-columns-4 > *:first-child,
.generic-text > *:first-child,
.generic-text th > *:first-child,
.generic-text td > *:first-child,
.generic-text li > *:not(blockquote):first-child,
.generic-text blockquote > *:first-child{
	margin-top: 0;
}
.generic-text .text-columns-2 > *:last-child,
.generic-text .text-columns-3 > *:last-child,
.generic-text .text-columns-4 > *:last-child,
.generic-text > *:last-child,
.generic-text th > *:last-child,
.generic-text td > *:last-child,
.generic-text li > *:not(blockquote):last-child,
.generic-text blockquote > *:last-child{
	margin-bottom: 0;
}

.generic-text b,
.generic-text strong,
.generic-text table th {
	font-weight: 700;
}

.generic-text img:not(.icon-set-img) {
	max-width: 100%;
	height: auto!important;
}

.generic-text .line-spacing-double,
.generic-text.generic-text-big .line-spacing-double {
	line-height: 3.5rem;
}
.generic-text .line-spacing-double .icon:not([data-size]) {
	width: 2.4rem;
	top: 0;
}
.generic-text .line-spacing-double .icon:not([data-size])::before {
	font-size: 2.4rem;
	top: -2px;
}

@-moz-document url-prefix() {
	.generic-text .line-spacing-double .icon:not([data-size]) {
		top: -1px;
	}
	.generic-text.generic-text-big .line-spacing-double .icon:not([data-size]) {
		top: 0;
	}
}

@supports (-ms-ime-align:auto) {
	.generic-text blockquote .icon:not([data-size]) {
		top: 1px;
	}
    .generic-text .line-spacing-double .icon:not([data-size]) {
		top: -1px;
	}
	.generic-text.generic-text-big .line-spacing-double .icon:not([data-size]) {
		top: 0;
	}
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .generic-text blockquote .icon:not([data-size]) {
		top: 1px;
	}
    .generic-text .line-spacing-double .icon:not([data-size]) {
		top: -1px;
	}
	.generic-text.generic-text-big .line-spacing-double .icon:not([data-size]) {
		top: 0;
	}
}