/* LKW-REIN: bisherige Farben, Bilder und Desktop-Abmessungen. */
:root{--blue:#0f447a;--dark-blue:#0a2c51;--ink:#444;--line:#aaa}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#656464;color:var(--ink);font:12px/1.4 Arial,Helvetica,sans-serif}
img{max-width:100%;height:auto;border:0;vertical-align:middle}
a{color:var(--dark-blue);text-decoration:none}
a:hover{color:#d85934}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #00b5db;outline-offset:3px}
button,input,textarea{font:inherit}
button{cursor:pointer}
h1,h2,h3,h4,p{margin-top:0}
h1{font-size:16px;line-height:1.3;margin-bottom:15px}
h2,h3,h4{font-size:14px;line-height:1.4;margin-bottom:10px}
ul{padding-left:20px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;left:12px;top:-80px;z-index:1000;padding:10px;background:#fff;color:#111}
.skip-link:focus{top:12px}
.site-frame{max-width:1029px;margin:0 auto;padding:0 50px;background:url('../picture/hinter_m.jpg') center repeat-y}
.site-header,.site-main{background-color:#fff}
.topbar{min-height:38px;background:#164b81;color:#fff;border-radius:0 0 10px 10px;padding:0 31px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.topbar-contact{display:flex;align-items:center;gap:20px;font-weight:bold;font-size:13px}
.topbar a{color:#fff}
.topbar a:hover{text-decoration:underline}
.topbar-contact span{font-size:23px;color:#00b5db;vertical-align:middle;line-height:1;margin-right:8px}
.legal-nav{display:flex;gap:16px}
.header-main{min-height:122px;position:relative}
.logo{display:block;position:absolute;right:32px;top:22px;width:210px}
.logo img{display:block;width:100%}
.main-nav{position:absolute;left:6px;top:47px;z-index:20}
.main-nav>ul{display:flex;list-style:none;margin:0;padding:0}
.nav-item{position:relative;border-left:1px solid #999}
.nav-item:first-child{border-left:0}
.nav-item>a,.nav-entry>a{display:block;padding:10px 18px;color:#444;font-weight:bold;white-space:nowrap}
.nav-entry{display:flex;align-items:center}
.nav-entry>a{padding-right:3px}
.nav-item a:hover{color:#777}
.nav-item a[aria-current],.nav-section-current>.nav-entry>a{color:var(--blue)}
.subnav-toggle{display:none;border:0;background:transparent;color:#444;padding:10px 8px;min-height:37px}
.js .subnav-toggle{display:block}
.subnav{position:absolute;left:0;top:100%;width:255px;margin:0;padding:0;list-style:none;background:#fff;border:1px solid #999;box-shadow:0 4px 8px #0002;display:none}
.subnav a{display:block;padding:8px 18px;border-bottom:1px solid #ddd;white-space:normal}
.subnav li:last-child a{border-bottom:0}
.nav-item.open>.subnav,.no-js .nav-item:hover>.subnav,.no-js .nav-item:focus-within>.subnav{display:block}
.menu-toggle{display:none}
.site-main{padding:10px 31px 0;min-height:315px;background-image:url('../picture/hintermb.jpg');background-position:bottom left;background-repeat:no-repeat}
.site-main:focus{outline:0}
.page-layout{min-width:0}
.page-layout.with-sidebar{display:grid;grid-template-columns:180px minmax(0,1fr);gap:23px}
.page-content{min-width:0;padding-bottom:20px;overflow-wrap:anywhere}
.sidebar{min-width:0;padding:0 0 20px}
.sidebar h2{font-size:14px;font-weight:normal;margin:0 0 8px}
.sidebar-toggle{display:none}
.sidebar ul{list-style:none;margin:0;padding:0}
.sidebar li{padding-left:14px;background:url('../picture/il.jpg') 0 9px no-repeat}
.sidebar a{display:block;padding:3px 0;color:#444}
.sidebar a[aria-current]{color:var(--blue);font-weight:bold}
.copy-media{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:15px}
.page-copy,.page-media{min-width:0}
.page-media img{display:block;margin:0 0 10px;max-width:100%}
.prose{overflow-wrap:anywhere}
.prose p{margin-bottom:14px}
.home-hero img{display:block;width:100%;height:auto}
.home-panels{display:grid;grid-template-columns:293px minmax(0,1fr);grid-template-areas:"services welcome";background:var(--blue);color:#fff;border-radius:0 0 10px 10px;overflow:hidden}
.home-panels section{min-width:0}
.home-services{grid-area:services;border-right:1px solid #ccc}
.home-welcome{grid-area:welcome}
.home-panels h2{font-size:14px;font-weight:bold;margin:0;min-height:31px;line-height:1.3;padding:7px 20px;background:#898988;color:#fff}
.home-panel-body{padding:15px 20px;line-height:1.4}
.home-panel-body ul{list-style:none;margin:0;padding:0}
.home-panel-body li{margin:0}
.home-panel-body a{color:#fff}
.home-panel-body a:hover{text-decoration:underline;color:#fff}
.dekra{text-align:right}
.dekra img{width:138px;height:117px}
.contact-address{margin-bottom:10px}
.contact-form{max-width:590px}
.form-row{display:grid;grid-template-columns:132px minmax(0,1fr);gap:12px;align-items:start;margin:0 0 9px}
.form-row label{padding-top:7px}
.form-row input,.form-row textarea{width:100%;min-width:0;border:1px solid #aaa;background:#fff;color:#333;padding:7px 8px;border-radius:0}
.form-row textarea{resize:vertical;min-height:120px}
.form-row input[aria-invalid=true],.form-row textarea[aria-invalid=true]{border-color:#a21b1b}
.form-note{margin:18px 0 15px;line-height:1.6}
.form-note a{text-decoration:underline}
.submit-button{background:var(--blue);color:#fff;border:1px solid var(--blue);padding:9px 20px}
.submit-button:hover{background:var(--dark-blue)}
.submit-button:disabled{cursor:wait;opacity:.65}
.form-status{margin:12px 0;padding:12px;background:#edf4f9;line-height:1.5}
[data-form-status][data-state=error]{color:#a21b1b}
[data-form-status][data-state=success]{color:#17612c}
.form-status[hidden],.form-status:empty{display:none!important}
.form-mailer-trap{display:none}
.no-js form[data-form-mailer]{display:none}
.map-link{display:block;margin-bottom:12px}
.map-link img{width:100%;height:auto}
.route-description{max-width:760px}
.site-footer{height:70px;margin:0 -50px;background:url('../picture/hinter_mu.jpg') top center no-repeat}
@media(max-width:1028px){
 body{background:#fff}
 .site-frame{max-width:929px;padding:0;background:none}
 .site-footer{margin:0;background-size:cover}
}
@media(max-width:900px){
 .header-main{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:20px 24px;gap:20px;min-height:115px}
 .logo{position:static;margin-left:auto;width:210px;order:2}
 .menu-toggle{order:1;background:#fff;color:var(--dark-blue);border:1px solid #aaa;padding:10px 16px;align-items:center;gap:9px;font-size:14px}
 .js .menu-toggle{display:flex}
 .main-nav{position:static;width:100%;order:3}
 .js .main-nav{display:none}
 .js .site-header.menu-open .main-nav{display:block}
 .main-nav>ul{display:block;border-top:1px solid #ccc}
 .nav-item{border-left:0;border-bottom:1px solid #ccc}
 .nav-item>a,.nav-entry>a{padding:12px 10px;font-size:14px;white-space:normal}
 .nav-entry{justify-content:space-between}
 .nav-entry>a{flex:1}
 .subnav-toggle{padding:12px 16px;min-width:46px;min-height:44px}
 .subnav{position:static;width:100%;box-shadow:none;border:0;padding-left:18px;background:#f4f6f8}
 .subnav a{padding:10px;font-size:14px}
 .no-js .subnav{display:block}
 .site-main{padding-left:24px;padding-right:24px}
 .page-layout.with-sidebar{grid-template-columns:160px minmax(0,1fr);gap:18px}
 .copy-media{grid-template-columns:minmax(0,1fr)}
 .page-media{order:-1}
 .page-media img{max-width:260px}
}
@media(max-width:640px){
 body{font-size:14px;line-height:1.55}
 h1{font-size:18px}
 h2,h3,h4{font-size:16px}
 .topbar{padding:10px 16px;flex-wrap:wrap;gap:8px;border-radius:0}
 .topbar-contact{flex-wrap:wrap;gap:8px 16px;font-size:13px}
 .topbar-contact a{white-space:nowrap}
 .topbar-contact span{font-size:19px;margin-right:5px}
 .legal-nav{font-size:12px;gap:16px}
 .header-main{padding:18px 16px;gap:14px;min-height:0}
 .logo{width:min(210px,60%)}
 .menu-toggle{padding:9px 12px}
 .site-main{padding:10px 16px 0;background-size:min(527px,100%) auto}
 .page-layout.with-sidebar{display:block}
 .sidebar{padding-bottom:18px}
 .sidebar ul{display:flex;flex-wrap:wrap;gap:6px}
 .sidebar li{background:none;padding:0}
 .sidebar li a{padding:6px 9px;border:1px solid #ddd;background:#f4f6f8;font-size:12px}
 .sidebar h2{font-size:15px}
 .js .service-sidebar .sidebar-heading-link{display:none}
 .js .sidebar-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:44px;padding:10px 12px;border:1px solid #ccc;background:#f4f6f8;color:var(--dark-blue);font:inherit;text-align:left}
 .sidebar-toggle-arrow{display:inline-block;font-size:16px}
 .sidebar-toggle[aria-expanded="true"] .sidebar-toggle-arrow{transform:rotate(180deg)}
 .js .service-sidebar:not(.is-expanded) .sidebar-links{display:none}
 .service-sidebar .sidebar-links{margin-top:8px}
 .copy-media{gap:10px}
 .page-media img{max-width:min(260px,100%)}
 .home-panels{grid-template-columns:minmax(0,1fr);grid-template-areas:"welcome" "services"}
 .home-services{border-right:0}
 .home-panels h2{min-height:0;padding:10px 14px;font-size:15px}
 .home-panel-body{padding:14px;line-height:1.55}
 .home-panel-body a{display:inline-block;padding:3px 0}
 .form-row{display:block;margin-bottom:12px}
 .form-row label{display:block;margin-bottom:4px;padding:0}
 .form-row input,.form-row textarea{font-size:16px;padding:10px;line-height:1.4}
 .submit-button{min-height:44px;font-size:16px}
 .site-footer{height:45px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{
 body{background:#fff;color:#000;font-size:11pt}
 .site-frame{max-width:none;padding:0;background:none}
 .topbar,.main-nav,.menu-toggle,.sidebar,.site-footer,.skip-link,.contact-form{display:none!important}
 .header-main{height:auto;min-height:0;padding:0 0 20px}
 .logo{position:static;width:160px;margin:0}
 .site-main{padding:0;background:none}
 .page-layout.with-sidebar{display:block}
 .home-panels{color:#000;background:#fff}
 .home-panel-body a{color:#000}
 .home-hero img{max-height:250px;width:auto}
}
