/* Kaminbau Grothe – statische Version, angelehnt an das bisherige Layout (Theme "Accelerate") */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#c67722;color:#444;font:300 15px/1.65 "Roboto","Helvetica Neue",Arial,sans-serif;padding:30px 0}
a{color:#b14521;text-decoration:none}
a:hover,a:focus{text-decoration:underline}
a:focus-visible,button:focus-visible{outline:2px solid #b14521;outline-offset:3px}
img{max-width:100%;height:auto;border:0;vertical-align:middle}
h1,h2,h3{font-family:"Roboto Slab",Georgia,"Times New Roman",serif;color:#444;font-weight:400;line-height:1.3}
#page{max-width:1218px;margin:0 auto;background:#fff;border-top:3px solid #b14521;box-shadow:0 0 20px rgba(0,0,0,.15)}
.inner-wrap{max-width:1158px;margin:0 auto;padding:0 30px}
.header-wrap{padding-top:22px;padding-bottom:18px}
.logo{display:inline-block}
.logo img{display:block;max-height:110px;width:auto}
.logo-text{font-family:"Roboto Slab",Georgia,serif;font-size:30px;font-weight:700;color:#b14521;line-height:1.1}
.logo-text small{font-size:15px;font-weight:400;color:#666}
/* Navigation */
.main-navigation{border-top:1px solid #eaeaea;border-bottom:1px solid #eaeaea;background:#fff}
.main-navigation ul{list-style:none;margin:0;padding:0}
.menu{display:flex;flex-wrap:wrap}
.menu>li{position:relative}
.menu a{display:block;padding:12px 16px;color:#444;font-size:15px;font-weight:400}
.menu a:hover,.menu li:hover>a,.menu li.current>a,.menu li:focus-within>a{background:#b14521;color:#fff;text-decoration:none}
.sub-menu{position:absolute;left:0;top:100%;min-width:200px;background:#fff;box-shadow:0 4px 10px rgba(0,0,0,.15);z-index:20;display:none}
.menu li:hover>.sub-menu,.menu li:focus-within>.sub-menu{display:block}
.sub-menu a{padding:9px 16px;font-size:14px;border-top:1px solid #f0f0f0}
.menu-toggle{display:none;width:100%;margin:8px 0;padding:10px 14px;background:#b14521;color:#fff;border:0;font:inherit;font-weight:400;text-align:left;cursor:pointer;border-radius:2px}
.menu-toggle::before{content:"\2630";margin-right:10px}
/* Inhalt */
#main{padding:40px 0 30px;min-height:340px}
.entry-title{font-size:28px;margin:0 0 20px}
.entry-content p{margin:0 0 15px}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.service .service-image{display:block;overflow:hidden;margin-bottom:12px}
.service .service-image img{width:100%;transition:transform .4s}
.service .service-image:hover img{transform:scale(1.04)}
.service h2{font-size:22px;margin:0 0 10px}
.service h2 a{color:#444}
.service h2 a:hover{color:#b14521}
.product-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:25px 0 0}
.product-list a,.button{display:inline-block;background:#b14521;color:#fff;padding:9px 18px;border-radius:2px;font-weight:400}
.product-list a:hover,.button:hover{background:#8e3518;text-decoration:none}
.button-secondary{background:#fff;color:#b14521;border:1px solid #b14521;margin-left:6px}
.button-secondary:hover{background:#f7ebe6}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.gallery-item{display:block;border:1px solid #e3e3e3;padding:4px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.gallery-item img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.gallery-item:hover{border-color:#b14521}
.team p{margin:0 0 14px}
.contact-grid{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:10px 50px;margin-bottom:10px}
.map-box{border:1px solid #eaeaea;padding:20px 22px;max-width:620px;background:#faf8f6}
.small{font-size:13px;color:#777}
.partners{columns:2;column-gap:40px}
.partners p{break-inside:avoid}
/* Footer */
#colophon{border-top:3px solid #b14521;background:#f2f2f2;padding:18px 0;font-size:14px}
#colophon .inner-wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.footer-menu a{margin-left:16px;color:#444}
.footer-menu a:hover{color:#b14521}
#scroll-up{position:fixed;right:20px;bottom:20px;width:38px;height:38px;line-height:38px;text-align:center;background:#b14521;color:#fff;border-radius:2px;opacity:0;pointer-events:none;transition:opacity .3s}
#scroll-up.show{opacity:.85;pointer-events:auto}
#scroll-up:hover{text-decoration:none;opacity:1}
/* Lightbox */
.lb{position:fixed;inset:0;background:rgba(0,0,0,.88);display:flex;align-items:center;justify-content:center;z-index:100;padding:50px 60px}
.lb[hidden]{display:none}
.lb img{max-width:100%;max-height:100%;box-shadow:0 0 30px #000;background:#fff}
.lb button{position:absolute;background:none;border:0;color:#fff;font-size:42px;cursor:pointer;padding:8px 14px;line-height:1}
.lb .lb-close{top:6px;right:10px;font-size:36px}
.lb .lb-prev{left:6px;top:50%;transform:translateY(-50%)}
.lb .lb-next{right:6px;top:50%;transform:translateY(-50%)}
.lb .lb-count{position:absolute;bottom:14px;left:0;right:0;text-align:center;color:#ddd;font-size:14px}
/* Responsiv */
@media (max-width:900px){.services{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:repeat(3,1fr)}}
@media (max-width:768px){
 body{padding:0;background:#fff}
 .header-wrap{padding-top:14px;padding-bottom:12px}
 .inner-wrap{padding:0 18px}
 .menu-toggle{display:block}
 .menu{display:none;flex-direction:column;padding-bottom:8px}
 .menu.open{display:flex}
 .sub-menu{position:static;display:block;box-shadow:none;min-width:0}
 .sub-menu a{padding-left:34px}
 .services{grid-template-columns:1fr}
 .gallery{grid-template-columns:repeat(2,1fr);gap:10px}
 .contact-grid{grid-template-columns:1fr;gap:0}
 .partners{columns:1}
 .entry-title{font-size:24px}
 #colophon .inner-wrap{flex-direction:column}
 .footer-menu a{margin:0 16px 0 0}
 .lb{padding:50px 10px}
 .button-secondary{margin:8px 0 0}
}
@media print{body{background:#fff;padding:0}#site-navigation,#scroll-up{display:none}#page{box-shadow:none}}
