
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;padding:0;font-family:'Segoe UI',Arial,sans-serif;line-height:1.7;color:#333;background:#f5f5f5}img{max-width:100%;height:auto}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #287487;outline-offset:4px}p,li,dd,address{overflow-wrap:break-word}.skip-link{position:fixed;top:-100px;left:16px;z-index:9999;background:#fff;padding:12px;color:#111}.skip-link:focus{top:12px}
nav.site-nav{display:block;position:sticky;top:0;left:auto;right:auto;z-index:1000;background:#1a1a1a;padding:18px 0;box-shadow:0 3px 12px #0001;font-size:16px}
nav.site-nav .nav-container{width:100%;max-width:1640px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:20px}
nav.site-nav .logo{font-size:26px;font-weight:700;letter-spacing:-.5px;line-height:1.3;color:#fff;text-decoration:none;white-space:nowrap;flex-shrink:0}nav.site-nav .logo span{color:#ccc}
nav.site-nav .nav-menu{display:flex;position:static;align-items:center;flex-direction:row;flex-wrap:nowrap;gap:3px;width:auto;margin:0;padding:0;background:transparent;white-space:nowrap}
nav.site-nav .nav-menu a{display:block;padding:12px 16px;color:#fff;text-decoration:none;font-size:16px;font-weight:500;border:0;border-radius:6px;line-height:1.4;transform:none;min-height:44px}nav.site-nav .nav-menu a:hover,nav.site-nav .nav-menu a.active{background:#fff;color:#1a1a1a;transform:none}
nav.site-nav .hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;gap:5px;border:1px solid #777;border-radius:5px;background:transparent;padding:8px;cursor:pointer;flex-shrink:0}nav.site-nav .hamburger span{display:block;width:24px;height:2px;background:#fff}
footer.site-footer{display:block;width:100%;max-width:none;background:#1a1a1a;color:#aaa;text-align:center;padding:35px 20px;margin:55px 0 0;border:0;font-size:14px}footer.site-footer .footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 20px}footer.site-footer .footer-links a{display:inline-flex;align-items:center;min-height:44px;margin:0;color:#ddd;text-decoration:none}footer.site-footer p{color:#aaa;margin:12px 0 0;font-size:13px}
.home-main,.map-main{max-width:1200px;margin:40px auto;padding:0 24px}.home-hero{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;background:white;padding:48px;border-radius:12px}.home-hero img{width:100%;border-radius:8px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.15em;color:#666;margin:0 0 16px}.home-hero h1,.map-main h1{font-size:clamp(36px,4vw,56px);line-height:1.12;letter-spacing:-.035em;color:#1a1a1a;margin:0 0 22px}.home-lead{font-size:18px;line-height:1.7;color:#666;margin:0 0 22px}.home-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.action-primary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;background:#1a1a1a;color:white;font-weight:600;text-decoration:none;border-radius:6px}.action-primary:hover{background:#333}.action-text{color:#236271;font-weight:600;padding:12px 0;text-underline-offset:4px}.home-express,.home-visit{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 36px;border-radius:10px;margin-top:30px;background:#eaf2f3}.home-express h2,.home-visit h2,.home-services h2{font-size:30px;line-height:1.25;letter-spacing:-.025em;margin:0 0 12px}.home-express p,.home-visit p{margin:0;color:#555}.home-express .eyebrow,.home-visit .eyebrow{margin-bottom:12px}.home-express .action-primary{background:#236271;flex-shrink:0}.home-services{margin-top:55px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{display:block;background:#fff;border:1px solid #e4e4e4;border-radius:10px;overflow:hidden;color:#222;text-decoration:none}.service-card:hover{border-color:#236271}.service-card img{width:100%;height:210px;object-fit:contain;display:block;background:#fff}.service-card>div{padding:22px}.service-card h3{display:flex;justify-content:space-between;font-size:21px;margin:0 0 8px}.service-card p{font-size:16px;color:#666;margin:0}.home-visit{background:white}.map-main{background:white;border-radius:12px;padding:48px}.map-main header{position:static;background:none;color:inherit}.map-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-top:36px}.map-grid h2{font-size:23px;margin:0 0 12px}.map-grid ul{list-style:none;padding:0;margin:0}.map-grid li{border-top:1px solid #ddd;padding:12px 0}.map-grid a{display:inline-flex;align-items:center;min-height:44px;color:#236271;font-weight:600;text-underline-offset:4px}.map-grid p{margin:0;color:#666;font-size:16px}
@media(max-width:1280px){nav.site-nav .nav-container{flex-wrap:wrap}nav.site-nav .hamburger{display:flex}nav.site-nav .nav-menu{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;background:#292929;margin-top:8px;max-height:calc(100dvh - 115px);overflow:auto;white-space:normal}nav.site-nav .nav-menu.active{display:flex}nav.site-nav .nav-menu a{text-align:left;padding:14px 18px;border-bottom:1px solid #ffffff14}}
@media(max-width:900px){.home-hero{grid-template-columns:1fr;padding:30px}.home-hero img{max-height:380px;object-fit:contain}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-express,.home-visit{flex-direction:column;align-items:flex-start}}
@media(max-width:600px){html{scroll-padding-top:95px}nav.site-nav{padding:12px 0}nav.site-nav .nav-container{padding:0 16px;gap:10px}nav.site-nav .logo{font-size:clamp(18px,5.2vw,24px)}.container,.container.binding-page{width:auto;max-width:calc(100% - 24px);margin:20px 12px;padding:24px 18px}.container>*{min-width:0}.container h1{font-size:clamp(28px,8vw,40px);overflow-wrap:break-word}.container h2{font-size:25px}.container input,.container textarea,.container select{font-size:16px;max-width:100%}.binding-button{white-space:normal;min-height:48px}.opening-times th,.opening-times td{font-size:14px}.home-main{padding:0 12px;margin-top:20px}.home-hero{padding:28px 20px;gap:20px}.home-lead{font-size:17px}.home-express,.home-visit{padding:25px 20px}.home-services{margin-top:35px}.service-grid{grid-template-columns:1fr;gap:18px}.service-card img{height:220px}.map-main{margin:20px 12px;padding:28px 20px}.map-grid{grid-template-columns:1fr;gap:25px}.home-express h2,.home-visit h2,.home-services h2{font-size:27px}footer.site-footer{margin-top:35px}.contact-info,.contact-form{min-width:0}.footer-links{flex-wrap:wrap}main:not(.container):not(.home-main):not(.map-main){padding:16px}.hero .intro{padding:28px 20px}.hero h1{font-size:46px}.examples .example{grid-template-columns:1fr}.examples .mini{height:130px}.section-head{min-width:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
h1,h2,h3{max-width:100%;overflow-wrap:anywhere}iframe{max-width:100%}.contact-form form{min-width:0}.privacy-consent label{min-width:0}.privacy-consent span{min-width:0;overflow-wrap:normal;word-break:normal}

.image-viewer{position:fixed;inset:0;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border:0;padding:75px 24px 24px;margin:0;background:rgba(20,20,20,.96);overflow:auto;color:#fff}.image-viewer[open]{display:flex;align-items:center;justify-content:center}.image-viewer::backdrop{background:#111c}.image-viewer .image-viewer-photo{display:block;max-width:100%;max-height:calc(100dvh - 105px);width:auto;height:auto;object-fit:contain;background:#fff;border-radius:4px}.image-viewer-close{position:fixed;top:16px;right:20px;z-index:1;min-width:120px;min-height:44px;padding:10px 18px;background:white;border:1px solid #ddd;border-radius:6px;color:#111;cursor:pointer;font-size:16px;font-weight:600}.image-viewer-close:hover{background:#eee}@media(max-width:600px){.image-viewer{padding:72px 12px 16px}.image-viewer-close{top:12px;right:12px}.image-viewer .image-viewer-photo{max-height:calc(100dvh - 95px)}}

/* Sichtbare Leistungsnavigation am Desktop, kompaktes Auswahlraster mobil. */
nav.site-nav .nav-menu a{padding:12px}
nav.site-nav .hamburger{width:auto;flex-direction:row;gap:16px;padding:8px 14px;color:#fff}
nav.site-nav .hamburger .menu-caption,nav.site-nav .hamburger .menu-symbol{width:auto;height:auto;background:none;line-height:1.4}
nav.site-nav .hamburger .menu-caption{font-size:15px;font-weight:600}
nav.site-nav .hamburger .menu-symbol{font-size:20px}
@media(min-width:768px) and (max-width:1280px){nav.site-nav .nav-container{justify-content:center;gap:14px}nav.site-nav .hamburger{display:none}nav.site-nav .nav-menu,nav.site-nav .nav-menu.active{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:5px;margin:0;background:transparent;max-height:none;overflow:visible}nav.site-nav .nav-menu a{padding:10px 13px;border:0;background:#ffffff09}html{scroll-padding-top:180px}}
@media(max-width:767px){nav.site-nav .hamburger{display:flex}nav.site-nav .nav-menu{display:none;padding:10px;background:#242424;border-radius:8px;max-height:calc(100dvh - 165px)}nav.site-nav .nav-menu.active{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}nav.site-nav .nav-menu a{display:flex;align-items:center;padding:13px 12px;min-height:48px;border:1px solid #ffffff24;background:#303030;font-size:15px}nav.site-nav .nav-menu a:last-child{grid-column:1 / -1}nav.site-nav .nav-menu a.active,nav.site-nav .nav-menu a:hover{background:#fff;color:#1a1a1a}html{scroll-padding-top:155px}}
@media(max-width:600px){nav.site-nav .hamburger{width:100%;justify-content:space-between}nav.site-nav .nav-container{gap:10px}nav.site-nav .logo{font-size:23px}}

/* Regionale Motive aus Gütersloh ergänzen die Produktdarstellungen. */
.home-hero img.regional-hero{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:cover;max-height:490px;border-radius:8px}
.regional-strip{display:grid;grid-template-columns:240px minmax(0,1fr);gap:36px;align-items:center;max-width:1152px;margin:25px auto 0;background:#fff;border:1px solid #e0e6e3;border-radius:10px;overflow:hidden}
.regional-strip>img{display:block;width:100%;height:240px;object-fit:cover;margin:0}
.regional-strip>div{padding:24px 32px 24px 0;min-width:0}
.regional-strip .regional-eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;color:#236271;margin:0 0 10px}
.regional-strip h2{font-size:27px;line-height:1.25;letter-spacing:-.025em;color:#263735;margin:0 0 12px}
.regional-strip p{font-size:16px;line-height:1.65;color:#616b68;margin:0 0 14px}
.regional-strip .regional-link{display:inline-block;color:#236271;font-size:15px;font-weight:600;text-underline-offset:4px;padding:6px 0}
@media(max-width:1200px){.regional-strip{margin-left:24px;margin-right:24px}}
@media(max-width:600px){.regional-strip{grid-template-columns:1fr;gap:0;margin:20px 12px 0}.regional-strip>img{height:235px}.regional-strip>div{padding:24px}.regional-strip h2{font-size:25px}.home-hero img.regional-hero{max-height:360px}}

/* Firmenlogo rechts neben dem Schriftzug. */
nav.site-nav .logo{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
nav.site-nav .logo .brand-name{color:#fff}
nav.site-nav .logo .brand-mark{display:block;flex:0 0 56px;width:56px;height:56px;object-fit:contain;background:white;border-radius:4px;padding:2px}
@media(min-width:1281px) and (max-width:1400px){nav.site-nav .logo{font-size:23px;gap:10px}nav.site-nav .nav-menu a{padding:12px 10px}}
@media(max-width:600px){nav.site-nav .logo{font-size:clamp(18px,5vw,23px);gap:10px}nav.site-nav .logo .brand-mark{flex-basis:44px;width:44px;height:44px}}
