@font-face {
    font-family: noto;
    font-weight: 400;
    font-display: swap;
    src: url(NotoSans_Condensed-Regular.ttf)format("truetype")
}

@font-face {
    font-family: noto;
    font-weight: 500;
    font-display: swap;
    src: url(NotoSans_Condensed-Medium.ttf)format("truetype")
}

@font-face {
    font-family: noto;
    font-weight: 600;
    font-display: swap;
    src: url(NotoSans_Condensed-SemiBold.ttf)format("truetype")
}

@font-face {
    font-family: noto;
    font-weight: 700;
    font-display: swap;
    src: url(NotoSans_Condensed-Bold.ttf)format("truetype")
}

* {
    position: relative;
    margin: unset;
    margin-block: unset;
    margin-inline-start: unset;
    margin-inline-end: unset;
    padding: unset;
    border: 0px solid black;
    box-sizing: border-box;
    font-family: noto, sans-serif;
    unicode-bidi: plaintext;
    font-weight: 400;
    line-height: 1;
    white-space-collapse: collapse;
}

.screen-reader {
    position: absolute;
    left: -9999px;
    z-index: -1;
    white-space: nowrap;
}

.page {
    margin-block: unset;
    padding: 5mm;
    width: 75rem;
    height: 52rem;
    background-color: white;
    color: black;
    overflow: visible;
}

.page-header {
    display: flex;
    gap: 1.2rem;
    align-items: center;
}

.span-h1 {
    align-items: center;
    display: flex;
    gap: 1.2rem;
    width: 100%;
}

.line {
    font-size: 2.6rem;
    color: white;
    background-color: black;
    min-width: 8rem;
    padding: 1rem;
    text-align: right;
}

.destination {
    margin: 0px;
    margin-block: 0px;
    font-size: 1.8rem;
}

.symbols {
    margin-left: auto;
    text-align: right;
    font-size: 1rem;
}

.symbols_img {
    height: 4.4rem;
}

.symbols_coffe{
    height: 1rem;
}

.stops-list {
    margin-top: 1mm;
}

h2 .destination {
    color: white;
    background-color: black;
    display: block;
    padding-top: 0.4rem;
    padding-left: 0.4rem;
    padding-bottom: 0.4rem;
    font-size: 1.1rem;
    text-transform: uppercase;
}

.column20 {
    float: left;
    width: 20%;
}

.column50 {
    float: left;
    width: 50%;
}

.stop {
    font-size: 1.1rem;
    line-height: 1.3;
}

.timingPoint {
    font-weight: 700;
}

.padding-left {
    padding-left: 0.4rem;
}

h2 {
    margin-top: 2mm;
}

.attention {
    color: white;
    background-color: black;
    display: block;
    padding-top: 0.4rem;
    padding-left: 0.4rem;
    padding-bottom: 0.4rem;
    font-size: 1rem;
    text-transform: uppercase;
}

.padding-after-header {
    padding-top: 0.15rem;
}

.footer {
    display: block;
    position: absolute;
    bottom: 0mm;
    width: 100%;
    padding-right: 10mm;
    min-height: 15mm;
}

h2.daytype {
    display: block;
    padding-top: 0.4rem;
    padding-left: 0.4rem;
    padding-bottom: 0.4rem;
    font-size: 1.1rem;
    text-transform: uppercase;
}

h2.daytype.default {
    color: white;
    background-color: rgb(111 111 111);
}

h2.daytype.saturday {
    color: white;
    background-color: rgb(104 104 104);
}

h2.daytype.sunday {
    color: white;
    background-color: rgb(0 0 0);
}

h2.margin-right-05 {
    margin-right: 0.5rem;
}

.row {
    display: block;
}

.border-bottom {
    border-bottom: 1px solid black;
    margin-top: 1px;
    margin-bottom: 1px;
}

.timetable-block {
    overflow: hidden;
    min-width: 10.5rem;
}

.timetable-block-min2 {
    overflow: hidden;
    min-width: 7rem;
}

.timetable-block-min3 {
    overflow: hidden;
    min-width: 10.5rem;
}

.column16 {
    float: left;
    width: 3.5rem;
    overflow: hidden;
    white-space: nowrap;
}

.timetable-block p {
    line-height: 1.4;
    font-size: 1rem;
}

.timetable-block p {
    line-height: 1.4;
    font-size: 1rem;
}

.timetable-block-min2 p {
    line-height: 1.4;
    font-size: 1rem;
}

.timetable-block-min3 p {
    line-height: 1.4;
    font-size: 1rem;
}

.column {
    float: left;
}

.columnStops {
    float: left;
    line-height: 1.4;
    font-size: 1rem;
    overflow: hidden;
    width: 12.38rem;
    white-space: nowrap;
}

.note-row-heading {
    text-align: right;
    padding-right: 0.3rem;
    font-weight: 700;
}

.note-row-key {
    align-items: center;
    display: flex;
    font-weight: 700;
    padding-left: 0.8rem;
}

.note-addition {
    font-weight: 700;
}

.time-note {
    background-color: transparent;
}

.time {
    background-color: transparent;
}

.time-repetition-start {
    background-color: transparent;
    width: 3rem;
}

.time-repetition-end {
    background-color: transparent;
    padding-left: 0.5rem;
    width: 4rem;
}

.repetition-note {
    background-color: transparent;
}

.repetition {
    background-color: #D0D1D3;
}

.column16-interval {
    float: left;
    width: 3.5rem;
    overflow: visible;
    white-space: normal;
}

.intervalStart-note {
    background-color: transparent;
}

.intervalStart {
    text-align: right;
}

.interval-block-2-column16 {
    position: absolute;
    width: 7rem;
    background-color: white;
    align-items: center;
    display: flex;
    justify-content: center;
    text-align: center;
    font-size: 1rem;
    line-height: 1.4rem;
    top: 0rem;
    left: 0rem;
    z-index: 999999;
    white-space: normal;
    overflow: hidden;
    border-left: 1px solid black;
    border-right: 1px solid black;
}

p.interval-hidden {
    visibility: hidden;
    white-space: nowrap;
}

.intervalEnd-note {
    background-color: transparent;
}

.intervalEnd {
    text-align: left;
}

.notes {
    color: white;
    background-color: black;
    display: block;
    padding-top: 0.3rem;
    padding-left: 0.4rem;
    padding-bottom: 0.3rem;
    font-size: 1rem;
    text-transform: uppercase;
}

.validity {
    color: white;
    background-color: black;
    display: block;
    padding-top: 0.3rem;
    padding-right: 0.4rem;
    padding-bottom: 0.3rem;
    font-size: 1rem;
    text-align: right;
    text-transform: unset;
}

.note {
    display: grid;
    grid-template-columns: 1.4rem auto;
}

.noteKey {
    display: inline-block;
    font-weight: 700;
    text-align: center;
    vertical-align: top;
}

.noteText {
    display: inline-block;
    font-weight: 400;
    text-wrap-style: balance;
    vertical-align: top;
}

.column25 {
    float: left;
    width: 25%;
}

a {
    white-space: nowrap;
    text-decoration: underline;
    color: black;
}

.row.following {
    display: none1;
}

/* Style the columns */

/* Clear floats after the columns */
.row:after {
    content: "";
    display: table;
    clear: both;
}

.header1 {
    background-color: #6f6f6f;
}

.header2 {
    background-color: #48484A;
}

#header,
.header,
.header3,
.header4,
.header5 {
    background-color: black;
}

#header,
.header,
.header1,
.header2,
.header3,
.header4,
.header5 {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    text-align: left;
    color: white;
    margin-bottom: 5px;
}

.hour,
.minute,
.interval {
    padding-top: 3px;
    padding-bottom: 3px;
    padding-right: 3px;
    margin-top: 0px;
    margin-left: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    display: inline-block;
}

.hour {
    min-width: 18px;
    max-width: 18px;
    padding-left: 3px;
    color: white;
    background-color: black;
}

.minute,
.interval {
    padding-left: 0px;
    color: black;
    background-color: white;
}

.minute {
    min-width: 2.2rem;
    max-width: 2.2rem;
}

.DHW {
    margin: 0px;
    min-height: 5px;
    padding-top: 3px;
    padding-bottom: 3px;
    padding-left: 3px;
    padding-right: 3px;
    opacity: 0;
    background-color: white
}

.DHW_none {
    margin: 0px;
    min-height: 5px;
    padding-left: 3px;
    padding-right: 3px;
    font-size: 0.1rem;
    opacity: 0;
    background-color: white
}

.stopsMinute {
    text-align: right;
    min-width: 15px;
    max-width: 15px;
    margin-right: 5px;
    line-height: 1.1;
}

#STOPPOINT {
    position: absolute;
    bottom: 5mm;
    left: 3mm;
    font-size: 9pt;
    transform: rotate(-90deg);
}

#footer {
    padding-left: 45px;
    padding-right: 45px;
    padding-top: 0.83rem;
    max-width: 1280px;
    display: flex;
    gap: 0.83rem;
    overflow: hidden;
}

#footer p {
    text-wrap: pretty;
}

#EXPLANATION P {
    padding-left: 6px;
}

#INFORMATION {
    max-width: 100%;
}

#info {
    white-space: nowrap;
}

#LOGOTYPE {
    visibility: visible;
    min-width: 230px;
}

#LOGOTYPE img {
    position: absolute;
    bottom: 0;
}

nav {
    position: absolute;
    z-index: 10000;
    left: 5px;
    top: 0px;
}

nav a {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: white;
    border-radius: 2px;
    color: var(--text-text-secondary);
    cursor: pointer;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-family: sans-serif;
    height: 2em;
    letter-spacing: inherit;
    opacity: 0;
    padding: .2rem;
    position: absolute;
    text-decoration: none;
    text-transform: inherit;
    top: 16px;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    white-space: nowrap;
    width: auto
}

nav a:focus {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

a:focus-visible {
    outline: 3px solid black;
}

@media print {
    @page {
        size: A5 landscape;
        margin: 0mm;
    }

    /* Force a new page before this element */
    .page-break-before {
        break-before: page;
        /* Modern */
        page-break-before: always;
        /* Legacy */
    }

    /* Force a new page after this element */
    .page-break-after {
        break-after: page;
        /* Modern */
        page-break-after: always;
        /* Legacy */
    }

    /* Prevent an element from being split across pages */
    .no-break {
        break-inside: avoid;
        /* Modern */
        page-break-inside: avoid;
        /* Legacy */
    }

    * {
        font-size: 10.5px;
    }

    a {
        text-decoration: none;
    }

    .page {
        width: unset;
        height: 138mm;
    }

    .columnStops {
        width: 14rem;
    }

    .column16 {
        width: 3.6rem;
    }

    .timetable-block {
        overflow: hidden;
        min-width: 10.8rem;
    }

    .timetable-block-min2 {
        overflow: hidden;
        min-width: 7.2rem;
    }

    .timetable-block-min3 {
        overflow: hidden;
        min-width: 10.8rem;
    }

   .time-repetition-start {
        width: 3rem;
    }

    .time-repetition-end {
        padding-left: 0.6rem;
        width: 4.2rem;
    }
}