/*
Theme Name: LINEARTEC
Author: Chistoph Ehlers
Description: Ein WordPress-Theme mit zwei individuellen Seiten-Templates
Version: 1.0
*/
@font-face {
font-family: 'Montserrat-Bold';
src: url('webfonts/Montserrat-Bold.eot?#iefix') format('embedded-opentype'),  url('webfonts/Montserrat-Bold.woff') format('woff'), url('webfonts/Montserrat-Bold.ttf')  format('truetype'), url('webfonts/Montserrat-Bold.svg#Montserrat-Bold') format('svg');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Montserrat-Regular';
src: url('webfonts/Montserrat-Regular.eot?#iefix') format('embedded-opentype'),  url('webfonts/Montserrat-Regular.woff') format('woff'), url('webfonts/Montserrat-Regular.ttf')  format('truetype'), url('webfonts/Montserrat-Regular.svg#Montserrat-Regular') format('svg');
font-weight: normal;
font-style: normal;
}
/* Layout Basics */
*{
padding: 0;
margin: 0;
hyphens: auto;
box-sizing: border-box;
scroll-behavior: smooth;
}
body{
font-family: 'Montserrat-Regular', sans-serif;
font-weight: normal;
font-style: normal;
font-size: 18px;
line-height: 34px;
color: #fff;
text-align: left;
background-color: #000;
background-image: url("images/machina-grey.svg");
background-size: 100%;
background-repeat: no-repeat;
background-attachment: fixed;
}
/* Typografie */
h1{
font-size: 2.4em;
line-height: 1.2em;
text-transform: uppercase;
margin: 1em 0;
color: #66ff00;
}
h2{
margin: 1em 0;
font-size: 1.8em;
line-height: 1.4em;
}
h3{
color: #66ff00;
margin: 1em 0;
font-size: 1.6em;
line-height: 1.4em;
}
h4{
margin: 1em 0;
font-size: 1.2em;
line-height: 1.2em;
color: #66ff00; 
}
p{
margin:.4em 0 1.6em 0;
font-size: 1em;
line-height: 1.8em;
}
p a, p a:visited{
color: #66FF00;
text-decoration: underline dotted;
}
p a:hover, p a:focus,p a:active{
color: #fff;
text-decoration: underline dotted;
}
li a, li a:visited{
color: #66FF00;
text-decoration: underline dotted;
}
li a:hover, li a:focus,li a:active{
color: #fff;
text-decoration: underline dotted;
}
.content ul{
list-style: "+ ";
list-style-position: outside;
margin: .4em 0 1em .8em;
}
.content ul li{
margin: 0 0 .4em 0;
}
b, strong, em{
font-family: 'Montserrat-Bold';
font-weight: normal;
font-style: normal;
}
hr.wp-block-separator {
border-top: dotted 1px #66ff00;
border-bottom: none;
border-right: none;
border-left: none;
margin: 2em 0;
}
/* Bilder */
figure{
display: block;
margin: 1em 0 2em 0;
}
figure img{
width: 100%;
height: auto;
}
img{
width: 100%;
height: auto;
}
figcaption{
font-size: .88em;
color: #66ff00;
}
figcaption::before{
content: "Abb.: ";
}
/* Farben */
.has-neongruen-color{
color: #66ff00;
}
.has-dunkelgruen-color{
color: #339900;
}
.has-grau-color{
color: #666666;
}
.has-schwarz-color{
color: #000000;
}
.has-weiss-color{
color: #ffffff;
}
/* Layout */
header{
max-width: 1480px;
margin: 0 auto;
display: flex;
justify-content: space-between;
padding: 1em 2em;
}
.header-logo{
flex-basis: 30%;
cursor: pointer;
}
.custom-logo{
width: auto;
height: 3em;
cursor: pointer;
max-width: 60vw;
transition: all ease .4s;
}
.custom-logo:hover{
filter:saturate(0);
filter: brightness(4000%);
}
.header-nav{
flex-basis: 60%;
align-self: flex-end;
}
/* CSS für das responsive Menü */
.menu-toggle {
display: none;
}
.menu-icon {
display: none;
cursor: pointer;
flex-direction: column;
justify-content: space-between;
width: 30px;
height: 21px;
}
.menu-icon span {
display: block;
height: 3px;
background: #fff;
border-radius: 3px;
}
.header-menu {
display: flex;
list-style: none;
margin: 0;
padding: 0;
float: right;
}
ul.header-menu li {
margin: 0 0 0 1em;
}
ul.header-menu a, a:visited {
text-decoration: none;
color: #66ff00;
transition: all ease .2s;
}
ul.header-menu a:hover, a:focus, a:active {
text-decoration: none;
color: #fff;
}
header .current-menu-item a{
color: #fff;
border-bottom: solid #66ff00 2px;
}
.content{
max-width: 1480px;
margin: 0 auto;
padding: 1em 2em;
}
footer{
max-width: 1480px;
margin: 4em auto 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 1em 2em;
background-image: url("images/footer-grfx.svg");
background-position: bottom right;
background-repeat: no-repeat;
background-size: 100%;
}
#to-top{
display: none;
}
.top-box{
position: fixed;
right: 1em;
bottom: 1em;
}
.topbutton, .topbutton:hover, .topbutton:focus, .topbutton:active, .topbutton:visited{
background-image: url("images/to-top-01.svg");
background-repeat: no-repeat;
background-size: 100%;
width: 3em;
height: 3em;
display: block;
text-decoration: none;
border: none;
}
footer nav{
flex-basis: 33%;
}
.footer-menu{
list-style: none;
margin: 0 0 2em 0;
}
.footer-menu li{
padding: 0;
margin: 0 0 .6em 0;
}
.footer-menu li a::before{
content:"+\00a0";
}
.footer-menu li a, a:visited{
color: #339900;
text-decoration: none;
}
.footer-menu li a:hover, a:focus, a:active{
color: #fff;
text-decoration: none;
}
.copyright{
font-size: .8em;
flex-basis: 100%;
margin: 4em 0 0 0; 
}
.footer-contact{
font-size: .8em;
flex-basis: 33%; 
margin: 0 0 4em 0;	
}
.footer-contact a, .footer-contact a:visited{
font-size: 1.6em;
line-height: 1em;
font-family: 'Montserrat-Bold';
font-weight: normal;
font-style: normal;
color:#66ff00;
text-decoration: none;
display: block;
}
.footer-contact a:hover, .footer-contact a:focus, .footer-contact a:active{
color: #ffffff;
}
@media (max-width: 1440px) {
header{
flex-wrap: wrap;
}	
.header-nav{
flex-basis: 100%;
}	
}
 @media (max-width: 920px) {
 body{
font-size: 16px;
line-height: 26px;
} 
.menu-icon {
display: flex;
margin: 1em 0 0 0; 
}
.header-nav {
display: none;
flex-direction: column;
background: #000;
position: absolute;
top: 8em;
left: 0;
width: 100%;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.menu-toggle:checked + .menu-icon + .header-nav {
display: flex;
}
.header-menu {
flex-direction: column;
align-items: center;
}
.header-menu li {
margin: 10px 0;
}
footer nav{
flex-basis: 100%;
}
.footer-contact{
flex-basis: 100%;
margin: 1em 0 0 0;
}
}
/* Buttons */
.is-style-btn-large a, .is-style-btn-large a:visited{
text-decoration: none;
display: block;
border: solid 2px #66ff00;
border-radius: 2em;
padding: .4em;
text-align: center;
color: #66ff00;
background-color: #000;
font-size: 1.2em;
transition: all ease .4s;
margin: 1em 0;
}
.is-style-btn-large a:hover, .is-style-btn-large a:focus, .is-style-btn-large a:active{
border-radius: 0;
color: #000;
background-color: #66ff00;
text-decoration: none; 
}
.is-style-btn-medium a, 
.is-style-btn-medium a:visited{
text-decoration: none;
display: block;
border: solid 2px #66ff00;
border-radius: 2em;
padding: .2em;
text-align: center;
color: #000;
background-color: #fff;
font-size: 1em;
transition: all ease .4s;
margin: 1em 0;
}
.is-style-btn-medium a:hover, 
.is-style-btn-medium a:focus, 
.is-style-btn-medium a:active{
border-radius: 0;
color: #000;
background-color: #66ff00;
text-decoration: none; 
}
.is-style-introtext{
font-size: 1.4em;
line-height: 1.6em;
}
.is-style-checkmark li{

}
.is-style-list-xl li{
font-size: 1.4em;
line-height: 1.4em;	
}
.is-style-mail-link{
margin: 2em 0;
}
.is-style-mail-link a,
.is-style-mail-link a:visited{
background-image: url('images/icon-mail.svg');
background-repeat: no-repeat;
background-position: left center;
background-size: 1.8em;
line-height: 1.2em;
padding: .4em .4em .4em 2.4em;
font-size: 1.2em;
text-decoration: none;
}
.is-style-mail-link a:hover,
.is-style-mail-link a:focus,
.is-style-mail-link a:active{
text-decoration: none;
color: #fff;
filter: grayscale(100%);	
}
.is-style-phone-link{
margin: 2em 0;
}
.is-style-phone-link a,
.is-style-phone-link a:visited{
background-image: url('images/icon-phone.svg');
background-repeat: no-repeat;
background-position: left center;
background-size: 1.8em;
line-height: 1.2em;
padding: .4em .4em .4em 2.4em;
font-size: 1.2em;
text-decoration: none;
}
.is-style-phone-link a:hover,
.is-style-phone-link a:focus,
.is-style-phone-link a:active{
text-decoration: none;
color: #fff;
filter: grayscale(100%);	
}

/* Custom Blocks */
.teaser-xl{
position: relative;
width: 100 %;
height: 100%;
background: rgba(0,0,0,0.8);	
border: solid 2px #66ff00;
border-radius: 1em;
padding:1.6em 1em 1em 1em;
justify-content: stretch;
}
.teaser-xl-image{
width: 100%;
height: auto;
aspect-ratio: 3 / 2;
overflow: hidden;
background-color: #66ff00;
}
.teaser-xl-image img{
transform: scale(1);
transition: all ease .4s;	
}
.watermark{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image: url("https://lineartec.de/wp-content/uploads/2025/01/signet-outline-white.svg");
background-repeat: no-repeat;
background-position: center 26%;
background-size: 6em;
opacity: 1;	
}
.teaser-xl-text{
width: 100 %;
height: auto;
text-align: center;
}
.teaser-p-first{
font-size: 1.3em;
line-height: 1.4em;
margin:1em 0 .8em 0;
color: #66ff00;
text-transform: uppercase;
}
.teaser-p-second{
margin: 0;
font-size: 1em;
line-height: 1.4em;	
}
a.link-100,
a.link-100:hover,
a.link-100:focus,
a.link-100:active,
a.link-100:visited{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1111;
text-decoration: none!important;
border: none;
}
a.link-100:hover ~ .teaser-xl-image img{
transition: all ease .4s;
transform: scale(1.1);
mix-blend-mode: multiply;
filter: grayscale(100%);
}
a.link-100:hover ~ .teaser-xl-text .is-style-btn-large a {
border-radius: 0!important;
color: #000;
background-color: #66ff00;
text-decoration: none; 
}
a.link-100:hover ~ .teaser-xl-text {
color: #66ff00;
}

/* WP Columns Customized */
.wp-block-columns{
margin: 2em 0;
}