@font-face{font-family:'Roboto';src:url('/assets/fonts/Roboto-Regular-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Roboto';src:url('/assets/fonts/Roboto-Medium-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Roboto';src:url('/assets/fonts/Roboto-Bold-700.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--bg:#fff;--surface:#fff;--surface2:#f7f7f7;--text:#444;--muted:#777;--brand:#d16e0a;--brand-dark:#221d1a;--border:#e1e5e8;--shadow:0 0 15px rgba(0,0,0,.12);--radius:3px;--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Roboto,Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5;color:var(--text);background:var(--bg);padding-top:120px}a{color:var(--brand);text-decoration:none}a:hover{color:#884807}img{max-width:100%;display:block}p{margin:0 0 1rem}h1,h2,h3,h4,h5,h6,strong{color:#221d1a;font-weight:500}ul{margin:0 0 1rem}
.container{max-width:var(--max);margin:0 auto;padding:0 18px}.eyebrow{display:inline-block;color:var(--brand);font-weight:700;font-size:.85rem;letter-spacing:.01em}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1rem;border-radius:var(--radius);border:1px solid #cfd7dd;background:#f5f5f5;color:#221d1a;font-weight:500}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn:hover{filter:brightness(.98)}
.topbar{background:linear-gradient(90deg,#1f1f1f,#2f2f2f);color:#fff;font-size:.88rem;border-bottom:1px solid #111;position:fixed;top:0;z-index:1002;width:100%;left:0;right:0}.topbar-inner{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;min-height:34px;padding:4px 0}.topbar-left{color:#fff;font-weight:600}.topbar-center{color:#fff;font-weight:700;letter-spacing:.02em;text-align:center}.topbar-right{color:#fff;text-align:right;font-weight:500}.topbar-right a{color:#e8b27b}.topbar a{color:#e8b27b}.desktop-only{display:block}.mobile-bar{display:none}
.site-header{background:rgba(255,255,255,.96);backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid #d7d7d7;position:sticky;top:34px;z-index:1001;box-shadow:0 1px 0 rgba(255,255,255,.9) inset}.header-inner{display:flex;flex-direction:row;gap:18px;align-items:center;justify-content:space-between;padding:10px 0}.brand{display:flex;align-items:center;gap:12px;flex:0 0 auto}.brand-logo{height:58px;width:auto;display:block}.anniversary-badge{display:inline-flex;align-items:center;justify-content:center;padding:.35rem .65rem;border-radius:999px;background:linear-gradient(180deg,#86490a,#9f570d);color:#fff;font-weight:700;font-size:.82rem;box-shadow:0 4px 10px rgba(10,134,106,.18)}.brand h1{font-size:1.9rem;line-height:1;margin:0;font-weight:400}.brand small{display:block;font-size:.9rem;color:#7b8790;margin-top:2px}
.nav{position:relative;flex:1 1 auto}.nav-toggle{display:none;align-items:center;gap:8px;border:1px solid #d8dfe5;background:linear-gradient(180deg,#fff,#f3f6f8);padding:.62rem .9rem;border-radius:999px;color:#221d1a;font-weight:600;box-shadow:0 2px 6px rgba(0,0,0,.06)}.nav ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:nowrap;gap:4px;align-items:center;justify-content:flex-end;overflow:visible}.nav a{display:block;padding:.78rem .95rem;color:#221d1a;font-weight:600;border-radius:999px;border:1px solid transparent;background:linear-gradient(180deg,#fff,#f7f7f7);box-shadow:0 1px 0 rgba(255,255,255,.8) inset;white-space:nowrap}.nav a:hover,.nav a.active{color:#fff;background:linear-gradient(180deg,#8f581f,#86490a);border-color:#86490a;box-shadow:none}.has-mega{position:relative;padding-bottom:12px}.mega-menu{display:none;position:absolute;left:0;top:100%;min-width:880px;background:#fff;border:1px solid #dfe5ea;border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.14);padding:20px;grid-template-columns:repeat(3,1fr);gap:22px;z-index:2000}.has-mega:hover .mega-menu,.has-mega:focus-within .mega-menu{display:grid}.mega-col strong{display:block;margin-bottom:10px;color:#221d1a}.mega-col a{display:block;padding:6px 0 6px 14px;margin:0;color:#334;font-weight:400;border:none;background:none;box-shadow:none;border-radius:0;white-space:normal;position:relative}.mega-col a::before{content:'–';position:absolute;left:0;color:#9aa6af}.mega-col a:hover{text-decoration:underline;color:var(--brand)}

.nav-toggle:hover{filter:brightness(.99)}
.hero{padding:18px 0 24px}.hero-box{background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden;border-radius:12px}.hero-grid{display:grid;grid-template-columns:1fr 1.05fr;align-items:stretch}.hero-copy{padding:28px 24px 22px}.hero-eyebrow{color:var(--brand-dark);font-size:.9rem}.hero-copy h1{font-size:clamp(2rem,3.1vw,3.2rem);font-weight:400;line-height:1.1;margin:.35rem 0 1rem}.lead{font-size:1.08rem;color:#8a8f98}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.hero-spotlight{padding:16px;background:linear-gradient(180deg,#f9fbfc,#eef3f6);border-left:1px solid var(--border)}.logo-slider-wrap{display:grid;gap:12px;height:100%}.logo-slider-head h2{margin:.15rem 0 .3rem;font-size:1.35rem;font-weight:400}.logo-slider-head p{margin:0;color:#6e7680}.logo-marquee{position:relative;overflow:hidden;mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent)}.logo-track{display:flex;gap:10px;width:max-content;animation:logo-marquee 28s linear infinite}.logo-marquee:hover .logo-track{animation-play-state:paused}.logo-chip{flex:0 0 auto;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #dfe5ea;border-radius:12px;padding:10px 12px;min-height:72px;box-shadow:0 1px 6px rgba(0,0,0,.05);width:clamp(120px,14vw,180px)}.logo-chip img{max-width:100%;max-height:44px;object-fit:contain}.logo-slider-copy{font-size:.94rem;color:#66707a;line-height:1.45}@keyframes logo-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}.hero-spotlight--promo{display:flex;align-items:center;justify-content:center;min-height:100%}.hero-promo-card{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center;background:linear-gradient(180deg,#fbfaf8,#f7f3ee);border:1px solid var(--border);border-radius:16px;padding:18px;box-shadow:var(--shadow);width:100%}.hero-promo-logo{width:100%;max-width:260px;justify-self:center}.hero-promo-text h2{margin:.2rem 0 .5rem;font-size:clamp(1.6rem,2.4vw,2.4rem);font-weight:400}.hero-promo-text p{color:#66707a;margin:0 0 .9rem}.hero-spotlight--rotator{display:flex;flex-direction:column;gap:12px;height:100%}.hp-hero-rotator{position:relative;border-radius:14px;overflow:hidden;box-shadow:var(--shadow);flex:1 1 auto;min-height:260px;background:#271b0f}.hp-hero-slide{position:absolute;inset:0;display:block;opacity:0;transition:opacity .9s ease;pointer-events:none}.hp-hero-slide.active{opacity:1;pointer-events:auto}.hp-hero-slide img{width:100%;height:100%;object-fit:cover;display:block}.hp-hero-caption{position:absolute;left:0;right:0;bottom:0;padding:16px 18px 14px;background:linear-gradient(to top,rgba(15,32,39,.88) 0%,rgba(15,32,39,.55) 55%,rgba(15,32,39,0) 100%)}.hp-hero-caption strong{display:block;color:#fff;font-size:1.05rem;margin-bottom:2px}.hp-hero-caption span{display:block;color:#f5ede4;font-size:.82rem}.hp-hero-dots{position:absolute;top:14px;right:14px;display:flex;gap:6px;z-index:2}.hp-hero-dots span{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5);transition:background .3s;cursor:pointer}.hp-hero-dots span.active{background:#fff}.hero-promo-card--under{grid-template-columns:auto 1fr;padding:12px 16px}.hero-promo-card--under .hero-promo-logo{max-width:84px}.hero-promo-card--under .hero-promo-text p{margin:0;font-size:.86rem}@media (max-width:760px){.hp-hero-rotator{min-height:190px}}.image-feature-grid{display:grid;grid-template-columns:1fr;gap:0;align-items:stretch;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden;border-radius:12px}.image-feature-text{padding:26px 24px}.image-feature-text h2{margin:0 0 .75rem;font-weight:400}.image-feature-media img{display:block;width:100%;height:100%;object-fit:cover}
.section{padding:28px 0}.section.alt{background:#fff}.section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:14px}.section-head h2{font-size:1.55rem;font-weight:400;margin:0}.section-head p{margin:0;color:#8a8f98}.tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.tile{display:block;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:var(--shadow);color:inherit}.tile img{width:100%;height:118px;object-fit:cover}.tile span{display:block;padding:12px 14px}.tile strong{display:block;margin-bottom:4px;color:#221d1a}.tile small{display:block;color:#6e7680;line-height:1.4}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.card.feature{border-top:4px solid var(--brand)}.card h3{margin:.1rem 0 .5rem;font-weight:500}.card p{color:#7b7b7b}.card ul{padding-left:18px;margin-top:.7rem}
.content{padding:22px 0 44px}.content-box{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 26px}.content-box h1{font-size:1.8rem;font-weight:400;margin-top:0}.meta{color:#8a8f98;font-size:.92rem}.page-layout{display:grid;grid-template-columns:1fr;gap:18px}.page-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:center;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--border)}.page-hero-img{width:100%;height:170px;object-fit:cover;border:1px solid var(--border);border-radius:var(--radius)}.career-hero{display:grid;gap:14px}.career-badge{display:inline-block;padding:.35rem .7rem;border-radius:999px;background:#faf1e8;color:#86490a;font-weight:700;font-size:.82rem}.career-hero-banner{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:center;background:linear-gradient(135deg,#fbfaf8,#f7f3ee);border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:var(--shadow)}.career-hero-copy h2{margin:.2rem 0 .6rem;font-size:clamp(1.7rem,2.6vw,2.4rem)}.career-hero-copy p{color:#66707a}.career-hero-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.career-hero-points div{background:#fff;border:1px solid #dfe5ea;border-radius:12px;padding:10px 12px;font-weight:500;color:#221d1a}
.career-hero-points.accent-points div{background:linear-gradient(135deg,#faf6f2,#ffffff);border:1px solid #eedecd;border-left:4px solid #86490a;border-radius:10px;padding:10px 12px 10px 14px;box-shadow:0 1px 3px rgba(10,134,106,.08)}
.career-hero-points.accent-points div strong{color:#6b3b0a}
.point-tag{display:inline-block;margin:0 0 2px;padding:.15rem .55rem;border-radius:999px;background:#86490a;color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.02em}
.branchen-tiles .tile{border-top:4px solid var(--brand);transition:transform .15s ease,box-shadow .15s ease}
.branchen-tiles .tile:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(10,134,106,.14)}
.branchen-tiles .tile strong{color:#6b3b0a}.career-hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.career-hero-side{background:#fff;border-radius:14px;padding:18px;border:1px solid #dfe5ea;box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}.career-hero-side ul{padding-left:18px;margin:0}.career-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0 18px}.career-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:18px;box-shadow:var(--shadow)}.career-card.highlight{border-top:4px solid var(--brand)}.career-card h3{margin-top:0}.career-card ul{padding-left:18px;margin-bottom:0} 
.footer{margin-top:34px;background:#1f2326;color:#f2f4f6;border-top:1px solid #111;padding:24px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px}.footer strong{color:#fff}.footer .footer-brand{color:#ffffff;font-size:1.02rem}.footer a{color:#eabc8e}.footer small,.footer .footnote{color:#d8dee3}.footer .footnote{border-top:1px solid rgba(255,255,255,.14);margin-top:14px;padding-top:10px;font-size:.9rem}
@media (max-width: 1100px){.tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 780px){.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tile img{height:104px}.tile span{padding:10px 12px}}@media (max-width: 520px){.tile-grid{grid-template-columns:1fr}.tile img{height:150px}.tile span{padding:12px 14px}}@media (max-width: 980px){body{padding-top:50px}body{padding-top:50px}body{padding-top:50px}.desktop-only{display:none}.mobile-bar{display:grid;grid-template-columns:1fr auto;grid-template-areas:"brand toggle" "contact contact";gap:4px 10px;align-items:center;padding:8px 10px}.mobile-bar .mobile-brand{grid-area:brand}.mobile-bar .mobile-toggle{grid-area:toggle}.mobile-brand .brand-logo{height:34px}.mobile-contact{grid-area:contact;display:flex;flex-wrap:wrap;justify-content:center;gap:2px 12px;font-size:.78rem;line-height:1.3;color:#221d1a;text-align:center;padding-top:4px;border-top:1px solid #eee}.mobile-contact a{word-break:normal;white-space:nowrap;overflow-wrap:normal}.header-inner .nav-toggle{display:none}.nav-toggle{display:inline-flex;border:1px solid #d0d0d0;background:#fff;padding:.5rem .75rem;border-radius:3px}.nav{position:fixed;left:0;top:0;height:100dvh;width:min(86vw,340px);background:#fff;border-right:1px solid #dfe5ea;box-shadow:18px 0 40px rgba(0,0,0,.16);transform:translateX(-105%);transition:transform .25s ease;z-index:3000;padding:70px 18px 18px;overflow-y:auto;overflow-x:hidden}.nav.open{transform:translateX(0)}.nav::before{content:'Menü';display:block;position:sticky;top:0;margin:-70px -18px 14px;padding:18px 18px;background:linear-gradient(180deg,#fff,#f9f8f6);border-bottom:1px solid #e2e6ea;font-weight:700;color:#221d1a}.nav ul{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;overflow:visible;gap:8px}.nav a{border:1px solid #e7ecef;border-radius:12px;background:#fff;white-space:normal}.nav ul.open{display:flex}.nav a{border-bottom:1px solid #eee}.has-mega{padding-bottom:0}.has-mega .mega-menu{position:static;min-width:0;display:none;box-shadow:none;border:none;padding:10px 0 0;border-radius:0}.has-mega .mega-col{padding-left:8px;border-left:2px solid #e8eef0}.has-mega:hover .mega-menu,.has-mega:focus-within .mega-menu{display:block}.mega-col{margin-bottom:12px}.topbar{display:none}.site-header{top:0}.sticky-header{top:0}.hero-grid{grid-template-columns:1fr}.hero-spotlight{border-left:0;border-top:1px solid var(--border)}.hero-copy{padding:20px}.hero-copy h1{font-size:clamp(1.7rem,8vw,2.4rem)}.hero-actions{gap:8px}.image-feature-grid{grid-template-columns:1fr}.image-feature-media{order:-1}.image-feature-media img{min-height:220px;object-fit:cover}.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tile img{height:104px}.tile span{padding:10px 12px}.career-hero-banner{grid-template-columns:1fr}.career-hero-points{grid-template-columns:1fr}.career-grid{grid-template-columns:1fr}.brand-logo{height:34px}.anniversary-badge{font-size:.72rem;padding:.25rem .5rem}.mobile-contact{font-size:.76rem}}

.refs-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:stretch;margin-bottom:18px}.refs-hero-copy,.refs-hero-aside{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:var(--shadow)}.refs-hero-aside{background:linear-gradient(180deg,#fbfaf8,#f7f3ee)}.refs-grid-section{background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:var(--shadow)}.refs-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.ref-logo{display:flex;align-items:center;justify-content:center;min-height:92px;padding:10px;border:1px solid #e2e7eb;border-radius:12px;background:linear-gradient(180deg,#fff,#fafbfc);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,filter .2s ease;filter:grayscale(.18)}.ref-logo:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 10px 22px rgba(0,0,0,.10);border-color:#decfbf;filter:none}.ref-logo img{max-width:100%;max-height:52px;object-fit:contain}.refs-hero h2{font-size:clamp(1.8rem,2.8vw,2.8rem);margin:.35rem 0 .5rem;font-weight:400}.refs-hero p{color:#66707a}.refs-hero-aside strong{display:block;color:#221d1a;margin-bottom:8px}.refs-hero-aside p{margin:0;color:#66707a}.refs-grid-section{overflow:hidden}.refs-grid .ref-logo:nth-child(odd){background:linear-gradient(180deg,#fff,#fcfaf8)}.refs-grid .ref-logo:nth-child(3n){transform:translateY(1px)}.refs-grid .ref-logo:nth-child(4n){min-height:104px}.refs-grid .ref-logo:hover img{transform:scale(1.03)}@media (max-width: 980px){body{padding-top:50px}.refs-hero{grid-template-columns:1fr}.refs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 560px){.refs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ref-logo{min-height:76px}}
.hero-50{display:flex;justify-content:flex-end;margin-top:10px}.hero-50 img{width:min(220px,100%);border-radius:10px;box-shadow:var(--shadow)}.hero-panel{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:stretch;background:linear-gradient(135deg,#fbfaf8,#f7f3ee);border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:var(--shadow);margin:10px 0 18px}.hero-panel-box{background:#fff;border:1px solid #dfe5ea;border-radius:14px;padding:18px}.service-block{margin:20px 0;padding:18px;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:var(--shadow)}.service-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.service-page h2,.company-page h2{font-size:clamp(1.7rem,2.7vw,2.5rem);font-weight:400;margin:.35rem 0 .6rem}.company-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:center;padding:14px 0 18px}.company-hero-stack{display:grid;gap:14px}.company-hero-img{width:100%;height:220px;object-fit:cover;border-radius:16px;border:1px solid var(--border);box-shadow:var(--shadow)}.company-badge-img{width:min(100%,340px);justify-self:end;border-radius:14px;background:#fff;border:1px solid #dfe5ea;box-shadow:var(--shadow);padding:10px}.company-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.company-nav a{padding:.5rem .8rem;border:1px solid #dfe5ea;border-radius:999px;background:#fcfaf8;color:#221d1a;font-weight:600}.company-section{padding:16px 0;border-top:1px solid var(--border)}.timeline{display:grid;gap:12px;margin-top:10px}.timeline-item{display:grid;grid-template-columns:110px 1fr;gap:16px;align-items:start;padding:14px;border:1px solid #dfe5ea;border-radius:14px;background:linear-gradient(180deg,#fff,#fbfcfd);box-shadow:var(--shadow)}.timeline-item span{display:inline-flex;align-items:center;justify-content:center;padding:.35rem .7rem;border-radius:999px;background:#faf1e8;color:#86490a;font-weight:700;font-size:.84rem}.timeline-item strong{display:block;margin-bottom:4px}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.team-card{border-top:4px solid var(--brand)}.equipment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.equipment-item{padding:16px;border:1px solid #dfe5ea;border-radius:14px;background:linear-gradient(180deg,#fff,#fbfcfd);box-shadow:var(--shadow)}.equipment-item strong{display:block;margin-bottom:6px}.company-section details{background:#fff;border:1px solid #dfe5ea;border-radius:12px;padding:12px 14px;box-shadow:var(--shadow)}.tabs{margin-top:12px}.tab-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.tab-btn{border:1px solid #dfe5ea;background:#fcfaf8;border-radius:999px;padding:.55rem .85rem;font-weight:600;color:#221d1a}.tab-btn.active{background:linear-gradient(180deg,#8f581f,#86490a);color:#fff;border-color:#86490a}.tab-panel{display:none}.tab-panel.active{display:block}.city-cloud{padding:12px 0;color:#66707a;line-height:1.8}.career-hero-image{width:100%;height:260px;object-fit:cover;border-radius:16px;border:1px solid var(--border);box-shadow:var(--shadow)}@media (max-width: 980px){body{padding-top:50px}.company-hero,.timeline-item,.team-grid,.equipment-grid{grid-template-columns:1fr}.company-badge-img{justify-self:start}}
@media (max-width: 980px){body{padding-top:50px}.hero-panel,.service-columns,.company-hero{grid-template-columns:1fr}.career-hero-image{height:220px}.company-nav{overflow:auto;flex-wrap:nowrap;white-space:nowrap}}

.pdf-links{display:grid;gap:12px}.pdf-link{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #dfe5ea;border-radius:12px;background:#fff;color:inherit;box-shadow:var(--shadow)}.pdf-link strong{display:block;color:#221d1a}.pdf-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;background:linear-gradient(180deg,#e74c3c,#c0392b);color:#fff;font-weight:800;box-shadow:0 4px 10px rgba(231,76,60,.22)}


.company-page{padding-top:4px}.company-page .section-head{margin-bottom:12px}.company-hero--new{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;align-items:center;background:linear-gradient(135deg,#fbfaf8,#f7f3ee);border:1px solid var(--border);border-radius:18px;padding:22px;box-shadow:var(--shadow);margin:12px 0 18px}.company-intro h1{margin:.1rem 0 .15rem;font-size:clamp(1.9rem,2.9vw,3rem);font-weight:400}.company-intro h2{margin:.1rem 0 .7rem;font-size:clamp(1.45rem,2.2vw,2.2rem);font-weight:400}.company-intro p{color:#66707a}.company-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.company-nav a{padding:.5rem .85rem;border:1px solid #dfe5ea;border-radius:999px;background:#fff;color:#221d1a;font-weight:600}.company-section{padding:18px 0;border-top:1px solid var(--border)}.service-details{margin-top:10px;padding:12px 14px;border:1px solid #dfe5ea;border-radius:14px;background:#fff;box-shadow:var(--shadow)}.service-details summary{cursor:pointer;font-weight:700;color:#221d1a}.service-details[open] summary{margin-bottom:8px}.company-hero-img{height:230px}.company-badge-img{max-width:320px}.team-grid,.equipment-grid,.cards{margin-top:12px}.equipment-item,.team-card,.card{border-radius:14px}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.company-page .cards .card:nth-child(odd){background:linear-gradient(180deg,#fff,#fbfcfd)}
@media (max-width: 980px){body{padding-top:50px}.company-hero--new{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.company-hero-img{height:210px}}
@media (max-width: 640px){.cards{grid-template-columns:1fr}.company-nav{overflow:auto;flex-wrap:nowrap;white-space:nowrap}}


.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.92rem;color:#6e7680;margin-bottom:12px}.breadcrumbs a{color:var(--brand-dark);font-weight:600}.product-content h2,.gallery-section h2,.related-section strong{font-weight:400}.product-content{display:grid;gap:14px}.data-table{width:100%;border-collapse:collapse;margin:8px 0 18px}.data-table th,.data-table td{border:1px solid #dfe5ea;padding:10px 12px;text-align:left;vertical-align:top}.data-table th{width:42%;background:#fcfaf8;color:#221d1a}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{padding:.45rem .75rem;border:1px solid #dfe5ea;border-radius:999px;background:#fcfaf8;color:#221d1a}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gallery-grid figure{margin:0;background:#fff;border:1px solid #dfe5ea;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}.gallery-grid img{width:100%;height:220px;object-fit:cover}.gallery-grid figcaption{padding:10px 12px;color:#66707a}.related-box{padding:14px 16px;border:1px solid #dfe5ea;border-radius:14px;background:#fff;box-shadow:var(--shadow)}.keywords{color:#66707a}.product-page .page-hero{margin-bottom:18px}.product-hero{grid-template-columns:1.1fr .9fr}.hero-copy-clamp{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.hero-copy-clamp.expanded{display:block;-webkit-line-clamp:unset;overflow:visible}.hero-more-btn{display:inline-block;margin-top:6px;background:none;border:none;padding:0;color:#86490a;font-weight:700;cursor:pointer;font-size:.92rem;text-decoration:underline}.hero-more-btn:hover{color:#5c3207}.download-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.download-list-section{margin-top:18px}.download-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.download-item{display:block;padding:14px;border:1px solid #dfe5ea;border-radius:14px;background:#fff;color:inherit;box-shadow:var(--shadow)}.download-item strong{display:block;color:#221d1a;margin-bottom:4px}.download-item span{display:inline-block;margin-bottom:6px;padding:.2rem .5rem;border-radius:999px;background:#faf1e8;color:#86490a;font-weight:700;font-size:.8rem}.download-item small{color:#66707a}.download-kpis{list-style:none;padding:0;margin:0;display:grid;gap:10px}.download-kpis li{display:flex;gap:10px;align-items:baseline}.download-kpis strong{display:inline-block;min-width:56px}.support-page .cards,.download-page .cards{margin-top:12px}
@media (max-width: 980px){body{padding-top:50px}.gallery-grid,.download-hero-grid,.download-grid,.product-hero{grid-template-columns:1fr 1fr}.data-table th{width:auto}.gallery-grid img{height:190px}}
@media (max-width: 640px){.gallery-grid,.download-hero-grid,.download-grid,.product-hero{grid-template-columns:1fr}.gallery-grid img{height:240px}}

/* Schrankenbereich / mobile menu fixes */
@media (max-width: 980px){body{padding-top:50px}
  .header-inner{padding:0;min-height:0}
  .header-inner > .brand,
  .header-inner > .nav-toggle{display:none !important}
  .header-inner > .nav{position:fixed}
}
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:8px 0 18px}
.table-wrap .data-table{min-width:620px;margin:0}
.category-tiles.tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.related-links{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:8px}
.related-links a{display:inline-flex;align-items:center;padding:.45rem .7rem;border:1px solid #dfe5ea;border-radius:999px;background:#fcfaf8;color:#221d1a;font-weight:600}
.pdf-link small{display:block;color:#66707a;margin-top:2px}
.content-box a,.product-content a,.related-box a,.breadcrumbs a{word-break:break-word}
@media (max-width: 980px){body{padding-top:50px}
  .category-tiles.tile-grid,.gallery-grid.gallery-grid-2{grid-template-columns:1fr 1fr}
}
@media (max-width: 640px){
  .category-tiles.tile-grid,.gallery-grid.gallery-grid-2{grid-template-columns:1fr}
}
.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:6px 0 10px}
.feature-card{background:#fff;border:1px solid #dfe5ea;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.feature-card img{width:100%;height:150px;object-fit:cover;background:#fcfaf8}
.feature-card h3{margin:12px 14px 6px;font-weight:500}
.feature-card p{margin:0;padding:0 14px 14px;color:#66707a}
@media (max-width: 980px){body{padding-top:50px}.feature-grid{grid-template-columns:1fr 1fr}}
@media (max-width: 640px){.feature-grid{grid-template-columns:1fr}}

/* Full Schranken area enhancements */
@media (max-width: 980px){body{padding-top:50px}
  .header-inner{padding:0;min-height:0}
  .header-inner > .brand,
  .header-inner > .nav-toggle{display:none !important}
  .header-inner > .nav{position:fixed}
}
.table-wrap{margin:10px 0 18px}
.responsive-table{width:100%;border-collapse:collapse}
.responsive-table th,.responsive-table td{border:1px solid #dfe5ea;padding:10px 12px;vertical-align:top;text-align:left}
.responsive-table th{background:#fcfaf8;color:#221d1a;width:38%}
@media (max-width: 760px){
  .responsive-table,.responsive-table tbody,.responsive-table tr,.responsive-table td,.responsive-table th{display:block;width:100%}
  .responsive-table thead{display:none}
  .responsive-table tr{margin:0 0 12px;border:1px solid #dfe5ea;border-radius:12px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}
  .responsive-table td,.responsive-table th{border:none;border-bottom:1px solid #eef2f5;padding:10px 12px}
  .responsive-table td:last-child,.responsive-table th:last-child{border-bottom:none}
  .responsive-table td::before,.responsive-table th::before{content:attr(data-label);display:block;font-size:.8rem;font-weight:700;color:#86490a;margin-bottom:4px}
}
.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:8px 0 18px}
.feature-card{background:#fff;border:1px solid #dfe5ea;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.feature-card img{width:100%;height:150px;object-fit:cover;background:#fcfaf8}
.feature-card h3{margin:12px 14px 6px;font-weight:500}
.feature-card p{margin:0;padding:0 14px 14px;color:#66707a}
.category-tiles.tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.info-card{background:#fff;border:1px solid #dfe5ea;border-radius:14px;padding:16px;box-shadow:var(--shadow)}
.info-card h3{margin:0 0 8px}
.info-card p{margin:0;color:#66707a}
.lightbox-link{display:block;cursor:zoom-in}
.lightbox-modal{position:fixed;inset:0;background:rgba(17,24,29,.88);display:none;align-items:center;justify-content:center;padding:24px;z-index:5000}
.lightbox-modal.open{display:flex}
.lightbox-content{position:relative;max-width:min(1100px,94vw);max-height:90vh}
.lightbox-content img{max-width:100%;max-height:90vh;border-radius:14px;box-shadow:0 25px 60px rgba(0,0,0,.4)}
.lightbox-caption{color:#fff;text-align:center;margin-top:10px;font-size:.95rem}
.lightbox-close{position:absolute;right:-10px;top:-10px;width:42px;height:42px;border:none;border-radius:999px;background:#d16e0a;color:#fff;font-size:1.3rem;font-weight:700;cursor:pointer;box-shadow:0 8px 24px rgba(10,209,160,.35)}
.cta-contact{margin-top:22px}
.cta-contact-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:center;padding:22px;border-radius:18px;background:linear-gradient(135deg,#faf1e8,#fffbf7);border:1px solid #ead5bf;box-shadow:var(--shadow)}
.cta-badge{display:inline-block;padding:.35rem .7rem;border-radius:999px;background:#86490a;color:#fff;font-weight:700;font-size:.82rem;margin-bottom:8px}
.badge-abverkauf{display:inline-block;padding:.3rem .65rem;border-radius:999px;background:#c0392b;color:#fff;font-weight:700;font-size:.76rem;letter-spacing:.02em;text-transform:uppercase;margin-bottom:8px}
.tile .badge-abverkauf{position:absolute;top:8px;left:8px;margin-bottom:0;box-shadow:0 2px 6px rgba(0,0,0,.25)}
.tile{position:relative}
.safety-notice{border:2px solid #c0392b;background:#fff5f4;border-radius:14px;padding:18px 22px;margin:22px 0}
.safety-notice h3{margin-top:0;color:#8e2318}
.safety-notice ul{margin:.4rem 0 .8rem;padding-left:20px}
.safety-notice p{margin:.5rem 0}
.cta-contact h2{margin:.1rem 0 .45rem;font-size:clamp(1.5rem,2.6vw,2.2rem)}
.cta-contact p{margin:0;color:#625649}
.cta-contact p.cta-shipping-note{margin-top:8px;font-size:.92rem;color:#8a7355}
.cta-actions{display:grid;gap:12px}
.cta-pill{display:flex;flex-direction:column;gap:3px;padding:14px 16px;border-radius:14px;background:#d16e0a;color:#fff;box-shadow:0 12px 30px rgba(10,209,160,.22)}
.cta-pill strong,.cta-pill span{color:#fff}
.cta-pill:hover{filter:brightness(.97);color:#fff}
.pdf-link small{display:block;color:#66707a;margin-top:2px}
.related-links{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:8px}
.related-links a{display:inline-flex;align-items:center;padding:.45rem .7rem;border:1px solid #dfe5ea;border-radius:999px;background:#fcfaf8;color:#221d1a;font-weight:600}
.content-box a,.product-content a,.related-box a,.breadcrumbs a{word-break:break-word}
@media (max-width:980px){.feature-grid,.category-tiles.tile-grid,.list-grid,.gallery-grid,.cta-contact-inner{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.feature-grid,.category-tiles.tile-grid,.list-grid,.gallery-grid,.cta-contact-inner{grid-template-columns:1fr}}

/* Live content adoption for Schranken pages */
.cms-content .itemImageBlock img,.cms-content .itemFullText img,.cms-content .itemIntroText img,.cms-content .sigProContainer img{max-width:100%;height:auto;border-radius:12px}
.cms-content .itemToolbar ul{display:flex;gap:14px;list-style:none;padding:0;margin:0 0 14px}
.cms-content .itemToolbar a{font-weight:700;color:#86490a}
.cms-content .itemTitle{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.12;margin:.2rem 0 1rem}
.cms-content .itemImageBlock{margin:0 0 18px}
.cms-content .itemIntroText,.cms-content .itemFullText{color:#221d1a}
.cms-content .itemFullText h2,.cms-content .itemFullText h3,.cms-content .itemIntroText h2,.cms-content .itemIntroText h3{margin-top:1.1rem}
.cms-content table{width:100% !important;max-width:100%;border-collapse:collapse;margin:12px 0 20px;background:#fff}
.cms-content table td,.cms-content table th{border:1px solid #dfe5ea;padding:10px 12px;vertical-align:top}
.cms-content table p{margin:.2rem 0}
.cms-content .itemImageGallery{margin-top:18px}
.cms-content .itemImageGallery ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;list-style:none;padding:0}
.cms-content .itemImageGallery li{margin:0;background:#fff;border:1px solid #dfe5ea;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.cms-content .itemImageGallery li a{display:block}
.cms-content .itemImageGallery li img{width:100%;height:220px;object-fit:cover}
.cms-content .itemImageGallery li span{display:block;padding:10px 12px;color:#66707a}
.cms-content .sigProThumb{display:block}
.cms-content .sigProContainer{margin-top:18px}
.cms-content .sigProContainer ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;list-style:none;padding:0}
.cms-content .sigProContainer li{margin:0;background:#fff;border:1px solid #dfe5ea;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.cms-content .sigProContainer .sigProThumb img{width:100%;height:220px;object-fit:cover}
.cms-content .sigProContainer .sigProCaption{display:block;padding:10px 12px;color:#66707a}
.cms-content .existing-inline-cta{margin:14px 0 18px}
.cms-content .mobile-table-cards{display:none}
@media (max-width:760px){
  .cms-content .itemImageGallery ul,.cms-content .sigProContainer ul{grid-template-columns:1fr}
  .cms-content table.mobile-stacked{display:none !important}
  .cms-content .mobile-table-cards{display:block;margin:12px 0 20px}
  .cms-content .mobile-table-card{border:1px solid #dfe5ea;border-radius:12px;background:#fff;overflow:hidden;box-shadow:var(--shadow);margin:0 0 12px}
  .cms-content .mobile-table-row{padding:10px 12px;border-bottom:1px solid #eef2f5}
  .cms-content .mobile-table-row:last-child{border-bottom:none}
  .cms-content .mobile-table-label{display:block;font-size:.8rem;font-weight:700;color:#86490a;margin-bottom:4px}
}

/* v4 Schranken Feinschliff */
.topbar-inner{grid-template-columns:1fr auto 1fr}
.topbar-left{justify-self:start}
.topbar-center{justify-self:center}
.topbar-right{justify-self:end}
.brand,.mobile-brand{min-width:0}
.brand-logo{object-fit:contain}
.itemToolbar ul{display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0 0 12px;list-style:none}
.itemToolbar a{display:inline-flex;align-items:center;gap:8px;padding:.6rem .9rem;border:1px solid #dfe5ea;border-radius:999px;background:#fcfaf8;color:#221d1a;font-weight:700}
.article-jump-links{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-start;clear:both;margin:12px 0 22px;width:100%}
.article-jump-link{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;padding:.8rem 1rem;border-radius:999px;background:linear-gradient(180deg,#8f581f,#86490a);color:#fff !important;font-weight:700;box-shadow:0 8px 20px rgba(10,134,106,.18);white-space:nowrap;max-width:100%}
.article-jump-link:hover{filter:brightness(1.03);color:#fff}
.itemTagsBlock{margin:26px 0 18px}
.itemTagsBlock > span{display:block;margin:0 0 10px;font-weight:700;color:#221d1a}
.itemTags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center}
.itemTags li{margin:0}
.itemTags a{display:inline-flex;align-items:center;padding:.48rem .82rem;border:1px solid #dfe5ea;border-radius:999px;background:linear-gradient(180deg,#fff,#faf8f6);color:#221d1a;font-weight:600;line-height:1.25;white-space:nowrap}
.download-box{margin:28px 0 10px;padding:18px;border:1px solid #dfe5ea;border-radius:18px;background:linear-gradient(180deg,#fbfcfd,#faf8f6);box-shadow:var(--shadow)}
.download-box-title{display:block;font-size:1.2rem;font-weight:700;color:#221d1a;margin-bottom:12px}
.download-list-pretty{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.download-card{margin:0}
.download-card-link{display:flex !important;align-items:center;gap:14px;padding:14px 16px;border:1px solid #dfe5ea;border-radius:16px;background:#fff;color:inherit !important;box-shadow:0 8px 18px rgba(0,0,0,.06)}
.download-card-icon{flex:0 0 54px;display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:14px;background:linear-gradient(180deg,#ef5350,#d32f2f);color:#fff;font-weight:800;letter-spacing:.04em;box-shadow:0 8px 18px rgba(211,47,47,.22)}
.download-card-text strong{display:block;color:#221d1a;font-size:1rem;line-height:1.3}
.download-card-text small{display:block;color:#66707a;margin-top:3px}
.itemAttachments > li > span{display:none}
.itemImageGallery{margin-top:28px}
.itemImageGallery h3{margin:0 0 12px}
.sigProContainer{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.sigProThumb{margin:0}
.sigProLinkOuterWrapper,.sigProLinkWrapper{display:block}
.sigProLink{display:block !important;width:100% !important;height:auto !important;border:1px solid #dfe5ea;border-radius:14px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}
.sigProImg{display:block;width:100% !important;height:190px !important;object-fit:cover;background:none !important}
.sigProPseudoCaption,.sigProCaption{display:none !important}
.custom-gallery-processed{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;font-size:16px !important}
.custom-gallery-link{display:block;border:1px solid #dfe5ea;border-radius:14px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}
.custom-gallery-link img{width:100%;height:180px;object-fit:cover}
.lightbox-modal{position:fixed;inset:0;background:rgba(10,16,20,.84);display:none;align-items:center;justify-content:center;padding:28px;z-index:5000}
.lightbox-modal.open{display:flex}
.lightbox-content{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;max-width:min(1320px,96vw);width:100%}
.lightbox-figure{margin:0;display:grid;gap:12px;justify-items:center}
.lightbox-figure img{max-width:100%;max-height:82vh;border-radius:16px;box-shadow:0 18px 45px rgba(0,0,0,.35);background:#fff}
.lightbox-caption{color:#fff;text-align:center;font-size:.95rem}
.lightbox-close{position:absolute;right:10px;top:-52px;width:42px;height:42px;border:none;border-radius:999px;background:#fff;color:#24333f;font-size:1.7rem;cursor:pointer}
.lightbox-nav{width:52px;height:52px;border:none;border-radius:999px;background:rgba(255,255,255,.96);color:#24333f;font-size:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.24)}
#downloads,#artikel-galerie,#technische-daten,[id="itemVideoAnchor"],.itemImageGallery,.itemAttachmentsBlock{scroll-margin-top:120px}
.back-to-top{position:fixed;right:18px;bottom:18px;width:48px;height:48px;border:none;border-radius:999px;background:linear-gradient(180deg,#8f581f,#86490a);color:#fff;font-size:1.4rem;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(10,134,106,.28);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease;z-index:4500}
.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:hover{filter:brightness(1.03)}
.mobile-table-cards{display:none}
@media (max-width: 980px){body{padding-top:50px}
  .topbar-inner{grid-template-columns:1fr}
  .topbar-left,.topbar-right{display:none}
  .lightbox-content{grid-template-columns:44px minmax(0,1fr) 44px;gap:10px}
}
@media (max-width: 760px){
  .itemTags a{white-space:normal}
  .download-card-link{align-items:flex-start}
  .download-card-icon{width:46px;height:46px;flex-basis:46px}
  .sigProContainer,.custom-gallery-processed{grid-template-columns:1fr 1fr}
}
@media (max-width: 640px){
  .article-jump-links{gap:8px}
  .article-jump-link{width:100%}
  .sigProContainer,.custom-gallery-processed{grid-template-columns:1fr}
  .lightbox-modal{padding:14px}
  .lightbox-content{grid-template-columns:36px minmax(0,1fr) 36px}
  .lightbox-nav{width:36px;height:36px;font-size:1.5rem}
  .lightbox-close{top:-44px;right:0}
  .back-to-top{right:14px;bottom:14px;width:42px;height:42px}
}
.youtube-link-card{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid #dfe5ea;border-radius:16px;background:linear-gradient(135deg,#fff,#fcfaf8);box-shadow:var(--shadow);max-width:760px;text-decoration:none}
.youtube-link-card:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(0,0,0,.08)}
.youtube-link-icon{flex:0 0 58px;width:58px;height:58px;display:inline-flex;align-items:center;justify-content:center}
.youtube-link-icon svg{width:58px;height:58px;display:block}
.youtube-link-content{display:flex;flex-direction:column;gap:4px}
.youtube-link-content strong{color:#26313c;font-size:1rem}
.youtube-link-content small{color:#66707a;line-height:1.45}
.itemHits{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;border-radius:999px;background:#f4f7f9;color:#41515f;font-size:.92rem;font-weight:500}
@media (max-width: 640px){.youtube-link-card{align-items:flex-start}}


/* Neutral content adoption for Tore pages */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:24px 0}.gallery-item{display:block;border:1px solid #d9e1ea;border-radius:12px;overflow:hidden;background:#fff;text-decoration:none}.gallery-item img{width:100%;height:180px;object-fit:cover;display:block}.gallery-item span{display:block;padding:10px 12px;color:#17324d;font-size:14px;line-height:1.4}.download-list{display:grid;gap:12px;margin:24px 0}.download-item{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #d9e1ea;border-radius:12px;background:#f7fafc;text-decoration:none;color:#17324d}.article-header{margin-bottom:16px}.article-title{margin:0 0 8px}.image-block img{max-width:100%;height:auto;border-radius:12px}.intro-text,.richtext{display:grid;gap:16px}.richtext table{width:100%}.cms-content [class*="item"]{max-width:100%}.cms-content .sigProClear{display:none}.cms-content .itemBackToTop{display:none}


/* Tore final feinschliff */
.article-hero{margin:0 0 28px}.article-hero img{display:block;width:100%;max-height:440px;object-fit:cover;border-radius:18px}.article-body>div:first-child.image-block{display:none}.richtext table,.intro-text table,.article-body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.richtext td,.richtext th,.intro-text td,.intro-text th,.article-body td,.article-body th{vertical-align:top}.gallery-item span{word-break:break-word}.download-item strong{font-weight:700}


/* PDF icons for download items */
.download-item.pdf-download::before{content:"PDF";display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:28px;padding:0 8px;border-radius:8px;background:#c62828;color:#fff;font-size:12px;font-weight:700;letter-spacing:.04em;line-height:1;text-transform:uppercase;flex:0 0 auto}
.download-item.video-download::before{content:"▶";display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:28px;padding:0 8px;border-radius:8px;background:#d32f2f;color:#fff;font-size:14px;font-weight:700;line-height:1;flex:0 0 auto}


.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.25rem 0;}
.table-scroll table{min-width:640px;width:100%;border-collapse:collapse;}
.richtext table{width:100%;max-width:100%;display:table;}
@media (max-width: 760px){.table-scroll table{min-width:560px;}}

/* ============================================================ */
/* ERGÄNZUNG: Sticky Header - Logo Scale nur ganz oben          */
/* ============================================================ */

.site-header.sticky-header {
  position: fixed !important;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1001;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  will-change: top;
}

.brand-logo {
  will-change: transform;
}

.topbar {
  will-change: opacity, height;
}

/* ==============================
   Konfigurator-Kachel (Schranken-Konfigurator / Angebotsanfrage)
   ============================== */
.tile-configurator{position:relative}
.tile-configurator .tile-media{position:relative;display:block;overflow:hidden}
.tile-configurator .tile-media img{display:block}
.tile-configurator .tile-ribbon{position:absolute;top:14px;right:-48px;width:190px;transform:rotate(42deg);background:#86490a;color:#fff;font-weight:700;font-size:.72rem;letter-spacing:.03em;text-transform:uppercase;padding:6px 0;box-shadow:0 2px 8px rgba(0,0,0,.25);text-align:center}
.tile-configurator span.tile-text-green{background:linear-gradient(135deg,#86490a,#9f570d);color:#fff}
.tile-configurator span.tile-text-green strong{color:#fff}
.tile-configurator span.tile-text-green small{color:#fff5ea}

/* ==============================
   Menü: Ausrichtung der Menüpunkte vereinheitlichen
   (has-mega-Punkte hatten durch padding-bottom eine andere
   vertikale Zentrierung als normale Punkte ohne Untermenü)
   ============================== */
.nav ul{align-items:flex-start}

/* Beratungs-Popup ("Persönliche Beratung anfordern") - sitewide Popup aus
   beratung-popup.js (main.js), ergänzt den bestehenden .cta-contact-Bereich
   um eine dritte Aktion. Gleiches Muster wie .lightbox-modal. */
.cta-pill-outline{background:#fff;color:#86490a;border:2px solid #86490a;box-shadow:none;cursor:pointer;font:inherit;text-align:left;width:100%}
.cta-pill-outline strong,.cta-pill-outline span{color:#86490a}
.cta-pill-outline:hover{background:#fbf7f2}

/* ==============================
   Schranken-Artikel (Magnetic.Access-Familie): Highlights-Liste und
   Feature-Punkte - hübschere, mobil-optimierte Darstellung fuer
   itemIntroText-Kurzmerkmale und die "Bis zu Xm Sperrbreite"-Merkmalsbloecke.
   Ergaenzt die bereits bestehende .cms-content-Tabellenstylings (siehe oben),
   die durch Hinzufuegen der Klasse cms-content auch fuer diese Artikel greift.
   ============================== */
.highlights-list{list-style:none;padding:0;margin:.85rem 0 0;display:grid;gap:10px}
.highlights-list li{position:relative;padding:.7rem 1rem .7rem 2.7rem;background:#fbf8f5;border:1px solid #f0e4d7;border-radius:12px;color:#233240;line-height:1.4}
.highlights-list li::before{content:'✓';position:absolute;left:.85rem;top:50%;transform:translateY(-50%);width:1.5rem;height:1.5rem;border-radius:999px;background:#d16e0a;color:#fff;font-weight:700;font-size:.82rem;display:flex;align-items:center;justify-content:center}
@media (max-width:640px){.highlights-list li{padding:.6rem .85rem .6rem 2.4rem;font-size:.94rem}}

.feature-points{display:grid;gap:14px;margin:18px 0}
.feature-point{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid #dfe5ea;border-radius:14px;padding:16px 18px;box-shadow:var(--shadow)}
.feature-point-icon{flex:0 0 auto;width:64px;height:64px;display:flex;align-items:center;justify-content:center}
.feature-point-icon img{max-width:100%;max-height:100%;object-fit:contain}
.feature-point-text h2,.feature-point-text h3{margin:.1rem 0 .4rem !important;font-size:1.1rem}
.feature-point-text p{margin:0;color:#5b6b76}
@media (max-width:640px){.feature-point{flex-direction:column;gap:10px}.feature-point-icon{width:52px;height:52px}}

.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}
@media (max-width:760px){.category-grid{grid-template-columns:1fr}}
.category-card{border-radius:14px;padding:18px 20px;box-shadow:var(--shadow)}
.category-card h3{margin:.3rem 0 .6rem}
.category-card>p{margin:0 0 .6rem;color:#455160}
.category-card .highlights-list{margin-top:.5rem}
.category-card.cat-d{background:#fffaf0;border:1px solid #f1d9a8}
.category-card.cat-d h3{color:#8a5d07}
.category-card.cat-d .point-tag{background:#c8860a}
.category-card.cat-d .highlights-list li{background:#fff6e6;border-color:#f1d9a8}
.category-card.cat-d .highlights-list li::before{background:#c8860a}
.category-card.cat-e{background:#f0f6fc;border:1px solid #bcd8f2}
.category-card.cat-e h3{color:#154a86}
.category-card.cat-e .point-tag{background:#1b5fa8}
.category-card.cat-e .highlights-list li{background:#eaf3fc;border-color:#bcd8f2}
.category-card.cat-e .highlights-list li::before{background:#1b5fa8}
.service-area-notice{border:2px solid #1b5fa8;background:#f0f6fc;border-radius:14px;padding:18px 22px;margin:22px 0}
.service-area-notice h3{margin-top:0;color:#154a86}
.service-area-notice p{margin:.5rem 0}

.related-models{margin-top:26px}
.related-models h2{margin:0 0 12px}
.related-models .tile-grid{margin-bottom:14px}
.related-models .related-links{gap:14px 16px}
.related-models .related-links a{padding:.9rem 1.4rem;font-size:1.05rem;border-radius:14px;border:2px solid var(--brand);background:#fff;color:var(--brand-dark);box-shadow:var(--shadow);transition:transform .15s ease,box-shadow .15s ease}
.related-models .related-links a:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(10,209,160,.22);background:#fbf7f2}
@media (max-width:640px){.related-models .related-links{flex-direction:column}.related-models .related-links a{width:100%;justify-content:center;text-align:center;font-size:1rem}}

/* Adding .cms-content to the Magnetic.Access product articles (for the
   already-existing .cms-content table styling) also activates the
   .cms-content .sigProContainer li card rule below it for the first time on
   pages that still use the legacy sigPro gallery markup - neutralize it here
   so the sigPro thumbnails keep exactly one card border (from .sigProLink)
   instead of a doubled one. */
.cms-content .sigProContainer li{background:none;border:none;box-shadow:none;border-radius:0}

.partner-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:14px}
.partner-card{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:var(--shadow);text-align:center;transition:transform .15s ease,box-shadow .15s ease}
.partner-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,0,0,.10)}
.partner-logo{height:60px;display:flex;align-items:center;justify-content:center}
.partner-logo img{max-width:100%;max-height:100%;object-fit:contain}
.partner-card strong{color:#221d1a;font-size:1.02rem}
.partner-card p{margin:0;color:#6e7680;font-size:.9rem;line-height:1.5;text-align:left}
@media (max-width:980px){.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.partner-grid{grid-template-columns:1fr}.partner-card{text-align:left}.partner-logo{justify-content:flex-start}}
.partner-logo-pending{color:#9aa4ac;font-weight:700;font-size:.85rem;letter-spacing:.04em;border:1px dashed #d5dbe0;border-radius:8px;width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.partner-card-dark{background:#101820;border-color:#101820}
.partner-card-dark strong{color:#fff}
.partner-card-dark p{color:#b9c1c8}
.beratung-modal{position:fixed;inset:0;background:rgba(10,16,20,.84);display:none;align-items:flex-start;justify-content:center;padding:24px;z-index:5100;overflow-y:auto}
.beratung-modal.open{display:flex}
.beratung-modal-content{background:#fff;border-radius:16px;max-width:560px;width:100%;margin:24px auto;box-shadow:var(--shadow);overflow:hidden}
.beratung-modal-head{background:linear-gradient(180deg,#8f581f,#86490a);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.beratung-modal-head h2{color:#fff;margin:0;font-size:1.15rem;font-weight:700}
.beratung-modal-close{background:none;border:0;color:#fff;font-size:24px;line-height:1;cursor:pointer;padding:0 4px}
.beratung-modal-body{padding:18px 20px}
.beratung-field{margin:0 0 14px}
.beratung-field label{display:block;font-weight:700;color:#221d1a;margin:0 0 5px;font-size:.92rem}
.beratung-field input[type=text],.beratung-field input[type=email],.beratung-field input[type=tel],.beratung-field select,.beratung-field textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #cfd7dd;border-radius:8px;font-size:.95rem;font-family:inherit;background:#fff;color:#333}
.beratung-field textarea{resize:vertical;min-height:70px}
.beratung-hint{font-size:.82rem;color:#6e7680;margin-top:5px;line-height:1.5}
.beratung-hint.ok{color:#86490a;background:#faf2ea;border:1px solid #ecdac8;border-radius:8px;padding:8px 10px}
.beratung-hint.warn{color:#8a4b00;background:#fff3e0;border:1px solid #f0d8b0;border-radius:8px;padding:8px 10px}
.beratung-versandart{display:grid;gap:8px;margin:8px 0 0}
.beratung-versandart label{display:flex;gap:8px;align-items:flex-start;font-weight:500;color:#333;cursor:pointer;font-size:.92rem}
.beratung-error{display:none;border:1px solid #c0392b;background:#fdecea;color:#a4291b;border-radius:8px;padding:10px 12px;margin:0 0 14px;font-size:.88rem}
.beratung-success{display:none;border:1px solid #86490a;background:#faf2ea;color:#86490a;border-radius:8px;padding:12px 14px;margin:0 0 14px;font-size:.92rem}
.beratung-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px;flex-wrap:wrap}
.beratung-btn{padding:12px 22px;border-radius:999px;border:0;font-weight:700;font-size:.95rem;cursor:pointer}
.beratung-btn.primary{background:#86490a;color:#fff}
.beratung-btn.primary:disabled{opacity:.6;cursor:default}
.beratung-btn.secondary{background:#f0f2f3;color:#221d1a}
@media (max-width:640px){.beratung-modal{padding:0}.beratung-modal-content{margin:0;max-width:none;min-height:100%;border-radius:0}}

/* Branchen-Seiten: Platzhalter-Piktogramme statt Foto im Hero (Industrie & Gewerbe,
   Wohnanlagen, Privatgrundstück, Campingplätze) - object-fit:contain statt cover,
   damit das Piktogramm nicht angeschnitten wird, mit dezentem Rahmen/Hintergrund. */
.page-hero-img.pictogram{object-fit:contain;background:#eef6f3;padding:14px}

/* ===================== Mega-Menü: Bilder-Dropdowns (Produkte / Branchen / Referenzen / Unternehmen / Kontakt) ===================== */
.mm-caret{display:none;}
.has-mega{position:relative;}
.has-mega .mega-menu.mega-rich,.has-mega .mega-menu.mega-flat{display:none;position:absolute;left:0;top:100%;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.14);z-index:2000;}
.has-mega:hover .mega-menu.mega-rich,.has-mega:focus-within .mega-menu.mega-rich,.has-mega.mm-open .mega-menu.mega-rich{display:block;}
.has-mega:hover .mega-menu.mega-flat,.has-mega:focus-within .mega-menu.mega-flat,.has-mega.mm-open .mega-menu.mega-flat{display:block;}
.mega-menu.mega-rich{width:960px;padding:0;overflow:hidden;}
.mega-menu.mega-flat{width:820px;padding:22px;}
/* Horizontale Position wird per JS (main.js, positionMegaMenu) dynamisch so
   gesetzt, dass das Mega-Menü nie am rechten (oder linken) Viewport-Rand
   abgeschnitten wird – nötig, da Branchen/Referenzen/Unternehmen/Kontakt
   weiter rechts in der Nav liegen als die feste Breite (820-960px) erlaubt. */
.mega-rich-inner{position:relative;min-height:420px;}

.mm-cat-item{width:260px;border-bottom:1px solid var(--border);}
.mm-cat-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;background:none;border:none;padding:12px 16px;cursor:pointer;font:inherit;color:var(--text);border-radius:0;}
.mm-cat-btn:hover{background:var(--surface2);}
.mm-cat-item.active > .mm-cat-btn{background:#fbf3ea;}
.mm-cat-title{font-weight:600;font-size:.92rem;color:var(--brand-dark);}
.mm-cat-btn small{color:var(--muted);font-size:.74rem;}
.mm-cat-panel{display:none;position:absolute;top:0;left:260px;right:0;bottom:0;padding:20px;overflow-y:auto;}
.mm-cat-item.active .mm-cat-panel{display:block;}

.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap;}
.panel-head h3{margin:0;font-size:1.05rem;color:var(--brand-dark);}
.nav .panel-all{font-size:.82rem;color:var(--brand);font-weight:700;white-space:nowrap;text-decoration:none;background:none;padding:0;border-radius:0;border:none;box-shadow:none;}
.nav .panel-all:hover{text-decoration:underline;color:var(--brand);background:none;}
.panel-note{color:var(--muted);font-size:.9rem;line-height:1.5;}

.mm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.mm-grid-4{grid-template-columns:repeat(4,1fr);}
.nav .mm-tile{display:block;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff;text-decoration:none;color:inherit;transition:box-shadow .15s;padding:0;}
.nav .mm-tile:hover{box-shadow:0 6px 16px rgba(0,0,0,.1);background:#fff;border-color:var(--border);color:inherit;}
.mm-tile img{width:100%;height:76px;object-fit:cover;display:block;background:#f4f6f7;}
.mm-tile img.pictogram{object-fit:contain;background:#eef6f3;padding:8px}
.tile img.pictogram{object-fit:contain;background:#eef6f3;padding:8px}
.mm-tile span{display:block;padding:8px 10px;font-size:.8rem;font-weight:600;color:var(--text);line-height:1.3;}

.mm-tools-label{margin:16px 20px 8px;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;}
.mm-tools-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 20px 4px;}
.nav .mm-tool-card{display:flex;gap:10px;align-items:center;background:linear-gradient(135deg,#fbf3ea,#fbf8f4);border:1px solid #eed6bd;border-radius:10px;padding:12px;text-decoration:none;color:inherit;font-weight:400;box-shadow:none;}
.nav .mm-tool-card:hover{border-color:var(--brand);background:linear-gradient(135deg,#fbf3ea,#fbf8f4);color:inherit;box-shadow:none;}
.mm-tool-icon{font-size:1.3rem;line-height:1;}
.mm-tool-text strong{display:block;color:var(--brand-dark);font-size:.85rem;}
.mm-tool-text small{display:block;color:var(--muted);font-size:.74rem;margin-top:2px;line-height:1.35;}

.flat-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;flex-wrap:wrap;}
.flat-head h3{margin:0;font-size:1.1rem;color:var(--brand-dark);}
.flat-head-links{display:flex;gap:8px;flex-wrap:wrap;}
.nav .flat-cta{background:var(--brand);color:#fff;padding:9px 14px;border-radius:8px;font-size:.82rem;font-weight:700;text-decoration:none;white-space:nowrap;border:none;box-shadow:none;}
.nav .flat-cta.ghost{background:#fff;border:1px solid var(--border);color:var(--brand-dark);}
.nav .flat-cta:hover{filter:brightness(.95);color:#fff;background:var(--brand);}
.nav .flat-cta.ghost:hover{color:var(--brand-dark);background:#fff;}

/* Eigener Klassenname (mm-cta-pill statt cta-pill) und mit ".nav" skopiert,
   da (a) "cta-pill" sitewide bereits für eine andere, grüne CTA-Kachel
   verwendet wird (250+ Seiten) und (b) die Basisregel ".nav a" sonst wegen
   höherer Selektor-Spezifität gewinnen und diese Styles überschreiben würde. */
.nav .mm-cta-pill{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:10px;padding:10px 16px;text-decoration:none;color:inherit;min-width:170px;flex:1 1 170px;white-space:normal;}
.nav .mm-cta-pill strong{color:var(--brand-dark);font-size:.88rem;}
.nav .mm-cta-pill span{color:var(--muted);font-size:.78rem;margin-top:2px;}
.nav .mm-cta-pill-primary{background:var(--brand);border-color:var(--brand);}
.nav .mm-cta-pill-primary strong,.nav .mm-cta-pill-primary span{color:#fff;}
.mega-contact-row{display:flex;gap:12px;flex-wrap:wrap;}

/* Eigener Klassenname (mm-logo-track statt logo-track), da "logo-track"
   sitewide bereits für das Referenzen-Logo-Marquee auf der Startseite
   verwendet wird (index.html, anderes Markup/Animation) – sonst würde diese
   Regel dessen Abstand/Animation überschreiben. */
.logo-slider{overflow:hidden;margin-bottom:4px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
.mm-logo-track{display:flex;gap:14px;width:max-content;animation:mmScrollLogos 32s linear infinite;}
.logo-slider:hover .mm-logo-track{animation-play-state:paused;}
.logo-item{flex:0 0 auto;width:110px;height:58px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--border);border-radius:8px;padding:8px;}
.logo-item img{max-width:100%;max-height:100%;object-fit:contain;}
@keyframes mmScrollLogos{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.mm-logo-track{animation:none;flex-wrap:wrap;width:auto;}}

/* Mobile-Kontaktblock im Seitenmenü */
.mm-mobile-contact{display:none;}

/* ---- Anpassungen ≤1400px: Slide-in-Menü statt Hover-Dropdowns ----
   (23.09.2026: von 980px auf 1400px erweitert - betrifft NUR die
   Rubriken-Untermenüs selbst (mm-caret/mm-open/mm-grid), nicht Hero-
   /Kachel-Layouts anderswo auf der Seite, die weiterhin bei 980px
   bleiben. Grund: auf breiteren Tablets wie dem iPad Pro (Portrait
   ~1024-1032px, Querformat bis ~1400px) greift bereits der eigene
   Slide-in-Menü-Breakpoint weiter unten in dieser Datei, aber OHNE
   diesen Block hier fehlte die Umschaltung der Rubriken-Buttons
   (Produkte/Branchen/...) auf Tippen-statt-Hover und die schmalere
   2-Spalten-Darstellung - dadurch blieben Untermenüs entweder ganz
   unreagierend oder liefen rechts aus dem schmalen Menü heraus.) ---- */
@media (max-width:1400px){
  .mm-caret{display:inline-flex;align-items:center;justify-content:center;position:absolute;right:0;top:0;width:44px;height:44px;background:none;border:none;color:var(--brand-dark);font-size:1rem;cursor:pointer;}
  .has-mega{padding-right:44px;}
  .has-mega .mega-menu.mega-rich,.has-mega .mega-menu.mega-flat{display:none;position:static;width:auto;max-width:none;border:none;box-shadow:none;border-radius:0;padding:10px 0 6px;margin-top:4px;}
  .has-mega:hover .mega-menu.mega-rich,.has-mega:focus-within .mega-menu.mega-rich,.has-mega:hover .mega-menu.mega-flat,.has-mega:focus-within .mega-menu.mega-flat{display:none;}
  .has-mega.mm-open .mega-menu.mega-rich,.has-mega.mm-open .mega-menu.mega-flat{display:block;}

  .mega-rich-inner{display:block;min-height:0;}
  .mm-cat-item{width:auto;flex:none;border-bottom:1px solid var(--border);}
  .mm-cat-btn{padding:10px 4px;}
  .mm-cat-panel{display:none;position:static;padding:6px 4px 14px;}
  .mm-cat-item.active .mm-cat-panel{display:block;}

  .mm-grid,.mm-grid-4{grid-template-columns:repeat(2,1fr);}
  .mm-tools-row{grid-template-columns:1fr;margin-left:4px;margin-right:4px;}
  .mm-tools-label{margin-left:4px;margin-right:4px;}

  .flat-head{flex-direction:column;align-items:flex-start;}
  .mega-contact-row{flex-direction:column;}
  /* flex-basis:170px (Desktop-Regel) wird in einem Column-Flex-Container zur
     HÖHE statt Breite - hier zurücksetzen, sonst werden die Pills 170px hoch. */
  .nav .mm-cta-pill{min-width:0;flex:none;}

  /* margin-top gleicht einen bereits bestehenden Effekt bei ".nav::before" (die
     "Menü"-Sticky-Leiste im Seitenmenü) aus: deren negativer margin-top wird von
     Browsern für die sticky-Positionierung nicht wie in der Fläche berechnet
     angewendet, wodurch der erste Menüpunkt (bisher "Home") dahinter verdeckt
     war - ein vorbestehender Effekt, der hier erstmals sichtbar auffällt, weil
     der neue Kontaktblock jetzt an erster Stelle steht. */
  .mm-mobile-contact{display:block;padding:14px 4px 16px;border-bottom:1px solid var(--border);margin-bottom:8px;margin-top:56px;}
  .mm-mobile-contact-row{display:flex;flex-direction:column;gap:8px;margin-bottom:8px;}
  .mm-mobile-inquiry{display:block;text-align:center;}
}

/* Startseite: zusätzliche Inhaltsbänder (Leistungen/Branchen/Projekte nutzen
   bestehende .section/.section-head/.tile-grid/.card-Klassen, siehe darunter -
   hier nur das neue dunkle "50 Jahre"-Band, für das es noch keine sitewide
   Variante gab). */
.section.milestones{background:var(--brand-dark);border-radius:18px;margin:8px 0}
.section.milestones .container{padding-top:6px;padding-bottom:6px}
.section.milestones .section-head h2{color:#fff}
.section.milestones .section-head p{color:#d6d0c9}
.milestones-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:center}
.milestones-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.milestones-media{display:grid;gap:14px}
.milestones-media .company-hero-img{height:230px}
.milestones-media .company-badge-img{justify-self:stretch;width:100%;max-width:none}
@media (max-width: 980px){.milestones-grid{grid-template-columns:1fr}.milestones-media .company-badge-img{justify-self:stretch;width:100%;max-width:none}}

/* Service-Seite (/dienstleistungen-service/): PLZ-Servicegebiets-Check,
   Wartungskunden-Vorteilshinweis und die farbigen "Erforderlich"-Badges der
   Service-Übersichtstabelle. Rest der Seite nutzt bestehende .card/.cards/
   .data-table/.cta-contact-Klassen. */
.plz-check{margin:18px 0}
.plz-check label{display:block;font-weight:700;margin-bottom:8px;color:#221d1a}
.plz-check-row{display:flex;gap:8px;flex-wrap:wrap}
.plz-check-row input{flex:1;min-width:140px;height:44px;padding:0 12px;border:1px solid #cfd7dd;border-radius:var(--radius);font-size:.95rem;background:#fff;color:#221d1a}
.plz-check-row input#service-check-ort{flex:2}
.plz-check-hint{margin-top:10px;font-size:.88rem;line-height:1.6;color:#6e7680}
.plz-check-hint-ok{color:#86490a}
.plz-check-hint-out{color:#b45309}
.priority-highlight{background:linear-gradient(180deg,#fbfaf8,#f7f3ee)}
.priority-highlight h2{margin:.3rem 0 .5rem;font-size:1.35rem;font-weight:600}
.service-cards{margin-top:14px}
.warranty-combo-card{margin-top:24px}
.warranty-combo-card .highlight-line{background:#f8f6f4;border-left:3px solid var(--brand);padding:.7rem .9rem;border-radius:8px;font-weight:600;color:#86490a}
.service-table-head{margin:36px 0 14px}
.req-mandatory{color:#b45309;font-weight:700}
.req-recommended{color:#86490a;font-weight:700}
.req-optional{color:#8a6d1f;font-weight:700}

/* Magnetic.Access Datenblätter (/schrankenanlagen/automatikschranken/magnetic-access-schranken-datenblaetter-pdf/):
   Modell-Filter-Pillen und modernisierte PDF-Download-Kacheln mit PDF-Icon, gruppiert und nach Schrankenmodell filterbar. */
.pdf-filter{margin:24px 0 6px;padding:16px 18px;background:#fbf9f7;border:1px solid var(--border);border-radius:14px}
.pdf-filter-label{display:block;font-weight:700;color:#221d1a;margin-bottom:10px}
.pdf-filter-pills{display:flex;flex-wrap:wrap;gap:8px}
.pdf-filter-btn{padding:.5rem 1rem;border-radius:999px;border:1px solid #cfd7dd;background:#fff;color:#221d1a;font-weight:600;font-size:.86rem;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease;font:inherit}
.pdf-filter-btn:hover{border-color:var(--brand)}
.pdf-filter-btn.active{background:var(--brand);border-color:var(--brand);color:#3d2308}
.pdf-filter-hint{margin:12px 0 0;font-size:.85rem;color:#6e7680}
.pdf-filter-hint a{color:#86490a;font-weight:600}
.pdf-group{margin-top:30px}
.pdf-group-title{font-size:1.15rem;font-weight:700;color:#221d1a;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border)}
.pdf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.pdf-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:12px 14px;text-decoration:none;color:#221d1a;box-shadow:var(--shadow);transition:border-color .15s ease,transform .15s ease}
.pdf-card:hover{border-color:var(--brand);transform:translateY(-2px)}
.pdf-card svg{flex:0 0 auto}
.pdf-card-title{display:block;font-weight:700;font-size:.92rem;line-height:1.4}
.pdf-card-sub{display:block;font-weight:400;color:#86490a;font-size:.8rem;margin-top:2px}
.pdf-card[hidden],.pdf-group[hidden]{display:none}

/* Header/Hauptmenue auf mittelbreiten Bildschirmen (23.09.2026): Zwischen der
   bisherigen Mobil-Schwelle (980px) und einem wirklich breiten Desktop-Fenster
   gab es eine Luecke, in der weder die Desktop-Variante noch die Mobil-Variante
   des Menues richtig passte. Ursache: .nav ul (Desktop) ist bewusst auf eine
   Zeile ohne Umbruch gesetzt (flex-wrap:nowrap; overflow:visible), damit die
   Menuepunkte hinter der Lupe nicht innerhalb der Box umbrechen - auf einem
   breiten Buerobildschirm faellt der Ueberschuss dann einfach in den weissen
   Rand rechts neben dem auf 1200px begrenzten .container und bleibt so
   unbemerkt sichtbar. Auf einem schmaleren Fenster (z.B. iPad Pro 13" quer/
   hoch: 1032px bzw. 1376px, aber auch ganz normale Laptop-Bildschirme um
   1280-1366px) reicht dieser Rand nicht mehr aus: Menuepunkte ab "Download"
   werden schlicht rechts vom sichtbaren Bereich abgeschnitten, und der fuer
   das Mobilmenue vorgesehene Kontakt-Block (.mm-mobile-contact: Hotline /
   E-Mail / Jetzt anfragen) blieb bislang ebenfalls auf display:none stehen
   und damit unsichtbar in genau dieser Luecke - der Nutzer sah dort aber
   trotzdem drei Buttons "im Header haengen": das war nicht dieser Block,
   sondern der abgeschnittene Rest der normalen Desktop-Nav-Zeile, der sich
   optisch mit dem Logo/Header ueberlagert hat.
   Fix: In diesem Zwischenbereich (981px bis 1400px) wird - genau wie unter
   980px - auf das bereits vorhandene, funktionierende Schublade-Menue
   (Button "Menü" oeffnet eine Seitenleiste) umgeschaltet, statt zu versuchen,
   die volle Desktop-Zeile hineinzuquetschen. Das ist ausserdem fuer
   Touch-Bedienung (Tablet) ohnehin passender, da das Desktop-Mega-Menue auf
   Hover statt Tippen ausgelegt ist. */
@media (min-width:981px) and (max-width:1400px){
  .header-inner > .nav-toggle{display:inline-flex}
  .nav{position:fixed;left:0;top:0;height:100dvh;width:min(86vw,340px);background:#fff;border-right:1px solid #dfe5ea;box-shadow:18px 0 40px rgba(0,0,0,.16);transform:translateX(-105%);transition:transform .25s ease;z-index:3000;padding:70px 18px 18px;overflow-y:auto;overflow-x:hidden}
  .nav.open{transform:translateX(0)}
  .nav::before{content:'Menü';display:block;position:sticky;top:0;margin:-70px -18px 14px;padding:18px 18px;background:linear-gradient(180deg,#fff,#f9f8f6);border-bottom:1px solid #e2e6ea;font-weight:700;color:#221d1a}
  .nav ul{display:flex;flex-direction:column;flex-wrap:wrap;align-items:stretch;justify-content:flex-start;overflow:visible;gap:8px}
  .nav a{border:1px solid #e7ecef;border-radius:12px;background:#fff;white-space:normal;border-bottom:1px solid #eee}
  .has-mega{padding-bottom:0}
  .has-mega .mega-menu{position:static;min-width:0;display:none;box-shadow:none;border:none;padding:10px 0 0;border-radius:0}
  .has-mega .mega-col{padding-left:8px;border-left:2px solid #e8eef0}
  .has-mega:hover .mega-menu,.has-mega:focus-within .mega-menu{display:block}
  .mega-col{margin-bottom:12px}
  .mm-mobile-contact{display:block;padding:14px 4px 16px;border-bottom:1px solid var(--border);margin-bottom:8px;margin-top:56px}
  .mm-mobile-contact-row{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}
}

/* ============================================================
   magnetic-schranken.de - eigenstaendige Ergaenzungen
   (Basis-Framework 1:1 von preiser-technik.de portiert, Marken-
   farben auf RAL 2000 Gelborange umgestellt - siehe :root oben.
   Alles unter diesem Kommentar ist magnetic-schranken.de-eigen.)
   ============================================================ */
.ms-brand-word{font-size:1.35rem;font-weight:700;color:#221d1a;letter-spacing:-.01em}
.ms-brand-accent{color:var(--brand)}
.mobile-brand .ms-brand-word{font-size:1.05rem}

.ms-hero{position:relative;overflow:hidden;border-radius:20px;color:#f4ede3;padding:36px 34px 32px;margin:18px 0 26px;box-shadow:var(--shadow)}
.ms-hero::before{content:'';position:absolute;inset:0;background:#18140f url('/assets/img/hero/schranken-illustration.webp') center 32%/cover no-repeat;z-index:0}
.ms-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,#15110c 0%,#181310 34%,rgba(21,17,12,.86) 50%,rgba(21,17,12,.4) 68%,rgba(21,17,12,.1) 100%);z-index:1}

.ms-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr 1fr;column-gap:36px;row-gap:16px;align-items:start;grid-template-areas:"badge visual" "heading visual" "actions plz"}
.ms-hero-top{grid-area:badge}
.ms-hero-heading{grid-area:heading}
.ms-hero-actions{grid-area:actions;align-self:end;display:flex;flex-wrap:wrap;gap:10px}
.ms-hero-actions .btn.primary{background:var(--brand);border-color:var(--brand)}
.ms-hero-actions .btn.ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.24);color:#fff}
.ms-hero-visual{grid-area:visual;position:relative;display:flex;flex-direction:column;align-items:center}

.ms-partner-badge{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:7px 16px 7px 8px;font-size:.86rem;color:#f0e6d8}
.ms-partner-badge .ms-badge-mark{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,#f0923f,var(--brand));display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.72rem;color:#1a1006;flex:none}
.ms-partner-logo-chip{align-self:flex-end;display:inline-flex;align-items:center;background:#fff;border-radius:10px;padding:9px 18px;box-shadow:0 4px 16px rgba(0,0,0,.3)}
.ms-partner-logo-chip img{display:block;height:28px;width:auto}
.ms-hero-barrier{width:100%;max-width:420px;height:auto;margin-top:14px;filter:drop-shadow(0 18px 26px rgba(0,0,0,.45))}
.ms-hero h1{color:#fff;font-size:clamp(1.9rem,4.2vw,3rem);font-weight:400;line-height:1.08;margin:0 0 10px;max-width:18ch}
.ms-hero h1 em{font-style:normal;color:var(--brand)}
.ms-hero .lead{color:#d9cdbd;max-width:56ch;font-size:1.05rem;margin:0}

.ms-plz-widget{grid-area:plz;align-self:end;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:16px 18px}
.ms-plz-widget-label{font-size:.86rem;color:#e7dccb;margin-bottom:10px;display:block}
.ms-plz-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ms-plz-form input[type="text"]{font-size:1rem;background:#100d0a;border:1px solid rgba(255,255,255,.24);color:#fff;border-radius:8px;padding:11px 12px;width:130px}
.ms-plz-form input[type="text"]::placeholder{color:#8a8074}
.ms-plz-form button{font-family:Roboto,Arial,sans-serif;font-weight:700;font-size:.95rem;background:var(--brand);color:#1a1006;border:none;border-radius:8px;padding:11px 20px;cursor:pointer}
.ms-plz-form button:hover{filter:brightness(1.05)}
.ms-plz-result{margin-top:12px;font-size:.9rem;line-height:1.5;color:#e7dccb}
.ms-plz-result a{color:#ffd9ac}
.ms-plz-result.ms-plz-ok{color:#bfe8c9}
.ms-plz-result.ms-plz-warn{color:#f2c6a1}

.ms-tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}
.ms-tile{display:flex;flex-direction:column;gap:6px;padding:18px 16px;border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:var(--shadow);color:inherit;border-top:4px solid var(--brand);overflow:hidden}
.ms-tile-img{display:block;width:calc(100% + 32px);margin:-18px -16px 4px;height:130px;object-fit:cover;background:#f4f6f7}
.ms-tile .ms-tile-kicker{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--brand)}
.ms-tile strong{color:#221d1a;font-size:1.02rem}
.ms-tile small{color:#66707a;line-height:1.4}
.ms-tile.ms-tile-new{border-top-color:#221d1a}
.ms-tile.ms-tile-new .ms-tile-kicker{color:#8a5d07}

.ms-note-box{margin:22px 0;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:#fbfaf8}
.ms-note-box strong{display:block;margin-bottom:4px;color:#221d1a}
.ms-note-box p{margin:0;color:#66707a}

.ms-safety-note{margin:22px 0;padding:16px 18px;border:1px solid #f0c9a8;border-radius:14px;background:#fff3e0}
.ms-safety-note strong{display:block;margin-bottom:4px;color:#8a3b00}
.ms-safety-note p{margin:0;color:#7a4a1a}

@media (max-width:980px){
  .ms-hero{padding:22px 20px 20px;border-radius:14px}
  .ms-hero::before{background-position:center 38%}
  .ms-hero::after{background:linear-gradient(180deg,rgba(21,17,12,.55) 0%,rgba(21,17,12,.9) 45%,#15110c 100%)}
  .ms-hero-grid{grid-template-columns:1fr;row-gap:16px;grid-template-areas:"badge" "visual" "heading" "actions" "plz"}
  .ms-hero-visual{align-items:center}
  .ms-partner-logo-chip{align-self:center}
  .ms-hero-barrier{width:72%;max-width:280px;margin-top:12px;filter:drop-shadow(0 14px 22px rgba(0,0,0,.5))}
  .ms-hero-actions{align-self:auto}
  .ms-plz-widget{align-self:auto}
  .ms-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .ms-tile-grid{grid-template-columns:1fr}
  .ms-plz-form{flex-direction:column;align-items:stretch}
  .ms-plz-form input[type="text"]{width:100%}
}

/* Footer-Grid auf Mobilgeräten stapeln (Basis-Framework hatte hierfuer keine
   Media Query - fuehrte bei 4 Spalten auf schmalen Bildschirmen zu
   horizontalem Overflow). Betrifft footer.html sitewide. */
@media (max-width:760px){
  .footer-grid{grid-template-columns:1fr;gap:18px}
}
