﻿html, body {
    -webkit-text-size-adjust: 100%;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body {
    font-size: calc(12px + (18 - 12) * (100vw - 1024px) / (3840 - 1024));
    line-height: 1.0;
}


.nob {
    white-space: nowrap;
}

i {
    text-decoration: underline;
}

b {
    font-weight: normal;
}

small {
    font-size: 0.75em;
}

strong {
    font-size: 1.20em;
}

a, label, button, video {
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    color: inherit;
}

p a {
    display: inline-block;
    margin-right: 0.30em;
    letter-spacing: 0.03em;
}

    p a:hover, .ico:hover {
        text-decoration: underline;
    }

figcaption {
    font-size: 0.90em;
    font-style: italic;
}

input, select, textarea {
    font-size: 1.00em;
}

.legend {
    font-size: 0.75em;
    font-style: italic;
}

.btn {
    font-size: 1.00em;
    line-height: 1.00;
}

    .btn.small {
        font-size: 0.90em;
    }

.ico {
    font-size: 0.90em;
    white-space: nowrap;
}

label {
    font-size: 0.90em;
    line-height: 1.20em;
}

table label {
    font-size: 1.025em;
    line-height: 1.20em;
}

.ico.search {
    font-size: 1.00em;
}

/* --------------------------------------------------------------------------- */

h1, h2, h3, h4 {
    position: relative;
    line-height: 1.20;
}

h1 {
    font-size: 1.50em;
}

h2 {
    font-size: 1.50em;
}

    h2 + span {
        display: block;
    }

h3 {
    font-size: 1.15em;
}

    h3 + span {
        display: block;
    }

.db .head.sub h3 {
    line-height: 1.50;
    white-space: pre;
    overflow: hidden;
    text-overflow: ellipsis;
}

h4 {
    font-size: 1.00em;
}

.h3big {
    font-size: 1.25em;
}
/* Größere Überschrift über den Dashboard toggles*/
p, li,
figcaption {
    line-height: 1.50;
}

p, .pad span {
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
}

ul, ol {
    margin: 0 1.00em;
}

li + li {
    display: list-item;
    width: auto;
}

ol > li > a {
    display: block;
}

.clamp,
.monitor > .actions > a > span {
    white-space: pre;
    overflow: hidden;
    max-width: 100.0%;
    text-overflow: " ...";
}

/*
.clamp	 { display: -webkit-box; 
           -webkit-box-orient: vertical;  
           overflow: hidden;  -webkit-line-clamp: 1; }

/* --------------------------------------------------------------------------- */

.pad .pot {
    font-size: 2.50em;
    float: right;
}

.pad .btn {
    font-size: 0.75em;
    line-height: 1.20;
    text-align: center;
}

.pad.tab:before {
    font-size: 0.85em;
    font-weight: bold;
}

.progress:before {
    font-size: 0.75em;
}

.progress:after {
}

.tooltip {
    font-size: 0.66rem;
    text-align: center;
}
/* Hier feste Schriftgröße! */

.docu > div {
    font-size: 0.75em;
    line-height: 1.40;
}

.docu details > div > p + p {
    text-indent: -17.50em;
    margin-left: 17.50em;
}

    .docu details > div > p + p > span {
        text-indent: 0;
        margin-left: 0;
        display: inline-block;
        width: 17.50em;
    }

input.switch + label:before,
.bubble:after, .newsbubble {
    font-size: 0.75em;
    line-height: 1.00;
}

.scrollsnaps > *:before {
    font-size: 0.75em;
    text-align: center;
}

ul.items li:before {
    font-size: 1.50em;
}

#hotline a[href^="../"] {
    font-size: 0.90em;
    text-transform: uppercase;
}

/* --- Sub-Menu --- */

#submenu > div > span:first-child {
    font-size: 1.05em;
    text-transform: uppercase;
    letter-spacing: 0.125em;
}

    #submenu > div > span:first-child > a:after {
        font-size: 1.75em;
        text-transform: none;
    }

#submenu > div > span:last-child > a {
    font-size: 0.90em;
}

/* --- Table --- */

table {
    line-height: 1.20;
}

    table th, table .org {
        font-size: 0.66em;
        text-align: left;
    }

tr.sub > * {
    letter-spacing: 0.025em;
}

table td {
    font-size: 0.85em;
}

    table td select {
        font-size: 1.00em;
    }

    table td .ico {
        font-size: 1.25em;
    }

td:empty {
    text-align: center;
    font-style: italic;
}

/* --- Footer --- */

.designby {
    font-style: italic;
}

/* --- Spacing --- */

* + .scrollbox,
.concept + .concept,
.grid + table,
table + .grid,
table + h2,
.box + figure,
hr + figure,
figure + table,
.box + table,
table + .box {
    margin-top: 3.00em;
}

nav a + a,
.grid + .control,
.grid + h2,
.control + *,
p + table,
table + figure,
table + div,
table + .btn,
.data + .data,
.box + ol,
.box + h4 {
    margin-top: 1.50em;
}

.concept td > * + *,
iframe + *,
h2 + *,
h2 + table,
img + h3,
h4 + table,
h4 + ol,
h3 + *,
ol + h4,
p + h2,
p + h3,
p + ul,
p + div,
ul + p,
h3 + hr,
h3 + .scroll,
.display li + li,
nav li + li,
p + p,
ul + p {
    margin-top: 1.00em;
}

li + li,
span + h4,
table p + p {
    margin-top: 0.50em;
}

h3 + .monitor-results,
h3 + .ico {
    margin-top: 0;
}

/*	=================================
		FONTS
	================================= */

body, small, p, table th, td.org {
    font-family: 'sofo-book', Courier, monospace;
    font-style: normal;
    font-weight: 400;
}

header *, h2, h3, h4, table *, #quick *, input, select, textarea, label, .ico, .btn, nav *, #submenu a, ul > li > span, .chart *, .progress:after {
    font-family: 'sofo-regu', Courier, monospace;
    font-style: normal;
    font-weight: 400;
}

strong, b, h1, #hotline a, .helppoint, #submenu > div > span:first-child, .pad > .status, tr.sub > *, td.bold, .bubble:after, summary.dokuhead > *:nth-child(6), ul.items li:before, ul.items li.red, .pad .pot,
.donut > .bot > span > span .trend + span:before, .donut > .bot > span > span .txt + span:before, .newsbubble {
    font-family: 'sofo-semi', Courier, monospace;
    font-style: normal;
    font-weight: 400;
}

    a[href^="tel:"]:before, a[href^="mailto:"]:before, #submenu > div > span:first-child > a:after, table tr > td:has(label > input) > label:before, label.pur:before {
        font-family: 'icongo', Courier, monospace !important;
        font-style: normal;
        font-weight: normal;
    }

@font-face {
    font-family: 'sofo-book';
    src: url('../fonts/ToyotaType-Book.woff2') format('woff2');
}

@font-face {
    font-family: 'sofo-regu';
    src: url('../fonts/ToyotaType-Regular.woff2') format('woff2');
}

@font-face {
    font-family: 'sofo-semi';
    src: url('../fonts/ToyotaType-Semibold.woff2') format('woff2');
}

@font-face {
    font-family: 'mono';
    src: url('../fonts/consola.woff2') format('woff2');
}

@font-face {
    font-family: 'icongo';
    src: url('../fonts/icongo.woff2') format('woff2');
}

/*	=================================
		END
	================================= */
