/* Grundeinstellungen */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    list-style: none;
    text-decoration: none;
    scroll-behavior: smooth;
    scroll-padding-top: 2rem;
    font-family: 'Urbanist', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
}

::selection,
::-moz-selection {
    color: #cfffe5;
    background-color: #327f8e;
}

:root {
    --text-color: #327f8e;
    --hover-color: crimson;
    --bg-color: #cfffe5;
    --sec-bg-color: #0da780;
    --big-font: 2.5rem;
    --norm-font: 2rem;
    --h2-font: 3rem;
    --clr: #cfffe5;
}

body {
    background-color: var(--bg-color);
    color: var(--text-color);
}

b, strong {
    font-weight: 700;
}

#content {
    padding: 25px 0;
}

@media (min-width:992px) {
    #content {
        padding: 60px 0;
    }
}

#content>.row>div+div {
    margin-top: 20px;
}

header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 20px 0;
}

header>.row {
    max-width: 1600px;
}

.logo {
    font-size: 26px;
    font-weight: 700;
    letter-spacing: 1px;
}

span {
    color: var(--hover-color);
    font-size: 26px;
    font-weight: 700;
    letter-spacing: 1px;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
}

h1 {
    font-size: 2.5rem;
}

h2, h3, h4, h5, h6 {
    font-size: clamp(1.25rem, 7vw, 1.6875rem);
}

/* Nav */

@media (min-width: 992px) {

    .is-fixed .navbar {
        padding: 15px 0 !important;
    }

    .navbar-custom.is-fixed .nav>li>a {
        color: #777;
    }

    .navbar-custom.is-fixed .nav>li>a:hover,
    .navbar-custom.is-fixed .nav>li>a:focus,
    .navbar-custom.is-fixed .nav>li.active>a {
        color: #777
    }

    .navbar-custom.is-fixed .nav>li>form>select {
        border: 1px solid #404040;
        color: #404040;
    }
}

@media (min-width: 992px) {
    .navbar-nav {
        display: flex;
        justify-content: flex-end;
    }

    .navbar-nav li+li {
        margin-left: 25px;
    }
}

/* Burgerbutton und mobiles Menü */

@media (max-width: 991px) {
    .navbar-default .navbar-toggle {
        border: none;
    }

    .navbar-custom .nav>li>a {
        padding: 15px;
        color: var(--bg-color);
    }

    .navbar-toggle {
        position: fixed;
        right: 25px;
        top: 25px;
        background: var(--text-color);
        padding: 12px 8px 8px 8px;
        border-radius: unset;
        z-index: 1002;
        box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.35);
        min-height: 45px;
        min-width: 45px;
    }

    .navbar-default .navbar-toggle .icon-bar {
        background-color: var(--bg-color);
    }

    .navbar-toggle .icon-bar {
        display: block;
        width: 35px;
        height: 4px;
        border-radius: 0;
        margin-bottom: 5px;
    }

    .navbar-collapse {
        position: fixed;
        top: 0;
        left: -100%;
        padding-left: 15px;
        padding-right: 15px;
        padding-top: 15px;
        width: 100%;
        height: 100% !important;
        background: var(--text-color);
        z-index: 1;
        -webkit-transition: all 200ms linear;
        -moz-transition: all 200ms linear;
        -ms-transition: all 200ms linear;
        -o-transition: all 200ms linear;
        transition: all 200ms linear;
    }

    .toggled .navbar-collapse {
        left: 0;
    }

    .navbar-collapse.collapsing {
        left: -75%;
        transition: height 300ms ease;
        -webkit-transition: height 300ms ease;
        -moz-transition: height 300ms ease;
        -ms-transition: height 300ms ease;
        -o-transition: height 300ms ease;
    }

    .navbar-toggler.collapsed~.navbar-collapse {
        transition: left 500ms ease-in-out;
    }
}

.navbar-toggle span.icon-bar {
    -webkit-transition: transform 200ms linear;
    -moz-transition: transform 200ms linear;
    -ms-transition: transform 200ms linear;
    -o-transition: transform 200ms linear;
    transition: transform 200ms linear;
}

.toggled .navbar-toggle span.icon-bar:nth-child(3) {
    display: none;
}

.toggled .navbar-toggle span.icon-bar:nth-child(1) {
    -webkit-transform: rotate(45deg) translate(1px, 0px);
    transform: rotate(45deg) translate(1px, 0px);
    margin: 0;
}

.toggled .navbar-toggle span.icon-bar:nth-child(2) {
    -webkit-transform: rotate(-45deg) translate(2px, -2px);
    transform: rotate(-45deg) translate(2px, -2px);
    margin: 0;
}

@media(min-width:992px) {
    .navbar-toggle {
        display: none !important;
    }
}

.navlist {
    display: flex;
}

.navlist a {
    color: var(--text-color);
    font-weight: 700;
    padding: 10px 20px;
}

.navlist a:hover {
    color: var(--hover-color);
}

#menu-icon {
    font-size: 1.8rem;
    z-index: 10001;
    cursor: pointer;
    margin-left: 25px;
    background: var(--text-color);
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    color: var(--bg-color);
    display: none;
}

.home-content h1 {
    font-size: var(--big-font);
    font-weight: 700;
}

.change-text {
    font-size: var(--big-font);
    font-weight: 700;
}

.change-text h3 {
    display: inline-flex;
    margin: 0;
    vertical-align: top;
}

.change-text h3 .word {
    position: absolute;
    display: flex;
    opacity: 0;
}

.change-text h3 .word .letter {
    transform-origin: center center 25px;
}

.change-text h3 .word .letter.out {
    transform: rotateX(90deg);
    -webkit-transform: rotateX(90deg);
    -moz-transform: rotateX(90deg);
    -ms-transform: rotateX(90deg);
    -o-transform: rotateX(90deg);
    transition: 0.32s cubic-bezier(0.6, 0, 0.7, 0.2);
    -webkit-transition: 0.32s cubic-bezier(0.6, 0, 0.7, 0.2);
    -moz-transition: 0.32s cubic-bezier(0.6, 0, 0.7, 0.2);
    -ms-transition: 0.32s cubic-bezier(0.6, 0, 0.7, 0.2);
    -o-transition: 0.32s cubic-bezier(0.6, 0, 0.7, 0.2);
}

.change-text h3 .word .letter.in {
    transition: 0.38s ease;
    -webkit-transition: 0.38s ease;
    -moz-transition: 0.38s ease;
    -ms-transition: 0.38s ease;
    -o-transition: 0.38s ease;
}

.change-text h3 .word .letter.behind {
    transform: rotateX(-90deg);
    -webkit-transform: rotateX(-90deg);
    -moz-transform: rotateX(-90deg);
    -ms-transform: rotateX(-90deg);
    -o-transform: rotateX(-90deg);
}

/* services */

#services .tab {
    background-color: #fff;
    padding: 20px 25px;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
    border-radius: 20px;
    height: 210px;
    margin: 10px;
    transition: all 500ms ease 0s;
    -webkit-transition: all 500ms ease 0s;
    -moz-transition: all 500ms ease 0s;
    -ms-transition: all 500ms ease 0s;
    -o-transition: all 500ms ease 0s;
}

#services .tab:hover {
    transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
}

#services .tabContent {
    display: flex;
    flex-wrap: wrap;
}

#services .tabContent p {
    width: 100%;
}

#services .tabContent a {
    display: inline-block;
    padding: 10px 15px;
    color: #fff;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    font-weight: 700;
    border: 5px solid var(--text-color);
    box-shadow: 0 0 0 10px var(--clr);
    border-radius: 30px;
    margin: 15px auto 0 auto;
    background-color: var(--sec-bg-color);
    border: 2px solid var(--sec-bg-color);
    transition: all 500ms ease 0s;
    -webkit-transition: all 500ms ease 0s;
    -moz-transition: all 500ms ease 0s;
    -ms-transition: all 500ms ease 0s;
    -o-transition: all 500ms ease 0s;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -ms-border-radius: 30px;
    -o-border-radius: 30px;
}

#services .tabContent a:hover {
    color: var(--sec-bg-color);
    background-color: var(--bg-color);
}

@media(max-width:991px) {
    #services>.row div+div {
        margin-top: 30px;
    }

    #services .tab {
        height: 250px;
    }
}

/* showImG */

#showImG a img {
    max-height: 300px;
    min-width: 640px;
    object-fit: cover;
    width: 100%;
}

#showImG a {
    position: relative;
    display: block;
    max-height: 300px;
    overflow: hidden;
    width: 100%;
}

#showImG a::before {
    content: '';
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #fff;
    z-index: 5;
    opacity: 0;
    pointer-events: none;
    transition: opacity 500ms ease 0s;
}

#showImG a::after {
    content: 'mehr erfahren';
    font-size: 16px;
    color: var(--sec-bg-color);
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 6;
    opacity: 0;
}

#showImG a:hover::before {
    opacity: 0.8;
}

#showImG a:hover::after {
    opacity: 1;
}

/* Zoom bei IMG hover   */
img.zoom {
    transition: transform 0.8s;
    -moz-transition: transform 0.8s;
    -webkit-transition: transform 0.8s;
    -o-transition: transform 0.8s;
    -ms-transition: transform 0.8s;
}

img.zoom:hover {
    /* cursor: zoom-in;
    cursor: -moz-zoom-in;
    cursor: -webkit-zoom-in; */
    transform: scale(2.0, 2.0);
    -moz-transform: scale(2.0, 2.0);
    -webkit-transform: scale(2.0, 2.0);
    -o-transform: scale(2.0, 2.0);
    -ms-transform: scale(2.0, 2.0);
}


/* Tooltip */
.tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
    /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltip .tooltiptext {
    visibility: hidden;
    width: 120px;
    background: var(--text-color);
    color: #fff;
    text-align: center;
    font-size: 12px;
    padding: 5px 0;
    border-radius: 6px;

    /* Position the tooltip text - see examples below! */
    bottom: 100%;
    left: 50%;
    margin-left: -60px;
    /* Use half of the width (120/2 = 60), to center the tooltip */


    position: absolute;
    z-index: 1;
}

.tooltip .tooltiptext::after {
    content: " ";
    position: absolute;
    top: 100%;
    /* At the bottom of the tooltip */
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: var(--text-color) transparent transparent transparent;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
    visibility: visible;
}

footer a {
    color: var(--hover-color);
}

@media (min-width:992px) {
    footer {
        padding: 45px 0;
    }
}

.info {
    margin: 1.5rem 0;
    display: flex;
    flex-direction: column;
}

.info .btn {
    cursor: pointer;
    color: #fff;
    background: #0da780;
    transition: all 0.3s ease;
    width: 270px;
    border: 1.5px solid #ddd;
    border-radius: 25px;
    text-align: center;
    padding: 0.45rem 0.8rem;
    outline: 0;
    margin-right: 0.2rem;
    margin-bottom: 1rem;
    transition: all 0.3s ease;
}

.btn a {
    color: #fff;
    text-decoration: none;
}

.btn:hover {
    opacity: 0.6;
}

.heart {
    width: 16px;
    height: 14px;
    transform: translate(0px, 2px);
    color: crimson;
}

.product {
    border: 2px solid rgb(137, 137, 137);
    border-radius: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    width: 270px;
    height: 270px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
}

::placeholder {
    color: #bebebe;
    opacity: 0.7;
}

option:disabled {
    color: #bebebe;
    opacity: 0.7;
    font-style: italic;
    font-weight: normal;
}

option {
    color: #0da780;
    font-weight: bold;
}

input:disabled+label {
    color: #bebebe;
    opacity: 0.7;
}

input {
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
}

#fila {
    border-collapse: collapse;
    /* width: 100%; */
}

#fila table {
    width: 100%;
}

#fila td, #fila th {
    border: 1px solid #ddd;
    padding-top: 8px;
    padding-bottom: 8px;
    padding-left: 15px;
    padding-right: 15px;
}

#fila tr:nth-child(even) {
    background-color: #f2f2f2;
}

#fila tr:hover {
    background-color: #f5b180;
}

#fila th {
    padding-top: 12px;
    padding-bottom: 12px;
    text-align: left;
    background-color: #327f8e;
    color: white;
    font-weight: bold;
}

.table_resp {
    overflow-x: auto;
}

form {
    padding: 10px;
    border-radius: 10px;
    background-color: #fff;
    opacity: 0.8;
    /* width: 50%; */
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
}

input[type=submit] {
    color: #2a2a2a;
    background-color: #0da780;
}

input[type=submit]:hover {
    color: #838383;
    background-color: #16ffc5;
}

input[type=text], input[type=radio], input[type=checkbox], select, textarea, button {
    padding: 10px;
    padding-left: 15px;
}

input#nozzletemplow, input#nozzletemphigh, input#platetemplow, input#platetemphigh, input#glastranstemp, input#printspeedlow, input#printspeedhigh {
    width: 60px;
}

select, input[type=text], input[type=url], input[type=email], input[type=password] {
    width: 240px;
    height: 42px;
}

textarea#description {
    min-height: 110px;
    min-width: 240px;
    width: 240px;
}

input[type="checkbox"]~label, input[type="radio"]~label, input[type="text"]~label {
    padding-left: 0;
}

.formular {
    columns: 3;
    column-gap: 2em;
}

.col_dbl {
    columns: 2;
    column-gap: 1em;
}

.not-allowed {
    cursor: not-allowed;
}

/* Grundeinstellungen Ende */

/* Font Awesome */

@font-face {
    font-family: "Font Awesome 6 Free";
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: local(''), url('../fonts/fa-regular-400.woff2') format("woff2"),
        url('../fonts/fa-regular-400.ttf') format('truetype');
}

@font-face {
    font-family: "Font Awesome 6 Free solid";
    font-style: bold;
    font-weight: 900;
    font-display: block;
    src: local(''), url('../fonts/fa-solid-900.woff2') format("woff2"),
        url('../fonts/fa-solid-900.ttf') format('truetype');
}

/* Font Urbanist */
@font-face {
    font-family: 'Urbanist';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/Urbanist-Regular.ttf');
}

@font-face {
    font-family: 'Urbanist';
    font-style: italic;
    font-weight: 400;
    src: url('../fonts/Urbanist-Italic.ttf');
}

@font-face {
    font-family: 'Urbanist';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/Urbanist-Bold.ttf');
}

@font-face {
    font-family: 'Urbanist';
    font-style: italic;
    font-weight: 700;
    src: url('../fonts/Urbanist-BoldItalic.ttf');
}