/* ==========================================================================
   Krauß Baulogistik – Redesign 2026
   Stylesheet für Divi 5 (Standard-Header + Divi-Module mit kb-Klassen)
   ========================================================================== */

@font-face{font-family:'Ubuntu';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/ubuntu-400.woff2') format('woff2')}
@font-face{font-family:'Ubuntu';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/ubuntu-500.woff2') format('woff2')}
@font-face{font-family:'Ubuntu';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/ubuntu-700.woff2') format('woff2')}

:root{
  --kb-y:#E4CB30; --kb-y-light:#EFDF80; --kb-ink:#434242; --kb-ink-dark:#2E2D2D;
  --kb-text:#5B5B5B; --kb-muted:#757575; --kb-soft:#F7F7F7; --kb-img:#ECECEC; --kb-line:#D9DADA; --kb-white:#FFFFFF;
  --kb-r-sm:12px; --kb-r:20px; --kb-r-lg:32px;
  --kb-shadow:0 1px 2px rgba(0,0,0,.04),0 10px 28px rgba(0,0,0,.06);
  --kb-shadow-hover:0 2px 4px rgba(0,0,0,.05),0 18px 40px rgba(0,0,0,.10);
  --kb-max:1280px;
  --kb-font:'Ubuntu','Helvetica Neue',Arial,sans-serif;
}

/* ---------- Basis ---------- */
body.kb{font-family:var(--kb-font);color:var(--kb-text);background:#fff;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.kb #page-container,body.kb #main-content,body.kb #et-main-area{background:#fff}
body.kb h1,body.kb h2,body.kb h3,body.kb h4,body.kb h5,body.kb h6{font-family:var(--kb-font);color:var(--kb-ink)}
body.kb a{color:var(--kb-ink)}
body.kb ::selection{background:var(--kb-y);color:var(--kb-ink)}

/* ---------- Header (Divi-Standard-Header) ---------- */
body.kb #top-header{display:none !important}
body.kb #main-header{background:rgba(255,255,255,.96) !important;box-shadow:none !important;top:0 !important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
body.kb.et_fixed_nav.et_show_nav #page-container{padding-top:88px !important}
body.kb #main-header .container{width:calc(100% - 80px);max-width:none}
@media (max-width:980px){body.kb #main-header .container{width:calc(100% - 40px)}}
body.kb #main-header .logo_container img#logo,body.kb #logo{max-height:64px !important;height:64px;width:auto}
body.kb .et_header_style_left #et-top-navigation,body.kb .et_header_style_split #et-top-navigation{padding-top:30px !important}
body.kb .et_header_style_left .et-fixed-header #et-top-navigation{padding-top:20px !important}
body.kb #top-menu li{padding-right:26px}
body.kb #top-menu li:last-child{padding-right:0}
body.kb #top-menu > li > a{font-family:var(--kb-font);font-size:14px !important;font-weight:500 !important;letter-spacing:.06em;text-transform:uppercase;color:var(--kb-ink) !important;opacity:1 !important;padding-bottom:28px !important;border-bottom:2px solid transparent;transition:border-color .15s}
body.kb #top-menu > li > a:hover,body.kb #top-menu > li.current-menu-item > a,body.kb #top-menu > li.current-menu-ancestor > a,body.kb #top-menu > li.current_page_ancestor > a{border-bottom-color:var(--kb-y)}
body.kb .et-fixed-header #top-menu > li > a{padding-bottom:20px !important}
body.kb #top-menu li.menu-item-has-children > a:first-child{padding-right:18px}
body.kb #top-menu .sub-menu{border-top:3px solid var(--kb-y) !important;border-radius:0 0 var(--kb-r-sm) var(--kb-r-sm);box-shadow:var(--kb-shadow) !important;padding:12px 0}
body.kb #top-menu .sub-menu li a{font-size:14px;color:var(--kb-ink) !important;text-transform:none;letter-spacing:0;opacity:1 !important}
body.kb #top-menu .sub-menu li a:hover{background:var(--kb-soft) !important;opacity:1}
/* Telefon + CTA im Menü (vom Plugin ergänzt) */
body.kb #top-menu li.kb-nav-tel > a{text-transform:none;letter-spacing:0;font-size:15px !important;display:inline-flex;align-items:center;gap:8px}
body.kb #top-menu li.kb-nav-tel > a::before{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:var(--kb-i-phone) center/contain no-repeat;mask:var(--kb-i-phone) center/contain no-repeat}
body.kb #top-menu li.kb-nav-tel > a:hover{border-bottom-color:transparent}
body.kb #top-menu li.kb-nav-cta{transform:translateY(-12px)}
body.kb #top-menu li.kb-nav-cta > a{background:var(--kb-y);color:var(--kb-ink) !important;font-weight:700 !important;text-transform:none;letter-spacing:0;font-size:15px !important;padding:13px 20px !important;border-radius:var(--kb-r-sm);border-bottom:0 !important;transition:transform .15s,box-shadow .15s}
body.kb #top-menu li.kb-nav-cta > a:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(228,203,48,.45)}
body.kb .et-fixed-header #top-menu li.kb-nav-cta{transform:translateY(-8px)}
/* Mobile */
body.kb .mobile_menu_bar:before{color:var(--kb-ink) !important}
body.kb .et_mobile_menu{border-top:3px solid var(--kb-y) !important;border-radius:0 0 var(--kb-r) var(--kb-r);box-shadow:var(--kb-shadow)}
body.kb .et_mobile_menu li a{color:var(--kb-ink) !important;font-weight:500}
body.kb .et_mobile_menu li.kb-nav-cta a{background:var(--kb-y);border-radius:var(--kb-r-sm);text-align:center;font-weight:700;margin-top:10px}
@media (max-width:980px){
  body.kb #main-header .logo_container img#logo,body.kb #logo{height:52px;max-height:52px !important}
  body.kb.et_fixed_nav #page-container{padding-top:80px !important}
}

/* ---------- Struktur: Sektionen, Zeilen, Spalten ---------- */
.et_pb_section.kb-sec{padding:0 !important;background:transparent}
.et_pb_section.kb-sec + .et_pb_section.kb-sec{margin-top:0}
.kb-sec .et_pb_row{width:calc(100% - 48px) !important;max-width:var(--kb-max) !important;margin-left:auto !important;margin-right:auto !important;padding:0 !important}
.kb-sec .et_pb_row.kb-grid::after,.kb-sec .et_pb_row.kb-grid::before{display:none !important}
.kb-sec .et_pb_row:not(.kb-grid) > .et_pb_column{float:none !important;width:100% !important;margin-right:0 !important}
.kb-sec .et_pb_column{margin-bottom:0 !important}
.kb-sec .et_pb_module{margin-bottom:0 !important}
.kb-sec .et_pb_text_inner > *:last-child{margin-bottom:0;padding-bottom:0}

.et_pb_section.kb-sec.kb-sp-t{padding-top:112px !important}.et_pb_section.kb-sec.kb-sp-t-s{padding-top:48px !important}.et_pb_section.kb-sec.kb-sp-t-xs{padding-top:24px !important}
.et_pb_section.kb-sec.kb-sp-b{padding-bottom:112px !important}.et_pb_section.kb-sec.kb-sp-b-s{padding-bottom:48px !important}
.kb-gap-b{margin-bottom:24px !important}

/* Raster: Spalten als CSS-Grid (überschreibt Divis Spaltenbreiten) */
.kb-sec .et_pb_row.kb-grid{display:grid !important;gap:20px;align-items:stretch}
.kb-sec .et_pb_row.kb-grid > .et_pb_column{width:auto !important;margin:0 !important;float:none !important;min-width:0}
.kb-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.kb-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.kb-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.kb-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.kb-grid-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:56px !important;align-items:center !important}
.kb-grid-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px !important;align-items:center !important}
.kb-grid-top{align-items:start !important}
.kb-grid-wide{gap:24px !important}
@media (max-width:1100px){.kb-grid-4,.kb-grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){
  .kb-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kb-grid-split,.kb-grid-hero{grid-template-columns:minmax(0,1fr);gap:32px !important}
  .et_pb_section.kb-sec.kb-sp-t{padding-top:72px !important}.et_pb_section.kb-sec.kb-sp-b{padding-bottom:72px !important}
}
@media (max-width:640px){.kb-grid-2,.kb-grid-3,.kb-grid-4{grid-template-columns:minmax(0,1fr)}.kb-grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- Typografie in kb-Bereichen ---------- */
.kb-sec,.kb-sec p,.kb-sec li{font-family:var(--kb-font);color:var(--kb-text);font-size:17px;line-height:1.65}
.kb-sec h1,.kb-sec h2,.kb-sec h3,.kb-sec h4{font-family:var(--kb-font);color:var(--kb-ink);font-weight:700;letter-spacing:-.015em;padding-bottom:0}
.kb-sec h1{font-size:clamp(38px,4.6vw,60px);line-height:1.06;letter-spacing:-.02em;margin:0 0 20px}
.kb-sec h2{font-size:clamp(28px,3.2vw,42px);line-height:1.12;margin:0 0 18px}
.kb-sec h3{font-size:24px;line-height:1.25;margin:0 0 12px}
.kb-sec h4{font-size:19px;line-height:1.3;margin:0 0 10px}
.kb-sec p{margin:0 0 16px;padding:0}
.kb-sec strong{color:var(--kb-ink)}
.kb-sec a{color:var(--kb-ink);text-decoration:underline;text-decoration-color:var(--kb-y);text-decoration-thickness:2px;text-underline-offset:3px}
.kb-sec a:hover{color:#000}
.kb-sec ul{list-style:none;padding:0 !important;margin:0 0 18px}
.kb-sec ul li{position:relative;padding-left:30px;margin-bottom:8px}
.kb-sec ul li::before{content:"";position:absolute;left:0;top:.28em;width:20px;height:20px;border-radius:999px;background:var(--kb-y) var(--kb-i-check-dark) center/12px no-repeat}
.kb-sec ol{padding-left:22px;margin:0 0 18px}
.kb-sec table{width:100%;border-collapse:collapse;margin:0 0 24px;border:0}
.kb-sec table td,.kb-sec table th{border:0;border-bottom:1px solid var(--kb-line);padding:14px 12px;vertical-align:top;text-align:left;font-size:16px}
.kb-sec table tr:last-child td{border-bottom:0}

.kb-eyebrow{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:13px !important;letter-spacing:.14em;text-transform:uppercase;color:var(--kb-text) !important;margin:0 0 14px !important}
.kb-eyebrow::before{content:"";width:28px;height:3px;background:var(--kb-y);border-radius:2px}
.kb-on-dark .kb-eyebrow{color:var(--kb-y) !important}
.kb-lead{font-size:20px !important;line-height:1.6 !important;color:var(--kb-text)}
.kb-display{font-size:clamp(44px,5.4vw,76px) !important;line-height:1.04 !important;letter-spacing:-.02em;font-weight:700;color:var(--kb-ink) !important;margin:0 0 24px !important}
.kb-mark{background:linear-gradient(transparent 62%,var(--kb-y) 62%,var(--kb-y) 92%,transparent 92%);padding:0 2px}
.kb-kicker-h1{font-size:15px !important;line-height:1.5 !important;font-weight:500 !important;letter-spacing:0 !important;color:var(--kb-text) !important;margin:0 0 18px !important;max-width:560px}
.kb-pill{display:inline-flex;align-items:center;gap:8px;background:var(--kb-soft);border-radius:999px;padding:8px 16px 8px 8px;font-size:14px;font-weight:500;color:var(--kb-ink);margin-bottom:24px}
.kb-pill b{background:var(--kb-y);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}
.kb-checks{display:flex;flex-wrap:wrap;gap:10px 24px;margin:20px 0 0 !important}
.kb-checks li{margin:0 !important;font-size:15px !important;font-weight:500;color:var(--kb-ink) !important}
.kb-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px !important}
.kb-chips li{background:var(--kb-soft);border-radius:999px;padding:7px 14px !important;font-size:14px !important;font-weight:500;color:var(--kb-ink) !important;margin:0 !important}
.kb-chips li::before{display:none}
.kb-on-y .kb-chips li,.kb-on-soft .kb-chips li{background:#fff}

/* ---------- Buttons ---------- */
.kb-btns{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:8px}
a.kb-btn{display:inline-flex !important;align-items:center;gap:10px;min-height:52px;padding:0 26px;border-radius:var(--kb-r-sm);font-weight:700;font-size:16px;text-decoration:none !important;box-sizing:border-box;transition:transform .15s,box-shadow .15s,background .15s,color .15s;line-height:1.2}
a.kb-btn::after{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:var(--kb-i-arrow) center/contain no-repeat;mask:var(--kb-i-arrow) center/contain no-repeat}
a.kb-btn.kb-noarrow::after{display:none}
a.kb-btn-y{background:var(--kb-y);color:var(--kb-ink) !important}
a.kb-btn-y:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(228,203,48,.45)}
a.kb-btn-d{background:var(--kb-ink);color:#fff !important}
a.kb-btn-d:hover{background:var(--kb-ink-dark)}
a.kb-btn-g{background:#fff;color:var(--kb-ink) !important;border:1.5px solid var(--kb-ink)}
a.kb-btn-g:hover{background:var(--kb-ink);color:#fff !important}
a.kb-btn-g.kb-noarrow,a.kb-btn-g{min-height:48px}
.kb-more{font-weight:700;text-decoration:none !important;display:inline-flex;align-items:center;gap:8px;color:var(--kb-ink) !important}
.kb-more::after{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:var(--kb-i-arrow) center/contain no-repeat;mask:var(--kb-i-arrow) center/contain no-repeat;transition:transform .15s}
.kb-more:hover::after,a.kb-cardlink:hover .kb-more::after{transform:translateX(3px)}
a.kb-tel-big{font-weight:700;font-size:28px;text-decoration:none !important;color:var(--kb-ink) !important}

/* Divi-Button-Module in kb-Bereichen */
.kb-sec .et_pb_button_module_wrapper{margin:0 0 12px !important}
.kb-sec .et_pb_button_module_wrapper .et_pb_button,.kb-sec a.et_pb_button{display:inline-flex !important;align-items:center;justify-content:center;min-height:52px;padding:0 24px !important;border-radius:var(--kb-r-sm) !important;border:0 !important;background:var(--kb-ink) !important;color:#fff !important;font-family:var(--kb-font) !important;font-weight:700 !important;font-size:16px !important;line-height:1.2 !important;text-decoration:none !important;letter-spacing:0 !important;text-transform:none !important;transition:background .15s}
.kb-sec .et_pb_button:hover{background:var(--kb-ink-dark) !important;padding:0 24px !important}
.kb-sec .et_pb_button::after{display:none !important}
.kb-grid .et_pb_button_module_wrapper .et_pb_button{width:100%}
.kb-btnrow .et_pb_button_module_wrapper .et_pb_button{background:var(--kb-soft) !important;color:var(--kb-ink) !important;font-weight:500 !important}
.kb-btnrow .et_pb_button_module_wrapper .et_pb_button:hover{background:var(--kb-y) !important}

/* ---------- Icons (SVG-Masken) ---------- */
:root{
  --kb-i-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 5l7 7-7 7'/%3E%3C/svg%3E");
  --kb-i-phone:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E");
  --kb-i-check-dark:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23434242' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L19 7'/%3E%3C/svg%3E");
  --kb-i-pile:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 20h20L15 8l-3 4-2-3z'/%3E%3Ccircle cx='18' cy='5' r='1.5'/%3E%3C/svg%3E");
  --kb-i-recycle:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 19H4.8a1.8 1.8 0 0 1-1.6-2.7L7 9.5M11 19h8.2a1.8 1.8 0 0 0 1.6-2.7l-1.2-2.1M14 16l-3 3 3 3M8.3 13.6 7 9.5l-4 1.1M16 9.4l-4-6.8a1.8 1.8 0 0 0-3 0L7.4 5.4M13 9.5l3.6-.1 1-4'/%3E%3C/svg%3E");
  --kb-i-excavator:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 21h20M5 21v-4h8v4M7 17l3-8 6-4 4 3-5 3-2 6'/%3E%3C/svg%3E");
  --kb-i-key:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='15' r='5'/%3E%3Cpath d='M12 12l9-9M18 6l3 3M15 9l2 2'/%3E%3C/svg%3E");
  --kb-i-truck:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 16V6h13v10M14 9h4l4 4v3h-8'/%3E%3Ccircle cx='5.5' cy='17.5' r='2'/%3E%3Ccircle cx='17.5' cy='17.5' r='2'/%3E%3C/svg%3E");
  --kb-i-small:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1.5'/%3E%3C/svg%3E");
  --kb-i-mail:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3Cpath d='M22 7l-10 6L2 7'/%3E%3C/svg%3E");
  --kb-i-pin:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-12a7 7 0 0 1 14 0c0 5.8-7 12-7 12z'/%3E%3Ccircle cx='12' cy='9' r='2.5'/%3E%3C/svg%3E");
  --kb-i-wrench:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.8-3.8a6 6 0 0 1-7.9 7.9l-6.9 6.9a2.1 2.1 0 0 1-3-3l6.9-6.9a6 6 0 0 1 7.9-7.9z'/%3E%3C/svg%3E");
}
.kb-icon{width:56px;height:56px;border-radius:999px;background:var(--kb-y);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:18px}
.kb-icon::before{content:"";width:26px;height:26px;background:var(--kb-ink);-webkit-mask:var(--kb-ico) center/contain no-repeat;mask:var(--kb-ico) center/contain no-repeat}
.kb-icon-s{width:40px;height:40px;margin:0}.kb-icon-s::before{width:20px;height:20px}
.kb-ico-pile{--kb-ico:var(--kb-i-pile)}.kb-ico-recycle{--kb-ico:var(--kb-i-recycle)}.kb-ico-excavator{--kb-ico:var(--kb-i-excavator)}
.kb-ico-key{--kb-ico:var(--kb-i-key)}.kb-ico-truck{--kb-ico:var(--kb-i-truck)}.kb-ico-small{--kb-ico:var(--kb-i-small)}
.kb-ico-phone{--kb-ico:var(--kb-i-phone)}.kb-ico-mail{--kb-ico:var(--kb-i-mail)}.kb-ico-pin{--kb-ico:var(--kb-i-pin)}.kb-ico-wrench{--kb-ico:var(--kb-i-wrench)}

/* ---------- Bilder ---------- */
.kb-img .et_pb_image_wrap{display:block !important;width:100%}
.kb-img img{display:block;width:100% !important;height:var(--kb-h,440px) !important;object-fit:cover;border-radius:var(--kb-r-lg)}
.kb-img-hero{--kb-h:560px}.kb-img-l{--kb-h:540px}.kb-img-m{--kb-h:440px}.kb-img-s{--kb-h:212px}.kb-img-card{--kb-h:230px}.kb-img-tall{--kb-h:440px}
.kb-img-card img{border-radius:0}
.kb-img-auto img{height:auto !important;object-fit:contain}
.kb-img-r img{border-radius:var(--kb-r)}
@media (max-width:980px){.kb-img-hero{--kb-h:380px}.kb-img-l,.kb-img-m{--kb-h:320px}}

/* Hero-Box mit schwebenden Elementen (Startseite) */
.kb-herofig{position:relative}
.kb-float{position:absolute;z-index:2}
.kb-float-card{left:-24px;bottom:40px;background:#fff;border-radius:var(--kb-r);box-shadow:var(--kb-shadow);padding:18px 24px;display:flex;gap:16px;align-items:center}
.kb-float-card .kb-icon{width:48px;height:48px;margin:0}
.kb-float-card strong{display:block;font-size:26px;line-height:1.1}
.kb-float-card span{font-size:14px;color:var(--kb-text)}
.kb-float-tag{top:24px;right:24px;background:var(--kb-y);border-radius:999px;padding:10px 16px;font-weight:700;font-size:14px;color:var(--kb-ink)}
@media (max-width:700px){.kb-float-card{left:16px;bottom:16px}}

/* ---------- Karten ---------- */
.kb-card{background:#fff;border-radius:var(--kb-r);box-shadow:var(--kb-shadow);transition:transform .2s,box-shadow .2s;overflow:hidden;height:100%;box-sizing:border-box}
.kb-card.kb-pad{padding:32px}
.kb-card.kb-hover:hover{transform:translateY(-4px);box-shadow:var(--kb-shadow-hover)}
.kb-card h3{font-size:24px}
.kb-card .kb-card-body{padding:24px 28px 28px;display:flex;flex-direction:column;gap:10px;height:100%;box-sizing:border-box}
.kb-card .kb-card-body p{font-size:16px;margin:0}
.kb-card .kb-card-body .kb-more{margin-top:auto;padding-top:6px}
.kb-cardlink{display:flex;flex-direction:column;height:100%;text-decoration:none !important;color:inherit !important}
.kb-cardlink p{flex-grow:1}
.kb-cardlink .kb-more{margin-top:auto}
.kb-soft{background:var(--kb-soft);border-radius:var(--kb-r);padding:28px;box-sizing:border-box;height:100%}
.kb-stat strong{display:block;font-size:40px;line-height:1.1;letter-spacing:-.02em;color:var(--kb-ink)}
.kb-stat span{font-size:15px;color:var(--kb-text)}
.kb-badge{display:inline-block;background:var(--kb-soft);border-radius:999px;padding:6px 12px;font-weight:700;font-size:12px !important;letter-spacing:.08em;color:var(--kb-ink) !important;margin:0 6px 6px 0 !important;line-height:1.3 !important}
.kb-badge-y{background:var(--kb-y)}
.kb-badge-l{background:var(--kb-y-light);letter-spacing:0;font-size:13px !important}

/* ---------- Farbige Boxen (als Zeile) ---------- */
.kb-sec .et_pb_row.kb-box{border-radius:var(--kb-r-lg);overflow:hidden;box-sizing:border-box}
.kb-sec .et_pb_row.kb-box-y{background:var(--kb-y)}
.kb-sec .et_pb_row.kb-box-d{background:var(--kb-ink)}
.kb-sec .et_pb_row.kb-box-soft{background:var(--kb-soft)}
.kb-sec .et_pb_row.kb-box-line{border:1.5px solid var(--kb-line)}
.kb-sec .et_pb_row.kb-pad-l{padding:64px 56px !important}
.kb-sec .et_pb_row.kb-pad-m{padding:40px !important}
.kb-sec .et_pb_row.kb-pad-0{padding:0 !important}
.kb-pad-col{padding:56px !important;box-sizing:border-box}
@media (max-width:980px){.kb-sec .et_pb_row.kb-pad-l{padding:40px 28px !important}.kb-pad-col{padding:36px 28px !important}}
.kb-on-y,.kb-on-y p,.kb-on-y li,.kb-on-y h2,.kb-on-y h3{color:var(--kb-ink) !important}
.kb-on-y a.kb-btn-d{color:#fff !important}
.kb-on-dark,.kb-on-dark p,.kb-on-dark li{color:#E6E6E6 !important}
.kb-on-dark h2,.kb-on-dark h3,.kb-on-dark strong{color:#fff !important}
.kb-tag-w{display:inline-block;background:#fff;border-radius:999px;padding:6px 14px;font-weight:700;font-size:13px !important;letter-spacing:.1em;color:var(--kb-ink) !important;margin:0 0 18px !important}
.kb-media-fill{height:100%}
.kb-media-fill .et_pb_image_wrap,.kb-media-fill img{height:100% !important;min-height:360px;border-radius:0 !important}

/* ---------- Seitenkopf (Unterseiten) ---------- */
.kb-sec .et_pb_row.kb-pagehero{background:#F7F7F7 url("../bg/schweif.webp") right bottom/100% auto no-repeat;border-radius:var(--kb-r-lg);padding:56px 56px 96px !important;position:relative;overflow:hidden}
.kb-pagehero > .et_pb_column{position:relative;z-index:1}
.kb-pagehero .kb-crumbs{font-size:14px !important;color:var(--kb-text) !important;margin:0 0 14px !important}
.kb-pagehero .kb-crumbs a{color:var(--kb-text);text-decoration:none}
.kb-pagehero .kb-crumbs a:hover{color:var(--kb-ink);text-decoration:underline}
.kb-pagehero h1{margin-bottom:0}
.kb-pagehero .kb-img img{border-radius:var(--kb-r);height:340px !important}
@media (max-width:980px){.kb-sec .et_pb_row.kb-pagehero{padding:36px 28px 72px !important;background-size:180% auto}}

/* ---------- Fließtext-Seiten (umgebaute Unterseiten) ---------- */
.kb-sec .et_pb_row.kb-prose{max-width:1080px !important}
.kb-prose .et_pb_text_inner{max-width:820px}
.kb-sec .et_pb_row.kb-prose + .et_pb_row{margin-top:40px !important}
.kb-sec .et_pb_row + .et_pb_row{margin-top:40px !important}
.kb-prose h2{font-size:clamp(26px,2.8vw,34px);margin-top:40px}
.kb-prose h3{margin-top:28px}
.kb-prose h2:first-child,.kb-prose h3:first-child{margin-top:0}
.kb-prose .et_pb_module + .et_pb_module{margin-top:0px !important}
.kb-legal p,.kb-legal li{font-size:16px}
.kb-legal h2{font-size:26px}.kb-legal h3{font-size:20px}
.kb-sec .et_pb_row.kb-grid-wrap{max-width:1080px !important}
.kb-grid .et_pb_image .et_pb_image_wrap{display:block}
.kb-grid .et_pb_image img{border-radius:var(--kb-r);width:100%}
.kb-split-img img{height:320px !important;object-fit:cover}

/* Team, Galerie, Blurbs, Formulare */
.kb-sec .et_pb_team_member{background:#fff;border-radius:var(--kb-r);box-shadow:var(--kb-shadow);padding:0 0 22px;overflow:hidden;text-align:left;height:100%;box-sizing:border-box}
.kb-sec .et_pb_team_member_image{margin:0 0 18px !important;width:100% !important;max-width:none !important;float:none !important;display:block !important}
.kb-sec .et_pb_team_member_image img{width:100% !important;aspect-ratio:4/5;object-fit:cover;display:block}
.kb-sec .et_pb_team_member_description{padding:0 22px !important;display:block !important}
.kb-sec .et_pb_team_member h4,.kb-sec .et_pb_team_member .et_pb_module_header{font-size:20px !important;margin:0 0 4px !important;padding:0 !important;color:var(--kb-ink) !important}
.kb-sec .et_pb_member_position{font-size:14px !important;color:var(--kb-text) !important;padding:0 0 8px !important}
.kb-sec .et_pb_member_social_links{margin-top:6px}
.kb-sec .et_pb_gallery_grid .et_pb_gallery_item{border-radius:var(--kb-r-sm);overflow:hidden}
.kb-sec .et_pb_gallery_image img{border-radius:var(--kb-r-sm)}
.kb-sec .et_pb_blurb{background:var(--kb-soft);border-radius:var(--kb-r);padding:24px}
.kb-sec .et_pb_blurb .et-pb-icon{color:var(--kb-ink) !important;background:var(--kb-y);border-radius:999px;padding:12px;font-size:26px !important}
.kb-sec .et_pb_blurb h4{font-size:19px !important;padding-bottom:4px !important}
.kb-sec .et_pb_contact_form_container .et_pb_contact_field input,.kb-sec .et_pb_contact_form_container .et_pb_contact_field textarea,.kb-sec .et_pb_contact_form_container select{background:#fff !important;border:1px solid #898989 !important;border-radius:var(--kb-r-sm) !important;color:var(--kb-ink) !important;font-size:16px !important;padding:14px 16px !important}
.kb-sec .et_pb_contact_submit{background:var(--kb-y) !important;color:var(--kb-ink) !important;border:0 !important;border-radius:var(--kb-r-sm) !important;font-weight:700 !important;font-size:16px !important;padding:14px 28px !important}
.kb-sec .et_pb_contact_submit::after{display:none}

/* ---------- Zeitstrahl ---------- */
.kb-timeline{list-style:none;margin:0 !important;padding:0 !important;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:28px 20px}
.kb-timeline li{padding:0 !important;margin:0 !important;display:flex;flex-direction:column;gap:10px}
.kb-sec ul.kb-timeline li::before{content:"";position:static;background-image:none;width:14px;height:14px;border-radius:999px;background:var(--kb-y);box-shadow:0 0 0 6px rgba(228,203,48,.25)}
.kb-timeline b{font-size:30px;color:var(--kb-y);line-height:1.1}
.kb-timeline span{font-size:15px !important;line-height:1.55;color:#E6E6E6}

/* ---------- Fuhrpark-Filter ---------- */
.kb-filter{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.kb-filter-tabs{display:flex;flex-wrap:wrap;gap:6px;background:var(--kb-soft);border-radius:999px;padding:6px}
.kb-filter-tabs button{font-family:var(--kb-font);font-weight:500;font-size:15px;padding:0 20px;min-height:46px;border-radius:999px;border:0;background:transparent;color:var(--kb-ink);cursor:pointer;transition:background .15s}
.kb-filter-tabs button[aria-pressed="true"]{background:var(--kb-y);font-weight:700;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.kb-filter-count{font-size:15px;color:var(--kb-text)}
.kb-fleet-hidden{display:none !important}

/* ---------- Kontakt ---------- */
.kb-contactcard{display:flex;flex-direction:column;gap:6px}
.kb-contactcard .kb-k{font-weight:700;font-size:12px !important;letter-spacing:.14em;color:var(--kb-text) !important;margin:0 !important;text-transform:uppercase}
.kb-contactcard a{text-decoration:none}
.kb-contactcard .kb-big{font-weight:700;font-size:28px;color:var(--kb-ink);letter-spacing:-.01em}
.kb-overlap{margin-top:-100px !important;position:relative;z-index:2}
@media (max-width:980px){.kb-overlap{margin-top:24px !important}}

/* CF7-Anfrageformular */
.kb-form .wpcf7-form{display:flex;flex-direction:column;gap:30px}
.kb-form fieldset{border:0;margin:0;padding:0}
.kb-form legend,.kb-form .kb-step{font-weight:700;font-size:22px;color:var(--kb-ink);display:flex;align-items:center;gap:12px;margin-bottom:16px}
.kb-form .kb-num{width:34px;height:34px;border-radius:999px;background:var(--kb-y);display:inline-flex;align-items:center;justify-content:center;font-size:16px}
.kb-form .kb-f-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (max-width:640px){.kb-form .kb-f-grid{grid-template-columns:minmax(0,1fr)}}
.kb-form label{display:flex;flex-direction:column;gap:6px;font-weight:500;font-size:14px;color:var(--kb-ink)}
.kb-form input[type=text],.kb-form input[type=email],.kb-form input[type=tel],.kb-form input[type=date],.kb-form textarea{font-family:var(--kb-font);font-size:16px;padding:0 16px;min-height:52px;border:1px solid #898989;border-radius:var(--kb-r-sm);background:#fff;color:var(--kb-ink);width:100%;box-sizing:border-box}
.kb-form textarea{padding:14px 16px;min-height:120px}
.kb-form input:focus,.kb-form textarea:focus{outline:none;border-color:var(--kb-ink);box-shadow:0 0 0 4px rgba(228,203,48,.6)}
.kb-form .wpcf7-radio{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.kb-form .wpcf7-radio .wpcf7-list-item{margin:0}
.kb-form .wpcf7-radio label{flex-direction:row;align-items:center;gap:10px;background:var(--kb-soft);border:1.5px solid var(--kb-soft);border-radius:14px;padding:14px 18px;min-height:56px;box-sizing:border-box;cursor:pointer;font-size:15px}
.kb-form .wpcf7-radio label:has(input:checked){background:var(--kb-y);border-color:var(--kb-y);font-weight:700;box-shadow:0 6px 16px rgba(228,203,48,.4)}
.kb-form .wpcf7-radio input{accent-color:var(--kb-ink)}
.kb-form .wpcf7-acceptance label{flex-direction:row;align-items:flex-start;gap:12px;font-weight:400;color:var(--kb-text);font-size:15px}
.kb-form .wpcf7-submit{background:var(--kb-y);color:var(--kb-ink);font-family:var(--kb-font);font-weight:700;font-size:16px;border:0;border-radius:var(--kb-r-sm);min-height:52px;padding:0 28px;cursor:pointer}
.kb-form .wpcf7-submit:hover{box-shadow:0 10px 24px rgba(228,203,48,.45)}
.kb-form .wpcf7-response-output{border-radius:var(--kb-r-sm);margin:0 !important}

/* ---------- Footer (globales Layout 938) ---------- */
.et_pb_section.kb-footer{background:var(--kb-ink) !important;padding:72px 0 0 !important}
.kb-footer,.kb-footer p{color:#E6E6E6 !important;font-size:15px !important;line-height:1.6 !important}
.kb-footer strong{color:#fff !important;font-size:13px;letter-spacing:.12em;display:block;margin-bottom:6px}
.kb-footer a{color:#E6E6E6 !important;text-decoration:none !important}
.kb-footer a:hover{color:var(--kb-y) !important}
.kb-footer .kb-footer-logo img{height:68px !important;width:auto !important;display:block}
.kb-footer .et_pb_row.kb-footer-bottom{border-top:1px solid #5B5B5B;margin-top:48px !important;padding:20px 0 28px !important}
.kb-footer .kb-footer-bottom p{font-size:14px !important;margin:0}
.kb-footer .kb-links{display:flex;flex-wrap:wrap;gap:8px 24px}
.kb-footer .kb-links.kb-right{justify-content:flex-end}
@media (max-width:640px){.kb-footer .kb-links.kb-right{justify-content:flex-start}}

/* ---------- Ergänzungen für einzelne Seiten ---------- */
.kb-mosaic{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.kb-mosaic > .et_pb_module:first-child{grid-row:span 2}
.kb-mosaic .kb-img-tall{--kb-h:440px}
.kb-mosaic .kb-img img{border-radius:var(--kb-r)}
.kb-certs{display:flex !important;flex-wrap:wrap;gap:16px;align-items:center;justify-content:flex-end}
.kb-cert{flex:0 0 auto;width:auto !important}
.kb-cert img{height:120px !important;width:auto !important;border-radius:var(--kb-r-sm)}
.kb-sec .et_pb_row.kb-grid-kontakt{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:28px}
@media (max-width:980px){.kb-sec .et_pb_row.kb-grid-kontakt{grid-template-columns:minmax(0,1fr)}.kb-certs{justify-content:flex-start}}
.kb-sec .et_pb_row.kb-pagehero-tall{padding-bottom:156px !important}
@media (max-width:980px){.kb-sec .et_pb_row.kb-pagehero-tall{padding-bottom:36px !important}}
.kb-card.kb-pad.kb-formcard{padding:44px}
.kb-aside{display:flex !important;flex-direction:column;gap:12px;padding:20px !important}
.kb-aside .kb-soft{height:auto;padding:24px 26px}
.kb-aside .et_pb_module:first-child .kb-soft,.kb-aside .kb-box-ywrap{background:var(--kb-y)}
.kb-box-ywrap .kb-k{color:var(--kb-ink) !important}
.kb-num-icon{font-weight:700;font-size:20px;color:var(--kb-ink);width:48px;height:48px}
.kb-num-icon::before{display:none}
.kb-card-body h3{font-size:24px;margin:4px 0 0}
.kb-card-body ul{margin:0}
.kb-card-body ul li{font-size:15px;margin-bottom:4px}
.kb-card.kb-hover{display:flex !important;flex-direction:column}
.kb-card .kb-img-card{flex:0 0 auto}
.kb-card .kb-card-body{flex:1 1 auto}
.kb-stat{height:100%}
.kb-float-card p,.kb-float-tag p{margin:0 !important;font-size:inherit !important;color:inherit !important}
.kb-float-card .et_pb_text_inner{display:flex;gap:16px;align-items:center}
.kb-on-dark .kb-more{color:#fff !important}

.kb-sec p[style*="justify"],.kb-sec [style*="text-align: justify"]{text-align:left !important}
.kb-sec .et_pb_row.kb-head{margin-bottom:-8px}
.kb-sec .et_pb_row.kb-head p:last-child{margin-bottom:0}

@media (max-width:640px){.kb-sec .et_pb_row.kb-grid-4.kb-keep2{grid-template-columns:repeat(2,minmax(0,1fr))}.kb-stat strong{font-size:30px}}
/* CF7-Autop neutralisieren */
.kb-form br{display:none}
.kb-form .kb-f-grid > p{display:contents}
.kb-form fieldset > p,.kb-form .wpcf7-form > p{margin:0;padding:0}
.kb-form label > .wpcf7-form-control-wrap{display:block}
.kb-form .wpcf7-submit{display:inline-block;margin-top:22px}
.kb-form .hidden-fields-container{display:none}
.kb-form .wpcf7-not-valid-tip{font-size:13px;margin-top:4px}
/* Fuhrpark-Filter: Leiste wird per JS vor die erste Gruppe gesetzt */
.kb-sec .kb-filter-wrap{width:calc(100% - 48px);max-width:var(--kb-max);margin:40px auto 0;box-sizing:border-box}
.kb-sec .kb-filter-wrap + .et_pb_row{margin-top:40px !important}
.kb-sec .et_pb_row.kb-fleet-hidden{display:none !important}

/* ---------- Version 2.1 ---------- */
/* volle Breite: Footer und Call-to-Action */
.kb-sec .et_pb_row.kb-full{width:calc(100% - 80px) !important;max-width:none !important}
@media (max-width:980px){.kb-sec .et_pb_row.kb-full{width:calc(100% - 40px) !important}}
.et_pb_section.kb-cta-full{background:var(--kb-y) !important;margin-top:112px;padding:72px 0 !important}
.kb-cta-full h2{margin-bottom:12px}
.kb-cta-full .kb-grid-2{align-items:center !important}
.kb-cta-right .et_pb_text_inner{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.kb-cta-right p{margin:0 !important}
@media (max-width:980px){.et_pb_section.kb-cta-full{margin-top:72px;padding:48px 0 !important}.kb-cta-right .et_pb_text_inner{align-items:flex-start}}
.kb-cta-full + .kb-footer{margin-top:0}
/* Zertifikat */
.kb-cert-l img{height:auto !important;width:100% !important;max-width:440px;border-radius:0}
.kb-certs .kb-cert-l{width:100% !important;display:flex;justify-content:flex-end}
@media (max-width:980px){.kb-certs .kb-cert-l{justify-content:flex-start}}
p.kb-badge{display:inline-block}
/* Zahlenlisten */
.kb-sec ul.kb-numlist{display:flex;flex-direction:column;gap:14px;margin:0 !important}
.kb-sec ul.kb-numlist li{display:flex;align-items:center;gap:18px;padding:0 !important;margin:0 !important}
.kb-sec ul.kb-numlist li::before{display:none}
.kb-numlist b{flex:0 0 64px;height:64px;border-radius:999px;background:var(--kb-y);display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--kb-ink)}
.kb-numlist span{font-size:18px;font-weight:500;color:var(--kb-ink)}
.kb-sec ul.kb-bignums{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:28px 24px;margin:12px 0 0 !important}
.kb-sec ul.kb-bignums li{padding:0 0 0 18px !important;margin:0 !important;border-left:3px solid var(--kb-y);display:flex;flex-direction:column;gap:4px}
.kb-sec ul.kb-bignums li::before{display:none}
.kb-bignums b{font-size:34px;line-height:1.1;color:#fff;letter-spacing:-.02em}
.kb-bignums span{font-size:15px;color:#E6E6E6}
.kb-grid-5 .kb-stat strong{font-size:36px}
.kb-grid-5 .kb-stat span{font-size:14px;line-height:1.45;display:block}

/* Zeitstrahl: alle Jahre in einer Reihe */
@media (min-width:1101px){.kb-sec ul.kb-timeline{grid-template-columns:repeat(7,minmax(0,1fr))}}
.et_pb_section.kb-sec.kb-cta-full{margin-top:112px !important}
@media (max-width:980px){.et_pb_section.kb-sec.kb-cta-full{margin-top:72px !important}}

/* ---------- Version 2.2: Hero-Bereiche auf ganzer Fensterbreite ---------- */
body.kb{overflow-x:clip}
.et_pb_section.kb-herobleed,.et_pb_section.kb-cta-full,.et_pb_section.kb-footer{width:100vw !important;max-width:100vw !important;margin-left:calc(50% - 50vw) !important;margin-right:calc(50% - 50vw) !important;box-sizing:border-box}
.et_pb_section.kb-herobleed{padding:0 !important}
/* Unterseiten: grauer Kopfbereich mit Schweif über die volle Breite */
.kb-herobleed .et_pb_row.kb-pagehero{width:100% !important;max-width:none !important;border-radius:0 !important;padding-top:64px !important;padding-left:max(40px,calc((100% - 1280px)/2)) !important;padding-right:max(40px,calc((100% - 1280px)/2)) !important;background-size:100% auto}
@media (max-width:980px){.kb-herobleed .et_pb_row.kb-pagehero{padding-left:20px !important;padding-right:20px !important;padding-top:40px !important;background-size:180% auto}}
/* Startseite: Hero als grauer Bereich mit Schweif */
.et_pb_section.kb-herobleed:not(:has(.kb-pagehero)){background:#F7F7F7 url("../bg/schweif.webp") right bottom/100% auto no-repeat !important;padding:56px 0 120px !important}
@media (max-width:980px){.et_pb_section.kb-herobleed:not(:has(.kb-pagehero)){padding:32px 0 80px !important;background-size:180% auto !important}}
.kb-herobleed .kb-pill{background:#fff}

/* ---------- Version 2.3: Anmerkungen vom 02.11.2026 ---------- */
/* Pillen, Labels und Badges: Kasten passt sich immer dem Text an (auch gegen Divi-Absatzvorgaben) */
body.kb .kb-sec p.kb-pill{display:inline-flex !important;align-items:center;gap:10px;width:max-content !important;max-width:100% !important;box-sizing:border-box !important;padding:7px 18px 7px 7px !important;margin:0 0 24px !important;line-height:1.3 !important;white-space:normal !important;float:none !important}
body.kb .kb-sec p.kb-pill b{flex:0 0 auto;white-space:nowrap;line-height:1.3 !important;padding:4px 11px !important}
body.kb .kb-sec p.kb-tag-w,body.kb .kb-sec .kb-badge{display:inline-block !important;width:max-content !important;max-width:100% !important;box-sizing:border-box !important;line-height:1.3 !important;white-space:normal !important;float:none !important}
body.kb .kb-sec p.kb-tag-w{padding:7px 14px 7px 16px !important}
body.kb .kb-sec .kb-badge{padding:6px 11px 6px 13px !important}
/* Gelbton: alle Badges im Markengelb */
body.kb .kb-badge-l{background:var(--kb-y) !important}

/* Disposition-Button: deutlicher */
body.kb a.kb-btn-y[href^="tel:"]{min-height:64px;padding:0 28px 0 10px;font-size:19px;gap:14px;box-shadow:0 10px 26px rgba(228,203,48,.45)}
body.kb a.kb-btn-y[href^="tel:"] .kb-icon{width:46px;height:46px;margin:0 !important;background:var(--kb-ink)}
body.kb a.kb-btn-y[href^="tel:"] .kb-icon::before{width:21px;height:21px;background:var(--kb-y)}
body.kb a.kb-btn-y[href^="tel:"]:hover{box-shadow:0 14px 32px rgba(228,203,48,.6)}
@media (max-width:600px){body.kb a.kb-btn-y[href^="tel:"]{font-size:16px;padding-right:20px}}

/* Gelber Call to Action: Inhalt im Seitenraster, Telefon mit Hörer */
body.kb .kb-cta-full .et_pb_row.kb-full{width:calc(100% - 80px) !important;max-width:1280px !important;margin-left:auto !important;margin-right:auto !important}
@media (max-width:980px){body.kb .kb-cta-full .et_pb_row.kb-full{width:calc(100% - 40px) !important}}
body.kb a.kb-tel-big{display:inline-flex !important;align-items:center;gap:14px}
body.kb a.kb-tel-big::before{content:"";flex:0 0 48px;height:48px;border-radius:999px;background:var(--kb-ink) var(--kb-i-phone-y) center/22px no-repeat}
:root{--kb-i-phone-y:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E4CB30' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.5c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E")}
@media (max-width:600px){body.kb a.kb-tel-big{font-size:22px}}

/* Zeitstrahl: keine Trennung mitten im Wort */
body.kb .kb-sec ul.kb-timeline span,body.kb .kb-sec ul.kb-timeline b{overflow-wrap:normal !important;word-wrap:normal !important;word-break:normal !important;-webkit-hyphens:auto;hyphens:auto}
@media (min-width:1101px){body.kb .kb-sec ul.kb-timeline{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 32px}}
@media (min-width:700px) and (max-width:1100px){body.kb .kb-sec ul.kb-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Team: alle Fotos gleich groß */
body.kb .kb-sec .et_pb_team_member{display:flex !important;flex-direction:row !important;align-items:flex-start;gap:20px;padding:22px !important;height:100%}
body.kb .kb-sec .et_pb_team_member .et_pb_team_member_image{flex:0 0 104px !important;width:104px !important;max-width:104px !important;margin:0 !important;float:none !important;border-radius:var(--kb-r-sm);overflow:hidden}
body.kb .kb-sec .et_pb_team_member .et_pb_team_member_image img{width:104px !important;height:130px !important;max-width:none !important;aspect-ratio:auto !important;object-fit:cover !important;object-position:50% 20%;display:block}
body.kb .kb-sec .et_pb_team_member .et_pb_team_member_description{flex:1 1 auto;min-width:0;padding:0 !important;overflow-wrap:anywhere}
@media (max-width:420px){body.kb .kb-sec .et_pb_team_member{gap:14px;padding:18px !important}body.kb .kb-sec .et_pb_team_member .et_pb_team_member_image{flex-basis:84px !important;width:84px !important;max-width:84px !important}body.kb .kb-sec .et_pb_team_member .et_pb_team_member_image img{width:84px !important;height:105px !important}}

/* Kontaktkarten (Blurbs): Telefon und Mail einheitlich */
body.kb .kb-sec .et_pb_blurb_description a{color:var(--kb-ink) !important;text-decoration:none !important;border-bottom:2px solid var(--kb-y);padding-bottom:1px}
body.kb .kb-sec .et_pb_blurb_description a:hover{background:rgba(228,203,48,.25)}

/* Galerie: gleich große Bilder, Seitennavigation in Markengelb */
body.kb .kb-sec .et_pb_gallery_grid .et_pb_gallery_item{width:auto}
body.kb .kb-sec .et_pb_gallery_grid .et_pb_gallery_image{aspect-ratio:4/3;overflow:hidden;border-radius:var(--kb-r-sm)}
body.kb .kb-sec .et_pb_gallery_grid .et_pb_gallery_image img{width:100% !important;height:100% !important;object-fit:cover !important;transform:none !important}
body.kb .kb-sec .et_pb_gallery_pagination{border-top:0 !important;padding-top:24px !important}
body.kb .kb-sec .et_pb_gallery_pagination ul{display:flex !important;flex-wrap:wrap;justify-content:center;gap:8px;margin:0 !important;padding:0 !important;list-style:none !important}
body.kb .kb-sec .et_pb_gallery_pagination li{padding:0 !important;margin:0 !important;float:none !important}
body.kb .kb-sec .et_pb_gallery_pagination li::before{display:none !important}
body.kb .kb-sec .et_pb_gallery_pagination a{display:inline-flex !important;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 14px !important;border-radius:999px;background:var(--kb-soft);color:var(--kb-ink) !important;font-weight:700;font-size:15px;text-decoration:none !important;box-sizing:border-box}
body.kb .kb-sec .et_pb_gallery_pagination a.active,body.kb .kb-sec .et_pb_gallery_pagination a:hover{background:var(--kb-y) !important;color:var(--kb-ink) !important}

/* Listen aus Modulen und Plugins nicht mit Häkchen versehen */
body.kb .kb-sec #sb_instagram li::before,body.kb .kb-sec .wpcf7 li::before{display:none !important}

/* Instagram-Feed: Abstand zum Rand */
body.kb #sb_instagram{border-radius:var(--kb-r);overflow:hidden}
body.kb #sb_instagram .sb_instagram_header,body.kb #sb_instagram .sbi_header{padding:22px 24px 14px !important;margin:0 !important;box-sizing:border-box}
body.kb #sb_instagram #sbi_images{padding:0 24px 24px !important;box-sizing:border-box}
@media (max-width:600px){body.kb #sb_instagram .sb_instagram_header,body.kb #sb_instagram .sbi_header{padding:18px 16px 10px !important}body.kb #sb_instagram #sbi_images{padding:0 16px 16px !important}}

/* Standorte: Adressliste mit Piktogrammen, Bild im Wechsel */
body.kb .kb-sec ul.kb-addr{margin:20px 0 26px !important;padding:0 !important}
body.kb .kb-sec ul.kb-addr li{padding-left:36px !important;margin:0 0 10px !important;color:var(--kb-ink);font-weight:500}
body.kb .kb-sec ul.kb-addr li::before{width:24px;height:24px;top:0;background:var(--kb-y);border-radius:999px;-webkit-mask:none;mask:none}
body.kb .kb-sec ul.kb-addr li::after{content:"";position:absolute;left:5px;top:5px;width:14px;height:14px;background:var(--kb-ink);-webkit-mask:var(--kb-ico) center/contain no-repeat;mask:var(--kb-ico) center/contain no-repeat}
.kb-addr-pin{--kb-ico:var(--kb-i-pin)}.kb-addr-tel{--kb-ico:var(--kb-i-phone)}.kb-addr-mail{--kb-ico:var(--kb-i-mail)}
body.kb .kb-sec ul.kb-addr a{text-decoration:none;border-bottom:2px solid var(--kb-y)}
.kb-loc .kb-btns{display:flex;flex-wrap:wrap;gap:12px}
body.kb .kb-sec .et_pb_row.kb-loc + .et_pb_row.kb-loc{margin-top:32px !important}
@media (max-width:980px){body.kb .kb-loc-rev > .et_pb_column:last-child{order:-1}}
body.kb .kb-sec .et_pb_team_member .et_pb_team_member_description p{font-size:15px !important;line-height:1.6}
