:root {
	--textMaxWidth: 70ch;
	--bigTextSpacing: -0.02em;
	--smallTextSpacing: 0em;
	
	--textXXLsize: var(--titleMsize);
	--textXXLheightT: var(--titleMheightT);
	--textXXLtopT: var(--titleMtopT);
	--textXXLbottomT: var(--titleMbottomT);

	--textXLsize: var(--titleSsize);
	--textXLheightT: var(--titleSheightT);
	--textXLtopT: var(--titleStopT);
	--textXLbottomT: var(--titleSbottomT);

	--textLheightT: var(--titleXSheightT);
	--textLtopT: var(--titleXStopT);
	--textLbottomT: var(--titleXSbottomT);

	--textMheightT: var(--titleXXSheightT);
	--textMtopT: var(--titleXXStopT);
	--textMbottomT: var(--titleXXSbottomT);

	
	--textSheightT: var(--titleXXXSheightT);
	--textStopT: var(--titleXXXStopT);
	--textSbottomT: var(--titleXXXSbottomT);
}

@media only screen and (min-width:992px) {
	:root {
		/* Text XXL */
		--textXXLheightS: 60px;
		--textXXLtopS: -22px;
		--textXXLbottomS: -16px;

		/* Text XL */
		--textXLheightS: 48px;
		--textXLtopS: -16px;
		--textXLbottomS: -12px;

		/* Text L */
		--textLsize: 29px;
		--textLheightS: 36px;
		--textLtopS: -11px;
		--textLbottomS: -9px;

		/* Text M */
		--textMsize: 21px;
		--textMheightS: 30px;
		--textMtopS: -8px;
		--textMbottomS: -8px;

		/* Text S */
		--textSsize: 17px;
		--textSheightS: 24px;
		--textStopS: -8px;
		--textSbottomS: -6px;

		/* Text XS */
		--textXSsize: 14px;
		--textXSheightS: 20px;
		--textXStopS: -4px;
		--textXSbottomS: -4px;

		--textXSheightT: 14px;
		--textXStopT: -5px;
		--textXSbottomT: -3px;
	}
}
	
@media only screen and (max-width:991px) {
	:root {
		/* Text XXL */
		--textXXLheightS: 42px;
		--textXXLtopS: -14px;
		--textXXLbottomS: -10px;

		/* Text XL */
		--textXLheightS: 32px;
		--textXLtopS: -8px;
		--textXLbottomS: -8px;

		/* Text L */		
		--textLsize: 20px;
		--textLheightS: 26px;
		--textLtopS: -9px;
		--textLbottomS: -7px;

		/* Text M */
		--textMsize: 16px;
		--textMheightS: 22px;
		--textMtopS: -6px;
		--textMbottomS: -6px;

		/* Text S */
		--textSsize: 13px;
		--textSheightS: 18px;
		--textStopS: -3px;
		--textSbottomS: -5px;

		/* Text XS */
		--textXSsize: 10px;
		--textXSheightS: 12px;
		--textXStopS: -1px;
		--textXSbottomS: -3px;

		--textXSheightT: 10px;
		--textXStopT: -2px;
		--textXSbottomT: -2px;
	}
}

/* Sizes */

/* Text XXL */
.textXXL :is(p, li) {
	font-size: var(--titleMsize);
	letter-spacing: var(--bigTextSpacing);
	max-width: unset;
}

.textXXL:not(.tight) > :is(p, li) {
	line-height: var(--textXXLheightS);
	margin-top: var(--textXXLtopS);
	margin-bottom: var(--textXXLbottomS);
}

.textXXL.tight > :is(p, li) {
	line-height: var(--titleMheightT);
	margin-top: var(--titleMtopT);
	margin-bottom: var(--titleMbottomT);
}

/* Text XL */
.textXL :is(p, li) {
	font-size: var(--titleSsize);
	letter-spacing: var(--bigTextSpacing);
	max-width: unset;
}

.textXL:not(.tight) > :is(p, li) {
	line-height: var(--textXLheightS);
	margin-top: var(--textXLtopS);
	margin-bottom: var(--textXLbottomS);
}

.textXL.tight > :is(p, li) {
	line-height: var(--titleSheightT);
	margin-top: var(--titleStopT);
	margin-bottom: var(--titleSbottomT);
}

/* Text L */
.textL > :is(p, li, a) {
	font-size: var(--textLsize);
	letter-spacing: var(--bigTextSpacing);
}

.textL:not(.tight) > :is(p, li, a) {
	line-height: var(--textLheightS);
	margin-top: var(--textLtopS);
	margin-bottom: var(--textLbottomS);
}

.textL.tight > :is(p, li, a) {
	line-height: var(--titleXSheightT);
	margin-top: var(--titleXStopT);
	margin-bottom: var(--titleXSbottomT);
}

/* Text M */
.textM > :is(p, li, a) {
	font-size: var(--textMsize);
	letter-spacing: var(--bigTextSpacing);
}

.textM:not(.tight) > :is(p, li, a),
div:not(.titleXXL, .titleXL, .titleL, .titleM, .titleS, .titleXS, .titleXXS, .titleXXXS, .textXXL, .textXL, .textL, .textM, .textS, .textXS) > p {
	line-height: var(--textMheightS);
	margin-top: var(--textMtopS);
	margin-bottom: var(--textMbottomS);
}

.textM.tight > :is(p, li, a) {
	line-height: var(--titleXXSheightT);
	margin-top: var(--titleXXStopT);
	margin-bottom: var(--titleXXSbottomT);
}

/* Text S */
.textS > :is(p, li, a) {
	font-size: var(--textSsize);
	letter-spacing: var(--smallTextSpacing);
}

.textS:not(.tight) > :is(p, li, a) {
	line-height: var(--textSheightS);
	margin-top: var(--textStopS);
	margin-bottom: var(--textSbottomS);
}

.textS.tight > :is(p, li, a) {
	line-height: var(--titleXXXSheightT);
	margin-top: var(--titleXXXStopT);
	margin-bottom: var(--titleXXXSbottomT);
}

/* Text XS */
.textXS :is(p, li) {
	font-size: var(--textXSsize);
	letter-spacing: var(--smallTextSpacing);
}

.textXS:not(.tight) > :is(p, li) {
	line-height: var(--textXSheightS);
	margin-top: var(--textXStopS);
	margin-bottom: var(--textXSbottomS);
}

.textXS.tight > :is(p, li) {
	line-height: var(--textXSheightT);
	margin-top: var(--textXStopT);
	margin-bottom: var(--textXSbottomT);
}

/* Weights */

.titleWeight :is(p, span, li, a) {
	font-weight: var(--titleWeight);
	font-family: var(--titleFont);
}

:is(.textXXL, .textXL) :is(b, strong),
.titleWeight:is(.textXXL, .textXL) :is(p, span, li, a) {
	letter-spacing: var(--bigTitleSpacing);
}

:is(.textL, .textM, .textS) :is(b, strong),
.titleWeight:is(.textL, .textM, .textS) :is(p, span, li, a) {
	letter-spacing: var(--smallTitleSpacing);
}

/* Horisontal */
:is(.textXXL, .textXL, .textL, .textM, .textS, .textXS).center {
	text-align: center;
}

:is(.textXXL, .textXL, .textL, .textM, .textS, .textXS).right {
	text-align: right;
}


/* Vertical */

