/* Gemeinsamer Seitenrahmen: Topline, Kopf, Handy-Menü, Fußzeile (lib/site-chrome.php) */

.cs-topline{height:34px;background:#10251d;color:#cbdcc6;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 28px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;position:relative}
.cs-topline-sep{opacity:.45}
.cs-topline-phone{position:absolute;right:28px;color:#f6f1e8;letter-spacing:.06em}

.cs-header{position:sticky;top:0;z-index:50;height:92px;display:flex;align-items:center;gap:28px;padding:0 clamp(20px,3.2vw,48px);background:rgba(246,241,232,.96);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid rgba(23,42,36,.08)}
.cs-brand{flex:0 0 auto;display:block;width:clamp(210px,21vw,300px)}
.cs-brand img{display:block;width:100%;height:auto}
.cs-nav{display:flex;align-items:center;gap:clamp(18px,2vw,30px);margin-left:auto;font-size:14px;font-weight:600;color:var(--ink-soft,#4b5f58)}
.cs-nav a{position:relative;padding:8px 0;white-space:nowrap;color:inherit;text-decoration:none}
.cs-nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--orange,#df7d42);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.cs-nav a:hover,.cs-nav a[aria-current="page"]{color:var(--ink,#173a2d)}
.cs-nav a:hover::after,.cs-nav a[aria-current="page"]::after{transform:scaleX(1)}
.cs-cta{flex:0 0 auto;display:inline-flex;align-items:center;gap:10px;background:var(--ink,#173a2d);color:#fff;border-radius:99px;padding:13px 20px;font-size:13px;font-weight:700;white-space:nowrap;text-decoration:none;transition:background .2s ease}
.cs-cta:hover{background:var(--orange,#df7d42)}
.cs-cta span{font-size:15px}

.cs-menu-button{display:none;flex:0 0 auto;width:48px;height:48px;border:0;border-radius:50%;background:var(--ink,#173a2d);cursor:pointer;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.cs-menu-button span{display:block;width:20px;height:2px;background:#fff;border-radius:2px;transition:transform .25s ease,opacity .2s ease}
.cs-menu-button[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.cs-menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}
.cs-menu-button[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.cs-menu{position:fixed;inset:0;top:var(--cs-menu-top,92px);z-index:49;background:#10251d;color:#f6f1e8;overflow-y:auto;padding:28px clamp(22px,5vw,48px) 40px;display:grid;align-content:start;gap:28px}
.cs-menu[hidden]{display:none}
.cs-menu a{color:inherit;text-decoration:none}
.cs-menu-main{display:grid}
.cs-menu-main a{font-size:clamp(28px,7vw,40px);font-weight:800;letter-spacing:-.05em;line-height:1;padding:14px 0;border-bottom:1px solid rgba(246,241,232,.12)}
.cs-menu-main a[aria-current="page"]{color:var(--orange-light,#f0a36f)}
.cs-menu-more{display:flex;flex-wrap:wrap;gap:10px}
.cs-menu-more a{font-size:14px;font-weight:600;padding:10px 14px;border:1px solid rgba(246,241,232,.22);border-radius:99px}
.cs-menu-actions{display:grid;gap:14px}
.cs-menu-cta{display:block;text-align:center;background:var(--orange,#df7d42);color:#fff !important;border-radius:99px;padding:16px 20px;font-weight:800}
.cs-menu-phone{text-align:center;color:#cbdcc6 !important;font-size:14px}
body.cs-menu-open{overflow:hidden}

@media (max-width:1180px){
  .cs-nav,.cs-cta{display:none}
  .cs-menu-button{display:inline-flex;margin-left:auto}
}
@media (max-width:700px){
  .cs-topline{font-size:9px;gap:8px;padding:0 12px}
  .cs-topline-phone{display:none}
  .cs-header{height:74px;gap:14px}
  .cs-brand{width:min(230px,62vw)}
  .cs-menu{--cs-menu-top:74px}
}

/* Fußzeile */
.cs-footer{background:#0a1d16;color:#a8bbb0;padding:72px 0 28px;font-size:14px;line-height:1.55}
.cs-footer a{color:#e8efe9;text-decoration:none}
.cs-footer a:hover{color:var(--orange-light,#f0a36f)}
.cs-footer-shell{width:min(100% - 80px,1240px);margin:0 auto}
.cs-footer-top{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr 1fr;gap:40px}
.cs-footer-logo{display:block;width:240px;margin-bottom:18px}
.cs-footer-logo img{display:block;width:100%;height:auto;filter:brightness(0) invert(1);opacity:.95}
.cs-footer-brand p{margin:0 0 22px;max-width:300px}
.cs-footer-cta{display:inline-flex;background:var(--orange,#df7d42);color:#fff !important;border-radius:99px;padding:12px 18px;font-size:13px;font-weight:700}
.cs-footer-cta:hover{background:#c96a32}
.cs-footer-title{color:#f6f1e8;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin:0 0 16px}
.cs-footer-contact p{margin:0 0 12px}
.cs-footer-hours{color:#8fa79b;font-size:13px}
.cs-footer-social{display:inline-flex;align-items:center;gap:8px;font-size:13px}
.cs-footer-social svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
.cs-footer-social .cs-fill{fill:currentColor;stroke:none}
.cs-footer-col{display:flex;flex-direction:column;gap:9px;font-size:13.5px}
.cs-footer-col a{color:#c3d2c9}
.cs-footer-brands{margin-top:52px;padding-top:30px;border-top:1px solid rgba(246,241,232,.1)}
.cs-footer-brands div{display:flex;flex-wrap:wrap;gap:8px}
.cs-footer-brands a{font-size:12.5px;color:#c3d2c9;padding:6px 11px;border:1px solid rgba(246,241,232,.14);border-radius:99px}
.cs-footer-brands a:hover{border-color:var(--orange-light,#f0a36f)}
.cs-footer-bottom{margin-top:44px;padding-top:22px;border-top:1px solid rgba(246,241,232,.1);display:flex;flex-wrap:wrap;align-items:center;gap:14px 30px;font-size:12px;color:#7f978b}
.cs-footer-legal{display:flex;gap:18px}
.cs-footer-legal a{color:#a8bbb0}
.cs-footer-creator{margin-left:auto;display:inline-flex;align-items:center;gap:10px}
.cs-footer-creator img{width:40px;height:auto;filter:brightness(0) invert(1);opacity:.75}
.cs-footer-creator strong{color:#e8efe9;font-weight:700}

@media (max-width:1080px){
  .cs-footer-top{grid-template-columns:1fr 1fr 1fr}
  .cs-footer-brand{grid-column:1/-1}
}
@media (max-width:700px){
  .cs-footer{padding:52px 0 24px}
  .cs-footer-shell{width:min(100% - 40px,1240px)}
  .cs-footer-top{grid-template-columns:1fr 1fr;gap:34px 22px}
  .cs-footer-contact{grid-column:1/-1}
  .cs-footer-creator{margin-left:0}
}

/* Alte Kopf-/Fußbereiche ausblenden, falls noch im Markup vorhanden */
.topline,.site-header,.site-footer,.manufacturer-footer{display:none !important}
@media (max-width:700px){.cs-topline span:nth-child(3),.cs-topline-sep{display:none}}

/* Navigation bleibt beim Scrollen oben stehen (overflow:hidden würde sticky aushebeln) */
html,body{overflow-x:clip !important}
.cs-header{position:sticky;top:0}

/* Nach-oben-Knopf */
.cs-to-top{position:fixed;right:18px;bottom:18px;z-index:40;width:52px;height:52px;border:0;border-radius:50%;background:var(--orange,#df7d42);color:#fff;font-size:22px;font-weight:800;line-height:1;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.25);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}
.cs-to-top.is-visible{opacity:1;transform:none;pointer-events:auto}
.cs-to-top:hover{background:#c96a32}
@media(max-width:700px){.cs-to-top{right:14px;bottom:14px;width:48px;height:48px}}
