html	{	-webkit-text-size-adjust: 100%; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased;  text-rendering: optimizeLegibility; }
body 	{	font-size: clamp(15px, 1.3333vw, 20px); line-height: 1.20; }
*	{	font-style: normal; font-weight: normal; }

button, label,
a, summary	 {	text-decoration: none; cursor: pointer; }

em,
.btn > span	{	white-space: nowrap; }

.ico,
.lang		{	line-height: 1.00; }

footer .sitemap,
.flg span,
small 		{	font-size: 0.85em; }

button, input,
textarea	 	{	font-size: 1.00em; }

strong,
summary,
q, .btn 	{	font-size: 1.10em; }

h1, h2 , h3, p, figcaption	{ 	max-width: 55.00rem; }

h1	 	{	font-size: 2.50em; }
h2	 	{	font-size: 2.00em; }
h3	 	{	font-size: 1.50em; }

p, ul,
figcaption	{	line-height: 1.50; }

p:not(.claim)	{	hyphens: auto; }
p:has(q) 		{	text-indent: -0.375em; margin-left: 0.375em; }

ul 		{	list-style-type: none; }
ol 		{	list-style-position: inside; }
ul > li 			{	position: relative; padding: 1.00em 0 1.00em 2.00em; }
ul > li:before 		{	content: 'east'; font-size: 1.25em; position: absolute; top: 0.625em; left: 0; }
ol > li 			{	padding: 1.00em 0; margin-left: 1.25em; text-indent: -1.25em; }
ol > li::marker 	{	line-height: 0; font-size: 1.05em; }

.claim					{ 	line-height: 1.20; letter-spacing: 0.025em; max-width: 60.00rem; }
#intro .claim 		{	font-size: 2.00em; line-height: 1.20; }
.fact .claim 		{	font-size: 2.00em; line-height: 1.20; }
#emo .claim 		{	font-size: 4.50em; line-height: 1.00; }

:is(#intro .claim, h1) + p 	{	font-size: 1.25em; }

.usp summary > span	{ 	font-size: 1.50em; }

.digits					{ 	font-size: 1.25em; }
.digits span > span		{ 	font-size: 5.00em; }
.digits span > span	> span	{ 	font-size:0.5em; }

#praxis .ref > q		{ 	font-size: 1.25em; }
#praxis .ref p + p		{ 	margin-left: 0.50em; line-height: 1.5; tab-size: 30; white-space: pre; }

a[href^="https://kogw.de"] 	{	display: block; font-size: 0.90em; letter-spacing: 0.05em; }

#pro .items a.pad:before 	{	font-variation-settings: 'FILL' 0, 'wght' 300; }

.page span 		{	line-height: 1.2; hyphens: auto; }

/* --- Center --- */

#pro :is(h2, h3, p),
.digits h3			 	{ 	text-align: center; margin: 0 auto; }

/* --- Space --- */

figure + *,
h1 + *,
h2 + *,
h3 + *,
p + * 		{	margin-top: var(--fixx); }

/*	=================================
		FONTS
	================================= */

body, small, button > span:before
{	font-family: 'sofo-400'; }

h1, h2, h3, input, textarea, strong, summary, .btn, p > a, .channel details > summary:after, .channel .gallery > *:after, .process span, .page span > a
{	font-family: 'sofo-500'; }

figcaption, .claim, q, .chart:after, .digits span
{	font-family: 'sofo-serif'; }

:before, :after
{	font-family: 'icongo'; }

{	font-family: 'mono'; }
/*	=================================
		END
	================================= */




@font-face 	{   font-family: 'sofo-400'; 	src: url('../fonts/aptos.woff') 			format('woff');  }
@font-face 	{   font-family: 'sofo-500'; 	src: url('../fonts/aptos-semibold.woff') 	format('woff');  }
@font-face 	{   font-family: 'sofo-serif'; 	src: url('../fonts/pt_serif-italic.woff2') 	format('woff2'); }

@font-face 	{   font-family: 'icongo'; 		src: url('../fonts/icongo.woff2') 			format('woff2'); }
@font-face 	{   font-family: 'mono';   		src: url('../fonts/consola.woff2')  		format('woff2'); }

/*	=================================
		END
	================================= */